:root{--ink:#303e2f;--teal:#50664b;--mint:#e1e7d8;--paper:#faf9f5;--line:#d8decf;--muted:#596451;--white:#fff;--gold:#b19966}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-underline-offset:5px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}:focus-visible{outline:3px solid #aa7530;outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2,.serif{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.08;letter-spacing:-.045em}h1{font-size:clamp(3.1rem,5.7vw,6rem)}h2{font-size:clamp(2.3rem,4vw,4rem)}h3{font-size:1.25rem;font-weight:500;line-height:1.35}p{color:var(--muted)}img{max-width:100%;display:block;object-fit:cover}.wrap{width:min(1280px,90%);margin:auto}.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:.78rem;font-weight:600;margin-bottom:22px}.topline{background:var(--teal);color:#fff;text-align:center;padding:8px 16px;font-size:.8rem;letter-spacing:.055em}.site-header{position:sticky;top:0;z-index:15;background:rgba(250,249,245,.96);border-bottom:1px solid var(--line)}.nav{height:95px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:14px;text-decoration:none}.brand img{height:75px;width:75px;object-fit:contain}.brand span{font-family:Georgia,serif;font-size:1.15rem;line-height:1.2}.brand small{display:block;font:10px 'DM Sans',sans-serif;letter-spacing:.2em;margin-top:7px;text-transform:uppercase}.navlinks{display:flex;align-items:center;gap:28px}.navlinks a{text-decoration:none;font-size:.9rem}.button,button.primary{display:inline-flex;align-items:center;justify-content:center;gap:22px;background:var(--teal);color:white;border:1px solid var(--teal);border-radius:3px;padding:14px 24px;text-decoration:none;font-size:.9rem;font-weight:500;transition:background .2s,transform .2s}.button:hover,button.primary:hover{background:#40553b;transform:translateY(-2px)}.button.light{background:var(--paper);color:var(--ink);border-color:var(--paper)}.button.outline{background:transparent;color:var(--ink);border:1px solid #a7b399}.menu{display:none;background:none;border:1px solid var(--line);padding:8px}.hero{display:grid;grid-template-columns:1fr 1.05fr;min-height:660px}.hero-copy{padding:80px 55px 65px 0;align-self:center}.hero-copy h1 em{color:#617956;font-weight:400}.hero-copy>p:not(.eyebrow){max-width:450px;font-size:1.05rem}.actions{display:flex;gap:20px;flex-wrap:wrap;align-items:center;margin:30px 0}.textlink{font-size:.9rem}.hero-photo{position:relative;margin:38px 0 38px 20px;min-height:560px;border-radius:220px 220px 8px 8px;overflow:hidden;background:var(--mint)}.hero-photo>img{width:100%;height:100%;position:absolute;object-position:48% center}.photo-note{position:absolute;bottom:22px;left:22px;right:22px;background:rgba(250,249,245,.94);padding:20px 24px;display:flex;align-items:center;justify-content:space-between;gap:15px}.photo-note strong{display:block;font-family:Georgia,serif;font-size:1.2rem;font-weight:400}.photo-note span{font-size:.8rem}.rating{display:flex;align-items:center;gap:14px;margin-top:35px;font-size:.85rem}.stars{letter-spacing:.14em;color:#a67d32}.trust-strip{border-block:1px solid var(--line);padding:23px 0}.trust-strip .wrap{display:flex;justify-content:space-between;gap:20px;font-size:.85rem;flex-wrap:wrap}.section{padding:90px 0}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:35px}.section-head h2{margin-bottom:0}.section-head p{max-width:420px;margin-bottom:0}.category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.category-card{position:relative;text-decoration:none;background:#fff;border-bottom:1px solid var(--line);transition:transform .25s}.category-card:hover{transform:translateY(-6px)}.category-card img{height:280px;width:100%}.card-body{padding:25px}.card-body p{margin:8px 0}.card-title{display:flex;align-items:center;justify-content:space-between}.card-title h3{font:1.8rem Georgia,serif;margin:0}.split{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}.split>img{width:100%;height:540px;border-radius:5px 150px 5px 5px}.tone{background:#e9edde}.dark{background:var(--teal);color:white}.dark p{color:#dce5d0}.dark .eyebrow{color:#d4dec9}.pill{display:inline-block;padding:5px 12px;border:1px solid var(--line);border-radius:30px;font-size:.8rem;margin:3px}.footer{padding:60px 0 25px;background:#344530;color:white}.footer p{color:#d0d9c3}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:50px}.footer a{display:block;margin:8px 0;font-size:.9rem}.footer-bottom{border-top:1px solid #63735a;margin-top:35px;padding-top:20px;display:flex;justify-content:space-between;gap:20px;font-size:.8rem}.page-intro{padding:65px 0 35px}.page-intro h1{font-size:clamp(2.8rem,5vw,4.6rem);max-width:950px}.page-intro p{max-width:650px}.breadcrumbs{font-size:.8rem;margin-bottom:25px}.searchbar{display:flex;gap:15px;margin:25px 0;flex-wrap:wrap}input,select,textarea{padding:13px 15px;border:1px solid #a9b49a;background:white;color:var(--ink);border-radius:3px;width:100%}textarea{min-height:130px;resize:vertical}label{display:block;font-size:.9rem;margin-bottom:15px}label input,label select,label textarea{display:block;margin-top:6px}input[type=checkbox]{width:18px;height:18px;display:inline-block;margin-right:8px}.searchbar input{flex:2;min-width:230px}.searchbar select{flex:1;min-width:180px}.service-list{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.service{border:1px solid var(--line);padding:25px;background:white;display:flex;flex-direction:column}.service h3{margin:10px 0}.service .desc{font-size:.9rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.service-bottom{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:14px}.service-bottom strong{font-size:1.15rem}.notice{padding:18px 23px;background:#f0f2e9;border-left:3px solid #819575;margin:25px 0;font-size:.9rem}.detail-layout{display:grid;grid-template-columns:1.6fr 1fr;gap:70px}.detail-copy{white-space:pre-line}.booking-card{padding:30px;background:white;border:1px solid var(--line);align-self:start;position:sticky;top:120px}.booking-card strong{font:2.5rem Georgia,serif}.booking-card .button{width:100%;margin-top:20px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.gallery button{padding:0;border:0;background:transparent;text-align:left;color:var(--ink)}.gallery img{width:100%;height:330px;transition:filter .2s}.gallery button:hover img{filter:brightness(.9)}.gallery span{display:block;padding:12px 0}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.quote{margin:0;padding:30px;background:white;border:1px solid var(--line)}.quote blockquote{margin:15px 0;font-family:Georgia,serif;font-size:1.25rem;line-height:1.5}.quote figcaption{font-size:.85rem;color:var(--muted)}details{border-bottom:1px solid var(--line);padding:20px 0}summary{font-size:1.1rem;cursor:pointer}details p{padding:15px 0 0;margin:0;max-width:800px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.full{grid-column:1/-1}.steps{display:flex;gap:15px;margin:20px 0 35px;list-style:none;padding:0;flex-wrap:wrap}.steps li{padding:8px 15px;border-bottom:2px solid var(--line);font-size:.85rem}.steps li.active{border-color:var(--teal);font-weight:700}.slots{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.slots button{background:white;padding:12px 20px;border:1px solid #8f9f80;border-radius:3px}.slots button.selected{background:var(--teal);color:white}.error{color:#9c2b20}.success{padding:25px;background:var(--mint)}[hidden]{display:none!important}.cookiebar{position:fixed;bottom:20px;left:20px;max-width:440px;padding:23px;background:white;border:1px solid var(--line);box-shadow:0 5px 30px #1234;z-index:40}.cookiebar p{font-size:.85rem;margin:0 0 15px}.cookiebar button{margin:3px;padding:10px 15px;font-size:.85rem}.cookie-settings{background:none;border:none;color:inherit;text-decoration:underline;padding:0}.lightbox{max-width:90vw;max-height:90vh;border:0;padding:20px;background:var(--paper)}.lightbox::backdrop{background:#273322dd}.lightbox img{max-height:75vh;max-width:80vw;object-fit:contain}.lightbox button{float:right;background:none;border:0;padding:10px}.reveal{animation:arrive .8s ease both}@keyframes arrive{from{opacity:.3;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.skip{position:fixed;top:-100px;z-index:99;background:white;padding:15px}.skip:focus{top:0}.mobile-book{display:none}.hours{width:100%;border-collapse:collapse}.hours td{padding:9px;border-bottom:1px solid var(--line)}.small{font-size:.85rem}.status{min-height:25px}.blank-state{padding:35px;border:1px dashed #97a88a;text-align:center}.legal{max-width:850px}.legal h2{font-size:2rem;margin-top:35px}
@media(max-width:950px){.navlinks{gap:16px}.brand span{display:none}.hero-copy{padding-right:20px}.hero-photo{min-height:480px}.hero{min-height:auto}.split{gap:35px}.footer-grid{gap:25px}.gallery{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.nav{height:78px}.brand img{height:60px;width:60px}.brand span{display:block;font-size:.9rem}.brand small{font-size:8px}.navlinks{display:none;position:absolute;top:78px;left:0;right:0;background:var(--paper);padding:25px;border-bottom:1px solid var(--line)}.navlinks.open{display:flex;flex-direction:column;align-items:stretch}.menu{display:block}.hero{grid-template-columns:1fr}.hero-copy{padding:45px 0 15px}.hero-copy h1{max-width:520px}.hero-photo{margin:15px 0 30px;min-height:430px;border-radius:160px 160px 5px 5px}.photo-note{padding:15px}.trust-strip .wrap{justify-content:center;font-size:.8rem}.section{padding:55px 0}.section-head{display:block}.section-head p{margin-top:20px}.category-grid,.review-grid,.service-list{grid-template-columns:1fr}.category-card img{height:290px}.split,.detail-layout{grid-template-columns:1fr;gap:35px}.split>img{height:370px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column}.gallery{gap:14px}.gallery img{height:230px}.form-grid{grid-template-columns:1fr}.booking-card{position:static}.cookiebar{bottom:78px;right:15px;left:15px;max-width:none}.mobile-book{display:block;position:fixed;bottom:0;left:0;right:0;padding:10px 20px;background:var(--paper);border-top:1px solid var(--line);z-index:25}.mobile-book .button{width:100%;padding:10px}.footer{padding-bottom:95px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

/* Shared treatment directory and accessible expandable navigation. */
.nav-dropdown summary{cursor:pointer;font-size:.95rem;padding:12px 0;list-style-position:inside}.nav-panel{position:absolute;top:100%;left:0;right:0;background:var(--paper);color:var(--ink);padding:28px max(24px,calc((100vw - 1200px)/2));box-shadow:0 15px 25px #34453022;border-top:1px solid var(--line);max-height:70vh;overflow-y:auto}.site-header{position:sticky;top:0;z-index:30}.nav{position:static}.nav-panel a{display:block;padding:7px 0;line-height:1.5}.nav-panel a:hover,.footer a:hover{text-decoration:underline;text-underline-offset:4px}.treatment-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 36px}.treatment-link-group{min-width:0}.treatment-link-group h3{font-size:1.1rem;margin:18px 0 10px}.treatment-link-group a{overflow-wrap:anywhere}.visit-panel{left:auto;right:max(24px,calc((100vw - 1200px)/2));padding:20px 28px;min-width:280px}.footer-treatments{border-top:1px solid #63735a;margin-top:36px;padding-top:32px}.footer-treatments h2{font-size:2rem}.footer .button{display:inline-flex}.footer a{line-height:1.6;padding:3px 0}.footer .button{padding:12px 22px}.navlinks a[aria-current="page"]:not(.button){text-decoration:underline;text-underline-offset:5px}.nav-dropdown:has(a[aria-current="page"])>summary{font-weight:700}
@media(max-width:1100px){.navlinks{gap:16px}.brand span{display:none}}
@media(max-width:700px){.brand span{display:block}.navlinks{max-height:calc(100dvh - 155px);overflow-y:auto}.nav-panel{position:static;max-height:none;box-shadow:none;padding:8px 0 12px;border-top:0}.visit-panel{min-width:0}.treatment-links{grid-template-columns:1fr 1fr;gap:16px}.nav-panel .treatment-links{grid-template-columns:1fr}.nav-dropdown summary{padding:12px 0}.navlinks>a:not(.button){padding:8px 0}}
@media(max-width:450px){.footer .treatment-links,.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}}

/* Refinements across all page templates. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.breadcrumbs{display:flex;flex-wrap:wrap;gap:6px;font-size:.9rem;line-height:1.6}.nav-dropdown{padding:0;border:0}.nav-dropdown summary{min-height:44px}.navlinks{gap:20px}.nav-panel{animation:panel-in .18s ease-out}.nav-panel .textlink{font-weight:700}.footer .cookie-settings{min-height:44px;text-align:left}.related-treatments{margin-top:36px;padding-top:24px;border-top:1px solid var(--line)}.related-treatments a{display:flex;justify-content:space-between;gap:20px;padding:12px 0;line-height:1.5}.related-treatments span{white-space:nowrap}.text-button{color:var(--teal);border:0;background:transparent;text-decoration:underline;padding:10px}.hours th{text-align:left;font-weight:500;padding:9px;border-bottom:1px solid var(--line)}.lightbox{width:min(900px,94vw);max-width:94vw;padding:20px;border-radius:6px}.lightbox img{width:100%;max-width:100%;height:min(58vh,620px);object-fit:contain}.lightbox-close{float:none!important;display:block;margin-left:auto;min-height:44px}.lightbox-controls{display:flex;align-items:center;justify-content:space-between;gap:12px}.lightbox-controls button{float:none;min-height:44px;border:1px solid var(--line);border-radius:3px}.lightbox p{margin:16px 0;font-size:.9rem}.lightbox::backdrop{backdrop-filter:blur(4px)}.service:hover{border-color:#8b9f7b}.service:focus-within{box-shadow:0 0 0 2px #8b9f7b}.small,.eyebrow,.pill{font-size:.875rem}.detail-copy{line-height:1.8}.booking-card{scroll-margin-top:120px}.steps li{font-size:.9rem}.status:not(:empty),#booking-status:not(:empty){padding:14px 18px;border-left:3px solid var(--teal);background:#edf0e5}.arrived{animation:arrive .45s ease-out both}.menu{min-width:58px;min-height:44px}.cookiebar{max-height:calc(100dvh - 110px);overflow-y:auto}.brand small{font-size:11px;letter-spacing:.08em}.footer-treatments .treatment-link-group a{padding:7px 0;margin:2px 0}.button.outline:hover{background:#e8edde;color:var(--ink)}
@keyframes panel-in{from{opacity:.6;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:850px) and (min-width:701px){.navlinks{gap:12px}.navlinks .button{padding:12px}.navlinks a,.nav-dropdown summary{font-size:.875rem}}
@media(max-width:700px){.page-intro{padding-top:35px}.page-intro h1{font-size:clamp(2.15rem,8.5vw,3.5rem);overflow-wrap:anywhere}.brand small{font-size:10px}.navlinks{top:78px}.hero-copy h1{font-size:clamp(2.8rem,10vw,4rem)}.rating{flex-wrap:wrap;gap:8px}.service-bottom{flex-wrap:wrap}.gallery{grid-template-columns:1fr 1fr}.gallery img{height:190px}.lightbox-controls{font-size:.875rem}.photo-note{left:12px;right:12px;bottom:12px}.searchbar input,.searchbar select{min-width:0;flex-basis:100%}.detail-layout>*{min-width:0}.steps{gap:8px}.steps li{padding:8px}.booking-card{padding:24px}.brand{gap:8px}.nav{gap:12px}.lightbox{padding:12px}.related-treatments a{flex-wrap:wrap;gap:5px}}
@media(max-width:380px){.brand span{font-size:.85rem}.brand small{display:none}.gallery{grid-template-columns:1fr}.gallery img{height:300px}.cookiebar{padding:16px}}
@media(prefers-reduced-motion:reduce){.arrived,.nav-panel{animation:none}}

.booking-treatment-details{margin-bottom:22px;padding:14px 18px;border:1px solid var(--line);background:#f0f2e9}.booking-treatment-details summary{font-size:.95rem}.booking-treatment-details p{white-space:pre-line;font-size:.95rem}.steps li.active{background:#e9edde}.nav-panel a:focus-visible{outline-offset:1px}.footer a:focus-visible{outline-color:#fff}

@media(max-width:700px){.navlinks{max-height:calc(100dvh - 200px)}.detail-layout:has(.detail-copy)>.booking-card{grid-row:1}.mobile-book{padding-bottom:max(10px,env(safe-area-inset-bottom))}}

.payment-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:40px;align-items:start}.payment-result{padding:40px;border:1px solid var(--line);background:white;border-top:5px solid var(--teal)}.payment-result h2{font-size:clamp(2rem,4vw,3rem)}.payment-result[data-state="paid"]{border-top-color:#327350}.payment-result[data-state="expired"],.payment-result[data-state="review"]{border-top-color:#9d6830}.payment-help{padding:28px;background:#e9edde}.payment-result dl{display:grid;grid-template-columns:1fr 2fr;gap:12px;padding:24px 0;border-block:1px solid var(--line)}.payment-result dt{font-weight:600}.payment-result dd{margin:0;overflow-wrap:anywhere}.payment-result .actions{gap:12px}.payment-result[aria-busy="true"]{cursor:progress}@media(max-width:700px){.payment-layout{grid-template-columns:1fr;gap:24px}.payment-result{padding:25px}.payment-result dl{grid-template-columns:1fr}.payment-result dd{margin-bottom:12px}}
/* Strengthen the original logo at its small navigation size. */
.brand img{filter:contrast(1.35) saturate(.65) drop-shadow(.35px 0 0 #40553b) drop-shadow(-.35px 0 0 #40553b)}
/* Give the complete header brand stronger visual weight. */
.brand span{font-weight:700;color:var(--ink)}
.brand small{font-weight:700;color:var(--ink)}
.brand img{filter:contrast(1.55) saturate(.65) drop-shadow(.55px 0 0 #40553b) drop-shadow(-.55px 0 0 #40553b)}
/* Staff CRM */
.crm-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px;border-bottom:1px solid var(--line);padding-bottom:16px}.crm-tabs button{background:transparent;border:1px solid var(--line);padding:12px 18px;color:var(--ink);border-radius:4px}.crm-tabs button[aria-pressed=true]{background:var(--teal);color:white}.crm-metrics{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin:24px 0}.crm-metrics>div{background:var(--mint);padding:24px;border-radius:4px}.crm-metrics strong{font:2.6rem Georgia,serif;display:block}.crm-metrics span{font-size:.9rem}.crm-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:32px}.crm-client{display:block;width:100%;text-align:left;padding:16px;background:white;border:1px solid var(--line);margin:10px 0;color:var(--ink)}.crm-client span,.crm-client small{display:block;overflow-wrap:anywhere}.crm-record{padding:20px;background:white;border:1px solid var(--line);margin:16px 0;overflow-wrap:anywhere}.crm-message{white-space:pre-wrap}.crm-record h3{margin-bottom:8px}#crm-client-detail{min-width:0}#crm-client-detail h3{overflow-wrap:anywhere}#salon-login{max-width:450px}#email-queue{white-space:pre-wrap;overflow-wrap:anywhere}#calendar-queue{overflow-wrap:anywhere}#crm-compose{min-width:0}body:has(#salon-login) .mobile-book{display:none}@media(max-width:850px){.crm-metrics{grid-template-columns:repeat(2,1fr)}.crm-columns{grid-template-columns:1fr}.crm-tabs button{flex:1 1 140px}}

body:has(#salon-login) .footer{display:none}

#crm-service-options fieldset{border:1px solid var(--teal);padding:18px;margin:0 0 18px;border-radius:8px}#crm-service-form>button{margin:8px 8px 0 0}#crm-service-list{margin-top:20px;max-height:650px;overflow:auto}#crm-import-form{margin-top:20px}

.service-detail-image{display:block;width:100%;height:auto;max-height:600px;object-fit:contain;border-radius:12px;margin-bottom:30px}#crm-service-form fieldset{margin-bottom:20px;padding:18px;border:1px solid var(--teal)}

.portfolio-videos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.portfolio-video{min-width:0}.video-player{aspect-ratio:9/16;background:var(--mint);border-radius:12px;overflow:hidden}.video-player iframe{width:100%;height:100%;border:0}.video-consent{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;text-align:center}.video-consent>span{font-size:3rem;color:var(--teal)}@media(max-width:760px){.portfolio-videos{grid-template-columns:1fr}.portfolio-video{width:100%;max-width:400px;margin:auto}}

.shop-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.shop-card{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff}.shop-card>div{padding:24px}.shop-card img,.shop-image-empty{width:100%;aspect-ratio:1;object-fit:cover}.shop-image-empty{display:grid;place-items:center;background:var(--mint);text-align:center;font-family:Georgia,serif;font-size:2rem}.shop-card h2{font-size:1.7rem}.shop-card strong{display:block;margin:14px 0}.shop-detail{display:grid;grid-template-columns:1fr 1fr;gap:48px;padding-top:0}.shop-detail>img{width:100%;border-radius:14px}.shop-price{display:block;font-size:2rem;margin:20px 0}.basket-toggle{position:fixed;right:20px;bottom:24px;z-index:25;background:var(--ink);color:white;border:0;border-radius:40px;padding:14px 22px;box-shadow:0 4px 22px #0002}#mini-basket{width:min(450px,95vw);max-height:90vh;margin:5vh 16px 5vh auto;border:1px solid var(--line);border-radius:16px;padding:26px;color:var(--ink)}#mini-basket::backdrop{background:#15251866}.basket-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.basket-head h2{font-size:2rem}.basket-head button{background:none;border:0}.basket-row{border-bottom:1px solid var(--line);padding:18px 0}.basket-row input{max-width:100px}.basket-row strong{display:block}.bundle-choice{border-bottom:1px solid var(--line);padding:12px 0}#shop-product-form fieldset{border:1px solid var(--line);padding:20px;margin-bottom:20px}#shop-product-form input[type=checkbox],#shop-checkout-form input[type=checkbox]{width:auto;display:inline;margin-right:8px}#shop-admin-products{max-height:600px;overflow:auto;margin-top:20px}@media(max-width:760px){.shop-grid,.shop-detail{grid-template-columns:1fr}.basket-toggle{bottom:84px}.shop-detail{gap:24px}}

.searchbar:has(#shop-category){display:flex;flex-wrap:wrap;gap:12px}.searchbar:has(#shop-category)>*{flex:1 1 180px;min-width:0}.shop-card[hidden]{display:none!important}

/* Clear, larger header branding without artificial boldening. */
.site-header .brand img{width:100px;height:100px;flex:0 0 100px;filter:none}.site-header .brand span,.site-header .brand small{font-weight:400}.site-header .nav{height:116px}@media(max-width:700px){.site-header .brand img{width:88px;height:88px;flex-basis:88px}.site-header .nav{height:104px}.site-header .navlinks{top:104px}}

.kit-choice{display:flex;align-items:flex-start;gap:12px;padding:16px;border:1px solid #83977f;border-radius:8px;cursor:pointer;margin:20px 0 8px}.kit-choice input{width:22px;height:22px;flex:0 0 22px;margin:2px 0;accent-color:#52674b}.kit-choice strong{display:block}#manicure-kit-note{font-size:.9rem}#manicure-price-summary{font-weight:600}

/* Shared clear branding for standard and Academy headers. */
.site-header .brand img{width:120px;height:120px;flex:0 0 120px;filter:none}.site-header .brand span,.site-header .brand small{font-weight:400}.site-header .nav{height:136px}@media(max-width:700px){.site-header .brand img{width:100px;height:100px;flex-basis:100px}.site-header .nav{height:116px}.site-header .navlinks{top:116px}}

.app-install{padding:24px 0 36px}.app-install p{max-width:650px;margin-top:14px}

.social-feed-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.social-feed{min-width:0;border:1px solid #d9dfdc;padding:20px;border-radius:12px}.social-feed iframe{width:100%;height:740px;border:0;background:white}.detail-copy{white-space:pre-line}@media(max-width:760px){.social-feed-grid{grid-template-columns:1fr}.social-feed{padding:12px}}

/* Direct, flat navigation: brand and booking above the page directory. */
.site-header .nav{height:auto;min-height:0;display:flex;flex-wrap:wrap;gap:0 24px;position:relative;padding-top:4px;padding-bottom:0}
.site-header .brand{min-height:128px}.site-header .brand span{display:block;font-size:1.15rem;font-weight:400}.site-header .brand small{display:block;font-size:11px;font-weight:400}
.header-actions{margin-left:auto;display:flex;align-items:center;gap:12px}.header-actions .button{padding:14px 20px}
.site-header .navlinks{position:static;display:flex;flex:0 0 100%;justify-content:space-between;align-items:center;gap:4px;border-top:1px solid var(--line);padding:6px 0;max-height:none;overflow:visible;background:transparent}
.site-header .navlinks>a{display:flex;align-items:center;min-height:46px;padding:10px 8px!important;font-size:.95rem;line-height:1.35;border-radius:5px;white-space:nowrap}
.site-header .navlinks>a:hover,.site-header .navlinks>a[aria-current="page"]{background:var(--mint);color:var(--teal);text-decoration:underline;text-underline-offset:5px}
.site-header .menu{display:none}
@media(max-width:1100px){.site-header .navlinks{justify-content:center;flex-wrap:wrap;gap:0 12px}.site-header .navlinks>a{padding:10px 12px!important}}
@media(max-width:760px){.site-header .nav{gap:0 12px}.site-header .brand{min-height:110px}.site-header .brand img{width:100px;height:100px;flex-basis:100px}.site-header .brand span{font-size:.95rem}.site-header .brand small{display:none}.header-actions{gap:8px}.header-actions .button{font-size:.85rem;padding:12px}.site-header .menu{display:block}.site-header .navlinks{display:none;padding:12px 0 20px;max-height:calc(100dvh - 170px);overflow-y:auto}.site-header .navlinks.open{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 12px;align-items:stretch}.site-header .navlinks>a{white-space:normal;border-bottom:1px solid var(--line);font-size:1rem;min-height:48px}}
@media(max-width:480px){.site-header .brand span{display:none}.header-actions .button{max-width:145px;text-align:center}.site-header .nav{gap:0 8px}}

/* Responsive content and uncropped product photography. */
img{height:auto}main,section,article,aside,form,fieldset,.hero>*,.split>*,.detail-layout>*,.shop-detail>*,.form-grid>*,.footer-grid>*{min-width:0}
main h1,main h2,main h3,.shop-card a,.breadcrumbs,.detail-copy,.crm-record{overflow-wrap:anywhere}
video,iframe,svg{max-width:100%}input,select,textarea{min-width:0;max-width:100%}fieldset{max-width:100%;margin-inline:0}
.button,button.primary{max-width:100%;white-space:normal;text-align:center;overflow-wrap:anywhere}
.shop-card>a{display:block;aspect-ratio:1;background:#fff;overflow:hidden}.shop-card img{display:block;width:100%;height:100%;aspect-ratio:1;object-fit:contain;object-position:center;padding:clamp(10px,2vw,24px);background:#fff}
.shop-detail>img{display:block;width:100%;height:auto;aspect-ratio:1;max-height:680px;object-fit:contain;object-position:center;padding:clamp(16px,3vw,36px);background:#fff;align-self:start}
.shop-card{min-width:0;display:flex;flex-direction:column}.shop-card>div{flex:1;display:flex;flex-direction:column}.shop-card>div>button{margin-top:auto;align-self:flex-start}.shop-image-empty{width:100%;height:auto;aspect-ratio:1}
.shop-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.category-grid,.review-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.service-list,.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.detail-layout>div>img{width:100%;height:auto;object-fit:contain}.searchbar input,.searchbar select{min-width:min(100%,180px)}.service-bottom{flex-wrap:wrap}.booking-card{top:210px}
@media(max-width:1000px){.shop-grid,.category-grid,.review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-layout{gap:32px;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}.shop-detail{gap:28px}.split{gap:30px}.booking-card{padding:22px}}
@media(max-width:760px){.shop-detail,.detail-layout,.split,.form-grid{grid-template-columns:minmax(0,1fr)}.shop-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.shop-card>div{padding:18px}.shop-card h2{font-size:1.5rem}.shop-detail>img{max-height:520px}.booking-card{position:static}.searchbar{gap:10px}.searchbar>*{max-width:100%}.footer-grid{gap:24px}.photo-note{flex-wrap:wrap}.lightbox{padding:12px;width:94vw;max-width:94vw}.lightbox img{width:100%;max-width:100%;height:auto;max-height:65dvh;object-fit:contain}}
@media(max-width:600px){.shop-grid,.category-grid,.review-grid,.service-list{grid-template-columns:minmax(0,1fr)}.shop-card>a{max-height:none}.shop-card h2{font-size:1.7rem}.section-head{display:block}.section-head p{margin-top:16px}.treatment-links{grid-template-columns:minmax(0,1fr)}.footer-grid{grid-template-columns:minmax(0,1fr)}.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery img{height:auto;aspect-ratio:1;object-fit:cover}.hero-photo{min-height:360px}.hero-copy h1,.page-intro h1{font-size:clamp(2.2rem,9vw,3rem)}.searchbar input,.searchbar select{flex-basis:100%;width:100%}.cookiebar{max-height:calc(100dvh - 110px);overflow:auto}.crm-record,.quote{padding:20px}.booking-card{padding:20px}}
@media(max-width:360px){.wrap{width:92%}.header-actions .button{max-width:120px;padding:10px 8px}.site-header .nav{column-gap:6px}.header-actions{gap:6px}.site-header .brand img{width:88px;height:88px;flex-basis:88px}.hero-photo{min-height:310px}.service{padding:20px}.button,button.primary{padding:12px 18px}}

@media(max-width:360px){.site-header .brand{min-height:100px}.site-header .brand img{width:80px;height:80px;flex-basis:80px}.header-actions .button{width:110px;max-width:110px}.site-header .menu{min-width:48px;padding:8px 6px}.header-actions{gap:4px}.site-header .nav{column-gap:4px}}

.product-options{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0}.product-options h2{width:100%;font-size:1.5rem;margin-bottom:6px}.product-options a[aria-current="page"]{background:var(--teal);color:white}.shop-card>div>.button{margin-top:auto;align-self:flex-start}
.review-score-label{font-size:1.4rem}.google-review blockquote{margin:20px 0}.google-review h3,.review-entry h3{font-size:1.25rem;margin-top:16px;overflow-wrap:anywhere}.review-us{margin-top:36px;padding:clamp(22px,4vw,48px)}.review-us h2{font-size:clamp(1.8rem,5vw,2.5rem)}.contact-map{margin-top:40px;padding:clamp(18px,3vw,28px);background:var(--cream,#f5f3ee);border-radius:16px}.contact-map h2{font-size:2rem}.contact-map iframe{display:block;width:100%;height:360px;max-width:100%;border:0;border-radius:10px}.contact-map [data-map-frame]:empty{display:none}#google-reviews,#fresha-reviews,#review-us{scroll-margin-top:220px}@media(max-width:760px){.contact-map iframe{height:300px}#google-reviews,#fresha-reviews,#review-us{scroll-margin-top:150px}}

/* Compact brand row: controls never wrap beneath the logo. */
.site-header .nav{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0 20px;padding-top:0}
.site-header .brand{min-height:100px;gap:12px}.site-header .brand img{width:92px;height:92px;flex-basis:92px;filter:none}.site-header .brand span,.site-header .brand small{font-weight:400}
.site-header .header-actions{margin-left:0;white-space:nowrap}.site-header .navlinks{grid-column:1/-1;width:100%}
@media(max-width:1100px){.site-header .brand{min-height:92px}.site-header .brand img{width:84px;height:84px;flex-basis:84px}.site-header .menu{display:block}.site-header .navlinks{display:none;padding:12px 0;max-height:calc(100dvh - 140px);overflow-y:auto}.site-header .navlinks.open{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px 12px}.site-header .navlinks>a{white-space:normal}}
@media(max-width:760px){.topline{display:none}.site-header .nav{gap:0 10px;min-height:88px}.site-header .brand{min-height:88px}.site-header .brand img{width:80px;height:80px;flex-basis:80px}.site-header .brand span{display:none}.site-header .header-actions{gap:8px}.site-header .header-actions .button{width:auto;max-width:none;padding:10px 12px;font-size:.82rem;min-height:44px;white-space:nowrap}.site-header .menu{min-width:54px;min-height:44px;padding:8px}.site-header .navlinks.open{grid-template-columns:repeat(2,minmax(0,1fr))}.site-header .navlinks{max-height:calc(100dvh - 100px)}#google-reviews,#fresha-reviews,#review-us{scroll-margin-top:100px}}
@media(min-width:1101px){.booking-card{top:180px}}

.book-label-short{display:none}@media(max-width:760px){.book-label-full{display:none}.book-label-short{display:inline}}
