@layer base,components,utilities;/* EXV DEFAULT BUTTONS. Extracted verbatim from the live exvmedia.com hero (the home hero pair
   "Plan your project" / "See the work") on 2026-10-17, same system G approved 2026-10-02 and saw live since 2026-10-10.
   Markup: <a class="btn onmedia">  (white, wipes black from the left on hover)
           <a class="btn ghost">    (clear, Aurora ring, goes black on hover, ring wipes away)
           <a class="btn dark">     (black on light sections, wipes white on hover)
           <a class="btn soft">     (white + Aurora ring on light sections, goes black on hover)
   Do not edit by hand. Do not add other button variants. */
:root{--ink:#0c0c0c;--body:#404040;--hair:rgba(0,0,0,.1);--c1:#52d0a8;--c2:#2b7ddc;--btn:#000;--btn-hover:#000;--text:"Funnel Display",system-ui,Arial,sans-serif;--display:"Funnel Display",system-ui,Arial,sans-serif;--ease:cubic-bezier(.4,0,.2,1);--sig:cubic-bezier(.05,.7,.1,1);--mir:cubic-bezier(.25,.46,.45,.94);--soft:#eef1f5;--soft-hover:#e7eaf0;--ringdur:.34s;--ringease:cubic-bezier(.65,0,.35,1)}
@layer components;
@layer utilities {
.ghost { border: 1px solid rgba(255, 255, 255, 0.1); }
}
.theme-light.ghost, .theme-light .ghost { border-color: rgba(23, 20, 15, 0.12); }
@layer components {
.btn { display: inline-flex; align-items: center; gap: 6px; font: 600 14px/20px var(--text); padding: 8px 14px; border-radius: 6px; transition: background-color .16s var(--ease),color .16s var(--ease),border-color .16s var(--ease); cursor: pointer; border: 0px; }
.btn.dark { background: var(--btn); color: rgb(255, 255, 255); }
.btn.dark:hover { background: var(--btn-hover); }
.btn.soft { background: var(--soft); color: rgb(26, 26, 26); }
.btn.soft:hover { background: var(--soft-hover); }
.btn.onmedia { background: rgb(247, 247, 247); color: var(--ink); border-radius: 8px; font-size: 16px; padding: 8px 14px; }
.btn.onmedia:hover { background: rgb(255, 255, 255); }
.btn.ghost { background: rgba(247, 247, 247, 0.05); color: rgb(255, 255, 255); border: 1px solid rgba(255, 255, 255, 0.6); border-radius: 8px; font-size: 16px; padding: 7px 13px; }
.btn.pill { border-radius: 999px; }
.btn.outline { background: rgb(255, 255, 255); color: var(--ink); border: 1px solid var(--hair); border-radius: 999px; box-shadow: rgba(0, 0, 0, 0.06) 0px 1px 2px; }
.btn.outline:hover { background: rgb(250, 250, 250); }
.btn.fill { background: var(--ink); color: rgb(255, 255, 255); border-radius: 999px; }
.hero-card .acts { display: flex; gap: 10px; margin-top: 24px; flex-wrap: wrap; }
@media (max-width: 900px){
.nav .right .btn { padding: 6px 10px; font-size: 14px; }
}
@media (prefers-reduced-motion: reduce){
.rail, .sub-l button, .btn { transition: none; }
}
.btn { position: relative; overflow: hidden; isolation: isolate; }
.btn::before { content: ""; position: absolute; inset: 0px; z-index: -1; transform: translate(-101%); transition: transform .22s var(--ease); }
.btn:active { transform: scale(0.98); }
.btn.dark::before, .btn.fill::before { background: rgb(255, 255, 255); }
.btn.soft::before, .btn.outline::before { background: var(--ink); }
.btn.onmedia::before { background: var(--ink); }
.btn.ghost::before { background: rgb(255, 255, 255); }
@media (hover: hover){
.btn.dark:hover, .btn.fill:hover { color: var(--ink); box-shadow: inset 0 0 0 1px var(--ink); }
.btn.soft:hover, .btn.outline:hover, .btn.onmedia:hover { color: rgb(255, 255, 255); }
.btn.ghost:hover { color: var(--ink); }
.btn:hover::before { transform: translate(0px); }
.btn:hover .ar, .more:hover .ar, .research .rows a:hover span { transform: translate(4px); }
}
@media (prefers-reduced-motion: reduce){
.btn::before, .ar, .tile, .faq-row, .tabs-top .ind, .card .media::after, .view::after, .news h3 { transition: none !important; }
.btn:active { transform: none; }
}
@media (max-width: 900px){
.btn, .nav .menu, .tabs-top button, .sub-l button, .mega a, footer a { min-height: 44px; display: inline-flex; align-items: center; }
}
.btn.soft, .btn.outline, .btn.onmedia { padding: 6px 12px; border: 2px solid transparent; color: var(--ink); background: linear-gradient(#fff,#fff) padding-box,linear-gradient(95deg,var(--c1),var(--c2)) border-box; box-shadow: none; }
.btn.pill.outline { padding: 6px 12px; }
.btn.soft:hover, .btn.outline:hover, .btn.onmedia:hover { background: linear-gradient(#fff,#fff) padding-box,linear-gradient(95deg,var(--c1),var(--c2)) border-box; }
.btn.ghost { padding: 7px 13px; border: 1px solid rgba(255, 255, 255, 0.6); background: rgba(247, 247, 247, 0.05); }
.btn.ghost:hover { background: rgba(255, 255, 255, 0.14); }
.btn.ghost { padding: 6px 12px; border: 2px solid transparent; color: var(--ink); background: linear-gradient(#fff,#fff) padding-box,linear-gradient(95deg,var(--c1),var(--c2)) border-box; }
.btn.ghost:hover { background: linear-gradient(#fff,#fff) padding-box,linear-gradient(95deg,var(--c1),var(--c2)) border-box; }
.btn.ghost::before { background: var(--ink); }
@media (hover: hover){
.btn.ghost:hover { color: rgb(255, 255, 255); }
}
.btn.ghost:focus-visible, .btn.soft:focus-visible, .btn.outline:focus-visible, .btn.onmedia:focus-visible { color: rgb(255, 255, 255); }
.btn.ghost:focus-visible::before, .btn.soft:focus-visible::before, .btn.outline:focus-visible::before, .btn.onmedia:focus-visible::before { transform: translate(0px); }
.btn.dark { border: 2px solid var(--btn); padding: 6px 12px; }
.btn.fill { border: 2px solid var(--ink); padding: 6px 12px; }
@media (hover: hover){
.btn.dark:hover, .btn.fill:hover { box-shadow: none; border-color: var(--ink); }
}
.btn.dark:focus-visible, .btn.fill:focus-visible { color: var(--ink); border-color: var(--ink); }
.btn.dark:focus-visible::before, .btn.fill:focus-visible::before { transform: translate(0px); }
.btn.soft, .btn.outline, .btn.onmedia, .btn.ghost, .btn.soft:hover, .btn.outline:hover, .btn.onmedia:hover, .btn.ghost:hover { --pad: #fff; --r1: var(--c1); --r2: var(--c2); color: var(--ink); box-shadow: none; background: linear-gradient(var(--pad),var(--pad)) padding-box,linear-gradient(95deg,var(--r1),var(--r2)) border-box; transition: --pad .52s var(--sig),--r1 .52s var(--sig),--r2 .52s var(--sig),color .36s var(--ease),transform .16s var(--ease); }
.btn.soft::before, .btn.outline::before, .btn.onmedia::before, .btn.ghost::before { display: none; }
@media (hover: hover){
.btn.soft:hover, .btn.outline:hover, .btn.onmedia:hover, .btn.ghost:hover { --pad: #0a0a0a; --r1: #0a0a0a; --r2: #0a0a0a; color: rgb(255, 255, 255); }
.btn.soft:hover::after, .btn.outline:hover::after, .btn.onmedia:hover::after, .btn.ghost:hover::after { animation: glint .72s var(--sig) 1 both; }
}
.btn.soft:focus-visible, .btn.outline:focus-visible, .btn.onmedia:focus-visible, .btn.ghost:focus-visible { --pad: #0a0a0a; --r1: #0a0a0a; --r2: #0a0a0a; color: rgb(255, 255, 255); }
@media (prefers-reduced-motion: reduce){
.btn.soft, .btn.outline, .btn.onmedia, .btn.ghost { transition: none !important; }
.btn::after { display: none; animation: auto ease 0s 1 normal none running none !important; }
}
@property --pad { syntax: "<color>"; inherits: false; initial-value: #fff; }
@property --r1 { syntax: "<color>"; inherits: false; initial-value: #52d0a8; }
@property --r2 { syntax: "<color>"; inherits: false; initial-value: #2b7ddc; }
.btn.soft, .btn.outline, .btn.onmedia, .btn.soft:hover, .btn.outline:hover, .btn.onmedia:hover { --pad: #fff; --r1: var(--c1); --r2: var(--c2); color: var(--ink); box-shadow: none; background: linear-gradient(var(--pad),var(--pad)) padding-box,linear-gradient(95deg,var(--r1),var(--r2)) border-box; transition: --pad .52s var(--sig),--r1 .52s var(--sig),--r2 .52s var(--sig),color .36s var(--ease),transform .16s var(--ease); }
.btn.soft::before, .btn.outline::before, .btn.onmedia::before { display: none; }
.btn.ghost, .btn.ghost:hover { color: rgb(255, 255, 255); background: rgba(10, 10, 10, 0); border: 0px; padding: 8px 14px; box-shadow: none; transition: background-color .52s var(--sig),color .36s var(--ease),transform .16s var(--ease); }
.btn.ghost::before { display: block; content: ""; position: absolute; inset: 0px; z-index: -1; transform: none; border-radius: inherit; padding: 2px; background: linear-gradient(95deg,var(--c1),var(--c2)); mask: linear-gradient(rgb(0, 0, 0) 0px, rgb(0, 0, 0) 0px) content-box exclude, linear-gradient(rgb(0, 0, 0) 0px, rgb(0, 0, 0) 0px); transition: opacity .52s var(--sig); }
.btn.soft::after, .btn.outline::after, .btn.onmedia::after, .btn.ghost::after { content: ""; position: absolute; inset: 0px; z-index: -1; pointer-events: none; background: linear-gradient(105deg, transparent 28%, rgba(82,208,168, 0.75) 44%, rgba(43,125,220, 0.75) 56%, transparent 72%); transform: translate(-130%); opacity: 0; }
@media (hover: hover){
.btn.soft:hover, .btn.outline:hover, .btn.onmedia:hover { --pad: #0a0a0a; --r1: #0a0a0a; --r2: #0a0a0a; color: rgb(255, 255, 255); }
.btn.ghost:hover { background-color: rgb(10, 10, 10); color: rgb(255, 255, 255); }
.btn.ghost:hover::before { opacity: 0; }
.btn.soft:hover::after, .btn.outline:hover::after, .btn.onmedia:hover::after, .btn.ghost:hover::after { animation: glint .72s var(--sig) 1 both; }
}
.btn.soft:focus-visible, .btn.outline:focus-visible, .btn.onmedia:focus-visible { --pad: #0a0a0a; --r1: #0a0a0a; --r2: #0a0a0a; color: rgb(255, 255, 255); }
.btn.ghost:focus-visible { background-color: rgb(10, 10, 10); }
.btn.ghost:focus-visible::before { opacity: 0; }
@keyframes glint { 
  0% { transform: translate(-130%); opacity: 0; }
  15% { opacity: 1; }
  100% { transform: translate(130%); opacity: 0; }
}
@media (prefers-reduced-motion: reduce){
.btn.soft, .btn.outline, .btn.onmedia, .btn.ghost, .btn.ghost::before { transition: none !important; }
.btn::after { display: none; animation: auto ease 0s 1 normal none running none !important; }
}
.btn.soft::after, .btn.outline::after, .btn.onmedia::after, .btn.ghost::after { display: none !important; animation: auto ease 0s 1 normal none running none !important; }
.btn.soft, .btn.outline, .btn.soft:hover, .btn.outline:hover, .btn.onmedia, .btn.onmedia:hover { border: 0px; padding: 8px 14px; background: var(--pad); box-shadow: none; transition: --pad .3s var(--sig),color .36s var(--ease),transform .16s var(--ease); }
.btn.soft, .btn.outline, .btn.onmedia { --pad: #fff; color: var(--ink); }
.btn.soft::before, .btn.outline::before { display: block; content: ""; position: absolute; inset: 0px; z-index: -1; transform: none; border-radius: inherit; padding: 2px; background: linear-gradient(95deg,var(--c1),var(--c2)); mask: linear-gradient(rgb(0, 0, 0) 0px, rgb(0, 0, 0) 0px) content-box exclude, linear-gradient(rgb(0, 0, 0) 0px, rgb(0, 0, 0) 0px); clip-path: inset(0px); transition: clip-path .3s var(--sig); }
.btn.ghost::before { clip-path: inset(0px); transition: clip-path .3s var(--sig); opacity: 1 !important; }
.btn.onmedia::before { display: none; }
@media (hover: hover){
.btn.soft:hover, .btn.outline:hover, .btn.onmedia:hover { --pad: #0a0a0a; color: rgb(255, 255, 255); }
.btn.soft:hover::before, .btn.outline:hover::before, .btn.ghost:hover::before { clip-path: inset(0px 0px 0px 100%); }
}
.btn.soft:focus-visible, .btn.outline:focus-visible, .btn.onmedia:focus-visible { --pad: #0a0a0a; color: rgb(255, 255, 255); }
.btn.soft:focus-visible::before, .btn.outline:focus-visible::before, .btn.ghost:focus-visible::before { clip-path: inset(0px 0px 0px 100%); }
@media (prefers-reduced-motion: reduce){
.btn.soft::before, .btn.outline::before, .btn.ghost::before { transition: none !important; }
}
.btn.onmedia, .btn.onmedia:hover { background: rgb(255, 255, 255); transition: color .22s var(--ease),transform .16s var(--ease); }
.btn.onmedia::before { display: block; content: ""; position: absolute; inset: 0px; z-index: -1; background: var(--ink); transform: translate(-101%); transition: transform .22s var(--ease); padding: 0px; mask: none; clip-path: none; }
@media (hover: hover){
.btn.onmedia:hover { color: rgb(255, 255, 255); }
.btn.onmedia:hover::before { transform: translate(0px); }
}
.btn.onmedia:focus-visible { color: rgb(255, 255, 255); }
.btn.onmedia:focus-visible::before { transform: translate(0px); }
.hero-card .acts .btn.dark { font-size: 16px; }
.btn.dark, .btn.fill { background: rgb(0, 0, 0); border-color: rgb(0, 0, 0); }
.btn.dark:hover, .btn.fill:hover { border-color: rgb(0, 0, 0); }
@media (hover: hover){
.btn.soft:hover, .btn.outline:hover, .btn.onmedia:hover { --pad: #000; }
.btn.ghost:hover { background-color: rgb(0, 0, 0); }
}
.btn.soft:focus-visible, .btn.outline:focus-visible, .btn.onmedia:focus-visible { --pad: #000; }
.btn.ghost:focus-visible { background-color: rgb(0, 0, 0); }
.btn.onmedia::before { background: rgb(0, 0, 0); }
.btn.soft::before, .btn.outline::before, .btn.ghost::before { transition: clip-path 0.34s cubic-bezier(0.65, 0, 0.35, 1); }
.btn.soft, .btn.outline, .btn.soft:hover, .btn.outline:hover { transition: --pad var(--ringdur) var(--ringease),color .12s var(--ease),transform .16s var(--ease); }
.btn.ghost, .btn.ghost:hover { transition: background-color var(--ringdur) var(--ringease),color .12s var(--ease),transform .16s var(--ease); }
.btn.soft::before, .btn.outline::before, .btn.ghost::before { transition: clip-path var(--ringdur) var(--ringease); }
.btn.soft, .btn.outline, .btn.soft:hover, .btn.outline:hover { transition: --pad var(--ringdur) var(--ringease),color .12s linear .13s,transform .16s var(--ease); }
.btn.ghost, .btn.ghost:hover { transition: background-color var(--ringdur) var(--ringease),color .12s linear .13s,transform .16s var(--ease); }
.cform .btn { justify-self: start; }
.btn.soft, .btn.soft:hover { transition: --pad var(--ringdur) var(--ringease), color 0s linear calc(var(--ringdur) * .5), transform .16s var(--ease); }
}
@layer components {
.rc-fsp-txt .btn { pointer-events: none; }
.rc-faq-side .btn { margin-top: 28px; }
@media (max-width: 900px){
.rc-lpt-row .btn { width: max-content; }
.rc-orl-row .btn { width: max-content; margin-top: 10px; }
}
.pr-r .btn { margin-top: 28px; }
.rc-htc .btn.ghost:not(:hover):not(:focus-visible) { color: var(--ink); }
.rc-acts .btn.dark, .rc-acts .btn.ghost, .rc-acts .btn.soft { font-size: 16px; border-radius: 8px; }
.rc-cbl.v-row .btn { grid-area: 1 / 2 / 3; }
@media (max-width: 700px){
.rc-cbl.v-row .btn { grid-area: auto / 1; width: max-content; }
}
.rc-faq.v-stack .rc-faq-side .btn { margin: 0px; grid-area: 1 / 2 / 3; }
@media (max-width: 700px){
.rc-faq.v-stack .rc-faq-side .btn { grid-area: auto / 1; }
}
.rc-htc.v-dark .btn.fill { background: rgb(255, 255, 255); color: var(--ink); }
.rc-htc.v-dark .btn.ghost:not(:hover):not(:focus-visible) { color: rgb(255, 255, 255); }
.rc-cbl.v-split .btn { width: max-content; }
}
.rc-fsp-static .rc-fsp-txt .btn { pointer-events: auto; margin-top: 12px; }
/* 2026-10-18: soft label fades like the ghost label (was a hard flip) */
.btn.soft, .btn.soft:hover { transition: --pad var(--ringdur) var(--ringease), color .1s linear .04s, transform .16s var(--ease); }
/* 2026-10-20 (G): the solid buttons fill with the same motion the ring leaves with: clip-path, .3s, --sig */
.btn.onmedia::before, .btn.dark::before { transform: none; clip-path: inset(0 100% 0 0); transition: clip-path .3s var(--sig); }
@media (hover: hover){
.btn.onmedia:hover::before, .btn.dark:hover::before { clip-path: inset(0); }
}
.btn.onmedia:focus-visible::before, .btn.dark:focus-visible::before { clip-path: inset(0); }
@media (prefers-reduced-motion: reduce){
.btn.onmedia::before, .btn.dark::before { transition: none !important; }
}
/* 2026-10-20 (G test): on the secondary buttons the black slides in from the left (same motion as the primary fill) while the ring is eaten away */
.btn.soft, .btn.soft:hover { --pad: #fff; background: linear-gradient(#0a0a0a,#0a0a0a) left center / 0% 100% no-repeat, #fff; transition: background-size .3s var(--sig), color .16s linear .06s, transform .16s var(--ease); }
.btn.ghost, .btn.ghost:hover { background: linear-gradient(#0a0a0a,#0a0a0a) left center / 0% 100% no-repeat, rgba(10,10,10,0); transition: background-size .3s var(--sig), color .16s linear .06s, transform .16s var(--ease); }
@media (hover: hover){
.btn.soft:hover, .btn.ghost:hover { background-size: 100% 100%, auto; }
}
.btn.soft:focus-visible, .btn.ghost:focus-visible { --pad: #fff; background-size: 100% 100%, auto; }
@media (prefers-reduced-motion: reduce){
.btn.soft, .btn.ghost { transition: none !important; }
}
/* 2026-10-20 (G): the ring is sucked off to the right first, the black slides in just behind it */
.btn.soft, .btn.soft:hover, .btn.ghost, .btn.ghost:hover { transition: background-size .44s var(--sig) .05s, color .18s linear .2s, transform .16s var(--ease); }

@layer base,components,utilities;
:root{--rad:5px;--hand:"Patrick Hand SC",cursive;--main:"Funnel Display",system-ui,Arial,sans-serif}
@layer base{
*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:hidden}
body{margin:0;padding-top:56px;font:400 16px/1.3 var(--main);color:#0c0c0c;background:#fff;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,video,svg{display:block;max-width:100%}img{height:auto}a{color:inherit;text-decoration:none}
h1,h2,h3,p,figure,ul{margin:0;padding:0}
h1,h2,h3{font-weight:400;font-family:var(--main)}
/* G round 7: Runway's measured scale (HOUSE-KIT): H1 56/53.8 -2.5px, H2 56/61.6, card title 24, lead 20/28, body 16/20.8, labels 13 */
h1{font-size:clamp(36px,3.9vw,56px);line-height:.96;letter-spacing:-.045em}h2{font-size:clamp(28px,3.2vw,46px);line-height:1.12;letter-spacing:-.03em}h3{font-size:24px;line-height:1.17;letter-spacing:-.02em}
section{position:relative;overflow:hidden}
.bk{background:#000;color:#fff}.wh{background:#fff;color:#0c0c0c}.gr{background:#f1f1ef;color:#0c0c0c}
.pad{padding:104px max(20px,env(safe-area-inset-left,0px))}.in{max-width:1240px;margin:0 auto;position:relative}
.lead{font-size:20px;line-height:1.4;max-width:560px;margin-top:18px}.bk .lead{color:#cfcfcf}.wh .lead,.gr .lead{color:#404040}
.eye{font-size:13px;letter-spacing:.1em;text-transform:uppercase;opacity:.7;margin-bottom:14px}
.wh h2 .ac,.gr h2 .ac{background:linear-gradient(95deg,#52d0a8,#2b7ddc);-webkit-background-clip:text;background-clip:text;color:transparent}
.ac.hue,.acg.hue{animation:ghue 2.4s ease-in-out infinite}@keyframes ghue{0%,100%{filter:hue-rotate(0deg)}30%{filter:hue-rotate(48deg)}68%{filter:hue-rotate(-42deg)}}.wsy2 .c.hue{animation:ghuec 2.4s ease-in-out infinite}@keyframes ghuec{0%,100%{filter:hue-rotate(0deg) drop-shadow(0 2px 10px rgba(0,0,0,.45))}30%{filter:hue-rotate(48deg) drop-shadow(0 2px 10px rgba(0,0,0,.45))}68%{filter:hue-rotate(-42deg) drop-shadow(0 2px 10px rgba(0,0,0,.45))}}@media(prefers-reduced-motion:reduce){.ac.hue,.acg.hue,.wsy2 .c.hue{animation:none}}
.acts{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}
.hw,.hn{font-family:var(--main);font-weight:400;letter-spacing:-.01em;line-height:1.2;font-variant-ligatures:none;font-feature-settings:"liga" 0,"clig" 0,"calt" 0}
.sl .meta.hn{font-size:17px;letter-spacing:-.01em;opacity:.95;gap:10px 28px}
.bk h2 .acg{background:linear-gradient(95deg,#52d0a8,#2b7ddc);-webkit-background-clip:text;background-clip:text;color:transparent}
.tag{position:absolute;z-index:5;left:max(14px,env(safe-area-inset-left,0px));top:14px;font:600 11px/1 var(--main);letter-spacing:.12em;text-transform:uppercase;padding:6px 10px;border-radius:99px;background:#0c0c0c;color:#fff;border:1px solid rgba(255,255,255,.25)}
.wh .tag,.gr .tag{background:#fff;color:#0c0c0c;border-color:rgba(0,0,0,.25)}
.nt{font-size:13px;opacity:.6;margin-top:10px;max-width:640px}
/* lab bar */
.bar{position:fixed;z-index:100;inset:0 0 auto 0;height:56px;background:#0c0c0c;color:#fff;display:flex;align-items:center;gap:18px;padding:0 max(16px,env(safe-area-inset-left,0px));font:500 13px/1 var(--main);overflow-x:auto;white-space:nowrap;border-bottom:1px solid #2a2a2a}
.bar b{font-weight:600;letter-spacing:-.01em;font-size:15px}.bar a{text-decoration:none;opacity:.75}.bar a:hover,.bar a.cur{opacity:1}
.bar .grp{display:flex;align-items:center;gap:6px}.bar label{opacity:.6}
.seg{font:500 12px/1 var(--main);color:#fff;background:#1b1b1b;border:1px solid #333;border-radius:99px;padding:7px 11px;cursor:pointer}.seg.on{background:#fff;color:#000;border-color:#fff}
.bar select{font:500 13px var(--main);background:#1b1b1b;color:#fff;border:1px solid #333;border-radius:99px;padding:6px 10px}
/* marks: hand-drawn images, ink = current colour, revealed with a pen-like wipe */
.mk{position:absolute;pointer-events:none;display:block;background:currentColor;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;clip-path:inset(0 100% 0 0);transition:clip-path 1s cubic-bezier(.4,0,.2,1)}
.mk.on{clip-path:inset(0 0 0 0)}
.mk.now{clip-path:none!important;transition:none!important}
/* focal-length ruler (from the lens barrel): long tick every 85px, four short between, faded ends */
.fr{height:32px;width:100%;background:currentColor;opacity:.55;-webkit-mask:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 85 32' width='85' height='32'%3E%3Cpath fill='black' d='M0 4h1v28H0zM17 20h1v12h-1zM34 20h1v12h-1zM51 20h1v12h-1zM68 20h1v12h-1z'/%3E%3C/svg%3E") repeat-x left bottom/85px 32px,linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 85 32' width='85' height='32'%3E%3Cpath fill='black' d='M0 4h1v28H0zM17 20h1v12h-1zM34 20h1v12h-1zM51 20h1v12h-1zM68 20h1v12h-1z'/%3E%3C/svg%3E") repeat-x left bottom/85px 32px,linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);-webkit-mask-composite:source-in;mask-composite:intersect}
.fl3 .fr{height:22px;-webkit-mask-size:60px 22px,100% 100%;mask-size:60px 22px,100% 100%}.fl3 .frl{font-size:10px;margin-top:6px}.fl3 .frm{top:0;height:22px;width:1px;background:#b4b4b4;opacity:1}
.frl{display:flex;justify-content:space-between;font-size:13px;letter-spacing:.02em;margin-top:10px;opacity:.7}
.fz{position:absolute;inset:0;transition:opacity .8s ease;transform-origin:50% 50%}
.frm{position:absolute;top:-6px;bottom:auto;left:var(--p,0%);width:2px;height:44px;margin-left:-1px;background:currentColor;opacity:.9;pointer-events:none}

/* loops */
.lv{background:#111;width:100%;height:100%;object-fit:cover}
/* Runway-style moment frames: no border, no shadow, rounded media, caption below */
.mo{display:block}
.mo img,.mo video{width:100%;height:auto;border-radius:var(--rad)}
.mh .mw{position:relative;border-radius:var(--rad);overflow:hidden}.mh .mw img{border-radius:0}
.mh video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .25s;border-radius:0}.mh.hot video{opacity:1}
.mo figcaption{padding:12px 2px 0;font-size:14px;line-height:1.35;color:#404040}.bk .mo figcaption{color:#cfcfcf}
/* film strip */
.strip{--gap:calc(var(--fw) * .012);--cell:calc(var(--fw) + var(--gap));--pitch:calc(var(--cell) / var(--npv,9));--base:#0a0a0a;position:relative;overflow:hidden;color:#e7b04c}
.bk .strip{--base:#2b2b2a}/* G 2026-10-31: a little more grey so the strip separates from black */
/* G 2026-10-31: the holes show what the strip overlaps: white where a white section meets that edge, black where it meets black */
.strip{background:#000}
:is(.wh,.gr)+section .strip{background:linear-gradient(#fff 50%,#000 50%)}
section:has(+ :is(.wh,.gr)) .strip{background:linear-gradient(#000 50%,#fff 50%)}
:is(.wh,.gr)+section:has(+ :is(.wh,.gr)) .strip{background:#fff}
section.wh .strip,section.gr .strip{background:#fff}
.he .strip{background:none}
.strip .tk{width:calc(var(--cell) * var(--n));display:block}
.strip .tk.drift{animation:drift var(--dur,84s) linear infinite}
@keyframes drift{to{transform:translateX(-50%)}}
.strip.rev .tk.drift{animation-direction:reverse}
.strip .bd,.strip .rw{background:var(--base)}
.strip .bd:before,.strip .rw:before{content:"";position:absolute;inset:0;background-image:var(--noise);opacity:.14;pointer-events:none;mix-blend-mode:screen}
.strip.g0 .bd:before,.strip.g0 .rw:before{display:none}
.strip.white{--base:#f3f1ea;color:#e7b04c}.bk .strip.white{--base:#f3f1ea}
.strip.white .bd:before,.strip.white .rw:before{display:none}
.strip .bd{position:relative;height:calc(var(--pitch) * 1.02);-webkit-mask-size:var(--pitch) 100%;mask-size:var(--pitch) 100%;-webkit-mask-repeat:repeat-x;mask-repeat:repeat-x}
.strip .bd.t{-webkit-mask-image:var(--tt);mask-image:var(--tt)}.strip .bd.b{-webkit-mask-image:var(--tb);mask-image:var(--tb)}
.strip .rw{position:relative;display:flex;padding:calc(var(--pitch) * .1) 0}
.strip .fm{flex:none;width:var(--fw);margin-right:var(--gap);aspect-ratio:21/9;overflow:hidden;border-radius:2px;background:#111}
.strip .fm .im{width:100%;height:100%}
.strip .fm img,.strip .fm video{width:100%;height:100%;object-fit:cover}
.strip .et{position:absolute;left:0;right:0;display:flex;font:600 calc(var(--fw) * .019)/1 var(--main);letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;opacity:.82}
.strip .bd.t .et{bottom:calc(var(--pitch) * .06)}.strip .bd.b .et{top:calc(var(--pitch) * .06)}
.strip .et .c{flex:none;width:var(--cell);padding-left:calc(var(--pitch) * .3);display:flex;align-items:center;gap:.5em}
.strip .et i{font-style:normal;font-size:1.1em}.strip .et s{width:1.4em}
.fm.loupe{position:relative}
.loupe{cursor:crosshair}.loupe .lp{position:absolute;left:0;top:0;width:140px;height:140px;border-radius:50%;border:3px solid #fff;pointer-events:none;opacity:0;background-repeat:no-repeat;box-shadow:0 8px 30px rgba(0,0,0,.6);transition:opacity .2s;z-index:3;will-change:transform}
/* pills, tabs, steps, Runway reference bar */
.pill{font:500 14px/1 var(--main);border:1px solid #cfcfcf;background:#fff;color:#0c0c0c;border-radius:99px;padding:11px 18px;cursor:pointer}.pill.on{background:#0c0c0c;color:#fff;border-color:#0c0c0c}
.stp{display:flex;gap:16px;width:100%;text-align:left;font:400 18px/1.3 var(--main);background:none;border:0;border-top:1px solid #d6d6d6;padding:18px 0;cursor:pointer;color:#0c0c0c;opacity:.55}.stp.on{opacity:1}
.stp b{font-weight:600;display:block}.stp .std{display:block;font-size:15px;color:#404040;margin-top:4px}.stp .stn{font-size:14px;opacity:.6;padding-top:3px}
.rwbar{position:relative;display:flex;gap:16px;align-items:center;padding:54px 20px 14px;background:#f1f1ef;color:#0c0c0c;font-size:13px;line-height:1.4}
.rwbar b{display:block;font-size:14px}.rwbar span{opacity:.7;display:block;max-width:760px}
.rwt{flex:none;width:150px;position:relative;z-index:6}.rwt img{width:150px;height:auto;border-radius:3px;transition:transform .2s;transform-origin:left top}.rwt:hover img{transform:scale(3.2);position:relative}
/* auto-advancing cycles (RW3, RW8): crossfade media, progress line, smooth text */
.cy-p{position:absolute;inset:0;opacity:0;z-index:1;transition:opacity 0s 1s;pointer-events:none}.cy-p.on{opacity:1;z-index:2;transition:none}.cy-p.on.fx{animation:swwipe 1s cubic-bezier(.7,0,.2,1) both}.cy-p video,.cy-p img{width:100%;height:100%;object-fit:cover}.cy-p.on.fx video,.cy-p.on.fx img{animation:swzoom 1.8s cubic-bezier(.2,.7,.2,1) both}
/* Star Wars wipe: a slanted edge sweeps across and reveals the next picture while the last one stays underneath */
@keyframes swwipe{from{clip-path:polygon(0 0,0 0,-14% 100%,0 100%)}to{clip-path:polygon(0 0,114% 0,100% 100%,0 100%)}}@keyframes swzoom{from{transform:scale(1.1)}to{transform:scale(1)}}
.cy-i.on .dsc2{animation:txwipe .9s cubic-bezier(.7,0,.2,1) .15s both}@keyframes txwipe{from{clip-path:polygon(0 0,0 0,-10% 100%,0 100%);opacity:.3;transform:translateX(-10px)}to{clip-path:polygon(0 0,112% 0,102% 100%,0 100%);opacity:1;transform:none}}
.pg{display:block;height:1px;width:0;background:currentColor}
.cy-i.on .pg{animation:cyfill var(--ms,5000ms) linear forwards}
@keyframes cyfill{to{width:100%}}
.cs{display:block;width:100%;text-align:left;font:400 18px/1.3 var(--main);background:none;border:1px solid transparent;border-radius:var(--rad);padding:20px 22px;cursor:pointer;color:#0c0c0c;transition:background .5s ease,border-color .5s ease,box-shadow .5s ease}
.cs .cn{flex:none;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;font-size:14px;background:#e6e6e6;color:#777;transition:background .5s ease,color .5s ease}
.cs .ct{display:flex;gap:16px;align-items:center;font-weight:500;color:#555;transition:color .5s ease}
.cs .dsc{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .5s ease,opacity .5s ease;padding-left:52px}.cs .dsc>span{overflow:hidden;font-size:15px;color:#404040;line-height:1.45}
.cs.on{background:none;border-color:transparent;box-shadow:none}.cs.on .cn{background:#0c0c0c;color:#fff}.cs.on .ct{color:#0c0c0c}.cs.on .dsc{grid-template-rows:1fr;opacity:1;margin-top:8px}
.cl{display:block;width:100%;text-align:left;font:400 clamp(20px,1.9vw,26px)/1.2 var(--main);background:none;border:0;padding:12px 0 12px 0;cursor:pointer;color:#bdbdbd;transition:color .5s ease,padding-left .6s cubic-bezier(.2,.7,.2,1)}.cl.on{color:#3a3a3a;padding-left:14px}
.tabx{font:500 clamp(18px,1.7vw,24px)/1 var(--main);letter-spacing:-.01em;background:none;border:0;padding:0;cursor:pointer;color:#9a9a9a;display:block;text-align:left;transition:color .4s}.tabx.on{color:#222}
.tabl{display:block;height:1px;background:#e4e4e4;margin-top:14px;position:relative}.tabl i{position:absolute;left:0;top:0;height:1px;background:#9a9a9a;width:0;transition:width .7s cubic-bezier(.2,.7,.2,1)}
.pnw{display:grid}.pnw>[data-pn]{grid-area:1/1;min-width:0;background:#fff}.pnout{z-index:1}.pnin{z-index:2;animation:pnin .9s cubic-bezier(.7,0,.2,1)}@keyframes pnin{from{clip-path:polygon(0 0,0 0,-12% 100%,0 100%)}to{clip-path:polygon(0 0,115% 0,103% 100%,0 100%)}}@media (prefers-reduced-motion:reduce){.pnin{animation:none}}.on+.tabl i,.tabx.on .tabl i{width:100%}
.d10{transition:flex-grow .6s cubic-bezier(.65,0,.35,1),flex .6s cubic-bezier(.65,0,.35,1);will-change:transform}.d10:hover{flex-grow:2.4!important}
@media (prefers-reduced-motion:reduce){.cy-i.on .pg{animation:none;width:100%}.cy-p,.cs,.cs .dsc,.cs .cn{transition:none}.cy-p.on,.cy-p.on video,.cy-p.on img,.cy-i.on .dsc2{animation:none}}
/* panels */
.pn{overflow:hidden;border-radius:var(--rad);background:#111;position:relative}
.pn video,.pn img{width:100%;height:100%;object-fit:cover}
/* slides 21:9 */
.sl{position:relative;aspect-ratio:21/9;overflow:hidden;background:#111;color:#fff}
.sl>img,.sl>video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.sl .tx{position:absolute;z-index:2;text-shadow:0 2px 18px rgba(0,0,0,.55),0 1px 3px rgba(0,0,0,.6)}
.sl:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.5),rgba(0,0,0,0) 62%)}
.sl.r:after{background:linear-gradient(270deg,rgba(0,0,0,.5),rgba(0,0,0,0) 62%)}
.sl .meta{display:flex;gap:22px;flex-wrap:wrap;font-size:13px;letter-spacing:.06em;text-transform:uppercase;opacity:.9;margin-top:18px}
@media (max-width:760px){
.sl{aspect-ratio:auto;min-height:440px}.sl .tx{position:relative;padding:150px 20px 28px;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;max-width:none!important}
.pad{padding-top:88px;padding-bottom:72px}
.bar{gap:12px}
}
@media (max-width:700px){.hw,.mk:not(.num){display:none!important}}
@media (prefers-reduced-motion:reduce){.strip .tk.drift{animation:none}.mk{transition:none;clip-path:inset(0 0 0 0)}html{scroll-behavior:auto}}
}
:root{--tt:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 102' preserveAspectRatio='none'%3E%3Cpath fill-rule='evenodd' d='M0 0H100V102H0Z M29 12H71A7 7 0 0 1 78 19V44.2A7 7 0 0 1 71 51.2H29A7 7 0 0 1 22 44.2V19A7 7 0 0 1 29 12Z'/%3E%3C/svg%3E");--tb:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 102' preserveAspectRatio='none'%3E%3Cpath fill-rule='evenodd' d='M0 0H100V102H0Z M29 50.8H71A7 7 0 0 1 78 57.8V83.0A7 7 0 0 1 71 90.0H29A7 7 0 0 1 22 83.0V57.8A7 7 0 0 1 29 50.8Z'/%3E%3C/svg%3E");--noise:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .55 -.08'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}

.sh.chv svg{stroke:#b4b4b4;transition:stroke .3s}[data-reveal]:hover .sh.chv svg{stroke:#0c0c0c}

.acg,.ac{background:linear-gradient(95deg,#52d0a8,#2b7ddc);-webkit-background-clip:text;background-clip:text;color:transparent}
/* RW1H hero card + numbered focal ruler (black on white, faded sides, drifts right; the logo strip drifts left) */
.hcard{position:relative;margin:0 20px;height:600px;border-radius:var(--rad);overflow:hidden;background:#111;color:#fff}.hmed{position:absolute;inset:0}.hshade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05) 35%,rgba(0,0,0,.72))}
.htx{position:absolute;left:clamp(20px,4vw,56px);right:20px;bottom:clamp(24px,4vw,56px);max-width:760px}.htx h1{font-size:clamp(30px,2.8vw,40px);line-height:1.15;letter-spacing:-.035em}.htx .lead{color:#e9e9e9;margin-top:16px;max-width:560px}.hnote{font-size:14px;line-height:1.4;margin-top:18px;opacity:.9}@media(max-width:700px){.hcard{height:auto;min-height:560px;display:flex;align-items:flex-end}.htx{position:relative;left:auto;right:auto;bottom:auto;padding:28px 20px;max-width:none;z-index:1}}
.ruler{position:relative;height:30px;margin:20px auto 0;max-width:640px;overflow:hidden;color:#0c0c0c;background:#fff;-webkit-mask-image:linear-gradient(90deg,transparent,#000 30%,#000 70%,transparent);mask-image:linear-gradient(90deg,transparent,#000 30%,#000 70%,transparent)}
.rk-w{position:relative;width:calc(100% + 600px);height:30px;animation:rk 36s linear infinite}
.rk{position:absolute;inset:0;background:currentColor;opacity:.4;-webkit-mask:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 85 32' width='85' height='32'%3E%3Cpath fill='black' d='M0 4h1v28H0zM17 20h1v12h-1zM34 20h1v12h-1zM51 20h1v12h-1zM68 20h1v12h-1z'/%3E%3C/svg%3E") repeat-x left bottom/60px 22px;mask:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 85 32' width='85' height='32'%3E%3Cpath fill='black' d='M0 4h1v28H0zM17 20h1v12h-1zM34 20h1v12h-1zM51 20h1v12h-1zM68 20h1v12h-1z'/%3E%3C/svg%3E") repeat-x left bottom/60px 22px}
.rn{position:absolute;inset:0;display:flex}.rn span{flex:none;width:60px;padding-left:5px;font:400 9px/12px var(--main);letter-spacing:.06em;color:#0c0c0c;opacity:.4}
@keyframes rk{from{transform:translateX(-600px)}to{transform:translateX(0)}}@media(prefers-reduced-motion:reduce){.rk-w,.marq .track{animation:none}}
/* CR1 credits marquee: five 200px slots visible, edges fade before a sixth shows, real colours */
.cap{font-size:14px;line-height:20px;color:#6b7280;text-align:center}
.marq{position:relative;overflow:hidden;margin:20px auto 0;max-width:1000px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 14%,#000 86%,transparent);mask-image:linear-gradient(90deg,transparent,#000 14%,#000 86%,transparent)}
.marq .track{display:flex;white-space:nowrap;width:max-content;animation:mq 36s linear infinite}
.marq .it{flex:none;width:200px;display:flex;align-items:center;justify-content:center;height:90px}.marq .it img{width:auto;max-width:150px;max-height:84px;object-fit:contain}.marq .nm{font:600 22px/1 var(--main);letter-spacing:-.02em;color:#0c0c0c}
@keyframes mq{to{transform:translateX(-25%)}}
/* RW3 / RW3L: sentence under the active row; ctas under the list */
.dsc2{display:none;font:400 16px/1.3 var(--main);letter-spacing:0;color:#404040;margin-top:8px;max-width:340px}.cy-i.on .dsc2{display:block}.rw3c .acts{margin-top:22px}
/* WS1 blurred variant (the "Our films" band pattern) + script type */
.mblur{position:absolute;left:0;top:0;bottom:0;width:68%;background:linear-gradient(90deg,rgba(10,8,6,.78),rgba(10,8,6,.5) 70%,transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);-webkit-mask-image:linear-gradient(90deg,#000 62%,transparent);mask-image:linear-gradient(90deg,#000 62%,transparent);z-index:1}
.sl .tx{z-index:2}.sl .tx.spread{display:flex;flex-direction:column;justify-content:space-between}.sl .tx.spread .wsp{margin-top:0;font-size:22px;line-height:1.5}.wsh{font-size:clamp(28px,2.6vw,36px);line-height:1.05}.wsp{font-size:20px;line-height:1.4;margin-top:12px;max-width:600px}.wsh+.wsp{margin-top:14px}
/* EL3 storyboard captions (SB1C pattern) */
.sbrow{display:grid;grid-template-columns:78px minmax(0,1fr);gap:0 10px;padding:14px 0 0;margin-top:14px;border-top:1px solid #d6d6d6}.sbl{font:400 13px/20px var(--main);color:#8a8a8a}.sbt{font-size:19px;line-height:1.3}
/* PR1 price card (live-site pattern; the number is the one deliberate exception to the 56px cap, as on the live site) */
.pcard{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:center;padding:clamp(28px,4vw,56px);border-radius:28px;border:1px solid #cfe7ee;background:radial-gradient(120% 140% at 0 0,#d9f2f8 0,#f6f8fb 48%,#ebe7fb 100%)}
.pcard .pl{font:400 clamp(22px,2vw,28px)/1.1 var(--main);letter-spacing:-.03em;margin:0}.pcard .pn15{font:400 clamp(88px,11vw,168px)/.95 var(--main);letter-spacing:-.06em;margin:6px 0 0}@media(max-width:820px){.pcard{grid-template-columns:1fr}}

.fn{color:inherit;text-decoration:none;margin-left:1px}
.stg{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,3vw,44px);margin-top:48px}
.stn{font:400 clamp(46px,5.5vw,84px)/.95 var(--main);letter-spacing:-.055em;white-space:nowrap}.stl{font-size:clamp(17px,1.4vw,21px);line-height:1.3;margin-top:14px;max-width:300px}
.stclose{margin-top:48px;max-width:640px}
.st1 .stc{border-top:1px solid #0c0c0c;padding-top:22px}.st1 .stl{color:#404040}
.st2{text-align:center}.st2 h2{max-width:900px;margin:0 auto}.st2 .stc{padding:6px 0 6px;border-left:1px solid rgba(255,255,255,.28)}.st2 .stc:first-child{border-left:0}.st2 .stl{margin-left:auto;margin-right:auto;color:#cfcfcf}.st2 .stclose{margin-left:auto;margin-right:auto;color:#fff}
.st3{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(30px,5vw,80px);align-items:start}.st3 .stg{grid-template-columns:1fr;gap:0;margin-top:0}.st3 .stc{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:24px;align-items:center;border-top:1px solid rgba(255,255,255,.28);padding:26px 0}.st3 .stc:last-child{border-bottom:1px solid rgba(255,255,255,.28)}.st3 .stl{color:#cfcfcf}.st3 .stn{font-size:clamp(44px,5vw,76px)}.st3 .stl{margin-top:0}.st3 .stclose{color:#fff}
.srcs{margin:0;padding-left:20px;font-size:13px;line-height:1.55;color:#6b6b6b;max-width:980px;display:flex;flex-direction:column;gap:6px}.srcs a{color:inherit;text-decoration:underline;text-underline-offset:2px;word-break:break-all}
@media(max-width:820px){.stg{grid-template-columns:1fr;gap:0;margin-top:30px}.st1 .stc{margin-top:26px}.st2 .stc{border-left:0;border-top:1px solid rgba(255,255,255,.28);padding:22px 0}.st2 .stc:first-child{border-top:0}.st3{grid-template-columns:1fr}.st3 .stc{grid-template-columns:1fr;gap:6px}}

.ty1{text-align:center;max-width:1080px}.ty1 h2{max-width:900px;margin:0 auto}
.ty1big{font-size:clamp(28px,3.2vw,46px);line-height:1.12;letter-spacing:-.03em;max-width:900px;margin:48px auto 0}
.ty1sub{font-size:clamp(19px,1.7vw,24px);line-height:1.35;color:#404040;max-width:640px;margin:26px auto 0}
.ty1row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);margin-top:72px;text-align:left}
.ty1c{border-top:1px solid #0c0c0c;padding-top:26px}
.ty1n{font:400 clamp(64px,8vw,120px)/.95 var(--main);letter-spacing:-.055em}.ty1l{font-size:clamp(17px,1.4vw,21px);line-height:1.3;color:#404040;margin-top:14px;max-width:360px}.ty1l .fn{color:inherit}
.ty1q{font-size:clamp(24px,2.5vw,36px);line-height:1.15;letter-spacing:-.025em}
.ty1br{font-size:clamp(17px,1.4vw,21px);color:#6b6b6b;margin-top:64px}
@media(max-width:820px){.ty1row{grid-template-columns:1fr;margin-top:48px}}

.pp{background:#f3f1ea;color:#0c0c0c}
/* TX1: heading a step smaller, no resting lines, the homepage lens ruler comes out on hover and slows to a stop */
.tx1{display:grid;grid-template-columns:1fr;gap:clamp(36px,5vw,72px)}
.tx1h h2{font-size:min(clamp(64px,8vw,124px),12vw);line-height:.95;letter-spacing:-.06em}
.tx1l{list-style:none;margin:0;padding:0}
.tx1r{position:relative;display:grid;grid-template-columns:56px minmax(0,5fr) minmax(0,7fr);gap:12px clamp(20px,4vw,56px);padding:58px 0 34px;opacity:.28;transform:translateY(14px);transition:opacity .7s var(--sig),transform .7s var(--sig);outline:none}
.tx1r>div:not(.txr){display:contents}
.tx1r.on{opacity:1;transform:none}
.txr{position:absolute;left:0;top:14px;width:100%;height:30px;overflow:hidden;color:#0c0c0c;-webkit-mask-image:linear-gradient(90deg,transparent,#000 14%,#000 86%,transparent);mask-image:linear-gradient(90deg,transparent,#000 14%,#000 86%,transparent);clip-path:inset(0 100% 0 0);transition:clip-path 1.5s cubic-bezier(.1,.8,.2,1);pointer-events:none;display:block}
.txk{position:absolute;inset:0;background:currentColor;opacity:.4;-webkit-mask:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 85 32' width='85' height='32'%3E%3Cpath fill='black' d='M0 4h1v28H0zM17 20h1v12h-1zM34 20h1v12h-1zM51 20h1v12h-1zM68 20h1v12h-1z'/%3E%3C/svg%3E") repeat-x left bottom/60px 22px;mask:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 85 32' width='85' height='32'%3E%3Cpath fill='black' d='M0 4h1v28H0zM17 20h1v12h-1zM34 20h1v12h-1zM51 20h1v12h-1zM68 20h1v12h-1z'/%3E%3C/svg%3E") repeat-x left bottom/60px 22px}
.txn{position:absolute;inset:0;display:flex}.txn span{flex:none;width:60px;padding-left:5px;font:400 9px/12px var(--main);letter-spacing:.06em;color:#0c0c0c;opacity:.4}
.tx1n{font-size:15px;line-height:2.2;font-variant-numeric:tabular-nums;color:#9a9a9a;transition:color .5s}.tx1r.on .tx1n{color:#0c0c0c}
.tx1t{font-size:clamp(24px,2.3vw,34px);line-height:1.14;letter-spacing:-.025em;transition:transform .9s cubic-bezier(.1,.8,.2,1)}
.tx1b{font-size:19px;line-height:1.45;color:#404040;max-width:580px;transition:transform .9s cubic-bezier(.1,.8,.2,1) .04s}
@media(hover:hover){.tx1l:hover .tx1r.on{opacity:.4}.tx1l .tx1r.on:hover,.tx1l .tx1r.on:focus-visible{opacity:1}}
.tx1r.on:hover .txr,.tx1r.on:focus-visible .txr{clip-path:inset(0)}
.tx1r.on:hover .tx1t,.tx1r.on:focus-visible .tx1t,.tx1r.on:hover .tx1b,.tx1r.on:focus-visible .tx1b{transform:translateX(12px)}
/* TX2 scroll-fade statement (approved direction) */
.pad:has(>.tx2){padding-top:160px;padding-bottom:160px}
.tx2{max-width:1120px}.tx2s{font-size:clamp(34px,4.6vw,68px);line-height:1.06;letter-spacing:-.04em}
.txw{opacity:.16;transition:opacity .5s ease-out}
.tx2f{font-size:19px;line-height:1.45;color:#9a9a9a;margin-top:44px;max-width:620px}
.tx2c{max-width:980px;margin-left:auto;margin-right:auto;text-align:center}.tx2c .tx2f{margin-left:auto;margin-right:auto}
.sbc>h2,.sbc>.lead{text-align:center;margin-left:auto;margin-right:auto}.sbc>h2{max-width:860px}.sbc>.lead{max-width:680px!important;text-align:justify;text-align-last:center}
.tx2c .tx2f{text-align:justify;text-align-last:center}
@media(max-width:700px){.sbc>.lead,.tx2c .tx2f{text-align:center;text-align-last:auto}}
/* TX3 strike and replace: hover only, stays until scrolled away */
.tx3 h2{max-width:900px}.tx3big h2{max-width:1180px;font-size:clamp(44px,7.2vw,112px);line-height:1.02;letter-spacing:-.03em}
.b3l{display:grid;gap:clamp(36px,5vw,64px);margin-top:clamp(40px,5vw,72px)}
.b3p{outline:none;max-width:980px}
.b3u{font-size:clamp(24px,3vw,44px);line-height:1.2;letter-spacing:-.03em;color:#6b6b6b}
.b3u span{background:linear-gradient(currentColor,currentColor) no-repeat 0 58%/0 1.5px;-webkit-box-decoration-break:clone;box-decoration-break:clone;transition:background-size .7s cubic-bezier(.2,.7,.2,1)}
.b3o{font-size:clamp(28px,3.6vw,54px);line-height:1.1;letter-spacing:-.04em;margin-top:12px;opacity:0;transform:translateY(14px);transition:opacity .6s .45s,transform .7s .45s var(--sig)}
.b3p.hit .b3u span{background-size:100% 1.5px}.b3p.hit .b3o{opacity:1;transform:none}
@media(hover:none){.b3u span{background-size:100% 1.5px}.b3o{opacity:1;transform:none}}
/* TX4: a real screenplay page. Courier, 12pt-style, 1.5in left margin; widths in characters like the real thing (action 60, dialogue 35 at 10, character at 22, parenthetical at 16 for 20) */
.tx4p{width:min(100%,calc(60ch + clamp(48px,9vw,132px)));box-sizing:border-box;margin:0 auto;padding:clamp(36px,6vw,80px) clamp(24px,4.5vw,66px);background:#fff;box-shadow:0 0 0 1px rgba(12,12,12,.1),0 24px 60px -30px rgba(12,12,12,.35);font-family:"Courier Prime","Courier New",Courier,monospace;font-size:clamp(12px,1.35vw,17px);line-height:1.25;letter-spacing:0;color:#0c0c0c}
.tx4p>p{margin:0;opacity:0;transform:translateY(8px);transition:opacity .7s ease-out calc(var(--i,0) * 110ms),transform .7s ease-out calc(var(--i,0) * 110ms)}.tx4p>p.on{opacity:1;transform:none}
.tx4trans{text-transform:uppercase;text-align:right;margin-top:2.5em!important}.tx4trans:first-child{text-align:left;margin-top:0!important}
.tx4scene{text-transform:uppercase;margin-top:2.5em!important}
.tx4action{margin-top:1.25em!important}
.tx4character{text-transform:uppercase;margin:1.25em 0 0 22ch!important}
.tx4paren{margin:0 0 0 16ch!important;max-width:20ch}
.tx4dialogue{margin:0 0 0 10ch!important;max-width:35ch}
/* TX5 text steps: ruler scale inks in */
.tx5t{margin-top:56px;position:relative}
.tx5bar{height:20px;position:relative;background:rgba(12,12,12,.2);-webkit-mask:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 85 32' width='85' height='32'%3E%3Cpath fill='black' d='M0 4h1v28H0zM17 20h1v12h-1zM34 20h1v12h-1zM51 20h1v12h-1zM68 20h1v12h-1z'/%3E%3C/svg%3E") repeat-x left bottom/auto 20px;mask:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 85 32' width='85' height='32'%3E%3Cpath fill='black' d='M0 4h1v28H0zM17 20h1v12h-1zM34 20h1v12h-1zM51 20h1v12h-1zM68 20h1v12h-1z'/%3E%3C/svg%3E") repeat-x left bottom/auto 20px}.tx5bar i{position:absolute;left:0;top:0;bottom:0;width:calc(var(--p,0) * 100%);background:#0c0c0c}
.tx5s{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(var(--n),minmax(0,1fr));gap:clamp(20px,3vw,44px)}
.tx5s li{padding-top:30px;opacity:calc(.12 + .88 * var(--s,0));transform:translateY(calc((1 - var(--s,0)) * 26px))}
.tx5n{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;border:1px solid rgba(12,12,12,.3);font-size:15px;font-variant-numeric:tabular-nums;background:rgba(12,12,12,calc(var(--s,0)));color:#0c0c0c;transition:color .3s}
.tx5s li.on .tx5n{color:#fff;border-color:#0c0c0c}
.tx5h{font-size:clamp(22px,2vw,28px);line-height:1.15;letter-spacing:-.02em;margin-top:20px}
.tx5b{font-size:18px;line-height:1.45;color:#404040;margin-top:10px;max-width:380px}
/* G 2026-10-31: right-justified variant of TX5 and TX6 (right=True), to break up runs of left-set text */
.tx5.rj,.tx6.rj{text-align:right}.tx5.rj h2,.tx6.rj h2{margin-left:auto}.tx5.rj .tx5b,.tx6.rj .tx6b{margin-left:auto}.tx6.rj .tx6b{margin-right:18px}.tx6.rj .tx6r:hover .tx6t,.tx6.rj .tx6r:focus-visible .tx6t{transform:translateX(-18px)}
/* TX6 rollover list: a big title over row titles that are a step smaller */
.tx6 h2{font-size:min(clamp(56px,8vw,120px),13vw);line-height:.98;letter-spacing:-.055em;max-width:1000px}.tx6l{list-style:none;margin:clamp(40px,5vw,72px) 0 0;padding:0}
.tx6r{padding:22px 0;outline:none;transition:opacity .4s var(--sig)}
.tx6t{font-size:clamp(28px,3.6vw,54px);line-height:1.04;letter-spacing:-.04em;transition:transform .55s var(--sig)}
.tx6b{font-size:19px;line-height:1.4;color:#b4b4b4;max-width:560px;margin:12px 0 4px 18px;opacity:0;transform:translateY(-6px);transition:opacity .45s ease,transform .55s var(--sig)}
@media(hover:hover){.tx6l:hover .tx6r{opacity:.32}.tx6l .tx6r:hover,.tx6l .tx6r:focus-visible{opacity:1}}
.tx6r:hover .tx6t,.tx6r:focus-visible .tx6t{transform:translateX(18px)}
.tx6r:hover .tx6b,.tx6r:focus-visible .tx6b{opacity:1;transform:none}
/* TX7 word swap: "the" stays, the word changes on its own with a hard slanted wipe */
.tx7l{font-size:clamp(20px,2vw,28px);letter-spacing:-.02em;color:#6b6b6b}
.tx7r{display:flex;align-items:flex-start;gap:.26em;margin-top:10px;font-size:clamp(46px,8.6vw,128px);line-height:1;letter-spacing:-.055em;white-space:nowrap}
.tx7t{flex:none}
.tx7ws{position:relative;flex:1;min-width:0;height:1.18em;margin-top:-.01em}
.tx7w{position:absolute;left:0;top:0;opacity:0;white-space:nowrap}
.tx7w.prev{opacity:1;z-index:1}
.tx7w.on{opacity:1;z-index:2;background:#fff;width:100%;animation:tx7in 1.3s cubic-bezier(.65,0,.25,1) both}
@keyframes tx7in{from{clip-path:polygon(0 -12%,0 -12%,-14% 112%,0 112%)}to{clip-path:polygon(0 -12%,114% -12%,100% 112%,0 112%)}}
.tx7f{font-size:19px;line-height:1.45;color:#404040;margin-top:30px;max-width:520px}
@media(max-width:820px){.tx1r{grid-template-columns:36px minmax(0,1fr)}.tx1r>div:not(.txr){display:block}.tx1b{margin-top:10px}.tx1r .tx1n{grid-row:1}.tx5s{grid-template-columns:1fr;gap:0}.tx5bar{display:none}.tx5s li{border-top:1px solid rgba(12,12,12,.14)}.pad:has(>.tx2){padding-top:110px;padding-bottom:110px}.tx6b{max-height:none;opacity:1;margin:10px 0 4px}.tx4character{margin-left:30%}.tx4dialogue{margin-left:8%;max-width:84%}.tx4paren{margin-left:20%;max-width:60%}.tx7r{font-size:clamp(40px,11.5vw,80px)}}
@media(prefers-reduced-motion:reduce){.tx1r,.tx4p>p,.txw,.tx5s li{opacity:1!important;transform:none!important;transition:none!important}.tx6b{max-height:none;opacity:1}.tx7w{position:static;display:none;opacity:1;animation:none!important}.tx7w.on{display:block}.b3o{opacity:1!important;transform:none!important}.b3u span{background-size:100% 1.5px!important;transition:none}.txr{display:none}}

.dk .marq img{filter:brightness(0) invert(1);opacity:.9}.dk .it.nm{color:#fff}.dk .cap{color:#8a8a8a}
.dk .cl{color:#8a8a8a}.dk .cl.on,.dk .cl:hover{color:#fff}.dk .dsc2{color:#cfcfcf}
.dk .tabx{color:#8a8a8a}.dk .tabx.on,.dk .tabx:hover{color:#fff}.dk .tabl{background:#2e2e2e}.dk .tabl i{background:#fff}.dk .pnw>[data-pn]{background:#000}.dk .rw3c .pg{color:#8a8a8a!important}
.dk p[style*="#404040"]{color:#cfcfcf!important}.dk .srcs a{color:#a8a8a8}
.faq.dk{background:#000;color:#fff}.faq.dk .fq-n{color:#8a8a8a}.faq.dk .fq-row.open .fq-n,.faq.dk .fq-q:hover .fq-n{color:#fff}.faq.dk .fq-a p{color:#cfcfcf}
.dk .wall{background:#000!important}
.dk .tx7w.on{background:#000}.dk .tx7l{color:#9a9a9a}.dk .tx7f{color:#cfcfcf}
.dk .tx1b{color:#b8b8b8}.dk .tx1n{color:#6a6a6a}.dk .tx1r.on .tx1n{color:#fff}.dk .txr,.dk .txn span{color:#fff}
.dk .ruler{background:#000;color:#fff}.dk .rn span{color:#fff}
.dk .ruler .rk,.dk .ruler .rn span{opacity:.75}
.dk .pcard{color:#0c0c0c}.dk .pcard .lead{color:#404040}.dk .pcard .btn.onmedia{background:#0c0c0c;color:#fff}.dk .pcard .btn.ghost{color:#0c0c0c;background:#fff}
.faq.dk .fq-i{border-color:#4a4a4a}.faq.dk .fq-i:before{background:#fff}.faq.dk .fq-i i{background:#fff}.faq.dk .fq-q:hover .fq-i i,.faq.dk .fq-row.open .fq-i i{background:#0c0c0c}

.l28{overflow:clip;scroll-margin-top:60px}
.f1x,#plan{scroll-margin-top:96px}.f1ok:focus{outline:none}.f1g{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(32px,6vw,96px);align-items:start}
.f1l h2{font-size:clamp(34px,4.2vw,60px);line-height:1;letter-spacing:-.045em}.f1l .acts{margin-top:24px}
.f1bf{margin:0 0 22px}.f1x.sent .f1bf{display:none}
.f1bt{display:flex;justify-content:space-between;font:500 14px/1 var(--main);margin-bottom:12px}.f1bt b{font-weight:600}.f1pc{color:#9a9a9a}.f1x.wh .f1pc{color:#595959}.f1x.full .f1pc{background:linear-gradient(95deg,#52d0a8,#2b7ddc);-webkit-background-clip:text;background-clip:text;color:transparent;font-weight:600}
.f1bar{height:6px;border-radius:99px;background:#3a3a3f;overflow:hidden}.f1x.wh .f1bar{background:#dcdcd8}.f1bar i{display:block;height:100%;width:0;border-radius:99px;background:linear-gradient(95deg,#52d0a8,#2b7ddc);transition:width .6s cubic-bezier(.05,.7,.1,1)}
.f1r{background:#232326;border:1px solid #38383c;border-radius:12px;padding:clamp(22px,3vw,36px)}.f1x.wh .f1r{background:#f6f6f4;border-color:#e2e2de}
.f1g>*,.f1form>*,.f1two>*{min-width:0}.f1r{min-width:0;box-sizing:border-box}.f1form{display:grid;gap:20px}.f1two{display:grid;grid-template-columns:1fr 1fr;gap:16px}.f1f{display:grid;gap:8px;font:500 15px/1.2 var(--main)}.f1f i,.f1p legend i{font-style:normal;font-weight:400;opacity:.6;margin-left:6px}
.f1f input{width:100%;min-width:0;box-sizing:border-box;font:400 16px/1.2 var(--main);color:inherit;background:#000;border:1px solid #3a3a3e;border-radius:8px;padding:14px;min-height:48px;transition:border-color .3s,box-shadow .3s}.f1x.wh .f1f input{background:#fff;border-color:#c9c9c4}
.f1f input:focus{outline:none;border-color:#52d0a8;box-shadow:0 0 0 3px rgba(82,208,168,.25)}.f1f input:not(:placeholder-shown):valid{border-color:#2b7ddc}
.f1p{border:0;margin:0;padding:0}.f1p legend{font:500 15px/1.2 var(--main);padding:0;margin-bottom:10px}.f1day{margin-top:10px}.f1sr{position:absolute;left:-9999px}
.f1cs{display:flex;flex-wrap:wrap;gap:8px}.f1c{position:relative}.f1c input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer;z-index:1}
.f1c span{display:flex;align-items:center;gap:0;font:500 16px/1 var(--main);padding:11px 16px;min-height:44px;border:2px solid transparent;border-radius:8px;background:linear-gradient(#0c0c0c,#0c0c0c) padding-box,linear-gradient(#3a3a3e,#3a3a3e) border-box;transition:background .3s,transform .25s cubic-bezier(.3,1.6,.5,1)}
.f1x.wh .f1c span{background:linear-gradient(#fff,#fff) padding-box,linear-gradient(#c9c9c4,#c9c9c4) border-box}
.f1c b{display:inline-block;width:0;overflow:hidden;opacity:0;font-weight:600;color:#52d0a8;transition:width .25s,opacity .25s,margin .25s}
.f1c:hover span{background:linear-gradient(#0c0c0c,#0c0c0c) padding-box,linear-gradient(95deg,#52d0a8,#2b7ddc) border-box}.f1x.wh .f1c:hover span{background:linear-gradient(#fff,#fff) padding-box,linear-gradient(95deg,#52d0a8,#2b7ddc) border-box}
.f1c input:checked+span{background:linear-gradient(#0c0c0c,#0c0c0c) padding-box,linear-gradient(95deg,#52d0a8,#2b7ddc) border-box;transform:scale(1.04)}.f1x.wh .f1c input:checked+span{background:linear-gradient(#fff,#fff) padding-box,linear-gradient(95deg,#52d0a8,#2b7ddc) border-box}
.f1c input:checked+span b{width:1.1em;opacity:1;margin-right:6px}.f1c input:focus-visible+span{outline:2px solid #fff;outline-offset:3px}
.f1b{width:100%;justify-content:center;min-height:52px;font-size:17px;transition:opacity .3s}.f1b:disabled{opacity:.45;cursor:not-allowed}.f1x.full .f1b:not(:disabled){animation:f1pulse 1.8s ease-out 2}
@keyframes f1pulse{0%{box-shadow:0 0 0 0 rgba(82,208,168,.55)}100%{box-shadow:0 0 0 16px rgba(82,208,168,0)}}
.f1x.full .f1b:not(:disabled){animation:none;position:relative;overflow:visible}.f1x.full .f1b.go{animation:f1go .9s cubic-bezier(.3,1.6,.5,1)}
.f1x.full .f1b:not(:disabled){background-image:linear-gradient(110deg,transparent 35%,rgba(82,208,168,.45) 50%,transparent 65%);background-size:250% 100%;animation:f1sh 1.6s ease-in-out infinite,f1ring 1.6s ease-out infinite}.f1x.full .f1b.go{animation:f1go .9s cubic-bezier(.3,1.6,.5,1),f1sh 1.6s ease-in-out .9s infinite,f1ring 1.6s ease-out .9s infinite}
@keyframes f1ring{0%{box-shadow:0 0 0 0 rgba(82,208,168,.7),0 0 0 0 rgba(43,125,220,.5)}100%{box-shadow:0 0 0 12px rgba(82,208,168,0),0 0 0 22px rgba(43,125,220,0)}}
@keyframes f1go{0%{transform:scale(1)}25%{transform:scale(.94)}55%{transform:scale(1.06) rotate(-.6deg)}75%{transform:scale(.99) rotate(.4deg)}100%{transform:scale(1)}}
.f1n{font-size:14px;line-height:1.4;color:#9a9a9a;text-align:center}.f1x.wh .f1n{color:#595959}
.f1ok{text-align:center;padding:clamp(18px,3vw,40px) 0;display:grid;justify-items:center;gap:14px}.f1ok[hidden]{display:none}.f1ok circle,.f1ok path{stroke-dasharray:160;stroke-dashoffset:160;animation:f1d .9s .1s ease forwards}.f1ok path{animation-delay:.5s}
@keyframes f1d{to{stroke-dashoffset:0}}.f1h{font-size:clamp(28px,3.2vw,44px);line-height:1.05;letter-spacing:-.035em}.f1ok .acts{margin-top:6px}
.f1msg{margin:12px 0 0;font:400 15px/1.3 var(--main);color:#9a9a9a;min-height:1.3em}.f1x.wh .f1msg{color:#595959}.f1x.rdy .f1msg{background:linear-gradient(95deg,#52d0a8,#2b7ddc);-webkit-background-clip:text;background-clip:text;color:transparent;font-weight:600}
.f1f>span{display:flex;align-items:center;gap:0}.f1ck{width:0;height:20px;margin-left:0;opacity:0;flex:none;transform:scale(.3) rotate(-30deg);transition:width .3s,margin .3s,opacity .3s,transform .5s cubic-bezier(.3,1.8,.5,1)}
.f1ck circle{stroke:#52d0a8;stroke-width:1.6;stroke-dasharray:57;stroke-dashoffset:57}.f1ck path{stroke:#52d0a8;stroke-width:2.2;fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:14;stroke-dashoffset:14}
.f1f.ok .f1ck{width:20px;margin-left:8px;opacity:1;transform:none}.f1f.ok .f1ck circle,.f1f.ok .f1ck path{animation:f1d2 .55s .05s ease forwards}.f1f.ok .f1ck path{animation-delay:.25s}.f1f.ok input{border-color:#52d0a8}
@keyframes f1d2{to{stroke-dashoffset:0}}
.f1sp{position:absolute;left:50%;top:50%;width:6px;height:6px;margin:-3px;border-radius:50%;background:var(--h);pointer-events:none;animation:f1sp .65s cubic-bezier(.1,.7,.3,1) forwards}.f1c,.f1b{position:relative}.f1f>span{position:relative}
@keyframes f1sp{to{transform:translate(var(--x),var(--y)) scale(.2);opacity:0}}
@keyframes f1sh{from{background-position:130% 0}to{background-position:-30% 0}}
.f1bar i{position:relative}.f1bar i:after{content:"";position:absolute;right:-1px;top:50%;width:12px;height:12px;margin-top:-6px;border-radius:50%;background:#fff;box-shadow:0 0 12px 3px rgba(82,208,168,.7);opacity:0;transition:opacity .3s}.f1x:not(.sent) .f1bar i[style*="width:"]:not([style*="width:0%"]):after{opacity:1}
@media(max-width:560px){.f1r{padding:20px 16px}.f1c span{font-size:15px;padding:10px 13px}}
.f1hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
@media(prefers-reduced-motion:reduce){.f1x.full .f1b,.f1x.full .f1b.go{animation:none}.f1ck,.f1f.ok .f1ck circle,.f1f.ok .f1ck path,.f1x.rdy .f1b{animation:none;transition:none}.f1f.ok .f1ck circle,.f1f.ok .f1ck path{stroke-dashoffset:0}.f1bar i,.f1c span,.f1c b{transition:none}.f1x.full .f1b,.f1ok circle,.f1ok path{animation:none;stroke-dashoffset:0}}
@media(max-width:860px){.f1g{grid-template-columns:1fr}.f1two{grid-template-columns:1fr}}
.l28 .acg{background:linear-gradient(95deg,#52d0a8,#2b7ddc);-webkit-background-clip:text;background-clip:text;color:transparent}
.l28 .lead{color:#cfcfcf}
.l28 .gn{font-size:14px;line-height:1.4;color:#9a9a9a;margin-top:22px;max-width:520px}
.l28 sup{font-size:.4em;vertical-align:top;position:relative;top:.2em;margin-left:.15em;opacity:.7}
.l28 .btn{text-decoration:none}
/* house reveal: fade and rise only, no blur */
.l28 .rv{opacity:0;transform:translateY(16px);transition:opacity .9s cubic-bezier(.4,0,.2,1),transform .9s cubic-bezier(.4,0,.2,1)}
.l28 .rv.on{opacity:1;transform:none}
.wvw{opacity:.16;display:inline-block;will-change:opacity}
/* HERO-A type-led with one stat */
.ha{background:#000}.ha-in{min-height:min(88vh,780px);padding:clamp(56px,8vw,96px) max(20px,4vw) 56px;display:flex;flex-direction:column;justify-content:space-between;gap:56px;max-width:1440px;margin:0 auto}
.ha h1{max-width:1040px;font-size:clamp(36px,5.2vw,56px)}
.ha-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(30px,6vw,96px);align-items:end}
.ha-s{border-top:1px solid rgba(255,255,255,.3);padding-top:22px}
.ha-n{font-size:clamp(96px,13vw,188px);line-height:.9;letter-spacing:-.06em;font-weight:400}
.ha-t{font-size:20px;line-height:1.3;margin-top:16px;max-width:430px}.ha-src{font-size:13px;color:#8a8a8a;margin-top:10px}
/* HERO-B split */
.hb{background:#0b0b0c}.hb-in{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(30px,5vw,80px);align-items:center;min-height:min(86vh,760px);padding:72px max(20px,4vw);max-width:1440px;margin:0 auto}
.hb h1{font-size:clamp(36px,4.4vw,56px)}
.hb-p{background:#f3f1ea;padding:clamp(8px,1vw,14px);border-radius:3px}.hb-p img{width:100%;aspect-ratio:21/9;object-fit:cover}
.hb-f figcaption{display:flex;justify-content:space-between;gap:16px;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:#9a9a9a;margin-top:14px}
/* HERO-C full-bleed */
.hc{background:#000;min-height:min(90vh,800px);display:flex;align-items:flex-end}.hc-m{position:absolute;inset:0}.hc-m img{width:100%;height:100%;object-fit:cover}
.hc-s{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.1) 20%,rgba(0,0,0,.86)),linear-gradient(90deg,rgba(0,0,0,.55),transparent 65%)}
.hc-t{position:relative;width:100%;padding:0 max(20px,4vw) 64px}.hc h1{max-width:900px}.hc .lead{color:#e6e6e6}
/* HERO-D script page */
.hd{background:#000;padding:clamp(48px,7vw,88px) max(20px,4vw) 48px;display:flex;flex-direction:column;align-items:center}
.hd-pg{position:relative;width:min(780px,100%);background:#0f0f11;border:1px solid rgba(255,255,255,.16);padding:clamp(34px,6vw,74px) clamp(24px,6vw,84px) clamp(28px,4vw,54px) clamp(30px,7vw,108px);min-height:min(78vh,720px)}
.hd-n{position:absolute;right:clamp(18px,4vw,54px);top:clamp(14px,2.5vw,30px);font-size:15px;color:#8a8a8a}
.hd-fi,.hd-sl,.hd-cue,.hd-cut{font-size:15px;letter-spacing:.12em;text-transform:uppercase}
.hd-fi{color:#9a9a9a}.hd-sl{margin-top:26px;font-weight:600}
.hd-h{font-size:clamp(30px,3.6vw,48px);margin-top:26px;line-height:1.06}
.hd-cue{text-align:center;margin-top:36px;padding-left:0;font-weight:600}
.hd-dl{margin:6px auto 0;max-width:460px;font-size:19px;line-height:1.4;color:#d8d8d8}
.hd-b{margin-top:34px;margin-left:clamp(0px,3vw,40px)}.hd-cut{text-align:right;color:#9a9a9a;margin-top:34px}
.hd-gn{max-width:780px;text-align:left}
/* HERO-E film strip */
.he{background:#000;padding:clamp(56px,7vw,96px) 0 clamp(40px,5vw,64px)}.he-t{text-align:center;max-width:860px;margin:0 auto;padding:0 max(20px,4vw)}
.he h1{font-size:clamp(34px,4.2vw,56px)}.he .lead{margin:18px auto 0}.he .acts{justify-content:center}.he .gn{margin-left:auto;margin-right:auto}
.he-strip{margin-top:clamp(40px,5vw,72px)}
/* G 2026-10-29: when a white band follows, the strip is the dividing line: black above its middle, white below, so the bottom sprocket holes show white */
.he-lt{padding-bottom:0}.he-lt .he-strip{background:linear-gradient(#000 50%,#fff 50%)}

/* ST3R */
.s3{background:#0d0d0f}.s3g{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(30px,5vw,80px);align-items:start}
.s3l2{list-style:none;margin:0;padding:0}
.s3r{position:relative;border-top:1px solid rgba(255,255,255,.28);padding:26px 22px;overflow:hidden;cursor:default;transition:opacity .4s,color .4s,transform .9s cubic-bezier(.4,0,.2,1)}
.s3r:last-child{border-bottom:1px solid rgba(255,255,255,.28)}
.s3b{position:absolute;inset:0;background:#fff;transform:scaleX(0);transform-origin:left;transition:transform .5s cubic-bezier(.4,0,.2,1);z-index:0}
.s3m{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:center}
.s3n{font-size:clamp(56px,7vw,104px);line-height:.95;letter-spacing:-.05em}.s3l{font-size:19px;line-height:1.3}
.s3s{position:relative;z-index:1;display:grid;grid-template-rows:0fr;transition:grid-template-rows .45s cubic-bezier(.4,0,.2,1)}.s3s span{overflow:hidden;font-size:14px;line-height:1.4;padding-top:0;opacity:0;transition:opacity .35s,padding .45s}
.s3l2:hover .s3r:not(:hover){opacity:.42}
.s3r:hover,.s3r:focus-visible{color:#0c0c0c;outline:none}.s3r:hover .s3b,.s3r:focus-visible .s3b{transform:scaleX(1)}
.s3r:hover .s3s,.s3r:focus-visible .s3s{grid-template-rows:1fr}.s3r:hover .s3s span,.s3r:focus-visible .s3s span{opacity:.8;padding-top:14px}
/* WS1C1S */
.ws{background:#000}.w1x{position:relative;min-height:min(86vh,760px);outline:none}
.wsc{position:absolute;inset:0;opacity:0;transition:opacity 1.3s ease;pointer-events:none}.wsc.on{opacity:1;pointer-events:auto}
.wsb,.wsb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.wss{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.2) 70%),linear-gradient(0deg,rgba(0,0,0,.5),transparent 40%)}
.wst{position:absolute;left:max(20px,6vw);right:max(20px,6vw);top:50%;transform:translateY(-50%);max-width:700px}
.wst p{margin:0 0 20px}.ws-sl{font-size:15px;letter-spacing:.14em;text-transform:uppercase;font-weight:600}
.ws-ac{font-size:clamp(20px,2.2vw,28px);line-height:1.35;max-width:620px}.ws-cue{font-size:15px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;margin-top:30px!important}
.ws-dl{font-size:clamp(20px,2.2vw,28px);line-height:1.3;max-width:420px;padding-left:clamp(0px,5vw,64px)}
.ws-big{font-size:clamp(40px,6vw,88px);line-height:1;letter-spacing:-.04em}.ws-intro{font-size:clamp(26px,3.4vw,46px);line-height:1.15;letter-spacing:-.03em}
.wsn{position:absolute;left:max(20px,6vw);right:max(20px,6vw);bottom:26px;display:flex;justify-content:space-between;align-items:center;font-size:13px;letter-spacing:.1em;color:#cfcfcf;z-index:3}
.wsds{display:flex;gap:8px}.wsd{width:34px;height:3px;border:0;padding:0;background:rgba(255,255,255,.3);cursor:pointer;border-radius:2px}.wsd.on{background:#fff}
/* HS3 */
.h3{background:#000}.h3s{display:grid;grid-template-columns:96px minmax(0,1fr);gap:clamp(20px,4vw,56px);padding:56px 0;border-top:1px solid rgba(255,255,255,.18)}.h3s:first-child{border-top:0;padding-top:0}
.h3r span{display:block;font-size:clamp(64px,8vw,120px);line-height:.85;letter-spacing:-.05em}.h3r i{font-style:normal;font-size:13px;color:#8a8a8a;letter-spacing:.08em;text-transform:uppercase;display:block;margin-top:12px}
.h3c1 h2{max-width:760px}
.h3cl{list-style:none;margin:34px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 40px}
/* G 2026-10-29 (home steps, too much text): HS3 short variant. Empty lines collapse, step 1 choices become a single compact row each. */
.h3-s .h3c span:empty,.h3-s .h3h p:empty,.h3-s .h3x:empty,.h3-s .h3b:empty{display:none}.h3-s .h3c{padding:14px 0}.h3-s .h3c i{grid-row:1}
.h3c{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;padding:18px 0;border-top:1px solid rgba(255,255,255,.2);color:#fff}
.h3c b{font-weight:600;font-size:20px;grid-column:1}.h3c span{grid-column:1;color:#b8b8b8;font-size:15px;line-height:1.35}.h3c i{grid-row:1/3;grid-column:2;font-style:normal;align-self:center;font-size:22px;transition:transform .3s}.h3c:hover i{transform:translateX(6px)}.h3c:hover b{background:linear-gradient(95deg,#52d0a8,#2b7ddc);-webkit-background-clip:text;background-clip:text;color:transparent}
.h3x{margin-top:26px;font-size:18px;color:#cfcfcf}
.h3p{display:grid;grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr);gap:0;align-items:start;margin-top:34px}
.h3pm{border-radius:var(--rad);overflow:hidden;aspect-ratio:16/9}.h3pm img{width:100%;height:100%;object-fit:cover}.h3h h3{margin-top:18px}.h3h p{color:#b8b8b8;font-size:17px;line-height:1.4;margin-top:8px;max-width:460px}
.h3plus{align-self:center;text-align:center;font-size:34px;color:#8a8a8a;padding-top:0}
.h3b{margin-top:26px;font-size:18px;border-top:1px solid rgba(255,255,255,.2);padding-top:20px;color:#cfcfcf}.h3b b{color:#fff;font-weight:600}
.h3e{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,60px);margin-top:34px;align-items:start}
.h3ls{list-style:none;margin:0;padding:0}.h3l{display:grid;grid-template-columns:44px minmax(0,1fr);gap:8px;padding:15px 0;border-top:1px solid rgba(255,255,255,.2);cursor:pointer;opacity:.5;transition:opacity .4s;outline:none}.h3l.on,.h3l:hover,.h3l:focus-visible{opacity:1}.h3k{font-size:13px;color:#8a8a8a;padding-top:4px}.h3l p{font-size:18px;line-height:1.35}
.h3im{position:sticky;top:90px;aspect-ratio:4/3;border-radius:var(--rad);overflow:hidden;background:#111}.h3i{position:absolute;inset:0;opacity:0;transition:opacity .9s ease}.h3i.on{opacity:1}.h3i img{width:100%;height:100%;object-fit:cover}
/* TX2R */
.t2{background:#000}.t2 .in{max-width:1180px}.t2s{font-size:clamp(34px,4.6vw,66px);line-height:1.06;letter-spacing:-.04em;text-align:right;margin-left:auto;max-width:1020px}
.t2f{font-size:19px;line-height:1.45;color:#9a9a9a;margin:44px 0 0 auto;max-width:560px;text-align:right}
.pad:has(>.t2){padding-top:150px;padding-bottom:150px}
/* long text */
.lt1{background:#0d0d0f}.l1t{max-width:900px;margin-bottom:56px}
.l1c{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:clamp(24px,5vw,80px);border-top:1px solid rgba(255,255,255,.2);padding:36px 0 56px}
.l1h{position:sticky;top:84px;align-self:start}.l1h span{font-size:13px;color:#8a8a8a;display:block;margin-bottom:10px;letter-spacing:.08em}.l1h h3{font-size:clamp(24px,2.4vw,34px)}
.l1b p{font-size:19px;line-height:1.55;color:#d8d8d8;margin-bottom:20px;max-width:640px}.l1b p:last-child{margin-bottom:0}
.lt2{background:#000}.l2h{max-width:860px;margin-bottom:48px}.l2c{column-count:2;column-gap:clamp(36px,6vw,96px)}
.l2c p{font-size:18px;line-height:1.6;color:#cfcfcf;margin-bottom:20px;break-inside:avoid-column}
.l2q{margin:34px 0;padding:22px 0 0;border-top:1px solid rgba(255,255,255,.4);font-size:clamp(26px,2.6vw,36px);line-height:1.15;letter-spacing:-.025em;color:#fff;break-inside:avoid}
.lt3{background:#0d0d0f}.l3g{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(24px,5vw,80px);align-items:start}.l3h{position:sticky;top:90px}
.l3r{border-top:1px solid rgba(255,255,255,.22)}.l3r:last-child{border-bottom:1px solid rgba(255,255,255,.22)}
.l3q{display:grid;grid-template-columns:52px minmax(0,1fr) 28px;align-items:center;width:100%;background:none;border:0;color:#fff;text-align:left;padding:24px 0;cursor:pointer;font:400 clamp(20px,2vw,28px)/1.2 var(--main);letter-spacing:-.02em}
.l3n{font-size:13px;color:#8a8a8a;letter-spacing:.06em}.l3i{width:18px;height:18px;position:relative;justify-self:end}.l3i:before,.l3i:after{content:"";position:absolute;left:0;right:0;top:8px;height:2px;background:#fff;transition:transform .35s}.l3i:after{transform:rotate(90deg)}.l3r.open .l3i:after{transform:rotate(0)}
.l3a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .5s cubic-bezier(.4,0,.2,1)}.l3r.open .l3a{grid-template-rows:1fr}.l3ai{overflow:hidden;padding-left:52px}
.l3ai p{font-size:18px;line-height:1.55;color:#cfcfcf;margin-bottom:16px;max-width:640px;opacity:0;transition:opacity .6s .15s}.l3r.open .l3ai p{opacity:1}.l3ai p:last-child{margin-bottom:30px}
/* blog */
.bl1{background:#000}.b1hd{max-width:900px}.b1hd h1{font-size:clamp(36px,4.6vw,56px)}.b1by{font-size:14px;color:#8a8a8a;margin-top:22px}
.b1im{margin-top:44px;border-radius:var(--rad);overflow:hidden;aspect-ratio:21/9}.b1im img{width:100%;height:100%;object-fit:cover}
.b1g{display:grid;grid-template-columns:minmax(0,680px) minmax(0,260px);gap:clamp(30px,6vw,110px);margin-top:56px;justify-content:center}
.b1a p{font-size:19px;line-height:1.6;color:#d8d8d8;margin-bottom:22px}.b1a h2{font-size:clamp(26px,2.6vw,34px);margin:44px 0 18px;line-height:1.15}.b1a h3{font-size:22px;margin:30px 0 12px}
.b1s{display:grid;grid-template-columns:auto minmax(0,1fr);gap:24px;align-items:center;margin:34px 0;padding:26px 0;border-top:1px solid rgba(255,255,255,.3);border-bottom:1px solid rgba(255,255,255,.3)}.b1n{font-size:clamp(64px,8vw,104px);line-height:.9;letter-spacing:-.05em;margin:0!important;color:#fff!important}.b1s p{font-size:17px!important;margin:0!important;line-height:1.4!important}.b1src{color:#8a8a8a!important;font-size:13px!important;margin-top:8px!important}
.b1c{margin-top:44px;padding:30px;border:1px solid rgba(255,255,255,.22);border-radius:var(--rad)}.b1c p{font-size:22px!important;line-height:1.3!important;color:#fff!important}
.b1t{position:sticky;top:84px;align-self:start;font-size:14px}.b1tt{font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:#8a8a8a;margin-bottom:12px}.b1t ol{list-style:none;margin:0;padding:0}.b1t li{padding:10px 0;border-top:1px solid rgba(255,255,255,.18);line-height:1.3}.b1t a{color:#cfcfcf}.b1t a:hover{color:#fff}
.bl2{background:#0d0d0f}.b2hd{display:flex;justify-content:space-between;align-items:end;gap:30px;flex-wrap:wrap;margin-bottom:48px}.b2hd h1{font-size:clamp(36px,4.6vw,56px)}.b2hd .lead{max-width:520px}
.b2cs{display:flex;gap:8px;flex-wrap:wrap}.b2c{font:500 14px/1 var(--main);color:#fff;background:transparent;border:1px solid rgba(255,255,255,.35);border-radius:99px;padding:11px 16px;cursor:pointer;transition:background .2s,color .2s}.b2c:hover{border-color:#fff}.b2c.on{background:#fff;color:#000;border-color:#fff}
.b2g{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 28px}
.b2k{display:block;color:#fff}.b2i{border-radius:var(--rad);overflow:hidden;aspect-ratio:16/10;background:#111}.b2i img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.4,0,.2,1)}.b2k:hover .b2i img{transform:scale(1.04)}
.b2x{padding-top:16px}.b2x h3{font-size:24px}.b2x p{color:#b8b8b8;font-size:16px;line-height:1.4;margin-top:8px}.b2m{display:block;font-size:13px;color:#8a8a8a;margin-top:14px}
.b2f{grid-column:span 2}.b2f .b2i{aspect-ratio:21/10}.b2f .b2x h3{font-size:clamp(26px,2.8vw,38px)}
.b2k.hide{display:none}
@media(max-width:900px){.ha-row,.hb-in,.s3g,.l1c,.l3g,.h3e,.b1g{grid-template-columns:1fr}.h3s{grid-template-columns:1fr;gap:18px}.h3cl{grid-template-columns:1fr}.h3p{grid-template-columns:1fr;gap:26px}.h3plus{display:none}.l2c{column-count:1}.b2g{grid-template-columns:1fr}.b2f{grid-column:auto}.l1h,.l3h,.b1t{position:static}.h3im{position:relative;top:0}.s3m{grid-template-columns:1fr;gap:8px}.hc{min-height:78vh}.t2s,.t2f{text-align:right}.w1x{min-height:92vh}.pad:has(>.t2){padding-top:96px;padding-bottom:96px}}
@media(prefers-reduced-motion:reduce){.l28 .rv{opacity:1!important;transform:none!important;transition:none!important}.wvw{opacity:1!important}.s3r,.s3b,.s3s,.s3s span,.l3a,.l3ai p,.wsc,.h3i{transition:none!important}.strip .tk.drift{animation:none!important}}

.faq{background:#fff;color:#0c0c0c}
.faq .fq-in{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:48px 72px;align-items:start}
.faq .fq-l{position:sticky;top:96px}
.faq .fq-l h2{font-size:clamp(28px,3.2vw,46px);line-height:1.12;letter-spacing:-.03em;font-weight:400}
.faq .fq-l .fq-note{font-family:var(--hand);font-size:28px;line-height:1.1;margin-top:26px;display:inline-block;transform:rotate(-2deg);font-variant-ligatures:none;text-transform:lowercase;-webkit-text-stroke:.4px currentColor}
.faq .fq-cta{display:flex;justify-content:center;margin-top:72px}
.faq .fq-list{list-style:none;margin:0;padding:0}
.faq .fq-row{position:relative}
.faq .fq-q{all:unset;box-sizing:border-box;width:100%;display:grid;grid-template-columns:44px minmax(0,1fr) 40px;gap:0 12px;align-items:center;padding:26px 0;cursor:pointer;font:400 24px/1.17 var(--main);letter-spacing:-.02em}
.faq .fq-q:focus-visible{outline:2px solid #2b7ddc;outline-offset:4px;border-radius:5px}
.faq .fq-n{font:500 13px/16.9px var(--main);color:#8a8a8a;letter-spacing:.04em;transition:color .3s}
.faq .fq-row.open .fq-n,.faq .fq-q:hover .fq-n{color:#0c0c0c}
.faq .fq-t{transition:transform .5s cubic-bezier(.05,.7,.1,1)}
.faq .fq-q:hover .fq-t{transform:translateX(4px)}
.faq .fq-i{position:relative;width:34px;height:34px;border-radius:50%;border:1px solid #cfcfcf;overflow:hidden;transition:border-color .3s,transform .5s cubic-bezier(.05,.7,.1,1)}
.faq .fq-i:before{content:"";position:absolute;inset:0;background:#0c0c0c;transform:translateX(-101%);transition:transform .52s cubic-bezier(.05,.7,.1,1)}
.faq .fq-i i{position:absolute;left:50%;top:50%;width:12px;height:1.5px;background:#0c0c0c;transform:translate(-50%,-50%);transition:background .3s,transform .5s cubic-bezier(.05,.7,.1,1)}
.faq .fq-i i+i{transform:translate(-50%,-50%) rotate(90deg)}
.faq .fq-q:hover .fq-i:before,.faq .fq-row.open .fq-i:before{transform:none}
.faq .fq-q:hover .fq-i i,.faq .fq-row.open .fq-i i{background:#fff}
.faq .fq-row.open .fq-i i+i{transform:translate(-50%,-50%) rotate(0)}
.faq .fq-row.open .fq-i{transform:rotate(180deg)}
.faq .fq-a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .55s cubic-bezier(.05,.7,.1,1)}
.faq .fq-row.open .fq-a{grid-template-rows:1fr}
.faq .fq-a>div{overflow:hidden;padding-left:56px;padding-right:52px}
.faq .fq-a p{font-size:16px;line-height:1.3;color:#404040;max-width:620px;padding-bottom:28px;margin:0}
.faq .fq-a a{color:inherit;text-decoration:underline}
.faq.nojs .fq-a{grid-template-rows:1fr}
@media(max-width:900px){.faq .fq-in{grid-template-columns:1fr}.faq .fq-l{position:static}.faq .fq-a>div{padding-left:0;padding-right:0}.faq .fq-q{grid-template-columns:34px minmax(0,1fr) 34px;font-size:20px}}
@media(prefers-reduced-motion:reduce){.faq *,.faq *:before,.faq *:after{transition:none!important}}

body.site{padding-top:88px}
.nav{position:fixed;inset:0 0 auto;height:88px;z-index:40;background:#fff}.nav .wrap{position:relative;height:100%;display:flex;align-items:center;justify-content:space-between;padding:0 36px;max-width:1600px;margin:0 auto}
.nav nav{flex:1;min-width:0;display:flex;justify-content:center}.nav nav ul{list-style:none;margin:0;padding:0;display:flex;gap:4px}.nav .navpanel{display:none}.nav li>a{position:relative;display:block;font:500 16px/24px var(--main);color:#0c0c0c;padding:10px 20px;text-decoration:none;white-space:nowrap}
.nav li>a:after{content:'';position:absolute;left:20px;right:20px;bottom:4px;height:2px;background:linear-gradient(95deg,#52d0a8,#2b7ddc);transform:scaleX(0);transform-origin:left;transition:transform .5s cubic-bezier(.05,.7,.1,1)}.nav li>a:hover:after{transform:scaleX(1)}
.nav .right{display:flex;align-items:center;gap:12px;flex:none}.nav .right .btn{white-space:nowrap}.nav .menu{display:none;font:500 16px var(--main);background:none;border:0;color:inherit;cursor:pointer;min-height:44px;padding:0 4px}.nav .logo{margin-right:12px}
@media(max-width:1260px){.nav nav,.nav .navtel{display:none}.nav .menu{display:block}.nav .wrap{justify-content:space-between}.nav .right{margin-left:auto}.nav .navpanel:not([hidden]){display:flex;flex-direction:column;gap:12px;position:absolute;top:88px;left:0;right:0;max-height:calc(100vh - 88px);overflow:auto;padding:12px 24px 24px;background:#fff;border-top:1px solid rgba(0,0,0,.08)}.nav .navpanel ul{list-style:none;margin:0 0 8px;padding:0}.nav .navpanel li>a{display:block;font:500 18px/24px var(--main);color:#0c0c0c;padding:14px 0;text-decoration:none;border-bottom:1px solid rgba(0,0,0,.08)}.nav .navpanel .btn{justify-content:center;text-align:center}}
.nav .hm{position:static;display:flex;align-items:center}.nav .caret{width:28px;height:44px;margin-left:-14px;margin-right:-6px;background:none;border:0;cursor:pointer;position:relative;color:inherit}.nav .caret:after{content:'';position:absolute;left:9px;top:19px;width:6px;height:6px;border-right:1.5px solid #0c0c0c;border-bottom:1.5px solid #0c0c0c;transform:rotate(45deg)}.nav.dk .caret:after{border-color:#fff}
.nav .drop{display:none;position:absolute;left:36px;right:36px;top:88px;background:#fff;border-top:1px solid rgba(0,0,0,.08);border-radius:0 0 12px 12px;padding:28px 32px 32px;gap:36px;grid-auto-flow:column;grid-auto-columns:1fr;box-shadow:0 18px 40px rgba(0,0,0,.14);max-width:1240px;margin:0 auto}.nav .hm:hover:not(.esc) .drop,.nav .hm.open .drop{display:grid}.nav nav{align-self:stretch}.nav nav>ul>li{align-self:stretch;display:flex;align-items:center}
.nav .drop .dh{font:600 12px/16px var(--main);letter-spacing:.14em;text-transform:uppercase;color:#6b6b6b;margin:0 0 12px}.nav .drop a{display:block;padding:6px 0;font:500 16px/22px var(--main);color:#0c0c0c;text-decoration:none}.nav .drop a b{font-weight:500}.nav .drop a small{display:block;font:400 13px/18px var(--main);color:#6b6b6b}.nav .drop a:hover b{text-decoration:underline}
.nav.dk .drop{background:#111;border-top-color:#2a2a2a;box-shadow:0 18px 40px rgba(0,0,0,.6)}.nav.dk .drop .dh,.nav.dk .drop a small{color:#9a9a9a}.nav.dk .drop a{color:#fff}
.nav .navpanel .dh{font:600 12px/16px var(--main);letter-spacing:.14em;text-transform:uppercase;color:#6b6b6b;margin:10px 0 0}.nav .navpanel ul.sub{margin:0 0 6px;padding:0 0 0 12px}.nav .navpanel ul.sub li>a{font:400 16px/22px var(--main);padding:9px 0;border-bottom:0}.nav.dk .navpanel .dh{color:#9a9a9a}
@media(max-width:560px){.nav .wrap{padding:0 16px}.nav .navcta{display:none}}
body.old .nav .btn.ghost{border:1px solid rgba(255,255,255,.1)}.nav:not(.dk) .btn.ghost:not(:hover):not(:focus-visible){color:#0c0c0c}.nav.dk .navpanel:not([hidden]){background:#000;border-top-color:rgba(255,255,255,.14)}.nav.dk .navpanel li>a{color:#fff;border-bottom-color:rgba(255,255,255,.14)}
.logo{position:relative;display:inline-block;width:88px;height:38px;line-height:0;flex:none}
.rfoot{background:#0c0c0c;color:#fff;padding:72px 0 28px}.rfoot .wrap{max-width:1440px;margin:0 auto;padding:0 20px}.fgrid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:56px 24px}
.fcol h4,.fcol summary{font:400 13px/16.9px var(--main);color:#8a8a8a;margin:0 0 22px;list-style:none;cursor:default}.fcol summary::-webkit-details-marker{display:none}.fcol a{display:block;font:400 16px/20.8px var(--main);color:#fff;text-decoration:none;padding:3px 0;width:fit-content;background:linear-gradient(95deg,#52d0a8,#2b7ddc);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:#fff;transition:-webkit-text-fill-color .35s ease}.fcol a:hover,.fcol a:focus-visible{-webkit-text-fill-color:transparent}.fbot img{width:96px;height:41px}
.fbot{display:flex;align-items:center;gap:56px;margin-top:140px;flex-wrap:wrap}.fbot p{font:450 12px/1.4 var(--main);color:#b5b5b5;letter-spacing:.02em;margin:0}.fbot p a{color:inherit;text-decoration:none;transition:color .3s ease}.fbot p a:hover{color:#fff}
@media(max-width:900px){.fgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.fbot{margin-top:72px;gap:24px}}@media(max-width:700px){.fgrid{grid-template-columns:1fr;gap:0}.fcol{border-top:1px solid #262626}.fcol summary{margin:0;padding:16px 0;min-height:44px;box-sizing:border-box;display:flex;justify-content:space-between;align-items:center;cursor:pointer;font-size:15px;color:#d0d0d0}.fcol summary:after{content:'+';font-size:22px;line-height:1}.fcol[open] summary:after{content:'−'}.fcol[open]{padding-bottom:14px}.fbot{margin-top:40px}}

.lb6mark svg{display:block;width:100%;height:100%;overflow:visible}
.lb6mark .lt{fill:#111;transform-box:fill-box}.lb6mark .lbf{fill:none;stroke:#111;stroke-width:27.43;stroke-linejoin:miter}
.lb6mark.on .lbf{animation:lm6 1.7s cubic-bezier(.45,0,.3,1)}@keyframes lm6{0%{stroke-dasharray:1200 0;stroke-dashoffset:0}18%{stroke-dasharray:200 70.5;stroke-dashoffset:0}82%{stroke-dasharray:200 70.5;stroke-dashoffset:-541}100%{stroke-dasharray:1200 0;stroke-dashoffset:-811.5}}
.lb6mark.on .le{animation:lm6e 1.5s cubic-bezier(.6,0,.3,1) both}.lb6mark.on .lx{animation:lm6x 1.5s cubic-bezier(.6,0,.3,1) .12s both}.lb6mark.on .lv{animation:lm6v 1.5s cubic-bezier(.6,0,.3,1) .24s both}
@keyframes lm6e{0%,100%{clip-path:inset(0 0 0 0)}35%,62%{clip-path:inset(0 100% 0 0)}}@keyframes lm6x{0%,100%{clip-path:circle(75% at 50% 50%)}35%,62%{clip-path:circle(0% at 50% 50%)}}@keyframes lm6v{0%,100%{clip-path:inset(0 0 0 0)}35%,62%{clip-path:inset(100% 0 0 0)}}
@media(prefers-reduced-motion:reduce){.lb6mark *{animation:none!important}}

.nav.dk{background:#000}.nav.dk .btn{min-height:38px}.nav.dk li>a,.nav.dk .nl,.nav.dk .menu{color:#fff}.nav.dk .lb6mark .lt{fill:#fff}.nav.dk .lb6mark .lbf{stroke:#fff}

.rfoot .flogo{display:inline-block;width:96px;height:41px;line-height:0}.rfoot .flogo .lt{fill:#fff}.rfoot .flogo .lbf{stroke:#fff}
.rfoot .fbot a:hover svg{animation:crtoff 1.1s cubic-bezier(.5,0,.3,1)}
@keyframes crtoff{0%{transform:scale(1,1);filter:brightness(1)}22%{transform:scale(1.04,.05);filter:brightness(3) drop-shadow(0 0 10px #fff)}46%{transform:scale(.04,.05);filter:brightness(4) drop-shadow(0 0 14px #fff)}60%{transform:scale(0,0);opacity:1;filter:brightness(4)}66%{transform:scale(0,0);opacity:0}78%{transform:scale(1,.03);opacity:0}100%{transform:scale(1,1);opacity:1;filter:brightness(1)}}
@media(prefers-reduced-motion:reduce){.rfoot .fbot a:hover svg{animation:none}}
.fcol a:hover{animation:ghue 2.4s ease-in-out infinite}
@media(prefers-reduced-motion:reduce){.fcol a:hover{animation:none}}

h2.hx1.hx1{font-size:clamp(36px,3.9vw,56px);line-height:.96;letter-spacing:-.045em}