:root{--bg:#fdf8f3;--bg-deep:#f6efe6;--bg-cream:#f1e8d8;--surface:#fff;--surface-2:#fbf5ee;--ink:#1f1813;--ink-2:#4a3e35;--muted:#8a7d72;--muted-2:#b3a89d;--line:#ece2d4;--line-2:#e0d4c2;--primary:#c0604a;--primary-2:#a8485a;--primary-soft:#fbe8e0;--primary-tint:#fdf4f1;--primary-deep:#3d2226;--success:#2a6f4a;--success-soft:#dcecde;--warn:#b07b1c;--warn-soft:#fbf0d8;--shadow-sm:0 1px 2px #3c1e0a0a;--shadow-md:0 6px 18px #3c1e0a14;--shadow-lg:0 18px 42px #3c1e0a1f;--shadow-xl:0 30px 80px #3c1e0a2e;--r-sm:8px;--r-md:12px;--r-lg:18px;--r-xl:25px;--r-2xl:32px;--font-display:"Fraunces", Georgia, serif;--font-sans:"Geist", system-ui, sans-serif;--font-mono:"Geist Mono", ui-monospace, monospace;--maxw:1280px;--maxw-narrow:1040px;--gutter:32px;--header-h:72px}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font-sans);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-size:15px;line-height:1.5}button{cursor:pointer;color:inherit;background:0 0;border:0;padding:0;font-family:inherit}input,textarea,select{color:inherit;font-family:inherit}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.serif{font-family:var(--font-display);letter-spacing:-.015em;font-style:italic;font-weight:500}.mono{font-family:var(--font-mono)}.kicker{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:500}.eyebrow{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--primary);font-size:11px;font-weight:500}h1,h2,h3,h4{letter-spacing:-.02em;margin:0;line-height:1.15}.container{max-width:var(--maxw);padding:0 var(--gutter);margin:0 auto}.container.narrow{max-width:var(--maxw-narrow)}.row{align-items:center;gap:12px;display:flex}.row-spread{justify-content:space-between;align-items:center;gap:12px;display:flex}.col{flex-direction:column;gap:12px;display:flex}.muted{color:var(--muted)}.center{text-align:center}.divider{background:var(--line);height:1px}@media (width<=760px){:root{--gutter:20px;--header-h:60px}.hide-mobile{display:none!important}}.site-header{z-index:50;-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line);background:#fdf8f3db;position:sticky;top:0}.site-header .container{height:var(--header-h);align-items:center;gap:32px;display:flex}.wordmark{cursor:pointer;align-items:center;gap:8px;line-height:1;display:inline-flex}.wordmark img{width:auto;height:22px;display:block}.nav-main{gap:28px;display:flex}.nav-main a{color:var(--ink-2);cursor:pointer;padding:6px 0;font-size:14px;font-weight:500;position:relative}.nav-main a:hover,.nav-main a.active{color:var(--ink)}.nav-main a.active:after{content:"";background:var(--primary);border-radius:2px;height:2px;position:absolute;bottom:0;left:0;right:0}.header-right{align-items:center;gap:10px;margin-left:auto;display:flex}.lang-pill{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2);border:1px solid var(--line);border-radius:999px;padding:6px 10px;font-size:11px}.btn{background:var(--primary);color:#fff;letter-spacing:-.005em;white-space:nowrap;border-radius:12px;justify-content:center;align-items:center;gap:8px;height:48px;padding:0 22px;font-size:14.5px;font-weight:600;transition:filter .15s,transform .1s,background .15s;display:inline-flex}.btn:hover{filter:brightness(1.05)}.btn:active{transform:scale(.99)}.btn.block{width:100%;display:flex}.btn.outline{color:var(--ink);border:1px solid var(--line-2);background:0 0}.btn.outline:hover{background:var(--surface-2)}.btn.ghost{background:var(--surface-2);color:var(--ink)}.btn.dark{background:var(--primary-deep);color:#fff}.btn.dark:hover{filter:none;background:#2e191c}.btn.compact{border-radius:10px;height:40px;padding:0 16px;font-size:13.5px}.btn.large{border-radius:14px;height:56px;padding:0 28px;font-size:15.5px}.btn.huge{border-radius:16px;height:64px;padding:0 32px;font-size:16px}.btn:disabled{opacity:.4;cursor:default}.btn-link{color:var(--primary);cursor:pointer;align-items:center;gap:6px;font-size:14px;font-weight:600;display:inline-flex}.btn-link:hover{text-decoration:underline}.chip{background:var(--surface);border:1px solid var(--line);height:34px;color:var(--ink-2);white-space:nowrap;cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:0 14px;font-size:13px;font-weight:500;transition:all .15s;display:inline-flex}.chip:hover{border-color:var(--line-2);background:var(--surface-2)}.chip.active{background:var(--ink);color:#fff;border-color:var(--ink)}.badge{font-size:10px;font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;background:var(--ink);color:#fff;border-radius:4px;align-items:center;gap:4px;padding:4px 8px;font-weight:500;display:inline-flex}.badge.soft{background:var(--primary-soft);color:var(--primary-2)}.badge.success{background:var(--success-soft);color:var(--success)}.badge.outline{color:var(--ink-2);border:1px solid var(--line-2);background:0 0}.card{background:var(--surface);border-radius:var(--r-lg);border:1px solid var(--line)}.input-shell{background:var(--surface);border:1px solid var(--line);border-radius:12px;align-items:center;gap:10px;height:52px;padding:0 16px;display:flex}.input-shell:focus-within{border-color:var(--ink)}.input-shell input,.input-shell select{background:0 0;border:0;outline:0;flex:1;min-width:0;font-size:14.5px}.input-shell .input-icon{color:var(--muted);flex-shrink:0}.hero{background:radial-gradient(circle at 80% 10%, #c0604a1a, transparent 50%), radial-gradient(circle at 10% 90%, #a8485a0f, transparent 55%), var(--bg);padding:64px 0 56px;position:relative;overflow:hidden}.hero .container{position:relative}.hero-grid{grid-template-columns:1.05fr .95fr;align-items:center;gap:56px;display:grid}@media (width<=900px){.hero{padding:36px 0 40px}.hero-grid{grid-template-columns:1fr;gap:36px}}.hero h1{font-family:var(--font-display);letter-spacing:-.035em;color:var(--ink);font-size:clamp(48px,7vw,96px);font-weight:400;line-height:.98}.hero h1 em{color:var(--primary-deep);font-style:italic;font-weight:500}.hero h1 .accent{color:var(--primary);font-style:italic}.hero-lede{color:var(--ink-2);max-width:480px;margin-top:18px;font-size:18px;line-height:1.45}.hero-search{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-md);border-radius:22px;grid-template-columns:1.2fr 1fr 1fr auto;align-items:stretch;gap:4px;margin-top:32px;padding:8px;display:grid}.hero-search-cell{cursor:text;text-align:left;border-radius:16px;flex-direction:column;align-items:flex-start;gap:4px;min-width:0;padding:12px 18px;transition:background .15s;display:flex}.hero-search-cell:hover{background:var(--surface-2)}.hero-search-cell .hero-search-label{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);text-align:left;font-size:10px}.hero-search-cell input,.hero-search-cell select{color:var(--ink);text-align:left;background:0 0;border:0;outline:0;width:100%;padding:0;font-size:15px;font-weight:500}.hero-search-cta{background:var(--ink);color:#fff;border-radius:16px;justify-content:center;align-items:center;gap:8px;padding:0 28px;font-size:15px;font-weight:600;display:inline-flex}.hero-search-cta:hover{background:var(--primary-deep)}@media (width<=700px){.hero-search{background:var(--line);grid-template-columns:1fr;gap:1px;padding:1px}.hero-search-cell{background:var(--surface);border-radius:0}.hero-search-cta{border-radius:0;height:60px}}.hero-suggestions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:18px;font-size:13px;display:flex}.hero-suggest-pill{border:1px solid var(--line);color:var(--ink-2);cursor:pointer;background:#fff9;border-radius:999px;padding:6px 12px;font-size:13px}.hero-suggest-pill:hover{background:var(--surface);border-color:var(--line-2)}.hero-stats{gap:32px;margin-top:36px;display:flex}.hero-stat .num{font-family:var(--font-display);color:var(--ink);letter-spacing:-.02em;font-size:32px;font-style:italic;font-weight:500;line-height:1;display:block}.hero-stat .lbl{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-top:6px;font-size:10px;display:block}[data-hero=center] .hero-grid{text-align:center;grid-template-columns:1fr;max-width:880px;margin:0 auto}[data-hero=center] .hero-lede{margin-left:auto;margin-right:auto}[data-hero=center] .hero-suggestions,[data-hero=center] .hero-stats{justify-content:center}.marquee-strip{background:var(--primary-deep);color:#ffffffd9;font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;padding:14px 0;font-size:11px;overflow:hidden}.marquee-strip .track{white-space:nowrap;gap:48px;animation:38s linear infinite marquee;display:inline-flex}.marquee-strip .dot{color:var(--primary)}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.section{padding:80px 0}.section.tight{padding:56px 0}@media (width<=760px){.section{padding:56px 0}.section.tight{padding:40px 0}}.section-head{justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:32px;display:flex}.section-head .left{max-width:640px}.section-head h2{font-family:var(--font-display);letter-spacing:-.025em;margin-top:8px;font-size:clamp(34px,4vw,52px);font-weight:400}.section-head h2 em{color:var(--primary);font-style:italic;font-weight:500}.section-head p{color:var(--ink-2);max-width:540px;margin-top:12px;font-size:16px}@media (width<=760px){.section-head{flex-direction:column;align-items:flex-start}.section-head h2{font-size:30px}}.cat-grid{grid-template-columns:repeat(4,1fr);gap:20px;display:grid}@media (width<=1000px){.cat-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=700px){.cat-grid{grid-template-columns:repeat(2,1fr);gap:12px}}.cat-card{aspect-ratio:4/5;cursor:pointer;color:#fff;isolation:isolate;background-position:50%;background-size:cover;border-radius:18px;flex-direction:column;justify-content:flex-end;transition:transform .2s;display:flex;position:relative;overflow:hidden}.cat-card:after{content:"";z-index:1;background:linear-gradient(#0000 20%,#0000001a 50%,#000000a6 100%);position:absolute;inset:0}.cat-card:hover{transform:translateY(-3px)}.cat-card .cat-card-meta{z-index:2;justify-content:space-between;align-items:flex-end;gap:12px;padding:18px;display:flex;position:relative}.cat-card h3{font-family:var(--font-display);letter-spacing:-.01em;font-size:24px;font-style:italic;font-weight:500;line-height:1}.cat-card .count{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:#fffc;margin-top:6px;font-size:11px;display:block}.cat-card .arrow{width:36px;height:36px;color:var(--ink);background:#ffffffe6;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.salon-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}@media (width<=1000px){.salon-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.salon-grid{grid-template-columns:1fr}}.salon-card{background:var(--surface);cursor:pointer;border:1px solid var(--line);border-radius:18px;flex-direction:column;transition:transform .15s,box-shadow .15s;display:flex;overflow:hidden}.salon-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.salon-card .hero-img{aspect-ratio:4/3;background-position:50%;background-size:cover;position:relative}.salon-card .hero-overlay{justify-content:space-between;gap:8px;display:flex;position:absolute;top:12px;left:12px;right:12px}.salon-card .body{flex-direction:column;gap:10px;padding:18px 18px 20px;display:flex}.salon-card h3{letter-spacing:-.012em;font-size:19px;font-weight:600}.salon-card .tagline{color:var(--muted);margin-top:-4px;font-size:13px}.salon-card .meta-line{color:var(--muted);font-size:12px;font-family:var(--font-mono);align-items:center;gap:8px;display:flex}.salon-card .meta-line .dot{background:var(--muted-2);border-radius:50%;width:3px;height:3px}.salon-card .rating-pill{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0009;border-radius:999px;align-items:center;gap:5px;padding:4px 8px;font-size:12px;font-weight:600;display:inline-flex}.salon-card .next-slot{background:var(--success-soft);color:var(--success);font-size:12px;font-family:var(--font-mono);letter-spacing:.04em;border-radius:999px;align-self:flex-start;align-items:center;gap:6px;margin-top:6px;padding:6px 10px;font-weight:600;display:inline-flex}.pick-spread{grid-template-columns:1.1fr 1fr;align-items:stretch;gap:32px;display:grid}@media (width<=900px){.pick-spread{grid-template-columns:1fr}}.pick-spread .pick-image{aspect-ratio:5/6;background-position:50%;background-size:cover;border-radius:22px;min-height:380px;position:relative;overflow:hidden}.pick-spread .pick-text{flex-direction:column;justify-content:center;padding:0 8px;display:flex}.pick-spread .pick-text h2{font-family:var(--font-display);letter-spacing:-.025em;margin-top:14px;font-size:clamp(34px,4.2vw,56px);font-style:italic;font-weight:400;line-height:1.05}.pick-spread .pick-text .blockquote{font-family:var(--font-display);color:var(--ink-2);border-left:2px solid var(--primary);margin:26px 0;padding-left:16px;font-size:22px;font-style:italic;line-height:1.4}.pick-spread .pick-byline{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);align-items:center;gap:12px;margin-top:28px;font-size:11px;display:flex}.pick-spread .pick-byline .avatar{background:var(--primary-soft);width:36px;height:36px;color:var(--primary-2);font-family:var(--font-display);border-radius:50%;justify-content:center;align-items:center;font-size:16px;font-style:italic;font-weight:500;display:inline-flex}.app-band{background:var(--primary-deep);color:#fff;border-radius:28px;grid-template-columns:1.1fr 1fr;align-items:center;gap:56px;margin:32px 0;padding:64px 56px;display:grid;position:relative;overflow:hidden}@media (width<=900px){.app-band{grid-template-columns:1fr;padding:40px 28px}}.app-band:before{content:"";pointer-events:none;background:radial-gradient(circle,#c0604a66,#0000 60%);width:80%;height:160%;position:absolute;top:-30%;right:-20%}.app-band .left{z-index:2;position:relative}.app-band .eyebrow{color:var(--primary)}.app-band h2{font-family:var(--font-display);letter-spacing:-.025em;color:#fff;margin-top:14px;font-size:clamp(36px,4.2vw,56px);font-style:italic;font-weight:400;line-height:1.04}.app-band p{color:#ffffffbf;max-width:460px;margin-top:16px;font-size:16.5px;line-height:1.5}.app-band .store-buttons{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.store-btn{color:var(--primary-deep);text-align:left;cursor:pointer;background:#fff;border-radius:12px;align-items:center;gap:10px;min-width:168px;padding:10px 18px 10px 14px;font-size:13px;display:inline-flex}.store-btn .ico{font-size:26px}.store-btn .top{opacity:.65;font-size:10px;font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase}.store-btn .bot{font-size:15px;font-weight:600;line-height:1.1}.store-btn.dark{color:#fff;background:#000}.app-band-bullets{color:#ffffffd9;flex-direction:column;gap:12px;margin-top:28px;font-size:14px;display:flex}.app-band-bullets .b{align-items:flex-start;gap:10px;display:flex}.app-band-bullets .b svg{color:var(--primary);flex-shrink:0;margin-top:2px}.phone-mock{aspect-ratio:9/19;z-index:2;background:#1a1410;border-radius:44px;width:100%;max-width:360px;margin-left:auto;padding:10px;position:relative;box-shadow:0 50px 100px #0006,0 0 0 1px #ffffff14}.phone-mock-inner{background:var(--bg);border-radius:34px;width:100%;height:100%;position:relative;overflow:hidden}.phone-island{z-index:5;background:#000;border-radius:14px;width:80px;height:22px;position:absolute;top:10px;left:50%;transform:translate(-50%)}.phone-mock-content{flex-direction:column;gap:12px;padding:44px 16px 16px;display:flex}.phone-mock-content .phone-title{font-family:var(--font-display);color:var(--ink);letter-spacing:-.02em;margin-top:8px;font-size:26px;font-style:italic;font-weight:500}.phone-mock-content .phone-search{background:var(--surface);border:1px solid var(--line);height:38px;color:var(--muted);border-radius:10px;align-items:center;gap:6px;padding:0 10px;font-size:11px;display:flex}.phone-mock-card{background:var(--surface);border:1px solid var(--line);border-radius:12px;overflow:hidden}.phone-mock-card .img{background-position:50%;background-size:cover;height:70px}.phone-mock-card .meta{padding:8px 10px}.phone-mock-card .meta-title{font-size:12px;font-weight:600}.phone-mock-card .meta-line{font-family:var(--font-mono);color:var(--muted);letter-spacing:.1em;text-transform:uppercase;margin-top:2px;font-size:8px}.steps-row{grid-template-columns:repeat(3,1fr);gap:32px;display:grid}@media (width<=900px){.steps-row{grid-template-columns:1fr;gap:28px}}.step-card{flex-direction:column;gap:14px;display:flex}.step-card .num{font-family:var(--font-display);color:var(--primary);letter-spacing:-.03em;font-size:72px;font-style:italic;font-weight:400;line-height:1}.step-card h3{letter-spacing:-.015em;font-size:22px;font-weight:600}.step-card p{color:var(--ink-2);font-size:15px;line-height:1.55}.testi-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}@media (width<=900px){.testi-grid{grid-template-columns:1fr}}.city-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}@media (width<=900px){.city-grid{grid-template-columns:1fr 1fr}}@media (width<=600px){.city-grid{grid-template-columns:1fr}}.search-header{z-index:40;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);background:#fdf8f3eb;padding:20px 0 0;position:sticky;top:0}.route-soeg .site-header{position:static}.search-bar{background:var(--line);border:1px solid var(--line);border-radius:14px;grid-template-columns:1.2fr 1fr 1fr auto auto;gap:1px;padding:1px;display:grid;overflow:hidden}.search-bar>*{background:var(--surface);text-align:left;flex-direction:column;align-items:flex-start;gap:2px;min-width:0;padding:10px 14px;display:flex}.search-bar input,.search-bar select{color:var(--ink);text-align:left;background:0 0;border:0;outline:0;width:100%;font-size:14px;font-weight:500}.search-bar .ll{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);text-align:left;font-size:9.5px}.search-bar .cta{background:var(--ink);color:#fff;cursor:pointer;justify-content:center;align-items:center;padding:0 24px;font-size:14px;font-weight:600;display:inline-flex}@media (width<=760px){.search-bar{grid-template-columns:1fr 1fr}.search-bar .cta{grid-column:1/-1;padding:12px}}.filter-row{gap:8px;padding:14px 0;display:flex;overflow-x:auto}.filter-row::-webkit-scrollbar{display:none}.search-grid{grid-template-columns:1fr 460px;align-items:flex-start;gap:32px;display:grid}@media (width<=1100px){.search-grid{grid-template-columns:1fr 380px;gap:24px}}@media (width<=900px){.search-grid{grid-template-columns:1fr}.search-map-pane{display:none}}.search-results-head{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:18px;display:flex}.search-results-head h1{font-family:var(--font-display);letter-spacing:-.025em;font-size:36px;font-weight:400}.search-results-head h1 em{color:var(--primary);font-style:italic;font-weight:500}.search-result-row{background:var(--surface);border:1px solid var(--line);cursor:pointer;border-radius:16px;grid-template-columns:260px 1fr;gap:20px;margin-bottom:16px;transition:box-shadow .15s,transform .15s;display:grid;overflow:hidden}.search-result-row:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.search-result-row .img{aspect-ratio:4/3;background-position:50%;background-size:cover;position:relative}.search-result-row .info{flex-direction:column;gap:6px;padding:18px 20px 18px 4px;display:flex}.search-result-row .info h3{letter-spacing:-.012em;font-size:20px;font-weight:600}.search-result-row .info .desc{color:var(--ink-2);font-size:14px;line-height:1.4}.search-result-row .info .meta-line{font-family:var(--font-mono);letter-spacing:.08em;color:var(--muted);align-items:center;gap:10px;font-size:11px;display:flex}.search-result-row .info .meta-line .dot{background:var(--muted-2);border-radius:50%;width:3px;height:3px}.search-result-row .info .actions{justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:14px;display:flex}.search-result-row .price{font-family:var(--font-mono);color:var(--ink);font-size:13px;font-weight:500}.search-result-row .price .from{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-size:10px;display:block}@media (width<=640px){.search-result-row{grid-template-columns:1fr}.search-result-row .info{padding:16px 18px 18px}}.search-map-pane{top:calc(var(--header-h) + 140px);background:var(--surface-2);height:calc(100vh - var(--header-h) - 180px);border:1px solid var(--line);border-radius:18px;min-height:540px;position:sticky;overflow:hidden}.search-map-canvas-wrap{cursor:pointer;position:absolute;inset:0}.search-map-canvas-wrap.is-focused{cursor:default}.map-overlay-hint{color:#fff;font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;pointer-events:none;z-index:500;background:#1f1813eb;border-radius:999px;align-items:center;gap:8px;padding:9px 16px;font-size:11px;display:inline-flex;position:absolute;top:14px;left:50%;transform:translate(-50%);box-shadow:0 6px 18px #0000002e}.search-map-canvas{background:radial-gradient(circle at 30% 35%,#f7eedb 0,#0000 40%),radial-gradient(circle at 70% 60%,#ede1cc 0,#0000 50%),linear-gradient(135deg,#f1e5cd 0%,#e7d6b6 100%);position:absolute;inset:0}.search-map-canvas:before{content:"";opacity:.6;background:linear-gradient(90deg,#0000 22%,#fff 22% 23%,#0000 23%),linear-gradient(38deg,#0000 30%,#fff 30% 30.5%,#0000 30.5%),linear-gradient(#0000 55%,#fff 55% 55.6%,#0000 55.6%),linear-gradient(110deg,#0000 45%,#fff 45% 45.4%,#0000 45.4%);position:absolute;inset:0}.search-map-canvas:after{content:"";opacity:.55;background:linear-gradient(135deg,#c8e0d2,#a8c8b6);border-radius:40% 60% 50%;width:110px;height:80px;position:absolute;bottom:28%;left:16%;box-shadow:240px -50px 0 -10px #a8c8b68c,80px 90px 0 -16px #a8c8b680}.map-pin{cursor:pointer;z-index:2;flex-direction:column;align-items:center;display:inline-flex;position:absolute;transform:translate(-50%,-100%)}.map-pin .bubble{border:1.5px solid var(--ink);font-family:var(--font-mono);color:var(--ink);white-space:nowrap;background:#fff;border-radius:999px;padding:5px 10px;font-size:11px;font-weight:600;box-shadow:0 4px 10px #0000001f}.map-pin .stem{border-left:5px solid #0000;border-right:5px solid #0000;border-top:7px solid var(--ink);width:0;height:0;margin-top:-2px}.map-pin.active .bubble{background:var(--primary);color:#fff;border-color:var(--primary);transform:scale(1.06)}.map-pin.active .stem{border-top-color:var(--primary)}.search-map-real{position:absolute;inset:0}.search-map-real .leaflet-container{background:var(--surface-2);width:100%;height:100%;font:inherit}.search-map-real .leaflet-div-icon{background:0 0;border:0}.map-pin-icon{background:0 0!important;border:0!important}.map-pin-icon .map-pin{position:static;transform:translate(-50%,-100%)}.map-focus{height:calc(100vh - var(--header-h) - 140px);border:1px solid var(--line);background:var(--surface-2);border-radius:20px;min-height:600px;margin:16px 24px 32px;position:relative;overflow:hidden}.map-focus-sidedrawer{grid-template-columns:360px 1fr;display:grid}.map-focus-stage{background:var(--surface-2);position:relative;overflow:hidden}.map-focus-stage .search-map-canvas-wrap{position:absolute;inset:0}.map-focus-close{z-index:10;border:1px solid var(--line);font-size:12px;font-weight:600;font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;color:var(--ink);background:#fff;border-radius:999px;align-items:center;gap:6px;padding:9px 16px;display:inline-flex;position:absolute;top:16px;right:16px;box-shadow:0 4px 12px #0000001f}.map-focus-close:hover{background:var(--ink);color:#fff}.side-drawer{background:var(--surface);border-right:1px solid var(--line);flex-direction:column;display:flex;overflow-y:auto}.drawer-head{border-bottom:1px solid var(--line);background:var(--surface);z-index:2;justify-content:space-between;align-items:center;gap:10px;padding:16px 18px 12px;display:flex;position:sticky;top:0}.drawer-back{cursor:pointer;font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink);background:0 0;border:0;align-items:center;gap:6px;padding:0;font-size:11px;font-weight:600;display:inline-flex}.drawer-back:hover{color:var(--primary)}.drawer-list{flex-direction:column;gap:8px;padding:10px;display:flex}.drawer-stage{position:relative}.map-card{background:var(--surface);border:1px solid var(--line);cursor:pointer;border-radius:14px;gap:12px;padding:10px;transition:border-color .15s,box-shadow .15s;display:flex}.map-card.active{border-color:var(--primary);box-shadow:0 0 0 2px #c0604a2e}.map-card .img{background-position:50%;background-size:cover;border-radius:10px;flex-shrink:0;width:72px;height:72px}.map-card .info{flex-direction:column;flex:1;min-width:0;display:flex}.map-card .info h4{font-family:var(--font-display);letter-spacing:-.01em;color:var(--ink);margin-bottom:2px;font-size:16px;font-weight:500;line-height:1.2}.map-card .info .meta{color:var(--muted);margin-bottom:6px;font-size:12px}.map-card .info .bottom{justify-content:space-between;align-items:center;gap:8px;margin-top:auto;display:flex}.map-card .info .price{font-family:var(--font-mono);color:var(--ink);font-size:12px;font-weight:600}.map-card .info .slot{font-family:var(--font-mono);color:var(--primary);font-size:11px;font-weight:600}@media (width<=900px){.map-focus-sidedrawer{grid-template-rows:240px 1fr;grid-template-columns:1fr}.side-drawer{border-right:0;border-bottom:1px solid var(--line)}}.salon-detail-hero{border-radius:20px;grid-template-rows:1fr 1fr;grid-template-columns:2fr 1fr 1fr;gap:8px;height:480px;margin-top:18px;display:grid;position:relative;overflow:hidden}.salon-detail-hero .tile{cursor:pointer;background-position:50%;background-size:cover}.salon-detail-hero .tile:first-child{grid-row:1/3}@media (width<=760px){.salon-detail-hero{grid-template-rows:auto;grid-template-columns:1fr;height:auto}.salon-detail-hero .tile:first-child{aspect-ratio:16/10;grid-row:auto}.salon-detail-hero .tile:not(:first-child){display:none}}.salon-detail-grid{grid-template-columns:1fr 380px;align-items:flex-start;gap:48px;margin-top:36px;display:grid}@media (width<=1000px){.salon-detail-grid{grid-template-columns:1fr;gap:32px}}.salon-detail-head h1{font-family:var(--font-display);letter-spacing:-.025em;font-size:clamp(36px,4vw,56px);font-weight:400}.salon-detail-head h1 em{color:var(--primary);font-style:italic;font-weight:500}.salon-detail-head .sub{color:var(--ink-2);margin-top:8px;font-size:16px}.salon-detail-head .meta{color:var(--ink-2);flex-wrap:wrap;align-items:center;gap:16px;margin-top:16px;font-size:14px;display:flex}.salon-detail-head .meta .item{align-items:center;gap:6px;display:inline-flex}.salon-detail-head .meta .dot{background:var(--muted-2);border-radius:50%;width:3px;height:3px}.section-block{margin-top:48px}.section-block .head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:18px;display:flex}.section-block .head h2{font-family:var(--font-display);letter-spacing:-.02em;font-size:26px;font-weight:400}.section-block .head h2 em{color:var(--primary);font-style:italic}.service-list{border-top:1px solid var(--line)}.service-row{border-bottom:1px solid var(--line);cursor:pointer;align-items:center;gap:16px;padding:18px 0;transition:padding-left .15s;display:flex}.service-row:hover{padding-left:8px}.service-row .info{flex:1}.service-row h4{letter-spacing:-.01em;font-size:16px;font-weight:600}.service-row .desc{color:var(--muted);margin-top:4px;font-size:13px}.service-row .price{font-family:var(--font-mono);color:var(--ink);font-size:14px;font-weight:500}.service-row .duration{font-family:var(--font-mono);color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:11px}.service-row .book-btn{background:var(--surface-2);height:40px;color:var(--ink);border-radius:10px;align-items:center;gap:6px;padding:0 18px;font-size:13px;font-weight:600;display:inline-flex}.service-row:hover .book-btn{background:var(--primary);color:#fff}.staff-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}@media (width<=760px){.staff-grid{grid-template-columns:repeat(2,1fr)}}.staff-card{background:var(--surface);border:1px solid var(--line);text-align:center;border-radius:14px;padding:18px 14px}.staff-card .avatar{width:80px;height:80px;font-family:var(--font-display);color:var(--ink);background-position:50%;background-size:cover;border-radius:50%;justify-content:center;align-items:center;margin:0 auto 12px;font-size:30px;font-style:italic;font-weight:500;display:inline-flex}.staff-card h4{font-size:15px;font-weight:600}.staff-card .role{color:var(--muted);margin-top:2px;font-size:12px}.staff-card .rating{font-family:var(--font-mono);color:var(--ink);margin-top:8px;font-size:11px}.review-row{border-bottom:1px solid var(--line);padding:18px 0}.review-row:last-child{border-bottom:0}.review-row .head{align-items:center;gap:12px;display:flex}.review-row .head .avatar{background:var(--primary-soft);width:40px;height:40px;color:var(--primary-2);font-family:var(--font-display);border-radius:50%;justify-content:center;align-items:center;font-size:16px;font-style:italic;font-weight:500;display:inline-flex}.review-row .head .name{font-size:14px;font-weight:600}.review-row .head .date{color:var(--muted);font-size:12px;font-family:var(--font-mono);letter-spacing:.06em}.review-row .stars{color:#d4a020;letter-spacing:.1em;margin-top:2px;font-size:13px}.review-row .body{font-family:var(--font-display);color:var(--ink-2);margin-top:12px;font-size:17px;font-style:italic;line-height:1.45}.reviews-grid{grid-template-columns:repeat(2,1fr);gap:8px 32px;display:grid}@media (width<=760px){.reviews-grid{grid-template-columns:1fr}}.booking-card{background:var(--surface);border:1px solid var(--line);top:calc(var(--header-h) + 24px);box-shadow:var(--shadow-sm);border-radius:18px;padding:22px;position:sticky}.booking-card h3{font-family:var(--font-display);letter-spacing:-.015em;font-size:22px;font-style:italic;font-weight:500}.booking-card .rating-row{align-items:center;gap:8px;margin-top:6px;font-size:13px;display:flex}.booking-card .rating-row .stars{color:#d4a020}.booking-card .booking-meta{border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex-direction:column;gap:10px;margin:18px 0;padding:14px 0;display:flex}.booking-card .booking-meta .row{color:var(--ink-2);font-size:13px}.booking-card .booking-meta svg{color:var(--muted)}.hours-list{flex-direction:column;gap:6px;font-size:13px;display:flex}.hours-list .row{font-family:var(--font-mono);justify-content:space-between}.hours-list .row.today{color:var(--ink);font-weight:600}.salon-mini-map{border:1px solid var(--line);border-radius:14px;height:280px;position:relative;overflow:hidden}.salon-mini-map img{object-fit:cover;width:100%;height:100%}.flow-shell{grid-template-columns:1fr 380px;align-items:flex-start;gap:48px;margin-top:36px;display:grid}@media (width<=1000px){.flow-shell{grid-template-columns:1fr;gap:28px}}.flow-steps{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);flex-wrap:wrap;align-items:center;gap:16px;margin:16px 0 32px;font-size:11px;display:flex}.flow-step{align-items:center;gap:8px;display:inline-flex}.flow-step .n{background:var(--surface);border:1px solid var(--line);width:26px;height:26px;color:var(--muted);border-radius:50%;justify-content:center;align-items:center;font-size:12px;font-weight:600;display:inline-flex}.flow-step.active .n{background:var(--primary);border-color:var(--primary);color:#fff}.flow-step.active{color:var(--ink)}.flow-step.done .n{background:var(--ink);border-color:var(--ink);color:#fff}.flow-step.done{color:var(--ink)}.flow-step-bar{background:var(--line);flex:1;min-width:24px;height:1px}.flow-title{font-family:var(--font-display);letter-spacing:-.022em;font-size:clamp(28px,3.2vw,42px);font-weight:400}.flow-title em{color:var(--primary);font-style:italic;font-weight:500}.flow-subtitle{color:var(--ink-2);margin-top:8px;font-size:15px}.flow-error{background:var(--warn-soft);color:var(--warn);border-radius:10px;align-items:flex-start;gap:8px;margin:16px 0 0;padding:12px 14px;font-size:13px;display:flex}.hold-pill{background:var(--primary-tint);color:var(--primary-2);font-size:12px;font-family:var(--font-mono);letter-spacing:.04em;border-radius:999px;align-items:center;gap:6px;padding:6px 10px;font-weight:600;display:inline-flex}.cal-shell{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:22px}.cal-head{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.cal-head h3{font-family:var(--font-display);letter-spacing:-.015em;font-size:22px;font-style:italic;font-weight:500}.cal-nav-btn{background:var(--surface-2);border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.cal-nav-btn:disabled{opacity:.35;cursor:default}.cal-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.cal-day-label{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);text-align:center;padding:8px 0;font-size:10px}.cal-cell{aspect-ratio:1;cursor:pointer;border-radius:10px;justify-content:center;align-items:center;font-size:14px;font-weight:500;display:flex;position:relative}.cal-cell:hover{background:var(--surface-2)}.cal-cell.dim{color:var(--muted-2);cursor:default}.cal-cell.dim:hover{background:0 0}.cal-cell.has-event:after{content:"";background:var(--primary);border-radius:50%;width:4px;height:4px;position:absolute;bottom:6px}.cal-cell.today{color:var(--primary);font-weight:700}.cal-cell.selected{background:var(--ink);color:#fff}.cal-cell.selected:hover{background:var(--ink)}.cal-cell.unavailable{color:var(--muted-2);cursor:default;text-decoration:line-through}.cal-cell.unavailable:hover{background:0 0}.slot-grid{grid-template-columns:repeat(4,1fr);gap:8px;margin-top:18px;display:grid}@media (width<=600px){.slot-grid{grid-template-columns:repeat(3,1fr)}}.slot-pill{background:var(--surface);border:1px solid var(--line);height:44px;font-size:13px;font-weight:600;font-family:var(--font-mono);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;transition:all .15s;display:inline-flex}.slot-pill:hover{border-color:var(--line-2)}.slot-pill.selected{background:var(--ink);color:#fff;border-color:var(--ink)}.slot-pill.unavailable{opacity:.3;pointer-events:none}.booking-summary{background:var(--surface);border:1px solid var(--line);top:calc(var(--header-h) + 24px);border-radius:18px;padding:22px;position:sticky}.booking-summary .salon-block{border-bottom:1px solid var(--line);align-items:center;gap:12px;margin-bottom:16px;padding-bottom:16px;display:flex}.booking-summary .salon-block .thumb{background-position:50%;background-size:cover;border-radius:12px;flex-shrink:0;width:56px;height:56px}.booking-summary .salon-block h4{font-size:15px;font-weight:600}.booking-summary .salon-block .loc{color:var(--muted);margin-top:2px;font-size:12px}.booking-summary .line{justify-content:space-between;align-items:flex-start;gap:12px;padding:8px 0;font-size:14px;display:flex}.booking-summary .line .lbl{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:10px}.booking-summary .line .val{text-align:right;font-weight:500}.booking-summary .total{font-family:var(--font-display);border-top:1px solid var(--line);justify-content:space-between;align-items:baseline;margin-top:6px;padding-top:14px;font-size:28px;font-style:italic;font-weight:500;display:flex}.booking-summary .total .lbl{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:10px;font-style:normal;font-weight:500}.confirm-hero{text-align:center;padding:56px 0}.confirm-hero .check{background:var(--success-soft);width:80px;height:80px;color:var(--success);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 24px;display:inline-flex}.confirm-hero h1{font-family:var(--font-display);letter-spacing:-.025em;font-size:clamp(40px,5vw,68px);font-style:italic;font-weight:400}.confirm-hero p{color:var(--ink-2);margin-top:14px;font-size:17px}.confirm-card{background:var(--surface);border:1px solid var(--line);border-radius:18px;max-width:540px;margin:28px auto 0;padding:26px}.confirm-card .ref{font-family:var(--font-mono);color:var(--muted);letter-spacing:.1em;text-transform:uppercase;border-bottom:1px dashed var(--line-2);justify-content:space-between;align-items:center;padding-bottom:14px;font-size:12px;display:flex}.confirm-card .ref .code{color:var(--ink);font-weight:600}.site-footer{color:#ffffffb3;padding:0 var(--gutter);background:0 0;margin-top:48px}.site-footer>.container{background:var(--primary-deep);max-width:var(--maxw);border-radius:28px 28px 0 0;padding:72px 64px 40px}@media (width<=760px){.site-footer>.container{border-radius:22px 22px 0 0;padding:48px 28px 32px}}.site-footer .footer-grid{grid-template-columns:1.4fr repeat(4,1fr);gap:48px;margin-bottom:48px;display:grid}@media (width<=900px){.site-footer .footer-grid{grid-template-columns:1fr 1fr;gap:32px}}@media (width<=600px){.site-footer .footer-grid{grid-template-columns:1fr 1fr;gap:24px}.site-footer{padding:56px 0 28px}}.site-footer .footer-tag{font-family:var(--font-display);color:#fffc;max-width:280px;margin-top:12px;font-size:18px;font-style:italic;line-height:1.45}.site-footer .footer-col h4{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:#ffffff80;margin-bottom:14px;font-size:11px;font-weight:500}.site-footer .footer-col a{color:#ffffffd9;cursor:pointer;padding:4px 0;font-size:14px;display:block}.site-footer .footer-col a:hover{color:#fff}.site-footer .footer-legal{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:#ffffff80;border-top:1px solid #ffffff1f;justify-content:space-between;gap:16px;padding-top:24px;font-size:11px;display:flex}@media (width<=600px){.site-footer .footer-legal{flex-direction:column}}.mobile-interstitial{z-index:9999;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#1f18138c;flex-direction:column;justify-content:flex-end;animation:.25s fadeBg;display:flex;position:fixed;inset:0}@keyframes fadeBg{0%{opacity:0}to{opacity:1}}.mobile-interstitial-sheet{background:var(--bg);border-radius:26px 26px 0 0;flex-direction:column;gap:18px;padding:26px 24px 32px;animation:.3s slideUp;display:flex;position:relative}@keyframes slideUp{0%{transform:translateY(40%)}to{transform:translateY(0)}}.mobile-interstitial .close{background:var(--surface-2);width:36px;height:36px;color:var(--ink);border:1px solid var(--line);z-index:2;cursor:pointer;border-radius:50%;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:18px;right:18px}.mobile-interstitial-sheet h2{font-family:var(--font-display);letter-spacing:-.022em;text-align:center;font-size:34px;font-style:italic;font-weight:400;line-height:1.05}.mobile-interstitial-sheet h2 em{color:var(--primary)}.mobile-interstitial-sheet p{text-align:center;color:var(--ink-2);max-width:320px;margin:0 auto;font-size:15px;line-height:1.4}.mobile-interstitial-sheet .store-buttons{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.mobile-interstitial-sheet .feature-row{flex-direction:column;align-items:center;gap:12px;margin:8px 0;display:flex}.mobile-interstitial-sheet .feature-row .b{color:var(--ink-2);align-items:center;gap:10px;font-size:14px;display:flex}.mobile-interstitial-sheet .feature-row svg{color:var(--primary);flex-shrink:0}.mobile-interstitial-sheet .continue{text-align:center;font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);cursor:pointer;padding:8px;font-size:11px;display:block}.mobile-interstitial-sheet .continue:hover{color:var(--ink)}.smart-banner{z-index:60;background:var(--ink);color:#fff;align-items:center;gap:12px;padding:10px 16px;font-size:13px;display:flex;position:sticky;top:0}.smart-banner .ic{background:var(--primary);width:36px;height:36px;font-family:var(--font-display);color:#fff;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:18px;font-style:italic;font-weight:500;display:inline-flex}.smart-banner .text{flex:1;line-height:1.25}.smart-banner .text .t1{font-weight:600}.smart-banner .text .t2{opacity:.7;font-size:11px;font-family:var(--font-mono);letter-spacing:.06em}.smart-banner .get{background:var(--primary);color:#fff;cursor:pointer;border-radius:999px;padding:7px 14px;font-size:12px;font-weight:600}.smart-banner .close{color:#fff9;background:0 0;padding:4px}.auth-shell{background:var(--surface);border:1px solid var(--line);border-radius:22px;max-width:440px;margin:56px auto;padding:40px 36px}.auth-shell h1{font-family:var(--font-display);letter-spacing:-.02em;text-align:center;font-size:36px;font-style:italic;font-weight:400}.auth-shell .sub{text-align:center;color:var(--ink-2);margin-top:8px}.auth-shell .input-shell{margin-top:14px}.auth-shell .legal{color:var(--muted);text-align:center;margin-top:14px;font-size:11px;line-height:1.4}.auth-shell .divider-with-text{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);align-items:center;gap:12px;margin:18px 0;font-size:10px;display:flex}.auth-shell .divider-with-text:before,.auth-shell .divider-with-text:after{content:"";background:var(--line);flex:1;height:1px}.about-hero{text-align:center;background:var(--bg);padding:80px 0 56px}.about-hero h1{font-family:var(--font-display);letter-spacing:-.03em;font-size:clamp(48px,6vw,88px);font-weight:400;line-height:.98}.about-hero h1 em{color:var(--primary);font-style:italic;font-weight:500}.about-hero p{max-width:640px;color:var(--ink-2);margin:24px auto 0;font-size:19px;line-height:1.5}.stats-band{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(4,1fr);gap:24px;padding:32px 0;display:grid}@media (width<=760px){.stats-band{grid-template-columns:repeat(2,1fr)}}.stats-band .item .n{font-family:var(--font-display);color:var(--primary);letter-spacing:-.02em;font-size:48px;font-style:italic;font-weight:500;line-height:1}.stats-band .item .l{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-top:8px;font-size:11px}.category-hero{color:#fff;background-position:50%;background-size:cover;align-items:flex-end;height:380px;display:flex;position:relative;overflow:hidden}.category-hero:before{content:"";background:linear-gradient(#1f18131a,#1f181399);position:absolute;inset:0}.category-hero .container{padding-bottom:48px;position:relative}.category-hero h1{font-family:var(--font-display);color:#fff;margin-top:10px;font-size:clamp(48px,6vw,84px);font-style:italic;font-weight:500;line-height:1}.category-hero .eyebrow{color:#f3c8b5}.fade-in{animation:.25s fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.img-ph{background:repeating-linear-gradient(135deg, #1f18130a 0, #1f18130a 1px, transparent 1px, transparent 14px), var(--surface-2);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);justify-content:center;align-items:center;font-size:11px;display:flex}.skeleton{background:var(--surface-2);border-radius:12px;position:relative;overflow:hidden}.skeleton:after{content:"";background:linear-gradient(90deg,#0000,#fff9,#0000);animation:1.4s infinite shimmer;position:absolute;inset:0}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}
