@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=DM+Serif+Display:ital@0;1&family=Manrope:wght@400;500;600;700&family=Marcellus&family=Mulish:wght@400;500;600;700&family=Nunito+Sans:wght@400;500;600;700&family=Parisienne&family=Playfair+Display:wght@500;600;700&family=Prata&family=Raleway:wght@400;500;600;700&family=Source+Sans+3:wght@400;500;600;700&display=swap");@import url("https://fonts.googleapis.com/css2?family=Allura&display=block");:root{--booking-bg:#fff8f6;--booking-surface:#ffffff;--booking-surface-2:#fffaf8;--booking-surface-3:#fff4f1;--booking-text:#2d2025;--booking-muted:#7d6f73;--booking-line:#ead9d8;--booking-line-strong:#ddc6c8;--booking-primary:#2d2025;--booking-primary-2:#6f4852;--booking-accent:#fff1f2;--booking-accent-strong:#ffd8df;--booking-accent-deep:#d96f86;--booking-line-theme:#f4a9b9;--booking-success:#166534;--booking-success-bg:#ecfdf3;--booking-error:#b91c1c;--booking-error-bg:#fef2f2;--booking-shadow:0 28px 80px rgba(15,23,42,.10);--booking-shadow-soft:0 14px 34px rgba(15,23,42,.06);--booking-shadow-card:0 18px 40px rgba(15,23,42,.05);--booking-shadow-interactive:0 16px 32px rgba(15,23,42,.07);--booking-radius-2xl:32px;--booking-radius-xl:24px;--booking-radius-lg:18px;--booking-radius-md:14px;--booking-logo-scale:1;--booking-font-heading:"Playfair Display",Georgia,serif;--booking-font-body:"Manrope",Inter,Arial,sans-serif;--booking-pattern-opacity:0;--booking-pattern-image:none;--booking-pattern-size:auto;--booking-pattern-position:center top}.public-booking-shell{background:radial-gradient(circle at top left,rgba(217,111,134,.10),transparent 26%),radial-gradient(circle at top right,rgba(255,216,223,.16),transparent 24%),linear-gradient(180deg,var(--booking-surface-3) 0%,#fff8f6 100%)}.public-booking-layout{position:relative;isolation:isolate}.public-booking-layout::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;opacity:var(--booking-pattern-opacity,0);background-image:var(--booking-pattern-image,none);background-size:var(--booking-pattern-size,auto);background-position:var(--booking-pattern-position,center top);background-repeat:repeat}.public-booking-layout__main{position:relative;z-index:1;min-height:100dvh}.public-booking-font-heading-playfair{--booking-font-heading:"Playfair Display",Georgia,serif}.public-booking-font-heading-cormorant{--booking-font-heading:"Cormorant Garamond",Georgia,serif}.public-booking-font-heading-prata{--booking-font-heading:"Prata",Georgia,serif}.public-booking-font-heading-dm-serif{--booking-font-heading:"DM Serif Display",Georgia,serif}.public-booking-font-heading-marcellus{--booking-font-heading:"Marcellus",Georgia,serif}.public-booking-font-body-manrope{--booking-font-body:"Manrope",Inter,Arial,sans-serif}.public-booking-font-body-nunito{--booking-font-body:"Nunito Sans",Inter,Arial,sans-serif}.public-booking-font-body-mulish{--booking-font-body:"Mulish",Inter,Arial,sans-serif}.public-booking-font-body-raleway{--booking-font-body:"Raleway",Inter,Arial,sans-serif}.public-booking-font-body-source{--booking-font-body:"Source Sans 3",Inter,Arial,sans-serif}.public-booking-theme-graphite{--booking-surface-2:#fffaf8;--booking-surface-3:#fff4f1;--booking-primary:#2d2025;--booking-primary-2:#6f4852;--booking-accent:#fff1f2;--booking-accent-strong:#ffd8df;--booking-accent-deep:#d96f86;--booking-line-theme:#f4a9b9}.public-booking-theme-rose{--booking-surface-2:#fff7fa;--booking-surface-3:#fff1f5;--booking-primary:#881337;--booking-primary-2:#9d174d;--booking-accent:#fdf2f8;--booking-accent-strong:#fbcfe8;--booking-accent-deep:#db2777;--booking-line-theme:#f9a8d4}.public-booking-theme-sand{--booking-surface-2:#fffaf0;--booking-surface-3:#fff6e5;--booking-primary:#92400e;--booking-primary-2:#b45309;--booking-accent:#fffbeb;--booking-accent-strong:#fde68a;--booking-accent-deep:#d97706;--booking-line-theme:#fbbf24}.public-booking-theme-lavender{--booking-surface-2:#faf7ff;--booking-surface-3:#f5f1ff;--booking-primary:#6d28d9;--booking-primary-2:#7c3aed;--booking-accent:#f5f3ff;--booking-accent-strong:#ddd6fe;--booking-accent-deep:#8b5cf6;--booking-line-theme:#c4b5fd}.public-booking-theme-ocean{--booking-surface-2:#f3fcfc;--booking-surface-3:#ecfeff;--booking-primary:#0f766e;--booking-primary-2:#115e59;--booking-accent:#ecfeff;--booking-accent-strong:#99f6e4;--booking-accent-deep:#14b8a6;--booking-line-theme:#5eead4}
/* Public color appearance: one shared, accessible set of light/dark tokens. */
html:has(.public-booking-shell[data-public-booking-mode="dark"]),
body:has(.public-booking-shell[data-public-booking-mode="dark"]){background:#10141d;color-scheme:dark}
html:has(.public-booking-shell[data-public-booking-mode="light"]){background:#fff8f6;color-scheme:light}
.public-booking-shell[data-public-booking-mode="dark"]{
  color-scheme:dark;
  --booking-bg:#10141d;--booking-surface:#202633;--booking-surface-2:#242b38;--booking-surface-3:#181f2b;
  --booking-text:#f6f3f8;--booking-muted:#c6c3ce;--booking-primary:#f6f3f8;--booking-primary-2:#eed0dc;
  --booking-line:#495364;--booking-line-strong:#626d7b;--booking-accent:#32303f;--booking-accent-strong:#514155;--booking-accent-deep:#f1b3d3;--booking-line-theme:#9d7196;
  background:linear-gradient(155deg,#171c27,#10141d 75%);
}
.public-booking-theme-sand[data-public-booking-mode="dark"]{--booking-accent-deep:#f4cb89;--booking-line-theme:#a58a66;--booking-accent-strong:#504439}
.public-booking-theme-lavender[data-public-booking-mode="dark"]{--booking-accent-deep:#cfb4ff;--booking-line-theme:#8670ae;--booking-accent-strong:#433c63}
.public-booking-theme-ocean[data-public-booking-mode="dark"]{--booking-accent-deep:#84e8d9;--booking-line-theme:#548d8a;--booking-accent-strong:#294b50}
.public-booking-theme-rose[data-public-booking-mode="dark"]{--booking-accent-deep:#f2aecb;--booking-line-theme:#aa738d;--booking-accent-strong:#583d52}
.public-booking-shell[data-public-booking-mode="dark"] :is(.booking-hero__panel:not(.booking-hero__panel--with-background),.booking-card--flow-entry,.booking-working-hours,.booking-voucher-entry,.booking-company-card,.booking-legal-public-links){
  background:linear-gradient(145deg,#262c39,#1b222e);
  border-color:#4c5364;box-shadow:0 16px 34px rgba(0,0,0,.17);color:var(--booking-text)
}
.public-booking-shell[data-public-booking-mode="dark"] :is(.booking-picker__trigger,.booking-field input,.booking-field textarea,.booking-field select,.booking-form-grid input,.booking-form-grid textarea,.booking-form-grid select,.booking-legal-public-links__links a){
  background-color:#2a303e;color:#f6f3f8;border-color:#576072
}
.public-booking-shell[data-public-booking-mode="dark"] :is(.booking-working-hours__day,.booking-picker__trigger-chevron){
  background-color:#333745;border-color:#586173;color:var(--booking-text)
}
.public-booking-shell[data-public-booking-mode="dark"] :is(.booking-company__name,.booking-working-hours__title,.booking-flow-intro h2,.booking-voucher-entry__copy strong,.booking-company-card h2){
  color:#f6f3f8
}
.public-booking-shell[data-public-booking-mode="dark"] :is(.booking-company-card__details,.booking-voucher-entry__copy,.booking-working-hours__day,.booking-legal-public-links__copy,.booking-legal-public-links__copy strong){
  color:#e6e2eb
}
.public-booking-shell[data-public-booking-mode="dark"] .booking-legal-public-links__copy small{color:#c6c3ce}
.public-booking-shell[data-public-booking-mode="dark"] .booking-company-card::after{background-image:url("../img/booking-support-location-dark.webp");opacity:.31}
.public-booking-shell[data-public-booking-mode="dark"] .booking-voucher-entry::after{background-image:url("../img/booking-support-gift-dark.webp");opacity:.32}
.public-booking-shell[data-public-booking-mode="dark"] :is(.booking-card--flow-entry::after){opacity:.2}
.public-booking-shell[data-public-booking-mode="dark"] :is(.booking-service-modal,.booking-modal__dialog,.booking-voucher-dialog,.booking-dialog){
  color:var(--booking-text);background-color:var(--booking-surface-2)
}
.public-booking-shell[data-public-booking-mode="dark"] :is(button,input,select,textarea):focus-visible{outline:2px solid var(--booking-accent-deep);outline-offset:2px}


.public-booking-shell[data-public-booking-mode="dark"] .booking-flow-actions .booking-button-danger{
  background:#392a38;
  border-color:#a5687b;
  color:#ffdbe3;
}
.public-booking-shell[data-public-booking-mode="dark"] .booking-flow-actions .booking-button-danger:hover{
  background:#473140;
  border-color:#cd859b;
}
.public-booking-shell[data-public-booking-mode="dark"] .booking-card--flow-entry .booking-picker__trigger{
  background:#2a303e;border-color:#566076;color:#f6f3f8
}
.public-booking-shell[data-public-booking-mode="dark"] .booking-card--flow-entry .booking-picker__trigger :is(.booking-picker__trigger-label,.booking-picker__trigger-title,.booking-picker__trigger-value,.booking-picker__trigger-meta,.booking-picker__trigger__value){
  color:#f6f3f8
}
.public-booking-shell[data-public-booking-mode="dark"] .booking-card--flow-entry .booking-picker__trigger-chevron{
  background:#354054;color:#f6f3f8;border-color:#687487
}
.public-booking-shell[data-public-booking-mode="dark"] :is(.booking-submit__button,.booking-voucher-entry__button){
  background:linear-gradient(120deg,#853453,#a14275);color:#fff;border-color:#af6b94;box-shadow:0 7px 22px rgba(0,0,0,.22)
}
.public-booking-shell[data-public-booking-mode="dark"] :is(.booking-company-card__map,.booking-hero__account-state,.booking-legal-public-links a){
  background:#343c4b;color:#f6f3f8;border-color:#647085
}
.public-booking-shell[data-public-booking-mode="dark"] :is(.booking-working-hours__day strong,.booking-working-hours__day span){
  color:#f1edf5
}
.public-booking-shell[data-public-booking-mode="dark"] :is(.booking-card--flow-entry .booking-picker__trigger-eyebrow,.booking-card--flow-entry .booking-picker__trigger-hint){
  color:#d1cad8
}
.public-booking-shell--pattern-none{--booking-pattern-opacity:0}.public-booking-shell--pattern-soft-waves{--booking-pattern-opacity:.70;--booking-pattern-size:100% 100%;--booking-pattern-position:center;--booking-pattern-image:radial-gradient(ellipse 85% 52% at 101% -22%,transparent 55%,color-mix(in srgb,var(--booking-accent-strong) 43%,transparent) 57%,transparent 65%),radial-gradient(ellipse 95% 60% at -18% 90%,transparent 66%,color-mix(in srgb,var(--booking-line-theme) 22%,transparent) 68%,transparent 76%),linear-gradient(137deg,transparent 32%,color-mix(in srgb,var(--booking-accent) 21%,transparent) 54%,transparent 72%)}.public-booking-shell--pattern-silk{--booking-pattern-opacity:.30;--booking-pattern-size:220px 220px;--booking-pattern-image:linear-gradient(125deg,transparent 0 34%,color-mix(in srgb,var(--booking-accent-strong) 20%,transparent) 35% 37%,transparent 38% 56%,color-mix(in srgb,var(--booking-line-theme) 18%,transparent) 57% 59%,transparent 60%),linear-gradient(35deg,transparent 0 48%,color-mix(in srgb,var(--booking-accent) 34%,transparent) 49% 51%,transparent 52%)}.public-booking-shell--pattern-petals{--booking-pattern-opacity:.32;--booking-pattern-size:88px 64px;--booking-pattern-image:radial-gradient(16px 11px at 18px 20px,color-mix(in srgb,var(--booking-accent-strong) 26%,transparent) 0 60%,transparent 61%),radial-gradient(16px 11px at 48px 20px,color-mix(in srgb,var(--booking-line-theme) 22%,transparent) 0 60%,transparent 61%),radial-gradient(16px 11px at 33px 40px,color-mix(in srgb,var(--booking-accent) 32%,transparent) 0 60%,transparent 61%)}.public-booking-shell--pattern-fine-grid{--booking-pattern-opacity:.24;--booking-pattern-size:24px 24px;--booking-pattern-image:linear-gradient(color-mix(in srgb,var(--booking-line-theme) 18%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--booking-line-theme) 18%,transparent) 1px,transparent 1px)}.public-booking-shell--pattern-premium-dots{--booking-pattern-opacity:.28;--booking-pattern-size:18px 18px;--booking-pattern-image:radial-gradient(circle,color-mix(in srgb,var(--booking-line-theme) 24%,transparent) 0 1.7px,transparent 1.8px)}.booking-page{--booking-card-inset:18px;position:relative;z-index:1;width:min(100%,1160px);margin:0 auto;color:var(--booking-text);font-family:var(--booking-font-body);box-sizing:border-box}.booking-page input,.booking-page select,.booking-page textarea,.booking-page button{font-family:var(--booking-font-body)}.booking-page h1,.booking-page h2,.booking-page h3,.booking-page h4,.booking-page .booking-company__name{letter-spacing:.01em;font-family:var(--booking-font-heading)}.booking-native-select{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.booking-hero__panel{isolation:isolate;border-width:1px;border-style:solid;border-radius:34px;backdrop-filter:blur(10px)}.booking-hero__panel::before,.booking-hero__panel::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:0}.booking-hero__panel::before{background:linear-gradient(135deg,rgba(255,255,255,.38),transparent 36%);opacity:.95}.booking-hero__panel--with-background{background-image:var(--booking-hero-bg-image);background-size:cover;background-position:center center;background-repeat:no-repeat;background-color:#0f172a;border-color:rgba(255,255,255,.12);backdrop-filter:none}.booking-hero__panel--with-background::before{background:linear-gradient( 180deg,rgba(15,23,42,calc(var(--booking-hero-overlay-opacity,.45)+.04)) 0%,rgba(15,23,42,calc(var(--booking-hero-overlay-opacity,.45) * .92)) 42%,rgba(15,23,42,calc(var(--booking-hero-overlay-opacity,.45)+.02)) 100% );opacity:1}.booking-hero__panel--with-background::after{background:radial-gradient(circle at top right,rgba(255,255,255,.10),transparent 24%),radial-gradient(circle at bottom left,rgba(255,255,255,.05),transparent 20%),linear-gradient(135deg,rgba(255,255,255,.03),transparent 40%);opacity:.65}.booking-hero__panel--with-background.booking-hero__panel--overlay-dark::before{background:linear-gradient( 180deg,rgba(15,23,42,calc(var(--booking-hero-overlay-opacity,.45)+.04)) 0%,rgba(15,23,42,calc(var(--booking-hero-overlay-opacity,.45) * .92)) 42%,rgba(15,23,42,calc(var(--booking-hero-overlay-opacity,.45)+.02)) 100% )}.booking-hero__panel--with-background.booking-hero__panel--overlay-light::before{background:linear-gradient( 180deg,rgba(255,255,255,calc(var(--booking-hero-overlay-opacity,.45)+.03)) 0%,rgba(255,255,255,calc(var(--booking-hero-overlay-opacity,.45) * .9)) 42%,rgba(255,255,255,calc(var(--booking-hero-overlay-opacity,.45)+.01)) 100% )}.booking-hero__panel--with-background.booking-hero__panel--overlay-none::before{background:transparent}.booking-hero__grid{position:relative;z-index:1;display:grid}.booking-hero__content{display:grid;align-content:center;justify-items:start}.booking-company__name{margin:0;color:var(--booking-text);}.booking-company__description{margin:0;}.booking-hero__brand-stage{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;border-radius:28px;border-width:1px;border-style:solid;box-sizing:border-box}.booking-hero__brand-glow{position:absolute;inset:10% 14%;border-radius:999px;pointer-events:none}.booking-company__logo{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;width:100%;padding:10px}.booking-company__logo img{display:block;width:auto;height:auto;object-fit:contain;filter:drop-shadow(0 20px 28px rgba(15,23,42,.10))}.booking-hero__brand-placeholder{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;width:140px;height:140px;border-radius:32px;background:linear-gradient(180deg,#ffffff 0%,#fff1f2 100%);border:1px solid rgba(15,23,42,.06);box-shadow:0 18px 32px rgba(15,23,42,.08)}.booking-hero__brand-placeholder span{font-size:3rem;font-weight:900;color:var(--booking-primary);line-height:1}.booking-hero__panel--with-background.booking-hero__panel--theme-light .booking-company__description{color:rgba(255,255,255,.86)}.booking-hero__panel--with-background.booking-hero__panel--theme-light .booking-company__name{color:#ffffff;text-shadow:0 2px 10px rgba(15,23,42,.22)}.booking-hero__panel--with-background.booking-hero__panel--theme-light .booking-hero__brand-stage{background:linear-gradient(180deg,rgba(255,255,255,.10) 0%,rgba(255,255,255,.05) 100%);border:1px solid rgba(255,255,255,.14);box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 18px 40px rgba(15,23,42,.16);backdrop-filter:blur(8px)}.booking-hero__panel--with-background.booking-hero__panel--theme-light .booking-hero__brand-glow{background:radial-gradient(circle,rgba(255,255,255,.16) 0%,rgba(255,216,223,.16) 34%,rgba(255,255,255,0) 72%)}.booking-hero__panel--with-background.booking-hero__panel--theme-light .booking-hero__brand-placeholder{background:linear-gradient(180deg,rgba(255,255,255,.18) 0%,rgba(255,255,255,.10) 100%);border-color:rgba(255,255,255,.18);box-shadow:0 18px 32px rgba(15,23,42,.18)}.booking-hero__panel--with-background.booking-hero__panel--theme-light .booking-hero__brand-placeholder span{color:#ffffff}.booking-hero__panel--with-background.booking-hero__panel--theme-dark .booking-company__description{color:rgba(15,23,42,.82)}.booking-hero__panel--with-background.booking-hero__panel--theme-dark .booking-company__name{color:#0f172a;text-shadow:none}.booking-hero__panel--with-background.booking-hero__panel--theme-dark .booking-hero__brand-stage{background:linear-gradient(180deg,rgba(255,255,255,.30) 0%,rgba(255,255,255,.14) 100%);border:1px solid rgba(255,255,255,.22);box-shadow:inset 0 1px 0 rgba(255,255,255,.30),0 18px 40px rgba(15,23,42,.10);backdrop-filter:blur(8px)}.booking-hero__panel--with-background.booking-hero__panel--theme-dark .booking-hero__brand-glow{background:radial-gradient(circle,rgba(217,111,134,.18) 0%,color-mix(in srgb,var(--booking-accent-strong) 16%,transparent) 36%,rgba(255,255,255,0) 72%)}.booking-alert{display:grid;gap:6px;margin:0 0 16px;padding:16px 18px;border-radius:18px;border:1px solid var(--booking-line);box-shadow:0 10px 25px rgba(15,23,42,.04)}.booking-alert strong{font-size:.98rem}.booking-alert span{color:inherit;line-height:1.65}.booking-alert--error{background:var(--booking-error-bg);border-color:#fecaca;color:var(--booking-error)}.booking-shell{display:grid;gap:20px}.booking-card{position:relative;overflow:hidden;border-width:1px;border-style:solid;box-shadow:var(--booking-shadow-card);padding:22px;box-sizing:border-box}.booking-card::before{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:1px;background:linear-gradient(90deg,rgba(147,197,253,.45) 0%,rgba(255,255,255,0) 55%);pointer-events:none}.booking-selection-stack{display:grid;gap:18px}.booking-picker{display:grid;gap:10px}.booking-entry-choices{display:grid;grid-template-columns:1fr;gap:12px}.booking-entry-choices.has-packages{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-picker__label{font-weight:800;color:var(--booking-text)}.booking-field{display:flex;flex-direction:column;gap:8px}.booking-field--wide{grid-column:1 / -1}.booking-field label{font-size:.94rem;font-weight:800;color:var(--booking-text)}.booking-form-grid{display:grid;gap:16px}.booking-field input,.booking-field textarea{width:100%;border:1px solid var(--booking-line);border-radius:16px;background:#fff;color:var(--booking-text);font:inherit;box-sizing:border-box}.booking-field input{min-height:56px;padding:0 16px}.booking-field textarea{min-height:132px;padding:14px 16px;resize:vertical}.booking-field input:hover,.booking-field textarea:hover{box-shadow:0 8px 18px rgba(15,23,42,.03)}.booking-field input:focus,.booking-field textarea:focus{border-color:var(--booking-line-theme);box-shadow:0 0 0 4px rgba(147,197,253,.18);outline:none}.booking-dates-container{display:grid;gap:14px;min-height:84px}.booking-day-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.booking-consent{display:flex;gap:12px;margin-top:18px;color:var(--booking-text);line-height:1.65;align-items:flex-start;padding:14px 16px;border:1px solid rgba(219,227,238,.9);border-radius:18px;background:linear-gradient(180deg,#ffffff 0%,var(--booking-surface-3) 100%)}.booking-consent input{margin-top:4px;flex:0 0 auto}.booking-submit__button{width:100%;min-height:58px;border:none;border-radius:18px;background:linear-gradient(180deg,var(--booking-primary) 0%,var(--booking-primary-2) 100%);color:#fff;font:inherit;font-weight:800;letter-spacing:.01em;cursor:pointer;box-shadow:0 18px 38px rgba(17,24,39,.18);transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}.booking-submit__button:hover{transform:translateY(-2px);box-shadow:0 22px 42px rgba(17,24,39,.22);filter:brightness(1.03)}.booking-submit__button:active{transform:translateY(-1px)}.booking-inline-status{border-radius:18px;border:1px solid var(--booking-line);background:var(--booking-surface-2);color:var(--booking-muted);line-height:1.65}.booking-inline-status--error{background:var(--booking-error-bg);border-color:#fecaca;color:var(--booking-error)}.booking-inline-status--muted{background:var(--booking-surface-2);border-color:var(--booking-line);color:var(--booking-muted)}.booking-success{display:grid;gap:18px}.booking-success__hero{justify-items:start}.booking-success__summary-value{word-break:break-word}.booking-success__button{border:none;background:linear-gradient(180deg,var(--booking-primary) 0%,var(--booking-primary-2) 100%);color:#fff;letter-spacing:.01em;box-shadow:0 18px 38px rgba(17,24,39,.18)}.booking-success__button:hover{box-shadow:0 22px 42px rgba(17,24,39,.22);filter:brightness(1.03)}@media (min-width:900px){.booking-company__logo img{max-width:min(88%,calc(420px * var(--booking-logo-scale,1)))}.booking-success__actions{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:760px){.booking-card{padding:22px}.booking-hero__content{justify-items:start}.booking-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-day-grid{grid-template-columns:1fr}}@media (max-width:899px){.booking-company__logo{min-height:168px}.booking-company__logo img{max-width:min(98%,calc(440px * var(--booking-logo-scale,1)));max-height:min(260px,calc(190px * var(--booking-logo-scale,1)))}}@media (max-width:720px){.booking-company__name{font-size:clamp(1.7rem,8vw,2.35rem);max-width:100%}.booking-company__description{max-width:100%;font-size:.9rem}.booking-hero__brand-stage{border-radius:22px;gap:10px}.booking-hero__brand-glow{inset:14% 10%}.booking-company__logo{padding:6px}.booking-company__logo img{max-width:min(98%,calc(340px * var(--booking-logo-scale,1)))}.booking-card{width:100%;margin:0;padding:16px;border-radius:22px}.booking-selection-stack{gap:16px}.booking-consent{padding:14px}.booking-success{gap:16px}.booking-success__icon{width:58px;height:58px;border-radius:18px;font-size:1.7rem}.booking-success__title{font-size:1.28rem}.booking-success__button{min-height:52px}}@media (min-width:1100px){.booking-page{width:min(100%,1320px)}.booking-shell{display:grid;gap:24px}}.booking-support-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));align-items:stretch;gap:12px;margin:0 0 12px}
.booking-voucher-entry::after{content:"";position:absolute;pointer-events:none;z-index:0;inset:0;background:url("../img/booking-support-gift-light.webp") right center / auto 100% no-repeat;opacity:.24;-webkit-mask-image:linear-gradient(90deg,transparent 0 60%,#000 98%);mask-image:linear-gradient(90deg,transparent 0 60%,#000 98%)}

.booking-voucher-entry__copy{position:relative;z-index:1;min-width:0}
.booking-voucher-entry__copy strong{display:block;font-size:clamp(1.42rem,2vw,1.72rem);font-family:var(--booking-font-heading);font-weight:750;line-height:1.18;color:var(--booking-text)}
.booking-voucher-entry__copy span{display:block;margin:4px 0 8px;color:var(--booking-muted);font-size:.89rem;line-height:1.42}
.booking-voucher-entry::before{content:'';position:relative;z-index:2;grid-column:1;grid-row:1 / span 2;width:110px;height:110px;background:transparent url('../img/booking-gift-icon.svg?v=20261027-vector') center / contain no-repeat;filter:drop-shadow(0 9px 12px rgba(159,49,97,.10))}
.booking-voucher-entry__copy,.booking-voucher-entry__button{grid-column:2}
.booking-company-card__map{position:relative;z-index:2;display:inline-flex;align-items:center;justify-content:center;gap:9px;align-self:stretch;width:100%;min-height:48px;box-sizing:border-box;margin-top:7px;padding:11px 16px;border:1px solid color-mix(in srgb,var(--booking-line-theme) 45%,var(--booking-line));border-radius:15px;color:var(--booking-primary-2);font-size:.88rem;font-weight:800;text-decoration:none;background:var(--booking-surface-2,#fff);box-shadow:0 7px 18px rgba(81,42,59,.045);text-align:center;white-space:normal}

/* Public salon social links: a restrained row beside the logo. */
.booking-hero__brand-line{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  min-width:0;
}
.booking-hero__brand-line .booking-hero__mobile-logo{
  flex:0 0 48px;
}
.booking-hero__socials{
  display:inline-flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  min-width:0;
  margin-inline-start:auto;
}
.booking-hero__social-label{
  color:var(--booking-text);
  font-size:.74rem;
  font-weight:700;
  line-height:1.3;
  white-space:nowrap;
  text-shadow:0 1px 5px rgba(0,0,0,.12);
}
.booking-hero__social-links{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:4px;
  min-width:0;
}
.booking-hero__social-link{
  display:grid;
  flex:0 0 44px;
  place-items:center;
  width:44px;
  height:44px;
  border:1px solid color-mix(in srgb,var(--booking-line-theme) 55%,rgba(255,255,255,.44));
  border-radius:50%;
  color:var(--booking-text);
  background:rgba(255,255,255,.1);
  backdrop-filter:blur(6px);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.15);
  text-decoration:none;
  transition:transform .15s ease,background-color .15s ease,border-color .15s ease;
}
.booking-hero__social-link:is(:hover,:focus-visible){
  transform:translateY(-1px);
  border-color:var(--booking-line-theme);
  background:rgba(255,255,255,.2);
}
.booking-hero__social-link:focus-visible{
  outline:2px solid var(--booking-accent-deep);
  outline-offset:3px;
}
.booking-hero__social-link:active{transform:translateY(0)}
.booking-hero__social-icon{
  display:block;
  width:24px;
  height:24px;
  background:url('../img/booking-social-premium.webp?v=20261021-social-1')
    var(--booking-social-position,0% 50%) / 400% 100% no-repeat;
  pointer-events:none;
}
.booking-hero__social-link--facebook{--booking-social-position:0% 50%}
.booking-hero__social-link--instagram{--booking-social-position:33.333333% 50%}
.booking-hero__social-link--tiktok{--booking-social-position:66.666667% 50%}
.booking-hero__social-link--youtube{--booking-social-position:100% 50%}
.public-booking-shell[data-public-booking-mode="dark"] .booking-hero__social-icon{
  background-image:url('../img/booking-social-premium-dark.webp?v=20261021-social-1');
}
.public-booking-shell[data-public-booking-mode="dark"] .booking-hero__panel--with-background .booking-hero__social-label{
  color:#fff4fa;
  text-shadow:0 1px 8px rgba(0,0,0,.36);
}
.public-booking-shell[data-public-booking-mode="dark"] .booking-hero__social-link{
  background:rgba(16,21,33,.16);
  border-color:rgba(247,209,231,.38);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}
@media (max-width:767px){
  .booking-hero__brand-line{gap:8px}
  .booking-hero__socials{gap:8px}
  .booking-hero__social-label{font-size:.73rem}
  .booking-hero__socials--many .booking-hero__social-label{display:none}
}
@media (max-width:340px){
  .booking-hero__brand-line .booking-hero__mobile-logo{flex-basis:42px;width:42px;height:42px}
  .booking-hero__social-label{font-size:.68rem}
}
@media (prefers-reduced-motion:reduce){
  .booking-hero__social-link{transition:none}
}

.booking-hero__mobile-logo{display:none}
@media (max-width:767px){.booking-hero__mobile-logo{display:block;width:48px;height:48px;object-fit:contain;box-sizing:border-box;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}}

.booking-flow-intro{display:flex;align-items:center;gap:12px;min-width:0;min-height:44px;margin:0 0 12px}
.booking-flow-intro__icon{display:block;flex:0 0 40px;width:40px;height:40px;border-radius:0;background:transparent url('../img/booking-interface-icons.svg?v=20261027-vector') 0% 50% / 400% 100% no-repeat;box-shadow:none;background-color:transparent;background-image:url('../img/booking-interface-icons.svg?v=20261027-vector');background-size:400% 100%;background-repeat:no-repeat;border:0;filter:none;background-position:0% 50%;}
.booking-flow-intro>div{min-width:0;display:grid;gap:2px}
.booking-flow-intro h2{margin:0;color:var(--booking-text);font-family:var(--booking-font-heading);font-size:clamp(1.14rem,2vw,1.38rem);font-weight:750;line-height:1.13;letter-spacing:-.025em}
.booking-flow-intro p{margin:0;color:var(--booking-muted);font-size:.79rem;line-height:1.36}







@media (min-width:900px){.booking-company-card__head,.booking-company-card__details{max-width:100%}}


@media (min-width:768px) and (max-width:899px){.booking-hero__grid{grid-template-columns:minmax(0,1.07fr) minmax(220px,.93fr);align-items:center;gap:18px}.booking-hero__brand-stage{min-height:210px;padding:13px}.booking-hero__advantages{gap:6px}.booking-hero__advantage{grid-template-columns:38px minmax(0,1fr);gap:5px}.booking-hero__advantage i{display:block;flex:0 0 56px;width:56px;height:56px;border-radius:0;background-image:url('../img/booking-interface-icons.svg?v=20261027-vector');background-repeat:no-repeat;background-size:400% 100%;background-position:0% 50%;box-shadow:none;background-color:transparent;border:0;filter:none;}.booking-hero__advantage b{font-size:.68rem}}
@media (max-width:767px){.booking-page{--booking-card-inset:14px;padding-bottom:calc(18px + env(safe-area-inset-bottom,0px))}.booking-hero__advantage i{width:38px;height:38px;border-radius:12px}.booking-working-hours{grid-column:1}.booking-working-hours__days{grid-template-columns:repeat(3,minmax(0,1fr))}.booking-support-grid{grid-template-columns:minmax(0,1fr)}.booking-voucher-entry{grid-template-columns:78px minmax(0,1fr);min-height:0;padding:var(--booking-card-inset,14px);column-gap:10px;row-gap:4px}.booking-voucher-entry::before{width:78px;height:78px}.booking-voucher-entry__copy strong{font-size:1.25rem}.booking-voucher-entry__copy span{font-size:.78rem}.booking-company-card__head,.booking-company-card__details{max-width:100%}.booking-company-card__map{position:relative;right:auto;bottom:auto}.booking-voucher-entry::before{width:68px;height:68px}.booking-voucher-entry__copy strong{font-size:1.18rem}.booking-voucher-entry__copy span{margin:3px 0 8px;font-size:.76rem}.booking-voucher-entry__button{padding:8px 13px;min-height:38px}}
@media (prefers-reduced-motion:reduce){}
.booking-shell--modal-flow{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:12px;min-width:0;margin-bottom:12px;scroll-margin-top:16px}@media (min-width:900px){.booking-shell--modal-flow .booking-working-hours__days{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.booking-shell--modal-flow .booking-working-hours__day{min-width:0;min-height:57px;flex:auto;padding:7px 2px}.booking-shell--modal-flow .booking-working-hours__day strong{font-size:clamp(.55rem,.78vw,.65rem);white-space:nowrap;overflow-wrap:normal;letter-spacing:-.02em}.booking-shell--modal-flow .booking-working-hours__day span{font-size:.62rem}}@media (min-width:1024px){.booking-shell--modal-flow{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-working-hours{grid-column:2;grid-row:1;align-self:start}.booking-shell--modal-flow .booking-card--flow-entry,.booking-shell--modal-flow .booking-working-hours{min-height:250px}}.booking-entry-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;width:100%;max-width:none;margin:0;min-width:0;order:-1;}.booking-card--flow-entry{width:100%}.booking-picker__label--sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.booking-company-card{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-start;gap:12px;min-width:0;min-height:0;padding:var(--booking-card-inset,18px);border:1px solid color-mix(in srgb,var(--booking-line-theme) 32%,var(--booking-line));border-radius:24px;background:radial-gradient(ellipse 70% 125% at 115% -15%,color-mix(in srgb,var(--booking-accent-strong) 20%,#fff),transparent 80%),linear-gradient(145deg,rgba(255,255,255,.99),color-mix(in srgb,var(--booking-accent) 16%,#fff));box-shadow:0 14px 34px rgba(63,38,48,.055)}.booking-company-card::after{content:"";position:absolute;z-index:0;inset:0;background:url("../img/booking-support-location-light.webp") right center / auto 100% no-repeat;opacity:.24;pointer-events:none;-webkit-mask-image:linear-gradient(90deg,transparent 0 48%,#000 94%);mask-image:linear-gradient(90deg,transparent 0 48%,#000 94%)}.booking-company-card__head,.booking-company-card__details{position:relative;z-index:1}

.booking-company-card__head{position:relative;z-index:2;display:grid;gap:5px;width:100%;max-width:100%;padding:0;border:0}.booking-company-card__eyebrow{color:var(--booking-accent-deep,#a84661);font-size:.67rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.booking-company-card__name{color:var(--booking-text);font-family:var(--booking-font-heading);font-size:1.23rem;font-weight:700;line-height:1.13;letter-spacing:-.03em;overflow-wrap:anywhere}.booking-company-card__details{display:grid;grid-template-columns:minmax(0,1fr);gap:4px;width:100%;max-width:100%}.booking-company-card__row{display:grid;grid-template-columns:40px minmax(0,1fr);align-items:center;justify-content:stretch;justify-items:stretch;gap:12px;min-width:0;min-height:46px;padding:3px 0;color:var(--booking-muted);font-size:.86rem;font-weight:680;line-height:1.4;text-decoration:none;overflow-wrap:anywhere}.booking-company-card__row-icon{display:block;flex:0 0 40px;width:40px;height:40px;align-self:center;border:0;border-radius:0;background-color:transparent;background-image:url("../img/booking-contact-icons.svg?v=20261027-vector");background-repeat:no-repeat;background-position:var(--booking-company-icon-position,0% 50%);background-size:400% 100%;color:inherit;filter:drop-shadow(0 3px 5px rgba(110,42,73,.08))}
.booking-company-card__row-icon--location{--booking-company-icon-position:0% 50%}
.booking-company-card__row-icon--email{--booking-company-icon-position:33.333333% 50%}
.booking-company-card__row-icon--phone{--booking-company-icon-position:66.666667% 50%}
.booking-company-card__row-icon--tax{--booking-company-icon-position:100% 50%}
.public-booking-shell[data-public-booking-mode="dark"] .booking-company-card__row-icon{background-image:url("../img/booking-contact-icons.svg?v=20261027-vector");background-color:transparent}.booking-company-card__row--muted{font-size:.76rem;color:color-mix(in srgb,var(--booking-muted,#725e58) 82%,transparent)}.booking-company-card__row--link{color:var(--booking-text,#251916);transition:color .16s ease,transform .16s ease}.booking-company-card__row--link:hover,.booking-company-card__row--link:focus-visible{color:var(--booking-accent-deep,#a84661);text-decoration:none;transform:translateX(2px);outline:none}@media (min-width:920px){.booking-entry-layout{grid-template-columns:minmax(0,1fr);align-items:stretch;}.booking-company-card{min-height:0;height:100%;box-sizing:border-box}}@media (max-width:919px){.booking-company-card{padding:var(--booking-card-inset,18px);border-radius:22px}}@media (max-width:620px){.booking-entry-layout{gap:12px}.booking-company-card{gap:12px;padding:var(--booking-card-inset,14px);border-radius:20px}.booking-company-card__head{justify-items:start;text-align:left;max-width:100%}.booking-company-card__details{grid-template-columns:1fr;justify-items:stretch;max-width:100%}.booking-company-card__row > span:last-child{min-width:0;text-align:left}.booking-company-card__row-icon{margin:0}.booking-company-card__row--link:hover,.booking-company-card__row--link:focus-visible{transform:none}.booking-company-card__name{font-size:1.08rem}}.booking-flow-overview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.booking-flow-overview__item{display:grid;gap:4px;border:1px solid var(--booking-line);border-radius:18px;background:var(--booking-surface,#fff)}.booking-flow-overview__item span{font-size:.8rem;font-weight:700;color:var(--booking-muted);letter-spacing:.02em;text-transform:uppercase}.booking-flow-overview__item strong{line-height:1.4;color:var(--booking-text)}.booking-submit__button--flow{width:100%;justify-content:center}@media (max-width:767px){.booking-flow-overview{grid-template-columns:1fr}}.booking-card--flow-entry{position:relative;overflow:hidden;border-color:color-mix(in srgb,var(--booking-line-theme) 32%,var(--booking-line));background:linear-gradient(155deg,rgba(255,255,255,.99),color-mix(in srgb,var(--booking-accent) 16%,#fff));}.booking-card--flow-entry::before,.booking-card--flow-entry::after{content:"";position:absolute;pointer-events:none}.booking-card--flow-entry::before{inset:-1px;border-radius:inherit;padding:1px;background:linear-gradient(135deg,rgba(255,255,255,.9) 0%,rgba(191,219,254,.85) 50%,rgba(255,255,255,.82) 100%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:.85}.booking-card--flow-entry::after{width:220px;height:220px;right:-70px;top:-90px;border-radius:999px;background:radial-gradient(circle,rgba(147,197,253,.34) 0%,rgba(147,197,253,0) 72%);filter:blur(6px)}.booking-flow-overview__item{position:relative;overflow:hidden;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.booking-flow-overview__item::before{content:"";position:absolute;inset:auto -28px -30px auto;width:86px;height:86px;border-radius:999px;background:radial-gradient(circle,color-mix(in srgb,var(--booking-accent-strong) 28%,transparent) 0%,rgba(191,219,254,0) 70%);pointer-events:none}.booking-flow-overview__item:hover{transform:translateY(-2px);border-color:var(--booking-line-theme);box-shadow:0 16px 30px rgba(15,23,42,.06)}.booking-flow-overview__item-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.booking-flow-edit,.booking-summary__edit{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:0 10px;border:1px solid var(--booking-line-theme);border-radius:999px;background:var(--booking-surface,#fff);color:var(--booking-accent-deep);font:inherit;font-size:.74rem;font-weight:800;line-height:1;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background .16s ease}.booking-flow-edit:hover,.booking-summary__edit:hover{transform:translateY(-1px);border-color:var(--booking-line-theme);background:var(--booking-accent);box-shadow:0 10px 18px color-mix(in srgb,var(--booking-accent-deep) 10%,transparent)}.booking-submit__button{position:relative;overflow:hidden}.booking-submit__button::after{content:"";position:absolute;inset:0 auto 0 -35%;width:34%;background:linear-gradient(90deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.22) 52%,rgba(255,255,255,0) 100%);transform:skewX(-18deg);pointer-events:none;transition:transform .45s ease}.booking-submit__button:hover::after{transform:translateX(360%) skewX(-18deg)}@media (max-width:767px){.booking-flow-overview__item{padding:12px}.booking-flow-edit,.booking-summary__edit{min-height:32px;padding:0 12px}}.booking-flow-actions{flex-wrap:wrap}.booking-flow-actions>*{flex:1 1 220px}@media (max-width:767px){.booking-flow-actions>*{flex:1 1 auto;width:100%}}@keyframes bookingWowShine{0%,100%{transform:translateX(0) skewX(-18deg);opacity:0}8%{opacity:.0}18%{opacity:1}32%{transform:translateX(560%) skewX(-18deg);opacity:0}}.booking-card--flow-entry{max-width:none;margin:0;padding:var(--booking-card-inset,18px)}.booking-card--flow-entry .booking-picker__trigger{position:relative;display:grid;grid-template-columns:58px minmax(0,1fr) 40px;grid-template-rows:auto auto auto;align-items:center;column-gap:12px;min-width:0;padding:11px 14px;border:1px solid color-mix(in srgb,var(--booking-line-theme) 32%,var(--booking-line));border-radius:16px;background:linear-gradient(160deg,rgba(255,255,255,.98),color-mix(in srgb,var(--booking-accent) 14%,#fff));box-shadow:0 5px 16px rgba(65,35,48,.035)}
.booking-card--flow-entry .booking-picker__trigger::before{content:'';grid-column:1;grid-row:1 / span 3;width:58px;height:58px;border:0;border-radius:0;background:transparent url('../img/booking-services-icon.svg?v=20261027-vector') center / contain no-repeat;box-shadow:none}
.booking-card--flow-entry .booking-picker__trigger--package::before{background:url('../img/menu-premium-icons.webp') 60% 50% / 600% 300% no-repeat}
.booking-card--flow-entry .booking-picker__trigger-chevron{grid-column:3;grid-row:1 / span 3;display:grid;place-items:center;width:40px;height:40px;border:1px solid color-mix(in srgb,var(--booking-line-theme) 42%,var(--booking-line));border-radius:13px;background:linear-gradient(145deg,rgba(255,255,255,.97),color-mix(in srgb,var(--booking-accent) 33%,#fff));color:var(--booking-accent-deep);box-shadow:0 4px 13px color-mix(in srgb,var(--booking-accent-deep) 9%,transparent);pointer-events:none;transition:background-color .18s ease,box-shadow .18s ease,transform .18s ease}.booking-card--flow-entry .booking-picker__trigger-chevron::before{content:"";display:block;width:10px;height:10px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg);border-radius:1px}.booking-card--flow-entry .booking-picker__trigger:hover .booking-picker__trigger-chevron,.booking-card--flow-entry .booking-picker__trigger:focus-visible .booking-picker__trigger-chevron{background:color-mix(in srgb,var(--booking-accent) 52%,#fff);box-shadow:0 5px 17px color-mix(in srgb,var(--booking-accent-deep) 15%,transparent);transform:translateY(-1px)}
.booking-card--flow-entry .booking-picker__trigger-label{grid-column:2;grid-row:1;font-size:.68rem;font-weight:900;line-height:1.2;letter-spacing:.06em;color:var(--booking-muted);text-transform:uppercase}
.booking-card--flow-entry .booking-picker__trigger strong{grid-column:2;grid-row:2;min-width:0;font-size:1rem;font-weight:850;line-height:1.25;overflow-wrap:anywhere}
.booking-card--flow-entry .booking-picker__trigger-meta{grid-column:2;grid-row:3;min-width:0;font-size:.76rem;line-height:1.3;color:var(--booking-muted);overflow-wrap:anywhere}
.booking-card--flow-entry .booking-submit__button--flow{position:relative;width:100%;min-height:57px;max-width:none;border:0;border-radius:17px;background:linear-gradient(107deg,var(--booking-primary-2),color-mix(in srgb,var(--booking-accent-deep) 93%,var(--booking-primary-2)));box-shadow:0 12px 26px color-mix(in srgb,var(--booking-accent-deep) 18%,transparent);color:#fff;font-weight:900;font-size:1rem}
.booking-card--flow-entry .booking-submit__button--flow::after{content:"\2192";display:inline-block;padding-left:16px;font-size:1.15rem;vertical-align:middle}
@media (max-width:430px){.booking-card--flow-entry .booking-picker__trigger{grid-template-columns:50px minmax(0,1fr) 36px;gap:5px 8px;padding:10px}.booking-card--flow-entry .booking-picker__trigger-chevron{width:36px;height:36px;border-radius:12px}.booking-card--flow-entry .booking-picker__trigger::before{width:50px;height:50px}}
.booking-selection-stack--entry{gap:12px}.booking-picker__label{font-size:.82rem;margin-bottom:8px}.booking-flow-actions{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}.booking-flow-overview{margin-top:2px}.booking-flow-overview__item{padding:12px 14px}.booking-flow-overview__item strong{font-size:.94rem}@media (max-width:767px){.booking-card--flow-entry{padding:var(--booking-card-inset,14px)}}[data-booking-clear-selection][hidden],.booking-flow-overview[hidden]{display:none}.booking-submit__button--summary{min-height:44px;padding:0 18px;font-size:.9rem}.public-booking-shell{background:radial-gradient(ellipse at 8% 7%,color-mix(in srgb,var(--booking-accent-strong) 21%,transparent),transparent 37%),radial-gradient(ellipse at 95% 15%,color-mix(in srgb,var(--booking-accent-deep) 8%,transparent),transparent 39%),linear-gradient(160deg,color-mix(in srgb,var(--booking-surface-2) 90%,#fff),color-mix(in srgb,var(--booking-accent) 20%,#fff));}.booking-hero__brand-glow{background:radial-gradient(circle,color-mix(in srgb,var(--booking-accent-strong) 72%,transparent) 0%,color-mix(in srgb,var(--booking-accent) 34%,transparent) 38%,rgba(255,255,255,0) 72%)}.booking-card{border-color:color-mix(in srgb,var(--booking-line-theme) 18%,var(--booking-line));background:radial-gradient(circle at top right,color-mix(in srgb,var(--booking-accent) 18%,transparent) 0%,transparent 26%),linear-gradient(180deg,color-mix(in srgb,#ffffff 96%,var(--booking-accent)) 0%,color-mix(in srgb,#ffffff 92%,var(--booking-surface-3)) 100%)}@media (max-width:480px){.booking-hero__brand-stage{min-height:340px;padding:24px}.booking-company__logo{min-height:150px}.booking-company__logo img{max-width:min(100%,calc(320px * var(--booking-logo-scale,1)));max-height:min(230px,calc(180px * var(--booking-logo-scale,1)))}}.booking-inline-loading{display:grid;gap:12px;padding:14px;border:1px solid rgba(244,169,185,.34);border-radius:18px;background:linear-gradient(180deg,rgba(255,250,248,.98) 0%,rgba(255,244,241,.95) 100%)}.booking-inline-loading__row{display:grid;gap:10px}.booking-inline-loading--specialists .booking-inline-loading__row{grid-template-columns:1fr}.booking-inline-loading--dates .booking-inline-loading__row{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-inline-loading--slots .booking-inline-loading__row{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-inline-loading__item{position:relative;display:block;min-height:54px;border-radius:16px;overflow:hidden;background:linear-gradient(180deg,rgba(255,238,241,.82) 0%,rgba(255,229,235,.92) 100%)}.booking-inline-loading--dates .booking-inline-loading__item{min-height:82px}.booking-inline-loading__item.is-wide{min-width:100%}.booking-inline-loading__item::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.58) 50%,rgba(255,255,255,0) 100%);transform:translateX(-100%);animation:bookingShimmer 1.15s ease-in-out infinite}.booking-inline-loading__label{color:var(--booking-muted);font-size:.9rem;font-weight:700;line-height:1.5}.is-ui-pulsed{animation:bookingUiPulse .34s ease}.booking-hero{margin-bottom:12px;}.booking-hero__panel{position:relative;overflow:hidden;padding:21px;border-color:color-mix(in srgb,var(--booking-line-theme) 32%,rgba(219,227,238,.72));box-shadow:0 20px 48px rgba(78,50,60,.07),inset 0 1px 0 rgba(255,255,255,.9);}.booking-hero__panel:not(.booking-hero__panel--with-background){background:radial-gradient(ellipse 54% 78% at 68% -24%,color-mix(in srgb,var(--booking-accent-strong) 57%,#fff) 0%,transparent 76%),radial-gradient(ellipse 55% 63% at 103% 72%,color-mix(in srgb,var(--booking-accent) 62%,#fff) 0%,transparent 78%),radial-gradient(ellipse 65% 40% at 5% 105%,color-mix(in srgb,var(--booking-line-theme) 17%,#fff) 0%,transparent 78%),linear-gradient(130deg,#fff 0%,color-mix(in srgb,var(--booking-accent) 14%,#fff) 53%,color-mix(in srgb,var(--booking-surface-2) 45%,#fff) 100%)}.booking-hero__panel:not(.booking-hero__panel--with-background)::after{background:linear-gradient(122deg,color-mix(in srgb,var(--booking-accent-deep) 23%,#fff) 0%,color-mix(in srgb,var(--booking-accent-strong) 80%,#fff) 48%,color-mix(in srgb,var(--booking-line-theme) 28%,#fff) 100%);opacity:.65;-webkit-mask-image:url("../img/booking-universal-waves-mask.svg");mask-image:url("../img/booking-universal-waves-mask.svg");-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:cover;mask-size:cover}.booking-hero__grid{gap:24px}.booking-hero__content{gap:12px;}.booking-hero__eyebrow{display:inline-flex;align-items:center;gap:13px;color:color-mix(in srgb,var(--booking-primary-2,#6f4852) 56%,#fff);font-size:.7rem;font-weight:750;letter-spacing:.18em;text-transform:uppercase}.booking-hero__eyebrow::after{content:"";display:block;width:72px;height:2px;border-radius:999px;background:linear-gradient(90deg,color-mix(in srgb,var(--booking-accent-deep,#d96f86) 76%,#fff),color-mix(in srgb,var(--booking-accent-strong,#ffd8df) 88%,#fff))}.booking-company__name{position:relative;max-width:13ch;font-size:clamp(2.9rem,5.05vw,5.1rem);line-height:.89;letter-spacing:-.058em;font-weight:680;text-wrap:balance;overflow-wrap:break-word;text-shadow:0 10px 28px rgba(45,32,37,.045)}.booking-company__description{display:flex;align-items:center;gap:12px;max-width:62ch;font-family:"Raleway",var(--booking-font-body),Inter,Arial,sans-serif;font-size:1.02rem;font-weight:400;line-height:1.5;letter-spacing:-.012em;color:color-mix(in srgb,var(--booking-muted,#7d6f73) 80%,var(--booking-text,#2d2025))}.booking-company__description::before{content:"";flex:0 0 42px;width:42px;height:3px;border-radius:999px;background:linear-gradient(90deg,var(--booking-accent-deep,#d96f86),color-mix(in srgb,var(--booking-accent-strong,#ffd8df) 90%,#fff));box-shadow:0 7px 16px color-mix(in srgb,var(--booking-accent-deep,#d96f86) 10%,transparent)}.booking-hero__advantages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;justify-content:start;gap:12px;width:100%;max-width:100%;margin-top:22px}.booking-hero__advantage{display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:8px;min-width:0;min-height:48px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none;}.booking-hero__advantage i{display:block;flex:0 0 44px;width:44px;height:44px;border:0;border-radius:0;background:transparent url('../img/booking-interface-icons.svg?v=20261027-vector') 0% 50% / 400% 100% no-repeat;box-shadow:none;filter:none;background-color:transparent;background-image:url('../img/booking-interface-icons.svg?v=20261027-vector');background-size:400% 100%;background-repeat:no-repeat;background-position:0% 50%;}.booking-hero__advantage i.booking-hero__advantage-icon--verified{background-image:url('../img/booking-interface-icons.svg?v=20261027-vector');background-position:33.333333% 50%;background-size:400% 100%;background-color:transparent;background-repeat:no-repeat;border:0;border-radius:0;box-shadow:none;filter:none;}.booking-hero__advantage i.booking-hero__advantage-icon--star{background-image:url('../img/booking-interface-icons.svg?v=20261027-vector');background-position:66.666667% 50%;background-size:400% 100%;background-color:transparent;background-repeat:no-repeat;border:0;border-radius:0;box-shadow:none;filter:none;}.booking-hero__advantage b{max-width:13ch;font-family:var(--booking-font-body);font-size:.76rem;font-weight:650;line-height:1.28;letter-spacing:-.01em;color:var(--booking-text);white-space:normal;overflow-wrap:anywhere;}.booking-hero__brand-stage{overflow:hidden;min-height:262px;padding:18px;border-radius:27px;border-color:color-mix(in srgb,#fff 48%,var(--booking-line-theme));background:radial-gradient(ellipse 70% 75% at 82% 7%,color-mix(in srgb,var(--booking-accent-strong) 17%,#fff),transparent 70%),linear-gradient(145deg,rgba(255,255,255,.93),color-mix(in srgb,var(--booking-accent) 28%,#fff));box-shadow:inset 0 2px 0 rgba(255,255,255,.92),0 20px 45px rgba(73,38,54,.095)}.booking-hero__brand-stage::before{content:"";position:absolute;inset:20px;border-radius:24px;border:1px dashed color-mix(in srgb,var(--booking-line-theme) 27%,transparent);pointer-events:none}.booking-company__logo img{transform-origin:center;transition:transform .24s ease,filter .24s ease}.booking-hero__panel:hover .booking-company__logo img{transform:translateY(-1px) scale(1.01);filter:drop-shadow(0 26px 34px rgba(15,23,42,.14))}.booking-hero__brand-glow{filter:blur(12px);opacity:.92}.booking-hero__brand-message{position:relative;z-index:2;display:inline-flex;align-items:center;justify-content:center;gap:9px;width:calc(100% - 72px);max-width:none;margin:0 auto;padding:10px 12px 0;border-top:1px solid color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 24%,transparent);box-sizing:border-box;color:color-mix(in srgb,var(--booking-accent-deep,#d96f86) 72%,#f38fb1);font-family:"Allura","Parisienne","Segoe Script","Snell Roundhand","Brush Script MT",cursive;font-size:clamp(1.15rem,1.65vw,1.55rem);font-style:normal;font-weight:400;line-height:1.02;letter-spacing:.005em;text-align:center;transform:rotate(-2deg);text-shadow:0 7px 18px color-mix(in srgb,var(--booking-accent-deep,#d96f86) 10%,transparent)}.booking-hero__brand-message span{display:block}.booking-hero__brand-message svg{width:25px;height:25px;margin-top:-4px;flex:0 0 auto;filter:drop-shadow(0 5px 10px color-mix(in srgb,var(--booking-accent-deep,#d96f86) 10%,transparent))}.booking-hero__panel--with-background .booking-hero__eyebrow,.booking-hero__panel--with-background .booking-hero__brand-message{color:inherit}@media (min-width:900px){.booking-hero__grid{grid-template-columns:minmax(0,1.1fr) minmax(390px,.90fr);align-items:center;gap:30px}}@media (max-width:899px){.booking-hero__advantages{justify-content:start;}.booking-hero__content{justify-items:start;text-align:left;}.booking-hero__eyebrow{justify-content:center}.booking-company__name{max-width:12ch}.booking-company__description{justify-content:center;text-align:center}}@media (max-width:767px){.booking-inline-loading{padding:12px;border-radius:16px}.booking-inline-loading--dates .booking-inline-loading__row,.booking-inline-loading--slots .booking-inline-loading__row{grid-template-columns:1fr 1fr}.booking-inline-loading__item{min-height:50px}.booking-inline-loading--dates .booking-inline-loading__item{min-height:74px}.booking-hero__panel{padding:16px;border-radius:24px}.booking-hero__grid{gap:18px}.booking-hero__eyebrow{font-size:.62rem;letter-spacing:.12em}.booking-hero__eyebrow::after{width:44px}.booking-company__name{max-width:none;font-size:clamp(2rem,10vw,3rem)}.booking-company__description{gap:9px;font-size:.9rem;line-height:1.5;justify-content:flex-start;text-align:left}.booking-company__description::before{flex-basis:34px;width:34px;height:2px}.booking-hero__advantages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin-top:18px;width:100%;}.booking-hero__advantage{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:5px;min-height:74px;text-align:center}.booking-hero__advantage b{max-width:15ch;font-family:var(--booking-font-body);font-size:.86rem;font-weight:700;line-height:1.35;letter-spacing:-.01em;color:var(--booking-text);white-space:normal;overflow-wrap:normal}.booking-hero__brand-stage{display:none;}.booking-company__logo{min-height:135px}.booking-hero__brand-stage::before{inset:12px;border-radius:18px}.booking-hero__brand-message{width:calc(100% - 48px);gap:6px;padding:11px 10px 0;font-size:1.2rem;transform:rotate(-2deg)}.booking-hero__brand-message svg{width:22px;height:22px;margin-top:-3px}}@keyframes bookingShimmer{100%{transform:translateX(100%)}}@keyframes bookingUiPulse{0%{opacity:.72;transform:translateY(2px)}100%{opacity:1;transform:none}}@keyframes bookingCardSelected{0%{transform:scale(.986)}100%{transform:scale(1)}}.booking-page{padding:18px 12px 28px}.booking-card{border-radius:26px}.booking-flow-overview{gap:10px}.booking-field input,.booking-field textarea{transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.booking-field input:hover,.booking-field textarea:hover{border-color:color-mix(in srgb,var(--booking-line-theme) 58%,var(--booking-line))}.booking-field input:focus,.booking-field textarea:focus{background:#ffffff}.booking-inline-status,.booking-inline-loading{border-radius:18px}.booking-inline-status{padding:15px 16px}@media (min-width:768px){.booking-page{padding:16px 16px 14px}.booking-flow-overview{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:767px){.booking-page{padding:16px 10px 24px}.booking-card{border-radius:22px}.booking-flow-overview{gap:8px}.booking-inline-status,.booking-inline-loading{border-radius:16px}}@keyframes bookingModalSwitchInForward{0%{transform:translateX(22px) scale(.988);opacity:0}100%{transform:translateY(0) scale(1);opacity:1}}@keyframes bookingModalSwitchInBackward{0%{transform:translateX(-22px) scale(.988);opacity:0}100%{transform:translateY(0) scale(1);opacity:1}}@keyframes bookingModalSwitchInForwardStrong{0%{transform:translateX(44px) scale(.978);opacity:0;filter:blur(1px)}100%{transform:translateY(0) scale(1);opacity:1;filter:none}}@keyframes bookingModalSwitchInBackwardStrong{0%{transform:translateX(-44px) scale(.978);opacity:0;filter:blur(1px)}100%{transform:translateY(0) scale(1);opacity:1;filter:none}}.booking-hero__brand-stage{min-height:calc(260px+(max(0px,(var(--booking-logo-scale,1) - 1)) * 120px))}.booking-company__logo{min-height:calc(180px+(max(0px,(var(--booking-logo-scale,1) - 1)) * 120px))}.booking-company__logo img{max-width:min(96%,calc(420px * var(--booking-logo-scale,1)));max-height:calc(180px * var(--booking-logo-scale,1))}@media (min-width:900px){.booking-hero__brand-stage{min-height:calc(320px+(max(0px,(var(--booking-logo-scale,1) - 1)) * 140px))}.booking-company__logo{min-height:calc(220px+(max(0px,(var(--booking-logo-scale,1) - 1)) * 140px))}.booking-company__logo img{max-height:calc(210px * var(--booking-logo-scale,1))}}@media (max-width:720px){.booking-hero__brand-stage{min-height:calc(220px+(max(0px,(var(--booking-logo-scale,1) - 1)) * 100px))}.booking-company__logo{min-height:calc(150px+(max(0px,(var(--booking-logo-scale,1) - 1)) * 90px))}.booking-company__logo img{max-height:calc(150px * var(--booking-logo-scale,1))}}.booking-options-panel{margin-top:6px;padding:13px 14px 12px;border:1px solid var(--booking-line,#ead9d8);border-radius:18px;background:var(--booking-surface-2,#fffaf8)}.booking-options-panel.is-hidden{display:none}.booking-options-panel__header{display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.booking-options-panel__summary{display:flex;justify-content:flex-end;min-width:0;color:var(--booking-text-muted,#64748b);line-height:1.35}.booking-options-grid{display:grid;gap:10px}.booking-option-card{position:relative;display:grid;grid-template-columns:18px minmax(0,1fr);align-items:start;row-gap:4px;column-gap:10px;padding:12px 14px;border:1px solid var(--booking-line,#ead9d8);border-radius:16px;background-color:#fff;background-clip:padding-box;cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.booking-option-card:hover{transform:translateY(-1px);border-color:var(--booking-line-theme,#ead9d8)}.booking-option-card.is-active{border-width:2px;border-color:var(--booking-accent-deep,#9f1239);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--booking-accent-deep,#9f1239) 28%,transparent),0 10px 24px rgba(159,18,57,.08)}.booking-option-card input{position:absolute;opacity:0;pointer-events:none}.booking-option-card__kind{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--booking-accent-deep,#d96f86)}.booking-option-card__name{font-size:14px;line-height:1.4;color:var(--booking-primary,#0f172a)}.booking-option-card__meta,.booking-option-card__description{font-size:13px;line-height:1.45;color:var(--booking-muted,#7d6f73)}@media (min-width:768px){.booking-options-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.booking-option-choice-grid{display:grid;gap:10px;margin-top:0}.booking-option-choice{display:flex;justify-content:space-between;gap:12px;padding:14px;border:1px solid var(--booking-line,#ead9d8);border-radius:18px;background:linear-gradient(135deg,#fff 0%,var(--booking-surface-2,#f8fafc) 100%);box-shadow:0 12px 28px rgba(15,23,42,.05)}.booking-option-choice--effect{background:linear-gradient(135deg,#fff 0%,color-mix(in srgb,var(--booking-accent,#f9a8d4) 8%,#fff) 100%)}.booking-option-choice--addon{background:linear-gradient(135deg,#fff 0%,color-mix(in srgb,var(--booking-accent-deep,#d96f86) 6%,#fff) 100%)}.booking-option-choice.is-empty{opacity:.72;box-shadow:none}.booking-option-choice.has-selection{border-color:color-mix(in srgb,var(--booking-accent-deep,#d96f86) 38%,var(--booking-line,#ead9d8));box-shadow:0 0 0 3px color-mix(in srgb,var(--booking-accent-deep,#d96f86) 9%,transparent),0 14px 30px rgba(15,23,42,.06)}.booking-option-choice__body{display:grid;gap:4px;min-width:0;flex:1 1 auto}.booking-option-choice__eyebrow{font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--booking-text-muted,#64748b)}.booking-option-choice__title{font-size:15px;line-height:1.25;color:var(--booking-primary,#0f172a)}.booking-option-choice__summary{font-size:12px;line-height:1.4;color:var(--booking-text-muted,#64748b);display:block;overflow:visible;text-overflow:clip;-webkit-line-clamp:unset;-webkit-box-orient:initial}.booking-option-choice__button{flex:0 0 auto;border:0;border-radius:999px;padding:9px 12px;background:var(--booking-primary,#0f172a);color:#fff;font-size:12px;font-weight:800;cursor:pointer;box-shadow:0 10px 22px rgba(15,23,42,.16);transition:transform .16s ease,box-shadow .16s ease,opacity .16s ease}.booking-option-choice__button:hover{transform:translateY(-1px);box-shadow:0 14px 28px rgba(15,23,42,.2)}.booking-option-choice__button:disabled{cursor:not-allowed;opacity:.55;transform:none;box-shadow:none}.booking-option-picker{position:absolute;inset:0;z-index:6;display:grid;place-items:end stretch;padding:10px;border-radius:inherit;overflow:hidden}.booking-option-picker[hidden]{display:none}.booking-option-picker__backdrop{position:absolute;inset:0;background:rgba(15,23,42,.28);backdrop-filter:blur(5px)}.booking-option-picker__sheet{position:relative;z-index:1;display:flex;flex-direction:column;max-height:min(76vh,640px);padding:16px;border:1px solid var(--booking-line,#ead9d8);border-radius:22px;background:var(--booking-surface,#fff);box-shadow:0 24px 60px rgba(15,23,42,.22);transform:translateY(12px);opacity:0;transition:transform .18s ease,opacity .18s ease}.booking-option-picker.is-open .booking-option-picker__sheet{transform:translateY(0);opacity:1}.booking-option-picker__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.booking-option-picker__header h4{margin:2px 0 3px;font-size:17px;line-height:1.25;color:var(--booking-primary,#0f172a)}.booking-option-picker__header p{margin:0;font-size:13px;line-height:1.45;color:var(--booking-text-muted,#64748b)}.booking-option-picker__eyebrow{font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--booking-accent-deep,#d96f86)}.booking-options-grid--picker{align-content:start;grid-auto-rows:max-content;overflow-x:hidden;overflow-y:auto;padding:4px 4px 6px;overscroll-behavior-y:contain;scrollbar-gutter:stable}.booking-option-card__check{grid-row:1 / span 4;width:18px;height:18px;margin-top:2px;border-radius:7px;border:1px solid var(--booking-line-strong,#cbd5e1);background:#fff;box-shadow:inset 0 0 0 2px #fff;transition:background .16s ease,border-color .16s ease}.booking-option-card.is-active .booking-option-card__check{background:var(--booking-accent-deep,#d96f86);border-color:var(--booking-accent-deep,#d96f86)}.booking-option-card.is-active .booking-option-card__check::after{content:"";display:block;width:8px;height:5px;margin:4px auto 0;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg)}.booking-option-card__kind,.booking-option-card__name,.booking-option-card__meta,.booking-option-card__description{grid-column:2}.booking-option-card--effect .booking-option-card__kind{color:color-mix(in srgb,var(--booking-accent,#f9a8d4) 74%,#9f1239)}.booking-option-picker__footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding-top:12px;border-top:1px solid var(--booking-line,#ead9d8)}.booking-option-picker__footer small{display:block;min-width:0;font-size:12px;line-height:1.35;color:var(--booking-text-muted,#64748b);overflow:visible;text-overflow:clip;-webkit-line-clamp:unset;-webkit-box-orient:initial}@media (max-width:520px){.booking-option-choice{align-items:stretch;flex-direction:column}.booking-option-picker__footer{align-items:stretch;flex-direction:column}.booking-option-picker__footer .booking-submit__button{width:100%}}@media (max-width:767px){#booking-options-modal > .booking-modal__sheet--service{display:flex;flex-direction:column;overflow:hidden;border:0}#booking-options-modal .booking-options-panel{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;border:0;background:transparent}#booking-options-modal .booking-modal__actions--compact{flex:0 0 auto;margin-top:auto;padding-bottom:max(16px,env(safe-area-inset-bottom,0px))}.booking-option-picker{padding:0;place-items:stretch;border-radius:0}.booking-option-picker__sheet{width:100%;max-width:none;height:100%;min-height:0;max-height:none;box-sizing:border-box;border:0;border-radius:0;box-shadow:none;margin:0;padding:calc(16px + env(safe-area-inset-top, 0px)) 16px calc(16px + env(safe-area-inset-bottom, 0px));transform:none}.booking-option-picker__header{flex:0 0 auto}.booking-options-grid--picker{flex:1 1 auto;min-height:0}.booking-option-picker__footer{flex:0 0 auto}}@media (min-width:768px){.booking-option-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-option-picker{place-items:center}.booking-option-picker__sheet{width:min(680px,100%)}}.booking-option-choice{align-items:flex-start}.booking-option-choice__button{margin-top:16px}.booking-selected-options-host,.booking-flow-overview__item strong.booking-selected-options-host{display:block;min-width:0}.booking-selected-options{display:block;min-width:0;max-width:100%}.booking-selected-options--empty{display:inline-flex;width:auto;color:var(--booking-text-muted,#64748b);font-size:12px;font-weight:650;line-height:1.35}.booking-selected-options__head{display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:6px;min-width:0}.booking-options-panel__summary .booking-selected-options__head{justify-content:flex-end}.booking-selected-options__count,.booking-selected-options__metric{display:inline-flex;align-items:center;min-height:22px;padding:3px 8px;border-radius:999px;border:1px solid var(--booking-line,#ead9d8);background:rgba(255,255,255,.82);color:var(--booking-text-muted,#64748b);font-size:11px;font-weight:760;line-height:1.2;white-space:nowrap}.booking-selected-options__count{border-color:color-mix(in srgb,var(--booking-accent-deep,#d96f86) 24%,var(--booking-line,#ead9d8));background:color-mix(in srgb,var(--booking-accent-deep,#d96f86) 5%,#fff);color:var(--booking-primary,#0f172a);font-weight:850}.booking-option-selection{display:grid;gap:8px;min-width:0;margin-top:4px}.booking-option-selection--empty{display:block;color:var(--booking-text-muted,#64748b);font-size:12px;font-weight:650;line-height:1.35}.booking-option-selection__metrics{display:flex;align-items:center;flex-wrap:wrap;gap:6px;min-width:0}.booking-option-selection__count,.booking-option-selection__metric{display:inline-flex;align-items:center;min-height:21px;padding:3px 7px;border-radius:999px;border:1px solid var(--booking-line,#ead9d8);background:rgba(255,255,255,.84);color:var(--booking-text-muted,#64748b);font-size:11px;font-weight:760;line-height:1.2;white-space:nowrap}.booking-option-selection__count{border-color:color-mix(in srgb,var(--booking-accent-deep,#d96f86) 24%,var(--booking-line,#ead9d8));background:color-mix(in srgb,var(--booking-accent-deep,#d96f86) 5%,#fff);color:var(--booking-primary,#0f172a);font-weight:850}.booking-option-selection__list{display:grid;gap:5px;min-width:0}.booking-option-selection__row{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0;padding:5px 0 0;border-top:1px solid color-mix(in srgb,var(--booking-line,#ead9d8) 70%,transparent)}.booking-option-selection__name{min-width:0;overflow:visible;text-overflow:clip;white-space:normal;overflow-wrap:anywhere;color:var(--booking-primary,#0f172a);font-size:12px;font-weight:760;line-height:1.3}.booking-option-selection__meta{flex:0 0 auto;color:var(--booking-text-muted,#64748b);font-size:11px;font-weight:760;line-height:1.25;white-space:nowrap}.booking-option-selection__more{display:block;padding-top:2px;color:var(--booking-text-muted,#64748b);font-size:11px;font-weight:700;line-height:1.3}.booking-option-picker__footer small .booking-selected-options{display:block}.booking-option-picker__footer small .booking-selected-options__head{justify-content:flex-start}.booking-flow-overview__item .booking-selected-options{display:block}@media (max-width:520px){.booking-options-panel{padding:12px}.booking-options-panel__header{align-items:flex-start;flex-direction:column;gap:6px}.booking-options-panel__summary,.booking-options-panel__summary .booking-selected-options__head{justify-content:flex-start}.booking-option-choice__button{width:100%;margin-top:6px;padding:10px 12px}.booking-option-selection__row{align-items:flex-start;flex-direction:column;gap:3px}.booking-option-selection__meta{white-space:normal}}#booking-options-modal .booking-modal__header{margin-bottom:10px}#booking-options-modal .booking-modal__header h3{margin-bottom:0}#booking-options-modal .booking-modal__lead{display:none}#booking-options-modal .booking-options-panel{margin-top:0;padding:12px}#booking-options-modal .booking-options-panel__header--summary-only{align-items:flex-start;justify-content:flex-start;margin:0 0 12px}#booking-options-modal .booking-options-panel__header--summary-only .booking-options-panel__summary,#booking-options-modal .booking-options-panel__header--summary-only .booking-selected-options__head{justify-content:flex-start}#booking-options-modal .booking-option-choice-grid{gap:12px}#booking-options-modal .booking-option-choice{align-items:flex-start;padding:14px}#booking-options-modal .booking-option-choice__body{gap:5px}#booking-options-modal .booking-option-choice__button{margin-top:28px}#booking-options-modal .booking-option-selection{gap:7px;margin-top:2px}#booking-options-modal .booking-option-selection__metrics{gap:5px}#booking-options-modal .booking-option-selection__count,#booking-options-modal .booking-option-selection__metric,#booking-options-modal .booking-selected-options__count,#booking-options-modal .booking-selected-options__metric{min-height:20px;padding:3px 7px;font-size:10.5px}#booking-options-modal .booking-option-selection__list{gap:4px;margin-top:1px}#booking-options-modal .booking-option-selection__row{padding-top:4px}#booking-options-modal .booking-option-selection__name{font-size:12px}#booking-options-modal .booking-option-selection__meta{font-size:10.5px}#booking-options-modal .booking-option-selection__more{padding-top:1px;font-size:10.5px}@media (max-width:520px){#booking-options-modal .booking-option-choice{min-height:0}#booking-options-modal .booking-option-choice__button{margin-top:6px}}#booking-options-modal .booking-option-selection__row{display:grid;grid-template-columns:minmax(0,1fr);gap:2px;align-items:start;justify-content:start}#booking-options-modal .booking-option-selection__name{overflow:visible;text-overflow:clip;white-space:normal;overflow-wrap:anywhere;line-height:1.32}#booking-options-modal .booking-option-selection__meta{white-space:normal;justify-self:start;color:var(--booking-text-muted,#64748b)}#booking-options-modal .booking-option-choice{min-height:142px}#booking-options-modal .booking-option-selection__list{max-height:112px;overflow-x:hidden;overflow-y:auto;padding-right:2px}@media (max-width:520px){#booking-options-modal .booking-option-selection__list{max-height:none;overflow:visible}}@media (max-width:767px){}.booking-priority-check__status--success{border-color:rgba(16,185,129,.34);background:linear-gradient(180deg,rgba(236,253,245,.98) 0%,#fff 100%)}.booking-priority-check__status--success strong{color:#047857}.booking-priority-check__status--neutral{border-color:rgba(203,213,225,.95);background:linear-gradient(180deg,#fff 0%,rgba(248,250,252,.96) 100%)}.booking-button-secondary--skip{justify-content:center;text-align:center}.booking-button-secondary--skip::before{content:none;display:none}.booking-modal__sheet--contact-step{width:min(820px,calc(100vw - 32px));padding:30px 30px 0;overflow:hidden;border-radius:30px}#booking-contact-modal .booking-modal__header{align-items:flex-start;margin-bottom:22px}#booking-contact-modal .booking-modal__header h3{margin:0 0 6px;font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif;font-size:clamp(2rem,4vw,2.7rem);font-weight:700;line-height:1;letter-spacing:-.035em;color:var(--booking-text,#2d2025)}.booking-modal__sheet--contact-step .booking-modal__lead{max-width:42rem;margin:0;color:color-mix(in srgb,var(--booking-muted,#7d6f73) 88%,#3b2430);font-size:1rem;line-height:1.55}.booking-form-grid--contact-step{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 22px}.booking-field--contact{position:relative;gap:8px}.booking-field--contact>label{font-size:.91rem;font-weight:800;color:var(--booking-text,#2d2025)}.booking-contact-input{position:relative;display:flex;align-items:center;min-width:0}.booking-contact-input__icon{position:absolute;z-index:2;left:17px;top:50%;display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;color:color-mix(in srgb,var(--booking-primary-2,#6f4852) 64%,#c98aa0);transform:translateY(-50%);pointer-events:none;transition:color .18s ease}.booking-contact-input__icon svg{display:block;width:100%;height:100%}.booking-contact-input input{box-sizing:border-box;width:100%;min-height:58px;padding:0 16px 0 52px;border-color:color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 32%,var(--booking-line,#ead9d8));border-radius:18px;background:rgba(255,255,255,.91);box-shadow:0 10px 26px rgba(45,32,37,.035);font-size:.98rem}.booking-contact-input input:hover{border-color:color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 52%,var(--booking-line,#ead9d8));box-shadow:0 12px 28px rgba(45,32,37,.055)}.booking-contact-input:focus-within .booking-contact-input__icon{color:var(--booking-accent-deep,#d96f86)}.booking-contact-input input:focus{border-color:color-mix(in srgb,var(--booking-accent-deep,#d96f86) 55%,var(--booking-line,#ead9d8));box-shadow:0 0 0 4px color-mix(in srgb,var(--booking-accent-strong,#ffd8df) 48%,transparent),0 14px 30px rgba(45,32,37,.06)}#booking-contact-modal .booking-field__error{position:absolute;z-index:8;top:-1px;right:0;left:auto;display:inline-flex;align-items:center;min-height:22px;width:auto;max-width:calc(100% - 108px);margin:0;padding:3px 10px 3px 27px;border:1px solid rgba(185,28,28,.16);border-radius:999px;background:linear-gradient(180deg,#fff,#fff4f4);color:#991b1b;font-size:.76rem;font-weight:800;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-shadow:0 6px 16px rgba(127,29,29,.08);pointer-events:none}#booking-contact-modal .booking-field__error[hidden]{display:none}#booking-contact-modal .booking-field__error::before{content:"!";position:absolute;left:7px;top:50%;display:grid;place-items:center;width:14px;height:14px;border-radius:999px;background:#b91c1c;color:#fff;font-size:.6rem;font-weight:950;transform:translateY(-50%)}#booking-contact-modal .booking-field__error::after{content:"";position:absolute;right:18px;bottom:-4px;width:7px;height:7px;border-right:1px solid rgba(185,28,28,.16);border-bottom:1px solid rgba(185,28,28,.16);background:#fff4f4;transform:rotate(45deg)}#booking-contact-modal .booking-contact-input input[aria-invalid="true"]{border-color:rgba(185,28,28,.48);box-shadow:0 0 0 3px rgba(185,28,28,.08)}.booking-modal__actions--contact-step{align-items:center;justify-content:space-between;gap:18px;margin:26px -30px 0;padding:20px 30px 24px;border-top:1px solid color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 24%,var(--booking-line,#ead9d8));background:linear-gradient(180deg,rgba(255,255,255,.62),rgba(255,247,250,.92))}.booking-modal__actions.booking-modal__actions--contact-step .booking-button-secondary--back{min-width:180px;min-height:54px;border-radius:18px;font-size:.94rem}.booking-modal__actions--contact-step .booking-submit__button--summary{width:min(100%,330px);min-height:54px;border-radius:18px;background:linear-gradient(135deg,#a80f49 0%,#c71862 52%,#d62b78 100%);box-shadow:0 16px 34px rgba(168,15,73,.22);font-size:.97rem}.booking-modal__actions--contact-step .booking-submit__button--summary::after{content:"→";display:inline-block;margin-left:10px;font-size:1.2em;line-height:1;transition:transform .18s ease}.booking-modal__actions--contact-step .booking-submit__button--summary:hover::after{transform:translateX(3px)}.booking-submit__button:disabled,.booking-submit__button[aria-disabled="true"]{cursor:not-allowed;opacity:.56;filter:grayscale(.18);transform:none;box-shadow:none}.booking-submit__button:disabled:hover,.booking-submit__button[aria-disabled="true"]:hover{transform:none;box-shadow:none;filter:grayscale(.18)}@media (max-width:767px){#booking-contact-modal .booking-modal__sheet--contact-step.booking-step-modal{position:absolute;inset:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:100%;height:auto;max-width:none;max-height:none;padding:0;border:0;border-radius:0;overflow:hidden;box-shadow:none;transform:none}#booking-contact-modal .booking-step-modal__header{position:relative;z-index:2;align-items:flex-start;margin:0;padding:calc(14px + env(safe-area-inset-top)) 14px 11px;border-bottom:1px solid rgba(111,72,82,.08);background:rgba(255,250,251,.98);backdrop-filter:blur(12px)}#booking-contact-modal .booking-step-modal__header h3{margin:0 0 6px;font-size:clamp(2rem,8vw,2.6rem);line-height:1.02}#booking-contact-modal .booking-step-modal__header .booking-modal__lead{font-size:.92rem;line-height:1.5}#booking-contact-modal .booking-contact-step__scroll{min-width:0;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:12px 14px 16px;scrollbar-gutter:auto}#booking-contact-modal .booking-contact-step__section{display:grid;align-content:start;gap:14px;min-width:0;max-width:100%}#booking-contact-modal .booking-contact-prefill{margin:0;padding:13px 14px}#booking-contact-modal .booking-form-grid--contact-step{display:grid;grid-template-columns:1fr;gap:14px;min-width:0;max-width:100%}#booking-contact-modal .booking-field--contact,#booking-contact-modal .booking-contact-input{min-width:0;max-width:100%}#booking-contact-modal .booking-contact-input input{display:block;width:100%;max-width:100%;min-height:54px}#booking-contact-modal .booking-modal__actions--contact-step.booking-step-modal__actions{position:relative;z-index:2;display:grid;grid-template-columns:1fr;gap:10px;align-items:stretch;justify-content:stretch;margin:0;padding:12px 14px calc(14px + env(safe-area-inset-bottom));border-top:1px solid rgba(111,72,82,.11);border-radius:0;background:rgba(255,250,251,.98);box-shadow:0 -10px 24px rgba(45,32,37,.06);backdrop-filter:blur(12px)}#booking-contact-modal .booking-modal__actions--contact-step>*{width:100%;min-width:0;max-width:none}#booking-contact-modal .booking-modal__actions--contact-step .booking-submit__button--summary{order:1;min-height:56px;border-radius:18px}#booking-contact-modal .booking-modal__actions--contact-step .booking-button-secondary--back{order:2;min-height:56px;border-radius:18px}}#booking-options-modal .booking-modal__actions--compact{display:flex;flex-direction:column;justify-content:center}#booking-options-modal .booking-modal__actions--compact>*{flex:0 0 auto}#booking-options-modal .booking-modal__actions--compact .booking-submit__button{order:1;width:min(100%,240px);min-height:44px;padding:0 18px;border-radius:14px;font-size:.94rem;line-height:1.2;box-shadow:0 12px 26px rgba(17,24,39,.16)}#booking-options-modal .booking-modal__actions--compact .booking-button-secondary--skip{display:inline-flex;align-items:center;justify-content:center;width:auto;min-width:168px;min-height:44px;padding:10px 14px;border:1px solid var(--booking-line-theme,#dbe3ee);border-radius:13px;background:linear-gradient(180deg,var(--booking-surface-3,#f8fafc) 0%,var(--booking-accent,#fdf2f8) 100%);color:#334155;font-size:.9rem;font-weight:800;text-align:center;box-shadow:0 6px 14px rgba(15,23,42,.04)}#booking-options-modal .booking-modal__actions--compact .booking-button-secondary--skip::before{content:none;display:none}#booking-options-modal .booking-modal__actions--compact .booking-button-secondary--skip:hover{border-color:var(--booking-line-theme,#dbe3ee);background:linear-gradient(180deg,#ffffff 0%,var(--booking-accent,#fdf2f8) 100%);color:#1e293b;box-shadow:0 10px 18px rgba(15,23,42,.07)}@media (max-width:767px){#booking-options-modal .booking-modal__actions--compact .booking-submit__button,#booking-options-modal .booking-modal__actions--compact .booking-button-secondary--skip{width:100%;min-width:0}}.booking-modal__actions .booking-button-secondary,#booking-options-modal .booking-modal__actions--compact .booking-button-secondary--skip{display:inline-flex;align-items:center;justify-content:center;width:auto;max-width:100%;border:1px solid var(--booking-line-theme,#f9cfe0);background:linear-gradient(180deg,#ffffff 0%,var(--booking-accent,#fdf2f8) 100%);color:#334155;font-weight:800;line-height:1.15;text-align:center;white-space:nowrap;box-shadow:0 6px 14px rgba(15,23,42,.04)}.booking-modal__actions .booking-button-secondary:hover,#booking-options-modal .booking-modal__actions--compact .booking-button-secondary--skip:hover{border-color:var(--booking-line-theme,#f9cfe0);background:linear-gradient(180deg,#ffffff 0%,var(--booking-accent,#fdf2f8) 100%);color:#1e293b;box-shadow:0 10px 18px rgba(15,23,42,.07)}.booking-modal__actions .booking-button-secondary--edit,.booking-modal__actions .booking-button-secondary--back,.booking-modal__actions .booking-button-secondary--skip,#booking-options-modal .booking-modal__actions--compact .booking-button-secondary--skip{border-style:solid}.booking-modal__actions .booking-button-secondary--edit::before,.booking-modal__actions .booking-button-secondary--back::before,.booking-modal__actions .booking-button-secondary--skip::before,#booking-options-modal .booking-modal__actions--compact .booking-button-secondary--skip::before{content:"✦";display:inline-flex;align-items:center;justify-content:center;flex-grow:0;flex-shrink:0;margin:0;border-radius:999px;background:color-mix(in srgb,var(--booking-accent-deep,#9f1239) 9%,transparent);color:var(--booking-accent-deep,#9f1239);font-weight:800;line-height:1}.booking-modal__actions .booking-button-secondary--back{color:#334155}#booking-options-modal .booking-modal__actions--compact{align-items:center}#booking-options-modal .booking-modal__actions--compact .booking-button-secondary--skip{order:2}@media (max-width:767px){.booking-modal__actions{align-items:center}.booking-modal__actions .booking-button-secondary,#booking-options-modal .booking-modal__actions--compact .booking-button-secondary--skip{width:auto;flex:0 0 auto}.booking-modal__actions--contact-step .booking-submit__button,#booking-options-modal .booking-modal__actions--compact .booking-submit__button{width:100%}}@media (max-width:380px){.booking-modal__actions .booking-button-secondary,#booking-options-modal .booking-modal__actions--compact .booking-button-secondary--skip{white-space:normal}}.booking-option-card{overflow:visible}.booking-option-card.is-active:hover{transform:none}.booking-option-picker__sheet{overflow:hidden}.booking-modal__actions .booking-button-secondary,#booking-options-modal .booking-modal__actions--compact .booking-button-secondary--skip{min-width:148px;min-height:44px;padding:8px 13px;border-radius:13px;gap:7px;font-size:.84rem}.booking-modal__actions .booking-button-secondary--edit::before,.booking-modal__actions .booking-button-secondary--back::before,.booking-modal__actions .booking-button-secondary--skip::before,#booking-options-modal .booking-modal__actions--compact .booking-button-secondary--skip::before{flex-basis:20px;width:20px;height:20px;font-size:.76rem}#booking-options-modal .booking-modal__actions--compact{gap:10px}@media (max-width:767px){.booking-modal__actions .booking-button-secondary,#booking-options-modal .booking-modal__actions--compact .booking-button-secondary--skip{min-width:142px;min-height:44px;padding:8px 12px;font-size:.83rem}}@media (max-width:380px){.booking-modal__actions .booking-button-secondary,#booking-options-modal .booking-modal__actions--compact .booking-button-secondary--skip{width:auto;min-width:136px}}@media (max-width:767px){.booking-modal__actions--contact-step #booking-contact-continue{order:1}.booking-modal__actions--contact-step .booking-button-secondary--back{order:2}}.booking-service-preparation{display:grid;gap:14px;margin:14px 0;padding:16px;border:1px solid rgba(159,18,57,.16);border-radius:22px;background:linear-gradient(180deg,rgba(255,247,250,.92),rgba(255,255,255,.96));box-shadow:0 16px 40px rgba(15,23,42,.06)}.booking-service-preparation[hidden]{display:none}.booking-service-preparation__panels{display:grid;gap:10px}.booking-service-preparation__panel{display:grid;gap:10px}.booking-service-preparation__panel[hidden]{display:none}.booking-service-preparation__block{padding:12px 13px;border:1px solid rgba(148,163,184,.22);border-radius:16px;background:rgba(255,255,255,.88)}.booking-service-preparation__block--warning{border-color:rgba(245,158,11,.34);background:rgba(255,251,235,.86)}.booking-service-preparation__block strong{display:block;margin-bottom:5px;color:#334155;font-size:.84rem}.booking-service-preparation__block p{margin:0;color:#475569;font-size:.86rem;line-height:1.55}.booking-consent--service-preparation{border-color:rgba(159,18,57,.16);background:rgba(255,255,255,.9)}.booking-consent--service-preparation[hidden]{display:none}.booking-consent--marketing{border-color:rgba(190,24,93,.14);background:linear-gradient(180deg,#fff 0%,#fff7fb 100%)}.booking-consent--marketing span{display:grid;gap:4px}.booking-consent--marketing strong{font-size:.94rem;line-height:1.35}.booking-consent--marketing small{color:var(--booking-muted);font-size:.8rem;line-height:1.45}@media (max-width:767px){.booking-service-preparation{padding:14px;border-radius:18px}}.booking-intake-form{display:grid;gap:14px;padding:10px;border-radius:24px;background:linear-gradient(135deg,rgba(255,255,255,.94),rgba(255,247,250,.9));border:1px solid rgba(190,118,135,.18);box-shadow:0 16px 44px rgba(40,30,36,.07)}.booking-intake-form[hidden],.booking-intake-form__panel[hidden]{display:none}.booking-intake-form__intro p,.booking-intake-form__note{margin:0}.booking-intake-form__intro p,.booking-intake-form__note,.booking-intake-question small{color:rgba(45,36,42,.66);line-height:1.45;font-size:.72rem}.booking-intake-form__panel,.booking-intake-form__panels{display:grid;gap:12px}.booking-intake-form__intro{display:grid;gap:4px}.booking-intake-question{display:grid;gap:7px;padding:12px;border-radius:18px;background:rgba(255,255,255,.78);border:1px solid rgba(35,31,36,.08)}.booking-intake-question label{font-weight:800;color:rgba(35,31,36,.9)}.booking-intake-question label span{color:#a9445b}.booking-intake-question input,.booking-intake-question textarea,.booking-intake-question select{box-sizing:border-box;width:100%;border:1px solid rgba(35,31,36,.14);border-radius:14px;background:rgba(255,255,255,.96);color:#241f24;font:inherit}.booking-intake-question input,.booking-intake-question select{height:46px;min-height:46px;padding:0 12px}.booking-intake-question textarea{min-height:92px;padding:10px 12px;resize:vertical}.booking-slot-chip small{display:block;margin-top:0.12rem;font-size:0.68rem;font-weight:650;opacity:0.72}.booking-waiting-list-cta{margin-top:18px;padding:10px;border:1px solid color-mix(in srgb,var(--booking-line-theme,#ead9d8) 24%,rgba(15,23,42,.10));border-radius:22px;background:radial-gradient(circle at top right,color-mix(in srgb,var(--booking-accent,#fff1f2) 62%,transparent) 0%,transparent 42%),linear-gradient(135deg,rgba(255,255,255,.96),color-mix(in srgb,var(--booking-surface-2,#fffaf8) 84%,#fff));box-shadow:0 18px 46px rgba(15,23,42,.08);display:grid;gap:12px}.booking-waiting-list-cta h3{margin:0;font-size:clamp(1.02rem,2.5vw,1.24rem);color:var(--booking-primary,#0f172a)}.booking-waiting-list-cta p{margin:5px 0 0;color:rgba(15,23,42,.66);line-height:1.55}.booking-button-secondary--waiting{width:fit-content;justify-self:start}.booking-step-modal{width:min(900px,calc(100vw - 32px));max-height:min(88dvh,860px);padding:24px 24px 0;overflow:hidden;border:1px solid color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 30%,rgba(255,255,255,.74));border-radius:30px;background:radial-gradient(circle at 88% 4%,rgba(255,225,234,.48),transparent 28%),linear-gradient(180deg,#fff 0%,#fffafb 100%);box-shadow:0 34px 90px rgba(45,32,37,.18);grid-template-rows:auto minmax(0,1fr) auto}.booking-step-modal.booking-modal__sheet{display:grid}.booking-step-modal__scroll{min-height:0;min-width:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain;touch-action:pan-y}.booking-step-modal__header{align-items:center;margin-bottom:16px}.booking-step-modal__heading{display:flex;align-items:center;gap:14px;min-width:0}.booking-step-modal__icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 56px;width:56px;height:56px;border-radius:18px;color:var(--booking-accent-deep,#d96f86);background:linear-gradient(180deg,#fff2f7 0%,#ffe8f1 100%);box-shadow:0 10px 24px rgba(214,43,120,.08)}.booking-step-modal__icon svg{width:28px;height:28px}.booking-step-modal__header h3{margin:0 0 5px;font-family:"Cormorant Garamond",Georgia,serif;font-size:2rem;line-height:1;letter-spacing:-.025em;color:var(--booking-text,#2d2025)}.booking-step-modal__header .booking-modal__lead{margin:0;color:var(--booking-muted,#7d6f73);font-size:.94rem;line-height:1.4}.booking-step-modal__section{min-height:0;overflow-x:hidden;overflow-y:auto;display:grid;align-content:start;gap:14px;padding:2px 5px 16px 0;scrollbar-gutter:auto}.booking-step-modal__section-head{display:grid;gap:4px}.booking-step-modal__section-head h4{margin:0;color:var(--booking-text,#2d2025);font-size:1.02rem;font-weight:900}.booking-step-modal__section-head p{margin:0;color:var(--booking-muted,#7d6f73);font-size:.88rem;line-height:1.45}.booking-step-modal__slots{gap:10px;min-height:0}.booking-step-modal--hours .booking-slot-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-content:start;grid-auto-rows:max-content}.booking-step-modal--hours .booking-slot-chip{position:relative;display:grid;align-content:center;justify-items:start;gap:4px;min-height:78px;padding:14px 56px 14px 18px;border:1px solid color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 34%,var(--booking-line,#ead9d8));border-radius:20px;background:rgba(255,255,255,.92);color:var(--booking-text,#2d2025);font:inherit;text-align:left;box-shadow:0 8px 22px rgba(45,32,37,.03);transform:none;animation:none;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease}.booking-step-modal--hours .booking-slot-chip::before{content:"";position:absolute;top:50%;right:18px;width:25px;height:25px;border:2px solid color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 62%,var(--booking-line,#ead9d8));border-radius:999px;background:#fff;box-shadow:inset 0 0 0 7px #fff,0 5px 14px rgba(45,32,37,.04);transform:translateY(-50%);opacity:1;pointer-events:none}.booking-step-modal--hours .booking-slot-chip::after{content:none;display:none}.booking-step-modal--hours .booking-slot-chip:hover{transform:none;border-color:color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 72%,var(--booking-line,#ead9d8));background:#fff;box-shadow:0 12px 28px rgba(45,32,37,.06)}.booking-step-modal--hours .booking-slot-chip:hover::before{transform:translateY(-50%);border-color:var(--booking-line-theme,#f4a9b9)}.booking-step-modal--hours .booking-slot-chip.is-active{transform:none;animation:none;border-color:var(--booking-accent-deep,#d96f86);background:linear-gradient(135deg,#fff 0%,#fff4f8 100%);box-shadow:0 14px 30px rgba(214,43,120,.10)}.booking-step-modal--hours .booking-slot-chip.is-active::before{border-color:var(--booking-accent-deep,#d96f86);background:var(--booking-accent-deep,#d96f86);box-shadow:inset 0 0 0 6px #fff,0 7px 17px rgba(214,43,120,.15);transform:translateY(-50%)}.booking-step-modal--hours .booking-slot-chip>span{display:block;padding:0;color:var(--booking-text,#2d2025);font-size:1rem;font-weight:850;line-height:1.25}.booking-step-modal--hours .booking-slot-chip>small{display:inline-flex;align-items:center;gap:6px;margin:0;color:var(--booking-muted,#7d6f73);font-size:.74rem;font-weight:700;line-height:1.3;opacity:1}.booking-step-modal--hours .booking-slot-chip>small::before{content:"✦";color:var(--booking-accent-deep,#d96f86);font-size:.9rem;line-height:1}.booking-hours-waiting{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:14px;margin:2px 0 0;padding:12px 14px;border:1px solid color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 26%,var(--booking-line,#ead9d8));border-radius:20px;background:linear-gradient(135deg,rgba(255,248,251,.94) 0%,rgba(255,255,255,.96) 100%);box-shadow:none}.booking-hours-waiting__icon{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:15px;color:var(--booking-accent-deep,#d96f86);background:linear-gradient(180deg,#fff2f7 0%,#ffe8f1 100%)}.booking-hours-waiting__icon svg{width:24px;height:24px}.booking-hours-waiting__copy{min-width:0}.booking-hours-waiting h3{margin:0;color:var(--booking-text,#2d2025);font-size:.96rem;font-weight:900;line-height:1.3}.booking-hours-waiting p{margin:3px 0 0;color:var(--booking-muted,#7d6f73);font-size:.8rem;line-height:1.4}.booking-hours-waiting__button{display:inline-flex;align-items:center;justify-content:center;gap:10px;width:auto;min-width:220px;min-height:44px;margin:0;padding:0 15px;border-radius:15px;justify-self:end;white-space:nowrap}.booking-hours-waiting__button span{color:var(--booking-accent-deep,#d96f86);font-size:1.1rem}.booking-step-modal__actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 -24px;padding:16px 24px max(18px,env(safe-area-inset-bottom));border-top:1px solid color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 24%,var(--booking-line,#ead9d8));background:rgba(255,250,252,.96);backdrop-filter:blur(12px)}.booking-step-modal__actions .booking-button-secondary--back{min-width:180px}.booking-step-modal__continue{width:min(100%,390px);min-height:54px;background:linear-gradient(135deg,#a80f49 0%,#c71862 52%,#d62b78 100%);box-shadow:0 16px 34px rgba(168,15,73,.20)}.booking-step-modal__continue::after{content:"→";margin-left:10px;font-size:1.16em}.booking-step-modal__continue:disabled,.booking-step-modal__continue[aria-disabled="true"]{cursor:not-allowed;opacity:.48;box-shadow:none;filter:grayscale(.15)}@media(max-width:720px){#booking-slots-modal .booking-modal__sheet--date-picker{position:absolute;inset:0;width:100%;height:auto;max-height:none;padding:0;border:0;border-radius:0;box-shadow:none;grid-template-rows:auto auto minmax(0,1fr) auto;overflow:hidden}#booking-slots-modal .booking-date-modal__header{margin-bottom:0;padding:calc(14px + env(safe-area-inset-top)) 14px 10px}#booking-slots-modal .booking-date-modal__heading{gap:10px}#booking-slots-modal .booking-date-modal__icon{flex:0 0 44px;width:44px;height:44px;border-radius:14px}#booking-slots-modal .booking-date-modal__icon svg{width:22px;height:22px}#booking-slots-modal .booking-date-modal__header h3{font-size:1.55rem}#booking-slots-modal .booking-date-modal__header .booking-modal__lead{font-size:.84rem}#booking-slots-modal .booking-date-modal__hint{margin:0 14px 10px}#booking-slots-modal .booking-date-modal__section{min-height:0;overflow-x:hidden;overflow-y:auto;padding:0 14px 12px;scrollbar-gutter:auto}#booking-slots-modal .booking-date-modal__actions{display:grid;grid-template-columns:1fr;gap:9px;margin:0;padding:14px 14px max(16px,env(safe-area-inset-bottom));border-top:1px solid color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 24%,var(--booking-line,#ead9d8));background:rgba(255,250,252,.96);backdrop-filter:blur(12px)}#booking-slots-modal .booking-date-modal__actions>*{width:100%;min-width:0;max-width:none}#booking-slots-modal .booking-date-modal__continue{order:1}#booking-slots-modal .booking-date-modal__actions .booking-button-secondary--back{order:2}.booking-step-modal{position:absolute;inset:0;width:100%;height:auto;max-height:none;padding:0;border:0;border-radius:0;box-shadow:none;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;transform:none}.booking-step-modal--hours{grid-template-rows:auto auto minmax(0,1fr) auto auto}.booking-step-modal__header{margin:0;padding:calc(14px + env(safe-area-inset-top)) 14px 10px}.booking-step-modal__heading{gap:10px}.booking-step-modal__icon{flex-basis:44px;width:44px;height:44px;border-radius:14px}.booking-step-modal__icon svg{width:22px;height:22px}.booking-step-modal__header h3{font-size:1.55rem}.booking-step-modal__header .booking-modal__lead{font-size:.84rem}.booking-step-modal--hours .booking-step-modal__section{display:contents}.booking-step-modal__section-head{padding:0 14px 10px}.booking-step-modal__slots{min-height:0;overflow-x:hidden;overflow-y:auto;padding:0 14px 12px;scrollbar-gutter:auto;overscroll-behavior:contain}.booking-step-modal--hours .booking-slot-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.booking-step-modal--hours .booking-slot-chip{min-height:70px;padding:11px 42px 11px 13px;border-radius:17px}.booking-step-modal--hours .booking-slot-chip::before{right:12px;width:22px;height:22px}.booking-step-modal--hours .booking-slot-chip>span{font-size:.89rem}.booking-step-modal--hours .booking-slot-chip>small{font-size:.68rem}.booking-hours-waiting{grid-template-columns:40px minmax(0,1fr);gap:9px;margin:0 14px 10px;padding:10px 11px;border-radius:16px;background:rgba(255,255,255,.98);box-shadow:none}.booking-hours-waiting__icon{width:38px;height:38px;border-radius:12px}.booking-hours-waiting__copy{align-self:center}.booking-hours-waiting h3{font-size:.85rem}.booking-hours-waiting p{margin-top:2px;font-size:.72rem;line-height:1.35}.booking-hours-waiting__button{grid-column:1/-1;width:100%;min-width:0;justify-self:stretch;margin:0}.booking-step-modal__actions{display:grid;grid-template-columns:1fr;gap:8px;margin:0;padding:10px 14px calc(10px + env(safe-area-inset-bottom));border-top:1px solid color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 24%,var(--booking-line,#ead9d8));background:#fffafb;box-shadow:0 -10px 24px rgba(45,32,37,.05);backdrop-filter:none}.booking-step-modal__actions>*{width:100%;min-width:0;max-width:none}.booking-step-modal__continue{order:1;min-height:48px}.booking-step-modal__actions .booking-button-secondary--back{order:2}}@media(max-width:480px){.booking-step-modal--hours .booking-slot-grid{grid-template-columns:1fr}.booking-step-modal--hours .booking-slot-chip{min-height:66px}}.booking-alert--success{border-color:rgba(16,185,129,.24);background:rgba(236,253,245,.92);color:#065f46}.booking-public--proposal{width:min(880px,calc(100% - 32px));margin:clamp(18px,5vw,52px) auto clamp(34px,6vw,72px);color:var(--booking-text,#0f172a)}.booking-proposal-card{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(circle at 100% 0%,color-mix(in srgb,var(--booking-accent-strong,#f9d5e6) 56%,transparent) 0 220px,transparent 360px),radial-gradient(circle at 0% 100%,color-mix(in srgb,var(--booking-accent,#fff1f7) 68%,transparent) 0 210px,transparent 360px),linear-gradient(180deg,rgba(255,255,255,.98) 0%,rgba(255,251,253,.96) 100%);border:1px solid color-mix(in srgb,var(--booking-line,#ead5df) 76%,#ffffff);border-radius:clamp(24px,4vw,36px);box-shadow:0 30px 90px rgba(96,42,68,.13),0 10px 30px rgba(15,23,42,.05);padding:clamp(20px,4.5vw,44px)}.booking-proposal-card::before{content:"";position:absolute;inset:16px;z-index:-1;border-radius:inherit;border:1px solid rgba(255,255,255,.62);pointer-events:none}.booking-proposal-hero{display:grid;grid-template-columns:auto 1fr;gap:clamp(14px,3vw,22px);align-items:start;margin-bottom:18px}.booking-proposal-hero__badge{display:grid;place-items:center;width:clamp(46px,7vw,62px);height:clamp(46px,7vw,62px);border-radius:22px;background:linear-gradient(135deg,color-mix(in srgb,var(--booking-accent-deep,#c45c88) 14%,#ffffff),#ffffff 72%);border:1px solid color-mix(in srgb,var(--booking-accent-deep,#c45c88) 18%,#ffffff);color:var(--booking-accent-deep,#c45c88);font-size:clamp(1.25rem,3vw,1.8rem);font-weight:900;box-shadow:0 16px 34px color-mix(in srgb,var(--booking-accent-deep,#c45c88) 13%,transparent)}.booking-proposal-hero__badge--close{cursor:pointer;text-decoration:none;line-height:1;transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease}.booking-proposal-hero__badge--close:hover,.booking-proposal-hero__badge--close:focus-visible{transform:translateY(-1px);background:#ffffff;border-color:color-mix(in srgb,var(--booking-accent-deep,#c45c88) 34%,#ffffff);box-shadow:0 20px 42px color-mix(in srgb,var(--booking-accent-deep,#c45c88) 18%,transparent);outline:none}.booking-proposal-card__eyebrow{color:color-mix(in srgb,var(--booking-accent-deep,#9f426c) 72%,#475569);font-size:12px;font-weight:900;letter-spacing:.16em;text-transform:uppercase;margin-bottom:8px}.booking-proposal-card h1{margin:0 0 10px;color:var(--booking-text,#111827);font-family:var(--booking-font-heading,Georgia,serif);font-size:clamp(1.95rem,5vw,3.15rem);line-height:1.04;letter-spacing:-.02em}.booking-proposal-card__lead,.booking-proposal-card__hint{color:color-mix(in srgb,var(--booking-muted,#64748b) 86%,#111827);font-size:.96rem;line-height:1.72;margin:0}.booking-proposal-card__hint{margin-top:18px;padding:13px 15px;border:1px solid color-mix(in srgb,var(--booking-line,#ead5df) 70%,#ffffff);border-radius:18px;background:rgba(255,255,255,.64)}.booking-alert--proposal{display:grid;grid-template-columns:auto 1fr;align-items:start;gap:11px;margin:16px 0;padding:14px 16px;border-radius:18px;border-width:1px;font-weight:750;line-height:1.55}.booking-alert--proposal span{display:grid;place-items:center;width:24px;height:24px;border-radius:999px;background:rgba(255,255,255,.72);font-size:.85rem;font-weight:900}.booking-alert--proposal p{margin:0}.booking-proposal-status{display:inline-flex;align-items:center;gap:9px;min-height:36px;margin:4px 0 18px;padding:8px 13px;border-radius:999px;background:rgba(255,255,255,.72);border:1px solid color-mix(in srgb,var(--booking-line,#ead5df) 82%,#ffffff);color:#475569;font-size:.85rem;font-weight:750}.booking-proposal-status__dot{width:9px;height:9px;border-radius:999px;background:var(--booking-accent-deep,#c45c88);box-shadow:0 0 0 4px color-mix(in srgb,var(--booking-accent-deep,#c45c88) 14%,transparent)}.booking-proposal-status--accepted .booking-proposal-status__dot{background:#16a34a;box-shadow:0 0 0 4px rgba(22,163,74,.13)}.booking-proposal-status--rejected .booking-proposal-status__dot,.booking-proposal-status--cancelled .booking-proposal-status__dot{background:#be123c;box-shadow:0 0 0 4px rgba(190,18,60,.12)}.booking-proposal-status--expired .booking-proposal-status__dot{background:#d97706;box-shadow:0 0 0 4px rgba(217,119,6,.13)}.booking-proposal-date-card{display:grid;grid-template-columns:1.15fr .85fr;gap:12px;margin:18px 0}.booking-proposal-date-card>div{position:relative;overflow:hidden;min-height:96px;padding:18px;border-radius:24px;border:1px solid color-mix(in srgb,var(--booking-accent-deep,#c45c88) 16%,#ffffff);background:linear-gradient(135deg,color-mix(in srgb,var(--booking-accent,#fff1f7) 84%,#ffffff) 0%,rgba(255,255,255,.88) 100%);box-shadow:0 16px 36px rgba(96,42,68,.07)}.booking-proposal-date-card span{display:block;color:color-mix(in srgb,var(--booking-muted,#64748b) 88%,#111827);font-size:.77rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.booking-proposal-date-card strong{display:block;margin-top:8px;color:var(--booking-text,#111827);font-size:clamp(1.45rem,4vw,2.15rem);line-height:1.05;letter-spacing:-.03em}.booking-proposal-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0 22px}.booking-proposal-summary>div{min-width:0;padding:14px 15px;border:1px solid color-mix(in srgb,var(--booking-line,#ead5df) 74%,#ffffff);border-radius:18px;background:rgba(255,255,255,.70);box-shadow:0 10px 24px rgba(96,42,68,.035)}.booking-proposal-summary__wide{grid-column:1 / -1}.booking-proposal-summary dt{color:color-mix(in srgb,var(--booking-muted,#64748b) 88%,#111827);font-size:.64rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.booking-proposal-summary dd{margin:6px 0 0;color:var(--booking-text,#111827);font-size:.95rem;font-weight:850;line-height:1.45;text-align:left;overflow-wrap:anywhere}.booking-proposal-actions{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:14px;align-items:stretch;justify-content:stretch;margin-top:24px}.booking-proposal-actions form{min-width:0;margin:0}.booking-proposal-actions--single{display:flex;justify-content:flex-start}.booking-proposal-decision{height:100%;padding:17px;border-radius:24px;border:1px solid color-mix(in srgb,var(--booking-line,#ead5df) 72%,#ffffff);background:rgba(255,255,255,.78);box-shadow:0 14px 34px rgba(96,42,68,.055)}.booking-proposal-decision h2,.booking-proposal-result h2,.booking-proposal-reject-box__intro h2{margin:0;color:var(--booking-text,#111827);font-family:var(--booking-font-body,Inter,Arial,sans-serif);font-size:1rem;line-height:1.25;letter-spacing:-.01em}.booking-proposal-decision p,.booking-proposal-result p,.booking-proposal-reject-box__intro p{margin:7px 0 0;color:color-mix(in srgb,var(--booking-muted,#64748b) 88%,#111827);font-size:.72rem;line-height:1.58}.booking-proposal-decision--accept{display:flex;flex-direction:column;justify-content:space-between;gap:16px;background:radial-gradient(circle at top right,rgba(22,163,74,.10),transparent 42%),rgba(255,255,255,.82)}.booking-proposal-decision--reject{display:grid;gap:14px}.booking-proposal-reject-box{display:grid;gap:10px}.booking-proposal-reject-box label{color:color-mix(in srgb,var(--booking-text,#111827) 74%,var(--booking-muted,#64748b));font-size:.78rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.booking-proposal-reject-box select,.booking-proposal-reject-box textarea{width:100%;box-sizing:border-box;border:1px solid color-mix(in srgb,var(--booking-line,#ead5df) 84%,#ffffff);border-radius:16px;background:rgba(255,255,255,.92);color:var(--booking-text,#111827);font:inherit;font-size:.95rem;outline:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.72);transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.booking-proposal-reject-box select{min-height:48px;padding:0 44px 0 14px;appearance:none;background-image:linear-gradient(45deg,transparent 50%,color-mix(in srgb,var(--booking-accent-deep,#c45c88) 75%,#111827) 50%),linear-gradient(135deg,color-mix(in srgb,var(--booking-accent-deep,#c45c88) 75%,#111827) 50%,transparent 50%);background-position:calc(100% - 20px) 21px,calc(100% - 14px) 21px;background-size:6px 6px,6px 6px;background-repeat:no-repeat}.booking-proposal-reject-box textarea{min-height:96px;resize:vertical;padding:13px 14px;line-height:1.55}.booking-proposal-reject-box select:focus,.booking-proposal-reject-box textarea:focus{border-color:color-mix(in srgb,var(--booking-accent-deep,#c45c88) 46%,#ffffff);background:#ffffff;box-shadow:0 0 0 4px color-mix(in srgb,var(--booking-accent-deep,#c45c88) 12%,transparent)}.booking-proposal-actions .booking-button,.booking-proposal-actions button.booking-button,.booking-proposal-actions a.booking-button{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:50px;padding:13px 18px;border-radius:16px;border:1px solid transparent;font:inherit;font-weight:900;line-height:1.2;text-decoration:none;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease,background .18s ease}.booking-proposal-actions .booking-button:hover{transform:translateY(-1px)}.booking-button--proposal-accept,.booking-button--proposal-home{color:#ffffff;background:linear-gradient(135deg,var(--booking-primary,#111827) 0%,color-mix(in srgb,var(--booking-accent-deep,#c45c88) 56%,#111827) 100%);box-shadow:0 18px 36px color-mix(in srgb,var(--booking-accent-deep,#c45c88) 25%,transparent)}.booking-button--proposal-reject,.booking-button--ghost{background:rgba(255,255,255,.92);color:color-mix(in srgb,var(--booking-text,#111827) 88%,#be123c);border-color:color-mix(in srgb,#be123c 18%,#ffffff);box-shadow:0 12px 26px rgba(190,18,60,.06)}.booking-proposal-result{margin-top:22px;padding:18px;border-radius:22px;border:1px solid color-mix(in srgb,var(--booking-line,#ead5df) 76%,#ffffff);background:rgba(255,255,255,.74)}.booking-proposal-result--accepted{border-color:rgba(22,163,74,.20);background:linear-gradient(135deg,rgba(236,253,245,.88),rgba(255,255,255,.82))}.booking-proposal-result--rejected,.booking-proposal-result--cancelled{border-color:rgba(190,18,60,.16);background:linear-gradient(135deg,rgba(255,241,242,.84),rgba(255,255,255,.82))}.booking-proposal-result--expired{border-color:rgba(217,119,6,.18);background:linear-gradient(135deg,rgba(255,251,235,.86),rgba(255,255,255,.82))}@media (max-width:720px){.booking-public--proposal{width:min(100% - 18px,880px);margin-top:12px}.booking-proposal-card{padding:18px;border-radius:24px}.booking-proposal-hero{grid-template-columns:1fr}.booking-proposal-hero__badge{width:46px;height:46px;border-radius:18px}.booking-proposal-date-card,.booking-proposal-summary,.booking-proposal-actions{grid-template-columns:1fr}.booking-proposal-date-card>div{min-height:auto;padding:10px}.booking-proposal-summary>div{padding:13px 14px}.booking-proposal-actions{gap:12px}.booking-proposal-actions--single,.booking-proposal-actions form,.booking-proposal-actions .booking-button{width:100%}}#booking-waiting-list-modal{position:fixed;inset:0;z-index:9999;width:auto;max-width:100%;min-height:0;box-sizing:border-box;align-items:center;justify-content:center;overflow:hidden}#booking-waiting-list-modal,#booking-waiting-list-modal *,#booking-waiting-list-modal *::before,#booking-waiting-list-modal *::after{box-sizing:border-box}#booking-waiting-list-modal[aria-hidden="false"]{display:flex}#booking-waiting-list-modal[aria-hidden="true"]{display:none}#booking-waiting-list-modal .booking-modal__backdrop{position:absolute;inset:0}#booking-waiting-list-modal .booking-step-modal--waiting{width:min(900px,calc(100vw - 32px));max-height:min(88dvh,860px)}#booking-waiting-list-modal .booking-waiting-modal__section{display:block;padding:2px 5px 16px 0;overflow-x:hidden;overflow-y:auto;scrollbar-gutter:auto;overscroll-behavior-y:contain}#booking-waiting-list-modal .booking-waiting-list-form{display:grid;gap:14px;min-width:0}#booking-waiting-list-modal .booking-waiting-toast{margin:0 0 14px;padding:10px 12px;border:1px solid rgba(220,38,38,.18);border-radius:16px;background:rgba(255,247,247,.98);color:#991b1b;box-shadow:0 14px 34px rgba(153,27,27,.12);font-size:.82rem;font-weight:850;line-height:1.35;letter-spacing:-.01em}#booking-waiting-list-modal .booking-waiting-toast[hidden]{display:none}#booking-waiting-list-modal .booking-waiting-toast--info{border-color:rgba(217,111,134,.18);background:rgba(239,246,255,.98);color:var(--booking-accent-deep);box-shadow:0 14px 34px rgba(217,111,134,.10)}#booking-waiting-list-modal .booking-waiting-toast--success{border-color:#bbf7d0;background:var(--booking-success-bg,#ecfdf3);color:var(--booking-success,#166534);box-shadow:0 14px 34px rgba(22,101,52,.10)}#booking-waiting-list-modal .booking-waiting-list-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}#booking-waiting-list-modal .booking-waiting-list-summary>div{min-width:0;padding:14px 18px;border:1px solid color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 30%,var(--booking-line,#ead9d8));border-radius:20px;background:rgba(255,255,255,.94);box-shadow:0 8px 22px rgba(45,32,37,.03)}#booking-waiting-list-modal .booking-waiting-list-summary span,#booking-waiting-list-modal .booking-field--compact>span{display:block;margin-bottom:6px;color:var(--booking-muted,#7d6f73);font-size:.68rem;font-weight:850;letter-spacing:.055em;text-transform:uppercase}#booking-waiting-list-modal .booking-waiting-list-summary strong{display:block;color:var(--booking-text,#2d2025);font-size:1rem;font-weight:850;line-height:1.3}#booking-waiting-list-modal .booking-waiting-list-preferred{display:grid;gap:12px;padding:14px;border:1px solid color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 28%,var(--booking-line,#ead9d8));border-radius:20px;background:linear-gradient(135deg,rgba(255,248,251,.94) 0%,rgba(255,255,255,.96) 100%);box-shadow:none}#booking-waiting-list-modal .booking-waiting-date-mode{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}#booking-waiting-list-modal .booking-waiting-date-mode__option{position:relative;display:flex;align-items:center;justify-content:center;min-height:46px;padding:0 12px;border:1px solid color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 34%,var(--booking-line,#ead9d8));border-radius:16px;background:rgba(255,255,255,.92);color:var(--booking-muted,#7d6f73);font-size:.78rem;font-weight:850;line-height:1.15;text-align:center;cursor:pointer;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease,color .18s ease}#booking-waiting-list-modal .booking-waiting-date-mode__option:hover{border-color:color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 72%,var(--booking-line,#ead9d8));background:#fff;color:var(--booking-text,#2d2025)}#booking-waiting-list-modal .booking-waiting-date-mode__option.is-active{border-color:var(--booking-accent-deep,#d96f86);background:linear-gradient(135deg,#fff 0%,#fff4f8 100%);color:var(--booking-text,#2d2025);box-shadow:0 10px 24px rgba(214,43,120,.08)}#booking-waiting-list-modal .booking-waiting-date-mode__option input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}#booking-waiting-list-modal .booking-waiting-list-grid--date-time{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.95fr) minmax(0,.95fr);gap:10px}#booking-waiting-list-modal .booking-field--compact{position:relative;min-width:0}#booking-waiting-list-modal .booking-field--compact input,#booking-waiting-list-modal .booking-field--compact textarea,#booking-waiting-list-modal .booking-field--compact select{width:100%;max-width:100%;min-width:0;border:1px solid color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 30%,var(--booking-line,#ead9d8));border-radius:17px;background:rgba(255,255,255,.96);color:var(--booking-text,#2d2025);box-shadow:0 8px 22px rgba(45,32,37,.025);font:inherit;font-weight:800;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}#booking-waiting-list-modal .booking-field--compact input,#booking-waiting-list-modal .booking-field--compact select{min-height:52px;padding:0 14px}#booking-waiting-list-modal .booking-field--compact textarea{min-height:92px;padding:12px 14px;resize:vertical}#booking-waiting-list-modal .booking-field--compact input:focus,#booking-waiting-list-modal .booking-field--compact textarea:focus,#booking-waiting-list-modal .booking-field--compact select:focus{outline:none;border-color:var(--booking-accent-deep,#d96f86);box-shadow:0 0 0 4px color-mix(in srgb,var(--booking-accent-strong,#ffd8df) 44%,transparent),0 12px 28px rgba(45,32,37,.045)}#booking-waiting-list-modal .booking-field--compact small{color:var(--booking-muted,#7d6f73);font-size:.72rem;font-weight:750;line-height:1.35;text-transform:none;letter-spacing:0}#booking-waiting-list-modal .booking-field--preferred-date[hidden],#booking-waiting-list-modal .booking-field--preferred-date.is-hidden,#booking-waiting-list-modal .booking-waiting-list-cta__check[hidden],#booking-waiting-list-modal .booking-waiting-list-cta__check.is-hidden{display:none}#booking-waiting-list-modal .booking-waiting-list-grid--date-time:has(.booking-field--preferred-date[hidden]),#booking-waiting-list-modal .booking-waiting-list-grid--date-time:has(.booking-field--preferred-date.is-hidden){grid-template-columns:repeat(2,minmax(0,1fr))}#booking-waiting-list-modal .booking-date-control{position:relative;display:block;width:100%;min-width:0}#booking-waiting-list-modal .booking-date-control__placeholder{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding-inline:42px;color:var(--booking-text,#2d2025);font-size:1rem;font-weight:900;line-height:1;pointer-events:none;user-select:none}#booking-waiting-list-modal .booking-date-control__placeholder[hidden]{display:none}#booking-waiting-list-modal .booking-date-control.is-empty input[type="date"]{color:transparent}#booking-waiting-list-modal .booking-date-control.is-empty input[type="date"]::-webkit-datetime-edit,#booking-waiting-list-modal .booking-date-control.is-empty input[type="date"]::-webkit-datetime-edit-fields-wrapper,#booking-waiting-list-modal .booking-date-control.is-empty input[type="date"]::-webkit-datetime-edit-text,#booking-waiting-list-modal .booking-date-control.is-empty input[type="date"]::-webkit-datetime-edit-day-field,#booking-waiting-list-modal .booking-date-control.is-empty input[type="date"]::-webkit-datetime-edit-month-field,#booking-waiting-list-modal .booking-date-control.is-empty input[type="date"]::-webkit-datetime-edit-year-field{color:transparent}#booking-waiting-list-modal .booking-field--preferred-date input[type="date"],#booking-waiting-list-modal .booking-field--time-select select{min-height:52px;text-align:center;text-align-last:center;font-size:1rem;font-weight:900;letter-spacing:-.02em}#booking-waiting-list-modal .booking-field--preferred-date input[type="date"]{display:block;width:100%;padding-inline:42px;overflow:hidden;text-overflow:clip;-webkit-appearance:none;appearance:none}#booking-waiting-list-modal .booking-field--preferred-date input[type="date"]::-webkit-date-and-time-value{display:block;width:100%;margin:0 auto;text-align:center}#booking-waiting-list-modal .booking-field--preferred-date input[type="date"]::-webkit-calendar-picker-indicator{margin:0;opacity:.52}#booking-waiting-list-modal .booking-field--time-select select{padding-inline:26px;-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%232d2025' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 10 5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px 16px}#booking-waiting-list-modal .booking-field--time-select select option{text-align:center}#booking-waiting-list-modal .booking-waiting-list-cta__check{display:flex;align-items:flex-start;gap:9px;min-width:0;padding:11px 12px;border:1px solid color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 22%,var(--booking-line,#ead9d8));border-radius:16px;background:rgba(255,255,255,.92);color:var(--booking-muted,#7d6f73);font-size:.74rem;line-height:1.45}#booking-waiting-list-modal .booking-waiting-list-cta__check input{margin-top:.2rem;flex:0 0 auto}#booking-waiting-list-modal .booking-field--compact.is-invalid input,#booking-waiting-list-modal .booking-field--compact.is-invalid select,#booking-waiting-list-modal .booking-field--compact.is-invalid textarea,#booking-waiting-list-modal .booking-waiting-list-cta__check.is-invalid{border-color:rgba(220,38,38,.50);background:rgba(254,242,242,.76);box-shadow:0 0 0 4px rgba(220,38,38,.08)}#booking-waiting-list-modal .booking-inline-status[data-booking-waiting-list-error]{display:none}#booking-waiting-list-modal .booking-waiting-modal__submit{background:linear-gradient(135deg,#a80f49 0%,#c71862 52%,#d62b78 100%);box-shadow:0 16px 34px rgba(168,15,73,.20)}#booking-waiting-list-modal .booking-waiting-modal__submit:disabled,#booking-waiting-list-modal .booking-waiting-modal__submit[aria-disabled="true"]{cursor:not-allowed;opacity:.48;box-shadow:none;filter:grayscale(.15)}@media(max-width:720px){#booking-waiting-list-modal{padding:0}#booking-waiting-list-modal .booking-step-modal--waiting{width:100%;height:auto;max-height:none}#booking-waiting-list-modal .booking-waiting-modal__section{min-height:0;overflow-x:hidden;overflow-y:auto;padding:0 14px 12px;scrollbar-gutter:auto;overscroll-behavior:contain}#booking-waiting-list-modal .booking-waiting-list-form{gap:10px}#booking-waiting-list-modal .booking-waiting-list-summary{grid-template-columns:1fr;gap:8px}#booking-waiting-list-modal .booking-waiting-list-summary>div{padding:12px 14px;border-radius:17px}#booking-waiting-list-modal .booking-waiting-list-preferred{gap:10px;padding:11px;border-radius:17px}#booking-waiting-list-modal .booking-waiting-date-mode{gap:7px}#booking-waiting-list-modal .booking-waiting-date-mode__option{min-height:42px;padding:0 8px;border-radius:14px;font-size:.78rem}#booking-waiting-list-modal .booking-waiting-list-grid--date-time{grid-template-columns:1fr;gap:8px}#booking-waiting-list-modal .booking-field--compact input,#booking-waiting-list-modal .booking-field--compact select{min-height:50px;font-size:16px}#booking-waiting-list-modal .booking-field--compact textarea{min-height:78px;font-size:16px}#booking-waiting-list-modal .booking-waiting-list-cta__check{padding:10px 11px;border-radius:15px;font-size:.72rem}#booking-waiting-list-modal .booking-waiting-modal__actions{margin:0;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:#fffafb;box-shadow:0 -10px 24px rgba(45,32,37,.05)}#booking-waiting-list-modal .booking-waiting-modal__submit{min-height:48px}#booking-waiting-list-modal .booking-step-modal__actions .booking-button-secondary--back{}}#booking-service-modal .booking-modal__backdrop{background:rgba(48,38,47,.58);backdrop-filter:blur(9px)}#booking-service-modal .booking-modal__sheet--service{display:flex;flex-direction:column;width:min(980px,calc(100vw - 48px));height:min(840px,calc(100dvh - 48px));max-height:calc(100dvh - 48px);padding:0;overflow:hidden;border:1px solid color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 46%,rgba(255,255,255,.72));border-radius:32px;background:radial-gradient(circle at 88% 0%,color-mix(in srgb,var(--booking-accent,#fff1f2) 72%,transparent) 0%,transparent 26%),linear-gradient(180deg,rgba(255,255,255,.995) 0%,rgba(255,250,251,.985) 100%);box-shadow:0 36px 110px rgba(45,32,37,.24)}#booking-service-modal .booking-service-modal__header{position:relative;flex:0 0 auto;margin:0;padding:28px 32px 20px;border:0;background:transparent}#booking-service-modal .booking-service-modal__header::after{display:none}#booking-service-modal .booking-service-modal__header::before{content:"";position:absolute;top:0;right:62px;width:170px;height:110px;pointer-events:none;opacity:.42;background:radial-gradient(ellipse at 48% 64%,color-mix(in srgb,var(--booking-accent-strong,#ffd8df) 38%,transparent) 0 18%,transparent 19%),radial-gradient(ellipse at 68% 40%,color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 28%,transparent) 0 15%,transparent 16%),radial-gradient(ellipse at 78% 72%,color-mix(in srgb,var(--booking-accent,#fff1f2) 82%,transparent) 0 17%,transparent 18%);transform:rotate(-18deg)}#booking-service-modal .booking-service-modal__header h3{margin:0 0 4px;font-family:var(--booking-font-heading,"Playfair Display",Georgia,serif);font-size:clamp(1.7rem,3vw,2.15rem);font-weight:700;line-height:1.06;letter-spacing:-.025em;color:var(--booking-text,#2d2025)}#booking-service-modal .booking-service-modal__header .booking-modal__lead{max-width:620px;color:color-mix(in srgb,var(--booking-muted,#7d6f73) 92%,#fff);font-size:.94rem;line-height:1.55}#booking-service-modal .booking-modal__close{z-index:2}.booking-service-browser{display:flex;align-items:center;gap:12px;flex:0 0 auto;padding:0 32px 18px}.booking-service-search{position:relative;display:flex;align-items:center;flex:1 1 330px;min-width:220px}.booking-service-search__label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.booking-service-search__icon{position:absolute;left:17px;top:50%;display:flex;width:22px;height:22px;color:var(--booking-primary-2,#6f4852);transform:translateY(-50%);pointer-events:none}.booking-service-search__icon svg{width:100%;height:100%}.booking-service-search input{width:100%;min-height:52px;padding:0 18px 0 50px;border:1px solid color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 34%,var(--booking-line,#ead9d8));border-radius:18px;background:rgba(255,255,255,.94);color:var(--booking-text,#2d2025);font:inherit;font-size:.94rem;font-weight:650;box-shadow:0 12px 28px rgba(45,32,37,.045);transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.booking-service-search input::placeholder{color:color-mix(in srgb,var(--booking-muted,#7d6f73) 70%,#fff)}.booking-service-search input:focus{outline:none;border-color:color-mix(in srgb,var(--booking-accent-deep,#d96f86) 46%,var(--booking-line,#ead9d8));background:#fff;box-shadow:0 0 0 4px color-mix(in srgb,var(--booking-accent,#fff1f2) 76%,transparent),0 14px 34px rgba(45,32,37,.07)}.booking-service-filters{display:flex;align-items:center;gap:8px;flex:0 1 auto;overflow-x:auto;padding:2px 1px;scrollbar-width:none}.booking-service-filters::-webkit-scrollbar{display:none}.booking-service-filter{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 15px;border:1px solid color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 34%,var(--booking-line,#ead9d8));border-radius:999px;background:rgba(255,255,255,.86);color:var(--booking-primary-2,#6f4852);font:inherit;font-size:.78rem;font-weight:850;white-space:nowrap;cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease,color .18s ease,box-shadow .18s ease}.booking-service-filter:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--booking-accent-deep,#d96f86) 34%,transparent);background:#fff}.booking-service-filter.is-active{border-color:transparent;background:linear-gradient(135deg,color-mix(in srgb,var(--booking-accent-deep,#d96f86) 92%,#fff),color-mix(in srgb,var(--booking-primary-2,#6f4852) 72%,#fff));color:#fff;box-shadow:0 10px 24px color-mix(in srgb,var(--booking-accent-deep,#d96f86) 22%,transparent)}.booking-service-filter:focus-visible{outline:3px solid color-mix(in srgb,var(--booking-accent-strong,#ffd8df) 62%,transparent);outline-offset:2px}.booking-service-modal__scroll{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;padding:0 32px 18px;overscroll-behavior-y:contain}.booking-service-empty{display:grid;justify-items:center;gap:6px;margin:14px 0 2px;padding:28px 20px;border:1px dashed color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 45%,var(--booking-line,#ead9d8));border-radius:22px;background:rgba(255,255,255,.66);text-align:center}.booking-service-empty[hidden]{display:none}.booking-service-empty>span{font-size:1.8rem;color:var(--booking-accent-deep,#d96f86)}.booking-service-empty strong{font-size:.96rem;color:var(--booking-text,#2d2025)}.booking-service-empty p{margin:0;color:var(--booking-muted,#7d6f73);font-size:.84rem}.booking-service-selection{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;flex:0 0 auto;padding:16px 20px 18px 32px;border-top:1px solid color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 34%,var(--booking-line,#ead9d8));background:linear-gradient(180deg,rgba(255,255,255,.88),rgba(255,247,249,.98));box-shadow:0 -18px 40px rgba(45,32,37,.06);backdrop-filter:blur(16px)}.booking-service-selection__summary{display:grid;gap:7px;min-width:0}.booking-service-selection__eyebrow{color:var(--booking-text,#2d2025);font-size:.88rem;font-weight:900}.booking-service-selection__detail{display:flex;align-items:center;gap:10px;min-width:0}.booking-service-selection__detail[hidden]{display:none}.booking-service-selection__thumb{display:flex;align-items:center;justify-content:center;width:48px;height:48px;flex:0 0 48px;overflow:hidden;border:1px solid color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 38%,var(--booking-line,#ead9d8));border-radius:14px;background:linear-gradient(135deg,color-mix(in srgb,var(--booking-accent,#fff1f2) 72%,#fff),#fff);background-position:center;background-size:cover;color:var(--booking-accent-deep,#d96f86);font-size:.56rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.booking-service-selection__copy{display:grid;gap:2px;min-width:0}.booking-service-selection__copy strong{max-width:420px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--booking-text,#2d2025);font-size:.86rem}.booking-service-selection__copy small{color:var(--booking-muted,#7d6f73);font-size:.74rem}.booking-service-selection__continue{display:inline-flex;align-items:center;justify-content:center;gap:11px;min-width:240px;min-height:52px;padding:13px 24px;border-radius:18px}.booking-service-selection__continue>span:last-child{font-size:1.3rem;font-weight:400}.booking-service-selection__continue:disabled{opacity:.48;cursor:not-allowed;box-shadow:none}.booking-service-card.is-extra-active{border-color:color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 94%,var(--booking-line,#ead9d8));background:linear-gradient(135deg,#fff,color-mix(in srgb,var(--booking-accent,#fff1f2) 70%,#fff));box-shadow:0 16px 34px color-mix(in srgb,var(--booking-accent-deep,#d96f86) 12%,transparent)}.booking-service-card.is-extra-active::before,.booking-service-card.is-active::before{content:"✓";color:#fff;background:linear-gradient(180deg,var(--booking-accent-strong,#ffd8df) 0%,var(--booking-accent-deep,#d96f86) 100%);border-color:transparent;opacity:1}.booking-service-card.is-selected .booking-service-card__meta{color:color-mix(in srgb,var(--booking-text,#2d2025) 68%,var(--booking-muted,#7d6f73))}@media (max-width:900px){#booking-service-modal .booking-modal__sheet--service{width:min(820px,calc(100vw - 24px));height:min(880px,calc(100dvh - 24px));max-height:calc(100dvh - 24px);bottom:12px;border-radius:28px}.booking-service-browser{display:grid;grid-template-columns:1fr;padding-inline:22px}.booking-service-filters{width:100%}.booking-service-modal__scroll{padding-inline:22px}.booking-service-selection{padding-left:22px}}@media (max-width:640px){#booking-service-modal .booking-modal__sheet--service{position:absolute;inset:0;width:100%;height:auto;max-height:none;border:0;border-radius:0;box-shadow:none;transform:none}#booking-service-modal.is-open .booking-modal__sheet--service{transform:none}#booking-service-modal .booking-service-modal__header{padding:calc(14px + env(safe-area-inset-top)) 14px 10px}#booking-service-modal .booking-service-modal__header::before{right:38px;width:96px;height:70px;opacity:.24}#booking-service-modal .booking-service-modal__header h3{font-size:1.38rem}#booking-service-modal .booking-service-modal__header .booking-modal__lead{font-size:.78rem;line-height:1.4}.booking-service-browser{gap:8px;padding:0 12px 9px}.booking-service-search input{min-height:44px;border-radius:14px}.booking-service-filter{padding:7px 11px;font-size:.7rem}.booking-service-modal__scroll{padding:0 10px 10px}.booking-service-grid{gap:8px}.booking-service-selection{grid-template-columns:1fr;gap:8px;padding:10px 12px max(10px,env(safe-area-inset-bottom))}.booking-service-selection__summary{display:none}.booking-service-selection__continue{width:100%;min-width:0;min-height:46px;border-radius:15px}}.booking-hero__client-account{position:relative;z-index:5;display:flex;justify-content:flex-end;margin-bottom:18px}.booking-hero__client-account--with-workspace-switch{align-items:center;justify-content:space-between;gap:14px}.booking-hero__workspace-switch{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 14px;border:1px solid color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 34%,rgba(122,81,72,.12));border-radius:999px;background:rgba(255,255,255,.82);color:var(--booking-primary-2,#6f4852);font-family:var(--booking-font-body);font-size:.76rem;font-weight:900;text-decoration:none;box-shadow:0 10px 24px rgba(122,81,72,.07);backdrop-filter:blur(14px);transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease}.booking-hero__workspace-switch:hover,.booking-hero__workspace-switch:focus-visible{transform:translateY(-1px);border-color:color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 58%,rgba(122,81,72,.14));background:#fff;box-shadow:0 14px 30px rgba(122,81,72,.10);outline:none}.booking-hero__workspace-switch:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 32%,transparent),0 14px 30px rgba(122,81,72,.10)}.booking-hero__workspace-switch-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px}.booking-hero__workspace-switch-icon svg{display:block;width:18px;height:18px}.booking-hero__account-state{display:inline-grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;min-width:300px;min-height:68px;padding:8px 10px;border:1px solid color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 38%,rgba(122,81,72,.12));border-radius:22px;background:linear-gradient(135deg,rgba(255,255,255,.96),color-mix(in srgb,var(--booking-accent,#fff1f2) 34%,rgba(255,255,255,.95)));color:#70483f;box-shadow:0 18px 42px rgba(122,81,72,.11),inset 0 1px 0 rgba(255,255,255,.88);font-family:var(--booking-font-body);text-decoration:none;backdrop-filter:blur(18px);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease}.booking-hero__account-state:hover{text-decoration:none;transform:translateY(-1px);border-color:color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 58%,rgba(122,81,72,.14));background:rgba(255,255,255,.985);box-shadow:0 22px 50px rgba(122,81,72,.14),inset 0 1px 0 rgba(255,255,255,.94)}.booking-hero__account-state:focus-visible{outline:3px solid color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 54%,transparent);outline-offset:3px}.booking-hero__account-avatar,.booking-hero__account-guest-icon{position:relative;display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:16px;flex:0 0 48px}.booking-hero__account-avatar{background:linear-gradient(145deg,color-mix(in srgb,var(--booking-accent-deep,#d96f86) 76%,#fff),color-mix(in srgb,var(--booking-primary-2,#6f4852) 74%,#fff));color:#fff;box-shadow:0 10px 24px color-mix(in srgb,var(--booking-accent-deep,#d96f86) 20%,transparent),inset 0 1px 0 rgba(255,255,255,.30)}.booking-hero__account-avatar span{font-size:.92rem;font-weight:950;letter-spacing:.03em}.booking-hero__account-avatar i{position:absolute;right:-2px;bottom:-2px;width:13px;height:13px;border:3px solid #fff;border-radius:999px;background:#22a55b;box-shadow:0 3px 10px rgba(34,165,91,.24)}.booking-hero__account-copy{display:grid;gap:1px;min-width:0;text-align:left;line-height:1.12}.booking-hero__account-label{font-size:.62rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase;color:#9a756c;white-space:nowrap}.booking-hero__account-name{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1rem;font-weight:950;color:var(--booking-text,#2d2025)}.booking-hero__account-benefits{margin-top:3px;max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--booking-primary-2,#6f4852);font-size:.67rem;font-weight:850}.booking-hero__account-action{display:grid;grid-template-columns:auto auto;align-items:center;gap:9px;min-height:38px;padding-left:14px;border-left:1px solid color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 24%,rgba(122,81,72,.10));color:var(--booking-primary-2,#6f4852);white-space:nowrap}.booking-hero__account-action span{font-size:.74rem;font-weight:900}.booking-hero__account-action b,.booking-hero__account-chevron{font-size:1.25rem;font-weight:500;line-height:1;color:#a2786f}.booking-hero__account-guest-icon{background:url('../img/booking-identity-premium.webp?v=20261021-identity') 0% 50% / 200% 100% no-repeat;box-shadow:none;border:0;filter:drop-shadow(0 4px 8px rgba(173,83,127,.12))}.booking-hero__account-state--guest{min-width:210px;grid-template-columns:auto minmax(0,1fr) auto}.booking-hero__account-chevron{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px}@media (max-width:720px){.booking-hero__client-account{margin-bottom:14px}.booking-hero__client-account--with-workspace-switch{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:7px}.booking-hero__client-account--with-workspace-switch .booking-hero__workspace-switch{flex:1 1 0;width:0;min-width:0;height:48px;min-height:48px;box-sizing:border-box;white-space:nowrap;gap:6px;padding:0 8px;font-size:.78rem;border-radius:16px}.booking-hero__client-account--with-workspace-switch .booking-hero__account-state--guest{flex:1 1 0;width:0;min-width:0;min-height:48px;height:48px;box-sizing:border-box;margin-left:0;grid-template-columns:30px minmax(0,1fr) 12px;gap:5px;padding:3px 8px;border-radius:16px}.booking-hero__account-state{width:100%;min-width:0;min-height:58px;gap:10px;padding:7px 9px;border-radius:18px}.booking-hero__client-account--with-workspace-switch .booking-hero__account-state--active{flex:0 1 200px;width:auto;min-width:0;grid-template-columns:35px minmax(0,1fr) 28px;gap:5px;padding:5px}.booking-hero__client-account--with-workspace-switch .booking-hero__account-label{display:none}.booking-hero__client-account--with-workspace-switch .booking-hero__account-name{display:block;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.82rem}
.booking-hero__client-account--with-workspace-switch .booking-hero__account-guest-icon{width:30px;height:30px;flex:0 0 30px;border-radius:0}
.booking-hero__client-account--with-workspace-switch .booking-hero__account-chevron{width:12px;min-width:12px;height:20px;font-size:1rem}.booking-hero__account-state--active{grid-template-columns:42px minmax(0,1fr) 42px}.booking-hero__account-avatar,.booking-hero__account-guest-icon{width:42px;height:42px;flex-basis:42px;border-radius:14px}.booking-hero__account-avatar i{width:12px;height:12px;border-width:2.5px}.booking-hero__account-state--active .booking-hero__account-copy{justify-items:center;text-align:center}.booking-hero__account-label{font-size:.57rem;text-align:center}.booking-hero__account-state--active .booking-hero__account-name{max-width:100%;text-align:center}.booking-hero__account-name{max-width:150px;font-size:.92rem}.booking-hero__account-state--active .booking-hero__account-benefits{max-width:100%;text-align:center}.booking-hero__account-benefits{max-width:165px;font-size:.63rem}.booking-hero__account-state--active .booking-hero__account-action{width:42px;min-width:42px;padding-left:0;justify-content:center;box-sizing:border-box}.booking-hero__account-action{padding-left:10px}.booking-hero__account-action span{display:none}.booking-hero__client-account:not(.booking-hero__client-account--with-workspace-switch) .booking-hero__account-state--guest{
  width:auto;
  min-width:190px;
  height:48px;
  min-height:48px;
  box-sizing:border-box;
  margin-left:auto;
  grid-template-columns:30px minmax(0,1fr) 12px;
  gap:6px;
  padding:3px 10px;
  border-radius:16px
}
.booking-hero__client-account:not(.booking-hero__client-account--with-workspace-switch) .booking-hero__account-guest-icon{
  width:30px;
  height:30px;
  flex:0 0 30px;
  border-radius:0
}
.booking-hero__client-account:not(.booking-hero__client-account--with-workspace-switch) .booking-hero__account-name{
  max-width:100%;
  font-size:.82rem
}
.booking-hero__client-account:not(.booking-hero__client-account--with-workspace-switch) .booking-hero__account-chevron{
  width:12px;
  height:20px;
  font-size:1rem
}}.booking-contact-prefill{display:flex;align-items:center;gap:13px;margin:0 0 22px;padding:15px 17px;border:1px solid color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 36%,var(--booking-line,#ead9d8));border-radius:19px;background:linear-gradient(135deg,rgba(255,247,250,.94) 0%,rgba(255,255,255,.96) 100%);color:color-mix(in srgb,var(--booking-muted,#7d6f73) 88%,#4a2f3b);font-size:.94rem;line-height:1.5;box-shadow:0 10px 26px rgba(45,32,37,.035)}.booking-contact-prefill__icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 36px;width:36px;height:36px;border-radius:999px;background:linear-gradient(135deg,#d62b78,#ee5d9b);color:#fff;font-size:1rem;font-weight:900;box-shadow:0 10px 22px rgba(214,43,120,.20)}@media (max-width:640px){.booking-contact-prefill{align-items:flex-start;margin-bottom:18px;padding:13px 14px;text-align:left}.booking-contact-prefill__icon{flex-basis:32px;width:32px;height:32px}}.public-booking-shell,.public-booking-layout,.public-booking-layout__main,.booking-page,.booking-shell{max-width:100%;box-sizing:border-box}.public-booking-shell,.public-booking-layout,.public-booking-layout__main{overflow-x:clip}.booking-card--flow-entry,.booking-working-hours,.booking-service-grid,.booking-specialist-grid,.booking-service-card,.booking-specialist-card{min-width:0;max-width:100%;box-sizing:border-box}.booking-card--flow-entry,.booking-working-hours{width:100%}.booking-service-card>*,.booking-specialist-card>*,.booking-working-hours>*,.booking-working-hours__days{min-width:0;max-width:100%}.booking-service-card__primary-action,.booking-service-card__extra-action{min-width:0;max-width:100%;white-space:normal;text-align:center}.booking-working-hours{position:relative;isolation:isolate;overflow:hidden;max-width:none;width:100%;min-width:0;margin:0;padding:var(--booking-card-inset,18px);border:1px solid color-mix(in srgb,var(--booking-line-theme) 35%,var(--booking-line));border-radius:22px;background:linear-gradient(145deg,rgba(255,255,255,.97),color-mix(in srgb,var(--booking-accent) 18%,#fff));box-shadow:0 12px 32px rgba(45,32,37,.045);color:var(--booking-text);}
/* A quiet timepiece motif, painted below the existing working-hours content. */
.booking-working-hours::before{content:"";position:absolute;z-index:0;inset:0;pointer-events:none;background:url("../img/booking-support-hours-light.webp") right center / auto 100% no-repeat;opacity:.20;-webkit-mask-image:linear-gradient(90deg,transparent 0 60%,#000 100%);mask-image:linear-gradient(90deg,transparent 0 60%,#000 100%)}
.booking-working-hours__head,.booking-working-hours__days{position:relative;z-index:1}
.public-booking-shell[data-public-booking-mode="dark"] .booking-working-hours::before{background-image:url("../img/booking-support-hours-dark.webp");opacity:.29}.booking-working-hours__head{display:flex;align-items:center;justify-content:flex-start;gap:12px;min-height:44px;margin-bottom:12px;text-align:left}.booking-working-hours__icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 40px;width:40px;height:40px;border-radius:0;background:transparent url('../img/booking-interface-icons.svg?v=20261027-vector') 100% 50% / 400% 100% no-repeat;box-shadow:none;background-color:transparent;background-image:url('../img/booking-interface-icons.svg?v=20261027-vector');background-size:400% 100%;background-repeat:no-repeat;border:0;filter:none;background-position:100% 50%;}.booking-working-hours__copy{display:grid;gap:1px}.booking-working-hours__copy strong{color:var(--booking-text,#251916);font-family:Georgia,"Times New Roman",serif;font-size:1rem;font-weight:700;letter-spacing:-.02em;line-height:1.15}.booking-working-hours__copy small{color:var(--booking-muted,#725e58);font-size:.74rem;font-weight:650;line-height:1.3}.booking-working-hours__days{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;}.booking-working-hours__day{min-width:0;padding:10px 7px;border:1px solid rgba(154,118,96,.13);border-radius:14px;background:rgba(255,255,255,.82);text-align:center;box-shadow:inset 0 1px 0 rgba(255,255,255,.76)}.booking-working-hours__day span,.booking-working-hours__day strong{display:block}.booking-working-hours__day span{margin-bottom:4px;color:var(--booking-muted,#725e58);font-size:.72rem;font-weight:750;letter-spacing:.02em}.booking-working-hours__day strong{color:var(--booking-text,#251916);font-size:.78rem;line-height:1.24;font-weight:850}.booking-working-hours__day.is-closed{opacity:.58;background:rgba(248,245,246,.72)}.booking-service-card__primary-action,.booking-service-card__extra-action{display:inline-flex;align-items:center;justify-content:center;padding:5px 10px;border-radius:999px;font-size:.78rem;font-weight:900;line-height:1;border:1px solid rgba(154,118,96,.16);background:rgba(255,255,255,.72);color:var(--booking-text,#251916)}[data-booking-specialist-overview][hidden],[data-booking-specialist-summary][hidden],[data-booking-specialist-action][hidden],.booking-service-card__extra-action.is-reserved-hidden{visibility:hidden;opacity:0;pointer-events:none}@media (max-width:767px){.booking-working-hours{margin-left:0;margin-right:0;padding:var(--booking-card-inset,14px);border-radius:19px}.booking-working-hours__head{justify-content:flex-start;gap:10px;margin-bottom:12px;text-align:left}.booking-working-hours__icon{flex-basis:34px;width:34px;height:34px;border-radius:12px}.booking-working-hours__copy strong{font-size:.94rem}.booking-working-hours__copy small{font-size:.7rem}.booking-working-hours__days{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;max-width:100%;min-width:0;overflow:visible;padding:0;scroll-snap-type:none;}.booking-working-hours__days::-webkit-scrollbar{display:none}.booking-working-hours__day{display:grid;align-content:center;flex:0 0 78px;min-width:78px;min-height:58px;padding:8px 5px;border-radius:12px;scroll-snap-align:start}.booking-working-hours__day span{margin-bottom:3px;font-size:.66rem}.booking-working-hours__day strong{font-size:.7rem;line-height:1.22;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.booking-service-card__primary-action,.booking-service-card__extra-action{padding:6px 10px;font-size:.76rem}}.booking-marketing-code,.booking-loyalty-redeem{border:1px solid rgba(45,32,37,0.08);border-radius:16px;background:rgba(255,255,255,0.74)}.booking-marketing-code{padding:12px}.booking-marketing-code__label{display:block;margin-bottom:8px;color:var(--booking-primary,#2d2025);font-size:0.85rem;font-weight:800}.booking-marketing-code__controls{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}.booking-marketing-code__controls input{width:100%;min-height:44px;border:1px solid rgba(45,32,37,0.12);border-radius:14px;background:rgba(255,255,255,0.92);color:var(--booking-primary,#2d2025);font:inherit;font-weight:750;letter-spacing:0.06em;padding:0 13px;text-transform:uppercase}.booking-marketing-code__controls input:focus-visible{outline:3px solid rgba(217,111,134,0.22);outline-offset:2px;border-color:rgba(217,111,134,0.5)}.booking-marketing-code__message{margin:6px 0 0;color:rgba(45,32,37,0.66);font-size:0.84rem;line-height:1.42}.booking-marketing-code__message[data-tone="success"]{color:#166534}.booking-marketing-code__message[data-tone="error"]{color:#b42318}.booking-marketing-code__message[data-tone="warning"]{color:#92400e}@media (max-width:640px){.booking-marketing-code__controls{grid-template-columns:1fr}.booking-marketing-code__controls .booking-button-secondary{width:100%;justify-content:center}}.booking-success__note--marketing{border-color:rgba(22,101,52,0.18);background:rgba(240,253,244,0.86);color:#14532d}@media (max-width:640px){.booking-marketing-code{border-radius:18px;padding:14px}}.booking-loyalty-redeem{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px}.booking-loyalty-redeem__content strong,.booking-loyalty-redeem__content span,.booking-loyalty-redeem__content small{display:block}.booking-loyalty-redeem__content strong{color:var(--booking-primary,#2d2025);font-size:0.9rem;letter-spacing:-0.01em}.booking-loyalty-redeem__content span{margin-top:3px;color:rgba(45,32,37,0.62);font-size:0.82rem;line-height:1.42}.booking-loyalty-redeem__content small{margin-top:6px;color:rgba(45,32,37,0.62);font-size:0.78rem;line-height:1.36}.booking-loyalty-redeem__content small[data-tone="success"]{color:#166534}.booking-loyalty-redeem__content small[data-tone="warning"]{color:#92400e}.booking-loyalty-redeem__content small[data-tone="error"]{color:#b42318}.booking-loyalty-redeem__switch{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 13px;border:1px solid rgba(45,32,37,0.1);border-radius:999px;background:rgba(255,255,255,0.86);color:var(--booking-primary,#2d2025);font-size:0.82rem;font-weight:780;cursor:pointer;user-select:none}.booking-loyalty-redeem__switch input{width:17px;height:17px;accent-color:var(--booking-accent,#d96f86)}@media (max-width:720px){.booking-loyalty-redeem{grid-template-columns:minmax(0,1fr)}.booking-loyalty-redeem__switch{justify-content:center;width:100%}}.booking-campaign-entry{margin:10px 0 16px;padding:14px 16px;border:1px solid rgba(183,87,111,0.18);border-radius:18px;background:linear-gradient(135deg,rgba(255,246,249,0.96),rgba(255,255,255,0.78));box-shadow:0 14px 32px rgba(96,55,67,0.08);color:var(--booking-primary,#2d2025)}.booking-campaign-entry strong,.booking-campaign-entry span{display:block}.booking-campaign-entry strong{font-size:0.96rem;letter-spacing:-0.01em}.booking-campaign-entry span{margin-top:5px;color:rgba(45,32,37,0.68);font-size:0.86rem;font-weight:650;line-height:1.45}@media (max-width:640px){.booking-campaign-entry{margin:8px 0 14px;padding:12px 13px;border-radius:16px}}.public-booking-shell--workspace-choice{min-height:100dvh;background:radial-gradient(circle at 12% 6%,rgba(255,211,222,.52),transparent 31%),radial-gradient(circle at 92% 10%,rgba(217,111,134,.20),transparent 33%),radial-gradient(circle at 54% 108%,rgba(255,255,255,.92),transparent 48%),linear-gradient(180deg,var(--booking-surface-3,#fff4f1) 0%,var(--booking-bg,#fff8f6) 54%,#fff 100%)}.public-booking-shell--workspace-choice .public-booking-layout{min-height:100dvh;padding:max(10px,env(safe-area-inset-top)) 0 max(22px,env(safe-area-inset-bottom))}.booking-workspace-modal-open{overflow:hidden}.booking-workspace-gateway{width:min(100%,1140px);margin:0 auto;padding:0 clamp(10px,4vw,34px) 24px;color:var(--booking-text,#2d2025);font-family:var(--booking-font-body,"Manrope",Inter,Arial,sans-serif);box-sizing:border-box}.booking-workspace-gateway__shell{display:grid;gap:14px}.booking-workspace-gateway__hero{position:relative;display:grid;gap:clamp(18px,5vw,26px);min-height:min(680px,calc(100dvh - 32px));align-content:center;padding:clamp(22px,7vw,58px);border:1px solid color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 30%,transparent);border-radius:clamp(28px,7vw,48px);background:linear-gradient(138deg,rgba(255,255,255,.94),rgba(255,248,246,.78) 58%,rgba(255,244,241,.90)),radial-gradient(circle at 85% 16%,color-mix(in srgb,var(--booking-accent-strong,#ffd8df) 52%,transparent),transparent 35%),radial-gradient(circle at 14% 90%,rgba(255,255,255,.86),transparent 36%);box-shadow:0 28px 86px rgba(111,72,82,.14);overflow:hidden;isolation:isolate}.booking-workspace-gateway__hero::before,.booking-workspace-gateway__hero::after{content:"";position:absolute;pointer-events:none;z-index:0}.booking-workspace-gateway__hero::before{width:min(78vw,470px);height:min(78vw,470px);right:max(-190px,-16vw);top:max(-190px,-16vw);border-radius:999px;border:1px solid color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 32%,transparent);box-shadow:inset 0 0 0 22px rgba(255,255,255,.20),0 0 0 1px rgba(255,255,255,.48)}.booking-workspace-gateway__hero::after{inset:18px;border-radius:inherit;background:linear-gradient(115deg,transparent 0 30%,color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 28%,transparent) 30.15%,transparent 30.5% 100%),linear-gradient(150deg,transparent 0 70%,color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 22%,transparent) 70.15%,transparent 70.5% 100%);opacity:.62;mask-image:linear-gradient(180deg,rgba(0,0,0,.72),rgba(0,0,0,.06))}.booking-workspace-gateway__content{position:relative;z-index:1}.booking-workspace-gateway__content{display:grid;gap:13px;max-width:760px;margin-inline:auto;justify-items:center;text-align:center}.booking-workspace-gateway__eyebrow,.booking-workspace-modal__eyebrow{display:inline-flex;align-items:center;width:max-content;min-height:30px;padding:0 12px;border:1px solid color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 26%,transparent);border-radius:999px;background:rgba(255,255,255,.58);color:var(--booking-primary-2,#6f4852);font-size:.58rem;font-weight:950;letter-spacing:.14em;text-transform:uppercase;box-shadow:0 10px 24px rgba(111,72,82,.06)}.booking-workspace-gateway h1{max-width:840px;margin:0;color:var(--booking-text,#2d2025);font-family:var(--booking-font-heading,"Playfair Display",Georgia,serif);font-size:clamp(2.18rem,10vw,4.8rem);font-weight:880;letter-spacing:-.067em;line-height:.91}.booking-workspace-gateway__content p{max-width:650px;margin:0 auto;color:color-mix(in srgb,var(--booking-text,#2d2025) 70%,#fff);font-size:clamp(1rem,3.7vw,1.15rem);font-weight:680;line-height:1.55}.booking-workspace-gateway__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:10px}.booking-workspace-gateway__cta,.booking-workspace-gateway__account{display:inline-flex;align-items:center;justify-content:center;min-height:54px;border-radius:999px;text-decoration:none;font-weight:950;letter-spacing:-.012em;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease}.booking-workspace-gateway__cta{position:relative;gap:10px;padding:14px 24px;border:0;background:linear-gradient(135deg,var(--booking-primary,#2d2025),var(--booking-primary-2,#6f4852));color:#fff;box-shadow:0 18px 44px color-mix(in srgb,var(--booking-primary,#2d2025) 20%,transparent);cursor:pointer;overflow:hidden}.booking-workspace-gateway__cta::after{content:"";position:absolute;inset:-40% auto -40% -45%;width:42%;transform:rotate(18deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.34),transparent);transition:left .55s ease}.booking-workspace-gateway__cta:hover,.booking-workspace-gateway__cta:focus-visible{transform:translateY(-2px);box-shadow:0 23px 54px color-mix(in srgb,var(--booking-primary,#2d2025) 25%,transparent)}.booking-workspace-gateway__cta:hover::after,.booking-workspace-gateway__cta:focus-visible::after{left:106%}.booking-workspace-gateway__cta svg,.booking-workspace-modal__arrow svg{display:block;width:18px;height:18px;fill:currentColor}.booking-workspace-gateway__account{padding:13px 18px;border:1px solid rgba(111,72,82,.15);background:rgba(255,255,255,.74);color:var(--booking-primary-2,#6f4852);box-shadow:0 12px 28px rgba(111,72,82,.08)}.booking-workspace-gateway__account:hover,.booking-workspace-gateway__account:focus-visible{border-color:color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 46%,transparent);background:rgba(255,255,255,.94);transform:translateY(-1px)}.booking-workspace-gateway__empty,.booking-workspace-gateway__noscript{display:grid;gap:8px;padding:18px;border:1px solid rgba(185,28,28,.18);border-radius:24px;background:rgba(255,255,255,.88);box-shadow:0 18px 42px rgba(111,72,82,.09)}.booking-workspace-gateway__empty strong,.booking-workspace-gateway__noscript strong{color:var(--booking-text,#2d2025);font-size:1rem}.booking-workspace-gateway__empty span,.booking-workspace-gateway__noscript span{color:var(--booking-muted,#7d6f73);font-size:.9rem;font-weight:650;line-height:1.45}.booking-workspace-gateway__noscript a{color:var(--booking-primary-2,#6f4852);font-weight:900}.booking-workspace-modal[hidden]{display:none}.booking-workspace-modal{position:fixed;inset:0;z-index:1200;display:grid;align-items:end;padding:max(12px,env(safe-area-inset-top)) 10px max(12px,env(safe-area-inset-bottom));opacity:0;pointer-events:none;transition:opacity .22s ease}.booking-workspace-modal.is-open{opacity:1;pointer-events:auto}.booking-workspace-modal__backdrop{position:absolute;inset:0;background:radial-gradient(circle at 50% 4%,color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 24%,transparent),transparent 34%),radial-gradient(circle at 12% 84%,rgba(255,255,255,.18),transparent 30%),rgba(45,32,37,.58);backdrop-filter:blur(18px) saturate(1.08)}.booking-workspace-modal__panel{position:relative;z-index:1;width:min(100%,640px);max-height:min(84dvh,680px);margin:0 auto;display:grid;grid-template-rows:auto minmax(0, 1fr);overflow:hidden;border:1px solid color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 25%,rgba(255,255,255,.74));border-radius:28px 28px 22px 22px;background:linear-gradient(180deg,rgba(255,255,255,.992) 0%,rgba(255,250,248,.982) 100%);box-shadow:0 34px 96px rgba(45,32,37,.30),inset 0 1px 0 rgba(255,255,255,.86);transform:translateY(26px) scale(.985);transition:transform .24s cubic-bezier(.2,.8,.2,1);isolation:isolate}.booking-workspace-modal__panel::before,.booking-workspace-modal__panel::after{content:"";position:absolute;pointer-events:none;z-index:0}.booking-workspace-modal__panel::before{inset:0 0 auto;height:176px;background:radial-gradient(circle at 86% 10%,color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 24%,transparent),transparent 32%),linear-gradient(135deg,rgba(255,255,255,.94),color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 10%,rgba(255,255,255,.86)));mask-image:linear-gradient(180deg,#000 0%,transparent 100%)}.booking-workspace-modal__panel::after{width:148px;height:148px;right:-82px;top:-68px;border-radius:999px;border:1px solid color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 28%,transparent);box-shadow:inset 0 0 0 18px rgba(255,255,255,.28)}.booking-workspace-modal.is-open .booking-workspace-modal__panel{transform:translateY(0) scale(1)}.booking-workspace-modal__header{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:start;padding:12px 14px 12px}.booking-workspace-modal__header h2{max-width:520px;margin:6px 0 0;color:var(--booking-text,#2d2025);font-family:var(--booking-font-heading,"Playfair Display",Georgia,serif);font-size:clamp(1.34rem,5.2vw,1.72rem);font-weight:900;letter-spacing:-.06em;line-height:.96}.booking-workspace-modal__header p{max-width:520px;margin:6px 0 0;color:color-mix(in srgb,var(--booking-text,#2d2025) 62%,#ffffff);font-size:.82rem;font-weight:690;line-height:1.5}.booking-workspace-modal__close{z-index:1}.booking-workspace-modal__list{position:relative;z-index:1;display:grid;align-content:start;grid-auto-rows:max-content;gap:8px;overflow-y:auto;padding:8px 10px 12px;overscroll-behavior:contain;scrollbar-gutter:stable}.booking-workspace-modal__choice{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;min-height:66px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 24%,rgba(219,227,238,.84));border-radius:22px;background:linear-gradient(135deg,rgba(255,255,255,.99) 0%,rgba(255,250,248,.95) 58%,color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 5%,#ffffff) 100%);box-shadow:0 12px 28px rgba(111,72,82,.07),inset 0 1px 0 rgba(255,255,255,.86);color:inherit;text-decoration:none;overflow:hidden;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease}.booking-workspace-modal__choice,.booking-workspace-modal__choice *{text-decoration:none}.booking-workspace-modal__choice::before,.booking-workspace-modal__choice::after{content:"";position:absolute;pointer-events:none;opacity:1}.booking-workspace-modal__choice::before{inset:12px auto 12px 0;width:2px;border-radius:999px;background:linear-gradient(180deg,var(--booking-accent-deep,#d96f86),color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 58%,#ffffff));opacity:.34}.booking-workspace-modal__choice::after{inset:0;background:radial-gradient(circle at 94% 10%,color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 20%,transparent),transparent 28%),linear-gradient(105deg,transparent,color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 8%,transparent),transparent);opacity:.72;transition:opacity .18s ease}.booking-workspace-modal__choice.is-current{border-color:color-mix(in srgb,var(--booking-accent-deep,#d96f86) 46%,rgba(219,227,238,.84));background:linear-gradient(135deg,#ffffff 0%,color-mix(in srgb,var(--booking-accent,#fff1f2) 68%,#ffffff) 100%);box-shadow:0 16px 38px rgba(111,72,82,.10),inset 0 1px 0 rgba(255,255,255,.9)}.booking-workspace-modal__choice.is-current::before{opacity:1;background:var(--booking-accent-deep,#d96f86)}.booking-workspace-modal__choice:hover,.booking-workspace-modal__choice:focus-visible{border-color:color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 52%,rgba(219,227,238,.84));background:linear-gradient(135deg,#ffffff 0%,rgba(255,250,248,.99) 58%,color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 8%,#ffffff) 100%);box-shadow:0 17px 38px rgba(111,72,82,.12),0 0 0 3px color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 10%,transparent),inset 0 1px 0 rgba(255,255,255,.9);transform:translateY(-1px);outline:none}.booking-workspace-modal__choice:hover::after,.booking-workspace-modal__choice:focus-visible::after{opacity:1}.booking-workspace-modal__choice:focus-visible{outline:3px solid color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 52%,transparent);outline-offset:3px}.booking-workspace-modal__logo{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;overflow:hidden;border-radius:12px;flex:0 0 auto;background:transparent}.booking-workspace-modal__logo img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;filter:drop-shadow(0 8px 16px rgba(111,72,82,.10))}.booking-workspace-modal__logo--empty{border:1px solid color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 30%,transparent);background:url('../img/menu-premium-icons.webp') 20% 50% / 600% 300% no-repeat}.booking-workspace-modal__copy{position:relative;z-index:1;min-width:0;display:grid;gap:3px}.booking-workspace-modal__copy strong{overflow:hidden;color:var(--booking-text,#2d2025);font-family:var(--booking-font-heading,"Playfair Display",Georgia,serif);font-size:clamp(.92rem,3.3vw,1.05rem);font-weight:900;letter-spacing:-.045em;line-height:1.02;white-space:nowrap;text-overflow:ellipsis}.booking-workspace-modal__copy span{width:max-content;max-width:100%;min-height:18px;display:inline-flex;align-items:center;padding:0 7px;border:1px solid color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 25%,transparent);border-radius:999px;background:rgba(255,255,255,.70);color:var(--booking-primary-2,#6f4852);font-size:.58rem;font-weight:950;letter-spacing:.075em;text-transform:uppercase;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.booking-workspace-modal__copy em{overflow:hidden;color:color-mix(in srgb,var(--booking-text,#2d2025) 58%,#ffffff);font-size:.72rem;font-style:normal;font-weight:690;line-height:1.38;white-space:nowrap;text-overflow:ellipsis}.booking-workspace-modal__arrow{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:74px;min-height:30px;padding:0 10px;border-radius:999px;background:linear-gradient(135deg,var(--booking-primary,#2d2025),var(--booking-primary-2,#6f4852));color:#ffffff;box-shadow:0 13px 28px color-mix(in srgb,var(--booking-primary,#2d2025) 17%,transparent);font-size:.64rem;font-weight:950;letter-spacing:-.01em;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.booking-workspace-modal__arrow span{line-height:1}.booking-workspace-modal__choice:hover .booking-workspace-modal__arrow,.booking-workspace-modal__choice:focus-visible .booking-workspace-modal__arrow{transform:translateX(2px);box-shadow:0 17px 34px color-mix(in srgb,var(--booking-primary,#2d2025) 22%,transparent)}@media (min-width:760px){.booking-workspace-gateway{padding-top:12px}.booking-workspace-gateway__hero{grid-template-columns:1fr;align-items:center}.booking-workspace-modal{align-items:center;padding-inline:18px}.booking-workspace-modal__panel{border-radius:30px}.booking-workspace-modal__header{padding:13px 18px 14px}.booking-workspace-modal__list{padding:9px 12px 14px}.booking-workspace-modal__choice{padding:10px}}@media (max-width:420px){.booking-workspace-gateway{padding-inline:10px}.booking-workspace-gateway__hero{padding:22px 16px 18px;border-radius:30px}.booking-workspace-gateway h1{font-size:clamp(2.08rem,11.2vw,2.85rem)}.booking-workspace-gateway__actions{display:grid}.booking-workspace-gateway__cta,.booking-workspace-gateway__account{width:100%}.booking-workspace-gateway__content{max-width:100%}.booking-workspace-modal{padding-inline:8px}.booking-workspace-modal__header{padding-inline:16px}.booking-workspace-modal__logo{width:40px;height:40px;border-radius:12px}.booking-workspace-modal__choice{grid-template-columns:auto minmax(0,1fr);min-height:62px;padding:9px}.booking-workspace-modal__arrow{position:absolute;right:9px;bottom:9px;min-width:30px;min-height:30px;width:30px;height:30px;padding:0;border-radius:999px}.booking-workspace-modal__arrow span{display:none}}@media (max-width:759px){.booking-workspace-modal{align-items:stretch;padding:0}.booking-workspace-modal__panel{width:100%;max-width:none;height:100dvh;min-height:100dvh;max-height:none;margin:0;box-sizing:border-box;border:0;border-radius:0;box-shadow:none;transform:none}.booking-workspace-modal__header{padding:calc(16px + env(safe-area-inset-top, 0px)) 16px 12px}.booking-workspace-modal__list{min-height:0;padding-bottom:calc(12px + env(safe-area-inset-bottom, 0px))}}@media (prefers-reduced-motion:reduce){.booking-workspace-gateway__cta,.booking-workspace-gateway__account,.booking-workspace-modal,.booking-workspace-modal__panel,.booking-workspace-modal__choice,.booking-workspace-modal__arrow{transition:none}.booking-workspace-gateway__cta::after,.booking-workspace-modal__choice::after{display:none}}
/* Dark mode wspólny dla wyboru salonu i publicznego formularza. */
/* Dekoracyjne ikony premium: przezroczyste grafiki WebP dla trybu nocnego. */
.public-booking-shell[data-public-booking-mode="dark"] .booking-hero__advantage i{border:0;background-color:transparent;background-image:url('../img/booking-interface-icons.svg?v=20261027-vector');background-position:0% 50%;background-size:400% 100%;box-shadow:none;filter:none;background-repeat:no-repeat;border-radius:0;}
.public-booking-shell[data-public-booking-mode="dark"] .booking-hero__advantage i.booking-hero__advantage-icon--verified{background-image:url('../img/booking-interface-icons.svg?v=20261027-vector');background-position:33.333333% 50%;background-size:400% 100%;background-color:transparent;background-repeat:no-repeat;border:0;border-radius:0;box-shadow:none;filter:none;}
.public-booking-shell[data-public-booking-mode="dark"] .booking-hero__advantage i.booking-hero__advantage-icon--star{background-image:url('../img/booking-interface-icons.svg?v=20261027-vector');background-position:66.666667% 50%;background-size:400% 100%;background-color:transparent;background-repeat:no-repeat;border:0;border-radius:0;box-shadow:none;filter:none;}
.public-booking-shell[data-public-booking-mode="dark"] :is(.booking-flow-intro__icon,.booking-working-hours__icon){
  box-sizing:border-box;border:0;background-color:transparent;background-image:url('../img/booking-interface-icons.svg?v=20261027-vector');background-size:400% 100%;box-shadow:none;background-repeat:no-repeat;border-radius:0;filter:none;}
.public-booking-shell[data-public-booking-mode="dark"] .booking-flow-intro__icon{background-position:0% 50%;background-color:transparent;background-image:url('../img/booking-interface-icons.svg?v=20261027-vector');background-size:400% 100%;background-repeat:no-repeat;border:0;border-radius:0;box-shadow:none;filter:none;}
.public-booking-shell[data-public-booking-mode="dark"] .booking-working-hours__icon{background-position:100% 50%;background-color:transparent;background-image:url('../img/booking-interface-icons.svg?v=20261027-vector');background-size:400% 100%;background-repeat:no-repeat;border:0;border-radius:0;box-shadow:none;filter:none;}
.public-booking-shell[data-public-booking-mode="dark"] .booking-card--flow-entry .booking-picker__trigger::before{
  border:0;
  background:transparent url('../img/booking-services-icon.svg?v=20261027-vector') center / contain no-repeat;
  box-shadow:none;
}
.public-booking-shell[data-public-booking-mode="dark"] .booking-hero__account-guest-icon{
  background-image:url('../img/booking-identity-premium-dark.webp?v=20261021-identity');
}
body:has(.booking-workspace-gateway[data-public-booking-mode="dark"]){
  color-scheme:dark;background:linear-gradient(145deg,#171d29,#0e131d 80%);
}
.booking-workspace-gateway[data-public-booking-mode="dark"]{
  color-scheme:dark;--booking-text:#f6f3f8;--booking-muted:#c4c5d2;
  --booking-primary:#713950;--booking-primary-2:#a55478;
  --booking-accent:#312937;--booking-accent-strong:#594252;
  --booking-accent-deep:#ffc3db;--booking-line-theme:#876178;--booking-line:#515365;
  color:var(--booking-text);
}
.booking-workspace-gateway[data-public-booking-mode="dark"] .booking-workspace-gateway__hero{
  background:radial-gradient(circle at 92% 7%,rgba(137,72,107,.20),transparent 45%),linear-gradient(135deg,#262b39,#171e2c 80%);
  border-color:#555264;box-shadow:0 26px 70px rgba(0,0,0,.29);
}
.booking-workspace-gateway[data-public-booking-mode="dark"] .booking-workspace-gateway__hero::before{
  box-shadow:inset 0 0 0 22px rgba(255,255,255,.015);
}
.booking-workspace-gateway[data-public-booking-mode="dark"] :is(.booking-workspace-gateway__eyebrow,.booking-workspace-modal__eyebrow,.booking-workspace-modal__copy span){
  background:rgba(98,63,86,.39);border-color:#74566c;color:#f4c9da;
}
.booking-workspace-gateway[data-public-booking-mode="dark"] :is(.booking-workspace-gateway h1,.booking-workspace-modal__header h2,.booking-workspace-modal__copy strong){color:#f8f4f8}
.booking-workspace-gateway[data-public-booking-mode="dark"] :is(.booking-workspace-gateway__content p,.booking-workspace-modal__header p,.booking-workspace-modal__copy em){color:#d4d0df}
.booking-workspace-gateway[data-public-booking-mode="dark"] :is(.booking-workspace-gateway__account,.booking-workspace-gateway__empty,.booking-workspace-gateway__noscript){
  background:#2b3141;border-color:#5b6273;color:#f4d8e6;
}
.booking-workspace-gateway[data-public-booking-mode="dark"] .booking-workspace-modal__backdrop{background:rgba(6,10,18,.82)}
.booking-workspace-gateway[data-public-booking-mode="dark"] .booking-workspace-modal__panel{
  background:linear-gradient(160deg,#292f3e,#181f2e);border-color:#596174;box-shadow:0 32px 92px rgba(0,0,0,.52);
}
.booking-workspace-gateway[data-public-booking-mode="dark"] .booking-workspace-modal__panel::before{
  background:radial-gradient(circle at 86% 12%,rgba(172,86,130,.14),transparent 43%),linear-gradient(135deg,#343141,#252c3b);
  border-bottom-color:#50586c;
}
.booking-workspace-gateway[data-public-booking-mode="dark"] .booking-workspace-modal__panel::after{
  box-shadow:inset 0 0 0 18px rgba(255,255,255,.025);
}
.booking-workspace-gateway[data-public-booking-mode="dark"] .booking-workspace-modal__choice,
.booking-workspace-gateway[data-public-booking-mode="dark"] .booking-workspace-modal__choice.is-current{
  background:linear-gradient(130deg,#353645,#252b39);
  color:#f6f3f8;border-color:#5c6071;box-shadow:0 12px 25px rgba(0,0,0,.15);
}
.booking-workspace-gateway[data-public-booking-mode="dark"] .booking-workspace-modal__choice:is(:hover,:focus-visible){
  background:linear-gradient(125deg,#3d3a4d,#2a3041);border-color:#ba819e;
}
.booking-workspace-gateway[data-public-booking-mode="dark"] .booking-workspace-modal__choice::after{opacity:.28}
.booking-workspace-gateway[data-public-booking-mode="dark"] .booking-workspace-modal__close{
  color:#f4e5ee;background:#333847;border-color:#656b7b;
}
.booking-workspace-gateway[data-public-booking-mode="dark"] .booking-workspace-modal__logo--empty{border-color:#6d596e}
.public-booking-shell[data-public-booking-mode="dark"] .booking-hero__panel--with-background{
  border-color:rgba(224,176,202,.38);box-shadow:0 22px 54px rgba(0,0,0,.3);
}
.public-booking-shell[data-public-booking-mode="dark"] .booking-hero__panel--with-background::before{
  background:linear-gradient(180deg,rgba(11,15,28,.76),rgba(11,15,28,.70) 43%,rgba(11,15,28,.88));opacity:1;
}
.public-booking-shell[data-public-booking-mode="dark"] .booking-hero__panel--with-background :is(.booking-company__name,.booking-company__description,.booking-hero__eyebrow,.booking-hero__advantage b){
  color:#fff4fa;text-shadow:0 1px 10px rgba(0,0,0,.42);
}

.booking-service-grid{display:grid;gap:12px}.booking-service-card{position:relative;display:grid;gap:0;width:100%;min-height:120px;padding:14px 68px 14px 14px;overflow:hidden;border:1px solid color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 34%,var(--booking-line,#ead9d8));border-radius:22px;background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(255,249,250,.94));color:var(--booking-text,#2d2025);cursor:default;box-shadow:0 12px 30px rgba(45,32,37,.045);transition:border-color .18s ease,background .18s ease,box-shadow .18s ease}.booking-service-card:hover,.booking-service-card:focus-within{border-color:color-mix(in srgb,var(--booking-accent-deep,#d96f86) 30%,var(--booking-line,#ead9d8));background:#fff;box-shadow:0 18px 42px rgba(45,32,37,.075)}.booking-service-card.is-active,.booking-service-card.is-extra-active{border-color:color-mix(in srgb,var(--booking-accent-deep,#d96f86) 62%,var(--booking-line,#ead9d8));background:linear-gradient(135deg,#fff,color-mix(in srgb,var(--booking-accent,#fff1f2) 72%,#fff));box-shadow:0 18px 44px color-mix(in srgb,var(--booking-accent-deep,#d96f86) 13%,transparent)}.booking-service-card::before{content:"";position:absolute;top:24px;right:20px;display:flex;align-items:center;justify-content:center;width:34px;height:34px;border:2px solid color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 70%,#fff);border-radius:999px;background:rgba(255,255,255,.96);color:transparent;font-size:.95rem;font-weight:950;opacity:1;box-shadow:0 8px 18px rgba(45,32,37,.055);pointer-events:none;transition:border-color .18s ease,background .18s ease,color .18s ease,box-shadow .18s ease}.booking-service-card.is-active::before,.booking-service-card.is-extra-active::before{content:"✓";border-color:transparent;background:linear-gradient(180deg,color-mix(in srgb,var(--booking-accent-deep,#d96f86) 86%,#fff),var(--booking-accent-deep,#d96f86));color:#fff;box-shadow:0 10px 24px color-mix(in srgb,var(--booking-accent-deep,#d96f86) 26%,transparent)}.booking-service-card__pick{position:relative;z-index:1;display:grid;grid-template-columns:116px minmax(0,1fr);align-items:center;gap:18px;width:100%;padding:0;border:0;background:transparent;color:inherit;text-align:left;font:inherit;cursor:pointer}.booking-service-card__pick:focus-visible,.booking-service-card__details-action:focus-visible,.booking-service-card__extra-action:focus-visible{outline:none;box-shadow:0 0 0 4px color-mix(in srgb,var(--booking-accent-strong,#ffd8df) 58%,transparent)}.booking-service-card__thumb{position:relative;display:flex;align-items:center;justify-content:center;width:116px;height:92px;overflow:hidden;border:1px solid color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 34%,var(--booking-line,#ead9d8));border-radius:18px;background:radial-gradient(circle at 28% 22%,rgba(255,255,255,.9),transparent 34%),linear-gradient(135deg,color-mix(in srgb,var(--booking-accent,#fff1f2) 72%,#fff),color-mix(in srgb,var(--booking-surface-3,#fff7f9) 90%,#fff));color:color-mix(in srgb,var(--booking-accent-deep,#d96f86) 76%,var(--booking-text,#2d2025));font-size:.68rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase;box-shadow:0 12px 26px rgba(45,32,37,.065)}.booking-service-card__thumb img{display:block;width:100%;height:100%;object-fit:cover;background:linear-gradient(135deg,rgba(255,255,255,.86),rgba(252,231,239,.42))}.booking-service-card__thumb:not(.has-image)::before{content:"";position:absolute;inset:12%;border-radius:inherit;background:radial-gradient(circle,rgba(255,255,255,.72),transparent 66%);pointer-events:none}.booking-service-card__thumb>*{position:relative;z-index:1}.booking-service-card__body{display:grid;align-content:center;gap:8px;min-width:0}.booking-service-card__name{padding:0;color:var(--booking-text,#2d2025);font-size:1.05rem;font-weight:850;line-height:1.28}.booking-service-card__meta{display:flex;align-items:center;flex-wrap:wrap;gap:7px;color:var(--booking-muted,#7d6f73);font-size:.86rem;line-height:1.45}.booking-service-card__meta-item{display:inline-flex;align-items:center;gap:6px}.booking-service-card__meta-item svg{width:17px;height:17px;flex:0 0 17px;color:color-mix(in srgb,var(--booking-primary-2,#6f4852) 74%,var(--booking-muted,#7d6f73))}.booking-service-card__meta-separator{color:color-mix(in srgb,var(--booking-muted,#7d6f73) 44%,transparent)}.booking-service-card__actions{position:relative;z-index:2;display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin:10px 0 0 134px;min-width:0;max-width:100%;overflow:visible}.booking-service-card__primary-action{display:none}.booking-service-card__details-action,.booking-service-card__extra-action{display:inline-flex;align-items:center;justify-content:center;min-height:44px;max-width:100%;padding:7px 13px;border-radius:999px;border:1px solid color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 44%,var(--booking-line,#ead9d8));background:rgba(255,255,255,.90);color:var(--booking-primary-2,#6f4852);font:inherit;font-size:.76rem;font-weight:850;line-height:1.15;text-align:center;cursor:pointer;white-space:normal;overflow-wrap:anywhere;transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,color .18s ease}.booking-service-card__details-action:hover,.booking-service-card__extra-action:hover{border-color:color-mix(in srgb,var(--booking-accent-deep,#d96f86) 26%,transparent);background:color-mix(in srgb,var(--booking-accent,#fff1f2) 46%,#fff);color:var(--booking-accent-deep,#d96f86);box-shadow:0 10px 18px color-mix(in srgb,var(--booking-accent-deep,#d96f86) 9%,transparent)}.booking-service-card__extra-action{border-color:color-mix(in srgb,var(--booking-accent-deep,#d96f86) 22%,transparent);background:color-mix(in srgb,var(--booking-accent,#fff1f2) 52%,#fff);color:var(--booking-accent-deep,#d96f86)}.booking-service-card__extra-action.is-reserved-hidden{visibility:hidden;opacity:0;pointer-events:none}.booking-service-card[hidden]{display:none}@media (max-width:767px){.booking-service-card{min-height:0;padding:10px 44px 10px 10px;border-radius:17px}.booking-service-card::before{top:17px;right:11px;width:27px;height:27px}.booking-service-card__pick{grid-template-columns:68px minmax(0,1fr);gap:10px}.booking-service-card__thumb{width:68px;height:62px;border-radius:13px}.booking-service-card__name{font-size:.92rem;line-height:1.2}.booking-service-card__body{gap:5px}.booking-service-card__meta{gap:4px;font-size:.74rem;line-height:1.3}.booking-service-card__meta-item{gap:4px}.booking-service-card__meta-item svg{width:14px;height:14px;flex-basis:14px}.booking-service-card__actions{margin-left:78px;margin-top:5px;gap:5px}.booking-service-card__details-action,.booking-service-card__extra-action{padding:5px 9px;font-size:.68rem}}@media (max-width:420px){.booking-service-card{padding-right:42px}.booking-service-card::before{right:9px;width:26px;height:26px}.booking-service-card__pick{grid-template-columns:62px minmax(0,1fr);gap:9px}.booking-service-card__thumb{width:62px;height:58px;border-radius:12px}.booking-service-card__actions{margin-left:71px}.booking-service-card__meta-separator{display:none}.booking-service-card__meta{display:grid;gap:2px}}.booking-service-details{max-height:min(88dvh,840px)}.booking-service-details__panels{display:grid;gap:14px}.booking-service-details__panel{display:grid;gap:16px}.booking-service-details__panel[hidden]{display:none}.booking-service-details__hero{display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:24px;border:1px solid color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 36%,var(--booking-line,#e5e7eb));background:radial-gradient(circle at 22% 12%,rgba(255,255,255,.84),transparent 34%),linear-gradient(135deg,color-mix(in srgb,var(--booking-accent,#fce7ef) 66%,#fff),color-mix(in srgb,var(--booking-surface-3,#fff7f9) 92%,#fff));color:color-mix(in srgb,var(--booking-accent-deep,#a84661) 72%,var(--booking-text,#251916));font-size:1rem;font-weight:950;letter-spacing:.06em;text-transform:uppercase;box-shadow:0 20px 42px rgba(122,81,72,.09)}.booking-service-details__hero img{display:block;width:100%;height:100%;object-fit:cover}.booking-service-details__content{display:grid;gap:14px}.booking-service-details__media.is-empty{display:none}.booking-service-details__title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.booking-service-details__title-row h4{margin:0;color:var(--booking-text,#251916);font-size:1.16rem;line-height:1.25;letter-spacing:-.02em}.booking-service-details__title-row p{margin:5px 0 0;color:var(--booking-muted,#725e58);font-weight:800;line-height:1.45}.booking-service-details__title-row>span{flex:0 0 auto;display:inline-flex;align-items:center;min-height:30px;padding:6px 10px;border-radius:999px;background:color-mix(in srgb,var(--booking-accent,#fce7ef) 48%,#fff);color:var(--booking-accent-deep,#a84661);font-size:.74rem;font-weight:900}.booking-service-details__block{display:grid;gap:8px;padding:13px 14px;border:1px solid rgba(154,118,96,.14);border-radius:18px;background:rgba(255,255,255,.72);color:var(--booking-text,#251916);box-shadow:0 12px 24px rgba(122,81,72,.045)}.booking-service-details__block strong{font-size:.86rem;color:var(--booking-text,#251916);letter-spacing:.01em}.booking-service-details__block p{margin:0;color:var(--booking-muted,#725e58);line-height:1.58}.booking-service-details__block b{color:var(--booking-text,#251916)}.booking-service-details__actions{display:flex;gap:10px;flex-wrap:wrap;padding-top:2px}.booking-service-details__actions>*{flex:1 1 220px}@media (min-width:900px){}@media (max-width:767px){.booking-service-details__title-row{flex-direction:column;align-items:flex-start;gap:8px}.booking-service-details__actions{flex-direction:column}.booking-service-details__actions>*{flex:1 1 auto;width:100%}}.booking-service-card__primary-action,.booking-service-card__extra-action,.booking-service-card__details-action{font-family:inherit;cursor:pointer}.booking-service-card__thumb,.booking-service-details__hero{content-visibility:auto}.booking-service-card__thumb img,.booking-service-details__hero img{background:linear-gradient(135deg,rgba(255,255,255,.86),rgba(252,231,239,.42))}.booking-service-card__thumb:not(.has-image)::before,.booking-service-details__hero:not(.has-image)::before{content:"";position:absolute;inset:12%;border-radius:inherit;background:radial-gradient(circle,rgba(255,255,255,.62),transparent 66%);pointer-events:none}.booking-service-card__thumb,.booking-service-details__hero{position:relative}.booking-service-card__thumb>*,.booking-service-details__hero>*{position:relative;z-index:1}.booking-service-details__media{display:grid;gap:10px}.booking-service-details__hero{min-height:clamp(190px,34vw,320px);aspect-ratio:16/10}.booking-service-details__hero:not(.has-image){flex-direction:column;gap:7px;text-align:center}.booking-service-details__hero img{min-height:0;aspect-ratio:16/10}.booking-service-details__placeholder-mark{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:8px 18px;border-radius:999px;border:1px solid rgba(168,70,97,.18);background:rgba(255,255,255,.76);box-shadow:0 10px 24px rgba(122,81,72,.07)}.booking-service-details__placeholder-text{color:var(--booking-muted,#725e58);font-size:.84rem;font-weight:850;letter-spacing:0;text-transform:none}.booking-service-details__caption{margin:-2px 2px 0;color:var(--booking-muted,#725e58);font-size:.84rem;font-weight:850;line-height:1.45}.booking-service-details__caption[hidden]{display:none}.booking-service-details__thumbs{display:flex;gap:8px;overflow-x:auto;overflow-y:hidden;padding:2px 2px 6px;scrollbar-width:thin;-webkit-overflow-scrolling:touch}.booking-service-details__thumb-button{flex:0 0 62px;width:62px;height:62px;padding:0;overflow:hidden;border-radius:15px;border:2px solid transparent;background:rgba(255,255,255,.82);box-shadow:0 8px 18px rgba(122,81,72,.08);cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,opacity .18s ease}.booking-service-details__thumb-button img{display:block;width:100%;height:100%;object-fit:cover}.booking-service-details__thumb-button:hover{transform:translateY(-1px);box-shadow:0 12px 22px rgba(122,81,72,.13)}.booking-service-details__thumb-button.is-active{border-color:color-mix(in srgb,var(--booking-accent-deep,#a84661) 58%,var(--booking-accent,#fce7ef));box-shadow:0 0 0 4px color-mix(in srgb,var(--booking-accent,#fce7ef) 42%,transparent),0 12px 24px rgba(122,81,72,.12)}.booking-service-details__thumb-button:focus-visible{outline:none;border-color:var(--booking-accent-deep,#a84661);box-shadow:0 0 0 4px color-mix(in srgb,var(--booking-accent,#fce7ef) 54%,transparent),0 12px 24px rgba(122,81,72,.12)}.booking-service-details__block:empty{display:none}.booking-modal--service-details .booking-modal__sheet{display:flex;flex-direction:column}.booking-service-details__panels{min-height:0}.booking-service-details__panel:not([hidden]){min-height:0}@media (min-width:900px){.booking-modal--service-details .booking-modal__sheet{width:min(780px,calc(100vw - 32px))}}@media (max-width:767px){.booking-modal--service-details .booking-modal__sheet{width:100%;max-width:none;height:100dvh;max-height:100dvh;border-radius:0;margin:0}.booking-modal--service-details .booking-modal__header{flex:0 0 auto}.booking-service-details__panels{overflow-x:hidden;overflow-y:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch}.booking-service-details__panel:not([hidden]){display:flex;flex-direction:column;gap:13px}.booking-service-details__hero,.booking-service-details__hero img{min-height:178px;aspect-ratio:4/3}.booking-service-details__thumb-button{flex-basis:58px;width:58px;height:58px;border-radius:14px}.booking-service-details__content{gap:10px}.booking-service-details__block{padding:12px;border-radius:16px}.booking-service-details__actions{position:sticky;bottom:0;z-index:3;margin:2px -2px -2px;padding:10px 2px 2px;background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--booking-surface,#fff) 94%,transparent) 24%,var(--booking-surface,#fff) 100%)}}@media (prefers-reduced-motion:reduce){.booking-service-details__thumb-button{transition:none}}.booking-modal--service-details .booking-modal__sheet.booking-service-details{display:block;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.booking-modal--service-details .booking-modal__header{position:static;top:auto;z-index:auto}.booking-modal--service-details .booking-service-details__panels{overflow:visible;min-height:auto}.booking-modal--service-details .booking-service-details__panel:not([hidden]){display:grid;min-height:auto;gap:16px}.booking-modal--service-details .booking-service-details__actions{position:static;inset:auto;z-index:auto;margin:0;padding-top:4px;background:none}@media (max-width:767px){.booking-modal--service-details .booking-modal__sheet.booking-service-details{width:100%;max-width:none;height:100dvh;max-height:100dvh;display:flex;padding-bottom:env(safe-area-inset-bottom, 0px);scroll-padding-top:16px;flex-direction:column;overflow:hidden}.booking-modal--service-details .booking-service-details__panels{overflow:visible;padding-bottom:0;min-height:0;flex:1 1 auto;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}.booking-modal--service-details .booking-service-details__panel:not([hidden]){display:grid;gap:13px}.booking-modal--service-details .booking-service-details__actions{position:static;margin:0;padding:4px 0 0;background:none}}.booking-no-show-payment{display:grid;gap:14px;padding:16px;border:1px solid rgba(190,118,135,.24);border-radius:22px;background:linear-gradient(145deg,rgba(255,248,251,.96),rgba(255,255,255,.9));box-shadow:0 18px 42px rgba(190,118,135,.12);color:#334155}.booking-no-show-payment[hidden]{display:none}.booking-no-show-payment__head{display:grid;gap:4px}.booking-no-show-payment__head span{color:#8b4a5c;font-size:.72rem;font-weight:950;letter-spacing:.06em;text-transform:uppercase}.booking-no-show-payment__head strong{color:#1f2937;font-size:1rem;line-height:1.25}.booking-no-show-payment p{margin:0;color:#475569;font-size:.9rem;line-height:1.55;white-space:pre-line}.booking-no-show-payment__amount{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid rgba(190,118,135,.18);border-radius:16px;background:rgba(255,255,255,.78)}.booking-no-show-payment__amount[hidden]{display:none}.booking-no-show-payment__amount span{color:#64748b;font-size:.78rem;font-weight:900}.booking-no-show-payment__amount strong{color:#8b4a5c;font-size:1rem;font-weight:950}.booking-no-show-payment__methods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.booking-no-show-payment__method{display:grid;gap:10px;min-width:0;padding:13px;border:1px solid rgba(148,163,184,.16);border-radius:18px;background:rgba(255,255,255,.82)}.booking-no-show-payment__method[hidden]{display:none}.booking-no-show-payment__method>strong{color:#1f2937;font-size:.9rem;font-weight:950}.booking-no-show-payment__method dl{display:grid;gap:8px;margin:0}.booking-no-show-payment__method dl div{display:grid;gap:3px;min-width:0}.booking-no-show-payment__method dl div[hidden],.booking-no-show-payment__method p[hidden]{display:none}.booking-no-show-payment__method dt{color:#94a3b8;font-size:.7rem;font-weight:950;letter-spacing:.04em;text-transform:uppercase}.booking-no-show-payment__method dd{margin:0;color:#334155;font-size:.86rem;font-weight:850;line-height:1.35;overflow-wrap:anywhere}.booking-success__note--payment{display:grid;gap:7px}.booking-success__note--payment span{display:block}.booking-modal__sheet--no-show-payment{overflow-x:hidden;overflow-y:auto;padding:22px 18px 20px;color:var(--booking-text,#111827)}.booking-modal--no-show-payment .booking-modal__header{margin-bottom:12px}.booking-modal--no-show-payment .booking-modal__eyebrow{color:var(--booking-accent-deep,#be185d)}.booking-modal--no-show-payment .booking-modal__lead{color:var(--booking-muted,#64748b)}.booking-payment-gate{display:grid;gap:12px}.booking-payment-gate__amount{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 12px;border:1px solid color-mix(in srgb,var(--booking-line,#ead9d8) 86%,transparent);border-radius:16px;background:linear-gradient(180deg,#ffffff 0%,var(--booking-surface-2,#f8fafc) 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.75)}.booking-payment-gate__amount[hidden]{display:none}.booking-payment-gate__amount span{color:var(--booking-muted,#64748b);font-size:.76rem;font-weight:900;letter-spacing:.045em;text-transform:uppercase}.booking-payment-gate__amount strong{color:var(--booking-text,#111827);font-size:1.08rem;font-weight:950}.booking-payment-gate__methods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.booking-payment-gate__method{display:grid;grid-template-columns:auto minmax(0,1fr);gap:9px;width:100%;min-width:0;padding:12px;border:1px solid color-mix(in srgb,var(--booking-line,#ead9d8) 88%,transparent);border-radius:17px;background:rgba(255,255,255,.92);color:var(--booking-text,#111827);text-align:left;cursor:pointer;box-shadow:0 10px 26px rgba(15,23,42,.055);transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease,background .18s ease}.booking-payment-gate__method[hidden]{display:none}.booking-payment-gate__method:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--booking-accent-deep,#be185d) 34%,var(--booking-line,#ead9d8));box-shadow:0 16px 34px rgba(15,23,42,.075)}.booking-payment-gate__method.is-selected{border-color:color-mix(in srgb,var(--booking-accent-deep,#be185d) 56%,var(--booking-line,#ead9d8));background:radial-gradient(circle at top right,color-mix(in srgb,var(--booking-accent-strong,#f9a8d4) 16%,transparent),transparent 38%),linear-gradient(180deg,#fff 0%,var(--booking-surface-3,#f8fafc) 100%);box-shadow:0 18px 40px rgba(15,23,42,.095)}.booking-payment-gate__radio{width:18px;height:18px;margin-top:1px;border:2px solid color-mix(in srgb,var(--booking-muted,#64748b) 48%,transparent);border-radius:999px;background:#fff;box-shadow:inset 0 0 0 5px #fff}.booking-payment-gate__method.is-selected .booking-payment-gate__radio{border-color:var(--booking-accent-deep,#be185d);background:var(--booking-accent-deep,#be185d)}.booking-payment-gate__method-body{display:grid;gap:4px;min-width:0}.booking-payment-gate__method-body>strong{color:var(--booking-text,#111827);font-size:.9rem;font-weight:950}.booking-payment-gate__method-body small{color:var(--booking-muted,#64748b);font-size:.76rem;line-height:1.35}.booking-payment-gate__details{display:grid;gap:4px;margin-top:2px;color:var(--booking-muted,#64748b);font-size:.75rem;line-height:1.3}.booking-payment-gate__details span,.booking-payment-gate__details em{overflow-wrap:anywhere}.booking-payment-gate__details span[hidden],.booking-payment-gate__details em[hidden]{display:none}.booking-payment-gate__details b{color:var(--booking-text,#111827);font-weight:900}.booking-payment-gate__details em{color:var(--booking-muted,#64748b);font-style:normal}[data-booking-no-show-payment-modal-bank-account],[data-booking-no-show-payment-bank-account]{font-variant-numeric:tabular-nums;letter-spacing:.025em;word-spacing:.12em}.booking-payment-gate__hint{margin:0;padding:10px 11px;border:1px solid color-mix(in srgb,var(--booking-line,#ead9d8) 84%,transparent);border-radius:15px;background:linear-gradient(180deg,#ffffff 0%,var(--booking-surface-2,#f8fafc) 100%);color:var(--booking-muted,#64748b);font-size:.8rem;font-weight:800;line-height:1.4}.booking-payment-gate__actions{display:flex;justify-content:flex-end;gap:8px;padding-top:0}.booking-no-show-payment__selected{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 14px;border:1px solid rgba(148,163,184,.16);border-radius:15px;background:rgba(255,255,255,.78)}.booking-no-show-payment__selected[hidden]{display:none}.booking-no-show-payment__selected span{color:#64748b;font-size:.78rem;font-weight:900}.booking-no-show-payment__selected strong{color:#1f2937;font-size:.9rem;font-weight:950}@media (max-width:720px){.booking-modal__sheet--no-show-payment{padding:18px 16px max(18px,env(safe-area-inset-bottom))}.booking-payment-gate__methods{grid-template-columns:1fr}.booking-payment-gate__amount,.booking-payment-gate__actions,.booking-no-show-payment__selected{display:grid;gap:8px;align-items:start}.booking-payment-gate__actions{grid-template-columns:1fr}}@media (max-width:720px){.booking-no-show-payment{margin-top:14px;padding:14px;border-radius:20px}.booking-no-show-payment__amount{display:grid;gap:5px;align-items:start}.booking-no-show-payment__methods{grid-template-columns:1fr}}.booking-modal__sheet--packages{width:min(880px,calc(100vw - 24px));max-height:min(86dvh,860px)}.booking-package-toolbar{position:sticky;top:0;z-index:2;display:flex;align-items:end;justify-content:space-between;gap:12px;margin:0 0 12px;padding:10px 0 12px;background:linear-gradient(180deg,rgba(255,255,255,.96) 0%,rgba(255,250,248,.90) 100%);backdrop-filter:blur(8px)}.booking-package-search{flex:1 1 auto;display:grid;gap:6px;min-width:0}.booking-package-search span{font-size:.72rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:rgba(45,32,37,.56)}.booking-package-search input{width:100%;min-height:46px;border:1px solid rgba(111,72,82,.16);border-radius:16px;padding:11px 14px;background:rgba(255,255,255,.92);color:var(--booking-primary,#2d2025);font:inherit;font-weight:700;box-shadow:0 10px 24px rgba(45,32,37,.04)}.booking-package-search input::placeholder{color:rgba(45,32,37,.42)}.booking-package-search input:focus{border-color:rgba(217,111,134,.42);box-shadow:0 0 0 4px rgba(217,111,134,.12),0 12px 26px rgba(45,32,37,.06)}.booking-package-count{flex:0 0 auto;display:inline-flex;align-items:center;min-height:38px;padding:8px 12px;border-radius:999px;background:rgba(255,216,223,.36);color:var(--booking-primary-2,#6f4852);font-size:.78rem;font-weight:900;white-space:nowrap}.booking-package-list{display:grid;gap:10px}.booking-package-card{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(210px,240px);align-items:stretch;gap:14px;min-height:0;padding:14px;border:1px solid rgba(111,72,82,.13);border-radius:22px;background:rgba(255,255,255,.82);color:var(--booking-primary,#2d2025);box-shadow:0 12px 28px rgba(45,32,37,.055);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease}.booking-package-card:hover,.booking-package-card:focus-within{transform:translateY(-1px);border-color:rgba(217,111,134,.34);background:rgba(255,255,255,.96);box-shadow:0 18px 42px rgba(45,32,37,.10)}.booking-package-card.is-active{border-color:rgba(217,111,134,.58);background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(255,241,242,.76));box-shadow:0 18px 44px rgba(217,111,134,.14)}.booking-package-card__main{display:flex;min-width:0;flex-direction:column;gap:8px}.booking-package-card__top{display:flex;align-items:center;flex-wrap:wrap;gap:7px}.booking-package-card__top span,.booking-package-card__top strong{display:inline-flex;align-items:center;min-height:24px;padding:5px 9px;border-radius:999px;font-size:.68rem;font-weight:900;line-height:1;letter-spacing:.055em;text-transform:uppercase}.booking-package-card__top span{background:rgba(255,216,223,.40);color:var(--booking-primary-2,#6f4852)}.booking-package-card__top strong{background:rgba(217,111,134,.12);color:var(--booking-accent-deep,#d96f86)}.booking-package-card h3{margin:0;font-size:1.03rem;line-height:1.24;color:var(--booking-primary,#2d2025)}.booking-package-card p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0;font-size:.86rem;line-height:1.48;color:rgba(45,32,37,.64)}.booking-package-card__side{display:flex;min-width:0;flex-direction:column;justify-content:space-between;gap:9px;padding:10px;border-radius:18px;background:rgba(255,244,241,.64)}.booking-package-card__meta{display:grid;grid-template-columns:1fr;gap:6px;margin:0}.booking-package-card__meta div{display:flex;align-items:baseline;justify-content:space-between;gap:10px;min-width:0;padding:0;border-radius:0;background:transparent}.booking-package-card__meta dt{margin:0;font-size:.66rem;font-weight:900;text-transform:uppercase;letter-spacing:.055em;color:rgba(45,32,37,.50)}.booking-package-card__meta dd{margin:0;text-align:right;font-size:.88rem;font-weight:950;color:var(--booking-primary,#2d2025)}.booking-package-card__regular-price{display:block;color:rgba(45,32,37,.54);font-size:.76rem;font-weight:800;text-align:right}.booking-package-card__services{display:flex;flex-wrap:wrap;gap:6px;margin:2px 0 0;padding:0;list-style:none}.booking-package-card__services li{display:inline-flex;align-items:center;max-width:100%;min-height:24px;padding:4px 8px;border-radius:999px;background:rgba(255,255,255,.76);border:1px solid rgba(111,72,82,.10);font-size:.73rem;font-weight:850;color:rgba(45,32,37,.68)}.booking-package-card__services-more{background:rgba(217,111,134,.10);color:var(--booking-primary-2,#6f4852)}.booking-package-card__button{width:100%;border:0;border-radius:14px;padding:10px 12px;font:inherit;font-weight:950;color:#fff;background:linear-gradient(135deg,var(--booking-primary,#2d2025),var(--booking-primary-2,#6f4852));cursor:pointer;box-shadow:0 12px 22px rgba(45,32,37,.14)}.booking-package-card.is-active .booking-package-card__button{background:linear-gradient(135deg,var(--booking-accent-deep,#d96f86),var(--booking-primary-2,#6f4852))}.booking-package-card__button:focus-visible,.booking-package-search input:focus-visible{outline:3px solid rgba(217,111,134,.26);outline-offset:2px}.booking-package-empty{margin:12px 0 0;padding:14px;border:1px dashed rgba(111,72,82,.22);border-radius:18px;background:rgba(255,255,255,.70);color:rgba(45,32,37,.68);font-size:.9rem;font-weight:750;text-align:center}@media (max-width:720px){.booking-entry-choices:not(.has-packages){display:grid;grid-template-columns:minmax(0,1fr)}.booking-entry-choices.has-packages{grid-template-columns:1fr}.booking-package-toolbar{display:grid;gap:9px;align-items:stretch;padding-top:4px}.booking-package-count{justify-content:center;min-height:34px}.booking-package-card{grid-template-columns:1fr;gap:10px;padding:13px;border-radius:20px}.booking-package-card__side{padding:10px;border-radius:16px}.booking-package-card__meta{grid-template-columns:repeat(3,minmax(0,1fr))}.booking-package-card__meta div{display:grid;gap:2px;justify-items:start}.booking-package-card__meta dd{text-align:left}.booking-package-card__regular-price{text-align:left}}

/* Public booking summary — compact confirmation hub + dedicated submodals */
.booking-step-modal--summary{grid-template-rows:auto minmax(0,1fr) auto}
.booking-summary-body{display:grid;align-content:start;gap:12px;padding:2px 5px 16px 0;overflow-anchor:none;scrollbar-gutter:stable}
.booking-summary-body>*{min-width:0}
.booking-summary-legal-scroll{display:grid;align-content:start;gap:14px;padding:2px 5px 16px 0;scrollbar-gutter:stable}
.booking-summary-card__icon,.booking-summary-action__icon,.booking-summary-submodal__icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 46px;width:46px;height:46px;border-radius:15px;background:linear-gradient(180deg,#fff1f6,#ffe8f0);color:var(--booking-accent-deep,#d96f86);box-shadow:0 10px 24px rgba(217,111,134,.08)}

.booking-summary-smart{display:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 14px;padding:0;border:0;background:transparent;box-shadow:none}
.booking-summary-smart.is-visible{display:grid}
.booking-summary-smart[hidden],.booking-summary-smart [hidden]{display:none}
.booking-summary-card{position:relative;display:grid;grid-template-columns:46px minmax(0,1fr);align-items:start;gap:13px;min-width:0;padding:16px;border:1px solid rgba(111,72,82,.12);border-radius:20px;background:rgba(255,255,255,.94);box-shadow:0 12px 30px rgba(45,32,37,.05)}
.booking-summary-card__icon{flex-basis:40px;width:40px;height:40px;border-radius:13px}
.booking-summary-card__main{display:grid;gap:6px;min-width:0}
.booking-summary-card__head{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0}
.booking-summary-card__head>span,.booking-summary-card__price>span{color:rgba(45,32,37,.56);font-size:.68rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}
.booking-summary__edit,.booking-summary-submodal__edit{display:inline-flex;align-items:center;justify-content:center;min-height:31px;padding:0 11px;border:1px solid color-mix(in srgb,var(--booking-accent-deep,#d96f86) 58%,#fff);border-radius:999px;background:#fff;color:var(--booking-accent-deep,#d96f86);font:inherit;font-size:.71rem;font-weight:900;cursor:pointer;transition:border-color .16s ease,background .16s ease,color .16s ease}
.booking-summary__edit:hover,.booking-summary__edit:focus-visible,.booking-summary-submodal__edit:hover,.booking-summary-submodal__edit:focus-visible{border-color:var(--booking-accent-deep,#d96f86);background:#fff5f8;outline:none}
.booking-summary-card__title{display:block;min-width:0;color:var(--booking-text,#2d2025);font-size:1.03rem;font-weight:900;line-height:1.35;overflow-wrap:anywhere}
.booking-summary-card__title--compact{font-size:.96rem}
.booking-summary-card__meta,.booking-summary__client-contact{color:var(--booking-muted,#7d6f73);font-size:.79rem;font-weight:650;line-height:1.45;overflow-wrap:anywhere}
.booking-summary-card--visit{grid-column:1/-1;grid-template-columns:46px minmax(0,1fr) minmax(160px,220px);align-items:stretch}
.booking-summary-card--datetime{order:2}.booking-summary-card--client{grid-column:auto;order:3}.booking-summary-card--specialist{grid-column:1/-1;order:4}
.booking-summary-card__price{display:grid;align-content:start;gap:7px;padding:11px 14px;border-left:1px solid rgba(111,72,82,.12);min-width:0}
.booking-summary-card__price>#booking-summary-total-price{color:color-mix(in srgb,var(--booking-accent-deep,#d96f86) 92%,#8a1538);font-size:clamp(1.85rem,4vw,2.55rem);font-weight:950;line-height:1}
.booking-summary-card__price.has-benefit>#booking-summary-total-price{color:var(--booking-success,#166534)}
.booking-summary-card__details{display:inline-flex;align-items:center;gap:8px;width:max-content;max-width:100%;margin-top:3px;padding:0;border:0;background:transparent;color:var(--booking-primary-2,#6f4852);font:inherit;font-size:.76rem;font-weight:850;cursor:pointer}
.booking-summary-card__details:hover,.booking-summary-card__details:focus-visible{color:var(--booking-accent-deep,#d96f86);outline:none}
.booking-summary-benefit-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 8px;padding:7px 8px;border:1px solid rgba(111,72,82,.09);border-radius:11px;background:rgba(255,255,255,.76)}
.booking-summary-benefit-row[hidden]{display:none}
.booking-summary-benefit-row span{font-size:.61rem;font-weight:900;text-transform:uppercase;color:rgba(45,32,37,.54)}
.booking-summary-benefit-row strong{font-size:.71rem;font-weight:950;color:var(--booking-success,#166534);text-align:right}
.booking-summary-benefit-row small{grid-column:1/-1;font-size:.65rem;font-weight:750;color:rgba(45,32,37,.64);text-align:right}
.booking-summary-actions-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 12px}
.booking-summary-action{position:relative;display:grid;grid-template-columns:40px minmax(0,1fr) auto 18px;align-items:center;gap:10px;min-width:0;min-height:72px;padding:11px 13px;border:1px solid rgba(111,72,82,.12);border-radius:18px;background:rgba(255,255,255,.92);color:var(--booking-text,#2d2025);font:inherit;text-align:left;cursor:pointer;box-shadow:0 9px 24px rgba(45,32,37,.035);transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}
.booking-summary-action[hidden]{display:none}
.booking-summary-action:hover,.booking-summary-action:focus-visible{border-color:color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 70%,var(--booking-line,#ead9d8));background:#fff;box-shadow:0 13px 30px rgba(45,32,37,.06);outline:none}
.booking-summary-action__icon{flex-basis:38px;width:38px;height:38px;border-radius:12px}

.booking-summary-action__copy{display:grid;gap:2px;min-width:0}
.booking-summary-action__copy strong{font-size:.9rem;font-weight:900;line-height:1.25}
.booking-summary-action__copy small{color:var(--booking-muted,#7d6f73);font-size:.7rem;font-weight:650;line-height:1.35}
.booking-summary-action__arrow{color:var(--booking-accent-deep,#d96f86);font-size:1rem;font-weight:900}
.booking-summary-status{display:inline-flex;align-items:center;justify-content:center;min-height:27px;padding:5px 8px;border-radius:999px;background:#f5f5f5;color:#6b7280;font-size:.64rem;font-weight:900;white-space:nowrap}
.booking-summary-status[data-tone="success"]{background:#ecfdf3;color:#15803d}
.booking-summary-status[data-tone="warning"]{background:#fff7ed;color:#b45309}
.booking-summary-status[data-tone="error"]{background:#fef2f2;color:#b91c1c}
.booking-no-show-payment{margin:0 0 12px}
.booking-summary-readiness{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:10px;margin:0 0 10px;padding:10px 12px;border:1px solid rgba(111,72,82,.11);border-radius:15px;background:#fff}
.booking-summary-readiness__icon{display:grid;place-items:center;width:32px;height:32px;border-radius:999px;background:#ecfdf3;color:#15803d;font-weight:950}
.booking-summary-readiness__copy{display:grid;gap:1px;min-width:0}
.booking-summary-readiness__copy strong{font-size:.79rem}
.booking-summary-readiness__copy small{font-size:.7rem;color:var(--booking-muted,#7d6f73)}
.booking-summary-readiness__jump{display:none;align-items:center;justify-content:center;gap:6px;min-height:34px;padding:0 10px;border:1px solid #fdba74;border-radius:999px;background:#fff;color:#b45309;font:inherit;font-size:.7rem;font-weight:900;white-space:nowrap;cursor:pointer}
.booking-summary-readiness[data-tone="warning"]{border-color:#fed7aa;background:#fffaf5}
.booking-summary-readiness[data-tone="warning"] .booking-summary-readiness__icon{background:#ffedd5;color:#c2410c}
.booking-summary-readiness[data-tone="warning"] .booking-summary-readiness__jump{display:inline-flex}
.booking-summary-actions-head{display:flex;align-items:end;justify-content:space-between;gap:12px;margin:2px 2px 8px}
.booking-summary-actions-head strong{color:var(--booking-text,#2d2025);font-size:.8rem;font-weight:900}
.booking-summary-actions-head span{color:var(--booking-muted,#7d6f73);font-size:.7rem;line-height:1.35;text-align:right}
.booking-modal__actions--summary.booking-modal__actions--final{position:relative;bottom:auto;z-index:2}
.booking-modal__actions--summary .booking-button-secondary--back{min-width:180px}
.booking-modal__actions--summary #booking-submit-button{width:min(100%,360px)}
.booking-modal__actions--summary #booking-submit-button:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}
.booking-modal__actions--summary #booking-submit-button:not(:disabled)::after{content:"→";margin-left:10px;font-size:1.1em}

/* Summary submodals */
.booking-modal.booking-modal--summary-sub{z-index:150;display:flex;align-items:center;justify-content:center}
.booking-modal__sheet--summary-sub{position:relative;left:auto;right:auto;bottom:auto;display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:min(760px,calc(100vw - 28px));max-width:calc(100vw - 28px);max-height:min(90dvh,820px);overflow:hidden;padding:0;box-sizing:border-box;border:1px solid color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 30%,rgba(255,255,255,.72));border-radius:28px;background:radial-gradient(circle at 88% 4%,rgba(255,225,234,.48),transparent 28%),linear-gradient(180deg,#fff 0%,#fffafb 100%);box-shadow:0 34px 90px rgba(45,32,37,.18)}
.booking-summary-submodal__header{position:sticky;top:0;z-index:5;align-items:flex-start;margin:0;padding:22px 22px 13px;border-bottom:1px solid rgba(111,72,82,.08);background:linear-gradient(180deg,rgba(255,255,255,.99),rgba(255,250,251,.96) 88%,rgba(255,250,251,.92));backdrop-filter:blur(12px)}
.booking-summary-submodal__heading{display:flex;align-items:center;gap:13px;min-width:0}
.booking-summary-submodal__heading h3{margin:0 0 4px;font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(1.6rem,3.2vw,2.05rem);line-height:1;letter-spacing:-.03em;color:var(--booking-text,#2d2025)}
.booking-summary-submodal__heading .booking-modal__lead{margin:0;color:var(--booking-muted,#7d6f73);font-size:.86rem;line-height:1.45}
.booking-summary-submodal__body{display:grid;gap:14px;min-width:0;min-height:0;overflow-x:hidden;overflow-y:auto;padding:18px 22px;box-sizing:border-box;scrollbar-gutter:auto;overscroll-behavior-y:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch}
.booking-summary-submodal__actions{position:sticky;bottom:0;z-index:5;display:flex;justify-content:flex-end;gap:10px;margin:0;padding:16px 22px max(18px,env(safe-area-inset-bottom));box-sizing:border-box;border-top:1px solid rgba(111,72,82,.11);background:rgba(255,250,251,.96);backdrop-filter:blur(12px)}
.booking-summary-submodal__save{width:min(100%,390px);margin-inline:auto}
.booking-summary-submodal__actions .booking-button-secondary{min-width:190px}
.booking-summary-submodal__body .booking-marketing-code,.booking-summary-submodal__body .booking-loyalty-redeem,.booking-summary-submodal__content,.booking-summary-submodal__legal{margin:0;padding:14px;border:1px solid rgba(111,72,82,.11);border-radius:18px;background:rgba(255,255,255,.9);box-shadow:0 10px 26px rgba(45,32,37,.035)}
.booking-summary-submodal__body .booking-benefit-picker{margin-top:0}
.booking-summary-submodal__body .booking-field--wide textarea{min-height:130px}
.booking-summary-submodal__body .booking-service-preparation__panels,.booking-summary-submodal__body .booking-intake-form__panels{display:grid;gap:10px}
.booking-summary-submodal__body .booking-service-preparation__block{margin:0}
.booking-summary-submodal__body .booking-intake-question{gap:6px;padding:10px;border-radius:15px}
.booking-summary-submodal__body .booking-intake-form__note{margin:0;color:var(--booking-muted,#7d6f73);font-size:.72rem}
.booking-summary-submodal__body .booking-consent--service-preparation{margin-top:10px}
.booking-summary-submodal__legal{display:grid;gap:12px}

.booking-summary-submodal__legal .booking-legal-checklist{display:grid;grid-template-columns:1fr;gap:9px}
.booking-summary-submodal__legal .booking-consent--document{min-height:48px;margin:0;padding:10px 11px;border:1px solid rgba(111,72,82,.11);border-radius:14px;background:#fff}
.booking-summary-submodal__legal .booking-consent--document span{font-size:.78rem;line-height:1.4}
.booking-summary-submodal__legal .booking-legal-rodo{font-size:.76rem;line-height:1.45}
.booking-summary-submodal__legal .booking-summary-legal__note{display:flex;align-items:center;flex-wrap:wrap;gap:7px}
.booking-summary-submodal__legal .booking-summary-legal__note a{font-weight:850;color:var(--booking-accent-deep,#d96f86);text-decoration:none}
.booking-summary-submodal__legal .booking-legal-cookie-settings{justify-self:start;margin:0}
.booking-summary-submodal__legal .booking-consent--marketing{margin-top:0;padding:10px 11px;border:1px solid rgba(111,72,82,.1);border-radius:14px;background:#fff}
.booking-summary-visit-details{display:grid;gap:14px}
.booking-summary-visit-details__section{display:grid;gap:8px;padding:14px;border:1px solid rgba(111,72,82,.11);border-radius:17px;background:#fff}
.booking-summary-visit-details__section>span{color:rgba(45,32,37,.58);font-size:.69rem;font-weight:900;letter-spacing:.065em;text-transform:uppercase}
.booking-summary-services-list{display:grid;gap:8px}
.booking-summary-services-list__item{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 11px;border:1px solid rgba(111,72,82,.09);border-radius:13px;background:#fffafb}
.booking-summary-services-list__item span{color:var(--booking-muted,#7d6f73);font-size:.7rem;font-weight:800}
.booking-summary-services-list__item strong{min-width:0;text-align:right;font-size:.86rem;font-weight:900;overflow-wrap:anywhere}
.booking-summary-services-list__empty{margin:0;color:var(--booking-muted,#7d6f73);font-size:.8rem}
.booking-summary-submodal__edit{justify-self:start}
.booking-summary-submodal__body .booking-selected-options{display:grid;gap:7px}
.booking-summary-submodal__body .booking-selected-options__head{display:flex;align-items:center;flex-wrap:wrap;gap:6px}
.booking-summary-submodal__body .booking-selected-options__count,.booking-summary-submodal__body .booking-selected-options__metric{display:inline-flex;align-items:center;min-height:25px;padding:4px 8px;border:1px solid rgba(111,72,82,.11);border-radius:999px;background:#fff;color:rgba(45,32,37,.70);font-size:.68rem;font-weight:850}
.booking-summary-submodal__body .booking-selected-options__list{display:grid;gap:5px}
.booking-summary-submodal__body .booking-selected-options__row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:7px;align-items:center;padding:8px 9px;border:1px solid rgba(111,72,82,.09);border-radius:11px;background:#fff}
.booking-summary-submodal__body .booking-selected-options__kind{font-size:.61rem;font-weight:900;text-transform:uppercase;color:var(--booking-accent-deep,#d96f86)}
.booking-summary-submodal__body .booking-selected-options__name{font-size:.76rem;font-weight:850}
.booking-summary-submodal__body .booking-selected-options__meta{font-size:.68rem;font-weight:800;color:var(--booking-muted,#7d6f73)}
.booking-summary-submodal__body .booking-selected-options__more,.booking-summary-submodal__body .booking-selected-options--empty{font-size:.72rem;color:var(--booking-muted,#7d6f73)}

@media (max-width:767px){
  .booking-summary-body,.booking-summary-legal-scroll{padding:10px 14px 12px;scrollbar-gutter:auto}
  .booking-summary-readiness{position:relative;grid-template-columns:32px minmax(0,1fr);gap:9px;margin:0 0 9px;padding:10px 11px;border-radius:16px}
  .booking-summary-readiness__icon{width:30px;height:30px}
  .booking-summary-readiness__copy strong{font-size:.8rem}
  .booking-summary-readiness__copy small{font-size:.69rem;line-height:1.35}
  .booking-summary-readiness__jump{grid-column:1/-1;width:100%;min-height:34px;border-radius:12px}
  .booking-summary-smart{grid-template-columns:1fr;gap:7px;margin-bottom:9px}
  .booking-summary-card{grid-template-columns:34px minmax(0,1fr);gap:9px;padding:10px 11px;border-radius:16px;box-shadow:0 8px 20px rgba(45,32,37,.035)}
  .booking-summary-card--visit{grid-column:1;grid-template-columns:34px minmax(0,1fr)}
  .booking-summary-card--visit .booking-summary-card__price{grid-column:2;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:6px 10px;margin-top:2px;padding:6px 0 0;border-left:0;border-top:1px solid rgba(111,72,82,.10)}
  .booking-summary-card--visit .booking-summary-card__price>span{margin:0;font-size:.61rem}
  .booking-summary-card--visit .booking-summary-card__price>#booking-summary-total-price{justify-self:end;font-size:1.05rem;line-height:1.1}
  .booking-summary-card--visit .booking-summary-benefit-row{grid-column:1/-1}
  .booking-summary-card--datetime{order:2}
  .booking-summary-card--client{grid-column:1;order:3}
  .booking-summary-card--specialist{grid-column:1;order:4}
  .booking-summary-card__icon{flex-basis:34px;width:34px;height:34px;border-radius:11px}
  
  .booking-summary-card__main{gap:3px}
  .booking-summary-card__head{gap:8px}
  .booking-summary-card__head>span{font-size:.61rem}
  .booking-summary__edit{min-height:27px;padding:0 9px;font-size:.66rem}
  .booking-summary-card__title,.booking-summary-card__title--compact{font-size:.88rem;line-height:1.28}
  .booking-summary-card__meta,.booking-summary__client-contact{font-size:.69rem;line-height:1.35}
  .booking-summary-card--visit .booking-summary-card__meta{display:none}
  .booking-summary-card__details{margin-top:0;font-size:.68rem}
  .booking-summary-actions-head{display:grid;gap:2px;align-items:start;margin:4px 2px 7px}
  .booking-summary-actions-head strong{font-size:.78rem}
  .booking-summary-actions-head span{font-size:.67rem;text-align:left}
  .booking-summary-actions-grid{grid-template-columns:1fr;gap:7px}
  .booking-summary-action--required{order:1}
  .booking-summary-action--optional{order:2}
  .booking-summary-action--info{order:3}
  .booking-summary-action{grid-template-columns:36px minmax(0,1fr) auto 14px;gap:8px;min-height:60px;padding:9px 10px;border-radius:16px}
  .booking-summary-action__icon{flex-basis:34px;width:34px;height:34px;border-radius:11px}
  .booking-summary-action__copy strong{font-size:.82rem}
  .booking-summary-action__copy small{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:.66rem}
  .booking-summary-status{min-height:24px;padding:4px 7px;font-size:.58rem}
  .booking-modal__actions--summary .booking-button-secondary--back,.booking-modal__actions--summary #booking-submit-button{width:100%;min-width:0;max-width:none}
  .booking-modal__sheet--packages{width:100%;max-width:none;height:100dvh;min-height:100dvh;max-height:100dvh;border:0;border-radius:0;box-shadow:none;display:grid;grid-template-rows:auto auto minmax(0, 1fr) auto auto;overflow:hidden}
  .booking-modal__sheet--packages .booking-package-list{min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
  .booking-modal__sheet--summary-sub{width:100%;max-width:none;max-height:100dvh;padding:0;border-radius:0;box-sizing:border-box;position:absolute;inset:0;height:100dvh;min-height:100dvh;margin:0;border:0;box-shadow:none;transform:none}
  #booking-summary-visit-details-modal .booking-step-modal--visit-details{position:absolute;inset:0;display:grid;width:100%;max-width:none;height:auto;max-height:none;padding:0;border:0;border-radius:0;box-shadow:none;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;transform:none}
  #booking-summary-visit-details-modal .booking-step-modal__header{position:relative;top:auto;z-index:5;margin:0;padding:calc(14px + env(safe-area-inset-top)) 14px 11px;border-bottom:1px solid rgba(111,72,82,.08);background:rgba(255,250,251,.98);backdrop-filter:none}
  #booking-summary-visit-details-modal .booking-step-modal__heading{gap:10px}
  #booking-summary-visit-details-modal .booking-step-modal__icon{flex:0 0 44px;width:44px;height:44px;border-radius:14px}
  #booking-summary-visit-details-modal .booking-step-modal__icon svg{width:22px;height:22px}
  #booking-summary-visit-details-modal .booking-step-modal__header h3{font-size:1.55rem;line-height:1.04}
  #booking-summary-visit-details-modal .booking-step-modal__header .booking-modal__lead{font-size:.84rem;line-height:1.42}
  #booking-summary-visit-details-modal .booking-step-modal__section{display:block;min-height:0;min-width:0;max-width:100%;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;padding:10px 14px 18px;scrollbar-gutter:auto;-webkit-overflow-scrolling:touch}
  #booking-summary-visit-details-modal .booking-summary-visit-details,#booking-summary-visit-details-modal .booking-summary-visit-details__section,#booking-summary-visit-details-modal .booking-summary-services-list,#booking-summary-visit-details-modal .booking-selected-options-host{min-width:0;max-width:100%;box-sizing:border-box}
  #booking-summary-visit-details-modal .booking-step-modal__actions{position:relative;bottom:auto;z-index:5;display:grid;grid-template-columns:1fr;gap:8px;margin:0;padding:10px 14px calc(10px + env(safe-area-inset-bottom));border-top:1px solid rgba(111,72,82,.11);background:#fffafb;box-shadow:0 -10px 24px rgba(45,32,37,.05);backdrop-filter:none}
  #booking-summary-visit-details-modal .booking-step-modal__actions>*{width:100%;min-width:0;max-width:none}
  .booking-modal__sheet--intake{position:absolute;inset:0;display:grid;width:100%;height:auto;max-height:none;padding:0;border:0;border-radius:0;box-shadow:none;overflow:hidden;grid-template-rows:auto minmax(0,1fr) auto}
  .booking-modal__sheet--intake .booking-summary-submodal__header{position:relative;top:auto;z-index:5;margin:0;padding:calc(14px + env(safe-area-inset-top)) 14px 11px;border-bottom:1px solid rgba(111,72,82,.08);background:rgba(255,250,251,.98);backdrop-filter:blur(12px)}
  .booking-modal__sheet--intake .booking-summary-submodal__body{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:10px 14px 18px;-webkit-overflow-scrolling:touch}
  .booking-modal__sheet--intake .booking-summary-submodal__content{padding:13px;border-radius:18px}
  .booking-modal__sheet--intake .booking-intake-question input,.booking-modal__sheet--intake .booking-intake-question select{height:42px;min-height:42px}
  .booking-modal__sheet--intake .booking-intake-question textarea{min-height:82px}
  .booking-modal__sheet--intake .booking-summary-submodal__actions{position:relative;bottom:auto;z-index:5;margin:0;padding:11px 14px max(14px,env(safe-area-inset-bottom));border-top:1px solid rgba(111,72,82,.11);background:rgba(255,250,251,.98);backdrop-filter:blur(12px)}
  .booking-modal__sheet--intake .booking-summary-submodal__save{width:100%;min-width:0;min-height:48px}
  .booking-summary-submodal__header{top:0;margin:0;padding:16px 16px 12px}
  .booking-summary-submodal__heading{gap:10px}
  .booking-summary-submodal__icon{flex-basis:40px;width:40px;height:40px;border-radius:13px}
  .booking-summary-submodal__heading h3{font-size:1.48rem}
  .booking-summary-submodal__heading .booking-modal__lead{font-size:.76rem}
  .booking-summary-submodal__body{gap:12px;padding:14px 16px 16px;scrollbar-gutter:auto}
  .booking-summary-submodal__actions{display:grid;grid-template-columns:1fr;gap:8px;margin:0;padding:11px 16px max(14px,env(safe-area-inset-bottom))}
  .booking-summary-submodal__actions .booking-button-secondary{width:100%;min-width:0}
  .booking-summary-submodal__body .booking-marketing-code__controls{grid-template-columns:1fr}
  .booking-summary-submodal__body .booking-button-secondary{width:100%}
  .booking-summary-submodal__body .booking-loyalty-redeem{display:grid;gap:10px}
  .booking-summary-submodal__body .booking-loyalty-redeem__switch{width:100%;justify-content:space-between}
  .booking-summary-submodal__body .booking-selected-options__row{grid-template-columns:1fr;gap:3px}
  .booking-summary-services-list__item{display:grid;gap:3px;align-items:start}
  .booking-summary-services-list__item strong{text-align:left}
}

/* Booking success confirmation */
.booking-modal__sheet--success{
  width:min(900px,calc(100vw - 28px));
  max-height:min(92dvh,920px);
  overflow-x:hidden;
  overflow-y:auto;
  border:1px solid color-mix(in srgb,var(--booking-line-theme) 24%,rgba(255,255,255,.86));
  border-radius:32px;
  background:radial-gradient(circle at 88% 0%,rgba(255,229,238,.36),transparent 28%),linear-gradient(180deg,#fff 0%,#fffafb 100%);
  box-shadow:0 36px 96px rgba(45,32,37,.2);
  scrollbar-gutter:stable;
}

.booking-modal__sheet--success .booking-modal__header{
  align-items:flex-start;
  gap:18px;
  padding-bottom:2px;
}

.booking-success__hero{
  display:grid;
  grid-template-columns:82px minmax(0,1fr);
  align-items:center;
  gap:20px;
  min-width:0;
}

.booking-success__hero .booking-modal__eyebrow{
  grid-column:1/-1;
  justify-self:start;
  min-height:30px;
  padding:6px 12px;
  border:0;
  border-radius:999px;
  background:linear-gradient(180deg,rgba(255,241,247,.98),rgba(255,232,240,.84));
  color:#d92f74;
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.01em;
  text-transform:none;
  box-shadow:none;
}

.booking-success__icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:76px;
  height:76px;
  border-radius:999px;
  background:linear-gradient(180deg,#f0fdf4 0%,#dcfce7 100%);
  border:1px solid #a7f3d0;
  color:#15803d;
  box-shadow:0 16px 34px rgba(22,101,52,.1),inset 0 1px 0 rgba(255,255,255,.9);
  font-size:2.35rem;
  font-weight:900;
  line-height:1;
}

.booking-success__title{
  margin:0;
  font-family:var(--booking-font-body);
  font-size:clamp(1.4rem,2.4vw,1.85rem);
  font-weight:900;
  line-height:1.14;
  letter-spacing:-.035em;
  color:var(--booking-text);
}

.booking-success__lead{
  max-width:48rem;
  margin:5px 0 0;
  color:var(--booking-muted);
  font-size:.96rem;
  line-height:1.55;
}

.booking-success__reserved-card{
  display:grid;
  gap:20px;
  padding:24px;
  border:1px solid color-mix(in srgb,var(--booking-line-theme) 46%,#ffffff 54%);
  border-radius:28px;
  background:radial-gradient(circle at 18% 4%,rgba(255,216,223,.36),transparent 34%),linear-gradient(180deg,rgba(255,252,253,.99),rgba(255,247,250,.84));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 18px 42px rgba(217,111,134,.07);
}

.booking-success__reserved-grid{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(260px,.95fr);
  gap:24px;
  min-width:0;
}

.booking-success__reserved-main,
.booking-success__reserved-side{
  display:grid;
  align-content:start;
  gap:16px;
  min-width:0;
}

.booking-success__reserved-side{
  padding-left:24px;
  border-left:1px solid rgba(217,111,134,.18);
}

.booking-success__detail-row{
  display:grid;
  grid-template-columns:48px minmax(0,1fr);
  align-items:center;
  gap:14px;
  min-width:0;
}

.booking-success__detail-row--main{
  align-items:start;
}

.booking-success__detail-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:46px;
  height:46px;
  border-radius:16px;
  background:linear-gradient(180deg,rgba(255,232,240,.94),rgba(255,244,247,.86));
  border:1px solid rgba(217,111,134,.12);
  color:#d92f74;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.88);
}



.booking-success__summary-label{
  color:rgba(45,32,37,.56);
  font-size:.7rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.booking-success__summary-value{
  display:block;
  margin-top:4px;
  color:var(--booking-text);
  font-size:1.02rem;
  font-weight:900;
  line-height:1.3;
  overflow-wrap:anywhere;
}

.booking-success__addons-block{
  display:grid;
  gap:10px;
  margin-top:2px;
  padding-top:16px;
  border-top:1px solid rgba(217,111,134,.14);
}

.booking-success__addons-heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  color:rgba(45,32,37,.68);
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.booking-success__addons-heading em{
  display:inline-flex;
  min-height:26px;
  align-items:center;
  padding:4px 9px;
  border-radius:999px;
  background:rgba(255,255,255,.78);
  border:1px solid rgba(217,111,134,.12);
  color:#b71f55;
  font-style:normal;
  font-size:.68rem;
  letter-spacing:.02em;
}

.booking-success__addons-list{
  display:grid;
  gap:8px;
  margin:0;
  padding:0;
  list-style:none;
}

.booking-success__addons-list li{
  display:grid;
  grid-template-columns:28px minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  padding:10px 11px;
  border:1px solid rgba(111,72,82,.08);
  border-radius:16px;
  background:rgba(255,255,255,.7);
}

.booking-success__addon-check{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:26px;
  height:26px;
  border-radius:999px;
  background:rgba(255,216,223,.58);
  color:#d92f74;
  font-weight:950;
}

.booking-success__addon-copy{
  display:grid;
  gap:2px;
  min-width:0;
}

.booking-success__addon-copy strong{
  color:rgba(45,32,37,.64);
  font-size:.66rem;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.booking-success__addon-copy span{
  color:var(--booking-text);
  font-size:.9rem;
  font-weight:800;
  line-height:1.25;
}

.booking-success__addon-meta{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:7px;
  color:rgba(45,32,37,.64);
  white-space:nowrap;
}

.booking-success__addon-meta em,
.booking-success__addon-meta b{
  font-style:normal;
  font-size:.82rem;
  font-weight:850;
}

.booking-success__addon-meta b{
  color:#c81e5b;
}

.booking-success__addons-empty{
  margin:0;
  padding:12px 13px;
  border:1px dashed rgba(217,111,134,.2);
  border-radius:16px;
  background:rgba(255,255,255,.54);
  color:rgba(45,32,37,.58);
  font-size:.88rem;
  font-weight:700;
}

.booking-success__total-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding-top:18px;
  border-top:1px solid rgba(217,111,134,.2);
}

.booking-success__total-row span{
  color:rgba(45,32,37,.62);
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.booking-success__total-row strong{
  color:#c81e5b;
  font-size:clamp(2rem,4vw,2.75rem);
  font-weight:950;
  line-height:1;
  letter-spacing:-.045em;
  white-space:nowrap;
}

.booking-success__note{
  display:block;
  margin:0;
  padding:14px 16px;
  border-radius:18px;
  border:1px solid rgba(217,111,134,.1);
  background:linear-gradient(180deg,#fff 0%,#fffafb 100%);
  color:var(--booking-muted);
  line-height:1.55;
  font-size:.88rem;
  box-shadow:none;
}

.booking-success__note--attention{
  border-color:rgba(245,158,11,.24);
  background:linear-gradient(180deg,#fffdf7,#fff9ec);
  color:#8a5a14;
}

.booking-success__note--confirmation{
  position:relative;
  padding-left:48px;
}

.booking-success__note--confirmation::before{
  content:"i";
  position:absolute;
  left:16px;
  top:50%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:22px;
  height:22px;
  border:1px solid rgba(217,119,6,.4);
  border-radius:999px;
  color:#d97706;
  font-size:.78rem;
  font-weight:950;
  transform:translateY(-50%);
}

.booking-success__actions{
  position:sticky;
  bottom:-1px;
  z-index:4;
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr);
  gap:12px;
  margin:0 -2px -2px;
  padding:14px 2px 2px;
  background:linear-gradient(180deg,rgba(255,250,251,0),rgba(255,250,251,.96) 32%,rgba(255,250,251,.99) 100%);
  backdrop-filter:blur(10px);
}

.booking-success__button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  min-height:54px;
  width:100%;
  padding:0 18px;
  border-radius:17px;
  font:inherit;
  font-size:.94rem;
  font-weight:900;
  text-decoration:none;
  cursor:pointer;
  transition:border-color .18s ease,background .18s ease,box-shadow .18s ease,filter .18s ease;
}

.booking-success__button:hover{
  transform:none;
}

.booking-success__button--secondary{
  border:1px solid color-mix(in srgb,var(--booking-line-theme) 52%,var(--booking-line));
  background:rgba(255,255,255,.88);
  color:#c81e5b;
  box-shadow:none;
}

.booking-success__button--secondary:hover{
  border-color:#e65691;
  background:#fff;
  box-shadow:0 10px 24px rgba(200,30,91,.08);
}

.booking-success__button--primary{
  border:0;
  background:linear-gradient(135deg,#e84b8a,#c81e5b);
  color:#fff;
  box-shadow:0 16px 34px rgba(200,30,91,.22);
}

.booking-success__button--primary:hover{
  filter:brightness(1.03);
  box-shadow:0 20px 40px rgba(200,30,91,.26);
}

@media (max-width:760px){
  .booking-modal__sheet--success{
    position:absolute;
    inset:0;
    width:100%;
    height:auto;
    max-height:none;
    padding:calc(10px + env(safe-area-inset-top)) 12px calc(10px + env(safe-area-inset-bottom));
    border:0;
    border-radius:0;
    box-shadow:none;
    overflow:hidden;
    display:grid;
    grid-template-rows:auto minmax(0,1fr);
  }

  .booking-modal__sheet--success .booking-modal__header{
    position:relative;
    display:block;
    margin-bottom:8px;
    padding:0 46px 0 0;
    text-align:center;
  }

  .booking-modal__sheet--success .booking-modal__header .booking-modal__close{
    position:absolute;
    top:0;
    right:0;
  }

  .booking-success{
    min-height:0;
    overflow-x:hidden;
    overflow-y:auto;
    gap:12px;
    padding-right:2px;
    align-content:start;
    scrollbar-gutter:auto;
  }

  .booking-success__hero{
    grid-template-columns:58px minmax(0,auto);
    justify-content:center;
    justify-items:center;
    gap:11px;
    text-align:center;
  }

  .booking-success__hero > div:last-child{
    min-width:0;
    text-align:center;
  }

  .booking-success__hero .booking-modal__eyebrow{
    grid-column:1/-1;
    justify-self:center;
  }

  .booking-success__icon{
    width:56px;
    height:56px;
    font-size:1.8rem;
  }

  .booking-success__title{
    font-size:1.2rem;
  }

  .booking-success__lead{
    font-size:.88rem;
  }

  .booking-success__reserved-card{
    padding:14px;
    border-radius:22px;
    gap:13px;
    text-align:center;
  }

  .booking-success__reserved-grid{
    grid-template-columns:1fr;
    gap:13px;
  }

  .booking-success__reserved-side{
    padding-left:0;
    padding-top:12px;
    border-left:0;
    border-top:1px solid rgba(217,111,134,.16);
  }

  .booking-success__detail-row{
    grid-template-columns:42px minmax(0,auto);
    justify-content:center;
    justify-items:center;
    gap:11px;
    text-align:center;
  }

  .booking-success__detail-row > div{
    min-width:0;
    text-align:center;
  }

  .booking-success__detail-icon{
    width:40px;
    height:40px;
    border-radius:14px;
  }

  

  .booking-success__addons-heading{
    justify-content:center;
    flex-wrap:wrap;
    text-align:center;
  }

  .booking-success__addons-empty{
    text-align:center;
  }

  .booking-success__addons-list li{
    grid-template-columns:28px minmax(0,auto);
    justify-content:center;
    text-align:center;
  }

  .booking-success__addon-copy{
    justify-items:center;
    text-align:center;
  }

  .booking-success__addon-meta{
    grid-column:2;
    justify-content:center;
    flex-wrap:wrap;
  }

  .booking-success__total-row{
    display:grid;
    justify-items:center;
    gap:5px;
    text-align:center;
  }

  .booking-success__note{
    text-align:center;
  }

  .booking-success__note--confirmation{
    padding-left:16px;
  }

  .booking-success__note--confirmation::before{
    position:static;
    margin:0 auto 7px;
    transform:none;
  }

  .booking-success__total-row strong{
    font-size:2.15rem;
  }

  .booking-success__actions{
    position:sticky;
    bottom:calc(-10px - env(safe-area-inset-bottom));
    grid-template-columns:1fr;
    gap:7px;
    margin:0;
    padding:9px 0 calc(2px + env(safe-area-inset-bottom));
    background:linear-gradient(180deg,rgba(255,250,251,0),rgba(255,250,251,.96) 22%,rgba(255,250,251,.99) 100%);
  }

  .booking-success__button{
    min-height:50px;
  }

  .booking-success__button--primary{
    order:1;
  }

  .booking-success__button--secondary{
    order:2;
  }
}

.booking-nearest-slot{width:100%;margin:4px 0 0}.booking-nearest-slot[hidden]{display:none}.booking-nearest-slot__inner{position:relative;overflow:hidden;display:grid;gap:6px;padding:14px 16px;border:1px solid color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 32%,var(--booking-line,#ead9d8));border-radius:22px;background:linear-gradient(135deg,color-mix(in srgb,var(--booking-accent,#fff1f2) 70%,#fff),rgba(255,255,255,.94));box-shadow:var(--booking-shadow-card,0 18px 40px rgba(15,23,42,.05))}.booking-nearest-slot__inner::before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:linear-gradient(180deg,var(--booking-line-theme,#f4a9b9),var(--booking-accent-deep,#d96f86));opacity:.9}.booking-nearest-slot__eyebrow{font-size:.72rem;font-weight:900;line-height:1.2;letter-spacing:.075em;text-transform:uppercase;color:var(--booking-primary-2,#6f4852)}.booking-nearest-slot strong{display:block;margin:0;padding-left:2px;color:var(--booking-text,#2d2025);font-size:1rem;font-weight:950;line-height:1.28}.booking-nearest-slot p{margin:0;padding-left:2px;color:var(--booking-muted,#7d6f73);font-size:.86rem;font-weight:700;line-height:1.45}.booking-nearest-slot__actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.booking-nearest-slot__button{display:inline-flex;align-items:center;justify-content:center;min-height:38px;border:0;border-radius:999px;padding:9px 14px;background:linear-gradient(135deg,var(--booking-primary,#2d2025),var(--booking-primary-2,#6f4852));color:#fff;font:inherit;font-size:.86rem;font-weight:900;cursor:pointer;box-shadow:0 12px 24px rgba(45,32,37,.14);transition:transform .18s ease,box-shadow .18s ease}.booking-nearest-slot__button:hover{transform:translateY(-1px);box-shadow:0 16px 30px rgba(45,32,37,.18)}.booking-nearest-slot.is-loading .booking-nearest-slot__inner{background:linear-gradient(135deg,rgba(255,255,255,.92),color-mix(in srgb,var(--booking-accent,#fff1f2) 52%,#fff))}.booking-nearest-slot.is-empty .booking-nearest-slot__inner,.booking-nearest-slot.is-error .booking-nearest-slot__inner{background:rgba(255,255,255,.86);border-style:dashed}.booking-nearest-slot.is-error .booking-nearest-slot__inner::before{background:var(--booking-error,#b91c1c)}@media (max-width:720px){.booking-nearest-slot{margin-top:2px}.booking-nearest-slot__inner{padding:13px 14px 13px 15px;border-radius:19px}.booking-nearest-slot strong{font-size:.94rem}.booking-nearest-slot p{font-size:.81rem}.booking-nearest-slot__button{width:100%;min-height:42px}}


/* Public booking: nearest slot is only an inline hint inside the service modal. */
.booking-nearest-slot--modal,.booking-nearest-slot--modal.booking-nearest-slot--inline{position:relative;bottom:auto;z-index:4;grid-column:1/-1;margin:-2px 0 12px;padding:0}.booking-nearest-slot--modal[hidden],.booking-nearest-slot--modal.booking-nearest-slot--inline[hidden]{display:none}.booking-nearest-slot--modal .booking-nearest-slot__inner,.booking-nearest-slot--modal.booking-nearest-slot--inline .booking-nearest-slot__inner{border-color:color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 54%,var(--booking-line,#ead9d8));background:linear-gradient(135deg,#fff 0%,color-mix(in srgb,var(--booking-accent,#fff1f2) 72%,#fff) 100%);box-shadow:0 12px 28px rgba(45,32,37,.09)}@media (max-width:720px){.booking-nearest-slot--modal,.booking-nearest-slot--modal.booking-nearest-slot--inline{bottom:auto;margin:-3px 0 10px}.booking-nearest-slot--modal .booking-nearest-slot__inner,.booking-nearest-slot--modal.booking-nearest-slot--inline .booking-nearest-slot__inner{padding:12px 13px;border-radius:18px}.booking-nearest-slot--modal p{font-size:.8rem}}

/* Marketing Etap 5B: czytelniejsze użycie punktów lojalnościowych w rezerwacji publicznej */
.booking-loyalty-redeem.is-disabled{opacity:.82;background:linear-gradient(180deg,rgba(255,255,255,.86),rgba(248,250,252,.92));}
.booking-loyalty-redeem.is-disabled .booking-loyalty-redeem__switch{opacity:.62;cursor:not-allowed;}
.booking-loyalty-redeem.is-disabled .booking-loyalty-redeem__switch input{cursor:not-allowed;}
.booking-loyalty-redeem [data-booking-loyalty-message]{display:block;margin-top:6px;font-weight:850;line-height:1.45;}
.booking-loyalty-redeem [data-booking-loyalty-message][data-tone="success"]{color:var(--booking-success,#166534);}
.booking-loyalty-redeem [data-booking-loyalty-message][data-tone="warning"]{color:#9a3412;}
.booking-loyalty-redeem [data-booking-loyalty-message][data-tone="error"]{color:var(--booking-error,#b91c1c);}

/* Stage 8D: account choice before public booking */
.booking-account-prompt{display:grid;gap:12px;margin:0;padding:14px 17px;border:1px solid color-mix(in srgb,var(--booking-line-theme) 23%,var(--booking-line));border-radius:18px;background:rgba(255,255,255,.92);box-shadow:0 7px 24px rgba(45,32,37,.035);}.booking-account-prompt__copy{display:grid;gap:6px;min-width:0}.booking-account-prompt__eyebrow{font-size:.72rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase;color:var(--booking-primary-2)}.booking-account-prompt__copy strong{font-size:1.05rem;line-height:1.3;color:var(--booking-text)}.booking-account-prompt__copy p{margin:0;color:var(--booking-muted);font-size:.9rem;line-height:1.55}.booking-account-prompt__actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.booking-account-prompt__button,.booking-account-prompt__guest{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 16px;border-radius:14px;font-size:.86rem;font-weight:900;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.booking-account-prompt__button:hover,.booking-account-prompt__guest:hover{transform:translateY(-1px)}.booking-account-prompt__button--primary{background:linear-gradient(135deg,var(--booking-primary),var(--booking-primary-2));color:#fff;box-shadow:0 12px 24px rgba(45,32,37,.14)}.booking-account-prompt__button--secondary{border:1px solid color-mix(in srgb,var(--booking-primary-2) 24%,var(--booking-line));background:#fff;color:var(--booking-primary-2)}.booking-account-prompt__button--ghost,.booking-account-prompt__guest{border:1px solid transparent;background:transparent;color:var(--booking-primary-2)}.booking-account-prompt--active{border-color:color-mix(in srgb,#16a34a 25%,var(--booking-line));background:linear-gradient(135deg,#fff,color-mix(in srgb,#dcfce7 42%,#fff))}@media (min-width:760px){.booking-account-prompt{grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:15px 17px;}.booking-account-prompt__actions{justify-content:flex-end}}@media (max-width:759px){.booking-account-prompt{gap:10px;margin:0;padding:13px;border-radius:17px;background:linear-gradient(145deg,#fff,color-mix(in srgb,var(--booking-accent) 15%,#fff));box-shadow:0 6px 20px rgba(45,32,37,.04);}.booking-account-prompt__copy{justify-items:center;gap:7px;text-align:center}.booking-account-prompt__eyebrow{display:inline-flex;align-items:center;justify-content:center;min-height:26px;padding:4px 9px;border-radius:999px;background:color-mix(in srgb,var(--booking-accent) 72%,#fff);color:var(--booking-accent-deep);font-size:.66rem;letter-spacing:.08em}.booking-account-prompt__copy strong{font-size:1.08rem;line-height:1.25}.booking-account-prompt__copy p{max-width:32rem;font-size:.84rem;line-height:1.5}.booking-account-prompt__actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;width:100%}.booking-account-prompt__button,.booking-account-prompt__guest{width:100%;min-height:46px;box-sizing:border-box;border-radius:15px}.booking-account-prompt__button--primary{box-shadow:0 12px 24px color-mix(in srgb,var(--booking-primary-2) 18%,transparent)}.booking-account-prompt__button--secondary{background:rgba(255,255,255,.88)}.booking-account-prompt__guest,.booking-account-prompt__button--ghost{grid-column:1/-1;min-height:40px;border:1px solid color-mix(in srgb,var(--booking-line-theme) 20%,transparent);background:rgba(255,255,255,.48);font-size:.82rem}.booking-account-prompt__guest:hover,.booking-account-prompt__button--ghost:hover{background:rgba(255,255,255,.82);border-color:color-mix(in srgb,var(--booking-accent-deep) 26%,var(--booking-line))}}


/* Intelligent slots — Stage 4: public recommendation card */
.booking-nearest-slot__heading{display:grid;gap:4px;padding:1px 2px 2px}.booking-nearest-slot__heading .booking-nearest-slot__kicker{font-size:.72rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase;color:var(--booking-primary-2,#6f4852)}.booking-nearest-slot__heading p{padding-left:0;font-size:.82rem}.booking-nearest-slot__options{display:grid;grid-template-columns:minmax(0,1fr);gap:9px}.booking-nearest-slot__option{position:relative;display:grid;gap:7px;padding:12px 13px;border:1px solid color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 34%,var(--booking-line,#ead9d8));border-radius:17px;background:rgba(255,255,255,.78)}.booking-nearest-slot__option.is-primary{border-color:color-mix(in srgb,var(--booking-line-theme,#f4a9b9) 64%,var(--booking-line,#ead9d8));background:linear-gradient(135deg,#fff,color-mix(in srgb,var(--booking-accent,#fff1f2) 64%,#fff));box-shadow:0 10px 24px rgba(45,32,37,.07)}.booking-nearest-slot__option.is-nearest:not(.is-primary){border-style:dashed}.booking-nearest-slot__option-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.booking-nearest-slot__badges{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:5px}.booking-nearest-slot__badge{display:inline-flex;align-items:center;min-height:22px;padding:4px 8px;border-radius:999px;background:color-mix(in srgb,var(--booking-accent,#fff1f2) 78%,#fff);color:var(--booking-primary-2,#6f4852);font-size:.66rem;font-weight:950;line-height:1;white-space:nowrap}.booking-nearest-slot__badge--nearest{background:color-mix(in srgb,var(--booking-primary,#2d2025) 9%,#fff);color:var(--booking-primary,#2d2025)}.booking-nearest-slot__option .booking-nearest-slot__actions{margin-top:1px}.booking-nearest-slot__button--secondary{background:#fff;color:var(--booking-primary,#2d2025);border:1px solid color-mix(in srgb,var(--booking-primary,#2d2025) 18%,transparent);box-shadow:none}.booking-nearest-slot__button--secondary:hover{box-shadow:0 8px 18px rgba(45,32,37,.08)}@media (min-width:760px){.booking-nearest-slot__options:has(.booking-nearest-slot__option:nth-child(2)){grid-template-columns:repeat(2,minmax(0,1fr))}.booking-nearest-slot__option{min-height:100%}.booking-nearest-slot__option .booking-nearest-slot__actions{margin-top:auto}.booking-nearest-slot__button{width:auto}}@media (max-width:720px){.booking-nearest-slot__heading p{font-size:.79rem}.booking-nearest-slot__option{padding:11px 12px;border-radius:15px}.booking-nearest-slot__option-head{align-items:flex-start}.booking-nearest-slot__badges{max-width:45%}.booking-nearest-slot__badge{font-size:.62rem}}

/* Premium account-benefit bridge — booking page */
.booking-account-prompt--benefit-entry{border-color:color-mix(in srgb,var(--booking-accent-deep) 34%,var(--booking-line));background:linear-gradient(135deg,#fff,color-mix(in srgb,var(--booking-accent) 72%,#fff));box-shadow:0 18px 42px rgba(217,111,134,.10)}
.booking-account-prompt--verification{border-color:#f3d38a;background:linear-gradient(135deg,#fff,#fffaf0)}
.booking-account-prompt__benefits{display:flex;flex-wrap:wrap;gap:7px;margin-top:5px}.booking-account-prompt__benefits span{display:inline-flex;align-items:center;gap:4px;min-height:30px;padding:0 10px;border:1px solid rgba(111,72,82,.12);border-radius:999px;background:rgba(255,255,255,.78);font-size:.76rem;font-weight:750;color:rgba(45,32,37,.68)}.booking-account-prompt__benefits b{color:var(--booking-primary-2);font-weight:950}.booking-account-prompt__verify-form{margin:0;display:contents}.booking-account-prompt__feedback{margin-top:4px;padding:8px 10px;border-radius:12px;font-weight:800}.booking-account-prompt__feedback--success{background:#ecfdf3;color:#166534}.booking-account-prompt__feedback--error{background:#fef2f2;color:#b91c1c}
.booking-benefit-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 0 10px}.booking-benefit-picker__item{display:grid;gap:3px;min-width:0;padding:11px 12px;border:1px solid color-mix(in srgb,var(--booking-line-theme) 28%,var(--booking-line));border-radius:15px;background:linear-gradient(135deg,#fff,color-mix(in srgb,var(--booking-accent) 48%,#fff));text-align:left;color:var(--booking-text);cursor:pointer;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.booking-benefit-picker__item:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--booking-accent-deep) 40%,var(--booking-line));box-shadow:0 10px 22px rgba(45,32,37,.07)}.booking-benefit-picker__item span{font-size:.67rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:var(--booking-primary-2)}.booking-benefit-picker__item strong{overflow:hidden;text-overflow:ellipsis;font-size:.88rem;font-weight:950;white-space:nowrap}.booking-benefit-picker__item small{font-size:.73rem;font-weight:750;color:var(--booking-muted)}.booking-benefit-picker__item--coupon{background:linear-gradient(135deg,#fff,#fff9f4)}.booking-benefit-picker__hint{margin:0 0 10px;font-size:.74rem;line-height:1.45;color:var(--booking-muted)}
@media (max-width:720px){.booking-benefit-picker{grid-template-columns:1fr}.booking-account-prompt__benefits{gap:6px}.booking-account-prompt__benefits span{font-size:.73rem}}

@media (max-width:720px){#booking-summary-intake-modal{overflow-x:hidden}#booking-summary-intake-modal .booking-modal__sheet--intake,#booking-summary-intake-modal .booking-summary-submodal__header,#booking-summary-intake-modal .booking-summary-submodal__body,#booking-summary-intake-modal .booking-summary-submodal__content,#booking-summary-intake-modal .booking-intake-form,#booking-summary-intake-modal .booking-intake-form__panels,#booking-summary-intake-modal .booking-intake-form__panel,#booking-summary-intake-modal .booking-intake-question,#booking-summary-intake-modal .booking-summary-submodal__actions{min-width:0;max-width:100%;box-sizing:border-box}#booking-summary-intake-modal .booking-modal__sheet--intake{overflow-x:hidden}#booking-summary-intake-modal .booking-summary-submodal__header{padding-left:14px;padding-right:14px}#booking-summary-intake-modal .booking-summary-submodal__body{display:block;overflow-x:hidden;overflow-y:auto;padding:10px 14px 18px;scrollbar-gutter:auto;-webkit-overflow-scrolling:touch}#booking-summary-intake-modal .booking-summary-submodal__content{overflow-x:hidden}#booking-summary-intake-modal .booking-intake-form__panels{width:100%;overflow-x:hidden}#booking-summary-intake-modal .booking-intake-form__panel{width:100%;overflow-x:hidden}#booking-summary-intake-modal .booking-intake-form__intro,#booking-summary-intake-modal .booking-intake-form__intro strong,#booking-summary-intake-modal .booking-intake-form__intro p,#booking-summary-intake-modal .booking-intake-question label,#booking-summary-intake-modal .booking-intake-question small{max-width:100%;overflow-wrap:anywhere;word-break:break-word}#booking-summary-intake-modal .booking-intake-question{width:100%;overflow:hidden}#booking-summary-intake-modal .booking-intake-question input,#booking-summary-intake-modal .booking-intake-question select,#booking-summary-intake-modal .booking-intake-question textarea{display:block;max-width:100%;width:100%}#booking-summary-intake-modal .booking-summary-submodal__actions{margin:0;padding:11px 14px calc(14px + env(safe-area-inset-bottom))}}


@media (max-width:760px){
  .booking-native-select{font-size:16px}
  .booking-hero__workspace-switch,
  .booking-company-card__row--link{min-height:44px;align-items:center}
}

/* Public voucher purchase: mobile-first, independent from the reservation flow. */
.booking-voucher-entry{position:relative;isolation:isolate;display:grid;grid-template-columns:110px minmax(0,1fr);grid-template-rows:auto auto;align-content:center;align-items:center;justify-items:start;column-gap:12px;row-gap:10px;min-width:0;min-height:190px;margin:0;padding:var(--booking-card-inset,18px);border:1px solid color-mix(in srgb,var(--booking-line-theme) 34%,var(--booking-line));border-radius:24px;background:radial-gradient(ellipse 100% 90% at -14% 116%,color-mix(in srgb,var(--booking-accent-strong) 32%,#fff),transparent 70%),linear-gradient(135deg,#fff,color-mix(in srgb,var(--booking-accent) 29%,#fff));box-shadow:0 15px 37px rgba(75,42,56,.075);overflow:hidden}
.booking-voucher-entry__copy{display:grid;gap:5px;min-width:0}
.booking-voucher-entry__copy strong{font-size:clamp(1.42rem,2vw,1.72rem);line-height:1.18;color:var(--booking-text)}
.booking-voucher-entry__copy span{color:var(--booking-muted);font-size:.89rem;line-height:1.42}
.booking-voucher-entry__button{position:relative;z-index:1;min-height:42px;padding:9px 21px;border:0;border-radius:999px;background:linear-gradient(107deg,var(--booking-primary-2),color-mix(in srgb,var(--booking-accent-deep) 94%,var(--booking-primary-2)));box-shadow:0 10px 20px color-mix(in srgb,var(--booking-accent-deep) 17%,transparent);color:#fff;font-size:.83rem;font-weight:850;cursor:pointer;justify-self:start}
.booking-voucher-entry__button:focus-visible,.booking-voucher-dialog button:focus-visible{outline:3px solid var(--booking-accent-deep);outline-offset:3px}
.booking-voucher-dialog{box-sizing:border-box;width:min(calc(100% - 20px),530px);max-width:530px;max-height:calc(100dvh - 24px);margin:auto;padding:0;border:1px solid var(--booking-line);border-radius:24px;background:var(--booking-surface);box-shadow:0 28px 90px rgba(45,32,37,.25);color:var(--booking-text)}
.booking-voucher-dialog::backdrop{background:rgba(21,16,20,.62);backdrop-filter:blur(5px)}
.booking-voucher-dialog__form{display:grid;gap:14px;max-height:calc(100dvh - 26px);overflow-y:auto;overscroll-behavior:contain;padding:18px 16px calc(18px + env(safe-area-inset-bottom));box-sizing:border-box}
.booking-voucher-dialog__header{display:flex;align-items:center;justify-content:space-between;gap:14px}
.booking-voucher-dialog__header>div{display:grid;gap:4px}
.booking-voucher-dialog__header span{font-size:.72rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase;color:var(--booking-primary-2)}
.booking-voucher-dialog__header h2{margin:0;font-size:1.55rem;line-height:1.13;color:var(--booking-text)}
.booking-voucher-dialog__close{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;padding:0;border:1px solid var(--booking-line);border-radius:14px;background:#fff;color:var(--booking-text);font-size:1.35rem;cursor:pointer}
.booking-voucher-dialog__description{margin:0;color:var(--booking-muted);font-size:.85rem;line-height:1.55}
.booking-voucher-dialog__error{margin:0;padding:12px;border-radius:12px;background:var(--booking-error-bg);color:var(--booking-error);font-weight:750;font-size:.85rem;line-height:1.4}
.booking-voucher-dialog__fields,.booking-voucher-dialog__gift-fields{display:grid;gap:12px}
.booking-voucher-dialog__gift-fields[hidden]{display:none}
.booking-voucher-dialog__fields label{display:grid;gap:6px;color:var(--booking-text);font-size:.82rem;font-weight:820}
.booking-voucher-dialog__fields :is(input,select,textarea){box-sizing:border-box;display:block;width:100%;min-width:0;min-height:46px;margin:0;padding:11px 13px;border:1px solid var(--booking-line-strong);border-radius:13px;background:#fff;color:var(--booking-text);font-family:var(--booking-font-body);font-size:16px;line-height:1.35;font-weight:600}
.booking-voucher-dialog__fields textarea{min-height:76px;resize:vertical}
.booking-voucher-dialog__fields :is(input,select,textarea):focus{outline:2px solid var(--booking-accent-deep);outline-offset:1px}
.booking-voucher-dialog__actions{display:grid;grid-template-columns:1fr 1.3fr;gap:9px;position:sticky;bottom:-1px;padding-top:10px;background:var(--booking-surface)}
.booking-voucher-dialog__button{min-height:46px;padding:10px 12px;border-radius:14px;font-size:.83rem;font-weight:850;cursor:pointer}
.booking-voucher-dialog__button--primary{border:0;background:linear-gradient(135deg,var(--booking-primary),var(--booking-primary-2));color:#fff}
.booking-voucher-dialog__button--secondary{border:1px solid var(--booking-line-strong);background:#fff;color:var(--booking-primary)}
.booking-voucher-dialog__button:disabled{opacity:.65;cursor:wait}
.booking-voucher-dialog__honeypot{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media (min-width:700px){.booking-voucher-entry{grid-template-columns:110px minmax(0,1fr);min-height:190px;align-items:center;padding:var(--booking-card-inset,18px)}.booking-voucher-dialog__form{padding:24px;gap:17px}.booking-voucher-dialog__fields{grid-template-columns:1fr 1fr}.booking-voucher-dialog__fields>label:first-child,.booking-voucher-dialog__fields>label:last-child,.booking-voucher-dialog__gift-fields{grid-column:1/-1}.booking-voucher-dialog__gift-fields{grid-template-columns:1fr 1fr}}

/* Public booking dark theme — canonical modal and checkout surfaces.
   Scoped to the selected salon appearance; light mode and salon branding remain untouched. */
.public-booking-shell[data-public-booking-mode="dark"] {
  --booking-dialog-bg:#202633;
  --booking-dialog-panel:#2b3445;
  --booking-dialog-panel-hover:#374357;
  --booking-dialog-border:#586478;
  --booking-dialog-text:#f6f3f8;
  --booking-dialog-muted:#d0cbd8;
  --booking-dialog-highlight:#f1b3d3;
}
.public-booking-shell[data-public-booking-mode="dark"] :is(
  .booking-modal__sheet,.booking-step-modal,.booking-option-picker__sheet,
  .booking-service-modal,.booking-voucher-dialog,.booking-dialog,
  .booking-summary-submodal__content,.booking-service-details
) {
  color-scheme:dark;
  background:var(--booking-dialog-bg);
  border-color:var(--booking-dialog-border);
  color:var(--booking-dialog-text);
}
.public-booking-shell[data-public-booking-mode="dark"] #booking-service-modal .booking-modal__sheet {
  background:#202633;
}
.public-booking-shell[data-public-booking-mode="dark"] :is(
  .booking-modal__header,.booking-modal__actions,.booking-step-modal__header,
  .booking-step-modal__actions,.booking-summary-submodal__header,
  .booking-summary-submodal__actions,.booking-option-picker__header,
  .booking-option-picker__footer,.booking-voucher-dialog__header,
  .booking-voucher-dialog__actions
) {
  background:#202633;
  background-image:none;
  border-color:var(--booking-dialog-border);
  color:var(--booking-dialog-text);
}
.public-booking-shell[data-public-booking-mode="dark"] :is(
  #booking-contact-modal .booking-step-modal__header,
  #booking-contact-modal .booking-modal__actions,
  #booking-summary-visit-details-modal .booking-step-modal__header,
  #booking-summary-visit-details-modal .booking-modal__actions,
  #booking-summary-intake-modal .booking-modal__header,
  #booking-summary-intake-modal .booking-modal__actions
) {
  background:#202633;
  border-color:var(--booking-dialog-border);
}
.public-booking-shell[data-public-booking-mode="dark"] :is(
  .booking-modal__section,.booking-step-modal__section,.booking-step-modal__scroll,
  .booking-summary-submodal__body,.booking-summary-submodal__content,
  .booking-option-picker__list,.booking-service-modal__scroll
) {
  color:var(--booking-dialog-text);
  border-color:var(--booking-dialog-border);
}
.public-booking-shell[data-public-booking-mode="dark"] :is(
  .booking-service-card,.booking-service-selection,.booking-service-details__block,
  .booking-service-details__placeholder-mark,.booking-option-choice,
  .booking-option-picker__option,.booking-step-modal__icon,
  .booking-summary-card,.booking-summary-action,
  .booking-summary-visit-details__section,.booking-summary-submodal__legal,
  .booking-intake-question,.booking-marketing-code,.booking-loyalty-redeem__switch,
  .booking-consent,.booking-legal-box,.booking-waiting-list-cta,
  .booking-waiting-list-preferred,.booking-waiting-date-mode__option,
  .booking-summary-status,.booking-payment-gate__radio
) {
  background:var(--booking-dialog-panel);
  background-image:none;
  border-color:var(--booking-dialog-border);
  color:var(--booking-dialog-text);
}
.public-booking-shell[data-public-booking-mode="dark"] :is(
  .booking-service-card__thumb,.booking-service-selection__thumb,
  .booking-service-details__hero,.booking-summary-card__icon,
  .booking-summary-action__icon,.booking-summary-submodal__icon,
  .booking-date-modal__icon,.booking-step-modal__icon
) {
  background-color:#35374c;
  border-color:#636079;
  color:var(--booking-dialog-highlight);
}
.public-booking-shell[data-public-booking-mode="dark"] :is(
  .booking-modal__close,.booking-service-filter,
  .booking-service-card__primary-action,.booking-service-card__details-action,
  .booking-summary__edit,.booking-summary-submodal__edit,
  .booking-summary-readiness__jump,
  .booking-voucher-dialog__close,.booking-voucher-dialog__button--secondary,
  .booking-modal .booking-button-secondary,
  .booking-option-picker__sheet .booking-button-secondary
) {
  background:#354054;
  background-image:none;
  border-color:#667188;
  color:#f6f3f8;
  box-shadow:0 3px 12px rgba(0,0,0,.12);
}
.public-booking-shell[data-public-booking-mode="dark"] :is(
  .booking-modal__close,.booking-service-filter,
  .booking-service-card__primary-action,.booking-service-card__details-action,
  .booking-summary__edit,.booking-summary-submodal__edit,
  .booking-summary-readiness__jump,.booking-voucher-dialog__close,
  .booking-voucher-dialog__button--secondary,
  .booking-modal .booking-button-secondary
):is(:hover,:focus-visible) {
  background:#465269;
  border-color:#b78fac;
  color:#fff;
}
.public-booking-shell[data-public-booking-mode="dark"] .booking-step-modal--hours .booking-slot-chip {
  background:#2b3445;
  border-color:var(--booking-dialog-border);
  color:var(--booking-dialog-text);
}
.public-booking-shell[data-public-booking-mode="dark"] .booking-step-modal--hours .booking-slot-chip::before {
  background:#2b3445;
  border-color:#8d8298;
  box-shadow:inset 0 0 0 7px #2b3445;
}
.public-booking-shell[data-public-booking-mode="dark"] .booking-step-modal--hours .booking-slot-chip:hover {
  background:#374357;
  border-color:var(--booking-dialog-highlight);
}
.public-booking-shell[data-public-booking-mode="dark"] :is(
  .booking-modal__sheet input:not([type="checkbox"]):not([type="radio"]),
  .booking-modal__sheet textarea,.booking-modal__sheet select,
  .booking-option-picker__sheet input:not([type="checkbox"]):not([type="radio"]),
  .booking-option-picker__sheet textarea,.booking-option-picker__sheet select,
  .booking-voucher-dialog input:not([type="checkbox"]):not([type="radio"]),
  .booking-voucher-dialog textarea,.booking-voucher-dialog select,
  .booking-waiting-list-form input:not([type="checkbox"]):not([type="radio"]),
  .booking-waiting-list-form textarea,.booking-waiting-list-form select
) {
  color-scheme:dark;
  background:#2a3343;
  border-color:#637085;
  color:#f6f3f8;
  caret-color:#f1b3d3;
}
.public-booking-shell[data-public-booking-mode="dark"] :is(
  .booking-modal__sheet input,.booking-modal__sheet textarea,
  .booking-option-picker__sheet input,.booking-option-picker__sheet textarea,
  .booking-voucher-dialog input,.booking-voucher-dialog textarea
)::placeholder { color:#bdbaca;opacity:1; }
.public-booking-shell[data-public-booking-mode="dark"] :is(
  .booking-modal__sheet h2,.booking-modal__sheet h3,.booking-modal__sheet h4,
  .booking-step-modal__section-head h4,.booking-summary-card strong,
  .booking-summary-action strong,.booking-summary-submodal__content strong,
  .booking-option-picker__sheet strong,.booking-service-details__block strong
) { color:#faf5fa; }
.public-booking-shell[data-public-booking-mode="dark"] :is(
  .booking-modal__lead,.booking-step-modal__section-head p,
  .booking-modal__sheet small,.booking-modal__sheet .booking-field__hint,
  .booking-summary-action small,.booking-summary-card small,
  .booking-option-picker__footer small,.booking-voucher-dialog__description
) { color:var(--booking-dialog-muted); }
.public-booking-shell[data-public-booking-mode="dark"] :is(
  .booking-summary-readiness,.booking-waiting-toast--info
) {
  background:#3c3441;
  border-color:#856c83;
  color:#ffe0ef;
}
.public-booking-shell[data-public-booking-mode="dark"] .booking-summary-readiness__icon {
  background:#56414a;
  color:#f6c3a8;
}
.public-booking-shell[data-public-booking-mode="dark"] :is(
  .booking-summary-status,.booking-summary-readiness__jump
) { border-color:#77677b; }
.public-booking-shell[data-public-booking-mode="dark"] .booking-summary-status {
  background:#354054;
  color:#f1d9e6;
}
.public-booking-shell[data-public-booking-mode="dark"] :is(
  .booking-waiting-date-mode__option.is-active,
  .booking-service-filter[aria-pressed="true"],
  .booking-service-filter.is-active
) {
  background:#55405a;
  border-color:#b98fac;
  color:#fff2f8;
}
.public-booking-shell[data-public-booking-mode="dark"] :is(
  .booking-service-card,.booking-summary-action,.booking-option-choice,
  .booking-waiting-date-mode__option,.booking-summary__edit
):focus-visible {
  outline:2px solid #f1b3d3;
  outline-offset:2px;
}

/* Booking flow specifics with legacy ID-scoped styles. */
.public-booking-shell[data-public-booking-mode="dark"] :is(
  #booking-slots-modal .booking-date-modal__actions,
  #booking-hours-modal .booking-step-modal__actions,
  #booking-waiting-list-modal .booking-step-modal__actions,
  #booking-summary-modal .booking-modal__actions,
  #booking-summary-visit-details-modal .booking-modal__actions,
  #booking-contact-modal .booking-modal__actions
) {
  background:#202633;
  border-color:#586478;
  color:#f6f3f8;
}
.public-booking-shell[data-public-booking-mode="dark"] :is(
  #booking-summary-benefits-modal,
  #booking-summary-notes-modal,
  #booking-summary-rules-modal,
  #booking-summary-preparation-modal,
  #booking-summary-intake-modal,
  #booking-summary-legal-modal
) :is(.booking-summary-submodal__header,.booking-summary-submodal__actions) {
  background:#202633;
  background-image:none;
  border-color:#586478;
  color:#f6f3f8;
}
.public-booking-shell[data-public-booking-mode="dark"] :is(
  #booking-slots-modal .booking-date-modal__icon,
  #booking-slots-modal .booking-date-modal__hint,
  #booking-hours-modal .booking-hours-waiting__icon,
  .booking-summary-card__icon,.booking-summary-action__icon,
  .booking-summary-submodal__icon
) {
  background:#35374c;
  background-image:none;
  border-color:#636079;
  color:#f1b3d3;
}
.public-booking-shell[data-public-booking-mode="dark"] :is(
  #booking-options-modal .booking-button-secondary--skip,
  #booking-specialist-modal .booking-button-secondary--edit,
  #booking-slots-modal .booking-button-secondary--back,
  #booking-hours-modal .booking-button-secondary--waiting,
  #booking-waiting-list-modal .booking-button-secondary--back,
  #booking-summary-modal .booking-button-secondary--back,
  #booking-service-details-modal .booking-button-secondary,
  #booking-summary-benefits-modal .booking-button-secondary
) {
  background:#354054;
  background-image:none;
  border:1px solid #667188;
  color:#f6f3f8;
}
.public-booking-shell[data-public-booking-mode="dark"] #booking-waiting-list-modal :is(
  .booking-waiting-list-preferred,.booking-waiting-date-mode__option,
  .booking-waiting-list-cta__check,.booking-waiting-list-grid > div
) {
  background:#2b3445;
  background-image:none;
  border-color:#586478;
  color:#f6f3f8;
}
.public-booking-shell[data-public-booking-mode="dark"] #booking-waiting-list-modal .booking-waiting-date-mode__option:is(.is-active,:has(input:checked)) {
  background:#55405a;
  border-color:#b98fac;
  color:#fff2f8;
}
.public-booking-shell[data-public-booking-mode="dark"] #booking-waiting-list-modal .booking-waiting-list-form :is(
  input:not([type="checkbox"]):not([type="radio"]),
  textarea,select
) {
  background-color:#2a3343;
  border-color:#637085;
  color:#f6f3f8;
  color-scheme:dark;
}
.public-booking-shell[data-public-booking-mode="dark"] #booking-waiting-list-modal .booking-waiting-list-form :is(input,textarea)::placeholder {
  color:#bdbaca;
  opacity:1;
}
.public-booking-shell[data-public-booking-mode="dark"] :is(
  .booking-option-card,.booking-option-card__check,
  .booking-option-choice__button,.booking-service-preparation__block,
  .booking-service-details__thumb-button
) {
  background:#2b3445;
  background-image:none;
  border-color:#586478;
  color:#f6f3f8;
}
/* Service preparation: legacy light-only title and paragraph colors must not leak into dark cards. */
.public-booking-shell[data-public-booking-mode="dark"] .booking-service-preparation__block strong {
  color:var(--booking-text,#f6f3f8);
}
.public-booking-shell[data-public-booking-mode="dark"] .booking-service-preparation__block p {
  color:var(--booking-muted,#c6c3ce);
}
.public-booking-shell[data-public-booking-mode="dark"] .booking-service-preparation__block--warning {
  background:#3e3440;
  border-color:#9a7a65;
}
.public-booking-shell[data-public-booking-mode="dark"] :is(
  .booking-option-card.is-selected,.booking-option-card[aria-pressed="true"],
  .booking-option-choice__button.is-selected,
  .booking-service-details__thumb-button.is-active
) {
  background:#55405a;
  border-color:#b98fac;
}
.public-booking-shell[data-public-booking-mode="dark"] :is(
  .booking-service-card__thumb,.booking-service-selection__thumb,
  .booking-service-details__hero
) {
  background:#35374c;
  background-image:none;
  border-color:#636079;
}
.public-booking-shell[data-public-booking-mode="dark"] .booking-service-card__thumb img {
  background:#35374c;
}
.public-booking-shell[data-public-booking-mode="dark"] .booking-service-card__thumb:not(.has-image)::before {
  background:radial-gradient(circle,rgba(163,107,148,.16),transparent 66%);
}
.public-booking-shell[data-public-booking-mode="dark"] .booking-payment-gate__hint {
  background:#2b3445;
  background-image:none;
  border-color:#586478;
  color:#d0cbd8;
}

.public-booking-shell[data-public-booking-mode="dark"] #booking-waiting-list-modal .booking-waiting-list-summary > div {
  background:#2b3445;
  border-color:#586478;
  color:#f6f3f8;
}
.public-booking-shell[data-public-booking-mode="dark"] .booking-service-details__hero img {
  background:#35374c;
  background-image:none;
}

/* Dynamic fragments: specialists, availability dates, and optional salon packages. */
.public-booking-shell[data-public-booking-mode="dark"] :is(
  .booking-specialist-card,.booking-day-chip,
  .booking-package-toolbar,.booking-package-card,
  .booking-package-card__side,.booking-package-card__services li,
  .booking-package-empty
) {
  background:#2b3445;
  background-image:none;
  border-color:#586478;
  color:#f6f3f8;
}
.public-booking-shell[data-public-booking-mode="dark"] :is(
  .booking-specialist-card.is-active,.booking-specialist-card[aria-pressed="true"],
  .booking-day-chip.is-active,.booking-day-chip[aria-pressed="true"],
  .booking-package-card.is-active
) {
  background:#55405a;
  background-image:none;
  border-color:#b98fac;
}
.public-booking-shell[data-public-booking-mode="dark"] :is(
  .booking-specialist-card:hover,.booking-day-chip:hover,.booking-package-card:hover,
  .booking-package-card:focus-within
) {
  background:#374357;
  border-color:#b98fac;
}
.public-booking-shell[data-public-booking-mode="dark"] .booking-day-chip__calendar {
  background:#35374c;
  background-image:none;
  border-color:#75647b;
  color:#f1b3d3;
}
.public-booking-shell[data-public-booking-mode="dark"] .booking-day-chip__status {
  color:#92ebae;
}
.public-booking-shell[data-public-booking-mode="dark"] :is(
  .booking-package-search span,.booking-package-card p,
  .booking-package-card__meta dt,.booking-package-card__regular-price,
  .booking-package-count,.booking-package-card__services li
) {
  color:#d0cbd8;
}
.public-booking-shell[data-public-booking-mode="dark"] .booking-package-search input {
  color-scheme:dark;
  background:#2a3343;
  border-color:#637085;
  color:#f6f3f8;
}
.public-booking-shell[data-public-booking-mode="dark"] .booking-package-search input::placeholder {
  color:#bdbaca;
  opacity:1;
}
.public-booking-shell[data-public-booking-mode="dark"] .booking-package-card__top span {
  background:#534257;
  color:#f4d8e6;
  border-color:#846886;
}
.public-booking-shell[data-public-booking-mode="dark"] .booking-package-card__button {
  background:linear-gradient(135deg,#8b405f,#a6537a);
  border:1px solid #bf7fa3;
  color:#ffffff;
}
.public-booking-shell[data-public-booking-mode="dark"] .booking-package-card__button:hover {
  background:linear-gradient(135deg,#984c72,#b66187);
}

/* Navigation and legal links around the booking flow. */
.public-booking-shell[data-public-booking-mode="dark"] :is(
  .booking-legal-public-links__grid a,
  .booking-hero__workspace-switch
) {
  background:#343c4b;
  border-color:#647085;
  color:#f6f3f8;
}
.public-booking-shell[data-public-booking-mode="dark"] :is(
  .booking-legal-public-links__grid a,
  .booking-hero__workspace-switch
):is(:hover,:focus-visible) {
  background:#465269;
  border-color:#b98fac;
  color:#ffffff;
}

/* Public booking: responsive dialog mechanics for Safari/iOS and small screens. */
@media (max-width:767px) {
  .public-booking-shell .booking-modal.is-open > .booking-modal__sheet {
    position:absolute;
    inset:0;
    box-sizing:border-box;
    width:100%;
    min-width:0;
    max-width:100%;
    height:100dvh;
    min-height:100dvh;
    max-height:100dvh;
    margin:0;
    border:0;
    border-radius:0;
    box-shadow:none;
    transform:none;
    transition:none;
    animation:none;
    scrollbar-gutter:auto;
  }

  .public-booking-shell .booking-modal .booking-modal__header {
    position:relative;
    box-sizing:border-box;
    min-width:0;
    padding-top:calc(18px + env(safe-area-inset-top, 0px));
    padding-right:72px;
  }

  .public-booking-shell .booking-modal .booking-modal__header > .booking-modal__close {
    position:absolute;
    top:calc(18px + env(safe-area-inset-top, 0px));
    right:14px;
    left:auto;
    margin:0;
    transform:none;
    flex:0 0 44px;
  }

  .public-booking-shell .booking-modal :is(
    .booking-modal__actions,.booking-step-modal__actions,.booking-summary-submodal__actions
  ) {
    box-sizing:border-box;
    max-width:100%;
    padding-bottom:calc(12px + env(safe-area-inset-bottom, 0px));
  }

  .public-booking-shell #booking-service-details-modal > .booking-modal__sheet.booking-service-details {
    display:flex;
    flex-direction:column;
    overflow:hidden;
    padding-bottom:0;
  }

  .public-booking-shell #booking-service-details-modal .booking-service-details__panels {
    display:block;
    flex:1 1 auto;
    min-height:0;
    overflow-x:hidden;
    overflow-y:auto;
    overscroll-behavior-y:contain;
    scrollbar-gutter:auto;
  }

  .public-booking-shell #booking-service-details-modal .booking-service-details__panel:not([hidden]) {
    display:flex;
    flex-direction:column;
    min-height:100%;
  }

  .public-booking-shell #booking-service-details-modal .booking-service-details__actions {
    position:sticky;
    bottom:0;
    z-index:3;
    display:grid;
    grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
    gap:8px;
    align-items:stretch;
    margin:auto -2px -2px;
    padding:12px 2px calc(12px + env(safe-area-inset-bottom, 0px));
    flex-direction:row;
  }

  .public-booking-shell #booking-service-details-modal .booking-service-details__actions > * {
    box-sizing:border-box;
    flex:none;
    width:100%;
    min-width:0;
    min-height:50px;
    height:auto;
    padding:9px 8px;
    border-radius:15px;
    font-size:.82rem;
    line-height:1.2;
    white-space:normal;
  }

  .public-booking-shell #booking-success-modal .booking-modal__sheet--success {
    padding:calc(14px + env(safe-area-inset-top, 0px)) 14px 0;
  }

  .public-booking-shell #booking-success-modal .booking-modal__header {
    padding:0 60px 0 0;
  }

  .public-booking-shell #booking-success-modal .booking-modal__header > .booking-modal__close {
    top:0;
    right:0;
  }

  .public-booking-shell #booking-success-modal .booking-success {
    flex:1 1 auto;
    min-height:0;
    overflow-x:hidden;
    overflow-y:auto;
    scrollbar-gutter:auto;
    padding-right:0;
    padding-bottom:env(safe-area-inset-bottom, 0px);
  }

  .public-booking-shell #booking-success-modal .booking-success__actions {
    bottom:0;
    margin:0;
    padding:12px 0 calc(14px + env(safe-area-inset-bottom, 0px));
  }
}

/* Public booking dark mode: iOS autofill, selected states and submodal dividers. */
.public-booking-shell[data-public-booking-mode="dark"] :is(
  .booking-modal__sheet input:not([type="checkbox"]):not([type="radio"]),
  .booking-modal__sheet select,
  .booking-modal__sheet textarea,
  .booking-voucher-dialog input:not([type="checkbox"]):not([type="radio"])
):is(:-webkit-autofill,:-webkit-autofill:hover,:-webkit-autofill:focus) {
  -webkit-text-fill-color:#f6f3f8;
  caret-color:#f1b3d3;
  -webkit-box-shadow:0 0 0 1000px #2a3343 inset;
  box-shadow:0 0 0 1000px #2a3343 inset;
  border-color:#637085;
  transition:background-color 100000s ease-out 0s;
}

.public-booking-shell[data-public-booking-mode="dark"] :is(
  .booking-modal__header,.booking-step-modal__header,.booking-summary-submodal__header,
  .booking-date-modal__header,.booking-modal__actions,.booking-step-modal__actions,
  .booking-summary-submodal__actions,.booking-date-modal__actions,
  .booking-service-details__actions
) {
  border-color:#465164;
  box-shadow:none;
}

.public-booking-shell[data-public-booking-mode="dark"] #booking-service-details-modal .booking-service-details__actions {
  background:#202633;
  background-image:none;
  border-top:1px solid #465164;
}

.public-booking-shell[data-public-booking-mode="dark"] :is(
  .booking-summary-card__head > span,.booking-summary-card__price > span,
  .booking-summary-card__meta,.booking-summary__client-contact,
  .booking-summary-card__head small,.booking-summary-card__details,
  .booking-summary-card__main > small,.booking-summary-card__main > span
) {
  color:#d0cbd8;
}

.public-booking-shell[data-public-booking-mode="dark"] .booking-step-modal--hours .booking-slot-chip {
  border:1px solid #5c6980;
  background:#2b3445;
  color:#f6f3f8;
}

.public-booking-shell[data-public-booking-mode="dark"] .booking-step-modal--hours .booking-slot-chip::before {
  width:26px;
  height:26px;
  border:2px solid #a99cb8;
  background:#293245;
  box-shadow:none;
}

.public-booking-shell[data-public-booking-mode="dark"] .booking-step-modal--hours .booking-slot-chip:is(.is-active,[aria-pressed="true"]) {
  background:#553f58;
  background-image:none;
  border:2px solid #f1b3d3;
  color:#fff7fb;
  box-shadow:0 0 0 2px rgba(241,179,211,.12);
}

.public-booking-shell[data-public-booking-mode="dark"] .booking-step-modal--hours .booking-slot-chip:is(.is-active,[aria-pressed="true"])::before {
  border:3px solid #f1b3d3;
  background:#f1b3d3;
  box-shadow:inset 0 0 0 5px #553f58,0 0 0 2px rgba(241,179,211,.22);
}

.public-booking-shell[data-public-booking-mode="dark"] .booking-step-modal--hours .booking-slot-chip:is(.is-active,[aria-pressed="true"]) > span {
  color:#fff7fb;
}

.public-booking-shell[data-public-booking-mode="dark"] :is(
  .booking-loyalty-redeem,.booking-loyalty-redeem.is-disabled
) {
  opacity:1;
  background:#2b3445;
  background-image:none;
  border:1px solid #586478;
  color:#f6f3f8;
}

.public-booking-shell[data-public-booking-mode="dark"] .booking-loyalty-redeem__content strong {
  color:#f6f3f8;
}

.public-booking-shell[data-public-booking-mode="dark"] .booking-loyalty-redeem__content :is(span,small) {
  color:#d0cbd8;
}

.public-booking-shell[data-public-booking-mode="dark"] .booking-loyalty-redeem.is-disabled .booking-loyalty-redeem__switch {
  opacity:1;
  background:#354054;
  border-color:#637085;
  color:#d0cbd8;
}

.public-booking-shell[data-public-booking-mode="dark"] .booking-loyalty-redeem.is-disabled :is(
  [data-booking-loyalty-message],[data-tone="warning"]
) {
  color:#e8c9a3;
}

/* Public booking dark mode: the completed reservation page was previously light-only. */
.public-booking-shell[data-public-booking-mode="dark"] #booking-success-modal .booking-modal__sheet--success {
  background:#202633;
  background-image:none;
  color:#f6f3f8;
  border-color:#465164;
}

.public-booking-shell[data-public-booking-mode="dark"] #booking-success-modal :is(
  .booking-success__reserved-card,.booking-success__addons-list li,
  .booking-success__addons-empty
) {
  background:#2b3445;
  background-image:none;
  border-color:#586478;
  box-shadow:none;
  color:#f6f3f8;
}

.public-booking-shell[data-public-booking-mode="dark"] #booking-success-modal :is(
  .booking-success__summary-label,.booking-success__addons-heading,
  .booking-success__addon-copy strong,.booking-success__addon-meta,
  .booking-success__total-row span
) {
  color:#d0cbd8;
}

.public-booking-shell[data-public-booking-mode="dark"] #booking-success-modal :is(
  .booking-success__summary-value,.booking-success__addon-copy span,
  .booking-success__title
) {
  color:#f6f3f8;
}

.public-booking-shell[data-public-booking-mode="dark"] #booking-success-modal :is(
  .booking-success__detail-icon,.booking-success__addon-check,
  .booking-success__addons-heading em
) {
  background:#46374e;
  background-image:none;
  border-color:#73647c;
  box-shadow:none;
  color:#f1b3d3;
}

.public-booking-shell[data-public-booking-mode="dark"] #booking-success-modal :is(
  .booking-success__addons-block,.booking-success__total-row,
  .booking-success__reserved-side
) {
  border-color:#586478;
}

.public-booking-shell[data-public-booking-mode="dark"] #booking-success-modal .booking-success__total-row strong {
  color:#f1b3d3;
}

.public-booking-shell[data-public-booking-mode="dark"] #booking-success-modal :is(
  .booking-success__note,.booking-success__note--marketing
) {
  background:#2b3445;
  background-image:none;
  border:1px solid #586478;
  color:#d0cbd8;
}

.public-booking-shell[data-public-booking-mode="dark"] #booking-success-modal .booking-success__note--attention {
  background:#40352e;
  background-image:none;
  border-color:#866747;
  color:#ffe0b5;
}

.public-booking-shell[data-public-booking-mode="dark"] #booking-success-modal .booking-success__hero .booking-modal__eyebrow {
  background:#4b3648;
  background-image:none;
  color:#f4bad4;
}

.public-booking-shell[data-public-booking-mode="dark"] #booking-success-modal .booking-success__actions {
  background:#202633;
  background-image:none;
  border-top:1px solid #465164;
  box-shadow:none;
}

.public-booking-shell[data-public-booking-mode="dark"] #booking-success-modal .booking-success__button--secondary {
  background:#354054;
  background-image:none;
  border:1px solid #667188;
  color:#f6f3f8;
}

.public-booking-shell[data-public-booking-mode="dark"] #booking-success-modal .booking-success__button--secondary:is(:hover,:focus-visible) {
  background:#465269;
  border-color:#b98fac;
  color:#ffffff;
}

/* Booking premium pictograms: semantic mapping, rendered on a separate layer.
   An icon position must not depend on the dialog surface/background cascade. */
.booking-premium-icon{
  position:relative;
  isolation:isolate;
  flex-shrink:0;
  font-size:0;
}
.booking-premium-icon::before{
  content:"";
  position:absolute;
  inset:0;
  display:block;
  width:100%;
  height:100%;
  pointer-events:none;
  border-radius:inherit;
  background-image:var(--booking-premium-icon-image,url('../img/menu-premium-icons.webp'));
  background-position:var(--booking-premium-icon-position,0% 0%);
  background-size:var(--booking-premium-icon-size,600% 300%);
  background-repeat:no-repeat;
}
.booking-premium-icon--service{
  --booking-premium-icon-position:25% 100%;
  --booking-premium-icon-size:500% 300%;
  --booking-premium-icon-image:url('../img/settings-premium-icons.webp');
  --booking-premium-icon-dark-image:url('../img/settings-premium-icons-dark.webp');
}
.booking-premium-icon--package{--booking-premium-icon-position:60% 50%}
.booking-premium-icon--specialist{--booking-premium-icon-position:40% 0%}
.booking-premium-icon--first-name,
.booking-premium-icon--last-name{
  --booking-premium-icon-size:200% 100%;
  --booking-premium-icon-image:url('../img/booking-identity-premium.webp?v=20261021-identity');
  --booking-premium-icon-dark-image:url('../img/booking-identity-premium-dark.webp?v=20261021-identity');
}
.booking-premium-icon--first-name{--booking-premium-icon-position:0% 50%}
.booking-premium-icon--last-name{--booking-premium-icon-position:100% 50%}
.booking-premium-icon--client{--booking-premium-icon-position:0% 50%}
.booking-premium-icon--date{--booking-premium-icon-position:0% 50%;--booking-premium-icon-image:url('../img/booking-interface-icons.svg?v=20261027-vector');--booking-premium-icon-dark-image:url('../img/booking-interface-icons.svg?v=20261027-vector');--booking-premium-icon-size:400% 100%;}
.booking-premium-icon--time{--booking-premium-icon-position:100% 50%;--booking-premium-icon-size:400% 100%;--booking-premium-icon-image:url('../img/booking-interface-icons.svg?v=20261027-vector');--booking-premium-icon-dark-image:url('../img/booking-interface-icons.svg?v=20261027-vector');
}
.booking-premium-icon--summary{--booking-premium-icon-position:60% 0%}
.booking-premium-icon--details{--booking-premium-icon-position:80% 50%}
.booking-premium-icon--discount{
  --booking-premium-icon-position:25% 50%;
  --booking-premium-icon-size:500% 100%;
  --booking-premium-icon-image:url('../img/marketing-premium-icons-dark.webp');
  --booking-premium-icon-dark-image:url('../img/marketing-premium-icons-dark.webp');
}
.booking-premium-icon--notes{--booking-premium-icon-position:20% 0%}
.booking-premium-icon--rules{
  --booking-premium-icon-position:100% 50%;
  --booking-premium-icon-size:600% 100%;
  --booking-premium-icon-image:url('../img/beauty-day-premium-icons-dark.webp');
  --booking-premium-icon-dark-image:url('../img/beauty-day-premium-icons-dark.webp');
}
.booking-premium-icon--preparation{--booking-premium-icon-position:80% 50%}
.booking-premium-icon--intake{--booking-premium-icon-position:100% 50%}
.booking-premium-icon--legal{--booking-premium-icon-position:33.333333% 50%;--booking-premium-icon-size:400% 100%;--booking-premium-icon-image:url('../img/booking-interface-icons.svg?v=20261027-vector');--booking-premium-icon-dark-image:url('../img/booking-interface-icons.svg?v=20261027-vector');
}
.booking-premium-icon--alert{--booking-premium-icon-position:40% 100%}
.booking-premium-icon--waiting{--booking-premium-icon-position:100% 0%}
.booking-premium-icon--price{
  --booking-premium-icon-position:100% 0%;
  --booking-premium-icon-size:500% 300%;
  --booking-premium-icon-image:url('../img/settings-premium-icons.webp');
  --booking-premium-icon-dark-image:url('../img/settings-premium-icons-dark.webp');
}
.booking-premium-icon--phone{
  --booking-premium-icon-position:0% 50%;
  --booking-premium-icon-size:200% 100%;
  --booking-premium-icon-image:url('../img/booking-controls-premium.webp?v=20261021-booking-icons');
  --booking-premium-icon-dark-image:url('../img/booking-controls-premium-dark.webp?v=20261021-booking-icons');
}
.booking-premium-icon--search{
  --booking-premium-icon-position:100% 50%;
  --booking-premium-icon-size:200% 100%;
  --booking-premium-icon-image:url('../img/booking-controls-premium.webp?v=20261021-booking-icons');
  --booking-premium-icon-dark-image:url('../img/booking-controls-premium-dark.webp?v=20261021-booking-icons');
}
.booking-premium-icon--email{
  --booking-premium-icon-position:50% 0%;
  --booking-premium-icon-size:500% 300%;
  --booking-premium-icon-image:url('../img/settings-premium-icons.webp');
  --booking-premium-icon-dark-image:url('../img/settings-premium-icons-dark.webp');
}
/* Input pictograms must override the generic premium relative positioning. */
.public-booking-shell .booking-service-search > .booking-service-search__icon.booking-premium-icon{
  position:absolute;
  display:block;
  left:17px;
  top:50%;
  width:22px;
  height:22px;
  transform:translateY(-50%);
  z-index:1;
  pointer-events:none;
}
/* A positioned icon inside an input must retain its own absolute positioning.
   The generic premium icon is relative for grid cards, not for form controls. */
.public-booking-shell .booking-contact-input > .booking-contact-input__icon.booking-premium-icon{
  position:absolute;
  display:block;
  left:16px;
  top:50%;
  width:32px;
  height:32px;
  transform:translateY(-50%);
  z-index:2;
  flex:none;
  pointer-events:none;
}
.public-booking-shell .booking-contact-input > input{
  padding-inline-start:60px;
}
.public-booking-shell .booking-summary-action > .booking-summary-action__icon.booking-premium-icon,
.public-booking-shell .booking-summary-card > .booking-summary-card__icon.booking-premium-icon{
  align-self:start;
  justify-self:center;
}
.public-booking-shell .booking-summary-action > .booking-summary-action__icon.booking-premium-icon{
  align-self:center;
}
/* Paint the premium artwork only on ::before, independent of the dialog background. */
.public-booking-shell :is(
  .booking-date-modal__icon,.booking-step-modal__icon,
  .booking-hours-waiting__icon,.booking-contact-input__icon,
  .booking-service-search__icon,.booking-summary-card__icon,
  .booking-summary-action__icon,.booking-summary-submodal__icon,
  .booking-success__detail-icon
).booking-premium-icon{
  background:none;border:0;box-shadow:none;
}
.booking-service-card__meta-icon{
  display:inline-block;width:16px;height:16px;flex:0 0 16px;
}
#booking-summary-modal .booking-step-modal__icon.booking-premium-icon,
#booking-summary-intake-modal .booking-summary-submodal__icon.booking-premium-icon,
#booking-success-modal .booking-success__detail-icon.booking-premium-icon{
  background:none;border:0;box-shadow:none;
}
.booking-summary-readiness[data-tone="success"] .booking-premium-icon--alert{
  --booking-premium-icon-position:60% 0%;
}
.public-booking-shell[data-public-booking-mode="dark"] .booking-premium-icon::before{
  background-image:var(--booking-premium-icon-dark-image,url('../img/menu-premium-icons-dark.webp?v=20261021-transparent12'));
}
@media(max-width:720px){
  #booking-success-modal .booking-success__reserved-card{text-align:left}
  #booking-success-modal .booking-success__detail-row{
    grid-template-columns:42px minmax(0,1fr);
    justify-content:stretch;
    justify-items:stretch;
    align-items:center;
    gap:11px;
    text-align:left
  }
  #booking-success-modal .booking-success__detail-row > div{text-align:left;min-width:0}
}
.public-booking-shell[data-public-booking-mode="dark"] :is(
  #booking-no-show-payment-modal .booking-payment-gate__amount,
  #booking-no-show-payment-modal .booking-payment-gate__method,
  #booking-no-show-payment-modal .booking-payment-gate__hint,
  #booking-summary-modal .booking-no-show-payment,
  #booking-summary-modal .booking-no-show-payment__amount,
  #booking-summary-modal .booking-no-show-payment__selected,
  #booking-summary-modal .booking-no-show-payment__method
){
  background:#2b3445;background-image:none;border-color:#586478;
  box-shadow:none;color:#f6f3f8
}
.public-booking-shell[data-public-booking-mode="dark"] #booking-no-show-payment-modal .booking-payment-gate__method:is(.is-selected,[aria-pressed="true"]){
  background:#4a394f;border-color:#deabd0;box-shadow:inset 0 0 0 1px #deabd0
}
.public-booking-shell[data-public-booking-mode="dark"] #booking-no-show-payment-modal .booking-payment-gate__radio{
  background:#27303e;border-color:#b6b0c2;box-shadow:none
}
.public-booking-shell[data-public-booking-mode="dark"] #booking-no-show-payment-modal .booking-payment-gate__method:is(.is-selected,[aria-pressed="true"]) .booking-payment-gate__radio{
  background:#f1b3d3;border-color:#f1b3d3;box-shadow:inset 0 0 0 4px #4a394f
}
.public-booking-shell[data-public-booking-mode="dark"] :is(
  #booking-no-show-payment-modal .booking-payment-gate__amount span,
  #booking-no-show-payment-modal .booking-payment-gate__method-body small,
  #booking-no-show-payment-modal .booking-payment-gate__details,
  #booking-no-show-payment-modal .booking-payment-gate__details em,
  #booking-no-show-payment-modal .booking-payment-gate__hint,
  #booking-summary-modal .booking-no-show-payment__head span,
  #booking-summary-modal .booking-no-show-payment__amount span,
  #booking-summary-modal .booking-no-show-payment__selected span,
  #booking-summary-modal .booking-no-show-payment__method dt,
  #booking-summary-modal .booking-no-show-payment__head p,
  #booking-summary-modal .booking-no-show-payment__method p
){color:#d0cbd8}
.public-booking-shell[data-public-booking-mode="dark"] :is(
  #booking-no-show-payment-modal .booking-payment-gate__method-body > strong,
  #booking-no-show-payment-modal .booking-payment-gate__details b,
  #booking-summary-modal .booking-no-show-payment__head strong,
  #booking-summary-modal .booking-no-show-payment__selected strong,
  #booking-summary-modal .booking-no-show-payment__method > strong,
  #booking-summary-modal .booking-no-show-payment__method dd
){color:#f6f3f8}
.public-booking-shell[data-public-booking-mode="dark"] :is(
  #booking-no-show-payment-modal .booking-payment-gate__amount strong,
  #booking-summary-modal .booking-no-show-payment__amount strong
){color:#f1b3d3}
.public-booking-shell[data-public-booking-mode="dark"] #booking-summary-intake-modal :is(
  .booking-intake-form__intro p,.booking-intake-form__note,.booking-intake-question small
){color:#d0cbd8}
.public-booking-shell[data-public-booking-mode="dark"] #booking-summary-intake-modal .booking-intake-question label{color:#f6f3f8}
.public-booking-shell[data-public-booking-mode="dark"] #booking-summary-intake-modal .booking-intake-question label span{color:#f1b3d3}
.public-booking-shell[data-public-booking-mode="dark"] #booking-summary-intake-modal .booking-intake-question :is(input,textarea,select){
  background:#283344;color:#f6f3f8;border-color:#667188
}

/* Weryfikacja priorytetu w publicznym formularzu — mobile-first, bez konta. */
.booking-priority-email-verify {
    margin: 12px 0 4px;
    padding: 14px;
    border: 1px solid color-mix(in srgb, currentColor 14%, transparent);
    background: color-mix(in srgb, currentColor 4%, transparent);
    border-radius: 16px;
    color: inherit;
}
.booking-priority-email-verify__title {
    margin: 0 0 5px;
    font-size: 14px;
    font-weight: 700;
}
.booking-priority-email-verify__hint {
    margin: 0 0 12px;
    font-size: 12px;
    line-height: 1.5;
    opacity: .78;
}
.booking-priority-email-verify__code {
    margin-top: 12px;
}
.booking-priority-email-verify__code label {
    display: block;
    margin-bottom: 6px;
    font-size: 13px;
    font-weight: 600;
}
.booking-priority-email-verify__entry {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    align-items: stretch;
}
.booking-priority-email-verify__entry input {
    flex: 1 1 115px;
    width: 0;
    min-width: 0;
    min-height: 44px;
    border: 1px solid color-mix(in srgb, currentColor 24%, transparent);
    border-radius: 10px;
    padding: 9px 12px;
    font-size: 17px;
    letter-spacing: 3px;
    background: var(--booking-surface, transparent);
    color: inherit;
}
.booking-priority-email-verify__message {
    margin: 8px 0 0;
    font-size: 12px;
    line-height: 1.45;
}
.booking-priority-email-verify__message:empty,
.booking-priority-email-verify__code[hidden],
.booking-priority-email-verify [hidden] {
    display: none;
}

/* Kadrowanie usług 16:10: przeglądarka nie może po raz drugi obcinać
   już zatwierdzonego kadru (także w widoku mobilnym). */
.booking-service-card__thumb img,
.booking-service-details__hero img,
.booking-service-details__thumb-button img{
  object-fit:contain;
}
.booking-service-details__hero img{
  aspect-ratio:16/10;
}
@media (max-width:767px){
  .booking-service-details__hero,
  .booking-service-details__hero img{
    aspect-ratio:16/10;
  }
}