/* VI: preserve the approved imagery and pair every visual with its explanation. */
.header { min-height: 88px; }
.hero {
  grid-template-columns: minmax(0, .86fr) minmax(0, 1.14fr);
  gap: 48px;
  padding-block: 56px 76px;
  min-height: 580px;
}
.hero h1 { font-size: clamp(36px, 3.15vw, 48px); line-height: 1.14; }
.hero-copy > p:not([class]) { font-size: 19px; line-height: 1.65; margin-top: 24px; }
.category-name { margin-bottom: 18px; }
.hero-actions { gap: 12px 22px; }
.chapter-split {
  grid-template-columns: minmax(0, .84fr) minmax(0, 1.16fr);
  gap: 76px;
  padding-block: 90px;
}
.chapter-reverse {
  grid-template-columns: minmax(0, 1.16fr) minmax(0, .84fr);
  border-top: 1px solid var(--line);
}
.chapter-reverse > .visual { grid-column: 1; grid-row: 1; }
.chapter-reverse > .chapter-copy { grid-column: 2; grid-row: 1; }
.chapter-copy h2 { font-size: clamp(29px, 2.5vw, 38px); line-height: 1.2; }
.chapter-copy > p { max-width: 43ch; font-size: 18px; line-height: 1.75; }
.chapter-copy ul { font-size: 15px; gap: 14px; margin-top: 25px; }
.chapter-copy li { line-height: 1.6; }
.visual figcaption { gap: 12px; font-size: 11px; }
.visual figcaption > button { font-size: 11px; }
.soft-band { background: #f7fbf8; }
.inventory { padding-block: 88px; }
.inventory > div:first-child:not(.table-wrap) { display: block; max-width: 750px; margin-bottom: 30px; }
.inventory > div:first-child p { margin-top: 20px; max-width: 65ch; font-size: 18px; }
.questions { padding-top: 66px; }
.tint-band + .questions { padding-top: 80px; }
.closing > .category-icon { display: none; }
.gallery-intro h1 { font-size: clamp(36px, 4vw, 54px); }
.gallery-image { border: 0; padding: 0; }
.gallery h2 { font-size: clamp(29px, 2.7vw, 37px); }
.gallery article { gap: 68px; }
.button:active { transform: translateY(1px); }
@media (max-width: 1100px) {
  .hero { gap: 32px; min-height: 550px; }
  .hero h1 { font-size: 40px; }
  .chapter-split { gap: 42px; padding-block: 72px; }
  .chapter-copy h2 { font-size: 32px; }
  .chapter-copy > p { font-size: 17px; }
  .hero-copy > p:not([class]) { font-size: 18px; }
}
@media (max-width: 850px) {
  .hero, .chapter-split, .chapter-reverse { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .hero { min-height: 0; padding-block: 42px 56px; }
  .hero-copy { max-width: 620px; }
  .hero > .visual { max-width: 680px; width: 100%; margin-inline: auto; }
  .chapter-reverse > .chapter-copy, .chapter-reverse > .visual { grid-column: auto; grid-row: auto; }
  .chapter-copy { max-width: 610px; }
  .chapter-copy > p { max-width: 60ch; }
  .chapter-split > .visual { max-width: 660px; width: 100%; margin-inline: auto; }
  .chapter-split { padding-block: 60px; }
  .header { gap: 22px; }
  .header > nav { gap: 23px; font-size: 15px; }
  .auth-links { gap: 16px; font-size: 15px; }
  .gallery article { gap: 30px; }
}
@media (max-width: 760px) {
  .header { min-height: 125px; }
  .hero h1 { font-size: clamp(35px, 8vw, 43px); }
  .chapter-copy h2 { font-size: 30px; }
  .inventory { padding-block: 60px; }
  .questions, .tint-band + .questions { padding-top: 42px; }
  .visual figcaption > span { max-width: 24ch; }
  .chapter-copy ul { font-size: 15px; }
}
@media (prefers-reduced-motion: reduce) {
  .button:active { transform: none; }
}

/* Match the previous heading cap height while preserving existing size and line-height rules. */
@font-face{font-family:SpartanHeadings;src:url('assets/league-spartan-latin-variable.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap;size-adjust:109.5455%}
h1,h2,h3{font-family:SpartanHeadings,Arial,sans-serif}

/* Main feature section headings follow the approved hero heading scale. */
.chapter-copy h2,.section-intro h2,.inventory>div:first-child h2,.questions>h2,.closing>h2{font-size:clamp(36px,3.15vw,48px);line-height:1.14}
@media(max-width:1100px){.chapter-copy h2,.section-intro h2,.inventory>div:first-child h2,.questions>h2,.closing>h2{font-size:40px}}
@media(max-width:760px){.chapter-copy h2,.section-intro h2,.inventory>div:first-child h2,.questions>h2,.closing>h2{font-size:clamp(35px,8vw,43px)}}

/* Let the action group determine the width of its supporting note. */
.hero-cta{width:max-content;max-width:100%}
.hero-cta .access-note{width:0;min-width:100%;max-width:none;text-wrap:wrap}
@media(max-width:760px){.hero-cta{width:100%}.hero-cta .access-note{width:100%;min-width:0}}

/* Feature FAQs match the homepage structure and accordion treatment. */
.questions{display:block;padding-block:80px 95px}.questions>h2{text-align:center;max-width:none;margin:0 auto}.questions>div{margin-top:clamp(42px,4vw,56px)}
.questions details,.questions details:first-child{border-top:0;border-bottom:1px solid #727a75}.questions summary{display:grid;grid-template-columns:minmax(0,1fr) 16px;gap:32px;padding:32px 24px 16px;font-size:clamp(21px,1.7vw,28px);font-weight:620;line-height:1.18;letter-spacing:-.018em}.questions details p{padding:7px 76px 24px 24px;color:#343b37;font-size:clamp(16px,1.25vw,19px);line-height:1.58;max-width:none}
.feature-faq-chevron{display:block;width:9px;height:9px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg)}.questions details[open] .feature-faq-chevron{transform:rotate(225deg)}
@media(max-width:760px){.questions{padding-block:56px}.questions summary{padding:25px 6px 13px;font-size:20px;gap:16px}.questions details p{padding:7px 30px 23px 6px;font-size:16px}.questions>div{margin-top:36px}}

.questions summary{font-family:SpartanHeadings,Arial,sans-serif}
