:root{--m-bg: #0b0507;--m-bg-2: #160a0f;--m-bg-3: #1f0e15;--m-surface: rgba(32, 16, 22, .62);--m-surface-2: rgba(46, 24, 32, .72);--m-border: rgba(231, 166, 173, .16);--m-border-strong: rgba(231, 166, 173, .36);--m-ink: #f7ece6;--m-ink-dim: #d8c4bb;--m-muted: #a78f86;--gold: #e7c66a;--gold-deep: #c79a3c;--gold-soft: #f3d98a;--rose: #e7a6ad;--rose-deep: #b76e79;--rose-soft: #f4c8cc;--accent: var(--rose);--grad-gold: linear-gradient(135deg, #f3d98a 0%, #e7c66a 38%, #c79a3c 100%);--grad-rose: linear-gradient(135deg, #f4c8cc 0%, #e7a6ad 40%, #b76e79 100%);--grad-gold-rose: linear-gradient(120deg, #f3d98a 0%, #e7c66a 30%, #e7a6ad 70%, #b76e79 100%);--m-radius: 18px;--m-radius-sm: 12px;--m-shadow: 0 24px 60px -28px rgba(0, 0, 0, .85);--m-glow-rose: 0 0 0 1px rgba(231, 166, 173, .22), 0 18px 50px -22px rgba(183, 110, 121, .55);--m-maxw: 1200px;--m-font: "Montserrat", system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}*{box-sizing:border-box}html{background-color:var(--m-bg)}body{margin:0;font-family:var(--m-font);color:var(--m-ink);background:radial-gradient(1100px 520px at 18% -8%,rgba(231,166,173,.18),transparent 60%),radial-gradient(900px 460px at 92% 4%,rgba(231,198,106,.12),transparent 58%),linear-gradient(180deg,#160a0f 0%,#100810 46%,var(--m-bg) 100%);background-color:var(--m-bg);-webkit-font-smoothing:antialiased;overflow-x:hidden;min-height:100vh}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button{font-family:inherit;cursor:pointer}.m-app{position:relative;min-height:100vh;display:flex;flex-direction:column}.m-container{width:100%;max-width:var(--m-maxw);margin-inline:auto;padding-inline:20px}.m-gradient-text{background:var(--grad-gold-rose);-webkit-background-clip:text;background-clip:text;color:transparent}.m-eyebrow{text-transform:uppercase;letter-spacing:.32em;font-size:.72rem;font-weight:600;color:var(--rose)}.m-header{position:sticky;top:0;z-index:40;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:linear-gradient(180deg,#0b0507eb,#0b05079e);border-bottom:1px solid var(--m-border)}.m-header__row{display:flex;align-items:center;gap:18px;height:72px}.m-logo{display:flex;align-items:center;gap:12px}.m-logo__mark{width:40px;height:40px;flex:none}.m-logo__text{font-weight:800;letter-spacing:.18em;font-size:1.18rem}.m-logo__suffix{font-weight:500;letter-spacing:.28em;font-size:.62rem;color:var(--rose);display:block}.m-logo3d{width:42px;height:42px;flex:none;perspective:360px;display:inline-block}.m-logo3d__inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .95s cubic-bezier(.22,1,.36,1)}.m-logo:hover .m-logo3d__inner{transform:rotateY(360deg)}.m-logo3d__face{position:absolute;top:0;right:0;bottom:0;left:0;backface-visibility:hidden;display:grid;place-items:center}.m-logo3d__back{transform:rotateY(180deg)}.m-logo3d__back img{width:100%;height:100%;object-fit:contain}.m-heart-svg{width:100%;height:100%;filter:drop-shadow(0 0 7px rgba(231,166,173,.55))}.m-heart-emblem{position:absolute;width:60%;left:20%;top:22%;filter:brightness(0) opacity(.4);pointer-events:none}.m-header__spacer{flex:1}.m-header__actions{display:flex;align-items:center;gap:10px}.m-pill{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 16px;border-radius:999px;border:1px solid var(--m-border-strong);background:var(--m-surface);color:var(--m-ink);font-size:.86rem;font-weight:600;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.m-pill:hover{transform:translateY(-1px);border-color:var(--rose);box-shadow:var(--m-glow-rose)}.m-pill--ghost{background:transparent;border-color:var(--m-border)}.m-pill--gold{background:var(--grad-gold);color:#2a1606;border:none}.m-pill--rose{background:var(--grad-rose);color:#2a1010;border:none}.m-langswitch{display:inline-flex;border:1px solid var(--m-border-strong);border-radius:999px;overflow:hidden;background:transparent;padding:0;cursor:pointer;transition:border-color .16s ease}.m-langswitch:hover{border-color:var(--rose)}.m-langswitch span{height:40px;display:inline-flex;align-items:center;padding:0 14px;color:var(--m-muted);font-weight:700;font-size:.8rem;transition:background .16s ease,color .16s ease}.m-langswitch span.is-active{background:var(--grad-rose);color:#2a1010}.m-cityselect{position:relative}.m-cityselect__menu{position:absolute;top:calc(100% + 8px);left:0;min-width:220px;background:#190b11;border:1px solid var(--m-border-strong);border-radius:var(--m-radius-sm);box-shadow:var(--m-shadow);padding:6px;z-index:60}.m-cityselect__item{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:8px;font-size:.9rem}.m-cityselect__item:hover{background:var(--m-surface-2)}.m-cityselect__item span{color:var(--m-muted)}.m-crumbs{font-size:.82rem;color:var(--m-muted);padding:16px 0 4px;display:flex;gap:8px;flex-wrap:wrap}.m-crumbs a:hover{color:var(--rose)}.m-crumbs span.sep{opacity:.5}.m-hero{position:relative;padding:56px 0 32px}.m-hero__inner{max-width:720px}.m-hero h1{font-size:clamp(2.2rem,5.4vw,4rem);line-height:1.02;margin:14px 0 16px;font-weight:800;letter-spacing:-.01em}.m-hero p{font-size:clamp(1rem,1.6vw,1.22rem);color:var(--m-ink-dim);margin:0 0 26px;max-width:60ch}.m-hero__cta{display:flex;gap:12px;flex-wrap:wrap}.m-hero__canvas{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none}.m-stats{display:flex;gap:28px;margin-top:30px;flex-wrap:wrap}.m-stat__value{font-size:1.7rem;font-weight:800}.m-stat__label{font-size:.78rem;color:var(--m-muted);text-transform:uppercase;letter-spacing:.14em}.m-section{padding:30px 0}.m-section__head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:20px}.m-section__title{font-size:clamp(1.4rem,3vw,2rem);font-weight:800;margin:6px 0 0}.m-grid{display:grid;gap:18px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.m-grid--salons{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.m-card{position:relative;border-radius:var(--m-radius);overflow:hidden;background:var(--m-surface);border:1px solid var(--m-border);box-shadow:var(--m-shadow);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;display:flex;flex-direction:column}.m-card:hover{transform:translateY(-4px);border-color:var(--m-border-strong);box-shadow:var(--m-glow-rose)}.m-card__media{position:relative;aspect-ratio:3 / 4;overflow:hidden;background:#1a0d12}.m-card--salon .m-card__media{aspect-ratio:16 / 10}.m-card__img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.m-card:hover .m-card__img{transform:scale(1.05)}.m-card__badges{position:absolute;top:10px;left:10px;display:flex;gap:6px;flex-wrap:wrap}.m-badge{font-size:.66rem;font-weight:700;padding:4px 9px;border-radius:999px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);letter-spacing:.04em}.m-badge--verified{background:#e7c66aeb;color:#2a1606}.m-badge--online{background:#50c878e6;color:#062a14}.m-badge--premium{background:var(--grad-rose);color:#2a1010}.m-card__body{padding:14px 16px 16px;display:flex;flex-direction:column;gap:6px;flex:1}.m-card__name{font-weight:700;font-size:1.02rem}.m-card__meta{font-size:.82rem;color:var(--m-muted)}.m-card__price{margin-top:auto;font-weight:800;color:var(--gold-soft)}.m-card__price small{color:var(--m-muted);font-weight:500}.m-card__tags{display:flex;gap:6px;flex-wrap:wrap}.m-tag{font-size:.7rem;padding:3px 8px;border-radius:999px;border:1px solid var(--m-border);color:var(--m-ink-dim)}.m-filters{display:flex;gap:10px;flex-wrap:wrap;align-items:center;padding:6px 0 4px}.m-chip{height:38px;padding:0 15px;border-radius:999px;border:1px solid var(--m-border);background:var(--m-surface);color:var(--m-ink-dim);font-size:.82rem;font-weight:600;transition:all .16s ease}.m-chip:hover{border-color:var(--rose);color:var(--m-ink)}.m-chip[aria-pressed=true]{background:var(--grad-rose);color:#2a1010;border-color:transparent}.m-toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:12px}.m-search{flex:1 1 240px;min-width:180px;height:42px;padding:0 16px;border-radius:999px;border:1px solid var(--m-border-strong);background:var(--m-surface);color:var(--m-ink);font:inherit}.m-search::placeholder{color:var(--m-muted)}.m-search:focus,.m-select:focus{outline:none;border-color:var(--rose);box-shadow:0 0 0 3px #e7a6ad2e}.m-select{height:42px;padding:0 36px 0 14px;border-radius:999px;border:1px solid var(--m-border-strong);background:var(--m-surface);color:var(--m-ink);font:inherit;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--rose) 50%),linear-gradient(135deg,var(--rose) 50%,transparent 50%);background-position:calc(100% - 18px) center,calc(100% - 13px) center;background-size:5px 5px,5px 5px;background-repeat:no-repeat}.m-select option{background:#190b11;color:var(--m-ink)}.m-banners{position:relative;border-radius:var(--m-radius);overflow:hidden}.m-banners__track{display:flex;transition:transform .6s cubic-bezier(.22,1,.36,1)}.m-banner{min-width:100%;aspect-ratio:16 / 5;position:relative;background:var(--m-bg-3)}.m-banner img{width:100%;height:100%;object-fit:cover}.m-banner__caption{position:absolute;left:28px;bottom:24px;max-width:60%}.m-banner__caption h3{font-size:clamp(1.2rem,2.4vw,2rem);margin:0 0 6px}.m-banners__dots{position:absolute;bottom:14px;right:18px;display:flex;gap:7px}.m-banners__dots button{width:9px;height:9px;padding:0;border-radius:50%;border:none;background:#fff6}.m-banners__dots button[aria-pressed=true]{background:var(--rose);width:22px;border-radius:999px}.m-tg{border-radius:var(--m-radius);border:1px solid var(--m-border-strong);background:radial-gradient(600px 200px at 0% 0%,rgba(231,166,173,.16),transparent 60%),var(--m-surface-2);padding:28px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.m-tg__text h3{margin:0 0 6px;font-size:1.3rem}.m-tg__text p{margin:0;color:var(--m-ink-dim)}.m-prose{color:var(--m-ink-dim);line-height:1.7;max-width:80ch}.m-prose h2{color:var(--m-ink);font-size:1.4rem;margin:24px 0 10px}.m-prose p{margin:0 0 12px}.m-cities{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.m-citycard{padding:18px 18px 16px;border-radius:var(--m-radius-sm);border:1px solid var(--m-border);background:var(--m-surface);transition:all .2s ease}.m-citycard:hover{border-color:var(--rose);transform:translateY(-3px);box-shadow:var(--m-glow-rose)}.m-citycard__name{font-weight:700;font-size:1.05rem}.m-citycard__count{font-size:.8rem;color:var(--m-muted)}.m-footer{margin-top:40px;border-top:1px solid var(--m-border);background:#0b0507b3}.m-footer__row{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;padding:26px 0;color:var(--m-muted);font-size:.86rem}.m-footer a:hover{color:var(--rose)}.m-detail{display:grid;gap:28px;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:start;padding-top:20px}.m-gallery{display:grid;gap:10px;grid-template-columns:repeat(3,1fr)}.m-gallery__main{grid-column:1 / -1;aspect-ratio:4 / 3;border-radius:var(--m-radius);overflow:hidden;background:#1a0d12;position:relative;padding:0;border:none;cursor:zoom-in}.m-gallery__main img,.m-gallery__main video,.m-gallery img,.m-gallery video{width:100%;height:100%;object-fit:cover;display:block}.m-gallery__main img,.m-gallery__thumb img{transition:transform .5s ease}.m-gallery__main:hover img{transform:scale(1.04)}.m-gallery__zoom-hint{position:absolute;right:12px;bottom:12px;width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:#0b050799;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--gold-soft);font-size:1.1rem;border:1px solid var(--m-border-strong)}.m-gallery__play{position:absolute;top:0;right:0;bottom:0;left:0;margin:auto;width:56px;height:56px;display:grid;place-items:center;border-radius:50%;background:#0b05078c;color:#fff;font-size:1.3rem;pointer-events:none}.m-gallery__play--sm{width:30px;height:30px;font-size:.8rem}.m-gallery__thumb{position:relative;aspect-ratio:1;border-radius:var(--m-radius-sm);overflow:hidden;background:#1a0d12;padding:0;border:1px solid var(--m-border);cursor:pointer;transition:border-color .18s ease}.m-gallery__thumb:hover{border-color:var(--rose)}.m-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;display:flex;align-items:center;justify-content:center;background:#060306f2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:m-fade .2s ease}@keyframes m-fade{0%{opacity:0}to{opacity:1}}.m-lightbox__stage{max-width:min(94vw,1400px);max-height:82vh;display:grid;place-items:center;overflow:hidden}.m-lightbox__media{max-width:min(94vw,1400px);max-height:82vh;object-fit:contain;border-radius:8px;transition:transform .12s ease;-webkit-user-select:none;user-select:none;box-shadow:0 30px 90px -30px #000000e6}.m-lightbox__close{position:absolute;top:18px;right:22px;width:46px;height:46px;border-radius:50%;border:1px solid var(--m-border-strong);background:#140a0fb3;color:var(--m-ink);font-size:1.6rem;line-height:1;cursor:pointer;transition:all .16s ease}.m-lightbox__close:hover{border-color:var(--rose);color:var(--rose);transform:rotate(90deg)}.m-lightbox__counter{position:absolute;top:24px;left:24px;color:var(--m-ink-dim);font-size:.9rem;letter-spacing:.05em}.m-lightbox__nav{position:absolute;top:50%;transform:translateY(-50%);width:54px;height:54px;border-radius:50%;border:1px solid var(--m-border-strong);background:#140a0f99;color:var(--m-ink);font-size:2rem;line-height:1;cursor:pointer;transition:all .16s ease;z-index:2}.m-lightbox__nav:hover{border-color:var(--rose);background:#e7a6ad2e}.m-lightbox__nav--prev{left:18px}.m-lightbox__nav--next{right:18px}.m-lightbox__strip{position:absolute;bottom:14px;left:50%;transform:translate(-50%);display:flex;gap:8px;max-width:92vw;overflow-x:auto;padding:6px}.m-lightbox__strip button{flex:none;width:56px;height:56px;border-radius:8px;overflow:hidden;border:2px solid transparent;background:#1a0d12;padding:0;cursor:pointer;display:grid;place-items:center}.m-lightbox__strip button.is-active{border-color:var(--rose)}.m-lightbox__strip img{width:100%;height:100%;object-fit:cover}.m-lightbox__vbadge{color:var(--gold-soft)}@media (max-width: 560px){.m-gallery{grid-template-columns:repeat(3,1fr)}.m-lightbox__nav{width:44px;height:44px;font-size:1.5rem}.m-lightbox__strip{display:none}}.m-detail__panel{background:var(--m-surface);border:1px solid var(--m-border);border-radius:var(--m-radius);padding:22px}.m-detail h1{font-size:clamp(1.6rem,4vw,2.4rem);margin:0 0 6px}.m-detail__price{font-size:1.4rem;font-weight:800;color:var(--gold-soft);margin:10px 0}.m-kv{display:grid;grid-template-columns:auto 1fr;gap:8px 16px;font-size:.9rem;margin:14px 0}.m-kv dt{color:var(--m-muted)}.m-services{list-style:none;padding:0;margin:12px 0}.m-services li{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px dashed var(--m-border)}.m-services li span:last-child{color:var(--gold-soft);font-weight:700}.m-contact-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.m-pricetable{width:100%;border-collapse:collapse;font-size:.92rem}.m-pricetable th{text-align:left;padding:10px 12px;color:var(--m-muted);font-weight:600;border-bottom:1px solid var(--m-border-strong);font-size:.8rem;text-transform:uppercase;letter-spacing:.06em}.m-pricetable td{padding:11px 12px;border-bottom:1px dashed var(--m-border)}.m-pricetable td:first-child{color:var(--m-ink-dim)}.m-pricetable td:not(:first-child){color:var(--gold-soft);font-weight:700}.m-reviews{display:grid;gap:14px}.m-review{background:var(--m-surface);border:1px solid var(--m-border);border-radius:var(--m-radius-sm);padding:16px 18px}.m-review__head{display:flex;align-items:center;gap:12px;margin-bottom:6px;flex-wrap:wrap}.m-review__stars{color:var(--gold-soft);letter-spacing:.1em}.m-review__date{color:var(--m-muted);font-size:.82rem;margin-left:auto}.m-review p{margin:0;color:var(--m-ink-dim);line-height:1.6}.m-map{width:100%;height:360px;border:1px solid var(--m-border);border-radius:var(--m-radius)}.m-fav{position:absolute;top:10px;right:10px;z-index:3;width:38px;height:38px;border-radius:50%;border:1px solid var(--m-border-strong);background:#0b05078c;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--m-ink);font-size:1.05rem;display:grid;place-items:center;cursor:pointer;transition:all .16s ease}.m-fav:hover{border-color:var(--rose);transform:scale(1.08)}.m-fav.is-active{background:var(--grad-rose);color:#2a1010;border-color:transparent}.m-empty{text-align:center;padding:60px 20px;color:var(--m-muted)}.m-preloader{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;background:radial-gradient(700px 480px at 50% 42%,rgba(231,166,173,.14),transparent 62%),#07040a}.m-preloader__stage{position:relative;width:300px;height:300px;display:grid;place-items:center}.m-preloader__canvas{position:relative;z-index:2;width:300px;height:300px}.m-preloader__coin{position:absolute;z-index:1;width:168px;height:168px;border-radius:50%;background:#0a0608 url(/favicon-512.png) center / contain no-repeat;box-shadow:0 0 60px #e7c66a73;animation:m-coin-pulse 1.6s ease-in-out infinite}@keyframes m-coin-pulse{0%,to{transform:scale(.97);filter:brightness(.95) drop-shadow(0 0 12px rgba(231,198,106,.35))}50%{transform:scale(1.03);filter:brightness(1.22) drop-shadow(0 0 26px rgba(231,198,106,.6))}}.m-preloader__brand{font-weight:800;letter-spacing:.42em;font-size:1.3rem;color:var(--gold-soft);text-indent:.42em}.m-preloader__brand span{display:block;font-size:.6rem;letter-spacing:.5em;color:var(--rose);text-align:center;margin-top:6px;text-indent:.5em}@media (prefers-reduced-motion: reduce){.m-preloader__coin{animation:none}}@media (max-width: 880px){.m-detail{grid-template-columns:1fr}.m-header__row{height:62px}.m-logo__text{font-size:1.02rem}}@media (max-width: 560px){.m-header__hide-sm{display:none}.m-hero{padding-top:36px}.m-banner{aspect-ratio:16 / 9}.m-banner__caption{max-width:86%;left:16px;bottom:16px}}@media (max-width: 430px){.m-header__hide-xs{display:none}.m-header__row{gap:10px}.m-container{padding-inline:14px}}@media (prefers-reduced-motion: reduce){*{animation-duration:.001ms!important;transition-duration:.001ms!important}.m-card:hover{transform:none}}
