@charset "UTF-8";:root{--bg: #f6efe9;--card: #fffaf6;--soft: #f2e5dc;--brown: #7d4f3f;--brown-dark: #2f211c;--muted: #6f584e;--line: rgba(125, 79, 63, .1);--shadow: 0 18px 60px rgba(72, 43, 30, .06)}*{box-sizing:border-box}body{margin:0;background:var(--bg);font-family:Inter,sans-serif;color:var(--brown-dark)}img{display:block;width:100%}a{color:inherit;text-decoration:none}a:hover,a:focus,a:active{text-decoration:none}.page,.checkout-page-container{box-sizing:border-box;max-width:1240px;margin-left:auto;margin-right:auto;width:100%;padding:28px}.header,.nav{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.logo{font-size:24px;font-weight:900;letter-spacing:-.04em;text-decoration:none}.logo span{color:var(--brown)}.book-btn,.book-top,.card-btn,.primary-btn{display:inline-flex;align-items:center;justify-content:center;height:48px;padding:0 20px;border:0;border-radius:999px;background:var(--brown);color:#fff;font-weight:800;cursor:pointer;text-decoration:none}.hero{margin-bottom:26px}.hero-card{background:var(--card);border-radius:34px;padding:42px;box-shadow:var(--shadow)}.hero-label,.service-label,.service-type{margin-bottom:12px;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:#9d7362;font-weight:900}.hero-card h1,h1{margin:0 0 14px;font-size:52px;line-height:1.02;letter-spacing:-.05em}.hero-card p,.hero-description,.description{margin:0;max-width:760px;font-size:18px;line-height:1.7;color:var(--muted)}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service-card{background:var(--card);border-radius:30px;overflow:hidden;box-shadow:var(--shadow);transition:.22s ease}.service-image{position:relative;height:260px;background:var(--soft)}.service-image img{height:100%;object-fit:cover}.badge,.special-badge{position:absolute;left:16px;bottom:16px;background:#fffaf6eb;padding:10px 14px;border-radius:999px;font-size:12px;font-weight:800;color:var(--brown)}.service-image-badges{position:absolute;left:16px;bottom:16px;z-index:1;display:flex;flex-direction:column;align-items:flex-start;gap:8px;max-width:calc(100% - 32px)}.service-image-badges .badge,.service-image-badges .special-badge{position:static}.service-content{padding:24px}.service-content h2{margin:0 0 12px;font-size:30px;line-height:1.08;letter-spacing:-.04em}.price-box,.offer-box{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px;border-radius:22px;background:var(--soft);margin-bottom:18px}.price-left,.offer-price{display:flex;align-items:flex-end;gap:10px}.current-price{font-size:40px;line-height:1;font-weight:900;color:var(--brown)}.old-price{margin-bottom:5px;text-decoration:line-through;color:#9d7d71;font-size:18px}.meta,.offer-meta{display:flex;flex-direction:column;gap:6px;text-align:right;color:var(--muted);font-size:13px;font-weight:600}.card-btn{width:100%;height:52px}.nav-right{display:flex;gap:26px;align-items:center}.nav-right a{text-decoration:none;color:var(--muted);font-weight:600}.hero.detail{background:var(--card);border-radius:30px;box-shadow:var(--shadow);display:flex;flex-direction:column;overflow:hidden;padding:0;gap:0}.hero-image{position:relative;border-radius:0;overflow:hidden;width:100%;aspect-ratio:16/9;height:auto;background:var(--soft)}.hero-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.hero-content{display:flex;flex-direction:column;justify-content:flex-start;padding:24px;gap:0}.primary-btn{height:58px;width:100%;margin-bottom:18px}.upgrade-box{display:grid;grid-template-columns:1fr auto auto;gap:18px;align-items:center;padding:18px 20px;border-radius:24px;border:1px solid var(--line);margin-bottom:18px}.upgrade-price{text-align:right}.secondary-btn{height:46px;padding:0 18px;border-radius:999px;border:1px solid rgba(125,79,63,.14);background:transparent;color:var(--brown);font-weight:800;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center}.quick-points{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px}.point{padding:10px 14px;border-radius:999px;background:#f6efe9;color:#6d564b;font-size:14px;font-weight:700}.expect-section{background:#fffaf6b8;border-radius:30px;padding:30px;border:1px solid rgba(125,79,63,.06);margin-top:22px}.expect-header h2{margin:0 0 10px;font-size:28px}.expect-header p{margin:0;color:var(--muted)}.expect-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.expect-card{background:var(--card);border-radius:22px;padding:22px;box-shadow:var(--shadow)}.expect-card small{color:#9d7362;font-weight:800}.expect-block-title{display:block;margin:8px 0}.expect-block-body{margin:0;color:var(--muted);line-height:1.5}.tax-note{font-size:13px;color:var(--muted);margin-top:4px}.empty-state{padding:48px;text-align:center;color:var(--muted);background:var(--card);border-radius:24px}.current-price--detail-hero{font-size:54px}.old-price--detail-hero{font-size:24px}.current-price--schedule-card{font-size:42px}.schedule-empty-times{color:var(--muted)}@media(max-width:1040px){.services-grid,.expect-grid{grid-template-columns:1fr}.hero.detail{grid-template-columns:unset}.hero-image{height:auto}.hero-card h1,h1{font-size:40px}.upgrade-box{grid-template-columns:1fr}.offer-box,.offer-meta{text-align:left}}.funnel-shell,.booking-flow-page{min-height:100vh;display:flex;flex-direction:column}.funnel-progress{height:4px;width:100%;flex-shrink:0;background:var(--soft)}.funnel-progress-fill{height:100%;background:var(--brown);width:0;transition:width .7s ease-out}@media(prefers-reduced-motion:reduce){.funnel-progress-fill{transition:none}}.funnel-page{flex:1;max-width:720px;margin:0 auto;width:100%;padding:20px 28px 48px}.funnel-header{margin-bottom:18px}.funnel-logo{display:inline-flex;align-items:center;gap:12px;text-decoration:none;color:var(--brown-dark)}.funnel-logo img{width:52px;height:52px;flex-shrink:0;border-radius:12px}.funnel-logo-title{font-size:clamp(18px,3.5vw,22px);font-weight:800;letter-spacing:-.03em;line-height:1.15}.funnel-logo-amp{color:var(--brown)}.funnel-page .hero{background:transparent;border-radius:0;padding:0;box-shadow:none;margin-bottom:0}.funnel-card{padding:32px 28px}.funnel-card h1{font-size:clamp(28px,5vw,40px);margin-bottom:12px}.funnel-subtitle{margin-bottom:24px}.funnel-subtitle p{margin:0 0 8px}.funnel-subtitle .address-line{margin-top:16px;font-size:20px;font-weight:800;color:var(--brown-dark);line-height:1.35}.funnel-form{margin-top:8px}.field{margin-bottom:14px}.field-label{display:block;margin-bottom:8px;font-size:13px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#9d7362}.field-input{width:100%;height:52px;padding:0 16px;border-radius:16px;border:1px solid var(--line);background:#fff;font-size:16px;color:var(--brown-dark);outline:none;transition:border-color .15s ease,box-shadow .15s ease}.field-input:focus{border-color:#7d4f3f59;box-shadow:0 0 0 3px #7d4f3f14}.field-input.has-error{border-color:#c45c4a}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field-phone-wrap{display:flex;align-items:stretch;border-radius:16px;overflow:hidden;border:1px solid var(--line);background:#fff}.field-phone-wrap.has-error{border-color:#c45c4a}.field-phone-prefix{display:flex;align-items:center;padding:0 16px;font-weight:800;color:var(--brown);border-right:1px solid var(--line);background:var(--card)}.field-phone-input{flex:1;min-width:0;height:52px;border:0;padding:0 16px;font-size:16px;background:transparent;outline:none;color:var(--brown-dark)}.alert-error{margin-bottom:16px;padding:14px 16px;border-radius:16px;border:1px solid rgba(196,92,74,.25);background:#fff5f3;color:#8f3d32;font-size:14px}.funnel-actions{margin-top:20px}.primary-btn.full-width,.secondary-btn.full-width{width:100%;height:52px;font-size:14px}.secondary-btn.full-width{background:transparent;color:var(--brown)}.secondary-btn.is-muted{border-color:#7d4f3f1f;color:var(--muted)}.consent-heading{margin:0 0 14px;font-size:15px;font-weight:700;color:var(--brown-dark)}.consent-tiles{display:grid;grid-template-columns:1fr;gap:12px}@media(min-width:640px){.consent-tiles.sms-enabled{grid-template-columns:repeat(3,1fr)}}.consent-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:140px;padding:20px 16px;border-radius:20px;border:2px solid var(--line);background:#fff;cursor:pointer;text-align:center;transition:border-color .15s ease,background .15s ease,transform .15s ease}.consent-tile:hover{border-color:#7d4f3f47}.consent-tile.is-selected{border-color:var(--brown);background:var(--card);box-shadow:var(--shadow)}.consent-tile svg{width:52px;height:52px;color:var(--brown)}.consent-tile-title{font-size:15px;font-weight:800;color:var(--brown-dark)}.consent-email-only{display:flex;align-items:flex-start;gap:12px;padding:16px 18px;border-radius:20px;border:1px solid var(--line);background:#fff}.consent-email-only input{width:20px;height:20px;margin-top:2px;accent-color:var(--brown)}.consent-legal{margin-top:18px;font-size:13px;line-height:1.6;color:var(--muted)}.funnel-success-panel{margin-top:24px;padding:28px 22px;border-radius:24px;text-align:center;border:1px solid var(--line);background:linear-gradient(180deg,#fff 0%,var(--card) 100%);box-shadow:var(--shadow)}.funnel-success-panel svg{width:64px;height:64px;color:var(--brown);margin:0 auto}.funnel-success-message{margin:20px 0 0;color:var(--muted);line-height:1.7}.funnel-countdown{margin-top:28px;text-align:center;color:var(--muted);font-size:15px}.funnel-countdown strong{color:var(--brown-dark);font-weight:900}.recaptcha-v3-wrap{margin-top:16px;margin-bottom:4px}.recaptcha-v3-notice{margin:0;font-size:12px;line-height:1.55;color:var(--muted)}.recaptcha-v3-notice a{color:var(--brown);font-weight:700}.recaptcha-wrap{margin-top:16px;min-height:78px}.recaptcha-wrap.has-error{border-radius:16px;box-shadow:0 0 0 2px #c45c4a33}@media(max-width:640px){.field-grid{grid-template-columns:1fr}.funnel-page{padding:16px 18px 36px}.funnel-card{padding:24px 20px}}.funnel-shell--minimal{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg, #faf8f6)}.funnel-minimal-page{width:100%;max-width:420px;padding:32px 24px 48px}.funnel-session-expired{text-align:center}.funnel-logo--minimal{justify-content:center;margin-bottom:28px}.funnel-session-expired__title{margin:0 0 12px;font-size:1.5rem;font-weight:700;color:var(--brown-dark);letter-spacing:-.02em}.funnel-session-expired__lead,.funnel-session-expired__hint{margin:0 0 12px;font-size:15px;line-height:1.55;color:var(--muted, #6b5c55)}.funnel-session-expired__hint{margin-bottom:28px;font-size:14px}.funnel-session-expired__cta{display:inline-block;padding:14px 24px;border-radius:999px;background:var(--brown);color:#fff;font-size:15px;font-weight:600;text-decoration:none;transition:background .2s ease}.funnel-session-expired__cta:hover{background:var(--brown-dark);color:#fff}.funnel-shell--welcome{background:var(--bg)}.funnel-welcome-page{min-height:calc(100vh - 4px);display:grid;place-items:center;padding:20px;width:100%;max-width:none;margin:0}.funnel-welcome-shell{width:min(1080px,100%);display:grid;grid-template-columns:1fr 1fr;background:var(--card);border-radius:36px;overflow:hidden;box-shadow:0 24px 80px #462d201a}.funnel-welcome-brand{padding:56px;background:linear-gradient(#f6efe9d1,#f6efe9d1),var(--funnel-welcome-brand-image) center/cover no-repeat;display:flex;flex-direction:column;justify-content:center}.funnel-welcome-brand-inner{max-width:420px}.funnel-logo--welcome-brand{margin-bottom:34px}.funnel-logo--welcome-brand img{width:56px;height:56px}.funnel-logo--welcome-brand .funnel-logo-title{font-size:clamp(22px,3vw,28px)}.funnel-welcome-brand-title{margin:0 0 16px;font-size:clamp(36px,4.25vw,54px);line-height:.95;letter-spacing:-.06em;color:var(--brown-dark)}.funnel-welcome-brand-lead{margin:0;max-width:420px;color:var(--muted);font-size:18px;line-height:1.6}.funnel-welcome-form-panel{padding:56px;display:flex;align-items:center}.funnel-welcome-form-card{width:100%}.funnel-welcome-form-title{margin:0 0 12px;font-size:38px;line-height:1.05;letter-spacing:-.05em;color:var(--brown-dark)}.funnel-welcome-subtitle{margin:0 0 18px;color:var(--muted);font-size:17px;line-height:1.6}.funnel-welcome-subtitle--contact{margin-bottom:28px}.funnel-welcome-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 16px;margin-bottom:22px}.funnel-welcome-field--full{grid-column:span 2}.funnel-welcome-input{width:100%;height:56px;border:1px solid rgba(80,54,42,.14);border-radius:18px;padding:0 16px;background:#fff;font-size:16px;color:var(--brown-dark);outline:none;transition:border-color .15s ease,box-shadow .15s ease}.funnel-welcome-input::placeholder{color:#6f584e8c}.funnel-welcome-input:focus{border-color:#7d4f3f59;box-shadow:0 0 0 3px #7d4f3f14}.funnel-welcome-input.has-error{border-color:#c45c4a}.funnel-welcome-address{margin:0 0 28px;font-weight:900;font-size:18px;color:var(--brown-dark);line-height:1.35}.funnel-welcome-field-label{display:block;margin-bottom:8px;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--brown);font-weight:900}.funnel-welcome-phone-row{display:grid;grid-template-columns:64px 1fr;border:1px solid rgba(80,54,42,.14);border-radius:18px;overflow:hidden;background:#fff;margin-bottom:20px}.funnel-welcome-phone-row.has-error{border-color:#c45c4a}.funnel-welcome-phone-prefix{display:grid;place-items:center;border-right:1px solid rgba(80,54,42,.1);font-weight:800;color:var(--brown);background:var(--card)}.funnel-welcome-phone-input{height:58px;border:0;padding:0 18px;font-size:16px;outline:none;color:var(--brown-dark);background:transparent;min-width:0}.funnel-recaptcha-legal{margin:0;padding:10px 14px 16px;max-width:1080px;margin-inline:auto;font-size:11px;line-height:1.45;color:var(--muted, #8a7a72);text-align:center}.funnel-recaptcha-legal a{color:inherit;text-decoration:none}.funnel-recaptcha-legal a:hover{color:var(--brown)}.funnel-shell--welcome .grecaptcha-badge{z-index:40}@keyframes funnel-welcome-submit-spin{to{transform:rotate(360deg)}}.funnel-welcome-submit{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:58px;border:0;border-radius:999px;background:var(--brown);color:#fff;font-weight:900;font-size:15px;cursor:pointer;transition:background .15s ease,transform .15s ease,opacity .15s ease}.funnel-welcome-submit:hover:not(:disabled):not(.is-loading){background:#6f4538}.funnel-welcome-submit:active:not(:disabled):not(.is-loading){transform:translateY(1px)}.funnel-welcome-submit:disabled,.funnel-welcome-submit.is-loading{cursor:wait;opacity:.92}.funnel-welcome-submit.is-loading .funnel-welcome-submit-label{opacity:0}.funnel-welcome-submit-spinner{display:none;width:22px;height:22px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:funnel-welcome-submit-spin .75s linear infinite}.funnel-welcome-submit.is-loading .funnel-welcome-submit-spinner{position:absolute;display:block}.funnel-welcome-submit--outline{background:transparent;color:var(--brown);border:1px solid rgba(80,54,42,.14)}.funnel-welcome-submit--outline:hover:not(:disabled):not(.is-loading){background:#8a57460f}.funnel-welcome-submit--outline:active:not(:disabled):not(.is-loading){transform:translateY(1px)}.funnel-consent-form.is-subscribed .funnel-welcome-submit--outline{background:var(--brown);color:#fff;border-color:var(--brown)}.funnel-consent-form.is-subscribed .funnel-welcome-submit--outline:hover:not(:disabled):not(.is-loading){background:#6f4538}.funnel-consent-email-inline{display:flex;flex-direction:column;align-items:stretch;gap:14px;margin-bottom:24px;padding:18px 20px;border-radius:22px;background:#8a57460f}.funnel-consent-email-copy{min-width:0}.funnel-consent-email-copy strong{display:block;margin-bottom:6px;font-size:15px;color:var(--brown-dark)}.funnel-consent-email-text{color:var(--muted);font-size:15px;line-height:1.5;overflow-wrap:anywhere;word-break:break-word}.funnel-consent-email-actions{display:flex}.funnel-consent-change-email{height:42px;padding:0 16px;border-radius:999px;border:1px solid rgba(80,54,42,.14);background:#fff;color:var(--brown);font-size:14px;font-weight:900;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;transition:background .15s ease}.funnel-consent-change-email:hover{background:#8a57460f}.funnel-consent-check-row{display:flex;gap:14px;align-items:flex-start;padding:20px;border-radius:24px;border:1px solid rgba(80,54,42,.14);background:#fff;margin-bottom:18px;cursor:pointer;transition:border-color .18s ease,background .18s ease}.funnel-consent-check-row:has(input:checked){border-color:#8a57466b;background:#8a57460f}.funnel-consent-check-row input{width:22px;height:22px;accent-color:var(--brown);margin-top:3px;flex-shrink:0}.funnel-consent-check-row strong{display:block;margin-bottom:6px;font-size:17px;color:var(--brown-dark)}.funnel-consent-check-row span{color:var(--muted);font-size:15px;line-height:1.6}.funnel-consent-note{margin:0 0 24px;color:var(--muted);font-size:14px;line-height:1.7}@media(max-width:820px){.funnel-welcome-page{display:block;padding:14px;min-height:calc(100vh - 4px)}.funnel-welcome-shell{display:block;border-radius:28px;box-shadow:none;background:transparent}.funnel-welcome-brand{background:transparent;padding:22px 6px 18px;text-align:center;align-items:center}.funnel-welcome-brand-inner{max-width:360px;margin:0 auto;display:flex;flex-direction:column;align-items:center}.funnel-logo--welcome-brand{margin-bottom:18px;justify-content:center}.funnel-welcome-brand-title{font-size:34px;max-width:360px}.funnel-welcome-brand-lead{font-size:16px;max-width:330px}.funnel-welcome-form-panel{padding:0}.funnel-welcome-form-card{background:var(--card);border-radius:28px;padding:26px;box-shadow:0 18px 50px #462d201a}.funnel-welcome-form-title{font-size:32px}.funnel-welcome-form-grid{grid-template-columns:1fr}.funnel-welcome-field--full{grid-column:auto}.funnel-consent-change-email{width:100%}}.layout{display:grid;grid-template-columns:360px 1fr;gap:22px}.service-card{background:var(--card);border-radius:30px;padding:24px;box-shadow:var(--shadow);height:fit-content}.checkout-services-shell--index .service-card--row{padding:0;background:transparent;border-radius:0;box-shadow:none}.service-description{margin:0 0 22px;line-height:1.7;color:var(--muted)}.calendar-card{background:var(--card);border-radius:30px;padding:24px;box-shadow:var(--shadow)}.calendar-header{margin-bottom:24px}.calendar-header h1{margin:0 0 10px;font-size:42px;line-height:1.04;letter-spacing:-.04em}.calendar-header p{margin:0;color:var(--muted);line-height:1.7}.months{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:26px}.months.months--single{grid-template-columns:1fr;max-width:360px}.schedule-no-slots{display:flex;align-items:flex-start;gap:18px;margin:0 0 28px;padding:24px 22px;border-radius:26px;background:#fcf7f3;border:1px solid rgba(125,79,63,.12)}.schedule-no-slots-icon{flex-shrink:0;width:52px;height:52px;border-radius:18px;background:#7d4f3f1a;display:flex;align-items:center;justify-content:center;font-size:24px;line-height:1}.schedule-no-slots-copy h2{margin:0 0 10px;font-size:clamp(22px,4vw,28px);line-height:1.15;letter-spacing:-.03em;color:var(--brown-dark)}.schedule-no-slots-copy p{margin:0 0 16px;max-width:52ch;color:var(--muted);font-size:15px;line-height:1.7}.schedule-no-slots-link{display:inline-flex;align-items:center;min-height:44px;padding:0 20px;border-radius:999px;background:var(--brown);color:#fff;font-size:14px;font-weight:800;text-decoration:none;box-shadow:none}.schedule-no-slots-link:hover{background:#6a4335;color:#fff}.month-card{background:#fcf7f3;border-radius:24px;padding:20px}.month-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.month-header h3{margin:0;font-size:22px;letter-spacing:-.03em}.month-header span{color:var(--muted);font-size:14px}.weekdays-row{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-bottom:8px}.weekday-label{display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.days-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.day{aspect-ratio:1;border:none;border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:14px;font-weight:700;text-decoration:none;color:inherit;padding:0;cursor:pointer;font-family:inherit}.day .day-weekday{font-size:10px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;line-height:1;opacity:.72}.day .day-number{font-size:15px;font-weight:800;line-height:1;letter-spacing:-.02em}.day.selected .day-weekday{opacity:.88}.day.available{background:var(--soft);color:var(--brown)}.day.available:hover:not(.selected){background:#ead9cc}.day.selected,.day.selected:hover,.day.selected:focus-visible{background:var(--brown);border-color:var(--brown);color:#fff;box-shadow:none}.day.selected .day-weekday,.day.selected .day-number,.day.selected:hover .day-weekday,.day.selected:hover .day-number,.day.selected:focus-visible .day-weekday,.day.selected:focus-visible .day-number{color:#fff}.day.disabled{opacity:.22;pointer-events:none}.times-header h3{margin:0 0 6px;font-size:28px;letter-spacing:-.03em}.times-header p{margin:0;color:var(--muted)}.time-group{margin-bottom:26px}.group-label{margin-bottom:14px;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:#9d7362;font-weight:900}.times-grid{display:flex;flex-wrap:wrap;gap:12px}.time-slot{min-width:110px;min-height:52px;padding:10px 18px;border-radius:18px;border:1px solid rgba(125,79,63,.18);background:#fffaf6;color:var(--brown);font-size:15px;font-weight:800;cursor:pointer;font-family:inherit;transition:background .15s ease,border-color .15s ease,color .15s ease}.time-slot:hover:not(.active):not(:disabled){border-color:#7d4f3f59;background:var(--soft)}.time-slot.active,.time-slot.active:hover,.time-slot.active:focus-visible{background:var(--brown);border-color:var(--brown);color:#fff;box-shadow:none}.time-slot--held{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:2px;cursor:not-allowed;border-style:dashed;border-color:#9d736273;background:#f8f2ed;color:#9d7362;opacity:.92}.time-slot-time{font-size:15px;font-weight:800;line-height:1.2}.time-slot-held-label{font-size:11px;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:#b07d62;line-height:1.2}.schedule-hold-legend{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;margin:0 0 18px;font-size:12px;font-weight:700;color:var(--muted)}.schedule-hold-legend-swatch{display:inline-block;width:14px;height:14px;margin-right:6px;border-radius:5px;vertical-align:-2px}.schedule-hold-legend-swatch--open{border:1px solid var(--line);background:transparent}.schedule-hold-legend-swatch--held{border:1px dashed rgba(157,115,98,.45);background:#f8f2ed}.schedule-error--inline{margin-top:0}.continue-bar{margin-top:28px;display:flex;justify-content:space-between;align-items:center;gap:18px;background:#fcf7f3;border-radius:24px;padding:18px 20px}.selection{color:var(--muted);line-height:1.6}.selection strong{color:var(--brown-dark)}.back-link{text-decoration:none;color:var(--muted);font-weight:700}.booking-error-box{display:flex;gap:16px;padding:18px 20px;margin-bottom:22px;border-radius:22px;background:#fff1ee;border:1px solid rgba(196,85,56,.16)}.booking-error-icon{width:42px;height:42px;border-radius:14px;background:#b94f351f;color:#b94f35;display:flex;align-items:center;justify-content:center;font-weight:900;flex-shrink:0}.booking-error-content h3{margin:0 0 8px;font-size:20px;color:#b94f35}.booking-error-content p{margin:0;line-height:1.7;color:var(--muted)}.schedule-error{margin-bottom:18px;padding:14px 16px;border-radius:16px;background:#fff0eb;color:#8b3a2a;font-weight:600}.schedule-square-debug{margin:24px 0 0;padding:16px;border:1px dashed #c9b8a8;border-radius:16px;background:#faf7f2;font-size:13px}.schedule-square-debug summary{cursor:pointer;font-weight:700;color:#6b4c3b}.schedule-square-debug-note{margin:12px 0;color:var(--muted);line-height:1.5}.schedule-square-debug-json{margin:0;max-height:420px;overflow:auto;padding:12px;border-radius:12px;background:#1e1e1e;color:#d4d4d4;font-size:11px;line-height:1.45;white-space:pre-wrap;word-break:break-word}@media(max-width:980px){.layout,.months{grid-template-columns:1fr}.calendar-header h1{font-size:34px}.continue-bar{flex-direction:column;align-items:flex-start}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.booking-checkout-page .booking-checkout-main.page{flex:1;padding-bottom:48px}.booking-checkout-page .checkout-back-link{display:inline-block;margin-bottom:16px;font-size:14px;font-weight:600;color:var(--muted);text-decoration:none}.booking-checkout-page .checkout-back-link:hover{color:var(--brown)}.booking-checkout-page .checkout-text-link{font-size:14px;font-weight:700;color:var(--brown);text-decoration:none}.booking-checkout-page .checkout-text-link:hover{color:#6b4538}.booking-checkout-page .service-category-line{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin:0}.booking-checkout-page .service-category-line .service-type{margin:0}.booking-checkout-page .service-category-badges{display:flex;flex-wrap:wrap;align-items:center;gap:6px;position:static;max-width:none}.booking-checkout-page .service-category-badges .badge{position:static;left:auto;bottom:auto;padding:5px 10px;border-radius:999px;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;line-height:1.2;background:#f2e5dcf2;color:var(--brown)}.booking-checkout-page .service-pricing-top{display:flex;flex-direction:column;align-items:flex-start;gap:6px;margin-bottom:4px}.booking-checkout-page .service-pricing-duration{font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#9d7362;line-height:1.3;white-space:nowrap}.booking-checkout-page .service-pricing-offer{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:0}.booking-checkout-page .service-pricing-prices{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:flex-start;gap:6px 8px}.booking-checkout-page .service-pricing-prices .current-price{font-size:clamp(20px,2.8vw,26px);line-height:1;white-space:nowrap}.booking-checkout-page .service-pricing-prices .old-price{margin-bottom:0;font-size:13px;white-space:nowrap}.booking-checkout-page .service-pricing-tax{font-size:11px;font-weight:700;line-height:1.3;color:#9d7362;text-align:left;white-space:nowrap}.booking-checkout-page .service-pricing-meta{margin:0;font-size:11px;font-weight:600;line-height:1.35;color:var(--muted)}.booking-checkout-page .service-card--schedule-summary{position:sticky;top:20px;z-index:2;align-self:start;height:fit-content;display:flex;flex-direction:column;gap:10px}.booking-checkout-page .service-card--schedule-summary h2.service-schedule-title{margin:0;font-size:clamp(18px,2.4vw,22px);font-weight:800;line-height:1.12;letter-spacing:-.03em}.booking-checkout-page .service-card--schedule-summary .service-pricing{margin:0;padding:0}.booking-checkout-page .checkout-services-shell{max-width:1240px;margin:0 auto;width:100%}.booking-checkout-page .checkout-services-shell.checkout-services-shell--index{--service-list-image-ratio: 16 / 9;--service-card-radius: 30px;--service-inner-radius: 16px;--service-cell-pad: 24px;--service-list-gap: var(--service-cell-pad)}.booking-checkout-page .checkout-services-shell.checkout-services-shell--index .services-index-intro{margin:0 0 var(--service-list-gap);padding:0;max-width:720px}.booking-checkout-page .checkout-services-shell.checkout-services-shell--index .services-index-intro__label{margin:0 0 6px;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#9d7362}.booking-checkout-page .checkout-services-shell.checkout-services-shell--index .services-index-intro__title{margin:0 0 6px;font-size:clamp(18px,2.4vw,24px);font-weight:800;line-height:1.2;letter-spacing:-.03em;color:var(--brown-dark)}.booking-checkout-page .checkout-services-shell.checkout-services-shell--index .services-index-intro__lead{margin:0;max-width:640px;font-size:13px;line-height:1.55;color:var(--muted)}.booking-checkout-page .checkout-services-shell .services-filters-group{display:flex;flex-direction:column;gap:4px;margin:0 0 var(--service-list-gap)}.booking-checkout-page .checkout-services-shell .services-filter-bar{display:flex;flex-direction:column;gap:8px}.booking-checkout-page .checkout-services-shell .services-filter-bar+.services-filter-bar{margin-top:8px}.booking-checkout-page .checkout-services-shell .services-filter-bar__label{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);line-height:1}.booking-checkout-page .checkout-services-shell .services-list-filters{margin:0 0 var(--service-list-gap)}.services-filter-bar .booking-checkout-page .checkout-services-shell .services-list-filters{margin:0}.booking-checkout-page .checkout-services-shell .services-list-filters__inner{display:flex;flex-wrap:wrap;gap:8px}.booking-checkout-page .checkout-services-shell .services-list-filter{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 14px;border:1px solid var(--line);border-radius:999px;background:var(--card);color:var(--muted);font-family:inherit;font-size:13px;font-weight:700;line-height:1;cursor:pointer;transition:background .18s ease,border-color .18s ease,color .18s ease}.booking-checkout-page .checkout-services-shell .services-list-filter:hover{border-color:#7d4f3f47;color:var(--brown)}.booking-checkout-page .checkout-services-shell .services-list-filter.is-active{border-color:var(--brown);background:var(--brown);color:#fff}.booking-checkout-page .checkout-services-shell .services-list-filter:focus-visible{outline:2px solid var(--brown);outline-offset:2px}.booking-checkout-page .checkout-services-shell .services-list--shuffle{display:flex;flex-direction:column;gap:var(--service-list-gap)}.booking-checkout-page .checkout-services-shell .service-card--row{padding:0;background:transparent;border-radius:0;box-shadow:none;overflow:visible}.booking-checkout-page .checkout-services-shell .service-card--row .service-row{background:var(--card);border-radius:var(--service-card-radius);box-shadow:var(--shadow);overflow:hidden;transition:transform .22s ease}.booking-checkout-page .checkout-services-shell .service-card--row:hover .service-row{transform:translateY(-2px)}.booking-checkout-page .checkout-services-shell .service-row-link{text-decoration:none;color:inherit}.booking-checkout-page .checkout-services-shell .service-row-link:hover,.booking-checkout-page .checkout-services-shell .service-row-link:focus,.booking-checkout-page .checkout-services-shell .service-row-link:visited{color:inherit}.booking-checkout-page .checkout-services-shell .service-row-link:focus-visible{outline:2px solid var(--brown);outline-offset:2px}.booking-checkout-page .checkout-services-shell .service-row{display:flex;flex-direction:column;align-items:stretch;gap:0;min-height:0}.booking-checkout-page .checkout-services-shell .service-row-media{position:relative;display:block;flex:none;width:100%;max-width:none;margin:0;padding:0;overflow:hidden;border-radius:0;text-decoration:none;color:inherit}.booking-checkout-page .checkout-services-shell .service-row-media:before{content:"";display:block;width:100%;aspect-ratio:var(--service-list-image-ratio)}.booking-checkout-page .checkout-services-shell .service-row-media .service-image{position:absolute;inset:0;width:100%;height:100%;margin:0;overflow:hidden;background:var(--soft)}.booking-checkout-page .checkout-services-shell .service-row-media .service-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.booking-checkout-page .checkout-services-shell .service-row-copy{display:flex;flex:1 1 auto;flex-direction:column;justify-content:flex-start;gap:6px;min-width:0;padding:var(--service-cell-pad)}.booking-checkout-page .checkout-services-shell .service-row-action{display:flex;flex:none;flex-direction:column;justify-content:space-between;align-items:stretch;gap:10px;min-width:0;padding:var(--service-cell-pad)}.booking-checkout-page .checkout-services-shell .service-category-line{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin:0}.booking-checkout-page .checkout-services-shell .service-category-line .service-type{margin:0}.booking-checkout-page .checkout-services-shell .service-category-badges{display:flex;flex-wrap:wrap;align-items:center;gap:6px;position:static;max-width:none}.booking-checkout-page .checkout-services-shell .service-category-badges .badge{position:static;left:auto;bottom:auto;padding:5px 10px;border-radius:999px;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;line-height:1.2;background:#f2e5dcf2;color:var(--brown)}.booking-checkout-page .checkout-services-shell .service-row-copy h2{margin:0;font-size:clamp(18px,2.2vw,24px);line-height:1.12;letter-spacing:-.03em}.booking-checkout-page .checkout-services-shell .service-row-copy .description{display:-webkit-box;margin:0;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:13px;line-height:1.5}.booking-checkout-page .checkout-services-shell .service-row-action .service-pricing{margin:0;padding:0;border-radius:var(--service-inner-radius);background:transparent}.booking-checkout-page .checkout-services-shell .service-pricing-top{display:flex;flex-direction:column;align-items:flex-start;gap:6px;margin-bottom:4px}.booking-checkout-page .checkout-services-shell .service-pricing-duration{font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#9d7362;line-height:1.3;white-space:nowrap}.booking-checkout-page .checkout-services-shell .service-pricing-offer{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:0}.booking-checkout-page .checkout-services-shell .service-pricing-prices{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:flex-start;gap:6px 8px}.booking-checkout-page .checkout-services-shell .service-pricing-prices .current-price{font-size:clamp(20px,2.8vw,26px);line-height:1;white-space:nowrap}.booking-checkout-page .checkout-services-shell .service-pricing-prices .old-price{margin-bottom:0;font-size:13px;white-space:nowrap}.booking-checkout-page .checkout-services-shell .service-pricing-tax{font-size:11px;font-weight:700;line-height:1.3;color:#9d7362;text-align:left;white-space:nowrap}.booking-checkout-page .checkout-services-shell .service-pricing-meta{margin:0;font-size:11px;font-weight:600;line-height:1.35;color:var(--muted)}.booking-checkout-page .checkout-services-shell .service-row-cta{display:flex;width:100%;height:42px;margin-top:0;flex-shrink:0;padding:0 16px;align-items:center;justify-content:center;border-radius:var(--service-inner-radius);font-size:13px;font-weight:900;text-decoration:none}.booking-checkout-page .checkout-services-shell .service-row-cta:hover{color:#fff}.booking-checkout-page .checkout-services-shell .service-row-cta:focus-visible{outline:2px solid var(--brown);outline-offset:2px}.booking-checkout-page .checkout-services-shell--show{--service-list-image-ratio: 16 / 9;--service-card-radius: 30px;--service-inner-radius: 16px;--service-cell-pad: 24px;--service-list-gap: var(--service-cell-pad)}.booking-checkout-page .checkout-services-shell--show .service-card--detail{padding:0;background:transparent;border-radius:0;box-shadow:none;overflow:visible}.booking-checkout-page .checkout-services-shell--show .service-card--detail .service-row--detail{background:var(--card);border-radius:var(--service-card-radius);box-shadow:var(--shadow);overflow:hidden}.booking-checkout-page .checkout-services-shell--show .service-row--detail{display:flex;flex-direction:column;align-items:stretch}.booking-checkout-page .checkout-services-shell--show .service-detail-intro{display:flex;flex-direction:column;align-items:stretch;gap:14px}.booking-checkout-page .checkout-services-shell--show .service-row-media--static{--service-detail-image-max-height: 25vh;position:static;display:block;flex:none;width:100%;max-width:100%;margin:0;padding:var(--service-cell-pad) var(--service-cell-pad) 0;overflow:visible;border-radius:0;cursor:default;pointer-events:none;box-sizing:border-box}.booking-checkout-page .checkout-services-shell--show .service-row-media--static:before{display:none}.booking-checkout-page .checkout-services-shell--show .service-row-media--static .service-image{position:relative;display:block;width:min(100%,var(--service-detail-image-max-height) * 16 / 9);max-width:100%;max-height:var(--service-detail-image-max-height);aspect-ratio:var(--service-list-image-ratio);height:auto;margin:0;overflow:hidden;border-radius:var(--service-inner-radius) var(--service-inner-radius) 0 0;background:var(--soft)}.booking-checkout-page .checkout-services-shell--show .service-row-media--static .service-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.booking-checkout-page .checkout-services-shell--show .service-row-copy--detail{display:flex;flex-direction:column;gap:8px;padding:0 var(--service-cell-pad) var(--service-cell-pad)}.booking-checkout-page .checkout-services-shell--show .service-detail-title{margin:0;font-size:clamp(20px,3vw,28px);line-height:1.12;letter-spacing:-.03em}.booking-checkout-page .checkout-services-shell--show .description--detail{display:block;margin:0;max-width:42rem;overflow:visible;font-size:14px;line-height:1.6;color:var(--muted);-webkit-line-clamp:unset}.booking-checkout-page .checkout-services-shell--show .quick-points--detail{margin:4px 0 0}.booking-checkout-page .checkout-services-shell--show .service-row-action--detail{display:flex;flex-direction:column;justify-content:flex-start;gap:12px;padding:var(--service-cell-pad);border-top:1px solid var(--line)}.booking-checkout-page .checkout-services-shell--show .service-detail-actions{display:flex;flex-direction:column;gap:16px;width:100%}.booking-checkout-page .checkout-services-shell--show .service-detail-purchase,.booking-checkout-page .checkout-services-shell--show .service-detail-upgrade{display:flex;flex-direction:column;min-width:0}.booking-checkout-page .checkout-services-shell--show .service-detail-purchase,.booking-checkout-page .checkout-services-shell--show .service-detail-upgrade{gap:12px}.booking-checkout-page .checkout-services-shell--show .service-detail-actions--has-upgrade .service-detail-purchase .service-pricing,.booking-checkout-page .checkout-services-shell--show .service-detail-actions--has-upgrade .service-detail-upgrade .service-upgrade-offer{flex:1 1 auto}.booking-checkout-page .checkout-services-shell--show .service-detail-primary-btn{width:100%;height:42px;margin:0;border-radius:var(--service-inner-radius);font-size:13px;font-weight:900}.booking-checkout-page .checkout-services-shell--show .service-detail-primary-btn--outline{border:2px solid var(--brown);background:transparent;color:var(--brown);box-sizing:border-box}.booking-checkout-page .checkout-services-shell--show .service-detail-primary-btn--outline:hover{background:#7d4f3f14;color:var(--brown)}.booking-checkout-page .checkout-services-shell--show .service-upgrade-offer{display:flex;flex-direction:column;gap:10px;margin-top:0;padding:16px;border:1px solid rgba(125,79,63,.14);border-radius:var(--service-inner-radius);background:linear-gradient(180deg,#fbf4ef,#f6efe9)}.booking-checkout-page .checkout-services-shell--show .service-upgrade-offer__title{margin:0;font-size:clamp(17px,2.6vw,22px);font-weight:900;line-height:1.22;letter-spacing:-.025em;color:var(--brown-dark)}.booking-checkout-page .checkout-services-shell--show .service-upgrade-offer__description{margin:0;font-size:13px;line-height:1.5;color:var(--muted)}.booking-checkout-page .checkout-services-shell--show .service-upgrade-offer__extra{margin:0;font-size:14px;line-height:1.4;color:var(--brown-dark)}.booking-checkout-page .checkout-services-shell--show .service-upgrade-offer__extra strong{font-size:18px;font-weight:900;color:var(--brown)}.booking-checkout-page .checkout-services-shell--show .service-detail-primary-btn--upgrade{flex-shrink:0}.booking-checkout-page .checkout-services-shell--show .expect-section{margin-top:var(--service-list-gap);padding:var(--service-cell-pad);border-radius:var(--service-card-radius)}.booking-checkout-page .upgrade-box{grid-template-columns:1fr;gap:10px;padding:14px 16px;margin-bottom:12px}.booking-checkout-page .secondary-btn{display:none}.booking-checkout-page .upgrade-box .checkout-text-link{margin-top:4px}.booking-checkout-page .expect-section{margin-top:16px;padding:20px}.booking-checkout-page .expect-header h2{font-size:20px}.booking-checkout-page .layout.checkout-schedule{display:grid;grid-template-columns:minmax(0,280px) 1fr;gap:20px;align-items:start}.booking-checkout-page .calendar-card{padding-bottom:0}.booking-checkout-page .schedule-times-panel{margin-top:8px;margin-bottom:24px}.booking-checkout-page .schedule-times-panel--locked{padding:20px 20px 24px;border-radius:24px;background:#fcf7f3;border:1px dashed rgba(125,79,63,.16)}.booking-checkout-page .schedule-times-hint h3{margin:0 0 6px;font-size:18px;font-weight:800;letter-spacing:-.02em;color:var(--brown-dark)}.booking-checkout-page .schedule-times-hint p{margin:0;font-size:14px;line-height:1.5;color:var(--muted)}.booking-checkout-page .schedule-times-loading{margin:0;font-size:14px;line-height:1.5;color:var(--muted);font-weight:600}.booking-checkout-page .schedule-continue-bar{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:14px;margin:0;padding:0;border-top:1px solid var(--line);background:transparent;border-left:0;border-right:0;border-bottom:0;opacity:0;visibility:hidden;max-height:0;overflow:hidden;border-top-width:0;pointer-events:none;transition:opacity .2s ease,max-height .2s ease,margin .2s ease,padding .2s ease,visibility .2s ease}.booking-checkout-page .schedule-continue-bar.is-ready{opacity:1;visibility:visible;max-height:120px;margin-top:22px;margin-bottom:24px;padding-top:18px;border-top-width:1px;pointer-events:auto;overflow:visible}.booking-checkout-page .schedule-continue-summary{flex:1;min-width:0;padding:0;border-radius:0;background:transparent;border:0;box-shadow:none;font-size:14px;font-weight:600;line-height:1.4;color:var(--brown-dark);text-align:left}.booking-checkout-page .schedule-continue-btn{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;min-width:132px;height:44px;margin:0;padding:0 22px;border:0;border-radius:999px;background:var(--brown);color:#fff;font-family:inherit;font-size:14px;font-weight:800;line-height:1;cursor:pointer;box-shadow:none;transition:opacity .18s ease,background .18s ease}.booking-checkout-page .schedule-continue-btn:hover:not(:disabled){background:#6a4335}.booking-checkout-page .schedule-continue-btn:disabled{opacity:.45;cursor:not-allowed}.booking-checkout-page .calendar-header h1{font-size:clamp(20px,4vw,26px);margin-bottom:6px}.booking-checkout-page .calendar-header p{font-size:14px;margin:0}.booking-checkout-page .day.selected{background:var(--brown);color:#fff;box-shadow:none}.booking-checkout-page .time-slot.active{background:var(--brown);border-color:var(--brown);color:#fff;box-shadow:none}.booking-checkout-page .time-slot--held .time-slot-held-label{display:block;font-size:9px;font-weight:700;line-height:1.2;opacity:.85}@media(max-width:900px){.booking-checkout-page .layout.checkout-schedule{grid-template-columns:1fr}.booking-checkout-page .schedule-continue-bar.is-ready{flex-direction:column;align-items:stretch;gap:12px}.booking-checkout-page .schedule-continue-btn{width:100%}}@media(min-width:1041px){.booking-checkout-page .checkout-services-shell--index .service-row{flex-direction:row;align-items:stretch;min-height:0}.booking-checkout-page .checkout-services-shell--index .service-card--row.is-shuffle-reverse .service-row{flex-direction:row-reverse}.booking-checkout-page .checkout-services-shell--index .service-row-media{flex:0 0 clamp(220px,28vw,320px);width:clamp(220px,28vw,320px);align-self:stretch;min-height:100%}.booking-checkout-page .checkout-services-shell--index .service-row-media:before{display:none}.booking-checkout-page .checkout-services-shell--index .service-row-copy{flex:1 1 0;align-self:stretch;min-height:0;overflow:hidden;justify-content:flex-start;gap:4px}.booking-checkout-page .checkout-services-shell--index .service-row-action{flex:0 0 min(32%,240px);align-self:stretch;min-height:0}}@media(min-width:768px){.booking-checkout-page .checkout-services-shell--show .service-detail-intro{flex-direction:row;align-items:flex-start;gap:clamp(16px,2.5vw,32px);padding:var(--service-cell-pad) var(--service-cell-pad) 0}.booking-checkout-page .checkout-services-shell--show .service-row-media--static{flex:0 0 auto;width:auto;padding:0}.booking-checkout-page .checkout-services-shell--show .service-row-copy--detail{flex:1 1 0;min-width:0;padding:0}.booking-checkout-page .checkout-services-shell--show .description--detail{max-width:none}.booking-checkout-page .checkout-services-shell--show .service-detail-actions--has-upgrade{flex-direction:row;align-items:stretch;gap:clamp(16px,2.5vw,24px)}.booking-checkout-page .checkout-services-shell--show .service-detail-actions--has-upgrade .service-detail-purchase,.booking-checkout-page .checkout-services-shell--show .service-detail-actions--has-upgrade .service-detail-upgrade{flex:1 1 0;align-self:stretch;min-height:100%}.booking-checkout-page .checkout-services-shell--show .service-detail-actions:not(.service-detail-actions--has-upgrade) .service-detail-purchase{flex:0 0 50%;max-width:50%}}@media(max-width:980px){.booking-checkout-page .booking-checkout-main.page{box-sizing:border-box;width:100%;max-width:100%;padding-top:16px;padding-bottom:36px;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}}.confirm-page{max-width:1240px;margin:0 auto;padding:0}.confirm-topbar{text-align:center;margin-bottom:30px}.confirm-topbar h1{margin:0 0 8px;font-size:42px;letter-spacing:-.04em}.confirm-topbar p{margin:0;color:var(--muted)}.confirm-layout{display:grid;grid-template-columns:1fr 430px;gap:22px}.confirm-content{display:flex;flex-direction:column;gap:18px}.confirm-card{background:var(--card);border-radius:30px;padding:24px;box-shadow:var(--shadow)}.confirm-section-title{margin:0 0 18px;font-size:30px;letter-spacing:-.04em}.confirm-contact-box{display:flex;align-items:center;gap:18px;padding:18px;border-radius:22px;background:#fcf7f3}.confirm-avatar{width:56px;height:56px;border-radius:18px;background:var(--soft);display:flex;align-items:center;justify-content:center;font-weight:900;color:var(--brown)}.confirm-contact-info strong{display:block;margin-bottom:6px;font-size:20px}.confirm-contact-info span{display:block;line-height:1.6;color:var(--muted)}.confirm-note-intro{margin:0 0 12px;color:var(--muted);line-height:1.6}.confirm-note-field{width:100%;min-height:96px;margin:0;padding:14px 16px;border-radius:18px;border:1px solid var(--line);font:inherit;resize:none}.confirm-policy-text{margin:0;line-height:1.8;color:var(--muted)}.confirm-policy-text strong{color:var(--brown-dark)}.confirm-summary{position:sticky;top:24px;height:fit-content}.confirm-appointment-box{display:flex;gap:16px;padding-bottom:20px;margin-bottom:20px;border-bottom:1px solid var(--line)}.confirm-calendar-icon{width:52px;height:52px;border-radius:18px;background:var(--soft);display:flex;align-items:center;justify-content:center;font-size:22px}.confirm-appointment-info{flex:1;min-width:0}.confirm-appointment-info strong{display:block;margin-bottom:8px;font-size:22px}.confirm-appointment-info span{display:block;line-height:1.7;color:var(--muted)}.confirm-appointment-time-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:2px}.confirm-appointment-time-row>span{display:block;line-height:1.7;color:var(--muted)}.confirm-appointment-time-row .confirm-change-time-form{flex-shrink:0;margin:0}.confirm-appointment-time-row .confirm-change-time{display:inline-block;width:auto;margin:0;padding:0;text-align:right;white-space:nowrap}.confirm-service-row{display:flex;justify-content:space-between;gap:16px;padding-bottom:22px;margin-bottom:22px;border-bottom:1px solid var(--line)}.confirm-service-left{display:flex;gap:14px}.confirm-service-avatar{min-width:42px;height:42px;border-radius:50%;background:var(--soft);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:900;color:var(--brown)}.confirm-discount-badge{display:inline-flex;align-items:center;height:26px;padding:0 12px;margin-bottom:10px;border-radius:999px;background:#7d4f3f1a;color:var(--brown);font-size:12px;font-weight:900;letter-spacing:.08em}.confirm-service-info strong{display:block;margin-bottom:8px;line-height:1.5}.confirm-service-info span{color:var(--muted)}.confirm-service-price{text-align:right}.confirm-summary-card{margin:0}.confirm-price-current{font-size:24px;font-weight:900}.confirm-price-old{margin-top:6px;color:#9d7d71;text-decoration:line-through}.confirm-totals{display:flex;flex-direction:column;gap:14px;margin-bottom:24px}.confirm-total-row{display:flex;justify-content:space-between;align-items:center;gap:16px;color:var(--muted)}.confirm-total-row strong{color:var(--brown-dark)}.confirm-total-row.discount-row{color:var(--brown);font-weight:700}.confirm-total-row.discount-row strong{color:var(--brown)}.confirm-total-final{padding-top:18px;margin-top:4px;border-top:1px solid var(--line);font-size:22px;font-weight:900;color:var(--brown-dark)}.confirm-tax-note{margin-bottom:22px;padding:14px 16px;border-radius:18px;background:#fcf7f3;color:var(--muted);font-size:14px;line-height:1.6}.confirm-tax-note strong{color:var(--brown-dark)}.confirm-book-btn{width:100%;height:58px;border:0;border-radius:999px;background:var(--brown);color:#fff;font-size:16px;font-weight:900;cursor:pointer}.confirm-footer-note{margin-top:18px;text-align:center;color:var(--muted);font-size:13px;line-height:1.7}.confirm-change-time-form{margin:0;padding:0}.confirm-change-time{display:inline-block;width:auto;margin:0;padding:0;border:0;background:transparent;text-align:left;font-size:14px;font-weight:600;font-family:inherit;color:var(--muted);text-decoration:underline;text-underline-offset:3px;cursor:pointer}.confirm-change-time:hover{color:var(--brown)}.confirm-status{margin-bottom:16px;padding:12px 16px;border-radius:16px;background:#edf7ef;color:#2f5d3a;font-weight:600}.confirm-countdown-expired{color:#8b3a2f;font-weight:800}@media(min-width:981px){.confirm-topbar{margin-bottom:22px}.confirm-topbar h1{font-size:36px}.confirm-layout{grid-template-columns:1fr 390px;gap:18px}.confirm-summary-card{padding:18px 20px;border-radius:24px}.confirm-summary-card .confirm-section-title{margin-bottom:12px;font-size:24px}.confirm-appointment-box{gap:12px;padding-bottom:14px;margin-bottom:14px}.confirm-calendar-icon{width:44px;height:44px;border-radius:14px;font-size:18px}.confirm-appointment-info strong{margin-bottom:4px;font-size:18px}.confirm-appointment-info span{font-size:14px;line-height:1.45}.confirm-appointment-time-row{gap:8px;margin-bottom:0}.confirm-service-row{gap:12px;padding-bottom:14px;margin-bottom:14px}.confirm-service-left{gap:10px}.confirm-service-avatar{min-width:36px;height:36px;font-size:12px}.confirm-discount-badge{height:22px;margin-bottom:6px;padding:0 10px;font-size:11px}.confirm-service-info strong{margin-bottom:4px;font-size:15px;line-height:1.35}.confirm-service-info span{font-size:13px}.confirm-price-current{font-size:20px}.confirm-price-old{margin-top:2px;font-size:13px}.confirm-totals{gap:8px;margin-bottom:14px;font-size:14px}.confirm-total-final{padding-top:10px;margin-top:0;font-size:18px}.confirm-tax-note{margin-bottom:14px;padding:10px 12px;border-radius:14px;font-size:13px;line-height:1.45}.confirm-book-btn{height:50px;font-size:15px}.confirm-footer-note{margin-top:10px;font-size:12px;line-height:1.45}.confirm-change-time{font-size:13px}}@media(max-width:980px){.confirm-page{min-width:0;overflow-x:clip}.confirm-layout,.confirm-content,.confirm-summary{min-width:0}.confirm-layout{grid-template-columns:1fr}.confirm-summary{position:static}.confirm-topbar h1{font-size:34px}.confirm-appointment-time-row{flex-direction:column;align-items:flex-start;gap:4px}.confirm-avatar,.confirm-service-avatar{display:none}}.booking-success-page{box-sizing:border-box;max-width:980px;margin:0 auto;padding:28px;width:100%}.booking-success-card{background:var(--card);border-radius:34px;padding:42px;box-shadow:var(--shadow);margin-bottom:22px}.booking-success-top{display:flex;align-items:center;gap:18px;margin-bottom:30px}.booking-success-icon{flex-shrink:0;width:64px;height:64px;border-radius:22px;background:#7d4f3f1a;display:flex;align-items:center;justify-content:center;font-size:30px;font-weight:900;color:var(--brown)}.booking-success-copy h1{margin:0 0 8px;font-size:48px;line-height:1.02;letter-spacing:-.04em}.booking-success-copy p{margin:0;color:var(--muted);line-height:1.7}.booking-success-summary{display:grid;grid-template-columns:1fr auto;gap:22px;padding:24px;border-radius:26px;background:#fcf7f3;margin-bottom:20px}.booking-success-summary-left h2{margin:0 0 14px;font-size:28px;letter-spacing:-.03em}.booking-success-line{margin-bottom:10px;color:var(--muted);line-height:1.7}.booking-success-line strong{color:var(--brown-dark)}.booking-success-price{text-align:right}.booking-success-price strong{display:block;font-size:42px;line-height:1;color:var(--brown-dark)}.booking-success-price span{display:block;margin-top:8px;color:var(--muted)}.booking-success-confirmation{padding:20px;border-radius:24px;background:#7d4f3f0f;line-height:1.8;color:var(--muted);margin-bottom:22px}.booking-success-confirmation p{margin:0 0 12px}.booking-success-confirmation p:last-of-type{margin-bottom:0}.booking-success-confirmation strong{color:var(--brown-dark)}.booking-success-email-pill{display:inline-flex;align-items:center;margin-top:14px;padding:10px 14px;border-radius:999px;background:#fff;font-size:14px;font-weight:700;color:var(--brown)}.booking-success-location{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:22px;border-radius:26px;background:#fcf7f3}.booking-success-location-copy strong{display:block;margin-bottom:8px;font-size:22px;letter-spacing:-.03em;color:var(--brown-dark)}.booking-success-location-copy span{display:block;color:var(--muted);line-height:1.7}.booking-success-map-btn{flex-shrink:0;height:52px;padding:0 22px;border-radius:999px;border:0;background:var(--brown);color:#fff;font-size:14px;font-weight:900;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.booking-success-marketing{background:var(--card);border-radius:34px;padding:34px;box-shadow:var(--shadow)}.booking-success-marketing-label{margin-bottom:10px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#9d7362;font-weight:900}.booking-success-marketing h2{margin:0 0 14px;font-size:36px;line-height:1.06;letter-spacing:-.04em}.booking-success-marketing-intro{margin:0 0 24px;max-width:640px;line-height:1.8;color:var(--muted)}.booking-success-marketing-error{margin-bottom:18px;padding:12px 16px;border-radius:16px;background:#fff1ee;color:#b94f35;font-size:14px;font-weight:600}.booking-success-subscribe-success{display:flex;align-items:flex-start;gap:16px;padding:22px;border-radius:26px;background:#edf7ef;border:1px solid rgba(47,93,58,.12)}.booking-success-subscribe-success strong{display:block;margin-bottom:8px;font-size:22px;letter-spacing:-.03em;color:var(--brown-dark)}.booking-success-subscribe-success p{margin:0;line-height:1.7;color:var(--muted)}.booking-success-subscribe-success-icon{flex-shrink:0;width:48px;height:48px;border-radius:16px;background:#2f5d3a1f;color:#2f5d3a;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:900}.booking-success-subscribe-success .booking-success-subscribe-email{display:inline;margin-top:0;height:auto;padding:0;border-radius:0;background:transparent;color:var(--brown);font-weight:700}.booking-success-subscribe-box{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:22px;border-radius:26px;background:#fcf7f3}.booking-success-subscribe-copy strong{display:block;margin-bottom:8px;font-size:22px;letter-spacing:-.03em;color:var(--brown-dark)}.booking-success-subscribe-copy span{display:block;line-height:1.7;color:var(--muted)}.booking-success-subscribe-email{margin-top:14px;display:inline-flex;align-items:center;height:42px;padding:0 16px;border-radius:999px;background:#fff;color:var(--brown);font-size:14px;font-weight:700}.booking-success-subscribe-btn{flex-shrink:0;height:56px;padding:0 24px;border:0;border-radius:999px;background:var(--brown);color:#fff;font-size:15px;font-weight:900;font-family:inherit;cursor:pointer}@media(max-width:760px){.booking-success-page{padding:16px}.booking-success-card,.booking-success-marketing{padding:24px;border-radius:26px}.booking-success-top{align-items:flex-start;gap:14px;margin-bottom:22px}.booking-success-icon{width:52px;height:52px;font-size:24px;border-radius:18px}.booking-success-copy{min-width:0;flex:1}.booking-success-copy h1{font-size:36px;line-height:1.08;letter-spacing:-.03em;overflow-wrap:anywhere}.booking-success-summary,.booking-success-subscribe-box,.booking-success-location{display:block}.booking-success-price{text-align:left;margin-top:20px}.booking-success-map-btn,.booking-success-subscribe-btn{width:100%;margin-top:20px;justify-content:center}.booking-success-marketing h2{font-size:30px}}
