:root{--color-ink:#0c1a12;--color-forest:#0d2e1d;--color-moss:#35593f;--color-paper:#f7f1e5;--color-paper-deep:#e7ddc8;--color-gold:#ae8d4f;--color-line:#81867259;--color-danger:#ba2b28;--color-focus:#228345;--font-display:Georgia, "Times New Roman", serif;--font-body:Arial, Helvetica, sans-serif;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--space-24:96px;--text-xs:12px;--text-sm:14px;--text-base:16px;--text-lg:20px;--text-xl:28px;--text-2xl:38px;--text-display:clamp(3.2rem, 8vw, 7rem);--radius-sm:3px;--radius-md:6px;--rule:1px;--dur-fast:.15s;--dur-normal:.36s;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.7, 0, .84, 0);--ease-in-out:cubic-bezier(.65, 0, .35, 1)}@supports (color:lab(0% 0 0)){:root{--color-ink:lab(7.54193% -7.14801 3.12695);--color-forest:lab(15.9786% -16.3215 7.18848);--color-moss:lab(34.6627% -18.3361 10.8616);--color-paper:lab(95.4417% .240684 6.91299);--color-paper-deep:lab(88.5155% .881761 11.5988);--color-gold:lab(60.683% 7.25013 37.7624);--color-line:lab(55.0673% -4.95449 10.0474/.35);--color-danger:lab(42.5342% 56.5687 38.8104);--color-focus:lab(48.2796% -39.8604 25.148)}}
*{box-sizing:border-box}html,body{background:var(--color-paper);min-width:0;color:var(--color-ink);margin:0;overflow-x:clip}body{font-family:var(--font-body);font-size:var(--text-base);line-height:1.55}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:0;overflow-wrap:anywhere;min-width:0;font-style:normal;font-weight:400;line-height:.98}h1{font-family:var(--font-display);font-size:var(--text-display)}h2{font-family:var(--font-display);font-size:clamp(2.5rem,5vw,5rem)}h3{font-family:var(--font-display);font-size:var(--text-xl)}.eyebrow{color:var(--color-moss);font-size:var(--text-xs);letter-spacing:.14em;margin-bottom:var(--space-5);text-transform:uppercase;font-weight:700}.eyebrow.light{color:var(--color-paper)}.site-header{color:var(--color-paper);align-items:center;gap:var(--space-6);padding:var(--space-6) clamp(var(--space-6), 5vw, var(--space-16));z-index:2;grid-template-columns:minmax(150px,1fr) auto minmax(150px,1fr);width:100%;display:grid;position:absolute;top:0;left:0}.wordmark{font-family:var(--font-display);font-size:var(--text-lg);letter-spacing:.1em;text-transform:uppercase;flex-direction:column;width:max-content;line-height:.8;display:inline-flex}.wordmark span{font-family:var(--font-body);letter-spacing:.28em;margin-top:var(--space-2);text-transform:uppercase;font-size:9px}.wordmark.dark{color:var(--color-forest)}.site-header nav{gap:var(--space-6);justify-content:center;display:flex}.site-header nav a,.nav-cta{font-size:var(--text-sm);white-space:nowrap}.site-header nav a{opacity:.85;transition:opacity var(--dur-fast) var(--ease-out)}.site-header nav a:hover{opacity:1}.nav-cta{border-bottom:var(--rule) solid var(--color-paper);padding-bottom:var(--space-1);justify-self:end}.hero{background:var(--color-forest);color:var(--color-paper);height:100svh;min-height:640px;position:relative;overflow:hidden}.hero-image{object-fit:cover;object-position:center;z-index:0}.hero-shade{z-index:1;background:linear-gradient(90deg,#001005d6,#00100573,#00100526);background:linear-gradient(90deg,lab(3.32619% -6.06222 2.97796/.84),lab(3.32619% -6.06222 2.97796/.45),lab(3.32619% -6.06222 2.97796/.15));position:absolute;inset:0}.hero-copy{max-width:760px;padding:0 clamp(var(--space-6), 9vw, 160px);z-index:1;position:absolute;top:clamp(132px,18vh,185px)}.hero-copy h1{margin-bottom:var(--space-6);font-size:clamp(3.4rem,5.3vw,5.7rem)}.hero-copy>p:not(.eyebrow){font-size:var(--text-lg);max-width:540px}.hero-actions{align-items:center;gap:var(--space-6);margin-top:var(--space-8);flex-wrap:wrap;display:flex}.button{background:var(--color-forest);border:var(--rule) solid var(--color-forest);border-radius:var(--radius-sm);color:var(--color-paper);cursor:pointer;min-height:48px;padding:var(--space-3) var(--space-5);transition:background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);white-space:nowrap;justify-content:center;display:inline-flex}.button:hover{background:var(--color-moss);border-color:var(--color-moss);transform:translateY(-2px)}.button:active{transform:translateY(1px)}.button:disabled{cursor:not-allowed;opacity:.55;transform:none}.button-light{background:var(--color-paper);border-color:var(--color-paper);color:var(--color-forest)}.button-light:hover{background:var(--color-paper-deep);border-color:var(--color-paper-deep)}.button.small{min-height:38px;padding:var(--space-2) var(--space-4)}.quiet-link,.text-link{border-bottom:var(--rule) solid currentColor;padding-bottom:var(--space-1);font-weight:700}.hero-caption{bottom:var(--space-6);color:var(--color-paper);font-size:var(--text-xs);left:clamp(var(--space-6), 5vw, var(--space-16));opacity:.75;z-index:1;max-width:270px;position:absolute}.section-pad{padding:clamp(var(--space-16), 12vw, 180px) clamp(var(--space-6), 9vw, 160px)}.statement{align-items:end;gap:var(--space-12);grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);display:grid}.statement>div{max-width:760px}.statement p:not(.eyebrow),.section-heading>p:not(.eyebrow){font-size:var(--text-lg);max-width:620px}.treatments{background:var(--color-paper-deep)}.section-heading{margin-bottom:var(--space-12);max-width:860px}.treatment-list{border-top:var(--rule) solid var(--color-line)}.treatment-row{border-bottom:var(--rule) solid var(--color-line);align-items:baseline;gap:var(--space-4);padding:var(--space-6) 0;grid-template-columns:60px minmax(0,1fr) minmax(0,1fr) auto;display:grid}.treatment-row span{color:var(--color-moss);font-size:var(--text-sm);font-weight:700}.treatment-row h3,.treatment-row p{margin:0}.treatment-row a{border-bottom:var(--rule) solid var(--color-forest);font-size:var(--text-sm);padding-bottom:var(--space-1);font-weight:700}.privacy-feature{background:var(--color-forest);color:var(--color-paper);grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:680px;display:grid}.privacy-image{min-height:440px;position:relative}.privacy-image img{object-fit:cover}.privacy-copy{max-width:650px;padding:clamp(var(--space-16), 10vw, 160px);align-self:center}.privacy-copy h2{font-size:clamp(2.5rem,4.6vw,4.4rem)}.privacy-copy p:not(.eyebrow){font-size:var(--text-lg)}.gallery{background:var(--color-paper)}.gallery-placeholder{background:var(--color-paper-deep);border:var(--rule) dashed var(--color-line);text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:340px;display:flex}.gallery-placeholder span{color:var(--color-moss);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.12em;font-weight:700}.faq{background:var(--color-paper-deep)}.faq>h2{margin-bottom:var(--space-10)}.faq details{border-top:var(--rule) solid var(--color-line);max-width:860px;padding:var(--space-5) 0}.faq details:last-child{border-bottom:var(--rule) solid var(--color-line)}.faq summary{cursor:pointer;font-family:var(--font-display);font-size:var(--text-xl);padding-right:var(--space-10);list-style:none;position:relative}.faq summary:after{content:"+";font-family:var(--font-body);right:var(--space-1);position:absolute}.faq details[open] summary:after{content:"-"}.faq details p{margin:var(--space-4) 0 0;max-width:660px}.final-cta{background:var(--color-moss);color:var(--color-paper);align-items:center;gap:var(--space-8);padding:clamp(var(--space-16), 10vw, 150px) clamp(var(--space-6), 9vw, 160px);justify-content:space-between;display:flex}.final-cta h2{max-width:830px;margin:0;font-size:clamp(2.5rem,5vw,5rem)}.site-footer{background:var(--color-ink);color:var(--color-paper);gap:var(--space-10);padding:var(--space-16) clamp(var(--space-6), 9vw, 160px) var(--space-8);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.site-footer h2{max-width:620px;font-size:clamp(2rem,4vw,3.5rem)}.footer-details{gap:var(--space-4);display:grid}.footer-details strong{color:var(--color-gold)}.footer-note{border-top:var(--rule) solid #fff3;font-size:var(--text-xs);padding-top:var(--space-4);grid-column:1/-1;margin:0}@supports (color:lab(0% 0 0)){.footer-note{border-top:var(--rule) solid lab(100% 0 0/.2)}}.booking-page,.account-page{background:var(--color-paper);min-height:100svh;padding-bottom:var(--space-20)}.simple-header{padding:var(--space-6) clamp(var(--space-6), 7vw, 128px);justify-content:space-between;align-items:center;display:flex}.booking-intro,.booking-form{max-width:900px;padding-left:var(--space-6);padding-right:var(--space-6);margin-left:auto;margin-right:auto}.booking-intro{margin-top:var(--space-16)}.booking-intro h1{color:var(--color-forest);margin-bottom:var(--space-5);font-size:clamp(3rem,7vw,6.5rem)}.booking-intro>p:not(.eyebrow){font-size:var(--text-lg);max-width:670px}.account-intro,.account-card{max-width:600px;padding-left:var(--space-6);padding-right:var(--space-6);margin-left:auto;margin-right:auto}.account-intro{margin-top:var(--space-16)}.account-intro h1{color:var(--color-forest);margin-bottom:var(--space-5);font-size:clamp(3rem,7vw,6.5rem)}.account-intro>p:not(.eyebrow){font-size:var(--text-lg)}.account-card{margin-top:var(--space-10)}.account-tabs{border-bottom:var(--rule) solid var(--color-line);gap:var(--space-6);margin-bottom:var(--space-6);display:flex}.account-tabs button{color:var(--color-ink);cursor:pointer;padding:var(--space-3) 0;background:0 0;border:0;border-bottom:2px solid #0000;font-weight:700}.account-tabs button.active{border-color:var(--color-forest);color:var(--color-forest)}.account-card form{gap:var(--space-5);display:grid}.account-card label{font-size:var(--text-sm);gap:var(--space-2);font-weight:700;display:grid}.account-card input{border:var(--rule) solid var(--color-line);border-radius:var(--radius-sm);min-height:46px;padding:var(--space-3);background:#ffffff94;background:lab(100% 0 0/.58)}.account-card input:focus{border-color:var(--color-moss);background:#fff;background:lab(100% 0 0);outline:none}.booking-form{margin-top:var(--space-12)}.booking-form fieldset{border:0;border-top:var(--rule) solid var(--color-line);margin:0 0 var(--space-8);padding:var(--space-6) 0 0}.booking-form legend{color:var(--color-forest);font-family:var(--font-display);font-size:var(--text-xl);margin-bottom:var(--space-5);padding:0}.form-grid{gap:var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.booking-form label{font-size:var(--text-sm);gap:var(--space-2);margin-bottom:var(--space-5);font-weight:700;display:grid}.booking-form input,.booking-form select,.booking-form textarea{border:var(--rule) solid var(--color-line);border-radius:var(--radius-sm);color:var(--color-ink);min-height:46px;padding:var(--space-3);resize:vertical;transition:border-color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);background:#ffffff94;background:lab(100% 0 0/.58);width:100%}.booking-form input:hover,.booking-form select:hover,.booking-form textarea:hover{border-color:var(--color-moss)}.booking-form input:focus,.booking-form select:focus,.booking-form textarea:focus{border-color:var(--color-moss);background:#fff;background:lab(100% 0 0);outline:none}.booking-form textarea{min-height:104px}.field-note{color:var(--color-moss);font-size:var(--text-sm);margin-bottom:var(--space-5)}.consent{align-items:start;gap:var(--space-3);max-width:780px;line-height:1.5;font-weight:400!important;display:flex!important}.consent input{accent-color:var(--color-forest);width:20px;min-height:20px;margin-top:2px}.form-status{background:var(--color-paper-deep);border-left:3px solid var(--color-moss);margin-top:var(--space-5);padding:var(--space-4)}.admin-shell{background:var(--color-paper);grid-template-columns:260px minmax(0,1fr);min-height:100svh;display:grid}.admin-shell aside{background:var(--color-forest);color:var(--color-paper);padding:var(--space-6);flex-direction:column;display:flex}.admin-label{color:var(--color-gold);font-size:var(--text-xs);letter-spacing:.1em;margin-top:var(--space-12);text-transform:uppercase;font-weight:700}.admin-shell aside nav{gap:var(--space-2);margin-top:var(--space-4);display:grid}.admin-shell aside nav a{padding:var(--space-3);border-left:2px solid #0000}.admin-shell aside nav a:hover{border-color:var(--color-gold)}.admin-foot{font-size:var(--text-xs);opacity:.75;margin-top:auto}.admin-main{padding:var(--space-10)}.admin-main>header,.admin-section-head{align-items:flex-end;gap:var(--space-6);justify-content:space-between;display:flex}.admin-main h1{color:var(--color-forest);margin:0;font-size:clamp(3rem,6vw,5rem)}.icon-button{border:var(--rule) solid var(--color-line);cursor:pointer;background:0 0;border-radius:50%;width:44px;height:44px}.icon-button:hover{background:var(--color-paper-deep)}.admin-section{margin-top:var(--space-12)}.admin-section h2,.profile-preview h2{font-size:var(--text-2xl);margin-bottom:var(--space-2)}.admin-table{border-top:var(--rule) solid var(--color-line);margin-top:var(--space-6)}.admin-row{border-bottom:var(--rule) solid var(--color-line);align-items:center;gap:var(--space-4);padding:var(--space-4) 0;grid-template-columns:42px minmax(150px,1fr) minmax(140px,1fr) 90px auto;display:grid}.avatar{background:var(--color-paper-deep);font-size:var(--text-xs);border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-weight:700;display:inline-flex}.status{font-size:var(--text-xs);text-transform:uppercase;font-weight:700}.status.pending{color:var(--color-gold)}.status.approved{color:var(--color-moss)}.text-button{border:0;border-bottom:var(--rule) solid var(--color-forest);color:var(--color-forest);cursor:pointer;padding:0 0 var(--space-1);white-space:nowrap;background:0 0;justify-self:end}.profile-preview{background:var(--color-paper-deep);gap:var(--space-10);margin:var(--space-12) 0;padding:var(--space-10);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.profile-preview>div>p:not(.eyebrow){max-width:560px}.profile-list p{border-top:var(--rule) solid var(--color-line);padding:var(--space-4) 0;justify-content:space-between;margin:0;display:flex}.profile-list span{color:var(--color-moss);font-size:var(--text-xs);text-transform:uppercase;font-weight:700}.checklist{border-top:var(--rule) solid var(--color-line)}.checklist p{border-bottom:var(--rule) solid var(--color-line);padding:var(--space-4) 0;margin:0}.checklist b{color:var(--color-danger);margin-right:var(--space-3)}@media (max-width:860px){.site-header{grid-template-columns:1fr auto}.site-header nav{display:none}.statement,.privacy-feature,.site-footer,.profile-preview{grid-template-columns:minmax(0,1fr)}.privacy-image{min-height:380px}.privacy-copy{padding:var(--space-16) var(--space-6)}.treatment-row{grid-template-columns:42px minmax(0,1fr) auto}.treatment-row p{grid-column:2/-1}.treatment-row a{grid-area:1/3}.admin-shell{grid-template-columns:minmax(0,1fr)}.admin-shell aside{gap:var(--space-5)}.admin-shell aside nav{flex-wrap:wrap;margin:0;display:flex}.admin-foot{margin:0}.admin-main{padding:var(--space-6)}}@media (max-width:600px){.hero{min-height:600px}.hero-copy{top:124px}.hero-copy h1{font-size:clamp(3.4rem,15vw,4.6rem)}.hero-copy>p:not(.eyebrow){font-size:var(--text-base)}.hero-caption{display:none}.section-pad{padding:var(--space-16) var(--space-6)}.final-cta,.simple-header{flex-direction:column;align-items:flex-start}.final-cta{padding:var(--space-16) var(--space-6)}.form-grid{grid-template-columns:minmax(0,1fr)}.admin-main>header,.admin-section-head{flex-direction:column;align-items:flex-start}.admin-row{grid-template-columns:38px minmax(0,1fr);align-items:start}.admin-row>span:not(.avatar),.admin-row>button{grid-column:2;justify-self:start}.admin-row .status{grid-row:auto}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:50ms!important;animation-duration:50ms!important}}
