@font-face{font-family:'Cormorant Garamond';src:url('../assets/fonts/final/cormorant-500.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:'Cormorant Garamond';src:url('../assets/fonts/final/cormorant-600.woff2') format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:'Cormorant Garamond';src:url('../assets/fonts/final/cormorant-italic.woff2') format('woff2');font-weight:500;font-style:italic;font-display:swap}
@font-face{font-family:'DM Sans';src:url('../assets/fonts/final/dm-sans-400.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:'DM Sans';src:url('../assets/fonts/final/dm-sans-500.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:'DM Sans';src:url('../assets/fonts/final/dm-sans-600.woff2') format('woff2');font-weight:600;font-display:swap}
:root{--surface:#F6F2EA;--surface-menu:#EAE2D6;--primary:#203C32;--text:#252923;--text-muted:#62665B;--link:#693C46;--surface-bridal:#E5D3CC;--surface-sage:#DCE2D7;--decoration:#A28A62;--border-control:#7B806F;--rule:#D6CDC0;--display:'Cormorant Garamond',Georgia,serif;--body:'DM Sans',Arial,sans-serif;--gutter:clamp(2rem,5vw,5.5rem);--section-space:6rem;--content:90rem}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:7rem}body{margin:0;background:var(--surface);color:var(--text);font-family:var(--body);font-size:1.125rem;line-height:1.7;font-weight:400}body.modal-open{overflow:hidden}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:wait}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:auto}figure,p,h1,h2,h3,h4{margin:0}h1,h2,h3{font-family:var(--display);font-weight:500;line-height:1.08;letter-spacing:-.025em;color:var(--primary)}h2{font-size:clamp(3.5rem,5vw,4.75rem)}h3{font-size:2.375rem}em{font-weight:500}::selection{background:var(--surface-sage);color:var(--primary)}[hidden]{display:none!important}:focus-visible{outline:2px solid var(--link);outline-offset:5px}.section-shell{max-width:calc(var(--content) + var(--gutter)*2);margin-inline:auto;padding-inline:var(--gutter)}.eyebrow{font-size:.875rem;font-weight:500;letter-spacing:.075em;line-height:1.6;color:var(--text-muted)}.text-link{display:inline-flex;align-items:center;gap:1rem;min-height:3rem;background:none;border:0;padding:0;color:var(--link);font-size:1rem;font-weight:500;text-decoration:underline;text-underline-offset:.3em;text-decoration-thickness:1px;line-height:1.5;transition:color 180ms}.text-link span{transition:transform 180ms}.text-link:hover{color:var(--primary)}.text-link:hover span{transform:translate(2px,-2px)}.button{display:inline-flex;justify-content:center;align-items:center;gap:1.5rem;min-height:3.5rem;padding:1rem 1.5rem;border:1px solid var(--primary);border-radius:1px;background:var(--primary);color:var(--surface);font:600 1rem/1.4 var(--body);text-align:left;transition:background 180ms,border-color 180ms}.button:hover{background:#304D40;border-color:#304D40}.button:disabled{background:var(--text-muted);border-color:var(--text-muted)}.skip-link{position:fixed;z-index:30;top:0;left:1rem;padding:1rem;background:var(--primary);color:var(--surface);transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.header{position:sticky;top:0;z-index:10;background:var(--surface);border-bottom:1px solid var(--rule)}.header-inner{display:flex;justify-content:space-between;align-items:center;max-width:calc(var(--content) + var(--gutter)*2);padding:.875rem var(--gutter);margin:auto;gap:2rem}.wordmark{display:flex;flex-direction:column;align-items:center;flex:none;color:var(--primary)}.wordmark>span{font-family:var(--display);font-size:3.25rem;line-height:.8;letter-spacing:-.05em;font-weight:500}.wordmark small{font-size:.625rem;font-weight:600;letter-spacing:.4em;padding-left:.4em;margin-top:.5rem;line-height:1.5}.header nav{display:flex;align-items:center;gap:2rem}.header nav>a{font-size:1rem;font-weight:500;min-height:3rem;display:flex;align-items:center}.header nav>a:hover{color:var(--link)}.header .button{margin-left:1rem}.menu-toggle{display:none}
.hero{display:grid;grid-template-columns:5fr 7fr;gap:clamp(2.5rem,4vw,4rem);padding-block:3rem 4rem;align-items:center}.hero-copy{padding-block:1rem;animation:quiet-entrance 400ms ease-out both}.hero .eyebrow{margin-bottom:2rem}.hero h1{font-size:clamp(6.5rem,8.45vw,8.5rem);line-height:1.05;max-width:8.5em}.hero h1 em{color:var(--link)}.hero .intro{font-size:1.25rem;max-width:31rem;margin-block:2rem;line-height:1.7}.hero-actions{display:flex;flex-wrap:wrap;gap:1rem 2rem;align-items:center}.hero-visual img{height:clamp(38rem,48vw,47rem);object-fit:cover;object-position:50% 38%;animation:quiet-entrance 450ms ease-out both}.photo-label{font-size:.875rem;color:var(--text-muted);margin-top:.75rem;line-height:1.6}.studio-intro{display:grid;grid-template-columns:1.15fr 2.1fr 1.7fr;gap:3rem;align-items:center;border-top:1px solid var(--rule);padding-block:3rem 4rem}.studio-intro h2{font-size:2.5rem}.studio-intro>p:last-child{max-width:32rem;color:var(--text-muted)}.section-heading{display:flex;justify-content:space-between;gap:3rem;align-items:end;margin-bottom:3rem}.section-heading .eyebrow{margin-bottom:1rem}.section-heading>p{max-width:28rem;color:var(--text-muted)}
.services{background:var(--surface-menu);padding-block:var(--section-space)}.menu-layout{display:grid;grid-template-columns:minmax(15rem,1fr) minmax(0,2.65fr);gap:4rem}.service-tabs{display:flex;flex-direction:column;align-self:start;border-top:1px solid var(--border-control)}.service-tabs button{display:grid;grid-template-columns:1.5rem minmax(0,1fr) 1rem;gap:.75rem;align-items:center;min-height:4.5rem;padding:1rem .75rem;border:0;border-bottom:1px solid var(--border-control);background:none;text-align:left;color:var(--text);font-size:1rem;font-weight:500;line-height:1.5;transition:background 180ms,color 180ms}.service-tabs button>span:first-child{font-size:.875rem}.service-tabs button[aria-selected="true"]{background:var(--primary);color:var(--surface)}.service-tabs button:hover:not([aria-selected="true"]){background:var(--surface-sage)}.panel-heading{display:flex;gap:1rem;justify-content:space-between;padding-bottom:2rem;border-bottom:1px solid var(--rule)}.panel-heading h3{font-size:2.5rem;margin-bottom:.75rem}.panel-heading p{font-size:1.0625rem;color:var(--text-muted);max-width:40rem}.panel-count{font-size:.875rem;color:var(--text-muted);white-space:nowrap;padding-top:.5rem}.service-row{display:grid;grid-template-columns:minmax(0,1fr) 9.5rem 6.5rem;gap:1.5rem;align-items:center;padding-block:1.5rem;border-bottom:1px solid var(--rule)}.service-row h4{font-family:var(--body);font-size:1.25rem;font-weight:600;line-height:1.4;margin-bottom:.5rem}.service-row p{font-size:1.0625rem;color:var(--text-muted);line-height:1.65;max-width:42rem}.service-price{font-size:1.1875rem;font-weight:500;line-height:1.5;font-variant-numeric:tabular-nums}.service-price small{display:block;font-size:.875rem;font-weight:400;color:var(--text-muted);margin-top:.375rem}.service-book{min-height:3.25rem;padding:.75rem 1rem;border:1px solid var(--border-control);border-radius:1px;background:transparent;color:var(--primary);font-size:1rem;font-weight:600;transition:background 180ms,color 180ms}.service-book:hover{background:var(--primary);color:var(--surface);border-color:var(--primary)}.menu-note{display:flex;gap:2rem;justify-content:space-between;align-items:center;margin-top:2rem;border-top:1px solid var(--rule);padding-top:1.5rem}.menu-note p{font-size:.9375rem;color:var(--text-muted);max-width:48rem}.menu-note .text-link{flex-shrink:0}.nojs-menu summary{font-weight:600;padding-block:1rem;cursor:pointer}.nojs-menu p{margin-bottom:1rem}
.signature{padding-block:var(--section-space)}.feature-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:4rem}.feature figure{overflow:hidden}.hair-feature img{aspect-ratio:4/4.4;object-fit:cover;object-position:50% 40%}.feature-copy{padding-top:1.5rem}.feature h3{margin-block:.75rem 1rem}.feature-copy>p:not(.eyebrow),.grooming-feature>div>p:not(.eyebrow){max-width:40rem;color:var(--text-muted);font-size:1.0625rem}.feature .text-link,.grooming-feature .text-link{margin-top:1rem}.nails-feature img{aspect-ratio:1.9;object-fit:cover;object-position:50% 42%}.skin-feature{display:grid;grid-template-columns:42fr 58fr;gap:1.5rem;margin-top:3rem;align-items:center}.skin-feature img{height:22rem;object-fit:cover;object-position:45% 40%}.skin-feature .feature-copy{padding:0}.skin-feature h3{font-size:2rem}.grooming-feature{display:grid;grid-template-columns:1fr 1.4fr;gap:4rem;align-items:center;margin-top:4rem;padding-top:3rem;border-top:1px solid var(--rule)}.grooming-feature img{aspect-ratio:1.6;object-fit:cover;object-position:50% 35%}.grooming-feature h3{margin-block:.75rem 1rem}
.about{background:var(--primary);color:var(--surface);padding-block:var(--section-space)}.about-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:5rem;align-items:center}.about h2{color:var(--surface);margin-block:1.5rem 2rem}.about .eyebrow,.about figcaption{color:var(--surface)}.about-copy>p:not(.eyebrow){max-width:34rem;margin-bottom:1.25rem}.about .text-link{color:var(--surface);margin-top:.75rem}.about :focus-visible{outline-color:var(--surface)}.about img{aspect-ratio:1.18;object-fit:cover;object-position:42% 50%}.about figcaption,.occasion figcaption{font-size:.875rem;line-height:1.6;margin-top:.75rem}.gallery{padding-block:var(--section-space)}.gallery-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:2rem;align-items:start}.gallery-item{min-width:0}.gallery-item button{display:block;position:relative;border:0;background:var(--surface-menu);padding:0;width:100%;overflow:hidden}.gallery-item img{object-fit:cover;transition:transform 220ms}.gallery-item button:hover img{transform:scale(1.015)}.image-open{position:absolute;right:.75rem;bottom:.75rem;background:var(--surface);color:var(--primary);display:grid;place-items:center;width:2.75rem;height:2.75rem;font-size:1.25rem}.gallery-item figcaption{font-size:.9375rem;margin-top:.75rem;color:var(--text-muted);line-height:1.6}.gallery-tall{grid-row:span 2}.gallery-tall img{aspect-ratio:.62;object-position:30% 50%}.gallery-wide img{aspect-ratio:1.55}.gallery-portrait{grid-row:span 2;margin-top:4rem}.gallery-portrait img{aspect-ratio:.73;object-position:50% 35%}.gallery-detail img{aspect-ratio:1.55}.gallery-grooming{grid-column:2}.gallery-grooming img{aspect-ratio:1.65;object-position:50% 30%}
.occasion{background:var(--surface-bridal);padding-block:5rem}.occasion-layout{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}.occasion img{height:38rem;object-fit:cover;object-position:50% 32%}.occasion .eyebrow,.occasion figcaption{color:var(--link)}.occasion h2{margin-block:1.5rem 2rem}.occasion-copy>p:not(.eyebrow){max-width:32rem}.occasion-actions{display:flex;flex-wrap:wrap;gap:1rem 2rem;margin-top:2rem;align-items:center}.contact{display:grid;grid-template-columns:1.2fr 1fr;gap:5rem;padding-block:var(--section-space)}.contact h2{margin-block:1.5rem}.contact-copy>p:not(.eyebrow){max-width:30rem;color:var(--text-muted)}.contact .button{margin-top:2rem}.contact-details{align-self:center}.contact-details>div{padding-bottom:1.5rem;margin-bottom:1.5rem;border-bottom:1px solid var(--rule)}.contact-details .eyebrow{margin-bottom:.75rem}.contact-phone{font-size:1.75rem;font-weight:500;display:block;line-height:1.5}.contact-email{font-size:1.125rem;font-weight:500;color:var(--link);overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:.3em;line-height:1.7}.contact-note{font-size:.9375rem;color:var(--text-muted)}.contact-details .text-link{margin-top:.5rem}.footer{background:var(--surface-menu);padding-block:3rem 2rem}.footer-main{display:grid;grid-template-columns:1fr 1fr 1.1fr;gap:3rem;align-items:start}.footer .wordmark{justify-self:start}.footer-nav{display:grid;grid-template-columns:1fr 1fr;gap:.5rem 2rem}.footer a:not(.wordmark){font-size:1rem;min-height:2.75rem;display:flex;align-items:center;line-height:1.6}.footer a:hover{color:var(--link)}.footer-contact{min-width:0}.footer-contact a[data-email]{overflow-wrap:anywhere;font-size:.875rem!important}.footer-bottom{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--rule);display:grid;grid-template-columns:minmax(0,2fr) auto;gap:1rem 3rem;align-items:start;color:var(--text-muted);font-size:.875rem;line-height:1.7}.demo-details{max-width:65ch}.footer-bottom>p:last-child{grid-column:1/-1}.footer-bottom>a{color:var(--primary);font-size:.875rem!important}
dialog{padding:0;border:1px solid var(--border-control);background:var(--surface);color:var(--text);max-height:calc(100dvh - 3rem);margin:auto;box-shadow:0 1.5rem 5rem #0003}dialog::backdrop{background:rgba(20,31,25,.65)}dialog:focus-visible{outline:0}.booking-dialog{width:min(42rem,calc(100% - 3rem));overflow:hidden}.dialog-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 2rem;border-bottom:1px solid var(--rule);background:var(--surface)}.dialog-close{flex:none;width:3rem;height:3rem;border:1px solid var(--border-control);border-radius:1px;background:transparent;color:var(--primary);font:400 1.75rem/1 var(--body);display:grid;place-items:center;transition:background 180ms}.dialog-close:hover{background:var(--surface-sage)}.dialog-scroll{max-height:calc(100dvh - 8.75rem);overflow-y:auto;overscroll-behavior:contain;padding:2rem;scroll-padding:1.5rem}.booking-dialog h2{font-size:2.75rem;margin-bottom:1rem}.booking-dialog #booking-description{font-size:1.0625rem;color:var(--text-muted);line-height:1.7;max-width:35rem;margin-bottom:1.5rem}.field{margin-bottom:1.25rem;min-width:0}.field label{display:block;font-size:1rem;font-weight:500;margin-bottom:.5rem;line-height:1.6}.field label span{font-weight:400;color:var(--text-muted)}input,select,textarea{width:100%;min-width:0;border:1px solid var(--border-control);border-radius:1px;background:var(--surface);color:var(--text);font-size:1.0625rem;padding:.875rem 1rem;min-height:3.5rem;line-height:1.5}select{padding-right:2.25rem}input::placeholder{color:var(--text-muted);opacity:1}input[aria-invalid="true"],select[aria-invalid="true"]{border:2px solid var(--link)}.form-error{color:var(--link);font-size:1rem;line-height:1.6;margin-bottom:1rem}.form-error:empty{display:none}.booking-note,.privacy-note{font-size:.875rem;color:var(--text-muted);line-height:1.7}.booking-note{margin-block:.25rem 1.25rem}#submit-booking{width:100%}.privacy-note{margin-top:1.25rem}.booking-result{margin-top:1.5rem;padding:1.25rem;background:var(--surface-sage);font-size:1rem}.booking-result p{margin-bottom:.75rem}.booking-result .text-link{font-size:1rem}.booking-result details{margin-top:.75rem}.booking-result summary{cursor:pointer;min-height:2.75rem;line-height:1.6}.booking-result textarea{margin-block:.75rem;resize:vertical;font-size:1rem}
.lightbox{width:min(75rem,calc(100% - 3rem));max-height:calc(100dvh - 2rem);overflow:hidden;background:var(--primary);color:var(--surface);border-color:var(--primary)}.lightbox-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1.5rem;gap:1rem;font-size:.9375rem}.lightbox .dialog-close{border-color:var(--surface);color:var(--surface)}.lightbox .dialog-close:hover{background:#304D40}.lightbox-stage{height:min(68dvh,46rem);position:relative;display:flex;justify-content:center;align-items:center;padding-inline:1.5rem}.lightbox-stage img{max-height:100%;width:auto;max-width:100%;object-fit:contain}.lightbox-stage img[data-loading="true"]{opacity:0}.lightbox-stage p{position:absolute;font-size:1rem;text-align:center;padding:1.5rem;max-width:40rem}.lightbox-footer{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.5rem}.lightbox-footer p{font-size:.9375rem;line-height:1.6;text-align:center}.lightbox-footer button{width:3rem;height:3rem;border:1px solid var(--surface);color:var(--surface);background:none;flex:none;font-size:1.25rem}.lightbox-footer button:hover{background:#304D40}.lightbox :focus-visible{outline-color:var(--surface)}
@keyframes quiet-entrance{from{opacity:.4;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1150px){.header nav{gap:1.25rem}.header .button{margin-left:0}.hero h1{font-size:clamp(5.5rem,8vw,6.5rem)}.hero-visual img{height:38rem}.hero-actions{align-items:start;flex-direction:column;gap:.75rem}.menu-layout{gap:2.5rem}.service-row{grid-template-columns:minmax(0,1fr) 8rem 6rem;gap:1rem}.feature-layout{gap:2.5rem}.skin-feature{display:block}.skin-feature figure{float:left;width:42%;margin-right:1.5rem;margin-bottom:.5rem}.skin-feature img{height:15rem}.skin-feature::after{content:'';display:block;clear:both}.about-layout,.occasion-layout,.contact{gap:3rem}}
@media(max-width:850px){:root{--gutter:2rem;--section-space:4rem}html{scroll-padding-top:6.5rem}.header-inner{padding-block:1rem}.wordmark>span{font-size:2.75rem}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;align-items:center;min-width:3rem;min-height:3rem;background:none;border:1px solid var(--border-control);padding:.75rem}.menu-toggle span{display:block;width:20px;height:1px;background:var(--primary);transition:transform 180ms}.menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.header nav{display:none;position:absolute;top:100%;left:0;right:0;padding:1rem var(--gutter) 1.5rem;background:var(--surface);border-bottom:1px solid var(--border-control);max-height:calc(100dvh - 6rem);overflow-y:auto;align-items:stretch;gap:0;box-shadow:0 1rem 2rem #203C3210}.header nav.open{display:flex;flex-direction:column}.header nav>a{min-height:3.25rem}.header nav .button{margin-top:1rem}.hero{grid-template-columns:1fr 1fr;gap:2rem;padding-block:2.5rem 3rem}.hero h1{font-size:clamp(3rem,6.8vw,4rem)}.hero .eyebrow{margin-bottom:1.5rem}.hero .intro{font-size:1.125rem;margin-block:1.5rem}.hero-visual img{height:31rem}.hero-copy{padding:0}.studio-intro{grid-template-columns:1fr 1fr;gap:1.5rem 3rem;padding-block:2rem 3rem}.studio-intro>.eyebrow{grid-column:1/-1}.studio-intro h2{font-size:2.125rem}.section-heading{gap:2rem;margin-bottom:2.5rem}.section-heading>p{max-width:21rem}h2{font-size:3rem}.menu-layout{display:block}.service-tabs{display:grid;grid-template-columns:1fr 1fr;border-top:0;gap:.5rem;margin-bottom:2.5rem}.service-tabs button{border:1px solid var(--border-control);min-height:4rem;padding:.875rem 1rem;grid-template-columns:minmax(0,1fr) 1rem}.service-tabs button>span:first-child{display:none}.feature-layout{gap:2rem}.skin-feature{display:block}.skin-feature figure{float:none;width:100%;margin:0}.skin-feature img{height:15rem}.skin-feature .feature-copy{padding-top:1.5rem}.nails-feature img{aspect-ratio:1.35}.feature h3{font-size:2rem}.grooming-feature{gap:2rem;margin-top:3rem;padding-top:2rem}.about-layout{gap:2rem}.about h2{font-size:3rem}.about img{aspect-ratio:.85}.gallery-grid{gap:1.5rem}.occasion-layout{gap:2rem}.occasion img{height:32rem}.occasion h2{font-size:3rem}.contact{gap:3rem;grid-template-columns:1fr 1fr}.contact-phone{font-size:1.5rem}.footer-main{grid-template-columns:1fr 1fr;gap:2rem}.footer-contact{grid-column:2}.footer .wordmark{grid-row:span 2}.footer-bottom{gap:1rem 2rem}}
@media(max-width:600px){:root{--gutter:1.5rem;--section-space:3.5rem}body{font-size:1.0625rem;line-height:1.75}.header-inner{padding-block:.875rem}.hero{grid-template-columns:1fr;gap:2rem;padding-top:2rem;padding-bottom:2rem}.hero h1{font-size:clamp(3rem,14.3vw,3.75rem);line-height:1.08;max-width:8.5em}.hero h1 br{display:none}.hero .eyebrow{font-size:.8125rem;margin-bottom:1rem}.hero .intro{font-size:1.125rem;line-height:1.7;margin-block:1.25rem;max-width:32rem}.hero-actions{flex-direction:row;align-items:center;gap:.625rem 1.5rem}.hero-visual img{height:clamp(17.5rem,82vw,21.25rem);object-position:50% 35%}.photo-label{font-size:.875rem;margin-top:.75rem}.studio-intro{display:block;padding-block:2rem 3rem}.studio-intro .eyebrow{margin-bottom:1rem}.studio-intro h2{font-size:2rem;margin-bottom:1rem}.studio-intro>p:last-child{max-width:35ch}.section-heading{display:block;margin-bottom:2rem}.section-heading>p{max-width:38ch;margin-top:1.25rem}.section-heading .eyebrow{margin-bottom:.75rem}.eyebrow{font-size:.8125rem}h2{font-size:clamp(2.375rem,10.8vw,3rem)}h3{font-size:1.875rem}.service-tabs{gap:.5rem;margin-bottom:2rem}.service-tabs button{font-size:1rem;line-height:1.5;padding:.875rem .75rem;min-height:4.75rem}.panel-heading{display:block;padding-bottom:1.5rem}.panel-heading h3{font-size:2rem;margin-bottom:.75rem}.panel-heading p{font-size:1rem;line-height:1.7}.panel-count{display:none}.service-row{grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:end;padding-block:1.5rem}.service-row>div:first-child{grid-column:1/-1}.service-row h4{font-size:1.125rem;margin-bottom:.5rem;line-height:1.5}.service-row p{font-size:1rem;line-height:1.7}.service-price{font-size:1.125rem}.service-book{min-height:3.25rem;padding:.75rem 1.25rem}.service-price small{font-size:.875rem;line-height:1.6}.menu-note{display:block;margin-top:1.5rem;padding-top:1.5rem}.menu-note p{font-size:.875rem;line-height:1.7}.menu-note .text-link{margin-top:.75rem}.feature-layout{display:block}.hair-feature img{aspect-ratio:1.1;object-position:50% 35%}.feature-copy{padding-top:1.5rem}.feature h3{font-size:1.875rem}.feature-copy>p:not(.eyebrow),.grooming-feature>div>p:not(.eyebrow){font-size:1rem;line-height:1.75;max-width:38ch}.feature-side{margin-top:2.5rem}.nails-feature img{aspect-ratio:1.6;object-position:50% 40%}.skin-feature{display:grid;grid-template-columns:42fr 58fr;gap:1.5rem;margin-top:2.5rem;align-items:start}.skin-feature figure{width:auto}.skin-feature img{height:16rem;object-position:50% 35%}.skin-feature .feature-copy{padding:0}.skin-feature h3{font-size:1.75rem}.grooming-feature{display:block;margin-top:2.5rem;padding-top:2rem}.grooming-feature img{aspect-ratio:1.7;object-position:50% 30%}.grooming-feature>div{margin-top:1.5rem}.grooming-feature h3{font-size:1.875rem}.about-layout{display:flex;flex-direction:column;gap:2rem;align-items:stretch}.about h2{font-size:2.625rem;margin-block:1rem 1.5rem}.about-copy>p:not(.eyebrow){font-size:1.0625rem;line-height:1.75}.about img{aspect-ratio:1.3;object-position:36% 50%}.gallery-grid{grid-template-columns:1fr 1fr;gap:1.5rem .75rem}.gallery-tall{grid-row:span 2}.gallery-portrait{margin-top:0;grid-column:2;grid-row:span 1}.gallery-portrait img{aspect-ratio:.9}.gallery-tall img{aspect-ratio:.48}.gallery-wide img,.gallery-detail img{aspect-ratio:1.25}.gallery-grooming{grid-column:1/-1}.gallery-grooming img{aspect-ratio:2.25;object-position:50% 27%}.gallery-item figcaption{font-size:.875rem;line-height:1.6}.image-open{width:2.5rem;height:2.5rem;right:.5rem;bottom:.5rem}.occasion{padding-block:3.5rem}.occasion-layout{display:flex;flex-direction:column;align-items:stretch;gap:2rem}.occasion img{height:24rem;object-position:50% 25%}.occasion h2{font-size:2.625rem;margin-block:1rem 1.5rem}.occasion-actions{display:block;margin-top:1.5rem}.occasion-actions .text-link{margin-top:.75rem}.contact{display:block}.contact h2{margin-block:1rem 1.5rem}.contact-copy>p:not(.eyebrow){max-width:36ch}.contact .button{margin-top:1.5rem}.contact-details{margin-top:2.5rem}.contact-phone{font-size:1.625rem}.contact-email{font-size:1.0625rem}.contact-note{font-size:.875rem}.footer{padding-block:2rem}.footer-main{grid-template-columns:1fr 1fr;gap:2rem 1.5rem}.footer .wordmark{grid-row:1}.footer-nav{grid-template-columns:1fr;gap:.25rem}.footer-contact{grid-column:1/-1}.footer-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem}.footer-bottom .demo-details{flex-basis:100%;font-size:.875rem}.dialog-header{padding:.75rem 1.5rem}.booking-dialog{width:calc(100% - 1rem);max-height:calc(100dvh - 1rem);border-radius:1px}.dialog-scroll{padding:1.5rem;padding-bottom:calc(1.5rem + env(safe-area-inset-bottom));max-height:calc(100dvh - 5.625rem)}.booking-dialog h2{font-size:2rem;line-height:1.1}.booking-dialog #booking-description{font-size:1rem;line-height:1.7}.field label{font-size:1rem}input,select,textarea{font-size:1rem;min-height:3.5rem}.booking-result{padding:1rem}.lightbox{width:calc(100% - 1rem)}.lightbox-header{padding:.75rem 1rem}.lightbox-stage{height:58dvh;padding-inline:1rem}.lightbox-footer{padding:1rem;gap:.75rem}.lightbox-footer p{font-size:.875rem}.lightbox-header{font-size:.875rem}}
@media(max-width:360px){.hero-actions{display:block}.hero-actions .text-link{margin-top:.5rem}.skin-feature{display:block}.skin-feature figure{float:left;width:40%;margin-right:1rem;margin-bottom:.5rem}.skin-feature img{height:12rem}.skin-feature::after{content:'';display:block;clear:both}.dialog-header,.dialog-scroll{padding-inline:1rem}.header-inner{gap:1rem}}
.hero-copy,.hero-visual,.footer-main>*{min-width:0}.button{max-width:100%;display:inline-block;overflow-wrap:break-word}.button>span{display:inline-block;margin-left:1.25rem}.text-link{max-width:100%;display:inline-block;overflow-wrap:break-word}.text-link>span{display:inline-block;margin-left:.75rem}.header-inner{gap:1rem}.footer-main{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.1fr)}.footer-nav{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
@media(max-width:850px){.footer-main{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
@media(max-width:600px){.header-inner{gap:0}.footer-nav{grid-template-columns:minmax(0,1fr)}.skin-feature{display:block}.skin-feature figure{float:left;width:40%;margin-right:1.5rem;margin-bottom:.5rem}.skin-feature::after{content:'';display:block;clear:both}.hero .button{padding-inline:1.25rem}.button>span{margin-left:.75rem}}
h1,h2,h3,p,figcaption{overflow-wrap:break-word;hyphens:auto}
@media(max-width:850px){.service-tabs{grid-template-columns:repeat(auto-fit,minmax(min(100%,8rem),1fr))}.service-tabs button{overflow-wrap:break-word;hyphens:auto}.header{position:relative}}
@media(max-width:600px){.service-row{display:flex;flex-wrap:wrap;align-items:center}.service-row>div:first-child{flex-basis:100%;min-width:0}.service-price{flex:1 1 8rem}.service-book{flex:0 1 auto;margin-left:auto;max-width:100%;overflow-wrap:break-word}.gallery-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,8rem),1fr))}.gallery-grooming{grid-column:1/-1}.gallery-portrait{grid-column:auto}.footer-main{grid-template-columns:repeat(auto-fit,minmax(min(100%,8rem),1fr))}.footer-contact{grid-column:1/-1}}
.header{position:sticky}html{scroll-padding-top:var(--header-clearance,7rem)}.service-row{grid-template-columns:minmax(0,1fr) 9.5rem 8rem}
.panel-heading h3{font-weight:600}.booking-dialog{max-width:none}.lightbox{max-width:none;height:min(54rem,calc(100dvh - 2rem))}.lightbox[open]{display:flex;flex-direction:column}.lightbox-stage{flex:1 1 auto;min-height:0}.lightbox-header,.lightbox-footer{flex:none}.lightbox-footer p{min-width:0}
.feature-copy>p:not(.eyebrow),.grooming-feature>div>p:not(.eyebrow){font-size:1.125rem}
@media(max-width:600px){.feature-copy>p:not(.eyebrow),.grooming-feature>div>p:not(.eyebrow){font-size:1.0625rem}}
@media(max-width:1150px){.service-row{grid-template-columns:minmax(0,1fr) 8rem 7.5rem}}
@media(max-width:600px){.gallery-grooming{grid-column:1/-1}.gallery-grooming img{aspect-ratio:2.25;object-position:50% 27%}}
@media(max-width:600px){.lightbox-footer{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.75rem}.lightbox-footer p{grid-column:1/-1;grid-row:1;text-align:left}.lightbox-footer #lightbox-previous{grid-row:2;grid-column:1}.lightbox-footer #lightbox-next{grid-row:2;grid-column:2;justify-self:end}}
.selected-service-note{font-size:.875rem;color:var(--text-muted);line-height:1.7;margin-top:.5rem}.button{line-height:1.375}
@media(max-width:850px){.service-tabs{grid-template-columns:repeat(auto-fit,minmax(min(100%,max(8rem,calc(50% - .25rem))),1fr))}}
@media(max-width:600px){.gallery-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,max(8rem,calc(50% - .375rem))),1fr))}.footer-main{grid-template-columns:repeat(auto-fit,minmax(min(100%,max(8rem,calc(50% - .75rem))),1fr))}}
@media(max-width:600px){.dialog-header,.dialog-scroll{padding-inline:clamp(16px,4vw,24px)}input,select,textarea{padding-inline:clamp(12px,3vw,16px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
