/*
Theme Name: AEH Neutral
Theme URI: https://academyeh.com/
Author: Academy of Energy Healers
Description: Custom clean, neutral WooCommerce-ready theme for the Academy of Energy Healers, based on the approved Concept #3 direction.
Version: 30.0.0
Text Domain: aeh-neutral
*/
:root{--ink:#2d312f;--muted:#6e736f;--paper:#fbfaf7;--white:#fff;--sage:#879586;--sage-dark:#5f6f63;--sand:#e8e2d7;--line:#dedbd2;--accent:#9a7b58;--max:1180px}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}.site-wrap{max-width:var(--max);margin:auto;padding:0 28px}.site-header{position:sticky;top:0;z-index:40;background:rgba(251,250,247,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(8px)}.header-inner{height:82px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{font-family:Georgia,serif;font-size:22px;letter-spacing:.02em}.main-nav ul{display:flex;gap:24px;list-style:none;margin:0;padding:0;align-items:center}.main-nav a{font-size:14px}.main-nav a:hover{color:var(--sage-dark)}.hero{padding:96px 0 84px;background:linear-gradient(135deg,#f7f3eb,#eff2ed)}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:12px;color:var(--sage-dark);font-weight:700}.hero h1{font-family:Georgia,serif;font-size:clamp(44px,6vw,74px);line-height:1.02;max-width:870px;margin:12px 0 22px;font-weight:500}.hero p{max-width:720px;font-size:19px;color:var(--muted)}.btn{display:inline-block;padding:13px 20px;border-radius:2px;background:var(--sage-dark);color:white;font-weight:700;font-size:14px;margin-right:10px}.btn.alt{background:transparent;color:var(--ink);border:1px solid var(--line)}section{padding:78px 0}.section-title{font-family:Georgia,serif;font-size:38px;font-weight:500;margin:0 0 12px}.section-intro{max-width:760px;color:var(--muted);margin-bottom:34px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{background:var(--white);border:1px solid var(--line);padding:28px;min-height:220px}.card h3{font-family:Georgia,serif;font-size:24px;margin:0 0 10px;font-weight:500}.card .meta{font-size:13px;color:var(--sage-dark);text-transform:uppercase;letter-spacing:.08em}.card p{color:var(--muted)}.split{display:grid;grid-template-columns:1fr 1fr;gap:28px}.panel{padding:42px;background:white;border:1px solid var(--line)}.panel.session{background:#f2f0eb}.callout{background:var(--sage-dark);color:white;padding:64px 0}.callout .section-title{color:white}.site-footer{padding:50px 0;border-top:1px solid var(--line);font-size:14px;color:var(--muted)}.page-hero{padding:64px 0 36px}.page-hero h1{font:500 52px/1.08 Georgia,serif;margin:0}.offering-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding-bottom:70px}.offering{background:white;border:1px solid var(--line);padding:24px}.offering h2{font:500 23px/1.2 Georgia,serif}.price{font-weight:700;margin-top:16px}.aeh-product-meta{padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:18px 0}.aeh-product-meta span{display:block;margin:5px 0}.menu-toggle{display:none;background:none;border:1px solid var(--line);padding:8px 10px}
@media(max-width:850px){.menu-toggle{display:block}.main-nav{display:none}.main-nav.open{display:block;position:absolute;top:82px;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--line);padding:18px 28px}.main-nav ul{display:block}.main-nav li{margin:10px 0}.grid,.offering-grid,.split{grid-template-columns:1fr}.hero{padding:68px 0}.site-wrap{padding:0 20px}}

.aeh-draft-badge{display:inline-block;margin-left:.4rem;padding:.15rem .45rem;border:1px solid #b9b4a8;border-radius:999px;font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;color:#6f6a61;background:#f5f2ea}

/* v2 offering image normalization */
.offering{padding:0;overflow:hidden;display:flex;flex-direction:column;min-width:0}.offering-image{display:block;aspect-ratio:3/2;background:#f1eee7;overflow:hidden}.offering-image img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}.offering-body{padding:22px 24px 24px;display:flex;flex-direction:column;flex:1}.offering-body .price{margin-top:auto;padding-top:12px}.single-product div.product .woocommerce-product-gallery__image img{width:100%;height:auto;object-fit:contain;background:#f8f6f1}.woocommerce ul.products li.product a img{aspect-ratio:3/2;object-fit:cover;width:100%;height:auto;background:#f1eee7}


/* v3 WooCommerce single-product layout polish */
.aeh-commerce-shell{padding:42px 0 72px}
.aeh-commerce-shell .site-wrap{max-width:1180px;margin:0 auto;padding-left:36px;padding-right:36px}
.aeh-commerce-shell .woocommerce-breadcrumb{margin:0 0 28px}
.single-product .product{width:100%;}
.single-product div.product .woocommerce-product-gallery,
.single-product div.product .summary{margin-bottom:34px}
.single-product div.product .woocommerce-tabs{clear:both;padding-top:8px}
.single-product div.product .woocommerce-tabs .panel{padding:28px 0;background:transparent;border:0}
.single-product div.product .woocommerce-tabs .panel h2:first-child{margin-top:0}
.single-product .widget-area,.single-product #sidebar{display:none!important}
@media(max-width:850px){.aeh-commerce-shell{padding:28px 0 54px}.aeh-commerce-shell .site-wrap{padding-left:20px;padding-right:20px}}


/* v4 homepage brand logo */
.home-logo-wrap{margin:0 0 28px;display:flex;justify-content:flex-start}
.home-logo{display:block;width:min(250px,42vw);height:auto;max-height:235px;object-fit:contain;object-position:left center}
@media(max-width:850px){.home-logo-wrap{margin-bottom:22px}.home-logo{width:min(210px,58vw);max-height:200px}}

/* v5 approved AEH desktop header and landing-page direction */
.brand-lockup{display:flex;align-items:center;gap:18px;min-width:0;flex:0 1 auto}
.brand-logo{width:92px;height:86px;object-fit:contain;object-position:center;display:block;filter:none;opacity:1}
.brand-name{font-family:Georgia,serif;font-size:28px;line-height:1.05;letter-spacing:.005em;white-space:nowrap;color:var(--ink)}
.header-inner{height:112px;gap:34px}
.main-nav{margin-left:auto}.main-nav ul{gap:22px}.main-nav a{font-size:14px}
.landing-hero{padding:0;background-repeat:no-repeat;background-size:100% auto;background-position:center center;min-height:400px;display:flex;align-items:center;background-color:#f4eee4}
.landing-hero-sessions{background-image:url('assets/sessions-hero.png');background-position:center center}
.landing-hero-trainings{background-image:url('assets/trainings-hero.png');background-position:center center}
.landing-hero-inner{width:100%}
.landing-hero h1{font-family:Georgia,serif;font-size:clamp(64px,7vw,108px);font-weight:500;line-height:.95;margin:0;color:#36281e;text-shadow:0 1px 0 rgba(255,255,255,.2)}
.landing-hero p{max-width:480px;font-size:19px;line-height:1.45;margin:26px 0 0;color:#3d3934}
.landing-intro{padding:34px 0 42px;text-align:center}.landing-intro p{font-family:Georgia,serif;font-size:21px;color:#5e574f;margin:0 auto;max-width:780px}
.aeh-draft-badge{display:none!important}
@media(max-width:1100px){.brand-logo{width:76px;height:72px}.brand-name{font-size:23px}.header-inner{height:96px;gap:20px}.main-nav ul{gap:15px}.main-nav a{font-size:13px}}
@media(max-width:850px){.header-inner{height:82px}.brand-logo{width:58px;height:56px}.brand-name{font-size:18px;white-space:normal;max-width:190px}.main-nav.open{top:82px}.landing-hero{min-height:250px;background-size:cover}.landing-hero-sessions,.landing-hero-trainings{background-position:center center}.landing-hero h1{font-size:58px}.landing-hero p{font-size:16px;max-width:330px}.landing-intro{padding:26px 0 34px}.landing-intro p{font-size:18px}}


/* v8 homepage message refinement */
.home .hero h1{max-width:980px;font-size:clamp(34px,4.4vw,58px);line-height:1.08;margin-bottom:28px}


/* v11 definitive visual corrections: cache-busted, true symbol logo, hero framing, home headline */
.home .hero h1{
  max-width:900px!important;
  font-size:clamp(32px,3.2vw,48px)!important;
  line-height:1.12!important;
  margin:12px 0 26px!important;
}
.home-logo{width:min(220px,36vw)!important;max-height:210px!important}
.brand-logo{width:96px!important;height:88px!important;object-fit:contain!important;filter:none!important;opacity:1!important}
.landing-hero{
  min-height:400px!important;
  background-repeat:no-repeat!important;
  background-color:#f3ecdf!important;
  overflow:hidden;
}
.landing-hero-sessions{
  background-image:url('assets/sessions-hero.png')!important;
  background-size:auto 130%!important;
  background-position:right bottom!important;
}
.landing-hero-trainings{
  background-image:url('assets/trainings-hero.png')!important;
  background-size:auto 130%!important;
  background-position:right bottom!important;
}
@media(max-width:1100px){
  .brand-logo{width:80px!important;height:74px!important}
  .landing-hero-sessions,.landing-hero-trainings{background-size:auto 120%!important}
}
@media(max-width:850px){
  .brand-logo{width:58px!important;height:56px!important}
  .home .hero h1{font-size:clamp(30px,8vw,42px)!important;line-height:1.12!important}
  .landing-hero{min-height:260px!important}
  .landing-hero-sessions,.landing-hero-trainings{background-size:cover!important;background-position:center center!important}
}


/* v12 approved brand + soft-gradient landing heroes */
.brand-logo{
  width:82px!important;
  height:82px!important;
  object-fit:contain!important;
  object-position:center!important;
  filter:none!important;
  opacity:1!important;
}
.home-logo{
  width:min(220px,36vw)!important;
  max-height:210px!important;
  object-fit:contain!important;
}
.landing-hero{
  position:relative!important;
  min-height:400px!important;
  display:flex!important;
  align-items:center!important;
  overflow:hidden!important;
  background-color:#f4eee4!important;
  background-repeat:no-repeat!important;
  background-position:right center!important;
  background-size:auto 100%!important;
}
.landing-hero-sessions{
  background-image:
    linear-gradient(90deg,#f4eee4 0%,rgba(244,238,228,.98) 24%,rgba(244,238,228,.82) 39%,rgba(244,238,228,.35) 55%,rgba(244,238,228,0) 70%),
    url('assets/sessions-hero.png')!important;
  background-size:100% 100%,auto 100%!important;
  background-position:left top,right center!important;
}
.landing-hero-trainings{
  background-image:
    linear-gradient(90deg,#f4eee4 0%,rgba(244,238,228,.98) 24%,rgba(244,238,228,.82) 39%,rgba(244,238,228,.35) 55%,rgba(244,238,228,0) 70%),
    url('assets/trainings-hero.png')!important;
  background-size:100% 100%,auto 100%!important;
  background-position:left top,right center!important;
}
.landing-hero-inner{position:relative!important;z-index:2!important}
.landing-hero h1{max-width:46%;text-shadow:none!important}
.landing-hero p{max-width:430px!important}
@media(max-width:1100px){
  .brand-logo{width:70px!important;height:70px!important}
  .landing-hero-sessions,.landing-hero-trainings{
    background-size:100% 100%,auto 100%!important;
    background-position:left top,right center!important;
  }
}
@media(max-width:850px){
  .brand-logo{width:54px!important;height:54px!important}
  .landing-hero{min-height:280px!important}
  .landing-hero-sessions,.landing-hero-trainings{
    background-size:100% 100%,cover!important;
    background-position:left top,center center!important;
  }
  .landing-hero h1{max-width:82%;font-size:54px!important}
}


/* v13 exact user-supplied symbol logo, preserve entire artwork */
.brand-lockup{overflow:visible!important}
.brand-logo{width:82px!important;height:82px!important;object-fit:contain!important;object-position:center center!important;overflow:visible!important;clip-path:none!important;border-radius:0!important}
@media(max-width:1100px){.brand-logo{width:72px!important;height:72px!important}}
@media(max-width:850px){.brand-logo{width:56px!important;height:56px!important}}


/* v15 true gradient hero treatment + corrected logo assets */
.brand-logo{
  width:72px!important;
  height:72px!important;
  object-fit:contain!important;
  object-position:center center!important;
}
.brand-name{font-size:26px!important}
.home-logo{
  width:min(260px,38vw)!important;
  max-height:240px!important;
  object-fit:contain!important;
  object-position:left center!important;
}
.landing-hero{
  position:relative!important;
  isolation:isolate!important;
  min-height:392px!important;
  display:flex!important;
  align-items:center!important;
  overflow:hidden!important;
  background-color:#f4eee4!important;
  background-repeat:no-repeat!important;
  background-size:cover!important;
}
.landing-hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(90deg,
    rgba(244,238,228,1) 0%,
    rgba(244,238,228,.98) 18%,
    rgba(244,238,228,.92) 34%,
    rgba(244,238,228,.70) 50%,
    rgba(244,238,228,.30) 63%,
    rgba(244,238,228,0) 74%);
}
.landing-hero-sessions{
  background-image:url('assets/sessions-hero.png')!important;
  background-position:right center!important;
}
.landing-hero-trainings{
  background-image:url('assets/trainings-hero.png')!important;
  background-position:right center!important;
}
.landing-hero-inner{
  position:relative!important;
  z-index:2!important;
}
.landing-hero h1{
  max-width:48%!important;
  margin:0!important;
  text-shadow:none!important;
}
.landing-hero p{
  max-width:420px!important;
  margin-top:22px!important;
}
@media(max-width:1100px){
  .brand-logo{width:64px!important;height:64px!important}
  .brand-name{font-size:23px!important}
  .landing-hero{min-height:360px!important}
  .landing-hero h1{max-width:55%!important;font-size:clamp(56px,7vw,90px)!important}
}
@media(max-width:850px){
  .brand-logo{width:54px!important;height:54px!important}
  .brand-name{font-size:18px!important}
  .home-logo{width:min(220px,52vw)!important;max-height:200px!important}
  .landing-hero{min-height:280px!important;background-position:center center!important}
  .landing-hero::before{
    background:linear-gradient(180deg,
      rgba(244,238,228,.92) 0%,
      rgba(244,238,228,.70) 38%,
      rgba(244,238,228,.18) 72%,
      rgba(244,238,228,0) 100%);
  }
  .landing-hero h1{max-width:82%!important;font-size:54px!important}
}


/* v17 locked brand roles + visible hero gradients */
.brand-logo{
  width:72px!important;
  height:72px!important;
  object-fit:contain!important;
  object-position:center!important;
  filter:none!important;
  opacity:1!important;
}
.home-logo{
  width:min(270px,40vw)!important;
  height:auto!important;
  max-height:260px!important;
  object-fit:contain!important;
  object-position:left center!important;
  filter:none!important;
  opacity:1!important;
}
.landing-hero{
  position:relative!important;
  isolation:isolate!important;
  min-height:392px!important;
  display:flex!important;
  align-items:center!important;
  overflow:hidden!important;
  background-color:#f4eee4!important;
  background-repeat:no-repeat!important;
  background-size:cover!important;
}
.landing-hero-sessions{
  background-image:url('assets/sessions-hero.png')!important;
  background-position:center center!important;
}
.landing-hero-trainings{
  background-image:url('assets/trainings-hero.png')!important;
  background-position:center center!important;
}
.landing-hero::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  pointer-events:none!important;
  background:linear-gradient(90deg,
    rgba(244,238,228,1) 0%,
    rgba(244,238,228,.99) 18%,
    rgba(244,238,228,.94) 31%,
    rgba(244,238,228,.78) 43%,
    rgba(244,238,228,.52) 54%,
    rgba(244,238,228,.24) 64%,
    rgba(244,238,228,0) 75%)!important;
}
.landing-hero-inner{
  position:relative!important;
  z-index:3!important;
}
.landing-hero h1{
  max-width:48%!important;
  text-shadow:none!important;
}
.landing-hero p{
  max-width:430px!important;
}
@media(max-width:850px){
  .brand-logo{width:54px!important;height:54px!important}
  .home-logo{width:min(230px,58vw)!important;max-height:220px!important}
  .landing-hero{min-height:280px!important;background-position:center center!important}
  .landing-hero::after{
    background:linear-gradient(180deg,
      rgba(244,238,228,.86) 0%,
      rgba(244,238,228,.62) 40%,
      rgba(244,238,228,.22) 72%,
      rgba(244,238,228,0) 100%)!important;
  }
  .landing-hero h1{max-width:84%!important}
}


/* v18 FINAL: unique logo files and genuine full-width hero fade */
.brand-logo{
  width:72px!important;
  height:72px!important;
  object-fit:contain!important;
  object-position:center!important;
  filter:none!important;
  opacity:1!important;
}
.home-logo{
  width:min(270px,40vw)!important;
  max-height:260px!important;
  height:auto!important;
  object-fit:contain!important;
  object-position:left center!important;
  filter:none!important;
  opacity:1!important;
}
.landing-hero{
  position:relative!important;
  isolation:isolate!important;
  min-height:400px!important;
  display:flex!important;
  align-items:center!important;
  overflow:hidden!important;
  background:#f4eee4!important;
  background-image:none!important;
}
.landing-hero::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  background-repeat:no-repeat!important;
  background-size:cover!important;
  background-position:center center!important;
}
.landing-hero-sessions::before{
  background-image:url('assets/sessions-hero-v18.jpg')!important;
}
.landing-hero-trainings::before{
  background-image:url('assets/trainings-hero-v18.jpg')!important;
}
.landing-hero::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  pointer-events:none!important;
  background:linear-gradient(90deg,
    #f4eee4 0%,
    rgba(244,238,228,.995) 17%,
    rgba(244,238,228,.96) 30%,
    rgba(244,238,228,.86) 42%,
    rgba(244,238,228,.68) 52%,
    rgba(244,238,228,.45) 61%,
    rgba(244,238,228,.22) 69%,
    rgba(244,238,228,.08) 76%,
    rgba(244,238,228,0) 84%)!important;
}
.landing-hero-inner{
  position:relative!important;
  z-index:2!important;
}
.landing-hero h1{
  max-width:48%!important;
  text-shadow:none!important;
}
.landing-hero p{max-width:430px!important}
@media(max-width:850px){
  .brand-logo{width:54px!important;height:54px!important}
  .home-logo{width:min(230px,58vw)!important;max-height:220px!important}
  .landing-hero{min-height:280px!important}
  .landing-hero::before{background-position:center center!important}
  .landing-hero::after{
    background:linear-gradient(180deg,
      rgba(244,238,228,.82) 0%,
      rgba(244,238,228,.52) 42%,
      rgba(244,238,228,.18) 72%,
      rgba(244,238,228,0) 100%)!important;
  }
  .landing-hero h1{max-width:84%!important}
}


/* v19: preserve full 1600x420 Sessions/Trainings hero image on desktop */
@media(min-width:851px){
  .landing-hero{
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:1600 / 420!important;
  }
  .landing-hero::before{
    background-size:100% auto!important;
    background-position:center center!important;
  }
  .landing-hero-sessions::before,
  .landing-hero-trainings::before{
    background-size:100% auto!important;
    background-position:center center!important;
  }
}
@media(max-width:850px){
  .landing-hero{
    aspect-ratio:auto!important;
    min-height:420px!important;
  }
  .landing-hero::before{
    background-size:cover!important;
    background-position:center center!important;
  }
}


/* v20: Sessions-only desktop hero uses purpose-built 1600x420 banner, no crop */
@media(min-width:851px){
  .landing-hero-sessions{
    aspect-ratio:1600 / 420!important;
    min-height:0!important;
    height:auto!important;
  }
  .landing-hero-sessions::before{
    background-image:url('assets/sessions-hero-v20.png')!important;
    background-size:100% 100%!important;
    background-position:center center!important;
    background-repeat:no-repeat!important;
  }
}


/* v21: USE USER-SUPPLIED LOGO FILES EXACTLY AS PROVIDED. No crop, recolor, redraw, or image processing. */
.brand-logo{
  width:86px!important;
  height:72px!important;
  object-fit:contain!important;
  object-position:center!important;
  clip-path:none!important;
  border-radius:0!important;
}
.home-logo{
  width:min(300px,42vw)!important;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:left center!important;
  clip-path:none!important;
  border-radius:0!important;
}
@media(max-width:1100px){.brand-logo{width:78px!important;height:66px!important}}
@media(max-width:850px){.brand-logo{width:68px!important;height:58px!important}.home-logo{width:min(250px,60vw)!important}}

/* v22 Immersions */
.immersion-hero{position:relative;background:#f5f0e7 url("assets/immersions/immersions-hero.png") center center/cover no-repeat;min-height:430px;padding:0;border-bottom:1px solid var(--line);display:flex;align-items:center}
.immersion-hero-inner{max-width:1180px;width:100%;padding-top:64px;padding-bottom:64px}.immersion-kicker{font-size:14px;letter-spacing:.14em;text-transform:uppercase;color:#68766d;font-weight:700;margin-bottom:12px;max-width:560px}.immersion-hero h1{font-family:Georgia,serif;font-size:clamp(62px,8vw,106px);line-height:.95;margin:0 0 22px;color:#34281f;font-weight:500;max-width:560px}.immersion-hero p{font-family:Georgia,serif;font-size:clamp(18px,1.8vw,26px);line-height:1.4;max-width:560px;color:#544a42;margin:0}.immersion-intro{padding:46px 0 28px}.immersion-intro .site-wrap{max-width:980px}.immersion-intro p{font-size:18px;line-height:1.7;color:#4c4a46}.immersion-pathway-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.immersion-pathway-links a{display:inline-block;padding:12px 18px;border:1px solid #9dab9e;border-radius:4px;text-decoration:none;font-weight:700;color:#405244;background:#f8faf7}.immersion-pathway{padding:52px 0 64px}.immersion-pathway-alt{background:#f8f5ef;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.pathway-heading{max-width:900px;margin-bottom:30px}.pathway-heading>span{display:block;text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:700;color:#718074;margin-bottom:8px}.pathway-heading h2{font-family:Georgia,serif;font-size:clamp(34px,4vw,54px);font-weight:500;margin:0 0 12px;color:#332b25}.pathway-heading p{font-size:18px;line-height:1.6;margin:0;color:#5a5753}.immersion-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.immersion-card{background:#fff;border:1px solid var(--line);padding:28px;display:flex;flex-direction:column;min-height:390px}.immersion-level{font-size:13px;letter-spacing:.05em;text-transform:uppercase;font-weight:700;color:#637368;margin-bottom:12px}.immersion-duration{font-size:16px;color:#68645f;margin-bottom:10px}.immersion-card h3{font-family:Georgia,serif;font-size:28px;line-height:1.18;margin:0 0 18px}.immersion-card h3 a{text-decoration:none;color:#2d312f}.immersion-card p{font-size:16px;line-height:1.6;color:#55514c;margin:0 0 26px}.immersion-card-footer{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:14px;border-top:1px solid var(--line);padding-top:18px}.immersion-price{font-size:22px;font-weight:700;color:#68761d}.immersion-learn{font-weight:700;text-decoration:none;color:#4c6252}.immersion-note{padding:58px 0 70px}.immersion-note .site-wrap{max-width:900px}.immersion-note h2{font-family:Georgia,serif;font-size:36px;font-weight:500;margin:0 0 12px}.immersion-note p{font-size:18px;line-height:1.7;color:#55514c;margin:0}
@media(max-width:900px){.immersion-grid{grid-template-columns:1fr}.immersion-card{min-height:0}.immersion-hero{padding:68px 0 58px}.immersion-pathway{padding:42px 0 48px}}

/* v24 desktop header fit after adding Immersions */
@media(min-width:851px){
  .site-header .site-wrap{max-width:1540px!important;padding-left:24px!important;padding-right:24px!important}
  .header-inner{height:86px!important;gap:18px!important}
  .brand-lockup{gap:14px!important;flex:0 0 auto!important}
  .brand-logo{width:64px!important;height:58px!important}
  .brand-name{font-size:23px!important;line-height:1!important;white-space:nowrap!important}
  .main-nav{margin-left:auto!important;min-width:0!important}
  .main-nav ul{gap:18px!important;flex-wrap:nowrap!important;white-space:nowrap!important}
  .main-nav li{flex:0 0 auto!important}
  .main-nav a{font-size:13px!important;line-height:1.2!important;white-space:nowrap!important}
}
@media(min-width:851px) and (max-width:1180px){
  .site-header .site-wrap{padding-left:18px!important;padding-right:18px!important}
  .header-inner{gap:12px!important}
  .brand-lockup{gap:10px!important}
  .brand-logo{width:54px!important;height:50px!important}
  .brand-name{font-size:19px!important}
  .main-nav ul{gap:11px!important}
  .main-nav a{font-size:12px!important}
}

/* v26 home page: add Immersions as a third primary pathway */
.split-three{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.split-three .panel{display:flex;flex-direction:column;min-height:300px}
.split-three .panel .btn{margin-top:auto;align-self:flex-start}
.immersion-panel{background:#f6f0e6}
.immersion-panel .eyebrow{color:#7b674e}
@media(max-width:1050px){
  .split-three{grid-template-columns:1fr 1fr}
  .split-three .immersion-panel{grid-column:1/-1}
}
@media(max-width:850px){
  .split-three{grid-template-columns:1fr}
  .split-three .immersion-panel{grid-column:auto}
}

/* v28 search and alphabetical browsing */
.home-search-section{padding:34px 0 18px;background:var(--paper)}
.home-search-form{max-width:760px;margin:0 auto}
.search-label{display:block;font-family:Georgia,serif;font-size:24px;margin:0 0 10px;color:var(--ink)}
.home-search-row{display:flex;gap:10px;align-items:stretch}
.aeh-search-input{width:100%;min-width:0;padding:14px 16px;border:1px solid var(--line);background:#fff;color:var(--ink);font:16px/1.3 Arial,Helvetica,sans-serif;border-radius:2px;outline:none}
.aeh-search-input:focus{border-color:var(--sage-dark);box-shadow:0 0 0 2px rgba(95,111,99,.12)}
.home-search-row .btn{border:0;cursor:pointer;margin:0;white-space:nowrap}
.offering-tools{padding:18px 0 28px}
.offering-tools .site-wrap{max-width:760px;margin:0 auto}
.offering-tools .search-label{text-align:center}
.aeh-no-results{padding:20px 28px 70px;text-align:center;color:var(--muted);font-size:17px}
.search-results-section{padding:30px 0 70px}
.search-results-form{margin-bottom:34px}
.search-results-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.search-result-card{background:#fff;border:1px solid var(--line);padding:26px}
.search-result-card h2{font:500 23px/1.2 Georgia,serif;margin:8px 0 10px}
.search-result-card p{color:var(--muted)}
@media(max-width:850px){.home-search-row{flex-direction:column}.home-search-row .btn{width:100%;text-align:center}.search-results-grid{grid-template-columns:1fr}.search-label{font-size:21px}}

/* v29 Immersion card images */
.immersion-card{padding:0;overflow:hidden}
.immersion-card-image{display:block;aspect-ratio:3/2;overflow:hidden;background:#f2eee7;border-bottom:1px solid var(--line)}
.immersion-card-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.immersion-card>.immersion-level,.immersion-card>.immersion-duration,.immersion-card>h3,.immersion-card>p,.immersion-card>.immersion-card-footer{margin-left:28px;margin-right:28px}
.immersion-card>.immersion-level{margin-top:24px}
.immersion-card>.immersion-card-footer{margin-bottom:28px}
@media(max-width:900px){.immersion-card-image{aspect-ratio:16/10}}


/* v30 Immersions banner supplied/approved for page hero */
@media(max-width:900px){.immersion-hero{min-height:430px;background-position:center center}.immersion-hero-inner{padding-top:48px;padding-bottom:48px}.immersion-hero p{max-width:72%}}
@media(max-width:620px){.immersion-hero{min-height:420px;background-position:58% center}.immersion-hero-inner{padding-top:42px;padding-bottom:42px}.immersion-kicker{font-size:12px;max-width:58%}.immersion-hero h1{font-size:54px;max-width:58%}.immersion-hero p{font-size:17px;max-width:58%}}
