:root{
  --ink:#000; --white:#fff; --honey:#E8A93A; --honey-deep:#8A560E; --comb:#F7DC9C; --comb-pale:#FDF4DE; --brown:#2E1A04; --line:#EEDDB8;
  --display:'Fraunces',Georgia,serif; --body:'Hanken Grotesk',system-ui,-apple-system,sans-serif;
  --fs-0:.9375rem; --fs-1:1.0625rem; --fs-2:1.25rem; --fs-3:1.625rem; --fs-4:clamp(1.9rem,3.6vw,2.6rem); --fs-5:clamp(2.1rem,3.9vw,3.3rem);
  --gap:clamp(20px,4vw,48px); --sec:clamp(72px,10vw,132px); --wrap:1120px; --r:18px;
  --vh:100svh;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font:400 var(--fs-1)/1.6 var(--body);color:var(--ink);background:var(--white);-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}
a{color:inherit}
h1,h2,h3{font-family:var(--display);font-variation-settings:'SOFT' 100;font-weight:500;line-height:1.08;letter-spacing:-.012em}
h2{font-size:var(--fs-4)}
h3{font-size:var(--fs-3);margin-bottom:.6em}
:focus-visible{outline:3px solid var(--honey-deep);outline-offset:3px;border-radius:6px}
.wrap{max-width:var(--wrap);margin-inline:auto;padding-inline:clamp(16px,4vw,40px)}
.lede{max-width:56ch;color:#3b2c14;margin:.7em 0 2.4em}
.fine{font-size:var(--fs-0);color:#4a3a20;margin-top:1em;max-width:62ch}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;font:600 1rem/1 var(--body);padding:1.05em 1.8em;border-radius:999px;text-decoration:none;border:0;cursor:pointer;transition:background-color .2s,transform .15s}
.btn:active{transform:scale(.97)}
.btn--honey{background:var(--honey);color:var(--ink)}
.btn--honey:hover{background:#D9962A}
.btn--ink{background:var(--ink);color:var(--white)}
.btn--ink:hover{background:var(--brown)}
.btn--sm{padding:.8em 1.3em;font-size:.95rem}
.btn--lg{padding:1.2em 2.4em;font-size:1.1rem}
.textlink{display:inline-block;margin-top:28px;font-weight:600;text-decoration:underline;text-decoration-color:var(--honey);text-decoration-thickness:2px;text-underline-offset:5px}
.textlink:hover{text-decoration-color:currentColor}
.textlink--light{color:var(--comb)}

/* top bar */
.bar{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:24px;padding:12px clamp(16px,4vw,40px);background:rgba(255,255,255,.94);backdrop-filter:saturate(1.4) blur(8px);border-bottom:1px solid var(--line)}
.bar__name{font-family:var(--display);font-variation-settings:'SOFT' 100;font-size:1.2rem;font-weight:500;text-decoration:none;margin-right:auto}
.bar__nav{display:flex;gap:22px}
.bar__nav a{text-decoration:none;font-weight:500;font-size:.95rem}
.bar__nav a:hover{text-decoration:underline;text-decoration-color:var(--honey);text-decoration-thickness:2px;text-underline-offset:5px}
@media(max-width:760px){.bar__nav{display:none}}

/* hero */
.hero{min-height:calc(var(--vh) - 63px);display:grid;grid-template-rows:minmax(330px,1fr) auto;overflow:hidden}
.comb{position:relative;min-height:300px;-webkit-mask-image:linear-gradient(#000 78%,transparent);mask-image:linear-gradient(#000 78%,transparent)}
.comb svg{position:absolute;inset:0;display:block}
.cell{animation:fill .8s cubic-bezier(.2,.8,.2,1) both;transform-box:fill-box;transform-origin:center}
.cell:not(.cell--on){animation-name:fade}
.still .cell{animation:none}
@keyframes fill{from{opacity:0;transform:scale(.55)}}
@keyframes fade{from{opacity:0}}
.hero__copy{text-align:center;padding:8px 16px clamp(36px,6vh,64px)}
.hero h1{font-size:var(--fs-5);max-width:17ch;margin:0 auto .4em}
.hero__copy p{color:#3b2c14;max-width:44ch;margin:0 auto 1.5em}
.hero__act{display:flex;flex-direction:column;align-items:center;gap:14px}
.hero__tel{font-weight:500;text-decoration:none;color:#3b2c14}
.hero__tel:hover{text-decoration:underline}

/* services */
.services{padding-top:var(--sec)}
.lashtable{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
.lashtable th,.lashtable td{text-align:left;padding:18px 12px;border-bottom:1px solid var(--line)}
.lashtable thead th{font:600 var(--fs-0) var(--body);color:#4a3a20;padding-top:0}
.lashtable tbody th{font:500 var(--fs-3)/1.1 var(--display);font-variation-settings:'SOFT' 100}
.lashtable tbody th span{display:block;font:400 var(--fs-0) var(--body);color:#4a3a20;margin-top:4px}
.lashtable td{font:500 var(--fs-2) var(--display);font-variation-settings:'SOFT' 100}
.lashtable td:nth-child(2){font-size:var(--fs-3)}
@media(max-width:560px){.lashtable th,.lashtable td{padding:14px 6px}.lashtable thead th{font-size:.8rem;line-height:1.25}.lashtable tbody th{font-size:1.25rem}.lashtable td,.lashtable td:nth-child(2){font-size:1.1rem}}

/* refill comb */
.refill{background:var(--honey);margin-top:clamp(48px,7vw,80px);padding:clamp(56px,8vw,96px) 0}
.refill__in{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:var(--gap);align-items:center}
.refill__head p{margin:.8em 0 1.4em;max-width:44ch}
.seg{display:inline-flex;gap:6px;flex-wrap:wrap}
.seg button{border:2px solid var(--ink);background:transparent;border-radius:999px;padding:.6em 1.25em;font:600 .95rem var(--body);cursor:pointer;color:var(--ink)}
.seg button:hover{background:rgba(255,255,255,.35)}
.seg button[aria-pressed=true]{background:var(--ink);color:var(--white)}
.refill__tool{display:flex;flex-direction:column;align-items:center;gap:28px}
.days{--s:clamp(38px,4.6vw,58px);display:grid;gap:0}
.wk{display:flex;align-items:center;gap:4px;margin-bottom:calc(var(--s)*-.25)}
.wk:nth-child(2n){padding-left:calc(var(--s)*.5 + 2px)}
.wk__l{position:absolute;left:-9999px}
.d{width:var(--s);height:calc(var(--s)*1.1547);clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);border:0;background:rgba(255,255,255,.3);font:600 .85rem var(--body);color:var(--brown);cursor:pointer;transition:background-color .2s}
.d:hover{background:rgba(255,255,255,.6)}
.d.on.b1{background:var(--white)}.d.on.b2{background:var(--comb)}.d.on.b3{background:var(--brown);color:var(--white)}
.d.on[aria-pressed=true]{background:var(--ink);color:var(--white)}
.d:focus-visible{outline:none;background:var(--ink);color:var(--white)}
.result{background:var(--white);border-radius:var(--r);padding:22px 26px;width:min(100%,480px);display:grid;gap:4px;justify-items:start}
.result b{font:500 var(--fs-3)/1.15 var(--display);font-variation-settings:'SOFT' 100}
.result span{color:#3b2c14;font-size:var(--fs-0);margin-bottom:12px}
@media(max-width:860px){.refill__in{grid-template-columns:1fr}.refill__tool{align-items:stretch}.days{justify-self:center;margin-inline:auto}.result{width:100%}}

/* brows + waxing */
.menus{display:grid;grid-template-columns:1fr 1fr;gap:var(--gap) clamp(32px,7vw,96px);padding-top:clamp(56px,8vw,96px)}
.prices{list-style:none;font-variant-numeric:tabular-nums}
.prices li{display:grid;grid-template-columns:1fr auto 4.2em;gap:14px;align-items:baseline;padding:13px 0;border-bottom:1px solid var(--line)}
.prices i{font-style:normal;font-size:var(--fs-0);color:#4a3a20}
.prices b{font:500 var(--fs-2) var(--display);font-variation-settings:'SOFT' 100;text-align:right}
@media(max-width:760px){.menus{grid-template-columns:1fr}}

/* about */
.about{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:var(--gap) clamp(32px,6vw,88px);align-items:center;padding-top:var(--sec)}
.about__photo{aspect-ratio:4/5;overflow:hidden;border-radius:var(--r);background:var(--comb-pale)}
.about__photo img{width:100%;height:100%;object-fit:cover;object-position:50% 18%}
.about__text>*+*{margin-top:1em}
.about__text p{max-width:58ch}
.about__own{font:500 var(--fs-2)/1.4 var(--display);font-variation-settings:'SOFT' 100;color:var(--honey-deep)}
.ph{border:2px dashed var(--honey);border-radius:12px;padding:14px 18px;color:#5a4626;font-size:var(--fs-0);background:var(--comb-pale)}
.about__quote{font-weight:600}
@media(max-width:760px){.about{grid-template-columns:1fr}.about__photo{max-width:340px}}

/* work */
.work{padding-top:var(--sec)}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(8px,1.4vw,16px);margin-top:28px}
.grid figure{position:relative}
.grid img,.phf>div{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:12px}
.grid .phf>div{aspect-ratio:3/2}
.phf>div{display:flex;align-items:flex-end;padding:18px;background:repeating-linear-gradient(120deg,var(--comb-pale) 0 14px,#FBEBC7 14px 28px);color:#5a4626;font-size:var(--fs-0);font-weight:500}
.grid figcaption{font-size:var(--fs-0);font-weight:600;margin-top:8px}
@media(max-width:560px){.grid{grid-template-columns:1fr 1fr}.phf>div{padding:12px;font-size:.85rem}}

/* reviews */
.reviews{background:var(--brown);color:var(--white);margin-top:var(--sec);padding:var(--sec) 0}
.reviews__score h2{font-size:var(--fs-3);font-weight:500}
.reviews__score .big{display:block;font-size:clamp(4.5rem,11vw,8rem);line-height:.9;color:var(--honey);margin-bottom:.12em}
.reviews__score p{color:var(--comb);margin-top:.4em}
.q p{font-family:var(--display);font-variation-settings:'SOFT' 100;font-size:var(--fs-2);line-height:1.45}
.q cite{display:block;font-style:normal;color:var(--comb);font-size:var(--fs-0);margin-top:.9em}
.q--lead{margin:clamp(40px,6vw,64px) 0 clamp(36px,5vw,56px);max-width:30em}
.q--lead p{font-size:clamp(1.45rem,2.7vw,2.1rem);line-height:1.3}
.q-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--gap);border-top:1px solid rgba(247,220,156,.25);padding-top:clamp(28px,4vw,44px)}
@media(max-width:760px){.q-row{grid-template-columns:1fr}}

/* policies */
.policy{padding-top:var(--sec)}
.policy dl{margin-top:28px;display:grid;grid-template-columns:1fr 1fr;gap:0 clamp(32px,6vw,80px)}
.policy dl>div{padding:20px 0;border-top:2px solid var(--ink)}
.policy dt{font:500 var(--fs-2) var(--display);font-variation-settings:'SOFT' 100;margin-bottom:.35em}
.policy dd{max-width:52ch;color:#2b2010}
@media(max-width:760px){.policy dl{grid-template-columns:1fr}}

/* visit */
.visit{padding-top:var(--sec)}
.visit__in{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--gap);align-items:stretch}
.addr{display:block;font:500 var(--fs-3)/1.25 var(--display);font-variation-settings:'SOFT' 100;margin:.6em 0 1.2em;text-decoration-color:var(--honey);text-decoration-thickness:2px;text-underline-offset:6px}
.hours{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;max-width:360px}
.hours th,.hours td{text-align:left;padding:7px 0;border-bottom:1px solid var(--line);font-weight:400}
.hours th{font-weight:600;padding-right:24px}
.map{border-radius:var(--r);overflow:hidden;min-height:380px;background:var(--comb-pale)}
.map iframe{width:100%;height:100%;min-height:380px;border:0;display:block}
@media(max-width:760px){.visit__in{grid-template-columns:1fr}.map,.map iframe{min-height:300px}}

/* contact */
.contact{padding:var(--sec) clamp(16px,4vw,40px);text-align:center}
.contact p{margin:.6em auto 1.6em;max-width:44ch}
.ways{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:12px 28px;margin-top:36px}
.ways a{display:inline-flex;align-items:center;gap:9px;text-decoration:none;font-weight:500;padding:6px 0}
.ways a:hover{text-decoration:underline;text-decoration-color:var(--honey);text-decoration-thickness:2px;text-underline-offset:5px}
.ways svg{width:20px;height:20px;fill:var(--honey-deep);flex:none}

/* footer */
.foot{background:var(--brown);color:var(--comb);text-align:center;padding:48px 16px 36px;font-size:var(--fs-0)}
.foot img{width:96px;height:96px;border-radius:50%;margin:0 auto 16px}
.foot__credit{margin-top:18px;opacity:.75;font-size:.8rem}

@media(prefers-reduced-motion:reduce){.cell{animation:none}html{scroll-behavior:auto}.btn,.d{transition:none}}

[id]{scroll-margin-top:80px}
