:root{
  --ink:#08080A; --pit:#0E0F12; --panel:#121317;
  --edge:#23252B; --edge-soft:#191B20;
  --bone:#EAE6DD; --dim:#8C8A84; --dimmer:#5E5D59;
  --wax:#7E1416; --wax-lit:#B4272C;
  --display:'Manrope',system-ui,sans-serif;
  --body:'Golos Text',system-ui,sans-serif;
  --mono:'JetBrains Mono',ui-monospace,monospace;
  --pad:20px; --maxw:1080px; --textw:660px;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0; background:var(--ink); color:var(--bone);
  font-family:var(--body); font-size:17px; line-height:1.62;
  -webkit-font-smoothing:antialiased; overflow-x:hidden;
  -webkit-tap-highlight-color:transparent;
}
img{display:block;max-width:100%}
a{color:inherit}
h1,h2,h3{font-family:var(--display);font-weight:800;letter-spacing:-.03em;line-height:1.0;margin:0;text-transform:uppercase}
p{margin:0 0 1em}
p:last-child{margin-bottom:0}
strong{font-weight:600;color:#fff}

.wrap{max-width:var(--maxw);margin:0 auto;padding-left:var(--pad);padding-right:var(--pad)}
.narrow{max-width:var(--textw)}
.sec{padding:64px 0;position:relative}
.sec--tight{padding:44px 0}
.rule{height:1px;background:var(--edge-soft);border:0;margin:0}

.eyebrow{
  font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;
  color:var(--dim);margin:0 0 18px;display:flex;align-items:center;gap:10px;
}
.eyebrow::before{content:"";width:22px;height:1px;background:var(--wax-lit);flex:none}

h1{font-size:clamp(2.15rem,8.6vw,3.2rem)}
h2{font-size:clamp(1.7rem,6.6vw,2.9rem);line-height:1.02}
h3{font-size:1.05rem;letter-spacing:-.01em}

/* ---------- HERO ---------- */
.hero{position:relative;min-height:100vh;min-height:100svh;display:flex;align-items:flex-end;overflow:hidden}
.hero__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 22%;filter:grayscale(1) contrast(1.06)}
.hero__veil{position:absolute;inset:0;background:
  linear-gradient(180deg,rgba(8,8,10,.72) 0%,rgba(8,8,10,.28) 26%,rgba(8,8,10,.86) 66%,var(--ink) 100%)}
.hero__in{position:relative;width:100%;padding-top:110px;padding-bottom:36px}
.hero h1{margin-bottom:14px}
.hero h1 span{display:block;color:var(--wax-lit)}
.hero__sub{font-size:1.06rem;color:#CFCBC2;max-width:30ch;margin-bottom:26px}
.facts{display:flex;flex-wrap:wrap;gap:0 14px;font-family:var(--mono);font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--dim);margin-bottom:24px}
.facts span{display:flex;align-items:center;gap:14px}
.facts span+span::before{content:"";width:1px;height:11px;background:var(--edge)}

/* ---------- CTA ---------- */
.cta{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  background:var(--bone);color:#0A0A0C;text-decoration:none;
  font-family:var(--display);font-weight:800;text-transform:uppercase;letter-spacing:.01em;
  font-size:15px;padding:17px 26px;border:0;border-radius:2px;cursor:pointer;
  transition:transform .15s ease,background .15s ease;width:100%;text-align:center;
}
.cta:active{transform:translateY(1px)}
.cta--ghost{background:transparent;color:var(--bone);border:1px solid var(--edge)}
.cta__note{font-family:var(--mono);font-size:11px;letter-spacing:.1em;color:var(--dimmer);margin-top:10px;text-align:center}

.stickybar{
  position:fixed;left:0;right:0;bottom:0;z-index:60;
  padding:10px var(--pad) calc(10px + env(safe-area-inset-bottom));
  background:rgba(8,8,10,.92);backdrop-filter:blur(10px);
  border-top:1px solid var(--edge-soft);
  transform:none;transition:transform .25s ease;
}
/* Без JS панель показана сразу — прячет её только скрипт. */
.js .stickybar{transform:translateY(110%)}
.js .stickybar.on{transform:none}
.stickybar .cta{padding:15px 20px;font-size:14px}

/* ---------- ARCHETYPE MACHINE (signature) ---------- */
.machine{background:var(--pit)}
.machine__lead{color:#C6C2BA;margin-bottom:26px}
.machine__ui{position:relative}
.obs{position:absolute;width:1px;height:1px;opacity:0;margin:0;pointer-events:none}
.tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0}
.tab{
  flex:none;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;
  padding:10px 14px;background:transparent;color:var(--dim);
  border:1px solid var(--edge);border-radius:2px;cursor:pointer;white-space:nowrap;
  transition:color .15s,border-color .15s,background .15s;user-select:none;
}
#o0:checked~.tabs [for=o0],#o1:checked~.tabs [for=o1],#o2:checked~.tabs [for=o2],
#o3:checked~.tabs [for=o3],#o4:checked~.tabs [for=o4]{
  color:var(--bone);border-color:var(--wax-lit);background:rgba(180,39,44,.09)
}
#o0:focus-visible~.tabs [for=o0],#o1:focus-visible~.tabs [for=o1],#o2:focus-visible~.tabs [for=o2],
#o3:focus-visible~.tabs [for=o3],#o4:focus-visible~.tabs [for=o4]{
  outline:2px solid var(--wax-lit);outline-offset:3px
}
.stamp,.case{display:none}
#o0:checked~.mg .s0,#o1:checked~.mg .s1,#o2:checked~.mg .s2,
#o3:checked~.mg .s3,#o4:checked~.mg .s4{display:block;animation:stamp .32s cubic-bezier(.2,.9,.25,1)}
#o0:checked~.mg .case.s0,#o1:checked~.mg .case.s1,#o2:checked~.mg .case.s2,
#o3:checked~.mg .case.s3,#o4:checked~.mg .case.s4{animation:none}
.stage{position:relative;margin-top:16px;border:1px solid var(--edge-soft);border-radius:2px;overflow:hidden;background:#000}
.stage__img{width:100%;aspect-ratio:16/11;object-fit:cover;object-position:50% 45%;filter:grayscale(1) brightness(.62) contrast(1.12)}
.stamp{
  position:absolute;left:16px;bottom:16px;
  font-family:var(--mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase;
  color:#F0E9E4;background:rgba(126,20,22,.86);border:1px solid var(--wax-lit);
  padding:9px 13px;transform:rotate(-1.6deg);border-radius:1px;
}
@keyframes stamp{0%{opacity:0;transform:rotate(-7deg) scale(1.24)}60%{opacity:1}100%{opacity:1;transform:rotate(-1.6deg) scale(1)}}
.stage__cap{font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--dimmer);position:absolute;left:16px;top:14px}
.readout{padding:20px 18px 22px;border:1px solid var(--edge-soft);border-top:0;background:var(--panel)}
.readout__who{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--wax-lit);margin-bottom:8px}
.readout__txt{font-size:1.02rem;color:#DCD8D0;min-height:5.2em}
.machine__after{margin-top:26px;color:#C6C2BA}

/* ---------- THESIS ---------- */
.thesis{border-top:1px solid var(--edge-soft);border-bottom:1px solid var(--edge-soft);text-align:center}
.thesis p{font-family:var(--display);font-weight:800;text-transform:uppercase;letter-spacing:-.025em;
  font-size:clamp(1.45rem,5.6vw,2.4rem);line-height:1.06}
.thesis em{font-style:normal;color:var(--wax-lit);display:block;margin-top:.4em}

/* ---------- LIST BLOCKS ---------- */
.items{list-style:none;margin:28px 0 0;padding:0;border-top:1px solid var(--edge-soft)}
.items li{padding:18px 0 18px 44px;border-bottom:1px solid var(--edge-soft);position:relative;font-size:1.02rem;color:#DCD8D0}
.items li::before{content:attr(data-mark);position:absolute;left:0;top:19px;font-family:var(--mono);font-size:12px;color:var(--wax-lit);letter-spacing:.1em}
.figure{margin:0 0 4px;border:1px solid var(--edge-soft);overflow:hidden;border-radius:2px}
.figure img{width:100%;aspect-ratio:16/9;object-fit:cover;filter:grayscale(1) contrast(1.05)}

/* ---------- PROGRAM ---------- */
.day{border-bottom:1px solid var(--edge-soft)}
.day:first-of-type{border-top:1px solid var(--edge-soft)}
.day summary{
  list-style:none;cursor:pointer;padding:20px 34px 20px 52px;position:relative;
  font-family:var(--display);font-weight:800;text-transform:uppercase;letter-spacing:-.01em;font-size:1rem;line-height:1.2;
}
.day summary::-webkit-details-marker{display:none}
.day summary::before{content:attr(data-n);position:absolute;left:0;top:22px;font-family:var(--mono);font-size:11px;color:var(--wax-lit);letter-spacing:.1em}
.day summary::after{content:"+";position:absolute;right:6px;top:17px;font-family:var(--mono);font-size:17px;color:var(--dim);transition:transform .2s}
.day[open] summary::after{content:"–"}
.day__body{padding:0 0 20px 52px;color:#C6C2BA;font-size:1rem}

/* ---------- AUTHOR ---------- */
.author{background:var(--pit)}
.author__ph{width:100%;max-width:280px;border:1px solid var(--edge-soft);border-radius:2px;filter:grayscale(1);margin-bottom:22px}
.author__name{font-family:var(--display);font-weight:800;text-transform:uppercase;font-size:1.35rem;letter-spacing:-.02em;margin-bottom:4px}
.author__role{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--wax-lit);margin-bottom:20px}
.author__body{color:#C6C2BA}
.author__body em{font-style:normal;color:var(--dim)}
.tglink{display:inline-flex;align-items:center;gap:8px;margin-top:18px;font-family:var(--mono);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--bone);text-decoration:none;border-bottom:1px solid var(--wax-lit);padding-bottom:4px}

/* ---------- ANTI ---------- */
.anti li{padding-left:44px;color:#B9B5AE}
.anti li::before{color:var(--dimmer)}
.anti__turn{margin-top:30px;font-family:var(--display);font-weight:800;text-transform:uppercase;letter-spacing:-.02em;
  font-size:clamp(1.25rem,4.8vw,1.9rem);line-height:1.12}

/* ---------- REVIEWS ---------- */
.quotes{display:grid;gap:16px;margin-top:28px}
.quote{margin:0;border:1px solid var(--edge-soft);border-radius:2px;padding:24px 20px;background:var(--panel)}
.quote blockquote{margin:0 0 18px;font-size:1rem;color:#D5D1C9}
.quote figcaption{border-top:1px solid var(--edge-soft);padding-top:14px}
.quote__name{font-weight:600;color:#fff;font-size:1rem;margin:0 0 4px}
.quote__role{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--wax-lit);margin:0}

/* ---------- TARIFFS ---------- */
.plans{display:grid;gap:16px;margin-top:28px}
.plan{border:1px solid var(--edge);border-radius:2px;padding:26px 20px;background:var(--panel);position:relative}
.plan--hot{border-color:var(--wax-lit)}
.plan__badge{position:absolute;top:-1px;right:16px;font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;background:var(--wax);color:#F0E9E4;padding:5px 9px}
.plan__name{font-family:var(--display);font-weight:800;text-transform:uppercase;font-size:1.25rem;letter-spacing:-.02em}
.plan__price{font-family:var(--display);font-weight:800;font-size:2.4rem;letter-spacing:-.04em;margin:6px 0 2px}
.plan__for{color:var(--dim);font-size:.95rem;margin-bottom:20px}
.plan ul{list-style:none;margin:0 0 22px;padding:0}
.plan li{padding:10px 0 10px 24px;border-top:1px solid var(--edge-soft);position:relative;font-size:.97rem;color:#D5D1C9}
.plan li::before{content:"—";position:absolute;left:0;top:10px;color:var(--wax-lit);font-family:var(--mono);font-size:12px}

.seats{margin:0 0 20px}
.seats__bar{display:flex;gap:3px;margin-bottom:10px}
.seats__bar:empty{display:none}
.seats__bar i{flex:1;height:16px;border:1px solid var(--edge);border-radius:1px}
.seats__bar i.taken{background:var(--wax);border-color:var(--wax-lit)}
.seats__txt{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--dim);margin:0}
.seats__txt b{color:var(--bone);font-weight:500}
.seats--low .seats__txt b{color:var(--wax-lit)}

.plan--closed{border-color:var(--edge)}
.plan--closed .plan__badge{background:var(--edge);color:var(--dim)}
.plan--closed .plan__name,.plan--closed .plan__price{color:var(--dim)}
.plan--closed ul{opacity:.55}

/* ---------- FAQ ---------- */
.faq summary{padding:20px 34px 20px 0;font-size:1rem}
.faq summary::before{content:none}
.faq .day__body{padding-left:0}

/* ---------- FOOTER ---------- */
.foot{border-top:1px solid var(--edge-soft);padding:40px 0 130px;color:var(--dim);font-size:.95rem}
.foot a{color:var(--bone)}
.foot__mail{font-family:var(--mono);font-size:12px;letter-spacing:.08em;margin-top:14px;display:block}

/* ---------- REVEAL ---------- */
.js .rv{opacity:0;transform:translateY(14px);transition:opacity .6s ease,transform .6s ease}
.js .rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  .js .rv{opacity:1;transform:none;transition:none}
  .stamp{animation:none !important}
  .stickybar{transition:none}
}
:focus-visible{outline:2px solid var(--wax-lit);outline-offset:3px}

/* ---------- DESKTOP ---------- */
@media (min-width:760px){
  :root{--pad:40px}
  body{font-size:18px}
  .sec{padding:104px 0}
  .hero__in{padding-bottom:60px}
  .hero__sub{font-size:1.2rem}
  .cta{width:auto;padding:19px 40px;font-size:16px}
  .cta__note{text-align:left}
  .stickybar{display:none}
  .foot{padding-bottom:40px}
  .mg{display:grid;grid-template-columns:1.15fr .85fr;gap:0;align-items:stretch}
  .stage{margin-top:0;border-right:0}
  .readout{border-top:1px solid var(--edge-soft);border-left:0;display:flex;flex-direction:column;justify-content:center;padding:34px 30px}
  .quotes{grid-template-columns:1fr 1fr;gap:20px}
  .quote{padding:30px 26px}
  .plans{grid-template-columns:1fr 1fr;gap:20px}
  .plan{padding:34px 30px}
  .author__row{display:grid;grid-template-columns:280px 1fr;gap:44px;align-items:start}
  .author__ph{margin-bottom:0}
  .figure img{aspect-ratio:21/9}
}
/* ---------- WIDE SCREENS ---------- */
@media (min-width:1000px){
  .hero{align-items:center}
  .hero__img{left:auto;right:0;width:46%;object-position:50% 26%}
  .hero__veil{background:
    linear-gradient(90deg,var(--ink) 0%,var(--ink) 38%,rgba(8,8,10,.78) 50%,rgba(8,8,10,.06) 66%,rgba(8,8,10,.30) 100%),
    linear-gradient(180deg,rgba(8,8,10,.30) 0%,rgba(8,8,10,0) 26%,rgba(8,8,10,0) 68%,rgba(8,8,10,.60) 100%)}
  .hero__in{padding-top:0;padding-bottom:0}
  .hero__in>*{max-width:min(480px,42vw)}
  .hero h1{font-size:clamp(2.9rem,4.4vw,3.6rem)}
  .hero__sub{font-size:1.12rem;max-width:24ch}
}
