*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:DM Sans,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.visible{visibility:visible}.resize{resize:both}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}:root{color:#172323;background:#faf8f5;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html{scroll-behavior:smooth}body{margin:0;min-width:320px;overflow-x:hidden}::-moz-selection{color:#082525;background:#e8d08a}::selection{color:#082525;background:#e8d08a}.resource-skeleton-item{display:grid;min-height:5.5rem;align-content:center;gap:.8rem;border:1px solid rgba(11,43,43,.12);background:#ffffff85;padding:1.25rem}.resource-skeleton-item span{display:block;width:72%;height:.7rem;background:#0b2b2b1a}.resource-failure,.resource-empty,.resource-waking{color:#173b36;font-size:.95rem;line-height:1.7}.resource-failure{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-left:2px solid #9a5b42;background:#ffffffa6;padding:1rem 1.25rem}.resource-failure button{flex:0 0 auto;border:0;border-bottom:1px solid currentColor;background:transparent;color:#173b36;cursor:pointer;font:inherit;font-weight:600;padding:.2rem 0}.resource-failure button:focus-visible{outline:2px solid #9a762f;outline-offset:4px}.resource-waking{grid-column:1 / -1;color:#ffffffd1}@media(max-width:640px){.resource-skeleton-service,.resource-skeleton-slot,.resource-skeleton-testimonial{grid-template-columns:1fr}.resource-failure{align-items:flex-start;flex-direction:column}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}:root{font-family:DM Sans,sans-serif;color:#25332d;background:#f8f9f6;--green: #214c43;--green-deep: #173a33;--green-soft: #386257;--gold: #b19a66;--gold-dark: #806b3e;--cream: #f3f5f0;--cream-light: #fbfcf9;--cream-deep: #e9eee8;--ink: #25332d;--muted: #5d6962;--line: rgba(37, 51, 45, .14);--line-light: rgba(243, 245, 240, .22);--display: "Fraunces", Georgia, serif;--body: "DM Sans", sans-serif;--page-width: 1280px}*,*:before,*:after{box-sizing:border-box}html{min-width:320px;scroll-behavior:smooth;scroll-padding-top:5.5rem}body{min-width:320px;margin:0;background:var(--cream-light);color:var(--ink);font:1rem/1.65 var(--body);overflow-x:hidden}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--gold-dark);outline-offset:4px}::-moz-selection{color:var(--cream-light);background:var(--green-soft)}::selection{color:var(--cream-light);background:var(--green-soft)}.site-shell{min-height:100vh}.section-wrap{width:min(calc(100% - 3rem),var(--page-width));margin-inline:auto}.eyebrow{margin:0 0 1rem;color:var(--gold-dark);font-size:.69rem;font-weight:700;letter-spacing:.16em;line-height:1.4;text-transform:uppercase}.display-heading{max-width:13ch;margin:0;color:var(--green);font:400 3.65rem/1.02 var(--display)}.display-heading em,.hero-title em{color:var(--gold);font-weight:400}.section-intro{max-width:34rem;margin:1.5rem 0 0;color:var(--muted);font-size:1.02rem;line-height:1.8}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.site-nav{position:relative;z-index:5;display:flex;min-height:5.25rem;align-items:center;justify-content:space-between;gap:2rem;padding:0 max(1.5rem,calc((100% - var(--page-width)) / 2));background:var(--cream-light);border-bottom:1px solid var(--line)}.brand-link{display:inline-flex;min-width:8rem;align-items:center;text-decoration:none}.nav-logo{display:block;width:9rem;height:3rem;-o-object-fit:contain;object-fit:contain;-o-object-position:left center;object-position:left center}.brand-logo-fallback{color:var(--green);font:600 1.45rem/1 var(--display);letter-spacing:-.04em}.wordmark{display:inline-flex;flex-direction:column;color:var(--green);font:1.45rem/.86 var(--display);text-decoration:none}.wordmark span:last-child{padding-left:.78rem;font-size:.92rem;letter-spacing:.08em}.nav-links{display:flex;align-items:center;gap:clamp(1rem,3vw,3rem);margin:0;padding:0;list-style:none}.nav-links a,.text-link,.footer-column a,.footer-bottom a{position:relative;color:var(--green);font-size:.83rem;font-weight:600;text-decoration:none}.nav-links a:after,.text-link:after,.footer-column a:after,.footer-bottom a:after{position:absolute;right:0;bottom:-.25rem;left:0;height:1px;background:currentColor;content:"";transform:scaleX(0);transform-origin:left;transition:transform .22s cubic-bezier(.22,1,.36,1)}.nav-links a:hover:after,.text-link:hover:after,.footer-column a:hover:after,.footer-bottom a:hover:after{transform:scaleX(1)}.nav-booking{display:inline-flex;align-items:center;gap:.65rem;color:var(--green);font-size:.82rem;font-weight:700;text-decoration:none}.nav-booking span,.hero-actions span{color:var(--gold-dark)}.mobile-nav-toggle{display:none;border:0;border-bottom:1px solid var(--green);background:transparent;color:var(--green);cursor:pointer;font-size:.76rem;font-weight:700;padding:.3rem 0}.hero-section{position:relative;overflow:hidden;background:var(--green);color:var(--cream-light)}.hero-grid{display:grid;width:min(calc(100% - 3rem),1440px);min-height:45rem;grid-template-columns:minmax(0,.95fr) minmax(22rem,1.05fr);align-items:center;gap:clamp(2rem,6vw,7rem);margin-inline:auto;padding:4.5rem max(0rem,calc((100% - var(--page-width)) / 2))}.hero-copy{position:relative;z-index:1;padding-block:2rem}.hero-location{color:#dfc692}.hero-title{margin:0;color:var(--cream-light);font:400 5.4rem/.98 var(--display)}.hero-title em{color:#d6bb83}.hero-line-mask{display:inline-block;overflow:hidden;padding-bottom:.08em;vertical-align:bottom}.hero-line-mask>span{display:inline-block;animation:hero-line-arrive .76s cubic-bezier(.22,1,.36,1) .18s both}.hero-intro{max-width:31rem;margin:1.7rem 0 0;color:#fcfaf5cc;font-size:1.05rem;line-height:1.85}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:1.75rem;margin-top:2rem}.button-primary{display:inline-flex;min-height:3.35rem;align-items:center;justify-content:center;gap:1rem;border:1px solid var(--green);border-radius:2px;background:var(--green);color:var(--cream-light);cursor:pointer;font-size:.86rem;font-weight:700;padding:.8rem 1.25rem;text-align:center;text-decoration:none;transition:background .18s ease,color .18s ease,border-color .18s ease}.button-primary:hover:not(:disabled){border-color:var(--green-soft);background:var(--green-soft)}.button-primary:disabled{cursor:not-allowed;opacity:.55}.hero-section .button-primary,.booking-section .button-primary{border-color:var(--cream-light);background:var(--cream-light);color:var(--green)}.hero-section .button-primary:hover:not(:disabled),.booking-section .button-primary:hover:not(:disabled){border-color:#e4dccb;background:#e4dccb}.text-link{display:inline-flex;gap:.55rem;color:var(--cream-light)}.hero-note{display:flex;align-items:center;gap:.85rem;margin:3.5rem 0 0;color:#fcfaf5ad;font-size:.75rem;letter-spacing:.07em;text-transform:uppercase}.hero-note span{color:#d6bb83}.hero-visual{position:relative;width:100%;margin:0;padding:0 0 2rem 2rem}.image-frame{position:relative;overflow:hidden;background:var(--cream-deep)}.image-frame img{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transform:translate3d(0,var(--parallax-y, 0),0) scale(1.04);will-change:transform}.hero-image{width:100%;max-width:39rem;aspect-ratio:.83;margin-left:auto;background:#d9d2c1}.hero-image-placeholder{position:relative;display:grid;width:100%;max-width:39rem;aspect-ratio:.9;align-content:center;justify-items:center;gap:1.25rem;overflow:hidden;margin-left:auto;border:1px solid rgba(255,255,255,.25);background:linear-gradient(145deg,#dfe7df,#cbd8d0 58%,#d8d5c6);color:var(--green-deep);text-align:center}.hero-image-placeholder:before,.hero-image-placeholder:after{position:absolute;border:1px solid rgba(33,76,67,.16);border-radius:50%;content:""}.hero-image-placeholder:before{width:74%;aspect-ratio:1}.hero-image-placeholder:after{width:56%;aspect-ratio:1}.hero-placeholder-logo{position:relative;z-index:1;width:min(65%,17rem);height:5rem;-o-object-fit:contain;object-fit:contain}.hero-placeholder-label,.hero-placeholder-caption{position:relative;z-index:1;color:var(--green);font-size:.7rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase}.hero-placeholder-caption{color:#58685e;font-size:.62rem;font-weight:600;letter-spacing:.1em}.hero-visual figcaption,.philosophy-visual figcaption{display:flex;justify-content:space-between;gap:1rem;margin-top:.85rem;color:#fcfaf5b3;font-size:.7rem;letter-spacing:.07em;text-transform:uppercase}.hero-visual figcaption span{color:#d6bb83}.practice-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-bottom:1px solid var(--line);background:var(--cream-deep)}.practice-strip>span{display:flex;min-height:6rem;align-items:center;gap:1rem;border-right:1px solid var(--line);color:var(--green);font:1.65rem var(--display);padding:1rem 2.5rem}.practice-strip>span:last-child{border-right:0}.practice-index{color:var(--gold-dark);font:700 .67rem var(--body);letter-spacing:.12em}.services-section{padding-block:8rem 8.5rem}.services-heading-grid{display:grid;grid-template-columns:1.2fr .8fr;align-items:end;gap:3rem;margin-bottom:3rem}.services-heading-grid .section-intro{margin:0 0 .35rem auto}.services-controls{margin-bottom:1.3rem}.filter-list{display:flex;flex-wrap:wrap;gap:1.4rem;border-bottom:1px solid var(--line)}.filter-button{position:relative;border:0;background:transparent;color:var(--muted);cursor:pointer;font-size:.83rem;padding:.7rem 0 1rem}.filter-button:after{position:absolute;right:0;bottom:-1px;left:0;height:2px;background:var(--green);content:"";transform:scaleX(0);transform-origin:left;transition:transform .2s ease}.filter-button.is-active{color:var(--green);font-weight:700}.filter-button.is-active:after{transform:scaleX(1)}.service-list{border-top:1px solid var(--line)}.service-row{display:grid;min-height:9.5rem;grid-template-columns:8rem 2.3rem minmax(0,1fr) auto 2rem;align-items:center;gap:1.25rem;border-bottom:1px solid var(--line);padding:1.3rem .7rem 1.3rem 0;transition:padding .24s cubic-bezier(.22,1,.36,1),background .18s ease}.service-row-image{width:8rem;height:6.5rem;overflow:hidden;background:var(--cream-deep)}.service-row-image img{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.service-row:hover{padding-right:.25rem;padding-left:.65rem;background:#eee9dd85}.service-row-number,.approach-number{color:var(--gold-dark);font:1.55rem var(--display)}.service-row-copy .eyebrow{margin-bottom:.25rem;font-size:.62rem}.service-row-copy h3{margin:0;color:var(--green);font:500 1.7rem/1.2 var(--display)}.service-row-copy>p:last-child:not(.eyebrow){max-width:42rem;margin:.35rem 0 0;color:var(--muted);font-size:.88rem}.service-row-status{color:var(--muted);font-size:.72rem}.service-row-arrow{color:var(--gold-dark);font-size:1.25rem;opacity:0;transform:translate(-.3rem,.3rem);transition:opacity .18s ease,transform .18s ease}.service-row:hover .service-row-arrow{opacity:1;transform:none}.philosophy-section{overflow:hidden;background:var(--cream-deep)}.philosophy-grid{display:grid;grid-template-columns:minmax(17rem,.85fr) minmax(0,1.15fr);align-items:center;gap:clamp(3rem,8vw,8rem);padding-block:8rem}.philosophy-visual{position:relative;margin:0;padding:0 0 2rem 2rem}.philosophy-image{aspect-ratio:.78;max-width:34rem}.philosophy-visual:before{position:absolute;z-index:0;top:2rem;right:0;bottom:0;left:0;border:1px solid rgba(121,93,49,.48);content:""}.philosophy-visual .image-frame{z-index:1}.philosophy-visual figcaption{position:relative;z-index:1;color:var(--muted)}.philosophy-copy .display-heading{max-width:11ch;font-size:3.4rem}.philosophy-lead{max-width:31rem;margin:1.4rem 0 2.5rem;color:var(--muted);font-size:1.02rem;line-height:1.8}.approach-list{margin:0;padding:0;list-style:none}.approach-list li{display:grid;grid-template-columns:3rem minmax(0,1fr);gap:1rem;border-top:1px solid var(--line);padding:1.3rem 0}.approach-list li:last-child{border-bottom:1px solid var(--line)}.approach-list h3{margin:0;color:var(--green);font:500 1.45rem var(--display)}.approach-list p{max-width:35rem;margin:.25rem 0 0;color:var(--muted);font-size:.91rem;line-height:1.7}.testimonials-section{padding-block:8rem 9rem}.testimonials-heading{display:grid;grid-template-columns:1.2fr .8fr;align-items:end;gap:3rem;margin-bottom:3.5rem}.testimonials-heading .section-intro{margin:0 0 .35rem auto}.testimonial-list{display:grid;grid-template-columns:1.1fr .9fr;align-items:start;gap:0 4rem;border-top:1px solid var(--line)}.testimonial-entry{margin:0;border-bottom:1px solid var(--line);padding:2rem 0 1.6rem}.testimonial-entry:nth-child(2n){margin-top:4rem}.testimonial-entry blockquote{max-width:35rem;margin:0 0 1.5rem;color:var(--green);font:1.75rem/1.35 var(--display)}.testimonial-entry figcaption{display:flex;align-items:center;gap:.8rem}.testimonial-initials{display:grid;width:2.5rem;aspect-ratio:1;place-items:center;border:1px solid var(--gold);border-radius:50%;color:var(--green);font-size:.7rem;font-weight:700}.testimonial-entry figcaption strong,.testimonial-entry figcaption small{display:block}.testimonial-entry figcaption strong{color:var(--green);font-size:.83rem}.testimonial-entry figcaption small{color:var(--muted);font-size:.73rem}.testimonial-rating{margin-left:auto;color:var(--gold-dark);font-size:.8rem;font-weight:700}.testimonial-rating span{color:var(--muted);font-weight:400}.results-section{background:#eee9dd;padding-block:7rem}.results-layout{display:grid;grid-template-columns:.75fr 1.25fr;align-items:center;gap:clamp(2rem,7vw,7rem)}.results-copy .display-heading{max-width:11ch}.comparison-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.comparison-frame{min-width:0;margin:0;background:var(--cream-light)}.comparison-frame img{display:block;width:100%;aspect-ratio:.9;-o-object-fit:cover;object-fit:cover}.comparison-frame figcaption{display:flex;justify-content:space-between;align-items:baseline;gap:.5rem;color:var(--green);font:1.25rem var(--display);padding:.85rem 1rem}.comparison-frame figcaption span{color:var(--muted);font:.65rem var(--body)}.gallery-section{padding-block:8rem}.gallery-heading{display:grid;grid-template-columns:1fr .8fr;align-items:end;gap:3rem;margin-bottom:3rem}.gallery-heading .section-intro{margin:0 0 .3rem auto}.photo-grid{display:grid;grid-template-columns:1.05fr 1.2fr .8fr;grid-auto-rows:13rem;gap:1.5rem}.photo-tile{display:flex;min-width:0;flex-direction:column;margin:0}.photo-tile .image-frame{flex:1;min-height:0}.photo-tile img{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.photo-tall{grid-row:span 2}.photo-wide{grid-column:span 2}.photo-square{grid-column:span 1}.photo-tile figcaption{display:flex;justify-content:space-between;align-items:baseline;gap:.8rem;border-bottom:1px solid var(--line);padding:.7rem 0}.photo-tile figcaption strong{color:var(--green);font:1.2rem var(--display)}.photo-tile figcaption span{color:var(--muted);font-size:.68rem;text-align:right}.booking-section{background:var(--green);color:var(--cream-light);padding-block:7rem 8rem}.booking-layout{display:grid;grid-template-columns:minmax(16rem,.72fr) minmax(0,1.28fr);align-items:start;gap:clamp(2rem,7vw,7rem)}.booking-intro{position:sticky;top:2rem}.booking-section .eyebrow{color:#dfc692}.booking-section .display-heading{color:var(--cream-light);font-size:3.5rem}.booking-section .display-heading em{color:#dfc692}.booking-copy{max-width:24rem;margin:1.2rem 0 2.5rem;color:#fcfaf5c2;line-height:1.8}.booking-stepper{position:relative;margin-top:3rem}.booking-stepper ol{display:grid;gap:.5rem;margin:0;padding:0;list-style:none}.booking-stepper li{display:flex;min-height:2.8rem;align-items:center;gap:.9rem;color:#fcfaf594;font-size:.85rem;transition:color .24s ease}.booking-stepper li.is-current,.booking-stepper li.is-complete{color:var(--cream-light)}.step-index{width:2rem;color:#dfc692;font-size:.71rem;font-weight:700;letter-spacing:.08em}.step-progress-track{position:absolute;top:0;bottom:0;left:.93rem;width:1px;background:#fcfaf533}.step-progress-track span{display:block;width:1px;height:100%;background:#dfc692;transform:scaleY(var(--progress, 0));transform-origin:top;transition:transform .42s cubic-bezier(.22,1,.36,1)}.booking-form-wrap{min-width:0}.booking-flow{min-height:34rem;background:var(--cream-light);color:var(--ink);padding:clamp(1.4rem,4vw,3rem)}.booking-stage{animation:stage-arrive .64s cubic-bezier(.22,1,.36,1) both}.booking-stage>.eyebrow{margin-bottom:.65rem}.booking-stage h3{max-width:20ch;margin:0;color:var(--green);font:500 2.2rem/1.15 var(--display)}.stage-intro{margin:.7rem 0 1.8rem;color:var(--muted);font-size:.9rem}.booking-form{display:grid;gap:1.2rem;margin-top:2rem}.booking-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1.5rem}.form-field{display:grid;min-width:0;gap:.3rem;color:var(--green);font-size:.75rem;font-weight:700}.form-field small{margin-left:.35rem;color:var(--muted);font-size:.68rem;font-weight:400}.form-field input,.form-field select,.form-field textarea{width:100%;min-height:2.8rem;border:0;border-bottom:1px solid rgba(23,59,54,.35);border-radius:0;background:transparent;color:var(--ink);font-size:.91rem;padding:.55rem 0}.form-field textarea{min-height:5.5rem;resize:vertical}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--green);outline:0;box-shadow:0 1px 0 var(--green)}.booking-actions{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-top:2rem}.booking-actions-end{justify-content:flex-end}.button-quiet{border:0;border-bottom:1px solid var(--green);border-radius:0;background:transparent;color:var(--green);cursor:pointer;font-size:.83rem;font-weight:700;padding:.5rem 0}.treatment-options,.slot-options{display:grid;margin:1.6rem 0 0;padding:0;border:0}.treatment-option{display:grid;min-height:5.1rem;grid-template-columns:1rem 2.5rem minmax(0,1fr) 1.5rem;align-items:center;gap:.8rem;border-bottom:1px solid var(--line);color:var(--green);cursor:pointer;padding:.8rem .35rem;transition:background .18s ease,padding .18s ease}.treatment-option:first-of-type{border-top:1px solid var(--line)}.treatment-option:hover,.treatment-option.is-selected{background:var(--cream-deep);padding-inline:.8rem}.treatment-option input,.slot-option input{accent-color:var(--green)}.option-number{color:var(--gold-dark);font:1.2rem var(--display)}.option-copy strong,.option-copy small{display:block}.option-copy strong{font:500 1.28rem var(--display)}.option-copy small,.coming-soon-note{color:var(--muted);font-size:.75rem}.option-indicator{color:var(--gold-dark);opacity:0;transition:opacity .18s ease}.treatment-option:hover .option-indicator,.treatment-option.is-selected .option-indicator{opacity:1}.coming-soon-note{margin:1.2rem 0 0}.date-options{display:flex;overflow-x:auto;gap:.45rem;padding:.25rem 0 .75rem}.date-options button{flex:0 0 auto;border:1px solid var(--line);border-radius:0;background:transparent;color:var(--green);cursor:pointer;font-size:.75rem;padding:.55rem .8rem}.date-options button.is-selected{border-color:var(--green);background:var(--green);color:var(--cream-light)}.slot-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;margin-top:.8rem}.slot-option{display:grid;min-height:3.8rem;grid-template-columns:1rem minmax(0,1fr) auto;align-items:center;gap:.55rem;border:1px solid var(--line);color:var(--green);cursor:pointer;font-size:.77rem;padding:.55rem}.slot-option.is-selected{border-color:var(--green);background:var(--cream-deep)}.slot-option small{color:var(--muted);font-size:.66rem}.booking-summary{margin:1.8rem 0 0;border-top:1px solid var(--line)}.booking-summary>div{display:grid;grid-template-columns:8rem minmax(0,1fr);gap:1rem;border-bottom:1px solid var(--line);padding:.8rem 0}.booking-summary dt{color:var(--muted);font-size:.78rem}.booking-summary dd{margin:0;color:var(--green);font-size:.86rem;font-weight:600;overflow-wrap:anywhere}.booking-disclaimer{border-left:2px solid var(--gold);color:var(--muted);font-size:.8rem;margin:1.3rem 0 0;padding-left:.8rem}.booking-toast{position:fixed;z-index:10;right:1.25rem;bottom:1.25rem;max-width:min(30rem,calc(100vw - 2.5rem));border-left:3px solid #dfc692;background:var(--green-deep);color:var(--cream-light);padding:1rem 1.25rem;opacity:0;pointer-events:none;transform:translateY(.5rem);transition:opacity .22s ease,transform .22s ease}.booking-toast.is-visible{opacity:1;transform:none}.contact-section{padding-block:8rem 8.5rem}.contact-layout{display:grid;grid-template-columns:1fr .8fr;align-items:start;gap:clamp(3rem,10vw,10rem)}.contact-layout .display-heading{max-width:10ch}.contact-details{display:grid;justify-items:start;gap:.8rem;margin-top:2.4rem;color:var(--green);font-size:.9rem;font-style:normal}.contact-details a{text-decoration-color:var(--gold);text-underline-offset:.25rem}.contact-form{display:grid;gap:1.5rem;border-top:1px solid var(--line);padding-top:1rem}.contact-form .button-primary{justify-self:start}.form-status{margin:0;font-size:.84rem}.form-status.success{color:var(--green)}.form-status.error{color:#8a3e2e}.site-footer{background:var(--green-deep);color:var(--cream-light);padding-block:4rem 1.5rem}.footer-top{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:3rem;padding-bottom:3.5rem}.footer-brand .brand-link{margin-bottom:1rem}.footer-logo{display:block;width:9rem;height:3rem;-o-object-fit:contain;object-fit:contain;-o-object-position:left center;object-position:left center}.footer-brand .brand-logo-fallback{color:var(--cream-light)}.footer-brand p,.footer-column p{color:#fcfaf5b8;font-size:.83rem;line-height:1.8}.footer-column{display:grid;align-content:start;justify-items:start;gap:.6rem}.footer-column h2{margin:0 0 .45rem;color:#dfc692;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase}.footer-column p{margin:0}.footer-column a,.footer-bottom a{color:#fcfaf5cc;font-size:.8rem;font-weight:400}.footer-bottom{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid var(--line-light);color:#fcfaf5a6;font-size:.72rem;padding-top:1.2rem}.resource-skeleton{display:grid;width:100%;gap:.75rem}.resource-skeleton-item{display:grid;min-height:5.5rem;align-content:center;gap:.8rem;border:1px solid var(--line);background:var(--cream-light);padding:1.25rem}.resource-skeleton-item span{display:block;width:72%;height:.7rem;background:#173b361f}.resource-skeleton-item span:last-child{width:44%;height:.55rem}.resource-skeleton-service,.resource-skeleton-slot,.resource-skeleton-testimonial{grid-template-columns:repeat(2,minmax(0,1fr))}.resource-failure,.resource-empty,.resource-waking{color:var(--green);font-size:.9rem;line-height:1.7}.resource-failure{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-left:2px solid #8a3e2e;background:var(--cream-deep);padding:1rem 1.25rem}.resource-failure p{margin:0}.resource-failure button{flex:0 0 auto;border:0;border-bottom:1px solid currentColor;background:transparent;color:var(--green);cursor:pointer;font:inherit;font-weight:700;padding:.2rem 0}.resource-waking{margin-block:.75rem;color:var(--muted)}.has-reveal [data-reveal]{opacity:0;transform:translateY(20px);transition:opacity .7s cubic-bezier(.22,1,.36,1) var(--reveal-delay, 0ms),transform .7s cubic-bezier(.22,1,.36,1) var(--reveal-delay, 0ms)}.has-reveal [data-reveal].is-visible{opacity:1;transform:translateY(0)}.has-reveal .service-row[data-reveal],.has-reveal .approach-list li[data-reveal],.has-reveal .testimonial-entry[data-reveal]{transition-delay:calc(var(--row-index, 0) * 70ms)}@keyframes hero-line-arrive{0%{transform:translateY(105%)}to{transform:translateY(0)}}@keyframes stage-arrive{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media(max-width:980px){.hero-grid{min-height:40rem;grid-template-columns:minmax(0,1fr) minmax(18rem,.8fr);gap:2rem}.hero-title{font-size:4.4rem}.practice-strip>span{padding-inline:1.3rem}.booking-layout{grid-template-columns:minmax(13rem,.65fr) minmax(0,1.35fr);gap:2rem}.footer-top{grid-template-columns:1.2fr 1fr 1fr}.footer-brand{grid-column:1 / -1}}@media(max-width:900px){.site-nav{min-height:4.5rem;gap:1rem;padding-inline:1rem}.nav-links{display:none}.mobile-nav-toggle{display:inline-flex;align-items:center;justify-content:center;min-width:2.75rem;min-height:2.75rem;border:0;color:var(--green);cursor:pointer}.nav-links.is-open{position:absolute;top:100%;right:0;left:0;display:grid;gap:0;margin:0;border-bottom:1px solid var(--line);background:var(--cream-light);padding:.5rem 1rem 1rem}.nav-links.is-open a{display:block;padding:.7rem 0}}@media(max-width:720px){html{scroll-padding-top:1rem}.section-wrap{width:min(calc(100% - 2rem),var(--page-width))}.site-nav{min-height:4.5rem;gap:1rem;padding-inline:1rem}.nav-links{display:none}.mobile-nav-toggle{display:inline-flex}.nav-links.is-open{position:absolute;top:100%;right:0;left:0;display:grid;gap:0;margin:0;border-bottom:1px solid var(--line);background:var(--cream-light);padding:.5rem 1rem 1rem}.nav-links.is-open a{display:block;padding:.7rem 0}.nav-booking{font-size:.76rem}.hero-grid{width:100%;min-height:auto;grid-template-columns:1fr;gap:1.5rem;padding:4rem 1rem 1.25rem}.hero-copy{padding:0}.hero-title{font-size:3.55rem}.hero-intro{max-width:30rem;font-size:.97rem}.hero-actions{align-items:flex-start;flex-direction:column;gap:1.1rem}.hero-note{margin-top:2rem}.hero-visual{width:calc(100% - 1rem);margin-left:auto;padding-left:1rem}.hero-image{max-width:none;aspect-ratio:1.12}.practice-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.practice-strip>span{min-height:4.25rem;border-bottom:1px solid var(--line);font-size:1.25rem;padding:.8rem 1rem}.practice-strip>span:nth-child(2){border-right:0}.practice-strip>span:nth-child(n+3){border-bottom:0}.services-section,.testimonials-section,.contact-section{padding-block:5rem}.display-heading{font-size:2.8rem}.services-heading-grid,.testimonials-heading,.contact-layout{grid-template-columns:1fr;gap:1.25rem;margin-bottom:2rem}.services-heading-grid .section-intro,.testimonials-heading .section-intro{margin:0}.filter-list{overflow-x:auto;flex-wrap:nowrap;gap:1.1rem}.filter-button{flex:0 0 auto}.service-row{min-height:7rem;grid-template-columns:2.2rem minmax(0,1fr) 1.2rem;padding-block:1rem;grid-template-columns:4.5rem minmax(0,1fr) 1.2rem;gap:.75rem}.service-row-image{width:4.5rem;height:4.5rem;grid-row:1 / span 2}.service-row-number{align-self:start;padding-top:.2rem;font-size:1.25rem}.service-row-copy h3{font-size:1.4rem}.service-row-number{display:none}.service-row-status{grid-column:2;grid-row:2;margin-top:-.6rem}.service-row-arrow{grid-column:3;grid-row:1 / span 2;opacity:1;transform:none}.philosophy-grid{grid-template-columns:1fr;gap:2.5rem;padding-block:5rem}.philosophy-visual{width:min(88%,30rem)}.philosophy-copy .display-heading,.booking-section .display-heading{font-size:2.85rem}.testimonial-list{grid-template-columns:1fr}.results-section,.gallery-section{padding-block:5rem}.results-layout,.gallery-heading{grid-template-columns:1fr;gap:1.5rem}.results-copy .display-heading{max-width:14ch}.gallery-heading .section-intro{margin:0}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:11rem;gap:1.25rem .8rem}.photo-tile figcaption{align-items:flex-start;flex-direction:column;gap:.2rem}.photo-tile figcaption span{text-align:left}.photo-tall{grid-row:span 2}.photo-wide{grid-column:span 2}.testimonial-entry:nth-child(2n){margin-top:0}.testimonial-entry blockquote{font-size:1.55rem}.booking-section{padding-block:5rem}.booking-layout{grid-template-columns:1fr;gap:2rem}.booking-intro{position:static}.booking-copy{margin-bottom:1rem}.booking-stepper{margin-top:1.5rem}.booking-stepper ol{grid-template-columns:repeat(4,minmax(0,1fr));gap:.3rem}.booking-stepper li{min-width:0;align-items:flex-start;flex-direction:column;gap:.1rem;font-size:.7rem}.step-progress-track{top:.95rem;right:0;bottom:auto;left:.95rem;width:auto;height:1px}.step-progress-track span{width:100%;height:1px;transform:scaleX(var(--progress, 0));transform-origin:left}.booking-flow{min-height:0;padding:1.25rem}.booking-stage h3{font-size:1.9rem}.booking-fields{grid-template-columns:1fr;gap:.8rem}.slot-options{grid-template-columns:1fr}.booking-actions .button-primary{width:100%}.booking-summary>div{grid-template-columns:6.5rem minmax(0,1fr)}.contact-layout{gap:2rem;margin-bottom:0}.contact-layout .display-heading{max-width:13ch}.footer-top{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem 1rem}.footer-brand{grid-column:1 / -1}.footer-bottom{align-items:flex-start;flex-direction:column}.resource-skeleton-service,.resource-skeleton-slot,.resource-skeleton-testimonial{grid-template-columns:1fr}.resource-failure{align-items:flex-start;flex-direction:column}}@media(max-width:380px){.hero-title{font-size:3.05rem}.display-heading{font-size:2.55rem}.booking-flow{padding:1rem}.treatment-option{grid-template-columns:1rem 1.8rem minmax(0,1fr) 1rem;gap:.55rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.has-reveal [data-reveal]{opacity:1;transform:none}.image-frame img{transform:none!important}}
