/* ── V3 (редакция GPT, дословно, кроме двух помеченных правок) ─────────── */
/* V3: restrained typography, legible text and a quieter purchase path. */
:root { --paper: #f1eee7; --gold: #c5a773; --gold-light: #dfc89e; }
html { scroll-padding-top: 100px; }
:focus-visible { outline: 2px solid #c5a773; outline-offset: 5px; }
.site-header, .site-header.is-solid { height: 82px; background: #0c0e12; box-shadow: none; }
.brand small { color: #b2b3b7; font-size: 9px; }
.brand-mark { filter: none; }
.primary-nav { display: flex !important; border: 0; background: transparent; }
.primary-nav a { border: 0; padding: 12px 17px; font-size: 14px !important; }
.primary-nav a small { display: none; }
.primary-nav a:hover { background: transparent; text-decoration: underline; text-underline-offset: 8px; }
.header-cta { background: #dfc89e; min-height: 46px; box-shadow: none; }
.header-cta b { font-size: 12px; text-transform: none; letter-spacing: 0; }
.header-cta i { font-style: normal; }
.hero-layout { padding-top: 150px; padding-bottom: 86px; }
.hero-copy { width: min(650px, 58vw); }
.hero h1 { font-family: var(--sans); font-size: clamp(48px, 5.65vw, 78px); line-height: 1.07; letter-spacing: -.055em; font-weight: 500; }
.hero h1 span { color: #dfc89e; }
.hero-lede { max-width: 580px; color: #dedfe1; font-size: 18px; line-height: 1.65; }
.eyebrow { font-size: 12px; letter-spacing: .09em; }
.hero-caption, .scroll-cue { display: none; }
.hero-glow { display: block; opacity: .5; animation: breathe 7s ease-in-out infinite; }
.hero-orbit { display: block; opacity: .45; }
.orbit-one { animation: orbit 65s linear infinite; }
.orbit-two { animation: orbitReverse 80s linear infinite; }
.hero-proof { margin-top: 30px; gap: 30px; }
.hero-proof span { color: #babcc2; font-size: 11px; letter-spacing: .03em; text-transform: none; }
.hero-proof b { font-family: var(--sans); font-size: 25px; }
.hero-form { background: #14161be8; box-shadow: none; }
.hero-form label span { font-size: 11px; letter-spacing: .04em; }
.primary-button, .buy-button, .plan-featured > button { background: #dfc89e; color: #191710; }
.primary-button, .buy-button, .secondary-button, .plan > a, .plan > button, .drawer-pay { font-size: 14px; font-weight: 600; letter-spacing: 0; text-transform: none; }
.primary-button::before { display: none; }
.form-note { color: #b7bac1; font-size: 11px; letter-spacing: 0; text-transform: none; gap: 20px; }
.hero-example { display: inline-flex; gap: 22px; margin-top: 24px; color: #f3efe5; font-size: 14px; text-underline-offset: 6px; }
/* 14.10: вторая ссылка героя — на калькулятор совместимости, отдельной строкой. */
.hero-compat { display: flex; width: fit-content; max-width: 100%; margin-top: 12px; color: #dfc89e; }
.section-register span, .section-register::after { display: none; }
.section-register p { color: #c8b58e; font-size: 12px; letter-spacing: .09em; }
.section-intro h2, .inside-copy h2, .method-head h2, .plans-head h2, .faq-title h2, .final-content h2, .sample-grid h2 { font-family: var(--sans); font-size: clamp(36px, 4vw, 54px); font-weight: 500; letter-spacing: -.04em; line-height: 1.13; }
.result-section, .questions-section, .inside-section, .sample-section, .method-section, .plans-section, .proof-section, .faq-section { padding-block: 100px; }
.result-section, .sample-section { background: #0b0e13; }
.section-intro { gap: 26px 70px; margin-bottom: 45px; }
.section-intro > p:last-child { color: #c6c9d0; font-size: 18px; }
.result-console { box-shadow: none; border-color: #34383f; background: #101319; }
.result-card { padding: 40px; background: #14171d; }
.result-card h3 { font-size: clamp(28px, 2.8vw, 38px); line-height: 1.19; letter-spacing: -.035em; }
.result-card-top, .result-kicker { font-size: 12px; letter-spacing: .05em; }
.result-core small { color: #d7c5a2; font-size: 11px; }
.locked-zones > div { color: #d0d2d7; font-size: 14px; }
.locked-zones small { color: #b7bbc4; font-size: 11px; letter-spacing: 0; }
.result-offer { background: transparent; padding: 24px 0 0; border: 0; border-top: 1px solid #4c4434; }
.result-offer p { font-size: 14px; color: #c7c9cf; }
.result-offer small { font-size: 12px; text-transform: none; letter-spacing: 0; }
.result-offer .buy-button { width: 100%; }
.questions-head p { font-size: clamp(32px, 3.6vw, 48px); line-height: 1.15; }
.question-grid { gap: 24px; }
.question-card { border: 0; box-shadow: none; padding: 30px; min-height: 610px; }
.question-card .symbol, .question-card > i { display: none; }
.question-card > span { font-size: 12px; letter-spacing: .07em; }
.question-card h3 { font-size: 29px; line-height: 1.2; }
.question-card p { color: #e0e1e4; font-size: 16px; }
.card-link { position: relative; z-index: 3; display: inline-block; margin-top: 24px; font-size: 14px; color: #e8d4ad; text-underline-offset: 6px; }
.question-card::after { background: linear-gradient(180deg, transparent 10%, #0b0d1170 35%, #0b0d11 70%); }
.funnel-band { background: transparent; color: #f3efe5; padding: 28px 0 0; border-top: 1px solid #424449; gap: 24px; }
.funnel-band small, .funnel-band p { color: #c7c9cd; font-size: 13px; }
.funnel-band span { font-family: var(--sans); }
.funnel-band > div:nth-child(3) { display: none; }
.funnel-band { grid-template-columns: .7fr 1fr 2fr auto; }
.buy-button-light { background: #dfc89e; color: #16130d; }
.inside-layout { gap: 70px; }
.inside-section .inside-lede { color: #45443f; font-size: 18px; }
.inside-section .feature-list p { color: #53514b; font-size: 16px; }
.inside-section .feature-list b { font-size: 17px; }
.inside-section .secondary-button { font-size: 14px; padding: 16px 22px; }
.book { box-shadow: 0 24px 48px #19181030; }
.book-front { transform: rotate(-3deg); }
.book-back { transform: rotate(-9deg); }
.book-front p { color: #c8b895; font-size: 11px; }
.sample-card { border-color: #3e4148; background: #12151b; }
.sample-grid { gap: 60px; padding: 55px; grid-template-columns: .85fr 1.15fr; }
.sample-meta { font-size: 12px; text-transform: none; letter-spacing: .02em; }
.sample-text { font-size: 18px; line-height: 1.75; }
.sample-question { border-left: 2px solid #c5a773; padding-left: 22px; margin-top: 30px; }
.sample-question small { color: #dfc89e; font-size: 12px; }
.sample-question p { margin: 8px 0 0; color: #f5f1e8; }
.sample-metrics { display: none; }
.sample-cta span { font-size: 15px; color: #c5c7cc; }
/* ⛔ .honesty b в styles.css задан антиквой более специфичным правилом:
   на одной странице оказывались две системы заголовков. */
.method-grid h3, .proof-grid article h3, .honesty b
  { font-family: var(--sans); font-size: 21px; font-weight: 500; }
.honesty b { font-size: 16px; font-weight: 600; }
.method-grid p, .honesty p, .proof-grid p, .faq-list details p { color: #c6c9d0; font-size: 16px; line-height: 1.7; }
.method-grid article { background: transparent; }
.honesty { margin-top: 35px; }
.plan { box-shadow: none; }
.plan > p, .plan li, .other-plans { font-size: 16px; line-height: 1.65; }
.plan-top > span { font-size: 14px; letter-spacing: .04em; }
.plan-top > b { font-family: var(--sans); font-weight: 500; }
.plan-featured { background: #171a20; }
.recommend { background: #dfc89e; color: #201a0f; font-size: 12px; text-transform: none; letter-spacing: 0; }
.proof-title span, .proof-title b { font-family: var(--sans); font-style: normal; font-size: 36px; letter-spacing: -.03em; }
.proof-grid a { color: #dfc89e; font-size: 14px; text-underline-offset: 6px; }
.faq-list summary { font-family: var(--sans); font-size: 18px; }
.final-bg { display: none; }
.final-section { background: #14171b; padding-block: 90px; min-height: 0; }
.final-content > p:last-child { color: #c7c9cf; font-size: 12px; letter-spacing: .03em; }
.footer-grid > div > p, .footer-grid > div > a { font-size: 14px; color: #bfc1c7; }
.footer-grid > div > b { font-size: 12px; }
.footer-bottom { color: #a5a8b0; font-size: 11px; }
.is-calculating .result-card { opacity: 1; }
.purchase-dock { display: none; }
.purchase-drawer { transition-duration: .25s; }
.purchase-drawer > p:not(.drawer-step), .purchase-drawer li { font-size: 16px; color: #4e4b45; }
.purchase-drawer label { font-size: 12px; letter-spacing: .03em; }
.purchase-drawer input { color-scheme: light; min-width: 0; }
.drawer-note { color: #59554e; font-size: 12px; }
.reveal-on-scroll { opacity: 1; transform: translateY(22px); transition: transform .8s cubic-bezier(.2,.75,.25,1); }
.reveal-on-scroll.is-visible { opacity: 1; transform: translateY(0); }
.hero-copy { animation: editorial-enter .8s cubic-bezier(.2,.75,.25,1) both; }
.book-front { animation: book-drift 10s ease-in-out infinite; }
.question-card::before { transition: transform 1.2s cubic-bezier(.2,.75,.25,1); }
.question-card:hover::before { transform: scale(1.055); }
.primary-button, .buy-button, .header-cta { transition: background .2s, transform .2s; }
.primary-button:hover, .buy-button:hover, .header-cta:hover { transform: translateY(-2px); }
@keyframes editorial-enter { from { transform: translateY(18px); } to { transform: translateY(0); } }
@keyframes book-drift { 0%, 100% { transform: translateY(0) rotate(-3deg); } 50% { transform: translateY(-9px) rotate(-2deg); } }
@media (prefers-reduced-motion: reduce) {
  .reveal-on-scroll { transform: none; }
  .hero-glow, .hero-orbit, .hero-copy, .book-front { animation: none; }
}
@media (max-width: 1120px) {
  .site-header { grid-template-columns: 170px 1fr auto; }
  .primary-nav a { padding: 10px !important; font-size: 12px !important; }
  .funnel-band { grid-template-columns: 1fr 1fr; }
  .funnel-band p { grid-column: 1; }
  .funnel-band .buy-button { grid-column: 2; }
}
@media (max-width: 980px) {
  .site-header { grid-template-columns: 1fr auto; }
  .primary-nav { display: none !important; }
  .hero-copy { width: min(620px, 80%); }
  .sample-grid { grid-template-columns: 1fr; gap: 26px; }
  .question-card { padding: 25px; }
}
@media (max-width: 640px) {
  :root { --shell: calc(100vw - 40px); }
  .site-header, .site-header.is-solid { height: 72px; padding-inline: 20px; }
  .brand b { font-size: 10px; letter-spacing: .18em; }
  .brand small { display: none; }
  .header-cta { padding: 11px 13px; min-height: 42px; }
  .header-cta b { font-size: 11px; }
  .hero-layout { padding: 140px 0 65px; min-height: 0; }
  .hero-copy { width: 100%; }
  .hero h1 { font-size: clamp(39px, 10.4vw, 60px); line-height: 1.12; }
  .hero-lede { font-size: 16px; }
  .eyebrow { font-size: 10px; letter-spacing: .04em; }
  .form-note { gap: 8px; flex-wrap: wrap; font-size: 11px; }
  .hero-proof { gap: 22px; }
  .hero-proof span { font-size: 10px; }
  .hero-proof b { font-size: 23px; }
  .result-section, .questions-section, .inside-section, .sample-section, .method-section, .plans-section, .proof-section, .faq-section { padding-block: 64px; }
  .section-intro { gap: 22px; }
  .section-intro > p:last-child, .inside-section .inside-lede { font-size: 17px; }
  .section-intro h2, .inside-copy h2, .method-head h2, .plans-head h2, .faq-title h2, .final-content h2, .sample-grid h2 { font-size: 34px; }
  .result-card { padding: 26px 22px; }
  .result-card h3 { font-size: 29px; }
  .result-card > p:not(.result-kicker) { font-size: 16px; }
  .result-card-top { font-size: 10px; }
  .question-card { min-height: 560px; }
  .question-card p { font-size: 16px; }
  .funnel-band p, .funnel-band .buy-button { grid-column: 1 / -1; }
  .inside-section .feature-list li { grid-template-columns: 30px 1fr; gap: 15px; }
  .sample-grid { padding: 26px 22px; }
  .sample-meta { padding: 18px 22px; gap: 15px; }
  .sample-meta b { display: none; }
  .sample-text { font-size: 17px; }
  .sample-cta { padding: 24px 22px; }
  .plan { padding: 30px 25px; }
  .final-form { width: 100%; }
  .purchase-drawer { padding: 60px 24px 30px; }
}


/* ── V4 «atelier» (редакция GPT, atelier.css дословно) ────────────────────
   Слой светлых блоков, зелёного акцента, фона астролябии и карточек зон.
   Держим его отдельным куском без правок: так его можно сверить с
   исходником построчно. Всё наше — ниже, в слое «OKTAGRAM». */
/* V4 — typographic, product-led edition. */
:root { --paper:#f2f1ed; --gold:#c7ab75; --gold-light:#ead8ae; }
body { background:#101215; }
.shell { width:min(1280px,calc(100% - 80px)); }
.site-header,.site-header.is-solid { background:#111316f5; height:88px; padding-inline:40px; }
.brand b { font-size:14px; letter-spacing:.2em; }
.brand small { font-size:12px; letter-spacing:.02em; }
.header-cta b { font-size:14px; }
.primary-nav a { font-size:15px!important; }
.hero { background:#111316; min-height:0; overflow:hidden; }
.hero::before { opacity:.28; background:url('assets/hero-astrolabe-v2.webp') 85% center / cover no-repeat; }
.hero::after { background:linear-gradient(90deg,#111316 5%,#11131655 70%,#11131699); }
.hero-layout { display:grid; grid-template-columns:1.25fr 1fr; align-items:center; gap:80px; padding:162px 0 76px; min-height:0; }
.hero-copy { width:100%; }
.hero h1 { font-size:clamp(42px,4.9vw,72px); line-height:1.08; letter-spacing:-.045em; }
.hero h1 span { font-size:.76em; display:block; margin-top:14px; color:#ead8ae; }
.hero-lede { font-size:18px; max-width:550px; margin-top:26px; }
.eyebrow,.section-register p { font-size:13px; letter-spacing:.06em; }
.hero-form { margin-top:28px; padding:7px; border-color:#575959; }
.hero-form label span,.form-note,.hero-proof span { font-size:12px; }
.primary-button { min-height:62px; font-size:15px; gap:15px; }
.form-note { gap:14px; }
.hero-proof { gap:30px; margin-top:26px; }
.hero-proof b { font-size:24px; }
.hero-edition { position:relative; z-index:2; padding:34px; background:#eeece5; color:#202525; box-shadow:16px 20px 0 #ffffff08,0 35px 65px #0004; transform:rotate(2deg); border-top:6px solid #a89c7d; animation:edition-in 1s ease both; }
.edition-top { display:flex; justify-content:space-between; gap:15px; padding-bottom:30px; border-bottom:1px solid #c9c7bc; font-size:12px; letter-spacing:.07em; }
.edition-label { margin:36px 0 14px; text-transform:uppercase; font-size:13px; color:#685b41; }
.hero-edition h2 { font-family:var(--sans); font-size:clamp(30px,3vw,44px); line-height:1.15; letter-spacing:-.035em; font-weight:500; }
.hero-edition > p:not(.edition-label) { font-size:17px; line-height:1.65; margin:22px 0; color:#474a45; }
.edition-note { border-left:3px solid #97825b; padding:0 0 0 20px; margin:26px 0; }
.edition-note span { font-size:12px; text-transform:uppercase; color:#6b604b; }
.edition-note p { font-size:21px; line-height:1.4; margin-top:9px; }
.hero-edition a { display:flex; justify-content:space-between; border-top:1px solid #c9c7bc; padding-top:20px; font-size:16px; font-weight:600; }
.hero-edition small { display:block; font-size:12px; color:#65655c; margin-top:20px; }
.hero-orbit { opacity:.16; pointer-events:none; }
.result-section,.questions-section,.inside-section,.method-section,.plans-section,.faq-section { padding-block:76px; }
.section-intro { gap:20px 60px; }
.section-intro h2,.reader-heading h2,.plans-head h2,.method-head h2 { font-family:var(--sans); font-size:clamp(34px,3.7vw,52px); letter-spacing:-.035em; line-height:1.13; font-weight:500; }
.result-console { grid-template-columns:1fr 1.1fr; border:0; background:#15191c; }
.result-visual { min-height:540px; background:radial-gradient(ellipse at center,#303029,#14181a 68%); }
.result-card { padding:32px; background:#1a1f22; }
.result-card-top,.result-kicker { font-size:13px; }
.result-card h3 { font-size:32px; }
.result-card > p:not(.result-kicker) { font-size:17px; line-height:1.65; color:#d1d5d4; }
.result-core strong { font-size:62px; }
.result-core span { font-family:var(--sans); font-size:22px; }
.locked-zones { display:none; }
.result-offer { margin-top:28px; }
.result-offer p,.result-offer small { font-size:14px; }
.result-ready { font-size:12px; }
.questions-head { margin-bottom:30px; }
.questions-head p { font-size:36px; }
.question-card { min-height:490px; padding:25px; }
.question-card h3 { font-size:27px; }
.question-card > span { font-size:13px; }
.funnel-band,.inside-layout,.sample-section,.proof-section,.other-plans { display:none; }
.inside-section { background:var(--paper); color:#202624; }
.reader-heading { display:grid; grid-template-columns:1.2fr 1fr; gap:80px; align-items:end; margin-bottom:40px; }
.reader-heading .eyebrow { color:#695b43; margin-bottom:16px; }
.reader-heading > p { font-size:17px; color:#535a54; line-height:1.7; max-width:430px; }
.report-reader { display:grid; grid-template-columns:280px 1fr; border:1px solid #cccec6; background:#e4e5dd; }
.reader-index { padding:25px; }
.reader-index button { background:transparent; display:flex; gap:18px; width:100%; text-align:left; color:#566056; padding:20px 5px; border:0; border-bottom:1px solid #c4c8bd; font:500 15px var(--sans); cursor:pointer; }
.reader-index button[aria-selected=true] { color:#172c24; border-bottom:2px solid #536854; }
.reader-caption { margin-top:46px; font-size:14px; line-height:1.7; color:#5b655b; }
.reader-page { background:#fcfcf7; padding:40px 55px; min-height:570px; }
.reader-meta { display:flex; justify-content:space-between; font-size:12px; color:#64705f; letter-spacing:.07em; border-bottom:1px solid #d7dbcf; padding-bottom:22px; }
.reader-kicker { margin:28px 0 16px; color:#5b694f; font-size:14px; }
.reader-page h3 { font:500 clamp(27px,3vw,40px)/1.18 var(--sans); letter-spacing:-.03em; max-width:600px; }
#readerBody { font-size:18px; line-height:1.75; max-width:650px; margin:24px 0; color:#454d42; }
.reader-exercise { padding:21px 24px; border-left:3px solid #758167; background:#eef0e6; }
.reader-exercise b { font-size:14px; color:#3f5138; }
.reader-exercise p { font-size:17px; line-height:1.65; margin-top:8px; }
.reader-bottom { margin-top:28px; display:flex; align-items:center; justify-content:space-between; gap:20px; font-size:12px; color:#66705f; }
.reader-bottom button { width:48px; height:44px; background:#243e32; color:white; border:0; cursor:pointer; font-size:24px; flex-shrink:0; }
.reader-purchase { margin-top:26px; display:flex; justify-content:space-between; align-items:center; gap:24px; }
.reader-purchase p { font-size:16px; line-height:1.8; color:#4a5146; }
.reader-purchase .buy-button { background:#243e32; color:white; }
.method-head { margin-bottom:30px; }
.method-grid article { padding:28px; min-height:0; }
.method-grid article > span { margin-bottom:30px; }
.method-grid h3 { margin-top:20px; }
.honesty { padding:22px 0; }
.plans-section { background:#e8ebe5; }
.plans-head { margin-bottom:35px; }
.plan { display:flex; flex-direction:column; padding:30px; border-color:#bfc7bc; }
.plan > p { min-height:65px; }
.plan > a,.plan > button { margin-top:auto; min-height:54px; font-size:15px; }
.plan ul { flex:1; margin-bottom:28px; }
.plan-featured { background:#243e32; border-color:#243e32; }
.plan-featured li,.plan-featured > p { color:#e5eadf; }
.plan-featured .plan-top > span { color:#e0d4b4; }
.plan-top > b { font-size:48px; }
.recommend { background:#c9d6bf; }
.faq-list summary { font-size:18px; }
.final-section { padding-block:64px; }
.final-content h2 { font-size:40px; }
.site-footer { padding-top:45px; }
.footer-grid { gap:35px; }
.footer-bottom { margin-top:35px; font-size:12px; }
.mobile-menu-toggle { display:none; }
.zones-explorer { margin-top:30px; border-top:1px solid #414944; padding-top:25px; }
.zone-buttons { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:20px; }
.zone-buttons button { border:1px solid #556055; background:transparent; padding:11px 16px; color:#e4e8e1; font:500 14px var(--sans); cursor:pointer; }
.zone-buttons button[aria-pressed=true] { background:#d6ddce; color:#1c3024; }
.zone-description { max-width:720px; color:#cdd4cb; font-size:17px; line-height:1.6; }
.zone-description strong { color:#fff; }
@keyframes edition-in { from { opacity:0; transform:translateY(25px) rotate(0); } to { opacity:1; transform:translateY(0) rotate(2deg); } }
@keyframes page-in { from { opacity:.4; transform:translateX(10px); } to { opacity:1; transform:none; } }
.reader-page.is-turning { animation:page-in .35s ease; }
@media(max-width:1100px) { .hero-layout{gap:35px}.hero-edition{padding:26px}.site-header{padding-inline:24px}.primary-nav a{padding:9px!important}.brand small{display:none}.report-reader{grid-template-columns:230px 1fr}.reader-page{padding:32px}.shell{width:calc(100% - 48px)} }
@media(max-width:980px) { .site-header{grid-template-columns:1fr auto auto;gap:16px}.mobile-menu-toggle{display:block;background:transparent;border:1px solid #62695d;color:white;padding:12px;font:500 14px var(--sans)}.primary-nav.is-open{display:flex!important;position:absolute;top:88px;left:0;right:0;flex-wrap:wrap;background:#171d19;padding:20px;border-bottom:1px solid #65705e}.hero h1{font-size:44px}.hero-layout{grid-template-columns:1.1fr 1fr}.hero-form{display:flex;flex-direction:column;align-items:stretch}.hero-form label{width:100%}.hero-edition h2{font-size:32px}.hero-proof{display:none}.result-console{grid-template-columns:1fr}.result-visual{min-height:420px}.reader-heading{gap:30px}.question-grid{gap:16px}.question-card{padding:20px}.question-card h3{font-size:23px} }
@media(max-width:640px) { .shell{width:calc(100% - 36px)}.site-header,.site-header.is-solid{height:72px;padding-inline:18px;gap:12px}.header-cta{display:none}.site-header{grid-template-columns:1fr auto}.brand b{font-size:13px}.primary-nav.is-open{top:72px}.hero-layout{grid-template-columns:1fr;padding:110px 0 45px;gap:38px}.hero h1{font-size:42px}.hero h1 span{font-size:.75em}.hero-lede{font-size:17px;margin-top:20px}.hero-form{margin-top:22px}.hero-form label{padding:12px}.hero-edition{transform:none;animation:none;padding:25px}.edition-top{padding-bottom:20px}.edition-label{margin-top:22px}.hero-edition h2{font-size:32px}.hero-edition > p:not(.edition-label){font-size:16px}.edition-note p{font-size:20px}.form-note{font-size:12px;gap:12px}.eyebrow{font-size:12px}.result-section,.questions-section,.inside-section,.method-section,.plans-section,.faq-section{padding-block:48px}.section-intro{margin-bottom:25px}.result-visual{min-height:360px}.result-card{padding:24px 20px}.result-card h3{font-size:28px}.result-card-top{font-size:12px}.result-core strong{font-size:44px}.result-core span{font-size:18px}.questions-head p{font-size:30px}.question-grid{display:grid;grid-template-columns:1fr}.question-card{min-height:420px;padding:25px}.question-card h3{font-size:28px}.reader-heading{grid-template-columns:1fr;gap:18px;margin-bottom:25px}.reader-heading h2{font-size:34px}.report-reader{grid-template-columns:1fr}.reader-index{display:flex;overflow:auto;padding:0 12px;gap:14px}.reader-index button{font-size:13px;flex:0 0 auto;width:auto;gap:8px;padding:18px 0}.reader-caption{display:none}.reader-page{padding:25px 20px;min-height:600px}.reader-page h3{font-size:29px}#readerBody{font-size:17px}.reader-exercise{padding:17px}.reader-meta{font-size:12px;letter-spacing:0}.reader-purchase{flex-direction:column;align-items:stretch}.reader-purchase .buy-button{width:100%}.method-grid article{padding:24px}.method-grid article>span{margin-bottom:10px}.method-grid h3{margin-top:14px}.honesty{display:block}.honesty p{margin-top:12px}.plan>p{min-height:0}.plan{padding:26px}.final-content h2{font-size:34px}.zone-buttons{gap:7px}.zone-buttons button{padding:10px 12px}.footer-grid{grid-template-columns:1fr}.footer-bottom{gap:18px;flex-wrap:wrap}.primary-button{min-height:54px} }
@media(prefers-reduced-motion:reduce) { .hero-edition,.reader-page.is-turning{animation:none} }


/* ══ Слой OKTAGRAM (26.09) ═══════════════════════════════════════════════
   Визуал выше — редакция V4 целиком. Здесь только то, чего в ней нет или
   что у нас устроено иначе: страница книги в первом экране, семь зон книги
   с честной строкой «с какого тарифа», форма почты, блок с макетом книги,
   листалка настоящего образца на светлом, четыре карточки тарифов,
   раскрывашка 190 ₽, полоса «Дороговато?», мобильное меню и правки
   доступности (кегли, фокус, отступ под полосой).
   ⛔ Картинки — только файлы V4 из assets/ (астролябия и три сцены зон).
   Контраст на бумаге: подписи #6b5a36 (6:1), текст #2e2a23 (13:1). */

/* ── страница книги: общий вид для первого экрана и листалки ──────────── */
.leaf { --leaf-rule: #c5a773; --leaf-lab: #7a5c2b; background: #f7f2e6; color: #2e2a23;
  padding: 28px 32px 24px; font-family: var(--sans); text-align: left; }
.leaf p { margin: 0; }
.leaf-run { display: flex; justify-content: space-between; gap: 12px; padding-bottom: 11px;
  border-bottom: 1px solid var(--leaf-rule); color: var(--leaf-lab); font-size: 11px;
  font-weight: 600; letter-spacing: .14em; text-transform: uppercase; }
.leaf-part { margin-top: 20px !important; color: var(--leaf-lab); font-size: 11px; font-weight: 600;
  letter-spacing: .14em; text-transform: uppercase; }
.leaf-kicker { margin-top: 12px !important; color: #5c5446; font-size: 11px; font-weight: 500;
  letter-spacing: .14em; text-transform: uppercase; }
.leaf-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px;
  margin-top: 6px; padding-bottom: 12px; border-bottom: 2px solid var(--leaf-rule); }
.leaf .leaf-title { margin: 0; color: #2b2720; font-family: var(--serif); font-size: 27px;
  font-weight: 400; line-height: 1.22; letter-spacing: 0; }
.leaf-num { flex: none; color: #a8864f; font-family: var(--serif); font-size: 46px;
  font-weight: 400; line-height: .9; }
.leaf-body p { margin-top: 18px; color: #2e2a23; font-family: var(--serif); font-size: 16.5px;
  line-height: 1.72; hyphens: auto; -webkit-hyphens: auto; }
.leaf-cut { color: var(--leaf-lab); font-family: var(--sans); font-size: .82em; white-space: nowrap; }
.leaf-foot { display: flex; justify-content: space-between; gap: 12px; margin-top: 22px;
  padding-top: 11px; border-top: 1px solid var(--leaf-rule); color: var(--leaf-lab);
  font-size: 11px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; }

/* ── первый экран: страница книги на месте карточки V4 ────────────────── */
/* Та же бумага, латунная кромка сверху, наклон и выезд, что у карточки V4;
   внутри — полоса настоящего разбора. */
.hero-leaf { --leaf-rule: #b9ad8e; --leaf-lab: #685b41; position: relative; z-index: 2;
  padding: 30px 34px 26px; background: #eeece5; color: #202525; border-top: 6px solid #a89c7d;
  box-shadow: 16px 20px 0 #ffffff08, 0 35px 65px #0004; transform: rotate(2deg);
  animation: edition-in 1s ease both; }
.hero-leaf .leaf-run { padding-bottom: 20px; border-bottom-color: #c9c7bc; font-weight: 500;
  letter-spacing: .07em; }
.hero-leaf .leaf-part { margin-top: 26px !important; }
.hero-leaf .leaf-title { font-size: clamp(26px, 2.4vw, 32px); }
.hero-leaf .leaf-body p { font-size: 17px; line-height: 1.65; color: #3d403b; hyphens: manual;
  -webkit-hyphens: manual; }
.hero-leaf .leaf-foot { display: grid; gap: 14px; margin-top: 24px; padding-top: 18px;
  border-top-color: #c9c7bc; text-transform: none; letter-spacing: 0; font-weight: 500; }
.hero-leaf .leaf-foot p { color: #65655c; font-size: 12px; line-height: 1.5; }
.hero-leaf .leaf-foot a { display: flex; justify-content: space-between; color: #202525;
  font-size: 16px; font-weight: 600; text-decoration: none; }
.hero-leaf .leaf-foot a:hover { color: #685b41; text-decoration: underline; text-underline-offset: 5px; }
.hero-leaf a:focus-visible { outline-color: #685b41; }

/* ── форма почты под результатом: компактно, в тоне карточки ──────────── */
.lead-wrap { scroll-margin-top: 110px; }
.lead-form { margin-top: 18px; padding-top: 16px; border-top: 1px solid #2f353a; }
.lead-form label { display: block; margin-bottom: 10px; font-family: var(--sans);
  font-size: 13px; line-height: 1.45; color: #b9bec2; }
.lead-row { display: flex; gap: 8px; }
.lead-row input { flex: 1 1 auto; min-width: 0; min-height: 46px; padding: 0 15px; color: #eef1f6;
  background: #11151a; border: 1px solid #3b4247; font: 15px/1.2 var(--sans); }
.lead-row input:focus { border-color: #c5a773; }
.lead-row button { flex: none; min-height: 46px; padding: 0 22px; cursor: pointer;
  font: 600 14px/1.2 var(--sans); color: #1c3024; background: #d6ddce; border: 1px solid #d6ddce; }
.lead-row button:hover { background: #e4e9de; }
.lead-row button:disabled { opacity: .55; cursor: default; }
.lead-note { margin: 8px 0 0; font-family: var(--sans); font-size: 12px; line-height: 1.45; color: #8d949a; }
.lead-note a { color: #b9bec2; }
.locked-zones { display: none; }

/* ── семь зон книги: ряд кнопок и две строки, как переключатель V4 ────── */
.zones-eyebrow { margin: 0 0 16px; color: #c8b58e; font-size: 12px; font-weight: 600;
  letter-spacing: .09em; text-transform: uppercase; }
.zone-buttons [role=tab] { min-height: 44px; transition: border-color .2s, background .2s; }
.zone-buttons [role=tab]:hover { border-color: #9fb09a; }
.zone-buttons [role=tab][aria-selected=true] { background: #d6ddce; border-color: #d6ddce; color: #1c3024; }
.zone-panel[hidden] { display: none; }
.zone-panel:focus-visible { outline-offset: 6px; }
.zone-description { margin: 0; }
/* Подпись «Честная оговорка» стояла вплотную к латунной линейке слева. */
.honesty { padding-inline: 22px; }
.zone-from { margin: 8px 0 0; max-width: 720px; color: #dfc89e; font-size: 15px; line-height: 1.55; }

/* ── блок с макетом книги (#inside): тёмный, со свечением за обложкой ─── */
.book-section { position: relative; padding-block: 64px; overflow: hidden; background: #0b0e13; }
.book-section .inside-layout { display: grid; grid-template-columns: 1fr .95fr; gap: 70px;
  align-items: center; }
.book-section .book-stage { min-height: 450px; }
.book-section .book-stage::before { content: ""; position: absolute; left: 52%; top: 46%; width: 88%;
  aspect-ratio: 1; transform: translate(-50%, -50%); border-radius: 50%; pointer-events: none;
  background: radial-gradient(circle, rgba(203,157,77,.22) 0, rgba(203,157,77,.07) 38%, transparent 66%); }
.book-section .book { width: min(310px, 66%); box-shadow: 0 34px 70px rgba(0,0,0,.55); }
.book-section .book-front { box-shadow: 0 34px 70px rgba(0,0,0,.6), 0 0 90px rgba(203,157,77,.12); }
.book-section .book-shadow { background: rgba(0,0,0,.7); }
.book-section .inside-copy h2 { margin: 0 0 18px; color: #f0eee8; font-size: clamp(34px, 3.7vw, 52px); letter-spacing: -.035em; line-height: 1.13; }
.book-section .section-register { margin-bottom: 18px; }
.book-section .section-register p { color: #c8b58e; }
.book-section .inside-lede { max-width: 600px; color: #c6c9d0; font-size: 17px; line-height: 1.65; }
.book-section .feature-list { margin: 26px 0 0; border-top-color: #2c3137; }
.book-section .feature-list li { grid-template-columns: 48px 1fr; gap: 18px; padding: 12px 0;
  border-bottom-color: #2c3137; }
.book-section .feature-list span { color: #c5a773; font-size: 18px; }
.book-section .feature-list b { color: #f0eee8; font-size: 16px; font-weight: 600; }
.book-section .feature-list p { margin-top: 4px; color: #b3b8bf; font-size: 14px; line-height: 1.5; }
.book-section .secondary-button { padding: 16px 22px; border-color: #c5a773; color: #efe3c6;
  font-size: 14px; font-weight: 600; letter-spacing: 0; text-transform: none; }
.book-section .secondary-button:hover { background: #dfc89e; color: #18130b; }

/* ── листалка образца на светлом (#sample), вид «report-reader» V4 ─────── */
.inside-section .reader-heading h2 { margin: 0; }
.inside-section .reader-heading .eyebrow { margin: 0 0 16px; font-weight: 600; }
.reader { display: grid; grid-template-columns: 280px minmax(0, 1fr); border: 1px solid #cccec6;
  background: #e4e5dd; }
.reader-toc { padding: 25px; }
.reader-tabs [role=tab] { display: flex; align-items: baseline; gap: 14px; width: 100%; padding: 18px 5px;
  border: 0; border-bottom: 1px solid #c4c8bd; background: transparent; color: #4f594f; text-align: left;
  font: 500 15px/1.35 var(--sans); cursor: pointer; }
.reader-tabs [role=tab] i { flex: none; min-width: 46px; color: #5f6a5c; font-size: 12px; font-style: normal;
  letter-spacing: .04em; }
.reader-tabs [role=tab]:hover { color: #172c24; }
.reader-tabs [role=tab][aria-selected=true] { color: #172c24; border-bottom: 2px solid #536854; }
.reader-tabs [role=tab][aria-selected=true] i { color: #3f5138; }
.reader-note { margin: 40px 0 0; color: #535d53; font-size: 14px; line-height: 1.7; }
.reader-stage { display: flex; flex-direction: column; min-height: 540px; padding: 40px 55px 30px;
  background: #fcfcf7; }
.reader-leaf { --leaf-rule: #d7dbcf; --leaf-lab: #5a6656; display: flex; flex-direction: column; flex: 1;
  padding: 0; background: transparent; }
.reader-leaf[hidden] { display: none; }
.reader-leaf .leaf-run { padding-bottom: 22px; font-weight: 500; letter-spacing: .07em; }
.reader-leaf .leaf-part { margin-top: 26px !important; }
.reader-leaf .leaf-head { border-bottom-color: #c5a773; }
.reader-leaf .leaf-title { font-size: clamp(27px, 2.6vw, 36px); }
.reader-leaf .leaf-body { max-width: 650px; margin-bottom: 22px; }
.reader-leaf .leaf-body p { font-size: 18px; line-height: 1.72; color: #3a3f37; }
.reader-leaf .leaf-foot { margin-top: auto; }
.reader-leaf:focus-visible { outline: 2px solid #536854; outline-offset: 8px; }
.reader-nav { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-top: 26px; }
.reader-btn { min-width: 48px; min-height: 44px; padding: 0 16px; border: 1px solid #bfc7bc;
  background: transparent; color: #243e32; font: 600 15px/1 var(--sans); cursor: pointer; }
.reader-btn:hover { border-color: #243e32; }
.reader-next { display: inline-flex; align-items: center; gap: 10px; border-color: #243e32;
  background: #243e32; color: #fff; }
.reader-next:hover { background: #2f5040; }
.reader-count { color: #5a6656; font-size: 13px; letter-spacing: .06em; }
.reader-purchase > div { max-width: 760px; }
.sample-more { margin: 0; color: #4a5146; font-size: 15px; line-height: 1.7; }
.sample-more b { color: #202624; }
.sample-more a, .reader-link { color: #243e32; text-underline-offset: 5px; }
.reader-links { display: flex; flex-wrap: wrap; gap: 6px 28px; margin: 8px 0 0; font-size: 15px; }
.reader-purchase .buy-button { flex: none; background: #243e32; color: #fff; }
.reader-purchase .buy-button:hover { background: #2f5040; }

/* ── тарифы: четыре карточки V4 и раскрывашка 190 ₽ ─────────────────────── */
.plans-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.plan-top { min-height: 82px; }
.plan-top > b { font-size: 44px; }
.plan > p { min-height: 0; margin: 16px 0 18px; font-size: 15px; line-height: 1.6; }
.plan ul { margin-bottom: 24px; }
.plan li { padding-block: 8px; }
.plan li { font-size: 14px; line-height: 1.5; }
.plan > a.plan-cta { display: flex; align-items: center; justify-content: center; min-height: 54px;
  font-size: 15px; font-weight: 600; letter-spacing: 0; text-transform: none; line-height: 1.3; }
.plan-featured > a.plan-cta { background: #dfc89e; border-color: #dfc89e; color: #191710; }
.plan-featured > a.plan-cta:hover { background: #ead8ae; }
.plan-featured .recommend { color: #1c3024; }

.cheaper { margin-top: 22px; border: 1px solid #bfc7bc; background: #f1f3ee; }
/* Аудит 08.10: маркер шёл хвостом текста и на телефоне повисал одиноким «–»
   в конце переноса. Теперь он отдельной колонкой справа, как в вопросах. */
.cheaper summary { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; padding: 18px 24px; cursor: pointer; font-size: 16px; color: #33402f; list-style: none; }
.cheaper summary::-webkit-details-marker { display: none; }
.cheaper summary::after { content: "+"; flex: none; color: #536854; }
.cheaper[open] summary::after { content: "−"; }
.cheaper[open] summary { border-bottom: 1px solid #d3d8cf; }
.cheaper-body { display: flex; gap: 28px; padding: 24px; align-items: flex-start; }
.cheaper-l { flex: none; min-width: 140px; }
.cheaper-l span { display: block; color: #5f6a5c; font-size: 13px; letter-spacing: .04em; }
.cheaper-l b { display: block; margin-top: 6px; font-family: var(--sans); font-size: 32px; font-weight: 500; }
.cheaper-l small { font-size: 15px; }
.cheaper-r p { margin: 0 0 16px; color: #3e463b; font-size: 15px; line-height: 1.6; max-width: 64ch; }
.plan-cta { display: inline-block; padding: 14px 26px; font-family: var(--sans); font-size: 14px;
  font-weight: 600; text-decoration: none; cursor: pointer; }
.cheaper-r .plan-cta { border: 1px solid #243e32; color: #243e32; }
.cheaper-r .plan-cta:hover { background: #243e32; color: #fff; }

/* ── финал: та же астролябия, приглушённо ──────────────────────────────── */
.final-section { position: relative; overflow: hidden; }
.final-section .final-bg { display: block; opacity: .3; }

/* ── полоса «Дороговато?» для уходящего ─────────────────────────────────── */
.leaving { position: fixed; left: 0; right: 0; bottom: 0; z-index: 70;
  display: flex; align-items: center; justify-content: space-between; gap: 24px;
  padding: 18px 28px; border-top: 1px solid #a98345;
  background: rgba(12,13,17,.97); box-shadow: 0 -24px 60px rgba(0,0,0,.6);
  transform: translateY(100%); transition: transform .45s cubic-bezier(.16,.8,.3,1); }
.leaving.is-open { transform: none; }
/* ⛔ Спрятанная полоса стояла display:flex поверх атрибута hidden, и её тень
   затемняла низ любой секции. */
.leaving[hidden] { display: none; }
.leaving-txt { font-family: var(--sans); font-size: 14px; line-height: 1.55; color: #9aa0ab; max-width: 70ch; }
.leaving-txt b { color: #eef1f6; }
.leaving-act { display: flex; align-items: center; gap: 14px; flex: none; }
.leaving-act .plan-cta { border: 1px solid rgba(255,255,255,.25); color: #eef1f6; }
.leaving-act .plan-cta:hover { border-color: #a98345; color: #dfc89e; }
.leaving-x { background: none; border: 0; color: #6f7684; font-size: 26px; line-height: 1;
  cursor: pointer; padding: 0 4px; }
.leaving-x:hover { color: #eef1f6; }
/* Полоса фиксирована у нижней кромки: app.js кладёт её высоту в
   --leaving-h, страница получает этот нижний отступ — перекрывать нечего. */
body.has-leaving { padding-bottom: var(--leaving-h, 108px); }
html { scroll-padding-bottom: var(--leaving-h, 0px); }

/* ── кнопки-ссылки и фокус ──────────────────────────────────────────────── */
/* Кнопка-ссылка обязана быть кнопкой: при закрытом приёме оплаты app.js
   подставляет в неё длинный текст «Оставить почту — напишем, когда откроем
   оплату», и инлайновая ссылка сминалась в полоску. */
.buy-button { display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  text-align: center; text-decoration: none; line-height: 1.3; padding-block: 12px; }
/* Поле даты: браузер отдаёт фокус сегментам ДД/ММ/ГГГГ, :focus-visible не
   срабатывает — кольцо по обычному :focus. */
.hero-form input:focus, .final-form input:focus,
.hero-form input:focus-within, .final-form input:focus-within
  { outline: 2px solid var(--gold); outline-offset: 3px; }
/* Подсказка у поля даты (app.js, dateProblem). */
.date-hint { margin: 12px 0 0 7px; font-family: var(--sans); font-size: 14px; line-height: 1.45; color: #dfc89e; }
.date-hint[hidden] { display: none; }
.final-content .date-hint { margin: 14px 0 0; }
.footer-bottom a { color: inherit; }

/* ── мобильное меню (кнопка своя, логика в app.js) ──────────────────────── */
.menu-toggle { display: none; }

@media (max-width: 1100px) {
  .plans-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 30px; }
  .plan-featured { transform: none; }
}

@media (max-width: 980px) {
  .site-header { grid-template-columns: 1fr auto auto; gap: 10px; }
  .menu-toggle { display: inline-flex; align-items: center; gap: 9px; min-height: 44px; padding: 0 12px;
    border: 1px solid #62695d; background: transparent; color: #eef1f6;
    font: 600 13px/1 var(--sans); cursor: pointer; }
  .menu-toggle-bars { position: relative; width: 16px; height: 11px;
    border-top: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; }
  .menu-toggle-bars::after { content: ""; position: absolute; left: 0; right: 0; top: 50%;
    border-top: 1.5px solid currentColor; transform: translateY(-50%); }
  .menu-toggle[aria-expanded=true] { border-color: #d6ddce; color: #d6ddce; }
  .site-header.menu-open { background: #171d19; }
  .primary-nav.is-open { display: grid !important; position: absolute; top: 100%; left: 0; right: 0;
    grid-template-columns: 1fr; padding: 6px 20px 14px; border: 0;
    border-bottom: 1px solid #65705e; background: #171d19; }
  .primary-nav.is-open a { display: flex; align-items: center; min-height: 50px; padding: 0 2px !important;
    border-bottom: 1px solid rgba(255,255,255,.08); font-size: 16px !important; }
  .primary-nav.is-open a:last-child { border-bottom: 0; }

  .section-intro, .method-head { grid-template-columns: 1fr; }
  .method-grid h3 { margin-top: 26px; }
  .hero-leaf { width: 100%; max-width: 560px; }
  .book-section .inside-layout { grid-template-columns: 1fr; gap: 20px; }
  .book-section .book-stage { order: 2; min-height: 500px; }
  .reader { grid-template-columns: 1fr; }
  /* Оглавление листалки — одной строкой с прокруткой, как в V4; прокрутка
     внутри полосы, страница вбок не едет. */
  .reader-toc { min-width: 0; padding: 0 16px 12px; border-bottom: 1px solid #c4c8bd; }
  .reader-tabs { display: flex; gap: 18px; overflow-x: auto; scrollbar-width: none; }
  .reader-tabs::-webkit-scrollbar { display: none; }
  .reader-tabs [role=tab] { flex: 0 0 auto; width: auto; gap: 8px; padding: 16px 0 12px; font-size: 14px;
    white-space: nowrap; }
  .reader-tabs [role=tab] i { min-width: 0; }
  .reader-note { margin-top: 10px; font-size: 13px; }
  .reader-purchase { flex-direction: column; align-items: stretch; }
  .reader-purchase .buy-button { width: 100%; }
}

@media (max-width: 900px) {
  .cheaper-body { flex-direction: column; align-items: stretch; gap: 16px; }
  .cheaper-r .plan-cta { width: 100%; text-align: center; }
}

@media (max-width: 720px) {
  .leaving { flex-direction: column; align-items: stretch; gap: 14px; padding: 16px 20px; }
  .leaving-act { justify-content: space-between; }
}

@media (max-width: 640px) {
  .site-header, .site-header.is-solid { gap: 8px; }
  .header-cta .cta-more { display: none; }
  .header-cta b { white-space: nowrap; }
  .section-intro { grid-template-columns: 1fr; }
  .section-intro > p:last-child { max-width: none; }
  /* Кегли ниже 11 пикселей на телефоне — ниже минимума Apple и Google. */
  .eyebrow, .hero .eyebrow { font-size: 11px; }
  .brand b { font-size: 12px; }
  .book-back small { font-size: 10px; }
  .book-mark { font-size: 10px; letter-spacing: .22em; }
  .hero-proof span { font-size: 11px; }
  .result-card-top, .result-ready { font-size: 11px; }
  .final-content > p:last-child { font-size: 12px; letter-spacing: .04em; }

  .leaf { padding: 22px 20px 18px; }
  .leaf .leaf-title { font-size: 23px; }
  .leaf-num { font-size: 38px; }
  .leaf-run { letter-spacing: .08em; }
  .leaf-body p, .hero-leaf .leaf-body p, .reader-leaf .leaf-body p { font-size: 16px; line-height: 1.68; }
  .hero-leaf { transform: none; animation: none; padding: 24px 20px 20px; }
  .lead-row { flex-direction: column; }
  .lead-row button { width: 100%; }
  .zone-buttons [role=tab] { padding: 10px 12px; font-size: 13px; }
  .zone-description { font-size: 16px; }
  .zone-from { font-size: 14px; }
  .book-section { padding-block: 48px; }
  .book-section .book-stage { min-height: 400px; }
  .book-section .book { width: 60%; }
  .book-section .book-front { padding: 34px 24px; }
  .book-section .book-back { padding: 30px 22px; }
  .book-section .book-glyph { width: 76px; height: 76px; margin: 34px auto 22px; font-size: 28px; }
  .book-section .book-front h3, .book-section .book-back b { font-size: 25px; }
  .book-section .feature-list li { grid-template-columns: 30px 1fr; gap: 15px; }
  .reader-stage { min-height: 0; padding: 22px 18px 20px; }
  .reader-leaf .leaf-title { font-size: 25px; }
  .plans-grid { grid-template-columns: 1fr; }
}

@media (max-width: 400px) {
  /* Три элемента шапки на 390: подпись «Меню» прячется, кнопка остаётся
     кнопкой с тремя чертами и доступным именем. */
  .menu-toggle { padding: 0 13px; }
  .menu-toggle-tx { position: absolute; width: 1px; height: 1px; overflow: hidden;
    clip: rect(0 0 0 0); white-space: nowrap; }
}

@media (prefers-reduced-motion: reduce) { .hero-leaf { animation: none; } }

/* Отдельные разборы (26.09) — строками с тонкой рамкой, как тарифы; без скруглений. */
.addons { margin-top: 34px; }
.addons-kicker { margin: 0 0 12px; font: 600 11px/1 var(--sans); letter-spacing: .28em; text-transform: uppercase; color: #685b41; }
.addons-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; border: 1px solid #c9c7bc; background: #f5f1e8; }
.addon { display: flex; flex-direction: column; gap: 8px; padding: 22px 24px; color: #17130c; text-decoration: none; border-right: 1px solid #c9c7bc; }
.addon:last-child { border-right: 0; }
.addon:hover { background: #eee9dc; }
.addon-title { font: 400 21px/1.2 var(--serif); }
.addon-text { font: 14px/1.55 var(--sans); color: #4a4538; }
.addon b { margin-top: auto; font: 600 16px/1 var(--sans); color: #243e32; }
.addons-bot { margin: 16px 0 0; font: 14px/1.6 var(--sans); color: #4a4538; }
.addons-bot a { color: #243e32; }
@media (max-width: 760px) {
  .addons-grid { grid-template-columns: 1fr; }
  .addon { border-right: 0; border-bottom: 1px solid #c9c7bc; }
  .addon:last-child { border-bottom: 0; }
}

/* «Ваш 2027» (14.10.2026) — три строки года в гамме бесплатных глав. */
.year27-lines { list-style: none; margin: 0 0 14px; padding: 0; border-top: 1px solid var(--soft-line); }
.year27-lines li { display: grid; grid-template-columns: 44px 1fr; align-items: baseline; gap: 12px; padding: 12px 0; border-bottom: 1px solid var(--soft-line); font: 16px/1.45 var(--sans); color: var(--white); }
.year27-lines b { font: 400 26px/1 var(--serif); color: var(--gold); }
.free-reading .year27-note { margin-bottom: 18px; }
.free-reading .year27-after { margin: 18px 0 0; }

/* Бесплатные главы (26.09) — в гамме карточки результата: тёмная бумага,
   латунные рубрики, строки-главы с тонкой линией; без скруглений. */
.free-reading { margin-top: 28px; border: 1px solid var(--line); background: var(--ink-2); padding: 30px 32px; color: var(--white); }
.free-kicker { margin: 0 0 10px; font: 600 11px/1 var(--sans); letter-spacing: .28em; text-transform: uppercase; color: var(--gold); }
.free-head h3 { margin: 0 0 10px; font: 400 28px/1.15 var(--serif); letter-spacing: -.01em; }
.free-note { margin: 0 0 22px; max-width: 640px; font: 14px/1.6 var(--sans); color: var(--muted); }
.free-chapter { border-top: 1px solid var(--soft-line); }
.free-chapter:last-child { border-bottom: 1px solid var(--soft-line); }
.free-chapter summary { display: grid; grid-template-columns: 1fr auto; gap: 4px 16px; padding: 18px 0; cursor: pointer; list-style: none; }
.free-chapter summary::-webkit-details-marker { display: none; }
.fc-kicker { grid-column: 1 / 2; font: 600 10px/1 var(--sans); letter-spacing: .22em; text-transform: uppercase; color: var(--muted-2); }
.free-chapter summary b { grid-column: 1 / 2; font: 400 21px/1.25 var(--serif); font-weight: 400; }
.fc-arcana { grid-column: 2 / 3; grid-row: 1 / 3; align-self: center; font: 600 13px/1 var(--sans); color: var(--gold-light); white-space: nowrap; }
.free-chapter summary::after { content: "+"; grid-column: 2 / 3; justify-self: end; color: var(--gold); }
.free-chapter[open] summary::after { content: "−"; }
.fc-body { padding: 0 0 22px; max-width: 760px; }
.fc-body p { margin: 0 0 14px; font: 16px/1.72 var(--sans); color: #d9d6cc; }
.free-locked { margin-top: 26px; }
.free-locked ul { list-style: none; margin: 0 0 22px; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 0 28px; }
.free-locked li { display: flex; justify-content: space-between; gap: 12px; padding: 10px 0; border-bottom: 1px solid var(--soft-line); font: 14px/1.4 var(--sans); color: var(--muted); }
.free-locked li span::before { content: ""; display: inline-block; width: 9px; height: 7px; margin-right: 10px; border: 1px solid var(--gold); border-top-width: 3px; vertical-align: 1px; }
.free-locked li em { font-style: normal; color: var(--gold-light); white-space: nowrap; }
.free-locked li a { display: flex; justify-content: space-between; gap: 12px; flex: 1; color: inherit; text-decoration: none; }
.free-locked li a:hover span, .free-locked li a:focus-visible span { color: var(--white, #fff); }
.free-locked li a:hover em, .free-locked li a:focus-visible em { text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 760px) {
  .free-reading { padding: 22px 18px; }
  .free-head h3 { font-size: 23px; }
  .free-locked ul { grid-template-columns: 1fr; }
  .fc-arcana { grid-row: auto; grid-column: 1 / 2; }
}

/* Отдельное согласие на письма с предложениями (27.09): мелко, под подписью. */
.lead-mkt { display: flex; gap: 8px; align-items: flex-start; margin-top: 10px; font: 12px/1.5 var(--sans); color: var(--muted); cursor: pointer; }
.lead-mkt input { margin-top: 2px; accent-color: var(--gold); }
/* Аудит 08.10: на узком экране центр октаграммы наезжал на кружки — радиус
   звезды там ~80 px, и подпись «Центральный аркан» шириной в полэкрана
   задевала соседние вершины. Центр ужат так, чтобы уместиться в круг ~60 px.
   Подпись «Центральный аркан» на узком экране скрыта: она же стоит
   заголовком карточки прямо под октаграммой («Центральный аркан · трактовка»). */
@media(max-width:480px) { .result-core small{display:none}.result-core strong{font-size:36px;margin:0 0 3px}.result-core span{font-size:13px} }

/* 14.10: в меню седьмой пункт — «Совместимость». На 1366 «Аркан дня» уезжал
   под кнопку «Рассчитать бесплатно»: пункты плотнее, слово «бесплатно» у кнопки
   прячется (как на телефоне), пока шапка не шире 1680 px. */
@media (min-width: 981px) and (max-width: 1680px) {
  .header-cta .cta-more { display: none; }
  .header-cta b { white-space: nowrap; }
}
@media (min-width: 1121px) and (max-width: 1680px) {
  .primary-nav a { padding: 12px 10px !important; font-size: 14px !important; }
}
/* 981–1180 px: семь пунктов не помещаются рядом с кнопкой даже плотно —
   прячем «Результат» (это якорь на тот же экран, куда ведёт сама форма). */
@media (min-width: 981px) and (max-width: 1180px) {
  .primary-nav a[href="#result"] { display: none !important; }
  .primary-nav a { padding: 10px 6px !important; }
}
