:root {
  --bg-page: #141311;
  --bg-card-light: #24211e;
  --bg-card-dim: #1b1917;
  --terracotta: #d88c67;
  --terracotta-dark: #efae87;
  --brown-1: #211b18;
  --brown-2: #171412;
  --brown-3: #100f0e;
  --gold: #d9b881;
  --gold-soft: #edcf9b;
  --caramel: #221b17;
  --caramel-2: #171311;
  --text-dark: #f7eee2;
  --text-body: #d2c4b4;
  --text-muted: #a79786;
  --divider: #473b32;
  --cream: #f7eee2;
  --wine: #322021;
}

body { background: var(--bg-page); color: var(--text-body); }
h1, h2, h3 { color: var(--text-dark); }
::selection { background: #b66c48; color: #fff; }
a:focus-visible, summary:focus-visible { outline: 2px solid var(--gold-soft); outline-offset: 5px; }
.container { max-width: 1200px; padding-inline: 30px; }
.section { padding-block: 110px; }
.eyebrow { color: var(--gold); }

.hero { background: radial-gradient(ellipse at 68% 40%, #33261e 0%, #211b17 36%, #151311 70%); padding: 58px 0 82px; border-bottom: 1px solid rgba(237,207,155,.14); }
.hero-grid { grid-template-columns: minmax(0,1.08fr) minmax(0,.92fr); gap: clamp(38px,6vw,94px); align-items: center; }
.hero-text { max-width: 680px; }
.badge-row { color: var(--gold-soft); font-family: 'Lora', Georgia, serif; font-size: .69rem; letter-spacing: .18em; margin-bottom: 28px; }
.badge-row span { color: var(--terracotta); padding-inline: 9px; font-size: .85rem; }
.hero h1 { color: #fff8ec; font-size: clamp(4.1rem,7vw,7.25rem); line-height: .83; letter-spacing: -.045em; margin: 0 0 28px; font-weight: 500; }
.hero h1 .pre { font-size: .31em; line-height: 1.1; margin-bottom: 12px; color: var(--gold); letter-spacing: .02em; }
.hero h1 .accent { color: var(--gold-soft); }
.hero h1 .period { color: var(--terracotta); }
.hero .headline { font-size: clamp(1.6rem,2.6vw,2.18rem); color: #f0d8bb; line-height: 1.15; margin: 0 0 20px; max-width: 620px; }
.hero .sub { font-size: 1rem; line-height: 1.8; color: #cbbbab; font-style: normal; max-width: 520px; margin-bottom: 14px; }
.hero-note { color: #a99784; font-size: .76rem; margin: 0; }
.hero-note span { color: var(--gold); padding-inline: 5px; }
.hero-visual { position: relative; min-width: 0; padding: 10px 34px 30px 0; isolation: isolate; }
.hero-visual::before { content: ''; position: absolute; z-index: -1; inset: 7% -2% 0; background: radial-gradient(ellipse at 50% 46%,rgba(123,72,48,.29),rgba(72,44,32,.12) 43%,transparent 72%); filter: blur(15px); pointer-events: none; }
.portrait-frame { height: min(570px,48vw); min-height: 460px; position: relative; background: transparent; }
.portrait-frame::before, .portrait-frame::after { display: none; }
.expert-portrait { display: block; width: 100%; height: 100%; overflow: visible; filter: saturate(.87) contrast(1.02); -webkit-mask-image: linear-gradient(to bottom,#000 0%,#000 84%,transparent 100%); mask-image: linear-gradient(to bottom,#000 0%,#000 84%,transparent 100%); }
.portrait-caption { position: absolute; left: 14%; bottom: 5%; z-index: 2; display: flex; flex-direction: column; gap: 3px; color: #fff1df; text-shadow: 0 2px 14px rgba(0,0,0,.8); }
.portrait-caption span { letter-spacing: .18em; font-size: .74rem; }
.portrait-caption small { color: #d7bea0; font-style: italic; }
.portrait-rule, .portrait-aside { display: none; }

.proof { background: #191715; border-bottom: 1px solid rgba(237,207,155,.13); }
.proof h2, .proof h2 span { color: #fff1df; }
.proof p { color: #c5b5a4; }
.t-card { background: #2a251f; border: 1px solid #4a3b2f; box-shadow: 0 18px 40px rgba(0,0,0,.22); }
.t-card .tag { background: #332923; color: var(--gold-soft); }

.band-caramel { background: linear-gradient(150deg,#2c221c,#1c1815 72%); color: #dfd0be; border-block: 1px solid rgba(237,207,155,.1); }
.band-caramel h2 { color: #fff3e4; }
.band-caramel .eyebrow { color: var(--gold); }
.band-caramel .texture { opacity: .06; mix-blend-mode: screen; }
.inside-intro .big-icon { background: rgba(237,207,155,.09); color: var(--gold); }
.inside-intro p { color: #cdbba8; }
.print-card { background: #eadcc9; border: 1px solid rgba(237,207,155,.28); box-shadow: 0 24px 48px rgba(0,0,0,.3); }

.pain-wrap, .letter-wrap { background: #191715; }
.pain-card, .diag-card, .fit-card, .trust-card { background: #24211e; color: #e2d4c4; border: 1px solid #40362d; box-shadow: 0 12px 28px rgba(0,0,0,.12); }
.pain-card { font-size: 1.04rem; }
.pain-card .q { color: var(--terracotta); }
.diag-card h3 { color: #f2c79b; }
.diag-card .ico { background: rgba(216,140,103,.1); color: var(--terracotta); }
.diag-highlight { background: #30251d; border: 1px solid #674b35; box-shadow: none; }
.diag-highlight p, .diag-highlight .ico { color: #e6caa8; }

.glow { background: radial-gradient(ellipse at 30% 10%,#30241d 0%,#1d1916 50%,#171513 100%); }
.step-box { background: #211c18; border: 1px solid #6d5845; }
.step-box:nth-child(2), .step-box:nth-child(3), .step-box:nth-child(4) { border-color: #66523f; }
.step-box .n, .step-box:nth-child(2) .n, .step-box:nth-child(3) .n, .step-box:nth-child(4) .n { color: var(--gold); }
.step-box h3 { color: #f5e9d7; }
.deliver-card { background: linear-gradient(145deg,#30251e,#211b17); border: 1px solid #514032; box-shadow: 0 13px 28px rgba(0,0,0,.19); }
.deliver-card .kind, .deliver-card .ico { color: var(--gold-soft); }
.fit-card .ico { color: var(--gold); }
.fit-card.note { background: #342720; }
.fit-card.note .ico { color: var(--terracotta); }
.nofit { background: #2f2020; border: 1px solid #553333; box-shadow: none; }

#oferta { background: radial-gradient(ellipse at 50% 65%,#36261d 0%,#241b17 48%,#171311 100%); }
.pill.item { background: rgba(255,255,255,.025); border-color: #907254; }
.pill.val { background: #d9b881; }
.stack-total .tot { border-color: var(--gold-soft); }
.stack-total .tot span:first-child { background: var(--gold-soft); }
.price-card { background: linear-gradient(155deg,#332820,#261e19 70%,#1c1815); border: 1px solid #a0815b; color: #f3e6d5; box-shadow: 0 32px 70px rgba(0,0,0,.3); }
.price-card .old, .price-card .inst { color: #bbaa99; }
.price-card .final { color: #f0c88f; }
.btn-cta { background: #d6a778; color: #1d1713; box-shadow: 0 14px 30px rgba(0,0,0,.28); animation: none; }
.btn-cta:hover { background: #f1c996; box-shadow: 0 18px 34px rgba(0,0,0,.35); }
.badges span, .buy-step { color: #e7d3bb; }
.buy-step { border-color: #a1825c; }
.buy-step:not(:last-child)::after { background: #a1825c; }

.letter-cols p { color: #d8c9b8; }
.choices-title { color: #f4e8d8; }
.choice { box-shadow: none; }
.choice-no { background: #25211e; color: #d4c4b4; border: 1px solid #4b3b30; }
.choice-no h4 { color: #f5e8d8; }
.choice-yes { background: #3a2a21; border: 1px solid #a76b47; color: #efdfcb; }
.choice-yes h4 { color: #f9e9d5; }
.trust-card .ico { color: var(--gold); }

.author { background: linear-gradient(150deg,#241c18,#141210); border-block: 1px solid rgba(237,207,155,.12); }
.author-grid { grid-template-columns: minmax(0,1.15fr) minmax(0,.85fr); gap: 64px; }
.author-portrait { min-width: 0; width: 100%; max-width: 450px; margin-inline: auto; pointer-events: none; }
.author-portrait img { display: block; width: 100%; height: auto; border-radius: 0; transform: none; box-shadow: none; animation: none; -webkit-mask-image: linear-gradient(to bottom,#000 0%,#000 89%,transparent 100%); mask-image: linear-gradient(to bottom,#000 0%,#000 89%,transparent 100%); }
.author h2 { color: #fff2e2; }
.author p { color: #d8c9b8; }
.author-social { display: inline-flex; align-items: center; gap: 12px; margin-top: 2px; color: var(--gold-soft); text-decoration: none; border-bottom: 1px solid rgba(237,207,155,.55); padding-bottom: 4px; font-size: .86rem; letter-spacing: .04em; transition: color .2s, border-color .2s; }
.author-social:hover { color: #fff3d1; border-color: #fff3d1; }
.author-social span { font-family: Arial, sans-serif; font-size: 1rem; }
.faq { background: #191512; }
details { background: #25201c; border-color: #483a2d; }
details[open] { background: #2d251f; }
footer { background: #100e0d; }

@media (max-width: 960px) {
  .author-grid { grid-template-columns: 1fr; gap: 34px; }
  .author-portrait { order: -1; max-width: 390px; }
  .hero-grid { grid-template-columns: 1fr 1fr; gap: 32px; }
  .hero h1 { font-size: clamp(3.8rem,7.5vw,5.8rem); }
  .portrait-frame { min-height: 420px; height: 50vw; }
  .hero-visual { padding-right: 0; }
  .portrait-rule, .portrait-aside { display: none; }
}
@media (max-width: 760px) {
  .author-portrait { max-width: 340px; }
  .container { padding-inline: 24px; }
  .hero { padding: 46px 0 66px; }
  .hero-grid { display: flex; flex-direction: column; align-items: stretch; gap: 35px; }
  .hero-text { display: block; }
  .hero h1 { font-size: clamp(4.2rem,15vw,6.5rem); }
  .hero .headline { font-size: clamp(1.7rem,6vw,2rem); }
  .hero .sub { font-size: .95rem; }
  .hero-visual { max-width: 480px; width: 100%; margin-inline: auto; padding: 0 10px; }
  .portrait-frame { height: 520px; min-height: 0; }
  .proof { padding-bottom: 70px; }
  .marquee { margin: 0; padding: 24px 20px 0; overflow: visible; -webkit-mask-image: none; mask-image: none; }
  .slider-track { display: grid; grid-template-columns: minmax(0,1fr); gap: 18px; width: min(100%,480px); margin-inline: auto; transform: none !important; transition: none !important; will-change: auto; }
  .slider-track > .t-card[aria-hidden="true"] { display: none; }
  .t-card { width: 100%; height: min(118vw,430px); min-height: 350px; flex: none; }
  .section { padding-block: 76px; }
}
@media (max-width: 430px) {
  .container { padding-inline: 20px; }
  .hero { padding-top: 38px; }
  .hero h1 { font-size: clamp(4.1rem,16vw,5rem); }
  .badge-row { font-size: .59rem; letter-spacing: .14em; }
  .portrait-frame { height: 430px; }
  .portrait-caption { left: 12%; bottom: 6%; }
  .price-card .btn-cta { width: max-content; max-width: 92%; white-space: normal; }
}
