/** Shopify CDN: Minification failed

Line 1023:3 Unexpected "="

**/
/* ==========================================================================
   Universal Poppins Typography, Editable Scales & Relative Line Heights
   ========================================================================== */

:root {
  --font-body-family: 'Poppins', sans-serif !important;
  --font-heading-family: 'Poppins', sans-serif !important;
  --line-height-heading: 1.1;
  --line-height-subheading: 1.2;
  --line-height-body: 1.45;
  --line-height-body-long: 1.55;
  --line-height-hero-heading: 1.08;
  --line-height-hero-desc: 1.28;
  --font-body-size: 1.6rem;
  --font-body-weight: 400;
  --body-max-width: 65ch;
  --body-letter-spacing: normal;
}

/* Universal Font: strictly Poppins for every element */
html,
body,
*,
*::before,
*::after {
  font-family: 'Poppins', sans-serif !important;
}

/* Headings: Poppins font family, dynamic weight & relative line-height */
h1,
h2,
h3,
h4,
h5,
h6,
.h0,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
.hxxl,
.hxl,
.heading,
[class*="heading"],
[class*="title"],
[class*="-head"],
[class*="-heading"],
[class*="-title"],
.card__heading,
.card-information__text,
.banner__heading,
.section-heading,
.accordion__title,
.footer-block__heading,
.mega-menu__heading,
.menu-drawer__menu-item,
.product__title,
.product__title h1,
.product__title h2,
.product__title a,
.card__heading,
.card__heading a,
.collection__title,
.article-card__title,
.blog__title {
  font-family: 'Poppins', sans-serif !important;
  font-weight: var(--font-heading-weight, 600) !important;
  line-height: var(--line-height-heading, 1.1) !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
}

/* ==========================================================================
   Hero Sections: Exact 100% Match with About Hero Specifications
   ========================================================================== */

/* Hero Headings: Poppins 600, Tight 1.08 Line-Height & -1px Letter Spacing */
.museum-about-hero__heading,
.museum-contact-hero__heading,
.museum-donation-hero__heading,
.museum-auditorium-hero__heading,
.museum-exhibits-hero__heading,
.museum-gallery-hero__heading,
.museum-guidelines-hero__heading,
.scholarship-hero__heading,
.museum-top-banner__heading,
.museum-top-banner__title,
.museum-bookstore-hero__heading,
.museum-welcome-showcase__heading,
[class*="hero"] [class*="heading"]:not(.museum-hero-slider__heading),
[class*="hero"] [class*="title"]:not(.museum-hero-slider__title) {
  font-family: 'Poppins', sans-serif !important;
  font-weight: 600 !important;
  line-height: 1.08 !important;
  letter-spacing: -1px !important;
  word-break: normal !important;
}

/* Hero Descriptions: Poppins 600/500, Tight 1.28 Line-Height */
.museum-about-hero__description,
.museum-about-hero__description p,
.museum-about-hero__desc,
.museum-about-hero__desc p,
.museum-contact-hero__desc,
.museum-contact-hero__desc p,
.museum-donation-hero__desc,
.museum-donation-hero__desc p,
.museum-auditorium-hero__desc,
.museum-auditorium-hero__desc p,
.museum-exhibits-hero__desc,
.museum-exhibits-hero__desc p,
.museum-gallery-hero__desc,
.museum-gallery-hero__desc p,
.museum-guidelines-hero__description,
.museum-guidelines-hero__description p,
.museum-guidelines-hero__desc,
.museum-guidelines-hero__desc p,
.scholarship-hero__desc,
.scholarship-hero__desc p,
.museum-top-banner__desc,
.museum-top-banner__desc p,
.museum-bookstore-hero__desc,
.museum-bookstore-hero__desc p,
.museum-welcome-showcase__desc,
.museum-welcome-showcase__desc p {
  font-family: 'Poppins', sans-serif !important;
  font-weight: inherit !important;
  line-height: 1.28 !important;
}

/* Hero Breadcrumbs */
.museum-about-hero__breadcrumb,
.museum-contact-hero__breadcrumb,
.museum-donation-hero__breadcrumb,
.museum-auditorium-hero__breadcrumb,
.museum-exhibits-hero__breadcrumb,
.museum-gallery-hero__breadcrumb,
.museum-guidelines-hero__breadcrumb,
.scholarship-hero__breadcrumb,
.museum-top-banner__breadcrumb,
.museum-bookstore-hero__breadcrumb {
  font-family: 'Poppins', sans-serif !important;
  font-size: 1.3rem !important;
  font-weight: 500 !important;
  margin-bottom: 1.2rem !important;
}

/* Eyebrows: Poppins font, 700 weight & 1.2 line-height */
[class*="eyebrow"],
.museum-about-hero__eyebrow,
.museum-contact-hero__eyebrow,
.museum-donation-hero__eyebrow,
.museum-auditorium-hero__eyebrow,
.museum-exhibits-hero__eyebrow,
.museum-gallery-hero__eyebrow,
.museum-guidelines-hero__eyebrow,
.scholarship-hero__eyebrow,
.museum-top-banner__eyebrow,
.museum-welcome-showcase__eyebrow,
.museum-feature-grid__eyebrow,
.museum-split-content__eyebrow,
.museum-media-gallery__eyebrow {
  font-family: 'Poppins', sans-serif !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
}

/* Hero & Section CTA Buttons Desktop & Universal Standard */
.museum-hero .museum-hero__button,
.museum-about-hero__btn,
.museum-contact-hero__btn,
.museum-donation-hero__btn,
.museum-auditorium-hero__btn,
.museum-exhibits-hero__btn,
.museum-gallery-hero__btn,
.museum-guidelines-hero__btn,
.scholarship-hero__btn,
.museum-top-banner__btn,
.museum-bookstore-hero__btn,
.museum-welcome-showcase__btn,
.museum-heritage-card__btn,
.museum-split__button,
.museum-split-content__btn,
.museum-cta__btn,
.museum-auditorium-cta__btn,
.museum-donation-methods__btn,
.museum-exhibits-categories__btn,
.museum-gallery-slider__btn,
.museum-newsletter-banner__btn,
.museum-highlight-cards__btn,
.museum-recent-products__btn,
.museum-feature-grid__btn,
.museum-multi-slider__btn {
  font-family: 'Poppins', sans-serif !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  min-height: 4.4rem !important;
  padding: 1.2rem 2.4rem !important;
  font-size: 1.4rem !important;
  border-radius: 0.4rem !important;
  gap: 0.8rem !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
}

/* Universal Hero Mobile Harmony (100% Parity with About Hero Mobile) */
@media screen and (max-width: 749px) {
  /* Mobile Content Box Constraints (300px width limit) */
  .museum-about-hero__content-box,
  .museum-contact-hero__content,
  .museum-donation-hero__content,
  .museum-auditorium-hero__content,
  .museum-exhibits-hero__content,
  .museum-gallery-hero__content,
  .museum-guidelines-hero__content,
  .scholarship-hero__content,
  .museum-top-banner__content,
  .museum-bookstore-hero__content,
  .museum-welcome-showcase__content {
    max-width: min(100%, 300px) !important;
    padding-right: 0.8rem !important;
    box-sizing: border-box !important;
  }

  /* Mobile Hero Section Height & Padding */
  .museum-about-hero,
  .museum-contact-hero,
  .museum-donation-hero,
  .museum-auditorium-hero,
  .museum-exhibits-hero,
  .museum-gallery-hero,
  .museum-guidelines-hero,
  .scholarship-hero,
  .museum-top-banner,
  .museum-bookstore-hero,
  .museum-welcome-showcase {
    min-height: auto !important;
    padding-top: max(var(--padding-top, 2.4rem), 2.4rem) !important;
    padding-bottom: max(var(--padding-bottom, 3.2rem), 3.2rem) !important;
  }

  /* Mobile Breadcrumb */
  .museum-about-hero__breadcrumb,
  .museum-contact-hero__breadcrumb,
  .museum-donation-hero__breadcrumb,
  .museum-auditorium-hero__breadcrumb,
  .museum-exhibits-hero__breadcrumb,
  .museum-gallery-hero__breadcrumb,
  .museum-guidelines-hero__breadcrumb,
  .scholarship-hero__breadcrumb,
  .museum-top-banner__breadcrumb,
  .museum-bookstore-hero__breadcrumb {
    font-size: 1.2rem !important;
    margin-bottom: 0.6rem !important;
  }

  /* Mobile Eyebrow */
  .museum-about-hero__eyebrow,
  .museum-contact-hero__eyebrow,
  .museum-donation-hero__eyebrow,
  .museum-auditorium-hero__eyebrow,
  .museum-exhibits-hero__eyebrow,
  .museum-gallery-hero__eyebrow,
  .museum-guidelines-hero__eyebrow,
  .scholarship-hero__eyebrow,
  .museum-top-banner__eyebrow,
  .museum-bookstore-hero__eyebrow {
    font-size: 1.1rem !important;
    letter-spacing: 1.2px !important;
    margin-bottom: 0.4rem !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
  }

  /* Mobile Hero Headings */
  .museum-about-hero__heading,
  .museum-contact-hero__heading,
  .museum-donation-hero__heading,
  .museum-auditorium-hero__heading,
  .museum-exhibits-hero__heading,
  .museum-gallery-hero__heading,
  .museum-guidelines-hero__heading,
  .scholarship-hero__heading,
  .museum-top-banner__heading,
  .museum-bookstore-hero__heading,
  .museum-welcome-showcase__heading {
    font-size: 2.2rem !important;
    line-height: 1.08 !important;
    letter-spacing: -0.3px !important;
    margin-bottom: 0.6rem !important;
    word-break: normal !important;
  }

  /* Mobile Hero Descriptions */
  .museum-about-hero__description,
  .museum-about-hero__description p,
  .museum-about-hero__desc,
  .museum-about-hero__desc p,
  .museum-contact-hero__desc,
  .museum-contact-hero__desc p,
  .museum-donation-hero__desc,
  .museum-donation-hero__desc p,
  .museum-auditorium-hero__desc,
  .museum-auditorium-hero__desc p,
  .museum-exhibits-hero__desc,
  .museum-exhibits-hero__desc p,
  .museum-gallery-hero__desc,
  .museum-gallery-hero__desc p,
  .museum-guidelines-hero__description,
  .museum-guidelines-hero__description p,
  .museum-guidelines-hero__desc,
  .museum-guidelines-hero__desc p,
  .scholarship-hero__desc,
  .scholarship-hero__desc p,
  .museum-top-banner__desc,
  .museum-top-banner__desc p,
  .museum-bookstore-hero__desc,
  .museum-bookstore-hero__desc p,
  .museum-welcome-showcase__desc,
  .museum-welcome-showcase__desc p {
    font-size: 1.25rem !important;
    line-height: 1.28 !important;
    margin-top: 0.3rem !important;
    margin-bottom: 0.6rem !important;
  }

  /* Mobile Buttons Container */
  .museum-about-hero__buttons,
  .museum-contact-hero__buttons,
  .museum-donation-hero__buttons,
  .museum-auditorium-hero__buttons,
  .museum-exhibits-hero__buttons,
  .museum-gallery-hero__buttons,
  .museum-guidelines-hero__buttons,
  .scholarship-hero__buttons,
  .museum-top-banner__buttons,
  .museum-bookstore-hero__buttons,
  .museum-welcome-showcase__buttons {
    flex-direction: row !important;
    flex-wrap: wrap !important;
    gap: 0.8rem !important;
    margin-top: 1.2rem !important;
    margin-bottom: 0 !important;
  }

  /* Mobile Action Button Styling */
  .museum-hero .museum-hero__button,
  .museum-about-hero__btn,
  .museum-contact-hero__btn,
  .museum-donation-hero__btn,
  .museum-auditorium-hero__btn,
  .museum-exhibits-hero__btn,
  .museum-gallery-hero__btn,
  .museum-guidelines-hero__btn,
  .scholarship-hero__btn,
  .museum-top-banner__btn,
  .museum-bookstore-hero__btn,
  .museum-welcome-showcase__btn,
  .museum-heritage-card__btn,
  .museum-split__button,
  .museum-split-content__btn,
  .museum-cta__btn,
  .museum-auditorium-cta__btn,
  .museum-donation-methods__btn,
  .museum-exhibits-categories__btn,
  .museum-gallery-slider__btn,
  .museum-newsletter-banner__btn,
  .museum-highlight-cards__btn,
  .museum-recent-products__btn,
  .museum-feature-grid__btn,
  .museum-multi-slider__btn {
    min-height: 4.4rem !important;
    padding: 1.2rem 2.4rem !important;
    font-size: 1.4rem !important;
    line-height: 1.2 !important;
    border-radius: 4px !important;
    gap: 0.8rem !important;
    margin-bottom: 0 !important;
    width: auto !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
  }
}

/* ==========================================================================
   Body & Description Text Styling (Spec Conformance)
   ========================================================================== */
p:not([class*="eyebrow"]):not([class*="heading"]):not([class*="title"]):not([class*="desc"]):not([class*="description"]):not([class*="hero"]):not([class*="button"]):not([class*="btn"]):not([class*="price"]),
.text-body,
.text-body p,
.product__description,
.product__description p,
.product__description *,
.rich-text__text,
.rich-text__text p,
.caption,
.caption-large,
.article-card__excerpt,
.article-template__content,
.article-template__content p,
.page__content,
.page__content p {
  font-family: 'Poppins', sans-serif !important;
  font-size: var(--font-body-size, 1.6rem);
  font-weight: var(--font-body-weight, 400);
  line-height: var(--line-height-body, 1.65);
  letter-spacing: var(--body-letter-spacing, normal);
}

/* Constrain long paragraph measures on desktop */
.rte p,
.product__description,
.product__description p,
.rich-text__text,
.rich-text__text p,
.text-body p,
.article-template__content p,
.page__content p,
p:not([class*="eyebrow"]):not([class*="heading"]):not([class*="title"]):not([class*="button"]):not([class*="btn"]):not([class*="price"]) {
  max-width: var(--body-max-width, 65ch);
}

/* Readability on long devotional/editorial copy */
.rte p + p,
.product__description p + p,
.rich-text__text p + p,
.article-template__content p + p {
  line-height: var(--line-height-body-long, 1.7);
}

.rte p,
.product__description p {
  line-height: inherit;
}

/* Universal Support for <br> Line Breaks across all Theme Components */
br {
  display: inline !important;
  content: "" !important;
}

h1, h2, h3, h4, h5, h6,
.h0, .h1, .h2, .h3, .h4, .h5, .h6,
[class*="heading"],
[class*="title"],
[class*="eyebrow"],
[class*="desc"],
[class*="description"],
.rte,
.rte p {
  word-break: normal;
  overflow-wrap: break-word;
}

/* Bold text inside paragraphs */
p strong,
p b,
.rte strong,
.rte b,
[class*="desc"] strong,
[class*="desc"] b {
  font-family: 'Poppins', sans-serif !important;
  font-weight: 600;
}

/* Maintain rating stars icons */
.rating-star,
.rating-star::before {
  font-family: Times, serif !important;
}

/* Global overflow protection that never breaks position sticky */
html,
body {
  overflow-x: clip !important;
}

/* Ensure Header is Warm Brand Tone (#FFFDF8) and Seamless */
.section-header,
.section-header.shopify-section-group-header-group,
.shopify-section-group-header-group .section-header,
.header-wrapper,
.header-wrapper--border-bottom,
sticky-header,
sticky-header.header-wrapper,
.shopify-section-header-sticky,
.shopify-section-header-sticky .header-wrapper,
.scrolled-past-header .header-wrapper,
.header {
  background-color: #FFFDF8 !important;
  background: #FFFDF8 !important;
  border: none !important;
  border-bottom: none !important;
}

/* Sticky Header on Mobile and Desktop */
.section-header,
.shopify-section-header-sticky,
.shopify-section-group-header-group .section-header {
  position: -webkit-sticky !important;
  position: sticky !important;
  top: 0 !important;
  z-index: 1000 !important;
  width: 100% !important;
}

.header-wrapper,
sticky-header.header-wrapper,
.shopify-section-header-sticky .header-wrapper,
.scrolled-past-header .header-wrapper {
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.07), 0 1px 4px rgba(0, 0, 0, 0.04) !important;
  position: relative !important;
  z-index: 1000 !important;
  border: none !important;
  border-bottom: none !important;
}

/* Announcement Bar & Utility Bar: Unified Full-Width Seamless Background & No Border */
.utility-bar,
.utility-bar__grid,
.announcement-bar-section,
.announcement-bar,
.utility-bar--bottom-border,
.utility-bar--bottom-border-social-only {
  background-color: #FFFDF8 !important;
  background: #FFFDF8 !important;
  border: none !important;
  border-bottom: none !important;
}

.announcement-bar__message {
  font-family: var(--font-body-family, 'Poppins', sans-serif) !important;
  font-weight: var(--font-body-weight, 400) !important;
  font-size: var(--font-body-size, 1.6rem) !important;
  letter-spacing: var(--body-letter-spacing, normal) !important;
  line-height: var(--line-height-body, 1.65) !important;
}

/* ==========================================================================
   Header Icons (Search, User/Account, Cart) - Matching Brand & Theme
   ========================================================================== */
.header__icons {
  display: flex !important;
  align-items: center !important;
  gap: 0.8rem !important;
}

.header__icons .header__icon,
.header__icon--search,
.header__icon--account,
.header__icon--cart,
#cart-icon-bubble,
.header__search summary.modal__toggle {
  color: #B57C32 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 4.4rem !important;
  height: 4.4rem !important;
  border-radius: 50% !important;
  transition: color 0.2s ease, background-color 0.2s ease, transform 0.2s ease !important;
  text-decoration: none !important;
}

.header__icons .header__icon:hover,
.header__icon--search:hover,
.header__icon--account:hover,
.header__icon--cart:hover,
#cart-icon-bubble:hover,
.header__search summary.modal__toggle:hover {
  color: #966323 !important;
  background-color: rgba(181, 124, 50, 0.08) !important;
  transform: scale(1.05);
}

.header__icons .header__icon svg,
.header__icon--search svg,
.header__icon--account svg,
.header__icon--cart svg,
#cart-icon-bubble svg,
.header__search summary.modal__toggle svg,
.header__icon--cart .icon,
.header__icon--account .icon,
.header__icon--search .icon {
  color: #B57C32 !important;
  stroke: #B57C32 !important;
  fill: none !important;
  stroke-width: 2px !important;
  width: 2.4rem !important;
  height: 2.4rem !important;
}

.header__icons .header__icon svg *,
.header__icon--search svg *,
.header__icon--account svg *,
.header__icon--cart svg *,
#cart-icon-bubble svg *,
.header__search summary.modal__toggle svg *,
.header__icon--cart .icon *,
.header__icon--account .icon *,
.header__icon--search .icon * {
  stroke: #B57C32 !important;
  fill: none !important;
  stroke-width: 2px !important;
}

.header__icons .header__icon:hover svg,
.header__icon--search:hover svg,
.header__icon--account:hover svg,
.header__icon--cart:hover svg,
#cart-icon-bubble:hover svg,
.header__search summary.modal__toggle:hover svg {
  color: #966323 !important;
  stroke: #966323 !important;
}

.header__icons .header__icon:hover svg *,
.header__icon--search:hover svg *,
.header__icon--account:hover svg *,
.header__icon--cart:hover svg *,
#cart-icon-bubble:hover svg *,
.header__search summary.modal__toggle:hover svg * {
  stroke: #966323 !important;
}

/* Fix search icon & close icon toggle */
.header__search details .header__icon-close {
  display: none !important;
}

.header__search details[open] .header__icon-close {
  display: inline-block !important;
}

.header__search details[open] summary .svg-wrapper:not(.header__icon-close) {
  display: none !important;
}

/* ==========================================================================
   Shopify Customer Account Popover & Dialog - Solid White Background
   ========================================================================== */
shopify-account,
shopify-account.header__icon,
.shopify-account,
shopify-account dialog,
shopify-account [popover],
shopify-account [role="dialog"],
shopify-account .dialog,
.customer-account-popover,
[data-shopify-account-dialog] {
  --shopify-account-color-background: #FFFFFF !important;
  --shopify-account-color-text: #121212 !important;
  --shopify-account-color-accent: #B57C32 !important;
  --shopify-account-color-accent-text: #FFFFFF !important;
  --shopify-account-font-heading: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
  --shopify-account-font-body: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
}

shopify-account::part(dialog),
shopify-account::part(popover),
shopify-account dialog,
shopify-account [role="dialog"],
shopify-account [popover],
.shopify-account dialog {
  background: #FFFFFF !important;
  background-color: #FFFFFF !important;
  opacity: 1 !important;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15), 0 2px 8px rgba(0, 0, 0, 0.08) !important;
  border-radius: 12px !important;
  border: 1px solid rgba(181, 124, 50, 0.2) !important;
}

/* ==========================================================================
   Search Modal: Full-width solid white overlay covering header when opened
   ========================================================================== */
details:not([open]) > .search-modal {
  display: none !important;
}

details[open] > .search-modal {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  background-color: #FFFFFF !important;
  background: #FFFFFF !important;
  z-index: 999999 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08) !important;
  opacity: 1 !important;
}

.search-modal__content {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  max-width: 820px !important;
  margin: 0 auto !important;
  padding: 0 2rem !important;
  background: transparent !important;
  gap: 1.2rem !important;
}

.search-modal__form {
  flex: 1 1 auto !important;
  width: auto !important;
  max-width: 100% !important;
}

.search-modal .field {
  background: #FBF8F3 !important;
  border-radius: 999px !important;
  border: 1.5px solid #B57C32 !important;
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  width: 100% !important;
  height: 4.8rem !important;
  min-height: 4.8rem !important;
  box-shadow: none !important;
  overflow: hidden !important;
}

.search-modal .field:before,
.search-modal .field:after {
  display: none !important;
  content: none !important;
  box-shadow: none !important;
  border: none !important;
}

.search-modal .field__input {
  background: transparent !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  color: #111111 !important;
  font-family: 'Poppins', sans-serif !important;
  font-weight: 500 !important;
  font-size: 1.5rem !important;
  height: 100% !important;
  padding: 0 8.5rem 0 2.2rem !important;
  margin: 0 !important;
  width: 100% !important;
}

.search-modal .field__label {
  display: none !important;
}

.search-modal .search__button {
  position: absolute !important;
  right: 0.8rem !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 3.8rem !important;
  height: 3.8rem !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #B57C32 !important;
  cursor: pointer !important;
  padding: 0 !important;
  z-index: 2 !important;
}

.search-modal .search__button svg {
  width: 2.2rem !important;
  height: 2.2rem !important;
  stroke: #B57C32 !important;
  stroke-width: 2.5px !important;
}

.search-modal .reset__button {
  position: absolute !important;
  right: 4.6rem !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 3.2rem !important;
  height: 3.2rem !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #888888 !important;
  cursor: pointer !important;
  padding: 0 !important;
  z-index: 2 !important;
}

.search-modal .reset__button.hidden,
.search-modal .reset__button[hidden] {
  display: none !important;
}

.search-modal .reset__button:after {
  display: none !important;
  content: none !important;
}

.search-modal .reset__button svg {
  width: 1.8rem !important;
  height: 1.8rem !important;
  stroke: #888888 !important;
}

.search-modal .reset__button:hover svg {
  stroke: #B57C32 !important;
}

.search-modal__close-button {
  position: relative !important;
  right: auto !important;
  top: auto !important;
  color: #B57C32 !important;
  width: 4.2rem !important;
  height: 4.2rem !important;
  min-width: 4.2rem !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 50% !important;
  background: transparent !important;
  border: none !important;
  cursor: pointer !important;
  transition: background-color 0.2s ease, transform 0.2s ease !important;
}

.search-modal__close-button:hover {
  background-color: rgba(181, 124, 50, 0.08) !important;
  transform: scale(1.05);
}

.search-modal__close-button svg {
  width: 2.2rem !important;
  height: 2.2rem !important;
  stroke: #B57C32 !important;
  stroke-width: 2.5px !important;
}

/* Cart badge */
.cart-count-bubble {
  background-color: #B57C32 !important;
  color: #FFFFFF !important;
  font-family: 'Poppins', sans-serif !important;
  font-weight: 600 !important;
  font-size: 1.1rem !important;
  width: 1.9rem !important;
  height: 1.9rem !important;
  border-radius: 999px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* ==========================================================================
   Predictive Search Results Dropdown - Solid White Background & Card Styling
   ========================================================================== */
.predictive-search,
.predictive-search--header,
.predictive-search--search-template {
  background-color: #FFFFFF !important;
  background: #FFFFFF !important;
  position: absolute !important;
  top: calc(100% + 0.8rem) !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  max-height: 75vh !important;
  overflow-y: auto !important;
  border-radius: 16px !important;
  border: 1px solid rgba(181, 124, 50, 0.25) !important;
  box-shadow: 0 15px 40px rgba(0, 0, 0, 0.18), 0 2px 8px rgba(0, 0, 0, 0.08) !important;
  z-index: 999999 !important;
  padding: 1.2rem !important;
}

predictive-search[open] .predictive-search,
predictive-search[loading] .predictive-search {
  display: block !important;
}

.predictive-search__results-groups-wrapper {
  background: #FFFFFF !important;
}

.predictive-search__heading {
  font-family: 'Poppins', sans-serif !important;
  font-weight: 600 !important;
  font-size: 1.2rem !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  color: #B57C32 !important;
  border-bottom: 1px solid rgba(181, 124, 50, 0.15) !important;
  padding: 0.8rem 1.2rem !important;
  margin: 0 !important;
}

.predictive-search__item {
  color: #111111 !important;
  font-family: 'Poppins', sans-serif !important;
  border-radius: 8px !important;
  transition: background-color 0.15s ease !important;
  padding: 1rem 1.2rem !important;
}

.predictive-search__item:hover,
.predictive-search__list-item:hover > *,
.predictive-search__list-item[aria-selected='true'] > * {
  background-color: #FBF8F3 !important;
  color: #B57C32 !important;
}

.predictive-search__item-heading {
  font-family: 'Poppins', sans-serif !important;
  font-weight: 500 !important;
  font-size: 1.4rem !important;
  color: #111111 !important;
  text-decoration: none !important;
}

.predictive-search__item:hover .predictive-search__item-heading {
  color: #B57C32 !important;
  text-decoration: none !important;
}

.predictive-search__item .price {
  font-family: 'Poppins', sans-serif !important;
  font-weight: 600 !important;
  color: #B57C32 !important;
  font-size: 1.3rem !important;
}

.predictive-search__item--term {
  font-family: 'Poppins', sans-serif !important;
  font-weight: 500 !important;
  color: #B57C32 !important;
  border-top: 1px solid rgba(181, 124, 50, 0.15) !important;
  margin-top: 0.8rem !important;
  padding-top: 1.2rem !important;
}

.predictive-search__item--term .icon-arrow {
  color: #B57C32 !important;
}

/* Product Slider Title & Subtitle Clamping Overrides */
.ps-card__title {
  font-family: 'Poppins', sans-serif !important;
  font-size: 1.5rem !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
  color: var(--ps-title-color, #1A1A1A) !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  height: 2.7em !important;
  max-height: 2.7em !important;
  min-height: 2.7em !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
}

.ps-card__title a {
  font-family: 'Poppins', sans-serif !important;
  color: inherit !important;
  text-decoration: none !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  line-height: inherit !important;
  max-height: 100% !important;
}

.ps-card__subtitle {
  font-family: 'Poppins', sans-serif !important;
  margin-top: 0.6rem !important;
  font-size: 1.25rem !important;
  line-height: 1.35 !important;
  color: var(--ps-subtitle-color, #8E8E8E) !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 1 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  height: 1.35em !important;
  max-height: 1.35em !important;
  min-height: 1.35em !important;
}

/* ==========================================================================
   /* Typography Fix */
   Professional, Consistent Heritage & Devotional Typography System
   ========================================================================== */

:root {
  --font-family-system: 'Poppins', 'Noto Sans Bengali', 'Noto Sans Devanagari', sans-serif !important;
  --font-body-family: 'Poppins', 'Noto Sans Bengali', 'Noto Sans Devanagari', sans-serif !important;
  --font-heading-family: 'Poppins', 'Noto Sans Bengali', 'Noto Sans Devanagari', sans-serif !important;
}

/* Universal Font Enforcement with Language Fallbacks */
html,
body,
*,
*::before,
*::after {
  font-family: 'Poppins', 'Noto Sans Bengali', 'Noto Sans Devanagari', sans-serif !important;
}

/* Global Body Typography (16px desktop / 15-16px mobile) */
body,
p,
.rte p,
.rte ul,
.rte ol,
.rte li,
.rich-text__text {
  font-family: 'Poppins', 'Noto Sans Bengali', 'Noto Sans Devanagari', sans-serif !important;
  font-size: clamp(1.5rem, 0.4vw + 1.4rem, 1.6rem) !important;
  font-weight: 400 !important;
  line-height: 1.65 !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
}

/* Small Text (13-14px, never below 12px) */
small,
.caption,
.caption-large,
.caption-with-letter-spacing,
.form__message,
.field__label {
  font-size: clamp(1.3rem, 0.3vw + 1.2rem, 1.4rem) !important;
  line-height: 1.5 !important;
}

/* Buttons (15px desktop / 14-15px mobile, weight 500, letter-spacing 0.02em) */
.button,
.btn,
.shopify-challenge__button,
.customer button,
button.button,
a.button,
.museum-hero__btn,
.museum-media-gallery__button,
.product-slider-section__view-all,
.museum-products__view-all,
.product-form__submit {
  font-family: 'Poppins', 'Noto Sans Bengali', 'Noto Sans Devanagari', sans-serif !important;
  font-size: clamp(1.4rem, 0.3vw + 1.3rem, 1.5rem) !important;
  font-weight: 500 !important;
  letter-spacing: 0.02em !important;
  line-height: 1.4 !important;
}

/* Section Eyebrow Labels (12-13px uppercase, letter-spacing 0.12em, weight 500) */
.museum-hero__eyebrow,
.museum-media-gallery__eyebrow,
.museum-welcome__eyebrow,
.museum-feature-grid__eyebrow,
.museum-products__eyebrow,
.product-slider-section__eyebrow,
.eyebrow,
[class*="eyebrow"] {
  font-family: 'Poppins', 'Noto Sans Bengali', 'Noto Sans Devanagari', sans-serif !important;
  font-size: clamp(1.2rem, 0.3vw + 1.1rem, 1.3rem) !important;
  font-weight: 500 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  line-height: 1.3 !important;
}

/* Header & Menu Items (Items: 15px desktop / 16px mobile drawer; Dropdown links: 14px) */
.header__menu-item,
.list-menu__item,
.gm-nav-item > a,
.gm-nav-item,
.gm-mega-root .nav-btn,
.menu-drawer__menu-item {
  font-family: 'Poppins', 'Noto Sans Bengali', 'Noto Sans Devanagari', sans-serif !important;
  font-size: 1.5rem !important;
  font-weight: 500 !important;
  line-height: 1.4 !important;
  letter-spacing: 0.01em !important;
}

.gm-mega-root .nav-btn {
  color: #2D241E !important;
}

.gm-mega-root .nav-btn:hover,
.gm-mega-root .nav-btn:focus,
.gm-mega-root .nav-btn:active,
.gm-mega-root .nav-item.open > .nav-btn,
.gm-mega-root .nav-item:hover > .nav-btn {
  color: #B57C32 !important;
}

.gm-mega-root .chev,
.header__menu-item .icon-caret {
  display: none !important;
}

.menu-drawer__menu-item,
.gm-mobile-drawer .gm-nav-item > a {
  font-size: 1.6rem !important;
  font-weight: 500 !important;
}

.header__submenu .header__menu-item,
.list-menu__item--child,
.gm-dropdown a,
.gm-dropdown-col a,
.gm-mega-root .about-tab,
.gm-mega-root .about-sub {
  font-size: 1.4rem !important;
  font-weight: 500 !important;
  line-height: 1.45 !important;
}

/* Large Headings: letter-spacing -0.01em, line-height 1.2-1.25, weight 600 */
h1, h2, h3, h4, h5, h6,
.h0, .h1, .h2, .h3, .h4, .h5, .h6,
.heading, [class*="heading"] {
  font-family: 'Poppins', 'Noto Sans Bengali', 'Noto Sans Devanagari', sans-serif !important;
  font-weight: 600 !important;
  letter-spacing: -0.01em !important;
  line-height: 1.25 !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
}

/* Section 1: Hero Slider H1/H2 (48-56px desktop / 30-34px mobile, subtext 17-18px / 15-16px) */
.museum-hero__heading,
.museum-hero__heading--large,
.museum-hero .museum-hero__heading {
  font-size: clamp(3.0rem, 3.5vw + 1.8rem, 5.2rem) !important;
  font-weight: 600 !important;
  line-height: 1.08 !important;
  letter-spacing: -0.01em !important;
}

.museum-hero__description,
.museum-hero__description p,
.museum-hero-slider__desc,
.museum-hero-slider__desc p,
.museum-about-hero__description,
.museum-about-hero__description p,
.museum-about-hero__desc,
.museum-about-hero__desc p,
.museum-hero .museum-hero__description,
.museum-hero .museum-hero__description * {
  font-family: 'Poppins', 'Noto Sans Bengali', 'Noto Sans Devanagari', sans-serif !important;
  font-size: clamp(1.5rem, 0.4vw + 1.4rem, 1.75rem) !important;
  font-weight: 500 !important;
  line-height: 1.28 !important;
  letter-spacing: 0.01em !important;
}

.museum-top-banner__desc,
.museum-top-banner__desc p {
  font-family: var(--mtb-desc-font, 'Poppins'), 'Noto Sans Bengali', 'Noto Sans Devanagari', sans-serif !important;
  font-size: var(--mtb-desc-size, 15px) !important;
  font-weight: var(--mtb-desc-weight, 500) !important;
  line-height: var(--mtb-desc-lh, 1.28) !important;
  color: var(--mtb-desc-color, #4A4A40) !important;
  letter-spacing: 0.01em !important;
}

/* Section 2: Announcements (H3 20px / 17px, text 15px / 14px) */
.museum-announcements__heading,
.announcement-bar__message,
.museum-announcement__heading {
  font-size: clamp(1.7rem, 0.5vw + 1.5rem, 2.0rem) !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
}

.museum-announcements__text,
.museum-announcements__text p,
.museum-announcement__desc {
  font-size: clamp(1.4rem, 0.3vw + 1.3rem, 1.5rem) !important;
  font-weight: 400 !important;
  line-height: 1.6 !important;
}

/* Section 3: Welcome / About (H2 36-40px / 26px, paragraph 16-17px / 15-16px, stats 36px / 26px, labels 13px) */
.museum-welcome__heading,
.museum-about__heading,
.museum-showcase__heading {
  font-size: clamp(2.6rem, 1.8vw + 2.0rem, 4.0rem) !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  letter-spacing: -0.01em !important;
}

.museum-welcome__description,
.museum-welcome__description p,
.museum-showcase__desc,
.museum-showcase__desc p {
  font-size: clamp(1.5rem, 0.3vw + 1.4rem, 1.7rem) !important;
  font-weight: 400 !important;
  line-height: 1.65 !important;
}

.museum-welcome__stat-number,
.museum-showcase__stat-number,
.stat-card__number {
  font-size: clamp(2.6rem, 1.5vw + 2.0rem, 3.6rem) !important;
  font-weight: 600 !important;
  line-height: 1.15 !important;
}

.museum-welcome__stat-label,
.museum-showcase__stat-label,
.stat-card__label {
  font-size: 1.3rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
}

/* Section 4: Media Cards ("Bring the heritage to life": H2 32-36px / 24-26px, card title 18-19px / 17px, caption 14px / 13px) */
.museum-media-gallery__heading {
  font-size: clamp(2.4rem, 1.5vw + 1.9rem, 3.6rem) !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
}

.museum-media-gallery__title {
  font-size: clamp(1.7rem, 0.4vw + 1.5rem, 1.9rem) !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
}

.museum-media-gallery__card-description,
.museum-media-gallery__card-description p,
.museum-media-gallery__description,
.museum-media-gallery__description p {
  font-size: clamp(1.3rem, 0.3vw + 1.2rem, 1.4rem) !important;
  font-weight: 400 !important;
  line-height: 1.55 !important;
}

/* Section 5 & 10: Product Cards (Recent additions & Books by Gaudiya Mission) */
.product-slider-section__heading,
.museum-products__heading {
  font-size: clamp(2.4rem, 1.5vw + 1.9rem, 3.6rem) !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
}

.ps-card__title,
.card__heading,
.card__heading a {
  font-size: clamp(1.45rem, 0.3vw + 1.35rem, 1.6rem) !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
}

.ps-card__subtitle,
.card-information__text {
  font-size: clamp(1.2rem, 0.2vw + 1.15rem, 1.3rem) !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;
}

.ps-card__price,
.price .price-item,
.price-item--regular,
.price-item--sale {
  font-size: clamp(1.5rem, 0.3vw + 1.4rem, 1.6rem) !important;
  font-weight: 600 !important;
}

/* Section 6: Discover the Museum (H2 32-36px / 24-26px, featured H3 24-26px / 20px, body 16px / 15px) */
.museum-feature-grid__heading,
.feature-grid__heading {
  font-size: clamp(2.4rem, 1.5vw + 1.9rem, 3.6rem) !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
}

.museum-feature-grid__card-title,
.feature-grid__card-title,
.museum-feature-grid__featured-title {
  font-size: clamp(2.0rem, 0.8vw + 1.7rem, 2.6rem) !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
}

.museum-feature-grid__card-desc,
.museum-feature-grid__card-desc p,
.feature-grid__card-desc {
  font-size: clamp(1.5rem, 0.3vw + 1.4rem, 1.6rem) !important;
  font-weight: 400 !important;
  line-height: 1.65 !important;
}

/* Section 7: Explore Our Collections Links (17-18px / 15-16px, weight 500) */
.museum-collections-row__title,
.museum-collections-row__link,
.collection-link,
.museum-collection-card__title {
  font-size: clamp(1.5rem, 0.4vw + 1.4rem, 1.8rem) !important;
  font-weight: 500 !important;
  letter-spacing: 0.02em !important;
  line-height: 1.4 !important;
}

/* Section 8: Promo Banners (Main line 24-28px / 18-20px, sub-line 15px / 14px, footnote 12px) */
.two-panel__main-line,
.promo-banner__heading,
.two-panel__heading {
  font-size: clamp(1.8rem, 1.2vw + 1.4rem, 2.8rem) !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
}

.two-panel__sub-line,
.promo-banner__subheading,
.two-panel__description {
  font-size: clamp(1.4rem, 0.2vw + 1.35rem, 1.5rem) !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
}

.two-panel__footnote,
.promo-banner__footnote {
  font-size: 1.2rem !important;
  font-weight: 400 !important;
  line-height: 1.4 !important;
}

/* Section 9: Academics & Research (H2 32-36px / 24-26px, paragraph 16px / 15px) */
.museum-academics-gallery__heading,
.academics-gallery__heading {
  font-size: clamp(2.4rem, 1.5vw + 1.9rem, 3.6rem) !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
}

.museum-academics-gallery__desc,
.museum-academics-gallery__desc p,
.academics-gallery__desc {
  font-size: clamp(1.5rem, 0.3vw + 1.4rem, 1.6rem) !important;
  font-weight: 400 !important;
  line-height: 1.65 !important;
}

/* Bottom Welcome Block (H2 36px / 26px, H3 22px / 18px, entry fees ₹50/₹30 20-22px / 18px) */
.museum-bottom-welcome__heading {
  font-size: clamp(2.6rem, 1.4vw + 2.1rem, 3.6rem) !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
}

.museum-bottom-welcome__subheading {
  font-size: clamp(1.8rem, 0.6vw + 1.6rem, 2.2rem) !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
}

.museum-bottom-welcome__fee,
.museum-fee-amount {
  font-size: clamp(1.8rem, 0.6vw + 1.6rem, 2.2rem) !important;
  font-weight: 600 !important;
}

/* Footer (Column headings 14px uppercase weight 600; links 14-15px / 14px; copyright 12-13px) */
.footer-block__heading,
.footer__title {
  font-size: 1.4rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  line-height: 1.35 !important;
}

.footer-block__details-content .list-menu__item--link,
.footer__menu-item {
  font-size: clamp(1.4rem, 0.2vw + 1.35rem, 1.5rem) !important;
  font-weight: 400 !important;
  line-height: 1.6 !important;
}

.footer__copyright,
.footer__copyright small {
  font-size: 1.25rem !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
}




/* ==========================================================================
   MOBILE TYPOGRAPHY SYSTEM  (max-width: 749px)
   --------------------------------------------------------------------------
   One consistent scale for phones. Everything above this block is unchanged
   and still drives tablet + desktop.

   Why this exists (measured at 375px):
   - 49 of 106 headings/titles were locked at line-height 1.15 !important
   - running text in most sections was 11-13px (theme-editor mobile sizes)
   - page heroes ranged 15px -> 32px, section headings 20px -> 48px
   - form fields were 14px, which makes iOS Safari zoom the page on focus

   HOW TO TUNE: change only the tokens in the :root block below.
   Sizes are rem-based (1rem = 10px at body scale 100%).
   ========================================================================== */
@media screen and (max-width: 749px) {

  :root {
    /* font sizes */
    --m-fs-hero:     clamp(2.6rem, 7.6vw, 3rem);      /* page hero H1      ~28px */
    --m-fs-section:  clamp(2.2rem, 6.4vw, 2.6rem);    /* section H2        ~24px */
    --m-fs-card:     clamp(1.7rem, 4.8vw, 1.9rem);    /* card / block H3   ~18px */
    --m-fs-small-h:  clamp(1.5rem, 4.2vw, 1.6rem);    /* H4, names         ~16px */
    --m-fs-lead:     1.6rem;                          /* hero descriptions  16px */
    --m-fs-body:     1.5rem;                          /* paragraphs         15px */
    --m-fs-small:    1.4rem;                          /* card copy, tables  14px */
    --m-fs-caption:  1.3rem;                          /* meta, tabs         13px */
    --m-fs-micro:    1.2rem;                          /* eyebrows, chips    12px (floor) */
    --m-fs-btn:      1.4rem;                          /* buttons            14px */

    /* line heights (unitless, so they scale with each element's own size) */
    --m-lh-hero:     1.3;
    --m-lh-heading:  1.35;
    --m-lh-card:     1.4;
    --m-lh-body:     1.65;
    --m-lh-small:    1.55;
    --m-lh-caption:  1.45;
    --m-lh-micro:    1.4;
    --m-lh-btn:      1.35;
    --m-lh-stat:     1.2;
  }

  /* Bengali / Devanagari / other Indic pages: their glyphs (matras, conjuncts)
     extend well above and below the line, so they need more leading. */
  html:lang(bn), html:lang(hi), html:lang(sa), html:lang(mr), html:lang(ne), html:lang(gu) {
    --m-lh-hero:    1.5;
    --m-lh-heading: 1.55;
    --m-lh-card:    1.55;
    --m-lh-body:    1.85;
    --m-lh-small:   1.75;
    --m-lh-caption: 1.65;
    --m-lh-micro:   1.55;
    --m-lh-btn:     1.55;
    --m-lh-stat:    1.4;
  }

  /* Text that is written in Bengali/Devanagari on an English page:
     wrap it in <span lang="bn"> ... </span> (or add class="lang-indic") to get the taller leading. */
  [lang="bn"], [lang="hi"], [lang="sa"], [lang="mr"], [lang="ne"], [lang="gu"], .lang-indic {
    line-height: 1.6 !important;
  }

  /* ---- 1. Rendering: stop mobile browsers inflating/shrinking fonts on their own -------- */
  html {
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
  }
  body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }

  /* ---- 2. Form fields: 16px stops iOS Safari zooming the page when a field is focused --- */
  html body input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="submit"]):not([type="button"]):not([type="hidden"]):not([type="file"]),
  html body select,
  html body textarea {
    font-size: 16px !important;
  }
  html body textarea {
    line-height: 1.5 !important;
  }

  /* ---- 3. Headings ------------------------------------------------------------------------ */
  /* Section headings (H2 / *__heading) */
html body :is(
  [class$="__heading"],
  [class*="__heading "],
  [class*="__heading--"],
  [class$="__section-title"],
  [class*="__section-title "],
  [class*="__section-title--"],
  h2[class$="__title"],
  h2[class*="__title "]
)[class]:not(.ps-card__title):not(.ps-card__subtitle):not(.ps-card__price) {
  line-height: var(--m-lh-heading) !important;
}
html body :is(
  [class$="__heading"],
  [class*="__heading "],
  [class*="__heading--"],
  [class$="__section-title"],
  [class*="__section-title "],
  [class*="__section-title--"],
  h2[class$="__title"],
  h2[class*="__title "]
)[class]:not([style*="font-size"]):not(.ps-card__title):not(.ps-card__subtitle):not(.ps-card__price) {
  font-size: var(--m-fs-section) !important;
}

  /* Card / block titles (H3 and *__card-title etc.) */
html body :is(
  [class$="__card-heading"],
  [class*="__card-heading "],
  [class*="__card-heading--"],
  [class$="__card-title"],
  [class*="__card-title "],
  [class*="__card-title--"],
  [class$="__block-heading"],
  [class*="__block-heading "],
  [class*="__block-heading--"],
  [class$="__sub-heading"],
  [class*="__sub-heading "],
  [class*="__sub-heading--"],
  [class$="__item-title"],
  [class*="__item-title "],
  [class*="__item-title--"],
  [class$="__step-title"],
  [class*="__step-title "],
  [class*="__step-title--"],
  [class$="__item-heading"],
  [class*="__item-heading "],
  [class*="__item-heading--"],
  [class$="__cta-heading"],
  [class*="__cta-heading "],
  [class*="__cta-heading--"],
  h3[class$="__title"],
  h3[class*="__title "],
  h3[class$="-title"],
  h3[class*="-title "],
  h3[class$="__heading"],
  h3[class*="__heading "]
)[class]:not(.ps-card__title):not(.ps-card__subtitle):not(.ps-card__price) {
  line-height: var(--m-lh-card) !important;
}
html body :is(
  [class$="__card-heading"],
  [class*="__card-heading "],
  [class*="__card-heading--"],
  [class$="__card-title"],
  [class*="__card-title "],
  [class*="__card-title--"],
  [class$="__block-heading"],
  [class*="__block-heading "],
  [class*="__block-heading--"],
  [class$="__sub-heading"],
  [class*="__sub-heading "],
  [class*="__sub-heading--"],
  [class$="__item-title"],
  [class*="__item-title "],
  [class*="__item-title--"],
  [class$="__step-title"],
  [class*="__step-title "],
  [class*="__step-title--"],
  [class$="__item-heading"],
  [class*="__item-heading "],
  [class*="__item-heading--"],
  [class$="__cta-heading"],
  [class*="__cta-heading "],
  [class*="__cta-heading--"],
  h3[class$="__title"],
  h3[class*="__title "],
  h3[class$="-title"],
  h3[class*="-title "],
  h3[class$="__heading"],
  h3[class*="__heading "]
)[class]:not([style*="font-size"]):not(.ps-card__title):not(.ps-card__subtitle):not(.ps-card__price) {
  font-size: var(--m-fs-card) !important;
}

  /* Small titles (H4, people names) */
html body :is(
  h4[class*="museum-"],
  h4[class*="scholarship-"],
  [class$="__person-name"],
  [class*="__person-name "],
  [class*="__person-name--"],
  [class$="__member-name"],
  [class*="__member-name "],
  [class*="__member-name--"],
  [class$="__designer-name"],
  [class*="__designer-name "],
  [class*="__designer-name--"],
  [class$="__architect-name"],
  [class*="__architect-name "],
  [class*="__architect-name--"],
  [class$="__leader-title"],
  [class*="__leader-title "],
  [class*="__leader-title--"],
  [class$="__sponsor-title"],
  [class*="__sponsor-title "],
  [class*="__sponsor-title--"]
)[class]:not(.ps-card__title):not(.ps-card__subtitle):not(.ps-card__price) {
  line-height: var(--m-lh-card) !important;
}
html body :is(
  h4[class*="museum-"],
  h4[class*="scholarship-"],
  [class$="__person-name"],
  [class*="__person-name "],
  [class*="__person-name--"],
  [class$="__member-name"],
  [class*="__member-name "],
  [class*="__member-name--"],
  [class$="__designer-name"],
  [class*="__designer-name "],
  [class*="__designer-name--"],
  [class$="__architect-name"],
  [class*="__architect-name "],
  [class*="__architect-name--"],
  [class$="__leader-title"],
  [class*="__leader-title "],
  [class*="__leader-title--"],
  [class$="__sponsor-title"],
  [class*="__sponsor-title "],
  [class*="__sponsor-title--"]
)[class]:not([style*="font-size"]):not(.ps-card__title):not(.ps-card__subtitle):not(.ps-card__price) {
  font-size: var(--m-fs-small-h) !important;
}

  /* Page hero H1 (declared after the section rule so it wins) */
html body :is(
  h1[class*="museum-"],
  h1[class*="scholarship-"],
  h1[class*="two-panel"],
  .museum-hero__heading,
  .scholarship-hero__title
)[class]:not(.ps-card__title):not(.ps-card__subtitle):not(.ps-card__price) {
  line-height: var(--m-lh-hero) !important;
}
html body :is(
  h1[class*="museum-"],
  h1[class*="scholarship-"],
  h1[class*="two-panel"],
  .museum-hero__heading,
  .scholarship-hero__title
)[class]:not([style*="font-size"]):not(.ps-card__title):not(.ps-card__subtitle):not(.ps-card__price) {
  font-size: var(--m-fs-hero) !important;
}

  /* Accent words inside a hero heading follow the heading size */
html body [class*="heading-accent"] {
  font-size: inherit !important;
  line-height: inherit !important;
}
  /* Small "titles" that are really labels: keep them small, but never below the floor */
html body :is(
  [class$="__super-title"],
  [class*="__super-title "],
  [class*="__super-title--"],
  [class$="__top-title"],
  [class*="__top-title "],
  [class*="__top-title--"],
  [class$="__brand-title"],
  [class*="__brand-title "],
  [class*="__brand-title--"],
  [class$="__subtitle"],
  [class*="__subtitle "],
  [class*="__subtitle--"],
  [class$="__sec-subheading"],
  [class*="__sec-subheading "],
  [class*="__sec-subheading--"],
  [class$="__cta-subtitle"],
  [class*="__cta-subtitle "],
  [class*="__cta-subtitle--"],
  [class$="__cta-heading"],
  [class*="__cta-heading "],
  [class*="__cta-heading--"],
  [class$="__cta-subtext"],
  [class*="__cta-subtext "],
  [class*="__cta-subtext--"],
  [class$="__card-sub"],
  [class*="__card-sub "],
  [class*="__card-sub--"],
  [class$="__subhead"],
  [class*="__subhead "],
  [class*="__subhead--"],
  [class$="-subhead"],
  [class*="-subhead "],
  [class*="-subhead--"],
  [class$="__label"],
  [class*="__label "],
  [class*="__label--"],
  [class$="__value"],
  [class*="__value "],
  [class*="__value--"],
  [class$="__slide-heading"],
  [class*="__slide-heading "],
  [class*="__slide-heading--"]
)[class]:not(.ps-card__title):not(.ps-card__subtitle):not(.ps-card__price):not(#_) {
  line-height: var(--m-lh-caption) !important;
}
html body :is(
  [class$="__super-title"],
  [class*="__super-title "],
  [class*="__super-title--"],
  [class$="__top-title"],
  [class*="__top-title "],
  [class*="__top-title--"],
  [class$="__brand-title"],
  [class*="__brand-title "],
  [class*="__brand-title--"],
  [class$="__subtitle"],
  [class*="__subtitle "],
  [class*="__subtitle--"],
  [class$="__sec-subheading"],
  [class*="__sec-subheading "],
  [class*="__sec-subheading--"],
  [class$="__cta-subtitle"],
  [class*="__cta-subtitle "],
  [class*="__cta-subtitle--"],
  [class$="__cta-heading"],
  [class*="__cta-heading "],
  [class*="__cta-heading--"],
  [class$="__cta-subtext"],
  [class*="__cta-subtext "],
  [class*="__cta-subtext--"],
  [class$="__card-sub"],
  [class*="__card-sub "],
  [class*="__card-sub--"],
  [class$="__subhead"],
  [class*="__subhead "],
  [class*="__subhead--"],
  [class$="-subhead"],
  [class*="-subhead "],
  [class*="-subhead--"],
  [class$="__label"],
  [class*="__label "],
  [class*="__label--"],
  [class$="__value"],
  [class*="__value "],
  [class*="__value--"],
  [class$="__slide-heading"],
  [class*="__slide-heading "],
  [class*="__slide-heading--"]
)[class]:not([style*="font-size"]):not(.ps-card__title):not(.ps-card__subtitle):not(.ps-card__price):not(#_) {
  font-size: var(--m-fs-caption) !important;
}


  /* ---- 3b. HOME HERO SLIDER: fixed 260px tall + overflow hidden -----------------------------
     The section forces its height, so it keeps COMPACT type and follows the sizes set in the
     theme editor (--museum-*-size). Previously the rules above pushed the heading to 31px here,
     which wrapped to 5 lines, split words ("Transformatio-n") and cropped the top of the text.
     Only line-height and small-size floors are corrected. If slide copy gets longer, raise
     "Mobile height" in the hero section settings (260 -> ~290). */
html body .museum-hero .museum-hero__eyebrow:not(#_) {
  font-size: max(1.2rem, var(--museum-eyebrow-size, 1.2rem)) !important;
  line-height: 1.2 !important;
}
html body .museum-hero .museum-hero__heading:not(#_) {
  font-size: max(2rem, var(--museum-heading-size, 2.2rem)) !important;
  line-height: 1.2 !important;
  overflow-wrap: normal !important;
}
html body .museum-hero .museum-hero__description:not(#_),
html body .museum-hero .museum-hero__description p:not(#_) {
  font-size: max(1.3rem, var(--museum-desc-size, 1.3rem)) !important;
  line-height: 1.45 !important;
}
html body .museum-hero .museum-hero__description p:not(#_) { margin-bottom: 0.3rem !important; }
html body .museum-hero .museum-hero__buttons:not(#_) { margin-top: 0.6rem !important; }
html body .museum-hero .museum-hero__button:not(#_),
html body .museum-hero a[class*="museum-hero__button--"]:not(#_) {
  font-size: max(1.2rem, var(--museum-btn-size, 1.2rem)) !important;
  line-height: 1.3 !important;
}

  /* Class-less headings inside museum / scholarship sections */
html body :is([class*="museum-"], [class*="scholarship-"]) :is(h1, h2, h3, h4, h5, h6):not([class]) {
  line-height: var(--m-lh-card) !important;
}

  /* ---- 4. Body copy ---------------------------------------------------------------------- */
html body :is(
  [class$="desc"],
  [class*="desc "],
  [class*="desc--"],
  [class$="description"],
  [class*="description "],
  [class*="description--"],
  [class$="__text"],
  [class*="__text "],
  [class*="__text--"],
  [class$="__body-text"],
  [class*="__body-text "],
  [class*="__body-text--"],
  [class$="__paragraph"],
  [class*="__paragraph "],
  [class*="__paragraph--"],
  [class$="__intro"],
  [class*="__intro "],
  [class*="__intro--"],
  [class$="__introduction"],
  [class*="__introduction "],
  [class*="__introduction--"],
  [class$="__panel-intro"],
  [class*="__panel-intro "],
  [class*="__panel-intro--"],
  [class$="__excerpt"],
  [class*="__excerpt "],
  [class*="__excerpt--"],
  [class$="__copy"],
  [class*="__copy "],
  [class*="__copy--"],
  [class$="__ack-text"],
  [class*="__ack-text "],
  [class*="__ack-text--"],
  [class$="__tagline"],
  [class*="__tagline "],
  [class*="__tagline--"],
  [class$="__block-paragraph"],
  [class*="__block-paragraph "],
  [class*="__block-paragraph--"],
  [class$="__sec-subheading"],
  [class*="__sec-subheading "],
  [class*="__sec-subheading--"],
  [class$="__cta-subtitle"],
  [class*="__cta-subtitle "],
  [class*="__cta-subtitle--"]
)[class]:not(.ps-card__title):not(.ps-card__subtitle):not(.ps-card__price) {
  line-height: var(--m-lh-body) !important;
}
html body :is(
  [class$="desc"],
  [class*="desc "],
  [class*="desc--"],
  [class$="description"],
  [class*="description "],
  [class*="description--"],
  [class$="__text"],
  [class*="__text "],
  [class*="__text--"],
  [class$="__body-text"],
  [class*="__body-text "],
  [class*="__body-text--"],
  [class$="__paragraph"],
  [class*="__paragraph "],
  [class*="__paragraph--"],
  [class$="__intro"],
  [class*="__intro "],
  [class*="__intro--"],
  [class$="__introduction"],
  [class*="__introduction "],
  [class*="__introduction--"],
  [class$="__panel-intro"],
  [class*="__panel-intro "],
  [class*="__panel-intro--"],
  [class$="__excerpt"],
  [class*="__excerpt "],
  [class*="__excerpt--"],
  [class$="__copy"],
  [class*="__copy "],
  [class*="__copy--"],
  [class$="__ack-text"],
  [class*="__ack-text "],
  [class*="__ack-text--"],
  [class$="__tagline"],
  [class*="__tagline "],
  [class*="__tagline--"],
  [class$="__block-paragraph"],
  [class*="__block-paragraph "],
  [class*="__block-paragraph--"],
  [class$="__sec-subheading"],
  [class*="__sec-subheading "],
  [class*="__sec-subheading--"],
  [class$="__cta-subtitle"],
  [class*="__cta-subtitle "],
  [class*="__cta-subtitle--"]
)[class]:not([style*="font-size"]):not(.ps-card__title):not(.ps-card__subtitle):not(.ps-card__price) {
  font-size: var(--m-fs-body) !important;
}
html body :is(
  [class$="desc"],
  [class*="desc "],
  [class*="desc--"],
  [class$="description"],
  [class*="description "],
  [class*="description--"],
  [class$="__text"],
  [class*="__text "],
  [class*="__text--"],
  [class$="__body-text"],
  [class*="__body-text "],
  [class*="__body-text--"],
  [class$="__paragraph"],
  [class*="__paragraph "],
  [class*="__paragraph--"],
  [class$="__intro"],
  [class*="__intro "],
  [class*="__intro--"],
  [class$="__introduction"],
  [class*="__introduction "],
  [class*="__introduction--"],
  [class$="__panel-intro"],
  [class*="__panel-intro "],
  [class*="__panel-intro--"],
  [class$="__excerpt"],
  [class*="__excerpt "],
  [class*="__excerpt--"],
  [class$="__copy"],
  [class*="__copy "],
  [class*="__copy--"],
  [class$="__ack-text"],
  [class*="__ack-text "],
  [class*="__ack-text--"],
  [class$="__tagline"],
  [class*="__tagline "],
  [class*="__tagline--"],
  [class$="__block-paragraph"],
  [class*="__block-paragraph "],
  [class*="__block-paragraph--"],
  [class$="__sec-subheading"],
  [class*="__sec-subheading "],
  [class*="__sec-subheading--"],
  [class$="__cta-subtitle"],
  [class*="__cta-subtitle "],
  [class*="__cta-subtitle--"]
)[class]:not(.ps-card__title):not(.ps-card__subtitle):not(.ps-card__price) :is(p, span, em, strong, b, i, a, li, small):not([class]) {
  font-size: inherit !important;
  line-height: inherit !important;
}

  /* Compact cards */
html body :is(
  [class$="card-desc"],
  [class*="card-desc "],
  [class*="card-desc--"],
  [class$="card-description"],
  [class*="card-description "],
  [class*="card-description--"],
  [class$="item-desc"],
  [class*="item-desc "],
  [class*="item-desc--"],
  [class$="step-desc"],
  [class*="step-desc "],
  [class*="step-desc--"],
  [class$="sponsor-desc"],
  [class*="sponsor-desc "],
  [class*="sponsor-desc--"],
  [class$="slide-desc"],
  [class*="slide-desc "],
  [class*="slide-desc--"],
  [class$="-card__desc"],
  [class*="-card__desc "],
  [class*="-card__desc--"],
  [class$="-card__description"],
  [class*="-card__description "],
  [class*="-card__description--"],
  [class$="-card__text"],
  [class*="-card__text "],
  [class*="-card__text--"],
  [class$="-item__text"],
  [class*="-item__text "],
  [class*="-item__text--"],
  [class$="__item-text"],
  [class*="__item-text "],
  [class*="__item-text--"],
  [class$="__card-text"],
  [class*="__card-text "],
  [class*="__card-text--"],
  [class$="__subtitle"],
  [class*="__subtitle "],
  [class*="__subtitle--"],
  [class$="__cta-subtext"],
  [class*="__cta-subtext "],
  [class*="__cta-subtext--"],
  [class$="__person-org"],
  [class*="__person-org "],
  [class*="__person-org--"],
  [class$="__person-role"],
  [class*="__person-role "],
  [class*="__person-role--"]
)[class]:not(.ps-card__title):not(.ps-card__subtitle):not(.ps-card__price) {
  line-height: var(--m-lh-small) !important;
}
html body :is(
  [class$="card-desc"],
  [class*="card-desc "],
  [class*="card-desc--"],
  [class$="card-description"],
  [class*="card-description "],
  [class*="card-description--"],
  [class$="item-desc"],
  [class*="item-desc "],
  [class*="item-desc--"],
  [class$="step-desc"],
  [class*="step-desc "],
  [class*="step-desc--"],
  [class$="sponsor-desc"],
  [class*="sponsor-desc "],
  [class*="sponsor-desc--"],
  [class$="slide-desc"],
  [class*="slide-desc "],
  [class*="slide-desc--"],
  [class$="-card__desc"],
  [class*="-card__desc "],
  [class*="-card__desc--"],
  [class$="-card__description"],
  [class*="-card__description "],
  [class*="-card__description--"],
  [class$="-card__text"],
  [class*="-card__text "],
  [class*="-card__text--"],
  [class$="-item__text"],
  [class*="-item__text "],
  [class*="-item__text--"],
  [class$="__item-text"],
  [class*="__item-text "],
  [class*="__item-text--"],
  [class$="__card-text"],
  [class*="__card-text "],
  [class*="__card-text--"],
  [class$="__subtitle"],
  [class*="__subtitle "],
  [class*="__subtitle--"],
  [class$="__cta-subtext"],
  [class*="__cta-subtext "],
  [class*="__cta-subtext--"],
  [class$="__person-org"],
  [class*="__person-org "],
  [class*="__person-org--"],
  [class$="__person-role"],
  [class*="__person-role "],
  [class*="__person-role--"]
)[class]:not([style*="font-size"]):not(.ps-card__title):not(.ps-card__subtitle):not(.ps-card__price) {
  font-size: var(--m-fs-small) !important;
}
html body :is(
  [class$="card-desc"],
  [class*="card-desc "],
  [class*="card-desc--"],
  [class$="card-description"],
  [class*="card-description "],
  [class*="card-description--"],
  [class$="item-desc"],
  [class*="item-desc "],
  [class*="item-desc--"],
  [class$="step-desc"],
  [class*="step-desc "],
  [class*="step-desc--"],
  [class$="sponsor-desc"],
  [class*="sponsor-desc "],
  [class*="sponsor-desc--"],
  [class$="slide-desc"],
  [class*="slide-desc "],
  [class*="slide-desc--"],
  [class$="-card__desc"],
  [class*="-card__desc "],
  [class*="-card__desc--"],
  [class$="-card__description"],
  [class*="-card__description "],
  [class*="-card__description--"],
  [class$="-card__text"],
  [class*="-card__text "],
  [class*="-card__text--"],
  [class$="-item__text"],
  [class*="-item__text "],
  [class*="-item__text--"],
  [class$="__item-text"],
  [class*="__item-text "],
  [class*="__item-text--"],
  [class$="__card-text"],
  [class*="__card-text "],
  [class*="__card-text--"],
  [class$="__subtitle"],
  [class*="__subtitle "],
  [class*="__subtitle--"],
  [class$="__cta-subtext"],
  [class*="__cta-subtext "],
  [class*="__cta-subtext--"],
  [class$="__person-org"],
  [class*="__person-org "],
  [class*="__person-org--"],
  [class$="__person-role"],
  [class*="__person-role "],
  [class*="__person-role--"]
)[class]:not(.ps-card__title):not(.ps-card__subtitle):not(.ps-card__price) :is(p, span, em, strong, b, i, a, li, small):not([class]) {
  font-size: inherit !important;
  line-height: inherit !important;
}

html body :is(
  [class$="__note"],
  [class*="__note "],
  [class*="__note--"],
  [class$="__caption"],
  [class*="__caption "],
  [class*="__caption--"],
  [class$="__meta"],
  [class*="__meta "],
  [class*="__meta--"]
)[class]:not(.ps-card__title):not(.ps-card__subtitle):not(.ps-card__price) {
  line-height: var(--m-lh-caption) !important;
}
html body :is(
  [class$="__note"],
  [class*="__note "],
  [class*="__note--"],
  [class$="__caption"],
  [class*="__caption "],
  [class*="__caption--"],
  [class$="__meta"],
  [class*="__meta "],
  [class*="__meta--"]
)[class]:not([style*="font-size"]):not(.ps-card__title):not(.ps-card__subtitle):not(.ps-card__price) {
  font-size: var(--m-fs-caption) !important;
}

  /* Hero / banner descriptions are slightly larger */
html body :is(
  [class*="hero"] [class*="__desc"],
  [class*="hero"] [class*="__description"],
  [class*="top-banner"] [class*="__desc"],
  [class$="__hero-desc"],
  [class*="__hero-desc "],
  [class*="__hero-desc--"]
)[class]:not(.ps-card__title):not(.ps-card__subtitle):not(.ps-card__price) {
  line-height: var(--m-lh-body) !important;
}
html body :is(
  [class*="hero"] [class*="__desc"],
  [class*="hero"] [class*="__description"],
  [class*="top-banner"] [class*="__desc"],
  [class$="__hero-desc"],
  [class*="__hero-desc "],
  [class*="__hero-desc--"]
)[class]:not([style*="font-size"]):not(.ps-card__title):not(.ps-card__subtitle):not(.ps-card__price) {
  font-size: var(--m-fs-lead) !important;
}
html body :is(
  [class*="hero"] [class*="__desc"],
  [class*="hero"] [class*="__description"],
  [class*="top-banner"] [class*="__desc"],
  [class$="__hero-desc"],
  [class*="__hero-desc "],
  [class*="__hero-desc--"]
)[class]:not(.ps-card__title):not(.ps-card__subtitle):not(.ps-card__price) :is(p, span, em, strong, b, i, a, li, small):not([class]) {
  font-size: inherit !important;
  line-height: inherit !important;
}


  /* ---- 5. Eyebrows, chips, badges, tiny labels: 12px is the floor ------------------------- */
html body :is(
  [class$="__stat-label"],
  [class*="__stat-label "],
  [class*="__stat-label--"],
  [class$="__feature-label"],
  [class*="__feature-label "],
  [class*="__feature-label--"],
  [class$="__price-lbl"],
  [class*="__price-lbl "],
  [class*="__price-lbl--"],
  [class$="__unit-price"],
  [class*="__unit-price "],
  [class*="__unit-price--"],
  [class$="__brand-text"],
  [class*="__brand-text "],
  [class*="__brand-text--"],
  [class$="__chip"],
  [class*="__chip "],
  [class*="__chip--"],
  [class$="__badge"],
  [class*="__badge "],
  [class*="__badge--"],
  [class$="__person-badge"],
  [class*="__person-badge "],
  [class*="__person-badge--"],
  [class$="__designer-badge"],
  [class*="__designer-badge "],
  [class*="__designer-badge--"],
  [class$="__duration"],
  [class*="__duration "],
  [class*="__duration--"],
  [class$="__tag"],
  [class*="__tag "],
  [class*="__tag--"],
  [class$="__sponsor-type"],
  [class*="__sponsor-type "],
  [class*="__sponsor-type--"],
  [class$="__designer-role"],
  [class*="__designer-role "],
  [class*="__designer-role--"],
  [class$="__person-sub"],
  [class*="__person-sub "],
  [class*="__person-sub--"],
  [class$="__playlist-count"],
  [class*="__playlist-count "],
  [class*="__playlist-count--"],
  [class$="__slide-tag"],
  [class*="__slide-tag "],
  [class*="__slide-tag--"],
  [class$="__card-sub"],
  [class*="__card-sub "],
  [class*="__card-sub--"],
  [class$="__subtext"],
  [class*="__subtext "],
  [class*="__subtext--"]
)[class]:not(.ps-card__title):not(.ps-card__subtitle):not(.ps-card__price) {
  line-height: var(--m-lh-micro) !important;
}
html body :is(
  [class$="__stat-label"],
  [class*="__stat-label "],
  [class*="__stat-label--"],
  [class$="__feature-label"],
  [class*="__feature-label "],
  [class*="__feature-label--"],
  [class$="__price-lbl"],
  [class*="__price-lbl "],
  [class*="__price-lbl--"],
  [class$="__unit-price"],
  [class*="__unit-price "],
  [class*="__unit-price--"],
  [class$="__brand-text"],
  [class*="__brand-text "],
  [class*="__brand-text--"],
  [class$="__chip"],
  [class*="__chip "],
  [class*="__chip--"],
  [class$="__badge"],
  [class*="__badge "],
  [class*="__badge--"],
  [class$="__person-badge"],
  [class*="__person-badge "],
  [class*="__person-badge--"],
  [class$="__designer-badge"],
  [class*="__designer-badge "],
  [class*="__designer-badge--"],
  [class$="__duration"],
  [class*="__duration "],
  [class*="__duration--"],
  [class$="__tag"],
  [class*="__tag "],
  [class*="__tag--"],
  [class$="__sponsor-type"],
  [class*="__sponsor-type "],
  [class*="__sponsor-type--"],
  [class$="__designer-role"],
  [class*="__designer-role "],
  [class*="__designer-role--"],
  [class$="__person-sub"],
  [class*="__person-sub "],
  [class*="__person-sub--"],
  [class$="__playlist-count"],
  [class*="__playlist-count "],
  [class*="__playlist-count--"],
  [class$="__slide-tag"],
  [class*="__slide-tag "],
  [class*="__slide-tag--"],
  [class$="__card-sub"],
  [class*="__card-sub "],
  [class*="__card-sub--"],
  [class$="__subtext"],
  [class*="__subtext "],
  [class*="__subtext--"]
)[class]:not([style*="font-size"]):not(.ps-card__title):not(.ps-card__subtitle):not(.ps-card__price) {
  font-size: var(--m-fs-micro) !important;
}

html body :is(
  [class$="__eyebrow"],
  [class*="__eyebrow "],
  [class*="__eyebrow--"],
  [class$="__card-eyebrow"],
  [class*="__card-eyebrow "],
  [class*="__card-eyebrow--"],
  [class$="__super-title"],
  [class*="__super-title "],
  [class*="__super-title--"],
  [class*="eyebrow"]
)[class]:not(.ps-card__title):not(.ps-card__subtitle):not(.ps-card__price) {
  line-height: var(--m-lh-micro) !important;
}
html body :is(
  [class$="__eyebrow"],
  [class*="__eyebrow "],
  [class*="__eyebrow--"],
  [class$="__card-eyebrow"],
  [class*="__card-eyebrow "],
  [class*="__card-eyebrow--"],
  [class$="__super-title"],
  [class*="__super-title "],
  [class*="__super-title--"],
  [class*="eyebrow"]
)[class]:not([style*="font-size"]):not(.ps-card__title):not(.ps-card__subtitle):not(.ps-card__price) {
  font-size: var(--m-fs-micro) !important;
}


  /* ---- 6. Buttons and tabs --------------------------------------------------------------- */
html body :is(
  [class$="__button"],
  [class*="__button "],
  [class*="__button--"],
  [class$="__btn"],
  [class*="__btn "],
  [class*="__btn--"],
  [class$="-btn"],
  [class*="-btn "],
  [class*="-btn--"],
  [class$="__cta-btn"],
  [class*="__cta-btn "],
  [class*="__cta-btn--"],
  .button
)[class]:not(.ps-card__title):not(.ps-card__subtitle):not(.ps-card__price) {
  line-height: var(--m-lh-btn) !important;
}
html body :is(
  [class$="__button"],
  [class*="__button "],
  [class*="__button--"],
  [class$="__btn"],
  [class*="__btn "],
  [class*="__btn--"],
  [class$="-btn"],
  [class*="-btn "],
  [class*="-btn--"],
  [class$="__cta-btn"],
  [class*="__cta-btn "],
  [class*="__cta-btn--"],
  .button
)[class]:not([style*="font-size"]):not(.ps-card__title):not(.ps-card__subtitle):not(.ps-card__price) {
  font-size: var(--m-fs-btn) !important;
}

html body :is(
  [class$="-tab-btn"],
  [class*="-tab-btn "],
  [class*="-tab-btn--"],
  [class$="__tab-label"],
  [class*="__tab-label "],
  [class*="__tab-label--"],
  [class$="__tab-btn"],
  [class*="__tab-btn "],
  [class*="__tab-btn--"]
)[class]:not(.ps-card__title):not(.ps-card__subtitle):not(.ps-card__price) {
  line-height: var(--m-lh-btn) !important;
}
html body :is(
  [class$="-tab-btn"],
  [class*="-tab-btn "],
  [class*="-tab-btn--"],
  [class$="__tab-label"],
  [class*="__tab-label "],
  [class*="__tab-label--"],
  [class$="__tab-btn"],
  [class*="__tab-btn "],
  [class*="__tab-btn--"]
)[class]:not([style*="font-size"]):not(.ps-card__title):not(.ps-card__subtitle):not(.ps-card__price) {
  font-size: var(--m-fs-caption) !important;
}


  /* ---- 7. Numbers (stats, years, prices): tight leading is fine, sizes stay as authored --- */
html body :is(
  [class$="__stat-value"],
  [class*="__stat-value "],
  [class*="__stat-value--"],
  [class$="__stat-number"],
  [class*="__stat-number "],
  [class*="__stat-number--"],
  [class$="__stat-num"],
  [class*="__stat-num "],
  [class*="__stat-num--"],
  [class$="__price-val"],
  [class*="__price-val "],
  [class*="__price-val--"],
  [class$="__year"],
  [class*="__year "],
  [class*="__year--"]
)[class]:not(.ps-card__title):not(.ps-card__subtitle):not(.ps-card__price) {
  line-height: var(--m-lh-stat) !important;
}


  /* ---- 8. Tables and lists inside museum / scholarship sections -------------------------- */
html body :is([class*="museum-floor"], [class*="museum-key-guide"], [class*="scholarship-details"], [class*="museum-donation-bank"]) :is(li, td, th) {
  font-size: var(--m-fs-small) !important;
  line-height: var(--m-lh-small) !important;
}

  /* ---- 9. Product slider cards: keep the 2-line clamp math (height 2.7em = 2 x 1.35) ------ */
html body .ps-card__title { line-height: 1.35 !important; }
html body .ps-card__subtitle { line-height: 1.35 !important; }

  /* ---- 10. Wrapping quality (progressive enhancement; ignored by older browsers) ---------- */
html body :is(h1, h2, h3, [class$="__heading"], [class*="__heading "]) {
  text-wrap: balance;
}
html body :is(p, [class$="__desc"], [class*="__desc "], [class$="__description"], [class*="__description "]) {
  text-wrap: pretty;
}
}

/* ==========================================================================
   FINAL OVERRIDE: HERO SECTION TYPOGRAPHY & BUTTON HARMONIZATION
   Guarantees 100% exact parity with About Us Hero across all subpages.
   ========================================================================== */

/* 1. Desktop Hero Headings */
html body :is(
  .museum-about-hero__heading,
  .museum-contact-hero__heading,
  .museum-donation-hero__heading,
  .museum-auditorium-hero__heading,
  .museum-exhibits-hero__heading,
  .museum-gallery-hero__heading,
  .museum-guidelines-hero__heading,
  .scholarship-hero__title,
  .scholarship-hero__heading,
  .museum-top-banner__heading,
  .museum-top-banner__title,
  .museum-bookstore-hero__heading,
  .museum-welcome-showcase__heading
) {
  font-family: 'Poppins', sans-serif !important;
  font-weight: 600 !important;
  font-size: 4.8rem !important;
  line-height: 1.08 !important;
  letter-spacing: -1px !important;
  margin-bottom: 1.8rem !important;
  word-break: normal !important;
}

/* 2. Desktop Hero Descriptions */
html body :is(
  .museum-about-hero__description,
  .museum-about-hero__description p,
  .museum-about-hero__desc,
  .museum-about-hero__desc p,
  .museum-contact-hero__desc,
  .museum-contact-hero__desc p,
  .museum-donation-hero__desc,
  .museum-donation-hero__desc p,
  .museum-auditorium-hero__desc,
  .museum-auditorium-hero__desc p,
  .museum-exhibits-hero__desc,
  .museum-exhibits-hero__desc p,
  .museum-gallery-hero__desc,
  .museum-gallery-hero__desc p,
  .museum-guidelines-hero__description,
  .museum-guidelines-hero__description p,
  .museum-guidelines-hero__desc,
  .museum-guidelines-hero__desc p,
  .scholarship-hero__intro,
  .scholarship-hero__intro p,
  .scholarship-hero__desc,
  .scholarship-hero__desc p,
  .museum-top-banner__desc,
  .museum-top-banner__desc p,
  .museum-bookstore-hero__desc,
  .museum-bookstore-hero__desc p,
  .museum-welcome-showcase__desc,
  .museum-welcome-showcase__desc p
) {
  font-family: 'Poppins', sans-serif !important;
  font-weight: inherit !important;
  font-size: 1.6rem !important;
  line-height: 1.28 !important;
  margin-top: 0.3rem !important;
  margin-bottom: 2.4rem !important;
}

/* 3. Desktop Hero Breadcrumbs & Eyebrows */
html body :is(
  .museum-about-hero__breadcrumb,
  .museum-contact-hero__breadcrumb,
  .museum-donation-hero__breadcrumb,
  .museum-auditorium-hero__breadcrumb,
  .museum-exhibits-hero__breadcrumb,
  .museum-gallery-hero__breadcrumb,
  .museum-guidelines-hero__breadcrumb,
  .scholarship-hero__breadcrumb,
  .museum-top-banner__breadcrumb,
  .museum-bookstore-hero__breadcrumb
) {
  font-family: 'Poppins', sans-serif !important;
  font-size: 1.3rem !important;
  font-weight: 500 !important;
  margin-bottom: 1.2rem !important;
}

html body :is(
  .museum-about-hero__eyebrow,
  .museum-contact-hero__eyebrow,
  .museum-donation-hero__eyebrow,
  .museum-auditorium-hero__eyebrow,
  .museum-exhibits-hero__eyebrow,
  .museum-gallery-hero__eyebrow,
  .museum-guidelines-hero__eyebrow,
  .scholarship-hero__eyebrow,
  .scholarship-hero__flourish-bar,
  .museum-top-banner__eyebrow,
  .museum-bookstore-hero__eyebrow
) {
  font-family: 'Poppins', sans-serif !important;
  font-weight: 700 !important;
  font-size: 1.4rem !important;
  line-height: 1.2 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  margin-bottom: 0.6rem !important;
}

/* 4. Desktop Hero Buttons */
html body :is(
  .museum-about-hero__btn,
  .museum-contact-hero__btn,
  .museum-donation-hero__btn,
  .museum-auditorium-hero__btn,
  .museum-exhibits-hero__btn,
  .museum-gallery-hero__btn,
  .museum-guidelines-hero__btn,
  .scholarship-hero__btn,
  .museum-top-banner__btn,
  .museum-bookstore-hero__btn,
  .museum-welcome-showcase__btn
) {
  font-family: 'Poppins', sans-serif !important;
  font-weight: 600 !important;
  padding: 1.3rem 2.8rem !important;
  font-size: 1.4rem !important;
  border-radius: 0.4rem !important;
  gap: 0.8rem !important;
}

/* 5. Mobile Hero Complete Parity with About Hero */
@media screen and (max-width: 749px) {
  /* Mobile Content Box Constraints (300px width limit) */
  html body :is(
    .museum-about-hero__content-box,
    .museum-contact-hero__content,
    .museum-donation-hero__content,
    .museum-auditorium-hero__content,
    .museum-exhibits-hero__content,
    .museum-gallery-hero__content,
    .museum-guidelines-hero__content,
    .scholarship-hero__content,
    .museum-top-banner__content,
    .museum-bookstore-hero__content,
    .museum-welcome-showcase__content
  ) {
    max-width: min(100%, 300px) !important;
    padding-right: 0.8rem !important;
    box-sizing: border-box !important;
  }

  /* Mobile Hero Section Height & Padding */
  html body :is(
    .museum-about-hero,
    .museum-contact-hero,
    .museum-donation-hero,
    .museum-auditorium-hero,
    .museum-exhibits-hero,
    .museum-gallery-hero,
    .museum-guidelines-hero,
    .scholarship-hero,
    .museum-top-banner,
    .museum-bookstore-hero,
    .museum-welcome-showcase
  ) {
    min-height: auto !important;
    padding-top: max(var(--padding-top, 2.4rem), 2.4rem) !important;
    padding-bottom: max(var(--padding-bottom, 3.2rem), 3.2rem) !important;
  }

  /* Mobile Breadcrumb */
  html body :is(
    .museum-about-hero__breadcrumb,
    .museum-contact-hero__breadcrumb,
    .museum-donation-hero__breadcrumb,
    .museum-auditorium-hero__breadcrumb,
    .museum-exhibits-hero__breadcrumb,
    .museum-gallery-hero__breadcrumb,
    .museum-guidelines-hero__breadcrumb,
    .scholarship-hero__breadcrumb,
    .museum-top-banner__breadcrumb,
    .museum-bookstore-hero__breadcrumb
  ) {
    font-size: 1.2rem !important;
    margin-bottom: 0.6rem !important;
  }

  /* Mobile Eyebrow */
  html body :is(
    .museum-about-hero__eyebrow,
    .museum-contact-hero__eyebrow,
    .museum-donation-hero__eyebrow,
    .museum-auditorium-hero__eyebrow,
    .museum-exhibits-hero__eyebrow,
    .museum-gallery-hero__eyebrow,
    .museum-guidelines-hero__eyebrow,
    .scholarship-hero__eyebrow,
    .scholarship-hero__flourish-bar,
    .museum-top-banner__eyebrow,
    .museum-bookstore-hero__eyebrow
  ) {
    font-size: 1.1rem !important;
    letter-spacing: 1.2px !important;
    margin-bottom: 0.4rem !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
  }

  /* Mobile Hero Headings */
  html body :is(
    .museum-about-hero__heading,
    .museum-contact-hero__heading,
    .museum-donation-hero__heading,
    .museum-auditorium-hero__heading,
    .museum-exhibits-hero__heading,
    .museum-gallery-hero__heading,
    .museum-guidelines-hero__heading,
    .scholarship-hero__title,
    .scholarship-hero__heading,
    .museum-top-banner__heading,
    .museum-bookstore-hero__heading,
    .museum-welcome-showcase__heading
  ) {
    font-size: 2.2rem !important;
    line-height: 1.08 !important;
    letter-spacing: -0.3px !important;
    margin-bottom: 0.6rem !important;
    word-break: normal !important;
  }

  /* Mobile Hero Descriptions */
  html body :is(
    .museum-about-hero__description,
    .museum-about-hero__description p,
    .museum-about-hero__desc,
    .museum-about-hero__desc p,
    .museum-contact-hero__desc,
    .museum-contact-hero__desc p,
    .museum-donation-hero__desc,
    .museum-donation-hero__desc p,
    .museum-auditorium-hero__desc,
    .museum-auditorium-hero__desc p,
    .museum-exhibits-hero__desc,
    .museum-exhibits-hero__desc p,
    .museum-gallery-hero__desc,
    .museum-gallery-hero__desc p,
    .museum-guidelines-hero__description,
    .museum-guidelines-hero__description p,
    .museum-guidelines-hero__desc,
    .museum-guidelines-hero__desc p,
    .scholarship-hero__intro,
    .scholarship-hero__intro p,
    .scholarship-hero__desc,
    .scholarship-hero__desc p,
    .museum-top-banner__desc,
    .museum-top-banner__desc p,
    .museum-bookstore-hero__desc,
    .museum-bookstore-hero__desc p,
    .museum-welcome-showcase__desc,
    .museum-welcome-showcase__desc p
  ) {
    font-size: 1.25rem !important;
    line-height: 1.28 !important;
    margin-top: 0.3rem !important;
    margin-bottom: 0.6rem !important;
  }

  /* Mobile Buttons Container */
  html body :is(
    .museum-about-hero__buttons,
    .museum-contact-hero__buttons,
    .museum-donation-hero__buttons,
    .museum-auditorium-hero__buttons,
    .museum-exhibits-hero__buttons,
    .museum-gallery-hero__buttons,
    .museum-guidelines-hero__buttons,
    .scholarship-hero__buttons,
    .museum-top-banner__buttons,
    .museum-bookstore-hero__buttons,
    .museum-welcome-showcase__buttons
  ) {
    flex-direction: row !important;
    flex-wrap: wrap !important;
    gap: 0.8rem !important;
    margin-top: 1.2rem !important;
    margin-bottom: 0 !important;
  }

  /* Mobile Action Button Styling */
  html body :is(
    .museum-hero .museum-hero__button,
    .museum-about-hero__btn,
    .museum-contact-hero__btn,
    .museum-donation-hero__btn,
    .museum-auditorium-hero__btn,
    .museum-exhibits-hero__btn,
    .museum-gallery-hero__btn,
    .museum-guidelines-hero__btn,
    .scholarship-hero__btn,
    .museum-top-banner__btn,
    .museum-bookstore-hero__btn,
    .museum-welcome-showcase__btn,
    .museum-heritage-card__btn,
    .museum-split__button,
    .museum-split-content__btn,
    .museum-cta__btn,
    .museum-auditorium-cta__btn,
    .museum-donation-methods__btn,
    .museum-exhibits-categories__btn,
    .museum-gallery-slider__btn,
    .museum-newsletter-banner__btn,
    .museum-highlight-cards__btn,
    .museum-recent-products__btn,
    .museum-feature-grid__btn,
    .museum-multi-slider__btn
  ) {
    min-height: 4.4rem !important;
    padding: 1.2rem 2.4rem !important;
    font-size: 1.4rem !important;
    line-height: 1.2 !important;
    border-radius: 4px !important;
    gap: 0.8rem !important;
    margin-bottom: 0 !important;
    width: auto !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
  }
}

