@font-face{font-family:Indivisible;src:url('/assets/fonts/indivisible/Indivisible-Light.woff2') format('woff2');font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:Indivisible;src:url('/assets/fonts/indivisible/Indivisible-Medium.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:Indivisible;src:url('/assets/fonts/indivisible/Indivisible-Black.woff2') format('woff2');font-weight:900;font-style:normal;font-display:swap}

:root{
  color-scheme:dark;
  --ink:#060608;
  --ink-soft:#0d0d11;
  --paper:#eeeeed;
  --paper-soft:#d9d9d5;
  --text:#eeeeed;
  --text-soft:rgba(238,238,237,.66);
  --surface:#0d0d11;
  --surface-alt:#eeeeed;
  --line:rgba(238,238,237,.15);
  --line-strong:rgba(238,238,237,.34);
  --violet:#2420a0;
  --blue:#2478f0;
  --accent:#7180ff;
  --pad:clamp(20px,4vw,64px);
  --section:clamp(90px,12vw,180px);
  --header:72px;
  --ease:cubic-bezier(.16,1,.3,1);
}

[data-theme='light']{
  color-scheme:light;
  --ink:#eeeeed;
  --ink-soft:#e4e4e0;
  --paper:#060608;
  --paper-soft:#24242a;
  --text:#060608;
  --text-soft:rgba(6,6,8,.62);
  --surface:#f6f6f2;
  --surface-alt:#060608;
  --line:rgba(6,6,8,.15);
  --line-strong:rgba(6,6,8,.32);
}

*,*::before,*::after{box-sizing:border-box}
html{background:var(--ink);scroll-behavior:smooth;scroll-padding-top:var(--header)}
body{margin:0;overflow-x:hidden;background:var(--ink);color:var(--text);font-family:Indivisible,Arial,sans-serif;font-weight:300;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body.menu-open,body.modal-open{overflow:hidden}
img,video{display:block;max-width:100%}
button,input,textarea,select{font:inherit}
button,a{-webkit-tap-highlight-color:transparent}
a{color:inherit}
::selection{background:var(--blue);color:#fff}
:focus-visible{outline:2px solid var(--accent);outline-offset:4px}

.skip-link{position:fixed;z-index:300;left:18px;top:8px;transform:translateY(-160%);padding:12px 15px;background:#fff;color:#060608;text-decoration:none;font-size:12px}
.skip-link:focus{transform:none}
.eyebrow{margin:0 0 24px;color:var(--text-soft);font-size:9px;line-height:1.45;letter-spacing:.18em;text-transform:uppercase}
.eyebrow::before{content:'';display:inline-block;width:28px;height:1px;margin:0 12px 3px 0;background:linear-gradient(90deg,var(--violet),var(--blue))}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{font-weight:900;letter-spacing:-.055em}
.section{position:relative;padding:var(--section) var(--pad);border-top:1px solid var(--line)}

.brand{display:inline-grid;grid-template-columns:auto;gap:0;min-width:82px;text-decoration:none;line-height:.8}
.brand__name{font-size:20px;font-weight:900;letter-spacing:-.055em}
.brand__studio{justify-self:end;margin-top:5px;font-size:6px;font-weight:300;letter-spacing:.28em}

.site-header{position:fixed;z-index:100;top:0;left:0;right:0;height:var(--header);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 var(--pad);border-bottom:1px solid rgba(255,255,255,.13);background:rgba(6,6,8,.68);color:#eeeeed;backdrop-filter:blur(18px) saturate(130%);transition:background .35s ease,transform .45s var(--ease)}
.site-header.is-scrolled{background:rgba(6,6,8,.9)}
.desktop-nav{display:flex;align-items:center;justify-content:center;gap:clamp(18px,2.6vw,42px)}
.desktop-nav a,.lang-link,.header-contact{font-size:9px;letter-spacing:.14em;text-decoration:none;text-transform:uppercase}
.desktop-nav a{position:relative;padding:12px 0;color:rgba(238,238,237,.68);transition:color .25s ease}
.desktop-nav a::after{content:'';position:absolute;left:0;right:100%;bottom:6px;height:1px;background:#fff;transition:right .35s var(--ease)}
.desktop-nav a:hover{color:#fff}
.desktop-nav a:hover::after{right:0}
.header-actions{justify-self:end;display:flex;align-items:center;gap:14px}
.icon-button,.menu-toggle{display:grid;place-items:center;width:38px;height:38px;padding:0;border:0;background:transparent;color:inherit;cursor:pointer}
.theme-toggle svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round}
.header-contact{display:inline-flex;align-items:center;min-height:38px;padding:0 14px;border:1px solid rgba(255,255,255,.34);transition:background .25s ease,color .25s ease}
.header-contact:hover{background:#eeeeed;color:#060608}
.lang-link{padding:12px 3px;color:rgba(238,238,237,.72)}
.menu-toggle{display:none;position:relative}
.menu-toggle span{position:absolute;width:18px;height:1px;background:currentColor;transition:transform .35s var(--ease),top .35s var(--ease)}
.menu-toggle span:first-child{top:15px}.menu-toggle span:last-child{top:22px}
.menu-toggle[aria-expanded='true'] span:first-child{top:18px;transform:rotate(45deg)}
.menu-toggle[aria-expanded='true'] span:last-child{top:18px;transform:rotate(-45deg)}
.mobile-menu{position:fixed;z-index:99;inset:0;display:grid;align-content:center;padding:calc(var(--header) + 30px) var(--pad) 36px;background:#060608;color:#eeeeed}
.mobile-menu[hidden]{display:none}
.mobile-menu nav{display:grid;gap:3px}
.mobile-menu nav a{font-size:clamp(38px,12vw,70px);font-weight:900;line-height:1;letter-spacing:-.06em;text-decoration:none}
.mobile-menu p{align-self:end;margin:44px 0 0;max-width:340px;color:rgba(238,238,237,.55);font-size:12px;line-height:1.55}

.button-row{display:flex;flex-wrap:wrap;gap:10px}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;min-height:52px;padding:14px 18px;border:1px solid var(--line-strong);background:transparent;color:inherit;font-size:10px;line-height:1.2;letter-spacing:.08em;text-decoration:none;text-transform:uppercase;cursor:pointer;transition:background .25s ease,color .25s ease,border-color .25s ease,transform .25s var(--ease)}
.button:hover{transform:translateY(-2px)}
.button--solid{border-color:var(--paper);background:var(--paper);color:var(--ink)}
.button--solid:hover{border-color:var(--blue);background:var(--blue);color:#fff}
.button--glass{border-color:rgba(255,255,255,.5);background:rgba(6,6,8,.14);color:#fff;backdrop-filter:blur(10px)}
.button--glass:hover{background:#fff;color:#060608}
.button--outline:hover{border-color:var(--blue);background:var(--blue);color:#fff}
.text-link{display:inline-flex;align-items:center;gap:12px;margin-top:42px;padding-bottom:6px;border-bottom:1px solid var(--line-strong);font-size:11px;letter-spacing:.08em;text-decoration:none;text-transform:uppercase}
.text-link span{transition:transform .25s var(--ease)}
.text-link:hover span{transform:translate(3px,-3px)}

.home-hero{position:relative;isolation:isolate;min-height:100vh;min-height:100svh;overflow:hidden;background:#060608;color:#eeeeed}
.home-hero__film-wrap,.home-hero__film,.home-hero__veil{position:absolute;inset:0;width:100%;height:100%}
.home-hero__film-wrap{z-index:0;background-position:center;background-size:cover;background-image:var(--hero-poster)}
.home-hero__film{object-fit:cover;filter:saturate(.9) contrast(1.04)}
.home-hero__veil{z-index:1;background:linear-gradient(180deg,rgba(6,6,8,.18) 0%,rgba(6,6,8,.16) 36%,rgba(6,6,8,.74) 78%,#060608 100%),linear-gradient(90deg,rgba(6,6,8,.46),transparent 60%)}
.home-hero__content{position:relative;z-index:2;display:flex;flex-direction:column;min-height:100vh;min-height:100svh;padding:calc(var(--header) + clamp(46px,7vh,86px)) var(--pad) clamp(82px,12vh,130px)}
.home-hero .eyebrow{color:rgba(238,238,237,.72)}
.home-hero h1{max-width:1280px;margin:0;font-size:clamp(58px,8vw,148px);line-height:.86;text-wrap:balance}
.home-hero h1 em{display:block;background:linear-gradient(90deg,#c5c9ff 0%,#6e83ff 42%,#2478f0 100%);background-clip:text;-webkit-background-clip:text;color:transparent;font-style:normal}
.home-hero__bottom{display:grid;grid-template-columns:minmax(300px,.85fr) 1fr;align-items:end;gap:40px;margin-top:auto}
.home-hero__lead{max-width:560px;margin-bottom:8px;font-size:clamp(18px,1.75vw,27px);line-height:1.38}
.home-hero__audience{margin-bottom:0;color:rgba(238,238,237,.6);font-size:12px;line-height:1.5}
.home-hero__bottom .button-row{justify-self:end}
.home-hero__transport{position:absolute;z-index:4;left:var(--pad);right:var(--pad);bottom:22px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:15px}
.home-hero__transport button{display:flex;align-items:center;gap:8px;min-width:64px;padding:0;border:0;background:transparent;color:rgba(238,238,237,.8);font-size:8px;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}
.home-hero__transport button span{font-size:11px}.home-hero__transport button b{font-weight:300}
.home-hero__progress{height:1px;background:rgba(255,255,255,.25);overflow:hidden}
.home-hero__progress span{display:block;width:0;height:100%;background:#fff;transform-origin:left}
.home-hero__transport time{font-size:8px;letter-spacing:.08em;color:rgba(238,238,237,.64)}

.section-heading{display:grid;grid-template-columns:1fr minmax(300px,1.4fr);column-gap:clamp(34px,8vw,140px);align-items:end;margin-bottom:clamp(46px,7vw,96px)}
.section-heading .eyebrow{grid-column:1/-1}
.section-heading h2{margin:0;font-size:clamp(54px,7.2vw,128px);line-height:.88}
.section-heading>p:last-child{max-width:440px;margin:0 0 8px;color:var(--text-soft);font-size:clamp(15px,1.25vw,19px);line-height:1.55}
.work-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(24px,5vw,84px) 12px}
.work-card{min-width:0;grid-column:span 7}.work-card--2{grid-column:7/span 6;margin-top:clamp(80px,12vw,190px)}.work-card--3{grid-column:2/span 8}
.work-card__media{position:relative;display:block;overflow:hidden;background:#111;text-decoration:none}
.work-card__media img{width:100%;aspect-ratio:1.38/1;object-fit:cover;filter:saturate(.82) contrast(1.04);transition:transform 1.1s var(--ease),filter .5s ease}
.work-card__media>span{position:absolute;right:14px;top:14px;display:grid;place-items:center;width:44px;height:44px;border:1px solid rgba(255,255,255,.55);border-radius:50%;background:rgba(6,6,8,.18);color:#fff;backdrop-filter:blur(8px);transition:transform .35s var(--ease),background .25s ease}
.work-card__media:hover img{transform:scale(1.025);filter:saturate(1)}
.work-card__media:hover>span{transform:rotate(45deg);background:#fff;color:#060608}
.work-card__meta{display:grid;grid-template-columns:34px minmax(0,1fr);gap:15px;padding-top:15px;border-top:1px solid var(--line);margin-top:10px}
.work-card__meta>span{padding-top:4px;color:var(--text-soft);font-size:8px;letter-spacing:.12em}
.work-card__meta h3{margin:0;font-size:clamp(24px,2.4vw,44px);line-height:1}
.work-card__meta p{margin:7px 0 0;color:var(--text-soft);font-size:10px;line-height:1.45;text-transform:uppercase;letter-spacing:.1em}

.statement{min-height:90vh;display:flex;flex-direction:column;justify-content:center;overflow:hidden;background:linear-gradient(145deg,#12121a 0%,#060608 58%);color:#eeeeed}
.statement::after{content:'';position:absolute;width:min(48vw,700px);height:min(48vw,700px);right:-16vw;top:10%;border-radius:50%;background:radial-gradient(circle,rgba(36,120,240,.22),rgba(36,32,160,.1) 40%,transparent 70%);filter:blur(20px);pointer-events:none}
.statement h2{position:relative;z-index:1;max-width:1240px;margin:0;font-size:clamp(58px,9vw,168px);line-height:.86}
.statement__text{position:relative;z-index:1;align-self:flex-end;max-width:540px;margin:clamp(44px,7vw,96px) 0 0;color:rgba(238,238,237,.65);font-size:clamp(16px,1.4vw,22px);line-height:1.55}

.expertise .section-heading{grid-template-columns:1fr 2fr}
.expertise-list{border-top:1px solid var(--line)}
.expertise-row{display:grid;grid-template-columns:70px minmax(260px,1fr) minmax(260px,.8fr);align-items:center;gap:20px;min-height:136px;border-bottom:1px solid var(--line);transition:background .25s ease,padding .35s var(--ease)}
.expertise-row:hover{padding-left:16px;background:linear-gradient(90deg,rgba(36,120,240,.08),transparent 75%)}
.expertise-row>span{font-size:8px;color:var(--text-soft);letter-spacing:.12em}
.expertise-row h3{margin:0;font-size:clamp(32px,4vw,70px);line-height:.95}
.expertise-row p{max-width:440px;margin:0;color:var(--text-soft);font-size:14px;line-height:1.55}

.studio-block{display:grid;grid-template-columns:minmax(300px,.8fr) 1.2fr;gap:clamp(50px,10vw,170px);align-items:center;min-height:90vh;background:var(--surface)}
.studio-mark{position:relative;aspect-ratio:4/5;display:grid;place-items:center;overflow:hidden;border:1px solid var(--line);background:linear-gradient(145deg,rgba(36,32,160,.55),rgba(36,120,240,.12) 62%,transparent)}
.studio-mark::before{content:'';position:absolute;inset:11%;border:1px solid rgba(255,255,255,.25);border-radius:50%;transform:rotate(-18deg)}
.studio-mark::after{content:'';position:absolute;width:74%;height:74%;border:1px solid rgba(255,255,255,.12);border-radius:50%;transform:translate(18%,-12%)}
.studio-mark span{position:absolute;font-size:clamp(130px,18vw,300px);font-weight:900;line-height:.7;letter-spacing:-.14em;color:rgba(238,238,237,.92)}
.studio-mark span:first-child{transform:translate(-17%,-12%)}.studio-mark span:last-child{transform:translate(21%,16%);color:transparent;-webkit-text-stroke:1px rgba(238,238,237,.55)}
.studio-copy h2,.journal-block__copy h2{margin:0;font-size:clamp(52px,6.3vw,112px);line-height:.9}
.studio-copy>p:not(.eyebrow),.journal-block__copy>p:not(.eyebrow){max-width:650px;margin:35px 0 0;color:var(--text-soft);font-size:clamp(16px,1.4vw,21px);line-height:1.6}
.studio-signature{display:grid;gap:5px;margin-top:50px;padding-top:16px;border-top:1px solid var(--line)}
.studio-signature strong{font-size:13px;font-weight:500}.studio-signature span{color:var(--text-soft);font-size:9px;letter-spacing:.13em;text-transform:uppercase}

.journal-block{display:grid;grid-template-columns:1.25fr 1fr;gap:clamp(48px,9vw,150px);align-items:center;background:var(--paper);color:var(--ink)}
.journal-block .eyebrow,.journal-block__copy>p:not(.eyebrow){color:rgba(6,6,8,.6)}
[data-theme='light'] .journal-block{background:#060608;color:#eeeeed}
[data-theme='light'] .journal-block .eyebrow,[data-theme='light'] .journal-block__copy>p:not(.eyebrow){color:rgba(238,238,237,.62)}
.journal-block__image{position:relative;display:block;overflow:hidden;background:#111;text-decoration:none}
.journal-block__image img{width:100%;aspect-ratio:1.05/1;object-fit:cover;filter:saturate(.75);transition:transform .9s var(--ease),filter .35s ease}
.journal-block__image:hover img{transform:scale(1.025);filter:saturate(1)}
.journal-block__image span{position:absolute;left:14px;bottom:14px;padding:9px 11px;background:rgba(6,6,8,.76);color:#fff;font-size:8px;letter-spacing:.12em;text-transform:uppercase;backdrop-filter:blur(8px)}
.journal-block .text-link{border-color:rgba(6,6,8,.3)}
[data-theme='light'] .journal-block .text-link{border-color:rgba(238,238,237,.3)}

.contact-block{min-height:86vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:var(--surface)}
.contact-block h2{max-width:1300px;margin:0;font-size:clamp(58px,9vw,164px);line-height:.86;text-wrap:balance}
.contact-block__text{max-width:620px;margin:38px 0 0;color:var(--text-soft);font-size:clamp(16px,1.35vw,21px);line-height:1.6}
.contact-block .button-row{justify-content:center;margin-top:38px}

.site-footer{padding:44px var(--pad) 26px;border-top:1px solid var(--line);background:var(--ink)}
.site-footer__top{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:30px;padding-bottom:60px}
.site-footer__top p{justify-self:end;max-width:430px;margin:0;color:var(--text-soft);font-size:13px;line-height:1.55;text-align:right}
.site-footer__bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding-top:20px;border-top:1px solid var(--line);color:var(--text-soft);font-size:8px;letter-spacing:.1em}
.site-footer__bottom nav{display:flex;flex-wrap:wrap;gap:18px}.site-footer__bottom a{text-decoration:none}

.case-hero{position:relative;isolation:isolate;min-height:100vh;min-height:100svh;display:flex;align-items:flex-end;overflow:hidden;background:#060608;color:#eeeeed}
.case-hero>img,.case-hero__veil{position:absolute;z-index:0;inset:0;width:100%;height:100%}
.case-hero>img{object-fit:cover;filter:saturate(.8) contrast(1.06);animation:heroDrift 12s var(--ease) both}
.case-hero__veil{z-index:1;background:linear-gradient(180deg,rgba(6,6,8,.12),rgba(6,6,8,.2) 38%,rgba(6,6,8,.94) 92%),linear-gradient(90deg,rgba(6,6,8,.45),transparent 70%)}
.case-hero__copy{position:relative;z-index:2;width:100%;padding:calc(var(--header) + 50px) var(--pad) clamp(48px,8vh,88px)}
.back-link{display:inline-block;margin-bottom:clamp(44px,8vh,88px);color:rgba(238,238,237,.65);font-size:9px;letter-spacing:.1em;text-decoration:none;text-transform:uppercase}
.case-hero h1{max-width:1320px;margin:0;font-size:clamp(64px,10.5vw,188px);line-height:.83;text-wrap:balance}
.case-hero__lead{max-width:720px;margin:34px 0 0;font-size:clamp(18px,1.8vw,27px);line-height:1.38}
.case-hero dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;max-width:1040px;margin:clamp(42px,7vh,78px) 0 0;padding-top:16px;border-top:1px solid rgba(255,255,255,.38)}
.case-hero dl div{display:grid;gap:7px}.case-hero dt,.case-hero dd{margin:0}.case-hero dt{color:rgba(238,238,237,.54);font-size:8px;letter-spacing:.13em;text-transform:uppercase}.case-hero dd{font-size:11px;line-height:1.45}
.case-lang{position:absolute;z-index:3;right:var(--pad);top:calc(var(--header) + 22px);font-size:9px;letter-spacing:.13em;text-decoration:none}
@keyframes heroDrift{from{transform:scale(1.035)}to{transform:scale(1)}}

.case-film{padding-top:clamp(46px,7vw,100px);padding-bottom:clamp(46px,7vw,100px)}
.film-launch{position:relative;display:block;width:100%;aspect-ratio:16/9;overflow:hidden;background:#111;color:#fff;text-decoration:none}
.film-launch>img{width:100%;height:100%;object-fit:cover;filter:brightness(.58) saturate(.8);transition:transform .9s var(--ease),filter .35s ease}
.film-launch:hover>img{transform:scale(1.02);filter:brightness(.72) saturate(1)}
.film-launch__play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:16px;font-size:clamp(14px,1.5vw,20px)}
.film-launch__play b{display:grid;place-items:center;width:74px;height:74px;border:1px solid rgba(255,255,255,.8);border-radius:50%;font-size:17px;transition:transform .35s var(--ease),background .25s ease}
.film-launch:hover .film-launch__play b{transform:scale(1.08);background:#fff;color:#060608}
.film-launch small{position:absolute;left:14px;bottom:14px;font-size:8px;letter-spacing:.14em;text-transform:uppercase}
.film-player{position:relative;aspect-ratio:16/9;background:#000}.film-player iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

.case-narrative,.case-idea{display:grid;grid-template-columns:1fr 1fr;gap:clamp(46px,9vw,155px);align-items:center}
.case-copy h2{margin:0;font-size:clamp(50px,7vw,122px);line-height:.89}
.case-copy>p:last-child{max-width:690px;margin:34px 0 0;color:var(--text-soft);font-size:clamp(16px,1.35vw,21px);line-height:1.62}
.case-image{margin:0;overflow:hidden}.case-image img{width:100%;height:100%;object-fit:cover}
.case-image--tall{aspect-ratio:3/4}.case-image--wide{aspect-ratio:4/3}
.case-idea{background:var(--paper);color:var(--ink)}
.case-idea .eyebrow,.case-idea .case-copy>p:last-child{color:rgba(6,6,8,.6)}
[data-theme='light'] .case-idea{background:#060608;color:#eeeeed}
[data-theme='light'] .case-idea .eyebrow,[data-theme='light'] .case-idea .case-copy>p:last-child{color:rgba(238,238,237,.62)}
.case-gallery{display:grid;grid-template-columns:1.35fr .85fr .85fr;gap:12px;align-items:stretch}
.case-gallery img{width:100%;height:100%;min-height:340px;object-fit:cover}
.case-gallery img:first-child{aspect-ratio:4/3}.case-gallery img:nth-child(n+2){aspect-ratio:3/4}

.zia-modal{position:fixed;z-index:250;inset:0;display:grid;place-items:center;padding:18px;background:rgba(6,6,8,.78);backdrop-filter:blur(16px)}
.zia-modal[hidden]{display:none}
.zia-modal::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 28% 20%,rgba(36,120,240,.3),transparent 36%),radial-gradient(circle at 78% 80%,rgba(36,32,160,.36),transparent 42%);pointer-events:none}
.zia-modal__surface{position:relative;width:min(100%,980px);height:min(88vh,780px);overflow:hidden;border:1px solid rgba(255,255,255,.2);border-radius:18px;background:#09090d;color:#eeeeed;box-shadow:0 30px 100px rgba(0,0,0,.55)}
.zia-modal__header{height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;border-bottom:1px solid rgba(255,255,255,.12)}
.zia-modal__header>div{display:grid;grid-template-columns:auto auto;align-items:center;column-gap:9px}.zia-modal__header strong{font-size:13px}.zia-modal__header small{grid-column:2;color:rgba(238,238,237,.54);font-size:8px;letter-spacing:.1em;text-transform:uppercase}
.live-dot{grid-row:1/3;width:8px;height:8px;border-radius:50%;background:#44db8a;box-shadow:0 0 12px rgba(68,219,138,.6)}
.zia-modal__close{display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(255,255,255,.2);border-radius:50%;background:transparent;color:#fff;font-size:24px;line-height:1;cursor:pointer}
.zia-modal__chat{height:calc(100% - 64px);padding:12px}.zia-modal__chat iframe{display:block;width:100%;height:100%;border:0;border-radius:12px;background:#fff}

.cookie-banner{position:fixed;z-index:220;left:16px;right:16px;bottom:16px;display:flex;align-items:center;justify-content:space-between;gap:24px;max-width:920px;margin:auto;padding:16px;border:1px solid rgba(255,255,255,.18);background:rgba(6,6,8,.93);color:#eeeeed;box-shadow:0 12px 50px rgba(0,0,0,.35);backdrop-filter:blur(18px)}
.cookie-banner p{max-width:600px;margin:0;font-size:11px;line-height:1.5;color:rgba(238,238,237,.72)}
.cookie-banner p a{text-underline-offset:3px}.cookie-banner__actions{display:flex;gap:8px;flex-shrink:0}
.cookie-banner button{min-height:40px;padding:9px 12px;border:1px solid rgba(255,255,255,.35);background:transparent;color:#fff;font-size:9px;letter-spacing:.08em;cursor:pointer}
.cookie-banner button:first-child{background:#eeeeed;color:#060608}

.js .reveal{opacity:0;transform:translateY(28px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.js .reveal.is-visible{opacity:1;transform:none}

@media(max-width:980px){
  .desktop-nav{display:none}.menu-toggle{display:grid}.header-contact{display:none}
  .section-heading{grid-template-columns:1fr}.section-heading>p:last-child{margin-top:24px}
  .home-hero__bottom{grid-template-columns:1fr}.home-hero__bottom .button-row{justify-self:start}
  .work-card,.work-card--2,.work-card--3{grid-column:span 12;margin-top:0}.work-grid{row-gap:64px;column-gap:12px}
  .expertise-row{grid-template-columns:50px 1fr}.expertise-row p{grid-column:2}
  .studio-block{grid-template-columns:1fr 1fr;gap:45px}
  .journal-block{grid-template-columns:1fr 1fr;gap:45px}
  .case-narrative,.case-idea{gap:45px}
  .case-hero dl{grid-template-columns:1fr 1fr}.case-hero dl div:last-child{grid-column:1/-1}
}

@media(max-width:700px){
  :root{--pad:18px;--section:82px;--header:62px}
  .site-header{grid-template-columns:1fr auto;padding-left:18px;padding-right:12px}.site-header>.brand{justify-self:start}
  .header-actions{gap:4px}.lang-link{display:none}
  .home-hero__content{padding-top:calc(var(--header) + 42px);padding-bottom:112px}
  .home-hero h1{font-size:clamp(52px,16vw,82px);line-height:.87}
  .home-hero__bottom{gap:28px}.home-hero__lead{font-size:17px}.home-hero__bottom .button-row{display:grid;width:100%;grid-template-columns:1fr 1fr}.home-hero__bottom .button{gap:10px;padding:13px 12px}
  .home-hero__transport{bottom:16px}
  .home-hero__film{display:none}.home-hero__film-wrap{background-image:url('https://vz-6ee63225-1d3.b-cdn.net/fb236b91-945e-4262-bd0f-500a1d27329b/thumbnail.jpg')}
  .home-hero__transport button,.home-hero__transport time{display:none}
  .section-heading h2{font-size:clamp(50px,15vw,74px)}
  .work-grid{row-gap:52px;column-gap:12px}.work-card__media img{aspect-ratio:1.12/1}.work-card__meta{grid-template-columns:28px minmax(0,1fr)}.work-card__meta h3{font-size:31px}
  .statement{min-height:78vh}.statement h2{font-size:clamp(50px,14vw,72px)}.statement__text{align-self:flex-start;margin-top:42px}
  .expertise .section-heading{grid-template-columns:1fr}.expertise-row{grid-template-columns:34px 1fr;gap:8px 12px;padding:24px 0;min-height:0}.expertise-row:hover{padding-left:0}.expertise-row h3{font-size:clamp(35px,10.5vw,52px)}.expertise-row p{font-size:13px}
  .studio-block,.journal-block{grid-template-columns:1fr}.studio-mark{width:min(100%,480px);margin:auto}.studio-copy h2,.journal-block__copy h2{font-size:clamp(50px,14vw,72px)}
  .journal-block__image img{aspect-ratio:1.15/1}.journal-block__copy{padding-top:14px}
  .contact-block{min-height:78vh}.contact-block h2{width:100%;font-size:clamp(48px,13vw,68px)}.contact-block .button-row{display:grid;width:100%}.contact-block .button{width:100%}
  .site-footer__top{grid-template-columns:1fr;gap:28px;padding-bottom:42px}.site-footer__top p{justify-self:start;text-align:left}.site-footer__bottom{display:grid}.site-footer__bottom nav{gap:12px 16px}
  .case-hero{min-height:94svh}.case-hero__copy{padding-top:calc(var(--header) + 42px);padding-bottom:28px}.back-link{margin-bottom:38px}.case-hero h1{font-size:clamp(58px,17vw,86px)}.case-hero__lead{font-size:17px}.case-hero dl{grid-template-columns:1fr;margin-top:30px;gap:12px}.case-hero dl div:last-child{grid-column:auto}.case-lang{top:calc(var(--header) + 15px)}
  .case-film{padding-left:0;padding-right:0}.film-launch__play b{width:56px;height:56px}
  .case-narrative,.case-idea{grid-template-columns:1fr;gap:42px}.case-idea .case-image{order:2}.case-copy h2{font-size:clamp(48px,14vw,70px)}
  .case-gallery{grid-template-columns:1fr 1fr}.case-gallery img{min-height:0}.case-gallery img:first-child{grid-column:1/-1}.case-gallery img:nth-child(n+2){aspect-ratio:3/4}
  .zia-modal{padding:0}.zia-modal__surface{width:100%;height:100%;border:0;border-radius:0}.zia-modal__chat{padding:8px}
  .cookie-banner{left:10px;right:10px;bottom:10px;display:grid;width:auto;max-width:none;min-width:0;gap:14px}.cookie-banner p{min-width:0;overflow-wrap:anywhere}.cookie-banner__actions{display:grid;min-width:0;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.cookie-banner button{min-width:0;padding:9px 8px}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}
  .js .reveal{opacity:1;transform:none}
  .home-hero__film{display:none}
}
