/* Adnova extends Sorvine. The original scene geometry lives in styles.css. */
:root{--rule:rgba(255,255,255,.16);--page-width:1440px;--space:clamp(24px,5.5vw,96px);--section:clamp(88px,11vw,176px)}
[hidden]{display:none!important}button{font-family:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--primary-soft);outline-offset:6px}button{cursor:pointer}::selection{background:var(--primary);color:var(--text)}
.wrap{max-width:var(--page-width);padding-left:var(--space);padding-right:var(--space);margin-left:auto;margin-right:auto}.brand-dot{color:var(--primary-soft)}.nav__logo{font-size:29px;letter-spacing:-.07em;gap:0}.nav__list{padding:0}.nav__link{padding:0 17px}.nav__lang-toggle{padding:0 15px}.nav__lang-toggle>span{display:block}.nav:has(:focus-visible){opacity:1!important;pointer-events:auto!important}.nav__dropdown a[aria-current]{color:var(--primary-soft)}.skip{position:fixed;z-index:30;top:-100px;left:20px;padding:14px;background:var(--text);color:var(--bg)}.skip:focus{top:12px}
.hold__work-link{display:inline-flex;gap:28px;font-size:13px;color:var(--primary-soft);margin-top:24px}.hold__work-link span{transition:transform .3s}.hold__work-link:hover span{transform:translate(3px,3px)}
/* Content survives missing particle data or a disabled script. */
html:not(.has-particles) .reach__copy,html:not(.has-particles) .hold__reveal{opacity:1;filter:none;transform:none}.hold__detail:not(.steps-ready) .hold__texts{gap:15px}.hold__detail:not(.steps-ready) .hold__text{grid-area:auto;opacity:1;filter:none;transform:none}
.work,.impact,.expertise,.contact,.footer{position:relative;background:var(--bg)}.work{padding-top:var(--section);padding-bottom:30px;z-index:2}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.16em;font-weight:500;color:var(--primary-soft);margin:0 0 25px}.display{font-weight:400;font-size:clamp(54px,8vw,112px);line-height:.98;letter-spacing:-.065em;margin:0}.display>span{color:var(--text-muted)}
.work-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:70px;gap:40px}.work-heading>p{color:var(--text-soft);font-size:16px;line-height:1.6;margin:0 0 7px}.project-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:88px 36px}.project{grid-column:span 6;min-width:0}.project-galaxy{grid-column:1/-1}.project-maison-m,.project-murano,.project-brodard{grid-column:span 7}.project-santeria,.project-bds,.project-swisstapgo{grid-column:span 5;padding-top:100px}.project-visual{position:relative}.project-media{display:block;position:relative;overflow:hidden;background:#0b0e13;aspect-ratio:1.32;color:var(--text);isolation:isolate}.project-galaxy .project-media{aspect-ratio:2.05}.project-maison-m .project-media{aspect-ratio:1.27}.project-swisstapgo .project-media{aspect-ratio:.85;background:#e9e9e6}.media-link{display:block;width:100%;height:100%}.project-picture,.project-film{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 0;transition:filter .35s;will-change:auto}.project-film{object-position:center}.media-swisstapgo .project-film{object-fit:contain}.project-picture.film-website{position:absolute;inset:0}.project-arrow{display:grid;place-items:center;position:absolute;right:20px;top:20px;width:42px;height:42px;border:1px solid #ffffff5c;border-radius:50%;background:#0008;backdrop-filter:blur(10px);font-size:23px;transition:background .25s,transform .25s}.project-media:hover .project-arrow{transform:rotate(45deg);background:var(--primary)}.project-caption{display:flex;align-items:center;justify-content:space-between;padding-top:23px;gap:20px}.project-caption h3{font-size:clamp(25px,2.9vw,41px);font-weight:450;letter-spacing:-.045em;margin:0 0 8px}.project-caption p{font-size:13px;line-height:1.4;color:var(--text-muted);margin:0}.project-caption .project-number{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--primary-soft);margin:0 0 10px}.project-caption>span{font-size:26px;font-weight:300}.media-controls{display:none;position:absolute;bottom:18px;left:18px;right:18px;justify-content:space-between;gap:14px;pointer-events:none}.has-media-controls .media-controls{display:flex}.media-controls button{pointer-events:auto;color:var(--text);border:0;min-height:36px;background:transparent}.media-tabs{display:flex;padding:3px;border:1px solid #ffffff40;border-radius:30px;background:#000a;backdrop-filter:blur(16px);pointer-events:auto}.media-tabs button{padding:0 17px;font-size:11px;border-radius:30px;line-height:1}.media-tabs button[aria-pressed=true]{background:#fff;color:#111}.film-toggle{width:42px;height:42px;border:1px solid #ffffff60!important;border-radius:50%;background:#000a!important;backdrop-filter:blur(12px);font-size:12px}
.has-scroll-motion .project-media{transform:translateY(calc((1 - var(--arrival,1))*36px));clip-path:inset(0 calc((1 - var(--arrival,1))*2.5%));will-change:transform,clip-path}.has-scroll-motion .project-media .project-picture,.has-scroll-motion .project-media .project-film{transform:scale(calc(1.055 - var(--arrival,1)*.055))}.has-scroll-motion .project-caption{transform:translateY(calc((1 - var(--arrival,1))*18px))}.project-galaxy .project-media::after{content:"";position:absolute;inset:0;pointer-events:none;border:1px solid #ffffff12}
.impact,.expertise{padding-top:var(--section);padding-bottom:var(--section)}.section-heading{max-width:800px}.section-heading>p:last-child{font-size:16px;line-height:1.6;color:var(--text-soft);max-width:470px;margin:30px 0 0}.metrics{display:grid;grid-template-columns:1fr 1.5fr 1fr;gap:25px;margin-top:70px;padding-bottom:40px;border-bottom:1px solid var(--rule)}.metrics strong{display:block;font-size:clamp(48px,6.3vw,96px);font-weight:450;letter-spacing:-.065em;white-space:nowrap}.metrics strong span{color:var(--primary-soft)}.metrics p{font-size:13px;color:var(--text-muted);margin:10px 0 0}.result-links{display:flex;gap:35px;padding:30px 0;font-size:14px}.result-links a{display:flex;gap:36px}.result-links a:hover{color:var(--primary-soft)}.source-note{border-top:1px solid var(--rule);font-size:12px;color:var(--text-muted);line-height:1.7}.source-note summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;padding:20px 0;list-style:none}.source-note summary::-webkit-details-marker{display:none}.source-note summary>span{font-size:20px}.source-note[open] summary>span{transform:rotate(45deg)}.source-note>p{max-width:850px;margin:0 0 22px}
.expertise{border-top:1px solid var(--rule)}.connection-map{position:relative;margin:30px 0}.connection-svg{width:100%;display:block;color:#38424f}.connection-core{fill:var(--bg);stroke:var(--primary-soft);stroke-width:1}.connection-brand{fill:var(--text);font:500 39px var(--font);letter-spacing:-2px}.network-label{position:absolute;padding:10px 8px;background:var(--bg);font-size:12px;color:var(--text-soft);transform:translateY(-50%)}.network-l1{left:0;top:26%}.network-l2{left:0;top:50%}.network-l3{left:0;top:74%}.network-r1{right:0;top:26%}.network-r2{right:0;top:50%}.network-r3{right:0;top:74%}.signal-dot{filter:drop-shadow(0 0 6px var(--primary));opacity:0}.has-network-motion .signal-dot{opacity:1}.service{border-top:1px solid var(--rule)}.service:last-child{border-bottom:1px solid var(--rule)}.service summary{display:grid;grid-template-columns:60px 1fr 40px;align-items:center;gap:15px;cursor:pointer;padding:28px 0;list-style:none}.service summary::-webkit-details-marker{display:none}.service h3{font-size:clamp(23px,3vw,43px);font-weight:400;letter-spacing:-.045em;margin:0}.service-index{font-size:11px;color:var(--text-muted)}.service-plus{font-size:27px;color:var(--primary-soft);font-weight:300;text-align:right;transition:transform .3s}.service[open] .service-plus{transform:rotate(45deg)}.service-body{padding:0 55px 32px 75px;max-width:830px;color:var(--text-soft)}.service-body p{font-size:16px;line-height:1.65;margin:0 0 20px}.service-body small{font-size:11px;color:var(--primary-soft)}
.contact{padding-top:var(--section);padding-bottom:var(--section);border-top:1px solid var(--rule)}.contact h2{font-size:clamp(43px,6.6vw,96px);line-height:1.04;letter-spacing:-.065em;font-weight:400;margin:0}.contact h2>span{color:var(--text-muted)}.contact-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:35px;margin-top:55px}.contact-bottom p{font-size:15px;color:var(--text-soft);line-height:1.7;margin:0}.contact-email{font-size:clamp(20px,2.5vw,34px);letter-spacing:-.035em;display:flex;gap:30px;padding-bottom:8px;border-bottom:1px solid var(--primary-soft)}.contact-email:hover{color:var(--primary-soft)}.footer{padding-top:38px;padding-bottom:38px;border-top:1px solid var(--rule);display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:30px;align-items:start}.footer p{font-size:11px;line-height:1.8;color:var(--text-muted);margin:0}.footer nav{display:grid;gap:10px;font-size:11px;color:var(--text-soft)}.footer nav:last-child{display:flex;justify-content:flex-end;gap:12px}.footer .nav__option{font-size:11px;padding:0;min-width:auto}
/* Project pages use the same type, colours and navigation as Sorvine. */
.case-page{background:var(--bg)}.case-intro{padding-top:160px}.back{display:inline-block;color:var(--text-muted);font-size:12px;margin-bottom:70px}.case-intro h1{font-size:clamp(47px,8.5vw,128px);font-weight:450;letter-spacing:-.065em;line-height:1.04;margin:0 0 40px}.case-intro-row{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-bottom:60px}.case-intro-row h2{font-size:28px;font-weight:400;line-height:1.25;letter-spacing:-.035em;margin:0}.case-intro-row p{font-size:16px;color:var(--text-soft);line-height:1.7;margin:0 0 25px}.text-link{color:var(--primary-soft);font-size:13px}.case-intro .project-media{aspect-ratio:1.7}.case-intro .media-swisstapgo{aspect-ratio:1.7;background:#e9e9e6}.case-scope{display:grid;grid-template-columns:1fr 1fr;gap:60px;padding-top:75px;padding-bottom:75px}.case-scope h2,.case-proof h2{font-size:30px;font-weight:400;letter-spacing:-.04em;margin:0}.case-scope ul{list-style:none;padding:0;margin:0}.case-scope li{padding:14px 0;border-bottom:1px solid var(--rule);font-size:16px;color:var(--text-soft)}.case-proof{padding-top:60px;padding-bottom:90px}.case-proof .metrics{grid-template-columns:1fr 1fr;margin-top:35px}.case-proof .source-note{margin-top:20px}.evidence-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;padding-bottom:25px}.evidence-grid img{width:100%;height:auto;display:block}.case-gallery{display:grid;grid-template-columns:1fr 1fr;gap:30px}.case-gallery>.eyebrow{grid-column:1/-1;margin-bottom:0}.case-gallery figure{margin:0;min-width:0}.case-gallery figure:nth-of-type(1){grid-column:1/-1}.case-gallery img{width:100%;height:auto;display:block}.case-next{padding-top:100px;padding-bottom:100px}.case-next>a{display:flex;justify-content:space-between;gap:30px;font-size:clamp(33px,5vw,70px);letter-spacing:-.05em}.case-next>a:hover{color:var(--primary-soft)}.case-page .contact{border-top:1px solid var(--rule)}.legal-content{padding-top:170px;padding-bottom:100px;min-height:70vh}.legal-content h1{font-size:clamp(40px,6vw,80px);letter-spacing:-.05em}.legal-content h2{margin-top:38px;font-size:26px;font-weight:400}.legal-content p{color:var(--text-soft);line-height:1.8;max-width:900px}.legal-content a{color:var(--primary-soft)}.error-page{padding-top:180px;padding-bottom:150px}.error-page h1{font-size:clamp(48px,8vw,100px);font-weight:400;letter-spacing:-.05em}
@media(min-width:1600px){.work-heading{margin-bottom:100px}}
@media(max-width:1180px){.nav{padding-left:30px;padding-right:30px}.nav__link{padding:0 12px}.project-grid{gap:65px 25px}.work-heading>p{font-size:14px}.metrics{gap:20px}.footer{grid-template-columns:1fr 1fr}.footer nav:last-child{justify-content:flex-start}.network-label{font-size:11px}}
@media(max-width:760px){:root{--space:22px;--section:82px}.nav{padding-left:22px;padding-right:22px}.nav__logo{font-size:26px}.nav__login{padding:0 16px;font-size:12px}.nav__end{gap:7px}.nav__lang-toggle{font-size:12px;width:42px;height:42px;padding:0}.nav__burger{width:42px;height:42px}.nav__menu{left:22px;right:22px}.hero__eyebrow{font-size:10px}.hero__title{font-size:clamp(24px,6.6vw,33px)}.hero__lead{font-size:14px;max-width:390px}.hero__actions{margin-top:22px}.hero__actions .btn{font-size:12px;padding-left:20px;padding-right:20px}.hero__actions .btn--glow{padding-right:5px}.hold__title{font-size:27px}.hold__detail{max-width:100%;justify-self:end}.hold__eyebrow{font-size:9px}.hold__work-link{margin-top:17px;font-size:12px}.hold__stage{padding-left:22px;padding-right:22px}.display{font-size:58px}.work-heading{display:block;margin-bottom:40px}.work-heading>p{margin-top:25px;font-size:14px}.project-grid{display:block}.project{margin-bottom:47px;padding-top:0}.project-media,.project-maison-m .project-media{aspect-ratio:1.25}.project-galaxy .project-media{aspect-ratio:1.2}.project-swisstapgo .project-media{aspect-ratio:.88}.project-caption{padding-top:19px}.project-caption h3{font-size:29px}.project-caption p{font-size:12px}.project-caption .project-number{font-size:9px}.project-arrow{right:14px;top:14px;width:35px;height:35px;font-size:20px}.media-controls{left:12px;right:12px;bottom:12px}.media-tabs button{padding:0 13px;min-height:32px;font-size:10px}.film-toggle{width:39px;height:39px}.impact{padding-top:40px}.section-heading>p:last-child{font-size:14px;line-height:1.6;margin-top:25px}.metrics{grid-template-columns:1fr;gap:27px;margin-top:40px;padding-bottom:30px}.metrics>div{display:flex;align-items:center;justify-content:space-between;gap:22px}.metrics strong{font-size:55px}.metrics p{font-size:11px;max-width:105px;text-align:right;margin:0}.result-links{gap:25px;flex-wrap:wrap;font-size:12px}.result-links a{gap:20px}.source-note{font-size:11px}.connection-map{margin:40px 0 30px}.connection-svg{min-height:190px}.connection-brand{font-size:43px}.network-label{font-size:8px;padding:6px 2px;max-width:95px}.network-l1,.network-r1{top:30%}.network-l3,.network-r3{top:70%}.service summary{grid-template-columns:27px 1fr 24px;gap:10px;padding:25px 0}.service h3{font-size:24px}.service-index{font-size:10px}.service-body{padding:0 0 27px 37px}.service-body p{font-size:14px}.service-body small{font-size:10px;line-height:1.8}.contact h2{font-size:44px}.contact-bottom{display:block;margin-top:35px}.contact-bottom p{font-size:13px}.contact-email{font-size:25px;justify-content:space-between;margin-top:30px;width:max-content;max-width:100%}.footer{grid-template-columns:1fr 1fr;gap:28px 18px}.footer .nav__logo{font-size:25px}.footer nav:last-child{display:flex;flex-wrap:wrap;gap:13px}.footer .nav__option{font-size:10px}.case-intro{padding-top:125px}.back{margin-bottom:40px;font-size:11px}.case-intro h1{font-size:47px;margin-bottom:30px}.case-intro-row{grid-template-columns:1fr;gap:20px;margin-bottom:35px}.case-intro-row h2{font-size:24px}.case-intro-row p{font-size:14px}.case-intro .project-media{aspect-ratio:1.1}.case-intro .media-swisstapgo{aspect-ratio:.8}.case-scope{grid-template-columns:1fr;gap:20px;padding-top:40px;padding-bottom:50px}.case-scope h2,.case-proof h2{font-size:27px}.case-scope li{font-size:14px}.case-proof{padding-top:20px;padding-bottom:50px}.case-proof .metrics{grid-template-columns:1fr}.case-gallery{display:block}.case-gallery .eyebrow{margin-bottom:20px}.case-gallery figure{margin:0 0 20px}.case-next{padding-top:50px;padding-bottom:60px}.case-next>a{font-size:36px}.evidence-grid{grid-template-columns:1fr}.legal-content{padding-top:110px}}
@media(max-width:360px){.nav{padding-left:16px;padding-right:16px}.nav__login{padding:0 12px;font-size:11px}.nav__logo{font-size:23px}.hero__title{font-size:23px}.contact h2{font-size:38px}.hold__title{font-size:25px}.metrics strong{font-size:47px}}
@media(hover:none) and (pointer:coarse){html{scroll-snap-type:y proximity}html.is-below-scenes{scroll-snap-type:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important;scroll-snap-type:none!important}*,*::before,*::after{transition-duration:0s!important}.has-scroll-motion .project-media,.has-scroll-motion .project-caption,.has-scroll-motion .project-picture,.has-scroll-motion .project-film{transform:none!important;clip-path:none!important;will-change:auto}.signal-dot{display:none}.hands{transition:none}}
/* Ideas become work. These are ordinary flowing cards, opened from the brain. */
/* Native input across the whole page. No CSS snap or scripted scene gates. */
html{scroll-snap-type:none!important}
.particle-work{max-width:1600px;padding:94px var(--space) 50px;margin:auto;background:transparent;isolation:auto}
.particle-work .work-heading{display:flex;align-items:center;justify-content:space-between;gap:25px;margin:0 0 38px}
.work-heading h2{font-size:clamp(28px,3vw,44px);font-weight:400;letter-spacing:-.05em;line-height:1.1;margin:0}
.work-heading>span{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted)}
.work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 26px}
.work-card{min-width:0;position:relative;scroll-margin-top:80px}
.work-card-link{display:block}
.work-art-slot{aspect-ratio:1.5625;position:relative}
.work-art{position:absolute;inset:0;overflow:hidden;background:#0b0e13;transform-origin:center;will-change:auto}
.work-art>img,.work-film{width:100%;height:100%;object-fit:cover;object-position:50% 0;display:block}
.work-film{position:absolute;inset:0;object-position:center;opacity:0;transition:opacity .4s;pointer-events:none}
.work-art.is-playing .work-film{opacity:1}
.work-open{position:absolute;right:15px;bottom:15px;display:grid;place-items:center;width:38px;height:38px;border:1px solid #fff6;border-radius:50%;background:#0009;color:white;font-size:21px;opacity:0;transform:translateY(5px);transition:opacity .25s,transform .3s}
.work-card-link:hover .work-open,.work-card-link:focus-visible .work-open{opacity:1;transform:none}
.work-card-caption{padding-top:17px;display:flex;align-items:flex-start;justify-content:space-between;gap:15px}
.work-card-caption h3{font-size:clamp(19px,1.75vw,27px);font-weight:450;letter-spacing:-.04em;line-height:1.15;margin:0 0 7px}
.work-card-caption p{font-size:11px;color:var(--text-muted);line-height:1.5;margin:0}
.work-kind{font-size:8px;text-transform:uppercase;letter-spacing:.07em;color:var(--primary-soft);line-height:1.5;max-width:86px;text-align:right;padding-top:4px}
.has-work-emergence .hold__visual.is-formed~.hold__reveal{opacity:var(--work-copy-fade,1);transition:filter 1.1s,transform 1.1s}
@media(max-width:1000px){.work-grid{gap:36px 20px}.work-kind{display:none}.work-card-caption h3{font-size:20px}.particle-work{padding-top:86px}.particle-work .work-heading{margin-bottom:30px}}
@media(max-width:600px){.particle-work{padding:84px 22px 40px}.work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 16px}.particle-work .work-heading{align-items:start;margin-bottom:26px}.work-heading h2{font-size:26px;max-width:260px}.work-heading>span{display:none}.work-card-caption{padding-top:12px}.work-card-caption h3{font-size:18px}.work-card-caption p{font-size:10px;line-height:1.4}.work-card:last-child{grid-column:1/-1}.work-card:last-child .work-art-slot{aspect-ratio:2}.work-open{display:none}}
@media(prefers-reduced-motion:reduce){.work-art{transform:none!important;opacity:1!important;will-change:auto!important}.work-card-caption,.particle-work .work-heading{opacity:1!important}.work-film{transition:none}}
/* One black star field, shared by the particle scenes and the work. */
:root{--bg:#000;--ambient-x:51%;--ambient-y:44%}
body{background:var(--bg)}
.ambient{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;background:#000}
.ambient-light,.ambient-grain{display:none}
.ambient-field{position:absolute;inset:0;width:100%;height:100%;opacity:1}
.ambient::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 45%,transparent 28%,#0005 100%)}
.hands{z-index:1}
main{z-index:2}
.work,.impact,.expertise,.contact,.footer{background:transparent}
.footer{z-index:2}
.network-label{background:transparent;text-shadow:0 1px 12px var(--bg)}
.connection-core{fill:#000;fill-opacity:.92}
.work-art{background:#08111b}
.case-page,.legal-page{background:var(--bg)}
@media(max-width:600px){.ambient-field{opacity:.8}}
