/* ===================================================================
   Книга Года 2027 - своё оформление поверх общего стиля сайта.

   Палитра снята с обложки: пергамент и золото, лазурит ночного неба и
   бордо бархата, на котором лежит книга. Три цвета нужны не для красоты:
   по ним человек различает тарифы, не читая подписей.

   Мотивы оттуда же - резная колонна, жасмин, латунная лампада,
   зодиакальный круг, тиснёный переплёт. Древние знания, а не бежевый фон.
=================================================================== */

body.t-book{
  /* пергамент */
  --kg-parch:#F8F1E3;
  --kg-parch-2:#F1E6D1;
  --kg-ink:#241B14;
  --kg-ink-soft:#5B4A39;
  --kg-dim:#8E7C66;
  /* золото */
  --kg-gold:#C79A3C;
  --kg-gold-lt:#EBCD8C;
  --kg-gold-dp:#8A5F18;
  /* лазурит */
  --kg-nav:#1B2A4A;
  --kg-nav-dp:#111A2F;
  --kg-nav-lt:#36507F;
  /* бордо */
  --kg-bor:#6E1B22;
  --kg-bor-dp:#4A1016;
  --kg-bor-lt:#9A3039;

  background:
    radial-gradient(1200px 620px at 12% -8%, rgba(199,154,60,.17), transparent 62%),
    radial-gradient(1000px 560px at 92% 4%, rgba(27,42,74,.13), transparent 60%),
    linear-gradient(180deg, var(--kg-parch) 0%, var(--kg-parch-2) 46%, var(--kg-parch) 100%);
  background-attachment:fixed;
}

/* ─────────── орнаменты, общие ─────────── */

/* Двойная золотая рамка - как тиснение на переплёте. */
.kg-frame{
  position:relative;border:1px solid rgba(138,95,24,.38);border-radius:4px;
  background:linear-gradient(180deg, rgba(255,255,255,.72), rgba(248,241,227,.5));
  box-shadow:0 26px 54px -34px rgba(74,42,10,.5);
}
.kg-frame::before{
  content:'';position:absolute;inset:6px;border:1px solid rgba(199,154,60,.3);
  border-radius:2px;pointer-events:none;
}

/* Разделитель с ромбом посередине. */
.kg-rule{display:flex;align-items:center;gap:.8rem;justify-content:center;margin:2.6rem 0;}
.kg-rule::before,.kg-rule::after{
  content:'';height:1px;flex:1;max-width:14rem;
  background:linear-gradient(90deg,transparent,rgba(199,154,60,.75));
}
.kg-rule::after{background:linear-gradient(270deg,transparent,rgba(199,154,60,.75));}
.kg-rule span{color:var(--kg-gold);font-size:.72rem;letter-spacing:.3em;}

/* Римская цифра раздела. */
.kg-num{
  display:inline-grid;place-items:center;width:2.6rem;height:2.6rem;flex:none;
  border:1px solid rgba(199,154,60,.6);border-radius:50%;
  font-family:var(--serif-kicker,Georgia,serif);font-size:.95rem;color:var(--kg-gold-dp);
  background:rgba(255,255,255,.55);
}

/* ─────────── шапка-обложка ─────────── */

.kg-hero{
  position:relative;overflow:hidden;isolation:isolate;
  padding:clamp(2.4rem,6vw,4.4rem) 0 clamp(2.6rem,6vw,4rem);
  color:#F6EDDC;
  background:
    radial-gradient(900px 520px at 78% 14%, rgba(235,205,140,.3), transparent 60%),
    radial-gradient(760px 500px at 12% 86%, rgba(110,27,34,.5), transparent 64%),
    linear-gradient(162deg, var(--kg-nav-dp) 0%, #22172A 44%, #3A2318 78%, #4A2A14 100%);
}
/* Переливы: медленная волна света поверх неба. */
.kg-hero::before{
  content:'';position:absolute;inset:-30%;z-index:-2;pointer-events:none;
  background:
    radial-gradient(44% 34% at 30% 30%, rgba(235,205,140,.2), transparent 70%),
    radial-gradient(40% 30% at 72% 62%, rgba(54,80,127,.28), transparent 72%);
  animation:kgDrift 26s ease-in-out infinite alternate;
}
/* Звёздная пыль. */
.kg-hero::after{
  content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.5;
  background-image:
    radial-gradient(1.4px 1.4px at 14% 18%, rgba(255,246,224,.9), transparent),
    radial-gradient(1.2px 1.2px at 32% 9%,  rgba(255,246,224,.75), transparent),
    radial-gradient(1.6px 1.6px at 58% 22%, rgba(255,246,224,.8), transparent),
    radial-gradient(1.1px 1.1px at 77% 12%, rgba(255,246,224,.7), transparent),
    radial-gradient(1.3px 1.3px at 89% 31%, rgba(255,246,224,.85), transparent),
    radial-gradient(1.2px 1.2px at 46% 6%,  rgba(255,246,224,.6), transparent),
    radial-gradient(1.5px 1.5px at 6% 42%,  rgba(255,246,224,.7), transparent);
}
@keyframes kgDrift{
  from{transform:translate3d(-2%,-1%,0) scale(1.02);}
  to{transform:translate3d(3%,2%,0) scale(1.08);}
}
@media (prefers-reduced-motion:reduce){
  .kg-hero::before{animation:none;}
}

.kg-hero .wrap{position:relative;z-index:1;}
.kg-hg{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(1.6rem,4vw,3.4rem);align-items:center;}
@media (max-width:900px){ .kg-hg{grid-template-columns:1fr;} }

/* Обложка в золотой раме, с подсветкой из-под неё. */
.kg-art{position:relative;margin:0 auto;max-width:30rem;}
.kg-art::after{
  content:'';position:absolute;left:8%;right:8%;bottom:-12px;height:38px;border-radius:50%;
  background:radial-gradient(50% 100% at 50% 0%, rgba(235,205,140,.42), transparent 72%);
  filter:blur(5px);
}
.kg-art img{
  display:block;width:100%;height:auto;border-radius:3px;
  border:1px solid rgba(235,205,140,.55);
  box-shadow:0 40px 80px -36px rgba(0,0,0,.85), 0 0 0 7px rgba(235,205,140,.1);
}

.kg-eyebrow{
  display:inline-flex;align-items:center;gap:.6rem;margin-bottom:1rem;
  font-size:.72rem;letter-spacing:.26em;text-transform:uppercase;color:var(--kg-gold-lt);
}
.kg-eyebrow::before,.kg-eyebrow::after{content:'';width:2rem;height:1px;background:rgba(235,205,140,.6);}

.kg-h1{
  font-size:clamp(2.1rem,5.4vw,3.5rem);line-height:1.06;color:#FBF3E3;margin-bottom:.9rem;
  text-shadow:0 2px 24px rgba(0,0,0,.45);
}
.kg-h1 em{font-style:normal;color:var(--kg-gold-lt);}
.kg-hero .lead{color:#E7D9C2;max-width:34rem;}

.kg-facts{list-style:none;display:grid;gap:.55rem;margin:1.5rem 0 1.8rem;}
.kg-facts li{display:grid;grid-template-columns:auto 1fr;gap:.7rem;align-items:start;color:#EDE0CA;font-size:.98rem;}
.kg-facts li::before{content:'✦';color:var(--kg-gold-lt);line-height:1.5;}

.kg-hero .btn-glass-light{
  color:#F6EDDC;border-color:rgba(235,205,140,.6);background:rgba(255,255,255,.06);
}
.kg-hero .btn-glass-light:hover{background:rgba(255,255,255,.13);}
.kg-when{color:#CBB89B;font-size:.86rem;margin-top:1rem;}

/* Зодиакальный круг за заголовком - тонкая золотая линия, как на обложке. */
.kg-zodiac{
  position:absolute;right:-6rem;top:50%;transform:translateY(-50%);
  width:min(34rem,52vw);aspect-ratio:1;opacity:.17;pointer-events:none;z-index:0;
}
.kg-zodiac svg{width:100%;height:100%;display:block;}
@media (max-width:900px){ .kg-zodiac{right:-30%;opacity:.12;} }

/* ─────────── разделы на пергаменте ─────────── */

.kg-head{display:flex;flex-direction:column;align-items:center;gap:.7rem;margin-bottom:1.6rem;text-align:center;}
.kg-kicker{
  display:inline-flex;align-items:center;gap:.7rem;
  font-size:.7rem;letter-spacing:.24em;text-transform:uppercase;color:var(--kg-gold-dp);
}
.kg-kicker::before,.kg-kicker::after{content:'';width:1.8rem;height:1px;background:rgba(199,154,60,.7);}
body.t-book h2{color:var(--kg-ink);}

/* Карточка «что внутри» - лист с номером и тиснёной рамкой. */
.kg-toc{display:grid;grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:1rem;margin-top:1.8rem;}
.kg-toc li{list-style:none;}
.kg-item{display:grid;grid-template-columns:auto 1fr;gap:1rem;padding:1.25rem 1.3rem;height:100%;align-content:start;}
.kg-item b{display:block;font-family:var(--serif-kicker,Georgia,serif);font-weight:400;font-size:1.1rem;color:var(--kg-ink);margin-bottom:.3rem;}
.kg-item span{display:block;font-size:.92rem;line-height:1.55;color:var(--kg-ink-soft);}

/* Три опоры - с крупным знаком. */
.kg-three{display:grid;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:1rem;}
.kg-pillar{padding:1.6rem 1.4rem;text-align:center;}
.kg-pillar .kg-sym{display:block;font-size:1.7rem;color:var(--kg-gold);margin-bottom:.6rem;}
.kg-pillar h3{font-size:1.1rem;margin-bottom:.4rem;color:var(--kg-ink);}
.kg-pillar p{font-size:.93rem;line-height:1.55;color:var(--kg-ink-soft);}

/* ─────────── тарифы: три цвета ─────────── */

body.t-book .bt{align-items:stretch;}
.kg-tar{
  position:relative;display:flex;flex-direction:column;gap:.5rem;
  padding:2.5rem 1.5rem 1.7rem;border-radius:4px;overflow:hidden;
  border:1px solid rgba(138,95,24,.4);
  background:linear-gradient(180deg, rgba(255,255,255,.76), rgba(248,241,227,.56));
  box-shadow:0 26px 54px -34px rgba(74,42,10,.5);
}
.kg-tar::before{
  content:'';position:absolute;inset:6px;border:1px solid rgba(199,154,60,.26);
  border-radius:2px;pointer-events:none;
}
/* Полоса сверху - она и различает тарифы. */
.kg-tar::after{
  content:'';position:absolute;left:0;right:0;top:0;height:5px;
  background:linear-gradient(90deg,var(--kg-gold-lt),var(--kg-gold));
}
.kg-tar .kg-tag{
  position:absolute;top:.95rem;left:1.5rem;
  font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:var(--kg-gold-dp);
}
.kg-tar .kg-emb{
  position:absolute;top:.6rem;right:1.2rem;font-size:1.5rem;color:rgba(199,154,60,.5);
}
.kg-tar h3{font-family:var(--serif-kicker,Georgia,serif);font-weight:400;font-size:1.4rem;margin-top:.5rem;color:var(--kg-ink);}
.kg-tar .who{font-size:.86rem;color:var(--kg-dim);}
.kg-tar .sum{font-family:var(--serif-kicker,Georgia,serif);font-size:2.05rem;line-height:1.1;margin-top:.35rem;color:var(--kg-gold-dp);font-variant-numeric:tabular-nums;}
.kg-tar ul{list-style:none;display:grid;gap:.5rem;margin:.9rem 0 1.1rem;font-size:.93rem;color:var(--kg-ink-soft);}
.kg-tar ul li{display:grid;grid-template-columns:auto 1fr;gap:.6rem;}
.kg-tar ul li::before{content:'✦';color:var(--kg-gold);font-size:.74rem;line-height:1.7;}
.kg-tar .btn{margin-top:auto;}
.kg-tar .kg-delta{font-size:.86rem;color:var(--kg-ink-soft);margin:-.1rem 0 0;}
.kg-tar .kg-delta b{color:var(--kg-gold-dp);font-variant-numeric:tabular-nums;}

/* Тариф 2 - лазурит. Он же приоритет кампании, поэтому и выделен сильнее. */
.kg-tar.kg-nav{
  color:#ECE3D3;border-color:rgba(54,80,127,.7);
  background:
    radial-gradient(520px 300px at 80% -10%, rgba(54,80,127,.5), transparent 62%),
    linear-gradient(170deg, var(--kg-nav) 0%, var(--kg-nav-dp) 100%);
  box-shadow:0 32px 60px -30px rgba(17,26,47,.8);
}
.kg-tar.kg-nav::before{border-color:rgba(235,205,140,.3);}
.kg-tar.kg-nav::after{background:linear-gradient(90deg,var(--kg-gold),var(--kg-gold-lt),var(--kg-gold));}
.kg-tar.kg-nav h3{color:#FBF3E3;}
.kg-tar.kg-nav .who{color:#A9B6CE;}
.kg-tar.kg-nav .sum,.kg-tar.kg-nav .kg-tag,.kg-tar.kg-nav .kg-delta b{color:var(--kg-gold-lt);}
.kg-tar.kg-nav ul{color:#DCD2C0;}
.kg-tar.kg-nav .kg-delta{color:#C6BCA8;}
.kg-tar.kg-nav .kg-emb{color:rgba(235,205,140,.45);}

/* Тариф 3 - бордо, как бархат под книгой. */
.kg-tar.kg-bor{
  color:#F2E2D8;border-color:rgba(154,48,57,.7);
  background:
    radial-gradient(520px 300px at 78% -12%, rgba(154,48,57,.55), transparent 62%),
    linear-gradient(170deg, var(--kg-bor) 0%, var(--kg-bor-dp) 100%);
  box-shadow:0 32px 60px -30px rgba(74,16,22,.8);
}
.kg-tar.kg-bor::before{border-color:rgba(235,205,140,.28);}
.kg-tar.kg-bor::after{background:linear-gradient(90deg,var(--kg-gold-lt),var(--kg-gold));}
.kg-tar.kg-bor h3{color:#FBF0E6;}
.kg-tar.kg-bor .who{color:#D2A9A5;}
.kg-tar.kg-bor .sum,.kg-tar.kg-bor .kg-tag{color:var(--kg-gold-lt);}
.kg-tar.kg-bor ul{color:#E6D3CB;}
.kg-tar.kg-bor .kg-delta{color:#E8CFC8;}
.kg-tar.kg-bor .kg-emb{color:rgba(235,205,140,.42);}

/* Кнопка на тёмных карточках. */
.kg-tar.kg-nav .btn-glass-light,.kg-tar.kg-bor .btn-glass-light{
  color:#FBF3E3;border-color:rgba(235,205,140,.65);background:rgba(255,255,255,.07);
}
.kg-tar.kg-nav .btn-glass-light:hover,.kg-tar.kg-bor .btn-glass-light:hover{background:rgba(255,255,255,.15);}

/* Блок «какой из них ваш» - на пергаменте, с жирной золотой линией слева. */
.kg-choose{padding:1.8rem 1.6rem;border-left:3px solid var(--kg-gold);}
.kg-choose h3{font-size:1.25rem;margin-bottom:.6rem;color:var(--kg-ink);}
.kg-choose p{color:var(--kg-ink-soft);line-height:1.6;}
.kg-choose p+p{margin-top:.7rem;}
.kg-choose .kg-q{
  margin-top:1rem;padding-top:.9rem;border-top:1px solid rgba(199,154,60,.3);
  font-family:var(--serif-kicker,Georgia,serif);font-size:1.1rem;color:var(--kg-gold-dp);
}

/* ─────────── шаги, вопросы, прочее ─────────── */

body.t-book .steps li::before,body.t-book .toc-book li::before{color:var(--kg-gold-dp);}
body.t-book details{border-bottom:1px solid rgba(138,95,24,.22);}
body.t-book summary{color:var(--kg-ink);}

@media (max-width:620px){
  .kg-item{grid-template-columns:1fr;gap:.5rem;}
  .kg-tar{padding:2.4rem 1.25rem 1.5rem;}
}

/* ===================================================================
   Правки 10.10.2026: круглые углы, чистый фон, приборы вместо значков.

   Острые углы хозяйке не нравятся категорически, поэтому радиус везде
   крупный - 20-26 пикселей. Внутренняя рамка-тиснение повторяет его с
   отступом, иначе она режет угол и смотрится как брак.
=================================================================== */

/* фон: один спокойный пергамент. Два цветных пятна по углам мутили
   страницу и делали её грязной - убраны. */
body.t-book{
  background:linear-gradient(180deg,#FBF5EA 0%,#F4EADA 48%,#FBF5EA 100%);
  background-attachment:fixed;
}

.kg-frame{border-radius:22px;}
.kg-frame::before{inset:7px;border-radius:16px;}
.kg-art img{border-radius:20px;}
.kg-tar{border-radius:24px;}
.kg-tar::before{inset:7px;border-radius:18px;}
.kg-tar::after{border-radius:24px 24px 0 0;}
.kg-choose{border-radius:20px;}
body.t-book .card,
body.t-book .glass-light,
body.t-book .next,
body.t-book .bt .b,
body.t-book .quote{border-radius:22px;}

/* номер раздела: арабская цифра, ровно по центру кружка */
.kg-num{
  width:2.5rem;height:2.5rem;line-height:1;
  font-family:var(--serif,Georgia,serif);font-size:1.05rem;
  font-variant-numeric:tabular-nums;
}

/* названия тарифов - прописными */
.kg-tar h3{
  text-transform:uppercase;letter-spacing:.08em;
  font-size:1.12rem;line-height:1.25;margin-top:.6rem;
}

/* кнопки тарифов на одной линии: обёртка по сроку не должна ломать
   выравнивание, поэтому она исчезает, а кнопка становится элементом
   самой карточки и прижимается к низу */
.kg-tar > span[data-book-when]{display:contents;}

/* древний прибор в углу карточки вместо значка */
.kg-emb{
  position:absolute;top:1rem;right:1.15rem;width:68px;height:68px;
  opacity:.5;pointer-events:none;
}
.kg-emb svg{width:100%;height:100%;display:block;}
.kg-tar.kg-nav .kg-emb,.kg-tar.kg-bor .kg-emb{opacity:.6;}
@media (max-width:620px){ .kg-emb{width:52px;height:52px;top:.9rem;right:.9rem;} }

/* астролябия за заголовком вместо круга со знаками */
.kg-zodiac{opacity:.2;}
@media (max-width:900px){ .kg-zodiac{opacity:.14;} }

/* ===================================================================
   Правки 10.10: цифры, приборы, два главных раздела.
=================================================================== */

/* Римская цифра строго по центру кружка. Раньше она падала в левый
   верхний угол: сетка выравнивала её по началу строки, а не по центру. */
.kg-num{
  display:flex !important;align-items:center;justify-content:center;
  width:2.6rem;height:2.6rem;padding:0;line-height:1;
  font-family:var(--serif-kicker,Georgia,serif);font-size:1rem;letter-spacing:.02em;
}
.kg-item{align-items:start;}

/* Прибор не должен обрезаться скруглённым углом карточки. */
.kg-emb{top:1.3rem;right:1.4rem;width:62px;height:62px;}
@media (max-width:620px){ .kg-emb{width:46px;height:46px;top:1.1rem;right:1.1rem;} }

/* Сколько мест - прямо над кнопкой, чтобы читалось в момент решения. */
.kg-seats{
  display:flex;align-items:center;gap:.5rem;margin:.2rem 0 .7rem;
  font-size:.86rem;color:var(--kg-ink-soft);
}
.kg-seats b{
  font-family:var(--serif-kicker,Georgia,serif);font-size:1.25rem;
  color:var(--kg-gold-dp);line-height:1;
}
.kg-tar.kg-nav .kg-seats,.kg-tar.kg-bor .kg-seats{color:#D9CDB8;}
.kg-tar.kg-nav .kg-seats b,.kg-tar.kg-bor .kg-seats b{color:var(--kg-gold-lt);}

/* ─────────── «какой из них ваш» ─────────── */

.kg-choose{padding:clamp(1.6rem,4vw,2.6rem);border-left:0;}
.kg-choose h3{
  text-transform:uppercase;letter-spacing:.1em;font-size:1.05rem;
  text-align:center;margin-bottom:.4rem;color:var(--kg-gold-dp);
}
.kg-choose .kg-sub{
  text-align:center;color:var(--kg-ink-soft);max-width:46ch;margin:0 auto 1.6rem;
}
.kg-two{display:grid;gap:1rem;}
@media (min-width:820px){ .kg-two{grid-template-columns:1fr 1fr;gap:1.4rem;} }
.kg-col{
  padding:1.3rem 1.4rem;border-radius:18px;
  background:rgba(255,255,255,.6);border:1px solid rgba(199,154,60,.28);
}
.kg-col .kg-ttl{
  display:block;font-family:var(--serif-kicker,Georgia,serif);font-size:1.15rem;
  color:var(--kg-ink);margin-bottom:.2rem;
}
.kg-col .kg-ask{
  display:block;font-size:1.02rem;line-height:1.4;color:var(--kg-gold-dp);
  margin-bottom:.7rem;
}
.kg-col p{font-size:.95rem;line-height:1.6;color:var(--kg-ink-soft);margin:0;}
.kg-col em{font-style:normal;color:var(--kg-ink);border-bottom:1px solid rgba(199,154,60,.5);}
.kg-advice{
  margin-top:1.4rem;padding:1.1rem 1.3rem;border-radius:16px;
  background:rgba(199,154,60,.1);border:1px solid rgba(199,154,60,.3);
  font-size:.97rem;line-height:1.6;color:var(--kg-ink-soft);
}
.kg-advice b{color:var(--kg-ink);}
.kg-choose .kg-q{
  margin-top:1.4rem;padding-top:1.1rem;text-align:center;
  border-top:1px solid rgba(199,154,60,.3);
  font-family:var(--serif-kicker,Georgia,serif);font-size:clamp(1.05rem,2.4vw,1.3rem);
  color:var(--kg-gold-dp);
}

/* ─────────── «что будет после оплаты» на лазурите ─────────── */

.kg-after{
  position:relative;overflow:hidden;isolation:isolate;color:#E9DFCC;
  padding:clamp(2.4rem,6vw,3.6rem) 0;
  background:
    radial-gradient(760px 420px at 20% 0%, rgba(54,80,127,.55), transparent 64%),
    linear-gradient(165deg, var(--kg-nav) 0%, var(--kg-nav-dp) 100%);
}
.kg-after::after{
  content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.55;
  background-image:
    radial-gradient(1.3px 1.3px at 12% 22%, rgba(255,246,224,.9), transparent),
    radial-gradient(1.1px 1.1px at 34% 8%,  rgba(255,246,224,.7), transparent),
    radial-gradient(1.5px 1.5px at 61% 18%, rgba(255,246,224,.8), transparent),
    radial-gradient(1.2px 1.2px at 83% 34%, rgba(255,246,224,.75), transparent),
    radial-gradient(1.4px 1.4px at 73% 72%, rgba(255,246,224,.7), transparent),
    radial-gradient(1.1px 1.1px at 22% 78%, rgba(255,246,224,.65), transparent);
}
.kg-after h2{color:#FBF3E3;}
.kg-after .kg-kicker{color:var(--kg-gold-lt);}
.kg-after .kg-kicker::before,.kg-after .kg-kicker::after{background:rgba(235,205,140,.6);}

.kg-steps{display:grid;gap:.9rem;margin-top:1.8rem;counter-reset:kgs;list-style:none;}
.kg-steps li{
  display:grid;grid-template-columns:auto 1fr;gap:1.1rem;align-items:start;
  padding:1.1rem 1.3rem;border-radius:18px;
  background:rgba(255,255,255,.05);border:1px solid rgba(235,205,140,.16);
}
.kg-steps li::before{
  counter-increment:kgs;content:counter(kgs);
  display:flex;align-items:center;justify-content:center;
  width:2.4rem;height:2.4rem;border-radius:50%;flex:none;
  border:1px solid rgba(235,205,140,.5);color:var(--kg-gold-lt);
  font-family:var(--serif-kicker,Georgia,serif);font-size:.95rem;line-height:1;
}
.kg-steps h3{font-size:1.05rem;color:#FBF3E3;margin-bottom:.25rem;}
.kg-steps p{font-size:.94rem;line-height:1.58;color:#CFC3AE;margin:0;}

/* Первый шаг - главный: человеку никуда не уходить, форма прямо там. */
.kg-steps li.kg-first{
  background:
    radial-gradient(420px 200px at 10% 0%, rgba(235,205,140,.16), transparent 70%),
    rgba(235,205,140,.09);
  border-color:rgba(235,205,140,.5);
  box-shadow:0 18px 40px -26px rgba(0,0,0,.7);
}
.kg-steps li.kg-first::before{
  background:linear-gradient(145deg,#F0D49A,#C39A4E);color:#2E2110;border-color:transparent;
}
.kg-steps li.kg-first h3{font-size:1.18rem;}
.kg-steps li.kg-first p{color:#E6DAC4;}
.kg-steps .kg-mark{
  display:inline-block;margin-top:.6rem;padding:.3rem .7rem;border-radius:999px;
  background:rgba(235,205,140,.16);border:1px solid rgba(235,205,140,.4);
  font-size:.82rem;color:var(--kg-gold-lt);
}

/* ─────────── первый экран: больше звёзд, прибор не лезет в текст ─────────── */

.kg-zodiac{right:-12rem;width:min(30rem,46vw);opacity:.14;}
@media (max-width:900px){ .kg-zodiac{right:-40%;opacity:.1;} }
.kg-hero::after{
  opacity:.75;
  background-image:
    radial-gradient(1.4px 1.4px at 14% 18%, rgba(255,246,224,.95), transparent),
    radial-gradient(1.2px 1.2px at 32% 9%,  rgba(255,246,224,.8), transparent),
    radial-gradient(1.6px 1.6px at 58% 22%, rgba(255,246,224,.85), transparent),
    radial-gradient(1.1px 1.1px at 77% 12%, rgba(255,246,224,.75), transparent),
    radial-gradient(1.3px 1.3px at 89% 31%, rgba(255,246,224,.9), transparent),
    radial-gradient(1.2px 1.2px at 46% 6%,  rgba(255,246,224,.65), transparent),
    radial-gradient(1.5px 1.5px at 6% 42%,  rgba(255,246,224,.75), transparent),
    radial-gradient(1.3px 1.3px at 24% 58%, rgba(255,246,224,.7), transparent),
    radial-gradient(1.1px 1.1px at 41% 77%, rgba(255,246,224,.6), transparent),
    radial-gradient(1.6px 1.6px at 66% 48%, rgba(255,246,224,.8), transparent),
    radial-gradient(1.2px 1.2px at 84% 66%, rgba(255,246,224,.7), transparent),
    radial-gradient(1.4px 1.4px at 93% 84%, rgba(255,246,224,.75), transparent),
    radial-gradient(1.1px 1.1px at 53% 90%, rgba(255,246,224,.6), transparent),
    radial-gradient(1.3px 1.3px at 9% 86%,  rgba(255,246,224,.65), transparent);
  animation:kgTwinkle 7s ease-in-out infinite alternate;
}
@keyframes kgTwinkle{ from{opacity:.5;} to{opacity:.85;} }
@media (prefers-reduced-motion:reduce){ .kg-hero::after{animation:none;} }
/* прилив света снизу - небо не обрывается, а переходит в пергамент */
.kg-hero{
  background:
    radial-gradient(900px 520px at 78% 14%, rgba(235,205,140,.28), transparent 60%),
    radial-gradient(760px 500px at 12% 86%, rgba(110,27,34,.45), transparent 64%),
    radial-gradient(1200px 300px at 50% 104%, rgba(251,245,234,.5), transparent 70%),
    linear-gradient(162deg, var(--kg-nav-dp) 0%, #22172A 44%, #3A2318 78%, #4A2A14 100%);
}

/* ===================================================================
   Правки 10.10 (второй круг): тарифы, два текстовых раздела, акценты.
=================================================================== */

/* ── тарифы ── */

/* Фраза «хочу...» - это голос человека. Она должна бросаться в глаза,
   потому что по ней он себя и узнаёт. Ставим в рамку. */
.kg-tar .who{
  display:block;margin:.5rem 0 .2rem;padding:.6rem .9rem;border-radius:14px;
  border:1px solid rgba(199,154,60,.55);
  background:rgba(199,154,60,.07);
  font-family:var(--serif-kicker,Georgia,serif);font-size:1.02rem;line-height:1.35;
  color:var(--kg-ink);text-align:center;
}
.kg-tar .who em{font-style:normal;border-bottom:1.5px solid var(--kg-gold);padding-bottom:1px;}
.kg-tar.kg-nav .who{color:#F3EADA;border-color:rgba(235,205,140,.6);background:rgba(235,205,140,.1);}
.kg-tar.kg-bor .who{color:#F7E9E2;border-color:rgba(235,205,140,.55);background:rgba(235,205,140,.09);}
.kg-tar.kg-nav .who em,.kg-tar.kg-bor .who em{border-bottom-color:var(--kg-gold-lt);}

/* Места - ровно над кнопкой, по центру. */
.kg-seats{
  display:block;text-align:center;margin:auto 0 .7rem;
  font-size:.9rem;color:var(--kg-ink-soft);
}
.kg-seats b{
  display:inline;font-family:var(--serif-kicker,Georgia,serif);
  font-size:1.3rem;color:var(--kg-gold-dp);
}
.kg-tar .kg-seats + span[data-book-when] .btn,
.kg-tar .kg-seats + .btn{margin-top:0;}

/* Лента «этот советует Андрей Vidhaya» - её нельзя не заметить. */
.kg-pick{
  position:absolute;left:0;right:0;top:0;z-index:2;
  padding:.5rem .9rem;text-align:center;
  background:linear-gradient(90deg,#C39A4E,#F0D49A 50%,#C39A4E);
  color:#2E2110;font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;
  border-radius:24px 24px 0 0;
}
.kg-tar.kg-nav{padding-top:3.4rem;}
.kg-tar.kg-nav::after{display:none;}
.kg-tar.kg-nav .kg-tag{top:3.1rem;}
.kg-tar.kg-nav .kg-emb{top:3.4rem;}

/* ── раздел «что это» ── */

.kg-what{display:grid;gap:1rem;margin-top:1.6rem;}
@media (min-width:860px){ .kg-what{grid-template-columns:1fr 1fr;gap:1.2rem;} }
.kg-vs{padding:1.4rem 1.5rem;border-radius:20px;}
.kg-vs.bad{background:rgba(110,27,34,.07);border:1px solid rgba(110,27,34,.22);}
.kg-vs.good{background:rgba(199,154,60,.12);border:1px solid rgba(199,154,60,.42);}
.kg-vs .kg-lbl{
  display:block;font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;
  margin-bottom:.5rem;
}
.kg-vs.bad .kg-lbl{color:#8E3B40;}
.kg-vs.good .kg-lbl{color:var(--kg-gold-dp);}
.kg-vs .kg-say{
  display:block;font-family:var(--serif-kicker,Georgia,serif);font-size:1.18rem;
  line-height:1.35;color:var(--kg-ink);margin-bottom:.5rem;
}
.kg-vs p{font-size:.95rem;line-height:1.6;color:var(--kg-ink-soft);margin:0;}
.kg-note{
  margin-top:1.2rem;padding:1.1rem 1.3rem;border-radius:18px;
  background:rgba(255,255,255,.62);border:1px solid rgba(199,154,60,.3);
  font-size:1rem;line-height:1.65;color:var(--kg-ink-soft);
}
.kg-note b{color:var(--kg-ink);}

/* ── оглавление цветными плашками ── */

.kg-item{position:relative;overflow:hidden;}
.kg-item b{text-transform:uppercase;letter-spacing:.06em;font-size:.98rem;line-height:1.3;}
.kg-toc li:nth-child(6n+1) .kg-frame{background:linear-gradient(165deg,rgba(199,154,60,.16),rgba(255,255,255,.62));}
.kg-toc li:nth-child(6n+2) .kg-frame{background:linear-gradient(165deg,rgba(54,80,127,.14),rgba(255,255,255,.62));}
.kg-toc li:nth-child(6n+3) .kg-frame{background:linear-gradient(165deg,rgba(154,48,57,.12),rgba(255,255,255,.62));}
.kg-toc li:nth-child(6n+4) .kg-frame{background:linear-gradient(165deg,rgba(138,95,24,.14),rgba(255,255,255,.62));}
.kg-toc li:nth-child(6n+5) .kg-frame{background:linear-gradient(165deg,rgba(27,42,74,.13),rgba(255,255,255,.62));}
.kg-toc li:nth-child(6n+6) .kg-frame{background:linear-gradient(165deg,rgba(110,27,34,.12),rgba(255,255,255,.62));}

.kg-pillar h3,.kg-steps h3{text-transform:uppercase;letter-spacing:.05em;font-size:1rem;}
.kg-steps li.kg-first h3{font-size:1.1rem;}

/* ── «какой из них ваш»: крупнее ── */

.kg-choose h3{font-size:clamp(1.4rem,3.4vw,2rem);letter-spacing:.12em;margin-bottom:.6rem;}
.kg-choose .kg-sub{font-size:1.05rem;}
.kg-col .kg-ttl{text-transform:uppercase;letter-spacing:.06em;font-size:1rem;}

/* ── заголовок на лазурите виден ── */
.kg-after h2,.kg-after .h-nyght{color:#FBF3E3 !important;}

/* ── переход к Астровкусу - в его ночном цвете ── */
.kg-cross{
  color:#EDE3F2;border:1px solid rgba(235,205,140,.3);border-radius:22px;
  background:
    radial-gradient(620px 320px at 18% 0%, rgba(90,60,130,.5), transparent 64%),
    linear-gradient(165deg,#231A33 0%,#140F1D 100%);
}
.kg-cross h3{color:#FBF3E3;text-transform:uppercase;letter-spacing:.05em;font-size:1.05rem;}
.kg-cross p{color:#C9BDD4;}
.kg-cross .btn-glass-light{color:#FBF3E3;border-color:rgba(235,205,140,.6);background:rgba(255,255,255,.07);}
.kg-cross .btn-glass-light:hover{background:rgba(255,255,255,.14);}

/* Переход к Астровкусу: общее правило темы перебивало фон, и светлый
   текст ложился на светлую карточку. Поднимаем вес селектора. */
body.t-book .next.kg-cross{
  color:#EDE3F2;border:1px solid rgba(235,205,140,.32);border-radius:22px;
  background:
    radial-gradient(620px 320px at 18% 0%, rgba(90,60,130,.55), transparent 64%),
    linear-gradient(165deg,#241A35 0%,#140F1D 100%);
  box-shadow:0 30px 60px -34px rgba(20,15,29,.85);
}
body.t-book .next.kg-cross h3{color:#FBF3E3;}
body.t-book .next.kg-cross p{color:#CDC1D8;}
body.t-book .next.kg-cross .btn-glass-light{
  color:#FBF3E3;border-color:rgba(235,205,140,.65);background:rgba(255,255,255,.08);
}
body.t-book .next.kg-cross .btn-glass-light:hover{background:rgba(255,255,255,.16);}

/* ─────────── места: когда их осталось мало или не осталось ───────────
   Число мест - обещание, и оно должно читаться как обещание, а не как
   украшение. Поэтому меняем не размер, а цвет: мало - золотом, нет -
   спокойным серым, без красного и без восклицаний. */
.kg-seats-malo b{color:var(--kg-gold-dp);}
.kg-tar.kg-nav .kg-seats-malo b,.kg-tar.kg-bor .kg-seats-malo b{color:var(--kg-gold-lt);}
.kg-seats-net{opacity:.75;font-style:italic;}

/* ─────────── цена на карточке: январская зачёркнута ───────────
   Зачёркнуто не выдуманное «было», а настоящая цена той же книги с 1
   января - она стоит и в лестнице ниже. Поэтому рядом подпись с датой:
   человек видит будущее, а не поддельную скидку. */
.kg-tar .sum{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem;}
.kg-tar .sum .pr-yanvar{
  font-size:1.15rem;color:var(--kg-ink-soft);text-decoration:line-through;
  text-decoration-color:rgba(160,110,45,.6);opacity:.75;order:1;
}
.kg-tar .sum .pr-nyne{font-size:2.05rem;color:var(--kg-gold-dp);order:2;}
.kg-tar.kg-nav .sum .pr-yanvar,.kg-tar.kg-bor .sum .pr-yanvar{color:#D9CDB8;}
.kg-tar.kg-nav .sum .pr-nyne,.kg-tar.kg-bor .sum .pr-nyne{color:var(--kg-gold-lt);}

/* ─────────── шапка карточки тарифа: по центру и просторнее ───────────
   Название, запрос и цена - это одно сообщение, и читается оно сверху
   вниз по средней линии. Раньше всё жалось к левому краю мелким кеглем и
   сливалось в абзац. Список остаётся слева: перечисление так читать
   удобнее. */
/* Номер тарифа стоит в потоке, а не поверх карточки. Раньше он был
   приклеен абсолютно к верхнему краю и на карточке с лентой наезжал
   прямо на название. */
.kg-tar .kg-tag{
  position:static;display:block;text-align:center;
  margin:0 0 .35rem;
}
.kg-tar h3{
  text-align:center;font-size:1.72rem;line-height:1.2;
  letter-spacing:.03em;margin:0 0 .1rem;
}
.kg-tar .who{margin:.9rem 0 0;padding:.7rem 1rem;font-size:1.06rem;}
.kg-tar .sum{justify-content:center;margin-top:.9rem;}
.kg-tar .kg-delta{text-align:center;margin:.55rem 0 0;}
.kg-tar .sum-soon{text-align:center;}
.kg-tar ul{margin:1.5rem 0 1.3rem;}
.kg-tar .kg-emb{top:.9rem;right:1.1rem;}
@media (max-width:760px){
  .kg-tar h3{font-size:1.52rem;}
}

/* Карточке с лентой нужен отступ под саму ленту, остальным - обычный.
   Считаем от высоты ленты, а не на глаз: иначе на узком экране, где
   лента переносится в две строки, она снова наедет на номер тарифа. */
.kg-tar{padding-top:2.1rem;}
.kg-tar:has(.kg-pick){padding-top:3.2rem;}
.kg-tar.kg-nav{padding-top:3.2rem;}

/* Древний прибор - в поток, по центру над номером тарифа. В углу он
   накладывался на выровненное по центру название: на широком экране
   задевал последние буквы, на узком - и номер тоже. */
.kg-tar .kg-emb{
  position:static;display:block;margin:0 auto .55rem;
  width:56px;height:56px;
}
.kg-tar.kg-nav .kg-emb{top:auto;}
@media (max-width:620px){ .kg-tar .kg-emb{width:48px;height:48px;} }

/* ─────────── «Что вы сделаете за 2027 год» ───────────
   Блок стоит и на странице подарка, и на странице Книги Года. Фон
   лазуритовый, карточки пергаментные: так границу блока видно сразу, а
   каждый пункт читается как предмет, а не как абзац. */
.god-sec{
  padding:clamp(3.4rem,7vw,5.2rem) 0;
  background:radial-gradient(70% 50% at 50% 0%, rgba(201,154,60,.16), rgba(201,154,60,0) 64%),
             linear-gradient(170deg,#16233E 0%,#1B2A4A 54%,#241A2B 100%);
}
.god-sec .kg-kicker{color:#C79A3C;}
.god-sec .kg-kicker::before,.god-sec .kg-kicker::after{background:rgba(235,205,140,.6);}
.god-h{
  margin:0 auto;max-width:20em;font-size:clamp(2rem,4.4vw,3.1rem);line-height:1.12;color:#FBF3E3;
}
.god-folga{
  background:linear-gradient(104deg,#8A5F18 0%,#E3BE6E 22%,#FBEFD2 46%,#D9AE52 64%,#8A5F18 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.god-sub{margin:1.3rem auto 0;max-width:34em;color:#D8CBB6;}
.god-chert{display:flex;align-items:center;justify-content:center;gap:.9rem;margin:2.1rem 0 2.5rem;}
.god-chert span{width:5.6rem;height:1px;background:linear-gradient(90deg,rgba(235,205,140,0),rgba(235,205,140,.7));}
.god-chert span:last-child{background:linear-gradient(90deg,rgba(235,205,140,.7),rgba(235,205,140,0));}
.god-chert i{width:7px;height:7px;transform:rotate(45deg);background:#C79A3C;}
.god-set{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem;
  max-width:68rem;margin:0 auto;
}
.god-k{
  display:flex;gap:1.3rem;padding:1.7rem 1.7rem;border-radius:18px;
  background:#FBF7EF;border:1px solid rgba(138,95,24,.3);
  box-shadow:0 24px 46px -30px rgba(0,0,0,.7);
}
.god-k-zoloto{background:linear-gradient(170deg,#F6E3C0 0%,#EFD6AB 100%);border-color:rgba(199,154,60,.75);}
.god-n{
  flex:none;font-family:var(--serif-kicker,Georgia,serif);font-size:2.5rem;line-height:1;color:#C79A3C;
}
.god-k-zoloto .god-n{color:#8A5F18;}
.god-k h3{
  margin:0 0 .5rem;font-family:var(--serif-kicker,Georgia,serif);font-weight:400;
  font-size:1.34rem;line-height:1.22;color:#241B14;
}
.god-k p{margin:0;font-size:.95rem;line-height:1.62;color:#4A3A2C;}
@media (max-width:860px){
  .god-set{grid-template-columns:1fr;gap:1.1rem;}
  .god-k{padding:1.4rem 1.3rem;gap:1rem;}
  .god-n{font-size:2.1rem;}
  .god-k h3{font-size:1.2rem;}
}
