/* OhPlayer home · Option 4 (studio-grade). Values follow the landing-page-design skill. */
@font-face{font-family:"Geist";src:url("/fonts/Geist-Variable.woff2") format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:"Geist Mono";src:url("/fonts/GeistMono-Variable.woff2") format("woff2");font-weight:100 900;font-display:swap}
:root{
  --bg:#000;--s1:#181818;--s2:#1F1F1F;--s3:#272727;--s4:#313131;
  --fg:#fff;--muted:#9B9B9B;--dim:#6B6B6B;--line:rgba(255,255,255,.1);
  --accent:#FF5A1F;--accent-2:#FF9670;--ok:#7CE0A8;--bad:#F97066;
  --ease:cubic-bezier(.32,.72,0,1);--t:700ms;
  --pad:80px;--max:1280px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{background:var(--bg);color:var(--fg);font-family:"Geist",system-ui,sans-serif;font-size:16px;line-height:24px;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
img,video{display:block;max-width:100%}
h1,h2,h3{font-weight:500;text-wrap:balance}
p{text-wrap:pretty}
.skip{position:absolute;left:-9999px;top:16px;background:#fff;color:#000;padding:8px 12px;border-radius:8px;z-index:100}
.skip:focus{left:16px}
:focus-visible{outline:2px solid var(--accent-2);outline-offset:3px}
.mono{font-family:"Geist Mono",ui-monospace,monospace}
.accent{color:var(--accent-2)}.bad{color:var(--bad)}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 12px;border-radius:8px;font-size:16px;line-height:24px;font-weight:600;transition:transform 200ms var(--ease),background-color 300ms var(--ease)}
.btn:active{transform:scale(.98)}
.btn-primary{background:#fff;color:#000}.btn-primary:hover{background:#E6E6E6}
.btn-quiet{background:var(--s3)}.btn-quiet:hover{background:var(--s4)}
.btn-accent{background:var(--accent);color:#fff}.btn-accent:hover{background:#FF6B35}
.btn-block{width:100%}
.arrow{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;transition:transform 300ms var(--ease)}
.btn:hover .arrow{transform:translateX(2px)}

/* Nav */
.nav-wrap{position:sticky;top:0;z-index:50;display:flex;justify-content:center;padding-top:24px;pointer-events:none}
.nav{pointer-events:auto;display:flex;align-items:center;gap:32px;padding:8px 8px 8px 24px;border-radius:999px;background:rgba(24,24,24,.8);border:1px solid var(--line);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}
.brand{display:inline-flex;align-items:center;gap:.05em;font-weight:600;letter-spacing:-.035em}
/* Logo A: the widescreen sun is the O in OhPlayer, sized to Geist cap height */
.brand-sun{flex:none;width:.74em;height:.74em;transform:translateY(-.03em)}
.nav-links{display:flex;gap:32px;font-size:14px;line-height:20px;font-weight:500;color:var(--muted)}
.nav-links a:hover{color:var(--fg)}
.nav-cta{padding:8px 12px;border-radius:999px;background:#fff;color:#000;font-size:14px;line-height:20px;font-weight:600}

/* Hero */
.hero{display:flex;flex-direction:column;align-items:center;text-align:center;padding:96px var(--pad) 0}
.hero-title{max-width:680px;font-size:60px;line-height:60px;letter-spacing:-.034em;background:linear-gradient(90deg,#fff,#9B9B9B);-webkit-background-clip:text;background-clip:text;color:transparent}
/* descenders (g, y) on the last line sit below the line box; pad the gradient area so they are painted */
.hero-title{padding-bottom:.16em;margin-bottom:-.16em}
.hero-sub{max-width:680px;margin-top:24px;font-size:18px;line-height:28px;color:var(--muted)}
.hero-actions{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:20px}
.proof{font-size:14px;line-height:20px;color:var(--dim)}
.dock{list-style:none;display:flex;align-items:flex-end;gap:12px;margin-top:48px;padding:12px;border-radius:24px;background:var(--s1);border:1px solid var(--line)}
.dock-item{display:flex;flex-direction:column;align-items:center;gap:8px}
.dock-tile{display:grid;place-items:center;width:60px;height:60px;border-radius:16px;background:var(--s3);border:1px solid rgba(255,255,255,.12);font-family:"Geist Mono",monospace;font-size:16px;font-weight:600}
.dock-tile svg{width:40px;height:40px}
.dock-item.is-us .dock-tile{width:80px;height:80px;border-radius:20px;background:var(--accent)}
.dock-item.is-soon .dock-tile{opacity:.45}
.dock-label{font-size:12px;line-height:16px;color:var(--muted)}
.dock-item.is-soon .dock-label{color:var(--dim)}
.hero-video{width:100%;max-width:var(--max);margin-top:48px;border-radius:16px;overflow:hidden;border:1px solid var(--line);aspect-ratio:16/9;background:#111}
.hero-video video{width:100%;height:100%;object-fit:cover}

/* Split rows */
.split{display:flex;justify-content:space-between;align-items:flex-start;gap:48px;max-width:calc(var(--max) + 2*var(--pad));margin:0 auto;padding:160px var(--pad) 48px}
.two-tone{font-size:48px;line-height:48px;letter-spacing:-.033em;max-width:600px}
.two-tone span{display:block;color:var(--dim)}
.split-right{max-width:400px}
.split-right p{font-size:18px;line-height:28px;color:var(--muted)}
.btn-row{display:flex;gap:8px;margin-top:24px;flex-wrap:wrap}

/* Studio */
.studio-wrap{max-width:calc(var(--max) + 2*var(--pad));margin:0 auto;padding:0 var(--pad)}
.studio{border-radius:16px;border:1px solid var(--line);background:#121212;overflow:hidden}
.studio-top{display:flex;align-items:center;justify-content:space-between;height:44px;padding:0 16px;border-bottom:1px solid var(--line);font-size:12px;line-height:16px;color:var(--muted)}
.crumbs{display:flex;align-items:center;gap:8px}.crumbs svg{width:14px;height:14px}.crumbs i{font-style:normal;color:var(--dim)}.crumbs b{color:var(--fg);font-weight:500}
.studio-tools{display:flex;gap:4px}.studio-tools i{width:24px;height:24px;border-radius:6px;background:var(--s2)}.studio-tools i.on{background:var(--accent)}
.studio-right{display:flex;gap:12px;align-items:center}.studio-right em{font-style:normal;color:var(--dim)}.studio-right b{padding:4px 8px;border-radius:6px;background:var(--s3);color:var(--fg);font-weight:500}
.studio-body{display:grid;grid-template-columns:1fr 300px;min-height:440px}
.studio-canvas{display:grid;place-items:center;padding:24px;background:#0A0A0A}
.studio-player{position:relative;width:100%;max-width:760px;aspect-ratio:16/9;border-radius:8px;overflow:hidden;background:#000}
.studio-player video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.studio-player .v-raw{opacity:0}
.studio-player[data-view="raw"] .v-raw{opacity:1}.studio-player[data-view="raw"] .v-edit{opacity:0}
.tag{position:absolute;top:12px;right:12px;padding:4px 8px;border-radius:6px;background:var(--accent);font-size:12px;line-height:16px;font-weight:600}
.inspector{display:flex;flex-direction:column;gap:12px;padding:16px;border-left:1px solid var(--line);background:#141414;text-align:left}
.ins-head{display:flex;justify-content:space-between;align-items:center;font-size:14px;line-height:20px;font-weight:600}
.ins-head span{display:flex;gap:8px;align-items:center}.ins-head svg{width:14px;height:14px;fill:var(--accent-2)}
.ins-head small{font-size:12px;font-weight:400;color:var(--dim)}
.ins-label{font-size:12px;line-height:16px;color:var(--dim)}
.seg{display:grid;grid-template-columns:1fr 1fr;gap:2px;padding:2px;border-radius:8px;background:rgba(255,255,255,.06)}
.seg button{padding:4px 0;border-radius:6px;font-size:12px;line-height:20px;font-weight:600;color:var(--muted)}
.seg button[aria-selected="true"]{background:var(--accent);color:#fff}
.ins-rows{list-style:none;display:flex;flex-direction:column;gap:4px}
.ins-rows li{display:flex;justify-content:space-between;padding:8px;border-radius:6px;background:rgba(255,255,255,.04);font-size:12px;line-height:16px;color:var(--muted)}
.ins-rows b{color:var(--fg);font-weight:500}
.ins-ask{display:flex;flex-direction:column;gap:4px;padding:8px;border-radius:8px;border:1px solid rgba(255,150,112,.35);background:rgba(255,255,255,.06);font-size:12px;line-height:16px}
.ins-ask small{color:var(--accent-2);font-weight:600;font-size:12px}
.ins-publish{margin-top:auto;padding:8px;border-radius:8px;background:#fff;color:#000;font-size:12px;line-height:16px;font-weight:600}
.studio-timeline{position:relative;padding:12px 16px 16px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:8px}
.tl-head{display:flex;justify-content:space-between;font-size:12px;line-height:16px;color:var(--muted)}
.tl-track{display:grid;grid-template-columns:72px 1fr;align-items:center;gap:8px}
.tl-track em{font-style:normal;font-size:12px;line-height:16px;color:var(--dim)}
.tl-clips{height:24px;border-radius:4px}
.tl-clips.v{background:repeating-linear-gradient(90deg,#2B3A55 0 18%,#000 18% 18.4%)}
.tl-clips.c{height:16px;background:repeating-linear-gradient(90deg,#6B2350 0 4%,transparent 4% 5%)}
.tl-clips.t{height:16px;background:repeating-linear-gradient(90deg,transparent 0 12%,#8A4A1E 12% 20%,transparent 20% 34%)}
.tl-playhead{position:absolute;top:36px;bottom:12px;left:calc(96px + 38%);width:2px;background:var(--accent)}

/* Feature: change something */
.feature{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;max-width:calc(var(--max) + 2*var(--pad));margin:0 auto;padding:160px var(--pad) 0}
.prompt{display:flex;flex-direction:column;gap:16px;padding:16px;border-radius:16px;background:var(--s1);border:1px solid var(--line)}
.clips{display:flex;gap:8px}.clips img{width:96px;height:56px;border-radius:8px;object-fit:cover;border:1px solid var(--line)}
.prompt-text{font-size:16px;line-height:24px;min-height:48px}
.prompt-bar{display:flex;justify-content:space-between;align-items:center}
.chips{display:flex;gap:16px;font-size:12px;line-height:16px;color:var(--muted)}
.send{display:grid;place-items:center;width:32px;height:32px;border-radius:8px;background:var(--accent)}
.send svg{width:16px;height:16px;fill:none;stroke:#fff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.feature-copy h2{font-size:48px;line-height:48px;letter-spacing:-.033em}
.feature-copy p{margin-top:24px;font-size:18px;line-height:28px;color:var(--muted);max-width:480px}

/* Tagline */
.tagline{padding:192px var(--pad) 48px;text-align:center}
.tagline-text{font-size:72px;line-height:72px;letter-spacing:-.033em;font-weight:500;max-width:960px;margin:0 auto}

/* Shared section heads */
.bill,.stats,.agent{max-width:calc(var(--max) + 2*var(--pad));margin:0 auto;padding:160px var(--pad) 0;text-align:center}
.bill h2,.stats h2,.agent h2{font-size:48px;line-height:48px;letter-spacing:-.033em}
.sub{margin:16px auto 0;max-width:680px;font-size:18px;line-height:28px;color:var(--muted)}
.note{margin-top:24px;font-size:12px;line-height:16px;color:var(--dim);font-family:"Geist Mono",monospace}
.note a{text-decoration:underline;text-underline-offset:3px}

/* Bill */
.cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:48px}
.card{display:flex;flex-direction:column;align-items:center;gap:8px;padding:40px 32px;border-radius:16px;background:var(--s1)}
.card h3{font-size:20px;line-height:28px}
.card>p{font-size:16px;line-height:24px;color:var(--muted);max-width:300px}
.ui{position:relative;width:100%;max-width:300px;margin-top:24px;display:flex;flex-direction:column;gap:12px;padding:16px;border-radius:12px;background:var(--s2);border:1px solid rgba(255,255,255,.08);text-align:left}
.row{display:flex;justify-content:space-between;font-size:12px;line-height:16px;color:var(--muted)}
.row b{font-weight:500;color:var(--fg)}.row b.accent{color:var(--accent-2)}.row b.bad{color:var(--bad)}
.live{display:flex;gap:8px;align-items:center;font-size:12px;line-height:16px;color:var(--muted)}
.live i{width:8px;height:8px;border-radius:50%;background:#3DD68C}
.big{font-size:30px;line-height:36px;font-weight:500;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.spark{display:flex;align-items:flex-end;gap:4px;height:64px}
.spark i{flex:1;height:calc(var(--h)*100%);border-radius:2px;background:var(--s4)}.spark i.hot{background:var(--accent)}
.total{display:flex;justify-content:space-between;align-items:center;padding-top:12px;border-top:1px solid var(--line);font-size:14px;color:var(--muted)}
.total b{font-size:30px;line-height:36px;font-weight:500;color:var(--fg);font-variant-numeric:tabular-nums}.total b.bad{color:var(--bad)}
.paid{align-self:flex-start;padding:4px 8px;border-radius:4px;border:1px solid var(--accent-2);color:var(--accent-2);font-family:"Geist Mono",monospace;font-size:12px;line-height:16px;letter-spacing:.2em}

/* Stats */
.cards4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:48px;text-align:left}
.stat{display:flex;flex-direction:column;justify-content:space-between;min-height:240px;padding:32px;border-radius:16px;background:var(--s1)}
.stat b{font-size:60px;line-height:60px;font-weight:500;letter-spacing:-.033em}
.stat span{display:flex;flex-direction:column;font-weight:500}.stat small{font-size:14px;line-height:20px;color:var(--muted);font-weight:400}

/* Agent */
.agent-panel{margin-top:48px;padding:48px;border-radius:16px;background:var(--s1);display:grid;place-items:center}
.term{width:100%;max-width:760px;border-radius:12px;background:#0B0B0B;border:1px solid rgba(255,255,255,.15);overflow:hidden;text-align:left;box-shadow:0 32px 80px rgba(0,0,0,.6)}
.term-bar{display:flex;gap:8px;align-items:center;padding:12px 16px;background:#131313;font-family:"Geist Mono",monospace;font-size:12px;line-height:16px;color:var(--dim)}
.term-bar i{width:10px;height:10px;border-radius:50%;background:#FF5F5799}.term-bar i:nth-child(2){background:#FEBC2E99}.term-bar i:nth-child(3){background:#28C84099}
.term-bar span{margin-left:8px}
.term-body{display:flex;flex-direction:column;gap:8px;padding:24px;font-family:"Geist Mono",monospace;font-size:14px;line-height:20px;color:var(--muted);min-height:300px}
.term-body .u{color:var(--fg)}.term-body .ok{color:var(--ok)}.term-body .o{padding-left:16px}.term-body .q{color:var(--accent-2);padding-left:16px}

/* Pricing */
.pricing{max-width:calc(var(--max) + 2*var(--pad));margin:0 auto;padding:160px var(--pad) 0}
.pricing-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}
.toggle{display:flex;gap:4px;padding:4px;border-radius:12px;background:var(--s1)}
.toggle button{padding:8px 12px;border-radius:8px;font-size:14px;line-height:20px;font-weight:600;color:var(--muted);display:flex;gap:8px;align-items:center}
.toggle button[aria-pressed="true"]{background:var(--s4);color:var(--fg)}
.toggle small{font-size:12px;color:var(--accent-2)}
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:48px}
.plan{display:flex;flex-direction:column;gap:12px;padding:32px;border-radius:16px;background:var(--s1);border:1px solid transparent}
.plan.is-pro{background:var(--s2);border-color:rgba(255,90,31,.4)}
.plan-name{display:flex;gap:8px;align-items:center;font-weight:600}.is-pro .plan-name{color:var(--accent-2)}
.flag{padding:2px 8px;border-radius:4px;background:var(--accent);color:#fff;font-size:12px;line-height:16px}
.price{display:flex;align-items:flex-end;gap:8px;min-height:60px}.price b{font-size:60px;line-height:60px;font-weight:500;letter-spacing:-.033em;font-variant-numeric:tabular-nums}.price span{font-size:14px;line-height:20px;color:var(--muted);padding-bottom:8px}
.plan-sub{font-size:14px;line-height:20px;color:var(--muted)}
.plan ul{list-style:none;display:flex;flex-direction:column;gap:12px;margin:12px 0 24px;flex:1}
.plan li{position:relative;padding-left:24px}
.plan li::before{content:"";position:absolute;left:2px;top:7px;width:10px;height:6px;border-left:1.6px solid var(--muted);border-bottom:1.6px solid var(--muted);transform:rotate(-45deg)}
.is-pro li::before{border-color:var(--accent-2)}
.plan li.soon{color:var(--dim)}.plan li.soon::before{border:0;width:8px;height:8px;border-radius:50%;background:var(--s4);transform:none;top:8px}
.pricing .note{font-family:"Geist",sans-serif;font-size:14px;line-height:20px}

/* FAQ */
.faq{display:grid;grid-template-columns:520px 1fr;gap:64px;max-width:calc(var(--max) + 2*var(--pad));margin:0 auto;padding:160px var(--pad) 0;align-items:start}
.faq h2{font-size:48px;line-height:48px;letter-spacing:-.033em;margin-bottom:24px}
.faq [role="tablist"]{display:flex;flex-direction:column;gap:4px}
.faq [role="tab"]{text-align:left;padding:12px 16px;border-radius:8px;font-weight:500;color:var(--muted);transition:background-color 300ms var(--ease),color 300ms var(--ease)}
.faq [role="tab"]:hover{color:var(--fg)}
.faq [role="tab"][aria-selected="true"]{background:var(--s1);color:var(--fg)}
.faq-answer{position:sticky;top:120px;padding:40px;border-radius:16px;background:var(--s1)}
.faq-answer h3{font-size:24px;line-height:32px}
.faq-answer p{margin-top:16px;font-size:18px;line-height:28px;color:var(--muted)}

/* Final */
.final{display:flex;justify-content:space-between;align-items:center;gap:48px;max-width:calc(var(--max) + 2*var(--pad));margin:0 auto;padding:192px var(--pad) 160px}
.final h2{font-size:72px;line-height:72px;letter-spacing:-.033em}
.final .sub{margin:24px 0 0}
.join{display:flex;flex-direction:column;gap:12px;width:480px;padding:24px;border-radius:16px;background:var(--s1)}
.join label{font-size:14px;line-height:20px;color:var(--muted)}
.join input[type=email]{padding:12px 16px;border-radius:8px;background:#000;border:1px solid var(--line);color:var(--fg);font:inherit}
.join input[type=email]:focus{outline:2px solid var(--accent-2);outline-offset:2px}
.honey{position:absolute;left:-9999px}
.form-msg{font-size:14px;color:var(--bad)}
.form-foot{font-size:14px;line-height:20px;color:var(--dim)}.form-foot a{color:var(--muted);text-decoration:underline;text-underline-offset:3px}

/* Footer */
.footer{display:flex;justify-content:space-between;gap:48px;max-width:calc(var(--max) + 2*var(--pad));margin:0 auto;padding:48px var(--pad) 64px;border-top:1px solid var(--line)}
.footer p{margin-top:12px;font-size:14px;line-height:20px;color:var(--muted)}
.footer-cols{display:flex;gap:64px}
.footer-cols div{display:flex;flex-direction:column;gap:12px;font-size:14px;line-height:20px}
.footer-cols p{margin:0;font-family:"Geist Mono",monospace;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--dim)}
.footer-cols a:hover{color:var(--accent-2)}

/* Responsive */
@media (max-width:1023px){
  :root{--pad:24px}
  .split,.feature,.final,.faq{grid-template-columns:1fr;flex-direction:column}
  .feature{display:flex;flex-direction:column-reverse}
  .studio-body{grid-template-columns:1fr}.inspector{border-left:0;border-top:1px solid var(--line)}
  .cards3,.plans{grid-template-columns:1fr}.cards4{grid-template-columns:1fr 1fr}
  .join{width:100%}.faq-answer{position:static}
}
@media (max-width:640px){
  .nav{gap:16px;padding-left:16px}.nav-links{display:none}
  .hero{padding-top:64px}.hero-title{font-size:36px;line-height:40px}.hero-title br{display:none}
  .hero-sub br{display:none}.hero-sub{font-size:16px;line-height:24px}
  .dock{gap:8px;padding:8px}.dock-tile{width:44px;height:44px;border-radius:12px;font-size:12px}.dock-item.is-us .dock-tile{width:56px;height:56px;border-radius:16px}.dock-tile svg{width:28px;height:28px}.dock-label{display:none}
  .two-tone,.feature-copy h2,.bill h2,.stats h2,.agent h2,.faq h2{font-size:36px;line-height:40px}
  .tagline{padding-top:96px}.tagline-text{font-size:36px;line-height:40px}
  .final h2{font-size:48px;line-height:48px}
  .split,.bill,.stats,.agent,.pricing,.faq,.feature{padding-top:96px}
  .studio-top .studio-tools,.studio-right em{display:none}
  .studio-timeline{display:none}
  .cards4{grid-template-columns:1fr}.stat{min-height:160px}
  .agent-panel{padding:16px}.term-body{font-size:12px;line-height:16px;padding:16px}
  .footer{flex-direction:column}.footer-cols{flex-wrap:wrap;gap:32px}
  .clips img{width:72px;height:40px}.chips span:nth-child(3){display:none}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}

/* ===== it1 · motion foundation ===== */
.hero-title .l,.hero-sub .l{display:block}
@media (max-width:640px){.hero-title .l,.hero-sub .l{display:inline}}
.js [data-reveal]{opacity:0;transform:translateY(64px);filter:blur(12px);transition:opacity 1000ms var(--ease),transform 1000ms var(--ease),filter 1000ms var(--ease);transition-delay:calc(var(--i,0)*90ms)}
.js [data-reveal].is-in{opacity:1;transform:none;filter:none}
.js .hero-title .w{display:inline-block;opacity:0;transform:translateY(24px);filter:blur(8px);transition:opacity 900ms var(--ease),transform 900ms var(--ease),filter 900ms var(--ease);transition-delay:calc(120ms + var(--i)*45ms)}
.js .hero.is-ready .hero-title .w{opacity:1;transform:none;filter:none}
.tagline-text .tw{color:rgba(255,255,255,.28);transition:color 700ms var(--ease)}
.tagline-text .tw.on{color:#fff}
@media (prefers-reduced-motion:reduce){.js [data-reveal],.js .hero-title .w{opacity:1!important;transform:none!important;filter:none!important}.tagline-text .tw{color:#fff}}

/* ===== it2 · cinematic hero ===== */
.hero{padding-top:72px}
.dock{margin-top:40px}
.hero-stage{width:100%;max-width:var(--max);margin-top:48px;perspective:1600px}
.hero-video{margin-top:0;transform-origin:50% 0;transform:rotateX(var(--tilt,22deg)) scale(var(--sc,.88));transition:box-shadow 600ms var(--ease);box-shadow:0 -1px 0 rgba(255,255,255,.08),0 40px 120px rgba(255,90,31,calc(var(--glow,.35)*.5))}
.hero-video::after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;box-shadow:inset 0 1px 0 rgba(255,255,255,.12)}
.hero-video{position:relative}
.dock-item{transition:transform 500ms var(--ease)}
.dock-tile{transition:transform 500ms var(--ease),box-shadow 500ms var(--ease)}
.dock:hover .dock-item{transform:scale(.96)}
.dock .dock-item:hover{transform:translateY(-6px) scale(1.12)}
.dock-item.is-us .dock-tile{box-shadow:0 0 0 1px rgba(255,255,255,.18) inset,0 12px 40px rgba(255,90,31,.45);animation:breathe 3.6s var(--ease) infinite}
@keyframes breathe{0%,100%{box-shadow:0 0 0 1px rgba(255,255,255,.18) inset,0 12px 40px rgba(255,90,31,.35)}50%{box-shadow:0 0 0 1px rgba(255,255,255,.24) inset,0 16px 64px rgba(255,90,31,.7)}}
.dock-label{opacity:.9}
@media (max-width:640px){.hero-video{--tilt:10deg}}
@media (prefers-reduced-motion:reduce){.hero-video{transform:none!important}}

/* ===== it3 · studio comes alive ===== */
.studio-player{--split:100%}
.studio-player .v-raw{opacity:1!important}
.studio-player .v-edit{opacity:1!important;clip-path:inset(0 0 0 var(--split));transition:clip-path 1400ms var(--ease)}
.studio-player[data-view="edit"]{--split:0%}
.divider{position:absolute;top:0;bottom:0;left:var(--split);width:2px;margin-left:-1px;background:#fff;box-shadow:0 0 24px rgba(255,255,255,.6);transition:left 1400ms var(--ease),opacity 400ms var(--ease);opacity:0}
.studio-player.is-wiping .divider{opacity:1}
.studio-player .tag{transition:opacity 500ms var(--ease)}
.tag-raw{left:12px;right:auto;background:rgba(0,0,0,.6);color:var(--muted)}
.studio-player[data-view="edit"] .tag-raw{opacity:0}
.studio-player:not([data-view="edit"]) .tag:not(.tag-raw){opacity:0}
.ins-rows li{position:relative;padding-right:32px;transition:opacity 600ms var(--ease),transform 600ms var(--ease)}
.js .studio:not(.is-done) .ins-rows li:not(.on){opacity:.35;transform:translateX(-4px)}
.tick{position:absolute;right:8px;top:50%;width:14px;height:14px;margin-top:-7px;border-radius:50%;background:var(--ok);transform:scale(0);transition:transform 500ms var(--ease)}
.tick::after{content:"";position:absolute;left:4px;top:3px;width:4px;height:6px;border:solid #0B0B0B;border-width:0 1.6px 1.6px 0;transform:rotate(45deg)}
.ins-rows li.on .tick,.studio.is-done .tick{transform:scale(1)}
.ins-publish{position:relative;overflow:hidden;transition:transform 200ms var(--ease)}
.ins-publish:active{transform:scale(.98)}
.studio.is-done .ins-publish::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 30%,rgba(255,90,31,.35) 50%,transparent 70%);transform:translateX(-100%);animation:sheen 2.4s var(--ease) 1}
@keyframes sheen{to{transform:translateX(100%)}}
.tl-playhead{left:96px;transition:none}
.tl-playhead::before{content:"";position:absolute;top:-4px;left:-4px;width:10px;height:10px;border-radius:2px;background:var(--accent);transform:rotate(45deg)}
.studio-tools i.on{box-shadow:0 0 16px rgba(255,90,31,.6)}

/* ===== it4 · composer types itself ===== */
.composer{display:flex;flex-direction:column;align-items:center;gap:16px}
.prompt{width:100%}
.prompt-text.is-typing::after{content:"";display:inline-block;width:2px;height:18px;margin-left:2px;vertical-align:-3px;background:var(--accent-2);animation:blink 1s steps(1) infinite}
@keyframes blink{50%{opacity:0}}
.send{transition:transform 300ms var(--ease),box-shadow 600ms var(--ease)}
.send.is-sent{transform:scale(.9);box-shadow:0 0 0 8px rgba(255,90,31,.18)}
.reply{align-self:stretch;display:flex;gap:12px;align-items:center;padding:12px 16px;border-radius:12px;background:var(--s1);border:1px solid var(--line);font-size:14px;line-height:20px;color:var(--muted);opacity:0;transform:translateY(12px);transition:opacity 700ms var(--ease),transform 700ms var(--ease)}
.reply .tick{position:static;margin:0;flex:none;transform:scale(1)}
.reply.is-in{opacity:1;transform:none}
.toolbar{display:flex;gap:4px;padding:4px;border-radius:12px;background:var(--s1);border:1px solid var(--line)}
.toolbar i{width:32px;height:32px;border-radius:8px;display:grid;place-items:center;position:relative}
.clips img{transition:transform 500ms var(--ease)}
.prompt:hover .clips img:nth-child(1){transform:rotate(-3deg)}.prompt:hover .clips img:nth-child(3){transform:rotate(3deg)}

/* ===== it5 · the bill plays out ===== */
.js [data-bill] .spark i{transform:scaleY(0);transform-origin:bottom;transition:transform 900ms var(--ease);transition-delay:calc(var(--n)*70ms)}
.js [data-bill].is-live .spark i{transform:none}
.js [data-bill] .receipt .row{opacity:0;transform:translateY(8px);transition:opacity 600ms var(--ease),transform 600ms var(--ease);transition-delay:calc(var(--n)*160ms + 300ms)}
.js [data-bill].is-live .receipt .row{opacity:1;transform:none}
.receipt .row b.bad{transition:text-shadow 600ms var(--ease)}
[data-bill].is-live .receipt .row b.bad{animation:flash 1.2s var(--ease) 1.4s 2}
@keyframes flash{50%{text-shadow:0 0 16px rgba(249,112,102,.9)}}
.paid{transform-origin:center;transition:transform 500ms cubic-bezier(.2,1.6,.4,1),opacity 300ms var(--ease)}
.js [data-bill]:not(.is-paid) .paid{opacity:0;transform:scale(1.8) rotate(-12deg)}
.js [data-bill].is-paid .paid{opacity:1;transform:rotate(-6deg)}
.card{transition:transform 600ms var(--ease),background-color 400ms var(--ease)}
.card:hover{transform:translateY(-4px);background:#1c1c1c}

/* ===== it6 · terminal runs itself ===== */
.js [data-term] p{opacity:0;transform:translateY(6px);transition:opacity 400ms var(--ease),transform 400ms var(--ease)}
.js [data-term] p.in{opacity:1;transform:none}
[data-term] .u.typing::after,[data-term] .caret{content:"";display:inline-block;width:8px;height:16px;margin-left:4px;vertical-align:-3px;background:var(--fg);animation:blink 1s steps(1) infinite}
[data-term] .ok.pending{color:var(--muted)}
[data-term] .ok.pending::first-letter{color:transparent}
.term-body{position:relative}
.term-status{display:flex;gap:8px;align-items:center;margin-top:auto;padding-top:16px;font-size:12px;line-height:16px;color:var(--dim)}
.term-status i{width:8px;height:8px;border-radius:50%;background:var(--s4);transition:background-color 400ms var(--ease),box-shadow 400ms var(--ease)}
.term-status.live i{background:#3DD68C;box-shadow:0 0 12px rgba(61,214,140,.8)}
.agent-panel{position:relative;overflow:hidden}
.agent-panel::before{content:"";position:absolute;inset:0;background:url(/ai-edit/poster.jpg) center/cover;opacity:.12;filter:blur(24px) saturate(.6)}
.term{position:relative}
.stat b{font-variant-numeric:tabular-nums}

/* ===== it7 · polish: nav, menu, grain, pricing, FAQ, toolbar ===== */
.grain{position:fixed;inset:-50%;z-index:60;pointer-events:none;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:grain 8s steps(8) infinite}
@keyframes grain{0%{transform:translate(0,0)}25%{transform:translate(-3%,2%)}50%{transform:translate(2%,-3%)}75%{transform:translate(-2%,-1%)}100%{transform:translate(0,0)}}
.nav{transition:padding 700ms var(--ease),gap 700ms var(--ease),background-color 700ms var(--ease),box-shadow 700ms var(--ease)}
.nav-wrap.is-scrolled .nav{gap:24px;background:rgba(24,24,24,.9);box-shadow:0 12px 40px rgba(0,0,0,.5)}
.nav-links a{position:relative;transition:color 300ms var(--ease)}
.nav-links a.is-current{color:var(--fg)}
.nav-cta{transition:transform 200ms var(--ease),background-color 300ms var(--ease)}.nav-cta:hover{background:#E6E6E6}.nav-cta:active{transform:scale(.98)}
.burger{display:none;position:relative;width:36px;height:36px;border-radius:999px;background:var(--s3)}
.burger i{position:absolute;left:11px;width:14px;height:1.6px;background:#fff;border-radius:2px;transition:transform 700ms var(--ease),top 700ms var(--ease)}
.burger i:nth-child(1){top:14px}.burger i:nth-child(2){top:20px}
.burger[aria-expanded="true"] i:nth-child(1){top:17px;transform:rotate(45deg)}.burger[aria-expanded="true"] i:nth-child(2){top:17px;transform:rotate(-45deg)}
.menu{position:fixed;inset:0;z-index:40;display:flex;flex-direction:column;justify-content:center;gap:8px;padding:96px 24px;background:rgba(0,0,0,.8);backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);opacity:0;transition:opacity 700ms var(--ease);pointer-events:none}
.menu.is-open{opacity:1;pointer-events:auto}
.menu a{font-size:36px;line-height:40px;font-weight:500;padding:8px 0;opacity:0;transform:translateY(48px);transition:opacity 700ms var(--ease),transform 700ms var(--ease)}
.menu.is-open a{opacity:1;transform:none}
.menu a:nth-child(2){transition-delay:50ms}.menu a:nth-child(3){transition-delay:100ms}.menu a:nth-child(4){transition-delay:150ms}.menu a:nth-child(5){transition-delay:200ms;color:var(--accent-2)}
@media (max-width:640px){.burger{display:block}.nav{padding:6px 6px 6px 16px}.nav-cta{display:none}}
.toolbar i{display:grid;place-items:center;width:32px;height:32px;border-radius:8px;transition:background-color 300ms var(--ease)}
.toolbar i:hover{background:var(--s3)}
.toolbar svg{width:16px;height:16px;fill:none;stroke:var(--muted);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.toolbar i.on{background:var(--accent)}.toolbar i.on svg{stroke:#fff}
.plan{position:relative;transition:transform 600ms var(--ease)}
.plan:hover{transform:translateY(-4px)}
.beam{position:absolute;inset:-1px;border-radius:16px;padding:1px;pointer-events:none;background:conic-gradient(from var(--a,0deg),transparent 0 80%,var(--accent-2) 88%,#fff 90%,transparent 92%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:beam 8s linear infinite}
@property --a{syntax:"<angle>";inherits:false;initial-value:0deg}
@keyframes beam{to{--a:360deg}}
.price b,.price span{transition:opacity 350ms var(--ease),transform 500ms var(--ease),filter 350ms var(--ease)}
.plans.is-switching .price b,.plans.is-switching .price span{opacity:0;transform:translateY(-12px);filter:blur(6px)}
.faq-answer h3,.faq-answer p{transition:opacity 400ms var(--ease),transform 600ms var(--ease),filter 400ms var(--ease)}
.faq-answer.is-switching h3,.faq-answer.is-switching p{opacity:0;transform:translateY(12px);filter:blur(6px)}
.faq [role="tab"]{position:relative}
.faq [role="tab"][aria-selected="true"]::before{content:"";position:absolute;left:0;top:12px;bottom:12px;width:2px;border-radius:2px;background:var(--accent)}
@media (prefers-reduced-motion:reduce){.grain,.beam{animation:none}}

/* ===== it8 · mobile + performance ===== */
@media (max-width:640px){
  .cards4{grid-template-columns:1fr 1fr;gap:8px}
  .stat{min-height:0;gap:24px;padding:24px}
  .stat b{font-size:48px;line-height:48px}
  .faq{gap:0}
  .faq-answer{margin:4px 0 12px;padding:24px}
  .faq-answer h3{display:none}
  .faq-answer p{margin-top:0;font-size:16px;line-height:24px}
}


/* ===== bill cards share rows: title, copy, receipt line up across cards ===== */
.cards3{grid-template-rows:auto auto 1fr}
.cards3 .card{display:grid;grid-row:span 3;grid-template-rows:subgrid;justify-items:center;align-items:start;row-gap:8px}
.cards3 .card .ui{align-self:stretch;margin-top:24px}
.cards3 .card:first-child .ui{justify-content:space-between}

/* ===== AI edit: the app's real focus mode (AiEditTopBar + CheckStep) ===== */
.studio-body{grid-template-columns:1fr 340px}
.ai-top{display:grid;grid-template-columns:1fr auto 1fr;height:52px;gap:16px}
.ai-top-left{display:flex;align-items:center;gap:16px;min-width:0}
.ai-exit{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 12px;border:1px solid rgba(255,255,255,.14);border-radius:999px;color:var(--fg);font-size:13px;white-space:nowrap}
.ai-exit svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round}
.ai-top-name{overflow:hidden;color:var(--muted);font-size:13px;text-overflow:ellipsis;white-space:nowrap}
.ai-stepper{display:flex;align-items:center;gap:2px;padding:3px;list-style:none;border-radius:999px;background:rgba(255,255,255,.04)}
.ai-step{display:inline-flex;align-items:center;gap:8px;padding:5px 14px 5px 6px;border-radius:999px;color:#9E9E9E;font-size:13px;white-space:nowrap}
.ai-step.is-done{color:var(--muted)}
.ai-step.is-active{background:rgba(255,90,31,.14);color:var(--fg);font-weight:600}
.ai-step-dot{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:999px;background:rgba(255,255,255,.06);color:#9E9E9E;font-size:12px;font-weight:700}
.ai-step-dot svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.ai-step.is-done .ai-step-dot{background:rgba(64,217,140,.14);color:#5CD699}
.ai-step.is-active .ai-step-dot{background:var(--accent);color:#fff}
.ai-panel{gap:16px;padding:20px;background:#181818}
.ai-head{display:grid;gap:6px}
.ai-title{color:var(--fg);font-size:16px;line-height:24px;font-weight:600}
.ai-summary{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px;font-size:13px;line-height:18px}
.ai-summary b{color:#5CD699;font-weight:600;font-variant-numeric:tabular-nums}
.ai-summary span{color:var(--muted)}
.ai-moments{display:grid;gap:6px;list-style:none}
.ai-moment{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid rgba(255,255,255,.07);border-radius:10px;background:#212121;transition:opacity 600ms var(--ease),transform 600ms var(--ease)}
.ai-moment.is-off{opacity:.5}
.ai-moment-icon{display:grid;place-items:center;flex:0 0 auto;width:28px;height:28px;border-radius:8px;background:rgba(255,90,31,.14);color:var(--accent)}
.ai-moment-icon svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.ai-moment-icon.is-cut{background:rgba(240,82,70,.14);color:#F2685E}
.ai-moment-icon.is-zoom{background:rgba(102,122,240,.16);color:#8C9EF5}
.ai-moment-icon.is-caption{background:rgba(255,255,255,.06);color:var(--muted)}
.ai-moment-text{display:grid;gap:2px;flex:1;min-width:0}
.ai-moment-text small{color:#9E9E9E;font-size:12px;line-height:16px}
.ai-moment-text span{overflow:hidden;color:var(--fg);font-size:13px;line-height:18px;text-overflow:ellipsis;white-space:nowrap}
.ai-switch{position:relative;flex:0 0 auto;width:32px;height:18px;border-radius:999px;background:rgba(255,255,255,.09);transition:background-color 300ms var(--ease)}
.ai-switch span{position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:999px;background:#fff;transition:transform 300ms var(--ease)}
.ai-switch.is-on{background:var(--accent)}
.ai-switch.is-on span{transform:translateX(14px)}
.ai-actions{display:grid;gap:8px;margin-top:auto}
.ai-primary,.ai-secondary{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:100%;height:44px;border-radius:8px;font-size:14px;font-weight:600;white-space:nowrap}
.ai-primary{position:relative;overflow:hidden;background:var(--accent);color:#fff}
.ai-primary span{opacity:.72;font-weight:400}
.ai-secondary{background:rgba(255,255,255,.06);color:var(--fg)}
.ai-secondary svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linejoin:round}
.ai-foot{color:#9E9E9E;font-size:12px;line-height:17px;text-align:center}
.js .studio:not(.is-done) .ai-moment:not(.on){opacity:.35;transform:translateX(-4px)}
.js .studio:not(.is-done) .ai-moment:not(.on) .ai-switch{background:rgba(255,255,255,.09)}
.js .studio:not(.is-done) .ai-moment:not(.on) .ai-switch span{transform:none}
.studio.is-done .ai-primary::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 30%,rgba(255,255,255,.28) 50%,transparent 70%);transform:translateX(-100%);animation:sheen 2.4s var(--ease) 1}
@media (max-width:900px){.ai-top{grid-template-columns:1fr auto}.ai-top-right,.ai-top-name{display:none}.studio-body{grid-template-columns:1fr}}
@media (max-width:560px){.ai-top{grid-template-columns:1fr;height:auto;padding:10px 12px}.ai-top-left{display:none}.ai-stepper{justify-self:center}.ai-step{padding:4px 10px 4px 4px;font-size:12px}}

/* ?still: final state, no motion (design tools, screenshots) */
.still *,.still *::before,.still *::after{transition:none!important;animation:none!important}
.still .hero-video{transform:none!important}
.still .grain{display:none}
.still .tagline-text .tw{color:#fff}
