[hidden]{display:none!important}
[hidden]{display:none!important}
:root{--ink:#0a1015;--panel:#101a20;--panel2:#162127;--line:#293a40;--text:#f6f7f4;--muted:#b5bfc2;--muted2:#86979c;--aqua:#b2ded5;--aqua-bright:#d2f4ec;--font:'DM Sans',Arial,sans-serif;--display:'Manrope','Arial Black',sans-serif;--radius:16px;scroll-behavior:smooth}
*{box-sizing:border-box}html{scroll-padding-top:80px}body{margin:0;background:var(--ink);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;overflow-x:hidden}button,a{touch-action:manipulation}button{font:inherit}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--aqua);outline-offset:4px}::selection{background:#9cd6ca;color:#0a1719}img{max-width:100%;display:block}.wrap{width:min(100% - 96px,1280px);margin-inline:auto}.wrap.wide{max-width:1480px}.skip-link{position:fixed;left:1rem;top:0;z-index:101;background:var(--aqua);color:var(--ink);padding:12px 22px;opacity:0;pointer-events:none;transform:translateY(-140%)}.skip-link:focus{opacity:1;pointer-events:auto;transform:translateY(0)}.section-pad{padding-block:115px}.eyebrow,.section-kicker,.small-label,.section-number{font-size:.69rem;letter-spacing:.17em;font-weight:700}.section-kicker{color:#a4c5c3}.section-number{display:flex;align-items:center;gap:13px;color:var(--muted2);white-space:nowrap}.section-number span:first-child{color:var(--aqua)}.section-number-line{height:1px;width:36px;background:#60847f}h1,h2,h3,p{margin-top:0}h2{font-family:var(--display);font-size:clamp(2.7rem,5.3vw,5.2rem);line-height:1.08;letter-spacing:-.06em;font-weight:800}h2 em{color:var(--aqua);font-style:normal}h3{font-family:var(--display);letter-spacing:-.035em}
/* HEADER */
.site-header{position:absolute;z-index:50;top:0;left:0;right:0;color:white;border-bottom:1px solid rgba(255,255,255,.24);transition:background .3s,border-color .3s}.site-header.scrolled{position:fixed;background:rgba(8,15,19,.92);backdrop-filter:blur(18px);border-color:rgba(255,255,255,.11)}.header-inner{height:90px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;align-items:center;gap:16px;flex:0 0 auto;min-width:0}.brand-lockup{width:38px;height:48px;flex:0 0 38px;display:flex;align-items:center;justify-content:center;overflow:hidden}.brand-logo{display:block;width:38px!important;height:48px!important;min-width:0;max-width:38px;max-height:48px;object-fit:contain;object-position:center;flex:none}.brand-mark,.brand-footer{font-family:var(--display);font-size:1.7rem;font-weight:800;letter-spacing:-.12em}.brand-mark span,.brand-footer span{color:var(--aqua)}.brand-caption{font-size:.62rem;letter-spacing:.19em;opacity:.84;white-space:nowrap}.desktop-nav{display:flex;align-items:center;gap:36px}.desktop-nav a{white-space:nowrap;font-size:.82rem;color:#f0f2f2;transition:color .2s}.desktop-nav a:hover{color:var(--aqua)}.desktop-nav .nav-contact{border:1px solid rgba(255,255,255,.42);border-radius:100px;padding:12px 20px;white-space:nowrap}.nav-contact span{margin-left:16px}.mobile-menu-button,.mobile-nav{display:none}
/* HERO */
.hero{min-height:max(760px,100svh);height:auto;max-height:none;position:relative;isolation:isolate;overflow:hidden;background:#1d272d}.hero-slides,.hero-slide,.hero-slide-media,.hero-shading,.hero-grid-overlay{position:absolute;inset:0}.hero-slide{opacity:0;visibility:hidden;transition:opacity .85s ease,visibility .85s ease;overflow:hidden}.hero-slide.is-active{opacity:1;visibility:visible}.hero-media-frame{position:absolute;inset:0;margin:0;overflow:hidden}
.hero-slide-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--hero-position,50% 50%);transform:translate3d(var(--hero-shift-x,0%),var(--hero-shift-y,0%),0) scale(var(--hero-zoom,1)) scaleX(var(--hero-flip,1));transform-origin:center center;will-change:transform}
.hero-right-framed .hero-media-frame{left:auto;right:0;width:var(--hero-frame-width,65%);-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 18%,#000 100%);mask-image:linear-gradient(to right,transparent 0%,#000 18%,#000 100%)}
.hero-video-unavailable{background:radial-gradient(ellipse at 65% 45%,#32464a,#10171c 70%)}.hero-slide video[poster]{background-size:cover;background-position:center}.hero-image-slide img{filter:none}.hero-shading{z-index:2;pointer-events:none;background:linear-gradient(90deg,rgba(6,12,16,.74) 0%,rgba(7,13,18,.48) 30%,rgba(9,13,17,.08) 68%,rgba(5,9,12,.06) 100%),linear-gradient(0deg,rgba(5,10,14,.66) 0%,rgba(7,12,16,.07) 28%,transparent 58%,rgba(5,9,14,.1) 100%)}.hero-grid-overlay{display:none} /* Removed decorative vertical lines from all media */.hero-content{min-height:inherit;position:relative;z-index:4;display:flex;flex-direction:column;justify-content:space-between;gap:clamp(45px,6svh,90px);padding-top:clamp(130px,15svh,165px);padding-bottom:clamp(34px,5svh,54px)}.hero-copy{max-width:770px;margin-block:auto}.hero-eyebrow{display:flex;align-items:center;gap:12px;color:#e2e7e7;white-space:nowrap;margin-bottom:28px;text-shadow:0 2px 16px #0008}.eyebrow-line{width:28px;height:1px;background:var(--aqua)}.eyebrow-sep{opacity:.5}.hero h1{font-family:var(--display);font-weight:800;letter-spacing:-.103em;line-height:.92;font-size:clamp(6.2rem,12.7vw,13.4rem);margin:0 0 35px -7px;text-shadow:0 8px 28px #07090a20}.hero h1 span{display:block}.hero h1 .period{display:inline;color:var(--aqua)}.hero-statement{font-size:clamp(1.2rem,1.75vw,1.52rem);line-height:1.6;font-weight:500;max-width:590px;margin-bottom:29px;text-wrap:balance;text-shadow:0 1px 12px #000a}.hero-statement em{display:block;font-style:normal;color:var(--aqua-bright)}.hero-actions{display:flex;align-items:center;gap:12px}.button{display:inline-flex;align-items:center;justify-content:center;gap:35px;padding:16px 25px;border-radius:100px;font-weight:700;font-size:.86rem;border:1px solid transparent;transition:transform .2s,background .2s,color .2s;cursor:pointer;white-space:nowrap}.button:hover{transform:translateY(-3px)}.button-primary{background:var(--aqua-bright);color:#0d2426}.button-primary:hover{background:#fff}.button-glass{background:#ffffff0a;border-color:#ffffff76;color:#fff;backdrop-filter:blur(10px)}.button-glass:hover{background:#ffffff26}.hero-bottom{position:relative;left:auto;right:auto;bottom:auto;display:flex;justify-content:space-between;align-items:end;gap:25px}.slide-caption{display:flex;flex-direction:column;gap:9px;padding-left:19px;border-left:2px solid var(--aqua)}.slide-caption .small-label{color:var(--aqua)}.slide-caption-title{font-family:var(--display);font-size:1.37rem;font-weight:700;letter-spacing:-.04em}.slide-caption-copy{color:#dae1e0;font-size:.79rem}.carousel-controls{display:flex;align-items:center;gap:9px}.slide-indicators{display:flex;gap:9px;align-items:center;margin-right:12px}.slide-indicator{border:0;background:none;color:white;display:flex;align-items:center;gap:7px;padding:10px 2px;cursor:pointer}.slide-indicator .indicator-n{font-size:.7rem;font-weight:700;opacity:.55}.slide-indicator .indicator-bar{width:28px;height:2px;background:#ffffff65;position:relative;display:block;overflow:hidden}.slide-indicator .indicator-fill{position:absolute;inset:0;background:var(--aqua);transform:scaleX(0);transform-origin:left}.slide-indicator.is-active .indicator-n{opacity:1}.slide-indicator.is-active .indicator-fill{transform:scaleX(1)}.slide-indicator.is-active.is-playing .indicator-fill{animation:slide-progress 9s linear forwards}@keyframes slide-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}.icon-button{width:37px;height:37px;border:1px solid #ffffff78;color:white;display:grid;place-items:center;border-radius:50%;background:#0002;font-size:1.08rem;cursor:pointer;transition:background .2s}.icon-button:hover{background:#fff3}.pause-button{font-size:.75rem}.scroll-cue{position:absolute;right:48px;top:46%;display:flex;align-items:center;gap:12px;writing-mode:vertical-rl;letter-spacing:.22em;font-size:.57rem;font-weight:700;z-index:5;color:#f8f9f9bb}.scroll-arrow{font-size:1.2rem}
/* PROVISIONAL ART — ALL VISUALS EXCEPT NEYLITH ARE TEMPORARY */
.visual{position:absolute;inset:0;overflow:hidden;isolation:isolate}.visual::after{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 70% 40%,transparent 7%,#07101838 76%)}.visual-titans{background:radial-gradient(ellipse at 70% 47%,#ae715d45 0%,#462933aa 32%,transparent 64%),linear-gradient(135deg,#141c27,#221a26 55%,#171d25)}.visual-titans .titans-stage{position:absolute;width:57%;height:66%;right:4%;bottom:8%;display:flex;align-items:end;justify-content:center;gap:2%}.titan-pillar{height:var(--h);flex:1;max-width:120px;position:relative;background:linear-gradient(110deg,#0b111a,#505161 43%,#171e2a 75%,#0c111a);clip-path:polygon(25% 0,75% 0,100% 12%,100% 100%,0 100%,0 12%);box-shadow:inset 4px 2px 26px #a6beb230}.titan-pillar::after{content:'';position:absolute;left:50%;top:15%;transform:translateX(-50%);width:20px;height:20px;border:2px solid #eabca889;border-radius:50%;box-shadow:0 0 28px #dc8b78}.titan-pillar:nth-child(even){filter:hue-rotate(45deg)}.visual-titans .titans-glow{position:absolute;border-radius:50%;width:48%;aspect-ratio:1;right:10%;top:5%;border:1px solid #cb9a7250;box-shadow:0 0 0 37px #bb876810,0 0 0 85px #a5876010,0 0 70px #f9b78a16;transform:rotate(-18deg)}.visual-titans .visual-word{position:absolute;right:6%;top:23%;font:800 clamp(2rem,6vw,7rem)/1 var(--display);letter-spacing:.11em;color:#ffffff12;transform:rotate(-90deg);transform-origin:top right}.visual-cosmic{background:radial-gradient(ellipse at 72% 42%,#a08de74d 0%,#403b8750 20%,#17143a 42%,#080d20 77%),linear-gradient(155deg,#111b2b,#0a0b16)}.visual-cosmic .cosmic-dust{position:absolute;width:65%;height:90%;right:0%;top:0;background:radial-gradient(ellipse at 52% 52%,#e9e0ff6d 0%,#b980ea55 4%,#7c8fe74a 10%,#8764db22 22%,transparent 52%);filter:blur(10px);transform:rotate(-23deg)}.visual-cosmic .orbit{position:absolute;right:5%;top:10%;height:70%;aspect-ratio:1;border:1px solid #d4c5ff50;transform:rotate(-23deg) scaleY(.37);border-radius:50%;box-shadow:0 0 48px #ae8cff20}.visual-cosmic .orbit.orbit-2{right:8%;top:17%;height:54%;transform:rotate(35deg) scaleY(.5)}.visual-cosmic .starfield{position:absolute;inset:0;background-image:radial-gradient(#ffffffab 1px,transparent 1px),radial-gradient(#ffffffaa 1px,transparent 1px),radial-gradient(#ffffff88 1px,transparent 1px);background-size:79px 79px,127px 127px,191px 191px;background-position:0 4px,23px 79px,44px 31px;opacity:.5}.visual-technical{background:radial-gradient(ellipse at 70% 55%,#2e776a42,transparent 58%),linear-gradient(145deg,#101c23,#0a1419 70%)}.visual-technical .tech-drawing{position:absolute;width:min(72%,980px);right:2%;top:15%;height:76%;opacity:.68}.tech-drawing path,.tech-drawing circle{stroke:#95e5d0;fill:none;stroke-width:2}.tech-drawing .accent{stroke:#d9d9aa}.tech-drawing .dash{stroke-dasharray:5 12;opacity:.65}.tech-drawing .fill{fill:#9bdacc}.visual-technical .technical-grid{position:absolute;inset:0;background-image:linear-gradient(#8fccc814 1px,transparent 1px),linear-gradient(90deg,#8fccc814 1px,transparent 1px);background-size:54px 54px;transform:perspective(600px) rotateX(20deg) scale(1.2);opacity:.75}.visual-label{position:absolute;right:6%;bottom:15%;font-family:var(--display);font-size:.64rem;letter-spacing:.22em;color:#ffffff8a}.visual.card-art{position:absolute}.visual.card-art .titans-stage{height:82%;width:84%;right:5%;bottom:0}.visual.card-art .titans-glow{width:72%;top:4%;right:6%}.visual.card-art .tech-drawing{width:92%;height:87%;top:6%;right:0}.visual.card-art .visual-label{display:none}
/* WORK */
.work-section{background:var(--ink)}.section-heading-row{display:flex;align-items:end;justify-content:space-between;gap:70px;margin:40px 0 42px}.section-heading-row h2{margin:15px 0 0}.section-heading-row .section-intro{max-width:335px;font-size:1.03rem;line-height:1.75;color:var(--muted);margin-bottom:8px}.filter-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:25px}.filter-button{cursor:pointer;background:transparent;color:#a7b5b7;border:1px solid #3b4a4f;border-radius:100px;font-size:.8rem;padding:10px 18px;transition:background .2s,color .2s}.filter-button:hover{background:#1c3035;color:white}.filter-button.is-active{background:var(--aqua);color:#0d2527;border-color:var(--aqua);font-weight:700}.project-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px}.project-card{position:relative;grid-column:span 5;min-height:335px;border:0;border-radius:var(--radius);overflow:hidden;background:#1a282f;cursor:pointer;color:white;text-align:left;padding:0;isolation:isolate;transition:transform .25s,box-shadow .25s}.project-card.wide{grid-column:span 7}.project-card:hover{transform:translateY(-5px);box-shadow:0 22px 58px #0009}.project-card:focus-visible{outline-offset:4px}.project-card img,.project-card .visual{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s}.project-card:hover img,.project-card:hover .visual{transform:scale(1.035)}.project-card img{object-position:center 43%}.project-shade{position:absolute;inset:0;background:linear-gradient(0deg,#030c13ed 0%,#07101770 38%,transparent 75%);z-index:2}.project-card:has(img) .project-shade{background:linear-gradient(0deg,#091118ee 0%,#0a121742 42%,transparent 70%)}.project-top{position:absolute;left:25px;right:25px;top:24px;z-index:3;display:flex;justify-content:space-between;gap:10px;align-items:center}.project-index{color:white;font-family:var(--display);font-size:.67rem;font-weight:800;letter-spacing:.12em}.project-badge{font-size:.58rem;text-transform:uppercase;letter-spacing:.13em;color:#dde8e7;padding:7px 10px;border:1px solid #ffffff55;border-radius:50px;background:#07101555}.project-info{position:absolute;left:25px;right:25px;bottom:25px;z-index:3}.project-category{font-size:.66rem;letter-spacing:.13em;color:var(--aqua);font-weight:700;text-transform:uppercase}.project-title-row{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:7px}.project-title-row h3{margin:0;font-size:clamp(1.5rem,2.4vw,2.3rem);line-height:1.18}.project-arrow{border:1px solid #ffffff9c;width:36px;height:36px;display:grid;place-items:center;flex:none;border-radius:50%;font-size:1.15rem}.under-grid-note{color:#86999e;font-size:.76rem;margin-top:20px;display:flex;align-items:center;gap:9px}.detail-dot{width:7px;height:7px;border-radius:50%;background:var(--aqua);display:inline-block}
/* PRACTICE */
.approach{background:linear-gradient(140deg,#102127,#101a20 60%,#0e171e)}.approach-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:12%;align-items:center}.approach-heading h2{margin-top:52px;margin-bottom:28px}.approach-heading>p{font-size:1.1rem;line-height:1.8;color:var(--muted);max-width:460px}.discipline-list{border-top:1px solid #50626780}.discipline-item{display:grid;grid-template-columns:44px 1fr 30px;gap:10px;padding:25px 0;border-bottom:1px solid #50626780;align-items:start}.discipline-count{font-size:.73rem;color:var(--aqua);font-weight:700;padding-top:7px}.discipline-item h3{margin:0 0 7px;font-size:1.22rem}.discipline-item p{margin:0;color:#acb9bc;font-size:.85rem;line-height:1.6}.discipline-icon{color:#b8d9d4;text-align:right;font-size:1.15rem}
/* SYLVER SOUL */
.sylver-feature{min-height:720px;position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:center;background:linear-gradient(120deg,#141825 10%,#291d2d 75%,#0c171d)}.sylver-art{position:absolute;inset:0;overflow:hidden;z-index:-1;background:radial-gradient(ellipse at 72% 50%,#96587225 4%,#34315437 25%,transparent 65%)}.sylver-art::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#111621ee 5%,#14142299 51%,#1e172245 85%)}.sylver-halo{position:absolute;right:5%;top:5%;width:700px;max-width:70vw;aspect-ratio:1;border-radius:50%;box-shadow:0 0 0 1px #dea8a744,0 0 0 44px #d3a0b010,0 0 0 110px #b09ab012,0 0 100px #b55a8730;transform:rotate(25deg) scaleY(.82)}.sylver-halo.halo-2{top:12%;right:13%;transform:rotate(-40deg) scaleY(.65);box-shadow:0 0 0 2px #a8c7c644,0 0 0 64px #929add12}.sylver-star{position:absolute;color:#eddac0;font-size:4rem;right:35%;top:23%}.sylver-star.star-two{right:8%;top:60%;font-size:2.3rem}.sylver-verticals{position:absolute;right:4%;bottom:0;height:68%;width:47%;display:flex;gap:2%;align-items:end;justify-content:center;opacity:.55}.sylver-verticals i{display:block;width:12%;height:var(--h,70%);background:linear-gradient(90deg,#070c14,#60535b,#14111b);clip-path:polygon(50% 0,100% 12%,100% 100%,0 100%,0 12%)}.sylver-verticals i:nth-child(1){--h:64%}.sylver-verticals i:nth-child(2){--h:84%}.sylver-verticals i:nth-child(3){--h:72%}.sylver-verticals i:nth-child(4){--h:100%}.sylver-verticals i:nth-child(5){--h:76%}.sylver-verticals i:nth-child(6){--h:89%}.sylver-verticals i:nth-child(7){--h:63%}.sylver-content{padding-block:110px}.sylver-content .section-kicker{margin-top:70px}.sylver-content h2{font-size:clamp(5rem,11vw,11rem);letter-spacing:-.09em;margin:12px 0 25px;line-height:.83}.sylver-content h2 em{color:#e1afba}.sylver-content>p:not(.section-kicker,.visual-pending){max-width:530px;color:#d6d3d9;line-height:1.8;font-size:1.05rem;margin:0 0 28px}.sylver-content .visual-pending{font-size:.7rem;opacity:.55;margin:28px 0 0}
/* Featured Sylver Soul cinematic background. Keep original art as failure fallback. */
.sylver-art .sylver-background-video{position:absolute;top:0;right:0;width:72%;height:100%;object-fit:cover;object-position:50% 50%;opacity:0;-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 19%,#000 100%);mask-image:linear-gradient(90deg,transparent 0%,#000 19%,#000 100%);transition:opacity .65s ease;pointer-events:none}
.sylver-feature.sylver-video-ready .sylver-background-video{opacity:1}
.sylver-feature.sylver-video-ready .visual-pending{display:none}
.sylver-feature.sylver-video-ready .sylver-art>.sylver-halo,.sylver-feature.sylver-video-ready .sylver-art>.sylver-star,.sylver-feature.sylver-video-ready .sylver-art>.sylver-verticals{opacity:0;visibility:hidden}
.sylver-feature.sylver-video-ready .sylver-art::after{background:linear-gradient(90deg,#10151ded 0%,#10141bd9 27%,#11141a8a 50%,#11131b24 78%,#11131b12 100%),linear-gradient(0deg,#0b1119a8,transparent 34%)}
@media(max-width:780px){.sylver-art .sylver-background-video{width:100%;object-position:44% 50%;-webkit-mask-image:none;mask-image:none}.sylver-feature.sylver-video-ready .sylver-art::after{background:linear-gradient(90deg,#11151acc,#11151a64),linear-gradient(0deg,#0a101ae8 0%,#0a101a7a 65%,#0a101a70 100%)}}
@media(prefers-reduced-motion:reduce){.sylver-art .sylver-background-video{transition:none}}
/* ABOUT / CONTACT */
.about-contact{background:#0c1419}.about-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:12%;margin-bottom:105px}.about-contact-grid h2{margin-top:45px}.about-paragraph{padding-top:66px}.about-paragraph p{font-size:1.08rem;line-height:1.9;color:#c0cbcc}.text-link{display:inline-flex;gap:34px;margin-top:13px;padding-bottom:9px;border-bottom:1px solid var(--aqua);color:var(--aqua);font-size:.9rem;font-weight:700}.contact-banner{background:#1a292d;border:1px solid #395258;border-radius:var(--radius);padding:60px 64px;display:flex;align-items:end;justify-content:space-between;gap:40px;position:relative;overflow:hidden}.contact-banner::before{content:'';position:absolute;pointer-events:none;right:-20%;top:-150%;width:70%;aspect-ratio:1;border:1px solid #a5d8cb30;border-radius:50%;box-shadow:0 0 0 80px #a5d8cb0b,0 0 0 160px #a5d8cb09}.contact-banner h2{font-size:clamp(2.9rem,5.5vw,5.6rem);margin:20px 0}.contact-banner p:not(.section-kicker){color:#b4c5c5;max-width:530px;line-height:1.7;margin:0}.contact-actions{display:flex;flex-direction:column;align-items:start;gap:15px;position:relative}.contact-actions>span{font-size:.68rem;color:#9aadac;max-width:220px;line-height:1.5}.contact-actions code{font-size:.67rem;color:#d5e1dd}.footer{border-top:1px solid #293b41}.footer-inner{min-height:105px;display:flex;gap:30px;align-items:center}.brand-footer{margin-right:auto}.footer-inner p{color:#82959a;font-size:.73rem;margin:0}.footer-inner a:not(.brand-footer){color:#b3c5c7;font-size:.75rem}
/* DIALOG */
.project-dialog{position:fixed;inset:0;margin:auto;background:#152026;color:#f0f5f4;width:min(850px,calc(100% - 32px));max-height:min(90vh,900px);border:1px solid #536b70;border-radius:18px;padding:0;box-shadow:0 30px 110px #000c;overflow-y:auto}.project-dialog::backdrop{background:#02070bd9;backdrop-filter:blur(8px)}.dialog-close{cursor:pointer;position:sticky;top:16px;float:right;margin-right:17px;margin-bottom:-54px;z-index:4;background:#071219b8;color:white;border:1px solid #ffffff68;border-radius:50%;width:39px;height:39px}.dialog-art{width:100%;height:330px;position:relative;overflow:hidden;background:#12252b}.dialog-art img{width:100%;height:100%;object-fit:cover;object-position:center 42%}.dialog-body{padding:34px 38px 38px}.dialog-body h2{font-size:clamp(2.2rem,4.5vw,4rem);margin:8px 0 14px}.dialog-body>p:not(.section-kicker){line-height:1.75;color:#c0d0d0}.dialog-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.dialog-meta span{border:1px solid #607777;border-radius:100px;font-size:.74rem;padding:8px 12px;color:#c6d9d4}.dialog-footnote{margin-top:22px;font-size:.73rem!important;color:#93b2af!important}
/* MOBILE */
@media(max-width:1100px){.wrap{width:min(100% - 64px,1280px)}.hero h1{font-size:clamp(5.9rem,12vw,10rem)}.hero-content{justify-content:space-between}.hero-copy{max-width:670px}.hero-bottom{bottom:auto}.scroll-cue{right:18px}.approach-layout{gap:6%}.contact-banner{padding:45px}}
@media(max-width:780px){.wrap{width:calc(100% - 42px)}.section-pad{padding-block:76px}.site-header .header-inner{height:74px}.brand-lockup{height:42px;width:34px;flex-basis:34px}.brand-logo{width:34px!important;height:42px!important;max-width:34px;max-height:42px}.brand-lockup{width:44px;height:44px;flex-basis:44px}.brand-caption{display:none}.desktop-nav{display:none}.mobile-menu-button{display:flex;flex-direction:column;gap:6px;align-items:center;justify-content:center;width:42px;height:42px;background:#08131780;color:white;border:1px solid #ffffff65;border-radius:50%;cursor:pointer}.mobile-menu-button span{height:2px;background:white;width:17px;transition:transform .2s}.mobile-menu-button[aria-expanded="true"] span:first-child{transform:translateY(4px) rotate(45deg)}.mobile-menu-button[aria-expanded="true"] span:last-child{transform:translateY(-4px) rotate(-45deg)}.mobile-nav:not([hidden]){position:absolute;top:74px;left:0;right:0;display:flex;flex-direction:column;background:#0d171bf6;backdrop-filter:blur(15px);padding:17px 22px 26px;border-bottom:1px solid #536064}.mobile-nav a{padding:17px 3px;border-bottom:1px solid #ffffff25;display:flex;justify-content:space-between;font-size:1rem}.hero{height:auto;min-height:max(720px,100svh)}.hero-media-frame{left:0!important;right:0!important;width:100%!important;mask-image:none!important;-webkit-mask-image:none!important}.hero-slide-media{object-position:var(--hero-position-mobile,var(--hero-position,50% 50%));transform:translate3d(var(--hero-shift-x-mobile,0%),var(--hero-shift-y-mobile,0%),0) scale(var(--hero-zoom-mobile,1)) scaleX(var(--hero-flip-mobile,1))}.hero-shading{background:linear-gradient(0deg,#081117db 0%,#0b121994 45%,#0b111533 82%),linear-gradient(90deg,#07111770,transparent 85%)}.hero-content{justify-content:space-between}.hero-copy{transform:none}.hero-eyebrow{font-size:.6rem;gap:8px;white-space:normal;line-height:1.6}.hero h1{font-size:clamp(5.2rem,15vw,8rem);margin-left:-4px;margin-bottom:22px}.hero-statement{font-size:1.12rem;max-width:440px;margin-bottom:26px}.hero-bottom{bottom:auto;flex-direction:column;align-items:start;gap:20px}.slide-caption{gap:6px}.slide-caption-copy{font-size:.72rem}.slide-indicator .indicator-bar{width:34px}.scroll-cue{display:none}.section-heading-row{display:block;margin:27px 0 30px}.section-heading-row .section-intro{max-width:620px;margin-top:20px}.project-card,.project-card.wide{grid-column:span 6;min-height:330px}.approach-layout,.about-contact-grid{grid-template-columns:1fr;gap:35px}.approach-heading h2{margin-top:30px}.approach-heading>p{max-width:620px}.about-contact-grid{margin-bottom:65px}.about-paragraph{padding-top:0}.sylver-feature{min-height:650px}.sylver-content{padding-block:90px}.sylver-content h2{font-size:clamp(6rem,15vw,9rem)}.sylver-halo{right:-34%;max-width:90vw}.sylver-verticals{right:-10%;width:65%;opacity:.3}.contact-banner{display:block;padding:35px}.contact-actions{margin-top:30px}.footer-inner{flex-wrap:wrap;gap:18px;padding-block:30px}.footer-inner p{order:4;flex-basis:100%}}
@media(max-width:520px){.hero{min-height:max(680px,100svh)}.hero-copy{transform:none}.hero h1{font-size:clamp(4.6rem,17vw,6.9rem)}.hero-eyebrow{font-size:.55rem}.hero-eyebrow .eyebrow-line{width:17px}.hero-statement{font-size:1.02rem;line-height:1.6}.hero-actions{gap:9px;flex-wrap:wrap}.button{padding:14px 17px;font-size:.76rem;gap:13px}.hero-bottom{bottom:auto}.slide-caption-copy{display:none}.slide-indicators{margin-right:5px}.slide-indicator .indicator-bar{width:21px}.carousel-controls{gap:5px}.icon-button{width:33px;height:33px}.pause-button{display:grid}.section-number{font-size:.61rem}.section-heading-row h2,h2{font-size:clamp(2.9rem,10vw,4.2rem)}.section-kicker{font-size:.62rem;line-height:1.7}.filter-row{gap:6px}.filter-button{padding:9px 13px;font-size:.72rem}.project-grid{grid-template-columns:1fr}.project-card,.project-card.wide{grid-column:1;min-height:350px}.project-card:first-child{min-height:400px}.project-title-row h3{font-size:1.68rem}.approach-heading h2{font-size:3.1rem}.discipline-item{grid-template-columns:37px 1fr 22px}.discipline-item h3{font-size:1.03rem}.sylver-content .section-kicker{margin-top:55px}.sylver-content h2{font-size:clamp(5.3rem,19vw,7.5rem)}.sylver-content>p:not(.section-kicker,.visual-pending){font-size:.92rem}.about-paragraph p{font-size:1rem}.contact-banner{padding:30px 22px}.contact-banner h2{font-size:3.1rem}.footer-inner{gap:16px}.dialog-art{height:220px}.dialog-body{padding:25px}.dialog-body h2{font-size:2.2rem}}
@media(max-width:360px){.slide-indicator .indicator-n{display:none}.slide-indicator .indicator-bar{width:18px}.carousel-controls{gap:4px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* Keep poster art visible if a browser cannot decode a video. */
.hero-slide .hero-media-frame{background-size:cover;background-position:center}
.hero-slide.hero-video-unavailable video{opacity:0}

/* When a video fails to load, show its poster instead of a blank canvas. */
.hero-video-unavailable .hero-slide-media{visibility:hidden}
.hero-video-unavailable .hero-media-frame{background-size:cover;background-position:center;background-repeat:no-repeat}

/* The hero edge is clickable without adding an element over text or call-to-action buttons. */
.hero[data-carousel-edge="true"]{cursor:pointer}


/* ========================================================
   PHASE 4A / SELECTED WORK: editorial gallery
   Isolated to #selected-work and .showcase-*; hero untouched.
   ======================================================== */
#selected-work{position:relative;background:linear-gradient(180deg,#0b1218 0%,#0c151b 55%,#091116 100%)}
#selected-work .section-heading-row{margin-bottom:33px}
#selected-work .filter-row{display:flex;align-items:center;gap:9px;margin-bottom:22px}
#selected-work .filter-button{border-color:#3a5053;background:rgba(17,34,40,.48);transition:border-color .2s,background .2s,color .2s;}
#selected-work .filter-button:hover{border-color:#a9d8ce;background:#17292e}
#selected-work .filter-button.is-active{border-color:var(--aqua);background:var(--aqua);color:#0a2427}
.gallery-count{font:700 .66rem/1.4 var(--display);letter-spacing:.17em;color:#9abeb8;margin-left:auto;white-space:nowrap;padding:8px 0 8px 16px}
#selected-work .project-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-flow:row dense;gap:17px}
.showcase-card{border:1px solid #ffffff15;border-radius:14px;position:relative;display:block;grid-column:span 5;min-width:0;min-height:470px;overflow:hidden;padding:0;color:#fff;text-align:left;background:#172c32;cursor:pointer;isolation:isolate;box-shadow:0 6px 28px #0003;transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease}
.showcase-card--lead{grid-column:span 7;min-height:490px}
.showcase-card--companion{grid-column:span 5;min-height:490px}
.showcase-card:focus-visible{outline:2px solid var(--aqua);outline-offset:4px}
@media(hover:hover) and (pointer:fine){.showcase-card:hover{transform:translateY(-5px);border-color:#a9d9d257;box-shadow:0 24px 60px #000a}}
.showcase-media{position:absolute;inset:0;overflow:hidden;background:radial-gradient(ellipse at 60% 40%,#38505a,#111d24 80%)}
.showcase-media .showcase-poster,.showcase-media .showcase-still,.showcase-media .showcase-preview{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--showcase-focus,center center);transition:transform .65s cubic-bezier(.2,.7,.2,1),opacity .55s ease;display:block}
.showcase-media .showcase-preview{opacity:0;pointer-events:none}
.showcase-card.is-previewing .showcase-preview{opacity:1}
@media(hover:hover) and (pointer:fine){.showcase-card:hover .showcase-still,.showcase-card:hover .showcase-poster,.showcase-card:hover .showcase-preview{transform:scale(1.065)}}
.showcase-card .visual{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;transition:transform .5s ease}
.showcase-card .visual-word{pointer-events:none}
.showcase-vignette{position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(to bottom,#07111766,transparent 32%,transparent 48%,#050b11a8 79%,#040a0ff5 100%)}
.showcase-topline{position:absolute;top:27px;left:27px;right:27px;z-index:3;display:flex;gap:16px;align-items:start;justify-content:space-between}
.showcase-index{font:800 .7rem/1.2 var(--display);letter-spacing:.12em;color:#fff}
.showcase-index>span{opacity:.55}
.showcase-type{font:700 .61rem/1.3 var(--display);letter-spacing:.15em;border:1px solid #c6e9e17a;border-radius:30px;background:#09161c77;backdrop-filter:blur(6px);padding:8px 12px;white-space:nowrap;color:#e3f8f3}
.showcase-bottomline{position:absolute;left:27px;right:27px;bottom:26px;z-index:3;display:flex;align-items:end;justify-content:space-between;gap:22px}
.showcase-copy{display:flex;flex-direction:column;align-items:start;gap:7px;min-width:0;max-width:90%}
.showcase-kicker{font:700 .65rem/1.45 var(--display);letter-spacing:.15em;text-transform:uppercase;color:#aee2d7;text-shadow:0 1px 12px #02080bcc}
.showcase-title{font:800 clamp(1.75rem,3.4vw,3.25rem)/1.05 var(--display);letter-spacing:-.055em;text-wrap:balance;text-shadow:0 3px 18px #0008}
.showcase-teaser{font:400 .89rem/1.5 var(--font);color:#d8e4e3;max-width:38ch;text-shadow:0 2px 10px #000b;opacity:.94}
.showcase-status{font:700 .57rem/1.5 var(--display);letter-spacing:.11em;text-transform:uppercase;color:#d0e4e1;border-top:1px solid #cce7de66;margin-top:3px;padding-top:8px}
.showcase-view{flex:none;display:grid;place-items:center;width:45px;height:45px;border:1px solid #ffffff99;border-radius:50%;background:#0c1c2280;font:400 1.5rem/1 var(--font);transition:background .2s,color .2s,transform .2s}
.showcase-card:hover .showcase-view,.showcase-card:focus-visible .showcase-view{background:var(--aqua);color:#092427;transform:rotate(45deg)}
.showcase-card--pending{background:#111e24}
#selected-work .project-grid.is-filtered{grid-auto-flow:row}
#selected-work .project-grid.is-filtered .showcase-card{grid-column:span 6;min-height:400px}
#selected-work .under-grid-note{margin-top:24px;line-height:1.7;color:#8ea9aa}
#selected-work .under-grid-note .detail-dot{flex:none}
/* Dialog shares the card's artwork model, without allowing video to escape. */
#project-dialog .dialog-art{height:360px;overflow:hidden;background:#0c1920}
#project-dialog .showcase-media{position:absolute;inset:0}
#project-dialog .showcase-media .showcase-still{position:absolute;width:100%;height:100%;object-fit:contain;object-position:center center}
#project-dialog .showcase-dialog-video{width:100%;height:100%;object-fit:contain;background:#070f14;display:block}
#project-dialog .visual{position:absolute;inset:0;width:100%;height:100%}
@media(max-width:1100px){
  .showcase-card--lead,.showcase-card--companion{min-height:410px}
  .showcase-title{font-size:clamp(1.7rem,3.4vw,2.65rem)}
}
@media(max-width:780px){
  #selected-work .project-grid{gap:13px}
  .showcase-card--lead,.showcase-card--companion{grid-column:span 6;min-height:360px}
  #selected-work .project-grid.is-filtered .showcase-card{grid-column:span 6;min-height:360px}
  .showcase-bottomline{left:20px;right:20px;bottom:20px}
  .showcase-topline{left:20px;right:20px;top:20px}
  .showcase-title{font-size:clamp(1.5rem,3.5vw,2.2rem)}
  .showcase-teaser{font-size:.79rem}
  .gallery-count{width:100%;padding:7px 0 0;margin:0}
}
@media(max-width:590px){
  #selected-work .project-grid .showcase-card,#selected-work .project-grid.is-filtered .showcase-card{grid-column:1 / -1;min-height:390px}
  #selected-work .project-grid .showcase-card:first-child{min-height:440px}
  .showcase-title{font-size:clamp(1.9rem,8vw,2.7rem)}
  .showcase-topline{left:23px;right:23px;top:22px}
  .showcase-bottomline{left:23px;right:23px;bottom:23px}
  #project-dialog .dialog-art{height:255px}
}
@media(prefers-reduced-motion:reduce){
  .showcase-card,.showcase-card .showcase-view,.showcase-card .showcase-media img,.showcase-card .showcase-media video{transition:none!important}
}

/* PHASE 4B — Full-poster framing for near-square ensemble artwork.
   Avoid cropping heads and foreground figures in a wide gallery card. */
.showcase-media--framed{background:#070c10}
.showcase-media--framed .showcase-backdrop{position:absolute;inset:-9%;width:118%;height:118%;object-fit:cover;filter:blur(22px) brightness(.42) saturate(.75);pointer-events:none}
.showcase-media--framed .showcase-still{object-fit:contain;object-position:center center;transform:none!important}

/* PHASE 4B: gallery videos may use their own paused frame when no PNG poster exists.
   This avoids missing-image cards and never changes the original source asset. */
.showcase-media--self-poster .showcase-preview--self{opacity:1;pointer-events:none}
.showcase-load-note{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:.7rem;letter-spacing:.16em;color:#b2ded5;opacity:.75;z-index:-1}
.showcase-card.has-video-frame .showcase-load-note{display:none}
.showcase-card.video-preview-unavailable .showcase-load-note{z-index:1;opacity:1}
.project-versions{display:flex;gap:8px;flex-wrap:wrap;padding:12px 20px;background:#101b21;border-top:1px solid #40585f}
.project-versions:empty{display:none}
.project-version{font:inherit;font-size:.74rem;color:#c9d6d5;cursor:pointer;border:1px solid #567278;background:#18272d;border-radius:999px;padding:9px 13px}
.project-version:hover,.project-version.is-active{background:#b2ded5;color:#0a1015;border-color:#b2ded5}


/* PHASE 4C — selected work to dedicated case study, no hero changes */
.case-study-discovery{display:grid;grid-template-columns:minmax(130px,.9fr) minmax(0,2.2fr) 44px;align-items:center;gap:20px;padding:21px 24px;margin-top:20px;border:1px solid rgba(170,219,211,.26);border-radius:14px;background:linear-gradient(90deg,rgba(145,207,198,.07),rgba(19,30,36,.45));transition:border-color .2s,background .2s,transform .2s}
.case-study-discovery:hover,.case-study-discovery:focus-visible{border-color:rgba(178,222,213,.72);background:linear-gradient(90deg,rgba(145,207,198,.12),rgba(19,30,36,.6));transform:translateY(-2px)}
.case-study-discovery-label{font-size:.62rem;font-weight:800;letter-spacing:.17em;color:var(--aqua)}
.case-study-discovery-title{font-family:var(--display);font-weight:600;letter-spacing:-.02em;font-size:clamp(1rem,1.45vw,1.25rem)}
.case-study-discovery-title strong{color:var(--aqua-bright)}
.case-study-discovery-arrow{font-size:1.5rem;text-align:right;color:var(--aqua)}
@media(max-width:680px){.case-study-discovery{grid-template-columns:minmax(0,1fr) 34px;gap:8px;padding:18px}.case-study-discovery-label{grid-column:1 / -1}.case-study-discovery-title{grid-column:1;grid-row:2}.case-study-discovery-arrow{grid-column:2;grid-row:2}}

/* SHAREABLE CASE STUDIES */
.case-page{background:#0a1116;color:#f3f6f4;min-height:100vh}
.case-shell{width:min(100% - 100px,1400px);margin-inline:auto}
.case-header{position:relative;z-index:3;display:flex;justify-content:space-between;align-items:center;gap:25px;padding:23px 0;border-bottom:1px solid rgba(194,223,219,.17)}
.case-brand{display:flex;align-items:center;gap:13px;font-size:.7rem;font-weight:800;letter-spacing:.18em}
.case-logo{display:block;width:37px;height:46px;object-fit:contain;flex:none}
.case-back{border:1px solid rgba(217,236,232,.35);border-radius:100px;padding:13px 20px;font-size:.82rem;font-weight:600;transition:border-color .2s,color .2s}
.case-back:hover{border-color:var(--aqua);color:var(--aqua)}
.case-hero{position:relative;padding:112px 0 94px;isolation:isolate;overflow:hidden}
.case-hero::before{content:'';position:absolute;z-index:-1;inset:-30% -35% 5% 37%;background:radial-gradient(ellipse at 40% 50%,rgba(38,117,112,.22),rgba(27,49,61,.14) 35%,transparent 66%);pointer-events:none}
.case-kicker{font-size:.69rem;letter-spacing:.22em;color:var(--aqua);font-weight:800;margin:0 0 22px}
.case-hero h1{font-family:var(--display);font-size:clamp(4rem,10vw,9.9rem);line-height:.94;font-weight:800;letter-spacing:-.09em;margin:0 0 36px;max-width:1100px}
.case-hero h1 span{display:block;color:var(--aqua)}
.case-hero-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(270px,.6fr);gap:12%;align-items:end}
.case-lead{font-size:clamp(1.2rem,2vw,1.67rem);line-height:1.6;max-width:770px;margin:0;color:#d7e3e0}
.case-subheading{color:var(--aqua-bright);font-size:clamp(1rem,1.5vw,1.2rem);font-weight:700;margin:0 0 15px}
.case-meta{display:grid;gap:14px;border-left:1px solid rgba(178,222,213,.4);padding-left:25px}
.case-meta-row{display:flex;flex-direction:column;gap:5px;font-size:.87rem;color:#f2f5f4}
.case-meta-row small{color:#92b1ad;font-size:.64rem;letter-spacing:.16em;font-weight:800}
.case-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.case-tags span{border:1px solid #607b79;padding:8px 11px;border-radius:100px;font-size:.72rem;color:#c7e3de}
.case-section{padding:45px 0 100px}
.case-section-topline{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #405258;padding-top:20px;margin-bottom:32px}
.case-section-topline span{font-size:.66rem;letter-spacing:.2em;font-weight:800;color:var(--aqua)}
.case-section-topline small{font-size:.75rem;color:#9aaeb0}
.case-media-frame{background:#0f1b20;border:1px solid #385258;border-radius:14px;overflow:hidden;position:relative;box-shadow:0 24px 80px rgba(0,0,0,.3)}
.case-video{display:block;width:100%;height:auto;aspect-ratio:16/9;background:#101a1e;object-fit:contain}
.case-media-caption{display:flex;justify-content:space-between;gap:22px;padding:20px 25px;background:#152126;border-top:1px solid #304247}
.case-media-caption h3{font-size:1.24rem;margin:0 0 6px}
.case-media-caption p{margin:0;max-width:720px;font-size:.86rem;line-height:1.6;color:#b8c8ca}
.case-media-id{font-size:.69rem;letter-spacing:.16em;font-weight:700;white-space:nowrap;color:var(--aqua)}
.case-video-error{padding:16px 20px;color:#ffd8c4;background:#4e2827;font-size:.85rem}
.case-video-error[hidden]{display:none}
.case-narrative{display:grid;grid-template-columns:.62fr 1.38fr;gap:14%;padding:92px 0 100px}
.case-narrative h2{font-size:clamp(2.8rem,6vw,5.4rem);line-height:1.07;margin:0}
.case-narrative h2 em{color:var(--aqua)}
.case-narrative-copy p{color:#c1d2d0;font-size:1.06rem;line-height:1.9;margin:0 0 25px}
.case-narrative-copy .case-quote{font-size:1.28rem;color:#f1f8f4;line-height:1.65;border-left:2px solid var(--aqua);padding-left:25px}
.case-duo{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:stretch;padding-bottom:110px}
.case-reference{min-height:390px;border-radius:14px;border:1px dashed #688781;background:radial-gradient(circle at 50% 40%,#223d40 0%,#101d22 60%);padding:38px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:15px}
.case-reference-label{font-size:.65rem;letter-spacing:.2em;color:var(--aqua);font-weight:800}
.case-reference h3{font-size:1.75rem;margin:0}
.case-reference p{max-width:390px;font-size:.92rem;line-height:1.7;margin:0;color:#bbd0cc}
.case-reference img{max-height:480px;max-width:100%;object-fit:contain}
.case-ref-details{background:#101b21;border:1px solid #2a4145;border-radius:14px;padding:42px;display:flex;flex-direction:column;justify-content:center;gap:17px}
.case-ref-details h3{font-size:2.3rem;margin:0}
.case-ref-details p{color:#bbcbcd;line-height:1.8;margin:0}
.case-ref-details strong{color:#e9f4ef}
.case-end{padding:65px 0 100px;border-top:1px solid #36494d;display:flex;justify-content:space-between;gap:25px;align-items:center}
.case-end h2{font-size:clamp(2.1rem,5vw,4.4rem);margin:0;line-height:1.08}
.case-end .case-back{white-space:nowrap}
.case-footer{border-top:1px solid #304147;padding:30px 0 45px;display:flex;justify-content:space-between;gap:30px;color:#91a8a7;font-size:.8rem}
@media(max-width:900px){.case-shell{width:calc(100% - 56px)}.case-hero{padding:80px 0 60px}.case-hero-grid{gap:7%}.case-narrative{gap:7%}}
@media(max-width:680px){.case-shell{width:calc(100% - 40px)}.case-header{padding:16px 0}.case-brand{letter-spacing:.1em;font-size:.63rem}.case-logo{width:32px;height:40px}.case-back{padding:11px 13px;font-size:.76rem}.case-hero{padding:65px 0 45px}.case-hero h1{font-size:clamp(3.7rem,16vw,6rem);margin-bottom:27px}.case-hero-grid,.case-narrative,.case-duo{grid-template-columns:1fr;gap:25px}.case-meta{margin-top:5px}.case-lead{font-size:1.06rem}.case-section{padding-bottom:65px}.case-media-caption{flex-direction:column;gap:8px;padding:16px}.case-narrative{padding:65px 0}.case-narrative-copy p{font-size:.98rem}.case-reference{min-height:300px}.case-ref-details{padding:28px}.case-end{padding:50px 0 65px;display:block}.case-end .case-back{display:inline-block;margin-top:26px}.case-footer{flex-direction:column;gap:12px}}

/* Phase 4C.1 — Art-forward project landing and complete Work directory */
.case-hero--visual{padding:35px 0 70px;overflow:clip}
.case-hero--visual::before{inset:-10% -15% 25% 30%}
.case-hero-display{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(0,1fr);align-items:center;gap:clamp(20px,4vw,70px);min-height:clamp(500px,67svh,700px)}
.case-hero-text{position:relative;z-index:1;padding:20px 0}
.case-hero--visual h1{font-size:clamp(3.3rem,7.3vw,7.4rem);line-height:.99;letter-spacing:-.083em;margin:0 0 26px;max-width:740px}
.case-hero--visual .case-subheading{max-width:500px;font-size:clamp(1.08rem,1.65vw,1.4rem)}
.case-watch{display:inline-flex;align-items:center;gap:35px;margin-top:32px;border:1px solid rgba(178,222,213,.55);border-radius:100px;color:var(--aqua);font-size:.83rem;font-weight:700;padding:15px 23px;transition:background .2s,transform .2s}
.case-watch:hover{background:rgba(178,222,213,.12);transform:translateY(-2px)}
.case-hero-stage{height:clamp(380px,56svh,615px);position:relative;border:1px solid rgba(178,222,213,.3);border-radius:20px;overflow:hidden;background:radial-gradient(circle at 50% 40%,#536b7c,#182a34 65%,#0d171b);box-shadow:0 28px 110px rgba(0,0,0,.33)}
.case-hero-stage::after{content:'';position:absolute;inset:0;pointer-events:none;border-radius:inherit;box-shadow:inset 0 0 75px rgba(7,15,18,.22)}
.case-hero-motion{display:block;width:100%;height:100%;object-fit:cover;object-position:center center}
.case-stage-mark{position:absolute;z-index:2;left:22px;right:22px;top:20px;display:flex;justify-content:space-between;gap:15px;color:white;font-size:.61rem;font-weight:800;letter-spacing:.17em;text-shadow:0 2px 12px #000b}
.case-motion-toggle{position:absolute;z-index:3;right:19px;bottom:18px;background:#101c22d9;border:1px solid #a0c9c580;color:#e4f6ef;padding:11px 17px;border-radius:100px;cursor:pointer;font-weight:700;font-size:.77rem}
.case-motion-toggle:hover{background:#243e42}
.case-video-warning:not([hidden]){position:absolute;inset:auto 20px 65px;background:#341f24;color:#ffe9e4;padding:16px;border-radius:8px;z-index:5;font-size:.8rem}
.case-hero-summary{border-top:1px solid #3a5053;padding-top:27px;margin-top:20px;display:grid;grid-template-columns:1.4fr .8fr;gap:10%;align-items:start}
.case-hero-summary>p{font-size:clamp(1rem,1.5vw,1.25rem);max-width:820px;line-height:1.7;color:#d4e2df}
.case-hero--visual .case-tags{margin-top:10px}
.case-reference--image{border:1px solid #445b5e;padding:14px;background:#121b21;min-height:0}
.case-reference--image img{width:100%;max-height:520px;object-fit:contain}
.case-reference--image p{font-size:.74rem;color:#b5c6c7}
.discovery-quiet{font-weight:400;color:#c2cecb}
.work-page-hero{padding:90px 0 83px;border-bottom:1px solid #3a5053}
.work-page-hero h1{font-family:var(--display);font-size:clamp(3.4rem,7.8vw,8.1rem);line-height:1.03;letter-spacing:-.078em;font-weight:800;margin:0 0 25px}
.work-page-hero h1 em{color:var(--aqua);font-style:normal}
.work-page-hero>p:last-child{max-width:690px;font-size:clamp(1rem,1.35vw,1.22rem);line-height:1.65;color:#b9cbcc}
.work-page-collection{padding:40px 0 95px}
.work-page-bar{display:flex;justify-content:space-between;align-items:center;gap:20px}
.work-page-bar .case-kicker{margin:0}
#work-total{font-size:.72rem;color:#9fb6b6;letter-spacing:.12em;font-weight:700}
.work-page-filters{display:flex;flex-wrap:wrap;gap:9px;margin:25px 0 36px}
.work-filter{background:#111d22;border:1px solid #4f6768;border-radius:100px;color:#dce9e4;font-size:.8rem;padding:12px 17px;cursor:pointer;transition:background .2s,color .2s}
.work-filter:hover{border-color:#a9d6ce}
.work-filter.is-active{background:var(--aqua);color:#0a1418;border-color:var(--aqua);font-weight:700}
.work-page-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.work-page-card{display:block;border:1px solid #304a4d;border-radius:15px;overflow:hidden;position:relative;background:#101b21;transition:transform .24s,border-color .24s;min-width:0}
.work-page-card:hover,.work-page-card:focus-visible{transform:translateY(-4px);border-color:#a7cfc8}
.work-page-card-media{aspect-ratio:1.75;background:radial-gradient(circle at 70% 20%,#284348,#111b21 68%);overflow:hidden;position:relative}
.work-page-card-media img,.work-page-card-media video{width:100%;height:100%;display:block;object-fit:cover}
.work-card-empty{position:absolute;inset:0;display:grid;place-items:center;color:#9fbcb8;font-size:.72rem;letter-spacing:.13em}
.work-page-card-info{padding:21px;display:grid;grid-template-columns:55px minmax(0,1fr) 30px;gap:10px;align-items:start}
.work-page-card-num,.work-page-card-type{font-size:.63rem;font-weight:800;letter-spacing:.12em;color:var(--aqua)}
.work-page-card-type{color:#92b7b7;text-transform:uppercase}
.work-page-card-info h2{font-family:var(--display);font-size:clamp(1.3rem,2.2vw,2.2rem);line-height:1.18;margin:10px 0 8px;letter-spacing:-.045em}
.work-page-card-info p{font-size:.84rem;line-height:1.5;color:#aec0c0;margin:0}
.work-card-arrow{font-size:1.4rem;text-align:right;color:var(--aqua)}
.generic-hero{min-height:clamp(520px,75svh,720px);margin-top:30px;position:relative;border-radius:18px;overflow:hidden;background:#142127}
.generic-hero-art{position:absolute;inset:0}
.generic-hero-art:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#071015ed,rgba(7,16,21,.56) 52%,rgba(7,16,21,.08)),linear-gradient(0deg,#071015ae,transparent 45%)}
.generic-hero-media{width:100%;height:100%;object-fit:cover}
.generic-hero-copy{position:absolute;bottom:9%;left:6%;right:10%;z-index:2}
.generic-hero-copy h1{font-family:var(--display);font-size:clamp(3rem,7vw,7rem);line-height:1;letter-spacing:-.07em;max-width:1000px;margin:0 0 25px}
.generic-hero-copy>p:not(.case-kicker){font-size:clamp(1rem,1.7vw,1.35rem);color:#e0eae7;max-width:620px}
.generic-jump{display:inline-block;color:var(--aqua);border-bottom:1px solid var(--aqua);padding-bottom:10px;margin-top:20px;font-weight:700}
.generic-intro{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:start}
.generic-intro h2{font-size:clamp(2.5rem,5vw,5rem)}
.generic-intro h2 em{color:var(--aqua);font-style:normal}
.generic-intro>div>p{font-size:1.05rem;line-height:1.8;color:#c9d8d4}
.generic-collection{font-size:.84rem!important;color:#8eada8!important;margin-top:20px}
@media(max-width:900px){.case-hero-display{grid-template-columns:1fr 1fr;gap:18px}.case-hero--visual h1{font-size:clamp(3.1rem,7.5vw,5rem)}.case-hero-stage{height:440px}}
@media(max-width:680px){.case-hero--visual{padding:35px 0 50px}.case-hero-display{grid-template-columns:1fr;gap:22px;min-height:auto}.case-hero-text{padding:12px 0}.case-hero--visual h1{font-size:clamp(3.35rem,13vw,5.1rem)}.case-hero-stage{height:390px}.case-stage-mark{font-size:.52rem}.case-hero-summary{grid-template-columns:1fr;gap:15px;margin-top:30px}.case-hero-summary>p{font-size:1.03rem}.case-watch{margin-top:12px}.work-page-hero{padding:70px 0 60px}.work-page-hero h1{font-size:clamp(2.9rem,12vw,5rem)}.work-page-grid{grid-template-columns:1fr;gap:18px}.work-page-card-info{grid-template-columns:40px minmax(0,1fr) 20px;padding:16px}.work-page-card-info h2{font-size:1.65rem}.generic-hero{margin-top:20px;min-height:540px}.generic-hero-copy{bottom:7%;left:6%}.generic-hero-copy h1{font-size:clamp(2.7rem,12vw,4.7rem)}.generic-intro{grid-template-columns:1fr;gap:15px}.discovery-quiet{display:none}}

/* PHASE 4C.2 — Shared cinematic project landing: full-bleed media as the background.
   No homepage layout or image/video files are changed. */
.case-page{overflow-x:clip}
.full-bleed-project{width:100vw;max-width:none;margin-left:calc(50% - 50vw);margin-right:0;position:relative;isolation:isolate;overflow:hidden;border-radius:0}
.case-hero--visual.full-bleed-project{height:auto;min-height:max(700px,84svh);padding:0;display:flex;align-items:stretch;background:#17242b}
.case-hero--visual.full-bleed-project::before{display:none}
.case-hero-backdrop{position:absolute;z-index:-2;inset:0;background:radial-gradient(ellipse at 73% 50%,#526675,#17242b 65%)}
.case-hero-backdrop .case-hero-motion{width:100%;height:100%;object-fit:cover;object-position:var(--project-focus,68% center);transform:translateX(15%) scale(1.14);transform-origin:center center;opacity:.98}
.case-hero--visual.full-bleed-project::after{content:'';position:absolute;z-index:-1;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(5,13,18,.94) 0%,rgba(5,13,18,.82) 25%,rgba(5,13,18,.52) 48%,rgba(5,13,18,.08) 78%),linear-gradient(0deg,rgba(5,12,16,.56),transparent 44%)}
.case-hero--visual .case-hero-display{min-height:max(700px,84svh);width:100%;display:flex;align-items:center;gap:0;padding:clamp(95px,13vh,150px) max(32px,calc((100vw - 1400px)/2)) clamp(95px,11vh,150px)}
.case-hero--visual .case-hero-text{max-width:min(760px,58vw);padding:0;position:relative;z-index:1;text-shadow:0 3px 22px rgba(0,0,0,.22)}
.case-hero--visual .case-hero-text h1{font-size:clamp(4.3rem,8.1vw,9.5rem);line-height:.93}
.case-hero--visual .case-subheading{color:#d3f0ea}
.case-hero--visual .case-watch{background:rgba(9,22,28,.25);color:#e4f7f2;border-color:rgba(204,234,229,.55)}
.case-hero--visual .case-stage-mark{z-index:2;left:auto;right:clamp(24px,5vw,90px);top:auto;bottom:35px;gap:18px}
.case-hero--visual .case-motion-toggle{z-index:3;right:clamp(24px,5vw,90px);bottom:82px}
.case-hero--visual .case-video-warning{z-index:4}
.case-hero-summary{margin-top:55px}
/* All other per-project pages use the same artwork-led full-bleed format. */
.generic-hero.full-bleed-project{margin-top:0;min-height:max(670px,83svh);border-radius:0}
.generic-hero.full-bleed-project .generic-hero-art{inset:0;background:#17242b}
.generic-hero.full-bleed-project .generic-hero-art::after{background:linear-gradient(90deg,rgba(5,13,18,.9) 0%,rgba(5,13,18,.76) 27%,rgba(5,13,18,.35) 60%,rgba(5,13,18,.1) 100%),linear-gradient(0deg,rgba(5,13,18,.6),transparent 40%)}
.generic-hero.full-bleed-project .generic-hero-media{width:100%;height:100%;object-fit:cover;object-position:var(--project-focus,60% center);filter:none}
.generic-hero.full-bleed-project[data-media-fit="contain"] .generic-hero-media{object-fit:contain;object-position:right center}
.generic-hero.full-bleed-project .generic-hero-copy{left:max(32px,calc((100vw - 1400px)/2));right:auto;bottom:14%;max-width:min(760px,60vw)}
.generic-hero.full-bleed-project .generic-hero-copy h1{font-size:clamp(4.2rem,8vw,9rem)}
.generic-hero.full-bleed-project .case-motion-toggle{right:clamp(24px,5vw,90px);bottom:27px}
.generic-hero-unavailable{position:absolute;inset:0;display:grid;place-items:center;color:#b4c3c5}
@media(max-width:900px){
  .case-hero--visual .case-hero-text{max-width:75vw}
  .generic-hero.full-bleed-project .generic-hero-copy{max-width:75vw}
}
@media(max-width:680px){
  .case-hero--visual.full-bleed-project{min-height:max(660px,86svh)}
  .case-hero--visual .case-hero-display{min-height:max(660px,86svh);padding:110px 24px 120px;align-items:end}
  .case-hero--visual .case-hero-text{max-width:100%}
  .case-hero--visual .case-hero-text h1{font-size:clamp(3.5rem,14.3vw,5.75rem);margin-bottom:22px}
  .case-hero-backdrop .case-hero-motion{transform:translateX(12%) scale(1.02);opacity:.9}
  .case-hero--visual.full-bleed-project::after{background:linear-gradient(0deg,rgba(5,12,16,.94) 0%,rgba(5,12,16,.76) 43%,rgba(5,12,16,.18) 100%)}
  .case-hero--visual .case-stage-mark{left:24px;right:24px;top:86px;bottom:auto;font-size:.52rem}
  .case-hero--visual .case-motion-toggle{right:24px;bottom:auto;top:130px}
  .generic-hero.full-bleed-project{min-height:max(620px,83svh);margin-top:0}
  .generic-hero.full-bleed-project .generic-hero-art::after{background:linear-gradient(0deg,rgba(5,12,16,.94) 0%,rgba(5,12,16,.55) 52%,rgba(5,12,16,.22) 100%)}
  .generic-hero.full-bleed-project .generic-hero-copy{left:24px;right:24px;bottom:12%;max-width:none}
  .generic-hero.full-bleed-project .generic-hero-copy h1{font-size:clamp(3.3rem,13vw,5.8rem)}
  .generic-hero.full-bleed-project .case-motion-toggle{right:24px;top:20px;bottom:auto}
  .case-hero-summary{margin-top:32px}
}
/* Under construction page */
.build-page{min-height:100svh;display:flex;flex-direction:column;background:radial-gradient(ellipse at 80% 40%,#193b3e 0%,#0b151b 52%,#080f14 90%)}
.build-page .case-shell{width:min(100% - 56px,1400px)}
.build-main{flex:1;display:flex;align-items:center;padding:75px 0 100px}
.build-copy{max-width:840px}
.build-copy h1{font-family:var(--display);font-size:clamp(4rem,10vw,10rem);letter-spacing:-.08em;line-height:.95;margin:0 0 26px}
.build-copy h1 em{font-style:normal;color:var(--aqua)}
.build-copy p{font-size:clamp(1.1rem,2vw,1.6rem);line-height:1.6;max-width:700px;color:#c0d5d0}
.build-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:37px}
.build-links a{padding:15px 24px;border-radius:100px;border:1px solid #769d97;transition:background .2s}
.build-links a:first-child{background:var(--aqua);color:#0a1015;font-weight:700}
.build-links a:hover{background:#315657}
.build-links a:first-child:hover{background:var(--aqua-bright)}
/* Place the case-study navigation over the artwork, as on the homepage. */
.case-page > .case-shell:first-of-type{position:absolute;inset:0 0 auto;z-index:30;pointer-events:none}
.case-page > .case-shell:first-of-type .case-header{pointer-events:auto}

/* Phase 4C.3 — intentional fold, functional browsing, and restrained homepage curation */
.work-page-hero{padding:clamp(24px,4vh,48px) 0 clamp(24px,3.5vh,44px);}
.work-page-hero .case-kicker{margin-bottom:13px;}
.work-page-hero h1{font-size:clamp(2.85rem,5.6vw,5.65rem);line-height:1.03;letter-spacing:-.07em;margin-bottom:13px;max-width:1160px;}
.work-hero-lower{display:flex;align-items:end;justify-content:space-between;gap:32px;}
.work-hero-lower p{max-width:590px;color:#b9cbcc;font-size:clamp(.95rem,1.25vw,1.12rem);line-height:1.6;margin:0;}
.work-hero-jump{color:var(--aqua-bright);display:inline-flex;gap:24px;align-items:center;border-bottom:1px solid var(--aqua);padding-bottom:10px;font-weight:700;font-size:.83rem;white-space:nowrap;}
.work-hero-jump:hover,.work-hero-jump:focus-visible{color:#fff;border-bottom-color:#fff;}
.work-page-collection{padding-top:25px;scroll-margin-top:12px;}
.work-page-filters{margin:18px 0 10px;}
.work-filter-status{margin:0 0 22px;color:#a4c8c1;font-size:.82rem;line-height:1.5;min-height:1.25em;}
.work-filter:focus-visible{outline:2px solid var(--aqua-bright);outline-offset:3px;}
.selected-work-next{margin-top:clamp(24px,3vw,45px);padding:clamp(26px,4.2vw,56px);border:1px solid #507773;border-radius:17px;background:radial-gradient(ellipse at 85% 10%,#2b55503d,transparent 54%),linear-gradient(115deg,#16292b,#0e191f);display:flex;align-items:center;justify-content:space-between;gap:35px;}
.selected-work-next h3{font-family:var(--display);font-size:clamp(1.9rem,3.8vw,3.5rem);letter-spacing:-.055em;line-height:1.1;margin:3px 0 12px;}
.selected-work-next h3 em{font-style:normal;color:var(--aqua);}
.selected-work-next p:not(.section-kicker){color:#bed2cc;max-width:570px;line-height:1.65;font-size:.98rem;margin:0;}
.selected-work-next .section-kicker{margin:0 0 15px;}
.selected-work-cta{min-width:220px;justify-content:space-between;white-space:nowrap;box-shadow:0 12px 45px rgba(153,234,214,.11);}
.generic-hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px 30px;}
.generic-hero.full-bleed-project .case-video-warning{position:absolute;right:22px;bottom:85px;max-width:320px;z-index:4;}
.case-motion-toggle:disabled{opacity:.65;cursor:not-allowed;}
#project-full-presentation{scroll-margin-top:30px;}
@media(max-width:780px){
  .work-hero-lower{display:block;}
  .work-hero-jump{margin-top:18px;}
  .work-page-hero{padding:24px 0 27px;}
  .work-page-hero h1{font-size:clamp(2.6rem,8.6vw,4.65rem);}
  .selected-work-next{flex-direction:column;align-items:stretch;padding:27px 23px;gap:21px;}
  .selected-work-cta{width:100%;justify-content:space-between;}
}
@media(max-width:420px){.work-page-hero h1{font-size:clamp(2.4rem,10.2vw,3.3rem)}.work-page-collection{padding-top:20px}.work-page-filters{gap:7px}.work-filter{padding:10px 13px;font-size:.74rem}}
/* Restore interaction to case-study pages: earlier header-overlay styling
   accidentally disabled pointer events throughout the whole main/footer. */
.case-page > .case-shell:first-of-type main,
.case-page > .case-shell:first-of-type .case-footer{pointer-events:auto}

/* Construction page is intentionally complete above the fold: no false scroll hint. */
.build-main{padding:35px 0 48px}
.build-copy h1{font-size:clamp(3.4rem,7.4vw,7.4rem)}
.build-links{margin-top:27px}
@media(max-width:680px){.build-main{padding:30px 0 45px}.build-copy h1{font-size:clamp(3.2rem,12vw,5.2rem)}}


/* Phase 4D — curated, media-rich project stories.
   Shares the existing full-bleed hero and case-page typography. */
.feature-opening{scroll-margin-top:22px;padding-top:60px;}
.feature-intro-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(30px,7vw,130px);align-items:start;}
.feature-intro-grid h2{font-family:var(--display);font-size:clamp(2.7rem,5.2vw,5.5rem);line-height:1.05;letter-spacing:-.066em;margin:0 0 29px;max-width:740px;}
.feature-intro-grid>p{max-width:720px;font-size:clamp(1rem,1.36vw,1.18rem);line-height:1.9;color:#c9dad6;margin:0;padding-top:9px;}
#project-motion-library{scroll-margin-top:30px;}
.feature-clip-layout{display:grid;grid-template-columns:minmax(215px,.33fr) minmax(0,1fr);gap:clamp(24px,3vw,54px);align-items:start;}
.feature-clip-controls{padding:15px 0;}
.feature-clip-controls .case-kicker{margin-bottom:25px;}
.feature-clip-list{display:flex;flex-direction:column;border-top:1px solid #43605d;}
.feature-clip-choice{width:100%;display:flex;justify-content:space-between;align-items:center;gap:20px;background:transparent;border:0;border-bottom:1px solid #36504e;border-radius:0;text-align:left;color:#d8e7e4;cursor:pointer;font-size:clamp(.93rem,1.22vw,1.1rem);font-family:inherit;font-weight:700;padding:22px 12px;transition:background .18s,color .18s,padding .18s;}
.feature-clip-choice span:last-child{color:#9ccfc3;transition:transform .18s;}
.feature-clip-choice:hover{background:#1a3535;padding-left:17px;}
.feature-clip-choice.is-active{background:rgba(151,220,202,.15);color:var(--aqua-bright);border-left:3px solid var(--aqua);padding-left:17px;}
.feature-clip-choice:focus-visible{outline:2px solid var(--aqua);outline-offset:-3px;}
.feature-clip-hint{font-size:.78rem;line-height:1.75;color:#9ab5b1;margin:25px 0 0;max-width:310px;}
.feature-clip-view{min-width:0;background:#111e22;border:1px solid #3f5554;border-radius:14px;overflow:hidden;box-shadow:0 22px 65px rgba(0,0,0,.24);}
.feature-clip-screen{background:radial-gradient(ellipse at 50% 40%,#213738,#0d161b 70%);}
.feature-clip-player{display:block;width:100%;aspect-ratio:16/9;object-fit:contain;max-height:70svh;background:transparent;}
.feature-clip-caption{padding:clamp(18px,2.4vw,32px);display:flex;gap:15px;align-items:start;justify-content:space-between;}
.feature-clip-caption h3{font-family:var(--display);font-size:clamp(1.25rem,2vw,1.9rem);letter-spacing:-.04em;line-height:1.2;margin:0 0 9px;}
.feature-clip-caption p{color:#bbcfc9;line-height:1.7;font-size:.91rem;max-width:690px;margin:0;}
.feature-clip-size{font-size:.61rem;letter-spacing:.1em;line-height:1.6;font-weight:800;color:#e4cda1;max-width:175px;flex-shrink:0;}
.feature-clip-size[hidden]{display:none;}
.feature-process-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px;}
.feature-focus-item{background:#111f23;border:1px solid #334e4d;border-radius:12px;display:flex;gap:clamp(18px,2vw,35px);padding:clamp(22px,2.6vw,42px);min-height:195px;}
.feature-focus-number{font-family:var(--display);font-size:1rem;letter-spacing:.13em;font-weight:800;color:var(--aqua);padding-top:5px;}
.feature-focus-item h3{font-size:clamp(1.28rem,1.85vw,1.8rem);margin:0 0 13px;letter-spacing:-.035em;}
.feature-focus-item p{font-size:.92rem;line-height:1.75;color:#b7cec8;margin:0;}
.feature-future{color:#96b4ae;font-size:.84rem;line-height:1.7;margin:26px 0 0;max-width:790px;}
@media(max-width:950px){.feature-clip-layout{grid-template-columns:1fr;}.feature-clip-list{flex-direction:row;flex-wrap:wrap;border-top:0;gap:8px;}.feature-clip-choice,.feature-clip-choice.is-active{width:auto;min-width:125px;border:1px solid #43605d;border-radius:100px;padding:12px 18px;font-size:.83rem;}.feature-clip-choice:hover{padding-left:18px;}.feature-clip-choice span:last-child{display:none;}.feature-clip-controls{padding:0;}.feature-clip-hint{max-width:760px;margin:15px 0 0;}}
@media(max-width:680px){.feature-opening{padding-top:35px;}.feature-intro-grid{grid-template-columns:1fr;gap:15px;}.feature-intro-grid h2{font-size:clamp(2.5rem,11vw,4rem);}.feature-intro-grid>p{padding-top:0;}.feature-process-grid{grid-template-columns:1fr;}.feature-focus-item{min-height:0;padding:24px;}.feature-clip-caption{display:block;}.feature-clip-size{display:block;max-width:100%;margin-top:14px;}.feature-clip-choice,.feature-clip-choice.is-active{min-width:0;}}

/* PHASE 4D.1 — Shard Run production role and gameplay */
.feature-role-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,7vw,120px);margin:25px 0 34px;align-items:start}
.feature-role-head h2{font-family:var(--display);font-size:clamp(2.8rem,6vw,6.6rem);line-height:1;letter-spacing:-.065em;margin:0;color:#c1ebe1}
.feature-role-head>p{margin:7px 0 0;max-width:760px;font-size:clamp(1rem,1.4vw,1.23rem);line-height:1.9;color:#c8d9d4}
.feature-role-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.feature-role-cards article{background:#122227;border:1px solid #35504e;padding:clamp(19px,2.1vw,30px);border-radius:12px}
.feature-role-cards article>span{font-size:.68rem;font-weight:800;letter-spacing:.15em;color:var(--aqua)}
.feature-role-cards h3{font-size:clamp(1.12rem,1.6vw,1.45rem);margin:20px 0 12px}
.feature-role-cards p{color:#c0d2cd;line-height:1.75;margin:0;font-size:.91rem}
.feature-gameplay-note{color:#a9c1bc;font-size:.84rem;line-height:1.7;margin-top:14px}
@media(max-width:800px){.feature-role-head{grid-template-columns:1fr}.feature-role-cards{grid-template-columns:1fr}}

.dialog-case-link{display:inline-flex;align-items:center;margin-top:20px;padding:13px 22px;border-radius:999px;text-decoration:none;font-weight:800;background:#c4ebdf;color:#0c2327;font-size:.89rem;transition:background .18s,transform .18s}
.dialog-case-link:hover{background:#e1fff5;transform:translateY(-1px)}
.dialog-case-link:focus-visible{outline:3px solid #c1f5ea;outline-offset:3px}

/* Phase 4D.3 — click-to-inspect project hero, no text in the artwork viewer */
.case-art-inspect{position:absolute;inset:0;z-index:1;display:flex;align-items:flex-end;justify-content:flex-end;padding:0 clamp(24px,5vw,90px) 80px;border:0;background:transparent;color:#ecfff8;cursor:zoom-in;text-align:right}
.case-art-inspect span{display:inline-flex;gap:8px;align-items:center;background:#0d1a20d9;border:1px solid #a0c9c580;border-radius:100px;padding:13px 19px;font-size:.78rem;letter-spacing:.035em;font-weight:750;box-shadow:0 8px 25px #0006;transition:background .2s,transform .2s}
.case-art-inspect:hover span,.case-art-inspect:focus-visible span{background:#29544e;transform:translateY(-2px)}
.case-art-inspect:focus-visible{outline:3px solid var(--aqua);outline-offset:-4px}
.generic-hero-copy,.case-hero--visual .case-hero-text{pointer-events:auto}
.case-hero--visual .case-hero-display{position:relative;z-index:2;pointer-events:none}
.case-hero--visual .case-stage-mark{pointer-events:none}
.case-hero--visual .case-art-inspect{bottom:0;padding-bottom:140px}
.generic-hero.full-bleed-project .case-art-inspect{padding-bottom:83px}
.generic-hero.full-bleed-project:has(.case-motion-toggle) .case-art-inspect{padding-bottom:85px}
.case-art-dialog{position:fixed;inset:0;width:min(96vw,1600px);max-width:96vw;height:min(94dvh,1200px);max-height:94dvh;margin:auto;background:#081116;color:#eaf9f5;border:1px solid #4e7470;border-radius:16px;overflow:hidden;padding:0;box-shadow:0 45px 100px #0009}
.case-art-dialog::backdrop{background:rgba(1,6,9,.91);backdrop-filter:blur(7px)}
.case-art-dialog-inner{height:100%;display:flex;flex-direction:column}
.case-art-dialog-toolbar{padding:15px 18px;display:flex;gap:12px;justify-content:space-between;align-items:center;flex-wrap:wrap;border-bottom:1px solid #2d4749;background:#0d1b20}
.case-art-dialog-title{font-size:.9rem;font-weight:750;color:#dff7f2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:56ch}
.case-art-dialog-controls{display:flex;gap:8px;flex-wrap:wrap}
.case-art-dialog-toolbar button{cursor:pointer;background:#173137;border:1px solid #48716b;color:#e0f3ef;border-radius:100px;padding:9px 14px;font-weight:700;font-size:.78rem}
.case-art-dialog-toolbar button:hover{background:#315e58}
.case-art-dialog-toolbar button[hidden]{display:none}
.case-art-dialog-stage{min-height:0;flex:1;display:flex;align-items:center;justify-content:center;padding:12px;overflow:hidden;background:radial-gradient(ellipse at 50% 45%,#20343a,#071216 72%)}
.case-art-dialog-media{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
.case-art-dialog-stage video{width:100%;height:100%;object-fit:contain}
.case-art-dialog.is-fill .case-art-dialog-stage img{width:100%;height:100%;object-fit:cover}
/* Commissioned samurai character case study */
.samurai-hero .generic-hero-copy h1{max-width:730px}
.samurai-hero .generic-hero-copy h1 em,.samurai-lead h2 em,.feature-role-head h2 em{color:var(--aqua);font-style:normal}
.samurai-lead{display:grid;grid-template-columns:1fr 1fr;gap:35px 7%;margin-bottom:38px}
.samurai-lead .case-kicker{grid-column:1/-1;margin:0}
.samurai-lead h2{font-family:var(--display);font-size:clamp(2.8rem,5.3vw,5.6rem);line-height:1;letter-spacing:-.07em;margin:0}
.samurai-lead>p:last-child{color:#bdd2cb;line-height:1.85;font-size:1.06rem;margin:0}
.samurai-image-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.samurai-image-card{display:flex;flex-direction:column;position:relative;text-align:left;background:#121f24;border:1px solid #355653;border-radius:15px;overflow:hidden;padding:0;cursor:zoom-in;color:#edf9f3;transition:border-color .2s,transform .2s}
.samurai-image-card:hover{border-color:#a9d8ce;transform:translateY(-3px)}
.samurai-image-card:focus-visible{outline:3px solid var(--aqua);outline-offset:3px}
.samurai-image-card img{display:block;width:100%;height:clamp(300px,39vw,550px);object-fit:contain;object-position:center center;background:#20272c}
.samurai-image-caption{padding:20px 23px;display:grid;grid-template-columns:1fr auto;gap:5px 12px}
.samurai-image-caption strong{font-size:1rem}
.samurai-image-caption small{font-size:.78rem;grid-column:1;color:#b3cbc6;line-height:1.6}
.samurai-image-caption>span{grid-row:1/3;grid-column:2;color:var(--aqua);font-size:1.4rem}
.samurai-tests{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.samurai-test{border:1px solid #38504f;background:#101d21;border-radius:12px;padding:16px;min-width:0}
.samurai-test video{width:100%;aspect-ratio:16/9;object-fit:contain;display:block;background:#05090c;border-radius:8px}
.samurai-test:last-child video{object-fit:contain}
.samurai-test h3{font-size:1.2rem;margin:18px 0 9px}
.samurai-test>p:last-child{font-size:.86rem;color:#b8cbc6;line-height:1.6}
.samurai-credit-note{color:#9eb5af;max-width:850px;margin:26px 0 0;line-height:1.7;font-size:.84rem}
@media(max-width:900px){.samurai-tests{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.case-art-dialog{width:98vw;max-width:98vw;height:93dvh;max-height:93dvh}.case-art-dialog-toolbar{padding:12px;align-items:flex-start}.case-art-dialog-title{max-width:100%;font-size:.75rem}.case-art-dialog-toolbar button{padding:8px 10px;font-size:.7rem}.case-art-dialog-stage{padding:6px}.case-art-inspect{padding-right:22px!important;padding-bottom:110px!important;justify-content:flex-end}.case-art-inspect span{padding:10px 13px;font-size:.72rem}.generic-hero.full-bleed-project .case-art-inspect{align-items:flex-start;padding-top:72px}.case-hero--visual .case-art-inspect{padding-top:200px}.samurai-lead{grid-template-columns:1fr;gap:15px}.samurai-image-grid{grid-template-columns:1fr}.samurai-image-card img{height:330px}.samurai-tests{grid-template-columns:1fr}.samurai-test video{max-height:360px}}
@media(max-width:680px){
  .samurai-hero .generic-hero-media{object-position:22% center!important}
}

/* Phase 4D.4 — Curated, inspectable image collections */
.still-gallery-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;align-items:end;margin:24px 0 30px}
.still-gallery-intro h2{font-family:var(--display);font-size:clamp(2.2rem,4.5vw,4.8rem);letter-spacing:-.065em;line-height:1.03;margin:0}
.still-gallery-intro p{color:#bed0ca;line-height:1.7;max-width:560px;margin:0}
.still-gallery{max-width:1300px;margin:auto}
.still-gallery-stage{background:radial-gradient(circle at 50% 30%,#2c4142,#0b161b 80%);border:1px solid #315653;color:#d8f7ee;display:flex;position:relative;align-items:center;justify-content:center;width:100%;height:clamp(340px,57vw,690px);padding:0;border-radius:14px;overflow:hidden;cursor:zoom-in}
.still-gallery-stage:focus-visible,.still-gallery-thumb:focus-visible,.still-gallery-arrows button:focus-visible{outline:3px solid var(--aqua);outline-offset:3px}
.still-gallery-stage img{width:100%;height:100%;object-fit:contain;display:block;transition:opacity .15s}
.still-gallery-expand{position:absolute;right:18px;bottom:17px;background:rgba(5,15,19,.87);border:1px solid #63938c;border-radius:40px;padding:11px 17px;font-size:.82rem;font-weight:700;color:#dcfff4}
.still-gallery-info{display:flex;justify-content:space-between;gap:25px;align-items:center;padding:20px 0 13px}
.still-gallery-info h3{margin:6px 0;font-size:clamp(1.28rem,2.1vw,2rem);letter-spacing:-.035em}
.still-gallery-info p{margin:0;color:#aecbc2;max-width:680px;font-size:.91rem;line-height:1.5}
.still-gallery-arrows{display:flex;gap:9px;flex:0 0 auto}
.still-gallery-arrows button{width:45px;height:45px;border:1px solid #668f86;background:#122c2f;color:#e3fff4;border-radius:50%;font-size:1.2rem;cursor:pointer}
.still-gallery-arrows button:hover{background:#254b4c}
.still-gallery-thumbs{display:flex;gap:12px;overflow-x:auto;scrollbar-width:thin;padding:10px 1px 14px}
.still-gallery-thumb{flex:0 0 140px;height:94px;padding:0;background:#112529;border:2px solid transparent;border-radius:9px;overflow:hidden;cursor:pointer;opacity:.7;transition:opacity .2s,border-color .2s}
.still-gallery-thumb img{width:100%;height:100%;object-fit:cover}
.still-gallery-thumb.is-active{opacity:1;border-color:var(--aqua)}
.still-gallery-thumb:hover{opacity:1}
/* Actual zoom/pan controls supersede the old static Fill frame option. */
.case-art-dialog-toolbar button[disabled]{opacity:.38;cursor:default}
.case-art-dialog-stage:has(img.can-pan){cursor:grab;touch-action:none}
.case-art-dialog-stage:has(img.can-pan):active{cursor:grabbing}
.case-art-dialog-stage img{transform-origin:center center;will-change:transform;user-select:none}
@media(max-width:680px){.still-gallery-intro{grid-template-columns:1fr;gap:12px}.still-gallery-stage{height:clamp(290px,88vw,420px)}.still-gallery-info{align-items:flex-start}.still-gallery-info p{font-size:.83rem}.still-gallery-arrows button{width:38px;height:38px}.still-gallery-thumb{flex-basis:105px;height:78px}.case-art-dialog-title{max-width:100%}}

/* Phase 4D.5 — compact end-of-page still strips and browsable lightbox */
.still-gallery-section{padding-bottom:clamp(56px,7vw,112px)}
.still-gallery{position:relative;max-width:100%;margin:0;isolation:isolate}
.still-gallery-thumbs{display:flex;gap:clamp(12px,1.5vw,22px);overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;scroll-padding-inline:2px;padding:8px 4px 18px;align-items:stretch}
.still-gallery-thumb{position:relative;display:block;text-align:left;flex:0 0 clamp(225px,29vw,390px);height:clamp(205px,24vw,315px);padding:0;border:1px solid #42615e;border-radius:13px;background:#13262b;color:#effbf6;opacity:1;scroll-snap-align:start;overflow:hidden;cursor:zoom-in;transition:border-color .2s,transform .2s}
.still-gallery-thumb img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;background:radial-gradient(circle at 50% 42%,#2b4144,#0b181c 78%)}
.still-gallery-thumb:hover{border-color:#a5e8dd;transform:translateY(-3px)}
.still-gallery-thumb:focus-visible,.still-strip-arrow:focus-visible,.case-art-dialog-prev:focus-visible,.case-art-dialog-next:focus-visible{outline:3px solid var(--aqua);outline-offset:3px}
.still-gallery-thumb-label{display:flex;gap:6px;align-items:center;justify-content:space-between;position:absolute;left:0;bottom:0;width:100%;padding:30px 14px 13px;background:linear-gradient(transparent,#071316ed);font-size:.85rem}
.still-gallery-thumb-label strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700}
.still-gallery-thumb-label small{font-size:.67rem;color:#b4d5cb;flex:0 0 auto;letter-spacing:.05em}
.still-strip-arrow{position:absolute;top:43%;z-index:3;transform:translateY(-50%);width:44px;height:66px;border:1px solid #89afa7aa;background:#0a181ce8;color:#e8fff8;border-radius:12px;cursor:pointer;display:grid;place-items:center;box-shadow:0 9px 24px #0009;transition:background .2s,opacity .2s}
.still-strip-arrow span{font-size:2.4rem;font-weight:300;line-height:1}
.still-strip-prev{left:8px}.still-strip-next{right:8px}
.still-strip-arrow:hover:not(:disabled){background:#285852}
.still-strip-arrow:disabled{opacity:.15;cursor:default;pointer-events:none}
.still-gallery-tip{color:#a7c7be;font-size:.82rem;margin:12px 2px 0;line-height:1.6}
.case-art-dialog-stage{position:relative}
.case-art-dialog-prev,.case-art-dialog-next{position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:clamp(38px,4vw,56px);height:clamp(58px,8vw,104px);display:grid;place-items:center;border:1px solid #b5ebe399;background:#0a1920c9;color:#eafff9;border-radius:13px;cursor:pointer;transition:background .15s,opacity .15s}
.case-art-dialog-prev span,.case-art-dialog-next span{font-size:clamp(2rem,4vw,3.25rem);font-weight:300;line-height:1}
.case-art-dialog-prev{left:clamp(8px,1vw,20px)}.case-art-dialog-next{right:clamp(8px,1vw,20px)}
.case-art-dialog-prev:hover,.case-art-dialog-next:hover{background:#275c58eb}
.case-art-dialog-prev[hidden],.case-art-dialog-next[hidden]{display:none}
.case-art-dialog-stage:fullscreen{background:#061015}.case-art-dialog-stage:fullscreen img{object-fit:contain}
@media(max-width:680px){.still-gallery-intro{margin-bottom:18px}.still-gallery-thumb{flex-basis:clamp(188px,62vw,250px);height:225px}.still-strip-arrow{width:33px;height:54px;top:44%}.still-strip-arrow span{font-size:1.9rem}.case-art-dialog-prev,.case-art-dialog-next{width:35px;height:62px;border-radius:9px}.case-art-dialog-prev span,.case-art-dialog-next span{font-size:2rem}.case-art-dialog-prev{left:4px}.case-art-dialog-next{right:4px}}
/* Keep the commissioned samurai's artwork-view button clickable above oversized hero type. */
.samurai-hero .case-art-inspect{inset:auto clamp(20px,5vw,76px) clamp(90px,9vh,130px) auto;width:max-content;height:auto;padding:0!important;z-index:10;display:block;pointer-events:auto}
@media(max-width:680px){.samurai-hero .case-art-inspect{inset:auto 20px 115px auto;padding:0!important}}

/* Phase 4D.6 — shared persistent navigation on every non-home page. */
.work-page .case-header,.case-page .case-header,.build-page .case-header{
  position:fixed!important;inset:0 0 auto 0;z-index:110;
  box-sizing:border-box;width:100%;margin:0;min-height:77px;
  padding:12px max(24px,calc((100vw - 1400px)/2));
  border-bottom:1px solid rgba(208,234,228,.17);
  background:rgba(8,17,22,.53);backdrop-filter:blur(15px);
  -webkit-backdrop-filter:blur(15px);
  transition:background .25s,border-color .25s,box-shadow .25s;
  pointer-events:auto;
}
.work-page .case-header.is-scrolled,.case-page .case-header.is-scrolled,.build-page .case-header.is-scrolled{
  background:rgba(8,17,22,.94);border-color:rgba(208,234,228,.25);box-shadow:0 7px 30px rgba(0,0,0,.13);
}
.work-page .case-shell>.case-header+.case-footer{margin-top:76px}
.work-page .case-shell>main{padding-top:87px}
.build-page .build-main{padding-top:120px}
.case-global-nav{display:flex;align-items:center;gap:clamp(15px,2.5vw,39px);margin-left:auto}
.case-global-nav a{font-size:.82rem;color:#e8f5f0;white-space:nowrap;transition:color .2s}
.case-global-nav a:hover,.case-global-nav a:focus-visible,.case-global-nav a[aria-current="page"]{color:var(--aqua)}
.case-global-nav .case-contact-link{display:inline-flex;align-items:center;gap:16px;border:1px solid rgba(220,239,235,.45);padding:12px 20px;border-radius:100px}
.case-global-nav .case-contact-link:hover{border-color:var(--aqua)}
.case-nav-menu{display:none;position:relative;margin-left:auto}
.case-nav-menu summary{display:flex;align-items:center;gap:12px;cursor:pointer;list-style:none;border:1px solid rgba(217,236,232,.4);border-radius:100px;padding:11px 16px;font-size:.85rem;color:#fff}
.case-nav-menu summary::-webkit-details-marker{display:none}
.case-nav-menu[open] summary{border-color:var(--aqua);color:var(--aqua)}
.case-nav-menu nav{position:absolute;top:calc(100% + 13px);right:0;z-index:200;width:min(280px,calc(100vw - 40px));padding:10px 18px;background:rgba(9,23,29,.98);border:1px solid #416460;box-shadow:0 30px 80px #02080be0;border-radius:12px;display:grid}
.case-nav-menu nav a{padding:14px 6px;border-bottom:1px solid #34514d;font-size:.95rem;color:#e4f0ed}
.case-nav-menu nav a:last-child{border:0}
.case-nav-menu nav a:hover{color:var(--aqua)}
.case-page .case-header .case-brand,.work-page .case-header .case-brand{flex-shrink:0}
.case-project-neighbours{position:absolute;top:98px;right:max(24px,calc((100vw - 1400px)/2));z-index:11;display:flex;gap:10px;pointer-events:auto}
.case-project-neighbour{display:flex;gap:10px;align-items:center;justify-content:center;padding:12px 16px;min-height:45px;min-width:62px;border:1px solid rgba(233,251,247,.55);color:white;background:rgba(8,22,26,.58);backdrop-filter:blur(10px);border-radius:999px;box-shadow:0 4px 22px #05101455;transition:background .2s,border-color .2s,transform .2s}
.case-project-neighbour:hover,.case-project-neighbour:focus-visible{background:#173e3c;border-color:#b9f0e2;transform:translateY(-1px)}
.case-project-neighbour>span[aria-hidden]{font-size:1.25rem;line-height:1}
.case-project-neighbour-caption{font-size:.68rem;letter-spacing:.04em;text-transform:uppercase;font-weight:800}
/* Larger, more inviting click region; homepage design and four-card limit remain intact. */
.selected-work-next{display:grid;grid-template-columns:minmax(0,1fr) minmax(255px,.43fr);align-items:stretch}
.selected-work-cta{width:100%;height:100%;min-height:115px;max-width:none;display:flex;align-items:center;justify-content:space-between;padding:clamp(22px,2.5vw,38px);border-radius:14px;font-size:clamp(1.08rem,1.5vw,1.3rem);font-weight:800;box-sizing:border-box}
.selected-work-cta span[aria-hidden]{font-size:1.45em}
@media(max-width:830px){
 .case-global-nav{display:none}
 .case-nav-menu{display:block}
 .work-page .case-header,.case-page .case-header,.build-page .case-header{min-height:68px;padding:8px 20px}
 .case-page .case-logo,.work-page .case-logo,.build-page .case-logo{height:42px;max-width:36px}
 .work-page .case-shell>main{padding-top:79px}
 .case-project-neighbours{top:81px;right:20px;gap:7px}
 .case-project-neighbour{min-width:46px;min-height:42px;padding:9px 13px}
 .case-project-neighbour-caption{display:none}
 .selected-work-next{display:flex;flex-direction:column;align-items:stretch}
 .selected-work-cta{min-height:80px}
}
@media(max-width:460px){
 .case-header .case-brand span{font-size:.58rem;letter-spacing:.12em}
 .case-project-neighbours{top:80px;right:16px}
 .case-project-neighbour{min-width:40px;padding:9px 11px}
}

/* Phase 4D.7 — Clear client credit for the commissioned samurai */
.samurai-creator-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,.75fr);align-items:center;gap:clamp(24px,5vw,90px);background:linear-gradient(120deg,#14252a,#0d191e);border:1px solid #36514f;border-radius:16px;padding:clamp(24px,4vw,58px)}
.samurai-creator-panel .case-kicker{color:#a4d8ce;margin:0 0 10px}
.samurai-creator-panel h2{font-family:var(--display);font-size:clamp(2.6rem,5.6vw,5rem);line-height:1.05;margin:0 0 16px;color:#e9f4f0;letter-spacing:-.05em}
.samurai-creator-panel p:not(.case-kicker){color:#c4d6d0;line-height:1.7;max-width:650px;margin:0}
.samurai-creator-socials{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:10px}
.samurai-creator-socials a{display:inline-flex;justify-content:space-between;align-items:center;min-width:130px;gap:18px;background:#20383d;border:1px solid #64837d;color:#eaf8f3;text-decoration:none;border-radius:10px;padding:13px 17px;font-weight:700;transition:background .18s,border-color .18s,transform .18s}
.samurai-creator-socials a:hover,.samurai-creator-socials a:focus-visible{background:#2d504f;border-color:#a8eddd;transform:translateY(-2px)}
.samurai-creator-socials a span{color:#a7e8dd}
@media(max-width:750px){.samurai-creator-panel{grid-template-columns:1fr}.samurai-creator-socials a{flex:1;min-width:110px}}
