/** Shopify CDN: Minification failed

Line 164:20 Unexpected "{"
Line 164:29 Expected ":"
Line 164:36 Unexpected "{"

**/
/*
 * ============================================================
 * THE EMBODY LAB — CUSTOM RESPONSIVE OVERRIDES
 * Breakpoints: 1200px | 1024px | 768px | 480px
 * ============================================================
 */


/* ─────────────────────────────────────────────────────────
   GLOBAL UTILS
───────────────────────────────────────────────────────── */

img { max-width: 100%; height: auto; }

/* ─────────────────────────────────────────────────────────
   MEGA NAV
───────────────────────────────────────────────────────── */

/* Tablet: tighten up the bar, shrink nav gaps */
@media (max-width: 1200px) {
  .embl-header__bar { padding: 0 20px; gap: 12px; }
  .embl-nav__list   { gap: 0; }
  .embl-nav__btn    { padding: 8px 9px; font-size: 14px; }
  .embl-nav__item--find-therapist { margin-left: 8px; }
  .embl-nav__find-therapist { padding: 8px 9px; font-size: 10px; }
  .embl-mega__inner { max-width: 100%; }
}

/* Tablet portrait: hide nav, show hamburger */
@media (max-width: 1024px) {
  .embl-nav   { display: none !important; }
  .embl-login { display: none !important; }
  .embl-hamburger { display: flex !important; }
  .embl-logo__img { height: 30px !important; }
}

/* Mega panels full-width on smaller screens */
@media (max-width: 1024px) {
  .embl-mega__inner {
    grid-template-columns: 1fr !important;
  }
  .embl-mega__col--dark {
    padding: 28px 24px;
  }
  .embl-mega__col {
    padding: 24px 20px;
    border-right: none;
    border-bottom: 1px solid #e5e1dc;
  }
}

/* Mobile drawer full height scroll */
@media (max-width: 480px) {
  .embl-mobile-drawer__inner { padding: 12px 20px 40px; }
}


/* ─────────────────────────────────────────────────────────
   CLINICAL HERO
───────────────────────────────────────────────────────── */

/* Tablet landscape: side-by-side but tighter */
@media (max-width: 1100px) {
  .clinical-left { padding: 50px 40px; }
}

/* Tablet portrait: stack */
@media (max-width: 900px) {
  .clinical-wrapper {
    grid-template-columns: 1fr !important;
    min-height: unset;
  }
  .clinical-left {
    padding: 40px 24px !important;
    order: 1;
  }
  .clinical-right {
    order: 2;
    min-height: 280px;
  }
  .clinical-right .hero-image {
    height: 100% !important;
    max-height: 320px;
    object-fit: cover;
  }
  /* Scale the heading */
  .clinical-left .title {
    font-size: clamp(28px, 7vw, 52px) !important;
  }
  .buttons {
    flex-wrap: wrap;
    gap: 12px !important;
    margin-bottom: 32px !important;
  }
  .stats {
    gap: 20px !important;
    flex-wrap: wrap;
  }
  /* Overlay card becomes inline below image */
  .overlay-card {
    position: relative !important;
    bottom: auto !important;
    left: auto !important;
    margin: 16px 16px 0 !important;
    width: calc(100% - 32px) !important;
  }
}

/* Mobile: extra squeeze */
@media (max-width: 480px) {
  .clinical-left { padding: 28px 16px !important; }
  .clinical-left .title { font-size: clamp(24px, 8vw, 36px) !important; }
  .description { max-width: 100% !important; margin-bottom: 20px !important; }
  .btn-primary,
  .btn-secondary {
    width: 100%;
    text-align: center;
    box-sizing: border-box;
  }
  .stats { gap: 14px !important; }
  .stat h3 { font-size: 22px !important; }
}


/* ─────────────────────────────────────────────────────────
   CLINICAL CARDS  (Go Deeper / Member Events)
───────────────────────────────────────────────────────── */

/* Tablet: 2-column grid */
@media (max-width: 1024px) {
  .program-grid {
    grid-template-columns: repeat(2, 1fr) !important;
  }
  .program-wrapper { padding: 0 16px; }
  .program-header .title { font-size: clamp(28px, 5vw, 44px) !important; }
}

/* Mobile: 1 column, reduced section padding */
@media (max-width: 640px) {
  .program-grid {
    grid-template-columns: 1fr !important;
  }
  .program-section {
    padding-top: 48px !important;
    padding-bottom: 48px !important;
  }
  .program-header .title { font-size: clamp(24px, 7vw, 36px) !important; }
  .program-header { margin-bottom: 28px !important; }
  .program-image { height: 200px !important; }
}


/* ─────────────────────────────────────────────────────────
   WORLD-CLASS FACULTY (Instructor Slider)
───────────────────────────────────────────────────────── */

#instructor-slider-{{ section.id }} { /* this is section-specific, handled below */ }

/* Global selectors that match all instances */
[id^="instructor-slider-"] .slider-header {
  padding: 0 16px !important;
  flex-direction: column;
  align-items: flex-start !important;
  gap: 16px;
}

@media (max-width: 1024px) {
  [id^="instructor-slider-"] .slider-header {
    flex-direction: row;
    align-items: flex-end;
    padding: 0 20px !important;
  }
  [id^="instructor-slider-"] .title {
    font-size: clamp(26px, 4vw, 44px) !important;
  }
}

@media (max-width: 768px) {
  [id^="instructor-slider-"] .slider-header {
    flex-direction: column;
    align-items: flex-start !important;
    gap: 12px;
    margin-bottom: 24px !important;
  }
  [id^="instructor-slider-"] .title {
    font-size: clamp(22px, 6vw, 36px) !important;
  }
  [id^="instructor-slider-"] .subtitle {
    font-size: 14px;
  }
  [id^="instructor-slider-"] .course-card {
    min-width: 220px !important;
  }
  [id^="instructor-slider-"] .card-media {
    height: 260px !important;
  }
}

@media (max-width: 480px) {
  [id^="instructor-slider-"] {
    padding-top: 48px !important;
    padding-bottom: 48px !important;
  }
  [id^="instructor-slider-"] .slider-track {
    padding: 0 16px !important;
    gap: 14px !important;
  }
  [id^="instructor-slider-"] .course-card {
    min-width: 180px !important;
  }
  [id^="instructor-slider-"] .card-media {
    height: 220px !important;
  }
}


/* ─────────────────────────────────────────────────────────
   SEARCH BY TOPIC  (Course Slider)
───────────────────────────────────────────────────────── */

@media (max-width: 1024px) {
  [id^="course-topic-slider-"] .section-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 20px !important;
  }
  [id^="course-topic-slider-"] .title {
    font-size: clamp(26px, 4vw, 42px) !important;
  }
  [id^="course-topic-slider-"] .section-wrapper {
    padding: 0 16px !important;
  }
}

@media (max-width: 768px) {
  [id^="course-topic-slider-"] .title {
    font-size: clamp(22px, 6vw, 36px) !important;
  }
  [id^="course-topic-slider-"] .topic-tabs {
    gap: 8px !important;
    padding-bottom: 4px;
    overflow-x: auto;
    flex-wrap: nowrap;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  [id^="course-topic-slider-"] .topic-tabs::-webkit-scrollbar { display: none; }
  [id^="course-topic-slider-"] .topic {
    white-space: nowrap;
    flex-shrink: 0;
  }
  /* Nav arrows: tuck inside the track */
  [id^="course-topic-slider-"] .nav.prev { left: 0; }
  [id^="course-topic-slider-"] .nav.next { right: 0; }
  [id^="course-topic-slider-"] .slider-track {
    padding: 0 2px;
  }
}

@media (max-width: 480px) {
  [id^="course-topic-slider-"] {
    padding-top: 48px !important;
    padding-bottom: 48px !important;
  }
  [id^="course-topic-slider-"] .card-media {
    height: 180px !important;
  }
}


/* ─────────────────────────────────────────────────────────
   MEMBERSHIP LIBRARY
───────────────────────────────────────────────────────── */

@media (max-width: 1024px) {
  [id^="membership-library-"] .membership-wrapper {
    padding: 0 16px !important;
  }
  [id^="membership-library-"] .membership-header {
    padding: 0 !important;
  }
}

@media (max-width: 768px) {
  [id^="membership-library-"] .membership-features {
    grid-template-columns: repeat(2, 1fr) !important;
  }
  [id^="membership-library-"] .membership-slider .course-card {
    min-width: 240px !important;
  }
  [id^="membership-library-"] {
    padding-top: 48px !important;
    padding-bottom: 48px !important;
  }
}

@media (max-width: 480px) {
  [id^="membership-library-"] .membership-features {
    grid-template-columns: 1fr !important;
  }
  [id^="membership-library-"] .membership-slider .course-card {
    min-width: 200px !important;
  }
}


/* ─────────────────────────────────────────────────────────
   PRICING
───────────────────────────────────────────────────────── */

@media (max-width: 1024px) {
  .pricing-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 20px !important;
  }
  .pricing-wrapper { padding: 0 16px !important; }
}

@media (max-width: 640px) {
  .pricing-grid {
    grid-template-columns: 1fr !important;
  }
  .pricing-section {
    padding-top: 48px !important;
    padding-bottom: 48px !important;
  }
  .pricing-title { font-size: clamp(24px, 7vw, 36px) !important; }
  .pricing-card  { padding: 24px !important; }
}


/* ─────────────────────────────────────────────────────────
   TESTIMONIALS
───────────────────────────────────────────────────────── */

@media (max-width: 1024px) {
  .testimonials-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 16px !important;
  }
  .testimonials-wrapper { padding: 0 16px !important; }
  .testimonials-header .title { font-size: clamp(26px, 4vw, 44px) !important; }
}

@media (max-width: 640px) {
  .testimonials-grid {
    grid-template-columns: 1fr !important;
  }
  .testimonial-outcomes {
    padding-top: 48px !important;
    padding-bottom: 48px !important;
  }
  .testimonials-header .title { font-size: clamp(22px, 7vw, 34px) !important; }
  .testimonial-card { padding: 24px !important; }
}


/* ─────────────────────────────────────────────────────────
   STATS
───────────────────────────────────────────────────────── */

/* Already has 2 breakpoints in source — just augment */
@media (max-width: 768px) {
  .outcomes-wrapper { padding: 0 16px !important; }
  .outcomes-header .title { font-size: clamp(24px, 6vw, 40px) !important; }
  .stats-grid {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

@media (max-width: 480px) {
  .outcomes-stats { padding-top: 40px !important; padding-bottom: 40px !important; }
  .outcomes-header { margin-bottom: 24px !important; }
}


/* ─────────────────────────────────────────────────────────
   EXPERIENCE FEATURES
───────────────────────────────────────────────────────── */

/* Already uses clamp() — just tighten padding */
@media (max-width: 768px) {
  .features-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 24px !important;
  }
}

@media (max-width: 480px) {
  .features-grid {
    grid-template-columns: 1fr !important;
  }
  .feature-desc { max-width: 100% !important; }
}


/* ─────────────────────────────────────────────────────────
   COMMUNITY  (2-col left/right split)
───────────────────────────────────────────────────────── */

@media (max-width: 900px) {
  .community-grid {
    grid-template-columns: 1fr !important;
  }
  .community-left { padding-bottom: 0 !important; }
  .community-wrapper { padding: 0 16px !important; }
  .community-section {
    padding-top: 48px !important;
    padding-bottom: 48px !important;
  }
  .community-heading,
  .community-grid .heading {
    font-size: clamp(26px, 5vw, 40px) !important;
  }
}

@media (max-width: 480px) {
  .community-cards-grid {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }
}


/* ─────────────────────────────────────────────────────────
   NEWSLETTER
───────────────────────────────────────────────────────── */

@media (max-width: 900px) {
  .newsletter-section {
    padding-top: 48px !important;
    padding-bottom: 48px !important;
  }
  .newsletter-grid,
  [id^="newsletter-"] .newsletter-inner {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }
  [id^="newsletter-"] .newsletter-heading {
    font-size: clamp(24px, 6vw, 40px) !important;
  }
}

@media (max-width: 480px) {
  [id^="newsletter-"] .newsletter-form {
    flex-direction: column;
    gap: 12px !important;
  }
  [id^="newsletter-"] input[type="email"],
  [id^="newsletter-"] .newsletter-input {
    width: 100%;
    box-sizing: border-box;
  }
  [id^="newsletter-"] .newsletter-btn {
    width: 100%;
  }
}


/* ─────────────────────────────────────────────────────────
   ANNOUNCEMENT BAR  (custom section)
───────────────────────────────────────────────────────── */

@media (max-width: 768px) {
  .announcement-bar__inner,
  .announcement-bar .container {
    padding: 0 12px;
    font-size: 12px !important;
  }
  /* If it shows social icons etc, hide on very small screens */
  .announcement-bar .social-icons-list { display: none; }
}

@media (max-width: 480px) {
  .announcement-bar__inner,
  .announcement-bar .container {
    font-size: 11px !important;
  }
}


/* ─────────────────────────────────────────────────────────
   GLOBAL SECTION PADDING  — reduce on mobile for all sections
───────────────────────────────────────────────────────── */

@media (max-width: 768px) {
  /* Any section with inline padding-top/bottom above 80px: cap at 60px */
  /* We override via specific selectors above. */
  /* This catches any sections we might have missed: */
  .shopify-section > section[style*="padding-top"] {
    padding-top: min(var(--pt, 80px), 60px) !important;
    padding-bottom: min(var(--pb, 80px), 60px) !important;
  }
}

@media (max-width: 480px) {
  .shopify-section > section[style*="padding-top"] {
    padding-top: min(var(--pt, 80px), 40px) !important;
    padding-bottom: min(var(--pb, 80px), 40px) !important;
  }
}


/* ─────────────────────────────────────────────────────────
   HORIZONTAL SLIDERS — universal touch improvements
───────────────────────────────────────────────────────── */

.slider-track,
[id^="course-topic-slider-"] .slider-track,
[id^="instructor-slider-"] .slider-track {
  -webkit-overflow-scrolling: touch;
  scroll-snap-type: x mandatory;
}

.slider-track > *,
[id^="course-topic-slider-"] .slider-track > *,
[id^="instructor-slider-"] .slider-track > * {
  scroll-snap-align: start;
}
