@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}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;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.start{inset-inline-start:var(--spacing)}.block{display:block}.hidden{display:none}}:root{--ink:#203a32;--forest:#24483c;--deep:#16362e;--cream:#f5f0e7;--paper:#fffdf8;--sage:#bac9ae;--apricot:#e6ae85;--plum:#6f5367;--line:#203a322e}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{background:var(--paper);color:var(--ink);margin:0;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6;overflow-x:clip}body:before{content:"";z-index:100;background:var(--apricot);transform-origin:0;pointer-events:none;width:100%;height:3px;position:fixed;top:0;left:0;transform:scaleX(0)}button,input,textarea,select{font:inherit}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.04em;font-family:Georgia,Times New Roman,serif;font-weight:400;line-height:1.02}em{color:var(--plum);font-weight:400}.site-header{border-bottom:1px solid var(--line);z-index:50;-webkit-backdrop-filter:blur(18px);background:#fffdf8d6;justify-content:space-between;align-items:center;max-width:1420px;height:90px;margin:auto;padding:0 4.5vw;display:flex;position:sticky;top:0}.brand{align-items:center;gap:12px;font-family:Georgia,serif;font-size:20px;line-height:1;display:flex}.brand small{letter-spacing:.24em;text-transform:uppercase;margin-top:5px;font-family:Arial,sans-serif;font-size:9px;display:block}.brand-mark{border:1px solid;border-radius:50%;place-items:center;width:43px;height:43px;font-style:italic;display:grid}.desktop-nav{gap:38px;font-size:13px;display:flex}.desktop-nav a{position:relative}.desktop-nav a:after{content:"";background:var(--ink);height:1px;transition:all .25s;position:absolute;bottom:-4px;left:0;right:100%}.desktop-nav a:hover:after{right:0}.mobile-menu{display:none}.button{background:var(--deep);color:#fff;letter-spacing:.09em;text-transform:uppercase;cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:28px;min-height:54px;padding:0 26px;font-size:12px;font-weight:700;transition:transform .35s cubic-bezier(.2,.8,.2,1),background .25s,box-shadow .35s;display:inline-flex;overflow:hidden}.button:hover{background:var(--plum);transform:translateY(-2px);box-shadow:0 14px 35px #16362e33}.button span{transition:transform .35s cubic-bezier(.2,.8,.2,1)}.button:hover span{transform:translate(3px,-3px)}.button-small{gap:16px;min-height:45px;padding:0 20px}.text-link{letter-spacing:.05em;border-bottom:1px solid;align-items:center;gap:16px;padding-bottom:5px;font-size:13px;font-weight:700;display:inline-flex}.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:10px;font-weight:700}.hero{isolation:isolate;grid-template-columns:1.08fr .92fr;align-items:center;gap:6vw;max-width:1420px;min-height:760px;margin:auto;padding:84px 6vw 86px;display:grid;position:relative;overflow:hidden}.hero:before{content:"";z-index:-1;background:radial-gradient(circle at 60% 35%,#e6ae8547,#0000 68%);border-radius:50%;width:500px;height:500px;position:absolute;bottom:-300px;left:-260px}.hero-copy{z-index:2;position:relative}.hero-copy>*{opacity:0;animation:.8s cubic-bezier(.2,.75,.25,1) forwards hero-in}.hero-copy>:first-child{animation-delay:80ms}.hero-copy>:nth-child(2){animation-delay:.16s}.hero-copy>:nth-child(3){animation-delay:.28s}.hero-copy>:nth-child(4){animation-delay:.38s}.hero-copy>:nth-child(5){animation-delay:.48s}.hero h1{max-width:720px;margin:20px 0 28px;font-size:clamp(62px,6.5vw,108px)}.hero h1 em{display:block}.hero-lead{max-width:560px;font-size:19px;line-height:1.65}.hero-actions{align-items:center;gap:30px;margin:38px 0 55px;display:flex}.trust-row{border-top:1px solid var(--line);text-transform:uppercase;letter-spacing:.08em;gap:30px;padding-top:24px;font-size:11px;display:flex}.trust-row span{align-items:center;gap:8px;display:flex}.trust-row b{text-transform:none;font-family:Georgia,serif;font-size:20px;font-style:italic}.hero-visual{place-items:center;min-height:570px;display:grid;position:relative}.portrait-frame{aspect-ratio:3/4;z-index:2;clip-path:inset(0 0 100% round 48% 48% 12px 12px);border-radius:48% 48% 12px 12px;width:min(400px,82%);animation:1.15s cubic-bezier(.76,0,.24,1) .18s forwards portrait-reveal;position:relative;overflow:hidden;box-shadow:0 30px 80px #1b362e2e}.portrait-frame img{object-fit:cover;width:100%;height:100%}.portrait-wash{mix-blend-mode:soft-light;pointer-events:none;background:linear-gradient(145deg,#e6ae852e,#0000 48%,#16362e1f);position:absolute;inset:0}.orbit{border:1px solid #24483c47;border-radius:50%;position:absolute}.orbit-one{width:530px;height:530px;animation:24s linear infinite orbit-one}.orbit-two{width:620px;height:370px;animation:30s linear infinite reverse orbit-two;transform:rotate(-28deg)}.hero-note{z-index:3;background:var(--apricot);text-align:center;border-radius:50%;place-content:center;width:190px;height:190px;font-family:Georgia,serif;font-size:15px;line-height:1.4;animation:5s ease-in-out infinite note-float;display:grid;position:absolute;bottom:3%;right:-3%;transform:rotate(-7deg)}.hero-status{z-index:4;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);letter-spacing:.12em;text-transform:uppercase;background:#fffdf8e6;border:1px solid #203a3221;padding:10px 14px;font-size:9px;font-weight:700;animation:.7s .75s both hero-in;position:absolute;top:8%;right:0;box-shadow:0 12px 35px #16362e1a}.hero-status span{background:#6e9a69;border-radius:50%;width:7px;height:7px;margin-right:8px;animation:2.2s ease-out infinite status-pulse;display:inline-block;box-shadow:0 0 0 5px #6e9a6921}.portrait-caption{z-index:4;writing-mode:vertical-rl;letter-spacing:.22em;text-transform:uppercase;font-size:9px;position:absolute;bottom:12%;left:-3%;transform:rotate(180deg)}.hero-spark{color:var(--plum);font-size:40px;position:absolute;top:14%;left:2%}.scroll-cue{letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:12px;font-size:9px;display:flex;position:absolute;bottom:23px;left:6vw}.scroll-cue i{border:1px solid var(--line);border-radius:50%;place-items:center;width:34px;height:34px;font-style:normal;animation:2s ease-in-out infinite scroll-bob;display:grid}.ticker{background:var(--apricot);white-space:nowrap;padding:16px 0;font-family:Georgia,serif;font-size:18px;font-style:italic;overflow:hidden}.ticker div{width:max-content;animation:28s linear infinite slide}.ticker span{margin:0 32px}@keyframes slide{to{transform:translate(-45%)}}.section{padding:120px max(5vw,50vw - 660px)}.section-label{text-transform:uppercase;letter-spacing:.18em;align-items:center;gap:12px;font-size:10px;font-weight:700;display:flex}.section-label span{font-family:Georgia,serif;font-size:16px;font-style:italic;font-weight:400}.section-label:after{content:"";opacity:.35;background:currentColor;width:68px;height:1px}.section-label.light{color:#ffffffb8}.about{background:var(--cream);grid-template-columns:.55fr 1fr 1fr;gap:5vw;display:grid}.about-intro h2,.section-heading h2{margin:18px 0 0;font-size:clamp(44px,5vw,72px)}.about-body{padding-top:34px}.large-copy{font-family:Georgia,serif;font-size:27px;line-height:1.4}.about-columns{color:#52655f;grid-template-columns:1fr 1fr;gap:25px;margin:32px 0 26px;font-size:14px;display:grid}.focus{background:var(--deep);color:#fff}.focus-grid{border-top:1px solid #fff3;border-bottom:1px solid #fff3;grid-template-columns:repeat(4,1fr);margin-top:55px;display:grid}.focus-card{border-right:1px solid #fff3;padding:42px 32px 46px;transition:background .35s,transform .35s}.focus-card:last-child{border:0}.focus-card:hover{background:#ffffff0f;transform:translateY(-7px)}.focus-card>span{color:var(--apricot);font-family:Georgia,serif;font-style:italic}.focus-card h3{margin:68px 0 18px;font-size:30px}.focus-card p{color:#ffffffad;font-size:14px}.services{background:var(--paper)}.section-heading{margin-bottom:65px}.service-card{border-top:1px solid var(--line);grid-template-columns:70px 1fr 1.2fr 100px;align-items:center;gap:38px;padding:40px 0;transition:padding .4s cubic-bezier(.2,.8,.2,1),background .35s;display:grid}.service-card:hover{background:#bac9ae29;padding-left:24px;padding-right:24px}.service-card:last-child{border-bottom:1px solid var(--line)}.service-number{color:var(--plum);font-family:Georgia,serif;font-size:20px;font-style:italic}.service-card h3{margin:8px 0;font-size:36px}.service-duration{text-transform:uppercase;letter-spacing:.12em;font-size:11px}.service-detail>p{color:#52655f}.service-detail ul{flex-wrap:wrap;gap:7px;margin:18px 0 0;padding:0;list-style:none;display:flex}.service-detail li{background:var(--cream);border-radius:99px;padding:6px 10px;font-size:11px}.service-card>button{border:1px solid var(--ink);width:80px;height:80px;color:var(--ink);cursor:pointer;text-transform:uppercase;background:0 0;border-radius:50%;font-size:11px;transition:all .2s}.service-card>button:hover{background:var(--ink);color:#fff}.booking{background:var(--sage);grid-template-columns:.8fr 1.2fr;gap:8vw;display:grid}.booking-intro{padding-top:20px}.booking-intro h2,.contact-copy h2{margin:18px 0 26px;font-size:clamp(48px,5vw,76px)}.booking-intro>p:not(.eyebrow){max-width:450px}.booking-promise{align-items:center;gap:16px;margin-top:50px;display:flex}.booking-promise>span{border:1px solid var(--ink);border-radius:50%;place-items:center;width:48px;height:48px;display:grid}.booking-promise p{margin:0;font-size:13px}.booking-card{background:var(--paper);padding:38px;transition:transform .5s cubic-bezier(.2,.8,.2,1),box-shadow .5s;box-shadow:0 25px 70px #1e3c321f}.booking-card:hover{transform:translateY(-5px);box-shadow:0 35px 90px #1e3c3229}.booking-step{align-items:center;gap:15px;margin-bottom:18px;display:flex}.booking-step>span{background:var(--deep);color:#fff;border-radius:50%;place-items:center;width:32px;height:32px;font-size:12px;display:grid}.booking-step b,.booking-step small{display:block}.booking-step small{color:#71817b}.service-options{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:32px;display:grid}.service-options button,.date-options button,.time-options button{border:1px solid var(--line);cursor:pointer;color:var(--ink);background:0 0;padding:14px}.service-options button{text-align:left;min-height:75px}.service-options span,.service-options small{display:block}.service-options span{font-size:12px;font-weight:700}.service-options small{color:#71817b;margin-top:5px}.service-options button.selected,.date-options button.selected,.time-options button.selected{border-color:var(--deep);background:var(--deep);color:#fff}.service-options button.selected small{color:#ffffffad}.date-options,.time-options{grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:10px;display:grid}.time-options{margin-bottom:28px}.live-slots{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:28px;display:grid}.live-slots button{border:1px solid var(--line);cursor:pointer;color:var(--ink);background:0 0;padding:14px 8px}.live-slots button.selected{border-color:var(--deep);background:var(--deep);color:#fff}.booking-summary{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;padding-top:24px;display:flex}.booking-summary small,.booking-summary b,.booking-summary span{display:block}.booking-summary small{color:#71817b;text-transform:uppercase;letter-spacing:.1em;font-size:9px}.booking-summary b{margin:3px 0}.booking-summary span{font-size:13px}.payment-note{text-align:center;color:#71817b;margin:18px 0 0;font-size:11px}.booking-details{border-top:1px solid var(--line);gap:15px;margin-top:25px;padding-top:25px;display:grid}.booking-details h3{margin:0;font-size:30px}.booking-details label{text-transform:uppercase;letter-spacing:.1em;font-size:10px;font-weight:700;display:block}.booking-details label small{color:#71817b}.booking-details input,.booking-details textarea{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;margin-top:5px;padding:11px}.journal{background:var(--cream)}.section-heading.split{justify-content:space-between;align-items:end;display:flex}.article-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.article-art{height:320px;padding:25px;transition:transform .55s cubic-bezier(.2,.8,.2,1),border-radius .55s;position:relative;overflow:hidden}.article-card:hover .article-art{border-radius:120px 120px 8px 8px;transform:translateY(-8px)scale(.985)}.article-card:hover .article-art:before{transform:rotate(20deg)scale(1.08)}.article-art:before{transition:transform .7s cubic-bezier(.2,.8,.2,1)}.article-art:before,.article-art:after{content:"";border:1px solid #ffffffb3;border-radius:50%;width:250px;height:250px;position:absolute;top:-45px;right:-45px}.article-art:after{width:190px;height:350px;top:60px;left:20px;transform:rotate(45deg)}.article-art.sage{background:#718c74}.article-art.apricot{background:var(--apricot)}.article-art.plum{background:var(--plum)}.article-art span,.article-art i{color:#fff;z-index:2;font-family:Georgia,serif;font-size:28px;position:relative}.article-art i{font-size:48px;position:absolute;bottom:26px;right:35px}.article-meta{text-transform:uppercase;letter-spacing:.12em;justify-content:space-between;margin:18px 0 14px;font-size:9px;display:flex}.article-card h3{min-height:68px;font-size:31px}.article-card>a{border-bottom:1px solid;gap:10px;font-size:12px;font-weight:700;display:inline-flex}.contact{background:var(--paper);grid-template-columns:.85fr 1.15fr;gap:10vw;display:grid}.contact-copy>p:not(.eyebrow){color:#52655f;max-width:420px}.contact-details{flex-direction:column;align-items:flex-start;gap:14px;margin-top:42px;font-size:13px;display:flex}.contact-details a{border-bottom:1px solid var(--line);padding-bottom:4px}.contact-form{background:var(--cream);padding:40px}.contact-form label{text-transform:uppercase;letter-spacing:.1em;margin-bottom:20px;font-size:10px;font-weight:700;display:block}.field-row{grid-template-columns:1fr 1fr;gap:18px;display:grid}.contact-form input,.contact-form textarea,.contact-form select{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--ink);text-transform:none;letter-spacing:0;background:0 0;border-radius:0;outline:none;margin-top:7px;padding:13px 0;font-size:15px;font-weight:400}.contact-form textarea{resize:vertical}.contact-form input:focus,.contact-form textarea:focus,.contact-form select:focus{border-color:var(--ink)}.form-notice{color:var(--forest);margin:18px 0 0;font-size:13px}.form-error{color:#9a2e2e}.honeypot{width:1px!important;height:1px!important;position:absolute!important;left:-10000px!important;overflow:hidden!important}footer{background:var(--deep);color:#fff;padding:80px max(5vw,50vw - 660px) 28px}.footer-top{grid-template-columns:1fr 1fr .6fr;align-items:start;gap:60px;padding-bottom:70px;display:grid}.footer-top>p{color:var(--sage);font-family:Georgia,serif;font-size:35px;line-height:1.25}.footer-top nav{flex-direction:column;gap:12px;font-size:13px;display:flex}.brand-light{color:#fff}.footer-bottom{color:#ffffff8c;text-transform:uppercase;letter-spacing:.1em;border-top:1px solid #fff3;justify-content:space-between;padding-top:24px;font-size:10px;display:flex}@keyframes hero-in{0%{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}@keyframes portrait-reveal{to{clip-path:inset(0 round 48% 48% 12px 12px)}}@keyframes orbit-one{to{transform:rotate(360deg)}}@keyframes orbit-two{0%{transform:rotate(-28deg)}to{transform:rotate(332deg)}}@keyframes note-float{0%,to{transform:rotate(-7deg)translateY(0)}50%{transform:rotate(-4deg)translateY(-10px)}}@keyframes status-pulse{70%{box-shadow:0 0 0 5px #6e9a6921}to{box-shadow:0 0 0 11px #6e9a6900}}@keyframes scroll-bob{0%,to{transform:translateY(0)}50%{transform:translateY(5px)}}@keyframes section-in{0%{opacity:0;transform:translateY(45px)}to{opacity:1;transform:none}}@keyframes progress{to{transform:scaleX(1)}}@media (prefers-reduced-motion:no-preference){html.motion-ready [data-reveal]{opacity:0;will-change:opacity, transform;transition:opacity .75s cubic-bezier(.2,.7,.2,1),transform .85s cubic-bezier(.2,.8,.2,1);transform:translateY(34px)}html.motion-ready [data-reveal].is-visible{opacity:1;will-change:auto;transform:translate(0)}html.motion-ready .focus-card:nth-child(2),html.motion-ready .service-card:nth-child(2),html.motion-ready .article-card:nth-child(2){transition-delay:80ms}html.motion-ready .focus-card:nth-child(3),html.motion-ready .service-card:nth-child(3),html.motion-ready .article-card:nth-child(3){transition-delay:.16s}html.motion-ready .focus-card:nth-child(4),html.motion-ready .service-card:nth-child(4){transition-delay:.24s}}@supports (animation-timeline:view()){body:before{animation:linear both progress;animation-timeline:scroll(root)}}@media (max-width:980px){html{scroll-snap-type:none;scroll-padding-top:72px}.desktop-nav{display:none}.mobile-menu{margin-left:auto;margin-right:14px;display:block}.mobile-menu summary{border:1px solid var(--line);cursor:pointer;border-radius:50%;place-content:center;gap:5px;width:46px;height:46px;list-style:none;display:grid}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu summary span{clip:rect(0,0,0,0);width:1px;height:1px;position:absolute;overflow:hidden}.mobile-menu summary i{background:var(--ink);width:16px;height:1px;transition:transform .25s;display:block}.mobile-menu[open] summary i:first-of-type{transform:translateY(3px)rotate(45deg)}.mobile-menu[open] summary i:last-of-type{transform:translateY(-3px)rotate(-45deg)}.mobile-menu nav{border-bottom:1px solid var(--line);background:#fffdf8fa;gap:18px;padding:28px 5vw 36px;animation:.25s both menu-in;display:grid;position:absolute;top:90px;left:0;right:0;box-shadow:0 25px 50px #16362e1a}.mobile-menu nav a{font-family:Georgia,serif;font-size:30px}.mobile-menu nav .mobile-book{border-top:1px solid var(--line);letter-spacing:.1em;text-transform:uppercase;margin-top:8px;padding-top:18px;font-family:Arial,sans-serif;font-size:12px;font-weight:700}@keyframes menu-in{0%{opacity:0;transform:translateY(-8px)}}.hero{grid-template-columns:1fr;padding-top:60px}.hero-copy{text-align:center}.hero-lead{margin-left:auto;margin-right:auto}.hero-actions,.trust-row{justify-content:center}.hero-visual{min-height:550px}.about{grid-template-columns:1fr 1fr}.about>.section-label{grid-column:1/-1}.focus-grid{grid-template-columns:1fr 1fr}.focus-card:nth-child(2){border-right:0}.focus-card:nth-child(-n+2){border-bottom:1px solid #fff3}.service-card{grid-template-columns:50px .8fr 1.2fr 80px;gap:20px}.booking{grid-template-columns:1fr}}@media (max-width:680px){html{scroll-snap-type:none}.site-header{height:72px;padding-left:max(18px, env(safe-area-inset-left));padding-right:max(18px, env(safe-area-inset-right))}.site-header .button-small{display:none}.site-header .button-small span{font-size:15px}.brand{font-size:16px}.brand-mark{width:36px;height:36px}.hero{padding:48px 28px 64px 22px}.hero h1{font-size:clamp(50px,16vw,72px)}.hero-lead{font-size:16px}.hero-actions{flex-direction:column;gap:18px;margin:32px 0 42px}.hero-actions .button{width:100%}.trust-row{flex-wrap:wrap;gap:12px 20px}.hero-visual{min-height:460px}.portrait-frame{width:78%}.orbit-one{width:390px;height:390px}.orbit-two{width:420px;height:260px}.hero-note{width:145px;height:145px;font-size:12px;right:-8px}.hero-status{top:4%;right:2%}.portrait-caption{bottom:7%;left:0}.scroll-cue{display:none}.ticker{padding:13px 0;font-size:16px}.section{padding:76px 28px 76px 22px;scroll-margin-top:72px}.about{grid-template-columns:1fr;gap:28px}.about>.section-label{grid-column:auto}.about-body{padding-top:0}.about-columns{grid-template-columns:1fr}.large-copy{font-size:23px}.focus-grid{grid-template-columns:1fr;margin-top:38px}.focus-card,.focus-card:nth-child(2){border-bottom:1px solid #fff3;border-right:0;min-height:0;padding:26px 4px 28px}.focus-card:last-child{border-bottom:1px solid #fff3}.focus-card h3{margin:18px 0 10px}.focus-card p{margin-bottom:0}.service-card{grid-template-columns:40px 1fr;align-items:start;padding:30px 0}.service-detail,.service-card>button{grid-column:2}.service-card>button{border-radius:99px;width:100%;height:46px}.booking-card{margin-left:-8px;margin-right:-8px;padding:24px 18px}.service-options{grid-template-columns:1fr}.date-options,.time-options,.live-slots{grid-template-columns:1fr 1fr}.booking-summary{flex-direction:column;align-items:stretch}.article-grid{grid-template-columns:1fr;gap:50px}.article-art{height:290px}.section-heading.split{flex-direction:column;align-items:flex-start;gap:28px}.contact{grid-template-columns:1fr}.contact-form{padding:28px 20px}.contact-form input,.contact-form textarea,.contact-form select,.booking-details input,.booking-details textarea{font-size:16px}button,.button,.text-link,.mobile-menu a{min-height:44px}.field-row{grid-template-columns:1fr;gap:0}.footer-top{grid-template-columns:1fr;gap:35px}footer{padding-bottom:max(28px, env(safe-area-inset-bottom))}.footer-bottom{flex-direction:column;gap:10px}@media (prefers-reduced-motion:no-preference){html.motion-ready [data-reveal]{transition-duration:.62s,.72s;transform:translateY(24px)}html.motion-ready .focus-card:nth-child(n),html.motion-ready .service-card:nth-child(n),html.motion-ready .article-card:nth-child(n){transition-delay:0s}}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto;scroll-snap-type:none}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.hero-copy>*{opacity:1}.portrait-frame{clip-path:none}body:before{display:none}}.admin-login-shell{background:var(--cream);place-items:center;min-height:100vh;padding:30px;display:grid}.admin-login-card{background:var(--paper);gap:25px;width:min(460px,100%);padding:46px;display:grid;box-shadow:0 25px 80px #16362e1f}.admin-login-card h1{margin:12px 0;font-size:55px}.admin-login-card>label,.admin-editor label,.admin-inline-form label{text-transform:uppercase;letter-spacing:.1em;gap:6px;font-size:10px;font-weight:700;display:grid}.admin-login-card input,.admin-editor input,.admin-editor textarea,.admin-editor select,.admin-inline-form input,.admin-inline-form select{border:1px solid var(--line);width:100%;color:var(--ink);text-transform:none;letter-spacing:0;background:#fff;padding:12px;font-weight:400}.admin-error{color:#9a2e2e;margin:0;font-size:13px}.admin-back{text-align:center;font-size:12px}.admin-shell{background:#f3f1ec;min-height:100vh}.admin-sidebar{background:var(--deep);color:#fff;z-index:20;flex-direction:column;width:250px;padding:34px 28px;display:flex;position:fixed;inset:0 auto 0 0}.admin-sidebar nav{flex-direction:column;gap:8px;margin-top:70px;display:flex}.admin-sidebar nav a{color:#ffffffb3;border-radius:5px;padding:9px 12px;font-size:13px}.admin-sidebar nav a:hover{color:#fff;background:#ffffff14}.admin-user{border-top:1px solid #ffffff26;margin-top:auto;padding-top:20px}.admin-user span,.admin-user small{display:block}.admin-user small{color:#ffffff8c;margin:3px 0 12px}.admin-user button{color:var(--apricot);cursor:pointer;background:0 0;border:0;padding:0;font-size:12px}.admin-main{margin-left:250px;padding:50px clamp(28px,4vw,70px) 100px}.admin-header{justify-content:space-between;align-items:center;margin-bottom:38px;display:flex}.admin-header h1{margin:8px 0 0;font-size:clamp(40px,4vw,62px)}.admin-stats{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.admin-stats article{background:#fff;border:1px solid #203a3214;padding:24px}.admin-stats span{color:#66756f;text-transform:uppercase;letter-spacing:.08em;font-size:11px;display:block}.admin-stats b{margin-top:15px;font-family:Georgia,serif;font-size:42px;font-weight:400;display:block}.admin-panel{background:#fff;margin-top:22px;padding:30px;scroll-margin-top:25px}.admin-panel-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:end;padding-bottom:22px;display:flex}.admin-panel-heading h2{margin:7px 0 0;font-size:38px}.admin-panel-heading>span{color:#71817b;font-size:11px}.admin-row{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr auto;align-items:center;gap:25px;padding:18px 0;display:grid}.admin-row b,.admin-row small{display:block}.admin-row small{color:#71817b}.admin-row form{gap:7px;display:flex}.admin-row select{border:1px solid var(--line);padding:8px}.admin-row button,.message-card button{background:var(--cream);color:var(--ink);cursor:pointer;border:0;padding:9px 12px;font-size:11px}.admin-empty{color:#71817b;padding:24px 0 0}.admin-edit-grid{gap:10px;padding-top:20px;display:grid}.admin-editor{border:1px solid var(--line)}.admin-editor summary{cursor:pointer;justify-content:space-between;padding:17px 20px;font-family:Georgia,serif;font-size:20px;list-style:none;display:flex}.admin-editor summary span{letter-spacing:.1em;text-transform:uppercase;font-family:Arial,sans-serif;font-size:9px}.admin-editor form{border-top:1px solid var(--line);gap:18px;padding:22px;display:grid}.admin-form-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.admin-editor .checkbox{flex-direction:row;align-items:center;display:flex}.admin-editor .checkbox input{width:auto}.admin-editor .button{justify-self:start}.page-content-form{gap:18px;padding-top:24px;display:grid}.page-content-form>label,.page-content-form .admin-form-grid label{text-transform:uppercase;letter-spacing:.1em;gap:6px;font-size:10px;font-weight:700;display:grid}.page-content-form input,.page-content-form textarea{border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;text-transform:none;letter-spacing:0;background:#fff;padding:12px;font-weight:400}.page-content-form .two{grid-template-columns:1fr 1fr}.page-content-form .button{justify-self:start}.message-card{border-bottom:1px solid var(--line);padding:22px 0}.message-card.is-read{opacity:.58}.message-head{justify-content:space-between;display:flex}.message-head b,.message-head a{display:block}.message-head a{color:var(--plum);font-size:12px}.message-head span,.message-card>small{text-transform:uppercase;letter-spacing:.08em;color:#71817b;font-size:10px}.message-card>small{margin-top:14px;display:block}.message-card p{white-space:pre-wrap;margin:8px 0 15px}.admin-inline-form{grid-template-columns:1fr 180px auto;align-items:end;gap:14px;margin-top:24px;display:grid}.slot-list{flex-wrap:wrap;gap:8px;margin-top:25px;display:flex}.slot-list span{background:var(--cream);padding:8px 11px;font-size:11px}.slot-list span.booked{opacity:.5;text-decoration:line-through}@media (max-width:900px){.admin-sidebar{flex-direction:row;align-items:center;width:100%;height:auto;padding:18px;position:static}.admin-sidebar nav{display:none}.admin-user{border:0;margin:0 0 0 auto;padding:0}.admin-user small{display:none}.admin-main{margin-left:0;padding:30px 18px 70px}.admin-stats,.admin-form-grid{grid-template-columns:1fr 1fr}}@media (max-width:600px){.admin-header{align-items:flex-start;gap:20px}.admin-header .button{width:48px;min-height:48px;padding:0;font-size:0}.admin-header .button:after{content:"↗";font-size:16px}.admin-row{grid-template-columns:1fr;gap:10px}.admin-form-grid,.admin-inline-form{grid-template-columns:1fr}.admin-panel{padding:22px 16px}.admin-login-card{padding:30px 22px}}.blog-page{background:var(--paper);min-height:100vh}.blog-nav{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;max-width:1180px;height:90px;margin:auto;padding:0 24px;display:flex}.blog-article{width:min(820px,100% - 44px);margin:90px auto}.blog-article h1{margin:20px 0 30px;font-size:clamp(52px,7vw,92px)}.blog-excerpt{color:#52655f;max-width:650px;font-family:Georgia,serif;font-size:24px;line-height:1.5}.blog-cover{height:380px;margin:55px 0}.blog-content{max-width:680px;margin:auto;font-family:Georgia,serif;font-size:19px;line-height:1.85}.blog-footer{background:var(--sage);justify-content:space-between;align-items:center;gap:30px;padding:65px max(22px,50vw - 410px);display:flex}.blog-footer p{margin:0;font-family:Georgia,serif;font-size:31px}@media (max-width:600px){.blog-nav{height:72px}.blog-nav .text-link{font-size:10px}.blog-article{margin:60px auto}.blog-cover{height:280px}.blog-footer{flex-direction:column;align-items:flex-start}}
