/* living.scarletbeast.com — public landing (2026-09-24 rebuild).
   Everything is scoped to main.lv so it never reaches the lifted sb-hd / sb-ft chrome.
   House tokens: scarlet #e10100 / #ff181a / #ff5a5e, black #050404, bone #ece6dc;
   Oswald + Cormorant Garamond from scarletbeast.com's google-fonts.css. */

/* scarletbeast.com's pages get a global border-box from Astra; the lifted footer
   (width:100% plus padding) overflows the viewport without it */
html{box-sizing:border-box}*,*::before,*::after{box-sizing:inherit}
html,body{margin:0;background:#050404;color:#ece6dc}
body.sb-x-body{-webkit-font-smoothing:antialiased;overflow-x:hidden}

.lv{--sc:#e10100;--scb:#ff181a;--scs:#ff5a5e;--bone:#ece6dc;--dim:#a39a90;--mute:#756c63;--blk:#050404;
  --panel:#0b0808;--panel2:#100b0b;--line:rgba(236,230,220,.1);--hot:rgba(255,24,26,.34);--ok:#3ddc84;--warn:#e8c04b;
  --cond:Oswald,'Helvetica Neue',Arial,sans-serif;--serif:'Cormorant Garamond',Georgia,serif;
  --mono:SFMono-Regular,ui-monospace,Menlo,Consolas,monospace;
  display:block;background:var(--blk);color:var(--bone);font-family:var(--serif);font-size:19px;line-height:1.55;
  padding-bottom:clamp(48px,8vw,96px)}
.lv *{box-sizing:border-box}
.lv a{color:var(--scs);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.lv a:hover{color:#fff}
.lv a:focus-visible,.lv button:focus-visible{outline:2px solid var(--scb);outline-offset:3px;border-radius:3px}
.lv p{margin:0 0 14px}
.lv-wrap{max-width:1180px;margin:0 auto;padding:0 clamp(16px,4vw,40px)}
.lv-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ---------- hero ---------- */
.lv-hero{position:relative;padding:clamp(52px,9vw,118px) 0 clamp(36px,5vw,64px);overflow:hidden;
  background:radial-gradient(1000px 520px at 14% -18%,rgba(225,1,0,.24),transparent 70%),
             radial-gradient(700px 420px at 100% 110%,rgba(255,90,94,.08),transparent 70%)}
.lv-hero .lv-wrap{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:clamp(28px,5vw,64px);align-items:end}
.lv-eye{margin:0 0 18px;font-family:var(--cond);font-size:12px;letter-spacing:.36em;text-transform:uppercase;color:var(--scs);
  display:block}
.lv-eye .lv-dot{display:inline-block;vertical-align:middle;margin:-3px 10px 0 0}
.lv-dot{width:8px;height:8px;border-radius:50%;background:var(--ok);box-shadow:0 0 9px var(--ok);flex:0 0 auto;animation:lv-pulse 2.4s ease-in-out infinite}
.lv-dot.warn{background:var(--warn);box-shadow:0 0 9px var(--warn)}
.lv-dot.off{background:var(--mute);box-shadow:none;animation:none}
@keyframes lv-pulse{0%,100%{opacity:1}50%{opacity:.35}}
.lv h1{margin:0 0 22px;font-family:var(--cond);font-weight:600;font-size:clamp(40px,6.6vw,88px);line-height:.95;
  letter-spacing:.005em;text-transform:uppercase;color:var(--bone)}
.lv h1 em{font-style:normal;color:var(--sc);text-shadow:0 0 42px rgba(225,1,0,.35)}
.lv-lede{max-width:700px;font-size:clamp(20px,2.3vw,25px);line-height:1.45;color:#dcd3c7}
.lv-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.lv .lv-btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--cond);font-size:14px;letter-spacing:.16em;text-transform:uppercase;
  text-decoration:none;padding:13px 22px;border-radius:999px;border:1px solid var(--sc);background:var(--sc);color:#fff;transition:background .2s,border-color .2s,color .2s}
.lv .lv-btn:hover{background:var(--scb);border-color:var(--scb);color:#fff}
.lv .lv-btn.alt{background:transparent;color:var(--bone);border-color:rgba(236,230,220,.3)}
.lv .lv-btn.alt:hover{border-color:var(--scs);color:#fff}

.lv-glance{border:1px solid var(--line);border-top:2px solid var(--sc);background:linear-gradient(180deg,rgba(16,11,11,.92),rgba(8,5,5,.92));
  border-radius:4px;padding:22px 24px}
.lv-glance h2{margin:0 0 14px;font-family:var(--cond);font-weight:500;font-size:13px;letter-spacing:.3em;text-transform:uppercase;color:var(--dim)}
.lv-glance dl{margin:0;display:grid;gap:12px}
.lv-glance div{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:baseline;padding-bottom:12px;border-bottom:1px solid var(--line)}
.lv-glance div:last-child{border-bottom:0;padding-bottom:0}
.lv-glance dt{font-family:var(--cond);font-size:26px;font-weight:600;color:var(--scs);line-height:1;min-width:2.2ch}
.lv-glance dd{margin:0;font-size:17px;line-height:1.35;color:#d7cec2}

/* ---------- sections ---------- */
.lv-sec{padding:clamp(44px,7vw,84px) 0 0}
.lv-head{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px 18px;align-items:baseline;margin-bottom:26px;
  padding-bottom:16px;border-bottom:1px solid var(--line)}
.lv-num{font-family:var(--mono);font-size:13px;color:var(--sc);letter-spacing:.1em}
.lv h2.lv-h2{margin:0;font-family:var(--cond);font-weight:500;font-size:clamp(26px,3.6vw,42px);line-height:1.05;letter-spacing:.04em;
  text-transform:uppercase;color:var(--bone)}
.lv-head p{grid-column:2;margin:6px 0 0;max-width:760px;color:var(--dim);font-size:18px}
.lv h3{margin:0 0 8px;font-family:var(--cond);font-weight:500;font-size:20px;letter-spacing:.06em;text-transform:uppercase;color:var(--bone);line-height:1.2}
.lv-tag{display:inline-block;margin:0 0 10px;font-family:var(--cond);font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--scs)}
.lv-tag.soon{color:var(--warn)}
.lv h3.lv-sub{margin:52px 0 18px;font-family:var(--cond);font-weight:500;font-size:14px;letter-spacing:.3em;text-transform:uppercase;color:var(--dim);
  display:flex;align-items:center;gap:14px}
.lv h3.lv-sub::after{content:"";flex:1;height:1px;background:var(--line)}

/* ---------- cards ---------- */
.lv-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,262px),1fr));gap:14px}
.lv-grid.two{grid-template-columns:repeat(auto-fill,minmax(min(100%,420px),1fr))}
.lv-card{position:relative;display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--line);border-radius:4px;
  padding:20px 22px 18px;transition:border-color .2s,background .2s}
.lv-card:hover{border-color:var(--hot);background:var(--panel2)}
.lv-card p{font-size:17px;line-height:1.5;color:#cfc6ba;margin:0 0 12px}
.lv-card .lv-go{margin-top:auto;font-family:var(--cond);font-size:13px;letter-spacing:.16em;text-transform:uppercase}
.lv-card .lv-go a{text-decoration:none}
.lv-card .lv-go a::after{content:" \2192"}
.lv-card .lv-go span{color:var(--mute)}
.lv-card.feature{border-left:2px solid var(--sc)}

/* ---------- live panels ---------- */
.lv-live{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:16px}
.lv-panel{background:var(--panel);border:1px solid var(--line);border-top:2px solid var(--sc);border-radius:4px;padding:22px 24px;min-width:0}
.lv-panel-hd{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:6px}
.lv-panel-hd h3{margin:0}
.lv-state{font-family:var(--mono);font-size:12px;color:var(--dim);display:inline-flex;align-items:center;gap:8px}
.lv-panel > p.lv-note{font-size:16px;color:var(--dim);margin:0 0 16px}
.lv-feed{list-style:none;margin:0;padding:0;display:grid;gap:0}
.lv-feed li{display:grid;grid-template-columns:4.2em minmax(0,1fr);gap:4px 14px;padding:13px 0;border-top:1px solid var(--line)}
.lv-feed .d{font-family:var(--mono);font-size:12px;color:var(--scs);padding-top:4px;white-space:nowrap}
.lv-feed .q{font-size:17px;line-height:1.4;color:#e4dcd0;overflow-wrap:anywhere}
.lv-feed .q::before{content:"\201C"}.lv-feed .q::after{content:"\201D"}
.lv-feed .r{grid-column:2;font-family:var(--mono);font-size:12.5px;line-height:1.5;color:var(--dim);overflow-wrap:anywhere}
.lv-feed .r::before{content:"\2192  "}
.lv-empty{font-size:16px;color:var(--dim);padding:12px 0;border-top:1px solid var(--line)}

.lv-meters{display:grid;gap:12px;margin:6px 0 16px}
.lv-meter{display:grid;grid-template-columns:7.2em minmax(0,1fr) 3.4em;gap:12px;align-items:center;font-family:var(--mono);font-size:12.5px;color:var(--dim)}
.lv-bar{position:relative;height:10px;border-radius:5px;background:rgba(236,230,220,.08);overflow:hidden}
.lv-bar i{position:absolute;left:0;top:0;bottom:0;width:0;background:linear-gradient(90deg,var(--sc),var(--scs));border-radius:5px;transition:width .6s ease}
.lv-bar b{position:absolute;top:-2px;bottom:-2px;width:2px;background:var(--bone);opacity:.7}
.lv-meter .v{text-align:right;color:var(--bone)}
.lv-stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,130px),1fr));gap:10px;margin:0 0 14px}
.lv-stats div{background:rgba(236,230,220,.03);border:1px solid var(--line);border-radius:3px;padding:10px 12px}
.lv-stats dt{font-family:var(--cond);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--dim)}
.lv-stats dd{margin:4px 0 0;font-family:var(--cond);font-size:22px;color:var(--bone);line-height:1.1}
.lv-small{font-size:15.5px;color:var(--dim);line-height:1.45}
.lv-small + .lv-small{margin-top:8px}
.lv-poll{margin-top:14px;font-size:16px;color:var(--mute)}

/* ---------- studio pipeline ---------- */
.lv-flow{list-style:none;margin:0 0 22px;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,128px),1fr));gap:8px;counter-reset:f}
.lv-flow li{counter-increment:f;position:relative;background:var(--panel);border:1px solid var(--line);border-radius:3px;padding:12px 14px}
.lv-flow li::before{content:counter(f,decimal-leading-zero);display:block;font-family:var(--mono);font-size:11px;color:var(--sc);margin-bottom:4px}
.lv-flow b{display:block;font-family:var(--cond);font-weight:500;font-size:15px;letter-spacing:.1em;text-transform:uppercase;color:var(--bone)}
.lv-flow span{display:block;font-size:15px;line-height:1.35;color:var(--dim);margin-top:2px}
.lv-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:18px 40px}
.lv-cols p{color:#d7cec2}

/* ---------- principles ---------- */
.lv-rules{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,330px),1fr));gap:0 40px;counter-reset:r}
.lv-rules li{counter-increment:r;display:grid;grid-template-columns:2.4em minmax(0,1fr);gap:12px;padding:16px 0;border-top:1px solid var(--line);font-size:18px;color:#d7cec2}
.lv-rules li::before{content:counter(r,upper-roman);font-family:var(--cond);color:var(--sc);font-size:18px;letter-spacing:.06em}
.lv-rules strong{color:var(--bone);font-weight:600}

/* ---------- elsewhere ---------- */
.lv-links{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));gap:10px}
.lv .lv-links a{display:block;text-decoration:none;background:var(--panel);border:1px solid var(--line);border-radius:4px;padding:16px 18px;color:var(--bone);
  transition:border-color .2s,background .2s}
.lv .lv-links a:hover{border-color:var(--sc);background:var(--panel2)}
.lv-links b{display:block;font-family:var(--cond);font-weight:500;font-size:17px;letter-spacing:.08em;text-transform:uppercase}
.lv-links b::after{content:" \2197";color:var(--scs);font-weight:400}
.lv-links span{display:block;font-size:15.5px;color:var(--dim);margin-top:3px;line-height:1.35}
.lv-links small{display:block;font-family:var(--mono);font-size:11.5px;color:var(--mute);margin-top:8px;overflow-wrap:anywhere}

.lv-about{margin-top:clamp(44px,6vw,72px);padding:22px 24px;border:1px dashed rgba(236,230,220,.18);border-radius:4px;font-size:17px;color:var(--dim)}
.lv-about h2{margin:0 0 10px;font-family:var(--cond);font-weight:500;font-size:14px;letter-spacing:.3em;text-transform:uppercase;color:var(--bone)}
.lv-about p:last-child{margin-bottom:0}

/* ---------- responsive / motion ---------- */
@media (max-width:900px){
  .lv-hero .lv-wrap{grid-template-columns:minmax(0,1fr);align-items:start}
  .lv-live{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:560px){
  .lv{font-size:18px}
  .lv-head{grid-template-columns:minmax(0,1fr)}
  .lv-head p{grid-column:1}
  .lv-meter{grid-template-columns:6.4em minmax(0,1fr) 3em}
  .lv-feed li{grid-template-columns:minmax(0,1fr)}
  .lv-feed .r{grid-column:1}
  .lv-panel,.lv-glance{padding:18px 16px}
}
@media (prefers-reduced-motion:reduce){
  .lv-dot{animation:none}
  .lv-bar i{transition:none}
  .lv *{scroll-behavior:auto}
}
