/* Kestrel Digital — dark screening-room look, hand-written */

:root{
  --flash:30;                       /* install-time hue, rewritten per domain */
  --bg:hsl(var(--flash) 22% 7%);
  --bg2:hsl(var(--flash) 20% 10%);
  --card:hsl(var(--flash) 20% 13%);
  --line:hsl(var(--flash) 16% 22%);
  --txt:hsl(var(--flash) 18% 88%);
  --dim:hsl(var(--flash) 12% 62%);
  --hot:hsl(var(--flash) 78% 58%);
  --sans:system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --mono:ui-monospace,'Cascadia Mono',Menlo,Consolas,monospace;
}

*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--txt);font-family:var(--sans);line-height:1.6;font-size:16px}
h1,h2,h3{line-height:1.15;margin:0 0 .5em}
h1{font-size:clamp(1.9rem,4.5vw,3rem);letter-spacing:-.01em}
h2{font-size:1.3rem}
p{margin:0 0 1em}
a{color:var(--hot)}
.wrap{max-width:1060px;margin:0 auto;padding:36px 22px 64px}
.intro{color:var(--dim);max-width:64ch}

/* ---- top bar ---- */
.bar{display:flex;align-items:center;gap:26px;padding:14px 26px;border-bottom:1px solid var(--line);position:sticky;top:0;background:hsl(var(--flash) 22% 7% / .94);backdrop-filter:blur(6px);z-index:10}
.brand{font-weight:800;font-size:1.12rem;letter-spacing:.02em;color:var(--txt);text-decoration:none}
.brand::before{content:"▮";color:var(--hot);margin-right:8px}
.bar-nav{display:flex;gap:20px}
.bar-nav a{color:var(--dim);text-decoration:none;font-size:.95rem}
.bar-nav a[aria-current]{color:var(--txt);font-weight:600}
.signin{margin-left:auto;background:var(--hot);border:none;color:hsl(var(--flash) 30% 8%);font-weight:700;padding:9px 18px;border-radius:8px;cursor:pointer;font-size:.92rem}
.signin:hover{filter:brightness(1.08)}

/* ---- feature ---- */
.feature{border-bottom:1px solid var(--line);background:
  radial-gradient(1100px 420px at 18% -60%, hsl(var(--flash) 60% 24%), transparent),
  var(--bg2)}
.feature-in{max-width:1060px;margin:0 auto;padding:74px 22px 58px}
.tag{font-family:var(--mono);font-size:.8rem;color:var(--hot);letter-spacing:.14em;text-transform:uppercase}
.feature-sub{color:var(--dim);max-width:60ch;font-size:1.05rem}
.feature-row{display:flex;gap:12px;margin-top:22px;flex-wrap:wrap}

/* ---- buttons ---- */
.cta{background:var(--hot);color:hsl(var(--flash) 30% 8%);border:none;border-radius:9px;padding:12px 22px;font-weight:700;font-size:.95rem;cursor:pointer;text-decoration:none;display:inline-block}
.cta:hover{filter:brightness(1.08)}
.cta.ghost{background:transparent;color:var(--txt);border:1px solid var(--line)}
.cta.ghost:hover{border-color:var(--hot);color:var(--hot);filter:none}
.cta.wide{width:100%}

/* ---- shelves & grid ---- */
.row-head{display:flex;align-items:baseline;justify-content:space-between;margin:34px 0 14px}
.all{font-size:.9rem;text-decoration:none}
.shelf{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(190px,1fr);gap:14px;overflow-x:auto;padding-bottom:8px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px}
.tile{background:var(--card);border:1px solid var(--line);border-radius:10px;overflow:hidden;text-decoration:none;color:var(--txt);display:block}
.tile:hover{border-color:var(--hot)}
.tile svg{display:block;width:100%;height:auto}
.tile .t-body{padding:10px 12px 12px}
.tile .t-name{font-weight:600;font-size:.94rem;margin:0 0 2px}
.tile .t-meta{font-size:.8rem;color:var(--dim);margin:0}
.empty{color:var(--dim);font-style:italic;padding:22px 0}

/* ---- collections ---- */
.colls{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.coll{background:var(--card);border:1px solid var(--line);border-radius:10px;overflow:hidden;text-decoration:none;color:var(--txt)}
.coll svg{display:block;width:100%;height:auto}
.coll span{display:block;padding:12px 14px}
.coll strong{display:block;font-size:.98rem}
.coll em{font-style:normal;font-size:.82rem;color:var(--dim)}

/* ---- chips ---- */
.chips{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0 22px}
.chip{background:transparent;border:1px solid var(--line);color:var(--dim);border-radius:999px;padding:7px 15px;font-size:.88rem;cursor:pointer}
.chip.on{background:var(--hot);border-color:var(--hot);color:hsl(var(--flash) 30% 8%);font-weight:700}

/* ---- title page ---- */
.crumbs a{color:var(--dim);text-decoration:none;font-size:.9rem}
.titlepage{display:grid;grid-template-columns:280px 1fr;gap:28px;margin-top:18px}
.poster{border-radius:10px;overflow:hidden;border:1px solid var(--line)}
.poster svg{display:block;width:100%;height:auto}
.meta{color:var(--dim);font-size:.92rem}
.syn{max-width:62ch}
.watchrow{display:flex;gap:12px;margin:20px 0 10px;flex-wrap:wrap}
.dl-note{font-size:.85rem;color:var(--dim)}

/* ---- plans ---- */
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:26px 0 10px}
.plan{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:22px;position:relative}
.plan.best{border-color:var(--hot)}
.ribbon{position:absolute;top:-11px;left:18px;background:var(--hot);color:hsl(var(--flash) 30% 8%);font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:3px 10px;border-radius:999px;margin:0}
.price strong{font-size:1.9rem}
.price{color:var(--dim)}
.plan ul{list-style:none;padding:0;margin:0 0 18px}
.plan li{padding:7px 0;border-bottom:1px dotted var(--line);font-size:.93rem;color:var(--dim)}

/* ---- faq / form ---- */
.faq{margin-top:44px}
.faq details{border-bottom:1px solid var(--line);padding:12px 2px}
.faq summary{cursor:pointer;font-weight:600}
.faq p{color:var(--dim);margin:10px 0 4px}
.form-block{margin-top:48px;max-width:640px}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:14px}
form label{display:block;font-size:.9rem;color:var(--dim);font-weight:600;margin-bottom:14px}
form input,form select,form textarea{display:block;width:100%;margin-top:6px;padding:11px 12px;border-radius:9px;border:1px solid var(--line);background:var(--bg2);color:var(--txt);font:inherit}
form input:focus,form textarea:focus{outline:2px solid var(--hot)}
.form-done{color:var(--hot);font-weight:600}
.mail{word-break:break-all}

/* ---- sign-in gate ---- */
.gate{border:1px solid var(--line);background:var(--bg2);color:var(--txt);border-radius:14px;padding:26px;max-width:400px;width:calc(100% - 40px)}
.gate::backdrop{background:hsl(var(--flash) 22% 4% / .7)}
.gate h3{margin-bottom:14px}
.gate label{display:block;font-size:.9rem;color:var(--dim);margin-bottom:12px}
.gate input{display:block;width:100%;margin-top:5px;padding:10px 12px;border-radius:9px;border:1px solid var(--line);background:var(--bg);color:var(--txt);font:inherit}
.gate-x{position:absolute;top:8px;right:12px;background:none;border:none;color:var(--dim);font-size:1.4rem;cursor:pointer}
.gate-err{color:#ff8484;font-size:.9rem}
.gate-small{font-size:.85rem;color:var(--dim)}

/* ---- footer ---- */
.foot{border-top:1px solid var(--line);margin-top:40px}
.foot-in{max-width:1060px;margin:0 auto;padding:30px 22px}
.fbrand{font-weight:800;margin:0 0 8px}
.fnav{display:flex;gap:18px;flex-wrap:wrap;margin-bottom:10px}
.fnav a{color:var(--dim);text-decoration:none;font-size:.9rem}
.fnote{color:var(--dim);font-size:.85rem;margin:0}

/* ---- hero variant B: tonight schedule ---- */
.feature2{background:var(--bg2)}
.sched-wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:34px;align-items:center}
.sched{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:20px 22px}
.sched-day{font-family:var(--mono);font-size:.8rem;color:var(--hot);letter-spacing:.14em;text-transform:uppercase;margin:0 0 6px}
.sched-list{list-style:none;margin:0;padding:0}
.sched-list li{display:grid;grid-template-columns:52px 1fr;gap:2px 12px;padding:11px 0;border-bottom:1px dotted var(--line)}
.sched-list li:last-child{border-bottom:none}
.sched-time{font-family:var(--mono);font-size:.86rem;color:var(--dim);padding-top:2px}
.sched-list a{font-weight:600;text-decoration:none}
.sched-list a:hover{color:var(--hot)}
.sched-list em{grid-column:2;font-style:normal;font-size:.8rem;color:var(--dim)}
.sched-note{font-size:.8rem;color:var(--dim);margin:10px 0 0}

/* ---- new-this-month variant B: static list ---- */
.monthlist{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.monthlist li{padding:13px 2px;border-bottom:1px solid var(--line);display:grid;gap:2px}
.monthlist a{font-weight:700;text-decoration:none;font-size:1.02rem}
.monthlist a:hover{color:var(--hot)}
.monthlist span{color:var(--dim);font-size:.9rem;max-width:72ch}

/* ---- press strip (optional) ---- */
.press{margin:44px 0 0;border:1px solid var(--line);border-radius:14px;padding:24px 26px;background:var(--card)}
.press-q{font-size:1.15rem;font-style:italic;margin:0 0 6px;max-width:58ch}
.press-src{color:var(--dim);font-size:.88rem;margin:0 0 14px}
.press-row{display:flex;gap:10px 26px;flex-wrap:wrap;margin:0;border-top:1px dotted var(--line);padding-top:14px}
.press-row span{font-family:var(--mono);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--dim)}

/* ---- small screens ---- */
@media (max-width:820px){
  .colls{grid-template-columns:1fr}
  .plans{grid-template-columns:1fr}
  .titlepage{grid-template-columns:1fr}
  .bar{flex-wrap:wrap;gap:12px}
  .bar-nav{order:3;width:100%;gap:16px}
  .shelf{grid-auto-columns:70%}
  .sched-wrap{grid-template-columns:1fr}
}

/* d:28533692 */
.d28533692{letter-spacing:.01em}
