*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}.skip-link{position:absolute;top:-100%;left:0;background:var(--primary);color:#fff;padding:8px 18px;font-size:14px;font-weight:600;text-decoration:none;border-radius:0 0 8px;z-index:10000}.skip-link:focus{top:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}html{text-rendering:geometricPrecision;-webkit-font-smoothing:antialiased;scroll-behavior:smooth}:root{--primary: #1F9C5B;--primary-deep: #166f3e;--primary-10: rgb(31 156 91 / .1);--primary-22: rgb(31 156 91 / .22);--primary-04: rgb(31 156 91 / .04);--navy: #282E5E;--navy-deep: #181c3a;--sage: #56a97f;--sage-soft: #bfe2cf;--sage-bg: #f0f9f4;--sand: #EFE7DA;--sand-deep: #D9C9AB;--clay: #B58463;--bg: hsl(210, 40%, 99%);--bg-warm: #FAF7F1;--fg: hsl(222, 28%, 14%);--fg2: hsl(215, 16%, 42%);--fg3: hsl(215, 16%, 40%);--card: #ffffff;--muted: hsl(214, 35%, 95%);--border: hsl(214, 26%, 90%);--border-warm: #E5DDCD;--shadow-soft: 0 1px 0 rgba(255, 255, 255, .9) inset, 0 16px 40px rgba(12, 24, 44, .1);--shadow-warm: 0 1px 0 rgba(255, 255, 255, .9) inset, 0 16px 40px rgba(70, 55, 30, .1);--radius-card: 28px;--radius-pill: 9999px;--font-sans: "Open Sans";--font-display: "Playfair Display"}body{font-family:var(--font-sans),sans-serif;background:var(--bg);color:var(--fg);font-size:15px;line-height:1.6}h1{font-size:clamp(44px,5vw,72px)!important;line-height:1.02!important}a{color:var(--primary);text-decoration:none;cursor:pointer}img{max-width:100%;display:block}::selection{background:var(--primary-22)}.container{max-width:1240px;margin:0 auto;padding:0 28px}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);box-shadow:var(--shadow-soft)}.card-warm{background:var(--card);border:1px solid var(--border-warm);border-radius:var(--radius-card);box-shadow:var(--shadow-warm)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:46px;padding:0 22px;border-radius:var(--radius-pill);font-size:14px;font-weight:600;cursor:pointer;border:none;font-family:inherit;text-decoration:none;transition:opacity .2s,transform .15s;white-space:nowrap}.btn:hover{opacity:.88}.btn-primary{background:var(--primary);color:#fff;box-shadow:0 4px 12px #1f9c5b29;transition:opacity .2s,transform .15s,background-color .2s,box-shadow .2s}.btn-primary:hover{background:var(--primary-deep);opacity:1;box-shadow:0 6px 18px #1f9c5b47;transform:translateY(-1px)}.btn-primary:active{transform:translateY(0);box-shadow:0 4px 12px #1f9c5b29}.btn-secondary{background:var(--muted);color:var(--fg)}.btn-outline{background:#fff;color:var(--fg);border:1px solid var(--border)}.btn-sage{background:var(--sage);color:#fff}.btn-sage:hover{background:var(--primary);opacity:1}.btn-navy{background:var(--navy);color:#fff}.btn-navy:hover{background:var(--navy-deep);opacity:1}.btn-sm{height:42px;font-size:13px;padding:0 18px}.btn-lg{height:52px;font-size:15px}.btn-full{width:100%}.serif{font-family:var(--font-display),serif}.serif-i{font-family:var(--font-display),serif;font-style:italic}.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--primary)}.eyebrow-rule:before{content:"";display:inline-block;width:24px;height:1px;background:currentColor}.eyebrow-blue{color:var(--primary)}.grid{display:grid;gap:18px}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-7-5{grid-template-columns:7fr 5fr}.grid-5-7{grid-template-columns:5fr 7fr}.grid-6-6{grid-template-columns:6fr 6fr}.grid-4-8{grid-template-columns:4fr 8fr}.grid-4{grid-template-columns:repeat(4,1fr)}.gap-12{gap:12px}.gap-14{gap:14px}.gap-24{gap:24px}.gap-32{gap:32px}.gap-40{gap:40px}.gap-48{gap:48px}.align-center{align-items:center}.align-start{align-items:flex-start}.align-end{align-items:flex-end}.section{padding-top:80px}.section-sm{padding-top:48px}.section-mb{margin-bottom:48px}.section-mb-lg{margin-bottom:64px}.section-mb-xl{margin-bottom:80px}.wellness-band{border-radius:36px;background:var(--sage-bg);padding:56px 48px;position:relative;overflow:hidden}.wellness-band-sand{background:var(--sand)}.cta-band{border-radius:36px;background:linear-gradient(135deg,var(--navy) 0%,var(--navy-deep) 100%);padding:56px;color:#fff;position:relative;overflow:hidden}.cta-band:before{content:"";position:absolute;inset:0;opacity:.1;background:radial-gradient(circle at 80% 20%,white,transparent 50%);pointer-events:none}.check-list{display:flex;flex-direction:column;gap:8px}.check-list li{display:flex;align-items:flex-start;gap:10px;font-size:14px;color:var(--fg2);line-height:1.6;list-style:none}.check-list .icon-dot{margin-top:4px;width:14px;height:14px;border-radius:50%;background:var(--primary-10);color:var(--primary);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.price-table{overflow:hidden}.price-row{display:grid;grid-template-columns:4fr 2fr 6fr;padding:18px 24px;align-items:center;gap:24px;border-top:1px solid var(--border)}.price-row:first-child{border-top:none}.price-name{font-family:var(--font-display),serif;font-size:16px;font-weight:600;color:var(--fg)}.price-amount{font-size:15px;font-weight:700;color:var(--primary)}.price-desc{font-size:13px;color:var(--fg2)}.facts-strip{overflow:hidden;display:grid;grid-template-columns:repeat(4,1fr)}.facts-strip .fact{padding:22px;border-left:1px solid var(--border)}.facts-strip .fact:first-child{border-left:none}@media (max-width: 640px){.facts-strip{grid-template-columns:repeat(2,1fr)}.facts-strip .fact{border-left:none;border-top:1px solid var(--border)}.facts-strip .fact:first-child,.facts-strip .fact:nth-child(2){border-top:none}.facts-strip .fact:nth-child(odd){border-right:1px solid var(--border)}}.fact-label{display:inline-flex;align-items:center;gap:8px;padding:4px 10px;border-radius:9999px;background:var(--sage-bg);color:var(--fg);font-size:10.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;margin-bottom:10px}.fact-value{font-size:13.5px;color:var(--fg);font-weight:500;line-height:1.5}.timeline-item{border-top:3px solid var(--primary);padding-top:16px}.timeline-phase{font-size:10.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--primary);margin-bottom:6px}.timeline-title{font-family:var(--font-display),serif;font-size:18px;font-weight:600;color:var(--fg);margin-bottom:8px;letter-spacing:-.005em}.timeline-desc{font-size:13.5px;color:var(--fg2);line-height:1.65}.chip{display:inline-flex;align-items:center;padding:6px 14px;border-radius:9999px;font-size:12.5px;font-weight:600;background:#fff;border:1px solid var(--border);color:var(--fg2)}.breadcrumb{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--fg2);margin-bottom:28px}.breadcrumb a{font-weight:600;color:var(--primary)}.breadcrumb span{color:var(--fg3)}.back-link{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--primary);background:none;border:none;padding:0;cursor:pointer;margin-bottom:28px;text-decoration:none}.meta-pill{display:inline-flex;align-items:center;gap:10px;padding:10px 16px;border-radius:var(--radius-pill);border:1px solid var(--border);background:#fff}.meta-pill-icon{width:24px;height:24px;border-radius:50%;background:var(--sage-bg);color:var(--primary);display:inline-flex;align-items:center;justify-content:center}.meta-pill-label{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--fg3)}.meta-pill-value{font-size:13.5px;font-weight:600;color:var(--fg)}.detail-step{position:relative;padding:24px}.detail-step-number{position:absolute;top:-14px;left:24px;width:32px;height:32px;border-radius:50%;background:var(--primary);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;font-family:var(--font-display),serif}.testimonial-quote{font-family:var(--font-display),serif;font-size:18px;line-height:1.45;font-weight:500;letter-spacing:-.005em}.testimonial-footer{padding-top:14px;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}details.faq-item{border:1px solid var(--border);border-radius:var(--radius-card);background:var(--card);box-shadow:var(--shadow-soft);cursor:pointer;overflow:hidden}details.faq-item[open]{border-color:var(--primary)}details.faq-item summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 22px;font-weight:600;font-size:14px;color:var(--fg)}details.faq-item summary::-webkit-details-marker{display:none}details.faq-item summary:after{content:"";flex-shrink:0;width:32px;height:32px;border-radius:50%;background:var(--primary-10);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%231F9C5B' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;transition:transform .25s}details.faq-item[open] summary:after{transform:rotate(180deg)}details.faq-item .faq-body{padding:0 22px 18px;font-size:13.5px;color:var(--fg2);line-height:1.7}.faq-dot{background:var(--primary-10);border-radius:50%;width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.faq-dot-inner{background:var(--primary);border-radius:50%;width:7px;height:7px;display:block}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:28px}.section-head-center{flex-direction:column;align-items:center;text-align:center}.section-head h2{font-family:var(--font-display),serif;font-size:clamp(28px,3.2vw,40px);font-weight:600;line-height:1.1;letter-spacing:-.015em;color:var(--fg);margin-bottom:12px}.section-lead{font-size:15px;color:var(--fg2);line-height:1.65}.stat-number{font-family:var(--font-display),serif;font-size:32px;font-weight:600;line-height:1;letter-spacing:-.02em}.stat-label{font-size:11.5px;color:var(--fg2);margin-top:6px;font-weight:500}.hover-card{transition:transform .25s ease,box-shadow .25s ease}.hover-card:hover{transform:translateY(-3px)}.credential-badge{background:#fff;border-radius:18px;padding:16px 20px;box-shadow:0 12px 30px #0c182c1f;display:flex;align-items:center;gap:14px}.credential-icon{width:44px;height:44px;border-radius:50%;background:var(--sage-bg);display:flex;align-items:center;justify-content:center;color:var(--primary);flex-shrink:0}.form-label{display:block;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--primary);margin-bottom:8px}.form-input,.form-textarea,.form-select{width:100%;border:1px solid var(--border);border-radius:14px;padding:0 16px;font-family:inherit;font-size:14px;background:transparent;outline:none;transition:border-color .15s;color:var(--fg)}.form-input{height:48px}.form-textarea{height:120px;padding:14px 16px;resize:none}.form-select{height:48px;background:#fff}.form-input:focus,.form-textarea:focus,.form-select:focus{border-color:var(--primary)}.form-group{margin-bottom:16px}@keyframes pageIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.page-enter{animation:pageIn .35s ease-out both}.page-top{padding-top:48px}@media (max-width: 880px){.page-top{padding-top:8px}}.site-header{position:sticky;top:0;z-index:50;background:#f8faffc7;backdrop-filter:saturate(140%) blur(14px);-webkit-backdrop-filter:saturate(140%) blur(14px);border-bottom:1px solid transparent;transition:border-color .2s}.site-header.scrolled{border-color:var(--border)}.site-header.menu-open{background:#f8faff}.header-inner{display:flex;align-items:center;justify-content:space-between;padding-top:14px;padding-bottom:14px}.logo-link{display:flex;align-items:center;text-decoration:none}.logo-link img{height:74px;width:auto;transition:height .25s ease}@media (max-width: 768px){.logo-link img{height:54px}}.mobile-menu-header .logo-link img{height:46px}.desktop-nav{display:flex;align-items:center;gap:2px}.nav-link{cursor:pointer;padding:8px 14px;border-radius:var(--radius-pill);font-size:13.5px;font-weight:500;color:var(--fg);text-decoration:none;transition:all .15s;white-space:nowrap}.nav-link:hover{background:#0000000a;color:var(--fg)}.nav-link.active{background:var(--primary-10);color:var(--primary);font-weight:600}.nav-cta{margin-left:10px}.nav-dropdown{position:relative}.nav-dropdown-trigger{display:inline-flex;align-items:center;gap:4px}.nav-dropdown-trigger .chevron{display:inline-flex;transition:transform .2s}.nav-dropdown:hover .chevron,.nav-dropdown:focus-within .chevron{transform:rotate(180deg)}.dropdown-menu:before{content:"";position:absolute;top:-8px;left:0;right:0;height:8px}.dropdown-menu{position:absolute;top:calc(100% + 6px);left:0;min-width:360px;padding:8px;background:#fff;border-radius:22px;border:1px solid var(--border);box-shadow:0 1px #ffffffe6 inset,0 20px 50px #0c182c24;opacity:0;transform:translateY(-4px);pointer-events:none;transition:opacity .18s ease,transform .18s ease;z-index:100}.nav-dropdown:hover .dropdown-menu,.nav-dropdown:focus-within .dropdown-menu{opacity:1;transform:translateY(0);pointer-events:auto}.dropdown-overview{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:14px;background:var(--primary-04);color:var(--primary);font-size:13px;font-weight:700;margin-bottom:6px;text-decoration:none;transition:background .15s}.dropdown-overview:hover{background:var(--primary-10);color:var(--primary)}.dropdown-item{display:block;padding:10px 14px;border-radius:14px;color:var(--fg);text-decoration:none;transition:background .15s}.dropdown-item:hover{background:#00000009;color:var(--fg)}.dropdown-item-title{font-size:13.5px;font-weight:600;color:var(--fg);margin-bottom:2px}.dropdown-item-desc{font-size:12px;color:var(--fg2);line-height:1.5}.mobile-toggle{display:none;align-items:center;justify-content:center;width:44px;height:44px;border-radius:14px;border:1px solid var(--sage-soft);background:var(--sage-bg);color:var(--primary);cursor:pointer}.mobile-toggle .icon-close,.mobile-toggle[aria-expanded=true] .icon-burger{display:none}.mobile-toggle[aria-expanded=true] .icon-close{display:block}.mobile-menu{display:none}.mobile-menu.ready{display:flex;flex-direction:column;position:fixed;top:var(--header-h, 0px);left:0;right:0;bottom:0;z-index:100;background:#f8fafffa;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);overflow-y:auto;padding:24px 22px 48px;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-6px);transition:opacity .2s ease,visibility .2s,transform .2s ease}.mobile-menu.ready.open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.mobile-nav-item{border-bottom:1px solid var(--border);margin-bottom:4px}.mobile-nav-row{display:flex;align-items:center}.mobile-nav-row .mobile-nav-link{flex:1}.mobile-nav-link{display:flex;align-items:center;justify-content:space-between;padding:14px 8px;font-size:18px;font-weight:600;color:var(--fg);text-decoration:none}.mobile-nav-link.active{color:var(--primary)}.mobile-sub-toggle{width:44px;height:44px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;color:var(--fg2);transition:transform .2s ease}.mobile-nav-item.expanded .mobile-sub-toggle{transform:rotate(180deg)}.mobile-sub-links{max-height:0;overflow:hidden;transition:max-height .25s ease;padding-left:8px}.mobile-nav-item.expanded .mobile-sub-links{max-height:600px}.mobile-nav-expand{width:100%;background:none;border:none;display:flex;align-items:center;justify-content:space-between;padding:14px 8px;font-size:18px;font-weight:600;color:var(--fg);cursor:pointer;font-family:inherit;text-align:left}.mobile-nav-expand.active{color:var(--primary)}.mobile-expand-hint{display:flex;align-items:center;gap:8px;color:var(--fg2);flex-shrink:0}.mobile-expand-count{font-size:11.5px;font-weight:700;padding:3px 9px;border-radius:9999px;background:var(--primary-10);color:var(--primary);font-family:var(--font-sans)}.mobile-expand-chevron{transition:transform .2s ease}.mobile-nav-item.expanded .mobile-expand-chevron{transform:rotate(180deg)}.mobile-sub-link{display:block;padding:12px 8px 12px 16px;font-size:16px;color:var(--fg);text-decoration:none;font-weight:600}.mobile-sub-link:hover{color:var(--primary)}.mobile-sub-link-all{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);margin-bottom:4px}.site-footer{border-top:1px solid var(--border);background:linear-gradient(180deg,transparent,var(--sage-bg));margin-top:80px}.footer-grid{display:grid;grid-template-columns:5fr 3fr 4fr;gap:40px;margin-bottom:40px}.footer-divider{padding-top:24px;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;font-size:11.5px;color:var(--fg3);flex-wrap:wrap;gap:10px}.footer-nav-label{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--primary);margin-bottom:18px}.footer-nav-links{display:flex;flex-direction:column;gap:10px}.footer-nav-links a{font-size:13.5px;color:var(--fg)}.footer-nav-links a:hover{color:var(--primary)}.footer-nav-links a.active{color:var(--primary);font-weight:600}.footer-contact-link{display:flex;align-items:center;gap:10px;padding:6px 0;font-size:13.5px;font-weight:600;color:var(--primary)}.footer-contact-icon{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:var(--primary-10)}.trust-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px}.trust-logo{border:1px solid var(--border);border-radius:14px;padding:10px;display:flex;flex-direction:column;align-items:center;gap:6px;background:#fff}.trust-logo img{height:42px;width:100%;object-fit:contain}.trust-logo-label{font-size:10px;font-weight:600;color:var(--fg2);text-align:center}.trust-google{border:1px solid var(--border);border-radius:14px;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;background:#fff}.hero-stats{display:grid;grid-template-columns:.85fr 1fr 1.35fr;padding-top:24px;border-top:1px solid var(--border)}.hero-stat{padding:0 20px;border-left:1px solid var(--border)}.hero-stat:first-child{padding-left:0;border-left:none}@media (max-width: 880px){.hero-stats{grid-template-columns:1fr;gap:0;border-top:none;padding-top:0}.hero-stat{display:flex;align-items:center;gap:16px;padding:12px 0;border-left:none;border-top:1px solid var(--border)}.hero-stat:first-child{border-top:1px solid var(--border)}.hero-stat-label{min-width:68px;margin-bottom:0!important;flex-shrink:0}.hero-stat-body{flex:1}}.hero-section{padding-top:48px}.hero-inner{padding-top:32px}@media (max-width: 880px){.hero-section{padding-top:8px}.hero-inner{padding-top:4px}}.hero-bg{position:absolute;inset:0;z-index:-1;background:radial-gradient(60% 50% at 30% 30%,var(--primary-04),transparent 70%),radial-gradient(45% 50% at 85% 60%,hsla(110,25%,75%,.18),transparent 70%)}.announcement-dot{width:6px;height:6px;border-radius:50%;background:#9de5a0;display:inline-block;box-shadow:0 0 0 4px #9de5a040}.booking-placeholder{padding:64px;text-align:center;background:linear-gradient(135deg,var(--sage-bg),white);border-color:var(--sage-soft);border-radius:var(--radius-card);border:1px solid var(--sage-soft)}.compare-header{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;background:var(--sage-bg);padding:16px 24px;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--fg)}.compare-row{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;padding:18px 24px;border-top:1px solid var(--border);align-items:center}.compare-label{font-size:12.5px;font-weight:700;color:var(--fg)}.compare-value{font-size:13.5px;color:var(--fg2)}@media (max-width: 960px){.grid-3{grid-template-columns:repeat(2,1fr)}.grid-7-5,.grid-5-7,.grid-6-6,.grid-4-8{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.compare-header,.compare-row{grid-template-columns:1fr}.compare-header span:not(:first-child){display:none}}@media (max-width: 880px){.desktop-nav{display:none}.mobile-toggle{display:flex}}@media (max-width: 640px){.grid-2,.grid-3{grid-template-columns:1fr}.grid-4{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr}.container{padding-left:18px;padding-right:18px}.wellness-band,.cta-band{padding:32px 22px}.price-row{grid-template-columns:1fr}.price-row .price-desc{display:none}main{padding-top:24px}.booking-placeholder{padding:32px 22px}.hero-image-stack{display:none}}
