/* =====================================================================
   Luxury Beauty Studio — v4 "Apple · Glass"
   Clean system typography, calm neutral canvas with soft colour light,
   frosted-glass surfaces. Loaded after v3.css on every page.
   ===================================================================== */
:root{
  --sf:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","Helvetica Neue","Segoe UI",Roboto,Arial,sans-serif;
  --serif:var(--sf); --sans:var(--sf);
  --cream:#f5f5f7; --paper:#fbfbfd; --ink:#1d1d1f; --ink-2:#6e6e73; --ink-3:#86868b; --line:rgba(0,0,0,.09);
  --accent:#b27b58; --accent-d:#8f5d3e; --accent-l:#e7cbb8;
  --dark:#0b0b0c; --on-dark:#f5f5f7; --on-dark-2:rgba(245,245,247,.72);
  --glass:rgba(255,255,255,.58); --glass-strong:rgba(255,255,255,.74); --glass-edge:rgba(255,255,255,.75);
  --glass-dark:rgba(28,28,30,.55); --glass-dark-edge:rgba(255,255,255,.12);
  --blur:saturate(180%) blur(22px);
  --shadow-1:0 1px 1px rgba(0,0,0,.03),0 8px 24px -10px rgba(0,0,0,.12);
  --shadow-2:0 2px 4px rgba(0,0,0,.04),0 24px 60px -24px rgba(0,0,0,.25);
}

/* ---------- canvas: soft colour light behind the glass ---------- */
html{background:var(--cream)}
body{background:var(--cream)!important;color:var(--ink);font-family:var(--sf);-webkit-font-smoothing:antialiased;letter-spacing:-.003em}
body::before{content:"";position:fixed;inset:-10vmax;z-index:-1;pointer-events:none;
  background:
    radial-gradient(38vmax 30vmax at 12% 18%,rgba(232,190,166,.45),transparent 70%),
    radial-gradient(34vmax 28vmax at 88% 12%,rgba(210,196,232,.40),transparent 70%),
    radial-gradient(40vmax 34vmax at 80% 78%,rgba(246,214,196,.42),transparent 70%),
    radial-gradient(36vmax 30vmax at 18% 88%,rgba(200,216,230,.35),transparent 70%)}
body::after{display:none}
main > section:not(.price-section):not(.video-bg-section),.sp-intro,.sp-services,.sp-process,.sp-faq,.sp-other,.sp-related,.sp-contraindications,.course-section,.elite-gallery,#services,.master-section{background:transparent!important}

/* ---------- typography ---------- */
h1,h2,h3,h4,.section-title,.sec-head h2,.hero-title,.price-aside h2,.course-title h2,.elite-gallery-title,.master-title,.sp-section-title,.service-content h3{
  font-family:var(--sf)!important;font-style:normal!important;font-weight:600!important;letter-spacing:-.035em!important;line-height:1.04}
h3{letter-spacing:-.02em!important}
em,.hero-sub,.about-quote,.video-overlay p,.feature-number,.price-item .service-price,.sf-logo,.logo-line1,.dropdown-section-label{font-style:normal!important}
p,li{color:inherit}
.eyebrow{font-family:var(--sf);font-weight:600;font-size:12px;letter-spacing:.06em;color:var(--accent-d)!important}
main > section:not(.hero) .eyebrow::before{display:none}
.logo-line1{font-family:var(--sf)!important;font-weight:600;letter-spacing:-.02em}
.logo-line2{letter-spacing:.28em}

/* ---------- buttons: calm, sentence case ---------- */
.btn,.master-btn,.service-actions .btn,.sp-hero-btn,.sp-book-btn,.sp-submit-btn,.btn-cta,.btn-home,.btn-read,button[type=submit]{
  font-family:var(--sf)!important;text-transform:none!important;letter-spacing:-.01em!important;font-weight:500!important;font-size:15px!important;border-radius:15px!important}
.btn-primary,.btn-dark{background:var(--ink)!important;color:#fff!important;border-color:var(--ink)!important}
.btn-primary:hover{background:#000!important}
.btn-accent,.btn-cta,.sp-hero-btn{background:var(--accent-d)!important;color:#fff!important}
.btn-ghost{background:var(--glass)!important;backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);border:1px solid var(--glass-edge)!important;color:var(--ink)!important;box-shadow:var(--shadow-1)}
.btn-ghost:hover{background:var(--glass-strong)!important}
.btn-ghost-light{background:rgba(255,255,255,.1)!important;border:1px solid rgba(255,255,255,.22)!important;color:#fff!important;backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur)}
.link-arrow{text-transform:none!important;letter-spacing:-.01em!important;font-size:15px!important;font-weight:500;color:var(--accent-d)!important;border-bottom:0!important}
.link-arrow svg{width:16px;height:16px}

/* ---------- glass header (floating) ---------- */
.navbar,.navbar.scrolled{top:10px;left:12px;right:12px;height:60px;padding:0 10px 0 22px;border-radius:15px;
  background:rgba(255,255,255,.55)!important;backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);
  border:1px solid var(--glass-edge);box-shadow:0 8px 30px -12px rgba(0,0,0,.18)}
.nav-menu>a,.nav-dropdown-trigger{text-transform:none!important;letter-spacing:-.01em!important;font-size:14px!important;font-weight:500!important}
.nav-menu>a::after,.nav-dropdown-trigger::after{display:none}
.nav-menu>a:hover,.nav-dropdown:hover .nav-dropdown-trigger{color:var(--accent-d)}
.navbar .btn,.navbar .header-cta,.navbar .nav-cta{height:42px!important;font-size:14px!important}
.nav-icon,.lang-btn{background:rgba(255,255,255,.5)!important;border:1px solid var(--glass-edge)!important}
.nav-dropdown-menu,.lang-menu{background:rgba(255,255,255,.72)!important;backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);border:1px solid var(--glass-edge)!important;box-shadow:var(--shadow-2)!important}
@media (min-width:981px){.nav-dropdown-menu{background:rgba(255,255,255,.78)!important}
  .nav-dropdown-menu .dropdown-section-label{font-weight:600;font-size:17px;letter-spacing:-.02em}}
@media (max-width:980px){.navbar,.navbar.scrolled{top:8px;left:8px;right:8px;height:56px;padding:0 8px 0 16px}}
.mobile-menu{background:rgba(12,12,13,.86)!important;backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur)}
.mobile-menu a,.mobile-dropdown-title{font-family:var(--sf)!important;font-style:normal!important;letter-spacing:-.02em}

/* ---------- HERO: photo full height under the glass bar, text fills the space ---------- */
.hero-badge{display:none!important}
@media (min-width:981px){
  .hero.hero-split{padding-top:0}
  .hero-media{height:100vh;height:100svh;min-height:620px}
  .hero-panel{justify-content:center;padding:100px clamp(32px,5vw,110px) 60px}
  .hero-panel-inner{max-width:880px;width:100%;text-align:center;display:flex;flex-direction:column;align-items:center}
  .hero-split .eyebrow{justify-content:center}
  .hero-split .eyebrow::before{display:none}
  .hero-title{font-size:clamp(84px,9.6vw,184px)!important;letter-spacing:-.05em!important;line-height:.92!important;margin:18px 0 22px!important}
  .hero-sub{font-family:var(--sf)!important;font-size:clamp(20px,1.6vw,26px)!important;color:var(--ink-2)!important;max-width:720px!important;line-height:1.4!important;letter-spacing:-.015em}
  .hero-split h1{border-top:0!important;padding-top:0!important;max-width:none!important;font-size:17px!important;font-weight:500!important;color:var(--ink)!important;margin:0 0 30px!important}
  .hero-split .hero-cta{justify-content:center}
  .hero-split .hero-cta .btn{height:54px!important;padding:0 30px!important}
  .hero-split .hero-tags{justify-content:center;margin-top:34px}
}
.hero-split .hero-tags span{background:var(--glass)!important;backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);border:1px solid var(--glass-edge)!important;color:var(--ink-2);border-radius:15px;font-size:13px}
@media (max-width:980px){
  .hero-title{font-size:clamp(56px,16vw,84px)!important;letter-spacing:-.05em!important}
  .hero-sub{font-family:var(--sf)!important;font-size:18px!important}
  .hero-split h1{border-top:0!important;padding-top:0!important}
}

/* ---------- glass surfaces ---------- */
#services .service-card,.feature-item,.faq-item,.sp-step,.sp-related-link,.sp-why-card,.sp-other-card,.post-card,.featured-card,.sidebar-widget,.author-widget,.related-card,.article-wrapper,
.course-advantages__item,.course-result__item,.review-item,.program-item,.ab-card,body.v2.p-booking .salon-card,body.v2.p-booking .service-item,body.v2.p-booking .calendar-wrap,body.v2.p-booking .summary-box{
  background:var(--glass)!important;backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);
  border:1px solid var(--glass-edge)!important;box-shadow:var(--shadow-1)!important;border-radius:15px!important}
#services .service-card:hover,.ab-card:hover,.sp-related-link:hover,.post-card:hover,.sp-other-card:hover{box-shadow:var(--shadow-2)!important;background:var(--glass-strong)!important}
#services .service-card .service-price,.service-num{background:rgba(255,255,255,.7)!important;backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);border:1px solid var(--glass-edge)!important;color:var(--ink)!important;font-family:var(--sf)!important}
.service-num{font-style:normal!important;font-size:12px!important}

/* dark sections: deep black with dark glass */
.price-section,.sp-cta,body.v2.p-kurs .contact-section{background:var(--dark)!important}
.price-section::before{background:radial-gradient(closest-side,rgba(178,123,88,.28),transparent)!important}
.price-list,.course-description{background:var(--glass-dark)!important;backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);border:1px solid var(--glass-dark-edge)!important;box-shadow:0 30px 80px -30px rgba(0,0,0,.6)!important}
.price-item .service-price{font-family:var(--sf)!important;font-weight:500;letter-spacing:-.02em}
.price-group{font-family:var(--sf)!important;letter-spacing:.06em!important}
.contact-card{background:linear-gradient(160deg,#151517,#0b0b0c)!important;border:1px solid rgba(255,255,255,.08)}
.contact-form,.sp-cta-form,body.v2.p-kurs .contact-form{background:rgba(255,255,255,.9)!important;backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur)}
.site-footer{background:var(--dark)!important}
.sf-word{font-family:'Playfair Display',Georgia,serif!important;font-style:italic!important;font-weight:500!important}

/* glass sheet for the booking popup + modal */
#popup .popup-content{background:rgba(255,255,255,.82)!important;backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);border:1px solid var(--glass-edge)}
#popup h3{font-family:var(--sf)!important;font-weight:600!important;letter-spacing:-.03em!important}

/* section rhythm: Apple-style roomy, centred headings */
.sec-head h2,#services .sec-head h2{font-size:clamp(44px,5.2vw,88px)!important}
.feature-number{font-family:var(--sf)!important;font-weight:600;color:var(--accent-d)}
.feature-item h3,.feature-item .feature-title{font-weight:600!important}
.master-text > p:first-of-type{font-family:var(--sf)!important;font-weight:500;letter-spacing:-.015em}
.marquee{background:var(--dark)!important}
.marquee-track span{font-family:var(--sf)!important;font-weight:500!important;letter-spacing:-.02em!important}
.video-overlay p{font-family:var(--sf)!important;font-weight:600;letter-spacing:-.04em}

/* ---------- mobile bar: glass, call · telegram · book ---------- */
@media (max-width:980px){
  .m-bar{left:10px;right:10px;bottom:max(10px,env(safe-area-inset-bottom));padding:8px;gap:8px;border-radius:15px;
    background:rgba(255,255,255,.62)!important;backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);
    border:1px solid var(--glass-edge)!important;box-shadow:0 12px 40px -12px rgba(0,0,0,.3)}
  .m-bar a{height:48px;border-radius:12px!important;font-family:var(--sf);text-transform:none;letter-spacing:-.01em;font-size:15px;font-weight:500}
  .m-bar-call,.m-bar-tg{flex:0 0 52px!important;width:52px!important;padding:0!important;background:rgba(255,255,255,.7)!important;border:1px solid var(--line)!important;color:var(--ink)!important}
  .m-bar-tg{color:#229ED9!important}
  .m-bar svg{width:20px;height:20px}
  .m-bar.hide,body:has(.hero-split) .m-bar:not(.show){transform:translateY(130%)}
  body:has(.m-bar) .site-footer{padding-bottom:calc(84px + env(safe-area-inset-bottom))}
}
.m-bar-tg{display:none}
@media (max-width:980px){.m-bar-tg{display:flex}}

/* ---------- inner pages ---------- */
body.v2 .sp-hero{background:var(--dark)!important}
body.v2 .sp-hero h1{font-family:var(--sf)!important;font-weight:600!important;letter-spacing:-.04em!important}
body.v2 .hero.hero-intro{background:transparent!important;padding-top:130px}
body.v2 .blog-hero,body.v2 .article-hero{border-radius:15px}
body.v2 main,body.v2 .article-wrapper,body.v2 .blog-layout{font-family:var(--sf)}
body.v2 .article-content{font-family:var(--sf)}
body.v2 .sp-step-num{background:rgba(255,255,255,.8)!important;font-family:var(--sf)!important;font-style:normal!important;font-size:15px!important;font-weight:600!important}
body.v2 .blog-cats{background:rgba(255,255,255,.6)!important;backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur)}
body.v2 .sp-related,body.v2 .sp-contraindications{background:transparent!important}

/* ---------- ABOUT page ---------- */
.ab-hero{padding:150px 0 40px;text-align:center}
.ab-hero .wrap{max-width:1100px;margin:0 auto;padding-inline:var(--gut,20px)}
.ab-hero .eyebrow{justify-content:center}
.ab-hero h1{font-size:clamp(44px,6.4vw,104px);margin:18px 0 20px}
.ab-sub{font-size:clamp(18px,1.6vw,24px);color:var(--ink-2);max-width:720px;margin:0 auto;letter-spacing:-.015em;line-height:1.45}
body.p-about #about{padding:60px 0 40px!important;background:transparent!important}
body.p-about #about .about-photo img{border-radius:15px!important}
@media (min-width:1101px){
  body.p-about #about .wrap{padding-left:var(--gut)!important}
  body.p-about #about .about-photo{min-height:min(84vh,900px)}
}
.ab-what{padding:80px 0 120px}
.ab-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.ab-card{display:flex;flex-direction:column;gap:12px;padding:32px 30px;color:var(--ink);transition:transform .5s var(--ease),box-shadow .4s}
.ab-card:hover{transform:translateY(-4px)}
.ab-num{font-size:13px;font-weight:600;color:var(--accent-d)}
.ab-card h3{font-size:clamp(26px,2.2vw,34px);margin:0}
.ab-card p{color:var(--ink-2);flex:1;margin:0;line-height:1.6}
.ab-cta{margin-top:56px;padding:44px clamp(24px,4vw,64px);display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;border-radius:15px;
  background:var(--dark);color:var(--on-dark);box-shadow:var(--shadow-2)}
.ab-cta p{margin:0;font-size:clamp(24px,2.6vw,40px);font-weight:600;letter-spacing:-.03em}
.ab-cta .btn{background:#fff!important;color:var(--ink)!important;height:54px;padding:0 28px}
@media (max-width:900px){.ab-cards{grid-template-columns:1fr}.ab-hero{padding:120px 0 20px}}
.course-description{background:linear-gradient(160deg,#18181a,#0b0b0c)!important;border:1px solid rgba(255,255,255,.08)!important}
.course-description .btn-primary{background:var(--accent-d)!important;border-color:var(--accent-d)!important;color:#fff!important}
.course-description .btn-ghost{background:rgba(255,255,255,.08)!important;border:1px solid rgba(255,255,255,.25)!important;color:#fff!important;box-shadow:none}

/* =====================================================================
   v4.1 — softer blacks, one typeface everywhere, clear secondary buttons
   ===================================================================== */
:root{--ink:#2c2c2e;--ink-2:#6e6e73;--dark:#2a2a2d;--dark-2:#232326}
/* one typeface on every element (icons and the signature name excepted) */
body *:not(i):not([class*="fa-"]):not(svg):not(svg *):not(.hero-name-overlay):not(.hero-name-overlay *):not(.about-sign):not(.sf-word){font-family:var(--sf)!important}
body *:not(.hero-name-overlay):not(.hero-name-overlay *):not(.about-sign):not(.sf-word):not(i){font-style:normal!important}
/* softer dark surfaces */
.price-section,.sp-cta,body.v2.p-kurs .contact-section,.site-footer,.marquee,body.v2 .sp-hero{background:var(--dark)!important}
.contact-card,.course-description{background:linear-gradient(160deg,#36363a,#2a2a2d)!important;border:1px solid rgba(255,255,255,.08)!important}
.price-list{background:rgba(255,255,255,.06)!important}
.btn-primary,.btn-dark,.m-bar-book{background:var(--ink)!important;border-color:var(--ink)!important}
.btn-primary:hover{background:#000!important}
/* secondary buttons ("Роботи", "Прайс", "Детальніше") clearly look like buttons */
.btn-ghost,.view-works,.master-btn{background:rgba(178,123,88,.10)!important;border:1px solid rgba(143,93,62,.45)!important;color:var(--accent-d)!important;box-shadow:none!important;backdrop-filter:none}
.btn-ghost:hover,.view-works:hover,.master-btn:hover{background:var(--accent-d)!important;border-color:var(--accent-d)!important;color:#fff!important}
.price-section .btn-ghost-light,.price-aside .view-works,.contact-card .btn-ghost,.course-description .btn-ghost{background:rgba(255,255,255,.12)!important;border:1px solid rgba(255,255,255,.4)!important;color:#fff!important}
/* "Про майстра": calm text, no random bold, clean fade */
.master-text strong,.master-text b{font-weight:inherit!important;color:inherit!important}
.master-text > p:first-of-type{font-weight:400!important;font-size:clamp(20px,1.6vw,24px)!important;color:var(--ink)!important;line-height:1.55}
.master-text{color:var(--ink-2)}
.master-text::after{display:none!important}
.master-text:not(.expanded){-webkit-mask-image:linear-gradient(#000 65%,transparent);mask-image:linear-gradient(#000 65%,transparent)}
.master-title{font-size:clamp(48px,5vw,88px)!important}
/* header sticks to the top edge (full width, glass) */
.navbar,.navbar.scrolled{top:0!important;left:0!important;right:0!important;border-radius:0!important;border:0!important;border-bottom:1px solid rgba(0,0,0,.06)!important;height:64px;padding:0 24px 0 32px;background:rgba(250,250,252,.72)!important;box-shadow:none!important}
@media (max-width:980px){.navbar,.navbar.scrolled{height:58px;padding:0 10px 0 16px}}
@media (min-width:981px){.hero.hero-split{padding-top:64px}.hero-media{height:calc(100svh - 64px)}}
@media (max-width:980px){.hero.hero-split{padding-top:58px}}
/* inner pages: same calm buttons as the homepage */
html body .btn,html body.v2 .btn,html body.v2 [class*="-btn"],html body.v2 button,html body.v2 .btn-cta,html body.v2 .sp-related-link,html body .nav-cta{text-transform:none!important;letter-spacing:-.01em!important;font-weight:500!important}
html body.v2 .btn,html body.v2 [class*="-btn"]:not(.lang-btn):not(.mobile-menu-close),html body.v2 .btn-cta{font-size:15px!important}
html body.v2 .sp-service-tag,html body.v2 .article-cat-label,html body.v2 .featured-cat,html body.v2 .blog-hero-label{letter-spacing:.06em!important}

/* =====================================================================
   v4.2 — tags, aligned buttons, cleaner price card, contact form, footer
   ===================================================================== */
@media (max-width:980px){
  .hero-split .hero-tags{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .hero-split .hero-tags span{text-align:center;padding:11px 10px}
  .hero-split .hero-tags span:last-child:nth-child(odd){grid-column:1/-1}
}
/* price: no photo behind the intro, buttons the same size */
.price-section .price-img{display:none!important}
.price-section .price-aside{min-height:0!important;height:auto!important;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);box-shadow:none!important;justify-content:flex-start}
.price-section .price-aside .price-actions{display:grid!important;grid-template-columns:1fr;gap:10px;width:100%;max-width:340px}
.price-section .price-aside .price-actions .btn{width:100%;justify-content:center;height:52px}
@media (min-width:1101px){.price-section .price-aside{position:sticky;top:96px;padding:48px}}
/* all paired buttons line up */
.service-actions{display:grid!important;grid-template-columns:1fr 1fr;gap:8px}
.service-actions .btn{width:100%;justify-content:center}
.hero-split .hero-cta .btn,.course-btns .btn{min-width:180px;justify-content:center}
@media (max-width:620px){.hero-split .hero-cta{display:grid!important;grid-template-columns:1fr;gap:10px}.hero-split .hero-cta .btn{width:100%}}

/* contact form at the end of the page */
.contact-form{background:#fff!important;border:0!important;border-radius:15px!important;padding:clamp(26px,3vw,44px)!important;box-shadow:0 30px 80px -30px rgba(0,0,0,.45)!important}
.contact-form h3,.contact-form .form-title{font-size:clamp(28px,2.4vw,36px)!important;letter-spacing:-.03em!important;margin:0 0 6px!important;color:var(--ink)!important}
.contact-form p{color:var(--ink-2)!important}
.contact-form label:not(.sr-only){display:block;font-size:13px!important;font-weight:500!important;letter-spacing:0!important;text-transform:none!important;color:var(--ink-2)!important;margin:14px 0 6px!important}
.contact-form input:not(.hp),.contact-form textarea,#popup input:not(.hp),#popup textarea,.sp-cta-form input,.sp-cta-form textarea,.sp-cta-form select,body.v2.p-kurs .contact-form input,body.v2.p-kurs .contact-form textarea{
  background:#f2f2f5!important;border:1px solid transparent!important;border-radius:12px!important;padding:15px 16px!important;margin:0 0 4px!important}
.contact-form input:focus,.contact-form textarea:focus,#popup input:focus,#popup textarea:focus{background:#fff!important;border-color:var(--accent)!important}
.contact-form button[type=submit],#popup button[type=submit],.sp-cta-form button[type=submit]{width:100%;height:54px;margin-top:18px;background:var(--ink)!important;color:#fff!important;border:0;border-radius:12px!important;font-size:16px!important}
.contact-form button[type=submit]:hover{background:var(--accent-d)!important}

/* footer: no empty band at the bottom on phones */
@media (max-width:980px){
  body:has(.m-bar) .site-footer{padding-bottom:calc(16px + env(safe-area-inset-bottom))!important}
  .site-footer .footer-content{padding-top:20px;padding-bottom:20px;gap:6px}
}

/* =====================================================================
   BOOKING — warm glass dashboard
   ===================================================================== */
body.v2.p-booking{background:#b8afa6!important}
body.v2.p-booking::before{inset:0;background:
  radial-gradient(60vmax 40vmax at 15% 10%,rgba(255,255,255,.55),transparent 60%),
  radial-gradient(50vmax 40vmax at 90% 20%,rgba(214,196,180,.9),transparent 65%),
  radial-gradient(60vmax 50vmax at 70% 100%,rgba(120,110,100,.55),transparent 70%),
  linear-gradient(160deg,#d9d2ca 0%,#bdb4aa 45%,#9d9389 100%)}
body.v2.p-booking .page-header{background:transparent!important;border:0!important;padding:120px var(--gut,20px) 26px!important;text-align:left!important;max-width:1240px;margin:0 auto}
body.v2.p-booking .page-header h1{font-weight:300!important;font-size:clamp(40px,5vw,72px)!important;letter-spacing:-.04em!important;color:#fff!important;text-shadow:0 2px 30px rgba(0,0,0,.12)}
body.v2.p-booking .page-header-eyebrow{color:rgba(255,255,255,.85)!important;letter-spacing:.06em!important}
body.v2.p-booking .page-header-sub{color:rgba(255,255,255,.85)!important;font-size:16px!important}
body.v2.p-booking .progress-wrap{max-width:1240px;margin:0 auto 18px!important;background:rgba(255,255,255,.28)!important;backdrop-filter:saturate(160%) blur(26px);-webkit-backdrop-filter:saturate(160%) blur(26px);border:1px solid rgba(255,255,255,.5)!important;border-radius:15px;padding:12px 18px!important;box-shadow:0 20px 50px -25px rgba(0,0,0,.35)}
body.v2.p-booking .step-item{color:rgba(30,30,30,.6)!important}
body.v2.p-booking .step-num{background:rgba(255,255,255,.55)!important;border:1px solid rgba(255,255,255,.7)!important;color:#2c2c2e!important}
body.v2.p-booking .step-item.active .step-num,body.v2.p-booking .step-item.done .step-num{background:#1f1f21!important;color:#fff!important;border-color:#1f1f21!important}
body.v2.p-booking .step-item.active{color:#1f1f21!important}
body.v2.p-booking .step-label{text-transform:none!important;letter-spacing:0!important;font-size:14px!important}
body.v2.p-booking .main{max-width:1240px!important;margin:0 auto 90px!important;background:rgba(255,255,255,.26)!important;backdrop-filter:saturate(160%) blur(30px);-webkit-backdrop-filter:saturate(160%) blur(30px);border:1px solid rgba(255,255,255,.5)!important;border-radius:15px!important;padding:clamp(22px,3.4vw,48px)!important;box-shadow:0 40px 90px -40px rgba(0,0,0,.45)}
body.v2.p-booking .step-title{font-weight:400!important;font-size:clamp(28px,2.6vw,40px)!important;letter-spacing:-.03em!important;color:#1f1f21!important}
body.v2.p-booking .step-hint{color:rgba(30,30,30,.65)!important}
/* tiles */
body.v2.p-booking .salon-card,body.v2.p-booking .service-item,body.v2.p-booking .calendar-wrap,body.v2.p-booking .time-slot,body.v2.p-booking .cal-day.workday{
  background:rgba(255,255,255,.42)!important;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.6)!important;box-shadow:none!important;border-radius:15px!important;color:#1f1f21!important;transition:background .25s,transform .25s,color .25s}
body.v2.p-booking .salon-card:hover,body.v2.p-booking .service-item:hover,body.v2.p-booking .time-slot:hover,body.v2.p-booking .cal-day.workday:hover{background:rgba(255,255,255,.65)!important;transform:translateY(-2px)}
body.v2.p-booking .salon-card.selected,body.v2.p-booking .service-item.selected,body.v2.p-booking .time-slot.selected,body.v2.p-booking .cal-day.workday.selected,body.v2.p-booking .summary-box{
  background:rgba(24,24,26,.9)!important;color:#fff!important;border-color:rgba(255,255,255,.12)!important;box-shadow:0 20px 40px -20px rgba(0,0,0,.6)!important}
body.v2.p-booking .salon-card.selected *,body.v2.p-booking .service-item.selected *,body.v2.p-booking .summary-box *{color:#fff!important}
body.v2.p-booking .salon-card{padding:28px!important;min-height:170px}
body.v2.p-booking .salon-num{font-weight:300!important;font-size:44px!important;letter-spacing:-.04em;color:#8f5d3e!important}
body.v2.p-booking .salon-name{text-transform:none!important;letter-spacing:-.01em!important;font-size:20px!important;font-weight:600!important}
body.v2.p-booking .calendar-wrap{background:rgba(255,255,255,.3)!important;padding:22px!important}
body.v2.p-booking .cal-day{border-radius:12px!important}
body.v2.p-booking .cal-day.past{opacity:.35}
body.v2.p-booking .cal-nav{background:rgba(255,255,255,.55)!important;border:1px solid rgba(255,255,255,.7)!important;border-radius:12px!important}
body.v2.p-booking .time-slot.booked{opacity:.35;text-decoration:line-through}
body.v2.p-booking .service-group-title{text-transform:none!important;letter-spacing:-.01em!important;font-size:18px!important;font-weight:600!important;color:#1f1f21!important;margin-top:22px!important}
@media (min-width:900px){
  body.v2.p-booking .services-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}
  body.v2.p-booking .service-group-title{grid-column:1/-1}
  body.v2.p-booking .service-item{margin:0!important}
}
body.v2.p-booking .service-dot{border-color:rgba(30,30,30,.35)!important}
body.v2.p-booking .service-item.selected .service-dot{background:#fff!important;border-color:#fff!important}
body.v2.p-booking .form-input{background:rgba(255,255,255,.6)!important;border:1px solid rgba(255,255,255,.75)!important;border-radius:12px!important;color:#1f1f21!important}
body.v2.p-booking .form-input:focus{background:#fff!important;border-color:#8f5d3e!important}
body.v2.p-booking .form-label{text-transform:none!important;letter-spacing:0!important;font-size:13px!important;color:rgba(30,30,30,.7)!important}
body.v2.p-booking .contact-form{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important}
body.v2.p-booking .btn-primary{background:#1f1f21!important;color:#fff!important;border-radius:12px!important;height:52px;padding:0 28px!important}
body.v2.p-booking .btn-primary:disabled{opacity:.4}
body.v2.p-booking .btn-back{background:rgba(255,255,255,.5)!important;border:1px solid rgba(255,255,255,.7)!important;color:#1f1f21!important;border-radius:12px!important;height:52px}
body.v2.p-booking .navbar{background:rgba(255,255,255,.35)!important;border-bottom-color:rgba(255,255,255,.4)!important}
body.v2.p-booking .site-footer{background:#2a2a2d!important}
body.v2.p-booking .btn-primary,body.v2.p-booking .btn-back{text-transform:none!important;letter-spacing:-.01em!important;font-size:15px!important;font-weight:500!important;padding:0 26px!important;min-width:120px}
body.v2.p-booking .time-label{text-transform:none!important;letter-spacing:0!important;font-size:15px!important;font-weight:600!important;color:#1f1f21!important}
body.v2.p-booking .time-slot{min-width:84px;height:46px;font-size:15px!important}
@media (min-width:900px){
  body.v2.p-booking #step-2.active{display:grid!important;grid-template-columns:minmax(0,520px) minmax(0,1fr);column-gap:36px;align-items:start}
  body.v2.p-booking #step-2 > .step-title,body.v2.p-booking #step-2 > .step-hint,body.v2.p-booking #step-2 > .btn-row{grid-column:1/-1}
  body.v2.p-booking #step-2 .time-section{margin-top:0!important;padding:22px;border-radius:15px;background:rgba(255,255,255,.3);border:1px solid rgba(255,255,255,.55)}
  body.v2.p-booking .cal-day{aspect-ratio:1/1;height:auto!important;min-height:0!important}
  body.v2.p-booking #step-4.active{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);column-gap:36px;align-items:start}
  body.v2.p-booking #step-4 > .step-title,body.v2.p-booking #step-4 > .step-hint,body.v2.p-booking #step-4 > .btn-row,body.v2.p-booking #step-4 > #error-msg{grid-column:1/-1}
  body.v2.p-booking .summary-box{padding:26px!important}
}
body.v2.p-booking .service-price{white-space:nowrap;flex:none}
body.v2.p-booking .salon-card,body.v2.p-booking .salon-card.selected{border-left-width:1px!important}
body.v2.p-booking .salon-card::before{display:none!important}
