/* Site-wide polish — CTAs, hovers, focus, micro-interactions */

@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@400&display=swap");

:root {
  --lmyc-pink: #D18E95;
  /* Why LMYC list copy — reuse for supporting labels across pages */
  --lmyc-supporting-copy-font: "Poppins", var(--font-body-family, sans-serif);
  --lmyc-supporting-copy-size: clamp(1.28rem, 1.85vw, 1.68rem);
  --lmyc-supporting-copy-weight: 400;
  --lmyc-supporting-copy-leading: 1.62;
  --lmyc-supporting-copy-tracking: 0.01em;
}

.lmyc-pink-eyebrow,
.main-subheading.lmyc-pink-eyebrow {
  color: var(--lmyc-pink) !important;
}

html:not([data-theme="dark"]) #main-content .lmyc-pink-eyebrow,
html:not([data-theme="dark"]) #main-content .main-subheading.lmyc-pink-eyebrow {
  color: #D18E95 !important;
  border-bottom-color: #D18E95 !important;
}

.lmyc-supporting-copy,
.lmyc-why-reasons,
.lmyc-team-card__expertise,
.lmyc-mentor-expertise,
.lmyc-tt-programme__eyebrow,
.lmyc-pricing-section__eyebrow,
.lmyc-collab-band__eyebrow {
  font-family: var(--lmyc-supporting-copy-font);
  font-size: var(--lmyc-supporting-copy-size);
  font-weight: var(--lmyc-supporting-copy-weight);
  line-height: var(--lmyc-supporting-copy-leading);
  letter-spacing: var(--lmyc-supporting-copy-tracking);
}

@media screen and (max-width: 991px) {
  .lmyc-supporting-copy,
  .lmyc-why-reasons,
  .lmyc-team-card__expertise,
  .lmyc-mentor-expertise,
  .lmyc-tt-programme__eyebrow,
  .lmyc-pricing-section__eyebrow,
  .lmyc-collab-band__eyebrow {
    font-size: 1.32rem;
  }
}

@media screen and (max-width: 767px) {
  .lmyc-supporting-copy,
  .lmyc-why-reasons,
  .lmyc-team-card__expertise,
  .lmyc-mentor-expertise,
  .lmyc-tt-programme__eyebrow,
  .lmyc-pricing-section__eyebrow,
  .lmyc-collab-band__eyebrow,
  .lmyc-why-reasons li > span:last-child {
    font-size: 1.2rem;
    line-height: 1.58;
  }
}

::selection {
  background: rgba(66, 89, 54, 0.22);
  color: inherit;
}

/* Premium CTA lift for key buttons */
.lmyc-cta-premium.button,
.lmyc-cta-premium.button--primary,
a.lmyc-cta-premium {
  position: relative;
  transition:
    transform 0.28s cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 0.28s ease,
    background-color 0.28s ease,
    color 0.28s ease;
  box-shadow: 0 4px 16px rgba(48, 61, 28, 0.18);
}

.lmyc-cta-premium.button:hover,
.lmyc-cta-premium.button:focus-visible,
a.lmyc-cta-premium:hover,
a.lmyc-cta-premium:focus-visible {
  transform: translateY(-2px);
  box-shadow: 0 10px 28px rgba(48, 61, 28, 0.26);
}

.lmyc-cta-premium.button:active,
a.lmyc-cta-premium:active {
  transform: translateY(0);
  box-shadow: 0 4px 12px rgba(48, 61, 28, 0.2);
}

/* Category carousel — no hover zoom; images stay fixed in frame */
#image_link_blocks_K3J6Tw .linkblock__image_wrapper:hover .linkblock_img,
#image_link_blocks_K3J6Tw .linkblock__image_wrapper:hover .linkblock_img .media,
#image_link_blocks_K3J6Tw .linkblock__image_wrapper:hover .linkblock_img img {
  scale: 1 !important;
  transform: none !important;
}

/* Collab banner subtle lift */
.lmyc-collab-banner--link {
  transition:
    transform 0.35s cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 0.35s ease;
}

.lmyc-collab-banner--link:hover,
.lmyc-collab-banner--link:focus-visible {
  transform: translateY(-3px);
  box-shadow: 0 14px 36px rgba(48, 61, 28, 0.14);
}

/* Mission card depth */
.lmyc-mission-card {
  transition: box-shadow 0.4s ease, transform 0.4s ease;
}

.lmyc-mission-card:hover {
  box-shadow: 0 12px 40px rgba(48, 61, 28, 0.1);
}

/* Why LMYC pillar hover */
.lmyc-why-pillar {
  transition:
    padding-left 0.3s ease,
    color 0.3s ease;
}

.lmyc-why-pillar:hover {
  padding-left: 1.5rem;
}

/* Instagram / workshop tiles */
.lmyc-workshops-events__tile,
.lmyc-instagram-grid__item {
  transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1);
}

.lmyc-workshops-events__tile:hover,
.lmyc-instagram-grid__item:hover {
  transform: translateY(-3px);
}

/* Smoother in-page anchor focus */
:target {
  scroll-margin-top: 7rem;
}

/* Let scroll-reveal own below-fold motion (disable theme pre-animation) */
#main-content .animate.ad-2.show_up:not(.is-visible) {
  animation: none !important;
  opacity: 1;
}

@media (prefers-reduced-motion: reduce) {
  .lmyc-cta-premium,
  .lmyc-collab-banner--link,
  .lmyc-mission-card,
  .lmyc-workshops-events__tile,
  .lmyc-instagram-grid__item {
    transition: none;
  }

  .lmyc-cta-premium:hover,
  .lmyc-collab-banner--link:hover {
    transform: none;
  }
}

/* Mobile menu: full-screen overlay (covers header, not below it) */
@media screen and (max-width: 1499px) {
  body.menu-open header-drawer.mobile-drawer .menu-drawer.open {
    position: fixed !important;
    inset: 0 !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    max-width: 100vw !important;
    height: 100vh !important;
    height: 100dvh !important;
    min-height: 100vh !important;
    min-height: 100dvh !important;
    z-index: 500 !important;
  }

  header-drawer.mobile-drawer .menu-drawer.open > .close-btn {
    top: env(safe-area-inset-top, 0) !important;
  }
}

/* Mobile drawer — full-height nav, simple Book a Class button */
@media screen and (max-width: 1499px) {
  header-drawer.mobile-drawer .menu-drawer.open .menu-drawer__inner-container {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 100%;
    padding-top: calc(env(safe-area-inset-top, 0px) + 3rem);
  }

  header-drawer.mobile-drawer .menu-drawer__navigation-container {
    display: flex !important;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start !important;
    align-content: stretch !important;
    grid-template-rows: unset !important;
    flex: 1 1 auto;
    min-height: 0;
    height: 100% !important;
    overflow: hidden;
    padding: 0;
  }

  header-drawer.mobile-drawer .menu-drawer__navigation {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    width: 100%;
    min-height: 0;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }

  header-drawer.mobile-drawer .menu-drawer__menu {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    flex: 0 0 auto;
    width: 100%;
    min-height: 0;
    max-width: 100%;
    padding: 0.25rem 0 1rem;
    margin: 0;
    box-sizing: border-box;
  }

  header-drawer.mobile-drawer .menu-drawer__menu > li {
    margin: 0;
    flex: 0 0 auto;
    width: 100%;
    max-width: 100%;
    border-bottom: 1px solid rgba(66, 89, 54, 0.09);
  }

  header-drawer.mobile-drawer .menu-drawer__menu > li:last-child {
    border-bottom: none;
  }

  header-drawer.mobile-drawer .menu-drawer__menu-item,
  header-drawer.mobile-drawer details.mobile-submenu > summary.menu-drawer__menu-item {
    margin-bottom: 0 !important;
    padding: 1.15rem 1.75rem !important;
    min-height: 3.25rem;
    font-size: clamp(1.3rem, 4vw, 1.55rem) !important;
    font-weight: 600;
    letter-spacing: 0.08em;
    line-height: 1.25;
    justify-content: flex-start !important;
    color: #425936 !important;
    max-width: 100%;
    box-sizing: border-box;
  }

  header-drawer.mobile-drawer .menu-drawer__menu-item:active,
  header-drawer.mobile-drawer details.mobile-submenu > summary.menu-drawer__menu-item:active {
    background: rgba(66, 89, 54, 0.07);
  }

  header-drawer.mobile-drawer .lmyc-drawer-register,
  header-drawer.mobile-drawer .contact-info-wrapper[href*="wa.me"],
  header-drawer.mobile-drawer .contact-info-wrapper[href*="whatsapp"] {
    display: none !important;
  }

  header-drawer.mobile-drawer .contact-block {
    flex: 0 0 auto;
    max-width: 100% !important;
    width: 100% !important;
    padding: 0.85rem 1.5rem calc(1.1rem + env(safe-area-inset-bottom, 0px)) !important;
    margin-top: auto;
    border-top: 1px solid rgba(66, 89, 54, 0.1);
    background: linear-gradient(180deg, transparent 0%, rgba(253, 248, 243, 0.92) 28%);
  }

  header-drawer.mobile-drawer .contact-block .contact-info-wrapper {
    display: block;
    text-decoration: none;
  }

  header-drawer.mobile-drawer .contact-block .lmyc-drawer-contact-card {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0;
    min-height: 3.35rem;
    padding: 0.85rem 1.5rem;
    border-radius: 999px;
    background: #425936 !important;
    border: none;
    box-shadow: 0 6px 20px rgba(66, 89, 54, 0.24);
    transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
  }

  header-drawer.mobile-drawer .contact-block .contact-info-wrapper:active .lmyc-drawer-contact-card {
    transform: scale(0.98);
    box-shadow: 0 3px 12px rgba(66, 89, 54, 0.2);
  }

  header-drawer.mobile-drawer .contact-block .lmyc-icon-badge--drawer,
  header-drawer.mobile-drawer .contact-block .contact-content {
    display: none !important;
  }

  header-drawer.mobile-drawer .contact-block .lmyc-drawer-contact-copy {
    width: 100%;
    text-align: center;
  }

  header-drawer.mobile-drawer .contact-block .contact-title {
    margin: 0;
    font-size: 1.05rem;
    font-weight: 600;
    letter-spacing: 0.11em;
    text-transform: uppercase;
    color: #ffffff !important;
  }

  header-drawer.mobile-drawer .menu-drawer__inner-submenu {
    padding: 0.75rem 0 1.25rem;
  }

  header-drawer.mobile-drawer .menu-drawer__close-button {
    margin-bottom: 0.75rem !important;
    padding: 0.85rem 1.5rem !important;
  }

  header-drawer.mobile-drawer details.mobile-submenu.menu-opening .menu-drawer__submenu .menu-drawer__menu {
    justify-content: flex-start;
    min-height: 0;
    flex: 1 1 auto;
  }

  header-drawer.mobile-drawer details.mobile-submenu.menu-opening .menu-drawer__submenu .menu-drawer__menu > li {
    flex: 0 0 auto;
  }

  header-drawer.mobile-drawer details.mobile-submenu.menu-opening .menu-drawer__submenu .menu-drawer__menu-item {
    padding: 1.35rem 2rem 1.35rem 2.25rem !important;
    min-height: 3.75rem;
    font-family: "Montserrat", var(--font-body-family, sans-serif) !important;
    font-size: clamp(1.55rem, 4.5vw, 1.78rem) !important;
    font-weight: 400 !important;
    font-style: normal !important;
    letter-spacing: 0.06em;
    text-transform: none;
  }

  header-drawer.mobile-drawer .menu-drawer__navigation-container.lmyc-submenu-active > .menu-drawer__navigation {
    justify-content: flex-start;
  }
}

/* Beat inline page styles that pin the drawer below the header (post-Vercel sync) */
@media screen and (max-width: 1499px) {
  header-drawer.mobile-drawer .menu-drawer.open,
  body.menu-open header-drawer.mobile-drawer .menu-drawer.open,
  body.menu-open header-drawer.mobile-drawer .menu-drawer-container.menu-opening .menu-drawer {
    position: fixed !important;
    inset: 0 !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    max-width: 100vw !important;
    height: 100vh !important;
    height: 100dvh !important;
    min-height: 100vh !important;
    min-height: 100dvh !important;
    max-height: none !important;
    z-index: 500 !important;
    display: flex !important;
    flex-direction: column !important;
  }
}

/* Mobile drawer submenus — full panel, no divider bleed; nested accordion in What's On */
@media screen and (max-width: 1499px) {
  header-drawer.mobile-drawer .menu-drawer__navigation-container.lmyc-submenu-active > .lmyc-lang-switch {
    display: none !important;
  }

  header-drawer.mobile-drawer .menu-drawer__navigation-container.lmyc-submenu-active > .menu-drawer__navigation > .menu-drawer__menu > li {
    border-bottom: none !important;
  }

  header-drawer.mobile-drawer .menu-drawer__navigation-container.lmyc-submenu-active > .menu-drawer__navigation > .menu-drawer__menu {
    height: 100%;
    min-height: 100%;
    padding-top: 0;
    margin: 0;
  }

  header-drawer.mobile-drawer .menu-drawer__navigation-container.lmyc-submenu-active > .menu-drawer__navigation > .menu-drawer__menu > li:has(> details.mobile-submenu.menu-opening) {
    height: 100%;
    min-height: 100%;
    margin: 0;
    padding: 0;
  }

  header-drawer.mobile-drawer .menu-drawer__navigation > .menu-drawer__menu > li > details.mobile-submenu.menu-opening {
    position: absolute;
    inset: 0;
    z-index: 8;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    border: none;
  }

  header-drawer.mobile-drawer .menu-drawer__navigation > .menu-drawer__menu > li > details.mobile-submenu.menu-opening > .menu-drawer__submenu {
    position: absolute;
    inset: 0;
    z-index: 9;
    transform: translateX(0);
    visibility: visible;
    min-height: 100%;
    height: 100%;
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    background: #fdf8f3 !important;
    border-top: none;
    box-shadow: none;
  }

  header-drawer.mobile-drawer .menu-drawer__navigation > .menu-drawer__menu > li > details.mobile-submenu.menu-opening > summary {
    display: none !important;
  }

  header-drawer.mobile-drawer .menu-drawer__navigation > .menu-drawer__menu > li > details.mobile-submenu.menu-opening .menu-drawer__inner-submenu {
    padding: 0.35rem 0 2rem;
    min-height: 100%;
    box-sizing: border-box;
  }

  header-drawer.mobile-drawer .menu-drawer__navigation > .menu-drawer__menu > li > details.mobile-submenu.menu-opening .menu-drawer__close-button {
    margin-bottom: 0.35rem !important;
    border-bottom: 1px solid rgba(66, 89, 54, 0.1);
  }

  header-drawer.mobile-drawer .menu-drawer__navigation > .menu-drawer__menu > li > details.mobile-submenu.menu-opening .menu-drawer__submenu > .menu-drawer__inner-submenu > .menu-drawer__menu > li {
    border-bottom: 1px solid rgba(66, 89, 54, 0.09);
  }

  header-drawer.mobile-drawer .menu-drawer__navigation > .menu-drawer__menu > li > details.mobile-submenu.menu-opening .menu-drawer__submenu > .menu-drawer__inner-submenu > .menu-drawer__menu > li:last-child {
    border-bottom: none;
  }

  /* Nested submenu (What's On → Courses): expand in place, no second slide-over */
  header-drawer.mobile-drawer .menu-drawer__submenu details.mobile-submenu {
    position: relative;
    inset: auto;
    width: 100%;
    border-bottom: 1px solid rgba(66, 89, 54, 0.09);
  }

  header-drawer.mobile-drawer .menu-drawer__submenu details.mobile-submenu > summary.menu-drawer__menu-item {
    margin: 0 !important;
  }

  header-drawer.mobile-drawer .menu-drawer__submenu details.mobile-submenu > .menu-drawer__submenu {
    position: relative;
    inset: auto;
    transform: none !important;
    visibility: hidden;
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    min-height: 0 !important;
    height: auto !important;
    transition: max-height 0.35s ease, opacity 0.25s ease, visibility 0.25s ease;
    background: rgba(66, 89, 54, 0.05) !important;
  }

  header-drawer.mobile-drawer .menu-drawer__submenu details.mobile-submenu.menu-opening > .menu-drawer__submenu {
    visibility: visible;
    max-height: 18rem;
    opacity: 1;
  }

  header-drawer.mobile-drawer .menu-drawer__submenu details.mobile-submenu.menu-opening > summary {
    visibility: visible !important;
    position: relative !important;
    pointer-events: auto !important;
    height: auto !important;
    overflow: visible !important;
    display: flex !important;
  }

  header-drawer.mobile-drawer .menu-drawer__submenu details.mobile-submenu .menu-drawer__close-button {
    display: none !important;
  }

  header-drawer.mobile-drawer .menu-drawer__submenu details.mobile-submenu .menu-drawer__inner-submenu {
    padding: 0 !important;
  }

  header-drawer.mobile-drawer .menu-drawer__submenu details.mobile-submenu.menu-opening .menu-drawer__submenu .menu-drawer__menu > li {
    border-bottom: 1px solid rgba(66, 89, 54, 0.08);
  }

  header-drawer.mobile-drawer .menu-drawer__submenu details.mobile-submenu.menu-opening .menu-drawer__submenu .menu-drawer__menu > li:last-child {
    border-bottom: none;
  }

  header-drawer.mobile-drawer .menu-drawer__submenu details.mobile-submenu.menu-opening .menu-drawer__submenu .menu-drawer__menu-item {
    padding: 1.1rem 2rem 1.1rem 2.75rem !important;
    min-height: 3.35rem;
    font-size: clamp(1.35rem, 4vw, 1.58rem) !important;
    font-weight: 500 !important;
  }
}

/* Override legacy inline drawer submenu rules baked into exported HTML pages */
@media screen and (max-width: 1499px) {
  header-drawer.mobile-drawer details.mobile-submenu {
    position: static !important;
  }

  header-drawer.mobile-drawer details.mobile-submenu > .menu-drawer__submenu {
    position: absolute !important;
    transform: translateX(0) !important;
    transition: none !important;
    visibility: hidden !important;
  }

  header-drawer.mobile-drawer .menu-drawer__navigation > .menu-drawer__menu > li > details.mobile-submenu {
    position: static !important;
  }

  header-drawer.mobile-drawer .menu-drawer__navigation > .menu-drawer__menu > li > details.mobile-submenu.menu-opening {
    position: absolute !important;
    inset: 0 !important;
    z-index: 8 !important;
  }

  header-drawer.mobile-drawer .menu-drawer__navigation > .menu-drawer__menu > li > details.mobile-submenu.menu-opening > .menu-drawer__submenu {
    transform: translateX(0) !important;
    transition: none !important;
    visibility: visible !important;
    background: #fdf8f3 !important;
  }

  header-drawer.mobile-drawer .menu-drawer__navigation-container.lmyc-submenu-active > .menu-drawer__navigation > .menu-drawer__menu > li:not(:has(> details.mobile-submenu.menu-opening)) {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
  }

  header-drawer.mobile-drawer .menu-drawer__navigation-container.lmyc-submenu-active > .menu-drawer__navigation > .menu-drawer__menu > li > details.mobile-submenu:not(.menu-opening) {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  header-drawer.mobile-drawer details.mobile-submenu.menu-opening .menu-drawer__submenu .menu-drawer__menu-item {
    color: #425936 !important;
    opacity: 1 !important;
  }

  header-drawer.mobile-drawer .menu-drawer__navigation-container.lmyc-submenu-active > .contact-block {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    position: absolute !important;
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
  }
}

/* Site-wide body copy — Why LMYC list typography (Poppins + supporting-copy scale) */
#main-content :is(
  .main-description,
  .main-description p,
  .rich-text__text.main-description,
  .rich-text__text.main-description p,
  .lmyc-subpage-hero__lead,
  .lmyc-faq-intro__lead,
  .lmyc-faq-item__body,
  .lmyc-faq-item__body p,
  .lmyc-contact-intro__lead,
  .lmyc-contact-panel__text,
  .lmyc-contact-map__text,
  .lmyc-contact-map__intro,
  .lmyc-contact-form-section__lead,
  .lmyc-contact-card p,
  .lmyc-contact-studio p,
  .lmyc-contact-sent__text,
  .lmyc-resources-intro__lead,
  .lmyc-resources-video-feature__meta,
  .lmyc-resources-panel__sub,
  .lmyc-tt-page__lead,
  .lmyc-tt-page__lead p,
  .lmyc-tt-programme__intro,
  .lmyc-tt-programme__lead,
  .lmyc-tt-programme__lead p,
  .lmyc-tt-detail__body,
  .lmyc-tt-detail__body p,
  .lmyc-tt-feature__body,
  .lmyc-tt-feature__body li,
  .lmyc-tt-team-cta__text,
  .lmyc-tt-section p,
  .lmyc-smile-hero__lead,
  .lmyc-smile-section__intro,
  .lmyc-smile-faq__body,
  .lmyc-smile-promo__text,
  .lmyc-category-hero__hook,
  .lmyc-category-hero__body p,
  .lmyc-category-benefits--inline .lmyc-category-benefits__list li,
  .lmyc-category-classes__head p,
  .lmyc-category-booking__head p,
  .lmyc-category-more__eyebrow,
  .lmyc-founders-origin-card__body,
  .lmyc-founders-origin-card__body p,
  .lmyc-team-intro__lead,
  .lmyc-team-careers__copy,
  .lmyc-team-careers__text,
  .lmyc-registration-page__lead,
  .lmyc-schedule-timetable__lead,
  .lmyc-booking-widget__lead,
  .lmyc-booking-scroll-hint__text,
  .lmyc-space-sanctuary-text,
  .lmyc-space-stack__lead,
  .lmyc-lineage-masters-lead,
  .lmyc-lineage-bio,
  .lmyc-lineage-bio p,
  .lmyc-lineage-tyi__text,
  .lmyc-lineage-tyi__text p,
  .lmyc-pricing-trial__desc,
  .lmyc-pricing-card__desc,
  .lmyc-pricing-card__features li,
  .lmyc-pricing-ambassador__desc,
  .lmyc-vtp__description,
  .lmyc-mantra-benefits__desc,
  .lmyc-class-guide-nudge__text,
  .lmyc-collab-hub__lead,
  .lmyc-collab-hub__lead-line,
  .lmyc-collab-band__desc,
  .lmyc-collab-card__body p,
  .lmyc-collab-media__body p,
  .lmyc-collab-cta > p,
  .lmyc-collab-accred__desc,
  .lmyc-collab-duo__card p:not(.lmyc-collab-duo__tagline),
  .lmyc-collab-split__main p,
  .lmyc-collab-program__body p,
  .lmyc-collab-note p,
  .lmyc-why-cta__text,
  .lmyc-mission-card__quote p,
  .lmyc-workshops-events__intro,
  .lmyc-tt-hero__tagline,
  .linkblock-description,
  .linkblock-description p,
  .lmyc-404__message
) {
  font-family: var(--lmyc-supporting-copy-font) !important;
  font-size: var(--lmyc-supporting-copy-size) !important;
  font-weight: var(--lmyc-supporting-copy-weight) !important;
  line-height: var(--lmyc-supporting-copy-leading) !important;
  letter-spacing: var(--lmyc-supporting-copy-tracking) !important;
}

@media screen and (max-width: 991px) {
  #main-content :is(
    .main-description,
    .main-description p,
    .rich-text__text.main-description,
    .rich-text__text.main-description p,
    .lmyc-subpage-hero__lead,
    .lmyc-faq-intro__lead,
    .lmyc-faq-item__body,
    .lmyc-faq-item__body p,
    .lmyc-contact-intro__lead,
    .lmyc-contact-panel__text,
    .lmyc-contact-map__text,
    .lmyc-contact-map__intro,
    .lmyc-contact-form-section__lead,
    .lmyc-contact-card p,
    .lmyc-contact-studio p,
    .lmyc-contact-sent__text,
    .lmyc-resources-intro__lead,
    .lmyc-resources-video-feature__meta,
    .lmyc-resources-panel__sub,
    .lmyc-tt-page__lead,
    .lmyc-tt-page__lead p,
    .lmyc-tt-programme__intro,
    .lmyc-tt-programme__lead,
    .lmyc-tt-programme__lead p,
    .lmyc-tt-detail__body,
    .lmyc-tt-detail__body p,
    .lmyc-tt-feature__body,
    .lmyc-tt-feature__body li,
    .lmyc-tt-team-cta__text,
    .lmyc-tt-section p,
    .lmyc-smile-hero__lead,
    .lmyc-smile-section__intro,
    .lmyc-smile-faq__body,
    .lmyc-smile-promo__text,
    .lmyc-category-hero__hook,
    .lmyc-category-hero__body p,
    .lmyc-category-benefits--inline .lmyc-category-benefits__list li,
    .lmyc-category-classes__head p,
    .lmyc-category-booking__head p,
    .lmyc-category-more__eyebrow,
    .lmyc-founders-origin-card__body,
    .lmyc-founders-origin-card__body p,
    .lmyc-team-intro__lead,
    .lmyc-team-careers__copy,
    .lmyc-team-careers__text,
    .lmyc-registration-page__lead,
    .lmyc-schedule-timetable__lead,
    .lmyc-booking-widget__lead,
    .lmyc-booking-scroll-hint__text,
    .lmyc-space-sanctuary-text,
    .lmyc-space-stack__lead,
    .lmyc-lineage-masters-lead,
    .lmyc-lineage-bio,
    .lmyc-lineage-bio p,
    .lmyc-lineage-tyi__text,
    .lmyc-lineage-tyi__text p,
    .lmyc-pricing-trial__desc,
    .lmyc-pricing-card__desc,
    .lmyc-pricing-card__features li,
    .lmyc-pricing-ambassador__desc,
    .lmyc-vtp__description,
    .lmyc-mantra-benefits__desc,
    .lmyc-class-guide-nudge__text,
    .lmyc-collab-hub__lead,
    .lmyc-collab-hub__lead-line,
    .lmyc-collab-band__desc,
    .lmyc-collab-card__body p,
    .lmyc-collab-media__body p,
    .lmyc-collab-cta > p,
    .lmyc-collab-accred__desc,
    .lmyc-collab-duo__card p:not(.lmyc-collab-duo__tagline),
    .lmyc-collab-split__main p,
    .lmyc-collab-program__body p,
    .lmyc-collab-note p,
    .lmyc-why-cta__text,
    .lmyc-mission-card__quote p,
    .lmyc-workshops-events__intro,
  .lmyc-tt-hero__tagline,
    .linkblock-description,
    .linkblock-description p,
    .lmyc-404__message
  ) {
    font-size: 1.32rem !important;
  }
}

@media screen and (max-width: 767px) {
  #main-content :is(
    .main-description,
    .main-description p,
    .rich-text__text.main-description,
    .rich-text__text.main-description p,
    .lmyc-subpage-hero__lead,
    .lmyc-faq-intro__lead,
    .lmyc-faq-item__body,
    .lmyc-faq-item__body p,
    .lmyc-contact-intro__lead,
    .lmyc-contact-panel__text,
    .lmyc-contact-map__text,
    .lmyc-contact-map__intro,
    .lmyc-contact-form-section__lead,
    .lmyc-contact-card p,
    .lmyc-contact-studio p,
    .lmyc-contact-sent__text,
    .lmyc-resources-intro__lead,
    .lmyc-resources-video-feature__meta,
    .lmyc-resources-panel__sub,
    .lmyc-tt-page__lead,
    .lmyc-tt-page__lead p,
    .lmyc-tt-programme__intro,
    .lmyc-tt-programme__lead,
    .lmyc-tt-programme__lead p,
    .lmyc-tt-detail__body,
    .lmyc-tt-detail__body p,
    .lmyc-tt-feature__body,
    .lmyc-tt-feature__body li,
    .lmyc-tt-team-cta__text,
    .lmyc-tt-section p,
    .lmyc-smile-hero__lead,
    .lmyc-smile-section__intro,
    .lmyc-smile-faq__body,
    .lmyc-smile-promo__text,
    .lmyc-category-hero__hook,
    .lmyc-category-hero__body p,
    .lmyc-category-benefits--inline .lmyc-category-benefits__list li,
    .lmyc-category-classes__head p,
    .lmyc-category-booking__head p,
    .lmyc-category-more__eyebrow,
    .lmyc-founders-origin-card__body,
    .lmyc-founders-origin-card__body p,
    .lmyc-team-intro__lead,
    .lmyc-team-careers__copy,
    .lmyc-team-careers__text,
    .lmyc-registration-page__lead,
    .lmyc-schedule-timetable__lead,
    .lmyc-booking-widget__lead,
    .lmyc-booking-scroll-hint__text,
    .lmyc-space-sanctuary-text,
    .lmyc-space-stack__lead,
    .lmyc-lineage-masters-lead,
    .lmyc-lineage-bio,
    .lmyc-lineage-bio p,
    .lmyc-lineage-tyi__text,
    .lmyc-lineage-tyi__text p,
    .lmyc-pricing-trial__desc,
    .lmyc-pricing-card__desc,
    .lmyc-pricing-card__features li,
    .lmyc-pricing-ambassador__desc,
    .lmyc-vtp__description,
    .lmyc-mantra-benefits__desc,
    .lmyc-class-guide-nudge__text,
    .lmyc-collab-hub__lead,
    .lmyc-collab-hub__lead-line,
    .lmyc-collab-band__desc,
    .lmyc-collab-card__body p,
    .lmyc-collab-media__body p,
    .lmyc-collab-cta > p,
    .lmyc-collab-accred__desc,
    .lmyc-collab-duo__card p:not(.lmyc-collab-duo__tagline),
    .lmyc-collab-split__main p,
    .lmyc-collab-program__body p,
    .lmyc-collab-note p,
    .lmyc-why-cta__text,
    .lmyc-mission-card__quote p,
    .lmyc-workshops-events__intro,
  .lmyc-tt-hero__tagline,
    .linkblock-description,
    .linkblock-description p,
    .lmyc-404__message
  ) {
    font-size: 1.2rem !important;
    line-height: 1.58 !important;
  }
}

/* Team modals mount on body — same body copy scale */
.lmyc-team-modal__content :is(
  .main-description,
  .main-description p,
  .lmyc-mentor-bio,
  .lmyc-mentor-teaching-style
) {
  font-family: var(--lmyc-supporting-copy-font) !important;
  font-size: var(--lmyc-supporting-copy-size) !important;
  font-weight: var(--lmyc-supporting-copy-weight) !important;
  line-height: var(--lmyc-supporting-copy-leading) !important;
  letter-spacing: var(--lmyc-supporting-copy-tracking) !important;
}

@media screen and (max-width: 991px) {
  .lmyc-team-modal__content :is(
    .main-description,
    .main-description p,
    .lmyc-mentor-bio,
    .lmyc-mentor-teaching-style
  ) {
    font-size: 1.32rem !important;
  }
}

@media screen and (max-width: 767px) {
  .lmyc-team-modal__content :is(
    .main-description,
    .main-description p,
    .lmyc-mentor-bio,
    .lmyc-mentor-teaching-style
  ) {
    font-size: 1.2rem !important;
    line-height: 1.58 !important;
  }
}
