@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Manrope:wght@400;500;600&family=Playfair+Display:ital,wght@0,400;0,500;1,400;1,500&display=swap";:root{--ink:#283d32;--cream:#f7f5ed;--muted:#5b675c;--line:#d9ddd0;--serif:"Playfair Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{background:var(--cream);color:var(--ink);font:16px/1.7 var(--sans);margin:0}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}:is(button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible){outline-offset:5px;outline:3px solid #bd895c}header{background:var(--cream);justify-content:space-between;align-items:center;gap:24px;height:100px;padding:0 5%;display:flex}.brand{font:29px/1.2 var(--serif);letter-spacing:-1px;white-space:nowrap}.brand span{font:8px/1.8 var(--sans);letter-spacing:2.6px;margin-top:8px;display:block}nav{gap:32px;font-size:13px;display:flex}.button{border:1px solid var(--ink);background:var(--ink);color:var(--cream);border-radius:3px;justify-content:space-between;align-items:center;gap:35px;padding:15px 24px;font-size:14px;line-height:1.5;transition:background .2s,transform .2s;display:inline-flex}.button:hover{background:#435746;transform:translateY(-2px)}.button.small{gap:22px;padding:11px 18px;font-size:12px}.button.light{background:var(--cream);border-color:var(--cream);color:var(--ink)}.button.light:hover{background:#e4e7d8}.hero{color:#fff;height:700px;min-height:590px;position:relative;overflow:hidden}.hero>img{object-fit:cover;object-position:center 55%;width:100%;height:100%}.hero-shade{background:linear-gradient(90deg,#0f241ae0,#0f241a61 65%,#0f241a26),linear-gradient(#0000 70%,#0e231880);position:absolute;inset:0}.hero-text{max-width:700px;position:absolute;top:11%;left:9%}.eyebrow{font:10px/1.6 var(--sans);letter-spacing:2.2px;margin:0 0 27px;font-weight:600}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);letter-spacing:-1.5px;font-weight:400;line-height:1.12}h1{margin-bottom:24px;font-size:clamp(62px,6.7vw,100px)}em{font-weight:400}h1 em{color:#d6dfbe}.hero-text>p:not(.eyebrow){color:#f0f1e9;margin-bottom:32px;font-size:16px;line-height:1.8}.actions{align-items:center;gap:26px;display:flex}.textlink{font-size:12px}.textlink span{margin-left:15px}.hero-bottom{letter-spacing:1px;color:#e7e9da;justify-content:space-between;font-size:10px;display:flex;position:absolute;bottom:27px;left:5%;right:5%}.section{max-width:1600px;margin:auto;padding:100px 9%}.intro{text-align:center;padding-top:95px;padding-bottom:90px}.intro h2{font-size:49px}.intro-copy{max-width:650px;color:var(--muted);margin:auto}.intro-copy p{margin-bottom:14px;font-size:15px}h2{margin-bottom:30px;font-size:48px}.section-top{justify-content:space-between;align-items:end;margin-bottom:38px;display:flex}.section-top h2{margin:0}.section-top>p{color:var(--muted);margin:0 0 5px;font-size:13px}.offerings{padding-top:20px}.offer-grid{grid-template-columns:1fr 1fr;gap:28px;display:grid}.offer{background:#eeefe4;overflow:hidden}.offer-body{padding:40px}.offer-body .eyebrow{margin-bottom:20px;font-size:9px}.offer h3{margin-bottom:23px;font-size:37px}.offer p:not(.eyebrow){color:var(--muted);max-width:410px;font-size:14px}.arrow-link{border-top:1px solid #bfc7b8;justify-content:space-between;margin-top:28px;padding-top:19px;font-size:13px;display:flex}.arrow-link:hover{color:#8a5839}.abstract{justify-content:center;align-items:end;height:265px;padding:18px;display:flex;position:relative;overflow:hidden}.abstract>span{font:9px var(--sans);letter-spacing:2px;color:#f5f1df;z-index:1}.energy-art{background:radial-gradient(at 42% 65%,#c1ba87 0,#a9b291 22%,#6c8068 52%,#3a5745 100%)}.orb{border:1px solid #d5dfb8;border-radius:50%;width:210px;height:210px;position:absolute;top:35px;left:calc(50% - 105px);box-shadow:0 0 80px 15px #d4c99b55,inset 0 0 45px #ebe6c04d}.orb:after,.orb:before{content:"";border:1px solid #d5dfb880;border-radius:50%;position:absolute;inset:14px}.orb:after{inset:29px}.regression-art{background:radial-gradient(#d4c6af,#ad9981 55%,#806d59)}.ripple{border:1px solid #eee2c7a8;border-radius:50%;width:320px;height:180px;position:absolute;top:43px;transform:rotate(-23deg);box-shadow:0 0 0 18px #eee2c721,0 0 0 37px #eee2c721,0 0 0 59px #eee2c721,0 0 0 84px #eee2c721}.quote{text-align:center;background:#e5e9dc;padding:68px 20px}.quote p{font:36px/1.5 var(--serif);margin:0 0 20px}.quote span{letter-spacing:2px;font-size:8px}.detail{grid-template-columns:1fr 1fr;gap:90px;display:grid}.detail .button{margin-top:10px;font-size:12px}.detail-copy p{color:var(--muted);font-size:15px}.detail-copy .lead{font:24px/1.5 var(--serif);color:var(--ink);margin-bottom:26px}.soft-note{border-left:2px solid #a5b18c;margin-top:30px;padding:5px 0 5px 22px}.soft-note span{font-size:12px;font-weight:600}.soft-note p{margin:8px 0 0;font-size:13px}.regress-detail{background:#eeeade;max-width:none}.vision{margin-top:26px}details{border-bottom:1px solid #c9cec0;padding:18px 0}summary{cursor:pointer;justify-content:space-between;gap:20px;font-size:14px;list-style:none;display:flex}summary::-webkit-details-marker{display:none}summary span{font-size:20px;font-weight:400;line-height:1.1}details[open] summary span{transform:rotate(45deg)}details p{color:var(--muted);margin:18px 0 5px;font-size:14px}.about{grid-template-columns:1fr 1fr;align-items:center;gap:90px;display:grid}.about-art{background:#dddcc9;flex-direction:column;justify-content:end;height:530px;padding:50px;display:flex;position:relative;overflow:hidden}.about-art p{font:42px/1.25 var(--serif);z-index:1}.about-art small{letter-spacing:2px;z-index:1;font-size:9px}.sun{opacity:.8;background:radial-gradient(circle,#f8efd6,#e7cf9c);border-radius:50%;width:230px;height:230px;position:absolute;top:60px;right:-30px}.stem{border:1px solid #758669;border-radius:50% 50% 0 0;width:240px;height:450px;position:absolute;top:40px;left:45px;transform:rotate(22deg)}.stem:before{content:"";border:1px solid #758669;border-radius:50% 50% 0 0;position:absolute;inset:18px}.about>div>p:not(.eyebrow){color:var(--muted);font-size:15px}.journey{padding-top:20px}.steps{grid-template-columns:repeat(3,1fr);gap:44px;margin-top:48px;display:grid}.steps article{border-top:1px solid var(--line);padding-top:22px}.steps article>span{font:12px var(--sans);color:#829174}.steps h3{letter-spacing:-.5px;margin:25px 0 17px;font-size:23px}.steps p{color:var(--muted);font-size:14px}.faq{grid-template-columns:1fr 1.3fr;gap:80px;padding-top:50px;display:grid}.faq details:first-child{border-top:1px solid var(--line)}.closing{background:var(--ink);color:var(--cream);text-align:center;padding:80px 20px 65px;position:relative}.closing h2{font-size:59px}.closing p:not(.eyebrow){color:#d5ddcd;font-size:15px}.closing small{color:#b8c4ae;margin-top:25px;font-size:10px;display:block}footer{justify-content:space-between;align-items:center;gap:25px;padding:45px 5%;display:flex}footer>p,footer>span{color:var(--muted);margin:0;font-size:11px}.skip{z-index:50;background:#fff;padding:10px;position:fixed;top:-100px;left:10px}.skip:focus{top:10px}dialog{background:var(--cream);width:min(580px,100% - 24px);max-height:90vh;color:var(--ink);border:0;border-radius:8px;padding:42px;box-shadow:0 20px 100px #15231950}dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#152319ab}dialog h2{margin-bottom:20px;font-size:39px}dialog .eyebrow{margin-bottom:14px}.close{color:var(--ink);background:0 0;border:0;font-size:29px;position:absolute;top:10px;right:15px}.demo-note{background:#ece7d9;border-left:2px solid #a68459;margin-bottom:25px;padding:12px 14px;font-size:12px;line-height:1.6}fieldset{border:0;margin:0 0 24px;padding:0}legend{margin-bottom:12px;font-size:13px;font-weight:600}.option{border:1px solid var(--line);cursor:pointer;border-radius:3px;align-items:center;gap:12px;margin-bottom:8px;padding:12px 15px;display:flex}.option:has(input:checked){border-color:var(--ink);background:#e8ecdf}.option strong{font-size:14px;font-weight:500}.option small{color:var(--muted);font-size:11px;display:block}input[type=radio]{accent-color:var(--ink);flex-shrink:0;width:17px;height:17px}.slots{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.slots label{cursor:pointer;border:1px solid var(--line);text-align:center;flex-direction:column;align-items:center;gap:8px;padding:12px 8px;font-size:12px;display:flex}.slots label:has(input:checked){border-color:var(--ink);background:#e8ecdf}.slots strong{font-weight:500}.wide{width:100%;font-size:13px}.field{margin:20px 0;font-size:13px;display:block}.field input{background:#fffdf7;border:1px solid #bec7b5;border-radius:3px;width:100%;margin-top:7px;padding:11px;display:block}.back{color:var(--muted);background:0 0;border:0;margin-bottom:20px;padding:0;font-size:12px}.selection{background:#e7ebdf;padding:15px;font-size:13px}.privacy-note{color:var(--muted);font-size:11px}.check{border:1px solid #a1b193;border-radius:50%;place-items:center;width:46px;height:46px;margin:22px 0;display:grid}#complete h3{font-size:26px}#complete p{font-size:14px}body.modal-open{overflow:hidden}[hidden]{display:none!important}@media (min-width:1500px){.hero-text{left:calc(50vw - 656px)}}@media (max-width:900px){nav{gap:18px}.section{padding:70px 6%}.detail,.about{gap:40px}h2{font-size:40px}.hero-text{left:6%}.hero{height:640px}.offer-body{padding:28px}.offer h3{font-size:32px}.faq{gap:35px}.about-art{height:470px;padding:30px}.about-art p{font-size:35px}.steps{gap:24px}.journey{padding-top:20px}}@media (max-width:620px){header{gap:15px;height:85px;padding:0 5%}.brand{font-size:23px}.brand span{letter-spacing:1.8px;font-size:6px}nav{display:none}.button.small{gap:12px;padding:9px 12px;font-size:10px}.hero{height:650px}.hero-text{top:13%;right:5%}.hero h1{font-size:clamp(50px,16vw,66px)}.hero .eyebrow{letter-spacing:1.5px;font-size:8px}.hero-text>p:not(.eyebrow){font-size:14px}.actions{flex-direction:column;align-items:start;gap:23px}.hero-bottom{font-size:9px;bottom:23px}.hero-bottom span:last-child{display:none}.section{padding:60px 6%}.intro h2{font-size:36px}.intro-copy p{font-size:14px}.section-top{display:block}.section-top>p{margin-top:20px}.offer-grid{grid-template-columns:1fr;gap:25px}.abstract{height:230px}.offer-body{padding:30px}.offer h3{font-size:35px}.quote{padding:50px 6%}.quote p{font-size:27px}.detail,.about,.faq{grid-template-columns:1fr;gap:30px}h2{font-size:40px}.detail .button{margin-top:0}.detail-copy .lead{font-size:22px}.about-art{order:2;height:360px}.about-art p{font-size:35px}.about{gap:35px}.steps{grid-template-columns:1fr;gap:15px;margin-top:30px}.steps h3{margin:15px 0 12px}.steps p{margin-bottom:10px}.faq{padding-top:30px}.faq h2{margin-bottom:0}.closing{padding:65px 6%}.closing h2{font-size:45px}footer{flex-wrap:wrap;align-items:start;padding:32px 6%}footer>p{display:none}footer>span{align-self:end;font-size:9px}dialog{padding:35px 23px}dialog h2{font-size:33px}.slots{gap:6px}.slots label{font-size:11px}.eyebrow{letter-spacing:1.7px;font-size:9px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}.hero>img{object-position:70% 45%}.hero-shade{background:linear-gradient(90deg,#0f241ae8,#0f241aa6 40%,#0f241a14 72%),linear-gradient(#0000 75%,#0e231899)}.about-photo{background:#e7e4d8;height:530px;margin:0;position:relative;overflow:hidden}.about-photo img{object-fit:cover;object-position:32% center;width:100%;height:100%;display:block}.about-photo figcaption{color:#fff;font:20px var(--serif);background:linear-gradient(#0000,#263d32c9);padding:45px 28px 22px;position:absolute;bottom:0;left:0;right:0}@media (max-width:900px){.about-photo{height:470px}}@media (max-width:620px){.hero{background:var(--ink);height:auto;min-height:0;padding-top:320px}.hero>img{object-position:74% 40%;height:340px;position:absolute;top:0;left:0}.hero-shade{background:linear-gradient(0deg,var(--ink),transparent 32%);height:340px;top:0;bottom:auto}.hero-text{padding:20px 6% 25px;position:relative;top:auto;left:auto;right:auto}.hero h1{font-size:clamp(50px,13vw,66px)}.hero-bottom{padding:12px 6% 26px;position:relative;bottom:auto;left:auto;right:auto}.hero .eyebrow{margin-bottom:22px}.about-photo{order:2;height:380px}.about-photo img{object-position:29% center}}.booking-intro{color:var(--muted);margin-bottom:24px;font-size:14px}.service-switch{grid-template-columns:1fr 1fr;gap:8px;display:grid}.service-switch button{border:1px solid var(--line);color:var(--ink);background:0 0;border-radius:3px;padding:12px 10px;font-size:13px}.service-switch button.active{border-color:var(--ink);background:#e5eadc}.date-list{gap:9px;max-height:255px;padding:3px;display:grid;overflow:auto}.date-option{border:1px solid var(--line);cursor:pointer;border-radius:3px;align-items:center;gap:12px;padding:14px 12px;display:flex}.date-option:has(input:checked){border-color:var(--ink);background:#e5eadc}.date-option strong{text-transform:capitalize;font-size:12px;font-weight:500}.date-option span small{color:var(--muted);margin-top:3px;font-size:10px;display:block}.date-option .availability{white-space:nowrap;color:#496341;margin-left:auto;font-size:10px}.date-option.full{opacity:.55;cursor:default}.booking-note{background:#ebe8dc;border-left:2px solid #9b8464;padding:12px 15px;font-size:12px}.booking-help{text-align:center;color:var(--muted);margin:16px 0 0;font-size:12px}.booking-help a{text-decoration:underline}.consent{align-items:flex-start;gap:10px;font-size:12px;line-height:1.6;display:flex}.consent input{accent-color:var(--ink);flex-shrink:0;width:17px;height:17px;margin-top:3px}.form-error{color:#7b3820;background:#f3e4da;border-radius:3px;padding:12px;font-size:13px}button:disabled{opacity:.5;cursor:not-allowed;transform:none}.manage{max-width:1000px}.manage-row{border-top:1px solid var(--line);padding:25px 0}.manage-row p{font-size:14px}.manage-row .back{margin:0}.manage .actions{flex-wrap:wrap}footer>a[href^=mailto]{font-size:12px;text-decoration:underline}.brand{font-size:25px}@media (max-width:620px){.brand{font-size:20px}.date-option{gap:8px;padding:13px 8px}.date-option strong{font-size:11px}.date-option .availability{font-size:9px}.service-switch button{font-size:12px}}
