.amb-menu,.amb-booking-shell{--amb-accent:#c79a22;font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.amb-menu{display:grid;grid-template-columns:repeat(var(--amb-menu-columns,3),minmax(0,1fr));gap:22px}.amb-price-card{position:relative;background:#fff;border:1px solid color-mix(in srgb,var(--amb-accent) 55%,#ddd);border-radius:30px;padding:28px;box-shadow:0 16px 45px rgba(50,36,0,.09);transition:.25s transform,.25s box-shadow}.amb-price-card:hover{transform:translateY(-7px) scale(1.01);box-shadow:0 25px 60px rgba(50,36,0,.15)}.amb-price-card h3{font-size:24px;margin:8px 0}.amb-price{font-size:34px;font-weight:850;margin:18px 0}.amb-price small{font-size:14px;font-weight:500}.amb-price-card ul{padding-left:20px;min-height:90px}.amb-badge{position:absolute;right:18px;top:-12px;background:#111;color:#fff;border:2px solid var(--amb-accent);padding:7px 12px;border-radius:999px;font-size:12px;font-weight:800}.amb-button,.amb-booking-form button{display:inline-flex;justify-content:center;align-items:center;background:linear-gradient(135deg,var(--amb-accent),#f0cf69);color:#111!important;border:0;border-radius:999px;padding:12px 20px;font-weight:800;text-decoration:none;box-shadow:0 8px 20px rgba(120,87,0,.18);cursor:pointer;transition:.2s}.amb-button:hover,.amb-booking-form button:hover{transform:translateY(-2px);filter:brightness(1.04)}.amb-booking-shell{max-width:980px;margin:35px auto;background:#fff;border:1px solid #e6d7aa;border-radius:38px;overflow:hidden;box-shadow:0 25px 80px rgba(0,0,0,.12)}.amb-phone-bar{height:28px;background:#111;display:flex;justify-content:center}.amb-phone-bar span{width:110px;height:18px;background:#000;border-radius:0 0 16px 16px}.amb-steps{display:grid;grid-template-columns:repeat(4,1fr);padding:18px 24px;background:#fbf8ef;border-bottom:1px solid #eadfbd;gap:10px}.amb-steps b{font-size:13px;color:#888}.amb-steps b.active{color:var(--amb-accent)}.amb-booking-form{padding:30px}.amb-step{display:none}.amb-step.active{display:block}.amb-choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:15px;margin:20px 0}.amb-choice{display:flex;flex-direction:column;border:1px solid #ddd4bb;border-radius:20px;padding:18px;cursor:pointer;transition:.2s}.amb-choice:hover,.amb-choice:has(input:checked){border-color:var(--amb-accent);box-shadow:0 8px 25px rgba(130,95,0,.12);transform:translateY(-2px)}.amb-choice input{accent-color:var(--amb-accent)}.amb-choice span{font-size:13px;color:#666;margin-top:5px}.amb-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.amb-fields label{display:grid;gap:7px;font-weight:700}.amb-fields input,.amb-fields select,.amb-fields textarea{border:1px solid #d9cfb2;border-radius:14px;padding:12px;background:#fff;min-height:44px}.amb-fields input:focus,.amb-fields select:focus,.amb-fields textarea:focus{outline:3px solid color-mix(in srgb,var(--amb-accent) 23%,transparent);border-color:var(--amb-accent)}.amb-wide{grid-column:1/-1}.amb-actions{display:flex;justify-content:space-between;margin-top:24px}.amb-slots{display:flex;flex-wrap:wrap;gap:9px;margin:18px 0}.amb-slot{background:#fff!important;border:1px solid var(--amb-accent)!important;color:#222!important}.amb-slot.selected{background:var(--amb-accent)!important}.amb-consent{display:flex;gap:10px;margin-top:20px}.amb-confirm{text-align:center;padding:35px}.amb-confirm span{display:inline-grid;place-items:center;width:80px;height:80px;border-radius:50%;background:var(--amb-accent);font-size:44px;font-weight:900}.amb-layout-rows{grid-template-columns:1fr}.amb-layout-rows .amb-price-card{display:grid;grid-template-columns:2fr 1fr auto;align-items:center;gap:20px}.amb-layout-compact .amb-price-card{padding:18px;border-radius:18px}.amb-layout-carousel{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:15px}.amb-layout-carousel .amb-price-card{min-width:280px;scroll-snap-align:start}@media(max-width:700px){.amb-steps{grid-template-columns:1fr 1fr}.amb-fields{grid-template-columns:1fr}.amb-wide{grid-column:auto}.amb-booking-form{padding:20px}.amb-layout-rows .amb-price-card{grid-template-columns:1fr}}
.amb-steps{grid-template-columns:repeat(5,1fr)}.amb-choice em{margin-top:10px;font-style:normal;font-weight:850;color:var(--amb-accent)}.amb-checkout-card,.amb-portal-card{background:#fff;border:1px solid #e2d4ad;border-radius:24px;padding:22px;box-shadow:0 14px 35px rgba(60,44,0,.08)}.amb-order-summary p{display:flex;justify-content:space-between;border-bottom:1px solid #f1ead7;padding:10px 0;margin:0}.amb-order-summary p:last-child{border:0}.amb-coupon{margin-top:18px}.amb-inline{display:flex;gap:10px}.amb-inline input{flex:1;border:1px solid #d9cfb2;border-radius:14px;padding:12px}.amb-coupon-message,.amb-waitlist-message,.amb-portal-message{display:block;margin-top:8px}.amb-error{color:#b42318}.amb-waitlist-box{margin:18px 0;padding:18px;border-radius:18px;background:#fbf8ef;border:1px dashed var(--amb-accent)}.amb-confirm-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:20px}.amb-portal{max-width:980px;margin:35px auto;font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.amb-portal-hero{background:linear-gradient(135deg,#111,#2b2413);color:#fff;border-radius:30px;padding:30px;margin-bottom:18px;border:1px solid var(--amb-accent)}.amb-portal-hero span{color:var(--amb-accent);font-weight:800;letter-spacing:.12em;font-size:12px}.amb-portal-hero h2{color:#fff;margin:8px 0}.amb-portal-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}.amb-portal-card{margin-bottom:18px}.amb-status-pill,.amb-paid{display:inline-flex;border-radius:999px;padding:8px 13px;background:#fbf4d9;border:1px solid var(--amb-accent);font-weight:800}.amb-paid{background:#eaf8ee}.amb-danger{background:#fff!important;border:1px solid #b42318!important;color:#b42318!important}.amb-timeline{list-style:none;padding:0}.amb-timeline li{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid #eee}.amb-timeline small{color:#777}@media(max-width:700px){.amb-steps{grid-template-columns:1fr 1fr}.amb-portal-grid{grid-template-columns:1fr}.amb-inline{flex-direction:column}}
.amb-doc-list{display:grid;gap:14px}.amb-doc-row{display:flex;justify-content:space-between;align-items:center;padding:14px 0;border-bottom:1px solid rgba(199,154,34,.22)}.amb-doc-row div{display:grid;gap:3px}.amb-doc-row span{font-size:.86rem;opacity:.7}.amb-contract{padding:18px;border:1px solid rgba(199,154,34,.35);border-radius:20px;background:rgba(255,255,255,.75);margin:10px 0 18px}.amb-contract-terms{max-height:260px;overflow:auto;padding:15px;border-radius:14px;background:#fff;margin-bottom:14px}.amb-contract-message{display:block;margin-top:8px}.amb-contract input[type=text],.amb-contract input:not([type]){width:100%}

/* Service profile images */
.amb-service-image{position:relative;width:calc(100% + 56px);margin:-28px -28px 22px;aspect-ratio:16/10;overflow:hidden;border-radius:29px 29px 18px 18px;background:linear-gradient(135deg,#fbf8ef,#ead7a0)}
.amb-service-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.amb-price-card:hover .amb-service-image img{transform:scale(1.045)}
.amb-service-image-placeholder{display:grid;place-items:center;color:var(--amb-accent)}
.amb-service-image-placeholder .dashicons{width:auto;height:auto;font-size:44px}
.amb-choice-image{display:block!important;width:calc(100% + 36px);margin:-18px -18px 14px!important;aspect-ratio:16/10;overflow:hidden;border-radius:19px 19px 12px 12px;background:#f6f0df}
.amb-choice-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.amb-choice:hover .amb-choice-image img,.amb-choice:has(input:checked) .amb-choice-image img{transform:scale(1.04)}
.amb-layout-rows .amb-service-image{width:180px;margin:0;aspect-ratio:4/3;border-radius:20px;grid-row:1/span 2}
.amb-layout-rows .amb-price-card:has(.amb-service-image){grid-template-columns:180px 2fr 1fr auto}
.amb-layout-compact .amb-service-image{width:calc(100% + 36px);margin:-18px -18px 15px;border-radius:17px 17px 10px 10px}
@media(max-width:700px){.amb-layout-rows .amb-price-card:has(.amb-service-image){grid-template-columns:1fr}.amb-layout-rows .amb-service-image{width:calc(100% + 56px);margin:-28px -28px 18px;aspect-ratio:16/10;border-radius:29px 29px 18px 18px}}

@media(max-width:1000px){.amb-menu{grid-template-columns:repeat(min(2,var(--amb-menu-columns,3)),minmax(0,1fr))}}
@media(max-width:700px){.amb-menu{grid-template-columns:1fr}}


/* v3.3.9 — staff profile photos */
.amb-staff-selection{display:flex;align-items:center;gap:10px;margin-top:9px;padding:9px 11px;border:1px solid color-mix(in srgb,var(--amb-accent) 40%,#ddd);border-radius:14px;background:#fffaf0}
.amb-staff-selection img{width:46px;height:46px;border-radius:50%;object-fit:cover;border:2px solid var(--amb-accent)}
.amb-staff-selection strong{font-size:14px}
.amb-staff-profile{display:flex;align-items:center;gap:12px;margin-top:14px}.amb-staff-profile p{margin:0}.amb-staff-photo{width:62px;height:62px;object-fit:cover;border-radius:50%;border:2px solid var(--amb-accent);box-shadow:0 6px 18px rgba(65,46,0,.13)}

/* v3.4.2: selected-service handoff from pricing menus */
.amb-selected-service{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 22px;padding:15px 17px;border:1px solid color-mix(in srgb,var(--amb-accent) 55%,#e8e8e8);border-radius:18px;background:linear-gradient(135deg,#fff 0%,color-mix(in srgb,var(--amb-accent) 10%,#fff) 100%);box-shadow:0 8px 24px rgba(0,0,0,.055)}
.amb-selected-service>span{font-size:11px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:#777}
.amb-selected-service>strong{font-size:17px;color:#222;margin-right:auto}
.amb-change-service{appearance:none;border:1px solid var(--amb-accent);background:#fff;color:#6f5310;border-radius:999px;padding:8px 13px;font-weight:700;cursor:pointer;transition:.2s ease}
.amb-change-service:hover{background:var(--amb-accent);color:#fff;transform:translateY(-1px)}

.amb-payment-pending{margin-top:14px;padding:14px 16px;border:1px solid #c9a227;border-radius:14px;background:linear-gradient(135deg,#fffdf5,#fff8dc);color:#44370d}.amb-payment-pending strong{display:block;color:#8a6a00;margin-bottom:4px}.amb-payment-pending p{margin:0}

/* v3.5.1 checkout payment methods and policy cards */
.amb-checkout-policies{margin:24px 0;padding-top:20px;border-top:1px solid rgba(199,154,34,.28)}
.amb-checkout-policies h3,.amb-payment-methods-wrap h3{margin:0 0 14px;color:#2b2415}
.amb-policy-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:16px}
.amb-policy-card{background:#fffaf0;border:1px solid rgba(199,154,34,.35);border-radius:16px;padding:16px;box-shadow:0 8px 24px rgba(54,39,5,.05)}
.amb-policy-card strong{display:block;color:#8a6512;margin-bottom:7px}
.amb-policy-card p,.amb-policy-card div{margin:0;line-height:1.55;color:#4a4234}
.amb-policy-deposit[data-policy="refundable"]{border-color:#79a875;background:#f6fff5}
.amb-policy-terms-card{grid-column:1/-1}
.amb-consent{display:flex!important;align-items:flex-start;gap:10px;margin:10px 0!important;padding:12px 14px;background:#fff;border:1px solid #e7dcc2;border-radius:12px;font-weight:600}
.amb-consent input{margin-top:3px;accent-color:var(--amb-accent,#c79a22)}
.amb-payment-methods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0 8px}
.amb-payment-method{position:relative;display:block!important;border:2px solid #e7dcc2;border-radius:17px;padding:16px 16px 15px;background:#fff;cursor:pointer;transition:.2s ease;min-height:130px}
.amb-payment-method:hover{transform:translateY(-2px);border-color:var(--amb-accent,#c79a22);box-shadow:0 10px 28px rgba(88,63,8,.1)}
.amb-payment-method:has(input:checked){border-color:var(--amb-accent,#c79a22);background:linear-gradient(145deg,#fffdf7,#fff3cf);box-shadow:0 0 0 3px rgba(199,154,34,.12)}
.amb-payment-method input{position:absolute;opacity:0;pointer-events:none}
.amb-payment-check{position:absolute;right:12px;top:12px;width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:#eee5d2;color:transparent;font-weight:900}
.amb-payment-method:has(input:checked) .amb-payment-check{background:var(--amb-accent,#c79a22);color:#fff}
.amb-payment-method strong{display:block;padding-right:34px;font-size:17px;color:#2d271b;margin-bottom:8px}
.amb-payment-details{line-height:1.5;color:#4e4638;white-space:pre-line;overflow-wrap:anywhere}
.amb-payment-method small{display:block;margin-top:8px;color:#746b5b;white-space:pre-line}
.amb-payment-method em{display:inline-block;margin-top:10px;font-size:11px;font-style:normal;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#8a6512}
.amb-no-payment-message{padding:16px;border-radius:14px;background:#fff7df;border:1px solid rgba(199,154,34,.45);line-height:1.55}
@media(max-width:700px){.amb-policy-cards,.amb-payment-methods{grid-template-columns:1fr}.amb-policy-terms-card{grid-column:auto}}


/* v3.5.4 — booking add-ons and emphasized checkout policies */
.amb-booking-addons{margin:26px 0 8px;padding:20px;border:1px solid rgba(199,154,34,.35);border-radius:20px;background:linear-gradient(180deg,#fffdf8,#fff)}
.amb-section-title>span{display:inline-block;color:#8a6512;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin-bottom:4px}
.amb-section-title h3{margin:0 0 5px;font-size:22px}.amb-section-title p{margin:0 0 16px;color:#6b6253}
.amb-addon-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.amb-addon-card{position:relative;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:16px;border:1px solid #e5dcc8;border-radius:16px;background:#fff;cursor:pointer;transition:.2s ease}
.amb-addon-card:hover{transform:translateY(-2px);border-color:#c79a22;box-shadow:0 10px 28px rgba(85,61,8,.1)}
.amb-addon-card input{position:absolute;opacity:0;pointer-events:none}.amb-addon-check{display:grid;place-items:center;width:25px;height:25px;border:2px solid #d9c99f;border-radius:50%;color:transparent;font-weight:900}
.amb-addon-copy{display:flex;flex-direction:column;gap:4px}.amb-addon-copy strong{font-size:15px}.amb-addon-copy small{color:#6d665a;line-height:1.35}.amb-addon-card em{font-style:normal;font-weight:800;color:#8a6512}
.amb-addon-card:has(input:checked){border-color:#b88710;background:linear-gradient(135deg,#fff8df,#f5d980);box-shadow:0 10px 30px rgba(166,119,5,.16)}
.amb-addon-card:has(input:checked) .amb-addon-check{background:#a97808;border-color:#a97808;color:#fff}
.amb-checkout-policies{margin-top:22px;padding:20px;border:2px solid #c79a22;border-radius:20px;background:#fffdf6;box-shadow:0 12px 34px rgba(88,61,4,.08)}
.amb-checkout-policies>h3{margin-top:0;font-size:23px;color:#6f4f06}.amb-policy-card strong{font-size:15px}.amb-consent{display:flex!important;align-items:flex-start;gap:10px;margin:10px 0;padding:12px;border-radius:12px;background:#fff;border:1px solid #eadcb7;font-weight:650}.amb-consent input{margin-top:3px;accent-color:#b88710}
.amb-no-payment-message{padding:16px;border:1px solid #d9bd6b;border-radius:14px;background:#fff6d8;color:#5b4309;font-weight:650}
.amb-loading-payment{padding:16px;border-radius:14px;background:#fff9e9;color:#72540b}
@media(max-width:700px){.amb-addon-grid{grid-template-columns:1fr}}

/* v3.6.0 — complete policy text display and single acceptance */
.amb-policy-card[hidden],.amb-policy-consent[hidden]{display:none!important}
.amb-policy-card p{margin:0 0 .7em}.amb-policy-card p:last-child{margin-bottom:0}
.amb-policy-card ul,.amb-policy-card ol{margin:.5em 0 .25em 1.25em;padding:0}
.amb-policy-card li{margin:.25em 0}
.amb-policy-consent{margin-top:16px!important;font-size:15px;line-height:1.45}

/* v3.6.3 — quantity add-ons and staff requests */
.amb-staff-request-note{display:block;margin-top:7px;color:#6d665a;line-height:1.4;font-size:12px}
.amb-addon-card{grid-template-columns:auto 1fr auto;align-items:start;cursor:default}
.amb-addon-card .amb-addon-controls{grid-column:1/-1;display:grid;grid-template-columns:minmax(110px,.45fr) minmax(210px,1fr);gap:12px;padding-top:12px;margin-top:4px;border-top:1px solid #eee2c4}
.amb-addon-card .amb-addon-controls label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:800;color:#69500d}
.amb-addon-card .amb-addon-controls input[type=number],.amb-addon-card .amb-addon-controls select{position:static;opacity:1;pointer-events:auto;width:100%;min-height:42px;padding:8px 10px;border:1px solid #d8c89c;border-radius:11px;background:#fff;color:#2a251d}
.amb-addon-card .amb-addon-controls input[type=number]:focus,.amb-addon-card .amb-addon-controls select:focus{outline:2px solid rgba(184,135,16,.24);border-color:#b88710}
.amb-addon-card.selected{border-color:#b88710;background:linear-gradient(135deg,#fff8df,#f5d980);box-shadow:0 10px 30px rgba(166,119,5,.16)}
.amb-addon-card.selected .amb-addon-check{background:#a97808;border-color:#a97808;color:#fff}
.amb-addon-card:not(.selected) .amb-addon-check{color:transparent}
@media(max-width:700px){.amb-addon-card .amb-addon-controls{grid-template-columns:1fr}.amb-addon-card{grid-template-columns:auto 1fr}.amb-addon-card>em{grid-column:2}}

/* v3.6.6 staff self-service availability */
.amb-staff-portal{display:grid;gap:20px}.amb-staff-portal .amb-card{padding:24px}.amb-staff-portal-head{display:flex;gap:16px;align-items:center;margin-bottom:18px}.amb-staff-avatar{width:72px;height:72px;object-fit:cover;border-radius:50%;border:3px solid #d2a72b}.amb-eyebrow{font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:#9b7108}.amb-weekly-hours{display:grid;gap:10px;margin:18px 0}.amb-hours-row{display:grid;grid-template-columns:minmax(180px,1fr) minmax(125px,.7fr) minmax(125px,.7fr);gap:12px;align-items:end;padding:13px;border:1px solid #ead8a4;border-radius:15px;background:#fffdf8}.amb-day-toggle{display:flex!important;align-items:center!important;gap:10px!important;cursor:pointer}.amb-day-toggle input{width:20px!important}.amb-day-toggle small{margin-left:auto;color:#756a54}.amb-btn{display:inline-flex;align-items:center;justify-content:center;padding:11px 18px;border:0;border-radius:999px;background:linear-gradient(135deg,#ae7d00,#e1ba4a);color:#17120a!important;font-weight:800;text-decoration:none;box-shadow:0 8px 18px #8e650026}.amb-notice{padding:14px 16px;border-radius:13px;background:#eef8ef;border:1px solid #9dcca3}.amb-request-list{display:grid;gap:10px}.amb-request-list>div{display:grid;grid-template-columns:1fr auto;gap:4px 12px;padding:13px;border:1px solid #ead8a4;border-radius:13px}.amb-request-list small{grid-column:1/-1}.amb-status{padding:4px 9px;border-radius:999px;font-size:11px;font-weight:800;text-transform:uppercase}.amb-status-pending{background:#fff3c9}.amb-status-approved{background:#e3f6e7}.amb-status-denied{background:#fde5e5}
@media(max-width:700px){.amb-hours-row{grid-template-columns:1fr 1fr}.amb-hours-row .amb-day-toggle{grid-column:1/-1}.amb-staff-portal-head{align-items:flex-start}}


/* v3.6.9 quick schedules and breaks */
.amb-schedule-tools{display:grid;grid-template-columns:minmax(190px,1.3fr) repeat(4,minmax(115px,.65fr));gap:10px;align-items:end;margin:16px 0;padding:16px;border:1px solid #d9bd69;border-radius:16px;background:linear-gradient(135deg,#fffdf7,#fff4cf)}
.amb-schedule-tools>div strong,.amb-schedule-tools>div small{display:block}.amb-schedule-tools>div small{margin-top:5px;color:#74684f}.amb-schedule-tools label{margin:0!important}.amb-schedule-tools .button{min-height:38px}.amb-copy-break-toggle{display:flex!important;align-items:center;gap:7px;min-height:39px}.amb-hours-row{grid-template-columns:minmax(170px,1fr) repeat(5,minmax(115px,.62fr))}.amb-inline-check{display:flex;align-items:center;gap:7px;min-height:40px}.amb-inline-check input{width:auto!important;min-height:auto!important}
@media(max-width:1100px){.amb-schedule-tools{grid-template-columns:repeat(3,1fr)}.amb-schedule-tools>div{grid-column:1/-1}.amb-hours-row{grid-template-columns:repeat(3,1fr)}.amb-hours-row .amb-day-toggle{grid-column:1/-1}}
@media(max-width:700px){.amb-schedule-tools{grid-template-columns:1fr 1fr}.amb-schedule-tools>div,.amb-schedule-tools .button{grid-column:1/-1}.amb-hours-row{grid-template-columns:1fr 1fr}.amb-hours-row .amb-day-toggle{grid-column:1/-1}}

.amb-holiday-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}
@media(max-width:1100px){.amb-holiday-options{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.amb-holiday-options{grid-template-columns:1fr}}
