*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--paper: #f7f3ec;--ink: #1c332b;--muted: #5a6b63;--line: rgba(28, 51, 43, .12);--teal: #2a9d8f;--gold: #f5c542;--coral: #ff7a59;--sky: #7dd3fc;--red: #e23b2e;--display: "Fraunces", Georgia, serif;--sans: "Manrope", system-ui, sans-serif;--ease: cubic-bezier(.22, 1, .36, 1)}html{scroll-behavior:smooth}body{font-family:var(--sans);background:var(--paper);color:var(--ink);line-height:1.65;overflow-x:hidden;-webkit-font-smoothing:antialiased}img,video{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,textarea,select{font-family:inherit}.wrap{width:min(1140px,90vw);margin:0 auto}h1,h2,h3{font-family:var(--display);font-weight:500;line-height:1.12;letter-spacing:-.02em}.kicker{font-size:.72rem;letter-spacing:.28em;text-transform:uppercase;color:var(--teal);font-weight:600;margin-bottom:.8rem}.lede{color:var(--muted);font-size:1.08rem;max-width:52ch;margin-top:.85rem}.btn{display:inline-flex;align-items:center;gap:.6rem;border:1px solid currentColor;background:transparent;padding:.85rem 1.25rem;letter-spacing:.14em;text-transform:uppercase;font-size:.68rem;cursor:pointer;transition:transform .35s var(--ease),background .25s,color .25s}.btn:hover{transform:translateY(-2px)}.btn-fill{background:var(--ink);color:var(--paper);border-color:var(--ink)}.btn-fill:hover{background:var(--teal);border-color:var(--teal)}.btn-ghost{color:#fff;border-color:#ffffffb3}.btn-ghost:hover{background:#fff;color:var(--ink)}.play{width:1.35rem;height:1.35rem;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center}.play:after{content:"";border-style:solid;border-width:4px 0 4px 7px;border-color:transparent transparent transparent currentColor;margin-left:2px}.reveal{opacity:0;transform:translateY(32px);filter:blur(6px);transition:opacity .9s var(--ease),transform .9s var(--ease),filter .9s var(--ease)}.reveal.in{opacity:1;transform:none;filter:none}@keyframes ken{0%{transform:scale(1)}to{transform:scale(1.14)}}@keyframes drift{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes float-in{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:none}}@keyframes pulse-line{0%,to{transform:scaleY(.35);opacity:.35}50%{transform:scaleY(1);opacity:1}}.brand{display:inline-flex;align-items:center;gap:.7rem;--mark-fill: #fff8ee;--mark-line: #f5c542;--mark-sun: #f5c542;--mark-hill-a: #5eead4;--mark-hill-b: #ff7a59;--c1: #e23b2e;--c2: #5eead4;--c3: #f5c542;--c4: #ff7a59;--c5: #7dd3fc;--place: #fff4d6;filter:drop-shadow(0 2px 10px rgba(20,24,18,.45))}.nav.is-solid .brand,.nav.is-open .brand,.footer .brand{--mark-fill: #fffcf7;--mark-line: #c9a227;--mark-sun: #d4a017;--mark-hill-a: #2a9d8f;--mark-hill-b: #e76f51;--c1: #c41e12;--c2: #1a5c38;--c3: #c9a227;--c4: #e76f51;--c5: #3d8ebd;--place: #5c7a68;filter:none}.brand-mark{width:2.2rem;height:2.2rem}.brand-type{display:flex;flex-direction:column;line-height:1}.brand-name{font-family:var(--display);letter-spacing:.28em;font-size:1.12rem;font-weight:600;margin-right:-.28em}.brand-name span:nth-child(1){color:var(--c1)}.brand-name span:nth-child(2){color:var(--c2)}.brand-name span:nth-child(3){color:var(--c3)}.brand-name span:nth-child(4){color:var(--c4)}.brand-name span:nth-child(5){color:var(--c5)}.brand-place{margin-top:.28rem;font-size:.58rem;letter-spacing:.22em;text-transform:uppercase;color:var(--place)}.brand.is-compact .brand-place{display:none}.nav{position:fixed;inset:0 0 auto;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:1.2rem 4.5vw;transition:background .4s,backdrop-filter .4s}.nav.is-solid,.nav.is-open{background:#f7f3eceb;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.nav-links{display:flex;gap:1.4rem;list-style:none;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase}.nav-links a,.nav-cta{color:#ffffffe0}.nav.is-solid .nav-links a,.nav.is-open .nav-links a{color:var(--muted)}.nav-cta{border:1px solid rgba(255,255,255,.7);padding:.5rem .95rem;font-size:.68rem;letter-spacing:.16em;text-transform:uppercase}.nav.is-solid .nav-cta,.nav.is-open .nav-cta{color:var(--ink);border-color:var(--ink)}.nav-toggle{display:none;background:none;border:0;color:#fff;width:2rem;height:1.3rem;position:relative;cursor:pointer}.nav.is-solid .nav-toggle,.nav.is-open .nav-toggle{color:var(--ink)}.nav-toggle:before,.nav-toggle:after,.nav-toggle span{content:"";position:absolute;left:0;right:0;height:1px;background:currentColor}.nav-toggle span{top:50%}.nav-toggle:before{top:0}.nav-toggle:after{bottom:0}.hero{position:relative;min-height:100vh;color:#fff;overflow:hidden;display:grid;place-items:end start}.hero-media,.hero-slide{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.hero-slide{opacity:0;transform:scale(1.06);transition:opacity 1.6s ease;animation:ken 22s ease-in-out infinite alternate}.hero-slide.is-on{opacity:1;z-index:1}.hero-veil{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;background:linear-gradient(to top,#20160cb3 6%,#20160c1f 52%,#121c2433)}.hero-copy{position:relative;z-index:3;padding:0 6vw 12vh;max-width:900px}.hero-copy .kicker{color:var(--gold);animation:float-in 1s var(--ease) .2s both}.hero h1{font-size:clamp(4.2rem,13vw,9rem);color:#fff;letter-spacing:-.03em;font-style:italic;animation:float-in 1.1s var(--ease) .35s both}.hero-copy p.tag{font-size:clamp(1.15rem,2.2vw,1.55rem);font-family:var(--display);font-style:italic;color:#ffffffdb;max-width:28ch;margin:.8rem 0 1.8rem;animation:float-in 1.1s var(--ease) .5s both}.hero-actions{display:flex;flex-wrap:wrap;gap:.7rem;animation:float-in 1.1s var(--ease) .65s both}.hero-addr{position:absolute;right:5vw;bottom:12vh;z-index:3;text-align:right;font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:#ffffffc7;animation:float-in 1.2s var(--ease) .8s both}.hero-dots{position:absolute;left:50%;bottom:6.4vh;transform:translate(-50%);z-index:3;display:flex;gap:.55rem}.hero-dots button{width:9px;height:9px;border-radius:50%;border:1px solid rgba(228,210,174,.85);background:transparent;cursor:pointer;padding:0}.hero-dots button.is-on{background:#e4d2ae}.scroll-hint{position:absolute;left:50%;bottom:2.4vh;transform:translate(-50%);z-index:3;display:flex;flex-direction:column;align-items:center;gap:.4rem;font-size:.62rem;letter-spacing:.3em;text-transform:uppercase;color:var(--gold)}.scroll-hint i{width:1px;height:2.8rem;background:linear-gradient(#f5c542,transparent);transform-origin:top;animation:pulse-line 1.8s ease-in-out infinite}.marquee{overflow:hidden;background:var(--ink);color:#fff;padding:1.4rem 0;border-block:1px solid rgba(255,255,255,.08)}.marquee-track{display:flex;width:max-content;animation:drift 42s linear infinite;gap:0}.marquee figure{position:relative;width:min(32vw,380px);height:22vh;flex-shrink:0;margin-right:.7rem;overflow:hidden}.marquee img{width:100%;height:100%;object-fit:cover;filter:saturate(1.05)}.marquee figcaption{position:absolute;left:.8rem;bottom:.7rem;font-size:.65rem;letter-spacing:.16em;text-transform:uppercase}.estate{padding:7rem 0 5rem}.estate h2,.estate-head{font-size:clamp(2.4rem,5.5vw,4.4rem);max-width:14ch}.story{display:grid;grid-template-columns:1.05fr .95fr;gap:2.2rem;margin-top:3rem;align-items:center}.story-video{position:relative;overflow:hidden;min-height:62vh;border-radius:1.4rem}.story-video video,.story-video img{width:100%;height:100%;object-fit:cover;position:absolute;top:0;right:0;bottom:0;left:0;min-height:62vh}.story-video video{animation:ken 22s ease-in-out infinite alternate}.chip{position:absolute;left:1rem;bottom:1rem;background:#f7f3ece6;padding:.4rem .7rem;font-size:.65rem;letter-spacing:.16em;text-transform:uppercase}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:1.6rem 0 1.4rem}.stat b{display:block;font-family:var(--display);font-size:2.1rem;font-weight:500;color:var(--teal)}.stat span{font-size:.82rem;color:var(--muted)}.mosaic{display:grid;grid-template-columns:1.2fr .8fr 1fr;grid-template-rows:38vh 30vh;gap:.7rem;margin-top:3.2rem}.tile{position:relative;overflow:hidden;border-radius:1.1rem}.tile img{width:100%;height:100%;object-fit:cover;transition:transform 1.4s var(--ease)}.tile:hover img{transform:scale(1.08)}.tile.wide{grid-column:1 / 3}.tile.tall{grid-row:1 / 3;grid-column:3}.tile span{position:absolute;left:.9rem;bottom:.8rem;color:#fff;font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;text-shadow:0 1px 8px rgba(0,0,0,.4)}.healing{background:#fff;padding:7rem 0}.healing h2,.cam h2,.programs h2,.membership h2,.house h2,.visit h2{font-size:clamp(2.2rem,5vw,3.6rem);max-width:16ch}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:.9rem;margin-top:2.4rem}.card{background:var(--paper);padding:1.5rem 1.35rem;border-radius:1rem;transition:transform .4s var(--ease)}.card:hover{transform:translateY(-6px)}.card em{font-style:normal;font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--coral)}.card h3{font-size:1.5rem;margin:.4rem 0 .45rem}.card p{color:var(--muted);font-size:.92rem}.cam{padding:7rem 0;background:linear-gradient(180deg,rgba(28,51,43,.04),transparent),var(--paper)}.bento{display:grid;grid-template-columns:repeat(4,1fr);gap:.7rem;margin-top:2.4rem}.bento article{background:#fff;padding:1.25rem 1.15rem 1.3rem;border-radius:.9rem;min-height:140px;transition:background .3s,color .3s}.bento article:hover{background:var(--ink);color:#fff}.bento article:hover p{color:#ffffffbf}.bento strong{display:block;font-family:var(--display);font-size:1.25rem;font-weight:500;margin-bottom:.3rem}.bento p{font-size:.88rem;color:var(--muted)}.programs{padding:0 0 7rem}.split{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin-top:2.4rem}.panel{position:relative;min-height:520px;overflow:hidden;border-radius:1.3rem;color:#fff}.panel img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform 1.6s var(--ease)}.panel:hover img{transform:scale(1.07)}.panel .shade{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,#101c18d1,#101c181a)}.panel .body{position:relative;z-index:1;height:100%;display:flex;flex-direction:column;justify-content:flex-end;padding:1.8rem}.panel h3{font-size:2.4rem;color:#fff;margin-bottom:.4rem}.membership{background:#fff;padding:7rem 0}.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:.9rem;margin-top:2.4rem}.plan{background:var(--paper);padding:1.8rem 1.5rem 1.5rem;border-radius:1.2rem;display:flex;flex-direction:column;position:relative}.plan.featured{background:var(--ink);color:#fff}.plan.featured h3,.plan.featured .price{color:#fff}.plan.featured li{color:#ffffffc7}.plan.featured .btn-fill{background:var(--gold);color:var(--ink);border-color:var(--gold)}.plan.featured:after{content:"Most chosen";position:absolute;top:1rem;right:1rem;font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}.plan h3{font-size:1.8rem}.price{font-family:var(--display);font-size:2.5rem;margin:.4rem 0 .2rem}.price small{font-size:.95rem;font-family:var(--sans);color:var(--muted)}.plan.featured .price small{color:#fff9}.plan ul{list-style:none;margin:1.1rem 0 1.5rem;flex:1}.plan li{padding:.38rem 0 .38rem .9rem;position:relative;color:var(--muted);font-size:.92rem}.plan li:before{content:"";width:6px;height:1px;background:var(--teal);position:absolute;left:0;top:.95rem}.fineprint{margin-top:1.3rem;font-size:.82rem;color:var(--muted)}.house{padding:7rem 0}.gallery{display:grid;grid-template-columns:1.3fr 1fr;gap:.8rem;margin-top:2.2rem}.feat,.still{position:relative;overflow:hidden;border-radius:1.2rem}.feat{min-height:58vh}.feat img,.still img{width:100%;height:100%;object-fit:cover}.feat img{animation:ken 20s ease-in-out infinite alternate}.feat .shade{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(16,28,24,.7),transparent 50%)}.feat .cap{position:absolute;left:1.2rem;bottom:1.2rem;color:#fff;z-index:1}.feat h3{color:#fff;font-size:2rem}.stills{display:grid;gap:.8rem}.still{min-height:28vh}.still span{position:absolute;left:.9rem;bottom:.8rem;color:#fff;font-size:.68rem;letter-spacing:.16em;text-transform:uppercase}.visit{background:#fff;padding:7rem 0}.visit-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:2rem;margin-top:2.4rem}form{display:grid;gap:.85rem}label{font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--teal)}input,select,textarea{width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;padding:.65rem 0;font-size:1rem;outline:none;color:var(--ink)}textarea{min-height:6.2rem;resize:vertical}.thanks{font-family:var(--display);font-size:1.7rem}.aside{margin-top:1.3rem;color:var(--muted)}.aside a{color:var(--teal)}.visual img{width:100%;height:230px;object-fit:cover;border-radius:1rem 1rem 0 0}.map iframe{width:100%;height:280px;border:0;border-radius:0 0 1rem 1rem;filter:saturate(.75)}.footer{padding:2.4rem 0 2rem;border-top:1px solid var(--line)}.footer-row{display:flex;justify-content:space-between;gap:2rem}.disclaimer{max-width:56ch;font-size:.75rem;color:var(--muted)}.footer small{display:block;margin-top:1.1rem;color:var(--muted);font-size:.75rem}.footer .brand{margin-bottom:.4rem}.reel{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:#10201c;display:grid;place-items:center}.reel video{width:min(1200px,100vw);height:min(70vh,100%);object-fit:cover}.reel-cap{position:absolute;left:6vw;bottom:7vh;font-family:var(--display);font-size:1.6rem;color:#fff}.reel-close{position:absolute;top:1.3rem;right:1.5rem;background:none;border:0;color:#fff;letter-spacing:.2em;text-transform:uppercase;font-size:.7rem;cursor:pointer}@media(max-width:980px){.nav-links,.nav-cta,.hero-addr{display:none}.nav-toggle{display:block}.nav.is-open .nav-links{display:flex;flex-direction:column;position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:1.2rem 6vw 1.5rem;gap:1rem}.nav.is-open .nav-links a{color:var(--muted)}.story,.cards,.split,.plans,.visit-grid,.gallery,.mosaic{grid-template-columns:1fr}.bento{grid-template-columns:1fr 1fr}.tile.wide,.tile.tall{grid-column:auto;grid-row:auto;min-height:34vh}.mosaic{grid-template-rows:none}.feat,.story-video,.story-video video,.story-video img{min-height:42vh}}@media(max-width:640px){.cards,.bento,.stats{grid-template-columns:1fr}.marquee figure{width:72vw;height:18vh}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
