@font-face{font-family:Inter;src:url('assets/fonts/inter-latin.woff2') format('woff2');font-style:normal;font-weight:400 700;font-display:swap}
:root{color-scheme:dark;--bg:#0a0f12;--panel:#111a1e;--white:#f4f6f5;--muted:#9ba8ad;--accent:#57d9cc;--line:#ffffff20}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;font-size:18px;background:var(--bg);color:var(--white);font-family:Inter,Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,video{font:inherit}a:focus-visible,summary:focus-visible,video:focus-visible{outline:3px solid var(--accent);outline-offset:6px}::selection{background:var(--accent);color:var(--bg)}img{display:block;max-width:100%;height:auto}p{margin:0 0 20px;line-height:1.7}h1,h2,h3{margin:0;font-weight:500}h1{font-size:clamp(48px,7.6vw,108px);line-height:1.02;letter-spacing:-.065em;max-width:15ch}h2{font-size:clamp(30px,3.3vw,47px);line-height:1.12;letter-spacing:-.045em}h3{font-size:22px;line-height:1.3;letter-spacing:-.025em}.container{width:min(1280px,calc(100% - 112px));margin-inline:auto}.skip-link{position:fixed;left:20px;top:-100px;background:var(--accent);color:var(--bg);padding:12px 18px;z-index:50}.skip-link:focus{top:15px}.site-header{border-bottom:1px solid var(--line);position:relative;background:var(--bg);z-index:10}.header-inner{height:92px;display:flex;align-items:center;justify-content:space-between;gap:36px}.brand{width:190px;flex-shrink:0}.brand img{width:100%;height:auto}.header-nav{display:flex;align-items:center;gap:30px;font-size:14px}.header-nav a{display:inline-flex;align-items:center;min-height:44px;line-height:1.5;color:#c3cdd1;padding:8px 0}.header-nav a:hover{color:var(--accent)}.header-nav .contact-link{padding:10px 16px;border:1px solid #ffffff45;border-radius:2px;color:var(--white)}.breadcrumbs{padding-top:35px;font-size:14px;color:var(--muted)}.breadcrumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:11px;padding:0;margin:0}.breadcrumbs li+li:before{content:'/';margin-right:11px;color:#526268}.breadcrumbs a:hover{text-decoration:underline}.breadcrumbs [aria-current]{color:#c7d0d3}.page-hero{padding:70px 0 60px}.eyebrow,.section-label{display:block;font-size:14px;line-height:1.5;letter-spacing:1.9px;text-transform:uppercase;color:var(--accent);margin:0 0 25px}.project-name{font-size:18px;color:#b7c6cb;margin:22px 0 0;max-width:55ch}.hero-description{font-size:clamp(18px,1.8vw,23px);line-height:1.55;max-width:58ch;color:#b9c6cb;margin:30px 0}.hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:48px;padding:13px 22px;background:var(--accent);color:#071314;font-size:14px;font-weight:600;border:1px solid var(--accent);border-radius:2px;line-height:1.5}.button:hover{background:#a0eee6;border-color:#a0eee6}.button.secondary{background:transparent;color:var(--white);border-color:#ffffff50}.button.secondary:hover{background:#ffffff0b}.text-link{font-size:14px;border-bottom:1px solid #ffffff50;padding-bottom:6px;line-height:1.6}.text-link:hover{color:var(--accent)}.tags{display:flex;flex-wrap:wrap;gap:9px;margin:30px 0 0;padding:0;list-style:none}.tags li{font-size:14px;line-height:1.5;color:var(--muted);border:1px solid #ffffff27;padding:7px 11px}.lead-media{margin:0 0 85px}.lead-media img,.lead-media video{width:100%;display:block;background:var(--panel);border:1px solid var(--line)}.lead-media img{aspect-ratio:16/9;object-fit:cover}.lead-media video{height:auto;aspect-ratio:16/9;object-fit:contain}.lead-media figcaption{font-size:14px;color:var(--muted);line-height:1.7;margin:14px 0 0;max-width:85ch}.section-nav{display:flex;gap:26px;flex-wrap:wrap;padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:60px;font-size:14px;color:var(--muted)}.section-nav a:hover{color:var(--accent)}.content-section{display:grid;grid-template-columns:1fr 1.1fr;gap:100px;padding:55px 0 65px;border-bottom:1px solid var(--line)}.content-section .section-label{margin-bottom:18px}.content-section h2{max-width:15ch}.section-copy{font-size:18px;color:#b5c2c7;padding-top:36px;max-width:62ch}.section-copy p:last-child{margin-bottom:0}.demonstration{padding:75px 0 65px;border-bottom:1px solid var(--line)}.demonstration-intro{display:flex;justify-content:space-between;align-items:flex-end;gap:60px;margin-bottom:35px}.demonstration-intro h2{max-width:17ch}.demonstration-intro p{font-size:14px;color:var(--muted);max-width:40ch;margin:0}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:36px 24px}.gallery figure{margin:0;min-width:0}.gallery img{width:100%;aspect-ratio:16/9;object-fit:contain;border:1px solid var(--line);background:var(--panel)}.gallery figcaption{font-size:14px;color:var(--muted);line-height:1.65;margin-top:13px;max-width:70ch}.gallery .portrait{grid-column:1/-1;max-width:700px;justify-self:center;width:100%}.gallery .portrait img{aspect-ratio:auto}.gallery .wide{grid-column:1/-1}.gallery .wide img{aspect-ratio:16/9}.visual-transcript{margin-top:30px;border:1px solid var(--line);padding:22px 25px;background:#ffffff03}.visual-transcript summary{cursor:pointer;font-size:14px;font-weight:500;line-height:1.6;color:var(--white)}.visual-transcript>p{font-size:18px;color:var(--muted);margin-top:22px;max-width:75ch}.visual-transcript ol{list-style:none;padding:0;margin:25px 0 0}.visual-transcript li{display:grid;grid-template-columns:115px 1fr;gap:20px;padding:16px 0;border-top:1px solid var(--line);font-size:18px;color:#b5c2c7;line-height:1.7}.visual-transcript time{color:var(--accent);font-size:14px}.related-work{margin:40px 0 0;padding:26px;border:1px solid var(--line)}.related-work p{font-size:18px;color:var(--muted);margin:0 0 15px}.contact-panel{padding:95px 0 90px;display:flex;justify-content:space-between;align-items:flex-end;gap:60px}.contact-panel h2{font-size:clamp(36px,4.3vw,60px);max-width:16ch}.contact-panel p{font-size:18px;color:var(--muted);max-width:50ch;margin:24px 0 0}.contact-panel .button{flex-shrink:0}.site-footer{border-top:1px solid var(--line);padding:30px 0 35px}.footer-inner{display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap;font-size:14px;color:var(--muted)}.footer-inner a:hover{color:var(--accent)}.footer-links{display:flex;gap:15px 25px;flex-wrap:wrap}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:1550px){.container{width:min(1380px,calc(100% - 150px))}.page-hero{padding-top:90px}.lead-media{margin-bottom:100px}.content-section{gap:150px}}
@media(max-width:950px){.container{width:calc(100% - 64px)}.header-inner{height:80px}.header-nav{gap:20px;font-size:14px}.brand{width:165px}.page-hero{padding:55px 0}.content-section{gap:55px}.section-copy{font-size:18px}.demonstration-intro{gap:35px}.contact-panel{gap:35px}.gallery{gap:28px 18px}}
@media(max-width:650px){html{scroll-padding-top:30px}.container{width:calc(100% - 40px)}.header-inner{height:auto;min-height:100px;align-items:flex-start;flex-direction:column;gap:18px;padding:21px 0 20px}.brand{width:155px}.header-nav{gap:10px 20px;width:100%;justify-content:flex-start;flex-wrap:wrap;font-size:14px}.header-nav .contact-link{padding:6px 10px}.breadcrumbs{font-size:14px;padding-top:25px}.page-hero{padding:44px 0 38px}h1{font-size:clamp(45px,11.7vw,67px);max-width:16ch;letter-spacing:-.06em}.eyebrow,.section-label{font-size:14px;letter-spacing:1.6px;margin-bottom:19px}.hero-description{font-size:18px;margin:25px 0}.hero-actions{gap:20px;margin-top:25px}.button{font-size:14px;min-height:44px;padding:11px 18px}.text-link{font-size:14px}.project-name{font-size:18px;margin-top:18px}.tags{gap:7px;margin-top:25px}.tags li{font-size:14px;padding:6px 8px}.lead-media{margin-bottom:45px}.lead-media figcaption{font-size:14px;margin-top:11px}.section-nav{font-size:14px;gap:13px 21px;line-height:1.5;padding:18px 0;margin-bottom:25px}.content-section{grid-template-columns:1fr;gap:20px;padding:35px 0 40px}.content-section h2{max-width:18ch;font-size:33px}.content-section .section-label{margin-bottom:14px}.section-copy{padding-top:0;font-size:18px;max-width:none}.demonstration{padding:45px 0}.demonstration-intro{display:block;margin-bottom:28px}.demonstration-intro h2{font-size:33px}.demonstration-intro p{font-size:14px;margin-top:20px}.gallery{grid-template-columns:1fr;gap:29px}.gallery .wide,.gallery .portrait{grid-column:auto}.gallery figcaption{font-size:14px;margin-top:10px}.visual-transcript{padding:18px}.visual-transcript summary{font-size:14px}.visual-transcript li{grid-template-columns:1fr;gap:6px;font-size:18px;padding:15px 0}.visual-transcript time{font-size:14px}.visual-transcript>p{font-size:18px}.contact-panel{padding:55px 0;align-items:flex-start;flex-direction:column;gap:27px}.contact-panel h2{font-size:38px}.contact-panel p{font-size:18px;margin-top:20px}.footer-inner{font-size:14px;gap:20px}.footer-links{gap:20px}.related-work{padding:20px}.related-work p{font-size:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Match the restored main site's light surfaces, Inter type and purple controls. */
:root{color-scheme:light;--bg:#fff;--panel:#f5f5f8;--ink:#252734;--white:#252734;--muted:#626675;--accent:#5261eb;--line:#e4e4ed;--dark:#171721}
body{font-size:18px;font-optical-sizing:auto;font-feature-settings:'cv11' 1,'ss01' 1}
::selection{background:#dce0ff;color:var(--ink)}
a:focus-visible,summary:focus-visible,video:focus-visible{outline-color:#8893ff;outline-offset:5px}
h1{font-size:clamp(44px,4.4vw,64px);line-height:1.12;letter-spacing:-2.3px;max-width:22ch}
h2{font-size:clamp(30px,3.3vw,46px);line-height:1.16;letter-spacing:-1.7px}
h3{font-size:26px;line-height:1.25;letter-spacing:-.8px}
.skip-link{background:#fff;color:var(--ink);border:1px solid var(--line)}
.site-header{background:#fff;border-bottom-color:#e8eaf0}
.header-inner{height:84px;width:calc(100% - 76px);max-width:none;gap:35px}
.brand{width:218px}
.brand img{filter:brightness(0)}
.header-nav{gap:34px;font-size:16px}
.header-nav a{color:var(--ink);padding:10px 0}
.header-nav .contact-link{padding:11px 23px;background:var(--accent);border-color:var(--accent);border-radius:30px;color:#fff;line-height:1.4}
.header-nav .contact-link:hover{background:#4350d0;border-color:#4350d0;color:#fff}
.breadcrumbs li+li:before{color:#a0a3af}
.breadcrumbs [aria-current]{color:var(--ink)}
.eyebrow,.section-label{font-size:14px;font-weight:550;letter-spacing:.2px;text-transform:none;color:#6e7484;margin-bottom:22px}
.project-name,.hero-description,.section-copy,.visual-transcript li{color:var(--muted)}
.hero-description{line-height:1.6;max-width:62ch;margin:27px 0}
.button{min-height:49px;padding:12px 25px;background:var(--accent);color:#fff;font-size:17px;font-weight:500;border-color:var(--accent);border-radius:30px;transition:background .2s,box-shadow .2s}
.button:hover{background:#4350d0;border-color:#4350d0;box-shadow:0 3px 20px #4350d02b}
.button.secondary{background:#fff;color:var(--ink);border-color:#dddde5}
.button.secondary:hover{background:var(--panel);border-color:#c9ccda;box-shadow:none}
.text-link{font-size:18px;border-bottom-color:currentColor;padding-bottom:3px;font-weight:500}
.tags li{background:#f1f1f7;border-color:#ececf3;border-radius:20px;padding:7px 12px}
.lead-media img,.lead-media video{border-radius:6px}
.lead-media video{background:var(--dark)}
.section-nav{font-size:16px}
.content-section h2{max-width:17ch}
.demonstration-intro h2{max-width:18ch}
.demonstration-intro p{font-size:16px;line-height:1.65}
.gallery img{border-radius:5px}
.visual-transcript{background:var(--panel);border-radius:6px}
.visual-transcript summary{font-size:16px;color:var(--ink)}
.related-work{background:var(--panel);border-radius:6px}
.contact-panel h2{font-size:clamp(34px,3.5vw,46px);max-width:19ch}
.site-footer{background:var(--dark);border-top-color:#ffffff18;color:#c6c6d0}
.footer-inner{color:#a1a1b2}
.footer-inner a:hover{color:#fff}
.footer-inner a:focus-visible{outline-color:#a4adff}
@media(max-width:950px){.header-inner{height:80px;width:calc(100% - 52px);gap:25px}.brand{width:185px}.header-nav{gap:23px;font-size:15px}.header-nav .contact-link{padding:10px 19px}.contact-panel{align-items:flex-start;flex-direction:column}}
@media(max-width:650px){.container{width:calc(100% - 44px)}.header-inner{width:calc(100% - 44px);height:auto;min-height:100px;gap:17px;padding:21px 0 20px}.brand{width:175px}.header-nav{gap:10px 21px;font-size:14px}.header-nav .contact-link{padding:8px 16px;min-height:40px}h1{font-size:clamp(38px,9vw,54px);max-width:19ch;letter-spacing:-1.5px;line-height:1.15}.eyebrow,.section-label{margin-bottom:19px}.hero-description{font-size:18px;line-height:1.7;margin:25px 0}.button{font-size:16px;min-height:46px;padding:11px 21px}.text-link{font-size:17px}.tags li{padding:6px 10px}.section-nav{font-size:15px}.content-section h2{max-width:20ch;font-size:33px;line-height:1.2;letter-spacing:-1.2px}.demonstration-intro h2{font-size:33px;line-height:1.2;letter-spacing:-1.2px}.demonstration-intro p{font-size:16px}.visual-transcript summary{font-size:16px}.contact-panel h2{font-size:35px;line-height:1.2;letter-spacing:-1.3px}}
@media(prefers-reduced-motion:reduce){.button{transition:none}}
