/* ct-site.css — Cinethread public marketing site (homepage, subpages, legal, demo).
   Design tokens + components from the approved "Cinethread Homepage Suite v2" brief. */
:root{
  --paper:#F7F5F0; --paper-warm:#EFECE4; --card:#FFFFFF;
  --ink:#16171A; --ink-2:#0F1013; --ink-soft:#3A3B36;
  --teal:#2F7D75; --teal-hover:#276a63; --teal-light:#7FC2B8;
  --muted:#55564F; --muted-dark:#9a988f; --faint:#8A8778;
  --nav-link:#EDEAE2; --foot-body:#B7B5AC; --foot-faint:#6E6C66; --foot-tag:#83817A;
  --line-light:rgba(22,23,26,0.08); --line-dark:rgba(247,245,240,0.10);
  --ui:-apple-system,'SF Pro Display','SF Pro Text','Helvetica Neue',Helvetica,Arial,sans-serif;
  --mono:'SF Mono',ui-monospace,Menlo,monospace;
  --wrap:1200px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--ui);-webkit-font-smoothing:antialiased;line-height:1.5}
a{color:inherit;text-decoration:none}
img{max-width:100%}
.mono{font-family:var(--mono)}
.wrap{max-width:var(--wrap);margin:0 auto;width:100%}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:980px;font-weight:500;white-space:nowrap;transition:background .15s,border-color .15s,color .15s;cursor:pointer;border:1px solid transparent}
.btn-teal{background:var(--teal);color:#fff}
.btn-teal:hover{background:var(--teal-hover)}
.btn-ghost-d{color:var(--paper);border-color:rgba(247,245,240,0.4)}
.btn-ghost-d:hover{border-color:var(--paper);background:rgba(247,245,240,0.06)}
.btn-ghost-l{color:var(--ink);border-color:rgba(22,23,26,0.25)}
.btn-ghost-l:hover{border-color:var(--ink);background:rgba(22,23,26,0.04)}
.btn-lg{font-size:16px;padding:14px 30px}
.btn-sm{font-size:13px;padding:9px 18px}

/* ── NAV (dark) ── */
.nav{background:var(--ink);border-bottom:1px solid var(--line-dark);position:sticky;top:0;z-index:50}
.nav-in{height:58px;display:flex;align-items:center;padding:0 40px;max-width:1360px;margin:0 auto}
.nav-logo{height:28px;width:auto;display:block}
.nav-mid{margin:0 auto;display:flex;align-items:center;gap:34px}
.nav-mid a{font-size:13px;color:var(--nav-link)}
.nav-mid a:hover{color:var(--teal-light)}
.nav-right{display:flex;align-items:center;gap:22px}
.nav-right a.login{font-size:13px;color:var(--nav-link)}
.nav-right a.login:hover{color:var(--teal-light)}
.nav-toggle{display:none;background:none;border:0;color:var(--nav-link);font-size:24px;cursor:pointer;padding:4px}

/* ── HERO ── */
.hero{background:var(--ink);color:var(--paper);text-align:center;padding:100px 40px 96px}
.eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:0.22em;text-transform:uppercase;color:var(--teal-light)}
.hero .eyebrow{margin-bottom:26px}
.hero h1{font-size:80px;font-weight:600;letter-spacing:-0.038em;line-height:0.98;margin:0}
.hero .sub{font-size:25px;color:var(--muted-dark);letter-spacing:-0.01em;max-width:600px;margin:26px auto 0;line-height:1.4}
.hero-cta{display:flex;gap:16px;justify-content:center;margin-top:32px;flex-wrap:wrap}

/* ── SUITE grid (light) ── */
.suite{background:var(--paper);padding:64px 56px 96px;text-align:center}
.kicker{font-size:15px;font-weight:600;letter-spacing:-0.01em;color:var(--teal);margin-bottom:14px}
.suite h2{font-size:44px;font-weight:600;letter-spacing:-0.03em;margin:0 0 12px}
.suite .intro{font-size:19px;color:var(--muted);max-width:560px;margin:0 auto 56px;line-height:1.5}
.suite-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:56px 24px;max-width:1000px;margin:0 auto}
.suite-item{display:flex;flex-direction:column;align-items:center;text-align:center;padding:12px 22px;color:inherit}
.suite-item i{font-size:50px;color:var(--teal)}
.suite-item h3{font-size:20px;font-weight:600;letter-spacing:-0.01em;margin:22px 0 8px;color:var(--ink)}
.suite-item p{font-size:14.5px;color:var(--muted);line-height:1.5;max-width:280px;margin:0}
a.suite-item:hover h3{color:var(--teal)}

/* ── PRODUCT screenshot (warm) ── */
.shot{background:var(--paper-warm);padding:80px 56px;display:flex;justify-content:center}
.shot-win{width:800px;max-width:100%;background:#EFEBE2;border-radius:18px;box-shadow:0 44px 90px -34px rgba(13,15,20,0.45);overflow:hidden;border:1px solid var(--line-light)}
.shot-bar{height:38px;background:#E4E0D6;display:flex;align-items:center;padding:0 14px;gap:7px;border-bottom:1px solid var(--line-light)}
.dot{width:10px;height:10px;border-radius:50%;flex:none}
.d-r{background:#FF5F57}.d-y{background:#FEBC2E}.d-g{background:#28C840}
.shot-cap{margin:0 auto;font-size:10px;letter-spacing:0.16em;color:var(--faint)}
.shot-body{display:flex;min-height:404px}
.shot-side{width:196px;flex-shrink:0;background:var(--ink);padding:18px 0}
.shot-brand{display:flex;align-items:center;gap:8px;padding:0 18px 18px}
.shot-brand span.sq{width:20px;height:20px;border-radius:6px;background:var(--teal)}
.shot-brand span.nm{font-family:'Poppins',var(--ui);font-size:13px;font-weight:600;color:var(--paper)}
.shot-nav{display:flex;flex-direction:column;gap:2px;padding:0 12px}
.shot-nav .row{display:flex;align-items:center;gap:11px;padding:9px 11px;border-radius:8px}
.shot-nav .row i{font-size:16px;color:#8b8f8e}.shot-nav .row span{font-size:12.5px;color:var(--foot-body)}
.shot-nav .row.on{background:rgba(47,125,117,0.2)}.shot-nav .row.on i{color:var(--teal-light)}.shot-nav .row.on span{color:var(--paper)}
.shot-main{flex:1;background:var(--paper);padding:28px 30px;min-width:0}
.shot-main .eb{font-family:var(--mono);font-size:10.5px;letter-spacing:0.16em;color:var(--teal);margin-bottom:8px}
.shot-main h4{font-size:28px;font-weight:600;letter-spacing:-0.02em;margin:0 0 20px}
.stat-row{display:flex;gap:12px;margin-bottom:14px}
.stat{flex:1;background:var(--card);border:1px solid var(--line-light);border-radius:14px;padding:16px 18px}
.stat .l{font-family:var(--mono);font-size:9.5px;letter-spacing:0.1em;color:var(--faint)}
.stat .v{font-size:24px;font-weight:600;letter-spacing:-0.02em;margin-top:5px}
.scene-card{background:var(--card);border:1px solid var(--line-light);border-radius:14px;overflow:hidden}
.scene{display:flex;align-items:center;gap:12px;padding:13px 16px;border-bottom:1px solid rgba(22,23,26,0.06)}
.scene:last-child{border-bottom:0}
.scene .sd{width:7px;height:7px;border-radius:50%}.sd-day{background:#D9902B}.sd-night{background:#3A6EA5}
.scene .no{font-size:13px;font-weight:600;width:24px}.scene .set{flex:1;font-size:13px;color:var(--ink-soft)}
.scene .pg{font-family:var(--mono);font-size:11px;color:var(--faint)}

/* ── BAND (dark) ── */
.band{background:var(--ink);color:var(--paper);text-align:center;padding:104px 56px}
.band h2{font-size:46px;font-weight:600;letter-spacing:-0.025em;line-height:1.12;max-width:900px;margin:0 auto}
.band p{font-size:20px;color:var(--muted-dark);line-height:1.5;max-width:680px;margin:20px auto 0}

/* ── CTA (light) ── */
.cta{background:var(--paper);text-align:center;padding:96px 40px 104px}
.cta .coil{height:60px;width:auto;display:block;margin:0 auto 26px}
.cta h2{font-size:50px;font-weight:600;letter-spacing:-0.03em;line-height:1.05;margin:0}
.cta-row{display:flex;gap:14px;justify-content:center;margin-top:32px;flex-wrap:wrap}

/* ── FOOTER (dark) ── */
.foot{background:var(--ink-2);color:var(--foot-body);padding:56px 56px 40px}
.foot-in{max-width:1360px;margin:0 auto}
.foot-top{display:flex;justify-content:space-between;gap:40px;padding-bottom:44px;border-bottom:1px solid rgba(247,245,240,0.12);flex-wrap:wrap}
.foot-brand{max-width:280px}
.foot-logo{height:24px;width:auto;display:block}
.foot-tag{font-size:13px;line-height:1.55;color:var(--foot-tag);margin-top:16px}
.foot-cols{display:flex;gap:72px;flex-wrap:wrap}
.foot-col h5{font-family:var(--mono);font-size:11px;letter-spacing:0.14em;color:var(--teal-light);margin:0 0 16px;font-weight:400}
.foot-col .links{display:flex;flex-direction:column;gap:11px;font-size:13.5px}
.foot-col .links a:hover{color:var(--teal-light)}
.foot-bot{display:flex;justify-content:space-between;padding-top:22px;font-size:12px;color:var(--foot-faint);gap:16px;flex-wrap:wrap}
.foot-bot a:hover{color:var(--foot-body)}

/* ── DOC pages (legal + placeholders) ── */
.doc-hero{background:var(--ink);color:var(--paper);padding:76px 40px 64px;text-align:center}
.doc-hero .eyebrow{margin-bottom:18px}
.doc-hero h1{font-size:52px;font-weight:600;letter-spacing:-0.032em;line-height:1.02;margin:0}
.doc-hero p{font-size:19px;color:var(--muted-dark);max-width:620px;margin:18px auto 0;line-height:1.5}
.doc{max-width:760px;margin:0 auto;padding:64px 40px 88px}
.doc h2{font-size:26px;font-weight:600;letter-spacing:-0.02em;margin:44px 0 14px}
.doc h2:first-child{margin-top:0}
.doc h3{font-size:18px;font-weight:600;margin:28px 0 10px}
.doc p,.doc li{font-size:16px;color:var(--muted);line-height:1.65}
.doc ul{padding-left:22px;margin:12px 0}
.doc li{margin:6px 0}
.doc a{color:var(--teal);font-weight:500}
.doc a:hover{text-decoration:underline}
.doc .lede{font-size:19px;color:var(--ink-soft);line-height:1.6;margin-bottom:8px}
.doc .updated{font-family:var(--mono);font-size:12px;letter-spacing:0.08em;color:var(--faint);text-transform:uppercase;margin-bottom:8px}
.doc .card-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin:28px 0}
.doc .fcard{background:var(--card);border:1px solid var(--line-light);border-radius:14px;padding:22px}
.doc .fcard i{font-size:30px;color:var(--teal)}
.doc .fcard h3{margin:14px 0 6px}
.doc .fcard p{font-size:14.5px;margin:0}
.doc .note{background:var(--card);border:1px solid var(--line-light);border-radius:14px;padding:20px 22px;margin:24px 0;font-size:14.5px;color:var(--muted)}

/* ── RESPONSIVE ── */
@media (max-width:1023px){
  .hero h1{font-size:56px}
  .suite h2,.cta h2{font-size:38px}
  .band h2{font-size:38px}
  .suite-grid{grid-template-columns:repeat(2,1fr);gap:44px 20px}
  .nav-in{padding:0 22px}
  .foot-top{flex-direction:column;gap:34px}
}
@media (max-width:640px){
  .nav-mid,.nav-right .login{display:none}
  .nav-toggle{display:block}
  .nav-mid.open{display:flex;position:absolute;top:58px;left:0;right:0;background:var(--ink);flex-direction:column;gap:0;padding:8px 0;border-bottom:1px solid var(--line-dark)}
  .nav-mid.open a{padding:12px 22px;width:100%}
  .hero{padding:64px 22px 60px}
  .hero h1{font-size:40px}
  .hero .sub{font-size:19px}
  .suite{padding:52px 22px 60px}
  .suite-grid{grid-template-columns:1fr;gap:40px}
  .suite h2,.cta h2{font-size:32px}
  .shot{padding:48px 18px}
  .band{padding:64px 24px}.band h2{font-size:30px}
  .cta{padding:60px 24px 68px}
  .foot{padding:44px 24px 34px}.foot-cols{gap:36px}
  .doc-hero{padding:56px 24px 48px}.doc-hero h1{font-size:36px}
  .doc{padding:44px 24px 64px}
  .doc .card-grid{grid-template-columns:1fr}
}

/* ── custom dropdowns (uiselect.js) — styled panel, no OS popup ── */
select{-webkit-appearance:none;-moz-appearance:none;appearance:none;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'><path d='M1 1l4 4 4-4' fill='none' stroke='%238A8778' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/></svg>");
  background-repeat:no-repeat;background-position:right 13px center;padding-right:34px !important;cursor:pointer}
select::-ms-expand{display:none}
select.uisel-open{border-color:var(--teal)}
.uisel-panel{position:fixed;z-index:9999;background:var(--card);border:1px solid rgba(22,23,26,0.14);border-radius:12px;box-shadow:0 18px 46px rgba(13,15,20,.22);padding:6px;overflow-y:auto;min-width:150px}
.uisel-opt{font-family:var(--ui);font-size:14px;font-weight:500;color:var(--ink);padding:10px 13px;border-radius:8px;cursor:pointer;white-space:nowrap;line-height:1.2}
.uisel-opt:hover{background:var(--paper)}
.uisel-opt.on{background:#e6f4f1;color:var(--teal)}
.uisel-opt.dis{color:var(--faint);cursor:default}
.uisel-opt.dis:hover{background:none}

/* ── HELP CENTER ── */
.help-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:1000px;margin:0 auto;padding:56px 40px 24px}
.help-card{background:var(--card);border:1px solid var(--line-light);border-radius:16px;padding:24px;display:block;transition:border-color .15s,transform .15s}
.help-card:hover{border-color:var(--teal);transform:translateY(-2px)}
.help-card i{font-size:34px;color:var(--teal)}
.help-card h3{font-size:18px;font-weight:600;letter-spacing:-0.01em;margin:14px 0 6px;color:var(--ink)}
.help-card p{font-size:14px;color:var(--muted);line-height:1.5;margin:0}
.help-back{display:inline-block;font-size:13.5px;color:var(--teal);font-weight:500;margin-bottom:8px}
.help-back:hover{text-decoration:underline}
.steps{counter-reset:s;list-style:none;padding:0;margin:18px 0}
.steps li{counter-increment:s;position:relative;padding-left:44px;margin:0 0 20px;font-size:16px;color:var(--muted);line-height:1.6}
.steps li::before{content:counter(s);position:absolute;left:0;top:-1px;width:28px;height:28px;border-radius:50%;background:#e6f4f1;color:var(--teal);font-size:13px;font-weight:600;display:flex;align-items:center;justify-content:center}
.steps li b{color:var(--ink)}
@media(max-width:1023px){.help-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.help-grid{grid-template-columns:1fr;padding:40px 24px 16px}}

/* ---- Help Center figures (screenshots, 2026-07-21) ------------------------------
   Shots are 2x retina PNGs of the real app running its built-in "Aurelia — First
   Light" demo production (fictional cast/crew — never a customer's data). */
.hshot{margin:26px 0 30px}
.hshot img{display:block;width:100%;height:auto;border:1px solid var(--line-light);border-radius:12px;background:var(--card)}
.hshot figcaption{font-size:13.5px;color:var(--faint);line-height:1.55;margin-top:10px;padding-left:2px}
.hshot figcaption b{color:var(--muted);font-weight:600}
.hshot.tight img{border-radius:10px}
.hshot.plain img{border:none;border-radius:0;background:none}
.hshot-row{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:26px 0 30px;align-items:start}
.hshot-row .hshot{margin:0}
.doc-hero .hshot{max-width:960px;margin:34px auto 0}
.doc-hero .hshot figcaption{color:var(--muted-dark)}
@media(max-width:760px){.hshot-row{grid-template-columns:1fr}}
