@import "https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700&family=Public+Sans:wght@400;500;600;700;800&display=swap";:root{--color-bg:oklch(13.5% .013 66);--color-surface:oklch(18% .016 68);--color-surface-strong:oklch(24% .022 72);--color-line:oklch(46% .03 72);--color-line-strong:oklch(64% .07 78);--color-text:oklch(93% .02 84);--color-text-soft:oklch(86% .024 82);--color-muted:oklch(74% .02 78);--color-accent:oklch(79% .16 80);--color-accent-soft:oklch(63% .11 76);--color-signal-cool:oklch(68% .11 240);--color-ink:oklch(15% .015 68);--color-burst:oklch(56% .14 28);--font-body:"Public Sans", "Segoe UI", sans-serif;--font-display:"Barlow Condensed", "Arial Narrow", sans-serif;--space-xs:.25rem;--space-sm:.5rem;--space-md:.75rem;--space-lg:1rem;--space-xl:1.5rem;--space-2xl:2rem;--space-3xl:3rem;--radius-lg:1.25rem;--radius-xl:1.8rem;--shadow-soft:0 18px 48px color-mix(in oklab, var(--color-bg), black 22%);--shadow-accent:0 18px 36px color-mix(in oklab, var(--color-accent-soft), black 68%);--ease-out-quart:cubic-bezier(.25, 1, .5, 1);--ease-out-expo:cubic-bezier(.16, 1, .3, 1);--scroll-progress:0;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:var(--font-body);color:var(--color-text);background:radial-gradient(circle at 0% 0%, oklch(33% .1 78/.34), transparent 28%), radial-gradient(circle at 88% 10%, oklch(31% .075 18/.18), transparent 24%), linear-gradient(180deg, oklch(15% .015 68), var(--color-bg));font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;font-weight:500;line-height:1.6}html{scroll-behavior:smooth}body{background:linear-gradient(90deg, transparent 0, transparent calc(100% - 1px), color-mix(in oklab, var(--color-line), transparent 40%) calc(100% - 1px)), linear-gradient(180deg, oklch(15% .015 68), var(--color-bg));min-width:320px;min-height:100svh;margin:0}body:before{content:"";pointer-events:none;background:repeating-linear-gradient(90deg, transparent, transparent 5.75rem, color-mix(in oklab, var(--color-line), transparent 88%) 5.75rem, color-mix(in oklab, var(--color-line), transparent 88%) 5.82rem);position:fixed;inset:0;-webkit-mask-image:linear-gradient(#0000,#000 18% 82%,#0000);mask-image:linear-gradient(#0000,#000 18% 82%,#0000)}#root{min-height:100svh;position:relative}a,button,input,textarea,select{font:inherit}img{max-width:100%}strong{font-weight:700}::selection{background:color-mix(in oklab, var(--color-accent), transparent 55%);color:var(--color-text)}.app-shell{position:relative;overflow:clip}.app-shell:before,.app-shell:after{content:"";pointer-events:none;z-index:-1;position:absolute}.app-shell:before{background:radial-gradient(circle, color-mix(in oklab, var(--color-accent), transparent 40%), transparent 62%);filter:blur(26px);opacity:.6;border-radius:50%;width:clamp(18rem,40vw,34rem);height:clamp(18rem,40vw,34rem);top:clamp(5rem,12vw,10rem);right:-10vw}.app-shell:after{background:linear-gradient(135deg, color-mix(in oklab, var(--color-burst), transparent 28%), transparent 70%);opacity:.5;width:clamp(20rem,46vw,40rem);height:clamp(12rem,24vw,18rem);top:clamp(18rem,34vw,26rem);left:-14vw;transform:rotate(-10deg)}.skip-link{z-index:30;border:1px solid var(--color-line-strong);background:var(--color-surface-strong);color:var(--color-text);padding:.75rem 1rem;text-decoration:none;position:absolute;top:1rem;left:1rem;transform:translateY(-200%)}.skip-link:focus-visible{transform:translateY(0)}.site-header,.hero-section,.info-strip,.services-section,.gallery-section,.differences-section,.booking-section,.testimonials-section,.location-section,.instagram-section,.final-cta-section,.site-footer{width:min(100%,84rem);margin-inline:auto;padding-inline:clamp(1.25rem,4vw,3rem)}.site-header{z-index:20;padding-top:calc(1rem + env(safe-area-inset-top));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid color-mix(in oklab, var(--color-line), transparent 40%);transition:background-color .22s var(--ease-out-expo), border-color .22s var(--ease-out-expo), box-shadow .22s var(--ease-out-expo), padding .22s var(--ease-out-expo);background:linear-gradient(oklch(16% .013 75/.94),oklch(16% .013 75/.84));justify-content:space-between;align-items:center;gap:1rem;padding-bottom:1rem;display:flex;position:sticky;top:0}.site-header:after{content:"";transform-origin:0;height:2px;transform:scaleX(var(--scroll-progress,0));background:linear-gradient(90deg, color-mix(in oklab, var(--color-accent), white 8%), color-mix(in oklab, var(--color-signal-cool), white 8%));position:absolute;bottom:-1px;left:0;right:0}body[data-scrolled=true] .site-header{border-bottom-color:color-mix(in oklab, var(--color-line-strong), transparent 15%);box-shadow:0 16px 36px color-mix(in oklab, var(--color-bg), black 24%);background:linear-gradient(oklch(18% .014 75/.96),oklch(18% .014 75/.9))}.brand-lockup{align-items:center;gap:.875rem;min-width:0;display:flex}.brand-logo{object-fit:contain;width:3rem;height:3rem;box-shadow:var(--shadow-soft);background:oklch(24% .02 40);border-radius:999px;padding:.35rem}.brand-name,.brand-tag,.section-kicker,.service-label,.booking-panel-kicker,.hero-badge-label,.location-label,.map-grid-label{margin:0}.brand-name{font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;color:var(--color-text);font-size:1.35rem;line-height:1}.brand-tag{color:var(--color-muted);letter-spacing:.06em;text-transform:uppercase;margin-top:.2rem;font-size:.78rem}.header-nav{display:none}.header-cta,.cta-primary,.cta-secondary,.location-card a,.instagram-link{min-height:2.9rem;transition:transform .14s var(--ease-out-expo), background-color .14s var(--ease-out-expo), color .14s var(--ease-out-expo), border-color .14s var(--ease-out-expo), box-shadow .22s var(--ease-out-expo);border-radius:999px;justify-content:center;align-items:center;padding:.85rem 1.15rem;font-weight:700;line-height:1;text-decoration:none;display:inline-flex}.header-cta,.cta-primary{background:var(--color-accent);color:var(--color-ink);box-shadow:var(--shadow-accent)}.cta-secondary,.location-card a,.instagram-link{border:1px solid var(--color-line-strong);background:var(--color-surface);color:var(--color-text)}.section-kicker,.service-label,.booking-panel-kicker,.hero-badge-label,.location-label,.map-grid-label{color:var(--color-accent);letter-spacing:.18em;text-transform:uppercase;font-size:.78rem;font-weight:700}.hero-section{gap:var(--space-2xl);padding-top:clamp(2rem,8vw,4.5rem);padding-bottom:clamp(3rem,10vw,6rem);display:grid;position:relative}.hero-copy,.section-heading{max-width:45rem}.hero-copy h1,.section-heading h2,.featured-service h3,.service-row h3,.difference-list h3,.booking-steps h3,.booking-panel h3,.testimonial strong,.location-card h3,.hours-card h3,.instagram-card h3,.final-cta-section h2{font-family:var(--font-display);color:var(--color-text);text-wrap:balance;margin:0}.hero-copy h1{letter-spacing:-.01em;text-transform:uppercase;text-wrap:unset;max-width:8.5ch;margin-top:.8rem;font-size:clamp(3.8rem,14vw,8.8rem);line-height:.84}.hero-copy h1 span{color:color-mix(in oklab, var(--color-accent), white 10%);display:block}.hero-copy>*,.hero-frame,.hero-aside,.info-strip p{opacity:0;animation:rise-in .72s var(--ease-out-quart) forwards}.hero-copy>:first-child{animation-delay:80ms}.hero-copy>:nth-child(2){animation-delay:.16s}.hero-copy>:nth-child(3){animation-delay:.24s}.hero-copy>:nth-child(4){animation-delay:.32s}.hero-copy>:nth-child(5){animation-delay:.42s}.hero-copy>:nth-child(6){animation-delay:.5s}.hero-lead,.section-heading p,.service-text,.service-row p,.difference-list p,.booking-steps p,.booking-panel p,.testimonial p,.location-card p,.hours-note,.map-card p,.instagram-card p,.final-cta-section p,.hero-note{max-width:65ch;color:var(--color-muted);margin:0}.hero-lead{margin-top:1.25rem;font-size:1.12rem;line-height:1.72}.hero-actions{flex-direction:column;gap:.75rem;margin-top:1.5rem;display:flex}.hero-note{margin-top:1rem;font-size:.94rem}.hero-highlights{flex-wrap:wrap;gap:.6rem;margin:1.5rem 0 0;padding:0;list-style:none;display:flex}.hero-highlights li{border:1px solid color-mix(in oklab, var(--color-line), transparent 20%);background:linear-gradient(180deg, color-mix(in oklab, var(--color-surface-strong), transparent 6%), color-mix(in oklab, var(--color-surface), var(--color-bg) 12%));color:var(--color-text-soft);border-radius:999px;padding:.65rem .9rem;font-size:.88rem}.hero-visual{gap:1rem;display:grid;position:relative}.hero-ribbon{border:1px solid color-mix(in oklab, var(--color-line-strong), transparent 12%);background:linear-gradient(90deg, color-mix(in oklab, var(--color-accent-soft), black 22%), color-mix(in oklab, var(--color-burst), black 24%));color:oklch(92% .018 82);font-family:var(--font-display);letter-spacing:.12em;text-transform:uppercase;box-shadow:var(--shadow-accent);padding:.7rem 1rem;font-size:clamp(1rem,3.6vw,1.45rem);transform:rotate(-4deg)}.hero-frame{border-radius:var(--radius-xl);border:1px solid color-mix(in oklab, var(--color-line-strong), transparent 10%);background:linear-gradient(145deg, color-mix(in oklab, var(--color-surface-strong), black 4%), color-mix(in oklab, var(--color-surface), black 10%));box-shadow:var(--shadow-soft);animation-delay:.22s;position:relative;overflow:clip}.hero-frame:after{content:"NAVALHA";color:oklch(95% .018 80/.1);font-family:var(--font-display);letter-spacing:.02em;font-size:clamp(2.8rem,11vw,7rem);line-height:.8;position:absolute;top:1rem;right:1rem}.hero-frame:before{content:"";background:linear-gradient(#0000,oklch(16% .013 75/.88));height:45%;position:absolute;inset:auto 0 0}.hero-image{object-fit:cover;object-position:center;width:100%;min-height:25rem;animation:hero-image-settle 1.1s var(--ease-out-quart) .18s forwards;display:block;transform:scale(1.07)}.hero-badge{border-radius:var(--radius-lg);border:1px solid color-mix(in oklab, var(--color-line), transparent 10%);opacity:0;animation:badge-in .68s var(--ease-out-expo) .54s forwards;background:linear-gradient(oklch(20% .022 76/.9),oklch(16% .017 72/.94));padding:1rem;position:absolute;bottom:1rem;left:1rem;right:1rem;transform:translateY(20px)}.hero-badge strong{color:var(--color-text);margin-top:.35rem;font-size:1.55rem;display:block}.hero-badge p{color:var(--color-muted);margin-top:.45rem}.hero-badge-copy{min-height:2.6em;color:var(--color-text-soft);animation:note-fade .42s var(--ease-out-quart)}.hero-badge-meta,.hero-badge-time,.hero-aside-live,.final-cta-note{font-size:.92rem;line-height:1.55}.hero-badge-meta{color:var(--color-text);margin-top:.7rem;font-weight:700}.hero-badge-time{color:var(--color-muted);text-transform:uppercase;letter-spacing:.08em;margin-top:.25rem;font-size:.78rem}.hero-aside{border-radius:var(--radius-lg);border:1px solid color-mix(in oklab, var(--color-line), transparent 15%);background:linear-gradient(180deg, color-mix(in oklab, var(--color-surface-strong), transparent 10%), color-mix(in oklab, var(--color-surface), var(--color-bg) 10%));padding:1.1rem 1rem;animation-delay:.42s}.hero-aside-title{color:var(--color-text);margin:0;font-weight:700}.hero-aside ul{color:var(--color-muted);gap:.75rem;margin:1rem 0 0;padding-left:1rem;display:grid}.hero-aside-live{color:var(--color-text-soft);margin:1rem 0 0}.info-strip{gap:.75rem;padding-top:.5rem;padding-bottom:clamp(2rem,5vw,3.4rem);display:grid}.info-strip p{border-top:1px solid color-mix(in oklab, var(--color-line), transparent 25%);color:var(--color-text-soft);text-transform:uppercase;letter-spacing:.12em;margin:0;padding-top:.8rem;font-size:.82rem}.info-strip p:first-child{animation-delay:.56s}.info-strip p:nth-child(2){animation-delay:.63s}.info-strip p:nth-child(3){animation-delay:.7s}[data-reveal]{opacity:0;transition:opacity .62s var(--ease-out-quart), transform .62s var(--ease-out-quart);transition-delay:calc(var(--reveal-order,0) * 70ms);will-change:transform, opacity;transform:translateY(26px)scale(.985)}[data-reveal].is-visible{opacity:1;transform:none}.services-section,.gallery-section,.differences-section,.booking-section,.testimonials-section,.location-section,.instagram-section{--section-gap:clamp(1.5rem, 3vw, 2.25rem);align-content:start;gap:var(--section-gap);padding-top:clamp(3rem,8vw,5rem);padding-bottom:clamp(3rem,8vw,5rem);display:grid}.services-section,.location-section{--section-gap:clamp(1.35rem, 2.8vw, 2rem)}.gallery-section,.booking-section{--section-gap:clamp(1.7rem, 3.8vw, 2.65rem)}.differences-section,.instagram-section{--section-gap:clamp(1.85rem, 4vw, 2.85rem)}.gallery-section,.booking-section,.instagram-section{position:relative}.gallery-section:before,.booking-section:before,.instagram-section:before{content:"";z-index:-1;position:absolute;inset:0}.gallery-section:before{background:linear-gradient(180deg, transparent, color-mix(in oklab, var(--color-surface-strong), var(--color-bg) 62%) 18%, color-mix(in oklab, var(--color-surface-strong), var(--color-bg) 62%) 82%, transparent)}.booking-section:before{background:linear-gradient(180deg, transparent, color-mix(in oklab, var(--color-burst), transparent 88%) 22%, transparent 82%)}.instagram-section:before{background:linear-gradient(180deg, transparent, color-mix(in oklab, var(--color-accent-soft), transparent 92%) 30%, transparent 100%)}.section-heading{gap:.85rem;width:min(100%,44rem);display:grid}.section-heading h2{letter-spacing:.02em;text-transform:uppercase;font-size:clamp(2.4rem,9vw,4.9rem);line-height:.9}.section-heading-tight{width:min(100%,39rem)}.section-heading-split{gap:1rem;width:100%}.services-layout{align-items:start;gap:1rem;display:grid}.featured-service,.booking-panel,.testimonial,.location-card,.hours-card,.map-card{border-radius:var(--radius-xl);border:1px solid color-mix(in oklab, var(--color-line), transparent 15%);background:var(--color-surface);box-shadow:var(--shadow-soft)}.featured-service{background:linear-gradient(135deg, color-mix(in oklab, var(--color-accent-soft), transparent 42%), transparent 45%), var(--color-surface-strong);box-shadow:0 28px 58px color-mix(in oklab, var(--color-bg), black 28%), inset 0 1px 0 oklch(96% .014 80/.05);padding:1.6rem}.featured-service h3,.booking-panel h3,.location-card h3,.hours-card h3{text-transform:uppercase;margin-top:.75rem;font-size:clamp(2.2rem,8vw,3.4rem);line-height:.9}.service-price{color:var(--color-accent);letter-spacing:.08em;text-transform:uppercase;margin:.75rem 0 0;font-size:1rem;font-weight:700}.service-text{margin-top:.9rem}.service-details{gap:.65rem;margin:1rem 0 0;padding:0;list-style:none;display:grid}.service-details li{border-top:1px solid color-mix(in oklab, var(--color-line), transparent 22%);color:var(--color-text-soft);padding-top:.75rem}.service-list{align-content:start;display:grid}.service-row{border-top:1px solid color-mix(in oklab, var(--color-line), transparent 25%);transition:transform .22s var(--ease-out-expo), border-color .22s var(--ease-out-expo);gap:.85rem;padding:1.15rem 0;display:grid}.service-row:first-child{border-top:0}.service-row h3{text-transform:uppercase;font-size:1.8rem;line-height:1}.service-row strong{color:var(--color-accent);letter-spacing:.08em;text-transform:uppercase;font-size:.92rem}.gallery-grid{grid-auto-flow:dense;gap:.85rem;display:grid}.gallery-item{border-radius:calc(var(--radius-lg) + .2rem);border:1px solid color-mix(in oklab, var(--color-line-strong), transparent 18%);min-height:15rem;box-shadow:0 22px 44px color-mix(in oklab, var(--color-bg), black 22%);margin:0;overflow:clip}.gallery-item img{object-fit:cover;width:100%;height:100%;transition:transform .5s var(--ease-out-quart), filter .5s var(--ease-out-quart);display:block}.difference-list{counter-reset:difference;gap:1rem;margin:0;padding:0;list-style:none;display:grid}.difference-list li{counter-increment:difference;border-top:1px solid color-mix(in oklab, var(--color-line), transparent 20%);transition:transform .22s var(--ease-out-expo), border-color .22s var(--ease-out-expo);padding:1.25rem 0 0}.difference-list li:before{content:counter(difference, decimal-leading-zero);color:var(--color-accent);font-family:var(--font-display);letter-spacing:.12em;margin-bottom:.75rem;font-size:1.6rem;display:inline-block}.difference-list h3{text-transform:uppercase;font-size:2rem;line-height:1}.difference-list p{margin-top:.75rem}.booking-layout,.location-layout{align-items:start;gap:1rem;display:grid}.booking-steps{counter-reset:booking;gap:1rem;margin:0;padding:0;list-style:none;display:grid}.booking-steps li{counter-increment:booking;border-radius:var(--radius-lg);border:1px solid color-mix(in oklab, var(--color-line), transparent 18%);background:color-mix(in oklab, var(--color-surface), var(--color-bg) 28%);transition:transform .22s var(--ease-out-expo), border-color .22s var(--ease-out-expo), background-color .22s var(--ease-out-expo);padding:1.25rem}.booking-steps li:before{content:"0" counter(booking);color:var(--color-accent);font-family:var(--font-display);letter-spacing:.16em;margin-bottom:.8rem;font-size:1.2rem;display:block}.booking-steps h3{text-transform:uppercase;font-size:1.8rem;line-height:1}.booking-steps p{margin-top:.7rem}.booking-panel{align-self:start;padding:1.4rem}.booking-actions{justify-items:start;gap:.8rem;margin-top:1rem;display:grid}.cta-block{width:min(100%,19.5rem);min-height:0;padding:.95rem 1.15rem}.booking-panel-note{margin-top:1rem;font-size:.94rem}.testimonials-grid{align-items:start;gap:1rem;display:grid}.testimonial{transition:transform .24s var(--ease-out-expo), border-color .24s var(--ease-out-expo);margin:0;padding:1.4rem}.testimonial p{color:var(--color-text-soft);font-size:1rem;line-height:1.72}.testimonial footer{gap:.3rem;margin-top:1rem;display:grid}.testimonial strong{text-transform:uppercase;font-size:1.6rem;line-height:1}.testimonial span{color:var(--color-muted);letter-spacing:.12em;text-transform:uppercase;font-size:.82rem}.location-card,.hours-card,.map-card{padding:1.4rem}.location-card a{margin-top:1rem}.hours-list{gap:.7rem;margin:1rem 0 0;display:grid}.hours-list div{border-top:1px solid color-mix(in oklab, var(--color-line), transparent 22%);justify-content:space-between;gap:1rem;padding-top:.75rem;display:flex}.hours-list dt,.hours-list dd{margin:0}.hours-list dt{color:var(--color-text-soft);text-transform:uppercase;letter-spacing:.08em;font-size:.84rem}.hours-list dd{color:var(--color-text);font-weight:700}.hours-note{margin-top:1rem;font-size:.94rem}.map-art{border-radius:var(--radius-lg);border:1px solid color-mix(in oklab, var(--color-line), transparent 18%);background:radial-gradient(circle at 20% 30%, color-mix(in oklab, var(--color-accent-soft), transparent 45%), transparent 18%), radial-gradient(circle at 72% 60%, color-mix(in oklab, var(--color-signal-cool), transparent 50%), transparent 20%), linear-gradient(90deg, transparent 24%, color-mix(in oklab, var(--color-line), transparent 40%) 24%, color-mix(in oklab, var(--color-line), transparent 40%) 26%, transparent 26%, transparent 60%, color-mix(in oklab, var(--color-line-strong), transparent 30%) 60%, color-mix(in oklab, var(--color-line-strong), transparent 30%) 62%, transparent 62%), linear-gradient(transparent 18%, color-mix(in oklab, var(--color-line), transparent 40%) 18%, color-mix(in oklab, var(--color-line), transparent 40%) 20%, transparent 20%, transparent 52%, color-mix(in oklab, var(--color-line-strong), transparent 28%) 52%, color-mix(in oklab, var(--color-line-strong), transparent 28%) 54%, transparent 54%), color-mix(in oklab, var(--color-surface-strong), var(--color-bg) 25%);min-height:13rem;margin:1rem 0;position:relative;overflow:clip}.map-art:after{content:"";background:linear-gradient(120deg,#0000 28%,oklch(82% .07 80/.16) 50%,#0000 72%);animation:6.8s linear infinite map-scan;position:absolute;inset:0;transform:translate(-135%)}.instagram-grid{align-items:start;gap:1rem;display:grid}.instagram-card{border-top:1px solid color-mix(in oklab, var(--color-line-strong), transparent 10%);background:linear-gradient(180deg, transparent, color-mix(in oklab, var(--color-surface), var(--color-bg) 55%));transition:transform .22s var(--ease-out-expo), border-color .22s var(--ease-out-expo);padding:1.25rem}.instagram-card span{color:var(--color-accent);font-family:var(--font-display);letter-spacing:.16em;margin-bottom:.8rem;font-size:1.1rem;display:inline-block}.instagram-card h3{text-transform:uppercase;font-size:1.75rem;line-height:1}.instagram-card p{margin-top:.7rem}.instagram-link{justify-self:start;margin-top:1.25rem}.final-cta-section{border-top:1px solid color-mix(in oklab, var(--color-line), transparent 15%);gap:.9rem;padding-top:clamp(3.5rem,10vw,6rem);padding-bottom:clamp(3.5rem,10vw,6rem);display:grid}.final-cta-section h2{text-transform:uppercase;max-width:11ch;font-size:clamp(2.6rem,10vw,5rem);line-height:.9}.final-cta-note{color:var(--color-text-soft)}.site-footer{padding-top:1.5rem;padding-bottom:calc(2rem + env(safe-area-inset-bottom));border-top:1px solid color-mix(in oklab, var(--color-line), transparent 15%);gap:1rem;display:grid}.footer-signature{color:var(--color-muted);max-width:52rem;margin:0}@media (pointer:fine) and (hover:hover){.header-cta:hover,.cta-primary:hover,.cta-secondary:hover,.location-card a:hover,.instagram-link:hover{transform:translateY(-2px)}.gallery-item img:hover{filter:saturate(1.06);transform:scale(1.05)}.service-row:hover{border-top-color:color-mix(in oklab, var(--color-accent), transparent 25%);transform:translate(4px)}.difference-list li:hover,.booking-steps li:hover,.testimonial:hover,.instagram-card:hover{transform:translateY(-4px)}.difference-list li:hover,.booking-steps li:hover,.testimonial:hover{border-color:color-mix(in oklab, var(--color-accent), transparent 38%)}.instagram-card:hover{border-top-color:color-mix(in oklab, var(--color-accent), transparent 25%)}.hero-frame:hover .hero-image{transform:scale(1.09)}}.header-cta:active,.cta-primary:active,.cta-secondary:active,.location-card a:active,.instagram-link:active{transform:scale(.98)}.header-cta:focus-visible,.cta-primary:focus-visible,.cta-secondary:focus-visible,.location-card a:focus-visible,.instagram-link:focus-visible,.header-nav a:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}@media (width>=48rem){.hero-actions{flex-flow:wrap}.hero-section{grid-template-columns:minmax(0,1fr) minmax(24rem,1.02fr);align-items:end;column-gap:clamp(1.5rem,4vw,4rem)}.info-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem}.services-layout,.booking-layout,.location-layout,.testimonials-grid,.instagram-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.info-strip{align-items:start}.gallery-grid{grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:7rem}.gallery-item-1{grid-area:span 3/span 7}.gallery-item-2{grid-area:span 2/span 5}.gallery-item-3,.gallery-item-4,.gallery-item-5{grid-area:span 2/span 4}.gallery-item-6{grid-area:span 3/span 5}.difference-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}.section-heading-split{grid-template-columns:minmax(0,1fr) minmax(18rem,28rem);align-items:end}.services-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(1.25rem,3vw,2rem)}.featured-service{top:calc(6rem + env(safe-area-inset-top));position:sticky}.service-row{grid-template-columns:minmax(0,1fr) auto;align-items:start}.booking-layout{grid-template-columns:minmax(0,1fr) minmax(18rem,.82fr);gap:clamp(1.25rem,3vw,2rem)}.booking-panel{top:calc(6rem + env(safe-area-inset-top));position:sticky}.testimonials-grid>:first-child{grid-column:1/-1}.site-footer{grid-template-columns:minmax(0,1fr) minmax(18rem,32rem);align-items:end}}@media (width>=64rem){.hero-section{grid-template-columns:minmax(0,.92fr) minmax(28rem,1.08fr);min-height:min(92svh,58rem)}.hero-copy{padding-top:2rem}.hero-ribbon{width:max-content;max-width:none;position:absolute;top:2rem;left:-2rem}.hero-frame{transform:translate(1.75rem)}.header-nav{align-items:center;gap:1.2rem;display:flex}.header-nav a{color:var(--color-text-soft);text-transform:uppercase;letter-spacing:.1em;font-size:.82rem;text-decoration:none}.header-nav a:hover{color:var(--color-text)}.testimonials-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.testimonials-grid>:first-child{grid-column:span 1}.location-layout{grid-template-columns:minmax(0,.9fr) minmax(0,.8fr) minmax(0,1.1fr)}.map-card{grid-row:1/span 2;align-content:start;display:grid}.map-art{min-height:18rem}.instagram-grid{grid-template-columns:1.1fr .9fr 1fr}}@media (prefers-reduced-motion:reduce){.site-header:after,.map-art:after{animation:none!important}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@keyframes rise-in{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@keyframes hero-image-settle{0%{transform:scale(1.07)}to{transform:scale(1)}}@keyframes badge-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes map-scan{0%{transform:translate(-135%)}to{transform:translate(135%)}}@keyframes note-fade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
