html { scroll-behavior: smooth; }
.questions-page { overflow-x: hidden; background: #f5f0ea; color: var(--graphite); }
.questions-page .site-header { position: relative; }
.questions-page .nav-links a[aria-current="page"] { color: var(--wine); }

.questions-hero {
  padding: clamp(5rem, 9vw, 8rem) 5vw clamp(4rem, 7vw, 6rem);
  background:
    radial-gradient(circle at 88% 12%, rgba(201,168,76,0.15), transparent 28%),
    linear-gradient(145deg, #241c1e 0%, #171717 65%);
  color: var(--cream);
  text-align: center;
}
.questions-eyebrow,
.questions-cta-eyebrow,
.questions-note-eyebrow {
  margin-bottom: 1.25rem;
  color: var(--gold);
  font-size: 0.66rem;
  letter-spacing: 0.25em;
  text-transform: uppercase;
}
.questions-hero h1 {
  max-width: 16ch;
  margin: 0 auto;
  font-family: 'Cormorant Garamond', serif;
  font-size: clamp(3rem, 6vw, 5.6rem);
  font-weight: 300;
  letter-spacing: -0.035em;
  line-height: 0.98;
  text-wrap: balance;
}
.questions-intro { max-width: 66ch; margin: 1.75rem auto 0; color: rgba(245,240,234,0.72); font-size: clamp(0.95rem,1.3vw,1.08rem); line-height: 1.75; }
.questions-guide { margin-top: 2rem; color: rgba(245,240,234,0.42); font-size: 0.75rem; letter-spacing: 0.08em; }

.category-nav { position: sticky; top: 0; z-index: 20; padding: 1rem 5vw; border-bottom: 1px solid rgba(42,42,42,0.09); background: rgba(245,240,234,0.96); backdrop-filter: blur(12px); }
.category-nav-inner { display: flex; flex-wrap: wrap; justify-content: center; gap: 0.55rem; max-width: 1180px; margin: 0 auto; }
.category-nav a { padding: 0.62rem 0.85rem; border: 1px solid rgba(122,31,52,0.18); border-radius: 100px; color: rgba(42,42,42,0.7); font-size: 0.66rem; letter-spacing: 0.05em; line-height: 1.3; text-decoration: none; }
.category-nav a:hover { border-color: var(--wine); color: var(--wine); }
.category-nav a:focus-visible { outline: 2px solid var(--wine); outline-offset: 3px; }

.questions-content { max-width: 1040px; margin: 0 auto; padding: clamp(5rem,8vw,8rem) 5vw; }
.question-category { position: relative; scroll-margin-top: 7.5rem; }
.question-category + .question-category { margin-top: clamp(5.5rem,9vw,8rem); }
.category-index { margin-bottom: 0.65rem; color: var(--wine); font-family: 'Cormorant Garamond',serif; font-size: 1.05rem; font-style: italic; }
.question-category > h2 { max-width: 22ch; font-family: 'Cormorant Garamond',serif; font-size: clamp(2.2rem,4.3vw,3.5rem); font-weight: 300; line-height: 1.05; text-wrap: balance; }
.questions-list { max-width: none; margin-top: 2.5rem; border-top: 1px solid rgba(42,42,42,0.15); }
.questions-list .faq-item { border-bottom-color: rgba(42,42,42,0.12); }
.questions-list .faq-q { justify-content: flex-start; color: var(--graphite); font-family: 'Cormorant Garamond',serif; font-size: clamp(1.2rem,2.1vw,1.55rem); line-height: 1.3; }
.questions-list .faq-q::after { margin-left: auto; color: var(--wine); }
.question-number { flex: 0 0 2.4rem; color: var(--wine); font-family: 'Jost',sans-serif; font-size: 0.66rem; letter-spacing: 0.12em; }
.questions-list .faq-a { max-width: 76ch; padding-left: 2.4rem; color: rgba(42,42,42,0.72); font-size: 0.94rem; line-height: 1.85; }
.questions-list .faq-a strong { color: var(--wine); }
.questions-list .faq-q:focus-visible { outline-color: var(--wine); }

.questions-note { margin-top: clamp(6rem,10vw,9rem); padding: clamp(2.5rem,5vw,4.5rem); border-left: 3px solid var(--gold); background: var(--graphite); color: var(--cream); }
.questions-note h2 { max-width: 18ch; font-family: 'Cormorant Garamond',serif; font-size: clamp(2.2rem,4vw,3.5rem); font-weight: 300; line-height: 1.05; }
.questions-note p:not(.questions-note-eyebrow) { max-width: 72ch; margin-top: 1.25rem; color: rgba(245,240,234,0.68); font-size: 0.95rem; line-height: 1.8; }
.questions-note strong { color: var(--cream); font-weight: 400; }

.questions-cta { padding: clamp(5.5rem,9vw,8rem) 5vw; background: var(--wine); color: var(--cream); text-align: center; }
.questions-cta h2 { max-width: 16ch; margin: 0 auto; font-family: 'Cormorant Garamond',serif; font-size: clamp(2.7rem,5vw,4.5rem); font-weight: 300; line-height: 1.02; }
.questions-cta > p:not(.questions-cta-eyebrow) { max-width: 60ch; margin: 1.4rem auto 2.25rem; color: rgba(245,240,234,0.68); line-height: 1.7; }
.questions-cta .call-cta { background: var(--cream); color: var(--wine); }
.questions-cta .call-cta:hover { background: var(--graphite); color: var(--cream); }
.questions-footer a { color: rgba(245,240,234,0.48); text-decoration: none; }
.questions-footer a:hover { color: var(--gold); }
.footer-brand { font-family: 'Cormorant Garamond',serif; font-size: 1rem; }
.footer-brand em { color: var(--gold); }

@media (max-width: 834px) {
  .questions-hero { padding-top: 4.5rem; }
  .category-nav { position: relative; }
  .question-category { scroll-margin-top: 1.5rem; }
}
@media (max-width: 560px) {
  .questions-hero { padding: 4.25rem 6vw; }
  .questions-hero h1 { max-width: 12ch; font-size: clamp(2.75rem,13vw,3.6rem); }
  .category-nav { padding: 1rem 4vw; }
  .category-nav-inner { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
  .category-nav a { display: flex; align-items: center; justify-content: center; min-height: 2.75rem; padding: 0.55rem 0.6rem; text-align: center; }
  .questions-content { padding: 4.5rem 6vw; }
  .question-category + .question-category { margin-top: 5rem; }
  .question-category > h2 { font-size: 2.35rem; }
  .questions-list { margin-top: 2rem; }
  .questions-list .faq-q { align-items: flex-start; padding: 1.45rem 0; font-size: 1.25rem; }
  .question-number { flex-basis: 1.7rem; padding-top: 0.28rem; font-size: 0.58rem; }
  .questions-list .faq-q::after { padding-left: 0.4rem; }
  .questions-list .faq-a { padding-left: 1.7rem; padding-bottom: 1.5rem; font-size: 0.91rem; line-height: 1.8; }
  .questions-note { margin-top: 5.5rem; padding: 2.25rem 1.5rem; }
  .questions-cta { padding: 5rem 6vw; }
  .questions-cta .call-cta { width: 100%; padding-inline: 1rem; }
  .questions-footer { align-items: flex-start; flex-direction: column; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}
