*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:#3e3535;background:#fff;font:16px/1.7 Arial,sans-serif}a{color:inherit;text-decoration:none}header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 6%;border-bottom:1px solid #f4e6e9;background:white;position:sticky;top:0;z-index:5}.brand{font:42px Georgia,serif;white-space:nowrap}.brand span{color:#e6a8bb}.brand small{display:block;font:9px Arial;letter-spacing:4px;text-align:center}nav{display:flex;gap:35px;font-size:13px}.button{display:inline-block;background:#f2b6c6;color:#46343a;padding:16px 26px;font-size:13px;letter-spacing:.3px}.button:hover{background:#eaa3b7}.button.small{font-size:12px;padding:12px 20px}.hero{position:relative;min-height:650px;padding:95px 6% 70px;overflow:hidden;background:#fffafa}.eyebrow{font-size:10px;font-weight:600;letter-spacing:2.4px;color:#8b6673}h1,h2{font-family:Georgia,serif;font-weight:400;line-height:1.12;letter-spacing:-2px}h1{font-size:clamp(54px,6vw,86px);margin:24px 0}em{font-weight:400;color:#b97a8d}h1 em,h2 em{font-family:Georgia,serif}.hero p{max-width:430px;font-size:15px;color:#76666b}.actions{display:flex;gap:30px;align-items:center;margin-top:30px}.textlink{font-size:13px;border-bottom:1px solid #b98495;padding-bottom:5px}.hero-note{font-size:9px;letter-spacing:2px;margin-top:65px;color:#937a83}.hero-art{position:absolute;right:6%;top:55px;width:39%;height:530px;background:white;border-radius:240px 240px 0 0;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #f2dce3}.hero-art img{width:90%;max-height:420px;object-fit:contain}.hero-art span{font-size:8px;letter-spacing:2.5px;color:#9f7b87}.ribbon{text-align:center;background:#f6e4ea;padding:23px;font:italic 24px Georgia}.menu-section,.owner,.visit{padding:90px 8%}.section-top{display:flex;justify-content:space-between;align-items:end;gap:50px}h2{font-size:clamp(38px,4vw,58px);margin:15px 0 30px}.section-top p{max-width:300px;color:#8a767d;font-size:14px}.tabs{display:flex;gap:10px;flex-wrap:wrap;margin:30px 0}.tabs button{border:1px solid #ecd7df;background:white;padding:12px 18px;font:12px Arial;cursor:pointer;color:#6b515c}.tabs button[aria-pressed=true]{background:#f2b6c6;border-color:#f2b6c6}.menu-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 55px}.menu-item{border-bottom:1px solid #efE3e7;padding:23px 0}.menu-title{display:flex;justify-content:space-between;gap:20px;align-items:baseline}.menu-title h3{font:20px Georgia;margin:0}.price{white-space:nowrap;font-size:13px;color:#956679}.menu-item p{font-size:13px;color:#89747c;margin:10px 0 0}.fine{font-size:11px;color:#907c83;margin-top:25px}.signature{background:#fdf2f5;padding:80px 8%}.signature-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}.signature article span{font-size:10px;letter-spacing:2px;color:#9b7582}.signature h3{font:27px Georgia}.signature p{font-size:14px;color:#806a73}.signature b{font-size:13px;font-weight:400}.owner{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.owner img{width:100%;max-height:530px;object-fit:cover;object-position:center;border-radius:200px 200px 0 0}.owner h3{font:32px Georgia;margin-bottom:0}.owner-role{font-size:13px;color:#927781}.visit{background:#faf7f6;display:grid;grid-template-columns:1fr 1fr;gap:12%}.phone{font:28px Georgia;display:block;margin:25px 0}address{font-size:14px;font-style:normal;margin:20px 0}.hours{align-self:center}.hours h3{font:30px Georgia}.hours dl{margin-bottom:35px}.hours dl div{display:flex;justify-content:space-between;padding:15px 0;border-bottom:1px solid #e7dadd;font-size:13px}.hours dd{margin:0}footer{padding:40px 6%;display:flex;align-items:center;justify-content:space-between}footer p,footer>small{font-size:11px;color:#907780}a:focus-visible,button:focus-visible{outline:3px solid #9b5671;outline-offset:4px}@media(max-width:760px){header{height:82px;padding:0 5%}header .brand{font-size:32px}nav{gap:14px;font-size:11px}header .button{display:none}.hero{padding:55px 6% 40px}.hero-art{position:relative;right:auto;top:auto;width:100%;height:350px;margin-top:40px}.hero-art img{height:290px;width:80%}.hero-note{margin-top:35px}.hero p{max-width:100%}.hero h1{font-size:57px}.ribbon{font-size:21px}.menu-section,.owner,.visit,.signature{padding:60px 6%}.section-top{display:block}.section-top p{max-width:100%}.menu-grid,.signature-grid,.owner,.visit{grid-template-columns:1fr;gap:35px}.tabs{gap:7px}.tabs button{padding:10px 13px;font-size:11px}.menu-title h3{font-size:19px}.price{font-size:12px}.owner img{max-height:480px}.owner h2{margin-top:15px}footer{flex-wrap:wrap;gap:20px}footer p{display:none}}/* Typography based on the supplied calligraphy and light sans serif references. */
@font-face{font-family:Montserrat;src:url('assets/fonts/montserrat.ttf') format('truetype');font-weight:100 900;font-display:swap}
@font-face{font-family:Allura;src:url('assets/fonts/allura.ttf') format('truetype');font-weight:400;font-display:swap}
body{font-family:Montserrat,Arial,sans-serif;font-weight:400}h1,h2,.brand,.menu-title h3,.signature h3,.owner h3,.phone,.hours h3{font-family:Montserrat,Arial,sans-serif;font-weight:300}h1{font-size:clamp(48px,5.4vw,76px);letter-spacing:-2px;line-height:1.2;max-width:58%}h2{font-size:clamp(36px,3.6vw,52px);line-height:1.22;letter-spacing:-1.3px}h1 em,h2 em{font-family:Allura,cursive;font-style:normal;font-weight:400;font-size:1.3em;letter-spacing:0;line-height:1}h1 em{white-space:nowrap}.brand{font-weight:300}.brand small,.tabs button{font-family:Montserrat,Arial,sans-serif}.ribbon{font-family:Allura,cursive;font-style:normal;font-size:34px}.menu-title h3{font-size:18px;font-weight:400}.signature h3{font-size:25px}.owner h3{font-size:30px}.eyebrow,.hero-note,.hero-art span{font-weight:400}.button{font-weight:500}@media(max-width:760px){h1,.hero h1{font-size:45px;max-width:100%;letter-spacing:-1.5px}h1 em{white-space:normal}.ribbon{font-size:29px}.menu-title h3{font-size:17px}.menu-title{gap:12px}.price{font-size:11px}h2{font-size:38px}}
/* Approved brand text and button palette. */
body,.hero p,.section-top p,.menu-item p,.fine,.signature p,.owner-role,footer p,footer>small,.eyebrow,.hero-note,.hero-art span,.signature article span,.price,.tabs button,.button{color:#72634F}
em,.brand span{color:#f1c3d2}
.button,.button:hover,.tabs button[aria-pressed=true]{background:#f1c3d2;color:#72634F;border-color:#f1c3d2}
.textlink{border-color:#f1c3d2}
a:focus-visible,button:focus-visible{outline-color:#72634F}

.image-brand{display:block;width:100px;height:92px;overflow:hidden;flex-shrink:0}.image-brand img{display:block;width:138px;height:138px;max-width:none;transform:translate(-19px,-23px);object-fit:contain}footer .image-brand{width:120px;height:120px}footer .image-brand img{width:166px;height:166px;transform:translate(-23px,-23px)}@media(max-width:760px){header .image-brand{width:78px;height:75px}header .image-brand img{width:108px;height:108px;transform:translate(-15px,-17px)}}

.image-brand img,.hero-art img{filter:url(#brand-pink)}
/* Fit the complete circular logo within header and footer. */
header .image-brand{width:90px;height:90px;overflow:visible}header .image-brand img{width:100%;height:100%;transform:none;object-fit:contain}footer .image-brand{width:110px;height:110px;overflow:visible}footer .image-brand img{width:100%;height:100%;transform:none;object-fit:contain}@media(max-width:760px){header .image-brand{width:72px;height:72px}header .image-brand img{width:100%;height:100%;transform:none}}

.hero-art.hero-photo{overflow:hidden}.hero-art.hero-photo img{width:100%;height:100%;max-height:none;object-fit:cover;object-position:center;filter:none}
/* Show the full manicure photograph without cropping any nails. */
.hero-art.hero-photo{height:auto;aspect-ratio:1320 / 930;top:135px;border-radius:0;border:0;background:transparent;overflow:visible}.hero-art.hero-photo img{width:100%;height:100%;object-fit:contain;object-position:center;display:block}@media(max-width:760px){.hero-art.hero-photo{top:auto;height:auto;aspect-ratio:1320 / 930;margin-top:40px}.hero-art.hero-photo img{width:100%;height:100%;object-fit:contain}}
.hero-note{font-size:12px;letter-spacing:1.6px;line-height:1.8;max-width:52%}@media(max-width:760px){.hero-note{font-size:11px;letter-spacing:1.2px;max-width:100%}}

.hero-art.hero-photo{top:45px;width:38%;height:550px;aspect-ratio:3 / 4;background:#fff;border-radius:0;display:flex;align-items:center;justify-content:center}.hero-art.hero-photo img{width:100%;height:100%;object-fit:contain}.hero .actions{margin-top:38px}@media(max-width:760px){.hero-art.hero-photo{position:relative;top:auto;width:100%;height:auto;aspect-ratio:3 / 4;margin-top:35px}.hero-art.hero-photo img{height:100%;width:100%;object-fit:contain}}

/* Balance the approved introduction with a larger, uncropped manicure image. */
.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);column-gap:5%;align-content:center;padding-top:65px;padding-bottom:65px}
.hero>.eyebrow,.hero>h1,.hero>.hero-intro,.hero>.actions,.hero>.hero-note{grid-column:1;max-width:100%}
.hero>h1{font-size:clamp(48px,5.2vw,76px);margin:24px 0}
.hero>.hero-intro{margin:0;max-width:470px;font-size:15px;line-height:1.9}
.hero>.hero-note{margin-top:38px}
.hero-art.hero-photo{position:relative;grid-column:2;grid-row:1 / 6;right:auto;top:auto;width:100%;height:100%;min-height:520px;aspect-ratio:3 / 4;margin:0;background:transparent}
.hero-art.hero-photo img{width:100%;height:100%;object-fit:contain}
@media(max-width:760px){.hero{display:block;padding-top:50px;padding-bottom:40px}.hero>h1{font-size:45px}.hero>.hero-intro{font-size:14px}.hero .actions{gap:20px}.hero-art.hero-photo{width:100%;height:auto;min-height:0;aspect-ratio:1320 / 930;margin-top:35px}.hero-art.hero-photo img{height:auto}.hero>.hero-note{margin-top:30px}}

/* Larger portrait crop, positioned to retain every nail. */
.hero{grid-template-columns:minmax(0,.94fr) minmax(0,1.16fr);column-gap:4%}
.hero-art.hero-photo{height:auto;min-height:0;aspect-ratio:4 / 5;align-self:center;overflow:hidden}
.hero-art.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:24% center}
@media(max-width:760px){.hero-art.hero-photo{height:auto;min-height:0;aspect-ratio:4 / 5;width:100%;margin-top:35px}.hero-art.hero-photo img{height:100%;width:100%;object-fit:cover;object-position:24% center}}

/* A single balanced hero action and uninterrupted offerings line. */
.hero>.actions{width:100%;max-width:470px;margin-top:28px}
.hero>.actions>.button{display:block;width:100%;text-align:center;padding:18px 26px}
.hero>.hero-note{white-space:nowrap;font-size:clamp(8px,.82vw,12px);letter-spacing:1px;margin-top:30px}
@media(max-width:760px){.hero>.actions{max-width:100%}.hero>.hero-note{font-size:clamp(6px,2.1vw,11px);letter-spacing:.35px;white-space:nowrap}}

/* Framed owner portrait with proportionate, larger typography. */
.owner{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:9%;align-items:center}
.owner>img{display:block;width:100%;height:auto;aspect-ratio:4 / 5;max-height:none;object-fit:cover;object-position:center top;border-radius:50% 50% 0 0 / 40% 40% 0 0;border:2px solid #F1C3D2;padding:9px;background:#fff}
.owner .eyebrow{font-size:12px;letter-spacing:2.5px}
.owner h2{font-size:clamp(42px,4.2vw,62px);line-height:1.2;margin:20px 0 32px}
.owner h3{font-size:38px;line-height:1.25;margin:0 0 12px}
.owner .owner-role{font-size:16px;line-height:1.7;margin:0}
@media(max-width:760px){.owner{grid-template-columns:1fr;gap:38px}.owner>img{max-width:450px;margin:0 auto}.owner h2{font-size:42px;margin-top:18px;margin-bottom:25px}.owner h3{font-size:34px}.owner .owner-role{font-size:15px}}

/* Center Vee rather than the surrounding wall within the arch. */
.owner>img{object-position:15% top}

.gallery-section{padding:85px 8%;background:#fff8fa;text-align:center}.gallery-section h2{margin-bottom:40px}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:start}.gallery-photo{display:block;border:0;padding:0;background:#fff;cursor:zoom-in;width:100%;overflow:hidden}.gallery-photo img{display:block;width:100%;height:auto;transition:opacity .2s}.gallery-photo:hover img{opacity:.88}.gallery-viewer{border:0;padding:45px 15px 15px;background:#fff;max-width:94vw;max-height:94vh}.gallery-viewer::backdrop{background:rgba(35,29,26,.8)}.gallery-viewer img{display:block;max-width:86vw;max-height:80vh;object-fit:contain}.gallery-close{position:absolute;right:10px;top:3px;border:0;background:transparent;color:#72634f;font-size:32px;cursor:pointer}@media(max-width:760px){.gallery-section{padding:60px 6%}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}nav{gap:12px;font-size:10px}}

.faq-section{padding:85px 8%;background:#fff}.faq-section h2{margin-bottom:40px}.faq-list{max-width:900px}.faq-list details{border-bottom:1px solid #f1dce3;padding:22px 0}.faq-list summary{cursor:pointer;font-size:17px;font-weight:400;line-height:1.5;padding-right:20px}.faq-list summary::marker{color:#72634f}.faq-list p{font-size:14px;line-height:1.9;max-width:740px;margin:16px 0 2px}.faq-list a{text-decoration:underline;text-decoration-color:#f1c3d2;text-underline-offset:4px}.faq-list summary:focus-visible{outline:2px solid #72634f;outline-offset:6px}@media(max-width:760px){.faq-section{padding:60px 6%}.faq-list summary{font-size:15px}.faq-list details{padding:20px 0}}

@media(max-width:760px){header{height:auto;min-height:82px;gap:12px;padding-top:5px;padding-bottom:5px}header nav{flex:1;justify-content:flex-end;flex-wrap:wrap;gap:5px 14px;font-size:10px;line-height:1.7}header nav a{white-space:nowrap}}

footer{gap:30px;flex-wrap:wrap}.footer-address{margin:0;font-size:13px;line-height:1.8}.footer-social>span{display:block;font-size:12px;margin-bottom:10px}.social-links{display:flex;gap:12px}.social-links a{display:flex;align-items:center;justify-content:center;width:42px;height:42px;color:#72634f;background:#f1c3d2;border-radius:50%}.social-links a:hover{opacity:.8}.social-links svg{display:block}@media(max-width:760px){footer{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:22px}.footer-address{font-size:11px}.footer-social{grid-column:1 / -1}footer>small{grid-column:1 / -1}}

.reviews-section{padding:85px 8%;text-align:center;background:#fff8fa}.reviews-section h2{margin-bottom:40px}.reviews-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;text-align:left;align-items:stretch}.review-card{background:#fff;padding:30px 25px;display:flex;flex-direction:column;border:1px solid #f1dce3}.review-stars{color:#F1C3D2;letter-spacing:3px;font-size:17px}.review-card blockquote{font-size:13px;line-height:1.9;margin:20px 0 25px;flex:1}.review-author{font-size:14px;font-weight:500}.review-source{font-size:11px;margin-top:4px}.reviews-google{margin-top:35px}@media(max-width:900px){.reviews-grid{grid-template-columns:1fr}.review-card{padding:26px}.reviews-section{padding:60px 6%}.reviews-google{font-size:11px;padding:16px 18px}}
