/* NaBi: scoped visual and motion refinement. */
html{scroll-padding-top:105px}.header-slot{position:relative;height:169px;z-index:30}.header{background:var(--cream-light);width:100%}.header .nav{height:128px}.header .brand-logo{width:120px;height:120px;max-width:none;transform-origin:center;transition:transform 250ms ease}.header .brand{height:120px;justify-content:center;position:relative}.header.is-compact{position:fixed;top:0;left:0;right:0}.header.is-compact .nav{height:84px}.header.is-compact .brand-logo{transform:scale(.6)}.header:after{content:'';position:absolute;inset:0;box-shadow:0 7px 25px color-mix(in srgb,var(--brown) 12%,transparent);opacity:0;transition:opacity 250ms;pointer-events:none}.header.is-compact:after{opacity:1}.nav-half a:after{width:100%;background:var(--gold);transform:scaleX(0);transform-origin:center;transition:transform 250ms ease}.nav-half a:hover:after,.nav-half a[aria-current]:after{width:100%;transform:scaleX(1)}
.hero-shade{background:linear-gradient(90deg,color-mix(in srgb,var(--brown) 60%,transparent) 0%,rgba(67,42,30,0) 100%)}.hero-content{max-width:900px}.hero h1{font-size:clamp(43px,5.35vw,77px);letter-spacing:.045em}.hero-line{display:inline-block}.hero-slide{transform:scale(1);transform-origin:center}.hero-slide.active{animation:nabi-kenburns 6s linear both}.hero:hover .hero-slide.active,.hero:focus-within .hero-slide.active,.hero.is-paused .hero-slide.active{animation-play-state:paused}.hero-content .eyebrow{animation:nabi-line-in 650ms both}.hero h1 .hero-line{animation:nabi-line-in 700ms 100ms both}.hero-subline .hero-line:first-child{animation:nabi-line-in 700ms 220ms both}.hero-subline .hero-line:last-child{animation:nabi-line-in 700ms 340ms both}.hero-content .actions{animation:nabi-line-in 700ms 460ms both}@keyframes nabi-line-in{from{opacity:.01;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes nabi-kenburns{from{transform:scale(1)}to{transform:scale(1.06)}}
@media(min-width:761px){.hero h1{white-space:nowrap;max-width:none}}
.signature .carousel .price,.menu-content .price{color:var(--brown)}.menu-content .price-from{font-size:.74em;color:var(--taupe)}.menu-content .pedi-copy p,.menu-content .menu-row p{font-size:16px;line-height:1.75}#manicure .menu-list,#nails .menu-list{grid-template-columns:minmax(0,1fr);gap:0}#manicure .price-line,#nails .price-line{align-items:baseline;gap:16px}#manicure .price-line:after,#nails .price-line:after{content:'';flex:1;min-width:20px;border-bottom:1px dotted var(--taupe);order:1}#manicure .price-line h3,#nails .price-line h3{order:0;flex:0 1 auto}#manicure .price-line .price,#nails .price-line .price{order:2;flex-shrink:0}.category-chips{position:static;scrollbar-width:none}.category-chips::-webkit-scrollbar{display:none}.category-chips a.is-current{background:var(--gold);border-color:var(--gold);color:var(--brown)}.menu-section{scroll-margin-top:100px}
footer .map{background:var(--cream);opacity:1}footer .map.is-loading{opacity:0}.map-shell{background:var(--cream)}.map-shell .map{transition:opacity 250ms ease}
.ornament i:first-child{transform-origin:right center}.ornament i:last-child{transform-origin:left center}.ornament.is-drawn i{animation:nabi-divider 600ms ease-out both}.ornament.is-drawn .ornament-spark{animation:nabi-twinkle 600ms ease-out both}@keyframes nabi-divider{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes nabi-twinkle{0%{transform:scale(.85);opacity:.5}50%{transform:scale(1.14);opacity:1}100%{transform:scale(1);opacity:1}}
.arch-window{position:relative;overflow:hidden;border-radius:inherit;clip-path:inset(0 round 140px 140px 8px 8px);isolation:isolate}.arch-parallax{transform:translateY(0);will-change:transform}.arch-window img{transform:scale(1.1);transform-origin:center;transition:transform 1.2s ease}.arch-window:hover img{transform:scale(1.144)}.arch-window:after{content:'';position:absolute;inset:0;background:var(--cream);pointer-events:none;transform:scaleY(0);transform-origin:top;z-index:1}.alt .arch-window:after{background:var(--cream-light)}.arch-window.is-unveiled:after{animation:nabi-unveil 900ms cubic-bezier(.2,.65,.3,1) both}@keyframes nabi-unveil{from{transform:scaleY(1)}to{transform:scaleY(0)}}
.btn,.service-tile,.pedi-card,.lightbox-open,.carousel-controls button,.mobile-bottom a,.category-chips a{transition:transform 250ms ease;position:relative}.btn:hover{box-shadow:none}.btn:before,.service-tile:after,.pedi-card:after{content:'';position:absolute;inset:0;border:1px solid var(--gold);border-radius:inherit;box-shadow:0 7px 20px color-mix(in srgb,var(--gold) 20%,transparent);opacity:0;pointer-events:none;transition:opacity 250ms ease}.btn:hover:before,.service-tile:hover:after,.pedi-card:hover:after{opacity:1}.btn:hover,.service-tile:hover,.pedi-card:hover,.lightbox-open:hover,.carousel-controls button:hover,.mobile-bottom a:hover,.category-chips a:hover{transform:translateY(-4px)}.btn:active,.service-tile:active,.pedi-card:active,.lightbox-open:active,.carousel-controls button:active,.mobile-bottom a:active,.category-chips a:active{transform:scale(.98)}.lightbox-open img{transition:transform 1.2s}.lightbox-open:hover img{filter:none}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.service-tile[href$='#brow-lash'] img{object-position:50% 55%}.service-tile[href$='#waxing'] img{object-position:50% 62%}
@view-transition{navigation:auto}::view-transition-old(root){animation:nabi-page-out 250ms ease both}::view-transition-new(root){animation:nabi-page-in 250ms ease both}@keyframes nabi-page-out{to{opacity:0}}@keyframes nabi-page-in{from{opacity:0}}
main>.section,main>.page-banner,main>.info-bar,.menu-content,.category-chips,.policy-content{position:relative;isolation:isolate}body::before{content:'';position:fixed;inset:0;z-index:100;pointer-events:none;opacity:.03;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3CfeComponentTransfer%3E%3CfeFuncR type='linear' slope='0' intercept='.262745'/%3E%3CfeFuncG type='linear' slope='0' intercept='.164706'/%3E%3CfeFuncB type='linear' slope='0' intercept='.117647'/%3E%3C/feComponentTransfer%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)'/%3E%3C/svg%3E")}
@media(max-width:760px){.header-slot{height:145px}.header .nav{height:108px}.header .brand{height:93px}.header .brand-logo{height:92.5px;width:92.5px}.header.is-compact .nav{height:84px}.header.is-compact .brand-logo{transform:scale(.778378)}.mobile-menu:not([hidden]){top:108px;height:calc(100dvh - 108px)}.header.is-compact .mobile-menu:not([hidden]){top:84px;height:calc(100dvh - 84px)}.hero h1{font-size:43px;letter-spacing:.03em}.info-bar .hours-lines>span:not(.hours-separator){display:block;white-space:nowrap}.info-bar .hours-lines .hours-separator{display:none}.service-grid{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:0;scrollbar-width:thin;padding:6px 0 18px}.service-grid>.service-tile,.service-grid>.service-tile:last-child{flex:0 0 82%;width:auto;max-width:none;scroll-snap-align:start;scroll-snap-stop:always}.service-tile img{height:270px}.service-tile>div{padding:22px}.service-tile h3{font-size:21px}.service-tile p{font-size:15px}.arch-window{clip-path:inset(0 round 120px 120px 6px 6px)}#manicure .price-line,#nails .price-line{gap:9px}#manicure .price-line h3,#nails .price-line h3{max-width:67%;font-size:16px}#manicure .price-line .price,#nails .price-line .price{font-size:17px}.menu-content .pedi-copy p,.menu-content .menu-row p{font-size:16px}.menu-content .pedi-copy .price{font-size:23px}}
@media(prefers-reduced-motion:reduce){@view-transition{navigation:none}html{scroll-behavior:auto}*,*:before,*:after,::view-transition-old(root),::view-transition-new(root){animation:none!important;transition:none!important}.hero-slide,.hero-line,.hero-content .actions,.hero-content .eyebrow,.arch-parallax,.ornament i,.ornament-spark{transform:none!important}.arch-window:after{transform:scaleY(0)!important}.btn:hover,.service-tile:hover,.pedi-card:hover,.lightbox-open:hover,.carousel-controls button:hover,.mobile-bottom a:hover,.category-chips a:hover,.btn:active,.service-tile:active,.pedi-card:active,.lightbox-open:active{transform:none}.arch-window:hover img{transform:scale(1.1)}.hero-line,.hero-content .actions,.hero-content .eyebrow{opacity:1!important}}

body:has(.menu-content) .page-banner>p:last-child:not(.eyebrow){font-size:16px}
/* Release reveal transforms so subsequent hover/press states remain usable. */
.reveal.is-revealed{animation-fill-mode:backwards}button{transition:transform 250ms ease}button:hover{transform:translateY(-4px)}button:active{transform:scale(.98)}
@media(prefers-reduced-motion:reduce){button:hover,button:active{transform:none}}
.header .brand-logo{flex-shrink:0}.header.is-compact .brand{height:84px}.carousel{padding-block:6px}

/* Real pedicure trays: uniform portrait frames, full landscape compositions. */
.signature .tray-placeholder,.pedi-grid .tray-placeholder,.gallery-item .tray-placeholder{aspect-ratio:4/5}
.tray-placeholder.tray-real{padding:0;overflow:hidden;background:var(--cream-light)}
.tray-placeholder.tray-real img{position:absolute;inset:0;display:block;width:100%;height:100%;min-height:0;object-fit:cover;object-position:center;border-radius:0}
.tray-placeholder.tray-landscape img{object-fit:contain}
.carousel{position:relative}
.carousel.is-enhanced:after{content:'';flex:0 0 var(--carousel-tail,0px);pointer-events:none}
.carousel.is-enhanced>.pedi-card{transition:transform 300ms ease,opacity 300ms ease;transform-origin:center}
.carousel.is-enhanced>.pedi-card:not(.is-current){transform:scale(.96);opacity:.75!important}
.carousel.is-enhanced>.pedi-card.is-current{opacity:1!important}
.carousel-indicator{display:flex;align-items:center;justify-content:center;gap:18px;min-height:44px;margin:20px 0 22px}
.carousel-progress{height:1px;width:min(260px,55%);background:color-mix(in srgb,var(--gold) 35%,transparent);overflow:hidden}
.carousel-progress>span{display:block;width:100%;height:100%;background:var(--gold);transform:scaleX(.076923);transform-origin:left;transition:transform 300ms ease}
.carousel-counter{font-family:'Marcellus',serif;font-size:13px;font-variant-numeric:tabular-nums;letter-spacing:.08em;color:var(--brown);white-space:nowrap}
@media(max-width:760px){.carousel-indicator{margin:14px 0 0}}
@media(prefers-reduced-motion:reduce){.carousel.is-enhanced>.pedi-card,.carousel-progress>span{transition:none}}

/* Landscape trays retain their full composition over a same-photo backdrop. */
.tray-placeholder.tray-landscape>img:not(.tray-backdrop){z-index:1;object-fit:contain}
