

:root{
  --bg:#fff;
  --ink:#000;
  --ink-strong:#191919;
  --ink-body:#474747;
  
  --ink-soft:#6b6b6b;
  --ink-muted:#919191;
  --ink-faded:rgba(25,25,25,.6);
  --surface:#f5f5f5;
  --hairline:#eaeaea;

  --night:#111;

  --nav-h:85px;
  
  --edge:max(60px, calc((100% - 1800px) / 2));
  --night-2:#1b1b1b;

  --r-pill:40px;   
  --r-panel:16px;  

  --ease-out:cubic-bezier(.16,1,.3,1);
  --ease-in-out:cubic-bezier(.65,0,.35,1);
  --fast:.15s; --base:.25s; --slow:.4s;
  
  --hover:.42s; --ease-soft:cubic-bezier(.33,0,.2,1);
  
  --zoom:1.018; --zoom-t:.78s;
  
  --ease-entry:cubic-bezier(.22,.68,.3,1);
}

*{box-sizing:border-box}
html{letter-spacing:0}

html{scroll-behavior:smooth;background:#000}
body{
  margin:0;background:var(--bg);color:var(--ink-strong);
  font-family:"Inter Tight",sans-serif;font-weight:500;
  -webkit-font-smoothing:antialiased;
}
a{color:inherit;text-decoration:none}
button{font:inherit;border:0;background:none;padding:0;color:inherit}
img{display:block}
h1,h2,h3,p,figure,blockquote,figcaption{margin:0}
h2{font-size:clamp(32px,5.4vw,52px);line-height:1.02;font-weight:500;letter-spacing:-.02em}
h3{font-size:26px;line-height:1.2;font-weight:500}
p{font-size:16px;line-height:1.5;color:var(--ink-body)}
section[id]{scroll-margin-top:96px}
:focus-visible{outline:2px solid var(--ink-strong);outline-offset:3px}

.button{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  padding:11px 22px;border:0;border-radius:var(--r-pill);
  font-size:16px;line-height:1.4;white-space:nowrap;
  transition:background-color var(--hover) var(--ease-soft),color var(--hover) var(--ease-soft),box-shadow var(--hover) var(--ease-soft);
}

.button svg{width:12px;height:12px;stroke:currentColor;fill:none;stroke-width:1.5;transition:transform var(--hover) var(--ease-soft)}
.button:hover svg{transform:translateX(3px)}
.button-primary{background:#1a1a1a;color:#fff}
.button-primary:hover{background:#2a2a2a}
.button-secondary{background:var(--surface);color:var(--ink)}
.button-secondary:hover{background:#ededed}

.navbar{
  position:relative;z-index:50;
  display:flex;align-items:center;justify-content:space-between;
  padding:20px 60px;
}

.navbar.on-dark .brand{color:#fff}
.navbar.on-dark .nav-links a{color:rgba(255,255,255,.72)}
.navbar.on-dark .nav-links a:hover{color:#fff}
.navbar.on-dark .nav-burger svg{stroke:#fff}

.navbar .nav-action .button{
  background:rgba(0,0,0,.05);color:var(--ink-strong);
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.14);
  backdrop-filter:blur(14px) saturate(1.2);-webkit-backdrop-filter:blur(14px) saturate(1.2);
  transition:background-color var(--hover) var(--ease-soft),box-shadow var(--hover) var(--ease-soft),color var(--hover) var(--ease-soft);
}
.navbar .nav-action .button:hover{background:rgba(0,0,0,.1)}
.navbar.on-dark .nav-action .button{
  background:rgba(0,0,0,.34);color:#fff;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.32);
}
.navbar.on-dark .nav-action .button:hover{background:rgba(255,255,255,.14)}

.navcap{
  position:fixed;top:14px;left:50%;z-index:60;
  width:auto;max-width:calc(100vw - 28px);
  padding:16px 16px 16px 34px;gap:56px;
  
  border-radius:999px;
  background:rgba(255,255,255,.6);
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.09),0 12px 34px rgba(0,0,0,.1);
  backdrop-filter:blur(18px) saturate(1.6);-webkit-backdrop-filter:blur(18px) saturate(1.6);
  
  opacity:0;
  transform:translateX(-50%) translateY(calc(-100% - 22px));
  pointer-events:none;
  transition:transform .58s var(--ease-soft),
             opacity .34s var(--ease-soft),
             background-color var(--base) var(--ease-out),
             box-shadow var(--base) var(--ease-out);
}
.navcap.is-in{
  opacity:1;
  transform:translateX(-50%) translateY(0);
  pointer-events:auto;
  transition:transform .74s var(--ease-entry),
             opacity .32s var(--ease-entry),
             background-color var(--base) var(--ease-out),
             box-shadow var(--base) var(--ease-out);
}
.navcap.on-dark{
  background:rgba(16,16,16,.46);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.16),0 12px 34px rgba(0,0,0,.4);
}

.navcap .nav-links a{color:var(--ink-strong)}

.navcap .nav-links{flex:0 0 auto}
.navcap .nav-action{margin-left:2px}

.nav-menu{
  position:fixed;inset:0;z-index:70;display:none;
  flex-direction:column;align-items:flex-start;justify-content:center;
  gap:22px;padding:0 30px;background:var(--bg);
  opacity:0;pointer-events:none;transform:translateY(-8px);
  transition:opacity .3s ease,transform .4s var(--ease-out);
}
body.menu-open .nav-menu{opacity:1;pointer-events:auto;transform:none}
.nav-menu a{font-size:26px;color:var(--ink-strong);letter-spacing:-.03em}
.nav-menu a:hover{color:var(--ink)}
.nav-links{display:flex;gap:28px}
.nav-links a{font-size:16px;color:var(--ink-muted);white-space:nowrap;transition:color var(--hover) var(--ease-soft)}
.nav-links a:hover{color:var(--ink-strong)}
.brand{display:flex;align-items:center;color:var(--ink-strong)}
.brand svg{display:block;width:auto;height:23px}
.brand-nav{flex:0 0 auto}

.nav-links{flex:1 1 auto;justify-content:center}
.nav-action{flex:0 0 auto;display:flex;justify-content:flex-end;min-width:0}
.nav-burger{display:none;width:22px;height:22px}
.nav-burger svg{width:22px;height:22px;stroke:var(--ink-strong);fill:none;stroke-width:1.5}
.nav-burger .x{display:none}

.hero{
  position:relative;isolation:isolate;overflow:hidden;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  min-height:100vh;min-height:100svh;
  padding:72px 80px 44px;
  background:#000;text-align:center;
}

.hero:first-of-type{margin-top:calc(-1 * var(--nav-h));padding-top:calc(var(--nav-h) + 72px)}
.hero-media{position:absolute;inset:0;pointer-events:none;background:#000}

.hero-video{display:block;width:100%;height:100%;object-fit:cover;opacity:0;
  transition:opacity 1.5s var(--ease-entry) .3s}
body.ready .hero-video{opacity:1}

@media(max-aspect-ratio:1/1){
  
  .hero-video{object-fit:contain;transform:scale(1.75)}
}

.hero[data-film="dither"] .hero-media::after{
  content:"";position:absolute;inset:0;
  background-image:radial-gradient(circle,rgba(255,255,255,.2) 1px,transparent 1.5px);
  background-size:28px 28px;background-position:center;
  mix-blend-mode:lighten;
  -webkit-mask-image:radial-gradient(ellipse 75% 80% at 50% 50%,rgba(0,0,0,.35) 0,rgba(0,0,0,.35) 22%,#000 55%,transparent 100%);
          mask-image:radial-gradient(ellipse 75% 80% at 50% 50%,rgba(0,0,0,.35) 0,rgba(0,0,0,.35) 22%,#000 55%,transparent 100%);
  opacity:0;transition:opacity 1.5s var(--ease-entry) .3s;
}
body.ready .hero[data-film="dither"] .hero-media::after{opacity:1}

.hero-copy{position:relative;display:flex;flex-direction:column;align-items:center;gap:28px;max-width:900px}
.hero h1{
  position:relative;color:#fff;
  font-size:clamp(40px,5vw,72px);line-height:1;letter-spacing:-.025em;font-weight:500;
}

.hero-copy p{
  max-width:580px;font-size:18px;line-height:1.5;color:#fff;
  text-shadow:
    0 0 14px rgba(0,0,0,.92),
    0 0 46px rgba(0,0,0,.85),
    0 0 110px rgba(0,0,0,.75),
    0 0 200px rgba(0,0,0,.6);
}

.button-row{display:flex;flex-wrap:wrap;gap:12px}
.hero .button-primary{background:#fff;color:#111}
.hero .button-primary:hover{background:#e2e2e2}

.hero .button-secondary{
  background:rgba(0,0,0,.34);color:#fff;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.32);
  backdrop-filter:blur(14px) saturate(1.2);-webkit-backdrop-filter:blur(14px) saturate(1.2);
}
.hero .button-secondary:hover{background:rgba(255,255,255,.14)}

.hero-copy>*{opacity:0;transform:translateY(20px);filter:blur(10px);
  transition:opacity .7s var(--ease-entry) var(--d,0ms),transform .9s var(--ease-entry) var(--d,0ms),
             filter .7s var(--ease-entry) var(--d,0ms)}
body.ready .hero-copy>*{opacity:1;transform:none;filter:none}
.hero-copy h1{opacity:1;transform:none;filter:none;transition:none}
.hero-copy p{--d:420ms}
body.ready .hero-copy p{filter:blur(0px)}
.hero-copy .button-row{--d:540ms}

.hero h1 .hw{
  display:inline-block;opacity:0;transform:translateY(30px);filter:blur(14px);
  transition:opacity .8s var(--ease-entry) var(--d,0ms),transform 1.05s var(--ease-entry) var(--d,0ms),
             filter .85s var(--ease-entry) var(--d,0ms);
}
body.ready .hero h1 .hw{opacity:1;transform:none;filter:blur(0px)}

.hero h1 .hw,.hero-copy>*:not(h1){will-change:transform,opacity,filter}

.section,.trusted{width:100%;max-width:1920px;margin:0 auto;padding:96px 60px}
.trusted{text-align:center;padding-top:72px;padding-bottom:56px}
.trusted .eyebrow{margin-bottom:0}
.eyebrow{font-size:18px;line-height:1.5;color:var(--ink-muted)}
.section-heading{max-width:720px;margin:0 0 60px}
.section-heading .eyebrow{margin-bottom:16px}

.section-heading--center{max-width:640px;margin:0 auto 48px;text-align:center}
.section-heading--center p{margin-left:auto;margin-right:auto}
.section-heading p:not(.eyebrow){margin-top:20px;font-size:18px;line-height:1.5;max-width:560px}

.marquee{margin-top:38px;overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 120px,#000 calc(100% - 120px),transparent);
  mask-image:linear-gradient(90deg,transparent,#000 120px,#000 calc(100% - 120px),transparent)}
.marquee-track{display:flex;width:max-content;align-items:center;animation:marquee 80s linear infinite}
.marquee-group{display:flex;align-items:center;gap:84px;padding-right:84px;flex:0 0 auto}

.marquee img{
  width:auto;height:32px;object-fit:contain;
  opacity:.6;transition:opacity var(--hover) var(--ease-soft);
}
@keyframes marquee{to{transform:translateX(-50%)}}

.disc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.disc-card{min-width:0}

.disc-card:nth-child(1){--accent:#B4530E}
.disc-card:nth-child(2){--accent:#1856db}
.disc-card:nth-child(3){--accent:#6B4FA8}
.disc-visual{aspect-ratio:1;border-radius:var(--r-panel);overflow:hidden;background:var(--ph,#f7f7f5)}

.disc-visual img{width:100%;height:100%;object-fit:cover;transition:transform var(--zoom-t) var(--ease-soft)}
.disc-card:hover .disc-visual img{transform:scale(var(--zoom))}
.disc-label{display:flex;align-items:center;gap:8px;margin:24px 0 10px;color:var(--accent)}
.disc-label svg{width:18px;height:18px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}

.disc-label svg.disc-icon{fill:currentColor;stroke:none}
.disc-label h3{font-size:20px;line-height:1.25;color:currentColor}
.disc-card>p{font-size:18px;line-height:1.4}

.disc-more{display:flex;justify-content:center;margin-top:56px}

@media(max-width:860px){.disc-grid{grid-template-columns:1fr;gap:52px}}

.works-head{display:flex;align-items:baseline;justify-content:space-between;gap:24px;flex-wrap:wrap;row-gap:14px;margin-bottom:28px}
.work-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.work-card{display:block;min-width:0}
.work-media{
  position:relative;aspect-ratio:2/3;overflow:hidden;
  border-radius:var(--r-panel);background:var(--ph,#f0efec);
}

.work-src{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform var(--zoom-t) var(--ease-soft)}
.work-card:hover .work-src{transform:scale(var(--zoom))}
.work-foot{padding-top:18px}
.work-name{font-size:16px;line-height:1.3;color:var(--ink-strong)}
.work-desc{margin-top:6px;font-size:16px;line-height:1.35;color:var(--ink-muted)}
.work-more{display:flex;justify-content:center;margin-top:56px}

@media(max-width:1199px){.work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}}
@media(max-width:960px){.work-grid{grid-template-columns:1fr;gap:44px}.work-media{aspect-ratio:16/11}}

.archive{background:#000;color:#fff;overflow:hidden}

.wheel-zone{position:relative;margin-top:64px;width:100%;height:521px;overflow:hidden;pointer-events:none}
.wheel{position:absolute;left:50%;top:0;width:0;height:0}
.wheel .disc{position:absolute;left:0;top:0;will-change:transform}
.card{
  position:absolute;left:0;top:0;
  border-radius:var(--r-panel);overflow:hidden;
  background:var(--ph,#232323);
  border:1px solid rgba(255,255,255,.07);
  pointer-events:auto;   
}
.card img{width:100%;height:100%;object-fit:cover}

.wheel-fade{display:none}

.closing{max-width:1920px;margin:0 auto;padding:64px 60px}
.closing-panel{
  display:grid;grid-template-columns:minmax(0,.82fr) minmax(380px,1fr);
  gap:88px;padding:56px 0;
  max-width:1180px;margin-inline:auto;
}
.closing-panel h2{max-width:440px}
.closing-note{margin-top:22px;max-width:400px;font-size:18px;line-height:1.45}
.closing-content{align-self:center}
.closing-content>p{font-size:22px;line-height:1.15;color:var(--ink-strong)}
.closing-content .button-row{margin-top:32px;align-items:center}

.page-head{
  margin-top:calc(-1 * var(--nav-h));
  padding:calc(var(--nav-h) + 96px) 60px 20px;
  text-align:center;
}
.page-head>*{max-width:640px;margin-inline:auto}
.page-head h1{font-size:clamp(40px,5vw,72px);line-height:1;letter-spacing:-.025em;font-weight:500;color:var(--ink-strong)}
.page-head__note{margin-top:24px;font-size:18px;line-height:1.45;color:var(--ink-body)}

.page-head h1,.page-head__note{
  opacity:0;transform:translateY(22px);filter:blur(10px);
  transition:opacity .8s var(--ease-entry) var(--d,0ms),
             transform 1s var(--ease-entry) var(--d,0ms),
             filter .85s var(--ease-entry) var(--d,0ms);
}
.page-head h1{--d:260ms}
.page-head__note{--d:400ms}
body.ready .page-head h1,body.ready .page-head__note{opacity:1;transform:none;filter:none}

.contact-layout{
  display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1fr);
  gap:88px;align-items:start;max-width:1180px;margin-inline:auto;
}
.contact-details{display:flex;flex-direction:column;gap:44px}
.contact-details>div{display:flex;flex-direction:column;align-items:flex-start;gap:9px}
.contact-details strong{margin-bottom:8px;font-size:18px;line-height:1.2;font-weight:500;color:var(--ink-strong)}
.contact-details address,.contact-details a{
  font-style:normal;font-size:16px;line-height:1.45;color:var(--ink-muted);
  transition:color var(--hover) var(--ease-soft);
}
.contact-details a:hover{color:var(--ink-strong)}
@media(max-width:960px){.contact-layout{grid-template-columns:1fr;gap:52px}}
@media(max-width:620px){
  .page-head{padding:calc(var(--nav-h) + 64px) 20px 8px}
  .contact-details{gap:34px}
}

.cform{width:100%}
.cform-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
.cform .field{margin-bottom:18px;min-width:0}
.cform label{display:block;margin-bottom:8px;font-size:14px;line-height:1.4;color:var(--ink-muted)}
.cform label .req{color:var(--ink-muted);opacity:.7}
.cform input[type="text"],
.cform input[type="email"],
.cform textarea,
.cform .select-display{
  width:100%;padding:13px 16px;border:1px solid transparent;border-radius:8px;
  background:var(--surface);color:var(--ink-strong);
  font-family:inherit;font-weight:500;font-size:16px;line-height:1.4;
  outline:none;-webkit-appearance:none;appearance:none;
  transition:background-color var(--base) var(--ease-out),border-color var(--base) var(--ease-out);
  -webkit-text-fill-color:var(--ink-strong);
  -webkit-box-shadow:0 0 0 1000px var(--surface) inset;
  box-shadow:0 0 0 1000px var(--surface) inset;
}
.cform input:-webkit-autofill,
.cform input:-webkit-autofill:hover,
.cform input:-webkit-autofill:focus{
  -webkit-box-shadow:0 0 0 1000px #f5f5f5 inset;
  -webkit-text-fill-color:#191919;
  transition:background-color 5000s ease-in-out 0s;
}
.cform input::placeholder,.cform textarea::placeholder{color:var(--ink-muted);-webkit-text-fill-color:var(--ink-muted)}
.cform input:focus,.cform textarea:focus,.cform .custom-select.open .select-display{border-color:var(--ink-strong)}
.cform input.error,.cform textarea.error,.cform .custom-select.error .select-display{border-color:#e0403f}
.cform textarea{resize:none;overflow:hidden;min-height:150px;line-height:1.5;display:block;box-shadow:none;-webkit-box-shadow:none}

.cform .custom-select{position:relative;user-select:none}
.cform .select-display{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;color:var(--ink-muted);box-shadow:none;-webkit-box-shadow:none}
.cform .select-display.has-value{color:var(--ink-strong)}
.cform .select-arrow{display:flex;flex:0 0 auto;transition:transform var(--base) var(--ease-out)}
.cform .select-arrow svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.6}
.cform .custom-select.open .select-arrow{transform:rotate(180deg)}
.cform .select-dropdown{
  display:none;position:absolute;z-index:20;top:calc(100% + 6px);left:0;right:0;
  padding:6px;border-radius:8px;background:#fff;
  border:1px solid var(--hairline);box-shadow:0 14px 40px rgba(0,0,0,.10);
}
.cform .custom-select.open .select-dropdown{display:block}
.cform .select-option{
  padding:11px 14px;border-radius:6px;font-size:15px;line-height:1.3;
  color:var(--ink-body);cursor:pointer;
  transition:background-color var(--hover) var(--ease-soft),color var(--hover) var(--ease-soft);
}
.cform .select-option:hover{background:var(--surface);color:var(--ink-strong)}

.cform .error-msg{
  margin-top:6px;font-size:13px;line-height:1.3;color:#e0403f;
  min-height:17px;visibility:hidden;opacity:0;transition:opacity var(--base) ease;
}
.cform .field.show-error .error-msg{visibility:visible;opacity:1}
.cform-send{margin-top:10px}
.cform-note{margin:16px 0 0;font-size:14px;line-height:1.5;opacity:.6}
.cform-note a{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.cform-success{display:none;padding:28px 0;font-size:20px;line-height:1.45;color:var(--ink-strong)}
@media(max-width:620px){.cform-grid{grid-template-columns:1fr;gap:0}}

footer{background:#000;padding:88px var(--edge) 44px}
footer .brand{color:#fff}

.footer-main{display:flex;justify-content:space-between;gap:72px;align-items:flex-start}
.brand-footer svg{height:52px}

.footer-address{margin-top:26px;font-style:normal;font-size:16px;line-height:1.35;color:rgba(255,255,255,.5)}
.footer-col{display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.footer-col strong{margin-bottom:20px;font-size:18px;line-height:1.2;font-weight:500;color:#fff;white-space:nowrap}
.footer-col a{font-size:16px;line-height:1.35;color:rgba(255,255,255,.5);white-space:nowrap;transition:color var(--hover) var(--ease-soft)}
.footer-col a:hover,.footer-bottom a:hover{color:#fff}
.footer-social{display:flex;gap:20px}
.footer-social a{display:flex;color:#fff;transition:opacity var(--hover) var(--ease-soft)}
.footer-social a:hover{opacity:.55}
.footer-social svg{width:21px;height:21px}

.footer-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-top:68px;font-size:14px;text-transform:uppercase;color:rgba(255,255,255,.4)}

.chap{
  --chap-ink:var(--ink-strong);
  --chap-soft:var(--ink-soft);
  --chap-faint:var(--ink-muted);
  --chap-line:var(--hairline);
  position:relative;
  max-width:1920px;margin:0 auto;padding:140px 60px;
  color:var(--chap-ink);
}
.chap--dark{
  --chap-ink:#fff;
  --chap-soft:rgba(255,255,255,.66);
  --chap-faint:rgba(255,255,255,.5);
  --chap-line:rgba(255,255,255,.14);
  max-width:none;background:#000;
}
.chap-head h2{color:var(--chap-ink)}
.chap-head .eyebrow{margin-bottom:18px;color:var(--chap-faint)}
.chap-head p{margin:26px 0 0;max-width:520px;font-size:18px;line-height:1.5;color:var(--chap-soft)}

.chap-head--center{max-width:900px;margin-left:auto;margin-right:auto;text-align:center}

.chap-head--center p{max-width:620px;margin-left:auto;margin-right:auto;text-wrap:balance}

.vidcar-btn{
  display:grid;place-items:center;width:42px;height:42px;padding:0;
  border:1px solid rgba(255,255,255,.32);border-radius:50%;cursor:pointer;
  background:transparent;color:#fff;
  transition:border-color var(--hover) var(--ease-soft),
             background-color var(--hover) var(--ease-soft),
             opacity var(--hover) var(--ease-soft);
}
.vidcar-btn svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.5}
.vidcar-btn:hover{border-color:rgba(255,255,255,.85);background:rgba(255,255,255,.08)}
.vidcar-btn:disabled{opacity:.28;cursor:default}
.vidcar-btn:disabled:hover{border-color:rgba(255,255,255,.32);background:transparent}

.belt-rail{overflow:hidden}

.belt-track{display:flex;width:max-content;animation:adroll var(--beltdur,81s) linear infinite}
.belt-group{display:flex;gap:16px;padding-right:16px;flex:0 0 auto}
@keyframes adroll{to{transform:translateX(-50%)}}
.belt-cell{
  flex:0 0 auto;width:450px;aspect-ratio:4/5;
  border-radius:var(--r-panel);overflow:hidden;background:var(--ph,#f2efe9);
}
.belt-cell img{display:block;width:100%;height:100%;object-fit:cover}

@media(max-width:1199px){
  :root{--edge:max(40px, calc((100% - 1800px) / 2))}
  .chap{padding:112px 40px}

  .belt-cell{width:360px}
  .belt-track{animation-duration:66s}
}
@media(max-width:860px){

  .chap-head p{max-width:none}
}
@media(max-width:620px){
  :root{--edge:max(20px, calc((100% - 1800px) / 2))}
  .chap{padding:84px 20px}

  .chap-head p{font-size:17px;margin-top:22px}

  .belt-cell{width:min(66vw,300px)}
  .belt-track{animation-duration:54s}
}

.film-frame{
  position:relative;max-width:1600px;margin:0 auto;
  aspect-ratio:16/9;border-radius:var(--r-panel);overflow:hidden;background:#0b0b0b;
}
.film-frame video{display:block;width:100%;height:100%;object-fit:cover}

.vimeo:not(.vidcar-slide){position:relative}
.vimeo-play,.vimeo iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.vimeo-play{display:block;cursor:pointer;background:#0b0b0b}
.vimeo-play img{width:100%;height:100%;object-fit:cover;transition:opacity var(--hover) var(--ease-soft)}
.vimeo-play:hover img{opacity:.82}
.vimeo-disc{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  display:grid;place-items:center;width:96px;height:96px;border-radius:50%;
  color:#fff;background:rgba(0,0,0,.34);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.4);
  backdrop-filter:blur(14px) saturate(1.2);-webkit-backdrop-filter:blur(14px) saturate(1.2);
  transition:background-color var(--hover) var(--ease-soft);
}
.vimeo-play:hover .vimeo-disc{background:rgba(255,255,255,.18)}

.vimeo-disc svg{display:block;width:48px;height:48px}

@media(max-width:620px){.vimeo-disc{width:68px;height:68px}.vimeo-disc svg{width:34px;height:34px}}

.chap--film .chap-head{margin-bottom:64px}
.chap--film .chap-head p{max-width:640px}
.chap--film .film-frame{max-width:1440px}

.jury{max-width:1180px;margin:32px auto 0;padding:0 24px}
.jury-label{font-size:14px;line-height:1.4;color:rgba(255,255,255,.5);text-align:center}
.jury-row{list-style:none;margin:40px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 36px}

.jury-card{
  display:flex;align-items:center;gap:12px;
}

.jury-copy{min-width:0}
.jury-name{display:flex;align-items:center;gap:5px;margin:0}
.jury-name span{
  font-size:12px;line-height:1.15;font-weight:500;text-transform:uppercase;letter-spacing:.03em;
  background:linear-gradient(180deg,#f3dc9a,#c9a04a);-webkit-background-clip:text;background-clip:text;color:transparent;
}
.laurel{flex:0 0 auto;width:7px;height:14px;fill:#d2ab57;color:#d2ab57}
.laurel:last-child{transform:scaleX(-1)}
.jury-bio{margin:5px 0 0;font-size:12px;line-height:1.35;color:rgba(255,255,255,.46)}
.jury-bio strong{font-weight:500;color:#fff}
@media(max-width:1199px){.jury-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}}
@media(max-width:620px){.jury{padding:0}.jury-row{grid-template-columns:1fr;gap:18px}}

.film-sound{
  position:absolute;right:16px;bottom:16px;z-index:2;
  display:inline-flex;align-items:center;gap:8px;
  padding:9px 16px;border:1px solid rgba(255,255,255,.34);border-radius:var(--r-pill);
  background:rgba(0,0,0,.32);color:#fff;cursor:pointer;
  font-size:15px;line-height:1.2;
  transition:border-color var(--hover) var(--ease-soft),background-color var(--hover) var(--ease-soft);
}
.film-sound:hover{border-color:rgba(255,255,255,.85);background:rgba(0,0,0,.5)}
.film-sound svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}

.pj-strip{display:grid;gap:16px}
.pj-strip--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.pj-strip--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.pj-strip--4{grid-template-columns:repeat(4,minmax(0,1fr))}

.pj-frame{
  aspect-ratio:var(--ar,4/5);border-radius:var(--r-panel);overflow:hidden;
  background:var(--ph,#eef1f6);
}

.pj-frame img{display:block;width:100%;height:100%;object-fit:cover}

.pj-frame[data-parallax] img{will-change:transform}

.pj-stats{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));
  
  gap:44px 32px;margin-top:112px;
}
.pj-stat{text-align:center;padding:0 8px}
.pj-stat dt{
  font-size:clamp(44px,4.6vw,68px);line-height:1;letter-spacing:-.03125em;
  font-weight:500;color:#fff;
  
  font-variant-numeric:tabular-nums;
}

.pj-stats.reveal--lines>*{
  transform:translateY(34px);filter:blur(12px);
  transition:opacity .8s var(--ease-entry) var(--ld,0ms),
             transform 1s var(--ease-entry) var(--ld,0ms),
             filter .85s var(--ease-entry) var(--ld,0ms);
}
.pj-stats.reveal--lines.lit>*{filter:none}
.pj-stat dd{margin:16px 0 0;font-size:16px;line-height:1.4;color:rgba(255,255,255,.6)}

.pj-more{padding-top:132px}

.pj-more .works-head{align-items:flex-end;margin-bottom:40px}
.pj-more .works-head h2{margin-top:6px}

@media(max-width:1199px){
  .pj-stats{margin-top:88px;gap:40px 24px}
}
@media(max-width:960px){

  .pj-stats{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:72px;gap:44px 24px}
  .pj-strip--4{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  .pj-strip--2{grid-template-columns:1fr}
  
  .pj-strip--3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pj-strip--3 .pj-frame:last-child{grid-column:span 2;aspect-ratio:16/10}

  .pj-more{padding-top:88px}
}

body.subpage::before{
  content:"";position:fixed;inset:0;z-index:200;
  background:var(--bg);pointer-events:none;
  animation:veil-lift .55s var(--ease-entry) both;
}
@keyframes veil-lift{from{opacity:1}to{opacity:0}}

body.leaving{opacity:0;transition:opacity .26s var(--ease-soft)}

.reveal{opacity:0;transform:translateY(20px);transition:opacity .6s var(--ease-entry),transform .7s var(--ease-entry);transition-delay:var(--rd,0ms)}
.reveal.lit{opacity:1;transform:none}

.reveal--lines{opacity:1;transform:none;transition:none}
.reveal--lines>*{
  opacity:0;transform:translateY(24px);
  transition:opacity .6s var(--ease-entry) var(--ld,0ms),transform .75s var(--ease-entry) var(--ld,0ms);
}
.reveal--lines.lit>*{opacity:1;transform:none}

.reveal--card{opacity:1;transform:none;transition:none}
.reveal--card .work-media,.reveal--card .disc-visual,.reveal--card .pj-frame{
  opacity:0;transform:translateY(52px);filter:blur(16px);
  transition:opacity .9s var(--ease-entry) var(--rd,0ms),
             transform 1.15s var(--ease-entry) var(--rd,0ms),
             filter .95s var(--ease-entry) var(--rd,0ms);
}
.reveal--card.lit .work-media,.reveal--card.lit .disc-visual,.reveal--card.lit .pj-frame{opacity:1;transform:none;filter:none}
.reveal--card .work-foot,.reveal--card .disc-label,.reveal--card>p{
  opacity:0;transform:translateY(24px);filter:blur(7px);
  transition:opacity .75s var(--ease-entry) calc(var(--rd,0ms) + 180ms),
             transform .9s var(--ease-entry) calc(var(--rd,0ms) + 180ms),
             filter .75s var(--ease-entry) calc(var(--rd,0ms) + 180ms);
}
.reveal--card.lit .work-foot,.reveal--card.lit .disc-label,.reveal--card.lit>p{
  opacity:1;transform:none;filter:none;
}

.film-frame.reveal{
  opacity:0;transform:translateY(72px) scale(.955);filter:blur(18px);
  transition:opacity 1s var(--ease-entry),
             transform 1.35s var(--ease-entry),
             filter 1.1s var(--ease-entry);
}
.film-frame.reveal.lit{opacity:1;transform:none;filter:none}

@media(max-width:1199px){
  .hero{padding-left:40px;padding-right:40px}
  .navbar{padding-left:40px;padding-right:40px}
  .section,.trusted,.closing,footer{padding-left:40px;padding-right:40px}
}
@media(max-width:960px){
  .closing-panel{grid-template-columns:1fr;gap:44px}
  .footer-main{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px}
  .footer-main>.footer-brand{grid-column:1 / -1}
  .closing-panel{padding:44px 0}
}
@media(max-width:767px){
  .navbar{padding:16px 20px}
  .navcap{top:10px;padding:12px 12px 12px 22px;gap:16px;border-radius:999px}
  
  .nav-links{display:none}
  .nav-action{display:none}
  .nav-burger{display:block;z-index:80}
  .brand-nav{position:static;transform:none}
  .nav-menu{display:flex}

  body.menu-open .navbar,body.menu-open .navcap{z-index:80}
  body.menu-open .nav-burger .menu{display:none}
  body.menu-open .nav-burger .x{display:block}
  
  body.menu-open .navbar .brand{color:var(--ink-strong)}
  body.menu-open .navbar .nav-burger svg{stroke:var(--ink-strong)}
  body.menu-open .navcap{background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}

  .hero{min-height:min(100svh,760px);padding:64px 20px}
  .hero:first-of-type{padding-top:calc(var(--nav-h) + 64px)}
  .hero h1{letter-spacing:-.03em}
  .hero-copy{gap:22px}
  .hero-copy p{font-size:16px}

  .section{padding:64px 20px}
  .trusted{padding:44px 20px}
  .closing,footer{padding-left:20px;padding-right:20px}

  .wheel-zone{margin-bottom:150px}
  .marquee{-webkit-mask-image:linear-gradient(90deg,transparent,#000 50px,#000 calc(100% - 50px),transparent);mask-image:linear-gradient(90deg,transparent,#000 50px,#000 calc(100% - 50px),transparent)}
  .marquee span{font-size:20px}

  .closing-content>p{font-size:19px}
  .footer-main{display:grid;grid-template-columns:1fr;gap:36px}
  .footer-bottom{flex-direction:column;align-items:flex-start;gap:22px;margin-top:44px}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;transition-delay:0ms!important}
  .hero-copy>*,.hero h1 .hw,.reveal,.reveal--lines>*,
  
  .pj-stats.reveal--lines>*,.film-frame.reveal,.reveal--card .work-media,.reveal--card .disc-visual,.reveal--card .pj-frame,.reveal--card .work-foot,.reveal--card .disc-label,.reveal--card>p,.page-head h1,.page-head__note{opacity:1;transform:none;filter:none}

  body.subpage::before{display:none}

  .marquee-track,.belt-track{transform:none;animation:none}
}

.badge-new{
  position:absolute;top:14px;left:14px;z-index:2;isolation:isolate;overflow:hidden;
  display:inline-flex;align-items:center;gap:6px;
  padding:6px 13px 6px 10px;border-radius:var(--r-pill);
  font-size:13px;line-height:1.3;color:#0b0b0b;background:#fff;
  box-shadow:0 2px 10px rgba(0,0,0,.14);
}
.badge-new svg{width:12px;height:12px}
.badge-new::before{
  content:"";position:absolute;z-index:-1;left:50%;top:50%;width:170%;aspect-ratio:1;translate:-50% -50%;
  background:conic-gradient(from 0deg,#fff,#c9ccd3,#fff,#e4e6ea,#fff,#bfc3cb,#fff);
  filter:blur(6px);animation:badge-drift 7s linear infinite;
}
.badge-new::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(255,255,255,.9)}
@keyframes badge-drift{to{rotate:360deg}}
@media(prefers-reduced-motion:reduce){.badge-new::before{animation:none}}

.badge-new{text-transform:uppercase;letter-spacing:.04em;font-size:12px}

.film-mark{display:block;width:auto;height:62px;margin:0 auto 28px}
@media(max-width:620px){.film-mark{height:50px;margin-bottom:22px}}

.work-freeze{opacity:0;pointer-events:none;transition:opacity 0s}
.work-freeze.on{opacity:1;transition:opacity .7s var(--ease-soft)}

.work-card:hover video.work-src{transform:none}

.work-media video.work-src,.work-media .work-freeze{inset:-1px;width:calc(100% + 2px);height:calc(100% + 2px)}

.belt-rail--wide .belt-cell{width:840px;aspect-ratio:16/9}

.belt-track--rev{animation-direction:reverse}
.belt-fig{flex:0 0 auto;margin:0}
.belt-fig figcaption{margin-top:14px;font-size:16px;line-height:1.35;color:var(--chap-soft)}
@media(max-width:1199px){.belt-rail--wide .belt-cell{width:620px}}
@media(max-width:620px){.belt-rail--wide .belt-cell{width:min(78vw,340px)}.belt-fig figcaption{font-size:15px;margin-top:12px}}

.belt-rail--wide .belt-track{animation-duration:var(--beltdur,110s)}

.pj-stack{display:grid;gap:32px;padding-top:32px}
.pj-stack .pj-strip{gap:32px}
@media(max-width:620px){.pj-stack,.pj-stack .pj-strip{gap:16px}.pj-stack{padding-top:16px}}

body.page-dark{
  --bg:#000;--ink:#fff;--ink-strong:#fff;--ink-body:rgba(255,255,255,.8);
  --ink-soft:rgba(255,255,255,.66);--ink-muted:rgba(255,255,255,.5);
  --ink-faded:rgba(255,255,255,.6);--surface:#161616;--hairline:rgba(255,255,255,.14);
}
.page-dark main .button-primary{background:#fff;color:#000}
.page-dark main .button-primary:hover{background:#e6e6e6}
.page-dark main .button-secondary:hover{background:#222}
.page-dark .cform .select-dropdown{background:#161616;box-shadow:0 14px 40px rgba(0,0,0,.5)}
.page-dark .cform .select-option:hover{background:#242424}
.page-dark .cform input:-webkit-autofill,
.page-dark .cform input:-webkit-autofill:hover,
.page-dark .cform input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 1000px #161616 inset;-webkit-text-fill-color:#fff}

.pj-stats--3{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:40px}

.pj-swatch{display:flex;flex-direction:column;justify-content:flex-end;gap:6px;aspect-ratio:4/3;
  padding:24px;border-radius:var(--r-panel);background:var(--sw);color:#fff;
  box-shadow:inset 0 0 0 1px var(--hairline);font-size:18px}
.pj-swatch strong{font-weight:500}
.pj-swatch span{font-size:14px;opacity:.7}
.pj-swatch--light{color:#000}
.pj-strip--3.pj-trio .pj-frame:last-child{grid-column:auto;aspect-ratio:var(--ar)}
@media(max-width:960px){.pj-stats--3{grid-template-columns:1fr}}

.belt-nav{display:flex;justify-content:center;gap:8px;margin-top:36px}
.belt-sub{display:block;margin-top:2px;font-size:14px;color:var(--chap-faint)}

@property --spin{syntax:"<angle>";inherits:true;initial-value:0deg}

.props-copy{position:relative;max-width:min(600px,calc(var(--Rx)*2 - var(--s)*2 - 96px));text-align:center}
.props-copy p{margin-top:22px;font-size:17px;line-height:1.5;color:var(--chap-soft);text-wrap:balance}
@media(max-width:820px){
  .props-copy{max-width:none;position:static}
  .props-copy p{position:absolute;left:0;right:0;top:100%;margin:28px auto 0;max-width:440px;font-size:16px}
}

.pj-strip--6{grid-template-columns:repeat(6,minmax(0,1fr))}
@media(max-width:960px){
  .pj-strip--6{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:620px){.pj-strip--6{grid-template-columns:repeat(2,minmax(0,1fr))}}

.pj-palette{--p:0;--mx:0;--my:0;display:grid;gap:38px;width:min(100%,580px);margin:0 auto;padding:120px 0 96px}
.pj-palette .pj-swatch{
  aspect-ratio:auto;justify-content:center;gap:8px;padding:28px 32px;border-radius:20px;font-size:clamp(22px,2vw,29px);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.36);
  
  transform:translate(calc(var(--mx)*var(--m,0px)),calc(var(--p)*var(--d,0px) + var(--my)*var(--m,0px)*.6))
            rotate(calc(var(--r,0deg) + var(--p)*var(--dr,0deg) + var(--mx)*var(--mr,0deg)));
  will-change:transform;
}
.pj-palette .pj-swatch--light{box-shadow:none}
.pj-palette .pj-swatch span{font-size:clamp(15px,1.2vw,18px);opacity:.85}
.pj-palette .pj-swatch:nth-child(1){--r:-6deg;--dr:3deg;--d:-26px;--m:26px;--mr:1.2deg}
.pj-palette .pj-swatch:nth-child(2){--r:1deg;--dr:-2deg;--d:10px;--m:-14px;--mr:-.8deg;z-index:1}
.pj-palette .pj-swatch:nth-child(3){--r:-6deg;--dr:2.5deg;--d:-14px;--m:18px;--mr:1deg}
.pj-palette .pj-swatch:nth-child(4){--r:1deg;--dr:-1.5deg;--d:22px;--m:-22px;--mr:-.6deg;z-index:1}
@media(max-width:620px){.pj-palette{padding:72px 0 56px}.pj-palette .pj-swatch{padding:24px 26px;border-radius:18px}}

.pj-bleed{width:100vw;margin-left:calc(50% - 50vw)}
.pj-bleed .pj-frame{border-radius:0}

.pj-open{max-width:1920px;margin:0 auto;padding:calc(var(--nav-h) + 96px) 60px 0}
.pj-open-title{
  margin-bottom:44px;font-size:clamp(52px,8.6vw,150px);line-height:.96;
  font-weight:500;letter-spacing:-.045em;color:var(--ink);text-wrap:balance;
}
.pj-open-title span{color:var(--ink-muted)}
.pj-info{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;
  padding:36px 0 0;
}
.pj-facts{margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-content:start}
.pj-facts dt{font-size:14px;line-height:1.4;color:var(--ink-muted)}
.pj-facts dd{margin:6px 0 0;font-size:16px;line-height:1.4;color:var(--ink)}
.pj-intro{font-size:clamp(22px,2.1vw,32px);line-height:1.25;letter-spacing:-.02em;color:var(--ink)}
.pj-big{gap:16px;padding-top:120px}
.pj-big .pj-strip{gap:16px}
.pj-row{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;
  margin-top:104px;padding:28px 0 56px;border-top:1px solid var(--hairline);
}
.pj-row:first-child{margin-top:0}
.pj-row h2{font-size:18px;line-height:1.4;letter-spacing:0;font-weight:500;color:var(--ink-muted)}
.pj-row p{font-size:clamp(22px,2.1vw,32px);line-height:1.25;letter-spacing:-.02em;color:var(--ink)}
.pj-stats--row{margin:clamp(56px,6vw,96px) 0 72px}
.pj-big .pj-palette{padding:104px 0 88px}
@media(max-width:1199px){.pj-open{padding-left:40px;padding-right:40px}}
@media(max-width:960px){
  .pj-info,.pj-row{grid-template-columns:1fr;gap:20px}
  .pj-row{margin-top:72px;padding-bottom:36px}
  .pj-big{padding-top:80px}
}
@media(max-width:620px){
  .pj-open{padding:calc(var(--nav-h) + 56px) 20px 0}
  .pj-open-title{margin-bottom:28px}
  .pj-facts{grid-template-columns:1fr;gap:16px}
  .pj-big,.pj-big .pj-strip{gap:10px}
}

.page-dark .pj-frame:empty,.page-dark .belt-cell:empty{background:#17171d!important}

.theme-dot{
  width:12px;height:12px;padding:0;margin-right:22px;border-radius:50%;cursor:pointer;
  background:#000;border:1.5px solid #000;
  transition:border-color var(--hover) var(--ease-soft),background-color var(--base) var(--ease-out);
}
.theme-dot:hover{border-color:#000}
body.page-dark .theme-dot{background:#fff;border-color:#fff}
body.page-dark .theme-dot:hover{border-color:#fff}
::view-transition-old(root),::view-transition-new(root){animation-duration:.7s;animation-timing-function:cubic-bezier(.4,0,.2,1)}

body.theme-light .hero[data-invert]{filter:invert(1) hue-rotate(180deg)}

body.theme-light .chap--dark[data-invert]{
  --chap-ink:#111;--chap-soft:rgba(0,0,0,.62);--chap-faint:rgba(0,0,0,.5);--chap-line:rgba(0,0,0,.12);
  background:#fff;
}
body.theme-light [data-invert] .jury-label{color:rgba(0,0,0,.5)}
body.theme-light [data-invert] .jury-bio{color:rgba(0,0,0,.5)}
body.theme-light [data-invert] .jury-bio strong{color:#111}

body.theme-light footer[data-invert]{background:#fff}
body.theme-light footer .brand,
body.theme-light .footer-col strong,
body.theme-light .footer-social a,
body.theme-light .footer-col a:hover,
body.theme-light .footer-bottom a:hover{color:#111}
body.theme-light .footer-address,
body.theme-light .footer-col a{color:rgba(0,0,0,.5)}
body.theme-light .footer-bottom{color:rgba(0,0,0,.45)}

html:has(body.theme-light){background:#fff}

.nav-action{align-items:center;width:161px}
.navcap .nav-action{margin-left:0}
.theme-dot{margin-right:22px;flex-shrink:0}

@property --ring{syntax:"<angle>";inherits:true;initial-value:0deg}
@keyframes ringturn{to{--ring:360deg}}
.closing{isolation:isolate}
.closing-panel{
  --ring-grad:conic-gradient(from var(--ring),transparent 0 52%,#8fb8ff 62%,#c9a6ff 72%,#ffb48a 82%,#9ff0d8 90%,transparent 98%);
  position:relative;border-radius:36px;padding:72px 64px;
  background:
    radial-gradient(60% 55% at 0% 100%,rgba(255,170,140,.13),transparent 70%),
    radial-gradient(60% 55% at 100% 100%,rgba(120,220,200,.12),transparent 70%),
    var(--bg);
  box-shadow:inset 0 0 0 1px var(--hairline);
  animation:ringturn 9s linear infinite;
}
.closing-panel::before,.closing-panel::after{
  content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:var(--ring-grad);
}
.closing-panel::before{
  padding:1.5px;
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;
}
.closing-panel::after{z-index:-1;inset:-2px;filter:blur(34px);opacity:.38}
.closing-panel>*{position:relative}
@media(max-width:960px){.closing-panel{padding:48px 32px;border-radius:28px}}
@media(max-width:620px){.closing-panel{padding:36px 20px;border-radius:22px}}
@media(prefers-reduced-motion:reduce){.closing-panel{animation:none}}

.disc-label{--g1:#f4f6ff;--g2:#bcd2ff;--g3:#f4f6ff;--g4:#d9c8ff}
body:not(.page-dark) .disc-label{--g1:#16181d;--g2:#3f5fb8;--g3:#16181d;--g4:#6f55b5}
.disc-label h3{
  background:linear-gradient(90deg,var(--g1),var(--g2),var(--g3),var(--g4),var(--g1)) 0 0/400% 100% repeat-x;
  -webkit-background-clip:text;background-clip:text;color:transparent;
  animation:titleflow 14s linear infinite;
}
.disc-label svg{animation:iconflow 14s linear infinite}
@keyframes titleflow{to{background-position:133.333% 0}}
@keyframes iconflow{0%,100%{color:var(--g1)}25%{color:var(--g4)}50%{color:var(--g3)}75%{color:var(--g2)}}
.disc-card:nth-child(2) .disc-label h3,.disc-card:nth-child(2) .disc-label svg{animation-delay:-4.6s}
.disc-card:nth-child(3) .disc-label h3,.disc-card:nth-child(3) .disc-label svg{animation-delay:-9.3s}
@media(prefers-reduced-motion:reduce){.disc-label h3,.disc-label svg{animation:none}}

.navcap{gap:80px}

.badge-new::before{
  background:conic-gradient(from 0deg,#fff,#bcd2ff,#fff,#d9c8ff,#fff,#bcd2ff,#fff,#d9c8ff,#fff);
}

.badge-new::before{
  left:0;top:0;width:100%;height:100%;aspect-ratio:auto;translate:none;rotate:none;filter:none;
  background:linear-gradient(100deg,#fff 0%,#dbe6ff 18%,#fff 36%,#e9defe 54%,#fff 72%,#dbe6ff 90%,#fff 108%) 0 0/360% 100% repeat-x;
  animation:badgeflow 10s linear infinite;
}
@keyframes badgeflow{to{background-position:138.46% 0}}
@media(prefers-reduced-motion:reduce){.badge-new::before{animation:none}}

.closing-panel{max-width:1320px;grid-template-columns:minmax(0,1fr) minmax(380px,1fr);gap:72px}
.closing-panel h2{max-width:none}
.closing-note{max-width:440px}
@media(max-width:960px){.closing-panel{grid-template-columns:1fr;gap:44px}}

.closing-lead{display:flex;flex-direction:column;justify-content:flex-start;gap:52px}

.closing-direct{margin:0;display:grid;gap:28px}
.closing-direct>div{display:grid;grid-template-columns:84px minmax(0,1fr);align-items:baseline;gap:16px}
.closing-direct dt{font-size:14px;line-height:1.4;color:var(--ink-muted)}
.closing-direct dd{margin:0;font-size:17px;line-height:1.45;color:var(--ink)}
.closing-direct a{transition:opacity var(--hover) var(--ease-soft)}
.closing-direct a:hover{opacity:.65}
@media(max-width:620px){.closing-direct>div{grid-template-columns:1fr;gap:4px}}

.closing{padding-bottom:140px}
@media(max-width:620px){.closing{padding-bottom:88px}}

.pj-frame--embed>.rc{width:100%;height:100%;max-width:none}

.pj-frame--palette{display:grid;place-items:center;overflow:hidden}
.pj-frame--palette .pj-palette,.pj-big .pj-frame--palette .pj-palette{width:66%;padding:0;gap:clamp(18px,2.6vw,38px)}
.pj-frame--palette .pj-swatch{padding:clamp(14px,1.9vw,28px) clamp(16px,2.2vw,32px);font-size:clamp(16px,1.7vw,26px)}
.pj-frame--palette .pj-swatch span{font-size:clamp(12px,1.05vw,16px)}
.pj-frame video{display:block;width:100%;height:100%;object-fit:cover}

.pj-set{position:relative;display:flex;align-items:center;justify-content:center;gap:clamp(14px,3.4vw,64px)}
.pj-set .ph{flex:none;width:var(--w,19%);aspect-ratio:1170/2532;border-radius:clamp(10px,1.5vw,26px);overflow:hidden;
  box-shadow:0 30px 60px -30px rgba(0,0,0,.45),0 0 0 1px rgba(255,255,255,.08);will-change:transform}
.pj-set--trio .ph--lead{--w:22%}

.pj-set--crop{align-items:flex-start}
.pj-set--crop .ph{--w:64%;margin-top:11%;border-bottom-left-radius:0;border-bottom-right-radius:0}
.pj-set--fan{--p:0;gap:0}
.pj-set--fan .ph{--w:35%}
.pj-set--fan .ph:nth-child(1){transform:translate(8%,3%) rotate(calc(-7deg - var(--p)*3deg))}
.pj-set--fan .ph:nth-child(2){transform:translate(-8%,-3%) rotate(calc(7deg + var(--p)*3deg))}

@media(max-width:620px){
  .pj-set--trio{--ar:1!important;aspect-ratio:1;gap:10px}
  .pj-set--trio .ph{--w:27%}.pj-set--trio .ph--lead{--w:31%}
}

.pj-bleed + .pj-strip{margin-top:clamp(48px,7vw,112px)}

.pj-set--play .ph{--w:38%;position:relative}
.ph--seq img{position:absolute;inset:0;transform:translateX(100%)}
.ph--seq img.on,.ph--seq img.off{transition:transform .8s cubic-bezier(.7,0,.2,1)}
.ph--seq img.on{transform:none}
.ph--seq img.off{transform:translateX(-100%)}
.pj-set--fan3 .ph{--w:31%}
.pj-set--fan3 .ph:nth-child(1){transform:translate(22%,4%) rotate(calc(-9deg - var(--p)*3deg))}
.pj-set--fan3 .ph:nth-child(2){transform:none;z-index:1;--w:34%}
.pj-set--fan3 .ph:nth-child(3){transform:translate(-22%,4%) rotate(calc(9deg + var(--p)*3deg))}

.pj-frame--doc iframe{display:block;width:100%;height:100%;border:0;pointer-events:none}

.pj-drift,.pj-big .pj-drift{--p:0;gap:clamp(48px,8vw,150px);padding:clamp(80px,11vw,170px) clamp(0px,4vw,64px)}
.pj-drift .pj-frame{will-change:translate}
.pj-drift .pj-frame:nth-child(1){translate:0 calc(var(--p)*-50px)}
.pj-drift .pj-frame:nth-child(2){translate:0 calc(var(--p)*-130px)}
.pj-drift .pj-frame:nth-child(3){translate:0 calc(var(--p)*-210px)}
@media(max-width:620px){.pj-drift,.pj-big .pj-drift{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:80px 0}}

@media(min-width:961px){.pj-more .work-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}

.hero-media{-webkit-mask-image:linear-gradient(#000 calc(100% - 64px),rgba(0,0,0,.2) 100%);mask-image:linear-gradient(#000 calc(100% - 64px),rgba(0,0,0,.2) 100%)}

@media(min-width:961px){.page-work #work .work-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 16px}}

.pj-frame--doc iframe{opacity:1}
.pj-frame--doc iframe.fit{opacity:1}

.pj-open-title--line{font-size:clamp(38px,5.2vw,88px);line-height:1.02;letter-spacing:-.04em;max-width:14em}

.pj-open .film-frame{max-width:none}
.pj-row>div>p{font-size:clamp(22px,2.1vw,32px);line-height:1.25;letter-spacing:-.02em;color:var(--ink)}

.pj-stack .belt-rail{margin:0 calc(50% - 50vw)}

.pj-facts{grid-template-columns:repeat(3,auto);justify-content:space-between;column-gap:40px}
.pj-facts dd{max-width:20em}
@media(max-width:620px){.pj-facts{grid-template-columns:1fr;justify-content:stretch}}

.pj-swap{position:relative}
.pj-swap>img{position:absolute;inset:0;opacity:0;transition:opacity .6s ease}
.pj-swap>img.on{opacity:1}
.pj-swap-dots{position:absolute;right:clamp(14px,2vw,28px);bottom:clamp(14px,2vw,28px);display:flex;gap:10px;z-index:1}
.pj-swap-dot{all:unset;cursor:pointer;width:15px;height:15px;border-radius:50%;box-sizing:border-box;transition:box-shadow .25s}
.pj-swap-dot--white{background:#fff;box-shadow:0 0 0 1px rgba(0,0,0,.18)}

.pj-swap-dot.on{box-shadow:0 0 0 2px rgba(255,255,255,.9),0 0 0 3.5px #009dff}
.pj-swap-dot--white.on{box-shadow:0 0 0 2px #fff,0 0 0 3.5px #009dff}
.pj-swap-dot:focus-visible{outline:2px solid #009dff;outline-offset:3px}
.pj-frame--doc:not(:has([data-phone])) iframe{opacity:1}

:root{--pj-gap:clamp(48px,7vw,140px)}
.pj-info,.pj-row{column-gap:var(--pj-gap)}
.pj-info{row-gap:44px}

.pj-big .pj-drift--full{gap:16px;padding-left:0;padding-right:0}

.pj-frame:has(>.pj-tag){position:relative}
.pj-tag{position:absolute;left:clamp(14px,1.6vw,24px);top:clamp(14px,1.6vw,24px);z-index:2;padding:7px 13px;border-radius:99px;
  font-size:13px;line-height:1;color:#fff;background:rgba(12,12,12,.55);
  -webkit-backdrop-filter:blur(12px) saturate(140%);backdrop-filter:blur(12px) saturate(140%);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.14);pointer-events:none}

.pj-swap-dots{left:50%;right:auto;translate:-50% 0}
.pj-swap-dot{background:var(--c,#fff)!important;box-shadow:0 0 0 1px rgba(127,127,127,.45)!important}
.pj-swap-dot.on{box-shadow:0 0 0 2px var(--c,#fff),0 0 0 3.5px var(--ring,#fff)!important}
.pj-swap-dot{box-shadow:0 0 0 1px rgba(0,0,0,.28),0 0 0 2px rgba(255,255,255,.35)!important}
.pj-swap-dot.on{box-shadow:0 0 0 2px var(--c,#fff),0 0 0 3.5px var(--ring,#fff),0 0 0 4.5px rgba(0,0,0,.3)!important}

.pj-big .pj-drift{padding-bottom:24px}
.pj-big#work{padding-bottom:32px}
.pj-more{padding-top:96px}
.pj-swap-dot--dark:not(.on){box-shadow:inset 0 0 0 1.5px #fff!important}
.pj-swap-dot--dark.on{box-shadow:inset 0 0 0 1.5px #fff,0 0 0 2px var(--c),0 0 0 3.5px #fff!important}
.pj-swap-dot--lime:not(.on){box-shadow:inset 0 0 0 1.5px #0c0c0c,0 0 0 1px rgba(255,255,255,.35)!important}
.pj-swap-dot--lime.on{box-shadow:inset 0 0 0 1.5px #0c0c0c,0 0 0 2px var(--c),0 0 0 3.5px #0c0c0c!important}

.pj-swap-dot,.pj-swap-dot.on{transition:opacity .3s ease,scale .3s ease}
.pj-swap-dot{opacity:.4;scale:.86}
.pj-swap-dot.on{opacity:1;scale:1}
.pj-swap-dot:hover{opacity:.8}
.pj-swap-dot.on,.pj-swap-dot:not(.on){box-shadow:0 0 0 1px rgba(127,127,127,.5)!important}
.pj-swap-dot--dark.on,.pj-swap-dot--dark:not(.on){box-shadow:inset 0 0 0 1.5px #fff!important}
.pj-swap-dot--lime.on,.pj-swap-dot--lime:not(.on){box-shadow:inset 0 0 0 1.5px #0c0c0c!important}
.pj-swap-dot--white.on,.pj-swap-dot--white:not(.on){box-shadow:inset 0 0 0 1.5px rgba(0,0,0,.25)!important}

.pj-lineup{--p:0;width:100vw;margin-left:calc(50% - 50vw);overflow:hidden;padding:clamp(24px,3vw,48px) 0}
.pj-lineup-row{display:flex;justify-content:center;align-items:center;gap:clamp(12px,1.8vw,32px);translate:calc(var(--p)*-3vw) 0;will-change:translate}
.pj-lineup .ph{flex:none;width:clamp(150px,17vw,330px);aspect-ratio:1170/2532;border-radius:clamp(14px,1.9vw,36px);overflow:hidden;
  box-shadow:0 30px 60px -30px rgba(0,0,0,.8),0 0 0 1px rgba(255,255,255,.06)}
.pj-lineup .ph--lead{width:clamp(180px,21vw,410px)}
.pj-lineup .ph img{display:block;width:100%;height:100%;object-fit:cover}
.pj-lineup .ph{border-radius:clamp(10px,1.15vw,22px)}
.pj-lineup .ph--lead{border-radius:clamp(12px,1.4vw,27px)}

.pj-lineup .ph,.pj-lineup .ph--lead{border-radius:clamp(10px,1.5vw,26px)}

.pj-stat dt{color:var(--ink)}
.pj-stat dd{color:var(--ink-muted)}

.pj-strip--air{padding:calc(4.7% - 16px) 0}

.pj-mac-frame{display:grid;place-items:center}
.pj-mac{position:relative;width:86%;aspect-ratio:1727/1130}
.pj-frame .pj-mac img{position:relative;z-index:1;width:100%;height:100%;object-fit:contain;pointer-events:none}
.pj-mac-screen{position:absolute;z-index:0;left:14.48%;top:4.78%;width:70.64%;height:67.52%;overflow:hidden;background:#fff}
.pj-mac-screen iframe{position:absolute;left:0;top:0;width:1440px;border:0;transform-origin:0 0}

.pj-mac-screen iframe{pointer-events:none}
.pj-mac-frame{position:relative}
.pj-mac-nav{position:absolute;left:calc(81.7% + 24px);top:39.6%;translate:0 -50%;display:flex;flex-direction:column;gap:8px;z-index:2}

.pj-mac-btn{width:42px;height:42px;border-radius:50%;padding:0;cursor:pointer;display:grid;place-items:center;
  border:1px solid rgba(12,12,12,.32);background:transparent;color:#0c0c0c;
  transition:border-color var(--hover) var(--ease-soft),background-color var(--hover) var(--ease-soft),opacity var(--hover) var(--ease-soft)}
.pj-mac-btn:hover{border-color:rgba(12,12,12,.85);background:rgba(12,12,12,.06)}
.pj-mac-btn:disabled{opacity:.28;cursor:default}
.pj-mac-btn:disabled:hover{border-color:rgba(12,12,12,.32);background:transparent}
.pj-mac-btn svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}

.pj-mac-btn{border-color:rgba(12,12,12,.55)}
.pj-mac-btn:disabled{opacity:.35}
.pj-mac-btn:disabled:hover{border-color:rgba(12,12,12,.55)}
.pj-mac-btn svg{stroke-width:1.7}
.pj-mac-play .i-play{fill:currentColor;stroke:none}
.pj-mac-play .i-pause,.pj-mac-play.on .i-play{display:none}
.pj-mac-play.on .i-pause{display:block}

.ph--seq img{transform:none!important;opacity:0}
.ph--seq img.off{opacity:1;z-index:0;transition:none}
.ph--seq img.on{opacity:1;z-index:1;transition:opacity .6s var(--ease-soft)}

.pj-mac-nav{align-items:center}
.pj-mac-play{width:52px;height:52px}
.pj-mac-play svg{width:20px;height:20px}
.pj-mac-play .i-pause{stroke-width:2.6;stroke-linecap:round}

.pj-ep{position:relative;isolation:isolate;overflow:hidden;border-radius:var(--r-panel);background:#050507;
  padding:clamp(48px,6vw,104px) clamp(24px,5vw,88px);display:grid;place-items:center}

.pj-ep::after{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 35% 50%,transparent 30%,rgba(5,5,7,.75) 100%)}
.pj-ep-inner{display:flex;align-items:center;gap:clamp(40px,5vw,96px)}
.pj-ep-video{flex:none;height:min(82vh,860px);aspect-ratio:9/16;border-radius:clamp(14px,1.6vw,24px);overflow:hidden;
  box-shadow:0 50px 120px rgba(0,0,0,.65),0 0 0 1px rgba(255,255,255,.08)}
.pj-ep-video video{display:block;width:100%;height:100%;object-fit:cover;background:#000}

@media(max-width:960px){
  .pj-ep-inner{flex-direction:column;gap:32px}
  .pj-ep-video{height:auto;width:min(100%,380px)}
}

.pj-ep-video{position:relative}
.pj-ep-video video{cursor:pointer}
.pl-big{position:absolute;left:50%;top:50%;translate:-50% -50%;width:76px;height:76px;border-radius:50%;padding:0;cursor:pointer;
  display:grid;place-items:center;color:#fff;border:1px solid rgba(255,255,255,.3);
  background:rgba(12,12,12,.35);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
  transition:opacity var(--base) var(--ease-soft),scale var(--base) var(--ease-soft)}
.pl-big svg{width:28px;height:28px;fill:currentColor;margin-left:3px}
.pl-big:hover{scale:1.06}
[data-player].playing .pl-big{opacity:0;scale:.9;pointer-events:none}

.pl-track{position:relative;height:14px;cursor:pointer;touch-action:none}
.pl-track::before,.pl-buf,.pl-fill{content:"";position:absolute;left:0;top:50%;height:3px;translate:0 -50%;border-radius:3px;transition:height var(--hover) var(--ease-soft)}
.pl-track::before{right:0;background:rgba(255,255,255,.22)}
.pl-buf{width:0;background:rgba(255,255,255,.35)}
.pl-fill{width:0;background:#fff}
.pl-fill::after{content:"";position:absolute;right:-6px;top:50%;width:12px;height:12px;border-radius:50%;background:#fff;translate:0 -50%;scale:0;transition:scale var(--hover) var(--ease-soft)}
.pl-track:hover::before,.pl-track:hover .pl-buf,.pl-track:hover .pl-fill{height:5px}
.pl-track:hover .pl-fill::after,.pl-track.drag .pl-fill::after{scale:1}

.pl-btn{width:36px;height:36px;padding:0;border:0;border-radius:50%;background:transparent;color:#fff;cursor:pointer;display:grid;place-items:center;
  transition:background-color var(--hover) var(--ease-soft)}
.pl-btn:hover{background:rgba(255,255,255,.12)}
.pl-btn svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.pl-btn .i-play{fill:currentColor;stroke:none}
.pl-btn .i-pause,[data-player].playing .pl-btn .i-play{display:none}
[data-player].playing .pl-btn .i-pause{display:block}
.pl-btn .i-on,[data-player].sound .pl-btn .i-off{display:none}
[data-player].sound .pl-btn .i-on{display:block}

[data-player]:fullscreen{width:100%;height:100%;aspect-ratio:auto;border-radius:0;background:#000}
[data-player]:fullscreen video{object-fit:contain}
[data-player]:-webkit-full-screen{width:100%;height:100%;aspect-ratio:auto;border-radius:0;background:#000}
[data-player]:-webkit-full-screen video{object-fit:contain}

.pl-side{position:absolute;right:14px;bottom:28px;display:flex;flex-direction:column;gap:12px;z-index:2}
.pl-side .pl-btn{width:46px;height:46px;border:1px solid rgba(255,255,255,.22);
  background:rgba(12,12,12,.38);-webkit-backdrop-filter:blur(14px) saturate(140%);backdrop-filter:blur(14px) saturate(140%)}
.pl-side .pl-btn:hover{background:rgba(12,12,12,.58)}
.pl-side .pl-btn svg{width:20px;height:20px}
[data-player] > .pl-track{position:absolute;left:0;right:0;bottom:0;height:16px;z-index:2}
[data-player] > .pl-track::before,[data-player] > .pl-track .pl-buf,[data-player] > .pl-track .pl-fill{top:auto;bottom:0;translate:none;border-radius:0}
[data-player]:fullscreen .pl-side{right:calc(50% - min(50vw, 100vh * 9 / 32) + 18px)}
[data-player]:fullscreen > .pl-track{left:50%;right:auto;width:min(100%,calc(100vh * 9 / 16));translate:-50% 0}

.pj-ep{background:none;border-radius:0;padding:clamp(24px,3vw,48px) 0 0;overflow:visible}
.pj-ep::after{display:none}
.pj-ep-video{box-shadow:none;outline:1px solid var(--hairline);outline-offset:-1px}

[data-player] > .pl-track{opacity:0;transition:opacity var(--base) var(--ease-soft)}
[data-player]:hover > .pl-track,[data-player] > .pl-track:focus-visible,[data-player] > .pl-track.drag{opacity:1}
@media(hover:none){[data-player] > .pl-track{opacity:1}}

.pj-ep-video{height:min(84vh,880px);aspect-ratio:952/1951;border-radius:0;overflow:visible;outline:none;box-shadow:none;
  filter:drop-shadow(0 40px 80px rgba(0,0,0,.45))}
.pj-ep-screen{position:absolute;left:4.517%;top:1.896%;width:90.966%;height:96.207%;overflow:hidden;
  border-radius:12.5% / 5.8%;background:#000}
.pj-ep-screen video{display:block;width:100%;height:100%;object-fit:cover}
.pj-ep-phone{position:absolute;inset:0;width:100%;height:100%;z-index:3;pointer-events:none}
.pj-ep-screen .pl-side{bottom:34px;right:12px}
.pj-ep-screen > .pl-track{bottom:14px;left:18%;right:18%;width:auto}
[data-player].pj-ep-screen:fullscreen{position:static;width:100%;height:100%;border-radius:0}
@media(max-width:960px){.pj-ep-video{height:auto;width:min(100%,360px)}}

.pj-ep{background:#0f0f11;border-radius:var(--r-panel);padding:clamp(48px,6vw,96px) 24px;overflow:hidden}
.pj-ep-inner{justify-content:center}
.pj-big .pj-stills{gap:16px}

.pj-link{display:inline-flex;align-items:center;gap:8px;font-size:16px;color:var(--ink);text-decoration:none;
  background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;padding-bottom:3px;
  transition:background-size var(--base) var(--ease-out)}
.pj-link:hover{background-size:100% 1px}
.pj-link svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.5}

body.theme-light .pj-logo-spin{filter:invert(1)}

.pj-ep{background:#0f0f11 url("files/images/genesis-ex/iphone_background.webp") center/cover no-repeat}
.pj-ep-cta{display:flex;justify-content:center;margin-top:clamp(28px,3vw,44px)}

.film-mark-below{display:flex;justify-content:center;margin-top:clamp(40px,5vw,72px)}
.film-mark-below .film-mark{margin-bottom:0}

.props-fly{position:relative;width:100vw;margin-left:calc(50% - 50vw);height:min(100vh,940px);min-height:620px;
  overflow:hidden;display:grid;place-items:center;isolation:isolate}
.pf-field{position:absolute;inset:0;z-index:0}
.pf-card{position:absolute;left:50%;top:50%;width:230px;aspect-ratio:16/10;border-radius:12px;overflow:hidden;
  background:#111;opacity:0;will-change:transform,opacity;box-shadow:0 20px 50px rgba(0,0,0,.5)}
.pf-card img{display:block;width:100%;height:100%;object-fit:cover}
.props-fly::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:radial-gradient(ellipse 38% 34% at 50% 50%,rgba(0,0,0,.85),transparent 100%)}
.pf-copy{position:relative;z-index:2;max-width:520px;padding:0 24px;text-align:center}
.pf-copy h2{font-size:clamp(34px,4.4vw,64px);line-height:1.02;letter-spacing:-.035em;font-weight:500;color:#fff}
.pf-copy p{margin-top:20px;font-size:17px;line-height:1.5;color:rgba(255,255,255,.66);text-wrap:balance}
@media(max-width:620px){.pf-card{width:130px}}
.pf-card{opacity:1}

.pf-field{perspective:1000px;perspective-origin:50% 50%}

.pf-card{width:200px;backface-visibility:hidden}

.pf-field{perspective:1300px;perspective-origin:50% 50%}

.pf-card{left:auto;top:auto;width:auto;aspect-ratio:4/3;border-radius:7%;backface-visibility:hidden;
  margin:0;translate:-50% -50%;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),0 20px 50px rgba(0,0,0,.45)}
.pf-card img{opacity:var(--in,0)}

.props-fly{height:min(100vh,1000px);min-height:700px}
.pf-copy{max-width:900px}
.pf-copy p{max-width:760px;margin-left:auto;margin-right:auto}
.props-fly::after{background:radial-gradient(ellipse 46% 40% at 50% 50%,rgba(0,0,0,.9),transparent 100%)}

.dv-combo{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:clamp(16px,2vw,32px)}
.dv-combo + .dv-combo{margin-top:clamp(24px,3vw,48px)}
.dv-parts{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.dv-parts .pj-frame{border-radius:calc(var(--r-panel) * .6)}
.dv-parts .pj-tag{font-size:12px;padding:6px 11px}

.dv-shot{position:relative}
@media(max-width:960px){
  .dv-combo{grid-template-columns:1fr}
}

.dv-slider{overflow:hidden}
.dv-track{display:flex;transition:transform .9s cubic-bezier(.65,0,.25,1)}
.dv-track > .dv-combo{flex:0 0 100%;min-width:0}
.dv-track > .dv-combo + .dv-combo{margin-top:0}
.dv-slider .belt-nav{margin-top:clamp(28px,3vw,44px)}

.dv-track{display:grid;transition:none;transform:none!important}
.dv-track > .dv-combo{grid-area:1 / 1;opacity:0;visibility:hidden;transition:opacity .7s var(--ease-soft),visibility 0s .7s}
.dv-track > .dv-combo.on{opacity:1;visibility:visible;transition:opacity .7s var(--ease-soft),visibility 0s}

.dv-bar{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:12px;margin-top:clamp(28px,3vw,44px)}
.dv-bar button{all:unset;cursor:pointer;padding:10px 0}
.dv-bar button:focus-visible{outline:1px solid var(--ink-muted);outline-offset:4px;border-radius:4px}
.dv-bar i{position:relative;display:block;height:2px;border-radius:2px;background:var(--hairline);overflow:hidden}
.dv-bar i::after{content:"";position:absolute;inset:0;background:var(--ink);transform-origin:left;transform:scaleX(var(--f,0))}
.dv-slider .dv-bar + .belt-nav{margin-top:20px}

.dv-parts .pj-frame{aspect-ratio:16/9}

.dv-parts:has(.dv-wide){width:67%;justify-self:end}

.dv-parts,.dv-parts:has(.dv-wide){display:block;position:relative;width:100%;aspect-ratio:16/9;gap:0}
.dv-parts .pj-frame{position:absolute;left:calc(var(--x) * 1%);top:calc(var(--y) * 1%);width:calc(var(--w) * 1%);aspect-ratio:16/9;
  border-radius:calc(var(--r-panel) * .55);rotate:calc(var(--r) * 1deg);
  box-shadow:0 18px 40px rgba(0,0,0,.5),0 0 0 1px rgba(255,255,255,.06);
  transition:rotate .5s var(--ease-out),scale .5s var(--ease-out),translate .9s var(--ease-out),opacity .7s var(--ease-soft);
  transition-delay:calc(var(--k) * 90ms)}
.dv-combo:not(.on) .dv-parts .pj-frame{opacity:0;translate:-24px 14px;scale:.94;transition-delay:0s}
.dv-parts .pj-frame:hover{rotate:0deg;scale:1.05;z-index:9;transition-delay:0s}

@media(max-width:960px){.dv-parts,.dv-parts:has(.dv-wide){width:100%}}

.dv-combo{gap:clamp(12px,1.4vw,24px)}

.dv-parts .pj-frame{transition:rotate .5s var(--ease-out),scale .5s var(--ease-out),translate .8s var(--ease-out),opacity .8s var(--ease-soft);
  transition-delay:calc(150ms + var(--k) * 80ms)}
.dv-combo:not(.on) .dv-parts .pj-frame{opacity:0;translate:0 18px;scale:1;transition-duration:0s;transition-delay:.75s}
.dv-parts .pj-frame:hover{transition-delay:0s}

.dv-combo{display:flex;flex-direction:column;align-items:center;gap:0;position:relative}
.dv-parts,.dv-parts:has(.dv-wide){display:flex;justify-content:center;gap:clamp(10px,1.2vw,18px);width:100%;aspect-ratio:auto;position:relative;z-index:1}
.dv-parts .pj-frame{position:relative;left:auto;top:auto;rotate:0deg;flex:0 1 220px;width:auto;aspect-ratio:16/9;
  border-radius:calc(var(--r-panel) * .5);box-shadow:0 0 0 1px var(--hairline);
  transition:opacity .6s var(--ease-soft),translate .7s var(--ease-out);transition-delay:calc(100ms + var(--k) * 90ms)}
.dv-parts .pj-frame:hover{rotate:0deg;scale:1}
.dv-wires{display:block;width:100%;height:clamp(64px,7vw,110px);overflow:visible;z-index:0}
.dv-wires path{fill:none;stroke:var(--ink-muted);stroke-width:1.2;stroke-linecap:round;opacity:.55;
  stroke-dasharray:var(--len);stroke-dashoffset:var(--len);transition:stroke-dashoffset 1s var(--ease-out);transition-delay:calc(500ms + var(--k) * 90ms)}
.dv-wires circle{fill:var(--ink);opacity:0;transition:opacity .4s var(--ease-soft) 1.3s}
.dv-combo.on .dv-wires path{stroke-dashoffset:0}
.dv-combo.on .dv-wires circle{opacity:.9}
.dv-shot{width:min(100%,1040px);transition:opacity .8s var(--ease-soft) 1.1s}
.dv-combo:not(.on) .dv-shot{opacity:0;transition-duration:0s;transition-delay:.75s}
.dv-combo:not(.on) .dv-wires path{transition-duration:0s;transition-delay:.75s}
.dv-combo:not(.on) .dv-wires circle{transition-delay:0s}
.dv-combo:not(.on) .dv-parts .pj-frame{opacity:0;translate:0 -12px;scale:1}
@media(max-width:620px){.dv-parts{flex-wrap:wrap}.dv-parts .pj-frame{flex-basis:calc(50% - 6px)}}

.dv-parts,.dv-slider .dv-bar{width:min(100%,1040px);margin-left:auto;margin-right:auto}

.dv-parts:has(> .pj-frame:nth-child(7)){flex-wrap:wrap;row-gap:clamp(10px,1.2vw,18px)}
.dv-parts:has(> .pj-frame:nth-child(7)) .pj-frame{flex:0 0 calc((100% - 4 * clamp(10px,1.2vw,18px)) / 5)}

.dv-track > .dv-combo{justify-content:flex-end}
.dv-parts{margin-bottom:clamp(64px,7vw,110px)}
.dv-wires{position:absolute;left:0;top:0;width:100%;height:var(--wh,0px);z-index:0;pointer-events:none}

.dv-track > .dv-combo{flex-direction:row;align-items:center;justify-content:space-between;gap:0}
.dv-parts,.dv-parts:has(> .pj-frame:nth-child(7)){display:grid;grid-template-columns:repeat(var(--c,1),var(--tw,160px));gap:var(--g,12px);
  width:auto;margin:0;flex:none;justify-content:start;align-content:center}
.dv-parts .pj-frame,.dv-parts:has(> .pj-frame:nth-child(7)) .pj-frame{width:var(--tw,160px);flex:none}
.dv-track .dv-shot{width:var(--sw,56%);flex:none}
.dv-wires{height:100%}
.dv-parts .pj-frame{transition-delay:calc(100ms + var(--k) * 70ms)}
.dv-combo:not(.on) .dv-parts .pj-frame{translate:-12px 0}
@media(max-width:760px){
  .dv-track > .dv-combo{flex-direction:column;gap:20px}
  .dv-track .dv-shot{width:100%}
  .dv-wires{display:none}
}

@media(min-width:761px){
  .dv-slider .dv-bar{width:54%;margin-left:auto;margin-right:auto}
  .dv-slider .belt-nav{width:auto;margin-left:auto;margin-right:auto}
}

.dv-parts,.dv-parts:has(> .pj-frame:nth-child(7)){position:relative;width:var(--aw,40%);height:var(--ah,auto);box-sizing:border-box;
  padding:46px 16px 16px;border-radius:calc(var(--r-panel) * .8);background:color-mix(in srgb,var(--ink) 3%,var(--bg));box-shadow:inset 0 0 0 1px var(--hairline);
  justify-content:center;align-content:center}
.dv-parts::before{content:"Assets";position:absolute;left:18px;top:16px;font-size:13px;line-height:1;color:var(--ink-muted)}
.dv-parts::after{content:attr(data-n);position:absolute;right:18px;top:16px;font-size:13px;line-height:1;color:var(--ink-muted);opacity:.7}
.dv-shot::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(255,255,255,.14);pointer-events:none}
body.theme-light .dv-shot::after{box-shadow:inset 0 0 0 1px rgba(0,0,0,.14)}

.dv-wires path{opacity:.7;stroke-width:1.3}
.dv-wires circle{fill:var(--bg);stroke:var(--ink-muted);stroke-width:1.3}
.dv-combo.on .dv-wires circle{opacity:1}
.dv-parts{align-content:center;justify-content:center}

.pj-stack > .film-frame{width:100%}

.dv-bar[hidden]{display:none}

.pj-big .pj-row{margin-top:168px}
.pj-big .pj-row:first-child{margin-top:0}
@media(max-width:900px){.pj-big .pj-row{margin-top:104px}}

.op-canvas{position:relative;display:grid;grid-template-columns:minmax(0,.62fr) minmax(0,2.4fr);column-gap:clamp(90px,11vw,180px);align-items:center;
  padding:clamp(48px,5vw,80px) clamp(24px,3vw,56px);border-radius:var(--r-panel);box-shadow:inset 0 0 0 1px var(--hairline);
  background-color:var(--bg);background-image:radial-gradient(circle,rgba(255,255,255,.11) 1px,transparent 1.4px);background-size:22px 22px;background-position:center}
body.theme-light .op-canvas{background-image:radial-gradient(circle,rgba(0,0,0,.13) 1px,transparent 1.4px)}
.op-wires{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:0}
.op-wires path{fill:none;stroke:var(--ink-muted);stroke-width:1.3;opacity:.7;stroke-dasharray:var(--len,2000);stroke-dashoffset:var(--len,2000);
  transition:stroke-dashoffset 1s cubic-bezier(.65,0,.25,1) calc(.25s + var(--k,0) * .15s)}
.op-wires path.op-w2{transition-delay:calc(1.05s + var(--k,0) * .15s);transition-duration:.45s}
.op-wires circle{fill:var(--bg);stroke:var(--ink-muted);stroke-width:1.3;opacity:0;transition:opacity .4s var(--ease-soft) calc(.9s + var(--k,0) * .15s)}
.op-canvas.run .op-wires path{stroke-dashoffset:0}
.op-canvas.run .op-wires circle{opacity:1}
.op-src,.op-out{position:relative;z-index:1}
.op-cap{position:absolute;top:-30px;left:0;font-size:13px;line-height:1;color:var(--ink-muted)}
.op-src .pj-frame{aspect-ratio:1536/2752;box-shadow:0 0 0 1px rgba(255,255,255,.14)}
.op-out{display:grid;gap:clamp(14px,1.4vw,22px)}
.op-branch{display:grid;grid-template-columns:7.6rem minmax(0,1fr);align-items:center;column-gap:clamp(40px,4.5vw,72px)}
.op-pill{display:inline-block;width:max-content;padding:9px 15px;border-radius:99px;font-size:13px;line-height:1;color:var(--ink);background:var(--bg);
  box-shadow:inset 0 0 0 1px var(--hairline);opacity:0;transition:opacity .5s var(--ease-soft) calc(.9s + var(--r) * .15s)}
.op-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(8px,.9vw,14px)}
.op-node{border-radius:calc(var(--r-panel) * .55);opacity:0;translate:0 14px;scale:.94;
  transition:opacity .6s var(--ease-soft),translate .8s var(--ease-out),scale .8s var(--ease-out);transition-delay:calc(1.3s + var(--r) * .15s + var(--i) * .07s)}
.op-canvas.run .op-pill{opacity:1}
.op-canvas.run .op-node{opacity:1;translate:0 0;scale:1}
@media(prefers-reduced-motion:reduce){.op-wires path,.op-wires circle,.op-pill,.op-node{transition:none}}
@media(max-width:900px){
  .op-canvas{grid-template-columns:1fr;row-gap:56px;padding:48px 20px 28px}
  .op-src{width:min(52%,260px);justify-self:center}
  .op-wires{display:none}
  .op-branch{grid-template-columns:1fr;row-gap:12px}
  .op-row{grid-template-columns:repeat(2,minmax(0,1fr))}
}

.pj-row > p{justify-self:end;width:fit-content;max-width:100%;text-wrap:pretty}

.pj-big > .dv-slider:last-child{margin-bottom:clamp(80px,9vw,150px)}

.pj-big .pj-row--part{margin-top:clamp(220px,20vw,320px)}
@media(max-width:900px){.pj-big .pj-row--part{margin-top:160px}}

.svl{padding-top:clamp(140px,12vw,200px);padding-bottom:clamp(120px,12vw,200px)}
.svl-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--hairline)}
.svl-list li{border-bottom:1px solid var(--hairline)}
.svl-row{all:unset;box-sizing:border-box;width:100%;cursor:pointer;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:32px;padding:clamp(22px,2.4vw,40px) 0;color:var(--ink)}
.svl-row:focus-visible{outline:1px solid var(--ink-muted);outline-offset:6px;border-radius:6px}
.svl-name{font-size:clamp(40px,5.4vw,96px);line-height:1.05;letter-spacing:-.03125em;font-weight:500;transition:color .45s var(--ease-soft),translate .6s var(--ease-out)}

.svl-thumb{display:none}
.svl-list:hover .svl-name{color:var(--ink-muted)}
.svl-list:hover .svl-row:hover .svl-name{color:var(--ink);translate:clamp(8px,1vw,18px) 0}

.svl-float{position:fixed;left:0;top:0;z-index:30;width:clamp(240px,22vw,340px);aspect-ratio:4/5;border-radius:var(--r-panel);overflow:hidden;pointer-events:none;
  opacity:0;scale:.86;transition:opacity .35s var(--ease-soft),scale .5s var(--ease-out);background:#111;will-change:transform}
.svl-float.on{opacity:1;scale:1}
.svl-float > *{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .3s var(--ease-soft)}
.svl-float > .on{opacity:1}
@media(hover:none),(max-width:860px){
  .svl-float{display:none}
  .svl-row{grid-template-columns:minmax(0,1fr) 88px;row-gap:10px}

  .svl-thumb{display:block;grid-column:2;grid-row:1 / span 2;width:88px;aspect-ratio:4/5;border-radius:10px;overflow:hidden;background:#111}
  .svl-thumb img,.svl-thumb video{width:100%;height:100%;object-fit:cover;display:block}
}
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

.svl-plus{position:relative;width:40px;height:40px;border-radius:50%;box-shadow:inset 0 0 0 1px var(--hairline);transition:box-shadow .35s var(--ease-soft),background .35s var(--ease-soft)}
.svl-plus::before,.svl-plus::after{content:"";position:absolute;left:50%;top:50%;width:14px;height:1.5px;translate:-50% -50%;background:var(--ink);border-radius:1px;transition:rotate .5s var(--ease-out)}
.svl-plus::after{rotate:90deg}
.svl-row:hover .svl-plus{box-shadow:inset 0 0 0 1px var(--ink-muted)}
.svl-item.open .svl-plus::after{rotate:0deg}
.svl-item.open .svl-name{color:var(--ink)}

.svl-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .7s var(--ease-out)}
.svl-item.open .svl-panel{grid-template-rows:1fr}
.svl-panel-in{min-height:0;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);column-gap:clamp(40px,7vw,140px)}
.svl-body,.svl-deliver{opacity:0;translate:0 12px;transition:opacity .4s var(--ease-soft),translate .6s var(--ease-out)}
.svl-item.open .svl-body,.svl-item.open .svl-deliver{opacity:1;translate:0 0;transition-delay:.15s}
.svl-body{padding:4px 0 clamp(40px,4vw,64px)}
.svl-body p{font-size:clamp(18px,1.5vw,22px);line-height:1.45;color:var(--ink-muted);max-width:42em}
.svl-body p + p{margin-top:1em}
.svl-deliver{list-style:none;margin:0;padding:4px 0 clamp(40px,4vw,64px)}
.svl-deliver li{padding:12px 0;font-size:16px;line-height:1.3;color:var(--ink);border-bottom:1px solid var(--hairline)}
.svl-deliver li:first-child{padding-top:0}
@media(max-width:860px){
  .svl-row{grid-template-columns:minmax(0,1fr) 72px 40px;column-gap:16px}
  .svl-thumb{grid-column:2;grid-row:1;width:72px}
  .svl-plus{grid-column:3;grid-row:1}
  .svl-panel-in{grid-template-columns:1fr}
  .svl-deliver{padding-top:0}
}

.pj-pagelink{display:block}
.reveal--card .pj-frame.pj-pagelink{
  transition:opacity .9s var(--ease-entry) var(--rd,0ms),transform 1.15s var(--ease-entry) var(--rd,0ms),
             filter .95s var(--ease-entry) var(--rd,0ms),scale .7s var(--ease-soft) 0s}
.pj-pagelink:hover{scale:1.025}

.ins{padding-top:clamp(24px,3vw,48px);padding-bottom:clamp(120px,12vw,200px)}
.ins-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,3vw,40px) 16px}
.ins-card{display:block;text-decoration:none;color:var(--ink)}
.ins-card .pj-frame img{transition:scale var(--zoom-t) var(--ease-soft)}
.ins-card:hover .pj-frame img{scale:var(--zoom)}
.ins-meta{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:18px;font-size:14px;line-height:1.3;color:var(--ink-muted)}
.ins-card h2{margin-top:10px;font-size:clamp(22px,1.8vw,28px);line-height:1.2;letter-spacing:0}
.ins-card p{margin-top:10px;font-size:16px;line-height:1.5;color:var(--ink-muted)}
@media(max-width:960px){.ins-list{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.ins-list{grid-template-columns:1fr}}

.post{padding:calc(var(--nav-h) + clamp(48px,6vw,96px)) var(--edge) clamp(100px,10vw,160px)}
.post-head{max-width:860px;margin:0 auto}
.post-back{color:var(--ink-muted)}
.post-head h1{margin-top:28px;font-size:clamp(38px,5vw,72px);line-height:1.04;letter-spacing:-.03125em;font-weight:500;color:var(--ink);text-wrap:balance}
.post-head .ins-meta{margin-top:24px}
.post-hero{max-width:1200px;margin:clamp(40px,5vw,72px) auto 0}
.post-body{max-width:720px;margin:clamp(48px,5vw,80px) auto 0;font-size:18px;line-height:1.65;color:var(--ink-muted)}
.post-body strong{font-weight:500;color:var(--ink)}
.post-body p a{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.post-body p + p{margin-top:1em}
.post-lead{font-size:clamp(20px,1.7vw,24px);line-height:1.5;color:var(--ink)}
.post-body h2{margin:2.2em 0 .6em;font-size:clamp(26px,2.4vw,34px);line-height:1.15;letter-spacing:-.01em;color:var(--ink)}
.post-body ul,.post-body ol{margin:0;padding-left:1.2em}
.post-body li + li{margin-top:.6em}
.post-fig{margin:2em 0}
.post-fig--narrow{max-width:320px}
.post-fig figcaption{margin-top:12px;font-size:14px;color:var(--ink-muted)}
.post-trio{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}

.post-body p,.post-body li{font-size:18px;line-height:1.65}
.post-body .post-lead{font-size:clamp(20px,1.7vw,24px);line-height:1.5}

.pj-layered{position:relative}
.pj-layered > img{position:absolute;inset:0;z-index:1;object-fit:contain}

.pj-layered--crop{background:var(--ph)!important}
.pj-layered--crop > img{inset:auto 0;top:14%;height:125%;width:100%}

.ins-card h3{margin-top:10px;font-size:clamp(22px,1.8vw,28px);line-height:1.2;letter-spacing:0;font-weight:inherit}
.ins-more{margin-top:44px;display:flex;justify-content:center}

.ins-card .ins-meta,.ins-card h2,.ins-card h3,.ins-card p{padding-right:16px}
.post-duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.post-duo .pj-frame{aspect-ratio:1}

h2,.hero h1,.page-head h1,.pj-stat dt,.pj-open-title,.pj-open-title--line,.pf-copy h2,.svl-name,.post-head h1,.hero-copy h1{letter-spacing:-.03em}
.nav-menu a,.pj-intro,.pj-row p,.pj-row>div>p,.post-body h2,.ins-card h2,.ins-card h3{letter-spacing:-.01em}
.pj-row h2,.sr-only{letter-spacing:0}
.post-lead,.pj-swatch{letter-spacing:-.01em}

.work-foot,.disc-label,.disc-label + p{padding-right:16px}

.archive--open{overflow:visible;position:relative;z-index:1;display:flow-root}
.archive--open + section{position:relative}
.archive--open + section > .chap-head{position:relative;z-index:2}
.chap--film .chap-head{margin-bottom:40px}

.pf-copy .pf-lead{margin:0;max-width:640px;font-size:clamp(22px,2.1vw,32px);line-height:1.25;letter-spacing:-.01em;color:#fff;text-wrap:balance}
@media(max-width:900px){.props-copy .pf-lead{position:static;margin:0 auto;font-size:22px}}

body.theme-light .archive[data-invert]{background:#fff;color:#111}

@media(max-width:767px){
  :root{--edge:16px}
  .navbar{padding-left:16px;padding-right:16px}
  .hero,.section,.trusted,.page-head,.pj-open,.chap:not(.chap--belt):not(.chap--bench){padding-left:16px;padding-right:16px}
  .closing,footer{padding-left:16px;padding-right:16px}

  .navcap{padding:8px 20px 8px 20px;max-width:calc(100vw - 32px)}
  .navcap .nav-burger{margin-right:0}
  .navcap .brand svg{height:22px}
  .nav-burger{width:44px;height:44px;display:grid!important;place-items:center}
  .navbar .nav-burger{margin-right:-11px}

  .nav-menu{
    justify-content:space-between;align-items:stretch;gap:0;
    padding:calc(var(--nav-h) + 24px) 16px calc(28px + env(safe-area-inset-bottom));
    transform:none;transition:opacity .35s var(--ease-soft);
  }
  .nav-menu-links{display:flex;flex-direction:column}
  .nav-menu-links a{
    display:flex;align-items:center;justify-content:space-between;
    padding:18px 0;border-bottom:1px solid var(--hairline);
    font-size:40px;line-height:1.05;letter-spacing:-.03em;color:var(--ink-strong);
  }
  .nav-menu-links a:first-child{border-top:1px solid var(--hairline)}
  .nav-menu-links svg{width:18px;height:18px;flex:none;fill:none;stroke:currentColor;stroke-width:1.4;opacity:.5}
  
  body.menu-open .nav-menu-links a{animation:nav-in .6s var(--ease-out) both;animation-delay:calc(80ms + var(--i) * 60ms)}
  .nav-menu-foot{display:flex;flex-direction:column;gap:22px}
  body.menu-open .nav-menu-foot{animation:nav-in .6s var(--ease-out) .34s both}
  .nav-menu-foot .button{width:100%;justify-content:center}
  .nav-menu-meta{display:flex;align-items:center;justify-content:space-between;font-size:15px;color:var(--ink-muted)}
  .nav-menu-meta .theme-dot{margin:0}
}
.page-dark .nav-menu-links a{border-color:rgba(255,255,255,.14)}
.nav-menu-foot,.nav-menu-links{width:100%}

@media(max-width:960px){.work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:44px 16px}.work-media{aspect-ratio:2/3}}
@media(max-width:620px){.work-grid{grid-template-columns:1fr}.work-media{aspect-ratio:2/3}}
.nav-menu .nav-menu-foot a{font-size:15px;letter-spacing:0}
.nav-menu .nav-menu-foot .button{font-size:16px;padding-top:16px;padding-bottom:16px}
.page-dark .nav-menu .button-primary{background:#fff;color:#000}
.nav-menu-meta a{color:var(--ink-muted)}

@media(max-width:620px){.pj-strip--2:has(> .pj-frame[style*="--ar:4/5"]){grid-template-columns:repeat(2,minmax(0,1fr))}}

@media(max-width:900px){.op-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.op-canvas{row-gap:40px}}
@media(max-width:620px){.props-fly{height:620px;min-height:0}}

@media(max-width:620px){.pj-lineup-row{translate:calc(177px + var(--p) * -3vw) 0}}
@keyframes nav-in{from{translate:0 18px}to{translate:none}}

@media(max-width:960px){
  .contact-details{order:2}
  .closing-lead{display:contents}
  .closing-direct{order:3}
}

.pj-stat dd{max-width:220px;margin-left:auto;margin-right:auto;text-wrap:balance}

.pj-more .works-head{align-items:center}
.pj-more .works-head h2{margin-top:0}
@media(max-width:620px){.pj-more .work-grid > .work-card:not(:first-child){display:none}}

@media(max-width:620px){
  .chap--film{padding-bottom:48px}
  .pj-big#work{padding-top:40px}
  .pj-big .pj-row{margin-top:56px;padding:24px 0 28px}
  .pj-big .pj-row:first-child{margin-top:0}
  .pj-big > .belt-nav{margin-top:20px}
}

body.theme-light .props-fly::after{background:radial-gradient(ellipse 46% 40% at 50% 50%,rgba(255,255,255,.92),transparent 100%)}
body.theme-light .pf-copy .pf-lead{color:var(--ink)}

@media(hover:none),(max-width:1024px){
  .svl-float,.svl-thumb{display:none}
  .svl-row{grid-template-columns:minmax(0,1fr) 40px}
  .svl-plus{grid-column:2;grid-row:1}
}

.ins-card.reveal--card .ins-meta,.ins-card.reveal--card h2,.ins-card.reveal--card h3{
  opacity:0;transform:translateY(24px);filter:blur(7px);
  transition:opacity .75s var(--ease-entry) calc(var(--rd,0ms) + 180ms),
             transform .9s var(--ease-entry) calc(var(--rd,0ms) + 180ms),
             filter .75s var(--ease-entry) calc(var(--rd,0ms) + 180ms);
}
.ins-card.reveal--card.lit .ins-meta,.ins-card.reveal--card.lit h2,.ins-card.reveal--card.lit h3{opacity:1;transform:none;filter:none}
@media(prefers-reduced-motion:reduce){
  .ins-card.reveal--card .ins-meta,.ins-card.reveal--card h2,.ins-card.reveal--card h3{opacity:1;transform:none;filter:none;transition:none}
}

@media(max-width:767px){
  .hero:first-of-type{min-height:100svh;justify-content:flex-end;padding-bottom:56px}
  .hero:first-of-type .hero-video{position:absolute;left:0;right:0;top:var(--nav-h);height:46%}
}

body.theme-light .navbar:not(.on-dark) .nav-action .button{background:rgba(0,0,0,.025)}
body.theme-light .navbar:not(.on-dark) .nav-action .button:hover{background:rgba(0,0,0,.06)}

.archive > .wheel-zone:first-child{margin-top:120px}
@media(max-width:767px){.archive > .wheel-zone:first-child{margin-top:72px}}

@media(max-width:767px){
  :root{--r-panel:12px}
  .card,.disc-visual,.film-frame,.pj-ep,.pj-frame:not(.pj-frame--bare),.vimeo,.work-media,.belt-cell,.op-canvas{border-radius:12px}
  .ph,.pj-swatch,.closing-panel,.pf-card,.op-node,
  .dv-parts,.dv-parts:has(> .pj-frame:nth-child(7)),.dv-parts .pj-frame,
  input,textarea,.select-display,.select-dropdown,.select-option{border-radius:16px}
}

@media(max-width:767px){
  .navcap{width:calc(100vw - 32px);max-width:none;justify-content:space-between}
}
@media(max-width:620px){
  .jury-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}
  .jury-name span{white-space:normal}
}

.post-body,.post-body p,.post-body li,.post-body strong{color:var(--ink-body)}

.nowrap{white-space:nowrap}

h1,h2,h3{text-wrap:balance}
p,li,dd,figcaption{text-wrap:pretty}

.hero-copy p{max-width:540px}

@media(max-width:960px){.pj-row > p{justify-self:start}}

@media(max-width:960px){.pj-ep-inner{width:100%}}

@media(max-width:767px){
  
  .dv-parts .pj-frame,.pj-trio .pj-frame{border-radius:8px}
  
  .pj-strip--3.pj-stills{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  .pj-big .pj-stills{gap:8px}
  
  .pj-bleed{width:auto;margin-left:0}
  .pj-bleed .pj-frame{border-radius:12px;aspect-ratio:1}
  
  .pj-mac-frame{aspect-ratio:auto;display:flex;flex-direction:column;align-items:center;padding:28px 0 24px}
  .pj-mac{width:92%}
  .pj-mac-nav{position:static;translate:none;flex-direction:row;justify-content:center;margin-top:16px}
}

.page-head__note--narrow{max-width:556px}

.footer-meta{display:flex;align-items:flex-end;gap:28px}
.nav-menu-meta .lang-switch{color:inherit;text-decoration:none}

html[lang="fr"] .hero-copy p{max-width:700px}

.ng-notice{
  position:fixed;right:24px;bottom:24px;z-index:900;max-width:360px;
  padding:20px 20px 16px;border-radius:var(--r-panel);
  background:#141414;color:#fff;box-shadow:0 12px 40px rgba(0,0,0,.35),inset 0 0 0 1px rgba(255,255,255,.08);
  opacity:0;transform:translateY(12px);transition:opacity .4s var(--ease-soft),transform .4s var(--ease-soft);
}
.ng-notice.is-in{opacity:1;transform:none}
.ng-notice p{margin:0;font-size:15px;line-height:1.45;color:rgba(255,255,255,.82)}
.ng-notice-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}
.ng-notice button{
  padding:9px 18px;border:0;border-radius:var(--r-pill);font:inherit;font-size:15px;cursor:pointer;
  background:rgba(255,255,255,.1);color:#fff;transition:background-color var(--hover) var(--ease-soft);
}
.ng-notice button:hover{background:rgba(255,255,255,.18)}
.ng-notice button[data-answer="granted"]{background:#fff;color:#111}
.ng-notice button[data-answer="granted"]:hover{background:#e8e8e8}
body.theme-light .ng-notice{background:#fff;color:#111;box-shadow:0 12px 40px rgba(0,0,0,.14),inset 0 0 0 1px rgba(0,0,0,.08)}
body.theme-light .ng-notice p{color:var(--ink-soft)}
body.theme-light .ng-notice button{background:var(--surface);color:var(--ink)}
body.theme-light .ng-notice button:hover{background:#ededed}
body.theme-light .ng-notice button[data-answer="granted"]{background:#1a1a1a;color:#fff}
body.theme-light .ng-notice button[data-answer="granted"]:hover{background:#2a2a2a}
body.menu-open .ng-notice{display:none}
@media(max-width:620px){.ng-notice{left:12px;right:12px;bottom:12px;max-width:none}}
.ng-notice p a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.footer-col .consent-again{padding:0;border:0;background:none;font:inherit;font-size:16px;line-height:1.35;color:rgba(255,255,255,.5);cursor:pointer;white-space:nowrap;transition:color var(--hover) var(--ease-soft)}
.footer-col .consent-again:hover{color:#fff}
body.theme-light .footer-col .consent-again{color:rgba(0,0,0,.5)}
body.theme-light .footer-col .consent-again:hover{color:#111}

.page-head--404{min-height:62vh}
.page-head__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:36px}
