/* Audit fixes (2026-09-28): loaded last. Keep overrides here small and specific. */

/* Returning visitors skip the intro (flag set in index.html head) */
html.intro-seen #intro{display:none}
html.intro-seen #website{display:block}

/* Visible hero headline */
#website .book-hero .book-intro{display:flex;flex-direction:column;align-items:center;gap:14px;max-width:860px;margin:22px auto 0;padding:0 16px;letter-spacing:normal}
#website .book-hero .book-intro>span{font-size:11px;letter-spacing:.2em;color:#173f2d;font-weight:700}
#website .book-hero h1.hero-headline{margin:0;font:700 clamp(32px,3.6vw,48px)/1.1 'Plus Jakarta Sans',Inter,system-ui,sans-serif;letter-spacing:-.035em;color:#1f2a22;text-align:center;text-wrap:balance}
#website .book-hero h1.hero-headline em{font:italic 400 1.06em/1 'Plus Jakarta Sans',Inter,sans-serif;color:#8a6632;letter-spacing:-.02em}
#website .book-hero .hero-sub{margin:0;max-width:600px;font:400 17px/1.55 Inter,system-ui,sans-serif;letter-spacing:normal;color:#4a5347;text-align:center;text-wrap:pretty}
#website .book-hero .book-scene{height:470px}
#website .book-hero .open-book{top:6%;height:88%}
#website .book-invitation .actions{flex-wrap:wrap}
#website .tour-link{background:none;border:0;padding:0;font:inherit;font-size:14px;color:#173f2d;text-decoration:underline;text-underline-offset:3px;cursor:pointer;min-height:24px}
#website .book-levels{color:#5c6456;font-size:11px}
@media(max-width:760px){
  #website .book-hero h1.hero-headline{font-size:29px}
  #website .book-hero .hero-sub{font-size:15px}
  #website .book-hero .book-scene{height:300px}
  #website .book-hero .open-book{top:4%;height:92%}
  #website .book-hero .book-intro>span{font-size:9px!important}
  #website .book-levels{padding:0 56px}
}

/* FAQ */
#website .faq-section{max-width:880px;margin:0 auto;padding:88px 5% 72px}
#website .faq-section h2{margin:10px 0 28px}
#website .faq-item{border-top:1px solid #dcd8cc}
#website .faq-item:last-child{border-bottom:1px solid #dcd8cc}
#website .faq-item summary{cursor:pointer;list-style:none;padding:20px 36px 20px 0;position:relative;font:600 17px/1.4 Inter,system-ui,sans-serif;color:#1f2a22}
#website .faq-item summary::-webkit-details-marker{display:none}
#website .faq-item summary::after{content:'+';position:absolute;right:4px;top:16px;font-size:24px;color:#173f2d;transition:transform .2s}
#website .faq-item[open] summary::after{transform:rotate(45deg)}
#website .faq-item p{margin:0 0 20px;max-width:680px;color:#4a5347;line-height:1.6}
#website .faq-more{margin-top:24px;color:#4a5347}
#website .faq-section a,#website footer a{color:#173f2d}
@media(prefers-reduced-motion:reduce){#website .faq-item summary::after{transition:none}}

/* Contrast: darken muted text to meet WCAG AA 4.5:1 */
#website .wf-heading>p,#website .wf-steps small,#website .wf-aside>span,#website #wfReset,#website .wf-stage-kicker,
#website [data-wf-topic],#website .wf-student>span,#website .wf-helptext,#website #wfStepCount,#website .studio-note,
#website .studio-identity span,#website .studio-foot span,#website .fine,#website .locked small,#website .locked strong,
#website .pricing-note{color:#565e50!important}
#website #wfNext{background-color:#56694a}

/* Tap targets >= 24px */
#website header nav a,#website footer a,#website footer button,#website .legal-links a,#website #replay{min-height:24px;display:inline-flex;align-items:center}
#website .wf-steps button[aria-current] .wf-number{background:#56694a;border-color:#56694a}
#website .level.locked{opacity:.85}
#website .report-top span{color:#565e50}
#website .faq-more a,#website footer a{text-decoration:underline;text-underline-offset:3px}
#website .report-metrics span,#website .report-metrics small{color:#565e50}
