/* Beef Casino — beef470.buzz — сапфирово-синий салон холодной сухой выдержки, криокамера премиум-среза под инеем, cobalt/sapphire jewel-monochrome (фасет «официальный сайт / зеркало / вход»; холодная сторона — отстроен от петролёво-синего beef-casino-krl.buzz, индиго yhn и деним-стального rtq) */
:root{
  --ink:#070c16; --panel:#0f1524; --panel2:#141d31; --line:#25314e;
  --sapph:#2a67ef; --glow:#5f97ff; --deep:#0b1734; --edge:#31456e;
  --cobalt:#1f4fd0; --bone:#e4ebf7; --mid:#8b98b4;
  --sheen:linear-gradient(132deg,#5f97ff 0%,#2a67ef 52%,#0b2a86 100%);
  --pane:linear-gradient(158deg,#111a33 0%,#080d1a 100%);
  --rad:20px; --rad2:13px;
  --hf:"Playfair",Georgia,serif; --bf:"Ysabeau",system-ui,Arial,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  background:
    radial-gradient(1220px 600px at 82% -12%, rgba(42,103,239,.2), transparent 60%),
    radial-gradient(760px 460px at 0% 6%, rgba(95,151,255,.07), transparent 56%),
    var(--ink);
  color:var(--bone); font-family:var(--bf); font-size:18px; line-height:1.72;
  -webkit-font-smoothing:antialiased;
}
.sph-wrap{max-width:1160px;margin:0 auto;padding:0 20px}
h1,h2,h3,h4{font-family:var(--hf);font-weight:600;line-height:1.22;color:#eff4ff;letter-spacing:.2px}
h1{font-size:clamp(27px,5vw,43px)}
h2{font-size:clamp(22px,3.4vw,31px)}
h3{font-size:19px;color:var(--glow)}
a{color:var(--glow);text-decoration:none}
p{margin:.5em 0}

/* header */
.sph-head{position:sticky;top:0;z-index:30;backdrop-filter:blur(11px);
  background:rgba(7,12,22,.88);border-bottom:1px solid var(--line)}
.sph-head .sph-wrap{display:flex;align-items:center;justify-content:space-between;height:70px}
.sph-logo{display:flex;align-items:center;gap:11px;font-family:var(--hf);font-weight:600;font-size:23px;color:#eff4ff}
.sph-logo svg{width:35px;height:35px;flex:0 0 auto}
.sph-logo .sph-mark{color:var(--sapph)}
.sph-nav{display:flex;gap:24px;font-size:15px}
.sph-nav a{color:var(--mid)}
.sph-nav a:hover{color:var(--glow)}
@media(max-width:840px){.sph-nav{display:none}}

/* buttons */
.sph-btn,.sph-btn2{display:inline-block;font-family:var(--bf);font-weight:700;
  font-size:15px;padding:13px 28px;border-radius:var(--rad2);cursor:pointer;
  transition:transform .15s,box-shadow .15s;border:1px solid transparent}
.sph-btn{background:var(--sheen);color:#061127;box-shadow:0 8px 28px rgba(42,103,239,.3)}
.sph-btn:hover{transform:translateY(-2px);box-shadow:0 13px 34px rgba(42,103,239,.46)}
.sph-btn2{background:transparent;color:var(--glow);border-color:var(--edge)}
.sph-btn2:hover{border-color:var(--sapph);background:rgba(42,103,239,.12)}

/* hero */
.sph-hero{padding:58px 0 32px;position:relative}
.sph-hero .sph-ov{color:var(--sapph);font-size:13px;letter-spacing:3px;text-transform:uppercase;margin-bottom:14px}
.sph-hero p.lead{color:var(--bone);max-width:66ch;font-size:18px;margin:18px 0 26px}
.sph-cta{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:32px}
.sph-quad{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
@media(max-width:880px){.sph-quad{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.sph-quad{grid-template-columns:1fr}}
.sph-xcard{background:var(--pane);border:1px solid var(--line);border-radius:var(--rad);
  padding:19px 17px;position:relative;overflow:hidden}
.sph-xcard::before{content:"";position:absolute;inset:0 0 auto 0;height:3px;width:100%;
  background:var(--sheen);opacity:.95}
.sph-xcard .t{font-size:13px;color:var(--mid);text-transform:uppercase;letter-spacing:1px}
.sph-xcard .v{font-family:var(--hf);font-size:18px;color:#eff4ff;margin:8px 0}
.sph-xcard a{font-size:14px;color:var(--glow)}
.sph-xcard a:hover{text-decoration:underline}

/* aggregate strip */
.sph-agg{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--line);
  border:1px solid var(--line);border-radius:var(--rad);overflow:hidden;margin:8px 0 4px}
.sph-agg div{background:var(--deep);padding:20px 14px;text-align:center}
.sph-agg .n{font-family:var(--hf);font-weight:600;font-size:clamp(19px,3vw,27px);color:var(--glow)}
.sph-agg .c{font-size:12.5px;color:var(--mid);margin-top:4px;text-transform:uppercase;letter-spacing:.6px}
@media(max-width:760px){.sph-agg{grid-template-columns:repeat(2,1fr)}.sph-agg div:last-child{grid-column:1/-1}}

/* sections */
.sph-sec{padding:44px 0;border-top:1px solid var(--line)}
.sph-ov{font-size:12.5px;letter-spacing:2.6px;text-transform:uppercase;color:var(--sapph)}
.sph-sec h2{margin:10px 0 6px}
.sph-sec .sub{color:var(--mid);max-width:75ch;margin-bottom:22px}

/* grids */
.sph-grid{display:grid;gap:16px}
.g3{grid-template-columns:repeat(3,1fr)}
.g2{grid-template-columns:repeat(2,1fr)}
.g4{grid-template-columns:repeat(4,1fr)}
@media(max-width:900px){.g3,.g4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.g2,.g3,.g4{grid-template-columns:1fr}}
.sph-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--rad);padding:22px}
.sph-card h3{margin-bottom:7px}
.sph-card p{font-size:15.5px;color:var(--bone)}

/* access rail */
.sph-rail{background:var(--pane);border:1px solid var(--line);border-radius:var(--rad);padding:6px 0}
.sph-rail .row{display:flex;justify-content:space-between;gap:14px;padding:16px 22px;border-top:1px solid var(--line);flex-wrap:wrap}
.sph-rail .row:first-child{border-top:0}
.sph-rail .dom{font-family:var(--hf);color:#eff4ff}
.sph-rail .st{font-size:13.5px;color:var(--glow)}
.sph-rail .st.dim{color:var(--mid)}

/* welcome */
.sph-depo{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
@media(max-width:760px){.sph-depo{grid-template-columns:1fr}}
.sph-depo .d{background:var(--panel);border:1px solid var(--line);border-radius:var(--rad);padding:22px;position:relative;overflow:hidden}
.sph-depo .d::after{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--sheen)}
.sph-depo .d .step{font-size:12.5px;letter-spacing:1px;color:var(--mid);text-transform:uppercase}
.sph-depo .d .big{font-family:var(--hf);font-weight:600;font-size:26px;color:var(--glow);margin:8px 0}
.sph-depo .d .fs{color:var(--bone);font-size:14.5px}

/* steps */
.sph-steps{counter-reset:s;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
@media(max-width:760px){.sph-steps{grid-template-columns:1fr}}
.sph-steps .s{background:var(--panel2);border:1px solid var(--line);border-radius:var(--rad);padding:24px 21px;position:relative}
.sph-steps .s::before{counter-increment:s;content:"0" counter(s);font-family:var(--hf);font-weight:600;
  font-size:34px;color:var(--sapph);display:block;margin-bottom:8px;opacity:.85}

/* catalog */
.sph-slot{background:var(--panel);border:1px solid var(--line);border-radius:var(--rad2);padding:16px}
.sph-slot .nm{font-family:var(--hf);font-size:16px;color:#eff4ff}
.sph-slot .pr{font-size:13px;color:var(--mid)}
.sph-slot .rt{font-size:12.5px;color:var(--glow);margin-top:8px;display:inline-block;
  border:1px solid var(--edge);border-radius:30px;padding:2px 11px}

/* VIP ladder */
.sph-vip{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
@media(max-width:900px){.sph-vip{grid-template-columns:repeat(3,1fr)}}
@media(max-width:520px){.sph-vip{grid-template-columns:repeat(2,1fr)}}
.sph-rung{background:linear-gradient(180deg,var(--panel2),var(--deep));border:1px solid var(--line);
  border-radius:var(--rad2);padding:18px 12px;text-align:center}
.sph-rung .lv{font-family:var(--hf);color:var(--glow);font-size:15px}
.sph-rung .cb{font-size:21px;color:#eff4ff;font-family:var(--hf);font-weight:600;margin-top:6px}
.sph-rung .cb span{font-size:12px;color:var(--mid)}

/* reviews */
.sph-rev .q{font-size:15.5px;color:var(--bone)}
.sph-rev .who{margin-top:12px;font-size:13.5px;color:var(--mid)}
.sph-rev .stars{color:var(--sapph);letter-spacing:2px;font-size:13px}

/* cashier table */
.sph-tbl{width:100%;border-collapse:collapse;font-size:15px;
  background:var(--panel);border:1px solid var(--line);border-radius:var(--rad);overflow:hidden}
.sph-tbl th,.sph-tbl td{padding:14px 16px;text-align:left;border-top:1px solid var(--line)}
.sph-tbl th{background:var(--deep);color:var(--glow);font-family:var(--hf);font-weight:600}
.sph-tbl td{color:var(--bone)}
.sph-tbl tr td:first-child{color:#eff4ff}
.sph-tbl-wrap{overflow-x:auto}

/* prefooter */
.sph-pre{background:var(--pane);border:1px solid var(--line);border-radius:var(--rad);
  padding:38px;text-align:center}
.sph-pre h2{margin-bottom:10px}
.sph-pre p{color:var(--mid);max-width:62ch;margin:0 auto 20px}

/* faq */
.sph-faq details{border:1px solid var(--line);border-radius:var(--rad2);margin-bottom:10px;background:var(--panel);overflow:hidden}
.sph-faq summary{padding:16px 20px;cursor:pointer;font-family:var(--hf);font-size:16.5px;color:var(--glow);list-style:none}
.sph-faq summary::-webkit-details-marker{display:none}
.sph-faq summary::after{content:"+";float:right;color:var(--sapph)}
.sph-faq details[open] summary::after{content:"\2013"}
.sph-faq .ans{padding:0 20px 17px;color:var(--bone);font-size:15.5px}

/* author */
.sph-author{background:var(--deep);border:1px solid var(--line);border-radius:var(--rad);padding:31px}
.sph-author .sph-ov{color:var(--sapph)}
.sph-author p{color:var(--mid);font-size:15px}
.sph-age{display:inline-block;border:1px solid var(--edge);border-radius:30px;padding:1px 9px;color:var(--glow);font-size:12px}

/* footer */
.sph-foot{border-top:1px solid var(--line);padding:38px 0 54px;color:var(--mid);font-size:14px}
.sph-foot .cols{display:grid;grid-template-columns:2fr 1fr 1fr;gap:24px;margin-bottom:24px}
@media(max-width:760px){.sph-foot .cols{grid-template-columns:1fr}}
.sph-foot a{color:var(--mid);display:block;margin:5px 0}
.sph-foot a:hover{color:var(--glow)}
.sph-foot .fine{font-size:12.5px;line-height:1.74;border-top:1px solid var(--line);padding-top:18px}

/* heading font override — keep Playfair on all heading levels, Ysabeau stays body */
h1,h2,h3,h4,
.sph-hero h1,.sph-sec h2,.sph-card h3,.sph-slot .nm,.sph-rail .dom,
.sph-xcard .v,.sph-depo .d .big,.sph-rung .lv,.sph-rung .cb,
.sph-agg .n,.sph-tbl th,.sph-faq summary,.sph-logo{
  font-family:'Playfair',Georgia,serif;
}
