/* V88 — a consistent case-study experience for all eleven selected projects. */
html body.project-premium{background:var(--canvas)!important;overflow-x:clip!important;overflow-y:visible!important}
html body.project-premium:has(dialog[open]),html body.project-premium.project-menu-open{overflow:hidden!important}
body.project-premium main>section{content-visibility:visible!important;contain-intrinsic-size:none!important}
body.project-premium .project-hero{min-height:760px;align-items:center}
body.project-premium .project-hero-content{max-width:1376px;padding:170px 48px 80px}
body.project-premium .project-hero-content h1{max-width:16ch!important;font-size:clamp(48px,6vw,86px)!important;line-height:1.08!important;margin:22px 0!important}
body.project-premium .project-hero-content>.eyebrow{margin:30px 0 0!important;font-size:10px!important;letter-spacing:.17em!important}
body.project-premium .project-hero-content>p:not(.eyebrow){max-width:55ch!important;font-size:18px!important;line-height:1.8!important;color:#d0e4f2!important;margin:0!important}
body.project-premium .project-hero-media:after{background:linear-gradient(90deg,#071d30f5 0%,#071d30bd 45%,#071d3033),linear-gradient(0deg,#071d30c4,transparent 65%)}
body.project-premium .project-hero-grid{opacity:.2}
.case-back{display:inline-block;color:#c6e9ff;font:500 12px var(--reading-font);padding-block:10px;border-bottom:1px solid #b9e2ff60}
body.project-premium .project-meta-strip{max-width:820px;margin-top:30px;gap:9px;padding-top:24px}
body.project-premium .project-meta-strip span{font:500 11px var(--reading-font);letter-spacing:.02em;text-transform:none;border-radius:24px;padding:9px 13px;background:#071d3066;color:#e2f2ff;border-color:#b9e2ff50}
.case-chapters{position:sticky;top:108px;z-index:25;display:flex;justify-content:space-between;gap:20px;padding:17px max(48px,calc((100% - 1280px)/2));background:#f3f8fcf5;border-block:1px solid var(--line);backdrop-filter:blur(14px)}
.case-chapters a{font:500 12px var(--reading-font);color:#315e7c;white-space:nowrap;min-height:28px;display:flex;align-items:center}
.case-chapters a:hover{color:#071d30;text-decoration:underline;text-underline-offset:7px}
body.project-premium :is(#projectScope,#projectGallery,#projectEnquiry){scroll-margin-top:185px}
html body.project-premium .case-section{max-width:none!important;width:100%;padding:96px max(48px,calc((100% - 1280px)/2))!important;margin:0}
body.project-premium .case-grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:80px;align-items:start}
body.project-premium .case-kicker{position:static;min-width:0}
html body.project-premium .case-kicker h2{font-size:clamp(34px,3.7vw,54px)!important;line-height:1.15!important;max-width:21ch!important;letter-spacing:-.035em!important;margin:0 0 28px!important}
body.project-premium .case-copy p{font-size:17px!important;line-height:1.85!important;color:#526d80;margin:0 0 20px!important;max-width:60ch}
body.project-premium .case-section .eyebrow{font-size:10px;line-height:1.7;color:#27628b;letter-spacing:.18em;margin:0 0 22px}
body.project-premium .case-deliverables{min-width:0}
body.project-premium .case-list{margin:0;padding:0;border:0!important;display:grid;gap:12px}
html body.project-premium .case-list li{display:grid!important;grid-template-columns:33px minmax(0,1fr)!important;align-items:start;gap:15px!important;padding:21px 23px!important;border:1px solid var(--line)!important;background:#ffffffb3;border-radius:10px;font-size:15px!important;line-height:1.75!important;color:#34546c}
body.project-premium .case-list li:before{display:none!important}
.case-scope-number{font:500 11px var(--reading-font);color:#27628b;padding-top:5px}
body.project-premium .case-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:0;border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden;margin-top:62px}
body.project-premium .case-fact{background:transparent;padding:27px 28px;border:0;border-inline-end:1px solid var(--line)}
body.project-premium .case-fact:last-child{border:0}
body.project-premium .case-fact small{font-size:10px;color:#52748b;letter-spacing:.12em;margin-bottom:11px}
body.project-premium .case-fact strong{font:500 17px/1.6 var(--reading-font);color:#102c40;display:block}
html body.project-premium .case-gallery{padding:88px max(48px,calc((100% - 1280px)/2))!important}
body.project-premium .case-gallery-inner{max-width:none}
body.project-premium .case-gallery-head{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:40px;margin-bottom:36px}
html body.project-premium .case-gallery-head h2{font-size:clamp(35px,3.7vw,54px)!important;line-height:1.15!important;color:#f3faff;max-width:none;margin:0!important;letter-spacing:-.035em!important}
body.project-premium .case-gallery-head .eyebrow{font-size:10px;letter-spacing:.18em;color:#b9e2ff;margin:0 0 20px}
body.project-premium .case-gallery-head>p{font-size:15px!important;line-height:1.8!important;color:#bfd3e2;margin:0;max-width:49ch;justify-self:end}
body.project-premium .gallery-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:auto!important;gap:22px!important}
body.project-premium .gallery-grid figure{min-height:0!important;max-height:none!important;grid-row:auto!important;display:flex;flex-direction:column;background:transparent;margin:0;overflow:visible}
body.project-premium .gallery-grid figure:first-child{grid-column:1/-1;min-height:0!important}
body.project-premium .gallery-count-4{grid-template-columns:repeat(3,minmax(0,1fr))!important}
body.project-premium .gallery-count-2{grid-template-columns:repeat(2,minmax(0,1fr))!important}
body.project-premium .gallery-count-2 figure:first-child{grid-column:auto}
.case-gallery-open{position:relative;display:block;width:100%;height:300px;padding:0;border:1px solid #b9e2ff33;border-radius:10px;overflow:hidden;background:#102f48;cursor:zoom-in;color:#eaf7ff}
body.project-premium .gallery-grid figure:first-child .case-gallery-open{height:580px}
body.project-premium .gallery-count-2 figure:first-child .case-gallery-open{height:420px}
body.project-premium .gallery-count-2 .case-gallery-open{height:420px}
body.project-premium .gallery-grid img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .65s ease}
.case-gallery-zoom{position:absolute;right:18px;bottom:18px;display:block;padding:10px 14px;background:#071d30d9;border:1px solid #c9e7fc66;border-radius:6px;font:500 11px var(--reading-font);backdrop-filter:blur(10px)}
body.project-premium .gallery-grid figcaption{font:400 11px/1.7 var(--reading-font);color:#acc9dd;padding:13px 0 0}
html body.project-premium .project-cta{padding:80px max(48px,calc((100% - 1280px)/2))!important}
body.project-premium .project-cta-inner{display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:60px}
html body.project-premium .project-cta h2{font-family:var(--reading-font)!important;font-size:clamp(32px,3.5vw,50px)!important;line-height:1.18!important;font-weight:500!important;max-width:20ch!important}
.case-cta-note{font-size:16px!important;line-height:1.8!important;max-width:52ch;color:#526d80;margin:22px 0 0}
body.project-premium .project-cta-actions{display:grid;gap:12px}
body.project-premium .project-cta .button{width:100%;min-height:58px;padding:17px 21px;font:500 12px/1.6 var(--reading-font);text-transform:none;letter-spacing:0;display:flex;justify-content:space-between;align-items:center;border-radius:7px}
body.project-premium .project-cta .button.primary{background:#73c2fb;border-color:#73c2fb;color:#071d30}
body.project-premium .project-nav{display:grid;grid-template-columns:1fr 1fr;background:#102f48;padding:32px max(48px,calc((100% - 1280px)/2));gap:24px}
body.project-premium .project-nav>strong{display:none}
body.project-premium .project-nav a{display:flex;flex-direction:column;gap:10px;padding:12px 0;font:400 21px/1.5 var(--heading-font);text-transform:none;letter-spacing:0;color:#e3f3ff}
body.project-premium .project-nav a:last-child{text-align:right}
body.project-premium .project-nav small{font:500 10px var(--reading-font);letter-spacing:.12em;color:#b9e2ff}
.project-menu-button{display:none}
.project-mobile-panel[hidden]{display:none!important}
.case-image-dialog{position:fixed;inset:0;margin:auto;width:min(1400px,calc(100vw - 40px));max-width:none;max-height:calc(100dvh - 40px);padding:20px 24px;background:#071d30;color:#e9f5ff;border:1px solid #b9e2ff70;border-radius:14px;overflow:auto;overscroll-behavior:contain;box-shadow:0 30px 100px #0007}
.case-image-dialog::backdrop{background:#020d17e6;backdrop-filter:blur(8px)}
.case-viewer-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:16px}
.case-viewer-caption{margin:0;font-size:16px;line-height:1.5;color:#e9f5ff}
.case-viewer-close{width:44px;height:44px;border:1px solid #b9e2ff70;border-radius:50%;background:#102f48;color:#fff;font-size:25px;cursor:pointer;flex-shrink:0}
.case-viewer-image{display:block;width:100%;height:min(72dvh,900px);object-fit:contain;background:#061725}
.case-viewer-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:16px;font:500 12px var(--reading-font)}
.case-viewer-controls button{min-height:44px;padding:10px 16px;border:1px solid #b9e2ff70;border-radius:6px;background:#102f48;color:#e9f5ff;cursor:pointer}
.case-viewer-controls button[hidden]{display:none}
@media(max-width:1100px){body.project-premium .header .nav{display:none!important}.project-menu-button{display:block;min-width:52px;min-height:44px;padding:10px;border:1px solid #b9e2ff60;border-radius:6px;background:transparent;color:#e9f5ff;font:500 12px var(--reading-font)}.project-mobile-panel{position:fixed;inset:108px 0 0;z-index:49;background:#071d30;padding:32px;display:flex;flex-direction:column;gap:12px;overflow:auto}.project-mobile-panel a{font:400 30px/1.5 var(--heading-font);color:#e9f5ff;padding:10px;border-bottom:1px solid #b9e2ff33}body.project-premium .case-grid{gap:40px}}
@media(max-width:760px){body.project-premium .header{height:84px!important;min-height:84px!important;padding-inline:22px!important}.project-mobile-panel{top:84px}body.project-premium .header .talk{display:none!important}body.project-premium .project-hero{min-height:720px}body.project-premium .project-hero-content{padding:140px 24px 60px}body.project-premium .project-hero-content h1{font-size:clamp(40px,10.5vw,58px)!important;max-width:16ch!important}body.project-premium .project-hero-content>p:not(.eyebrow){font-size:16px!important}.case-chapters{top:84px;gap:28px;padding:12px 24px;overflow-x:auto;scrollbar-width:thin;justify-content:flex-start}.case-chapters a{font-size:11px}html body.project-premium .case-section,html body.project-premium .case-gallery,html body.project-premium .project-cta{padding:60px 24px!important}body.project-premium .case-grid,body.project-premium .case-gallery-head,body.project-premium .project-cta-inner{grid-template-columns:1fr;gap:28px}html body.project-premium .case-kicker h2{font-size:35px!important}body.project-premium .case-copy p{font-size:15px!important}body.project-premium .case-list li{font-size:14px!important;padding:18px;gap:10px;grid-template-columns:28px minmax(0,1fr)}body.project-premium .case-facts{margin-top:34px;grid-template-columns:repeat(2,minmax(0,1fr))}body.project-premium .case-fact{padding:20px 17px;border-bottom:1px solid var(--line)}body.project-premium .case-fact strong{font-size:14px}body.project-premium .case-fact small{font-size:9px}body.project-premium .case-gallery-head>p{justify-self:start;font-size:14px!important}body.project-premium .gallery-grid{grid-template-columns:1fr!important;gap:20px!important}body.project-premium .gallery-grid figure{grid-column:1!important}body.project-premium .gallery-grid .case-gallery-open,body.project-premium .gallery-grid figure:first-child .case-gallery-open{height:310px}body.project-premium .project-nav{padding:28px 24px;gap:22px}body.project-premium .project-nav a{font-size:18px}.case-image-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);padding:14px}.case-viewer-image{height:65dvh}.case-viewer-caption{font-size:14px}.case-viewer-controls{gap:8px;font-size:10px}.case-viewer-controls button{font-size:11px;padding:10px}body.project-premium :is(#projectScope,#projectGallery,#projectEnquiry){scroll-margin-top:150px}}
@media(prefers-reduced-motion:reduce){body.project-premium .gallery-grid img{transition:none!important}}
