:root {
  --ink: #34352f;
  --soft: #5b5b51;
  --muted: #756f63;
  --green: #66704d;
  --green-dark: #4c563a;
  --coral: #c8a96a;
  --coral-dark: #92733e;
  --gold: #c8a96a;
  --cream: #f4eee2;
  --paper: #fbf7ef;
  --line: #d8ccb6;
}

html, body { background: #f4eee2; }
body { color: #34352f; font-family: Arial, Helvetica, sans-serif; }
a { text-underline-offset: 3px; }
h1, h2, h3 { font-family: Arial, Helvetica, sans-serif; font-weight: 900; }
h2 { color: #3f4635; }
h1 span { color: inherit; }
.leadline { color: #454a39; }
.section__text, .hero__copy { color: rgba(52, 53, 47, .72); }

.nav { background: rgba(251, 247, 239, .94); border-bottom-color: rgba(52, 53, 47, .12); }
.brand__mark { border: 0; border-radius: 50%; background: #66704d; color: #fffaf0; }
.brand__text span:last-child { color: #756f63; }
.nav__links a:hover { color: #66704d; }
.eyebrow { color: #92733e; }

/* Same gold action treatment used on the antifungal site. */
.button, .button--tariff, .button--buy {
  color: #2f291d;
  text-shadow: 0 1px rgba(255, 248, 219, .45);
  background: linear-gradient(115deg, #8e692b 0%, #c69b45 26%, #f3dc98 48%, #ad7d2d 68%, #d9ba68 100%) 0 0 / 220% 220%;
  border: 1px solid #f4dfa0;
  border-radius: 13px;
  box-shadow: 0 12px 28px rgba(111, 78, 25, .28), inset 0 1px rgba(255,250,225,.82), inset 0 -1px rgba(91,59,13,.24);
  animation: gold-shimmer 4.8s ease-in-out infinite;
}
.button:hover, .button--tariff:hover, .button--buy:hover {
  color: #2f291d;
  background: linear-gradient(115deg, #8e692b 0%, #c69b45 26%, #f3dc98 48%, #ad7d2d 68%, #d9ba68 100%) 0 0 / 220% 220%;
  filter: saturate(1.08) brightness(1.03);
  box-shadow: 0 16px 34px rgba(111,78,25,.36), 0 0 0 3px rgba(232,203,127,.22);
}
.button--light {
  color: #4c513d;
  text-shadow: none;
  background: linear-gradient(#fbf7ef, #fbf7ef) padding-box,
              linear-gradient(115deg, #8e692b, #efd68f 45%, #a4762c 72%, #ddc174) border-box;
  border: 2px solid transparent;
  box-shadow: 0 8px 20px rgba(111,78,25,.12), inset 0 1px rgba(255,255,255,.72);
  animation: none;
}
.button--light:hover {
  color: #333728;
  background: linear-gradient(#fbf7ef, #fbf7ef) padding-box,
              linear-gradient(115deg, #8e692b, #efd68f 45%, #a4762c 72%, #ddc174) border-box;
  box-shadow: 0 12px 28px rgba(111,78,25,.2), 0 0 0 3px rgba(232,203,127,.16);
}
.button:focus-visible, .payment-option:focus-visible, .payment-region:focus-visible {
  outline: 3px solid rgba(102,112,77,.48); outline-offset: 3px;
}
@keyframes gold-shimmer { 0%, 100% { background-position: 0%; } 50% { background-position: 100%; } }

.hero {
  background-color: #eee5d5;
  background-image: radial-gradient(circle at 16% 20%, rgba(255,250,240,.72), transparent 34%),
                    linear-gradient(120deg, rgba(200,169,106,.11), transparent 44%);
}
.hero__course { display: block; color: #34352f; font-size: .88em; white-space: nowrap; }
.hero__qualifier {
  display: block; margin-top: .26em; color: #4c513d;
  font-size: .48em; font-weight: 700; letter-spacing: -.025em; line-height: 1.2;
}
.hero__visual { border: 2px solid #c8a96a; border-radius: 30px; box-shadow: 0 28px 70px rgba(74,64,46,.18); }
.hero__badge span, .hero__badge span:nth-child(3) {
  background: rgba(251,247,239,.76); color: #4c563a;
  border: 1px solid rgba(200,169,106,.6); backdrop-filter: blur(12px);
}

.section--paper { background: #eee7d9; }
.card { background: rgba(251,247,239,.86); border-color: rgba(200,169,106,.42); }
.author { align-items: stretch; }
.author__image { margin: 0; height: 100%; border: 1px solid #c8a96a; border-radius: 28px; }
.author__image img { width: 100%; height: 100%; min-height: 610px; aspect-ratio: auto; object-fit: cover; object-position: center 37%; }
.author__panel {
  display: flex; flex-direction: column; justify-content: center; height: 100%;
  background: rgba(251,247,239,.83); border: 1px solid rgba(200,169,106,.54);
  border-radius: 28px;
}
.check-list li::before { background: #c8a96a; box-shadow: inset 0 0 0 6px #fbf7ef; }
.plain-list li::before { background: #d9ba68; }
.questions { background: #66704d; box-shadow: 0 22px 56px rgba(66,77,50,.2); }
.questions h2, .questions .section__text, .questions li { color: #fffaf0; }
.questions .eyebrow { color: #f3dc98; background: none; border: 0; }

.about-course { align-items: stretch; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.about-course > div {
  display: flex; flex-direction: column; justify-content: center;
  padding: clamp(24px, 3vw, 40px); border: 1px solid rgba(200,169,106,.5);
  border-radius: 28px; background: rgba(251,247,239,.87);
}
.about-course__visual {
  height: 690px; min-height: 0; max-height: none; margin: 0;
  overflow: hidden; border: 2px solid #c8a96a; border-radius: 28px;
  background: #e9d9c5;
}
.about-course__visual img {
  display: block; width: 100%; height: 100%; min-height: 0; max-height: none;
  aspect-ratio: auto; object-fit: cover; object-position: center top;
  transform: scale(1.16); transform-origin: center top;
}

#program {
  background: radial-gradient(circle at 6% 12%, rgba(255,255,255,.62), transparent 33%),
              linear-gradient(160deg, #f4eee2, #e9e2d3);
}
.program__intro { margin-inline: auto; max-width: 750px; }
.program { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; align-items: stretch; }
.program .lesson {
  padding: 25px; border-radius: 22px;
  border: 1px solid rgba(188,151,72,.7);
  background: linear-gradient(145deg, rgba(255,255,255,.72), rgba(251,247,239,.52));
  box-shadow: 0 16px 36px rgba(75,69,49,.08), inset 0 1px rgba(255,255,255,.65);
  backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px);
}
.program .lesson::before { display: none; }
.lesson__number {
  display: inline-block; margin: 0 0 17px; padding: 7px 12px;
  border: 1px solid rgba(200,169,106,.5); border-radius: 8px;
  background: rgba(102,112,77,.1); color: #66704d;
  font-size: .82rem; font-weight: 900; letter-spacing: .06em; text-transform: uppercase;
}
.program .lesson h3 { margin-bottom: 18px; color: #3f4635; font-size: 1.45rem; line-height: 1.2; }
.program .lesson ul { margin: 0; padding-left: 1.2em; color: #505348; font-size: 1rem; line-height: 1.52; }
.program .lesson li + li { margin-top: 10px; }
.program .lesson li::marker { color: #aa8745; }
.program__closing {
  max-width: 790px; margin: 28px auto 0; padding: 17px 24px; text-align: center;
  color: #3f4635; border: 1px solid rgba(200,169,106,.62); border-radius: 16px;
  background: rgba(251,247,239,.67); font-size: 1.08rem; font-weight: 700;
}

.tariff--featured { background: linear-gradient(145deg, #4c563a, #66704d); border-color: #c8a96a; }
.tariff__bonus { background: rgba(200,169,106,.1); border-color: rgba(200,169,106,.45); }
.tariff__price { color: #655a38; }
.tariff--featured .tariff__price { color: #f2d990; }
.final {
  overflow: hidden; position: relative;
  border: 1px solid rgba(222, 190, 117, .7);
  background: linear-gradient(95deg, rgba(27, 39, 29, .91), rgba(41, 57, 40, .83) 52%, rgba(34, 50, 36, .78)),
              url('assets/olive-grove-gold.webp') center 48% / cover no-repeat;
  box-shadow: 0 28px 70px rgba(38, 45, 33, .26);
}
.final .eyebrow {
  display: inline-flex; width: fit-content;
  padding: 8px 14px; margin-bottom: 20px;
  color: #ffe7ab; background: rgba(22, 35, 25, .58);
  border: 1px solid rgba(241, 211, 145, .78);
  border-radius: 100px; font-size: 14px; font-weight: 900;
  letter-spacing: .12em; text-shadow: 0 1px 10px rgba(0,0,0,.25);
}
.final h2 { color: #fffdf5; font-size: clamp(32px, 3.4vw, 50px); line-height: 1.12; text-shadow: 0 2px 20px rgba(8, 20, 10, .55); }
.final p { color: #fffaf0; text-shadow: 0 1px 12px rgba(8, 20, 10, .4); }
.final__links {
  padding: 24px; border: 1px solid rgba(230, 202, 139, .45);
  border-radius: 22px; background: rgba(25, 41, 29, .44);
  backdrop-filter: blur(11px); -webkit-backdrop-filter: blur(11px);
}
.footer { background: #fbf7ef; }
.payment-modal__dialog { background: #fbf7ef; border-color: rgba(200,169,106,.46); }
.payment-panel { display: grid; margin-top: 22px; }
.payment-bank { border-color: rgba(200,169,106,.6); background: rgba(255,255,255,.7); }
.payment-bank strong { color: #4c563a; }
.payment-bank__iban { color: #34352f; font-weight: 800; letter-spacing: .015em; }
.payment-option[href] {
  background: linear-gradient(115deg, #8e692b, #c69b45 26%, #f3dc98 48%, #ad7d2d 68%, #d9ba68) 0 0 / 220% 220%;
  border-color: #f4dfa0; color: #2f291d; animation: gold-shimmer 4.8s ease-in-out infinite;
}
.payment-option[href] strong, .payment-option[href] span,
.payment-option[href]::after { color: #2f291d; }
.payment-option[href] span { opacity: .85; }
.payment-receipt-note { background: rgba(200,169,106,.11); border-color: rgba(200,169,106,.45); }
.payment-receipt-note a { color: #66704d; }

@media (max-width: 1100px) {
  .program { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 980px) {
  .author__image, .author__panel { height: auto; }
  .author__image img { height: auto; min-height: 0; aspect-ratio: 4 / 5; }
  .about-course { grid-template-columns: 1fr; }
  .about-course__visual { height: auto; min-height: 0; max-height: none; aspect-ratio: 4 / 5; }
  .about-course__visual img { width: 100%; height: 100%; aspect-ratio: auto; }
}
@media (max-width: 700px) {
  .hero__course { white-space: normal; font-size: .85em; }
  .hero__qualifier { font-size: .54em; }
  .program { grid-template-columns: 1fr; }
  .program .lesson { padding: 22px; }
  .about-course__visual img { aspect-ratio: auto; }
  .final { padding: 28px 20px; }
  .final__links { padding: 18px; }
}
@media (prefers-reduced-motion: reduce) {
  .button, .button--tariff, .button--buy,
  .payment-option[href] { animation: none; }
}
