/* ═══════════════════════════════════════════════════════════════
   IL HEALTH 1 — RESPONSIVE FIXES & ENHANCEMENTS v5
   Loaded after style.css. All targeted overrides.
   Key fixes in v5:
   - Header: brand left, nav CENTRED (auto-margin), right zone right
   - Custom mega menu (HTML-based, not WP submenu, opens DOWNWARD)
   - Mobile drawer: z-index above header + hero (999999)
   - V2 hero: proper 50/50 split on desktop, stacked on mobile
═══════════════════════════════════════════════════════════════ */

/* ──────────────────────────────────────────────────────────────
   0. KILL WP NAVIGATION OVERLAY — we use our own drawer
──────────────────────────────────────────────────────────────── */
.wp-block-navigation__responsive-container,
.wp-block-navigation__responsive-container.hidden-by-default,
.wp-block-navigation__responsive-container-open,
.wp-block-navigation__responsive-container-close,
.wp-block-navigation__responsive-container-content { display: none !important; }

/* ──────────────────────────────────────────────────────────────
   1. HEADER — fixed, correct three-zone layout:
      [Brand]        [Nav — centred]       [Right: social+book+hamburger]
──────────────────────────────────────────────────────────────── */
.aura-header {
  position: fixed !important;
  top: 0; left: 0; right: 0;
  z-index: 9990 !important;
  height: var(--header-h, 72px) !important;
  min-height: var(--header-h, 72px) !important;
  display: flex !important;
  align-items: center !important;
  /* Three-zone layout: brand | auto | nav | auto | right */
  justify-content: space-between !important;
  padding: 0 clamp(20px, 4.5vw, 72px) !important;
  background: rgba(253,252,250,0.97) !important;
  backdrop-filter: blur(14px) saturate(1.3);
  -webkit-backdrop-filter: blur(14px) saturate(1.3);
  border-bottom: 1px solid rgba(139,115,85,0.14) !important;
  transition: height 0.3s ease, box-shadow 0.3s ease;
  box-sizing: border-box !important;
  gap: 0 !important;
}
.aura-header.scrolled {
  height: 58px !important;
  min-height: 58px !important;
  box-shadow: 0 2px 24px rgba(44,40,37,0.1) !important;
}

/* Brand — left zone, unified declaration */
.aura-header-brand {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  flex: 0 0 auto !important;
  min-width: 0 !important;
  margin-right: 0 !important;
  margin-left: 60px !important; /* desktop: logo pushed right towards nav */
}
/* WP renders site-logo as <figure style="width:Npx"> — force our sizing */
.aura-header-brand .wp-block-site-logo,
.aura-header-brand figure.wp-block-site-logo,
.aura-header-brand .aura-logo-img {
  width: 74px !important;
  height: 74px !important;
  max-width: 74px !important;
  flex-shrink: 0 !important;
}
.aura-header.scrolled .aura-header-brand .wp-block-site-logo,
.aura-header.scrolled .aura-header-brand figure.wp-block-site-logo {
  width: 50px !important; height: 50px !important; max-width: 50px !important;
}
.aura-header-brand .wp-block-site-logo img {
  width: 74px !important; height: 74px !important;
  max-width: 74px !important;
  object-fit: contain !important; display: block !important;
  transition: width 0.3s, height 0.3s !important;
}
.aura-header.scrolled .aura-header-brand .wp-block-site-logo img {
  width: 50px !important; height: 50px !important; max-width: 50px !important;
}
/* Hide site title text when logo image is present */
.aura-header-brand .wp-block-site-logo:has(img) ~ .aura-site-title-text,
.aura-header-brand .wp-block-site-logo:has(img) + .aura-site-title-text { display: none !important; }
.aura-site-title-text .wp-block-site-title a,
.aura-header .wp-block-site-title a {
  font-family: var(--display-font) !important;
  font-size: 1.38rem !important; font-weight: 400 !important;
  color: var(--charcoal) !important; text-decoration: none !important;
  letter-spacing: 0.02em !important; white-space: nowrap !important;
}

/* Nav — CENTRED via auto-margin trick (fills remaining space, centres content) */
.aura-nav-primary,
.aura-nav-desktop {
  display: flex !important;
  align-items: center !important;
  flex: 1 1 auto !important;                 /* grow to fill space */
  justify-content: center !important;        /* centre nav items in that space */
  min-width: 0 !important;
  overflow: visible !important;
}
.aura-nav-desktop .wp-block-navigation__container {
  display: flex !important;
  align-items: center !important;
  gap: 0 !important;
  flex-wrap: nowrap !important;
  justify-content: center !important;
}

/* Right zone — shrinks to content, never grows */
.aura-header-right {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  flex: 0 0 auto !important;
}

/* ──────────────────────────────────────────────────────────────
   2. NAV ITEMS — font, weight, hover underline, active state
──────────────────────────────────────────────────────────────── */
.aura-nav-primary .wp-block-navigation-item > .wp-block-navigation-item__content,
.aura-nav-desktop .wp-block-navigation-item > .wp-block-navigation-item__content {
  font-family: var(--body-font) !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  color: var(--charcoal) !important;
  text-decoration: none !important;
  padding: 6px 11px !important;
  letter-spacing: 0.01em !important;
  border: none !important; background: none !important;
  box-shadow: none !important; border-radius: 0 !important;
  outline: none !important; position: relative !important;
  transition: color 0.18s !important;
  white-space: nowrap !important;
  display: inline-flex !important;
  align-items: center !important; gap: 4px !important;
}
/* Gold underline slide */
.aura-nav-primary .wp-block-navigation-item > .wp-block-navigation-item__content::after,
.aura-nav-desktop .wp-block-navigation-item > .wp-block-navigation-item__content::after {
  content: '' !important;
  position: absolute !important;
  bottom: 0 !important; left: 10px !important; right: 10px !important;
  height: 2px !important; background: var(--gold) !important;
  transform: scaleX(0) !important; transform-origin: left !important;
  transition: transform 0.22s ease !important;
}
.aura-nav-primary .wp-block-navigation-item:hover > .wp-block-navigation-item__content,
.aura-nav-desktop .wp-block-navigation-item:hover > .wp-block-navigation-item__content { color: var(--gold) !important; background: none !important; }
.aura-nav-primary .wp-block-navigation-item:hover > .wp-block-navigation-item__content::after,
.aura-nav-desktop .wp-block-navigation-item:hover > .wp-block-navigation-item__content::after { transform: scaleX(1) !important; }
/* Active — matches hover exactly (gold colour + underline) */
.aura-nav-primary .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content,
.aura-nav-desktop .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content,
.aura-nav-primary .wp-block-navigation-item[aria-current="page"] > .wp-block-navigation-item__content,
.aura-nav-desktop .wp-block-navigation-item[aria-current="page"] > .wp-block-navigation-item__content,
.aura-nav-primary .wp-block-navigation-item.current-menu-ancestor > .wp-block-navigation-item__content,
.aura-nav-desktop .wp-block-navigation-item.current-menu-ancestor > .wp-block-navigation-item__content { color: var(--gold) !important; background: none !important; }
.aura-nav-primary .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content::after,
.aura-nav-desktop .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content::after,
.aura-nav-primary .wp-block-navigation-item[aria-current="page"] > .wp-block-navigation-item__content::after,
.aura-nav-desktop .wp-block-navigation-item[aria-current="page"] > .wp-block-navigation-item__content::after,
.aura-nav-primary .wp-block-navigation-item.current-menu-ancestor > .wp-block-navigation-item__content::after,
.aura-nav-desktop .wp-block-navigation-item.current-menu-ancestor > .wp-block-navigation-item__content::after { transform: scaleX(1) !important; }

/* WP submenu arrow on Treatments nav item — hide (our mega menu has its own) */
.aura-nav-treatments > .wp-block-navigation-item__content .wp-block-navigation-submenu__toggle { display: none !important; }
/* FULLY HIDE everything WP generates for Treatments submenu — we use aura-mega-menu instead */
.aura-nav-treatments .wp-block-navigation-submenu__container { display: none !important; }
/* Hide the ghost label text that WP injects above the submenu dropdown */
.aura-nav-treatments .wp-block-navigation__submenu-icon { display: none !important; }
.aura-nav-treatments .wp-block-navigation-item__content[aria-expanded],
.aura-nav-treatments button.wp-block-navigation-item__content { 
  pointer-events: none !important;
}
/* Catch-all: any stray WP dropdown labels near Treatments */
.aura-nav-treatments + .wp-block-navigation-submenu__container,
.aura-nav-desktop .wp-block-navigation-submenu .wp-block-navigation-submenu__container li:first-child:not(.aura-mega-item) { 
  display: none !important; 
}

/* Standard Home submenu dropdown (non-mega) */
.aura-nav-home .wp-block-navigation-submenu__container {
  display: block !important;
  position: absolute !important;
  top: calc(100% + 6px) !important;
  left: 0 !important;
  min-width: 240px !important;
  background: #fff !important;
  border-top: 2px solid var(--gold) !important;
  border-radius: 0 !important;
  box-shadow: 0 8px 32px rgba(44,40,37,0.12) !important;
  padding: 6px 0 8px !important;
  z-index: 9975 !important;
  opacity: 0 !important; pointer-events: none !important;
  transition: opacity 0.18s, transform 0.18s !important;
  transform: translateY(-4px) !important;
}
.aura-nav-home:hover .wp-block-navigation-submenu__container,
.aura-nav-home:focus-within .wp-block-navigation-submenu__container {
  opacity: 1 !important; pointer-events: all !important; transform: translateY(0) !important;
}
.aura-nav-home .wp-block-navigation-submenu__container .wp-block-navigation-item__content {
  font-size: 13px !important; padding: 10px 20px !important;
  display: block !important; white-space: nowrap !important;
  border-left: 2px solid transparent !important;
  border-bottom: none !important; color: var(--charcoal) !important;
  background: none !important;
}
.aura-nav-home .wp-block-navigation-submenu__container .wp-block-navigation-item:hover > .wp-block-navigation-item__content {
  background: var(--cream-dark) !important; border-left-color: var(--gold) !important; color: var(--gold) !important;
}

/* Social icons in header */
.aura-header-social { display: flex; align-items: center; gap: 8px; }
.aura-social-link {
  display: inline-flex !important;
  align-items: center !important; justify-content: center !important;
  width: 34px !important; height: 34px !important;
  color: var(--text-muted) !important;
  border: 1px solid rgba(139,115,85,0.2) !important;
  border-radius: 50% !important; text-decoration: none !important;
  transition: color 0.18s, border-color 0.18s, background 0.18s !important;
}
.aura-social-link:hover { color: var(--gold) !important; border-color: var(--gold) !important; background: rgba(139,115,85,0.06) !important; }
.aura-social-link svg { display: block; width: 18px !important; height: 18px !important; }
@media (max-width: 960px) { .aura-header-social { display: none !important; } }

/* Book Now button */
.aura-nav-cta .wp-block-button__link { padding: 10px 20px !important; font-size: 13px !important; font-weight: 600 !important; white-space: nowrap !important; }

/* ──────────────────────────────────────────────────────────────
   3. CUSTOM MEGA MENU — opens DOWNWARD from header bottom
      Triggered by JS when hovering/clicking "Treatments" nav item
      z-index: 9980 (below header at 9990, above all page content)
──────────────────────────────────────────────────────────────── */
.aura-mega-menu {
  position: fixed !important;
  top: var(--header-h, 72px) !important;     /* sits flush below header */
  left: 0 !important; right: 0 !important;
  width: 100vw !important;
  background: #fff !important;
  border-top: 2px solid var(--gold) !important;
  box-shadow: 0 20px 60px rgba(44,40,37,0.14) !important;
  z-index: 9980 !important;
  /* Hidden state */
  opacity: 0 !important;
  pointer-events: none !important;
  transform: translateY(-8px) !important;
  transition: opacity 0.22s ease, transform 0.22s ease !important;
  will-change: opacity, transform;
}
.aura-mega-menu.is-open {
  opacity: 1 !important;
  pointer-events: all !important;
  transform: translateY(0) !important;
}

.aura-mega-inner {
  max-width: 1280px !important;
  margin: 0 auto !important;
  padding: 0 clamp(24px, 5vw, 72px) !important;
}

/* Top label strip */
.aura-mega-label {
  font-family: var(--body-font) !important;
  font-size: 10px !important; font-weight: 700 !important;
  letter-spacing: 0.22em !important; text-transform: uppercase !important;
  color: var(--gold) !important;
  padding: 14px 0 12px !important;
  border-bottom: 1px solid rgba(139,115,85,0.1) !important;
}

/* 4-column grid of treatment cards */
.aura-mega-grid {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 0 !important;
  padding: 6px 0 !important;
}

.aura-mega-item {
  display: flex !important;
  align-items: flex-start !important;
  gap: 14px !important;
  padding: 16px 20px 16px 0 !important;
  text-decoration: none !important;
  border-bottom: 2px solid transparent !important;
  transition: background 0.15s, border-color 0.15s !important;
  border-radius: 0 !important;
  position: relative !important;
}
.aura-mega-item:hover {
  background: rgba(250,248,244,0.8) !important;
  border-bottom-color: var(--gold) !important;
}
.aura-mega-item--highlight .aura-mega-icon { background: var(--gold) !important; }
.aura-mega-item--highlight .aura-mega-icon svg { stroke: #fff !important; }

.aura-mega-icon {
  width: 42px !important; height: 42px !important;
  flex-shrink: 0 !important;
  background: rgba(139,115,85,0.08) !important;
  border-radius: 8px !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  transition: background 0.15s !important;
  margin-top: 2px !important;
}
.aura-mega-item:hover .aura-mega-icon { background: rgba(139,115,85,0.14) !important; }
.aura-mega-icon svg { stroke: var(--gold) !important; flex-shrink: 0 !important; }

.aura-mega-text {
  display: flex !important; flex-direction: column !important; gap: 3px !important;
  min-width: 0 !important;
}
.aura-mega-title {
  font-family: var(--body-font) !important;
  font-size: 15px !important; font-weight: 600 !important;
  color: var(--charcoal) !important; line-height: 1.3 !important;
  transition: color 0.15s !important;
}
.aura-mega-item:hover .aura-mega-title { color: var(--gold) !important; }
.aura-mega-desc {
  font-family: var(--body-font) !important;
  font-size: 12px !important; font-weight: 300 !important;
  color: var(--text-muted) !important; line-height: 1.45 !important;
}

/* Footer bar */
.aura-mega-footer {
  display: flex !important; align-items: center !important;
  justify-content: space-between !important;
  padding: 14px 0 16px !important;
  border-top: 1px solid rgba(139,115,85,0.1) !important;
  margin-top: 4px !important;
}
.aura-mega-all-link {
  font-family: var(--body-font) !important;
  font-size: 12.5px !important; font-weight: 500 !important;
  color: var(--gold) !important; text-decoration: none !important;
  transition: color 0.15s !important;
}
.aura-mega-all-link:hover { color: var(--charcoal) !important; }
.aura-mega-cta-btn {
  display: inline-flex !important; align-items: center !important;
  padding: 10px 24px !important;
  background: var(--gold) !important; color: #fff !important;
  font-family: var(--body-font) !important;
  font-size: 12px !important; font-weight: 700 !important;
  letter-spacing: 0.1em !important; text-transform: uppercase !important;
  text-decoration: none !important; border-radius: 20px !important;
  transition: background 0.18s, transform 0.15s !important;
}
.aura-mega-cta-btn:hover { background: var(--charcoal) !important; transform: translateY(-1px) !important; }

/* ──────────────────────────────────────────────────────────────
   4. HAMBURGER — visible mobile only (+10% larger)
──────────────────────────────────────────────────────────────── */
.aura-hamburger-btn {
  display: none;
  flex-direction: column; justify-content: center; align-items: center; gap: 5px;
  width: 44px; height: 44px; /* +10% from 40px */
  background: none; border: none; cursor: pointer; padding: 0;
  flex-shrink: 0; border-radius: 4px; transition: background 0.15s;
}
.aura-hamburger-btn:hover { background: rgba(139,115,85,0.08); }
.aura-ham-bar {
  display: block; width: 24px; height: 2px; /* +10% from 22px */
  background: var(--charcoal); border-radius: 2px;
  transition: transform 0.26s ease, opacity 0.2s ease;
}
.aura-hamburger-btn.is-open .aura-ham-bar:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.aura-hamburger-btn.is-open .aura-ham-bar:nth-child(2) { opacity: 0; transform: scaleX(0); }
.aura-hamburger-btn.is-open .aura-ham-bar:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

/* ──────────────────────────────────────────────────────────────
   5. MOBILE DRAWER — z-index 999999, ABOVE header + hero images
──────────────────────────────────────────────────────────────── */
.aura-mobile-drawer {
  position: fixed !important;
  inset: 0 !important;
  z-index: 999999 !important;          /* above everything */
  pointer-events: none !important;
  visibility: hidden !important;
}
.aura-mobile-drawer.is-open {
  pointer-events: all !important;
  visibility: visible !important;
}
/* Backdrop */
.aura-drawer-overlay {
  position: absolute !important; inset: 0 !important;
  background: rgba(20,16,12,0.6) !important;
  backdrop-filter: blur(3px) !important; -webkit-backdrop-filter: blur(3px) !important;
  opacity: 0 !important; transition: opacity 0.3s ease !important; z-index: 0 !important;
}
.aura-mobile-drawer.is-open .aura-drawer-overlay { opacity: 1 !important; }
/* Panel — slides from LEFT */
.aura-drawer-panel {
  position: absolute !important;
  top: 0 !important; left: 0 !important; bottom: 0 !important;
  width: min(300px, 85vw) !important;
  background: #fff !important;
  transform: translateX(-100%) !important;
  transition: transform 0.32s cubic-bezier(0.16, 1, 0.3, 1) !important;
  display: flex !important; flex-direction: column !important;
  overflow: hidden !important; z-index: 1 !important;
  box-shadow: 8px 0 40px rgba(0,0,0,0.18) !important;
}
.aura-drawer-panel::before {
  content: '' !important; display: block !important; height: 3px !important;
  flex-shrink: 0 !important;
  background: linear-gradient(90deg, var(--gold), var(--gold-pale)) !important;
}
.aura-mobile-drawer.is-open .aura-drawer-panel { transform: translateX(0) !important; }
/* Drawer header */
.aura-drawer-header {
  display: flex !important; align-items: center !important;
  justify-content: space-between !important;
  padding: 10px 18px 14px !important; /* asymmetric: less top, more bottom = logo sits lower */
  border-bottom: 1px solid rgba(139,115,85,0.1) !important;
  flex-shrink: 0 !important;
}
/* Logo link wrapper — nudge down 3px so it sits centred in the bar visually */
.aura-drawer-logo-link {
  display: flex !important; align-items: center !important;
  text-decoration: none !important; flex-shrink: 0 !important;
  margin-top: 4px !important; /* subtle downward nudge */
}
/* Site logo image in drawer — 10% bigger than before */
.aura-drawer-logo-link .wp-block-site-logo,
.aura-drawer-logo-link .aura-drawer-logo { display: block !important; }
.aura-drawer-logo-link .wp-block-site-logo img,
.aura-drawer-logo-link .aura-drawer-logo img {
  width: 52px !important; height: 52px !important;
  object-fit: contain !important; display: block !important;
}
/* Drawer brand fallback text — hidden (element removed from header.html) */
.aura-drawer-brand-fallback { display: none !important; }
.aura-drawer-close {
  background: none !important; border: none !important;
  width: 36px !important; height: 36px !important; /* +10% from 32px */
  display: flex !important; align-items: center !important; justify-content: center !important;
  cursor: pointer !important; font-size: 18px !important; /* +10% from 16px */
  color: var(--text-muted) !important;
  transition: color 0.2s, transform 0.2s !important; border-radius: 4px !important;
}
.aura-drawer-close:hover { color: var(--charcoal) !important; transform: rotate(90deg) !important; background: rgba(139,115,85,0.06) !important; }
/* Nav list */
.aura-drawer-nav {
  list-style: none !important; margin: 0 !important; padding: 4px 0 !important;
  flex: 1 !important; overflow-y: auto !important;
}
.aura-drawer-nav > li > a {
  display: flex !important; align-items: center !important; justify-content: space-between !important;
  padding: 13px 20px !important;
  font-family: var(--body-font) !important; font-size: 15px !important; font-weight: 600 !important;
  color: var(--charcoal) !important; text-decoration: none !important;
  border-left: 3px solid transparent !important;
  transition: background 0.14s, border-color 0.14s, color 0.14s !important;
}
.aura-drawer-nav > li > a:hover,
.aura-drawer-nav > li.open > a {
  background: var(--cream-dark) !important;
  border-left-color: var(--gold) !important; color: var(--gold) !important;
}
.aura-drawer-nav .has-submenu > a::after {
  content: "+" !important; font-size: 16px !important; font-weight: 300 !important;
  line-height: 1 !important; color: var(--text-muted) !important;
  transition: transform 0.2s !important; margin-left: auto !important;
}
.aura-drawer-nav .has-submenu.open > a::after { content: "−" !important; }
/* CTA item inside nav list — sits right below last nav link */
.aura-drawer-cta-item {
  padding: 20px 20px 8px !important;
  list-style: none !important;
}
/* Override any inherited nav link styles on the CTA anchor */
.aura-drawer-cta-item a.aura-drawer-cta,
.aura-drawer-nav .aura-drawer-cta-item a.aura-drawer-cta {
  border-left: none !important;
  display: block !important;
  margin: 0 !important;
}
/* Drawer submenu */
.aura-drawer-sub {
  list-style: none !important; margin: 0 !important; padding: 0 !important;
  max-height: 0 !important; overflow: hidden !important;
  transition: max-height 0.28s ease !important; background: var(--cream) !important;
}
.aura-drawer-nav .has-submenu.open .aura-drawer-sub { max-height: 500px !important; }
.aura-drawer-sub a {
  display: block !important; padding: 10px 20px 10px 32px !important;
  font-family: var(--body-font) !important; font-size: 14px !important; font-weight: 400 !important;
  color: var(--charcoal-mid) !important; text-decoration: none !important;
  transition: color 0.14s, padding-left 0.14s !important;
  border-left: 2px solid transparent !important;
}
.aura-drawer-sub a:hover { color: var(--gold) !important; padding-left: 36px !important; border-left-color: var(--gold) !important; }
/* CTA button — gold pill, full width, rounded */
.aura-drawer-cta,
.aura-drawer-nav a.aura-drawer-cta,
.aura-drawer-cta-item a.aura-drawer-cta {
  display: block !important; width: 100% !important;
  padding: 15px 20px !important;
  background: var(--gold, #8B7355) !important;
  color: #fff !important;
  text-align: center !important;
  font-family: var(--body-font,'Inter'),sans-serif !important;
  font-size: 13px !important; font-weight: 700 !important;
  letter-spacing: 0.12em !important; text-transform: uppercase !important;
  text-decoration: none !important;
  border-radius: 24px !important;
  border-left: none !important;
  transition: background 0.2s, transform 0.15s !important;
  box-sizing: border-box !important;
  margin-top: 0 !important;
}
.aura-drawer-cta:hover,
.aura-drawer-nav a.aura-drawer-cta:hover {
  background: var(--charcoal, #2C2825) !important;
  color: #fff !important;
  transform: translateY(-1px) !important;
  border-left: none !important;
}
/* Hide the old footer (no longer in the HTML but belt-and-braces) */
.aura-drawer-footer { display: none !important; }

/* ──────────────────────────────────────────────────────────────
   6. HOMEPAGE V2 — handled in style.css (aura-hero-v2, aura-v2-*)
   Mobile overrides only here.
──────────────────────────────────────────────────────────────── */
/* Any remaining WP cover block fallback for V2 photo */
.aura-hero-v2 .wp-block-cover.aura-hero-v2-photo { min-height: 100% !important; height: 100% !important; }
.aura-hero-v2 .wp-block-cover.aura-hero-v2-photo .wp-block-cover__image-background {
  position: absolute !important; inset: 0 !important;
  width: 100% !important; height: 100% !important; object-fit: cover !important;
}

/* ──────────────────────────────────────────────────────────────
   7. TREATMENT SINGLE / PRICELIST / CONTACT PAGE
──────────────────────────────────────────────────────────────── */
.aura-page-hero { position: relative; }
.aura-page-hero::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0;
  height: 4px; z-index: 2;
  background: linear-gradient(90deg, var(--gold), var(--gold-pale));
}
.aura-treatment-sidebar {
  position: sticky !important;
  top: calc(var(--header-h, 72px) + 24px) !important;
  border-top: 3px solid var(--gold) !important;
}
.ats-book-strip { background: var(--charcoal); padding: 24px 28px; display: flex; flex-direction: column; gap: 12px; }
.ats-book-label { font-size: 11px; font-weight: 600; letter-spacing: 0.18em; text-transform: uppercase; color: rgba(255,255,255,0.5); }
.ats-book-btn { display: block; width: 100%; padding: 14px 20px; background: var(--gold); color: #fff !important; text-align: center; font-size: 13px !important; font-weight: 700 !important; letter-spacing: 0.12em !important; text-transform: uppercase !important; text-decoration: none !important; border-radius: 0; transition: background 0.2s; box-sizing: border-box; }
.ats-book-btn:hover { background: var(--gold-light) !important; }
.ats-meta-panel { padding: 24px 28px 0; }
.ats-meta-header { font-size: 11px; font-weight: 700; letter-spacing: 0.2em; text-transform: uppercase; color: var(--text-muted); margin-bottom: 14px; padding-bottom: 10px; border-bottom: 1px solid rgba(139,115,85,0.15); }
.ats-meta-grid { display: flex; flex-direction: column; }
.ats-meta-row { display: flex; justify-content: space-between; align-items: center; padding: 11px 0; border-bottom: 1px solid rgba(139,115,85,0.1); }
.ats-meta-row:last-child { border-bottom: none; }
.ats-meta-label { font-size: 12px !important; font-weight: 500 !important; color: var(--text-muted) !important; letter-spacing: 0.06em; }
.ats-meta-val { font-family: var(--display-font) !important; font-size: 1.05rem !important; font-weight: 400 !important; color: var(--gold) !important; }
.ats-meta-row:has(.ats-meta-val:empty) { display: none; }
.ats-price-link { padding: 12px 28px 20px; }
.ats-price-link a { font-size: 13px !important; font-weight: 500 !important; color: var(--gold) !important; text-decoration: none !important; }
.ats-price-link a:hover { color: var(--charcoal) !important; }
.ats-badges { padding: 16px 28px 24px; display: flex; flex-wrap: wrap; gap: 6px; border-top: 1px solid rgba(139,115,85,0.12); }
.ats-badge { font-size: 10px !important; font-weight: 600 !important; letter-spacing: 0.1em !important; text-transform: uppercase !important; color: var(--text-muted) !important; background: rgba(139,115,85,0.08) !important; border: 1px solid rgba(139,115,85,0.18) !important; padding: 4px 10px !important; border-radius: 20px !important; }
.aura-treatment-hero-meta { display: inline-flex; align-items: center; gap: 0; margin-top: 28px; background: rgba(0,0,0,0.28); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); border: 1px solid rgba(255,255,255,0.1); border-radius: 0; }
.aura-thm-item { display: flex; flex-direction: column; padding: 14px 24px; gap: 3px; }
.thm-label { font-size: 10px !important; font-weight: 600 !important; letter-spacing: 0.18em !important; text-transform: uppercase !important; color: rgba(255,255,255,0.5) !important; }
.thm-value { font-family: var(--display-font) !important; font-size: 1.1rem !important; font-weight: 300 !important; color: var(--gold-pale) !important; }
.aura-thm-sep { width: 1px; background: rgba(255,255,255,0.1); align-self: stretch; }

/* ──────────────────────────────────────────────────────────────
   8. PRICELIST
──────────────────────────────────────────────────────────────── */
.aura-price-cat-header { padding: 0 0 16px !important; border-bottom: none !important; }
/* Bespoke packages special header — centered h2 in gold */
.aura-price-cat-header[style*="text-align:center"] {
  flex-direction: column !important;
  align-items: center !important;
  padding-bottom: 28px !important;
  border-bottom: none !important;
  gap: 8px !important;
}
.aura-price-cat-header[style*="text-align:center"] h2 {
  font-family: var(--display-font,'Cormorant Garamond'),serif !important;
  font-size: clamp(1.8rem, 3vw, 2.4rem) !important;
  font-weight: 300 !important; color: #8B7355 !important;
  margin: 0 !important; text-align: center !important;
  border-bottom: none !important;
}
.aura-price-cat-header[style*="text-align:center"] span {
  font-size: 10px !important; font-weight: 700 !important;
  letter-spacing: 0.18em !important; text-transform: uppercase !important;
  color: rgba(139,115,85,0.55) !important;
}
.aura-pch-title {
  display: flex !important; align-items: center !important;
  gap: 14px !important; padding-bottom: 14px !important;
  border-bottom: 2px solid rgba(139,115,85,0.15) !important; margin-bottom: 0 !important;
}
.aura-pch-title h3 {
  font-family: var(--display-font) !important; font-size: 1.3rem !important;
  font-weight: 600 !important; color: var(--charcoal) !important;
  margin: 0 !important; padding: 0 !important; border: none !important;
}
.aura-pch-badge {
  font-family: var(--body-font) !important; font-size: 10px !important;
  font-weight: 700 !important; letter-spacing: 0.14em !important;
  text-transform: uppercase !important; color: var(--gold) !important;
  background: rgba(139,115,85,0.08) !important; border: 1px solid rgba(139,115,85,0.2) !important;
  padding: 3px 10px !important; border-radius: 20px !important;
  white-space: nowrap !important; flex-shrink: 0 !important;
}
.aura-price-rows { display: flex !important; flex-direction: column !important; }
.aura-price-category { margin-bottom: 0 !important; padding-bottom: 40px !important; }
.aura-price-row {
  display: flex !important; justify-content: space-between !important;
  align-items: center !important; gap: 24px !important;
  padding: 13px 0 !important; border-bottom: 1px solid rgba(139,115,85,0.1) !important;
}
.aura-price-row:last-child { border-bottom: none !important; }
.aura-price-row-name {
  font-family: var(--body-font) !important; font-size: 15px !important;
  font-weight: 600 !important; color: var(--charcoal) !important;
  flex: 1 !important; line-height: 1.4 !important;
  display: flex !important; flex-direction: column !important; gap: 2px !important;
}
.aura-price-row-desc { font-size: 12px !important; font-weight: 300 !important; color: var(--text-muted) !important; line-height: 1.4 !important; }
.aura-price-row-price { font-size: 15px !important; font-weight: 700 !important; color: var(--gold) !important; white-space: nowrap !important; flex-shrink: 0 !important; min-width: 80px !important; text-align: right !important; }

/* ──────────────────────────────────────────────────────────────
   9. CONTACT FORM
──────────────────────────────────────────────────────────────── */
.il-contact-form { width: 100% !important; }
.il-form-grid { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 16px !important; margin-bottom: 24px !important; }
.il-form-full { grid-column: 1 / -1 !important; }
.il-form-field label:not(.il-checkbox-label) { display: block !important; font-size: 11px !important; font-weight: 700 !important; letter-spacing: 0.14em !important; text-transform: uppercase !important; color: var(--text-muted) !important; margin-bottom: 7px !important; }
.il-required { color: var(--gold) !important; }
.il-contact-form input[type="text"], .il-contact-form input[type="email"], .il-contact-form input[type="tel"], .il-contact-form input[type="date"], .il-contact-form select, .il-contact-form textarea { width: 100% !important; font-size: 14px !important; font-weight: 300 !important; color: var(--charcoal) !important; background: var(--cream-dark) !important; border: 1px solid rgba(139,115,85,0.18) !important; border-radius: 0 !important; padding: 12px 14px !important; transition: border-color 0.18s, box-shadow 0.18s !important; outline: none !important; box-sizing: border-box !important; appearance: none !important; -webkit-appearance: none !important; }
.il-contact-form input:focus, .il-contact-form select:focus, .il-contact-form textarea:focus { border-color: var(--gold) !important; box-shadow: 0 0 0 3px rgba(139,115,85,0.1) !important; background: #fff !important; }
.il-contact-form select { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%238B7355' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") !important; background-repeat: no-repeat !important; background-position: right 14px center !important; padding-right: 36px !important; cursor: pointer !important; }
.il-contact-form textarea { resize: vertical !important; min-height: 110px !important; }
.il-checkbox-label { display: flex !important; align-items: flex-start !important; gap: 10px !important; cursor: pointer !important; font-size: 13px !important; font-weight: 300 !important; color: var(--text-muted) !important; line-height: 1.55 !important; }
.il-checkbox-label input[type="checkbox"] { width: 16px !important; height: 16px !important; flex-shrink: 0 !important; margin-top: 2px !important; accent-color: var(--gold) !important; }
.il-checkbox-label a { color: var(--gold) !important; }
.il-form-submit { display: inline-flex !important; align-items: center !important; gap: 10px !important; background: var(--charcoal) !important; color: #fff !important; border: none !important; padding: 15px 36px !important; font-size: 13px !important; font-weight: 600 !important; letter-spacing: 0.12em !important; text-transform: uppercase !important; cursor: pointer !important; border-radius: 0 !important; transition: background 0.2s, transform 0.15s !important; }
.il-form-submit:hover { background: var(--gold) !important; }
.il-form-submit:disabled { opacity: 0.6 !important; cursor: not-allowed !important; }
.il-submit-arrow { font-size: 16px !important; transition: transform 0.2s !important; }
.il-form-submit:hover .il-submit-arrow { transform: translateX(4px) !important; }
.il-form-message { margin-top: 16px !important; padding: 14px 18px !important; font-size: 14px !important; border-radius: 0 !important; border-left: 3px solid !important; }
.il-form-message.success { background: rgba(76,175,80,0.08) !important; border-left-color: #4caf50 !important; color: #2e7d32 !important; }
.il-form-message.error { background: rgba(239,83,80,0.08) !important; border-left-color: #ef5350 !important; color: #c62828 !important; }
.il-contact-info-card { background: var(--charcoal) !important; padding: 0 !important; position: sticky !important; top: calc(var(--header-h, 72px) + 24px) !important; }
.il-cic-header { padding: 20px 28px !important; font-size: 11px !important; font-weight: 700 !important; letter-spacing: 0.2em !important; text-transform: uppercase !important; color: rgba(255,255,255,0.35) !important; border-bottom: 1px solid rgba(255,255,255,0.07) !important; background: rgba(0,0,0,0.15) !important; }
.il-cic-block { padding: 20px 28px !important; border-bottom: 1px solid rgba(255,255,255,0.07) !important; }
.il-cic-block:last-child { border-bottom: none !important; }
.il-cic-label { display: block !important; font-size: 10px !important; font-weight: 700 !important; letter-spacing: 0.2em !important; text-transform: uppercase !important; color: var(--gold-pale) !important; margin-bottom: 8px !important; }
.il-cic-value { font-size: 14px !important; font-weight: 300 !important; color: rgba(255,255,255,0.82) !important; line-height: 1.65 !important; text-decoration: none !important; display: block !important; }
.il-cic-phone { font-size: 18px !important; font-weight: 400 !important; color: rgba(255,255,255,0.9) !important; }
.il-cic-email { color: var(--gold-pale) !important; }
.il-cic-link { display: inline-block !important; margin-top: 6px !important; font-size: 12px !important; font-weight: 500 !important; color: var(--gold-pale) !important; text-decoration: none !important; }
.il-cic-link:hover { color: #fff !important; }
.il-cic-hours { display: flex; flex-direction: column; }
.il-hour-row { display: flex !important; justify-content: space-between !important; align-items: center !important; padding: 8px 0 !important; border-bottom: 1px solid rgba(255,255,255,0.05) !important; font-size: 13px !important; font-weight: 300 !important; color: rgba(255,255,255,0.72) !important; }
.il-hour-row:last-child { border-bottom: none !important; }
.il-hour-row span:first-child { color: rgba(255,255,255,0.42) !important; font-size: 12px !important; }
.il-closed { color: rgba(255,255,255,0.3) !important; }
.il-cic-promise { display: flex; flex-direction: column; gap: 10px; }
.il-promise-item { display: flex !important; align-items: center !important; gap: 10px !important; font-size: 13px !important; font-weight: 300 !important; color: rgba(255,255,255,0.6) !important; }
.il-pi-icon { font-size: 14px; flex-shrink: 0; }

/* ──────────────────────────────────────────────────────────────
   10. FOOTER SEPARATOR
──────────────────────────────────────────────────────────────── */
.aura-footer-separator { height: 1px; background: rgba(139,115,85,0.15); margin: 0; display: block; }

/* ──────────────────────────────────────────────────────────────
   11. ADMIN SIDEBAR — no horizontal scroll
──────────────────────────────────────────────────────────────── */
html, body.wp-admin, #wpwrap, #wpbody, #wpcontent, #wpbody-content { overflow-x: hidden !important; max-width: 100% !important; box-sizing: border-box !important; }
#adminmenu, #adminmenuback, #adminmenuwrap { width: 160px !important; max-width: 160px !important; overflow: hidden !important; }
#wpcontent, #wpfooter { margin-left: 160px !important; }
#adminmenu a { font-size: 12px !important; white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; }
#adminmenu .wp-menu-name { font-size: 12px !important; line-height: 1.3 !important; max-width: 110px !important; overflow: hidden !important; text-overflow: ellipsis !important; }
.folded #adminmenu, .folded #adminmenuback, .folded #adminmenuwrap { width: 36px !important; max-width: 36px !important; }
.folded #wpcontent, .folded #wpfooter { margin-left: 36px !important; }

/* ──────────────────────────────────────────────────────────────
   12. PAGE OFFSET — push content below fixed header
──────────────────────────────────────────────────────────────── */
.wp-site-blocks { padding-top: var(--header-h, 72px) !important; }
/* V2 hero sits flush (the pattern handles its own top padding internally) */
.aura-hero-v2 { margin-top: 0 !important; }
/* Hero V1/V3 full-bg covers — also flush, offset handled by wp-site-blocks */


/* ──────────────────────────────────────────────────────────────
   V2 PHILOSOPHY SECTION — ensure proper horizontal padding/centering
──────────────────────────────────────────────────────────────── */
.aura-two-col-section {
  padding-left: clamp(24px, 5vw, 80px) !important;
  padding-right: clamp(24px, 5vw, 80px) !important;
}

/* ──────────────────────────────────────────────────────────────
   FAQ ACCORDION — interactive toggle, first item open by default
──────────────────────────────────────────────────────────────── */
.aura-faq-list { display: flex; flex-direction: column; gap: 0; }
.aura-faq-item {
  border-bottom: 1px solid rgba(139,115,85,0.15);
  overflow: hidden;
}
.aura-faq-item:first-child { border-top: 1px solid rgba(139,115,85,0.15); }
.aura-faq-question {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  padding: 18px 0 !important;
  font-family: var(--body-font) !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  color: var(--charcoal) !important;
  cursor: pointer !important;
  list-style: none !important;
  user-select: none !important;
  transition: color 0.18s !important;
}
.aura-faq-question:hover { color: var(--gold) !important; }
.aura-faq-question::after {
  content: '+' !important;
  font-size: 20px !important;
  font-weight: 300 !important;
  color: var(--gold) !important;
  flex-shrink: 0 !important;
  transition: transform 0.25s ease !important;
  width: 24px !important; text-align: center !important;
  line-height: 1 !important;
}
.aura-faq-item.is-open .aura-faq-question::after {
  content: '−' !important;
  transform: none !important;
}
.aura-faq-item.is-open .aura-faq-question { color: var(--gold) !important; }
.aura-faq-answer {
  font-family: var(--body-font) !important;
  font-size: 14.5px !important;
  font-weight: 300 !important;
  color: var(--text-muted) !important;
  line-height: 1.8 !important;
  max-height: 0 !important;
  overflow: hidden !important;
  transition: max-height 0.35s ease, padding 0.25s ease !important;
  padding: 0 48px 0 0 !important;
}
.aura-faq-item.is-open .aura-faq-answer {
  max-height: 600px !important;
  padding: 0 48px 20px 0 !important;
}

/* ──────────────────────────────────────────────────────────────
   13. RESPONSIVE BREAKPOINTS
──────────────────────────────────────────────────────────────── */

/* ── TABLET 1024px ── */
@media (max-width: 1024px) {
  :root { --header-h: 68px; }
  .wp-site-blocks { padding-top: 68px !important; }
  .aura-nav-primary .wp-block-navigation-item > .wp-block-navigation-item__content { font-size: 12.5px !important; padding: 5px 8px !important; }
  .aura-mega-grid { grid-template-columns: repeat(2, 1fr) !important; }
  .aura-two-col-section .wp-block-columns { flex-direction: column !important; }
  .aura-two-col-section { padding-left: clamp(24px,5vw,80px) !important; padding-right: clamp(24px,5vw,80px) !important; }
  .aura-two-col-section .wp-block-column { flex-basis: 100% !important; width: 100% !important; }
  .aura-treatments-grid { grid-template-columns: repeat(2, 1fr) !important; }
  .aura-stats-row { grid-template-columns: repeat(2, 1fr) !important; }
  .aura-process-steps { grid-template-columns: repeat(2, 1fr) !important; }
  .aura-values-grid { grid-template-columns: repeat(2, 1fr) !important; }
  .aura-split-cta { grid-template-columns: 1fr !important; }

  /* Fix 3 — Footer: 2-col side by side on tablet, 3rd col centred below */
  .aura-footer .wp-block-columns {
    flex-direction: row !important;
    flex-wrap: wrap !important;
  }
  .aura-footer .wp-block-column {
    flex-basis: calc(50% - 16px) !important;
    min-width: 160px !important;
    padding-bottom: 24px !important;
  }
  .aura-footer .wp-block-column:last-child:nth-child(odd) {
    flex-basis: 100% !important;
    text-align: center !important;
  }
  .aura-footer .wp-block-column:last-child:nth-child(odd) ul,
  .aura-footer .wp-block-column:last-child:nth-child(odd) p { margin-left: auto !important; margin-right: auto !important; }

  /* Fix 4 — Hero: remove excess top/bottom whitespace on tablet */
  .wp-block-cover.aura-hero-fullbg,
  .wp-block-cover.aura-hero-v3 {
    min-height: 80vh !important;
    padding-top: calc(var(--header-h, 68px) + 40px) !important;
    padding-bottom: 48px !important;
  }
  /* V2 hero tablet — fix hero height squeezing */
  .aura-hero-v2 {
    min-height: calc(100vh - var(--header-h, 68px)) !important;
    padding-top: 0 !important;
  }
  /* Fix: Add 15px breathing room between header and V2 hero on mobile */
  .aura-hero-v2-content {
    padding-top: calc(var(--header-h, 68px) + 15px) !important;
  }
  /* Trust strip: 2×2 grid on tablet */
  .aura-v3-trust-strip {
    flex-wrap: wrap !important;
    gap: 0 !important;
  }
  .aura-v3-trust-item {
    flex: 0 0 50% !important;
    padding: 16px 8px !important;
    border-bottom: 1px solid rgba(255,255,255,0.06) !important;
  }
  .aura-v3-trust-divider { display: none !important; }

  /* Fix 5 — Tablet content edge padding: prevent content hitting screen edge */
  .wp-block-group[style*="clamp(24px"],
  .wp-block-group[style*="clamp(40px"],
  .aura-about-intro,
  .aura-v2-philosophy,
  .aura-v3-treatments-section,
  .aura-v3-about-split .aura-v3-about-content,
  .aura-testimonials-inner {
    padding-left: clamp(24px, 4vw, 56px) !important;
    padding-right: clamp(24px, 4vw, 56px) !important;
  }

  /* Fix 6 — Reduce oversized section vertical margins on tablet */
  .wp-block-group[style*="var(--wp--preset--spacing--section)"],
  .wp-block-group[style*="var(--wp--preset--spacing--xl)"] {
    padding-top: clamp(44px, 6vw, 72px) !important;
    padding-bottom: clamp(44px, 6vw, 72px) !important;
  }
  /* V2/V3 specific large section gaps */
  .aura-v3-treatments-section { padding-top: 56px !important; padding-bottom: 56px !important; }
  .aura-v2-philosophy { padding-top: 48px !important; padding-bottom: 48px !important; }
  .aura-v3-about-split { min-height: 440px !important; }
}

/* ── HAMBURGER switches on at 900px ── */
@media (max-width: 900px) {

  /* Team grid — 2 cols on tablet */
  .aura-team-grid { grid-template-columns: repeat(2,1fr) !important; gap: 28px !important; }

  :root { --header-h: 64px; }
  .wp-site-blocks { padding-top: 64px !important; }
  .aura-nav-desktop { display: none !important; }
  .aura-hamburger-btn { display: flex !important; }
  .aura-header-social { display: none !important; }
  .aura-nav-cta { display: none !important; }
  /* Hide mega menu on mobile — drawer handles navigation */
  .aura-mega-menu { display: none !important; }
  /* V2 hero — mobile already handled in style.css */
  .wp-block-columns:not(.aura-keep-cols) { flex-direction: column !important; }
  .wp-block-column { flex-basis: 100% !important; min-width: 0 !important; }
}

/* ── MOBILE 640px ── */
@media (max-width: 640px) {
  :root { --header-h: 60px; }
  .wp-site-blocks { padding-top: 60px !important; }
  .aura-header { padding: 0 16px !important; height: 60px !important; min-height: 60px !important; }
  /* Approach / What We Offer sections */
  .aura-about-intro, .aura-about-intro .wp-block-group, .aura-about-intro .wp-block-columns { padding-left: 20px !important; padding-right: 20px !important; }
  .wp-block-group[style*="background:var(--wp--preset--color--cream-dark)"] > .wp-block-columns,
  .wp-block-group[class*="aura-"] > .wp-block-columns { padding-left: 20px !important; padding-right: 20px !important; box-sizing: border-box !important; }
  .wp-block-group[style*="clamp("], .wp-block-group[style*="var(--wp--preset--spacing--section)"] { padding-left: max(16px,4vw) !important; padding-right: max(16px,4vw) !important; }
  /* Process steps */
  .aura-process-steps { padding-left: 0 !important; padding-right: 0 !important; grid-template-columns: 1fr !important; }
  .aura-process-step { border-right: none !important; border-bottom: 1px solid rgba(139,115,85,0.1) !important; padding: 28px 20px !important; }
  /* Hero V1 */
  .aura-hero-fullbg, .wp-block-cover.aura-hero-fullbg { padding-left: 20px !important; padding-right: 20px !important; min-height: 78vh !important; }
  .aura-hero-fullbg h1, .wp-block-cover.aura-hero-fullbg h1 { font-size: clamp(2.1rem,8vw,2.8rem) !important; line-height: 1.08 !important; }
  /* Hero eyebrow visible */
  .wp-block-cover__inner-container .has-text-color[style*="gold-pale"] { color: var(--gold-pale) !important; opacity: 1 !important; }
  /* V2 hero — mobile handled in style.css */
  /* Grids */
  .aura-treatments-grid { grid-template-columns: 1fr !important; }
  .aura-stats-row { grid-template-columns: repeat(2, 1fr) !important; }
  .aura-instagram-placeholder-grid { grid-template-columns: repeat(2, 1fr) !important; }
  .aura-testimonials-grid, .aura-v3-testimonials { grid-template-columns: 1fr !important; }
  .aura-reviews-row { grid-template-columns: 1fr !important; }
  .aura-v3-treatment-grid { grid-template-columns: repeat(2, 1fr) !important; }
  .aura-values-grid { grid-template-columns: 1fr !important; }
  /* Footer — keep 2-col on mobile where space allows, stack at small sizes */
  .aura-footer .wp-block-columns { flex-direction: row !important; flex-wrap: wrap !important; }
  .aura-footer .wp-block-column { flex-basis: calc(50% - 12px) !important; min-width: 140px !important; padding-bottom: 20px !important; }
  .aura-footer .wp-block-column:last-child:nth-child(odd) { flex-basis: 100% !important; text-align: center !important; }
  .aura-footer-bar { flex-direction: column !important; text-align: center !important; gap: 6px !important; }
  /* Pricelist */
  .aura-price-row { flex-direction: column !important; gap: 4px !important; align-items: flex-start !important; }
  .aura-price-row-price { font-size: 16px !important; min-width: auto !important; }
  /* Contact */
  .il-form-grid { grid-template-columns: 1fr !important; }
  .il-contact-info-card { position: static !important; top: auto !important; }
  .il-cic-block { padding: 16px 20px !important; }
  /* Treatment sidebar */
  .aura-treatment-sidebar { position: static !important; top: auto !important; }
  .aura-thm-item { padding: 10px 14px !important; }
  .aura-treatment-hero-meta { flex-wrap: wrap !important; }
  /* Split CTA */
  .aura-split-cta { grid-template-columns: 1fr !important; }
  .aura-split-cta .wp-block-column:first-child { display: none !important; }
  /* Section padding */
  .wp-block-group[style*="var(--wp--preset--spacing--section)"] { padding-top: 52px !important; padding-bottom: 52px !important; }
}

/* ── SMALL 400px ── */
@media (max-width: 400px) {
  .aura-header { padding: 0 14px !important; }
  .aura-hero-fullbg h1 { font-size: 1.95rem !important; }
  .aura-v3-treatment-grid { grid-template-columns: 1fr !important; }
  .aura-treatments-grid { grid-template-columns: 1fr !important; }
}

/* ══════════════════════════════════════════════════════════════
   V2/V3 MOBILE & TABLET COMPREHENSIVE FIXES
   Ensures hamburger nav, correct spacing, stacked layouts
══════════════════════════════════════════════════════════════ */

/* ── Nav responsive rules: canonical definition in style.css + wp_head inline CSS.
   See: .aura-nav-desktop media query in style.css
   These duplicate rules are intentionally removed in v1.3.3. ── */

@media (max-width: 640px) {
  /* V2 hero text */
  .aura-hero-v2-title {
    font-size: clamp(2rem, 7.5vw, 2.8rem) !important;
    line-height: 1.1 !important;
  }
  .aura-hero-v2-body { font-size: 14.5px !important; }
  .aura-hero-v2-btns {
    flex-direction: column !important;
    gap: 10px !important;
  }
  .aura-btn-v2-primary,
  .aura-btn-v2-outline {
    text-align: center !important;
    width: 100% !important;
  }
  .aura-hero-v2-stats {
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 4px !important;
  }
  .aura-v2-stat { padding: 12px 6px !important; }
  .aura-v2-stat-num { font-size: 1.1rem !important; }
  .aura-v2-stat-label { font-size: 8.5px !important; }
  .aura-hero-v2-photo {
    height: 62vw !important;
    max-height: 280px !important;
  }

  /* V3 hero */
  .aura-hero-v3 h1,
  .wp-block-cover.aura-hero-v3 h1 {
    font-size: clamp(2rem, 7.5vw, 2.8rem) !important;
    line-height: 1.1 !important;
  }

  /* V3 trust strip — 2×2 */
  .aura-v3-trust-strip {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 0 !important;
  }
  .aura-v3-trust-divider { display: none !important; }
  .aura-v3-trust-item {
    border-bottom: 1px solid rgba(255,255,255,0.08) !important;
    padding: 12px 8px !important;
  }

  /* V2/V3 cards — 1 col on smallest screens */
  .aura-v3-cards-grid,
  .aura-v3-treatment-grid { grid-template-columns: repeat(2, 1fr) !important; }

  /* V3 testimonials — 1 col */
  .aura-v3-testimonials { grid-template-columns: 1fr !important; }
}

/* Old V2/V3 mobile blocks removed — consolidated above */

/* ══════════════════════════════════════════════════════════════
   v1.3.7 — COMPREHENSIVE V2/V3 MOBILE + CTA + TREATMENTS FIXES
   With viewport meta (width=device-width,initial-scale=1) now
   correctly set, these breakpoints fire on real mobile devices.
══════════════════════════════════════════════════════════════ */

/* ── V2 hero: full mobile reset at 900px and below */
@media (max-width: 900px) {
  .aura-hero-v2 {
    display: grid !important;
    grid-template-columns: 1fr !important;
    min-height: auto !important;
    padding-top: 0 !important;
  }
  .aura-hero-v2-panel { order: 1 !important; }
  .aura-hero-v2-photo {
    order: 2 !important;
    min-height: 300px !important;
    height: 42vw !important;
    max-height: 380px !important;
    width: 100% !important;
  }
  /* V2 photo -- contained variant */
  .aura-hero-v2-photo--contained {
    min-height: 280px !important;
    height: 40vw !important;
    max-height: 350px !important;
  }
  .aura-hero-v2-photo--contained img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }
  /* V2 content panel */
  .aura-hero-v2-content {
    padding: 72px 24px 40px !important;
  }
  .aura-hero-v2-stats {
    grid-template-columns: repeat(3, 1fr) !important;
    margin-bottom: 32px !important;
  }
  .aura-hero-v2-social { display: none !important; } /* hide in hero on mobile — in drawer */
}

/* ── V2 hero: small mobile (<640px) */
@media (max-width: 640px) {
  .aura-hero-v2-content { padding: 64px 18px 36px !important; }
  .aura-hero-v2-title {
    font-size: clamp(1.9rem, 8vw, 2.6rem) !important;
    line-height: 1.1 !important;
  }
  .aura-hero-v2-body {
    font-size: 0.9rem !important;
    line-height: 1.7 !important;
  }
  .aura-hero-v2-btns {
    flex-direction: column !important;
    gap: 10px !important;
    margin-bottom: 32px !important;
  }
  .aura-btn-v2-primary,
  .aura-btn-v2-outline {
    width: 100% !important;
    text-align: center !important;
    justify-content: center !important;
    display: flex !important;
    align-items: center !important;
  }
  .aura-hero-v2-photo,
  .aura-hero-v2-photo--contained {
    min-height: 220px !important;
    height: 60vw !important;
    max-height: 280px !important;
  }
  .aura-hero-v2-stats {
    gap: 0 !important;
  }
  .aura-v2-stat { padding: 10px 4px !important; }
  .aura-v2-stat-num { font-size: 1rem !important; }
  .aura-v2-stat-label { font-size: 8px !important; }
}

/* ── V2 philosophy / split sections: stack on mobile */
@media (max-width: 900px) {
  .aura-v2-phil-inner,
  .aura-v2-split { grid-template-columns: 1fr !important; gap: 0 !important; }
  .aura-v2-phil-img { max-height: 320px !important; overflow: hidden !important; }
  .aura-v2-phil-img img { width: 100% !important; height: 320px !important; object-fit: cover !important; }
  .aura-v2-phil-text { padding: 44px 24px !important; }
}

/* ── Split CTA: full mobile responsiveness */
@media (max-width: 768px) {
  .aura-split-cta {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }
  .aura-split-cta-img { display: none !important; } /* hide image on small screens */
  .aura-split-cta-dark {
    padding: 52px 24px !important;
    min-height: auto !important;
  }
}

/* ── Treatments grid: consistent 3-col→2-col→1-col responsive */
@media (max-width: 1024px) {
  .aura-treatments-grid.aura-treatments-grid--full {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}
@media (max-width: 600px) {
  .aura-treatments-grid.aura-treatments-grid--full {
    grid-template-columns: 1fr !important;
  }
}

/* ── Treatment card: match front-page card style on treatments page */
.aura-treatments-grid.aura-treatments-grid--full .aura-treatment-card {
  background: #fff !important;
  border-radius: 0 !important;
  overflow: hidden !important;
  transition: transform 0.22s ease, box-shadow 0.22s ease !important;
}
.aura-treatments-grid.aura-treatments-grid--full .aura-treatment-card:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 12px 40px rgba(44,40,37,0.1) !important;
}
.aura-treatments-grid.aura-treatments-grid--full .aura-treatment-card .card-image {
  aspect-ratio: 4/3 !important;
  overflow: hidden !important;
}
.aura-treatments-grid.aura-treatments-grid--full .aura-treatment-card .card-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  transition: transform 0.4s ease !important;
}
.aura-treatments-grid.aura-treatments-grid--full .aura-treatment-card:hover .card-image img {
  transform: scale(1.04) !important;
}

/* ── V2 hero: 15.6" laptop screens (1200-1500px) — keep 2-line title, buttons inline ── */
@media (min-width: 901px) and (max-width: 1500px) {
  .aura-hero-v2-title {
    font-size: clamp(2.2rem, 2.8vw, 3.4rem) !important;
    line-height: 1.12 !important;
  }
  .aura-hero-v2-content {
    padding: clamp(56px, 6vh, 90px) clamp(28px, 3.5vw, 56px) clamp(44px, 5vh, 72px) !important;
  }
  .aura-hero-v2-btns {
    flex-wrap: nowrap !important;
    gap: 10px !important;
    margin-bottom: 40px !important;
  }
}
