@font-face{font-family:Oswald;src:url('/assets/fonts/oswald-400.woff2') format('woff2');font-weight:400;font-display:swap}@font-face{font-family:Oswald;src:url('/assets/fonts/oswald-500.woff2') format('woff2');font-weight:500;font-display:swap}@font-face{font-family:Open Sauce Sans;src:url('/assets/fonts/open-sauce-sans-400.woff') format('woff');font-weight:400;font-display:swap}@font-face{font-family:Open Sauce Sans;src:url('/assets/fonts/open-sauce-sans-600.woff2') format('woff2');font-weight:600;font-display:swap}
:root{--bg:#071c24;--deep:#0f2f39;--teal:#0d5b5c;--cyan:#08d6cc;--white:#f6faf9;--muted:#acbfc4;--line:rgba(165,199,206,.19);--pad:clamp(24px,5.6vw,100px);--body:'Open Sauce Sans',Arial,sans-serif;--display:Oswald,'Arial Narrow',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--bg);color:var(--white);font:400 16px/1.7 var(--body);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--cyan);outline-offset:5px}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--display);font-weight:400;line-height:1.13}h1{font-size:clamp(58px,6.6vw,112px);letter-spacing:-.035em}h2{font-size:clamp(38px,4.2vw,68px);letter-spacing:-.025em}h3{font-size:28px;letter-spacing:-.01em}em{font-style:normal;color:var(--cyan)}p{color:var(--muted)}::selection{background:var(--cyan);color:var(--bg)}.skip-link{position:fixed;top:-100px;left:24px;z-index:100;background:var(--cyan);color:var(--bg);padding:12px}.skip-link:focus{top:8px}.site-header{height:100px;padding:0 var(--pad);display:flex;align-items:center;gap:40px;position:absolute;top:0;left:0;width:100%;z-index:10;border-bottom:1px solid var(--line);background:linear-gradient(180deg,rgba(7,28,36,.8),transparent)}.brand{display:flex;flex-direction:column;line-height:1;flex-shrink:0}.brand-word{font:500 37px/1 var(--display);letter-spacing:.13em}.brand-dot{color:var(--cyan)}.brand-caption{font-size:9px;letter-spacing:.16em;margin-top:9px}.brand img{width:174px;height:auto;max-height:48px;object-fit:contain}.desktop-nav{display:flex;gap:30px;margin-left:auto}.desktop-nav a{font-size:14px;color:#d1dfe2;transition:color .2s}.desktop-nav a:hover,.footer a:hover{color:var(--cyan)}.header-cta{display:flex;align-items:center;gap:26px;border:1px solid var(--line);padding:12px 18px;font-size:14px}.header-cta:hover{background:var(--cyan);color:var(--bg);border-color:var(--cyan)}.header-cta span{font-size:21px;color:var(--cyan)}.header-cta:hover span{color:var(--bg)}.menu-toggle{display:none}.mobile-nav[hidden]{display:none}.hero{min-height:880px;height:min(1020px,100svh);position:relative;isolation:isolate;overflow:hidden;border-bottom:1px solid var(--line);background:linear-gradient(90deg,#071c24 0%,rgba(7,28,36,.85) 36%,rgba(7,28,36,.25) 100%),url('/assets/ocean.webp') center/cover}.hero:after{content:'';position:absolute;inset:60% 0 0;z-index:-1;background:linear-gradient(transparent,var(--bg))}.hero-grid{position:absolute;inset:100px var(--pad) 0;border-left:1px solid rgba(163,210,214,.07);border-right:1px solid rgba(163,210,214,.07);z-index:-1}.hero-content{position:relative;z-index:3;padding:165px 0 125px var(--pad);width:57%;pointer-events:none}.hero-content a{pointer-events:auto}.eyebrow{font-size:12px;font-weight:600;letter-spacing:.15em;line-height:1.5;color:var(--cyan);text-transform:uppercase;display:flex;align-items:center;gap:14px;margin-bottom:25px}.line{width:32px;height:1px;background:var(--cyan)}.hero h1{font-size:clamp(60px,5.5vw,92px);line-height:1.08;letter-spacing:-.028em;max-width:720px}.hero h1 em{color:var(--cyan)}.hero-copy{margin-top:26px;font-size:16px;line-height:1.7;max-width:410px}.hero-actions{display:flex;align-items:center;gap:27px;margin-top:31px}.button{min-height:53px;display:inline-flex;align-items:center;justify-content:space-between;gap:34px;background:var(--cyan);border:1px solid var(--cyan);color:#062d33;padding:14px 22px;font-weight:600;font-size:14px;transition:background .2s,transform .2s}.button:hover{background:#50f3e9;transform:translateY(-2px)}.button span,.text-link span{font-size:22px;line-height:1}.text-link{display:inline-flex;gap:20px;align-items:center;font-size:14px;border-bottom:1px solid var(--line);padding:9px 0}.text-link:hover{color:var(--cyan)}.scene-shell{position:absolute;left:42%;right:-3%;top:80px;bottom:65px;z-index:1}.scene-shell canvas{width:100%;height:100%;display:block;touch-action:pan-y;position:relative;z-index:1}.scene-fallback{position:absolute;inset:20% 12% 20% 20%;display:flex;align-items:center;justify-content:center;border:1px solid var(--line);font:400 60px/1.1 var(--display);color:var(--teal);letter-spacing:-.03em}.scene-ready .scene-fallback{display:none}.scene-caption{position:absolute;right:calc(var(--pad) + 3vw);top:55px;font-size:12px;letter-spacing:.13em;color:#c3dadd;display:flex;align-items:center;gap:10px;z-index:2}.scene-note{display:block;font-size:12px;letter-spacing:0;color:#92acb4;border-left:1px solid var(--line);padding-left:12px}.crosshair{color:var(--cyan);font-size:23px}.scene-controls{position:absolute;bottom:39px;right:calc(var(--pad) + 3vw);display:flex;padding:5px;border:1px solid var(--line);background:rgba(7,28,36,.83);backdrop-filter:blur(16px);z-index:4}.scene-controls button{border:0;color:#bed1d6;background:transparent;padding:10px 13px;font-size:12px;min-height:42px}.scene-controls button.active{background:#17434b;color:var(--cyan)}.scene-controls button:hover{background:#17434b}.scene-hint{position:absolute;bottom:18px;right:calc(var(--pad) + 3vw);font-size:12px;color:#849fa7;z-index:2}.hero-bottom{position:absolute;left:var(--pad);right:var(--pad);bottom:24px;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:20px;z-index:5;font-size:11px;letter-spacing:.15em;color:#a6bdc3}.scroll-cue{display:flex;align-items:center;gap:17px}.scroll-cue span{font-size:20px;color:var(--cyan)}.section{padding:105px var(--pad)}.section-heading{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:end;margin-bottom:55px}.section-heading>p,.section-heading>div>p:not(.eyebrow){max-width:500px;line-height:1.9}.section-heading .text-link{margin-top:20px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-card{padding:32px 26px 35px;min-height:296px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);position:relative;transition:background .25s}.service-card:hover{background:#10333d}.index{display:block;font-size:12px;letter-spacing:.1em;color:var(--cyan);margin-bottom:36px}.service-card h3{font-size:27px;max-width:200px;line-height:1.3}.service-card p{margin:18px 0 25px;font-size:14px;max-width:230px}.card-arrow{position:absolute;right:24px;bottom:20px;color:var(--cyan);font-size:26px;transition:transform .2s}.service-card:hover .card-arrow{transform:translate(3px,-3px)}.process-section{display:grid;grid-template-columns:1fr 1fr;gap:12%;background:#0b2832;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.process-intro p:not(.eyebrow){margin:26px 0 15px;max-width:440px}.process-steps article{display:flex;gap:30px;padding:28px 0;border-top:1px solid var(--line)}.process-steps article:last-child{border-bottom:1px solid var(--line)}.process-steps article>span{font-size:12px;color:var(--cyan);padding-top:5px}.process-steps h3{font-size:26px;margin-bottom:12px}.process-steps p{font-size:14px}.work-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.work-card{border:1px solid var(--line);background:rgba(12,45,55,.4);transition:border-color .3s,transform .3s}.work-card:hover{border-color:var(--cyan);transform:translateY(-5px)}.work-visual{height:245px;position:relative;overflow:hidden;background:linear-gradient(130deg,#174754,#0c2833);border-bottom:1px solid var(--line);padding:22px}.visual-1{background:linear-gradient(130deg,#145253,#092c33)}.visual-2{background:linear-gradient(130deg,#143944,#0a232a)}.work-symbol{font:400 180px/1 var(--display);position:absolute;bottom:-12px;right:5px;color:rgba(8,214,204,.17);letter-spacing:-.07em}.visual-tag{font-size:11px;letter-spacing:.12em;color:#a0bfc5}.work-type{position:absolute;bottom:21px;left:22px;font-size:11px;letter-spacing:.12em;color:var(--cyan)}.work-body{padding:27px}.work-body h3{font-size:29px;min-height:68px}.work-body p{font-size:14px;margin:17px 0 20px;min-height:73px}.contact-strip{display:flex;justify-content:space-between;align-items:center;gap:40px;background:var(--teal);border-top:1px solid #287775}.contact-strip h2{font-size:clamp(36px,3.8vw,58px)}.contact-strip .eyebrow{color:#a8e6df}.light{background:var(--white);border-color:var(--white);flex-shrink:0}.footer{padding:65px var(--pad) 25px}.footer-top{display:flex;justify-content:space-between;gap:30px;align-items:center;padding-bottom:48px}.footer-top p{font-size:14px}.footer-email{font-family:var(--display);font-size:24px}.footer-links{display:flex;flex-wrap:wrap;gap:23px;border-top:1px solid var(--line);padding-top:24px;font-size:12px;color:#9eb7be}.footer-links span{margin-left:auto}.page-intro{padding-top:186px;padding-bottom:75px;background:radial-gradient(ellipse at top right,#123e48,transparent 70%);border-bottom:1px solid var(--line)}.page-intro h1{max-width:1000px}.intro-description{max-width:650px;margin-top:32px;font-size:18px;line-height:1.8}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:12%}.detail-grid>div>p:not(.eyebrow){margin-top:25px;max-width:460px}.deliverables article{display:flex;align-items:center;gap:25px;padding:27px 0;border-top:1px solid var(--line)}.deliverables article:last-child{border-bottom:1px solid var(--line)}.deliverables span{font-size:12px;color:var(--cyan)}.deliverables h3{font-size:28px}.related{padding-top:20px}.prose p{margin-bottom:24px}.three-col{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.three-col article{border-top:1px solid var(--line);padding-top:25px}.three-col p{margin-top:20px}.principles{padding-top:20px}.work-list{padding-top:65px}.confidential-note{font-size:12px;margin-top:30px;max-width:730px}.case-content{display:grid;grid-template-columns:1fr 2fr;gap:10%}.case-content article{padding-bottom:38px;margin-bottom:35px;border-bottom:1px solid var(--line)}.case-content article h2{font-size:38px;margin-bottom:22px}.case-content aside .text-link{margin-top:40px}.tag{display:inline-block;padding:7px 10px;border:1px solid var(--line);font-size:12px;margin:0 5px 8px 0}.contact-layout{display:grid;grid-template-columns:1fr 1.3fr;gap:10%;padding-top:70px}.contact-details{display:flex;flex-direction:column;align-items:start;gap:15px}.contact-details .eyebrow{margin-bottom:0}.contact-email{font-family:var(--display);font-size:30px;color:var(--cyan);overflow-wrap:anywhere}.contact-details>div{margin-top:40px;margin-bottom:15px}.contact-details>div p:not(.eyebrow){margin-top:12px}.contact-details>p:last-child{font-size:14px;max-width:330px}.enquiry-form{display:flex;flex-direction:column;gap:23px}.enquiry-form label{display:flex;flex-direction:column;gap:9px;font-size:14px;color:#d4e1e4}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:22px}input,select,textarea{border:1px solid #38535c;border-radius:0;padding:13px 14px;background:#0c2933;color:var(--white);width:100%;min-width:0;font-size:16px}input::placeholder,textarea::placeholder{color:#8ba5af}textarea{resize:vertical}select option{background:#0c2933}.enquiry-form .consent{flex-direction:row;align-items:flex-start;gap:12px;color:var(--muted);font-size:12px}.consent input{width:17px;height:17px;accent-color:var(--cyan);margin-top:4px;flex-shrink:0}.consent a{text-decoration:underline}.enquiry-form .button{align-self:flex-start}.honeypot{position:absolute!important;width:1px;height:1px;overflow:hidden;opacity:0;left:-10000px}.preview-notice{border-left:2px solid var(--cyan);padding:10px 15px;font-size:13px;background:#123944}.form-status{font-size:14px;min-height:25px}.form-status.error{color:#ffbab1}.form-status.success{color:var(--cyan)}.policy{max-width:950px;margin:auto}.policy h2{font-size:30px;margin:38px 0 20px}.policy p,.policy li{color:var(--muted);margin-bottom:16px}.policy a{color:var(--cyan);text-decoration:underline}.job-list{display:flex;flex-direction:column}.job-link{padding:35px 0;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:30px}.job-link:last-child{border-bottom:1px solid var(--line)}.job-link p{font-size:14px;margin-top:12px}.job-link>span{color:var(--cyan);font-size:32px}.job-detail h2{font-size:32px;margin:36px 0 18px}.job-detail ul{padding-left:22px;color:var(--muted)}.job-detail li{margin-bottom:10px}.file-note{font-size:12px;color:var(--muted)}
@media(min-width:1700px){.hero-content{padding-top:180px}.hero{min-height:950px}}@media(max-width:1100px){.desktop-nav{gap:18px}.site-header{gap:22px}.header-cta{gap:12px}.hero-content{width:64%}.hero h1{font-size:70px}.scene-shell{left:38%;right:-10%;opacity:.85}.service-card{padding:28px 20px}.service-card h3{font-size:24px}.hero-actions{gap:18px}.section{padding-top:80px;padding-bottom:80px}.work-body{padding:22px}.work-body h3{font-size:26px}.footer-email{font-size:21px}.page-intro{padding-top:170px}}
@media(max-width:800px){.site-header{height:80px;padding:0 24px;gap:18px}.brand-word{font-size:30px}.brand-caption{font-size:8px}.brand img{width:146px;max-height:42px}.desktop-nav{display:none}.header-cta{margin-left:auto;font-size:12px;padding:9px 12px}.menu-toggle{display:flex;width:35px;height:40px;flex-direction:column;justify-content:center;gap:7px;background:none;border:0;color:var(--white);padding:7px}.menu-toggle span{width:22px;height:1px;background:currentColor}.mobile-nav{position:absolute;top:79px;left:0;width:100%;display:flex;flex-direction:column;background:#092630;padding:25px;border-bottom:1px solid var(--line);box-shadow:0 20px 50px #0006}.mobile-nav a{font-size:20px;padding:12px 0}.hero{height:auto;min-height:1070px}.hero-content{padding:125px 24px 0;width:100%}.hero h1{font-size:clamp(52px,9.4vw,76px);max-width:700px}.hero h1 br{display:none}.hero h1{max-width:650px}.hero-copy{max-width:430px;margin-top:23px}.hero-actions{margin-top:24px}.scene-shell{top:460px;left:0;right:0;bottom:75px;opacity:1}.scene-caption{right:24px;top:35px}.scene-controls{right:24px;bottom:27px}.scene-hint{right:24px;bottom:4px}.hero-grid{inset:80px 24px 0}.hero-bottom{left:24px;right:24px;bottom:20px}.hero-bottom>span{display:none}.section{padding:70px 24px}.section-heading{gap:30px;grid-template-columns:1fr;margin-bottom:35px}.section-heading>p{max-width:600px}.service-grid{grid-template-columns:repeat(2,1fr)}.service-card{min-height:260px;padding:26px}.service-card h3{font-size:29px}.service-card p{max-width:100%}.index{margin-bottom:25px}.process-section{grid-template-columns:1fr;gap:40px}.work-grid{grid-template-columns:1fr}.work-card{display:grid;grid-template-columns:38% 1fr}.work-visual{height:100%;min-height:240px;border-bottom:0;border-right:1px solid var(--line)}.work-body h3,.work-body p{min-height:0}.work-symbol{font-size:150px}.visual-tag,.work-type{font-size:10px}.work-type{max-width:150px}.contact-strip{align-items:start;flex-direction:column;gap:30px}.footer{padding:50px 24px 25px}.footer-top{flex-wrap:wrap;gap:30px}.footer-email{width:100%;font-size:25px}.footer-links{gap:16px}.footer-links span{width:100%;margin:8px 0 0}.page-intro{padding-top:145px}.intro-description{font-size:17px}.detail-grid,.contact-layout,.case-content{grid-template-columns:1fr;gap:45px}.three-col{grid-template-columns:1fr;gap:35px}.contact-details>div{margin-top:15px}.contact-details>p:last-child{max-width:none}.case-content aside .text-link{margin-top:20px}.related{padding-top:10px}}
@media(max-width:480px){.header-cta{font-size:11px;gap:12px}.header-cta span{font-size:18px}.brand img{width:123px}.hero{min-height:1040px}.hero-content{padding-top:118px}.hero .eyebrow{font-size:10px;letter-spacing:.12em}.hero h1{font-size:53px;line-height:1.13}.hero-copy{font-size:14px;max-width:310px}.hero-actions{gap:20px;flex-wrap:wrap}.button{font-size:13px;padding:13px 17px;gap:25px}.hero-actions .text-link{font-size:13px;gap:12px}.scene-shell{top:490px;bottom:65px;left:-30px;right:-10px}.scene-caption{right:34px;top:16px;font-size:10px}.scene-note{font-size:10px;padding-left:8px}.scene-controls{right:34px;bottom:31px}.scene-controls button{font-size:11px;padding:9px 11px}.scene-hint{right:34px;bottom:9px}.eyebrow{font-size:11px}h1{font-size:53px}h2{font-size:42px}.service-grid{grid-template-columns:1fr}.service-card{min-height:205px}.service-card h3{max-width:none}.service-card p{max-width:250px}.index{margin-bottom:20px}.work-card{display:block}.work-visual{height:195px;min-height:0}.work-body h3{font-size:30px}.work-body p{font-size:15px}.work-symbol{font-size:170px}.work-type,.visual-tag{font-size:11px}.work-type{max-width:none}.form-row{grid-template-columns:1fr;gap:23px}.footer-top>p{font-size:12px}.page-intro{padding-top:138px}.contact-email{font-size:28px}.job-link h2{font-size:32px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Cinematic, editorial rhythm informed by the supplied ENG reference. */
.hero{background:linear-gradient(90deg,rgba(4,23,29,.98),rgba(4,23,29,.82) 32%,rgba(4,23,29,.12) 75%),url('/assets/ocean.webp') center/cover}
.hero-grid{border:0}.site-header{border-bottom-color:rgba(165,199,206,.09)}
.work-preview{position:relative;isolation:isolate;background:radial-gradient(ellipse at 100% 0,#154852,transparent 65%),#061b23;overflow:hidden}
.work-preview:before{content:'IN PRACTICE';position:absolute;top:30px;left:var(--pad);font:500 clamp(80px,15vw,230px)/1 var(--display);letter-spacing:-.035em;color:rgba(155,208,213,.035);z-index:-1;white-space:nowrap}
.work-grid{gap:22px}.work-card{position:relative;display:flex;flex-direction:column;min-height:510px;border:0;background:#123d46;overflow:hidden}.work-visual{height:100%;position:absolute;inset:0;border:0;min-height:0;background:radial-gradient(ellipse at 70% 20%,#27616b,#08262e 80%)}.visual-1{background:radial-gradient(ellipse at 80% 15%,#34534d,#092c31 80%)}.visual-2{background:radial-gradient(ellipse at 70% 20%,#245463,#071f2a 80%)}.work-visual:after{content:'';position:absolute;inset:30% 0 0;background:linear-gradient(transparent,rgba(2,14,20,.92));pointer-events:none}.work-visual canvas{position:absolute;inset:0;width:100%;height:70%;opacity:.9}.visual-tag{position:relative;z-index:2}.work-symbol{opacity:.6;top:60px;right:24px;bottom:auto}.case-scene-ready .work-symbol{display:none}.work-type{top:55px;bottom:auto;z-index:2;font-size:11px}.work-body{margin-top:auto;position:relative;z-index:2;padding:30px}.work-body h3{font-size:32px;min-height:0;max-width:330px}.work-body p{color:#c1d3d8;min-height:0}.work-body .text-link{color:var(--cyan)}.work-card:hover{transform:translateY(-6px)}.work-card:hover canvas{opacity:1}.application-intro{margin-top:24px}.brand img{width:190px;max-height:42px}.service-card{border-left:0}.scene-shell .scene-controls[hidden]{display:none}.preview-notice[hidden]{display:none}
@media(min-width:1500px){.hero-content{padding-left:max(var(--pad),calc((100vw - 1560px)/2))}.site-header,.section,.footer{padding-left:max(var(--pad),calc((100vw - 1560px)/2));padding-right:max(var(--pad),calc((100vw - 1560px)/2))}}
@media(max-width:800px){.work-grid{grid-template-columns:1fr}.work-card{min-height:480px}.work-visual{height:100%;border:0}.work-visual canvas{height:80%}.work-type{max-width:none}.work-body{max-width:500px}.brand img{width:156px}.work-preview:before{top:30px;left:24px}}
@media(max-width:480px){.brand img{width:132px}.work-card{min-height:490px}.work-body{padding:27px}.work-body h3{font-size:32px}.work-visual{min-height:0}.work-symbol{font-size:170px}.work-type{top:55px}.visual-tag{font-size:10px}}
@media(max-width:800px){.hero{min-height:0;padding-bottom:90px}.hero-content{padding-bottom:0}.scene-shell{position:relative;inset:auto;margin-top:30px;width:100%;height:510px}.scene-caption{top:0;right:24px}.scene-controls{bottom:30px;right:24px}.scene-hint{bottom:7px;right:24px}}
@media(max-width:480px){.scene-shell{height:490px;margin-top:30px}.hero-actions{gap:12px 24px}.hero-actions .text-link{min-height:45px}.scene-fallback{font-size:44px}.header-cta{max-width:130px}.hero h1{font-size:51px}}
/* Desktop art-direction study: detailed geometry and scroll-directed cinematography. */
.immersive-story{height:310svh;position:relative;background:#05070a}.immersive-stage{position:sticky;top:0;height:100svh;min-height:680px;overflow:hidden;isolation:isolate;background:#05070a}.immersive-backdrop{position:absolute;inset:0;background:radial-gradient(ellipse at 77% 47%,#213438 0%,#101b20 23%,#05080c 60%)}.immersive-stage canvas{position:absolute;inset:0;width:100%;height:100%;opacity:0;transition:opacity 1.5s;touch-action:pan-y}.scene-ready .immersive-stage canvas{opacity:1}.cinema-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#05080bf2 0%,#05080bd0 18%,#05080b50 39%,transparent 60%),linear-gradient(0deg,#05080be6,transparent 20%,transparent 85%,#05080b66)}.cinema-copy{position:absolute;top:50%;left:var(--pad);width:39%;max-width:625px;transform:translateY(-50%);opacity:0;pointer-events:none;transition:opacity .55s,transform .8s;z-index:3}.cinema-copy.is-active{opacity:1;pointer-events:auto}.cinema-copy:not(.is-active){visibility:hidden}.cinema-copy h1,.cinema-copy h2{font-size:clamp(62px,5.1vw,100px);line-height:1.1;letter-spacing:-.025em;max-width:580px;text-wrap:balance}.cinema-copy em{color:#e8f3f1}.cinema-copy h1 em{background:linear-gradient(110deg,#e4f8f4,#83cac5);background-clip:text;color:transparent}.cinema-copy .eyebrow{font-size:10px;letter-spacing:.22em;color:#8dd2cd;margin-bottom:30px}.cinema-summary{font-size:14px;line-height:1.9;max-width:345px;margin-top:27px;color:#a8b6bd}.cinema-link{display:inline-flex;align-items:center;gap:24px;margin-top:28px;font-size:13px;border-bottom:1px solid #62777966;padding:8px 0;color:#e8f3f1}.cinema-link span{color:var(--cyan);font-size:20px}.cinema-link:hover{color:var(--cyan)}.cinema-topline{position:absolute;top:135px;right:var(--pad);color:#899c9f;font-size:9px;letter-spacing:.18em;display:flex;align-items:center;gap:9px}.cinema-indicator{width:4px;height:4px;border-radius:50%;background:#83c3bd;box-shadow:0 0 12px #83c3bd}.cinema-status{position:absolute;bottom:119px;right:var(--pad);font-size:11px;color:#91a4ac;z-index:4}.cinema-bottom{position:absolute;bottom:39px;left:var(--pad);right:var(--pad);display:flex;align-items:center;justify-content:space-between;gap:30px;z-index:5}.cinema-skip{font-size:11px;color:#8dabae}.camera-chapters{display:flex;gap:0;border-bottom:1px solid #82969c35}.camera-chapters button{color:#8c9a9f;padding:15px 27px;border:0;background:none;font-size:11px;position:relative}.camera-chapters button span{margin-right:10px;color:#627479;font-size:9px}.camera-chapters button[aria-pressed=true]{color:#e0eeec}.camera-chapters button:after{content:'';position:absolute;bottom:-1px;height:1px;left:0;right:0;transform:scaleX(0);background:#96e0d9;transition:transform .4s}.camera-chapters button[aria-pressed=true]:after{transform:scaleX(1)}.cinema-orbit{color:#d7e3e3;background:#ffffff08;border:1px solid #62777955;padding:12px 18px;font-size:11px}.cinema-orbit span{margin-left:20px;color:#86c7c2}.cinema-orbit:hover{border-color:#9baaaa}.cinema-progress{position:absolute;bottom:0;height:2px;left:0;width:100%;background:#ffffff05}.cinema-progress span{display:block;width:100%;height:100%;transform-origin:left;background:#7ecbc3;transform:scaleX(0)}.cinema-preview{position:absolute;bottom:14px;right:var(--pad);font-size:8px;letter-spacing:.16em;color:#52666f}.detail-anchor{position:absolute;top:105svh}.free-exploration .cinema-copy,.free-exploration .cinema-shade{opacity:0;pointer-events:none}.free-exploration canvas{touch-action:none}.free-exploration .cinema-topline{opacity:.5}.free-exploration .camera-chapters{visibility:hidden}.page-home .site-header{height:88px;background:transparent;border:0}.page-home .brand img{width:160px}.page-home .header-cta{border-color:#62777955;font-size:12px}.page-home .desktop-nav a{font-size:12px}.page-home .site-header{padding-left:var(--pad);padding-right:var(--pad)}.scene-unavailable{height:100svh}.scene-unavailable .cinema-copy[data-chapter="0"]{opacity:1;visibility:visible;pointer-events:auto}.scene-unavailable .cinema-copy[data-chapter="0"] a{pointer-events:auto}.camera-chapters[hidden],.cinema-orbit[hidden]{display:none}
@media(min-width:1500px){.cinema-copy{left:max(var(--pad),calc((100vw - 1660px)/2));width:35%}.cinema-copy h1{font-size:clamp(84px,4.6vw,108px)}}
@media(prefers-reduced-motion:reduce){.immersive-stage canvas,.cinema-copy{transition:none}}
.camera-readout{position:absolute;top:135px;left:var(--pad);z-index:2;display:flex;align-items:center;gap:22px;color:#b0d0ce;opacity:.2;font:10px/1.4 monospace;letter-spacing:.06em;pointer-events:none;font-variant-numeric:tabular-nums}.camera-readout b{font-weight:400;display:inline-block;min-width:6ch;margin-left:7px}.readout-label{font-size:8px;letter-spacing:.15em;margin-right:10px}.camera-readout .readout-scale{padding-left:22px;border-left:1px solid #9ab8b666}.camera-readout .readout-scale b{min-width:5ch}.free-exploration .camera-readout{opacity:.14}
.page-home .site-header{background:rgba(5,10,13,.46);border-bottom:1px solid rgba(162,192,194,.09);box-shadow:0 6px 24px rgba(0,0,0,.05)}.page-home .desktop-nav a{color:#e7eeee;text-shadow:0 1px 6px #000}.page-home .desktop-nav a:hover{color:var(--cyan)}.page-home .header-cta{background:rgba(7,16,20,.12);border-color:rgba(173,201,201,.25);color:#f0f7f5}.page-home .header-cta:hover{background:var(--cyan);color:#062d33}@supports(backdrop-filter:blur(8px)){.page-home .site-header{background:rgba(5,10,13,.28);backdrop-filter:blur(8px) saturate(.9)}}
@media(min-width:801px){.work-visual canvas{top:80px;bottom:auto;height:45%}}
/* Desktop background studies: model stays behind the complete page. */
@media(min-width:1000px){
.has-ambient{background:#080d11;isolation:isolate}
.ambient-world{position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 78% 45%,#263035,#080d11 70%);transition:opacity .2s}
.ambient-world canvas{width:100%;height:100%;display:block;opacity:0;transition:opacity 1.1s;filter:grayscale(1)}
.ambient-ready .ambient-world canvas{opacity:.9}
.ambient-shade{position:absolute;inset:0;background:linear-gradient(90deg,#070c11f5 0%,#070c11c7 29%,#070c1150 54%,#070c1112 100%),linear-gradient(0deg,#080d1190,transparent 35%,transparent 85%,#080d1166)}
.ambient-caption{position:absolute;right:var(--pad);top:134px;font-size:9px;letter-spacing:.2em;color:#9cafb6;opacity:.4}
.has-ambient .site-header{background:rgba(5,10,13,.28);backdrop-filter:blur(8px);border-bottom:1px solid #a2c0c218}
.has-ambient .page-intro{min-height:88svh;padding-top:clamp(180px,23vh,340px);padding-bottom:100px;background:transparent;display:flex;flex-direction:column;justify-content:center;border:0}
.has-ambient .page-intro h1{font-size:clamp(66px,5.6vw,106px);max-width:57%;text-wrap:balance}
.has-ambient .page-intro .intro-description{max-width:40%;font-size:17px;color:#b6c4ca}
.has-ambient .page-intro em{color:#bfd2d3}
.has-ambient main>.section:not(.page-intro){background:rgba(5,14,19,.72);border-top:1px solid #bdd6db12}
.has-ambient main>.contact-strip{background:rgba(10,51,55,.7)}
.has-ambient .footer{background:rgba(5,14,19,.83)}
.has-ambient .policy{background:rgba(5,14,19,.9)!important;max-width:1020px;border:1px solid #bdd6db18}
.has-ambient .enquiry-form{background:rgba(5,14,19,.8);padding:34px;border:1px solid #bdd6db18}
.has-ambient .prose,.has-ambient .job-detail{background:rgba(5,14,19,.5);padding:25px}
.has-ambient .work-card{background:#102a33}
}
@media(prefers-reduced-motion:reduce){.ambient-world,.ambient-world canvas{transition:none}}
/* Service poster becomes a spatial index. Desktop composition is the review target. */
.expertise-atlas{position:relative;background:#070e13;border-top:1px solid #9fc7ca22;padding:90px 0 30px;overflow:hidden}
.page-service:has([data-atlas]){background:#070e13}.page-service:has([data-atlas]) .page-intro{background:#070e13;border:0;min-height:0;padding-bottom:65px}.page-service:has([data-atlas]) .site-header{background:#070e1366;backdrop-filter:blur(8px)}.page-service:has([data-atlas]) .page-intro h1{max-width:100%}.page-service:has([data-atlas]) .expertise-atlas{padding-top:60px;border-color:#92b9c011}.page-service:has([data-atlas]) .detail-grid,.page-service:has([data-atlas]) .related{background:#070e13}
.page-home .expertise-atlas{padding-top:150px;border:0}.page-home .home-expertise{padding-top:150px;padding-bottom:155px;background:#070e13}.home-expertise .service-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 70px;border:0}.home-expertise .service-card{min-height:0;padding:34px 0;display:grid;grid-template-columns:45px 1fr;gap:0 20px;border:0;border-top:1px solid #91aab333;background:none}.home-expertise .service-card h3{font-size:35px;max-width:none;margin:0}.home-expertise .service-card p{grid-column:2;margin:13px 50px 0 0}.home-expertise .index{padding-top:11px}.home-expertise .card-arrow{right:0;bottom:35px}.page-home .work-preview{padding-top:145px;padding-bottom:145px}.page-home .credentials{padding-top:145px;padding-bottom:145px;background:#09151c}.page-home .work-preview:before{content:none}
.atlas-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:50px;padding:0 var(--pad);max-width:1800px;margin:auto}.atlas-heading h2{font-size:clamp(52px,4.4vw,82px);line-height:1.15}.atlas-heading h2 em{color:#9bc4c4}.atlas-heading>p{max-width:360px;color:#97abb2;line-height:1.8;font-size:14px;padding-bottom:10px}
.atlas-stage{height:clamp(700px,78vh,950px);position:relative;background:radial-gradient(ellipse at 64% 51%,#253238,#101a20 42%,#070e13 75%);margin-top:20px;isolation:isolate}
.atlas-stage canvas{position:absolute;inset:0;width:100%;height:100%;opacity:0;transition:opacity 1.3s}.atlas-ready canvas{opacity:1}.atlas-vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#070e13ed,transparent 37%),linear-gradient(0deg,#070e13,transparent 20%,transparent 84%,#070e13);z-index:1}
.atlas-loading{position:absolute;left:55%;top:50%;color:#8fa6ae;font-size:12px}.atlas-loading[hidden]{display:none}
.atlas-points{position:absolute;inset:0;z-index:3;pointer-events:none;visibility:hidden}.atlas-ready .atlas-points{visibility:visible}.atlas-point{position:absolute;left:0;top:0;pointer-events:auto;display:flex;align-items:center;background:none;border:0;color:#d4e4e6;padding:0;text-align:left;gap:12px;white-space:nowrap;font-size:11px}.atlas-point[hidden]{display:none}.atlas-point span{width:29px;height:29px;border:1px solid #9fc9cbcc;background:#112129d9;box-shadow:0 0 0 5px #92d0d310;display:grid;place-items:center;border-radius:50%;font:10px monospace;transition:.2s}.atlas-point b{font-weight:400;padding:7px 10px;background:#09151bd9;border-bottom:1px solid #a4cccc44;backdrop-filter:blur(8px);opacity:.8;transition:.2s}.atlas-point:hover span,.atlas-point:focus-visible span,.atlas-point.is-highlighted span{background:#b5eeee;color:#062329;border-color:#cff;box-shadow:0 0 0 8px #92d0d322,0 0 30px #92d0d333}.atlas-point.is-highlighted b{opacity:1;color:white}.atlas-point:focus-visible{outline:1px solid #b5eeee;outline-offset:6px}
.atlas-description{position:absolute;top:clamp(24px,12%,140px);max-height:calc(100% - 48px);overflow:hidden;box-sizing:border-box;left:var(--pad);width:270px;z-index:4;padding:24px 0;border-top:1px solid #b4dddf66;transition:opacity .25s;pointer-events:none}.atlas-description h3{font-size:clamp(32px,2.6vw,47px);line-height:1.2;margin:16px 0}.atlas-description .eyebrow{font-size:9px;letter-spacing:.14em;line-height:1.7}.atlas-description p:not(.eyebrow){font-size:12px;line-height:1.85;color:#adc2c8}.atlas-description ul{padding:0;list-style:none;font-size:11px;color:#d2dedf;margin:22px 0}.atlas-description li{padding:9px 0;border-top:1px solid #a4cccc22}.atlas-description a,.atlas-description button{pointer-events:auto}.atlas-description .text-link{font-size:11px;gap:18px;margin-top:14px}.atlas-reset{display:block;margin-top:24px;font-size:10px;color:#88bcbf;border:0;background:none;padding:10px 0}.atlas-reset[hidden]{display:none}.atlas-description.is-open{background:linear-gradient(90deg,#071016ed,#071016aa 85%,transparent);padding-right:18px}
.atlas-scale{position:absolute;bottom:20px;left:var(--pad);right:var(--pad);display:flex;justify-content:space-between;color:#78909870;font:9px monospace;letter-spacing:.2em;z-index:2}
.atlas-nav{display:grid;grid-template-columns:repeat(4,1fr);margin:0 var(--pad);border-top:1px solid #a2c6cb33}.atlas-nav button{border:0;border-bottom:1px solid #a2c6cb22;padding:22px 14px;text-align:left;background:none;color:#c3d2d7;position:relative;font-size:11px;line-height:1.7;transition:.2s}.atlas-nav span{display:block;font:9px monospace;color:#6e969d;margin-bottom:14px}.atlas-nav i{position:absolute;right:16px;top:23px;font-style:normal;color:#6e969d}.atlas-nav button:hover,.atlas-nav button:focus-visible,.atlas-nav button.is-highlighted{background:#b5eeee0a;border-bottom-color:#b5eeee;color:#fff}.atlas-nav button[aria-pressed=true]{border-bottom-color:#b5eeee;background:#b5eeee10}.atlas-footnote{font-size:10px;color:#70858e;margin:25px var(--pad) 0;line-height:1.7}
.credentials{display:grid;grid-template-columns:.85fr 1.8fr;gap:70px;background:#091a21;border-top:1px solid #a2c6cb22}.credentials-intro h2{font-size:clamp(44px,4vw,72px)}.credentials-intro>p:last-child{max-width:320px;color:#a6bdc4;font-size:14px;line-height:1.9;margin-top:28px}.credentials-records{display:grid;gap:38px}.credential{display:grid;grid-template-columns:165px 1fr;align-items:start;gap:36px;padding-bottom:38px;border-bottom:1px solid #a2c6cb26}.credential:last-child{border:0;padding-bottom:0}.credential .eyebrow{font-size:9px;line-height:1.7;margin-bottom:12px}.credential h3{font-size:28px}.credential p:not(.eyebrow){font-size:12px;line-height:1.85;margin-top:15px;color:#b3c8cf}.credential p.credential-date{color:#809ba5;font-size:10px}.certificate-links{display:flex;flex-wrap:wrap;gap:15px;margin-top:20px;font-size:11px;color:#a3dedd}.credential .text-link{margin-top:16px;font-size:11px}.certificate-links a:hover{color:white}.credential-identity{padding:5px 24px 10px 0;border-right:1px solid #a2c6cb26}.credential-identity>span{display:block;font:8px/1.8 monospace;color:#78949e;letter-spacing:.13em}.credential-identity strong{font:400 75px/1.4 var(--display);display:block;letter-spacing:-.03em;color:#bbd1d6}.credential-identity small{display:block;font-size:10px;line-height:1.9;color:#839fa9}.achilles-identity strong{font-size:37px;line-height:2.4;letter-spacing:-.02em;color:#c4b58e}.achilles-identity>span{color:#978e75}.standard-links{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.standard-links a{padding-top:18px;border-top:1px solid #a2c6cb33;display:flex;flex-direction:column;gap:8px}.standard-links b{font:400 40px/1 var(--display);letter-spacing:-.02em;color:#b9d4d7}.standard-links span{font-size:9px;line-height:1.7;color:#90afb8}.standard-links a:hover b{color:#f3ffff}.standard-links a:hover{border-top-color:#b9d4d7}
@media(prefers-reduced-motion:reduce){.atlas-stage canvas,.atlas-point span,.atlas-point b,.atlas-description,.atlas-nav button{transition:none}}
.atlas-stage canvas{cursor:grab;touch-action:none}.atlas-stage canvas.is-dragging{cursor:grabbing}.atlas-leaders{position:absolute;inset:0;width:100%;height:100%;z-index:2;pointer-events:none}.atlas-leaders path{fill:none;stroke:#a1cbcb;stroke-width:1;opacity:.45}.atlas-leaders circle{fill:#b2dddd;stroke:#102027;stroke-width:1}.atlas-leaders .is-active path{stroke:#d6ffff;opacity:.95}.atlas-leaders .is-active circle{fill:#edffff;r:4}.atlas-point{gap:0;background:#09151bea;border:1px solid #9bc2c333;backdrop-filter:blur(8px);min-width:170px;padding:8px 12px}.atlas-point span{border:0;border-radius:0;background:none!important;box-shadow:none!important;width:24px;height:20px;color:#8cbbbf!important}.atlas-point b{background:none;border:0;padding:4px 8px;backdrop-filter:none;opacity:1}.atlas-point.is-highlighted{border-color:#bbffff99;background:#1b343eee}.atlas-tools{position:absolute;bottom:58px;left:50%;transform:translateX(-50%);z-index:5;display:flex;gap:2px;align-items:center;background:#071016b8;border:1px solid #a1cbcb22;backdrop-filter:blur(10px)}.atlas-tools span{font-size:10px;color:#8fa7b0;margin:0 24px}.atlas-tools button{padding:12px 16px;border:0;border-left:1px solid #a1cbcb22;background:transparent;color:#c2d8dc;font-size:12px}.atlas-tools button:hover,.atlas-tools button:focus-visible{background:#91babb22;color:white}.atlas-description{width:290px}.atlas-description p:not(.eyebrow){font-size:13px}.atlas-description li{font-size:12px}

.atlas-equipment .atlas-points,.atlas-equipment .atlas-leaders{display:none}.atlas-equipment .atlas-vignette{background:linear-gradient(90deg,#070e13ed,transparent 40%),linear-gradient(0deg,#070e13,transparent 20%,transparent 84%,#070e13)}

/* Navigation returns on a small upward scroll, on every route. */
.site-header{position:fixed;z-index:50;transform:translateY(0);transition:transform .28s ease,box-shadow .28s ease;background:rgba(5,10,13,.28);backdrop-filter:blur(8px)}
.site-header.is-hidden{transform:translateY(calc(-100% - 2px));pointer-events:none}
.site-header.is-scrolled{box-shadow:0 8px 28px #00000020}
.site-header:focus-within{transform:translateY(0);pointer-events:auto}
@media(prefers-reduced-motion:reduce){.site-header{transition:none}}

/* About page metrics: a light editorial strip adapted to the dark EXALIT system. */
.numbers-section{padding-top:88px;padding-bottom:92px;background:var(--deep);color:var(--white);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.numbers-section .section-heading{margin-bottom:54px}
.numbers-heading{display:flex;align-items:center;gap:60px;margin-bottom:54px}
.numbers-heading .eyebrow{font-size:12px;font-weight:600;letter-spacing:.15em;margin:0 0 14px;color:var(--cyan);white-space:nowrap}
.numbers-heading:after{display:none}
.numbers-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:34px}
.numbers-grid article{display:grid;grid-template-columns:auto 1fr;align-items:start;gap:24px}
.numbers-grid strong{font:400 clamp(44px,3.8vw,68px)/1 var(--display);font-variant-numeric:tabular-nums;min-width:2.2ch;letter-spacing:-.03em;color:var(--white);border-bottom:2px solid var(--cyan);padding-bottom:8px}
.numbers-grid span{font-size:12px;line-height:1.5;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding-top:6px}
.numbers-note{margin:52px 0 0 auto;max-width:520px;color:var(--muted);opacity:.8;font-size:13px;line-height:1.65}
@media(max-width:800px){.numbers-section{padding-top:65px;padding-bottom:70px}.numbers-heading{align-items:flex-start;flex-direction:column;gap:18px;margin-bottom:35px}.numbers-heading:after{width:100%}.numbers-grid{grid-template-columns:1fr 1fr;gap:30px 18px}.numbers-grid article{grid-template-columns:1fr;gap:12px}.numbers-grid strong{justify-self:start}.numbers-grid span{font-size:12px}.numbers-note{margin-top:38px}}
@media(max-width:480px){.numbers-grid{grid-template-columns:1fr}.numbers-grid article{grid-template-columns:auto 1fr;gap:18px}.numbers-grid span{font-size:13px}.numbers-heading .eyebrow{white-space:normal}}
.has-ambient main>.section.numbers-section{background:rgba(15,47,57,.72);color:var(--white);border-top-color:var(--line);border-bottom-color:var(--line);backdrop-filter:blur(2px)}

@media(max-height:960px){.atlas-description h3{font-size:clamp(28px,2.2vw,36px);margin:12px 0}.atlas-description p:not(.eyebrow){line-height:1.6}.atlas-description ul{margin:12px 0}.atlas-description li{padding:6px 0}.atlas-description .text-link{margin-top:8px}.atlas-reset{margin-top:10px;padding:6px 0}}

/* ---------- mobile layout (Claude, 2026-09-21): home sections + credentials ---------- */
@media(max-width:800px){
 .credentials{grid-template-columns:1fr;gap:44px}
 .credentials-records{gap:30px}
 .credential{grid-template-columns:1fr;gap:18px;padding-bottom:30px}
 .credential-identity{padding:0 0 14px;border-right:0;border-bottom:1px solid #a2c6cb26;display:grid;grid-template-columns:auto 1fr;gap:4px 18px;align-items:center}
 .credential-identity>span{grid-column:1/-1}
 .credential-identity strong{font-size:48px;line-height:1.1}
 .achilles-identity strong{font-size:30px;line-height:1.2}
 .credential h3{font-size:24px}
 .home-expertise .service-grid{grid-template-columns:1fr;gap:0}
 .home-expertise .service-card p{margin-right:30px}
 .page-home .home-expertise,.page-home .work-preview,.page-home .credentials{padding-top:90px;padding-bottom:90px}
 .cinema-copy{width:auto;left:24px;right:24px;max-width:none;top:auto;bottom:150px;transform:none}
 .cinema-copy h1,.cinema-copy h2{font-size:clamp(38px,10.5vw,60px);max-width:none}
 .cinema-copy .eyebrow{margin-bottom:18px}
 .cinema-bottom{left:24px;right:24px;bottom:22px;flex-wrap:wrap;gap:12px}
 .camera-chapters{order:3;width:100%;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
 .camera-chapters button{padding:12px 14px;white-space:nowrap;font-size:10px}
 .cinema-orbit{padding:9px 12px;font-size:10px}
 .cinema-orbit span{margin-left:10px}
 .immersive-stage{min-height:0}
 .atlas-heading{flex-direction:column;align-items:flex-start;gap:16px;padding:0 24px}
 .atlas-heading h2{font-size:clamp(38px,9.5vw,52px)}
 .atlas-stage{height:clamp(520px,80vh,700px);margin:20px 0 0}
 .atlas-description{left:24px;right:24px;width:auto;top:16px;max-height:calc(100% - 120px);padding:16px 0}
 .atlas-description h3{font-size:clamp(24px,6.5vw,30px);margin:10px 0}
 .atlas-description p:not(.eyebrow){font-size:12px;line-height:1.6}
 .atlas-description ul{margin:10px 0}.atlas-description li{padding:5px 0}
 .atlas-description.is-open{background:linear-gradient(180deg,#071016f2,#071016d0 80%,transparent);padding-right:0}
 .atlas-tools{bottom:36px;width:calc(100% - 48px);justify-content:center}
 .atlas-tools span{display:none}
 .atlas-tools button{padding:10px 14px;font-size:11px;flex:1}
 .atlas-scale{left:24px;right:24px;bottom:10px}
 .atlas-nav{grid-template-columns:1fr 1fr;margin:0 24px}
 .atlas-nav button{padding:16px 28px 16px 10px;font-size:11px}
 .atlas-nav span{margin-bottom:8px}
 .atlas-nav i{right:10px;top:16px}
 .atlas-footnote{margin:18px 24px 0}
 .atlas-point b{display:none}
 .atlas-point.is-highlighted b,.atlas-point[aria-pressed=true] b{display:block}
}
@media(max-width:480px){
 .site-header{gap:12px}
 .header-cta{padding:9px 10px;gap:8px;max-width:none;font-size:11px;white-space:nowrap}
 .header-cta span{font-size:16px}
 .brand img{width:112px}
 .home-expertise .service-card h3{font-size:27px}
 .credentials-intro h2{font-size:38px}
 .cinema-copy{bottom:132px}
 .cinema-summary br{display:none}
 .cinema-orbit{display:none}
 .cinema-skip{font-size:10px}
 .atlas-stage{height:clamp(480px,78vh,620px)}
 .atlas-nav{grid-template-columns:1fr}
 .contact-strip{padding:60px 24px}
 .footer-top{gap:22px}
}

/* ---------- mobile pass 2 (phone screenshots 2026-09-21): readable hero, stacked work cards, no overlay collisions ---------- */
@media(max-width:800px){
 .cinema-shade{background:linear-gradient(180deg,#05080b66 0%,#05080b33 30%,#05080bcc 55%,#05080bf4 78%,#05080b 100%)}
 .free-exploration .cinema-shade{opacity:.35}
 .camera-readout,.cinema-topline{display:none}
 .cinema-status{right:auto;left:24px;bottom:auto;top:110px;font-size:10px}
 .cinema-preview{right:24px;bottom:6px;font-size:7px}
 .cinema-copy{bottom:120px}
 .cinema-copy h1,.cinema-copy h2{font-size:clamp(34px,9.5vw,54px);line-height:1.08}
 .cinema-summary{margin-top:16px;font-size:14px;line-height:1.6;max-width:none}
 .cinema-link{margin-top:16px;font-size:13px;gap:16px}
 .cinema-bottom{bottom:16px;gap:10px}
 .camera-chapters{border-bottom:0}
 .camera-chapters button{padding:10px 12px 10px 0;margin-right:8px}
 .cinema-orbit{display:none}
 .work-card{display:block;min-height:0}
 .work-visual{position:relative;height:230px;min-height:0;inset:auto;border:0}
 .work-visual canvas{height:100%;top:0;bottom:0}
 .work-visual:after{inset:55% 0 0}
 .work-body{margin-top:0;padding:22px 22px 26px;background:#0b2a33}
 .work-body h3{max-width:none;font-size:26px}
 .work-type{top:auto;bottom:16px;left:22px}
 .work-symbol{display:none}
 .visual-tag{position:relative;z-index:2}
}
@media(max-width:480px){
 .cinema-copy{bottom:108px;left:20px;right:20px}
 .cinema-copy .eyebrow{font-size:9px;margin-bottom:12px}
 .work-visual{height:200px}
 .work-body h3{font-size:24px}
 .work-body p{font-size:14px;margin:12px 0 16px}
}
@media(max-width:480px){.site-header{padding:0 16px}.header-cta span{display:none}.header-cta{gap:0;padding:10px 12px}.cinema-preview{display:none}}
/* atlas below 1000px: no vessel render (never loaded there) — list is an accordion */
@media(max-width:999px){.atlas-stage,.atlas-tools,.atlas-scale{display:none}.atlas-nav{grid-template-columns:1fr;margin-top:26px}.atlas-nav button{padding:18px 36px 18px 12px;font-size:13px}.atlas-nav button[aria-pressed=true]{background:#b5eeee10;border-bottom-color:transparent}.atlas-expand{background:#b5eeee10;border-bottom:1px solid #b5eeee;padding:4px 12px 22px}.atlas-expand .eyebrow{font-size:9px;letter-spacing:.14em;color:#8dd2cd}.atlas-expand h3{font-size:24px;line-height:1.2;margin:8px 0 10px}.atlas-expand-copy{font-size:13px;line-height:1.7;color:#adc2c8;margin:0 0 12px}.atlas-expand ul{list-style:none;padding:0;margin:0 0 14px;font-size:12px;color:#d2dedf}.atlas-expand li{padding:7px 0;border-top:1px solid #a4cccc22}.atlas-expand .text-link{font-size:12px;gap:12px}}
/* phones: labels inside the model block sit on a dark pill so they stay readable over geometry */
@media(max-width:800px){.work-visual .visual-tag,.work-visual .work-type{display:inline-block;background:rgba(5,14,19,.82);padding:6px 9px;line-height:1.2;position:absolute;left:14px;z-index:3}.work-visual .visual-tag{top:14px}.work-visual .work-type{bottom:14px;top:auto}.work-visual:after{inset:45% 0 0;background:linear-gradient(transparent,rgba(2,14,20,.97))}}
/* project cards without 3D: typographic number on the gradient, tighter card */
.work-card{min-height:430px}.work-symbol{display:block;opacity:.55;font-size:210px;top:24px}
@media(max-width:800px){.work-card{min-height:0}.work-visual{height:150px}.work-symbol{display:block;font-size:120px;top:14px;right:18px;opacity:.5}}

/* ---------- mobile pass 3: portrait hero dimming, swipe strip for cases, full-screen menu ---------- */
@media(max-width:800px){
 .immersive-stage:after{content:'';position:absolute;inset:0;background:#05080b;opacity:var(--dim,0);pointer-events:none;z-index:1}
 .cinema-copy,.cinema-bottom,.cinema-status{z-index:3}
 .cinema-shade{z-index:1}
 .page-home .work-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;margin:0 -24px;padding:0 24px 10px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
 .page-home .work-grid::-webkit-scrollbar{display:none}
 .page-home .work-card{flex:0 0 82%;scroll-snap-align:start}
 .page-home .work-preview .section-heading>div:last-child{margin-bottom:6px}
 .menu-toggle{position:fixed;right:16px;top:20px;z-index:40;width:48px;height:48px;border-radius:50%;background:#0f2f39cc;border:1px solid #a2c6cb33;backdrop-filter:blur(8px);gap:6px;padding:0;align-items:center;justify-content:center}
 .site-header{padding-right:76px}
 .menu-toggle span{width:20px;transition:transform .25s,opacity .2s}
 .menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}
 .menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
 .mobile-nav{position:fixed;inset:0;top:0;height:100dvh;width:100%;display:flex;flex-direction:column;justify-content:center;gap:0;padding:40px 28px 120px;background:#071c24f2;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:0;box-shadow:none;z-index:30}
 .mobile-nav a{font:500 38px/1.25 var(--display);letter-spacing:.02em;padding:10px 0;border-bottom:1px solid #a2c6cb1f;color:var(--white)}
 .mobile-nav a:last-child{margin-top:26px;border:0;font:600 15px/1.2 var(--body);letter-spacing:.02em;color:var(--cyan)}
 .mobile-nav a:last-child:after{content:' ↗︎'}
 body.menu-open{overflow:hidden}
 .site-header{gap:14px}
}
@media(max-width:480px){.site-header{padding-right:72px}.menu-toggle{top:22px;right:12px;width:44px;height:44px}}

/* ---------- desktop v2 (2026-09-21): one type scale, four text colours, measure, two button kinds ---------- */
:root{--t-11:11px;--t-13:13px;--t-16:16px;--t-22:22px;--t-30:30px;--t-h2:clamp(44px,4vw,64px);--t-h1:clamp(56px,5.1vw,96px);
 --tx:#f6faf9;--tx-muted:#b3c5ca;--tx-dim:#7d97a0;--tx-accent:var(--cyan)}
/* colours: headings white, body muted, meta dim, eyebrows accent */
main h1,main h2,main h3,main h2 em{color:var(--tx)}
main h2 em,.cinema-copy em,.credentials-intro h2 em,.atlas-heading h2 em,.section-heading h2 em{color:var(--tx-accent)}
main p,.atlas-description p:not(.eyebrow),.cap-read p,.service-card p,.work-body p,.credential p:not(.eyebrow),.cinema-summary,.intro-description{color:var(--tx-muted)}
.eyebrow,.cap-k,.visual-tag,.work-type,.cinema-copy .eyebrow,.credential .eyebrow,.atlas-description .eyebrow{color:var(--tx-accent)}
small,.credential-date,.credential p.credential-date,.atlas-footnote,.cap-note,.confidential-note,.cinema-status,.atlas-scale,.cap-legend,.cap-hint,.atlas-nav span,.credential-identity small,.credential-identity>span,.camera-readout,.cinema-topline,.cinema-preview,.cinema-skip,.atlas-tools span,.footer-top>p,.footer-bottom,.form-status{color:var(--tx-dim)}
/* measure: no paragraph wider than ~65 characters */
main p:not(.eyebrow){max-width:56ch}
.section-heading>p,.section-heading>div>p:not(.eyebrow){max-width:48ch}
/* buttons: one filled CTA, one ghost control, text links stay underlined */
.button,.header-cta,.page-home .header-cta{background:var(--cyan);color:#062329;border:0;border-radius:3px;padding:13px 20px;font:600 var(--t-13)/1 var(--body);letter-spacing:.02em;gap:14px;transition:background .18s,transform .18s}
.button:hover,.header-cta:hover{background:#3ee6dd;color:#062329;transform:translateY(-1px)}
.button span,.header-cta span,.button:hover span,.header-cta:hover span{color:#062329;font-size:15px}
.atlas-tools,.atlas-tools button,.cinema-orbit,.atlas-reset,.camera-chapters button{border-radius:3px}
.atlas-tools{border:1px solid var(--line);background:#071016b8}
.atlas-tools button{border-left:1px solid var(--line);font-size:var(--t-13);color:var(--tx-muted)}
.cinema-orbit{border:1px solid var(--line);background:transparent;color:var(--tx-muted);font-size:var(--t-13);padding:11px 16px}
.cinema-orbit:hover,.atlas-tools button:hover{border-color:var(--tx-muted);color:var(--tx)}
.text-link{font-size:var(--t-16)}
@media(min-width:801px){
 /* type scale 11 · 13 · 16 · 22 · 30 · h2 · h1 */
 .eyebrow,.cap-k,.visual-tag,.work-type,.cinema-copy .eyebrow,.credential .eyebrow,.atlas-description .eyebrow{font-size:var(--t-11);letter-spacing:.18em}
 small,.credential-date,.credential p.credential-date,.atlas-footnote,.cap-note,.confidential-note,.cinema-status,.cap-legend,.cap-hint,.atlas-nav span,.credential-identity small,.credential-identity>span,.cinema-skip,.atlas-tools span,.cinema-preview{font-size:var(--t-11)}
 .camera-chapters button,.camera-readout,.cinema-topline,.atlas-scale,.atlas-point b,.cap-row,.atlas-nav button,.atlas-description ul,.atlas-description li,.cap-read li,.certificate-links,.footer-links a,.desktop-nav a,.tag{font-size:var(--t-13)}
 main p,.intro-description,.section-heading>p,.section-heading>div>p:not(.eyebrow),.credentials-intro>p:last-child,.credential p:not(.eyebrow),.atlas-heading>p,.cap-read p{font-size:var(--t-16);line-height:1.7}
 .service-card p,.work-body p,.atlas-description p:not(.eyebrow),.cinema-summary,.numbers-grid span{font-size:var(--t-16);line-height:1.6}
 .cinema-summary{font-size:var(--t-22);line-height:1.5;max-width:30ch;color:var(--tx-muted)}
 .work-body h3,.credential h3,.atlas-description h3,.cap-read h3,.deliverables h3,.job-link h2{font-size:var(--t-30);line-height:1.2}
 .home-expertise .service-card h3,.service-card h3{font-size:var(--t-30)}
 .atlas-heading h2,.credentials-intro h2,.section-heading h2,.numbers-heading h2,.contact-strip h2,main h2{font-size:var(--t-h2);line-height:1.1}
 .cinema-copy h1,.cinema-copy h2,.page-intro h1,.hero h1{font-size:var(--t-h1);line-height:1.05}
 .cinema-link{font-size:var(--t-16)}
 .atlas-nav button{padding:22px 40px 22px 14px}
}
@media(min-width:801px){
 /* scale stragglers */
 .desktop-nav a,.service-card .index,.atlas-loading,.cap-sm,.footer-links span,.footer-links a{font-size:var(--t-13)}
 .atlas-point span,.cap-m,.atlas-reset,.readout-label,.credential-identity>span{font-size:var(--t-11)}
 .cap-t{font-size:var(--t-16)}
 .cap-read h3{font-size:var(--t-30)}
 .cap-read p,.footer-top>p{font-size:var(--t-16)}
 .footer-email,.footer-email span{font-size:var(--t-22)}
 .cinema-link span,.card-arrow{font-size:var(--t-16)}
 .cap-big{font-size:58px}
}
/* four text colours only */
.cinema-link,.cinema-link:hover,.footer-links a,.desktop-nav a,.atlas-nav button,.cap-row,.cap-t,.text-link{color:var(--tx)}
.cap-n,.cap-hint,.cap-lv,.cap-m,.readout-label,.cinema-skip,.certificate-links,.certificate-links a,.footer-links span,.atlas-point span,.atlas-nav span,.atlas-description li,.cap-read li{color:var(--tx-dim)}
.certificate-links a:hover,.footer-links a:hover,.desktop-nav a:hover,.text-link:hover{color:var(--tx-accent)}
.cap-lv.is-on,.cap-row.is-on .cap-lv,.index,.atlas-description .eyebrow,.eyebrow{color:var(--tx-accent)}
.cinema-link span,.text-link span{color:var(--tx-accent)}
.fea-legend{position:absolute;right:var(--pad);top:50%;transform:translateY(-50%);width:12px;height:240px;border-radius:2px;opacity:0;transition:opacity .45s;z-index:4;pointer-events:none;background:linear-gradient(to top,#1a5cf2,#1ccada,#3ad24f,#f7c81a,#e5301f)}
.stage-legend-on .fea-legend,.is-fea .fea-legend{opacity:.9}
.fea-legend b{position:absolute;left:20px;font:9px/1 monospace;letter-spacing:.08em;color:#a6b8bf;white-space:nowrap;transform:translateY(-50%)}
.fea-legend .l-title{top:-20px;left:-2px;color:#8dd2cd;letter-spacing:.14em}
.fea-legend .l-top{top:2%}.fea-legend .l-mid{top:50%}.fea-legend .l-bot{top:98%}
.cinema-orbit,.cinema-preview{display:none!important}
