:root{--porcelain:#f7f7f3;--paper:#fff;--ink:#141315;--berry:#8a164a;--pink:#f16794;--blush:#f7c6d7;--silver:#d8d9d6;--gold:#d7a11e;--line:rgba(20,19,21,.16);--display:'Syne',sans-serif;--body:'DM Sans',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--porcelain);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.5;overflow-x:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit}.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}.skip-link{position:fixed;left:1rem;top:-5rem;background:#fff;padding:.8rem 1rem;z-index:100}.skip-link:focus{top:1rem}a:focus-visible,button:focus-visible{outline:3px solid var(--pink);outline-offset:4px}
.site-header{height:82px;padding:0 clamp(1.25rem,4vw,4.5rem);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:rgba(247,247,243,.94);backdrop-filter:blur(18px);position:sticky;top:0;z-index:50}.brand{display:flex;align-items:center;gap:.8rem}.brand-mark{width:42px;height:42px;border-radius:50% 50% 46% 54%/58% 56% 44% 42%;display:grid;place-items:center;background:var(--berry);color:#fff;font:600 .75rem var(--display);letter-spacing:.08em;transform:rotate(-7deg)}.brand>span:last-child{display:flex;flex-direction:column;line-height:1}.brand b{font:600 .9rem var(--display);letter-spacing:.02em}.brand small{margin-top:.28rem;text-transform:uppercase;letter-spacing:.2em;font-size:.56rem}.site-nav{display:flex;align-items:center;gap:clamp(1.1rem,2.4vw,2.4rem);font-size:.88rem;font-weight:600}.site-nav>a:not(.nav-cta){position:relative}.site-nav>a:not(.nav-cta)::after{content:"";height:2px;width:0;background:var(--berry);position:absolute;left:0;bottom:-.35rem;transition:.25s}.site-nav>a:hover::after{width:100%}.nav-cta,.button{display:inline-flex;align-items:center;justify-content:center;gap:1.5rem;min-height:50px;padding:.75rem 1.25rem;border:1px solid var(--ink);font-weight:700;transition:transform .2s,box-shadow .2s,background .2s}.nav-cta{background:var(--ink);color:#fff}.nav-cta:hover,.button:hover{transform:translate(-3px,-3px);box-shadow:5px 5px 0 var(--pink)}.menu-button{display:none;background:none;border:0;width:44px;height:44px;padding:10px}.menu-button span:not(.sr-only){display:block;height:2px;background:var(--ink);margin:5px 0}
.hero{min-height:calc(100vh - 82px);display:grid;grid-template-columns:1.05fr .95fr;padding:clamp(3rem,7vw,7.5rem) clamp(1.25rem,6vw,7rem) 4rem;gap:clamp(2rem,5vw,6rem);align-items:center}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;font-weight:700;display:flex;align-items:center;gap:.7rem;margin:0 0 1.6rem}.eyebrow span{width:26px;height:2px;background:var(--pink)}.hero h1,.section h2{font:600 clamp(3.3rem,7.4vw,8rem)/.84 var(--display);letter-spacing:-.07em;margin:0}.hero h1 em{font-style:normal;color:var(--berry);position:relative}.hero h1 em::after{content:"";position:absolute;left:-2%;right:-3%;bottom:.03em;height:.11em;background:var(--pink);z-index:-1;transform:rotate(-1.5deg);opacity:.42}.hero-intro{max-width:35rem;font-size:clamp(1rem,1.35vw,1.25rem);margin:2rem 0;color:#4a464b}.hero-actions{display:flex;align-items:center;gap:1.4rem;flex-wrap:wrap}.button-primary{background:var(--berry);color:#fff;border-color:var(--berry)}.button-dark{background:var(--ink);color:#fff;margin-top:1.4rem}.text-link{text-decoration:underline;text-underline-offset:4px;font-size:.88rem;font-weight:600}.rating{display:flex;align-items:center;gap:.7rem;margin-top:2rem;width:max-content}.rating b{font:600 2rem var(--display)}.rating .stars{color:var(--gold);letter-spacing:.05em}.rating>span:last-child{font-size:.78rem;color:#656067}.hero-visual{position:relative;max-width:650px;justify-self:end}.hero-image-wrap{border-radius:48% 48% 14% 14%/25% 25% 10% 10%;overflow:hidden;background:#ddd;aspect-ratio:.82;box-shadow:18px 22px 0 var(--blush)}.hero-image-wrap img{width:100%;height:100%;object-fit:cover;object-position:center}.nail-chip{position:absolute;left:-3.2rem;top:12%;width:108px;height:190px;border-radius:54px;background:var(--pink);display:flex;flex-direction:column;justify-content:center;align-items:center;transform:rotate(-8deg);color:#fff;box-shadow:0 14px 30px rgba(94,12,52,.25)}.nail-chip span{font:500 .72rem var(--display);letter-spacing:.18em;text-transform:uppercase}.nail-chip b{font:600 1.15rem var(--display)}.image-note{position:absolute;bottom:1rem;right:-1.5rem;background:var(--paper);padding:.6rem 1rem;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;font-weight:700;transform:rotate(2deg)}
.marquee{overflow:hidden;background:var(--berry);color:#fff;padding:.9rem 0;font:600 1rem var(--display);letter-spacing:.15em;white-space:nowrap}.marquee div{width:max-content;animation:marquee 28s linear infinite}.marquee i{font-style:normal;color:var(--pink);margin:0 1.5rem}@keyframes marquee{to{transform:translateX(-50%)}}
.section{padding:clamp(5rem,10vw,10rem) clamp(1.25rem,6vw,7rem)}.services{display:grid;grid-template-columns:.7fr 1.3fr;gap:clamp(3rem,8vw,9rem);background:#fff}.section-heading{position:sticky;top:130px;align-self:start}.section-heading h2,.studio-copy h2,.visit-copy h2{font-size:clamp(3.2rem,6vw,6.8rem)}.section-heading>p:last-child{max-width:29rem;margin-top:2rem;color:#5b565c}.service-card{border-top:1px solid var(--ink)}.service-card:last-of-type{border-bottom:1px solid var(--ink)}.service-toggle{width:100%;border:0;background:none;display:grid;grid-template-columns:1fr auto 32px;gap:1rem;align-items:center;text-align:left;padding:1.5rem 0;cursor:pointer}.service-toggle>span{font:600 clamp(1.15rem,2vw,1.7rem) var(--display)}.service-toggle small{display:block;color:var(--berry);font:700 .65rem var(--body);text-transform:uppercase;letter-spacing:.15em;margin-bottom:.45rem}.service-toggle>b{font-size:.9rem}.service-toggle i{font:400 1.5rem var(--body);text-align:right}.service-details{padding:0 3rem 1.4rem 0}.service-details>div{display:grid;grid-template-columns:1fr 140px 80px;gap:1rem;padding:.65rem 0;border-top:1px dashed var(--line);font-size:.9rem}.service-details small{color:#6a656a}.service-details b{text-align:right}
.studio{background:var(--blush);display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(3rem,8vw,8rem);align-items:center}.studio-gallery{display:grid;grid-template-columns:1fr .73fr;align-items:end;gap:1.2rem}.studio-gallery figure{margin:0}.studio-gallery img{width:100%;height:100%;object-fit:cover;filter:saturate(.82)}.gallery-a{aspect-ratio:.76}.gallery-b{aspect-ratio:.72;transform:translateY(4rem)}.studio-gallery figcaption{text-transform:uppercase;font-size:.65rem;letter-spacing:.15em;font-weight:700;margin-top:.7rem}.studio-copy .lead{font-size:clamp(1.05rem,1.5vw,1.35rem);max-width:34rem;margin:2rem 0 2.5rem}.feature-list{list-style:none;margin:0;padding:0}.feature-list li{display:grid;grid-template-columns:45px 1fr;gap:1rem;padding:1.15rem 0;border-top:1px solid rgba(20,19,21,.25)}.feature-list li:last-child{border-bottom:1px solid rgba(20,19,21,.25)}.feature-list li>b{font:600 .75rem var(--display);color:var(--berry)}.feature-list span{display:flex;flex-direction:column;gap:.25rem;font-size:.9rem}.feature-list strong{font:600 1.15rem var(--display)}
.reviews{background:var(--ink);color:#fff}.reviews-top{display:grid;grid-template-columns:1fr 1.7fr .9fr;gap:2rem;align-items:end}.eyebrow.light span{background:var(--pink)}.reviews h2{font-size:clamp(3.2rem,6vw,6.8rem)}.rating-large{display:flex;align-items:center;gap:1.2rem;justify-self:end}.rating-large>b{font:600 clamp(3.4rem,6vw,6rem) var(--display);color:var(--pink)}.rating-large>span{color:var(--gold);letter-spacing:.08em}.rating-large small{display:block;color:#aaa;font-size:.65rem;letter-spacing:.08em;margin-top:.4rem}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#504b50;margin-top:5rem}.review-grid blockquote{background:var(--ink);margin:0;padding:clamp(1.5rem,3vw,3rem);min-height:300px;display:flex;flex-direction:column}.review-grid blockquote>span{color:var(--gold);letter-spacing:.1em}.review-grid blockquote p{font:500 clamp(1.3rem,2vw,1.9rem)/1.25 var(--display);margin:2rem 0}.review-grid footer{margin-top:auto;font-weight:700}.review-grid footer small{display:block;font-weight:400;color:#aaa;margin-top:.25rem}
.visit{display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,10vw,12rem);align-items:start}.visit-copy>p:not(.eyebrow){font-size:1.1rem;max-width:31rem;margin:2rem 0}.visit-card{background:#fff;border:1px solid var(--ink);box-shadow:12px 12px 0 var(--pink)}.visit-card>div{padding:1.6rem;border-bottom:1px solid var(--line)}.visit-card>div:last-child{border:0}.visit-card small{display:block;text-transform:uppercase;letter-spacing:.15em;font-size:.63rem;font-weight:700;color:var(--berry);margin-bottom:.7rem}.address-block strong{font:600 1.25rem/1.45 var(--display)}.hours-block dl{margin:0}.hours-block dl>div{display:flex;justify-content:space-between;gap:1rem;padding:.35rem 0}.hours-block dt,.hours-block dd{margin:0}.hours-block dd{font-weight:700}.contact-block{display:flex;flex-direction:column}.contact-block a{text-decoration:underline;text-underline-offset:4px;margin:.15rem 0;width:max-content}.socials{display:flex;flex-wrap:wrap;gap:1rem 1.6rem;font-weight:700;font-size:.86rem}.final-cta{padding:clamp(5rem,8vw,8rem) 1.25rem;background:var(--berry);color:#fff;text-align:center}.final-cta p{margin:0 0 1rem;text-transform:uppercase;letter-spacing:.2em;font-size:.7rem}.final-cta a{font:600 clamp(2.5rem,7vw,7rem)/1 var(--display);letter-spacing:-.06em;border-bottom:.08em solid var(--pink)}.final-cta a span{display:inline-block;transition:transform .2s}.final-cta a:hover span{transform:translate(8px,-8px)}
.footer{padding:2rem clamp(1.25rem,4vw,4.5rem);display:flex;align-items:center;justify-content:space-between;gap:2rem;background:#fff}.footer p{font-size:.76rem;color:#6a656a}.footer>div{display:flex;gap:1.2rem;font-size:.76rem;text-decoration:underline}.mobile-booking{display:none}.legal{max-width:850px;margin:0 auto;padding:5rem 1.25rem 8rem}.legal h1{font:600 clamp(3rem,7vw,6rem)/.95 var(--display);letter-spacing:-.06em}.legal h2{font:600 1.5rem var(--display);margin-top:2.4rem}.legal .notice{border:2px solid var(--berry);background:#fff;padding:1rem 1.2rem}.legal a{text-decoration:underline}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .75s ease,transform .75s ease}.reveal[data-delay="1"]{transition-delay:.12s}.reveal[data-delay="2"]{transition-delay:.24s}.reveal.is-visible{opacity:1;transform:none}
@media (max-width:980px){.site-nav{position:fixed;inset:82px 0 auto;background:var(--porcelain);padding:1.5rem;display:none;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--ink)}.site-nav.is-open{display:flex}.menu-button{display:block}.hero{grid-template-columns:1fr;padding-top:4rem}.hero-visual{width:min(78vw,520px);margin:1rem auto 2rem;justify-self:center}.services,.studio,.visit{grid-template-columns:1fr}.section-heading{position:static}.studio-gallery{max-width:720px}.studio-copy{padding-top:3rem}.reviews-top{grid-template-columns:1fr 1fr}.reviews-top .eyebrow{grid-column:1/-1}.rating-large{align-self:end}.review-grid{grid-template-columns:1fr}.review-grid blockquote{min-height:230px}}
@media (max-width:620px){body{padding-bottom:64px}.site-header{height:68px}.site-nav{inset:68px 0 auto}.hero{min-height:auto;padding:3.4rem 1.25rem 3rem}.hero h1{font-size:clamp(3.15rem,16vw,5rem)}.hero-actions{align-items:stretch;flex-direction:column}.button{width:100%}.rating{align-items:flex-start;flex-wrap:wrap}.rating>span:last-child{width:100%;margin-left:3.4rem;margin-top:-1rem}.hero-visual{width:90%;margin-left:10%}.nail-chip{width:74px;height:135px;left:-2.1rem;border-radius:40px}.nail-chip b{font-size:.85rem}.nail-chip span{font-size:.55rem}.image-note{right:-.4rem}.section{padding:5rem 1.25rem}.service-toggle{grid-template-columns:1fr auto 20px}.service-details{padding-right:0}.service-details>div{grid-template-columns:1fr auto}.service-details small{grid-row:2}.service-details b{grid-row:1/3;grid-column:2}.studio-gallery{gap:.7rem}.gallery-b{transform:translateY(2rem)}.reviews-top{grid-template-columns:1fr}.rating-large{justify-self:start}.review-grid{margin-top:3rem}.visit-card{box-shadow:7px 7px 0 var(--pink)}.hours-block dl>div{flex-direction:column;gap:0;padding:.5rem 0}.footer{flex-direction:column;align-items:flex-start}.mobile-booking{display:grid;grid-template-columns:.7fr 1.3fr;position:fixed;left:0;right:0;bottom:0;z-index:60;height:64px;background:#fff;border-top:1px solid var(--ink)}.mobile-booking a{display:grid;place-items:center;font-weight:700;font-size:.84rem}.mobile-booking a:last-child{background:var(--berry);color:#fff}.marquee div{animation-duration:20s}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.marquee div{animation:none}.reveal{opacity:1;transform:none;transition:none}*{transition-duration:.01ms!important}}
