/*
 Mandarin v1.3 FINAL text/color enforcement.
 Loaded after every Mandarin page stylesheet and all normal system CSS.
 Its purpose is to prevent theme/Elementor typography and color bleed.
*/

/* DEFAULT LIGHT-SURFACE TEXT */
.fwmd-page{color:var(--fw-ink)!important}
.fwmd-page :where(h1,h2,h3,h4,h5,h6){color:var(--fw-ink)!important}
.fwmd-page :where(p,li,dt,dd){color:var(--fw-muted)!important}
.fwmd-page strong,.fwmd-page b{color:inherit!important}
.fwmd-page .fwmd-kicker{color:var(--fwmd-accent-safe)!important}
.fwmd-page .fwmd-eyebrow{color:var(--fwmd-accent-two-safe)!important}
.fwmd-page .fwmd-live-status{color:var(--fw-ink)!important}
.fwmd-page .fwmd-note{color:var(--fw-ink)!important}
.fwmd-page .fwmd-note :where(p,span,strong,small){color:inherit!important}

/* LIGHT CARDS / PANELS */
.fwmd-page :is(
  .fwmd-card,
  .fwmd-detail-grid article,
  .fwmd-package,
  .fwmd-price-grid article,
  .fwmd-party-extras>div,
  .fwmd-menu-grid article,
  .fwmd-event-grid article,
  .fwmd-special-grid article,
  .fwmd-book-panel,
  .fwmd-embed,
  .fwmd-empty-state,
  .fwmd-contact-grid>div
){color:var(--fw-ink)!important}
.fwmd-page :is(
  .fwmd-card,
  .fwmd-detail-grid article,
  .fwmd-package,
  .fwmd-price-grid article,
  .fwmd-party-extras>div,
  .fwmd-menu-grid article,
  .fwmd-event-grid article,
  .fwmd-special-grid article,
  .fwmd-book-panel,
  .fwmd-embed,
  .fwmd-empty-state,
  .fwmd-contact-grid>div
) :where(h1,h2,h3,h4,h5,h6,strong,b){color:var(--fw-ink)!important}
.fwmd-page :is(
  .fwmd-card,
  .fwmd-detail-grid article,
  .fwmd-package,
  .fwmd-price-grid article,
  .fwmd-party-extras>div,
  .fwmd-menu-grid article,
  .fwmd-event-grid article,
  .fwmd-special-grid article,
  .fwmd-book-panel,
  .fwmd-embed,
  .fwmd-empty-state,
  .fwmd-contact-grid>div
) :where(p,li,small,span,dt,dd){color:var(--fw-muted)!important}

/* ACCENT TEXT ON LIGHT SURFACES */
.fwmd-page .fwmd-badge,
.fwmd-page .fwmd-price,
.fwmd-page .fwmd-price-grid article>strong,
.fwmd-page .fwmd-contact-grid a,
.fwmd-page .fwmd-text-link{color:var(--fwmd-accent-safe)!important}
.fwmd-page .fwmd-eyebrow{color:var(--fwmd-accent-two-safe)!important}

/* BUTTONS: EXPLICIT FOREGROUND IN EVERY VARIANT */
.fwmd-page .fwmd-btn,
.fwmd-page .fwmd-pdf-button{
  font-family:inherit!important;
  font-weight:800!important;
  text-decoration:none!important
}
.fwmd-page .fwmd-btn:not(.fwmd-btn-secondary):not(.fwmd-btn-light):not(.fwmd-btn-outline-light):not(.fwmd-text-link),
.fwmd-page .fwmd-pdf-button{color:#fff!important}
.fwmd-page .fwmd-btn-secondary{color:var(--fwmd-accent-safe)!important;background:#fff!important}
.fwmd-page .fwmd-btn-light{color:var(--fw-ink)!important;background:#fff!important}
.fwmd-page .fwmd-btn-outline-light{color:#fff!important}
.fwmd-page .fwmd-text-link{color:var(--fwmd-accent-safe)!important;background:transparent!important}

/* IMAGE ATTRACTION CARDS ALWAYS READ AS DARK-IMAGE CARDS */
.fwmd-page .fwmd-attraction-card,
.fwmd-page .fwmd-attraction-card :where(h1,h2,h3,h4,strong,b){color:#fff!important}
.fwmd-page .fwmd-attraction-card :where(p,li,span,small){color:rgba(255,255,255,.84)!important}
.fwmd-page .fwmd-attraction-card .fwmd-badge{color:#fff!important}
.fwmd-page .fwmd-attraction-fallback,
.fwmd-page .fwmd-feature-fallback,
.fwmd-page .fwmd-fallback-art,
.fwmd-page .fwmd-feature-fallback :where(span,strong),
.fwmd-page .fwmd-fallback-art :where(span,strong){color:#fff!important}

/* GALLERY = DARK FIELD */
.fwmd-page .fwmd-gallery{color:#fff!important}
.fwmd-page .fwmd-gallery :where(h1,h2,h3,h4,h5,h6,strong,b){color:#fff!important}
.fwmd-page .fwmd-gallery :where(p,li,span,small){color:rgba(255,255,255,.78)!important}
.fwmd-page .fwmd-gallery .fwmd-kicker{color:var(--fwmd-yellow)!important}
.fwmd-page .fwmd-gallery .fwmd-eyebrow{color:rgba(255,255,255,.66)!important}
.fwmd-page .fwmd-gallery-item figcaption{color:#fff!important}

/* CTA = DARK FIELD */
.fwmd-page .fwmd-cta{color:#fff!important}
.fwmd-page .fwmd-cta :where(h1,h2,h3,h4,h5,h6,strong,b){color:#fff!important}
.fwmd-page .fwmd-cta :where(p,li,span,small){color:rgba(255,255,255,.78)!important}
.fwmd-page .fwmd-cta .fwmd-kicker{color:var(--fwmd-yellow)!important}
.fwmd-page .fwmd-cta .fwmd-eyebrow{color:rgba(255,255,255,.66)!important}
.fwmd-page .fwmd-cta .fwmd-btn:not(.fwmd-btn-light):not(.fwmd-btn-secondary){color:#fff!important}

/* HOURS BOARD = DARK FIELD */
.fwmd-page .fwmd-hours-board{color:#fff!important}
.fwmd-page .fwmd-hours-board :where(h1,h2,h3,h4,h5,h6,strong,b,dt,dd){color:#fff!important}
.fwmd-page .fwmd-hours-board :where(p,li,small){color:rgba(255,255,255,.76)!important}
.fwmd-page .fwmd-hours-board .fwmd-kicker{color:var(--fwmd-yellow)!important}
.fwmd-page .fwmd-hours-board .fwmd-eyebrow{color:rgba(255,255,255,.68)!important}
.fwmd-page .fwmd-hours-board .fwmd-day{color:#fff!important}
.fwmd-page .fwmd-hours-board .fwmd-day h3{color:#fff!important}
.fwmd-page .fwmd-hours-board .fwmd-session :where(span,strong){color:#fff!important}
.fwmd-page .fwmd-hours-board .fwmd-session small{color:rgba(255,255,255,.65)!important}
.fwmd-page .fwmd-hours-board .fwmd-session-time span{color:var(--fwmd-yellow)!important}
.fwmd-page .fwmd-hours-board .fwmd-status-big{color:#fff!important}
.fwmd-page .fwmd-hours-board .fwmd-hours-notice,
.fwmd-page .fwmd-hours-board .fwmd-hours-notice :where(p,strong,span){color:#fff!important}

/* PRICE / SPECIAL ACCENTS */
.fwmd-page .fwmd-price,
.fwmd-page .fwmd-price-grid article>strong,
.fwmd-page .fwmd-special-grid article>strong{color:var(--fwmd-accent-safe)!important}
.fwmd-page .fwmd-special-grid small{color:var(--fw-soft)!important}

/* INPUTS + EMBEDS */
.fwmd-page :where(input,textarea,select,option){color:var(--fw-ink)!important;background-color:#fff!important}
.fwmd-page :where(input,textarea,select)::placeholder{color:#8a93a2!important;opacity:1}
.fwmd-page label{color:var(--fw-ink)!important}

/* LINKS ON LIGHT SURFACES */
.fwmd-page a:not(.fwmd-btn):not(.fwmd-pdf-button):not(.fwmd-attraction-card){color:var(--fwmd-accent-safe)!important}
.fwmd-page .fwmd-gallery a:not(.fwmd-btn),
.fwmd-page .fwmd-cta a:not(.fwmd-btn),
.fwmd-page .fwmd-hours-board a:not(.fwmd-btn){color:var(--fwmd-yellow)!important}

/* NEVER LET GLOBAL THEME TEXT COLORS BLEED INTO THESE BASIC SECTIONS */
.fwmd-page :is(
  .fwmd-hero,
  .fwmd-feature,
  .fwmd-cards-section,
  .fwmd-details,
  .fwmd-attractions-full,
  .fwmd-packages,
  .fwmd-pricing,
  .fwmd-events,
  .fwmd-menu,
  .fwmd-camp,
  .fwmd-book,
  .fwmd-waiver,
  .fwmd-contact,
  .fwmd-specials,
  .fwmd-attraction-strip
){color:var(--fw-ink)!important}
.fwmd-page :is(
  .fwmd-hero,
  .fwmd-feature,
  .fwmd-cards-section,
  .fwmd-details,
  .fwmd-attractions-full,
  .fwmd-packages,
  .fwmd-pricing,
  .fwmd-events,
  .fwmd-menu,
  .fwmd-camp,
  .fwmd-book,
  .fwmd-waiver,
  .fwmd-contact,
  .fwmd-specials,
  .fwmd-attraction-strip
) :where(h1,h2,h3,h4,h5,h6){color:var(--fw-ink)!important}
.fwmd-page :is(
  .fwmd-hero,
  .fwmd-feature,
  .fwmd-cards-section,
  .fwmd-details,
  .fwmd-attractions-full,
  .fwmd-packages,
  .fwmd-pricing,
  .fwmd-events,
  .fwmd-menu,
  .fwmd-camp,
  .fwmd-book,
  .fwmd-waiver,
  .fwmd-contact,
  .fwmd-specials,
  .fwmd-attraction-strip
) :where(p,li,dt,dd){color:var(--fw-muted)!important}

/* Re-apply dark field rules after light-section normalization. */
.fwmd-page .fwmd-gallery :where(h1,h2,h3,h4,h5,h6,strong,b),
.fwmd-page .fwmd-cta :where(h1,h2,h3,h4,h5,h6,strong,b),
.fwmd-page .fwmd-hours-board :where(h1,h2,h3,h4,h5,h6,strong,b,dt,dd){color:#fff!important}
.fwmd-page .fwmd-gallery :where(p,li),
.fwmd-page .fwmd-cta :where(p,li),
.fwmd-page .fwmd-hours-board :where(p,li){color:rgba(255,255,255,.78)!important}

@media(max-width:760px){
  .fwmd-page h1{font-size:clamp(42px,12vw,58px)!important}
  .fwmd-page h2{font-size:clamp(32px,9vw,44px)!important}
  .fwmd-page h3{font-size:25px!important}
}
