/* =====================================================================
   Valmont for The Hilltop Spa — theme stylesheet (2.0 · paste-in method)
   Palette: plum #3b3650 · plum-dk #2c2840 · logo gold #bd965c · gold #bd9759 ·
            gold-dk #86672f (gold text on light) · tint #f1edf7 · ivory #f8f5f1 · ink #302c3c
   §0 Divi wrapper LOCKS — any Divi section/row/column/Code module holding
      .hs-page / .hs-header / .hs-footer goes full-bleed with zero padding,
      so the pasted HTML controls its own width (no Divi setting needed)
   §1 Global header (resources/library/global-header.html + [hs_menu])
   §2 Page sections (scoped to .hs)
   ===================================================================== */

/* ---- §0 Divi chrome + wrapper locks ---- */
body.hs-site{background:#f8f5f1}
body.hs-site #page-container{background:#f8f5f1;overflow-x:clip;padding-top:0!important;margin-top:0!important}
body.hs-site .screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px)}
.et_pb_section:has(.hs-page,.hs-header,.hs-footer){padding:0!important;background:transparent!important;margin:0!important}
.et_pb_row:has(.hs-page,.hs-header,.hs-footer){width:100%!important;max-width:none!important;padding:0!important;margin:0!important}
.et_pb_column:has(.hs-page,.hs-header,.hs-footer){width:100%!important;margin:0!important;padding:0!important}
.et_pb_module.et_pb_code:has(.hs-page,.hs-header,.hs-footer){margin:0!important;padding:0!important}
body.hs-site #main-content:has(.hs-page) .container{width:100%!important;max-width:none!important;padding:0!important}
body.hs-site #main-content:has(.hs-page) .container:before{display:none}
body.hs-site #main-content:has(.hs-page) #left-area{width:100%!important;padding:0!important}
body.hs-site #main-content:has(.hs-page) .entry-content{padding:0}
.hs ul,.hs ol{list-style:none;margin:0;padding:0}
.hs ul li,.hs ol li{list-style:none}

/* ---- §1 Global header ---- */
/* the Theme Builder header wrapper is what sticks */
.et-l--header:has(.hs-header){position:sticky;top:0;z-index:999}
body.admin-bar .et-l--header:has(.hs-header){top:32px}
@media (max-width:782px){body.admin-bar .et-l--header:has(.hs-header){top:46px}}
@media (max-width:600px){body.admin-bar .et-l--header:has(.hs-header){top:0}}
.hs-header{background:rgba(248,245,241,.96);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid rgba(48,44,60,.12);position:relative}
.hs-header .hs-nav{display:flex;align-items:center;justify-content:space-between;height:88px;gap:24px}
/* typographic lockup — V crown mark + VALMONT · for · The Hilltop (Cinzel lowercase = small caps) */
.hs-lock{display:flex;align-items:flex-end;gap:12px;font-family:'Cinzel',serif;color:#bd965c!important;white-space:nowrap;line-height:1;text-decoration:none;transition:opacity .25s}
.hs-lock .v{font-size:22px;letter-spacing:.06em;font-weight:500;display:flex;align-items:flex-end;gap:7px}
.hs-lock .vmark{height:30px!important;width:auto!important;max-width:none;display:block;margin-bottom:-1px}
.hs-lock .f{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:18px;display:flex;align-items:center;gap:8px;padding-bottom:1px}
.hs-lock .f:before,.hs-lock .f:after{content:"";width:14px;height:1px;background:#bd965c}
.hs-lock .h{display:block;position:relative}
.hs-lock .h b{display:block;font-weight:500;font-size:21px;letter-spacing:.06em;line-height:1}
.hs-lock .h small{position:absolute;left:0;right:0;top:100%;margin-top:5px;font-size:9.5px;letter-spacing:.2em;text-align:center;white-space:nowrap}
.hs-lock:hover,.hs-lock:focus-visible{color:#bd965c!important;opacity:.78}
/* [hs_menu] = your WordPress Primary Menu */
.hs-header ul.hs-menu{display:flex;align-items:center;gap:26px;list-style:none;margin:0;padding:0;font-family:'Montserrat',sans-serif;font-weight:500;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase}
.hs-menu li{list-style:none;margin:0;padding:0;position:relative}
.hs-header .hs-menu>li>a{display:inline-flex;align-items:center;color:#302c3c!important;padding:8px 0;border-bottom:1px solid transparent;text-decoration:none;transition:color .25s;font-family:'Montserrat',sans-serif!important;font-size:11.5px!important;font-weight:500!important;letter-spacing:.1em!important;text-transform:uppercase!important;line-height:1.2}
.hs-header .hs-menu>li>a:hover,.hs-header .hs-menu>li>a:focus-visible{color:#86672f!important}
.hs-menu>li.current-menu-item:not([class*="book"])>a,.hs-menu>li.current-menu-ancestor>a,.hs-menu>li.current-menu-parent>a,.hs-menu>li.current_page_item:not([class*="book"])>a{border-bottom-color:#bd9759}
.hs-menu>li.menu-item-has-children>a:after{content:"";display:inline-block;width:5px;height:5px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg) translateY(-3px);margin-left:9px}
.hs-menu .sub-menu{position:absolute;top:100%;left:-22px;min-width:250px;background:#fff;border:1px solid rgba(48,44,60,.12);border-top:2px solid #bd9759;box-shadow:0 22px 50px rgba(43,39,64,.14);padding:12px 0;margin:0;list-style:none;opacity:0;visibility:hidden;transform:translateY(6px);transition:.22s;z-index:10}
.hs-menu li:hover>.sub-menu,.hs-menu li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:none}
.hs-header .hs-menu .sub-menu a{display:block;padding:10px 22px;color:#302c3c!important;font-family:'Montserrat',sans-serif!important;font-size:11px!important;font-weight:500;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;white-space:nowrap}
.hs-header .hs-menu .sub-menu a:hover,.hs-header .hs-menu .sub-menu a:focus-visible,.hs-header .hs-menu .sub-menu .current-menu-item>a{color:#86672f!important;background:#f1edf7}
/* Book Now = menu item with CSS class "menu-book" (any class containing "book") */
.hs-menu>li[class*="book"]{margin-left:6px}
.hs-header .hs-menu>li[class*="book"]>a{background:#3b3650;color:#fff!important;border:1px solid #3b3650;border-radius:30px;padding:14px 26px;font-weight:600!important;letter-spacing:.16em!important;white-space:nowrap;transition:background .25s,border-color .25s}
.hs-header .hs-menu>li[class*="book"]>a:hover,.hs-header .hs-menu>li[class*="book"]>a:focus-visible{background:#2c2840;border-color:#2c2840;color:#fff!important}
.hs-menu>li[class*="book"]>a:after{content:"\2197";margin-left:8px;letter-spacing:0;font-size:13px}
.hs-burger{display:none;background:none;border:0;width:44px;height:44px;cursor:pointer;color:#3b3650;padding:0}
.hs-burger span{display:block;width:22px;height:1.5px;background:currentColor;margin:5px auto;transition:.25s}
body.hs-menu-open .hs-burger span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
body.hs-menu-open .hs-burger span:nth-child(2){opacity:0}
body.hs-menu-open .hs-burger span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}
/* Specials & Offers mega panel (inc/mega.php → resources/library/mega-specials.html) */
.hs-header .hs-mega,header .hs-mega{position:absolute;top:100%;left:50%;width:960px;max-width:calc(100vw - 40px);transform:translate(-50%,8px);opacity:0;visibility:hidden;transition:opacity .25s ease,transform .25s ease,visibility .25s;z-index:60;border-top:2px solid #bd9759;box-shadow:0 40px 80px -30px rgba(20,16,32,.45);text-transform:none;letter-spacing:normal;white-space:normal;text-align:left}
.hs-header .hs-mega:before{content:"";position:absolute;left:0;right:0;top:-34px;height:34px}
@media (min-width:1181px){
  .hs-header .hs-nav,.hs-header .hs-links,.hs-header ul.hs-menu,.hs-header li.hs-has-mega,header li.hs-has-mega,header li.hs-has-mega>ul{position:static}
  header li.hs-has-mega>.sub-menu{display:none!important}
  header li.hs-has-mega:hover>.hs-mega,header li.hs-has-mega:focus-within>.hs-mega{opacity:1;visibility:visible;transform:translate(-50%,0);pointer-events:auto}
  header li.hs-has-mega:hover>.hs-mega:before,header li.hs-has-mega:focus-within>.hs-mega:before{pointer-events:auto}
}
header .hs-mega a{text-transform:none!important}
/* closed panel must not catch the mouse: .hsmm uses all:initial, which resets visibility to visible */
header .hs-mega{pointer-events:none}
header .hs-mega>.hsmm{visibility:inherit!important}
header .hs-mega:before{pointer-events:none}
@media (max-width:1180px){header .hs-mega{display:none!important}}
@media (max-width:1180px){
  .hs-header{-webkit-backdrop-filter:none;backdrop-filter:none;background:#f8f5f1}
  .hs-burger{display:block}
  .hs-header .hs-links{position:fixed;left:0;right:0;top:var(--hs-hh,88px);height:calc(100vh - var(--hs-hh,88px));background:#f8f5f1;padding:18px 28px 40px;overflow-y:auto;transform:translateX(100%);visibility:hidden;transition:transform .3s,visibility .3s;z-index:998}
  body.hs-menu-open .hs-header .hs-links{transform:none;visibility:visible}
  .hs-header ul.hs-menu{flex-direction:column;align-items:stretch;gap:0;font-size:13px}
  .hs-menu>li>a{display:flex;justify-content:space-between;padding:18px 0;border-bottom:1px solid rgba(48,44,60,.12)}
  .hs-menu>li.current-menu-item>a,.hs-menu>li.current-menu-ancestor>a{border-bottom-color:rgba(48,44,60,.12);color:#86672f}
  .hs-menu .sub-menu{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;padding:0 0 8px 14px;display:none;min-width:0;background:transparent}
  .hs-menu li.open>.sub-menu{display:block}
  .hs-menu li.open>a:after{transform:rotate(-135deg) translateY(-2px)}
  .hs-menu .sub-menu a{padding:12px 0;font-size:12px;background:transparent!important}
  .hs-menu>li[class*="book"]{margin:22px 0 0}
  .hs-menu>li[class*="book"]>a{justify-content:center;border-bottom:1px solid #3b3650}
}
@media (max-width:860px){.hs-header .hs-nav{height:74px}.hs-header .wrap{padding:0 22px}.hs-lock{gap:8px}.hs-lock .v{font-size:17px;gap:5px}.hs-lock .vmark{height:23px!important}.hs-lock .f{font-size:15px}.hs-lock .f:before,.hs-lock .f:after{width:8px}.hs-lock .h b{font-size:15.5px}.hs-lock .h small{font-size:7.5px;letter-spacing:.14em}}
@media (max-width:480px){.hs-header .wrap{padding:0 16px}.hs-header .hs-nav{gap:12px}.hs-lock{gap:6px}.hs-lock .v{font-size:14px;gap:4px}.hs-lock .vmark{height:19px!important}.hs-lock .f{font-size:12.5px;gap:5px}.hs-lock .f:before,.hs-lock .f:after{width:6px}.hs-lock .h b{font-size:13px}.hs-lock .h small{font-size:6.5px;letter-spacing:.14em;margin-top:3px}}
@media (max-width:360px){.hs-lock{gap:5px}.hs-lock .v{font-size:12.5px}.hs-lock .vmark{height:17px!important}.hs-lock .f{font-size:11px;gap:4px}.hs-lock .f:before,.hs-lock .f:after{width:4px}.hs-lock .h b{font-size:11.5px}.hs-lock .h small{font-size:6px;letter-spacing:.1em}}

/* ---- §2 sections ---- */
/* neutralise Divi's global heading/paragraph styles inside our markup */
.hs h1,.hs h2,.hs h3,.hs h4{padding:0;color:inherit;line-height:1.06;font-weight:500}
:where(.hs) p{padding-bottom:0}
.hs .hs-mt{margin-top:30px}.hs .hs-mt-lg{margin-top:56px}.hs .hs-mb{margin-bottom:70px}
.hs .hs-btns{display:flex;gap:12px;flex-wrap:wrap}
.hs .ev__h{font-size:40px;color:var(--plum);margin:14px 0 24px}
.hs .mcard--book .t{font-size:26px}
.hs .policy--first{padding-top:0}
.hs .tall--xl{height:680px}
.hs .foot__h2{margin-top:26px}
.hs-footer .hs-fmenu{list-style:none;margin:0;padding:0}
.hs-footer .hs-fmenu li{list-style:none}
.hs-footer .foot-bot .hs-fmenu{display:flex;gap:20px;flex-wrap:wrap}
.hs .hs-prose{max-width:860px}
.hs .hs-prose p{margin-bottom:18px;color:var(--ink-soft)}
.hs .hs-builder{width:100%}

.hs{--plum:#3b3650;--plum2:#473f60;--plum-dk:#2c2840;--gold:#bd9759;--gold-lt:#d8bf8f;--gold-dk:#86672f;--lav-tint:#f1edf7;--lav-tint2:#e8e2f1;--ivory:#f8f5f1;--ink:#302c3c;--ink-soft:#655f70;--line:rgba(48,44,60,.12);--line-gold:rgba(189,151,89,.45)}
:where(.hs) :where(*){margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
.hs{background:var(--ivory);color:var(--ink);font-family:'Cormorant Garamond',serif;font-size:19px;line-height:1.6;-webkit-font-smoothing:antialiased}
:where(.hs) a{color:var(--plum);text-decoration:none;transition:color .25s}
.hs a:hover,.hs a:focus-visible{color:var(--gold-dk)}
:where(.hs) img{display:block;max-width:100%}
.hs .wrap{max-width:1240px;margin:0 auto;padding:0 48px}
.hs .disp{font-family:'Playfair Display',serif;font-weight:500;line-height:1.06;text-wrap:balance}
.hs .disp em{font-style:italic;color:var(--gold-dk)}
.hs .eyebrow{font-family:'Montserrat',sans-serif;font-weight:600;font-size:11px;letter-spacing:.34em;text-transform:uppercase;color:var(--gold-dk)}
.hs .dark .eyebrow,.hs .dark .disp em{color:var(--gold)}
:where(.hs) p{text-wrap:pretty}
.hs .btn{font-family:'Montserrat',sans-serif;font-weight:600;font-size:11px;letter-spacing:.16em;text-transform:uppercase;padding:14px 26px;cursor:pointer;transition:.25s;display:inline-flex;align-items:center;gap:8px;border:1px solid var(--plum);background:var(--plum);color:#fff;border-radius:30px;white-space:nowrap}
.hs .btn:hover,.hs .btn:focus-visible{background:var(--plum-dk);border-color:var(--plum-dk);color:#fff}
.hs .btn--gold{background:var(--gold);border-color:var(--gold);color:var(--plum-dk)}
.hs .btn--gold:hover,.hs .btn--gold:focus-visible{background:var(--gold-lt);border-color:var(--gold-lt);color:var(--plum-dk)}
.hs .btn--ghost{background:transparent;color:var(--plum);border-color:var(--line-gold)}
.hs .btn--ghost:hover,.hs .btn--ghost:focus-visible{background:var(--plum);color:#fff;border-color:var(--plum)}
.hs .btn--light{background:transparent;color:#fff;border-color:rgba(255,255,255,.6)}
.hs .btn--light:hover,.hs .btn--light:focus-visible{background:#fff;color:var(--plum);border-color:#fff}
.hs .btn .ext{font-size:13px;letter-spacing:0}
.hs .arrow{font-family:'Montserrat',sans-serif;font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--plum);border-bottom:1px solid var(--gold);padding-bottom:3px}
.hs .arrow:hover,.hs .arrow:focus-visible{color:var(--gold-dk)}
.hs .dark .arrow{color:#fff}.hs .dark .arrow:hover{color:var(--gold-lt)}

/* hero */
.hs .hero{position:relative;min-height:760px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:var(--plum-dk);text-align:center}
.hs .hero__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hs .hero__scrim{position:absolute;inset:0;background:linear-gradient(180deg,rgba(44,40,64,.62),rgba(44,40,64,.38) 45%,rgba(44,40,64,.78));pointer-events:none}
.hs .hero__in{position:relative;z-index:2;color:#fff;padding:80px 24px;display:flex;flex-direction:column;align-items:center}
.hs .hero__logo{width:min(360px,70vw);filter:drop-shadow(0 4px 24px rgba(0,0,0,.35))}
.hs .hero__sub{font-size:23px;font-style:italic;color:rgba(255,255,255,.92);max-width:40ch;margin-top:28px}
.hs .hero__cta{display:flex;gap:14px;margin-top:34px;flex-wrap:wrap;justify-content:center}

/* home intro */
.hs .intro{padding:120px 0}
.hs .split{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:78px;align-items:center}
.hs .intro h2{font-size:52px;color:var(--plum);margin:18px 0 26px}
.hs .intro p{color:var(--ink-soft);font-size:20px;margin-bottom:18px}
.hs .amen{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.hs .amen span{font-family:'Montserrat',sans-serif;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--plum);background:var(--lav-tint);border:1px solid var(--lav-tint2);border-radius:30px;padding:9px 16px}
.hs .media{position:relative;height:600px}
.hs .media img{width:100%;height:100%;object-fit:cover;border-radius:24px}

/* valmont band */
.hs .valmont{background:var(--plum);color:#fff;padding:110px 0}
.hs .valmont__grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:80px;align-items:center}
.hs .valmont__mark{display:flex;justify-content:center;border-right:1px solid rgba(189,151,89,.35);padding-right:80px}
.hs .valmont__mark img{width:100%;max-width:300px}
.hs .valmont h2{font-size:44px;margin:16px 0 24px}
.hs .valmont p{font-size:20px;color:rgba(255,255,255,.86);max-width:58ch}

/* menu cards */
.hs .menu{background:var(--lav-tint);padding:110px 0}
.hs .sec-head{text-align:center;margin-bottom:54px}
.hs .sec-head h2{font-size:48px;color:var(--plum);margin-top:14px}
.hs .sec-head p{color:var(--ink-soft);font-size:19px;margin-top:12px}
.hs .mgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.hs .mcard{background:#fff;border-radius:20px;overflow:hidden;display:flex;flex-direction:column;transition:.3s;color:var(--ink)}
.hs .mcard:hover,.hs .mcard:focus-visible{transform:translateY(-4px);box-shadow:0 18px 44px rgba(43,39,64,.12);color:var(--ink)}
.hs .mcard__img{height:180px;background:var(--lav-tint2) center/cover no-repeat}
.hs .mcard__b{padding:24px 24px 26px;display:flex;flex-direction:column;gap:6px;flex:1}
.hs .mcard .n{font-family:'Montserrat',sans-serif;font-size:10px;letter-spacing:.24em;color:var(--gold-dk);font-weight:600}
.hs .mcard .t{font-family:'Playfair Display',serif;font-size:22px;color:var(--plum);line-height:1.15}
.hs .mcard .d{font-size:16.5px;color:var(--ink-soft);line-height:1.45;flex:1}
.hs .mcard .go{font-family:'Montserrat',sans-serif;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--plum);margin-top:12px}
.hs .mcard:hover .go{color:var(--gold-dk)}
.hs .mcard--book{background:var(--plum);color:#fff;justify-content:center;padding:34px 28px;gap:14px}
.hs .mcard--book .t{color:#fff}.hs .mcard--book .d{color:rgba(255,255,255,.82);flex:none}
.hs .mcard--book:hover{color:#fff}

/* waters */
.hs .waters{position:relative;min-height:620px;display:flex;align-items:center;overflow:hidden;background:var(--plum-dk)}
.hs .waters__bg{position:absolute;inset:0;background:center/cover no-repeat}
.hs .waters__scrim{position:absolute;inset:0;background:linear-gradient(90deg,rgba(44,40,64,.94),rgba(44,40,64,.62) 46%,rgba(44,40,64,.1));pointer-events:none}
.hs .waters__card{position:relative;z-index:2;max-width:540px;color:#fff;padding:80px 0;pointer-events:none}
.hs .waters__card a{pointer-events:auto}
.hs .waters h2{font-size:48px;margin:18px 0 22px}
.hs .waters p{font-size:20px;color:rgba(255,255,255,.9);margin-bottom:26px}

/* offers */
.hs .offers{padding:110px 0}
.hs .off-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}
.hs .off{position:relative;overflow:hidden;border-radius:22px;min-height:380px;display:flex;align-items:flex-end;background:var(--plum)}
.hs .off__bg{position:absolute;inset:0;background:center/cover no-repeat;transition:transform .6s}.hs .off:hover .off__bg{transform:scale(1.04)}
.hs .off__scrim{position:absolute;inset:0;background:linear-gradient(180deg,rgba(44,40,64,0) 20%,rgba(44,40,64,.9));pointer-events:none}
.hs .off__in{position:relative;z-index:2;padding:38px;color:#fff;pointer-events:none}
.hs .off__in a{pointer-events:auto}
.hs .off .k{font-family:'Montserrat',sans-serif;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}
.hs .off .t{font-family:'Playfair Display',serif;font-size:32px;margin:10px 0 8px}
.hs .off .p{color:rgba(255,255,255,.88);font-size:18px;max-width:38ch;margin-bottom:18px}

/* events + hours */
.hs .ev{padding:0 0 110px}
.hs .ev__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:60px;align-items:start}
.hs .ev-empty{border:1px solid var(--line);background:var(--lav-tint);border-radius:22px;padding:56px 40px;text-align:center}
.hs .ev-empty .t{font-family:'Playfair Display',serif;font-size:27px;color:var(--plum)}
.hs .ev-empty p{color:var(--ink-soft);margin-top:10px;font-size:18px}
.hs .ev-empty svg{color:var(--gold-dk);margin:0 auto 16px;display:block}
.hs .hours h3{font-family:'Playfair Display',serif;font-size:34px;color:var(--plum);margin:14px 0 8px;font-weight:500}
.hs .hrow{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding:14px 0}
.hs .hrow .d{font-family:'Montserrat',sans-serif;font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--gold-dk);align-self:center}
.hs .hrow .v{font-size:19px;color:var(--ink);text-align:right}
.hs .hours .note{color:var(--ink-soft);font-style:italic;margin-top:16px;font-size:17px}

/* inner page hero */
.hs .phero{background:var(--plum);color:#fff;overflow:hidden}
.hs .phero__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:440px}
.hs .phero__t{padding:90px 60px 90px 0;display:flex;flex-direction:column;justify-content:center}
.hs .phero h1{font-size:64px;margin:16px 0 20px}
.hs .phero p{font-size:22px;font-style:italic;color:rgba(255,255,255,.88);max-width:40ch}
.hs .phero__img{position:relative;margin-right:calc(50% - 50vw);min-height:360px;background:center/cover no-repeat}
.hs .phero--plain .phero__grid{grid-template-columns:minmax(0,1fr);min-height:0}
.hs .phero--plain .phero__t{padding:96px 0 80px;text-align:center;align-items:center}

/* category subnav */
.hs .subnav{position:sticky;top:var(--hs-hh,0px);z-index:40;background:#fff;border-bottom:1px solid var(--line)}
.hs .subnav .wrap{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding-top:12px;padding-bottom:12px}
.hs .subnav .wrap::-webkit-scrollbar{display:none}
.hs .subnav a{font-family:'Montserrat',sans-serif;font-size:10.5px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--ink);padding:10px 16px;border-radius:30px;white-space:nowrap;border:1px solid transparent}
.hs .subnav a:hover,.hs .subnav a:focus-visible{color:var(--gold-dk);border-color:var(--line-gold)}
.hs .subnav a.on{background:var(--plum);color:#fff}

/* treatment list */
.hs .tlist{padding:90px 0 40px}
.hs .group{margin-bottom:80px}
.hs .group__h{display:flex;align-items:center;gap:22px;margin-bottom:10px}
.hs .group__h h2{font-size:34px;color:var(--plum);white-space:nowrap}
.hs .group__h:after{content:"";flex:1;height:1px;background:var(--line-gold)}
.hs .item{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:40px;padding:34px 0;border-bottom:1px solid var(--line)}
.hs .item:last-child{border-bottom:0}
.hs .item h3{font-family:'Playfair Display',serif;font-weight:500;font-size:27px;color:var(--plum);line-height:1.2}
.hs .item .sub{font-style:italic;font-size:19px;color:var(--gold-dk);margin-top:2px}
.hs .item p{color:var(--ink-soft);font-size:19px;margin-top:12px;max-width:68ch}
.hs .item .tag{display:inline-block;margin-top:14px;font-family:'Montserrat',sans-serif;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--plum);background:var(--lav-tint);border:1px solid var(--lav-tint2);border-radius:30px;padding:6px 12px}
.hs .item__meta{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:8px;padding-top:4px}
.hs .item__meta .dur{font-family:'Montserrat',sans-serif;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft)}
.hs .item__meta .pr{font-family:'Playfair Display',serif;font-size:26px;color:var(--plum);line-height:1.1}
.hs .item__meta .pr.sm{font-size:19px;font-style:italic}
.hs .group--feature{background:var(--lav-tint);border:1px solid var(--lav-tint2);border-radius:26px;padding:44px 52px 16px}
.hs .group--feature .group__h:after{background:var(--gold)}
.hs .plist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:64px;padding-top:18px}
.hs .prow{display:flex;align-items:baseline;gap:12px;padding:15px 0;border-bottom:1px solid var(--line)}
.hs .prow .n{font-size:20px;color:var(--ink)}
.hs .prow .dots{flex:1;border-bottom:1px dotted rgba(134,103,47,.55);transform:translateY(-5px)}
.hs .prow .v{font-family:'Playfair Display',serif;font-size:20px;color:var(--plum);white-space:nowrap}
.hs .group .lede{font-style:italic;font-size:20px;color:var(--ink-soft);margin-top:14px}
.hs .group .gnote{font-size:17px;font-style:italic;color:var(--ink-soft);margin-top:26px;padding-top:20px;border-top:1px solid var(--line);max-width:80ch}
.hs .fine{font-family:'Montserrat',sans-serif;font-size:11px;letter-spacing:.06em;color:var(--ink-soft);text-align:center;padding:0 0 70px}

/* cta band + pager */
.hs .cta{background:var(--plum-dk);color:#fff;padding:80px 0;text-align:center}
.hs .cta h2{font-size:42px;margin:14px 0 26px}
.hs .cta .row{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.hs .pager{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}
.hs .pager a{padding:40px 48px;display:flex;flex-direction:column;gap:6px;color:var(--plum)}
.hs .pager a+a{border-left:1px solid var(--line);text-align:right;align-items:flex-end}
.hs .pager a:hover,.hs .pager a:focus-visible{background:var(--lav-tint);color:var(--plum)}
.hs .pager .k{font-family:'Montserrat',sans-serif;font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-dk)}
.hs .pager .t{font-family:'Playfair Display',serif;font-size:26px}

/* info + generic pages */
.hs .page{padding:96px 0}
.hs .info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 70px}
.hs .policy{padding:28px 0;border-bottom:1px solid var(--line);break-inside:avoid}
.hs .policy h3{font-family:'Montserrat',sans-serif;font-size:12px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-dk);margin-bottom:10px}
.hs .policy p{color:var(--ink-soft);font-size:19px}
.hs .two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:70px;align-items:start}
.hs .card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:44px}
.hs .card h2{font-size:36px;color:var(--plum);margin:12px 0 16px}
.hs .card p{color:var(--ink-soft);font-size:19px;margin-bottom:18px}
.hs .ph-note{display:inline-block;font-family:'Montserrat',sans-serif;font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft);border:1px dashed var(--line-gold);border-radius:4px;padding:4px 9px;margin-bottom:18px}
.hs .tall{position:relative;height:520px}
.hs .tall img{width:100%;height:100%;object-fit:cover;border-radius:24px}
.hs .contact-list{display:flex;flex-direction:column;gap:22px;margin-top:6px}
.hs .contact-list .k{font-family:'Montserrat',sans-serif;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-dk);display:block;margin-bottom:4px}
.hs .contact-list .v{font-family:'Playfair Display',serif;font-size:24px;color:var(--plum)}
.hs .contact-list a.v:hover{color:var(--gold-dk)}

/* footer */
.hs-footer{background:var(--plum-dk);color:rgba(248,245,241,.8);padding:80px 0 36px}
.hs .foot-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:46px}
.hs .foot h4{font-family:'Montserrat',sans-serif;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:18px;font-weight:600}
.hs .foot p,.hs .foot a{color:rgba(248,245,241,.8);font-size:17px;line-height:1.75;display:block}
.hs .foot a:hover,.hs .foot a:focus-visible{color:var(--gold-lt)}
.hs .foot__logo{width:170px;margin-bottom:22px}
.hs .socials{display:flex;flex-direction:column;gap:2px;margin-top:14px}
.hs .foot-bot{border-top:1px solid rgba(248,245,241,.14);margin-top:54px;padding-top:24px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:14px;align-items:center;font-family:'Montserrat',sans-serif;font-size:11px;letter-spacing:.06em;color:rgba(248,245,241,.6)}
.hs .foot-bot nav{display:flex;gap:20px;flex-wrap:wrap}
.hs .foot-bot a{color:rgba(248,245,241,.72)}
.hs .foot-bot a:hover{color:var(--gold-lt)}

/* responsive */
@media (max-width:1180px){
  .hs .mgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:860px){
  .hs .wrap{padding:0 22px}
  .hs .hero{min-height:620px}.hs .hero__sub{font-size:20px}
  .hs .split,.hs .valmont__grid,.hs .ev__grid,.hs .two,.hs .phero__grid,.hs .info-grid,.hs .off-grid{grid-template-columns:minmax(0,1fr);gap:44px}
  .hs .intro,.hs .valmont,.hs .menu,.hs .offers,.hs .page{padding:72px 0}.hs .ev{padding-bottom:72px}
  .hs .intro h2,.hs .sec-head h2{font-size:38px}.hs .valmont h2,.hs .waters h2{font-size:34px}
  .hs .media,.hs .tall{height:380px}
  .hs .valmont__mark{border-right:0;border-bottom:1px solid rgba(189,151,89,.35);padding:0 0 44px}
  .hs .valmont__mark img{max-width:200px}
  .hs .mgrid{grid-template-columns:minmax(0,1fr)}
  .hs .phero__t{padding:60px 0 40px}.hs .phero h1{font-size:42px}.hs .phero p{font-size:19px}
  .hs .phero__img{margin:0 -22px;min-height:260px}
  .hs .tlist{padding:56px 0 20px}.hs .group{margin-bottom:56px}.hs .group__h h2{font-size:26px;white-space:normal}
  .hs .item{grid-template-columns:minmax(0,1fr);gap:14px;padding:28px 0}
  .hs .item__meta{order:-1;flex-direction:row;justify-content:space-between;align-items:baseline;text-align:left;padding:0}
  .hs .item h3{font-size:24px}.hs .item p{font-size:18px}
  .hs .group--feature{padding:30px 22px 6px;border-radius:18px}
  .hs .plist{grid-template-columns:minmax(0,1fr)}
  .hs .cta h2{font-size:32px}
  .hs .pager a{padding:26px 22px}.hs .pager .t{font-size:19px}
  .hs .card{padding:30px 24px}
  .hs .foot-grid{grid-template-columns:1fr 1fr;gap:34px}
  .hs .foot-grid>.foot:first-child{grid-column:1/-1}
  .hs .off .t{font-size:26px}.hs .off__in{padding:28px}
}


/* =====================================================================
   §3 Gravity Forms skin — forms #3 (Contact), #6 (Gift Card Order),
   #4 (Event Registration) and any other GF on the site. CSS only; the
   forms themselves are untouched. Works with GF 2.5+ "Orbital" + legacy.
   ===================================================================== */
body.hs-site .gform_wrapper{--gf-color-primary:#3b3650;--gf-color-primary-rgb:59,54,80;--gf-color-primary-contrast:#fff;--gf-color-in-ctrl-primary:#3b3650;--gf-ctrl-border-color:rgba(48,44,60,.2);--gf-ctrl-border-color-focus:#bd9759;--gf-ctrl-radius:10px;--gf-radius:10px;--gf-ctrl-label-color-primary:#302c3c;--gf-font-family-base:'Cormorant Garamond',Georgia,serif;font-family:'Cormorant Garamond',Georgia,serif;color:#302c3c}
body.hs-site .gform_wrapper .gfield_label,body.hs-site .gform_wrapper legend.gfield_label,body.hs-site .gform_wrapper .gform-field-label:not(.gform-field-label--type-inline):not(.gform-field-label--type-sub){font-family:'Montserrat',sans-serif!important;font-size:10.5px!important;font-weight:600!important;letter-spacing:.18em;text-transform:uppercase;color:#302c3c!important;margin-bottom:8px}
body.hs-site .gform_wrapper .gform-field-label--type-sub,body.hs-site .gform_wrapper .ginput_complex label{font-family:'Montserrat',sans-serif;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:#655f70}
body.hs-site .gform_wrapper .gfield_required{color:#86672f}
body.hs-site .gform_wrapper input:not([type=submit]):not([type=button]):not([type=checkbox]):not([type=radio]):not([type=file]),body.hs-site .gform_wrapper select,body.hs-site .gform_wrapper textarea{background:#fff!important;border:1px solid rgba(48,44,60,.2)!important;border-radius:10px!important;box-shadow:none!important;font-family:'Cormorant Garamond',Georgia,serif!important;font-size:19px!important;color:#302c3c!important;padding:10px 14px!important;min-height:48px;line-height:1.3}
body.hs-site .gform_wrapper textarea{min-height:140px}
body.hs-site .gform_wrapper input:focus,body.hs-site .gform_wrapper select:focus,body.hs-site .gform_wrapper textarea:focus{border-color:#bd9759!important;box-shadow:0 0 0 3px rgba(189,151,89,.22)!important;outline:0!important}
body.hs-site .gform_wrapper input[type=checkbox],body.hs-site .gform_wrapper input[type=radio]{accent-color:#3b3650}
body.hs-site .gform_wrapper .gchoice label,body.hs-site .gform_wrapper .gfield_checkbox label,body.hs-site .gform_wrapper .gfield_radio label{font-family:'Cormorant Garamond',Georgia,serif!important;font-size:18px!important;text-transform:none!important;letter-spacing:0!important;font-weight:400!important}
body.hs-site .gform_wrapper .gfield_description{font-size:16px;color:#655f70;font-style:italic}
body.hs-site .gform_wrapper .gform_footer input[type=submit],body.hs-site .gform_wrapper .gform_page_footer input[type=button],body.hs-site .gform_wrapper .gform_page_footer input[type=submit],body.hs-site .gform_wrapper .gform_button,body.hs-site .gform_wrapper button.gform_button{background:#3b3650!important;border:1px solid #3b3650!important;color:#fff!important;border-radius:30px!important;font-family:'Montserrat',sans-serif!important;font-size:11px!important;font-weight:600!important;letter-spacing:.16em!important;text-transform:uppercase!important;padding:15px 30px!important;min-height:0;box-shadow:none!important;cursor:pointer;transition:background .25s,border-color .25s}
body.hs-site .gform_wrapper .gform_footer input[type=submit]:hover,body.hs-site .gform_wrapper .gform_footer input[type=submit]:focus,body.hs-site .gform_wrapper .gform_page_footer input:hover,body.hs-site .gform_wrapper .gform_page_footer input:focus,body.hs-site .gform_wrapper .gform_button:hover,body.hs-site .gform_wrapper .gform_button:focus{background:#2c2840!important;border-color:#2c2840!important;color:#fff!important}
body.hs-site .gform_wrapper .gform_page_footer .gform_previous_button{background:transparent!important;color:#3b3650!important;border-color:rgba(189,151,89,.6)!important}
body.hs-site .gform_wrapper .gf_progressbar{background:#f1edf7;border-radius:30px}
body.hs-site .gform_wrapper .gf_progressbar_percentage{background:#3b3650!important;border-radius:30px;color:#fff}
body.hs-site .gform_wrapper .gf_progressbar_title,body.hs-site .gform_wrapper .gf_step_label{font-family:'Montserrat',sans-serif;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:#86672f}
body.hs-site .gform_wrapper .gf_step_active .gf_step_number{background:#3b3650;border-color:#3b3650;color:#fff}
body.hs-site .gform_wrapper .gfield_error input,body.hs-site .gform_wrapper .gfield_error select,body.hs-site .gform_wrapper .gfield_error textarea{border-color:#3b3650!important}
body.hs-site .gform_wrapper .gform_validation_errors,body.hs-site .gform_wrapper .validation_message{background:#f1edf7!important;border:0!important;border-left:3px solid #3b3650!important;border-radius:10px;box-shadow:none!important;color:#302c3c!important;font-family:'Cormorant Garamond',Georgia,serif;font-size:17px}
body.hs-site .gform_wrapper .gform_validation_errors h2{color:#302c3c!important;font-size:17px!important;font-family:'Cormorant Garamond',Georgia,serif!important}
body.hs-site .gform_confirmation_message{background:#f1edf7;border-left:3px solid #bd9759;border-radius:10px;padding:18px 20px;font-size:19px;color:#302c3c}
body.hs-site .gform_wrapper .ginput_total,body.hs-site .gform_wrapper .ginput_product_price{font-family:'Playfair Display',serif;color:#3b3650;font-size:22px}
.hs .hs-form h2{font-size:32px;margin-bottom:22px}
.hs .gift-note{color:var(--ink-soft);font-size:19px}
.hs .gift-note a{color:var(--gold-dk)}

/* =====================================================================
   §4 The Events Calendar — list, month, single event (CSS only)
   ===================================================================== */
body.hs-site .tribe-common{--tec-color-accent-primary:#3b3650;--tec-color-accent-primary-hover:#2c2840;--tec-color-accent-primary-active:#2c2840;--tec-color-accent-primary-background:#f1edf7;--tec-color-link-accent:#86672f;--tec-color-link-accent-hover:#3b3650;--tec-color-text-primary:#302c3c;--tec-color-text-secondary:#655f70;--tec-color-border-default:rgba(48,44,60,.14);--tec-font-family-sans-serif:'Montserrat',sans-serif;--tec-font-family-base:'Cormorant Garamond',Georgia,serif;--tec-color-background-events-bar-submit-button:#3b3650;--tec-color-background-events-bar-submit-button-hover:#2c2840}
body.hs-site .tribe-events .tribe-events-calendar-list__event-title a,body.hs-site .tribe-events .tribe-events-calendar-month__calendar-event-title a,body.hs-site .tribe-events-single .tribe-events-single-event-title,body.hs-site .tribe-events .tribe-events-c-top-bar__datepicker-desktop{font-family:'Playfair Display',serif!important;font-weight:500!important;color:#3b3650!important}
body.hs-site .tribe-events .tribe-events-calendar-list__event-title a:hover,body.hs-site .tribe-events .tribe-events-calendar-list__event-title a:focus{color:#86672f!important;border-bottom-color:#bd9759!important}
body.hs-site .tribe-events-single .tribe-events-single-event-title{font-size:48px!important;line-height:1.1;margin-bottom:10px}
body.hs-site .tribe-events-schedule,body.hs-site .tribe-events-schedule h2,body.hs-site .tribe-events .tribe-events-calendar-list__event-datetime{font-family:'Montserrat',sans-serif!important;font-size:12px!important;letter-spacing:.12em;text-transform:uppercase;color:#86672f!important}
body.hs-site .tribe-events-schedule .tribe-events-cost{font-family:'Playfair Display',serif;font-size:22px;color:#3b3650;letter-spacing:0;text-transform:none}
body.hs-site .tribe-events-single .tribe-events-content,body.hs-site .tribe-events .tribe-events-calendar-list__event-description{font-family:'Cormorant Garamond',Georgia,serif;font-size:19px;line-height:1.6;color:#302c3c}
body.hs-site .tribe-events-single a,body.hs-site .tribe-events-back a,body.hs-site .tribe-events-single-section a{color:#86672f}
body.hs-site .tribe-events-single a:hover,body.hs-site .tribe-events-single a:focus,body.hs-site .tribe-events-back a:hover{color:#3b3650}
body.hs-site .tribe-events-meta-group .tribe-events-single-section-title{font-family:'Montserrat',sans-serif!important;font-size:11px!important;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:#86672f!important}
body.hs-site .tribe-events-meta-group dt,body.hs-site .tribe-events-meta-group .tribe-events-event-meta dt{font-family:'Montserrat',sans-serif;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:#302c3c}
body.hs-site .tribe-events-event-meta{background:#f1edf7;border:0!important;border-radius:18px}
body.hs-site .tribe-events .tribe-events-c-search__button,body.hs-site .tribe-common .tribe-common-c-btn,body.hs-site .tribe-events .tribe-events-c-top-bar__today-button,body.hs-site .tribe-events-button{background:#3b3650!important;color:#fff!important;border-radius:30px!important;font-family:'Montserrat',sans-serif!important;font-size:11px!important;font-weight:600!important;letter-spacing:.14em;text-transform:uppercase;border:1px solid #3b3650!important}
body.hs-site .tribe-events .tribe-events-c-search__button:hover,body.hs-site .tribe-common .tribe-common-c-btn:hover,body.hs-site .tribe-events-button:hover{background:#2c2840!important;border-color:#2c2840!important;color:#fff!important}
body.hs-site .tribe-events .tribe-events-calendar-list__event-date-tag-weekday,body.hs-site .tribe-events .tribe-events-calendar-list__month-separator-text{font-family:'Montserrat',sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#86672f}
body.hs-site .tribe-events .tribe-events-calendar-list__event-date-tag-daynum{font-family:'Playfair Display',serif;color:#3b3650}
body.hs-site .tribe-events .tribe-events-calendar-month__day--current .tribe-events-calendar-month__day-date-link,body.hs-site .tribe-events .tribe-events-calendar-month__day--current .tribe-events-calendar-month__day-date-daynum{color:#86672f}
body.hs-site .tribe-events-c-nav__list a,body.hs-site .tribe-events-sub-nav a{color:#3b3650}
body.hs-site .tribe-events-c-nav__list a:hover,body.hs-site .tribe-events-sub-nav a:hover{color:#86672f}

/* =====================================================================
   §5 Light brand pass for pages still built with Divi modules
   (Day Passes, Packages, Specials, Hydrotherapy, Mind & Body…).
   Type, text colour, links + buttons only — Divi backgrounds/layouts
   are left alone. Never touches .hs pasted content (Code modules).
   ===================================================================== */
body.hs-site #main-content .et_pb_module:not(.et_pb_code) h1,body.hs-site #main-content .et_pb_module:not(.et_pb_code) h2,body.hs-site #main-content .et_pb_module:not(.et_pb_code) h3,body.hs-site #main-content .et_pb_module:not(.et_pb_code) h4,body.hs-site #main-content .et_pb_module:not(.et_pb_code) .et_pb_module_header{font-family:'Playfair Display',serif!important;font-weight:500!important;letter-spacing:0!important}
body.hs-site #main-content .et_pb_text:not(:has(.hs)),body.hs-site #main-content .et_pb_blurb_description,body.hs-site #main-content .et_pb_promo_description,body.hs-site #main-content .et_pb_toggle_content,body.hs-site #main-content .et_pb_tab{font-family:'Cormorant Garamond',Georgia,serif;font-size:19px;line-height:1.6}
body.hs-site #main-content .et_pb_text:not(:has(.hs)) a,body.hs-site #main-content .et_pb_blurb_description a,body.hs-site #main-content .et_pb_promo_description a{color:#86672f}
body.hs-site #main-content .et_pb_text:not(:has(.hs)) a:hover,body.hs-site #main-content .et_pb_text:not(:has(.hs)) a:focus,body.hs-site #main-content .et_pb_blurb_description a:hover{color:#3b3650}
body.hs-site #main-content .et_pb_button,body.hs-site #main-content .et_pb_promo_button{background:#3b3650!important;border:1px solid #3b3650!important;color:#fff!important;border-radius:30px!important;font-family:'Montserrat',sans-serif!important;font-size:11px!important;font-weight:600!important;letter-spacing:.16em!important;text-transform:uppercase!important;padding:14px 28px!important;transition:background .25s,border-color .25s!important}
body.hs-site #main-content .et_pb_button:hover,body.hs-site #main-content .et_pb_button:focus,body.hs-site #main-content .et_pb_promo_button:hover{background:#2c2840!important;border-color:#2c2840!important;color:#fff!important;padding:14px 28px!important}
body.hs-site #main-content .et_pb_button:after,body.hs-site #main-content .et_pb_promo_button:after{display:none!important}

/* ---- §6 Celebration Package (/bachelorette-packages/) + 3-up offers ---- */
.hs .off-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.hs .off-grid--3 .off{min-height:360px}.hs .off-grid--3 .off .t{font-size:27px}
.hs .pkg-intro{max-width:820px;margin:0 auto 60px;text-align:center;font-size:21px;color:var(--ink-soft)}
.hs .pkg{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:28px;align-items:stretch}
.hs .pkg__card{background:#fff;border:1px solid var(--line-gold);border-radius:24px;padding:48px 50px}
.hs .pkg__head{text-align:center;border-bottom:1px solid var(--line-gold);padding-bottom:30px;margin-bottom:30px}
.hs .pkg__head h2{font-size:34px;color:var(--plum);margin:12px 0 14px}
.hs .pkg__price{font-family:'Playfair Display',serif;font-size:56px;color:var(--plum);line-height:1}
.hs .pkg__fine{font-family:'Montserrat',sans-serif;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-dk);margin-top:12px}
.hs .pkg__h{font-family:'Montserrat',sans-serif!important;font-size:11px;font-weight:600!important;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-dk)!important;margin:30px 0 12px}
.hs .pkg__lede{font-style:italic;color:var(--ink-soft);font-size:18.5px;margin-bottom:10px}
.hs .pkg__list{display:grid;gap:9px}
.hs .pkg__list--2{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px}
.hs .pkg__list li{position:relative;padding-left:22px;font-size:19px;color:var(--ink);line-height:1.4}
.hs .pkg__list li:before{content:"";position:absolute;left:2px;top:.55em;width:7px;height:7px;border:1px solid var(--gold);transform:rotate(45deg)}
.hs .pkg__media{display:grid;grid-template-rows:repeat(3,minmax(0,1fr));gap:16px;min-height:600px}
.hs .pkg__img{border-radius:20px;background:var(--lav-tint2) center/cover no-repeat}
.hs .pkg-tag{text-align:center;font-style:italic;font-size:22px;color:var(--plum);margin-top:56px}
@media (max-width:1180px){.hs .off-grid--3{grid-template-columns:repeat(2,minmax(0,1fr))}.hs .off-grid--3 .off:last-child{grid-column:1/-1}}
@media (max-width:860px){.hs .off-grid--3{grid-template-columns:minmax(0,1fr)}.hs .pkg{grid-template-columns:minmax(0,1fr)}.hs .pkg__card{padding:32px 24px}.hs .pkg__price{font-size:46px}.hs .pkg__list--2{grid-template-columns:minmax(0,1fr)}.hs .pkg__media{grid-template-rows:none;grid-template-columns:repeat(3,minmax(0,1fr));min-height:0}.hs .pkg__img{aspect-ratio:1}.hs .pkg-intro{font-size:19px;margin-bottom:40px}}

/* 6 service cards + Reserve card: Reserve spans 2 columns so the 4-col grid has no empty slot */
.hs .mgrid .mcard--book{grid-column:span 2;flex-direction:row;align-items:center;justify-content:space-between;gap:24px;padding:34px 40px}
.hs .mgrid .mcard--book .d{flex:1}
@media (max-width:1180px){.hs .mgrid .mcard--book{grid-column:1/-1}}
@media (max-width:860px){.hs .mgrid .mcard--book{flex-direction:column;align-items:flex-start;grid-column:auto}}

/* 2.1.1 Reserve card: stacked text left, button right (was squeezing the copy into a 1-word column) */
.hs .mgrid .mcard--book{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"eb btn" "t btn" "d btn";align-content:center;column-gap:36px;row-gap:10px;padding:44px 48px}
.hs .mgrid .mcard--book .eyebrow{grid-area:eb}
.hs .mgrid .mcard--book .t{grid-area:t;font-size:34px;line-height:1.1}
.hs .mgrid .mcard--book .d{grid-area:d;flex:none;font-size:19px;max-width:34ch}
.hs .mgrid .mcard--book .btn{grid-area:btn;align-self:center}
.hs .mcard--book .d,.hs a[href^="tel:"]{white-space:nowrap}
.hs .mgrid .mcard--book .d{white-space:normal}
@media (max-width:860px){.hs .mgrid .mcard--book{grid-template-columns:minmax(0,1fr);grid-template-areas:"eb" "t" "d" "btn";padding:34px 28px}.hs .mgrid .mcard--book .btn{justify-self:start;margin-top:10px}.hs .mgrid .mcard--book .t{font-size:28px}}

.hs .pkg__media--4{grid-template-rows:repeat(4,minmax(0,1fr))}
@media (max-width:860px){.hs .pkg__media--4{grid-template-rows:none;grid-template-columns:repeat(2,minmax(0,1fr))}.hs .pkg__media--4 .pkg__img{aspect-ratio:4/3}}

/* ---- §7 Mind & Body · Hydrotherapy · Day Passes (2.1.4) ---- */
.hs .mb-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.hs .mb{background:#fff;border:1px solid var(--line);border-radius:24px;padding:42px 44px}
.hs .mb__n{font-family:'Montserrat',sans-serif;font-size:10.5px;font-weight:600;letter-spacing:.24em;color:var(--gold-dk)}
.hs .mb h2{font-size:32px;color:var(--plum);margin:12px 0 14px}
.hs .mb p{color:var(--ink-soft);font-size:19px;margin-bottom:12px}
.hs .hydro{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.hs .hydro__c{background:var(--lav-tint);border-radius:24px;padding:44px}
.hs .hydro__c--cold{background:var(--plum);color:#fff}
.hs .hydro__k{font-family:'Montserrat',sans-serif;font-size:11px;font-weight:600;letter-spacing:.26em;text-transform:uppercase;color:var(--gold-dk)}
.hs .hydro__c--cold .hydro__k{color:var(--gold)}
.hs .hydro__c h2{font-size:28px;color:var(--plum);margin:12px 0 14px;line-height:1.2}
.hs .hydro__c--cold h2{color:#fff}
.hs .hydro__c p{font-size:19px;color:var(--ink-soft)}
.hs .hydro__c--cold p{color:rgba(255,255,255,.86)}
.hs .hydro__tip{margin-top:22px;padding-top:16px;border-top:1px solid var(--line-gold);font-family:'Montserrat',sans-serif;font-size:10.5px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--plum)}
.hs .hydro__c--cold .hydro__tip{color:var(--gold-lt);border-top-color:rgba(189,151,89,.4)}
.hs .hydro__warn{margin:40px auto 0;max-width:820px;text-align:center;border:1px solid var(--line-gold);border-radius:20px;padding:26px 30px}
.hs .hydro__warn ul{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:14px;padding:0}
.hs .hydro__warn li{font-size:18px;color:var(--plum);background:var(--lav-tint);border-radius:30px;padding:7px 16px}
.hs .tiers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.hs .tier{background:#fff;border:1px solid var(--line-gold);border-radius:22px;padding:36px 28px;text-align:center}
.hs .tier__p{font-family:'Playfair Display',serif;font-size:52px;color:var(--plum);line-height:1;margin:16px 0 12px}
.hs .tier__d{font-size:18px;font-style:italic;color:var(--ink-soft)}
.hs .tiers__note{text-align:center;font-style:italic;color:var(--ink-soft);font-size:19px;margin-top:24px}
@media (max-width:860px){.hs .mb-grid,.hs .hydro,.hs .tiers{grid-template-columns:minmax(0,1fr)}.hs .mb,.hs .hydro__c{padding:30px 24px}.hs .tier__p{font-size:44px}}

/* ---- §8 Midweek Indulgence (2.1.6) ---- */
.hs .mw{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch}
.hs .mw__c{background:#fff;border:1px solid var(--line);border-radius:24px;overflow:hidden;display:flex;flex-direction:column}
.hs .mw__c--feat{border-color:var(--gold);box-shadow:0 18px 44px rgba(43,39,64,.1)}
.hs .mw__img{height:200px;background:var(--lav-tint2) center/cover no-repeat}
.hs .mw__b{padding:32px 32px 34px;display:flex;flex-direction:column;flex:1}
.hs .mw__b h3{font-size:28px;color:var(--plum);line-height:1.15}
.hs .mw__p{font-family:'Playfair Display',serif;font-size:44px;color:var(--plum);line-height:1;margin:14px 0 6px}
.hs .mw__p span{font-size:20px;color:var(--gold-dk);vertical-align:super}
.hs .mw__l{font-style:italic;color:var(--ink-soft);font-size:18px;margin-bottom:14px}
.hs .mw__cta{margin-top:auto;padding-top:26px}
.hs .mw__note{text-align:center;margin-top:40px;font-family:'Montserrat',sans-serif;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--plum)}
.hs .mw__note strong{font-weight:600;border-top:1px solid var(--gold);border-bottom:1px solid var(--gold);padding:10px 4px;display:inline-block}
@media (max-width:1180px){.hs .mw{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:860px){.hs .mw{grid-template-columns:minmax(0,1fr)}.hs .mw__b{padding:26px 24px 28px}.hs .mw__p{font-size:38px}.hs .mw__note{font-size:11px}}

/* ---- §9 Legal / long-form text (Privacy Policy) 2.1.9 ---- */
.hs .pp{max-width:820px;margin:0 auto}
.hs .pp p{font-size:19px;line-height:1.7;color:var(--ink-soft);margin:0 0 20px}
.hs .pp .pp__lead{font-size:22px;color:var(--ink);line-height:1.6}
.hs .pp__h{font-family:'Playfair Display',serif;font-size:27px;font-weight:500;color:var(--plum);margin:52px 0 16px;padding-top:30px;border-top:1px solid var(--line-gold);text-decoration:none}
.hs .pp a{color:var(--gold-dk);border-bottom:1px solid var(--line-gold)}
.hs .pp a:hover,.hs .pp a:focus-visible{color:var(--plum);border-bottom-color:var(--plum)}
.hs .pp-date{background:var(--lav-tint);padding:0 6px;border-radius:4px}
@media (max-width:860px){.hs .pp p{font-size:18px}.hs .pp .pp__lead{font-size:20px}.hs .pp__h{font-size:23px;margin-top:36px}}

/* §3b GF buttons — GF 2.7+/2.8 render Next/Previous/Submit as <button> (.gform-theme-button / .gform_next_button), not <input>, so §3 missed them */
body.hs-site .gform_wrapper .gform_page_footer,body.hs-site .gform_wrapper .gform_footer{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:flex-end;padding-top:22px!important;margin-top:10px!important;border-top:1px solid rgba(189,151,89,.35)}
body.hs-site .gform_wrapper .gform_footer{justify-content:flex-start}
body.hs-site .gform_wrapper :is(.gform_next_button,.gform_button,.gform-theme-button,button[type=submit],input[type=submit],.gform_page_footer input[type=button],.gform_page_footer button){-webkit-appearance:none;appearance:none;background:#3b3650!important;background-image:none!important;border:1px solid #3b3650!important;color:#fff!important;border-radius:30px!important;font-family:'Montserrat',sans-serif!important;font-size:11px!important;font-weight:600!important;letter-spacing:.16em!important;text-transform:uppercase!important;line-height:1!important;padding:16px 32px!important;min-height:48px!important;width:auto!important;box-shadow:none!important;text-shadow:none!important;cursor:pointer;transition:background .25s,border-color .25s,color .25s;margin:0!important}
body.hs-site .gform_wrapper :is(.gform_next_button,.gform_button,.gform-theme-button,button[type=submit],input[type=submit],.gform_page_footer input[type=button],.gform_page_footer button):is(:hover,:focus-visible){background:#2c2840!important;border-color:#2c2840!important;color:#fff!important}
body.hs-site .gform_wrapper :is(.gform_next_button,.gform_button,.gform-theme-button,button[type=submit],input[type=submit]):focus-visible{outline:2px solid #bd9759!important;outline-offset:3px}
body.hs-site .gform_wrapper .gform_next_button:after{content:" \2192";letter-spacing:0;margin-left:4px}
body.hs-site .gform_wrapper :is(.gform_previous_button,.gform-theme-button--secondary){background:transparent!important;color:#3b3650!important;border-color:rgba(189,151,89,.7)!important;margin-right:auto!important}
body.hs-site .gform_wrapper :is(.gform_previous_button,.gform-theme-button--secondary):is(:hover,:focus-visible){background:#f1edf7!important;color:#3b3650!important;border-color:#bd9759!important}
body.hs-site .gform_wrapper .gform_previous_button:before{content:"\2190 ";letter-spacing:0;margin-right:4px}
body.hs-site .gform_wrapper .gform_ajax_spinner{margin-left:10px}
body.hs-site .gform_wrapper .gf_progressbar_percentage span{font-family:'Montserrat',sans-serif;font-size:10px;letter-spacing:.08em}
body.hs-site .gform_wrapper .gf_progressbar_percentage.percentbar_0 span{color:#3b3650}
@media (max-width:600px){body.hs-site .gform_wrapper :is(.gform_next_button,.gform_button,.gform-theme-button,button[type=submit],input[type=submit]){width:100%!important;justify-content:center}body.hs-site .gform_wrapper .gform_previous_button{margin-right:0!important}}

/* §3c 2.1.21 — buttons, higher specificity (beats GF Orbital/framework + Divi button rules) */
html body.hs-site .gform_wrapper .gform_page_footer :is(button,input[type=button],input[type=submit]),html body.hs-site .gform_wrapper .gform_footer :is(button,input[type=button],input[type=submit]),html body.hs-site .gform_wrapper.gform-theme :is(button,input[type=button],input[type=submit]).gform-theme-button{-webkit-appearance:none!important;appearance:none!important;display:inline-flex!important;align-items:center;justify-content:center;gap:8px;background:#3b3650!important;background-image:none!important;border:1px solid #3b3650!important;color:#fff!important;border-radius:30px!important;font-family:'Montserrat',sans-serif!important;font-size:11px!important;font-weight:600!important;letter-spacing:.16em!important;text-transform:uppercase!important;line-height:1!important;padding:16px 30px!important;min-height:48px!important;height:auto!important;width:auto!important;box-shadow:none!important;text-shadow:none!important;cursor:pointer;margin:0!important}
html body.hs-site .gform_wrapper .gform_page_footer :is(button,input[type=button],input[type=submit]):is(:hover,:focus-visible),html body.hs-site .gform_wrapper .gform_footer :is(button,input[type=button],input[type=submit]):is(:hover,:focus-visible){background:#2c2840!important;border-color:#2c2840!important;color:#fff!important}
html body.hs-site .gform_wrapper .gform_page_footer :is(button,input[type=button],input[type=submit]).gform_previous_button{background:transparent!important;color:#3b3650!important;border-color:#bd9759!important}
html body.hs-site .gform_wrapper .gform_page_footer :is(button,input[type=button],input[type=submit]).gform_previous_button:is(:hover,:focus-visible){background:#f1edf7!important;color:#3b3650!important;border-color:#bd9759!important}
/* field row: labels that wrap (e.g. "Gift card amount*") no longer push their input lower than neighbours */
body.hs-site .gform_wrapper .gform_fields{align-items:start}
/* narrow (third/quarter) fields: reserve two label lines and bottom-align the label, so a wrapping label never drops its input below the neighbours */
body.hs-site .gform_wrapper :is(.gfield--width-third,.gfield--width-quarter,.gfield--width-two-thirds,.gfield--width-five-twelfths,.gfield--width-third) > :is(.gfield_label,legend.gfield_label){display:flex!important;align-items:flex-end;min-height:2.9em;line-height:1.35!important;white-space:normal}
@media (max-width:640px){body.hs-site .gform_wrapper :is(.gfield--width-third,.gfield--width-quarter,.gfield--width-two-thirds,.gfield--width-five-twelfths) > :is(.gfield_label,legend.gfield_label){min-height:0}}
@media (max-width:600px){html body.hs-site .gform_wrapper .gform_page_footer :is(button,input[type=button],input[type=submit]),html body.hs-site .gform_wrapper .gform_footer :is(button,input[type=button],input[type=submit]){flex:1 1 auto}}
body.hs-site .gform_wrapper .gf_progressbar_percentage{display:flex!important;align-items:center;justify-content:flex-end;padding:0 10px!important;min-width:44px;box-sizing:border-box}body.hs-site .gform_wrapper .gf_progressbar_percentage span{float:none!important;line-height:1}

/* =====================================================================
   §12 Legacy event-description helpers (2.1.51)
   Classes typed by hand into older Events Calendar descriptions on the live
   site (.callNow, .callUs, .alertEvent, .imageEvent, .priceBox, .linkComments,
   .observartions). Moved out of Divi → Theme Options → Custom CSS and redrawn
   in the plum/gold palette so old events keep their layout. The full events
   restyle comes after the move to live.
   ===================================================================== */
body.hs-site .gform_wrapper.gravity-theme .instruction{display:none}
body.hs-site .tribe-events-single-event-description ul{list-style:none;margin:1vh 0 2vh!important;padding:0;color:#655f70}
body.hs-site .tribe-events-single-event-description ul>li{margin:0 1rem;padding-left:1.3em;text-indent:-1.3em}
body.hs-site .tribe-events-single-event-description li::before{content:"\25C6";color:#bd9759;display:inline-block;font-size:.8em;width:1.3em;text-indent:0}
body.hs-site .tribe-events-single-event-description sup{font-size:.56rem;bottom:.3rem;margin:0 2px 0 -2px}
body.hs-site .alertEvent{background:#3b3650;color:#fff!important;padding:.5em 3em!important;border-radius:30px;text-align:center;margin:0 auto;width:fit-content;font-family:'Montserrat',sans-serif;font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:600!important}
body.hs-site .observartions{padding:0 20px;text-align:center;margin-top:3vh;color:#86672f!important;font-style:italic}
body.hs-site .callNow,body.hs-site .callUs{clear:both;background:#3b3650;color:#fff;text-align:center;padding:.6em 1em;margin:4vh 0;border-radius:14px;font-family:'Montserrat',sans-serif;font-size:13px;letter-spacing:.08em}
body.hs-site .callUs p{color:#fff!important;font-size:1.1rem!important;margin:0!important}
body.hs-site :is(.callNow,.callUs) a,body.hs-site :is(.callNow,.callUs) a:link{color:#d8bf8f!important;font-weight:700;font-size:1.3rem;padding-left:8px;text-decoration:none}
body.hs-site :is(.callNow,.callUs) a:is(:hover,:focus-visible){color:#fff!important}
body.hs-site .imageEvent{float:right!important;padding:0 0 2vh 2vw}
body.hs-site .imageEvent img{width:400px!important;max-width:100%;margin-bottom:0!important;border-radius:0 0 35% 0}
body.hs-site .imageEvent figcaption{font-size:.7rem;padding:0;color:#655f70!important}
@media (max-width:640px){body.hs-site .imageEvent{float:none!important;padding:0 0 2vh}}
body.hs-site .priceBox tr{border-bottom:1px solid rgba(48,44,60,.12)}
body.hs-site .priceBox tr td{padding:6px!important;vertical-align:bottom;border:0!important}
body.hs-site .priceBox .nBorder{border-bottom:1px dashed transparent!important}
body.hs-site .priceLeft{width:80%!important}
body.hs-site .priceLeft span{float:right;font-size:80%;color:#655f70}
body.hs-site .priceLeft span::before{content:"("}body.hs-site .priceLeft span::after{content:")"}
body.hs-site .priceright{width:20%!important;text-align:right!important;font-weight:700;white-space:nowrap!important;color:#3b3650;font-family:'Playfair Display',Georgia,serif}
body.hs-site .linkComments a,body.hs-site .linkComments a:link{display:inline-block;color:#3b3650!important;font-family:'Montserrat',sans-serif;font-size:11px;letter-spacing:.12em;text-transform:uppercase;margin:2px;padding:6px 16px;border:1px solid #bd9759!important;border-radius:30px;text-decoration:none}
body.hs-site .linkComments a:is(:hover,:focus-visible){color:#fff!important;background:#3b3650!important;border-color:#3b3650!important}
body.hs-site .wp-caption p.wp-caption-text{font-size:.7rem!important;padding:0 10px!important;color:#655f70}


/* ===== §4b — Events list enhancements (theme prints the hero via tribe_events_before_html) ===== */
html body.hs-site .hs-ev-hero{background:#3b3650;color:#fff;text-align:center;padding:84px 24px 76px;width:100vw;margin-left:calc(50% - 50vw);margin-bottom:56px}
html body.hs-site .hs-ev-hero__k{font:600 11px/1 'Montserrat',sans-serif;letter-spacing:.34em;text-transform:uppercase;color:#bd9759;margin:0 0 18px}
html body.hs-site .hs-ev-hero__h{font:500 58px/1.06 'Playfair Display',serif;color:#fff;margin:0 0 16px}
html body.hs-site .hs-ev-hero__h em{color:#bd9759}
html body.hs-site .hs-ev-hero__p{font:italic 21px/1.5 'Cormorant Garamond',serif;color:rgba(255,255,255,.88);max-width:46ch;margin:0 auto}
html body.hs-site .tribe-events .tribe-events-calendar-list__month-separator{display:flex;align-items:center;gap:18px;margin:46px 0 18px}
html body.hs-site .tribe-events .tribe-events-calendar-list__month-separator:after{content:"";flex:1;height:1px;background:rgba(189,151,89,.45)}
html body.hs-site .tribe-events .tribe-events-calendar-list__month-separator-text{font:600 11px/1 'Montserrat',sans-serif;letter-spacing:.26em;text-transform:uppercase;color:#86672f}
html body.hs-site .tribe-events .tribe-events-calendar-list__event-row{display:grid;grid-template-columns:84px minmax(0,1fr);gap:22px;align-items:start;margin:0}
html body.hs-site .tribe-events .tribe-events-calendar-list__event-date-tag-datetime{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:#3b3650;border-radius:16px;width:84px;height:92px}
html body.hs-site .tribe-events .tribe-events-calendar-list__event-date-tag-weekday{font:600 10px/1 'Montserrat',sans-serif;letter-spacing:.22em;text-transform:uppercase;color:#bd9759}
html body.hs-site .tribe-events .tribe-events-calendar-list__event-date-tag-daynum{font:500 34px/1 'Playfair Display',serif;color:#fff}
html body.hs-site .tribe-events .tribe-events-calendar-list__event{display:grid;grid-template-columns:300px minmax(0,1fr);gap:34px;background:#fff;border:1px solid rgba(48,44,60,.1);border-radius:22px;padding:22px;transition:box-shadow .3s,transform .3s}
html body.hs-site .tribe-events .tribe-events-calendar-list__event:hover{box-shadow:0 24px 50px -28px rgba(44,40,64,.4);transform:translateY(-2px)}
html body.hs-site .tribe-events .tribe-events-calendar-list__event-featured-image-link{display:block;height:100%;border-radius:16px;overflow:hidden}
html body.hs-site .tribe-events .tribe-events-calendar-list__event-featured-image{width:100%;height:100%;min-height:230px;object-fit:cover;display:block;transition:transform .6s}
html body.hs-site .tribe-events .tribe-events-calendar-list__event:hover .tribe-events-calendar-list__event-featured-image{transform:scale(1.04)}
html body.hs-site .tribe-events .tribe-events-calendar-list__event-details{padding:8px 8px 6px 0;display:flex;flex-direction:column}
html body.hs-site .tribe-events .tribe-events-calendar-list__event-datetime-wrapper{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;font:500 11px/1.3 'Montserrat',sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#86672f}
html body.hs-site .tribe-events .tribe-events-calendar-series-archive__link{font:500 10px/1 'Montserrat',sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#3b3650;background:#f1edf7;border:1px solid #e8e2f1;border-radius:30px;padding:6px 11px;text-decoration:none}
html body.hs-site .tribe-events .tribe-events-calendar-series-archive__link:is(:hover,:focus-visible){color:#86672f;border-color:rgba(189,151,89,.6)}
html body.hs-site .tribe-events .tribe-events-calendar-list__event-title{margin:12px 0 8px}
html body.hs-site .tribe-events .tribe-events-calendar-list__event-title-link{font:500 30px/1.15 'Playfair Display',serif;color:#3b3650;text-decoration:none;border:0}
html body.hs-site .tribe-events .tribe-events-calendar-list__event-title-link:is(:hover,:focus-visible){color:#86672f}
html body.hs-site .tribe-events .tribe-events-calendar-list__event-venue{font:500 12px/1.5 'Montserrat',sans-serif;color:#655f70;font-style:normal;margin-bottom:12px}
html body.hs-site .tribe-events .tribe-events-calendar-list__event-venue-title{font-weight:600;color:#302c3c}
html body.hs-site .tribe-events .tribe-events-calendar-list__event-description p{font:19px/1.6 'Cormorant Garamond',serif;color:#655f70;margin:0}
html body.hs-site .tribe-events .tribe-events-calendar-list__event-cost{margin-top:auto;padding-top:18px;display:flex;align-items:center;justify-content:space-between;gap:14px;border-top:1px solid rgba(48,44,60,.08)}
html body.hs-site .tribe-events .tribe-events-c-small-cta__price{font:500 24px/1 'Playfair Display',serif;color:#3b3650}

html body.hs-site .tribe-events .tribe-events-calendar-list__event-cost:after{content:"View details →";font:600 10.5px/1 'Montserrat',sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#3b3650;border-bottom:1px solid #bd9759;padding-bottom:3px}
html body.hs-site .tribe-events .tribe-events-calendar-list__event:hover .tribe-events-calendar-list__event-cost:after{color:#86672f}
html body.hs-site .tribe-events .tribe-events-c-nav{display:flex;justify-content:space-between;border-top:1px solid rgba(189,151,89,.45);margin-top:54px;padding-top:24px}
html body.hs-site .tribe-events .tribe-events-c-nav a,html body.hs-site .tribe-events .tribe-events-c-nav span{font:600 11px/1 'Montserrat',sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#3b3650;text-decoration:none}
html body.hs-site .tribe-events .tribe-events-c-nav span[disabled]{color:rgba(48,44,60,.3)}
html body.hs-site .tribe-events .tribe-events-c-nav a:is(:hover,:focus-visible){color:#86672f}
html body.hs-site .tribe-events .tribe-events-c-subscribe-dropdown__button{display:inline-flex;align-items:center;gap:8px;background:transparent!important;border:1px solid #bd9759!important;border-radius:30px!important;padding:13px 24px!important;font:600 11px/1 'Montserrat',sans-serif!important;letter-spacing:.16em;text-transform:uppercase;color:#3b3650!important}
html body.hs-site .tribe-events .tribe-events-c-subscribe-dropdown__button:is(:hover,:focus-within){background:#3b3650!important;border-color:#3b3650!important;color:#fff!important}
@media (max-width:860px){html body.hs-site .hs-ev-hero{padding:60px 22px 54px;margin-bottom:36px}html body.hs-site .hs-ev-hero__h{font-size:40px}html body.hs-site .tribe-events .tribe-events-calendar-list__event-row{grid-template-columns:minmax(0,1fr);gap:12px}html body.hs-site .tribe-events .tribe-events-calendar-list__event-date-tag-datetime{flex-direction:row;width:auto;height:auto;display:inline-flex;padding:9px 14px;border-radius:30px;gap:10px}html body.hs-site .tribe-events .tribe-events-calendar-list__event-date-tag-daynum{font-size:20px}html body.hs-site .tribe-events .tribe-events-calendar-list__event{grid-template-columns:minmax(0,1fr);gap:18px;padding:16px}html body.hs-site .tribe-events .tribe-events-calendar-list__event-featured-image{min-height:0;aspect-ratio:16/10}html body.hs-site .tribe-events .tribe-events-calendar-list__event-title-link{font-size:25px}}
html body.hs-site .tribe-events :is(.tribe-events-calendar-list__event-wrapper,.tribe-events-calendar-list__event-date-tag,.tribe-events-calendar-list__event-featured-image-wrapper,.tribe-events-calendar-list__event-details){width:auto!important;max-width:none!important;flex:none!important;padding:0!important;margin:0!important}
html body.hs-site .tribe-events .tribe-events-calendar-list__event-row,html body.hs-site .tribe-events .tribe-events-calendar-list__event{margin-left:0!important;margin-right:0!important;flex-wrap:nowrap}
html body.hs-site .tribe-events .tribe-events-calendar-list__event-row{display:grid!important}html body.hs-site .tribe-events .tribe-events-calendar-list__event{display:grid!important}
html body.hs-site .tribe-events .tribe-events-calendar-list__event-featured-image-wrapper{order:0!important}
body.hs-site.post-type-archive-tribe_events,body.hs-site.tribe-events-page-template{overflow-x:clip}
@media (max-width:860px){html body.hs-site .tribe-events .tribe-events-calendar-list__event-row,html body.hs-site .tribe-events .tribe-events-calendar-list__event{grid-template-columns:minmax(0,1fr)!important}}


/* ===== §4c — Single event (Reserve card printed by inc/events.php) ===== */
body.single-tribe_events #tribe-events-content.tribe-events-single{max-width:1100px!important;margin:0 auto!important;padding:56px 0 90px!important}
body.single-tribe_events .tribe-events-back{margin:0 0 30px!important;padding:0!important}
body.single-tribe_events .tribe-events-back a{font:600 11px/1 'Montserrat',sans-serif!important;letter-spacing:.2em;text-transform:uppercase;color:#86672f!important;text-decoration:none!important;border-bottom:1px solid rgba(189,151,89,.5);padding-bottom:4px}
body.single-tribe_events .tribe-events-back a:is(:hover,:focus-visible){color:#3b3650!important;border-bottom-color:#3b3650}
body.single-tribe_events .tec_series_marker{display:inline-flex;align-items:center;gap:8px;background:#f1edf7;border:1px solid #e8e2f1;border-radius:30px;padding:8px 16px;margin:0 0 18px;font:500 10.5px/1 'Montserrat',sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#302c3c}
body.single-tribe_events .tec_series_marker__icon{color:#86672f}
body.single-tribe_events .tec_series_marker a{color:#3b3650!important;text-decoration:none}
body.single-tribe_events .tec_series_marker a:is(:hover,:focus-visible){color:#86672f!important}
body.single-tribe_events .tribe-events-single-event-title{font:500 60px/1.06 'Playfair Display',serif!important;color:#3b3650!important;margin:0 0 18px!important;padding:0!important}
body.single-tribe_events .tribe-events-schedule{display:flex!important;flex-wrap:wrap;align-items:center;gap:12px 18px;margin:0 0 44px!important;padding:0 0 28px!important;border-bottom:1px solid rgba(189,151,89,.45)}
body.single-tribe_events .tribe-events-schedule>div,body.single-tribe_events .tribe-events-schedule h2{font:500 12px/1.4 'Montserrat',sans-serif!important;letter-spacing:.16em;text-transform:uppercase;color:#86672f!important;margin:0!important}
body.single-tribe_events .tribe-events-schedule .tribe-events-cost{font:500 20px/1 'Playfair Display',serif!important;color:#fff!important;background:#3b3650;border-radius:30px;padding:9px 18px;letter-spacing:0;text-transform:none}
body.single-tribe_events .tribe_events{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:28px 56px;align-items:start}
body.single-tribe_events .tribe_events>*{grid-column:1/-1;margin:0!important}
body.single-tribe_events .tribe_events>.tribe-events-event-image{grid-column:1;grid-row:1/span 3;border-radius:22px;overflow:hidden;box-shadow:0 30px 60px -32px rgba(44,40,64,.5)}
body.single-tribe_events .tribe_events>.tribe-events-event-image img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover}
body.single-tribe_events .tribe_events>.tribe-events-single-event-description,body.single-tribe_events .tribe_events>.hs-ev-cta,body.single-tribe_events .tribe_events>.tribe-events.tribe-common{grid-column:2}
body.single-tribe_events .tribe_events:not(:has(>.tribe-events-event-image)){grid-template-columns:minmax(0,1fr)}
body.single-tribe_events .tribe_events:not(:has(>.tribe-events-event-image))>*{grid-column:1/-1}
body.single-tribe_events .tribe-events-single-event-description p{font:20px/1.65 'Cormorant Garamond',serif!important;color:#302c3c!important;margin:0 0 16px!important;padding:0!important}
body.single-tribe_events .tribe-events-single-event-description a{color:#86672f!important;border-bottom:1px solid rgba(189,151,89,.5);text-decoration:none!important}
body.single-tribe_events .tribe-events-single-event-description a:is(:hover,:focus-visible){color:#3b3650!important}
body.single-tribe_events .hs-ev-cta{background:#3b3650;border-radius:22px;padding:28px 30px;color:#fff}
body.single-tribe_events .hs-ev-cta__k{font:600 11px/1 'Montserrat',sans-serif;letter-spacing:.24em;text-transform:uppercase;color:#bd9759;margin:0 0 10px!important;padding:0!important}
body.single-tribe_events .hs-ev-cta__p{font:italic 19px/1.5 'Cormorant Garamond',serif;color:rgba(255,255,255,.88);margin:0 0 18px!important;padding:0!important}
body.single-tribe_events .hs-ev-cta__row{display:flex;flex-wrap:wrap;gap:12px}
body.single-tribe_events .hs-ev-cta__btn{font:600 11px/1 'Montserrat',sans-serif;letter-spacing:.16em;text-transform:uppercase;background:#bd9759;color:#2c2840!important;border:1px solid #bd9759;border-radius:30px;padding:14px 24px;text-decoration:none!important;transition:background .25s,color .25s,border-color .25s}
body.single-tribe_events .hs-ev-cta__btn:is(:hover,:focus-visible){background:#d8bf8f;border-color:#d8bf8f;color:#2c2840!important}
body.single-tribe_events .hs-ev-cta__btn--ghost{background:transparent;color:#fff!important;border-color:rgba(255,255,255,.6)}
body.single-tribe_events .hs-ev-cta__btn--ghost:is(:hover,:focus-visible){background:#fff;color:#3b3650!important;border-color:#fff}
body.single-tribe_events .tribe-events-c-subscribe-dropdown__container{display:flex}
body.single-tribe_events .tribe-events-c-subscribe-dropdown__button{display:inline-flex!important;align-items:center;background:transparent!important;border:1px solid #bd9759!important;border-radius:30px!important;padding:0!important;color:#3b3650!important}
body.single-tribe_events .tribe-events-c-subscribe-dropdown__button-text,body.single-tribe_events .tribe-events-c-subscribe-dropdown__button button{font:600 11px/1 'Montserrat',sans-serif!important;letter-spacing:.16em!important;text-transform:uppercase!important;color:#3b3650!important;background:none!important;border:0!important;padding:14px 22px!important;cursor:pointer}
body.single-tribe_events .tribe-events-c-subscribe-dropdown__button:is(:hover,:focus-within){background:#3b3650!important;border-color:#3b3650!important}
body.single-tribe_events .tribe-events-c-subscribe-dropdown__button:is(:hover,:focus-within) :is(button,.tribe-events-c-subscribe-dropdown__button-text,svg){color:#fff!important;fill:#fff!important}
body.single-tribe_events .tribe-events-c-subscribe-dropdown__button svg{color:#86672f}
body.single-tribe_events .tribe-events-event-meta{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:28px 36px;background:#fff!important;border:1px solid rgba(48,44,60,.1)!important;border-radius:22px!important;padding:34px 36px!important;margin:0!important}
body.single-tribe_events .tribe-events-event-meta.primary{margin-top:28px!important}
body.single-tribe_events .tribe-events-event-meta.secondary{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);align-items:stretch}
body.single-tribe_events .tribe-events-meta-group{width:auto!important;float:none!important;padding:0!important;margin:0!important}
body.single-tribe_events .tribe-events-single-section-title{font:600 11px/1 'Montserrat',sans-serif!important;letter-spacing:.22em!important;text-transform:uppercase;color:#86672f!important;margin:0 0 16px!important;padding:0 0 12px!important;border-bottom:1px solid rgba(189,151,89,.45)}
body.single-tribe_events .tribe-events-meta-group dl{margin:0}
body.single-tribe_events .tribe-events-meta-group dt{font:600 10px/1.2 'Montserrat',sans-serif!important;letter-spacing:.14em;text-transform:uppercase;color:#655f70!important;margin:14px 0 4px!important}
body.single-tribe_events .tribe-events-meta-group dt:first-child{margin-top:0!important}
body.single-tribe_events .tribe-events-meta-group dd,body.single-tribe_events .tribe-events-meta-group dd *,body.single-tribe_events .tribe-events-address{font:18px/1.45 'Cormorant Garamond',serif!important;color:#302c3c!important;margin:0!important;font-style:normal}
body.single-tribe_events .tribe-events-meta-group abbr{text-decoration:none!important;border:0!important}
body.single-tribe_events .tribe-events-meta-group a{color:#3b3650!important;text-decoration:none!important;border-bottom:1px solid rgba(189,151,89,.5)}
body.single-tribe_events .tribe-events-meta-group a:is(:hover,:focus-visible){color:#86672f!important;border-bottom-color:#86672f}
body.single-tribe_events .tribe-events-meta-group .tribe-events-gmap{display:inline-block;margin-top:6px;font:600 10px/1 'Montserrat',sans-serif!important;letter-spacing:.14em;text-transform:uppercase;color:#86672f!important}
body.single-tribe_events .tribe-events-venue-map{width:auto!important;float:none!important;margin:0!important;padding:0!important;border-radius:16px;overflow:hidden;min-height:240px}
body.single-tribe_events .tribe-events-venue-map iframe{width:100%!important;height:100%!important;min-height:240px;display:block;border:0}
body.single-tribe_events #tribe-events-footer{margin:44px 0 0!important;padding:24px 0 0!important;border-top:1px solid rgba(189,151,89,.45)!important}
body.single-tribe_events .tribe-events-sub-nav{display:flex;justify-content:space-between;list-style:none!important;margin:0!important;padding:0!important}
body.single-tribe_events .tribe-events-sub-nav li{list-style:none}
body.single-tribe_events .tribe-events-sub-nav a{font:600 11px/1 'Montserrat',sans-serif!important;letter-spacing:.16em;text-transform:uppercase;color:#3b3650!important;text-decoration:none!important}
body.single-tribe_events .tribe-events-sub-nav a:is(:hover,:focus-visible){color:#86672f!important}
@media (max-width:860px){body.single-tribe_events #tribe-events-content.tribe-events-single{padding:36px 22px 60px!important}body.single-tribe_events .tribe-events-single-event-title{font-size:40px!important}body.single-tribe_events .tribe_events{grid-template-columns:minmax(0,1fr);gap:22px}body.single-tribe_events .tribe_events>*{grid-column:1/-1!important;grid-row:auto!important}body.single-tribe_events .tribe_events>.tribe-events-event-image img{aspect-ratio:4/3}body.single-tribe_events .tribe-events-event-meta,body.single-tribe_events .tribe-events-event-meta.secondary{grid-template-columns:minmax(0,1fr);padding:24px 22px!important}body.single-tribe_events .hs-ev-cta{padding:24px 22px}}

/* ===== §4d (2.1.55) — live-site fixes: hero gap, list photo, month view + tooltip, single image + meta ===== */
/* hero sits flush under the header (Divi container + TEC container top padding removed) */
html body.hs-site:is(.post-type-archive-tribe_events,.tribe-events-page-template,.events-archive) #main-content .container{padding-top:0!important}
html body.hs-site:is(.post-type-archive-tribe_events,.tribe-events-page-template,.events-archive) #main-content .container:before{display:none!important}
html body.hs-site .tribe-events.tribe-events-view,html body.hs-site .tribe-events .tribe-events-l-container{padding-top:0!important}
html body.hs-site .hs-ev-hero{margin-top:0!important}
/* list photo fills its slot (no offset box) */
html body.hs-site .tribe-events .tribe-events-calendar-list__event-row{background:none!important;box-shadow:none!important}
html body.hs-site .tribe-events .tribe-events-calendar-list__event-featured-image-wrapper{position:relative;align-self:stretch}
html body.hs-site .tribe-events .tribe-events-calendar-list__event-featured-image-link{display:block!important;width:100%!important;height:100%!important;margin:0!important;padding:0!important;border-radius:16px;overflow:hidden;background:none!important}
html body.hs-site .tribe-events .tribe-events-calendar-list__event-featured-image{position:static!important;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover}

/* ---- Month view ---- */
html body.hs-site .tribe-events .tribe-events-calendar-month__header-column-title{font:600 10.5px/1 'Montserrat',sans-serif!important;letter-spacing:.2em!important;text-transform:uppercase;color:#86672f!important}
html body.hs-site .tribe-events .tribe-events-calendar-month__body{border:1px solid rgba(48,44,60,.12)!important;border-radius:20px;overflow:hidden;background:#fff}
html body.hs-site .tribe-events .tribe-events-calendar-month__day{border-color:rgba(48,44,60,.08)!important;background:#fff}
html body.hs-site .tribe-events .tribe-events-calendar-month__day--other-month,html body.hs-site .tribe-events .tribe-events-calendar-month__day--past{background:#faf8f6!important}
html body.hs-site .tribe-events :is(.tribe-events-calendar-month__day-date,.tribe-events-calendar-month__day-date-daynum,.tribe-events-calendar-month__day-date-link){font:500 22px/1 'Playfair Display',serif!important;color:#3b3650!important;text-decoration:none!important}
html body.hs-site .tribe-events .tribe-events-calendar-month__day--past :is(.tribe-events-calendar-month__day-date-daynum,.tribe-events-calendar-month__day-date-link),html body.hs-site .tribe-events .tribe-events-calendar-month__day--other-month .tribe-events-calendar-month__day-date-daynum{color:rgba(48,44,60,.32)!important}
html body.hs-site .tribe-events .tribe-events-calendar-month__day-cell--selected,html body.hs-site .tribe-events .tribe-events-calendar-month__day--current{box-shadow:inset 0 3px 0 #bd9759!important}
html body.hs-site .tribe-events .tribe-events-calendar-month__day--current:after{display:none!important}
html body.hs-site .tribe-events .tribe-events-calendar-month__day--current :is(.tribe-events-calendar-month__day-date-daynum,.tribe-events-calendar-month__day-date-link){color:#86672f!important}
html body.hs-site .tribe-events .tribe-events-calendar-month__calendar-event{margin:8px 0 0!important;padding:0!important}
html body.hs-site .tribe-events .tribe-events-calendar-month__calendar-event-title,html body.hs-site .tribe-events .tribe-events-calendar-month__calendar-event-title-link{font:500 11px/1.25 'Montserrat',sans-serif!important;letter-spacing:.04em;color:#fff!important;text-decoration:none!important;border:0!important}
html body.hs-site .tribe-events .tribe-events-calendar-month__calendar-event-details{display:block;background:#3b3650;border-radius:10px;padding:7px 9px}
html body.hs-site .tribe-events .tribe-events-calendar-month__calendar-event-datetime{font:600 9.5px/1 'Montserrat',sans-serif!important;letter-spacing:.12em;text-transform:uppercase;color:#bd9759!important;margin-bottom:4px}
html body.hs-site .tribe-events .tribe-events-calendar-month__calendar-event-details:hover{background:#2c2840}
html body.hs-site .tribe-events .tribe-events-calendar-month__multiday-event-bar{background:#3b3650!important;border-radius:8px}
html body.hs-site .tribe-events .tribe-events-calendar-month__multiday-event-bar-title{color:#fff!important;font:500 11px/1.2 'Montserrat',sans-serif!important}
html body.hs-site .tribe-events .tribe-events-calendar-month__more-events-link{font:600 10px/1 'Montserrat',sans-serif!important;letter-spacing:.12em;text-transform:uppercase;color:#86672f!important}
/* mobile month: dots + day list */
html body.hs-site .tribe-events .tribe-events-calendar-month__mobile-events-icon--event{background:#bd9759!important}
html body.hs-site .tribe-events .tribe-events-calendar-month__day-cell--selected{background:#3b3650!important}
html body.hs-site .tribe-events .tribe-events-calendar-month__day-cell--selected :is(.tribe-events-calendar-month__day-date,.tribe-events-calendar-month__day-date-daynum){color:#fff!important}

/* ---- Tooltip (month hover) — no coral date, no blue title ---- */
.tooltipster-base.tribe-events-tooltip-theme .tooltipster-box,.tribe-events-tooltip-theme .tooltipster-box{background:#fff!important;border:1px solid rgba(189,151,89,.45)!important;border-radius:18px!important;box-shadow:0 30px 60px -28px rgba(44,40,64,.45)!important}
.tribe-events-tooltip-theme .tooltipster-content{padding:16px!important}
.tribe-events-tooltip-theme .tribe-events-calendar-month__calendar-event-tooltip-featured-image-wrapper{border-radius:12px;overflow:hidden;margin-bottom:12px}
.tribe-events-tooltip-theme :is(.tribe-events-calendar-month__calendar-event-tooltip-datetime,.tribe-events-calendar-month__calendar-event-tooltip-datetime *){font:600 10px/1.3 'Montserrat',sans-serif!important;letter-spacing:.12em!important;text-transform:uppercase;color:#86672f!important}
.tribe-events-tooltip-theme :is(.tribe-events-calendar-month__calendar-event-tooltip-title,.tribe-events-calendar-month__calendar-event-tooltip-title-link){font:500 21px/1.2 'Playfair Display',serif!important;color:#3b3650!important;text-decoration:none!important;border:0!important}
.tribe-events-tooltip-theme .tribe-events-calendar-month__calendar-event-tooltip-title-link:is(:hover,:focus-visible){color:#86672f!important}
.tribe-events-tooltip-theme .tribe-events-calendar-month__calendar-event-tooltip-description,.tribe-events-tooltip-theme .tribe-events-calendar-month__calendar-event-tooltip-description p{font:16.5px/1.5 'Cormorant Garamond',serif!important;color:#655f70!important}
.tribe-events-tooltip-theme .tribe-events-c-small-cta__price{font:500 20px/1 'Playfair Display',serif!important;color:#3b3650!important}
.tribe-events-tooltip-theme [class*="series"] a{color:#3b3650!important}

/* ---- Single: force the featured image to show (something on the live site hides it) ---- */
html body.single-tribe_events .tribe-events-event-image{display:block!important;visibility:visible!important;opacity:1!important;height:auto!important;max-height:none!important}
html body.single-tribe_events .tribe-events-event-image img{display:block!important;visibility:visible!important;opacity:1!important;width:100%!important;height:auto!important;max-width:none!important;aspect-ratio:1/1;object-fit:cover}
/* series line → lavender pill (whatever Pro calls the wrapper: the element right before the title) */
html body.single-tribe_events #tribe-events-content>:has(+ .tribe-events-single-event-title){display:inline-flex!important;align-items:center;gap:8px;background:#f1edf7;border:1px solid #e8e2f1;border-radius:30px;padding:8px 16px!important;margin:0 0 18px!important;font:500 10.5px/1 'Montserrat',sans-serif!important;letter-spacing:.14em;text-transform:uppercase;color:#302c3c!important}
html body.single-tribe_events #tribe-events-content>:has(+ .tribe-events-single-event-title) *{font:inherit!important;letter-spacing:inherit;text-transform:inherit}
html body.single-tribe_events #tribe-events-content>:has(+ .tribe-events-single-event-title) a{color:#3b3650!important;text-decoration:none!important}
html body.single-tribe_events #tribe-events-content>:has(+ .tribe-events-single-event-title) a:is(:hover,:focus-visible){color:#86672f!important}
/* meta cards: real TEC labels were still Open Sans bold */
html body.single-tribe_events .tribe-events-single .tribe-events-event-meta:before,html body.single-tribe_events .tribe-events-single .tribe-events-event-meta:after{display:none!important;content:none!important}
html body.single-tribe_events .tribe-events-single .tribe-events-event-meta{border-top:1px solid rgba(48,44,60,.1)!important}
html body.single-tribe_events .tribe-events-single .tribe-events-meta-group dl dt,html body.single-tribe_events .tribe-events-single .tribe-events-meta-group .tribe-events-event-meta dt,html body.single-tribe_events .tribe-events-single .tribe-events-meta-group dt *{font:600 10px/1.2 'Montserrat',sans-serif!important;letter-spacing:.14em!important;text-transform:uppercase!important;color:#655f70!important;margin:14px 0 4px!important}
html body.single-tribe_events .tribe-events-single .tribe-events-meta-group dl dt:first-child{margin-top:0!important}
html body.single-tribe_events .tribe-events-single .tribe-events-meta-group dl dd,html body.single-tribe_events .tribe-events-single .tribe-events-meta-group dl dd *:not(a),html body.single-tribe_events .tribe-events-single .tribe-events-meta-group .tribe-events-address,html body.single-tribe_events .tribe-events-single .tribe-events-meta-group .tribe-events-address *{font:18px/1.45 'Cormorant Garamond',serif!important;color:#302c3c!important;letter-spacing:0!important;text-transform:none!important}
html body.single-tribe_events .tribe-events-single .tribe-events-meta-group dl dd a{font:18px/1.45 'Cormorant Garamond',serif!important;color:#3b3650!important;border-bottom:1px solid rgba(189,151,89,.5);text-decoration:none!important}
html body.single-tribe_events .tribe-events-single .tribe-events-meta-group dl dd a:is(:hover,:focus-visible){color:#86672f!important}
html body.single-tribe_events .tribe-events-single .tribe-events-meta-group .tribe-events-gmap{font:600 10px/1 'Montserrat',sans-serif!important;letter-spacing:.14em!important;text-transform:uppercase!important;color:#86672f!important}

/* ===== §4e (2.1.56) — month multi-day bars + coral hover line ===== */
html body.hs-site .tribe-common{--tec-color-accent-secondary:#bd9759;--tec-color-accent-secondary-hover:#86672f;--tec-color-accent-secondary-active:#86672f;--tec-color-border-active-month-grid-hover:#bd9759;--tec-color-background-multiday:#3b3650;--tec-color-background-multiday-hover:#2c2840}
html body.hs-site .tribe-events .tribe-events-calendar-month__multiday-event-bar,html body.hs-site .tribe-events .tribe-events-calendar-month__multiday-event-bar-inner{background:#3b3650!important;border-radius:8px!important}
html body.hs-site .tribe-events .tribe-events-calendar-month__multiday-event-bar-inner:hover,html body.hs-site .tribe-events .tribe-events-calendar-month__multiday-event:hover .tribe-events-calendar-month__multiday-event-bar-inner{background:#2c2840!important}
html body.hs-site .tribe-events .tribe-events-calendar-month__multiday-event-bar-title{font:500 11px/1.2 'Montserrat',sans-serif!important;color:#fff!important}
html body.hs-site .tribe-events .tribe-events-calendar-month__multiday-event-bar-inner svg,html body.hs-site .tribe-events .tribe-events-calendar-month__multiday-event-bar-inner .tribe-common-c-svgicon{color:#bd9759!important;fill:#bd9759!important}
html body.hs-site .tribe-events .tribe-events-calendar-month__day:hover:after,html body.hs-site .tribe-events .tribe-events-calendar-month__day:focus-within:after{background-color:#bd9759!important}

/* ===== §4f (2.1.57) — tooltip: one card only (strip tooltipster's outer square frame) ===== */
.tooltipster-base.tribe-events-tooltip-theme,.tooltipster-base.tribe-events-tooltip-theme--hover{background:none!important;border:0!important;box-shadow:none!important;padding:0!important}
.tribe-events-tooltip-theme .tooltipster-content,.tribe-events-tooltip-theme .tribe-events-calendar-month__calendar-event-tooltip{background:none!important;border:0!important;box-shadow:none!important}
.tribe-events-tooltip-theme .tooltipster-arrow{display:none!important}
.tribe-events-tooltip-theme .tribe-events-calendar-month__calendar-event-tooltip-description{display:-webkit-box!important;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}

/* ===== §4g (2.1.58) — Event Series page (Pro summary view) ===== */
/* Divi post header (title, "by author | date") + the raw description are replaced by the series hero */
html body.single-tribe_event_series .et_post_meta_wrapper,html body.single-tribe_event_series .et_post_meta_wrapper *,html body.single-tribe_event_series .post-meta{display:none!important}
html body.single-tribe_event_series .entry-content>:not([class*="tribe"]):not(script):not(style){display:none!important}
html body.single-tribe_event_series #main-content .container{padding-top:0!important;width:100%!important;max-width:1100px!important}
html body.single-tribe_event_series #main-content .container:before{display:none!important}
html body.single-tribe_event_series #left-area{width:100%!important;padding:0!important;float:none!important}
html body.single-tribe_event_series article.et_pb_post,html body.single-tribe_event_series .et_pb_post{margin:0!important;padding:0!important;border:0!important}
html body.single-tribe_event_series .entry-content{padding-top:0!important}
html body.hs-site .hs-ev-hero__back{margin:22px 0 0!important}
html body.hs-site .hs-ev-hero__back a{font:600 11px/1 'Montserrat',sans-serif;letter-spacing:.2em;text-transform:uppercase;color:#bd9759!important;text-decoration:none;border-bottom:1px solid rgba(189,151,89,.6);padding-bottom:4px}
html body.hs-site .hs-ev-hero__back a:is(:hover,:focus-visible){color:#fff!important;border-bottom-color:#fff}
/* summary list */
html body.hs-site .tribe-events .tribe-events-pro-summary__month-separator{display:flex;align-items:center;gap:18px;margin:40px 0 12px!important}
html body.hs-site .tribe-events .tribe-events-pro-summary__month-separator:after{content:"";flex:1;height:1px;background:rgba(189,151,89,.45)}
html body.hs-site .tribe-events .tribe-events-pro-summary__month-separator-text,html body.hs-site .tribe-events .tribe-events-pro-summary__month-separator-text *{font:600 11px/1 'Montserrat',sans-serif!important;letter-spacing:.26em!important;text-transform:uppercase!important;color:#86672f!important}
html body.hs-site .tribe-events .tribe-events-pro-summary__event-row{background:#fff;border:1px solid rgba(48,44,60,.08);border-radius:16px;padding:14px 18px!important;margin:0 0 10px!important;align-items:center;transition:box-shadow .25s,border-color .25s}
html body.hs-site .tribe-events .tribe-events-pro-summary__event-row:hover{border-color:rgba(189,151,89,.55);box-shadow:0 16px 34px -24px rgba(44,40,64,.4)}
html body.hs-site .tribe-events .tribe-events-pro-summary__event-row:after{display:none!important}
html body.hs-site .tribe-events .tribe-events-pro-summary__event-date-tag-datetime{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;background:#3b3650;border-radius:12px;width:58px;height:62px}
html body.hs-site .tribe-events .tribe-events-pro-summary__event-date-tag-month,html body.hs-site .tribe-events .tribe-events-pro-summary__event-date-tag-weekday{font:600 9px/1 'Montserrat',sans-serif!important;letter-spacing:.2em!important;text-transform:uppercase;color:#bd9759!important}
html body.hs-site .tribe-events .tribe-events-pro-summary__event-date-tag-daynum{font:500 24px/1 'Playfair Display',serif!important;color:#fff!important}
html body.hs-site .tribe-events .tribe-events-pro-summary__event-datetime,html body.hs-site .tribe-events .tribe-events-pro-summary__event-datetime *{font:600 10.5px/1.3 'Montserrat',sans-serif!important;letter-spacing:.12em!important;text-transform:uppercase;color:#86672f!important}
html body.hs-site .tribe-events .tribe-events-pro-summary__event-title,html body.hs-site .tribe-events .tribe-events-pro-summary__event-title-link{font:500 22px/1.2 'Playfair Display',serif!important;color:#3b3650!important;text-decoration:none!important;border:0!important}
html body.hs-site .tribe-events .tribe-events-pro-summary__event-title-link:is(:hover,:focus-visible){color:#86672f!important}
html body.hs-site .tribe-events .tribe-events-pro-summary [class*="series-archive"] svg,html body.hs-site .tribe-events .tribe-events-pro-summary .tribe-events-calendar-series-archive__icon{color:#86672f!important}
html body.hs-site .tribe-events .tribe-events-pro-summary [class*="series-archive__link"],html body.hs-site .tribe-events .tribe-events-pro-summary .tribe-events-series-relationship-marker{background:#f1edf7!important;border:1px solid #e8e2f1;border-radius:30px}
html body.hs-site .tribe-events .tribe-events-pro-summary__event-cost,html body.hs-site .tribe-events .tribe-events-pro-summary__event-cost *{font:500 18px/1 'Playfair Display',serif!important;color:#3b3650!important}

/* ===== §4h (2.1.59) — list: space between event cards; series toggle ===== */
html body.hs-site .tribe-events .tribe-events-calendar-list__event-row{margin:0 0 22px!important}
html body.hs-site .tribe-events .tribe-events-calendar-list__event-row:last-child{margin-bottom:0!important}
html body.hs-site .tribe-events .tribe-events-calendar-list__month-separator{margin-top:52px!important}
html body.hs-site .tribe-events .tribe-events-calendar-list__month-separator:first-child{margin-top:28px!important}
html body.hs-site .tribe-events .tribe-common-form-control-toggle{display:inline-flex!important;align-items:center;gap:10px}
html body.hs-site .tribe-events .tribe-common-form-control-toggle__label,html body.hs-site .tribe-events .tribe-common-form-control-toggle label{font:600 10px/1 'Montserrat',sans-serif!important;letter-spacing:.16em!important;text-transform:uppercase;color:#3b3650!important}
html body.hs-site .tribe-events .tribe-common-form-control-toggle__input{accent-color:#3b3650}
html body.hs-site .tribe-events .tribe-common-form-control-toggle__input:checked{background-color:#3b3650!important;border-color:#3b3650!important}
html body.hs-site .tribe-events .tribe-common-form-control-toggle__input:before{background-color:#bd9759!important}
@media (max-width:860px){html body.hs-site .tribe-events .tribe-events-calendar-list__event-row{margin-bottom:28px!important}}

/* ===== §4i (2.1.60) — Additional Fields: price line, badges ===== */
html body.single-tribe_events .hs-ev-cta__badge{display:inline-block;font:600 10px/1 'Montserrat',sans-serif;letter-spacing:.18em;text-transform:uppercase;color:#2c2840;background:#bd9759;border-radius:30px;padding:7px 12px;margin:0 0 14px}
html body.single-tribe_events .hs-ev-cta__price{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px;margin:0 0 12px}
html body.single-tribe_events .hs-ev-cta__price .v{font:500 30px/1.1 'Playfair Display',serif;color:#fff}
html body.single-tribe_events .hs-ev-cta__price .c{font:italic 18px/1.3 'Cormorant Garamond',serif;color:rgba(255,255,255,.82)}
html body.hs-site .tribe-events .tribe-events-c-small-cta__price{font:500 22px/1 'Playfair Display',serif!important;color:#3b3650!important}
html body.single-tribe_events .tribe-events-meta-group-other:not(:has(dd)){display:none!important}
