/* ===================================================================
   ПРОСТРАНСТВО VIDHAYA — общая дизайн-система сайта.
   Тёплый кремовый день + ночное небо со звёздами, золото, жидкое стекло.
   Заголовки Forum, кикеры NyghtSerif, текст Jost.
=================================================================== */
@font-face{font-family:'Forum';src:url('fonts/forum-regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap;}
@font-face{font-family:'NyghtSerif';src:url('fonts/nyghtserif-regular.otf') format('opentype');font-weight:400;font-style:normal;font-display:swap;}
@font-face{font-family:'NyghtSerif';src:url('fonts/nyghtserif-lightitalic.otf') format('opentype');font-weight:300;font-style:italic;font-display:swap;}

:root{
  /* день — тёплый крем, без серого */
  --cream:#fdf6ea;
  --cream-2:#fbeedb;
  --surface:#fffdf9;
  --ink:#2a2130;
  --ink-soft:#4c3f4a;
  --muted:#7a6a5c;
  --dim:#a2937f;
  /* золото */
  --gold:#cf9a3a;
  --gold-light:#f2d08a;
  --gold-deep:#8a5f18;
  --gold-wash:#f6e3c4;
  --line:rgba(160,110,45,0.2);
  /* ночь */
  --night:#140f1d;
  --night-2:#231a33;
  --night-3:#2f2140;
  --night-ink:#f6eddc;
  --night-muted:#c9bcae;
  --shadow-s:0 10px 28px -16px rgba(120,80,30,.3);
  --shadow-m:0 26px 56px -28px rgba(80,50,15,.42);
  --radius:22px;
  --radius-lg:32px;
  --maxw:1180px;
  --serif:'Forum', Georgia, serif;
  --serif-kicker:'NyghtSerif', Georgia, serif;
  --sans:'Jost','Segoe UI',sans-serif;
  color-scheme:light;
}

*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{
  background:
    radial-gradient(ellipse 760px 520px at 88% 4%, rgba(226,169,92,.20), transparent 62%),
    radial-gradient(ellipse 900px 620px at 6% 22%, rgba(192,131,64,.12), transparent 60%),
    linear-gradient(180deg, var(--cream) 0%, var(--cream-2) 55%, var(--cream) 100%);
  color:var(--ink);
  font-family:var(--sans);
  font-weight:300;
  font-size:16px;
  line-height:1.75;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}
img{display:block;max-width:100%;height:auto;}
a{color:inherit;text-decoration:none;}
::selection{background:var(--gold-light);color:#fff;}

.wrap{max-width:var(--maxw);margin:0 auto;padding:0 clamp(1.25rem,5vw,3rem);position:relative;z-index:2;}
.wrap-narrow{max-width:840px;margin:0 auto;padding:0 clamp(1.25rem,5vw,3rem);position:relative;z-index:2;}
section{position:relative;}
.pad{padding-block:clamp(3.6rem,7vw,6.5rem);}
.pad-s{padding-block:clamp(2.4rem,4.5vw,4rem);}

h1,h2,h3,h4{font-family:var(--serif);font-weight:400;color:var(--ink);line-height:1.14;text-wrap:balance;}
h1{font-size:clamp(2.2rem,5vw,3.9rem);}
h2{font-size:clamp(1.8rem,3.3vw,2.6rem);}
h3{font-size:1.28rem;}
p{margin:0;}
.lead{font-size:clamp(1.04rem,1.55vw,1.18rem);line-height:1.7;color:var(--ink-soft);}
.muted{color:var(--muted);}
.small{font-size:.86rem;line-height:1.6;color:var(--muted);}
.center{text-align:center;}
.stack>*+*{margin-top:1.05rem;}

/* ── ночное небо ───────────────────────────────────────────────── */
.night{
  background:
    radial-gradient(ellipse 700px 420px at 78% 12%, rgba(226,169,92,.16), transparent 60%),
    radial-gradient(ellipse 620px 520px at 10% 88%, rgba(120,85,160,.18), transparent 62%),
    linear-gradient(165deg, var(--night) 0%, var(--night-2) 58%, var(--night-3) 100%);
  color:var(--night-ink);
  position:relative;overflow:hidden;isolation:isolate;
}
.night h1,.night h2,.night h3,.night h4{color:var(--night-ink);}
.night .lead,.night p{color:var(--night-muted);}
.night .small{color:#a8998c;}

.night::before{
  content:'';position:absolute;inset:-10% -5%;z-index:0;pointer-events:none;
  background-image:
    radial-gradient(1.6px 1.6px at 12% 18%, rgba(255,238,203,.95), transparent 60%),
    radial-gradient(1.2px 1.2px at 27% 62%, rgba(255,238,203,.75), transparent 60%),
    radial-gradient(1.8px 1.8px at 41% 26%, rgba(255,255,255,.9), transparent 60%),
    radial-gradient(1.1px 1.1px at 55% 71%, rgba(255,238,203,.7), transparent 60%),
    radial-gradient(1.5px 1.5px at 68% 14%, rgba(255,238,203,.85), transparent 60%),
    radial-gradient(1.2px 1.2px at 79% 48%, rgba(255,255,255,.8), transparent 60%),
    radial-gradient(1.7px 1.7px at 88% 78%, rgba(255,238,203,.9), transparent 60%),
    radial-gradient(1px 1px at 33% 88%, rgba(255,255,255,.6), transparent 60%),
    radial-gradient(1px 1px at 61% 34%, rgba(255,238,203,.55), transparent 60%),
    radial-gradient(1.3px 1.3px at 7% 52%, rgba(255,255,255,.7), transparent 60%),
    radial-gradient(1px 1px at 47% 8%, rgba(255,238,203,.6), transparent 60%),
    radial-gradient(1.4px 1.4px at 92% 30%, rgba(255,255,255,.75), transparent 60%),
    radial-gradient(1px 1px at 18% 78%, rgba(255,238,203,.5), transparent 60%),
    radial-gradient(1.2px 1.2px at 72% 92%, rgba(255,255,255,.65), transparent 60%);
  animation:twinkle 7s ease-in-out infinite alternate;
}
@keyframes twinkle{from{opacity:.55;}to{opacity:1;}}
@media (prefers-reduced-motion:reduce){.night::before{animation:none;opacity:.8;}}

/* планета с кольцом — декоративная, за контентом */
.planet{position:absolute;z-index:0;pointer-events:none;}
.planet.tr{top:-130px;right:-110px;width:330px;opacity:.5;}
.planet.bl{bottom:-150px;left:-110px;width:300px;opacity:.32;}
@media (max-width:820px){.planet.tr{width:200px;top:-70px;right:-80px;opacity:.38;}.planet.bl{display:none;}}

/* ── жидкое стекло ─────────────────────────────────────────────── */
.glass{
  background:linear-gradient(145deg, rgba(255,255,255,.16), rgba(255,255,255,.05));
  backdrop-filter:blur(18px) saturate(150%);
  -webkit-backdrop-filter:blur(18px) saturate(150%);
  border:1px solid rgba(255,255,255,.22);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.35), 0 20px 44px -26px rgba(0,0,0,.65);
  border-radius:var(--radius);
}
.glass-light{
  background:linear-gradient(145deg, rgba(255,255,255,.78), rgba(255,255,255,.45));
  backdrop-filter:blur(16px) saturate(140%);
  -webkit-backdrop-filter:blur(16px) saturate(140%);
  border:1px solid rgba(255,255,255,.85);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9), var(--shadow-s);
  border-radius:var(--radius);
}

/* ── кикер ─────────────────────────────────────────────────────── */
.kicker{display:inline-flex;align-items:center;gap:1.2rem;margin-bottom:1.2rem;}
.kicker .kl{width:56px;height:1px;flex:none;background:linear-gradient(90deg,transparent,var(--gold));}
.kicker .kr{display:none;width:56px;height:1px;flex:none;background:linear-gradient(270deg,transparent,var(--gold));}
.kicker .kt{
  font-family:var(--serif-kicker);font-style:italic;font-weight:400;
  font-size:clamp(1.7rem,3.8vw,2.5rem);line-height:1;letter-spacing:.03em;
  color:var(--gold-deep);white-space:nowrap;
}
.kicker.center{justify-content:center;width:100%;}
.kicker.center .kr{display:block;}
.night .kicker .kt{color:var(--gold-light);}
.night .kicker .kl{background:linear-gradient(90deg,transparent,var(--gold-light));}
.night .kicker .kr{background:linear-gradient(270deg,transparent,var(--gold-light));}
@media (max-width:600px){.kicker{gap:.8rem;}.kicker .kl,.kicker .kr{width:30px;}}

/* ── кнопки ────────────────────────────────────────────────────── */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.6rem;
  font-family:var(--sans);font-weight:600;font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;
  padding:.78rem 1.4rem;border-radius:999px;border:1.5px solid transparent;cursor:pointer;
  transition:transform .22s ease,box-shadow .3s ease,background .3s ease,border-color .3s ease,color .3s ease;
  white-space:nowrap;position:relative;
}
.btn-gold{
  background:linear-gradient(135deg,var(--gold-light) 0%,var(--gold) 100%);
  color:#33240d;
  box-shadow:0 12px 26px -14px rgba(150,105,30,.75), inset 0 1px 0 rgba(255,255,255,.65);
}
.btn-gold:hover{transform:translateY(-2px);box-shadow:0 20px 40px -18px rgba(160,100,30,.9), inset 0 1px 0 rgba(255,255,255,.55);}
.btn-glass{
  background:linear-gradient(145deg, rgba(255,255,255,.22), rgba(255,255,255,.07));
  backdrop-filter:blur(14px) saturate(160%);
  -webkit-backdrop-filter:blur(14px) saturate(160%);
  border-color:rgba(255,255,255,.3);color:var(--night-ink);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.4), 0 14px 30px -18px rgba(0,0,0,.7);
}
.btn-glass:hover{transform:translateY(-2px);border-color:rgba(255,255,255,.5);}
.btn-glass-light{
  background:linear-gradient(145deg, rgba(255,255,255,.82), rgba(255,255,255,.5));
  backdrop-filter:blur(14px) saturate(150%);
  -webkit-backdrop-filter:blur(14px) saturate(150%);
  border-color:rgba(255,255,255,.9);color:var(--ink-soft);
  box-shadow:inset 0 1px 0 #fff, var(--shadow-s);
}
.btn-glass-light:hover{transform:translateY(-2px);color:var(--gold-deep);}
.btn-ghost{border-color:var(--line);color:var(--ink-soft);background:rgba(255,255,255,.6);}
.btn-ghost:hover{border-color:var(--gold);color:var(--gold-deep);}
.btn-dark{background:var(--night);color:var(--night-ink);}
.btn-dark:hover{transform:translateY(-2px);box-shadow:var(--shadow-m);}
.btn-wide{width:100%;}
.btn[disabled]{opacity:.5;cursor:default;transform:none;}

/* ── шапка ─────────────────────────────────────────────────────── */
.nav{
  position:sticky;top:0;z-index:60;
  background:rgba(253,246,234,.72);
  backdrop-filter:blur(16px) saturate(140%);
  -webkit-backdrop-filter:blur(16px) saturate(140%);
  border-bottom:1px solid var(--line);
}
.nav.on-night{background:rgba(20,15,29,.55);border-bottom-color:rgba(255,255,255,.12);}
.nav.on-night .brand{color:var(--gold-light);}
.nav.on-night .brand span,.nav.on-night .nav-links a{color:var(--night-muted);}
.nav.on-night .nav-links a:hover{color:var(--night-ink);}
.nav.on-night .burger{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.2);}
.nav.on-night .burger span,.nav.on-night .burger span::before,.nav.on-night .burger span::after{background:var(--night-ink);}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;height:66px;}
.brand{font-family:var(--serif);font-size:1.2rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-deep);}
.brand span{color:var(--ink);}
.nav-links{display:flex;gap:1.5rem;align-items:center;font-size:.92rem;}
.nav-links a{color:var(--ink-soft);transition:color .2s;}
.nav-links a:hover{color:var(--gold-deep);}
.nav .btn{padding:.55rem 1rem;font-size:.68rem;letter-spacing:.08em;}
.burger{display:none;width:42px;height:42px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.65);cursor:pointer;align-items:center;justify-content:center;}
.burger span{display:block;width:18px;height:1.5px;background:var(--ink-soft);position:relative;}
.burger span::before,.burger span::after{content:'';position:absolute;left:0;width:18px;height:1.5px;background:var(--ink-soft);}
.burger span::before{top:-6px;}.burger span::after{top:6px;}
.mobile-menu{display:none;flex-direction:column;gap:.1rem;padding:.5rem 0 1.1rem;border-bottom:1px solid var(--line);background:rgba(253,246,234,.98);}
.mobile-menu a{padding:.7rem clamp(1.25rem,5vw,3rem);color:var(--ink-soft);}
.mobile-menu.open{display:flex;}
.nav.on-night + .mobile-menu,.on-night .mobile-menu{background:rgba(20,15,29,.97);}
.nav.on-night ~ .mobile-menu a{color:var(--night-muted);}
@media (max-width:980px){.nav-links{display:none;}.burger{display:flex;}}
@media (max-width:560px){.brand span{display:none;}.nav .wrap{height:60px;}}

/* ── первый экран ──────────────────────────────────────────────── */
.hero{padding-block:clamp(2.8rem,6vw,5rem) clamp(2.6rem,6vw,4.6rem);}
.hero h1{margin-bottom:1rem;}
.hero-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.8rem;align-items:center;}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(2rem,4vw,3.6rem);align-items:center;}
.hero-grid>*{min-width:0;}
@media (max-width:900px){.hero-grid{grid-template-columns:1fr;}}

.eyebrow{
  font-family:var(--sans);font-size:.75rem;letter-spacing:.22em;text-transform:uppercase;
  color:var(--gold-deep);font-weight:500;margin-bottom:.85rem;display:block;
}
.night .eyebrow{color:var(--gold-light);}

/* ── карточки ──────────────────────────────────────────────────── */
.cards{display:grid;gap:1.1rem;}
.cards-2{grid-template-columns:repeat(2,1fr);}
.cards-3{grid-template-columns:repeat(3,1fr);}
@media (max-width:980px){.cards-3{grid-template-columns:repeat(2,1fr);}}
@media (max-width:640px){.cards-2,.cards-3{grid-template-columns:1fr;}}

.card{
  background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);
  padding:clamp(1.3rem,2.2vw,1.8rem);box-shadow:var(--shadow-s);
  transition:transform .25s ease,box-shadow .3s ease;
}
.card h3{margin-bottom:.45rem;}
.card p{color:var(--ink-soft);font-size:.95rem;line-height:1.68;}
a.card:hover{transform:translateY(-3px);box-shadow:var(--shadow-m);}
.card.glass,.card.glass-light{background:none;border:0;box-shadow:none;}
.card.glass{background:linear-gradient(145deg, rgba(255,255,255,.16), rgba(255,255,255,.05));border:1px solid rgba(255,255,255,.22);box-shadow:inset 0 1px 0 rgba(255,255,255,.35), 0 20px 44px -26px rgba(0,0,0,.65);}
.night .card p{color:var(--night-muted);}
.card .ic{font-size:1.35rem;line-height:1;margin-bottom:.6rem;display:block;}

/* витрина «что внутри» */
.show{display:grid;grid-template-columns:repeat(2,1fr);gap:1.15rem;}
@media (max-width:860px){.show{grid-template-columns:1fr;}}
.show-item{padding:clamp(1.3rem,2.3vw,1.75rem);display:flex;flex-direction:column;gap:.9rem;}
.show-item h3{font-size:1.2rem;}
.show-item p{font-size:.94rem;line-height:1.66;color:var(--night-muted);}
.show-item .pic{margin-top:auto;}

/* ситуации «вам сюда, если» */
.sit{display:grid;gap:.85rem;list-style:none;}
.sit li{padding:1.05rem 1.35rem;font-size:1rem;line-height:1.6;display:flex;gap:.85rem;align-items:flex-start;color:var(--night-ink);}
.sit li::before{content:'✦';color:var(--gold-light);flex:none;font-size:.85rem;line-height:1.8;}
.sit.on-light li{color:var(--ink-soft);}
.sit.on-light li::before{color:var(--gold);}

/* шаги */
.steps{display:grid;gap:1.1rem;counter-reset:s;list-style:none;}
.steps li{display:grid;grid-template-columns:auto 1fr;gap:1rem;align-items:start;}
.steps li::before{
  counter-increment:s;content:counter(s);
  font-family:var(--serif);font-size:1rem;color:var(--gold-deep);
  width:38px;height:38px;border-radius:50%;border:1px solid var(--line);
  display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.75);
}
.steps h3{font-size:1.08rem;margin-bottom:.15rem;}
.steps p{color:var(--ink-soft);font-size:.95rem;}

/* цитаты */
.quotes{display:grid;gap:1rem;grid-template-columns:repeat(3,1fr);}
@media (max-width:980px){.quotes{grid-template-columns:repeat(2,1fr);}}
@media (max-width:640px){.quotes{grid-template-columns:1fr;}}
.quote{padding:1.35rem 1.45rem;}
.quote p{font-family:var(--serif);font-size:1.02rem;line-height:1.55;color:var(--ink-soft);}
.quote .who{display:block;margin-top:.85rem;font-size:.78rem;letter-spacing:.06em;color:var(--dim);text-transform:uppercase;}

/* тарифы */
.tiers{display:grid;gap:1.1rem;grid-template-columns:repeat(3,1fr);align-items:stretch;}
@media (max-width:860px){.tiers{grid-template-columns:1fr;}}
.tier{padding:1.7rem 1.5rem;display:flex;flex-direction:column;gap:.45rem;position:relative;}
.tier.best{border-color:rgba(226,169,92,.6);box-shadow:inset 0 1px 0 rgba(255,255,255,.55), 0 26px 50px -26px rgba(120,70,20,.5);}
.tier .flag{
  position:absolute;top:-12px;left:50%;transform:translateX(-50%);
  background:linear-gradient(135deg,var(--gold-light),var(--gold));color:#fff;
  font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;padding:.28rem 1rem;border-radius:999px;white-space:nowrap;
}
.tier .term{font-family:var(--serif);font-size:1.28rem;}
.tier .sum{font-family:var(--serif);font-size:2.1rem;color:var(--gold-deep);line-height:1.1;}
.tier .per{font-size:.85rem;color:var(--muted);}
.tier .btn{margin-top:auto;}

/* FAQ */
.faq details{border-bottom:1px solid var(--line);padding:1.1rem 0;}
.faq summary{
  cursor:pointer;list-style:none;font-family:var(--serif);font-size:1.1rem;color:var(--ink);
  display:flex;justify-content:space-between;gap:1rem;align-items:center;
}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{content:'+';color:var(--gold);font-size:1.3rem;line-height:1;transition:transform .2s;}
.faq details[open] summary::after{transform:rotate(45deg);}
.faq p{margin-top:.65rem;color:var(--ink-soft);font-size:.96rem;}

/* полоса «что дальше» */
.next{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.2rem;padding:clamp(1.4rem,3vw,2.1rem);border-radius:var(--radius-lg);}
.next h3{margin-bottom:.25rem;}
.next p{color:var(--ink-soft);max-width:54ch;}
.night .next p{color:var(--night-muted);}

/* подвал */
.foot{padding-block:clamp(2.4rem,5vw,3.8rem);}
.foot a{color:var(--night-muted);}
.foot a:hover{color:var(--gold-light);}
.foot h4{color:var(--night-ink);font-size:.98rem;margin-bottom:.75rem;}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:2rem;}
@media (max-width:780px){.foot-grid{grid-template-columns:1fr;}}
.foot ul{list-style:none;display:grid;gap:.42rem;font-size:.92rem;}
.foot .legal{margin-top:1.8rem;padding-top:1.3rem;border-top:1px solid rgba(255,255,255,.12);font-size:.8rem;line-height:1.7;color:#9c8f82;}

/* ── окно оплаты ───────────────────────────────────────────────── */
.modal{position:fixed;inset:0;z-index:100;display:none;align-items:center;justify-content:center;background:rgba(20,15,29,.6);backdrop-filter:blur(6px);padding:1rem;}
.modal.open{display:flex;}
.modal-box{
  background:linear-gradient(160deg,#fffdf9,#fbeedb);border:1px solid rgba(255,255,255,.9);
  border-radius:var(--radius-lg);max-width:460px;width:100%;
  padding:clamp(1.5rem,3vw,2.1rem);box-shadow:0 40px 80px -30px rgba(0,0,0,.6);
  max-height:92vh;overflow-y:auto;position:relative;
}
.modal-box h3{font-size:1.45rem;margin-bottom:.35rem;}
.modal-close{position:absolute;top:.85rem;right:1rem;background:none;border:0;font-size:1.15rem;color:var(--muted);cursor:pointer;line-height:1;padding:.4rem;}
.field{display:block;margin-top:.95rem;}
.field span{display:block;font-size:.83rem;color:var(--muted);margin-bottom:.3rem;}
.field input{width:100%;font-family:var(--sans);font-size:1rem;padding:.78rem 1rem;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--ink);}
.field input:focus{outline:none;border-color:var(--gold);}
.check{display:flex;gap:.7rem;align-items:flex-start;margin-top:1rem;font-size:.85rem;color:var(--muted);line-height:1.5;cursor:pointer;}
.check input{margin-top:.25rem;flex:none;width:18px;height:18px;accent-color:var(--gold);}
.check a{color:var(--gold-deep);text-decoration:underline;}
.check.need{color:var(--gold-deep);}
.err{display:none;margin-top:.65rem;font-size:.85rem;color:#b03a2e;}
.err.show{display:block;}
.pay-sum{font-family:var(--serif);font-size:1.55rem;color:var(--gold-deep);margin-top:.15rem;}
.pay-thanks{margin-top:1.3rem;background:var(--gold-wash);border:1px solid var(--line);border-radius:var(--radius);padding:1.3rem 1.4rem;}

/* ── макет дня (рисуется кодом, без чужих данных) ──────────────── */
.mock{padding:16px 14px 18px;max-width:380px;margin-left:auto;width:100%;font-family:var(--sans);color:var(--night-ink);border-radius:26px;}
.mock-top{display:flex;align-items:center;justify-content:space-between;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:#bfae9a;margin-bottom:12px;}
.mock-week{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;margin-bottom:12px;}
.mock-week div{border-radius:12px;padding:6px 0 7px;text-align:center;font-size:.7rem;line-height:1.25;color:#fff;}
.mock-week div b{display:block;font-size:.92rem;font-weight:500;}
.mock-week .on{outline:2px solid rgba(255,255,255,.85);outline-offset:1px;}
.mock-day{border-radius:20px;padding:15px 15px 17px;color:#23401d;}
.mock-day .d{font-family:var(--serif);font-size:1.45rem;line-height:1.1;}
.mock-day .h{font-size:.93rem;margin-top:.3rem;font-weight:500;}
.mock-day .lvl{display:inline-block;margin-top:.55rem;font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;background:rgba(0,0,0,.14);border-radius:999px;padding:.18rem .7rem;}
.mock-day p{margin-top:.65rem;font-size:.87rem;line-height:1.5;color:#23401d;opacity:.92;}
.mock-note{margin-top:10px;background:rgba(255,255,255,.08);border-radius:16px;padding:11px 13px;font-size:.8rem;line-height:1.5;color:var(--night-muted);}
.mock-note b{color:var(--night-ink);font-weight:500;}
.c-red{background:#B84239;}
.c-pink{background:#D07A70;}
.c-salad{background:#77d466;}
.c-green{background:#3E7C4E;}
.c-yellow{background:#E0AB2C;}

/* мини-макеты витрины */
.mini-row{display:flex;gap:6px;}
.mini-row div{flex:1;border-radius:10px;height:38px;display:flex;align-items:center;justify-content:center;font-size:.74rem;color:#fff;font-weight:500;}
.mini-txt{background:rgba(255,255,255,.07);border-radius:14px;padding:11px 13px;color:var(--night-muted);font-size:.84rem;line-height:1.55;}
.mini-txt b{color:var(--night-ink);font-weight:500;}
.mini-tag{display:inline-block;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gold-light);border:1px solid rgba(226,169,92,.4);border-radius:999px;padding:.15rem .65rem;margin:0 .3rem .35rem 0;}

/* ── двери на главной ──────────────────────────────────────────── */
.doors{display:grid;grid-template-columns:repeat(3,1fr);gap:1.15rem;}
@media (max-width:900px){.doors{grid-template-columns:1fr;}}
.door{padding:1.8rem 1.6rem;display:flex;flex-direction:column;gap:.7rem;transition:transform .25s ease,box-shadow .3s ease;}
.door:hover{transform:translateY(-4px);}
.door .q{font-family:var(--serif);font-size:1.35rem;color:var(--night-ink);line-height:1.25;}
.door p{font-size:.94rem;color:var(--night-muted);}
.door ul{list-style:none;display:grid;gap:.5rem;margin-top:.4rem;}
.door ul a{display:flex;justify-content:space-between;gap:.8rem;align-items:baseline;font-size:.95rem;color:var(--night-ink);border-bottom:1px dashed rgba(255,255,255,.16);padding-bottom:.45rem;}
.door ul a:hover{color:var(--gold-light);}
.door ul a span{font-size:.85rem;color:var(--night-muted);white-space:nowrap;}

/* мелочи */
.hr{height:1px;background:var(--line);border:0;margin-block:clamp(2rem,4vw,3rem);}
.badge{display:inline-block;font-size:.73rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-deep);border:1px solid var(--line);border-radius:999px;padding:.24rem .8rem;background:rgba(255,255,255,.65);}
.badge-dark{color:var(--gold-light);border-color:rgba(226,169,92,.45);background:rgba(255,255,255,.06);}
.rv{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease;}
.rv.in{opacity:1;transform:none;}
@media (prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none;}}

/* ===================================================================
   ТЕМЫ СТРАНИЦ
   .t-white  — главная: белый, воздух, компас
   .t-leaf   — КОД: зелёный, листья
   .t-premium— консультация: строгое, графит и золото
   Ночная тема (.night) остаётся у Астровкуса и Астропаспорта.
=================================================================== */
body.t-white{
  background:
    radial-gradient(ellipse 900px 600px at 82% -6%, rgba(226,169,92,.13), transparent 62%),
    radial-gradient(ellipse 760px 520px at 4% 30%, rgba(214,180,255,.10), transparent 60%),
    #ffffff;
}
body.t-leaf{
  background:
    radial-gradient(ellipse 900px 600px at 84% -6%, rgba(119,212,102,.16), transparent 62%),
    radial-gradient(ellipse 720px 520px at 2% 34%, rgba(226,169,92,.10), transparent 60%),
    #fbfff8;
  --gold:#2f9e57; --gold-light:#63c98a; --gold-deep:#1f6b3c; --gold-wash:#e2f7e8;
  --line:rgba(60,130,70,.2);
}
body.t-premium{
  background:
    radial-gradient(ellipse 900px 620px at 80% -8%, rgba(198,164,106,.16), transparent 60%),
    radial-gradient(ellipse 700px 500px at 0% 40%, rgba(40,44,60,.06), transparent 60%),
    #fcfbf8;
  --gold:#b58b3c; --gold-light:#d9b86a; --gold-deep:#6f5222;
  --ink:#23262c; --ink-soft:#3e434c; --muted:#6c7079;
  --line:rgba(120,100,60,.22);
}

/* переливающееся сияние фона — медленное, ненавязчивое */
.aurora{position:absolute;inset:0;overflow:hidden;z-index:0;pointer-events:none;}
.aurora i{
  position:absolute;display:block;border-radius:50%;filter:blur(80px);opacity:.55;
  animation:drift 26s ease-in-out infinite alternate;
}
.aurora i:nth-child(1){width:46vw;height:46vw;left:-8vw;top:-14vw;background:radial-gradient(circle,rgba(226,169,92,.55),transparent 65%);}
.aurora i:nth-child(2){width:38vw;height:38vw;right:-6vw;top:6vw;background:radial-gradient(circle,rgba(214,180,255,.45),transparent 65%);animation-delay:-8s;}
.aurora i:nth-child(3){width:42vw;height:42vw;left:26vw;bottom:-18vw;background:radial-gradient(circle,rgba(255,214,160,.5),transparent 65%);animation-delay:-15s;}
@keyframes drift{
  0%{transform:translate3d(0,0,0) scale(1);}
  50%{transform:translate3d(3vw,-2vw,0) scale(1.08);}
  100%{transform:translate3d(-2vw,3vw,0) scale(.96);}
}
@media (prefers-reduced-motion:reduce){.aurora i{animation:none;}}

/* блик по кнопке */
.btn{overflow:hidden;}
.btn-gold::after,.btn-glass-light::after{
  content:'';position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(115deg,transparent 32%,rgba(255,255,255,.55) 46%,transparent 62%);
  transform:translateX(-130%);
}
.btn-gold:hover::after,.btn-glass-light:hover::after{animation:sheen .9s ease forwards;}
@keyframes sheen{to{transform:translateX(130%);}}

/* ── роза ветров: навигация главной ───────────────────────────── */
.rose{
  display:grid;gap:1.1rem;align-items:stretch;
  grid-template-columns:1fr minmax(180px,.8fr) 1fr;
  grid-template-areas:
    ".  n  ."
    "w  c  e"
    ".  s  .";
}
.rose .d-n{grid-area:n;}
.rose .d-w{grid-area:w;}
.rose .d-e{grid-area:e;}
.rose .d-s{grid-area:s;}
.rose .rose-mid{grid-area:c;display:flex;align-items:center;justify-content:center;padding:1rem;}
@media (max-width:900px){
  .rose{grid-template-columns:1fr;grid-template-areas:"c" "n" "e" "w" "s";}
  .rose .rose-mid{padding:0 0 .5rem;}
  .rose .rose-mid svg{max-width:200px;}
}
.dir{
  padding:1.5rem 1.5rem 1.35rem;display:flex;flex-direction:column;gap:.55rem;
  transition:transform .28s ease,box-shadow .3s ease,border-color .3s ease;
}
.dir:hover{transform:translateY(-4px);}
.dir .side{font-size:.72rem;letter-spacing:.24em;text-transform:uppercase;color:var(--gold-deep);}
.dir h3{font-size:1.32rem;line-height:1.2;}
.dir p{font-size:.94rem;color:var(--muted);}
.dir ul{list-style:none;display:grid;gap:.35rem;margin-top:.5rem;font-size:.95rem;}
.dir ul li::before{content:'·';color:var(--gold);margin-right:.5rem;}
.dir .go{margin-top:.7rem;font-size:.9rem;color:var(--gold-deep);display:inline-flex;gap:.4rem;align-items:center;}
.dir:hover .go{gap:.7rem;}

.compass-needle{transform-origin:100px 100px;animation:needle 18s ease-in-out infinite;}
@keyframes needle{
  0%{transform:rotate(0deg);} 18%{transform:rotate(34deg);} 36%{transform:rotate(-14deg);}
  54%{transform:rotate(22deg);} 72%{transform:rotate(-6deg);} 100%{transform:rotate(0deg);}
}
.compass-ring{transform-origin:100px 100px;animation:ring 60s linear infinite;}
@keyframes ring{to{transform:rotate(360deg);}}
@media (prefers-reduced-motion:reduce){.compass-needle,.compass-ring{animation:none;}}

/* ── листья для КОДа ──────────────────────────────────────────── */
.leaf{position:absolute;z-index:0;pointer-events:none;opacity:.5;}
.leaf.l1{top:-40px;right:-30px;width:260px;transform:rotate(12deg);}
.leaf.l2{bottom:-60px;left:-50px;width:300px;transform:rotate(-165deg);opacity:.35;}
@media (max-width:820px){.leaf.l1{width:170px;}.leaf.l2{display:none;}}

/* ── светлый подвал ───────────────────────────────────────────── */
.foot.light{background:transparent;border-top:1px solid var(--line);}
.foot.light a,.foot.light p{color:var(--muted);}
.foot.light a:hover{color:var(--gold-deep);}
.foot.light h4{color:var(--ink);}
.foot.light .legal{border-top-color:var(--line);color:var(--dim);}

/* ===================================================================
   ЗАГОЛОВКИ И АКЦЕНТЫ (добавлено после правок 24.09)
=================================================================== */

/* крик — фраза-боль крупным Jost капсом */
.shout{
  font-family:var(--sans);font-weight:600;text-transform:uppercase;
  font-size:clamp(1.9rem,5.2vw,3.5rem);line-height:1.06;letter-spacing:-.01em;
  color:var(--ink);
}
.night .shout{color:var(--night-ink);}
.shout em{font-style:normal;color:var(--gold-deep);}
.night .shout em{color:var(--gold-light);}

/* метка-подпись над заголовком (Jost капсом) */
.label{
  display:inline-flex;align-items:center;gap:.6rem;
  font-family:var(--sans);font-size:.74rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;
  color:var(--gold-deep);margin-bottom:.7rem;
}
.label::before{content:'';width:22px;height:1px;background:var(--gold);flex:none;}
.night .label{color:var(--gold-light);}
.night .label::before{background:var(--gold-light);}

/* заголовок раздела с росчерком снизу */
.h-mark{position:relative;padding-bottom:.6rem;margin-bottom:1.1rem;}
.h-mark::after{
  content:'';position:absolute;left:0;bottom:0;width:66px;height:2px;border-radius:2px;
  background:linear-gradient(90deg,var(--gold-light),var(--gold));
}
.center .h-mark::after,.h-mark.center::after{left:50%;transform:translateX(-50%);}

/* мелкие заголовки внутри карточек — Jost капсом, чтобы отличались от Forum */
.h-small{
  font-family:var(--sans);font-weight:600;font-size:.95rem;letter-spacing:.06em;text-transform:uppercase;
  color:var(--ink);line-height:1.3;
}
.night .h-small{color:var(--night-ink);}

/* кнопка может переноситься на узком экране */
@media (max-width:620px){
  .btn{white-space:normal;text-align:center;line-height:1.3;padding:.9rem 1.4rem;}
}

/* лавандовый бокс — цвет сайта «узнать лунный знак» */
.lav{
  background:linear-gradient(145deg, rgba(185,191,233,.55), rgba(152,161,220,.35));
  border:1px solid rgba(46,53,102,.18);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7), 0 22px 46px -28px rgba(46,53,102,.5);
  border-radius:var(--radius-lg);
}
.lav h3,.lav .shout{color:#2E3566;}
.lav p{color:#3c4477;}
.lav .btn-gold{background:linear-gradient(135deg,#5a63a8,#2E3566);color:#fff;}
.lav .label{color:#2E3566;}
.lav .label::before{background:#2E3566;}

/* продукты внутри направления — карточки, а не список */
.prods{display:grid;gap:.6rem;margin-top:.9rem;}
.prod{
  display:grid;grid-template-columns:auto 1fr auto;gap:.8rem;align-items:center;
  padding:.75rem .9rem;border-radius:16px;
  background:rgba(255,255,255,.75);border:1px solid var(--line);
  transition:transform .2s ease,border-color .2s ease,background .2s ease;
}
.prod:hover{transform:translateX(3px);border-color:var(--gold);background:#fff;}
.prod .pi{
  width:34px;height:34px;flex:none;border-radius:11px;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(145deg,var(--gold-wash),rgba(255,255,255,.6));font-size:1rem;
}
.prod b{font-family:var(--sans);font-weight:500;font-size:.96rem;color:var(--ink);display:block;line-height:1.25;}
.prod span{font-size:.82rem;color:var(--muted);display:block;line-height:1.35;}
.prod .ar{color:var(--gold);font-size:1rem;}

/* направление: иконка стороны света */
.dir-head{display:flex;align-items:center;gap:.9rem;}
.dir-ic{
  width:44px;height:44px;flex:none;border-radius:14px;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(145deg,var(--gold-wash),rgba(255,255,255,.65));
  border:1px solid var(--line);font-size:1.15rem;
}

/* заголовки разделов на главной: тот же благородный шрифт, что у кикеров */
.h-nyght{
  font-family:var(--serif-kicker);font-weight:400;font-style:normal;
  font-size:clamp(1.9rem,3.6vw,2.9rem);line-height:1.18;letter-spacing:.005em;
}
/* полоску под заголовком больше не рисуем */
.h-mark::after{display:none;}
.h-mark{padding-bottom:0;}
/* на тёмном золотая кнопка остаётся читаемой */
.night .btn-gold{color:#2a1c06;}

/* тарифы на тёмном фоне: цифры и подписи должны читаться */
.night .tier .term{color:var(--night-ink);}
.night .tier .sum{color:#f7dfae;}
.night .tier .per{color:var(--night-muted);}
.night .tier.best{border-color:rgba(242,208,138,.55);}
.night .badge{color:var(--gold-light);border-color:rgba(242,208,138,.4);background:rgba(255,255,255,.07);}
.night .faq summary{color:var(--night-ink);}
.night .faq p{color:var(--night-muted);}
.night .faq details{border-bottom-color:rgba(255,255,255,.14);}
.night .quote p{color:var(--night-ink);}
.night .quote .who{color:#a08f7f;}
.night .steps li::before{color:var(--gold-light);border-color:rgba(255,255,255,.22);background:rgba(255,255,255,.07);}
.night .steps p{color:var(--night-muted);}
.night .h-small,.night .prod b{color:var(--night-ink);}

/* .t-star — курс «Звёзды на ладонях»: светлый, лавандово-золотой */
body.t-star{
  background:
    radial-gradient(ellipse 900px 620px at 84% -8%, rgba(152,161,220,.22), transparent 62%),
    radial-gradient(ellipse 760px 520px at 2% 32%, rgba(242,208,138,.16), transparent 60%),
    #fdfbff;
  --line:rgba(70,80,140,.18);
}
body.t-star .kicker .kt{color:#3a4180;}
body.t-star .kicker .kl{background:linear-gradient(90deg,transparent,#98A1DC);}
body.t-star .kicker .kr{background:linear-gradient(270deg,transparent,#98A1DC);}
body.t-star .eyebrow{color:#3a4180;}
.constell{position:absolute;z-index:0;pointer-events:none;opacity:.7;}
.constell.c1{top:-30px;right:-40px;width:340px;}
.constell.c2{bottom:-70px;left:-60px;width:280px;opacity:.35;}
@media (max-width:820px){.constell.c1{width:210px;}.constell.c2{display:none;}}

/* модули курса */
.mods{display:grid;gap:1.1rem;}
.mod{padding:1.6rem 1.6rem 1.5rem;display:grid;grid-template-columns:auto 1fr;gap:1.3rem;align-items:start;}
@media (max-width:640px){.mod{grid-template-columns:1fr;gap:.8rem;}}
.mod .num{
  font-family:var(--serif-kicker);font-size:2.1rem;line-height:1;color:#3a4180;opacity:.65;
  min-width:2.6rem;
}
.mod h3{font-family:var(--serif-kicker);font-size:1.45rem;margin-bottom:.4rem;}
.mod p{color:var(--ink-soft);font-size:.96rem;}
.mod .res{margin-top:.9rem;padding:.8rem 1rem;border-radius:14px;background:rgba(152,161,220,.14);border:1px solid rgba(70,80,140,.14);font-size:.92rem;color:#3a4180;}
.mod .mat{margin-top:.7rem;display:flex;flex-wrap:wrap;gap:.35rem;}
.mod .mat span{font-size:.78rem;padding:.2rem .65rem;border-radius:999px;background:rgba(255,255,255,.75);border:1px solid var(--line);color:var(--muted);}

/* ===================================================================
   .t-ocean — Астропаспорт: бирюза, глубина, мудрость
=================================================================== */
body.t-ocean{
  background:
    radial-gradient(ellipse 900px 620px at 86% -8%, rgba(76,194,203,.22), transparent 62%),
    radial-gradient(ellipse 800px 560px at 0% 34%, rgba(15,130,145,.12), transparent 60%),
    #f7fdfe;
  --gold:#0f8291; --gold-light:#4cc2cb; --gold-deep:#0b5f6b; --gold-wash:#ddf3f6;
  --line:rgba(15,95,107,.2);
  --ink:#16323a; --ink-soft:#31505a; --muted:#5d7b84; --dim:#8aa3aa;
}
body.t-ocean .btn-gold{color:#062a31;}
body.t-ocean .glass-light{
  background:linear-gradient(145deg, rgba(255,255,255,.85), rgba(233,250,252,.6));
  border-color:rgba(255,255,255,.9);
  box-shadow:inset 0 1px 0 #fff, 0 14px 34px -22px rgba(10,80,95,.45);
}

/* глубокая бирюзовая полоса — вместо чёрного */
.deep{
  background:linear-gradient(160deg,#0b4854 0%,#0f6b79 55%,#14889a 100%);
  color:#eaf9fb;position:relative;overflow:hidden;isolation:isolate;
}
.deep h1,.deep h2,.deep h3,.deep h4{color:#f2fdff;}
.deep p,.deep .lead{color:#c3e6ea;}
.deep .kicker .kt{color:#8fe3e9;}
.deep .kicker .kl{background:linear-gradient(90deg,transparent,#8fe3e9);}
.deep .kicker .kr{background:linear-gradient(270deg,transparent,#8fe3e9);}
.deep .glass{background:linear-gradient(145deg, rgba(255,255,255,.18), rgba(255,255,255,.06));border-color:rgba(255,255,255,.26);}
.deep .btn-glass{color:#f2fdff;}
.deep .badge{color:#8fe3e9;border-color:rgba(143,227,233,.4);background:rgba(255,255,255,.08);}

/* волны */
.wave{position:absolute;left:0;right:0;z-index:0;pointer-events:none;width:100%;}
.wave.top{top:-2px;}
.wave.bottom{bottom:-2px;}
.ocean-orb{position:absolute;z-index:0;pointer-events:none;opacity:.55;}
.ocean-orb.o1{top:-70px;right:-60px;width:320px;}
.ocean-orb.o2{bottom:-90px;left:-70px;width:260px;opacity:.35;}
@media (max-width:820px){.ocean-orb.o1{width:200px;}.ocean-orb.o2{display:none;}}

/* оглавление проекта жизни — светлый вариант */
.toc-l{list-style:none;display:grid;gap:.6rem;counter-reset:t;}
.toc-l li{
  counter-increment:t;display:grid;grid-template-columns:auto 1fr;gap:1.1rem;align-items:start;
  padding:1.05rem 1.2rem;border-radius:18px;
  background:linear-gradient(145deg, rgba(255,255,255,.9), rgba(233,250,252,.65));
  border:1px solid var(--line);box-shadow:0 12px 28px -22px rgba(10,80,95,.5);
  transition:transform .22s ease;
}
.toc-l li:hover{transform:translateX(3px);}
.toc-l li::before{
  content:counter(t,decimal-leading-zero);
  font-family:var(--serif-kicker);font-size:1.1rem;color:var(--gold);opacity:.9;
}
.toc-l b{font-family:var(--serif-kicker);font-weight:400;font-size:1.14rem;color:var(--ink);display:block;margin-bottom:.15rem;}
.toc-l span{font-size:.94rem;color:var(--ink-soft);line-height:1.6;}

/* океан: сияние фона в холодных тонах, без бежевого; акцент - коралл */
body.t-ocean .aurora i:nth-child(1){background:radial-gradient(circle,rgba(76,194,203,.5),transparent 65%);}
body.t-ocean .aurora i:nth-child(2){background:radial-gradient(circle,rgba(224,132,123,.3),transparent 65%);}
body.t-ocean .aurora i:nth-child(3){background:radial-gradient(circle,rgba(143,227,233,.45),transparent 65%);}
body.t-ocean .quote p{color:var(--ink-soft);}
body.t-ocean .tier .flag,body.t-ocean .badge{letter-spacing:.14em;}
body.t-ocean .coral{color:#c2564c;}

/* ===================================================================
   .t-sea — курс «Звёзды на ладонях»: тёмно-синее небо, золотые звёзды
   Используется вместе с классом .night на <body>
=================================================================== */
body.t-sea{
  background:
    radial-gradient(ellipse 760px 460px at 82% 8%, rgba(76,194,203,.16), transparent 60%),
    radial-gradient(ellipse 620px 520px at 6% 84%, rgba(242,208,138,.10), transparent 62%),
    linear-gradient(168deg,#081226 0%,#0c2337 48%,#0f3543 100%);
  background-attachment:fixed;
  color:var(--night-ink);
  --line:rgba(242,208,138,.22);
}
body.t-sea .mod{
  background:linear-gradient(145deg, rgba(255,255,255,.12), rgba(255,255,255,.04));
  border:1px solid rgba(255,255,255,.18);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.28), 0 20px 44px -26px rgba(0,0,0,.7);
}
body.t-sea .mod h3{color:var(--night-ink);}
body.t-sea .mod p{color:var(--night-muted);}
body.t-sea .mod .num{color:var(--gold-light);opacity:.9;}
body.t-sea .mod .res{background:rgba(76,194,203,.14);border-color:rgba(143,227,233,.22);color:#bfe9ee;}
body.t-sea .mod .mat span{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.16);color:var(--night-muted);}
body.t-sea .next p,body.t-sea .card p{color:var(--night-muted);}
body.t-sea .foot.light{border-top-color:rgba(255,255,255,.12);}
body.t-sea .foot.light a,body.t-sea .foot.light p{color:var(--night-muted);}
body.t-sea .foot.light a:hover{color:var(--gold-light);}
body.t-sea .foot.light h4,body.t-sea .foot.light .brand{color:var(--night-ink);}
body.t-sea .foot.light .brand{color:var(--gold-light);}
body.t-sea .small{color:#a4b3bd;}

/* шапка подхватывает фон своей страницы, а не общий кремовый */
body.t-white .nav{background:rgba(255,255,255,.78);}
body.t-ocean .nav{background:rgba(247,253,254,.8);}
body.t-leaf  .nav{background:rgba(251,255,248,.8);}
body.t-premium .nav{background:rgba(252,251,248,.8);}
body.t-sea .nav{background:rgba(9,20,38,.6);border-bottom-color:rgba(255,255,255,.12);}

/* ── мобильное меню на весь экран ─────────────────────────────── */
.mobile-menu{
  position:fixed;inset:0;z-index:70;
  display:none;flex-direction:column;justify-content:center;gap:.2rem;
  padding:5rem clamp(1.5rem,7vw,3rem) 3rem;border-bottom:0;
  background:rgba(255,255,255,.97);
  backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  overflow-y:auto;
}
.mobile-menu.open{display:flex;}
.mobile-menu a{
  padding:.95rem 0;font-family:var(--sans);font-weight:500;font-size:.95rem;
  letter-spacing:.14em;text-transform:uppercase;color:var(--ink);
  border-bottom:1px solid var(--line);
}
.mobile-menu a:last-child{border-bottom:0;}
.mobile-menu .mm-close{
  position:absolute;top:1.1rem;right:1.2rem;width:44px;height:44px;border-radius:14px;
  border:1px solid var(--line);background:rgba(255,255,255,.7);color:var(--ink-soft);
  font-size:1.2rem;line-height:1;cursor:pointer;
}
body.t-white .mobile-menu{background:rgba(255,255,255,.97);}
body.t-ocean .mobile-menu{background:rgba(247,253,254,.97);}
body.t-leaf  .mobile-menu{background:rgba(251,255,248,.97);}
body.t-premium .mobile-menu{background:rgba(252,251,248,.97);}
body.t-sea .mobile-menu,body.night .mobile-menu{background:rgba(9,17,32,.97);}
body.t-sea .mobile-menu a,body.night .mobile-menu a{color:var(--night-ink);border-bottom-color:rgba(255,255,255,.14);}
body.t-sea .mobile-menu .mm-close,body.night .mobile-menu .mm-close{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.2);color:var(--night-ink);}
body.menu-open{overflow:hidden;}

/* ── маршрут жизни (астропаспорт) ─────────────────────────────── */
.route{position:relative;display:grid;gap:0;margin-top:1.4rem;}
.route .rp{
  position:relative;display:grid;grid-template-columns:auto 1fr;gap:1.2rem;
  padding:0 0 1.6rem 0;
}
.route .rp:last-child{padding-bottom:0;}
.route .dot{
  width:18px;height:18px;border-radius:50%;flex:none;margin-top:.35rem;
  background:linear-gradient(145deg,#8fe3e9,#0f8291);
  box-shadow:0 0 0 5px rgba(76,194,203,.18);
  position:relative;z-index:2;
}
.route .rp::before{
  content:'';position:absolute;left:8px;top:1.4rem;bottom:-.2rem;width:2px;
  background:repeating-linear-gradient(to bottom,rgba(15,130,145,.5) 0 6px,transparent 6px 12px);
}
.route .rp:last-child::before{display:none;}
.route h4{font-family:var(--serif-kicker);font-weight:400;font-size:1.12rem;color:var(--ink);margin-bottom:.2rem;}
.route p{font-size:.94rem;color:var(--ink-soft);}
.route .tag{font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-deep);display:block;margin-bottom:.15rem;}

/* ===================================================================
   .t-tactic — Астротактика: графит, бронза, деловая сетка
=================================================================== */
body.t-tactic{
  background:
    radial-gradient(ellipse 900px 600px at 86% -8%, rgba(169,126,63,.14), transparent 62%),
    radial-gradient(ellipse 700px 520px at 0% 36%, rgba(31,36,48,.07), transparent 60%),
    #fcfcfb;
  --gold:#a97e3f; --gold-light:#d0a863; --gold-deep:#6f5222; --gold-wash:#f3e9d6;
  --ink:#1f2430; --ink-soft:#39404f; --muted:#666e7d; --dim:#98a0ae;
  --line:rgba(40,46,60,.16);
}
body.t-tactic .nav{background:rgba(252,252,251,.82);}
body.t-tactic .mobile-menu{background:rgba(252,252,251,.97);}
body.t-tactic .btn-gold{color:#2a1f0a;}
.grid-bg{
  position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.5;
  background-image:linear-gradient(rgba(40,46,60,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(40,46,60,.06) 1px,transparent 1px);
  background-size:64px 64px;
  mask-image:radial-gradient(ellipse 70% 60% at 70% 20%,#000,transparent 75%);
  -webkit-mask-image:radial-gradient(ellipse 70% 60% at 70% 20%,#000,transparent 75%);
}
.spheres{display:grid;grid-template-columns:repeat(4,1fr);gap:.7rem;}
@media (max-width:900px){.spheres{grid-template-columns:repeat(3,1fr);}}
@media (max-width:620px){.spheres{grid-template-columns:repeat(2,1fr);}}
.sph{
  padding:.95rem .9rem;border-radius:14px;text-align:center;font-size:.9rem;
  background:linear-gradient(145deg,rgba(255,255,255,.9),rgba(248,246,242,.7));
  border:1px solid var(--line);color:var(--ink-soft);
}
.sph b{display:block;font-family:var(--serif-kicker);font-weight:400;font-size:1.02rem;color:var(--ink);margin-bottom:.1rem;}

/* контраст текста на кнопках: на светлом золоте - тёмный, на цветных - белый */
body.t-ocean .btn-gold,
body.t-leaf .btn-gold,
body.t-tactic .btn-gold{color:#ffffff;text-shadow:0 1px 1px rgba(0,0,0,.18);}
body.t-ocean .btn-glass-light,
body.t-leaf .btn-glass-light,
body.t-tactic .btn-glass-light{color:var(--gold-deep);}
.night .btn-glass,.t-sea .btn-glass{color:#f6eddc;}
.deep .btn-glass{color:#f2fdff;}

/* цветные кнопки делаем достаточно тёмными, чтобы белый текст читался */
body.t-ocean .btn-gold{background:linear-gradient(135deg,#0f7f8d 0%,#08424c 100%);}
body.t-leaf .btn-gold{background:linear-gradient(135deg,#1b7a45 0%,#0d4f2b 100%);}
body.t-tactic .btn-gold{background:linear-gradient(135deg,#8a6a33 0%,#4f3c19 100%);}

/* ===================================================================
   .t-book — Книга года: бумага, вино, золото
=================================================================== */
body.t-book{
  background:
    radial-gradient(ellipse 900px 620px at 85% -8%, rgba(232,192,122,.22), transparent 62%),
    radial-gradient(ellipse 760px 540px at 2% 34%, rgba(184,135,63,.14), transparent 60%),
    #fdf7ec;
  --gold:#b8873f; --gold-light:#e8c07a; --gold-deep:#7d5520; --gold-wash:#f7ead2;
  --ink:#2a2118; --ink-soft:#4a3c2c; --muted:#7a6a55; --line:rgba(150,110,50,.22);
}
body.t-book .nav{background:rgba(253,247,236,.84);}
body.t-book .mobile-menu{background:rgba(253,247,236,.97);}
body.t-book .btn-gold{background:linear-gradient(135deg,#f0d49a 0%,#c39a4e 100%);color:#2e2110;text-shadow:none;}
body.t-book .kicker .kt{color:#7d5520;}
body.t-book .eyebrow{color:#7d5520;}

/* тарифы книги */
.bt{display:grid;grid-template-columns:repeat(3,1fr);gap:1.1rem;align-items:stretch;}
@media (max-width:900px){.bt{grid-template-columns:1fr;}}
.bt .b{padding:1.7rem 1.5rem;display:flex;flex-direction:column;gap:.5rem;position:relative;}
.bt .b h3{font-family:var(--serif-kicker);font-weight:400;font-size:1.35rem;}
.bt .b .who{font-size:.85rem;color:var(--muted);}
.bt .b .sum{font-family:var(--serif-kicker);font-size:2rem;color:var(--gold-deep);line-height:1.1;margin-top:.3rem;}
.bt .b ul{list-style:none;display:grid;gap:.45rem;margin:.8rem 0 1rem;font-size:.93rem;color:var(--ink-soft);}
.bt .b ul li{display:grid;grid-template-columns:auto 1fr;gap:.6rem;}
.bt .b ul li::before{content:'·';color:var(--gold);}
.bt .b .btn{margin-top:auto;}
.bt .b.mid{border-color:rgba(168,32,58,.45);box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 26px 50px -26px rgba(120,20,40,.4);}
.stage-note{
  display:inline-block;padding:.5rem 1.1rem;border-radius:999px;font-size:.88rem;
  background:var(--gold-wash);border:1px solid var(--line);color:var(--gold-deep);
}
/* колесо года */
.wheel{max-width:320px;margin:0 auto;}
.wheel .m{font-family:var(--sans);font-size:9px;fill:#7d5520;letter-spacing:.04em;}



/* тёмная страница целиком: звёзды фоном, без overflow:hidden на body */
body.t-sea::before{
  content:'';position:fixed;inset:0;z-index:0;pointer-events:none;
  background-image:
    radial-gradient(1.6px 1.6px at 12% 18%, rgba(255,238,203,.95), transparent 60%),
    radial-gradient(1.2px 1.2px at 27% 62%, rgba(255,238,203,.75), transparent 60%),
    radial-gradient(1.8px 1.8px at 41% 26%, rgba(255,255,255,.9), transparent 60%),
    radial-gradient(1.1px 1.1px at 55% 71%, rgba(255,238,203,.7), transparent 60%),
    radial-gradient(1.5px 1.5px at 68% 14%, rgba(255,238,203,.85), transparent 60%),
    radial-gradient(1.2px 1.2px at 79% 48%, rgba(255,255,255,.8), transparent 60%),
    radial-gradient(1.7px 1.7px at 88% 78%, rgba(255,238,203,.9), transparent 60%),
    radial-gradient(1px 1px at 33% 88%, rgba(255,255,255,.6), transparent 60%),
    radial-gradient(1.3px 1.3px at 7% 52%, rgba(255,255,255,.7), transparent 60%),
    radial-gradient(1.4px 1.4px at 92% 30%, rgba(255,255,255,.75), transparent 60%);
  animation:twinkle 7s ease-in-out infinite alternate;
}
@media (prefers-reduced-motion:reduce){body.t-sea::before{animation:none;opacity:.8;}}
body.t-sea h1,body.t-sea h2,body.t-sea h3,body.t-sea h4{color:var(--night-ink);}
body.t-sea p,body.t-sea .lead{color:var(--night-muted);}
body.t-sea .kicker .kt{color:var(--gold-light);}
body.t-sea .kicker .kl{background:linear-gradient(90deg,transparent,var(--gold-light));}
body.t-sea .kicker .kr{background:linear-gradient(270deg,transparent,var(--gold-light));}
body.t-sea .eyebrow{color:var(--gold-light);}
body.t-sea .glass{background:linear-gradient(145deg, rgba(255,255,255,.14), rgba(255,255,255,.05));border:1px solid rgba(255,255,255,.2);box-shadow:inset 0 1px 0 rgba(255,255,255,.3), 0 20px 44px -26px rgba(0,0,0,.7);}
body.t-sea .card.glass p,body.t-sea .sit li{color:var(--night-muted);}
body.t-sea .sit li::before{color:var(--gold-light);}
body.t-sea .faq summary{color:var(--night-ink);}
body.t-sea .faq p{color:var(--night-muted);}
body.t-sea .faq details{border-bottom-color:rgba(255,255,255,.14);}
body.t-sea .steps li::before{color:var(--gold-light);border-color:rgba(255,255,255,.22);background:rgba(255,255,255,.07);}
body.t-sea .steps p{color:var(--night-muted);}
body.t-sea .h-small{color:var(--night-ink);}
body.t-sea .badge{color:var(--gold-light);border-color:rgba(242,208,138,.4);background:rgba(255,255,255,.07);}
body.t-sea .btn-glass{color:var(--night-ink);}
body.t-sea .next p{color:var(--night-muted);}

/* ===================================================================
   .t-lux — Астротактика: графит-баклажан и шампанское золото
=================================================================== */
body.t-lux{
  background:
    radial-gradient(ellipse 820px 520px at 84% 6%, rgba(201,168,106,.16), transparent 60%),
    radial-gradient(ellipse 700px 560px at 4% 82%, rgba(109,34,51,.22), transparent 62%),
    linear-gradient(168deg,#141119 0%,#1b1723 52%,#221b2b 100%);
  background-attachment:fixed;
  color:#f3ece0;
  --gold:#c9a86a; --gold-light:#f0dcae; --gold-deep:#8a6c32; --gold-wash:rgba(201,168,106,.14);
  --night-ink:#f6efe2; --night-muted:#c8bcab;
  --line:rgba(201,168,106,.26);
}
body.t-lux h1,body.t-lux h2,body.t-lux h3,body.t-lux h4{color:#f6efe2;}
body.t-lux p,body.t-lux .lead{color:#c8bcab;}
body.t-lux .small{color:#a99e8f;}
body.t-lux .eyebrow,body.t-lux .kicker .kt{color:#e6cf9b;}
body.t-lux .kicker .kl{background:linear-gradient(90deg,transparent,#c9a86a);}
body.t-lux .kicker .kr{background:linear-gradient(270deg,transparent,#c9a86a);}
body.t-lux .nav{background:rgba(20,17,25,.6);border-bottom-color:rgba(201,168,106,.2);}
body.t-lux .brand{color:#e6cf9b;}
body.t-lux .brand span,body.t-lux .nav-links a{color:#c8bcab;}
body.t-lux .burger{background:rgba(255,255,255,.06);border-color:rgba(201,168,106,.3);}
body.t-lux .burger span,body.t-lux .burger span::before,body.t-lux .burger span::after{background:#e6cf9b;}
body.t-lux .mobile-menu{background:rgba(20,17,25,.97);}
body.t-lux .mobile-menu a{color:#f3ece0;border-bottom-color:rgba(201,168,106,.2);}
body.t-lux .mobile-menu .mm-close{background:rgba(255,255,255,.07);border-color:rgba(201,168,106,.3);color:#e6cf9b;}
body.t-lux .glass-light,body.t-lux .glass{
  background:linear-gradient(145deg, rgba(255,255,255,.1), rgba(255,255,255,.03));
  border:1px solid rgba(201,168,106,.24);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14), 0 26px 54px -30px rgba(0,0,0,.8);
}
body.t-lux .card p,body.t-lux .next p,body.t-lux .sit li{color:#c8bcab;}
body.t-lux .sit li::before{color:#e6cf9b;}
body.t-lux .btn-gold{background:linear-gradient(135deg,#f0dcae 0%,#c9a86a 100%);color:#2b2113;text-shadow:none;}
body.t-lux .btn-glass-light{background:linear-gradient(145deg, rgba(255,255,255,.12), rgba(255,255,255,.04));border-color:rgba(201,168,106,.3);color:#f3ece0;}
body.t-lux .faq summary{color:#f6efe2;}
body.t-lux .faq p{color:#c8bcab;}
body.t-lux .faq details{border-bottom-color:rgba(201,168,106,.2);}
body.t-lux .steps li::before{color:#e6cf9b;border-color:rgba(201,168,106,.3);background:rgba(255,255,255,.06);}
body.t-lux .steps p{color:#c8bcab;}
body.t-lux .h-small{color:#f6efe2;}
body.t-lux .badge{color:#e6cf9b;border-color:rgba(201,168,106,.35);background:rgba(255,255,255,.06);}
body.t-lux .foot.light{border-top-color:rgba(201,168,106,.22);}
body.t-lux .foot.light a,body.t-lux .foot.light p{color:#c8bcab;}
body.t-lux .foot.light a:hover{color:#f0dcae;}
body.t-lux .foot.light h4{color:#f6efe2;}
body.t-lux .foot.light .brand{color:#e6cf9b;}
body.t-lux .foot.light .legal{color:#9b9081;}
body.t-lux .sph{
  background:linear-gradient(145deg, rgba(255,255,255,.08), rgba(255,255,255,.03));
  border:1px solid rgba(201,168,106,.22);color:#c8bcab;
}
body.t-lux .sph b{color:#f6efe2;}
.lux-img{position:absolute;z-index:0;pointer-events:none;}
.lux-img.loupe{top:-40px;right:-50px;width:390px;opacity:.85;}
.lux-img.turn{width:280px;margin:0 auto;position:static;opacity:.95;}
@media (max-width:900px){.lux-img.loupe{width:230px;top:-20px;right:-60px;opacity:.6;}}

/* плашка-бейдж не должна прилипать к заголовку под ней */
.badge{margin-bottom:1rem;}
.badge + h3,.badge + h2{margin-top:0;}
.next .badge{margin-bottom:.85rem;}

/* короткая надпись на кнопке шапки, когда экран узкий */
.only-narrow{display:none;}
@media (max-width:700px){
  .only-wide{display:none;}
  .only-narrow{display:inline;}
}


/* обложка Книги года: картинка как есть, текст под ней */
.cover{background:#1a120c;position:relative;}
.cover-art{
  display:block;width:100%;height:auto;max-height:72vh;object-fit:cover;object-position:center;
}
@media (max-width:760px){ .cover-art{aspect-ratio:4/5;height:auto;max-height:none;object-position:50% 36%;} }
.cover-under{
  position:relative;z-index:2;padding-block:clamp(1.6rem,4vw,2.6rem) clamp(1.2rem,3vw,2rem);
}
.cover-under .lead{max-width:56ch;}
.cover-line{
  margin:.9rem 0 0;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-deep);
}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;}

/* ── обложка: текст и кнопки прямо на картинке ──────────────── */
.cover{overflow:hidden;}
.cover-wrap{position:relative;}
.cover-fade{
  position:absolute;left:0;right:0;bottom:0;height:52%;z-index:1;pointer-events:none;
  background:linear-gradient(180deg, rgba(24,15,8,0) 0%, rgba(24,15,8,.35) 32%, rgba(24,15,8,.86) 68%, rgba(26,17,9,.97) 100%);
}
.cover-cta{position:absolute;left:0;right:0;bottom:0;z-index:2;padding-bottom:clamp(1.3rem,3.2vw,2.6rem);}
.cover-cta .lead{color:#f0e3c9;max-width:54ch;}
.cover-cta .cover-line{color:#e8c07a;margin-top:.7rem;}
.cover-cta .btn-glass{color:#fbf3e3;border-color:rgba(232,192,122,.5);background:linear-gradient(145deg,rgba(255,255,255,.18),rgba(255,255,255,.06));}
@media (max-width:760px){
  /* на телефоне обложка остаётся картинкой, текст и кнопки - под ней */
  .cover{background:transparent;}
  .cover-fade{display:none;}
  .cover-cta{position:static;padding:1.2rem 0 0;}
  .cover-cta .lead{color:var(--ink-soft);font-size:1rem;}
  .cover-cta .cover-line{color:var(--gold-deep);}
  .cover-cta .btn-glass{color:var(--ink-soft);border-color:var(--line);background:linear-gradient(145deg,rgba(255,255,255,.85),rgba(255,255,255,.55));}
}

/* ── золотые оправы для карточек Книги года ─────────────────── */
body.t-book .card,
body.t-book .glass-light,
body.t-book .next,
body.t-book .bt .b,
body.t-book .quote{
  background:linear-gradient(150deg,#fffaf0 0%,#fbf1dd 100%);
  border:1px solid rgba(184,135,63,.42);
  box-shadow:0 20px 44px -28px rgba(120,80,25,.6), inset 0 1px 0 #fff;
}
body.t-book .card{position:relative;overflow:hidden;}
body.t-book .card::before{
  content:'';position:absolute;left:1.2rem;right:1.2rem;top:0;height:2px;
  background:linear-gradient(90deg,transparent,#e8c07a 35%,#b8873f 65%,transparent);
}
body.t-book .bt .b.mid{border-color:rgba(184,135,63,.8);box-shadow:0 30px 60px -28px rgba(120,80,25,.75), inset 0 1px 0 #fff;}

/* оглавление книги: номер + строка */
.toc-book{list-style:none;display:grid;gap:0;counter-reset:b;}
.toc-book li{
  counter-increment:b;display:grid;grid-template-columns:auto 1fr;gap:1.1rem;align-items:baseline;
  padding:1.05rem 0;border-bottom:1px solid rgba(184,135,63,.3);
}
.toc-book li:last-child{border-bottom:0;}
.toc-book li::before{
  content:counter(b,decimal-leading-zero);
  font-family:var(--serif-kicker);font-size:1rem;color:#b8873f;
}
.toc-book b{font-family:var(--serif-kicker);font-weight:400;font-size:1.14rem;color:var(--ink);display:block;margin-bottom:.15rem;}
.toc-book span{font-size:.95rem;color:var(--ink-soft);line-height:1.62;}

/* рамка с книгой */
.book-frame{
  position:relative;border-radius:var(--radius-lg);overflow:hidden;
  border:1px solid rgba(184,135,63,.5);box-shadow:0 30px 60px -30px rgba(90,55,15,.7);
}
.book-frame img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 88%;aspect-ratio:4/3;}
.book-frame::after{
  content:'';position:absolute;inset:8px;border:1px solid rgba(232,192,122,.45);border-radius:calc(var(--radius-lg) - 8px);pointer-events:none;
}
/* золотой орнамент-разделитель */
.orn{display:flex;align-items:center;justify-content:center;gap:.8rem;margin:clamp(1.6rem,4vw,2.6rem) 0;color:#b8873f;}
.orn::before,.orn::after{content:'';height:1px;width:min(120px,22vw);background:linear-gradient(90deg,transparent,#d9ae63);}
.orn::after{background:linear-gradient(270deg,transparent,#d9ae63);}
.orn span{font-size:.9rem;letter-spacing:.3em;}

/* ── нарисованный телефон с приложением ───────────────────────── */
.phone{
  width:min(320px,78vw);margin:0 auto;padding:9px;border-radius:46px;
  background:linear-gradient(160deg,#4a4160 0%,#241c31 42%,#120e1a 100%);
  border:1px solid rgba(255,255,255,.16);
  box-shadow:0 50px 90px -34px rgba(0,0,0,.85), inset 0 1px 0 rgba(255,255,255,.22);
  position:relative;
}
.phone::after{
  content:'';position:absolute;inset:9px;border-radius:38px;pointer-events:none;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);
}
.phone-screen{
  border-radius:38px;overflow:hidden;background:linear-gradient(170deg,#1d1727,#171222);
  position:relative;display:flex;flex-direction:column;
}
.phone-top{
  display:flex;align-items:center;justify-content:space-between;
  padding:14px 14px 8px;font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:#bda98f;
}
.phone-top b{font-family:var(--serif-kicker);font-weight:400;font-size:.8rem;letter-spacing:.02em;text-transform:none;color:#f6eddc;}
.phone-body{padding:0 12px 10px;display:grid;gap:9px;}
.phone-week{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;}
.phone-week div{border-radius:10px;padding:5px 0 6px;text-align:center;font-size:.55rem;color:#fff;line-height:1.2;}
.phone-week div b{display:block;font-size:.74rem;font-weight:500;}
.phone-week .on{outline:1.5px solid rgba(255,255,255,.9);outline-offset:1px;}
.phone-card{border-radius:16px;padding:12px 12px 13px;color:#23401d;}
.phone-card .d{font-family:var(--serif-kicker);font-size:1.05rem;line-height:1.1;}
.phone-card .h{font-size:.7rem;margin-top:.2rem;font-weight:500;}
.phone-card .lv{display:inline-block;margin-top:.4rem;font-size:.52rem;letter-spacing:.1em;text-transform:uppercase;background:rgba(0,0,0,.15);border-radius:999px;padding:.12rem .5rem;}
.phone-card p{margin-top:.45rem;font-size:.63rem;line-height:1.45;opacity:.92;}
.phone-note{background:rgba(255,255,255,.07);border-radius:13px;padding:8px 10px;font-size:.6rem;line-height:1.4;color:#c9bcae;}
.phone-note b{color:#f6eddc;font-weight:500;}
.phone-tabs{
  margin-top:auto;display:grid;grid-template-columns:repeat(5,1fr);gap:2px;
  padding:8px 4px 11px;background:rgba(255,255,255,.05);border-top:1px solid rgba(255,255,255,.08);
}
.phone-tabs span{display:grid;gap:2px;justify-items:center;font-size:.47rem;letter-spacing:.04em;color:#8e8275;}
.phone-tabs span i{font-style:normal;font-size:.78rem;line-height:1;opacity:.75;}
.phone-tabs .on{color:#f2d08a;}
.phone-tabs .on i{opacity:1;}
.phone-glow{
  position:absolute;inset:-14% -22%;z-index:-1;pointer-events:none;
  background:radial-gradient(ellipse at 50% 45%, rgba(226,169,92,.3), transparent 62%);
  filter:blur(18px);
}

/* текст внутри цветной карточки телефона всегда тёмный, а не серый ночной */
.phone-card p,.phone-card .d,.phone-card .h,.phone-card .lv{color:#23401d;}
.phone-card.c-yellow p,.phone-card.c-yellow .d,.phone-card.c-yellow .h{color:#3c2c05;}
.phone-card.c-red p,.phone-card.c-red .d,.phone-card.c-red .h,
.phone-card.c-pink p,.phone-card.c-pink .d,.phone-card.c-pink .h,
.phone-card.c-green p,.phone-card.c-green .d,.phone-card.c-green .h{color:#fff;}
.mock-day p,.show-item .mock-day .d,.show-item .mock-day .h{color:inherit;}

/* ===================================================================
   .t-cosmos — Астропаспорт: космос обложки, туманность и звёзды
=================================================================== */
body.t-cosmos{
  background:
    radial-gradient(ellipse 820px 560px at 78% 6%, rgba(34,195,214,.20), transparent 62%),
    radial-gradient(ellipse 700px 520px at 14% 24%, rgba(232,151,58,.16), transparent 60%),
    radial-gradient(ellipse 900px 620px at 60% 96%, rgba(47,127,212,.22), transparent 64%),
    radial-gradient(ellipse 620px 480px at 96% 70%, rgba(196,60,143,.14), transparent 62%),
    linear-gradient(170deg,#070912 0%,#0b1020 45%,#0a0d1b 100%);
  background-attachment:fixed;
  color:#eef4ff;
  --gold:#2fb6cf; --gold-light:#7fe3f0; --gold-deep:#1b8ba3; --gold-wash:rgba(47,182,207,.14);
  --night-ink:#f2f7ff; --night-muted:#bcc8de;
  --ink:#f2f7ff; --ink-soft:#cfd9ec; --muted:#9fb0cb;
  --line:rgba(127,227,240,.26);
}
body.t-cosmos::before{
  content:'';position:fixed;inset:0;z-index:0;pointer-events:none;
  background-image:
    radial-gradient(1.6px 1.6px at 14% 20%, rgba(255,255,255,.95), transparent 60%),
    radial-gradient(1.2px 1.2px at 29% 64%, rgba(190,230,255,.8), transparent 60%),
    radial-gradient(1.8px 1.8px at 43% 28%, rgba(255,255,255,.9), transparent 60%),
    radial-gradient(1.1px 1.1px at 57% 73%, rgba(255,214,170,.75), transparent 60%),
    radial-gradient(1.5px 1.5px at 70% 16%, rgba(255,255,255,.85), transparent 60%),
    radial-gradient(1.2px 1.2px at 81% 50%, rgba(180,240,255,.8), transparent 60%),
    radial-gradient(1.7px 1.7px at 90% 80%, rgba(255,255,255,.9), transparent 60%),
    radial-gradient(1px 1px at 35% 90%, rgba(255,255,255,.6), transparent 60%),
    radial-gradient(1.3px 1.3px at 9% 54%, rgba(255,255,255,.7), transparent 60%),
    radial-gradient(1.4px 1.4px at 94% 32%, rgba(255,240,210,.75), transparent 60%);
  animation:twinkle 8s ease-in-out infinite alternate;
}
@media (prefers-reduced-motion:reduce){body.t-cosmos::before{animation:none;opacity:.85;}}
body.t-cosmos h1,body.t-cosmos h2,body.t-cosmos h3,body.t-cosmos h4{color:#f4f8ff;}
body.t-cosmos p,body.t-cosmos .lead{color:#c3d0e6;}
body.t-cosmos .small{color:#93a3bd;}
body.t-cosmos .eyebrow,body.t-cosmos .kicker .kt{color:#7fe3f0;}
body.t-cosmos .kicker .kl{background:linear-gradient(90deg,transparent,#2fb6cf);}
body.t-cosmos .kicker .kr{background:linear-gradient(270deg,transparent,#2fb6cf);}
body.t-cosmos .nav{background:rgba(7,9,18,.62);border-bottom-color:rgba(127,227,240,.2);}
body.t-cosmos .brand{color:#7fe3f0;}
body.t-cosmos .brand span,body.t-cosmos .nav-links a{color:#c3d0e6;}
body.t-cosmos .burger{background:rgba(255,255,255,.07);border-color:rgba(127,227,240,.3);}
body.t-cosmos .burger span,body.t-cosmos .burger span::before,body.t-cosmos .burger span::after{background:#7fe3f0;}
body.t-cosmos .mobile-menu{background:rgba(7,9,18,.97);}
body.t-cosmos .mobile-menu a{color:#f2f7ff;border-bottom-color:rgba(127,227,240,.2);}
body.t-cosmos .mobile-menu .mm-close{background:rgba(255,255,255,.08);border-color:rgba(127,227,240,.3);color:#7fe3f0;}
body.t-cosmos .glass-light,body.t-cosmos .glass,body.t-cosmos .card{
  background:linear-gradient(145deg, rgba(255,255,255,.1), rgba(255,255,255,.035));
  border:1px solid rgba(127,227,240,.22);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16), 0 28px 56px -30px rgba(0,0,0,.9);
}
body.t-cosmos .card p,body.t-cosmos .next p,body.t-cosmos .sit li{color:#c3d0e6;}
body.t-cosmos .sit li::before{color:#7fe3f0;}
body.t-cosmos .btn-gold{background:linear-gradient(135deg,#34c6dd 0%,#176f86 100%);color:#04202a;text-shadow:none;}
body.t-cosmos .btn-glass-light,body.t-cosmos .btn-glass{
  background:linear-gradient(145deg, rgba(255,255,255,.14), rgba(255,255,255,.05));
  border-color:rgba(127,227,240,.35);color:#eef4ff;
}
body.t-cosmos .faq summary{color:#f2f7ff;}
body.t-cosmos .faq p{color:#c3d0e6;}
body.t-cosmos .faq details{border-bottom-color:rgba(127,227,240,.2);}
body.t-cosmos .toc-l li{
  background:linear-gradient(145deg, rgba(255,255,255,.08), rgba(255,255,255,.03));
  border-color:rgba(127,227,240,.22);box-shadow:0 20px 40px -28px rgba(0,0,0,.9);
}
body.t-cosmos .toc-l b{color:#f2f7ff;}
body.t-cosmos .toc-l span{color:#c3d0e6;}
body.t-cosmos .toc-l li::before{color:#7fe3f0;}
body.t-cosmos .route h4{color:#f2f7ff;}
body.t-cosmos .route p{color:#c3d0e6;}
body.t-cosmos .route .tag{color:#7fe3f0;}
body.t-cosmos .route .dot{background:linear-gradient(145deg,#9af1fb,#1b8ba3);box-shadow:0 0 0 5px rgba(47,182,207,.18);}
body.t-cosmos .route .rp::before{background:repeating-linear-gradient(to bottom,rgba(127,227,240,.5) 0 6px,transparent 6px 12px);}
body.t-cosmos .badge{color:#7fe3f0;border-color:rgba(127,227,240,.35);background:rgba(255,255,255,.06);}
body.t-cosmos .foot.light{border-top-color:rgba(127,227,240,.22);}
body.t-cosmos .foot.light a,body.t-cosmos .foot.light p{color:#c3d0e6;}
body.t-cosmos .foot.light a:hover{color:#7fe3f0;}
body.t-cosmos .foot.light h4{color:#f2f7ff;}
body.t-cosmos .foot.light .brand{color:#7fe3f0;}
body.t-cosmos .foot.light .legal{color:#8a98b0;}
body.t-cosmos .deep{
  background:linear-gradient(160deg,rgba(10,16,34,.9) 0%,rgba(16,46,74,.85) 55%,rgba(10,20,40,.9) 100%);
  border-block:1px solid rgba(127,227,240,.18);
}
body.t-cosmos .deep .depth-q{color:#eaf6ff;}
body.t-cosmos .vs .card .w{color:#7fe3f0;}

/* ── книга: обложка в объёме ──────────────────────────────────── */
.book3d{perspective:1600px;display:flex;justify-content:center;}
.book3d .b3{
  position:relative;width:min(300px,74vw);transform:rotateY(-16deg) rotateX(3deg);
  transform-style:preserve-3d;transition:transform .6s ease;
}
.book3d:hover .b3{transform:rotateY(-9deg) rotateX(2deg);}
.book3d .b3 img{
  display:block;width:100%;height:auto;border-radius:4px 12px 12px 4px;
  box-shadow:0 50px 90px -30px rgba(0,0,0,.9), 0 0 60px -18px rgba(47,182,207,.45);
}
/* корешок */
.book3d .b3::before{
  content:'';position:absolute;left:-14px;top:1.2%;bottom:1.2%;width:16px;border-radius:4px 0 0 4px;
  background:linear-gradient(90deg,#05070d,#131a2c 60%,#0a0f1c);
  transform:rotateY(32deg);transform-origin:right center;
  box-shadow:inset -2px 0 6px rgba(0,0,0,.7);
}
/* обрез страниц */
.book3d .b3::after{
  content:'';position:absolute;right:-7px;top:2%;bottom:2%;width:8px;border-radius:0 3px 3px 0;
  background:repeating-linear-gradient(to bottom,#e8eef7 0 2px,#c3cedd 2px 4px);
  transform:rotateY(-26deg);transform-origin:left center;opacity:.85;
}
.book3d .shine{
  position:absolute;inset:0;border-radius:4px 12px 12px 4px;pointer-events:none;
  background:linear-gradient(115deg, rgba(255,255,255,.26) 0%, rgba(255,255,255,0) 32%, rgba(255,255,255,0) 68%, rgba(255,255,255,.1) 100%);
}
.book-floor{
  width:min(320px,76vw);height:28px;margin:18px auto 0;border-radius:50%;
  background:radial-gradient(ellipse at center, rgba(47,182,207,.35), transparent 70%);filter:blur(8px);
}
@media (max-width:900px){.book3d .b3{width:min(240px,62vw);transform:rotateY(-12deg);}}

/* ── КОД: стопка листов вместо книги (это не том, а короткий документ) ── */
.sheets{position:relative;width:min(300px,72vw);margin:0 auto;}
.sheets .sh{
  position:absolute;inset:0;border-radius:14px;background:linear-gradient(145deg,#ffffff,#e9f4e3);
  border:1px solid rgba(60,110,60,.26);box-shadow:0 22px 44px -24px rgba(30,70,35,.55);
}
.sheets .sh1{transform:rotate(-6.5deg) translate(-16px,12px);}
.sheets .sh2{transform:rotate(4.5deg) translate(14px,8px);}
.sheets .sh3{transform:rotate(-2deg) translate(-5px,4px);}
.sheets .top{
  position:relative;display:block;width:100%;border-radius:14px;
  box-shadow:0 34px 60px -28px rgba(25,60,30,.6), 0 0 40px -16px rgba(120,200,120,.45);
  border:1px solid rgba(255,255,255,.7);
}
.sheets .count{
  position:absolute;right:-14px;bottom:18px;z-index:3;
  background:linear-gradient(145deg,#ffffff,#eef7ea);border:1px solid rgba(60,120,60,.25);
  border-radius:999px;padding:.4rem .9rem;font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;
  color:#1f6b3c;box-shadow:0 14px 28px -16px rgba(30,70,35,.6);white-space:nowrap;
}
@media (max-width:900px){.sheets{width:min(250px,64vw);} .sheets .count{right:-6px;}}

/* КОД: светлее и воздушнее, под обложку */
body.t-leaf{
  background:
    radial-gradient(ellipse 820px 540px at 82% -6%, rgba(154,222,138,.3), transparent 62%),
    radial-gradient(ellipse 700px 520px at 6% 28%, rgba(226,240,160,.26), transparent 60%),
    radial-gradient(ellipse 760px 560px at 60% 100%, rgba(120,200,150,.18), transparent 62%),
    #f7fcf4;
}
body.t-leaf .aurora i:nth-child(1){background:radial-gradient(circle,rgba(154,222,138,.5),transparent 65%);}
body.t-leaf .aurora i:nth-child(2){background:radial-gradient(circle,rgba(232,240,150,.45),transparent 65%);}
body.t-leaf .aurora i:nth-child(3){background:radial-gradient(circle,rgba(120,200,150,.4),transparent 65%);}

/* главная фраза первого экрана - крупным капсом, чтобы цепляла */
.hero h1,.cover-cta h1:not(.sr-only){
  font-family:var(--sans);font-weight:600;text-transform:uppercase;
  font-size:clamp(1.75rem,4.3vw,3.05rem);line-height:1.08;letter-spacing:.005em;
  color:inherit;
}
@media (max-width:420px){ .hero h1{font-size:1.6rem;} }

/* ── свой значок у каждого пункта меню, чтобы не сливались ───── */
.mobile-menu a{display:flex;align-items:center;gap:.85rem;}
.mobile-menu a::before{
  content:'·';flex:none;width:1.5em;text-align:center;
  font-size:1.05em;line-height:1;color:var(--gold);opacity:.95;
  font-family:var(--serif);text-transform:none;
}
/* продукты */
.mobile-menu a[href="/astropasport"]::before{content:'❖';}
.mobile-menu a[href="/consultations"]::before{content:'✦';}
.mobile-menu a[href="/kod"]::before{content:'✧';}
.mobile-menu a[href="/astrovkus"]::before{content:'☾';}
.mobile-menu a[href="/starsonhand_start"]::before{content:'✶';}
.mobile-menu a[href="/kniga-goda"]::before{content:'✵';}
.mobile-menu a[href="/astrotaktika"]::before{content:'⟡';}
.mobile-menu a[href^="https://put.vidhaya.ru"]::before{content:'❋';}
.mobile-menu a[href^="https://moonsign.vidhaya.ru"]::before{content:'◐';}
.mobile-menu a[href^="https://app.vidhaya.ru"]::before{content:'▣';}
.mobile-menu a[href^="https://t.me"]::before{content:'❯';}
.mobile-menu a[href="/"]::before{content:'✥';}
/* разделы внутри страницы */
.mobile-menu a[href="#kuda"]::before{content:'✥';}
.mobile-menu a[href="#kto"]::before,
.mobile-menu a[href="#avtor"]::before{content:'❧';}
.mobile-menu a[href="#nachalo"]::before{content:'❶';}
.mobile-menu a[href="#vnutri"]::before{content:'▣';}
.mobile-menu a[href="#chto"]::before{content:'◈';}
.mobile-menu a[href="#kanal"]::before{content:'❯';}
.mobile-menu a[href="#tarify"]::before,
.mobile-menu a[href="#cena"]::before{content:'₽';}
.mobile-menu a[href="#voprosy"]::before{content:'?';}
.mobile-menu a[href="#kak"]::before,
.mobile-menu a[href="#marshrut"]::before{content:'⇢';}
.mobile-menu a[href="#programma"]::before{content:'☰';}
.mobile-menu a[href="#kniga"]::before{content:'▤';}
.mobile-menu a[href="#glubina"]::before{content:'≋';}
.mobile-menu a[href="#sravnenie"]::before{content:'⇅';}
.mobile-menu a[href="#dlya-kogo"]::before,
.mobile-menu a[href="#komu"]::before{content:'❧';}
.mobile-menu a[href="#zayavka"]::before,
.mobile-menu a[href="#zapis"]::before{content:'✎';}

/* три значка рисуем линией, а не символом шрифта: книга, листик, палочка */
.mobile-menu a[href="/kniga-goda"]::before,
.mobile-menu a[href="/kod"]::before,
.mobile-menu a[href^="https://put.vidhaya.ru"]::before{
  content:'';height:1.15em;background-color:var(--gold);
  -webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;
  -webkit-mask-position:center;mask-position:center;
  -webkit-mask-size:1.15em 1.15em;mask-size:1.15em 1.15em;
}
/* книга */
.mobile-menu a[href="/kniga-goda"]::before{
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 6.5C9.8 4.9 7.1 4.3 4.5 4.6v12.6c2.6-.3 5.3.3 7.5 1.9 2.2-1.6 4.9-2.2 7.5-1.9V4.6c-2.6-.3-5.3.3-7.5 1.9z'/%3E%3Cpath d='M12 6.5v12.6'/%3E%3C/svg%3E");
          mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 6.5C9.8 4.9 7.1 4.3 4.5 4.6v12.6c2.6-.3 5.3.3 7.5 1.9 2.2-1.6 4.9-2.2 7.5-1.9V4.6c-2.6-.3-5.3.3-7.5 1.9z'/%3E%3Cpath d='M12 6.5v12.6'/%3E%3C/svg%3E");
}
/* листик */
.mobile-menu a[href="/kod"]::before{
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 4c0 8.8-5.4 14.5-12.6 14.5C7.4 9.7 12.8 4 20 4z'/%3E%3Cpath d='M4.5 20c2.2-4.6 5.6-8.3 9.8-10.8'/%3E%3C/svg%3E");
          mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 4c0 8.8-5.4 14.5-12.6 14.5C7.4 9.7 12.8 4 20 4z'/%3E%3Cpath d='M4.5 20c2.2-4.6 5.6-8.3 9.8-10.8'/%3E%3C/svg%3E");
}
/* волшебная палочка */
.mobile-menu a[href^="https://put.vidhaya.ru"]::before{
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 20.5 14 10'/%3E%3Cpath d='M17.4 3.2l.9 2.2 2.2.9-2.2.9-.9 2.2-.9-2.2-2.2-.9 2.2-.9z'/%3E%3Cpath d='M7 4.6l.5 1.2 1.2.5-1.2.5L7 8l-.5-1.2-1.2-.5 1.2-.5z'/%3E%3Cpath d='M20 14.6l.5 1.2 1.2.5-1.2.5-.5 1.2-.5-1.2-1.2-.5 1.2-.5z'/%3E%3C/svg%3E");
          mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 20.5 14 10'/%3E%3Cpath d='M17.4 3.2l.9 2.2 2.2.9-2.2.9-.9 2.2-.9-2.2-2.2-.9 2.2-.9z'/%3E%3Cpath d='M7 4.6l.5 1.2 1.2.5-1.2.5L7 8l-.5-1.2-1.2-.5 1.2-.5z'/%3E%3Cpath d='M20 14.6l.5 1.2 1.2.5-1.2.5-.5 1.2-.5-1.2-1.2-.5 1.2-.5z'/%3E%3C/svg%3E");
}
/* астропаспорт - круг с звездой: натальная карта */
.mobile-menu a[href="/astropasport"]::before{content:'❂';}

/* ── «Кто мы»: раскладка вместо сплошного текста ──────────────── */
.who-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(1.6rem,3.5vw,3rem);align-items:center;}
.who-grid>*{min-width:0;}
@media (max-width:900px){.who-grid{grid-template-columns:1fr;}}
.who-photo{position:relative;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-m);border:1px solid var(--line);}
.who-photo img{width:100%;display:block;}
.who-photo::after{content:'';position:absolute;inset:10px;border:1px solid rgba(255,255,255,.55);border-radius:calc(var(--radius-lg) - 10px);pointer-events:none;}
.who-cap{margin-top:.7rem;font-size:.84rem;color:var(--muted);text-align:center;}
.who-lead{font-family:var(--serif-kicker);font-size:clamp(1.12rem,1.9vw,1.4rem);line-height:1.55;color:var(--ink);}
.facts{display:grid;grid-template-columns:repeat(2,1fr);gap:.7rem;margin-top:1.4rem;}
@media (max-width:520px){.facts{grid-template-columns:1fr;}}
.fact{
  padding:.85rem 1rem;border-radius:16px;display:grid;grid-template-columns:auto 1fr;gap:.75rem;align-items:center;
  background:linear-gradient(145deg,rgba(255,255,255,.85),rgba(255,255,255,.5));
  border:1px solid var(--line);box-shadow:inset 0 1px 0 #fff;
}
.fact b{font-family:var(--serif-kicker);font-weight:400;font-size:1.3rem;color:var(--gold-deep);line-height:1;}
.fact span{font-size:.86rem;color:var(--ink-soft);line-height:1.35;}
.who-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:1.1rem;margin-top:1.6rem;}
@media (max-width:820px){.who-cards{grid-template-columns:1fr;}}
.who-card{padding:1.5rem 1.5rem 1.4rem;}
.who-card .role{
  display:inline-flex;align-items:center;gap:.5rem;font-size:.74rem;letter-spacing:.2em;text-transform:uppercase;
  color:var(--gold-deep);margin-bottom:.6rem;
}
.who-card h3{font-family:var(--serif-kicker);font-weight:400;font-size:1.5rem;margin-bottom:.5rem;}
.who-card p{font-size:.96rem;line-height:1.7;color:var(--ink-soft);}
.who-card .mini-nums{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.9rem;}
.who-card .mini-nums span{font-size:.78rem;padding:.22rem .7rem;border-radius:999px;border:1px solid var(--line);color:var(--muted);background:rgba(255,255,255,.6);}
.principle{
  margin-top:1.6rem;padding:clamp(1.3rem,3vw,1.9rem);border-radius:var(--radius-lg);text-align:center;
}
.principle p{font-family:var(--serif-kicker);font-size:clamp(1.05rem,1.8vw,1.3rem);line-height:1.55;color:var(--ink);max-width:56ch;margin:0 auto;}

/* кнопки внутри шагов «если растерялись» */
.steps .step-go{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:.85rem;}
.steps .step-go .btn{padding:.6rem 1.1rem;font-size:.68rem;}

/* ── окна оплаты и заявок: всегда светлые, с тёмным текстом ──────
   Раньше они брали цвета у темы страницы, и на тёмных страницах
   текст оказывался светлым на светлом - не читался. */
body .modal .modal-box,
body .modal .modal-box h3,
body .modal .modal-box p,
body .modal .modal-box label,
body .modal .modal-box span,
body .modal .modal-box .field span,
body .modal .modal-box .check,
body .modal .modal-box .small{color:#2a2130;}
body .modal .modal-box .small,
body .modal .modal-box .field span,
body .modal .modal-box .check{color:#6b5c4e;}
body .modal .modal-box h3{color:#2a2130;}
/* название продукта в шапке окна - это главное, что там читают */
body .modal .modal-box #vdPayWhat,
body .modal .modal-box #vdFormText{
  color:#2a2130;font-family:var(--serif);font-size:1.12rem;line-height:1.4;
  margin-top:.1rem;
}
body .modal .modal-box .pay-sum{color:#8a5f18;}
body .modal .modal-box .field input,
body .modal .modal-box .field textarea,
body .modal .modal-box .field select{background:#fff;color:#2a2130;border-color:rgba(160,110,45,.28);}
body .modal .modal-box .field input::placeholder,
body .modal .modal-box .field textarea::placeholder{color:#a1927f;}
body .modal .modal-box .check a{color:#8a5f18;}
body .modal .modal-box .btn-gold{background:linear-gradient(135deg,#f2d08a 0%,#cf9a3a 100%);color:#33240d;text-shadow:none;}
body .modal .modal-box .pay-thanks{background:#f6e3c4;border-color:rgba(160,110,45,.28);}
body .modal .modal-box .pay-thanks h3,body .modal .modal-box .pay-thanks p{color:#2a2130;}
body .modal .modal-box .err{color:#b03a2e;}
body .modal .modal-box .modal-close{color:#6b5c4e;}

/* скрытое должно быть скрыто даже у flex-элементов */
[hidden]{display:none !important;}

/* абзацы «Кто мы» - шрифтом Forum */
.who-lead,.principle p{font-family:var(--serif);}

/* ── заметный заголовок внутри страницы ─────────────────────── */
.h-plate{
  display:block;text-align:center;font-family:var(--sans);font-weight:600;
  font-size:clamp(.86rem,1.4vw,1rem);letter-spacing:.2em;text-transform:uppercase;
  color:var(--gold-deep);margin:0 auto 1.4rem;position:relative;padding-bottom:.9rem;
}
.h-plate::after{
  content:'';position:absolute;left:50%;bottom:0;transform:translateX(-50%);
  width:54px;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);
}
.night .h-plate,body.t-sea .h-plate,body.t-lux .h-plate,body.t-cosmos .h-plate{
  color:var(--gold-light);background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.18);
}

/* ── «с чем приходят»: карточки вместо колонок ──────────────── */
.topics{display:grid;grid-template-columns:repeat(2,1fr);gap:.9rem;}
@media (max-width:760px){.topics{grid-template-columns:1fr;}}
.topic{padding:1.15rem 1.3rem;border-radius:18px;}
.topic b{
  display:block;font-family:var(--sans);font-weight:600;font-size:.74rem;
  letter-spacing:.18em;text-transform:uppercase;color:var(--gold-deep);margin-bottom:.4rem;
}
.topic span{display:block;font-size:.97rem;line-height:1.6;color:var(--ink-soft);}

/* фраза-цитата на главной: курсив, чтобы читалось как чужая речь */
.shout.quote-line{font-style:italic;font-weight:500;letter-spacing:.01em;}
.shout.quote-line .qm{color:var(--gold);font-style:normal;}

/* фото эксперта: свечение и ограничение по высоте, чтобы не распирало экран */
.portrait{position:relative;border-radius:var(--radius-lg);overflow:hidden;max-width:420px;margin-inline:auto;}
.portrait img{width:100%;aspect-ratio:4/5;max-height:58vh;object-fit:cover;object-position:28% 38%;}
.portrait::before{
  content:'';position:absolute;inset:-18% -14%;z-index:-1;pointer-events:none;
  background:radial-gradient(ellipse at 50% 45%, rgba(201,168,106,.45), transparent 62%);filter:blur(22px);
}
.portrait::after{
  content:'';position:absolute;inset:0;pointer-events:none;border-radius:var(--radius-lg);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.6), inset 0 -80px 90px -60px rgba(42,33,24,.55);
}
.portrait-cap{margin-top:.8rem;text-align:center;font-size:.85rem;color:var(--muted);}
@media (max-width:900px){.portrait img{max-height:52vh;}}
/* секции продуктовых страниц - заголовки по центру */
.sec-center{text-align:center;}
.sec-center .lead{margin-left:auto;margin-right:auto;}

/* ── большая анкета на странице ───────────────────────────────── */
.anketa{display:grid;gap:.9rem;max-width:720px;margin:0 auto;text-align:left;}
.anketa .field{margin-top:0;}
.anketa .field textarea,.anketa .field select{
  width:100%;font-family:var(--sans);font-size:1rem;padding:.78rem 1rem;
  border:1px solid var(--line);border-radius:14px;background:#fff;color:#2a2130;
}
.anketa .field textarea{min-height:92px;resize:vertical;line-height:1.5;}
.anketa .field select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--gold) 50%),linear-gradient(135deg,var(--gold) 50%,transparent 50%);background-position:calc(100% - 20px) center,calc(100% - 14px) center;background-size:6px 6px,6px 6px;background-repeat:no-repeat;}
.anketa .field input{background:#fff;color:#2a2130;}
.anketa .two{display:grid;grid-template-columns:1fr 1fr;gap:.9rem;}
@media (max-width:640px){.anketa .two{grid-template-columns:1fr;}}
.anketa .hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0;}
.anketa-done{
  padding:1.6rem;border-radius:var(--radius);text-align:center;
  background:var(--gold-wash);border:1px solid var(--line);
}
.anketa-done h3{margin-bottom:.5rem;}
/* поля анкеты всегда светлые: на тёмной теме родной список браузера
   рисуется системными цветами и текст в нём пропадал */
.anketa .field input,.anketa .field textarea,.anketa .field select{background:#fff;color:#2a2130;border-color:rgba(160,110,45,.3);}
.anketa .field select option{background:#fff;color:#2a2130;}
.anketa .field input::placeholder,.anketa .field textarea::placeholder{color:#a1927f;}
body.t-lux .anketa .field span{color:#c8bcab;}
body.t-lux .anketa-done{background:rgba(201,168,106,.14);border-color:rgba(201,168,106,.35);}

/* анкета раскрывается по кнопке */
.anketa-wrap[hidden]{display:none !important;}
.anketa-open{display:flex;justify-content:center;margin-top:.4rem;}

/* светлая стеклянная кнопка должна быть видна на светлом фоне */
body.t-white .btn-glass-light,
body.t-book .btn-glass-light,
body.t-leaf .btn-glass-light,
body.t-ocean .btn-glass-light,
body.t-premium .btn-glass-light{
  border-color:var(--gold);color:var(--gold-deep);
  background:linear-gradient(145deg,rgba(255,255,255,.95),rgba(255,255,255,.75));
  box-shadow:0 10px 24px -16px rgba(120,80,25,.5), inset 0 1px 0 #fff;
}
body.t-white .btn-glass-light:hover,
body.t-book .btn-glass-light:hover,
body.t-leaf .btn-glass-light:hover,
body.t-ocean .btn-glass-light:hover,
body.t-premium .btn-glass-light:hover{background:#fff;}

/* ===================================================================
   Первый экран главной: бренд во весь экран + мысль в облачке
=================================================================== */
.brand-hero{padding-block:clamp(2.2rem,6vw,4rem) clamp(2.4rem,6vw,4.4rem);position:relative;overflow:hidden;}
.brand-stage{position:relative;text-align:center;}
.brand-stage::before{
  content:'';position:absolute;left:50%;top:38%;transform:translate(-50%,-50%);
  width:min(760px,116vw);height:min(420px,62vw);pointer-events:none;z-index:0;
  background:
    radial-gradient(ellipse at center, rgba(242,208,138,.55), rgba(242,208,138,.18) 42%, transparent 70%),
    radial-gradient(ellipse at 30% 60%, rgba(214,180,255,.28), transparent 62%);
  filter:blur(26px);
}
.brand-eyebrow{
  position:relative;z-index:2;display:block;
  font-family:var(--sans);font-weight:500;
  font-size:clamp(.72rem,2.6vw,.95rem);letter-spacing:.42em;text-transform:uppercase;
  color:var(--gold-deep);margin-bottom:clamp(.5rem,1.6vw,.9rem);padding-left:.42em;
}
.hero h1.brand-title,.brand-title{
  position:relative;z-index:2;margin:0;
  font-family:var(--serif);font-weight:400;text-transform:uppercase;
  font-size:clamp(3.4rem,19vw,9rem);line-height:.9;letter-spacing:.09em;padding-left:.09em;
  background:linear-gradient(177deg,#8a5f18 0%,#cf9a3a 34%,#f7e3b4 52%,#cf9a3a 70%,#8a5f18 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  filter:drop-shadow(0 10px 26px rgba(176,126,44,.35));
}
.brand-rule{
  position:relative;z-index:2;display:flex;align-items:center;justify-content:center;gap:.9rem;
  margin:clamp(.7rem,2vw,1.1rem) auto clamp(1.4rem,4vw,2.2rem);color:var(--gold);
}
.brand-rule::before,.brand-rule::after{content:'';height:1px;width:min(120px,22vw);background:linear-gradient(90deg,transparent,var(--gold));}
.brand-rule::after{background:linear-gradient(270deg,transparent,var(--gold));}
.brand-rule span{font-size:.78rem;letter-spacing:.24em;text-transform:uppercase;color:var(--muted);white-space:nowrap;}
/* звёздочки вокруг бренда */
.brand-stage i.spark{
  position:absolute;z-index:1;width:6px;height:6px;border-radius:50%;
  background:radial-gradient(circle,#fff6e0,rgba(242,208,138,0) 70%);
  box-shadow:0 0 10px 2px rgba(242,208,138,.75);
  animation:sparkle 4.5s ease-in-out infinite;
}
.brand-stage i.s1{left:8%;top:14%;}
.brand-stage i.s2{right:11%;top:26%;animation-delay:-1.4s;}
.brand-stage i.s3{left:18%;bottom:12%;width:4px;height:4px;animation-delay:-2.6s;}
.brand-stage i.s4{right:17%;bottom:18%;width:5px;height:5px;animation-delay:-3.4s;}
@keyframes sparkle{0%,100%{opacity:.25;transform:scale(.8);}50%{opacity:1;transform:scale(1.25);}}
@media (prefers-reduced-motion:reduce){.brand-stage i.spark{animation:none;opacity:.7;}}

/* ── акварельное облако мысли ─────────────────────────────────── */




/* ── золото, которое переливается ─────────────────────────────── */
.hero h1.brand-title,.brand-title{
  background:linear-gradient(100deg,#8a5f18 0%,#cf9a3a 18%,#fdf0cf 34%,#f3cd7e 44%,#cf9a3a 58%,#8a5f18 76%,#cf9a3a 92%,#fdf0cf 100%);
  background-size:300% 100%;
  -webkit-background-clip:text;background-clip:text;color:transparent;
  animation:goldflow 9s linear infinite;
}
@keyframes goldflow{0%{background-position:300% 50%;}100%{background-position:0% 50%;}}
@media (prefers-reduced-motion:reduce){.hero h1.brand-title,.brand-title{animation:none;}}

/* «Пространство» крупнее */
.brand-eyebrow{
  font-size:clamp(1rem,3.8vw,1.5rem);letter-spacing:.38em;font-weight:500;
  color:var(--gold-deep);margin-bottom:clamp(.3rem,1.2vw,.6rem);
}

/* подпись под брендом: с фамилией строка длиннее, на телефоне её надо отпустить */
.brand-rule span{font-size:clamp(.62rem,2.3vw,.78rem);letter-spacing:.2em;}
.brand-rule::before,.brand-rule::after{width:min(120px,14vw);}
@media (max-width:520px){
  .brand-rule{gap:.6rem;}
  .brand-rule::before,.brand-rule::after{display:none;}
  .brand-rule span{white-space:normal;line-height:1.6;letter-spacing:.15em;}
}

/* ── облако-реплика: на телефоне сверху, на большом экране слева ── */
.think-row{display:grid;gap:clamp(.4rem,2vw,1.2rem);align-items:center;margin-top:clamp(.4rem,1.6vw,1rem);}
.think{position:relative;z-index:2;}
.cloud-img{
  display:block;width:100%;max-width:min(400px,92%);height:auto;margin:0 auto;
  filter:drop-shadow(0 20px 30px rgba(150,112,48,.16));
}
.think-say .lead{max-width:54ch;margin:.6rem auto 0;text-align:center;}
.think-say .hero-actions{justify-content:center;margin-top:clamp(1rem,2.6vw,1.7rem);}
@media (min-width:1000px){
  .brand-hero .wrap-narrow{max-width:1020px;}
  .think-row{grid-template-columns:minmax(0,400px) minmax(0,1fr);gap:clamp(1.6rem,4vw,3.4rem);margin-top:clamp(.8rem,2vw,1.6rem);}
  .cloud-img{max-width:400px;margin:0 0 0 -14px;}
  .think-say .lead{text-align:left;margin:0;}
  .think-say .hero-actions{justify-content:flex-start;}
}

/* подпись под облаком: она объясняет само облако, поэтому держим их вместе */
.think-cap{
  font-family:var(--serif);font-size:clamp(1.08rem,2.6vw,1.26rem);line-height:1.45;
  color:var(--gold-deep);text-align:center;max-width:26ch;
  margin:0 auto;position:relative;
}
@media (min-width:1000px){
  .think-cap{margin-left:0;margin-right:auto;text-align:left;}
}
/* дуга от фразы к облаку: парит сама по себе, ни к чему не прикреплена */
.cap-arrow{
  display:block;width:clamp(34px,9vw,46px);height:auto;
  margin:clamp(-1.4rem,-3.4vw,-.7rem) auto clamp(.1rem,.7vw,.4rem) calc(50% - 112px);
  animation:arrowfloat 5.5s ease-in-out infinite;
}
@keyframes arrowfloat{0%,100%{transform:translateY(0);}50%{transform:translateY(-5px);}}
@media (prefers-reduced-motion:reduce){.cap-arrow{animation:none;}}
@media (min-width:1000px){
  .cap-arrow{margin-left:56px;margin-right:auto;}
}
/* на телефоне и планшете разговор идёт сверху вниз: фраза - стрелка - облако */
@media (max-width:999px){
  .think{display:flex;flex-direction:column;}
  .think-cap{order:1;margin-top:clamp(.5rem,2vw,1rem);}
  .cap-arrow{
    order:2;
    margin:clamp(.3rem,1.3vw,.7rem) calc(50% - 112px) clamp(-2.8rem,-7vw,-1.2rem) auto;
    animation-name:arrowfloat-down;
  }
  .cloud-img{order:3;}
}
@keyframes arrowfloat-down{0%,100%{transform:scaleY(-1) translateY(0);}50%{transform:scaleY(-1) translateY(5px);}}

/* значки продуктов в «Куда идти»: те же, что в меню - книга, листик,
   палочка, разговор, лупа. Рисуем линией, а не символом шрифта. */
.prod .pi.i-leaf::before,.prod .pi.i-book::before,.prod .pi.i-wand::before,
.prod .pi.i-talk::before,.prod .pi.i-loupe::before{
  content:'';width:19px;height:19px;background-color:var(--gold-deep);
  -webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;
  -webkit-mask-position:center;mask-position:center;
  -webkit-mask-size:19px 19px;mask-size:19px 19px;
}
.prod .pi.i-book::before{
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 6.5C9.8 4.9 7.1 4.3 4.5 4.6v12.6c2.6-.3 5.3.3 7.5 1.9 2.2-1.6 4.9-2.2 7.5-1.9V4.6c-2.6-.3-5.3.3-7.5 1.9z'/%3E%3Cpath d='M12 6.5v12.6'/%3E%3C/svg%3E");
          mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 6.5C9.8 4.9 7.1 4.3 4.5 4.6v12.6c2.6-.3 5.3.3 7.5 1.9 2.2-1.6 4.9-2.2 7.5-1.9V4.6c-2.6-.3-5.3.3-7.5 1.9z'/%3E%3Cpath d='M12 6.5v12.6'/%3E%3C/svg%3E");
}
.prod .pi.i-leaf::before{
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 4c0 8.8-5.4 14.5-12.6 14.5C7.4 9.7 12.8 4 20 4z'/%3E%3Cpath d='M4.5 20c2.2-4.6 5.6-8.3 9.8-10.8'/%3E%3C/svg%3E");
          mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 4c0 8.8-5.4 14.5-12.6 14.5C7.4 9.7 12.8 4 20 4z'/%3E%3Cpath d='M4.5 20c2.2-4.6 5.6-8.3 9.8-10.8'/%3E%3C/svg%3E");
}
.prod .pi.i-wand::before{
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 20.5 14 10'/%3E%3Cpath d='M17.4 3.2l.9 2.2 2.2.9-2.2.9-.9 2.2-.9-2.2-2.2-.9 2.2-.9z'/%3E%3Cpath d='M7 4.6l.5 1.2 1.2.5-1.2.5L7 8l-.5-1.2-1.2-.5 1.2-.5z'/%3E%3Cpath d='M20 14.6l.5 1.2 1.2.5-1.2.5-.5 1.2-.5-1.2-1.2-.5 1.2-.5z'/%3E%3C/svg%3E");
          mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 20.5 14 10'/%3E%3Cpath d='M17.4 3.2l.9 2.2 2.2.9-2.2.9-.9 2.2-.9-2.2-2.2-.9 2.2-.9z'/%3E%3Cpath d='M7 4.6l.5 1.2 1.2.5-1.2.5L7 8l-.5-1.2-1.2-.5 1.2-.5z'/%3E%3Cpath d='M20 14.6l.5 1.2 1.2.5-1.2.5-.5 1.2-.5-1.2-1.2-.5 1.2-.5z'/%3E%3C/svg%3E");
}
.prod .pi.i-talk::before{
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 4.5h14A2.5 2.5 0 0 1 21.5 7v7a2.5 2.5 0 0 1-2.5 2.5h-7.4L7 20.5v-4H5A2.5 2.5 0 0 1 2.5 14V7A2.5 2.5 0 0 1 5 4.5z'/%3E%3Cpath d='M7.5 9h9'/%3E%3Cpath d='M7.5 12.5h5.5'/%3E%3C/svg%3E");
          mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 4.5h14A2.5 2.5 0 0 1 21.5 7v7a2.5 2.5 0 0 1-2.5 2.5h-7.4L7 20.5v-4H5A2.5 2.5 0 0 1 2.5 14V7A2.5 2.5 0 0 1 5 4.5z'/%3E%3Cpath d='M7.5 9h9'/%3E%3Cpath d='M7.5 12.5h5.5'/%3E%3C/svg%3E");
}
.prod .pi.i-loupe::before{
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5'/%3E%3Cpath d='M15.4 15.4 21 21'/%3E%3C/svg%3E");
          mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5'/%3E%3Cpath d='M15.4 15.4 21 21'/%3E%3C/svg%3E");
}
