/* PROFILE LAB — service-specific navigation, usable galleries and details */
:root{--silverline:rgba(210,213,216,.20)}
html{scroll-padding-top:100px}
.service-list{border-top:1px solid var(--line)}
.service-linked{display:grid;grid-template-columns:66px minmax(0,1fr) 220px 42px;align-items:center;gap:22px;border-bottom:1px solid var(--line);padding:32px 8px;transition:background .25s,border-color .25s,transform .25s;min-height:117px;cursor:pointer;position:relative}
.service-linked:hover,.service-linked:focus-visible{background:#ffffff08;border-bottom-color:#a8acb6}
.service-linked:hover .service-arrow{background:#ececec;color:#09090b;border-color:#f8f8f8;transform:rotate(45deg)}
.service-info{min-width:0;display:flex;flex-direction:column;gap:10px}.service-info strong{font-size:clamp(17px,1.5vw,22px);font-weight:700;letter-spacing:-.65px}.service-info small{font-size:12px;line-height:1.7;color:#a9a9ad}
.service-info em{font:500 11px/1.5 'Noto Sans KR',sans-serif;font-style:normal;color:#afb3b8;margin-left:6px;white-space:nowrap}
.service-hint{font-size:11px;line-height:1.8;color:#999ca3;margin-top:21px;letter-spacing:.2px}
.home-cases .case-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.case-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:23px}
.case-card{text-align:left;display:flex;flex-direction:column;min-width:0;padding:0;border:1px solid var(--line);color:#eee;background:#0f1012;transition:transform .3s var(--ease),border-color .3s,box-shadow .3s;overflow:hidden}
.case-card:hover,.case-card:focus-visible{border-color:rgba(238,238,238,.65);transform:translateY(-4px);box-shadow:0 16px 50px #0007}
.case-card[hidden]{display:none}
.case-picture{width:100%;aspect-ratio:1;display:block;position:relative;overflow:hidden;background:#131416}
.case-picture img{width:100%;height:100%;object-fit:cover;transition:transform .55s var(--ease)}.case-card:hover .case-picture img{transform:scale(1.035)}
.case-play{position:absolute;right:12px;bottom:12px;padding:9px 12px;border:1px solid #d9d9dc77;background:#050608bb;backdrop-filter:blur(4px);color:#f3f3f3;font-size:11px}
.case-caption{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:18px 17px}.case-caption b{font-size:15px}.case-caption small{font:600 9px/1.5 'DM Sans',sans-serif;letter-spacing:1px;color:#989ca2;text-align:right}
.all-works-action{display:flex;justify-content:flex-end;gap:12px;margin-top:35px;flex-wrap:wrap}
.all-works-action .button{min-width:222px}
.inner-page .site-header{height:88px}.detail-hero,.workpage-intro{background:radial-gradient(ellipse at 82% 47%,#202124 0,#101115 39%,#090a0c 80%);border-bottom:1px solid var(--line)}
.detail-hero{min-height:550px}.detail-breadcrumb{padding:35px 0 30px;font:600 10px/1.5 'DM Sans','Noto Sans KR',sans-serif;color:#82868d;letter-spacing:1px}.detail-breadcrumb a:hover{color:#fff}
.detail-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 42%;gap:48px;align-items:center;padding:10px 0 75px}
.detail-hero-copy h1{font-size:clamp(39px,4.7vw,75px);letter-spacing:-2px;line-height:1.32;word-break:keep-all;max-width:740px;font-weight:600;margin:15px 0 23px}
.detail-lead{font-size:17px;line-height:1.9;color:#aaadb2;word-break:keep-all;max-width:660px}
.detail-actions{display:flex;flex-wrap:wrap;gap:13px;margin-top:28px}.detail-actions .button{min-width:195px}
.detail-hero-art{display:flex;align-items:center;justify-content:center;max-height:420px;overflow:hidden;position:relative;isolation:isolate}
.detail-hero-art:before{content:'';position:absolute;inset:10%;background:radial-gradient(circle,#d1d3d51e,transparent 70%);z-index:-1}
.detail-hero-art img{max-height:415px;width:auto;max-width:100%;object-fit:contain;filter:drop-shadow(0 28px 35px #0009)}
.detail-body{padding-top:80px}.detail-feature-intro{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:20px;margin-bottom:27px}.detail-feature-intro h2{font-size:clamp(35px,3.4vw,51px);line-height:1.42;font-weight:600;letter-spacing:-1.7px;margin:12px 0}.detail-feature-intro em,.workpage-intro em{font-weight:300;font-style:normal;color:#a9aaad}
.detail-features{border-top:1px solid var(--line)}.detail-feature{display:grid;grid-template-columns:90px minmax(0,1fr);gap:20px;padding:28px 0;border-bottom:1px solid var(--line)}
.detail-feature-index{font:500 13px 'DM Sans',sans-serif;color:#93969c;letter-spacing:2px}.detail-feature h3{font-size:18px;margin:0 0 11px}.detail-feature p{font-size:13px;line-height:1.85;color:#9b9ea5;margin:0}
.detail-gallery{padding:100px 0 55px}.section-heading-compact h2{font-size:clamp(30px,3.4vw,46px);letter-spacing:-1.5px;margin:12px 0 15px;font-weight:600}.section-heading-compact>p:not(.eyebrow),.section-heading-compact div>p:not(.eyebrow){font-size:13px;line-height:1.9;color:#a9abb0}.detail-gallery .filter-bar,.gallery-page .filter-bar{display:flex;justify-content:flex-start;gap:9px;margin:32px 0 16px}
.detail-contact-cta{margin-top:70px;padding:65px 7% 62px;background:radial-gradient(ellipse at 90% 20%,#27272a,#101113 55%);border:1px solid var(--line)}
.detail-contact-cta h2{font-size:clamp(27px,3.6vw,46px);letter-spacing:-1.5px;margin:18px 0}.detail-contact-cta>p:not(.eyebrow){font-size:13px;color:#a8abb0;line-height:1.9;max-width:560px}.detail-contact-cta .button{margin-top:22px}
.related-services{margin:100px 0 0}.related-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:28px}.related-link{display:flex;justify-content:space-between;align-items:center;gap:14px;border:1px solid var(--line);padding:21px 23px;min-height:70px;color:#dbdcdf;transition:background .25s,border-color .25s;font-size:13px}.related-link:hover{border-color:#d7d7d7;background:#ffffff0c}.related-link span:last-child{font-size:19px}.photoshop-link{margin-top:12px}
.workpage-intro{padding:24px 0 70px}.workpage-intro h1{font-size:clamp(40px,5vw,77px);line-height:1.23;letter-spacing:-2px;margin:16px 0 22px}.workpage-intro p:not(.eyebrow){font-size:14px;line-height:2;color:#a9abae}.gallery-page{padding-top:68px}.gallery-page .case-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
@media(max-width:1100px){.service-linked{grid-template-columns:50px minmax(0,1fr) 150px 34px;gap:14px}.case-grid,.home-cases .case-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.case-caption{padding:14px}.case-caption small{font-size:8px}}
@media(max-width:760px){.service-linked{grid-template-columns:28px minmax(0,1fr) 28px;padding:23px 2px;gap:10px;min-height:101px}.service-linked .service-label{display:none}.service-linked .service-arrow{height:27px;width:27px}.service-linked .service-info strong{font-size:16px;letter-spacing:-.45px}.service-info small{font-size:11px}.service-info em{font-size:9px;margin-left:4px}.case-grid,.home-cases .case-grid,.gallery-page .case-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.case-caption{padding:12px;flex-direction:column;align-items:flex-start;gap:6px}.case-caption b{font-size:13px}.case-caption small{font-size:7.5px;text-align:left}.case-play{font-size:10px;padding:7px 9px;bottom:7px;right:7px}.all-works-action{justify-content:stretch}.all-works-action .button{flex:1;min-width:100%}.detail-hero-grid{display:flex;flex-direction:column;gap:14px;padding:0 0 35px}.detail-hero-copy{width:100%}.detail-hero-copy h1{font-size:clamp(32px,8vw,47px);letter-spacing:-1px}.detail-hero-art{width:100%;max-height:340px}.detail-hero-art img{max-height:340px;width:85%}.detail-breadcrumb{padding:20px 0 26px;font-size:9px;line-height:1.9}.detail-actions{display:flex;gap:10px}.detail-actions .button{min-width:0;flex:1;font-size:11px}.detail-body{padding-top:55px}.detail-feature-intro{display:block}.detail-feature{grid-template-columns:36px 1fr;padding:22px 0;gap:8px}.detail-feature h3{font-size:16px}.detail-feature p{font-size:12px}.detail-gallery{padding:70px 0 35px}.related-services{margin-top:65px}.related-links{grid-template-columns:1fr;gap:9px}.detail-contact-cta{padding:43px 22px}.detail-contact-cta h2{font-size:27px}.workpage-intro{padding-bottom:48px}.gallery-page{padding-top:40px}.gallery-page .filter-bar{flex-wrap:wrap}.inner-page .site-header{height:72px}}
@media(max-width:380px){.case-grid,.home-cases .case-grid,.gallery-page .case-grid{gap:8px}.case-caption{padding:10px}.service-linked .service-info strong{font-size:14px}.detail-actions .button{font-size:10px;padding:14px 11px}}
@media(prefers-reduced-motion:reduce){.service-linked,.case-card,.case-picture img{transition:none}}

/* V3: exactly six portfolio entries in tidy 3×2 desktop grid */
@media(min-width:1101px){.home-cases .case-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
