.ribbon-scheduler{flex-direction:column;gap:1rem;display:flex}.ribbon-starter{flex-direction:column;gap:.5rem;display:flex}.ribbon-starter-label{color:var(--sui-text-muted);font-weight:600;font-size:var(--sui-fs-sm);text-transform:uppercase;letter-spacing:.05em}.ribbon-starter-pills{flex-wrap:wrap;gap:.5rem;display:flex}.ribbon-toggle{border:1px solid var(--sui-border);font:inherit;color:var(--sui-text);cursor:pointer;background:0 0;border-radius:999px;align-self:flex-start;padding:.4rem .9rem}.ribbon-toggle:hover{background:#0000000a}.ribbon-prepay-cta{background:var(--cl-accent,#ce756e);border:1px solid var(--cl-accent,#ce756e);font:inherit;color:#fff;cursor:pointer;border-radius:999px;align-self:flex-start;padding:.55rem 1.1rem;font-weight:600;transition:filter .12s}.ribbon-prepay-cta:hover{filter:brightness(1.05)}.ribbon-track{scroll-snap-type:x mandatory;gap:.75rem;padding-bottom:.5rem;display:flex;overflow-x:auto}.ribbon-day{border:1px solid var(--sui-border);background:var(--sui-surface);scroll-snap-align:start;border-radius:.75rem;flex-direction:column;flex:none;gap:.5rem;min-width:9rem;padding:.75rem;display:flex}.ribbon-day-header{font-weight:600;font-size:var(--sui-fs-sm);color:var(--sui-text);border-bottom:1px solid var(--sui-border);padding-bottom:.25rem}.ribbon-day-slots{flex-direction:column;gap:.35rem;display:flex}.slot-pill{border:1px solid var(--sui-border);background:var(--sui-surface);font:inherit;color:var(--sui-text);cursor:pointer;border-radius:999px;align-items:center;gap:.4rem;padding:.45rem .85rem;transition:background-color .12s,border-color .12s;display:inline-flex}.slot-pill:hover{background:#0000000a}.slot-pill.is-selected{border-color:var(--sui-accent);background:var(--sui-accent-soft);color:var(--sui-accent-strong)}.slot-pill.is-premium{border-color:var(--sui-premium)}.slot-pill.is-gated{border-color:var(--sui-premium);color:#6b4f00;background:linear-gradient(135deg,#fffbe6,#fff3b0)}.slot-pill .slot-pill-day{font-size:var(--sui-fs-sm);color:var(--sui-text-muted);margin-right:.25rem}.slot-pill .slot-pill-lock{font-size:var(--sui-fs-sm)}.ribbon-collapsed-hint{font-size:var(--sui-fs-sm);color:var(--sui-text-muted)}.upsell-sheet-backdrop{z-index:1000;background:#00000073;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.upsell-sheet{background:var(--sui-surface);border-radius:1rem;flex-direction:column;gap:1rem;width:100%;max-width:28rem;max-height:90vh;padding:1.5rem;display:flex;overflow-y:auto;box-shadow:0 20px 60px #00000040}.upsell-sheet-header{justify-content:space-between;align-items:center;display:flex}.upsell-sheet-header h3{margin:0}.upsell-close{font-size:var(--sui-fs-2xl);cursor:pointer;color:var(--sui-text-muted);background:0 0;border:0;line-height:1}.upsell-tier-list{flex-direction:column;gap:.75rem;display:flex}.upsell-tier{border:1px solid var(--sui-border);border-radius:.75rem;flex-direction:column;gap:.5rem;padding:.85rem;display:flex}.upsell-tier-head{justify-content:space-between;align-items:baseline;display:flex}.upsell-tier-price{color:var(--sui-accent-strong);font-weight:600}.upsell-tier-desc{color:var(--sui-text-muted);font-size:var(--sui-fs-sm);margin:0}.schedule-page-section{padding-block:1rem}.schedule-page-container{width:100%;max-width:960px;margin-inline:auto;padding-inline:0}@media (width>=720px){.schedule-page-container{padding-inline:1rem}}.acuity-embed{flex-direction:column;gap:.75rem;display:flex}.acuity-embed-title{font-size:var(--sui-fs-xl);color:var(--cl-heading);margin:0;font-weight:600}.acuity-embed-intro{color:var(--cl-text,#333);margin:0 0 .5rem}.acuity-embed-frame-wrap{background:var(--cl-bg-white,#fff);border:1px solid var(--cl-border,#e2e8f0);border-radius:10px;width:100%;min-height:600px;position:relative;overflow:hidden}@media (width>=640px){.acuity-embed-frame-wrap{min-height:700px}}@media (width>=1024px){.acuity-embed-frame-wrap{min-height:800px}}.acuity-embed-frame{border:0;width:100%;height:600px;display:block}@media (width>=640px){.acuity-embed-frame{height:700px}}@media (width>=1024px){.acuity-embed-frame{height:800px}}.acuity-embed-skeleton{color:var(--cl-text-light,#666);background:var(--cl-bg-white,#fff);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.acuity-embed-skeleton-branded{background:var(--cl-bg-light,#f5f0f0);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.acuity-embed-skeleton-pulse{background:linear-gradient(135deg,#4d7f990f,#ce756e0f);animation:1.6s ease-in-out infinite acuityEmbedSkeletonPulse;position:absolute;inset:0}.acuity-embed-skeleton-label{font-family:var(--cl-font-family);font-size:var(--sui-fs-md);color:var(--cl-primary,#4d7f99);letter-spacing:.02em;background:var(--cl-bg-white,#fff);box-shadow:var(--cl-shadow-sm,0 2px 8px #0000000f);border-radius:999px;margin:0;padding:.5rem 1rem;font-weight:600;position:relative}@keyframes acuityEmbedSkeletonPulse{0%,to{opacity:.6}50%{opacity:1}}@media (prefers-reduced-motion:reduce){.acuity-embed-skeleton-pulse{opacity:.8;animation:none}}.acuity-embed-error{text-align:center;background:var(--cl-bg-white,#fff);z-index:1;flex-direction:column;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:absolute;inset:0}.acuity-embed-newtab-hint{font-size:var(--sui-fs-sm);color:var(--cl-text-light,#666);text-align:center;margin:0}.acuity-embed-newtab,.acuity-embed-redirect{text-align:center;padding:2rem 1rem}.appt-list{flex-direction:column;gap:2rem;display:flex}.appt-section-title{font-size:var(--sui-fs-md);color:var(--cl-heading);letter-spacing:.01em;margin:0 0 .75rem;font-weight:600}.appt-empty,.appt-empty-section{background:var(--cl-bg-white,#fff);border:1px dashed var(--cl-border,#e2e8f0);text-align:center;color:var(--cl-text-light,#666);border-radius:10px;padding:1.5rem}.appt-empty .btn{margin-top:.75rem}.appt-card-grid{grid-template-columns:1fr;gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.appt-card-grid-muted .appt-card{background:var(--cl-bg-light,#f3efec);box-shadow:none}.appt-card-grid-muted .appt-card-when{background:var(--cl-bg-white,#fff);color:var(--cl-text-light,#666)}.appt-card{background:var(--cl-bg-white,#fff);border:1px solid var(--cl-border,#e2e8f0);box-shadow:var(--cl-shadow-sm,0 2px 8px #0000000f);border-radius:12px;grid-template-columns:4.5rem 1fr;align-items:start;gap:1.1rem;padding:1.1rem 1.25rem;display:grid}.appt-card-when{background:var(--cl-bg-light,#f3efec);color:var(--cl-heading);text-align:center;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:.1rem;padding:.5rem .25rem;line-height:1;display:flex}.appt-card-when-month,.appt-card-when-weekday{font-size:var(--sui-fs-xs,12px);letter-spacing:.08em;text-transform:uppercase;font-weight:700}.appt-card-when-month{color:var(--cl-brand-terracotta-text,#975f4a)}.appt-card-when-day{font-size:var(--sui-fs-3xl,32px);padding:.1rem 0;font-weight:700}.appt-card-body{flex-direction:column;gap:.35rem;min-width:0;display:flex}.appt-card-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem .75rem;display:flex}.appt-card-title{font-family:var(--cl-font-family);font-size:var(--sui-fs-lg,18px);color:var(--cl-heading);letter-spacing:0;margin:0;font-weight:600;line-height:1.3}.appt-card-meta{font-size:var(--sui-fs-sm);color:var(--sui-text);margin:0}.appt-card-row{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.appt-card-location,.appt-card-price,.appt-card-date,.appt-card-time{font-size:var(--sui-fs-sm);color:var(--sui-text)}.appt-card-poll-hint,.appt-card-settlement{font-size:var(--sui-fs-sm);color:var(--cl-text-light,#666)}.appt-card-actions{flex-wrap:wrap;align-items:center;gap:.6rem .75rem;margin-top:.6rem;display:flex}.appt-card-cancel{font:inherit;font-size:var(--sui-fs-sm);color:#a83229;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;margin-left:auto;padding:.35rem .25rem;text-decoration:underline}.appt-card-cancel:hover{color:#7f1f18}.appt-card-cancel:focus-visible{outline-offset:2px;border-radius:4px;outline:2px solid #a83229}.appt-forms{background:#fffbf0;border:1px solid #f3dfa1;border-radius:10px;margin-top:.6rem;padding:.7rem .9rem}.appt-forms-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.25rem .75rem;margin-bottom:.35rem;display:flex}.appt-forms-title{font-weight:600;font-size:var(--sui-fs-sm);color:var(--cl-heading)}.appt-forms-count{font-size:var(--sui-fs-sm);color:#8a5a00}.appt-forms-list{margin:0;padding:0;list-style:none}.appt-forms-item{border-top:1px solid #f6e7bd;align-items:center;gap:.6rem;padding:.45rem 0;display:flex}.appt-forms-item:first-child{border-top:0}.appt-forms-dot{border:2px solid #c9a227;border-radius:50%;flex:none;width:.85rem;height:.85rem}.appt-forms-name{min-width:0;font-size:var(--sui-fs-sm);color:var(--sui-text);flex:1}.appt-forms-note{color:var(--cl-text-light,#666);display:block}.appt-forms-link{font-size:var(--sui-fs-sm);color:var(--cl-brand-terracotta-text,#975f4a);white-space:nowrap;border:1px solid;border-radius:999px;flex:none;padding:.3rem .7rem;font-weight:600;text-decoration:none}.appt-forms-link:hover,.appt-forms-link:focus-visible{background:var(--cl-brand-terracotta-text,#975f4a);color:#fff}.appt-card-forms-only{display:block}.appt-card-forms-only .appt-forms{margin-top:0}.appt-todo-summary{font-size:var(--sui-fs-sm);color:var(--sui-text);background:#fffbf0;border:1px solid #f3dfa1;border-radius:10px;margin:0;padding:.75rem 1rem}.appt-card-resume-payment{border:1px solid var(--cl-border);background:#fafafa;border-radius:10px;grid-column:1/-1;margin-top:.75rem;padding:1rem}.appt-card-resume-payment-head{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.75rem;display:flex}.appt-status-chip{font-size:var(--sui-fs-sm);letter-spacing:.01em;border:1px solid #0000;border-radius:999px;align-items:center;padding:.2rem .65rem;font-weight:600;display:inline-flex}.appt-status-ok{color:#1e7a3a;background:#e6f4ea;border-color:#c7e6d2}.appt-status-warn{color:#8a5a00;background:#fff4d6;border-color:#f3dfa1}.appt-status-danger{color:#a83229;background:#fde2e1;border-color:#f6c2bf}.appt-status-neutral{color:#36506c;background:#eef2f7;border-color:#d6deea}.appt-status-muted{color:#6a6a6a;background:#f1f1f1;border-color:#e0e0e0}@media (width<=600px){.appt-card{grid-template-columns:3.5rem 1fr;gap:.8rem;padding:.9rem}.appt-card-when-day{font-size:var(--sui-fs-2xl,24px)}.appt-card-actions .btn{text-align:center;flex:auto}.appt-card-cancel{text-align:center;width:100%;margin-left:0}.appt-forms,.appt-card-actions{margin-left:-4.3rem}}.booking-flow{flex-direction:column;gap:1.25rem;display:flex}.booking-step{background:var(--cl-bg-white,#fff);border:1px solid var(--cl-border,#e2e8f0);box-shadow:var(--cl-shadow-sm,0 2px 8px #0000000f);border-radius:10px;padding:1rem 1.1rem}.booking-step-title{font-size:var(--sui-fs-sm);color:var(--cl-text-light,#666);text-transform:uppercase;letter-spacing:.06em;margin:0 0 .6rem;font-weight:700}.booking-summary{font-size:var(--sui-fs-sm);color:var(--cl-text,#1e131d)}.booking-summary strong{color:var(--cl-heading)}.booking-recs{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.6rem;display:grid}.booking-rec-tile{background:var(--cl-bg,#f8f3f3);border:2px solid var(--cl-border,#e2e8f0);cursor:pointer;font:inherit;color:inherit;text-align:left;border-radius:10px;flex-direction:column;align-items:flex-start;padding:.75rem .85rem;transition:all .15s;display:flex}.booking-rec-tile:hover{border-color:var(--cl-primary,#4d7f99);background:#fff}.booking-rec-tile.selected{border-color:var(--cl-accent,#ce756e);background:#fff;box-shadow:0 0 0 3px #ce756e26}.booking-rec-day{font-size:var(--sui-fs-sm);color:var(--cl-text-light,#666);text-transform:uppercase;letter-spacing:.04em;font-weight:600}.booking-rec-date{font-size:var(--sui-fs-md);color:var(--cl-heading);margin-top:.15rem;font-weight:700}.booking-rec-time{font-size:var(--sui-fs-sm);color:var(--cl-text,#1e131d);margin-top:.2rem}.booking-more-toggle{color:var(--cl-primary,#4d7f99);cursor:pointer;font-weight:600;font-size:var(--sui-fs-sm);background:0 0;border:none;margin-top:.75rem;padding:.35rem 0}.booking-more-toggle:hover{text-decoration:underline}.booking-slot-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.5rem;margin-top:.75rem;display:grid}.step-up-notice{font-size:var(--sui-fs-sm);color:#6b4d00;background:#fff8e1;border:1px solid #f0d97a;border-radius:8px;align-items:flex-start;gap:.6rem;padding:.85rem 1rem;display:flex}.step-up-notice .btn{margin-left:auto}.month-calendar{border:1px solid var(--cl-border,#e3e3e3);background:var(--cl-surface,#fff);border-radius:12px;margin-top:1rem;padding:1rem}.month-calendar-header{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.month-calendar-title{font-size:var(--sui-fs-md);margin:0}.month-calendar-nav{border:1px solid var(--cl-border,#e3e3e3);cursor:pointer;font-size:var(--sui-fs-md);background:0 0;border-radius:6px;padding:.25rem .6rem;line-height:1}.month-calendar-nav:hover{background:var(--cl-surface-alt,#f5f5f5)}.month-calendar-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.month-calendar-dow{text-align:center;font-size:var(--sui-fs-sm);color:var(--cl-text-muted,#666);padding:.25rem 0;font-weight:600}.month-calendar-pad{background:0 0}.month-calendar-day{background:var(--cl-surface-alt,#f5f5f5);cursor:pointer;font-size:var(--sui-fs-sm);border:1px solid #0000;border-radius:6px;flex-direction:column;align-items:center;min-height:44px;padding:.4rem .25rem;display:flex}.month-calendar-day.has-openings{background:#eef5ff}.month-calendar-day.has-openings:hover{background:#dbe9ff}.month-calendar-day.is-selected{background:var(--cl-primary,#2563eb);color:#fff}.month-calendar-day-num{font-size:var(--sui-fs-sm)}.month-calendar-day-count{font-size:var(--sui-fs-sm);opacity:.85}.month-calendar-day-panel{border-top:1px solid var(--cl-border,#e3e3e3);margin-top:1rem;padding-top:.75rem}.month-calendar-day-panel h4{font-size:var(--sui-fs-md);margin:0 0 .5rem}.month-calendar-slot-list{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:.4rem;display:grid}.scheduling-flow{display:block}.scheduling-shared-header{gap:1rem;margin-bottom:1rem;display:grid}.scheduling-shared-header:empty{margin:0;display:none}@media (width>=720px){.scheduling-shared-header{grid-template-columns:1fr 2fr}}.variant{flex-direction:column;gap:1rem;padding:0;scroll-margin-top:80px;display:flex}.variant>h3{font-family:var(--cl-display-font,Georgia, serif);font-weight:600;font-size:var(--sui-fs-2xl);color:var(--cl-heading);margin:0}hr.variant-divider{border:none;border-top:1px solid var(--cl-border);margin:0}.variant-label{background:linear-gradient(135deg, var(--cl-bg-light), var(--cl-bg));border-left:4px solid var(--cl-accent,#ce756e);font-family:var(--cl-font-family);font-size:var(--sui-fs-xl);color:var(--cl-heading);letter-spacing:0;text-transform:none;box-shadow:var(--cl-shadow-sm);border-radius:0 8px 8px 0;margin-top:4rem;padding:1.25rem 1.5rem;font-weight:600;display:block}.provider-tiles{gap:1rem;margin:0;display:grid}.provider-tiles-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.provider-tiles-row{grid-auto-columns:minmax(240px,1fr);grid-auto-flow:column;padding-bottom:.5rem;overflow-x:auto}.provider-tile{appearance:none;cursor:pointer;text-align:left;border:1px solid var(--cl-border);box-shadow:var(--cl-shadow-sm);background:#fff;border-radius:14px;align-items:center;gap:1rem;padding:1.25rem;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex}.provider-tile:hover{border-color:var(--cl-accent);box-shadow:var(--cl-shadow-md);transform:translateY(-1px)}.provider-tile.selected{border-color:var(--cl-accent);box-shadow:0 0 0 3px #ce756e2e, var(--cl-shadow-md);background:#fff}.provider-tile-avatar{color:#fff;background:linear-gradient(135deg,#ce756e,#b8605a);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:64px;height:64px;display:flex;overflow:hidden;box-shadow:inset 0 0 0 3px #ffffff59}.provider-tile-avatar img{object-fit:cover;width:100%;height:100%}.provider-tile-initial{font-family:var(--cl-display-font,Georgia, serif);font-weight:600;font-size:var(--sui-fs-2xl);line-height:1}.provider-tile-body{flex-direction:column;gap:.25rem;min-width:0;display:flex}.provider-tile-name{font-family:var(--cl-font-family);font-size:var(--sui-fs-lg);color:var(--cl-heading);font-weight:600;line-height:1.2}.provider-tile-bio{font-size:var(--sui-fs-sm);color:var(--cl-text-light);line-height:1.4}.appt-tile-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.75rem;display:grid}.appt-tile-grid-collapsed{grid-template-columns:minmax(180px,320px)}.appt-tile-section-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.appt-tile-section-head h3{margin:0}.appt-tile-change-btn{border:1px solid var(--cl-border);color:var(--cl-text);font-size:var(--sui-fs-sm);cursor:pointer;background:0 0;border-radius:999px;padding:.35rem .85rem;font-weight:600;transition:border-color .15s,color .15s,background .15s}.appt-tile-change-btn:hover,.appt-tile-change-btn:focus-visible{border-color:var(--cl-accent);color:var(--cl-accent);outline:none}.location-chip-group{flex-wrap:wrap;gap:.5rem;display:flex}.location-chip{border:1px solid var(--cl-border);color:var(--cl-text);font-size:var(--sui-fs-sm);cursor:pointer;background:#fff;border-radius:999px;align-items:center;gap:.45rem;padding:.5rem .9rem;font-weight:600;transition:border-color .15s,background .15s,color .15s,box-shadow .15s;display:inline-flex}.location-chip:hover{border-color:var(--cl-accent);color:var(--cl-accent)}.location-chip:focus-visible{outline-offset:2px;outline:3px solid #ce756e73}.location-chip.selected{border-color:var(--cl-accent);color:var(--cl-accent);background:#ce756e1a;box-shadow:0 0 0 2px #ce756e2e}.location-chip-icon{font-size:var(--sui-fs-md);line-height:1}.appt-tile{border:1px solid var(--cl-border);box-shadow:var(--cl-shadow-sm);cursor:pointer;text-align:left;background:#fff;border-radius:12px;flex-direction:column;gap:.5rem;padding:.9rem 1rem;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex}.appt-tile:hover{border-color:var(--cl-accent);box-shadow:var(--cl-shadow-md);transform:translateY(-1px)}.appt-tile:focus-visible{outline-offset:2px;outline:3px solid #ce756e73}.appt-tile.selected{border-color:var(--cl-accent);box-shadow:0 0 0 3px #ce756e2e, var(--cl-shadow-md)}.appt-tile.appt-tile-disabled{cursor:not-allowed;opacity:.7}.appt-tile.appt-tile-disabled:hover{border-color:var(--cl-border);box-shadow:var(--cl-shadow-sm);transform:none}.appt-tile-self-paced{background:linear-gradient(135deg,#fff8f5,#fdeee6)}.appt-tile-head{flex-direction:column;gap:.5rem;display:flex}.appt-tile-title{font-family:var(--cl-font-family);font-size:var(--sui-fs-md);color:var(--cl-heading);margin:0;font-weight:600;line-height:1.25}.appt-tile-meta{font-size:var(--sui-fs-sm);color:var(--sui-text);flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.appt-tile-price{color:var(--cl-accent);font-weight:700;font-size:var(--sui-fs-sm)}.appt-tile-badge{font-size:var(--sui-fs-sm);text-transform:uppercase;letter-spacing:.04em;border-radius:999px;align-items:center;padding:.2rem .6rem;font-weight:700;display:inline-flex}.appt-tile-badge-selfpaced{color:#78350f;background:#fde68a}.appt-tile-badge-class{color:#1e3a8a;background:#dbeafe}.appt-tile-cta{font-size:var(--sui-fs-sm);color:var(--cl-accent,#ce756e);letter-spacing:.01em;user-select:none;align-self:flex-start;align-items:center;gap:.35rem;margin-top:auto;padding-top:.4rem;font-weight:600;display:inline-flex}.appt-tile.selected .appt-tile-cta{color:var(--cl-accent,#ce756e)}.appt-tile.selected .appt-tile-cta:before{content:"✓ "}.appt-tile-cta-prepay{color:#8a3f37}.appt-tile-cta-locked{color:var(--cl-text-muted,#6b7280)}.appt-tile-cta-stepup{color:#9a3412}.appt-tile-cta-selfpaced{color:var(--cl-accent,#ce756e)}.appt-tile-short{font-size:var(--sui-fs-sm);color:var(--cl-text);margin:0;line-height:1.5}.appt-tile-expand{font-size:var(--sui-fs-sm);color:var(--cl-primary);cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:0;text-decoration:underline}.appt-tile-expand:hover{color:var(--cl-primary-dark)}.appt-tile-long{border-top:1px solid var(--cl-border-light);font-size:var(--sui-fs-sm);color:var(--cl-text-light);padding-top:.75rem}.appt-tile-long p{margin:0 0 .5rem}.eligibility-banner{flex-direction:column;gap:.75rem;display:flex}.eligibility-blockers{color:#7f1d1d;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:1rem 1.25rem}.eligibility-blockers ul{margin:.5rem 0 0;padding-left:1.25rem}.eligibility-stepup{background:#fffbeb;border:1px solid #fde68a;border-radius:8px;padding:1rem 1.25rem}.eligibility-warning{font-size:var(--sui-fs-sm);background:#fef9c3;border-left:4px solid #facc15;border-radius:0 8px 8px 0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex}.eligibility-warning-cta{flex-shrink:0}.btn.btn-sm{font-size:var(--sui-fs-sm);padding:.375rem .75rem}.appt-unpaid-section{background:#fef2f2;border:1px solid #fecaca;border-radius:12px;margin-top:1.5rem;padding:1rem 1.25rem;scroll-margin-top:80px}.appt-unpaid-section.appt-unpaid-focus{animation:1.6s ease-out apptUnpaidFlash}@keyframes apptUnpaidFlash{0%,30%{box-shadow:0 0 0 4px #dc262640}to{box-shadow:0 0 #dc262600}}.appt-unpaid-summary{color:#7f1d1d;margin:0 0 .75rem}.appt-card-unpaid{background:#fff;border-color:#fecaca}.appt-card-price-detail{color:var(--cl-text-muted,#666);font-weight:400}.appt-tile-grid-needs-verify{filter:blur(2px)grayscale(.4);opacity:.55;pointer-events:none;user-select:none;position:relative}.appt-tile-grid-needs-verify:after{content:"";border-radius:inherit;pointer-events:none;background:repeating-linear-gradient(135deg,#00000005,#00000005 12px,#0000000a 12px 24px);position:absolute;inset:0}.existing-appts-panel{border:1px solid var(--cl-border);box-shadow:var(--cl-shadow-sm);background:#fff;border-radius:12px;padding:1rem 1.25rem}.existing-appts-panel h3{font-size:var(--sui-fs-md);color:var(--cl-heading);margin:0 0 .75rem}.existing-appts-panel ul{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.existing-appts-panel li{font-size:var(--sui-fs-sm);color:var(--cl-text);justify-content:space-between;gap:.75rem;display:flex}.existing-appt-state{font-size:var(--sui-fs-sm);text-transform:uppercase;letter-spacing:.04em;border-radius:999px;padding:.15rem .6rem;font-weight:700}.state-pending{color:#78350f;background:#fef3c7}.state-confirmed{color:#064e3b;background:#d1fae5}.state-cancelled{color:#991b1b;background:#fee2e2}.calendar-first-row{grid-template-columns:1fr;gap:1.5rem;display:grid}@media (width>=900px){.calendar-first-row{grid-template-columns:280px 1fr}}.calendar-first-filters select{border:1px solid var(--cl-border);width:100%;font-size:var(--sui-fs-sm);background:#fff;border-radius:8px;padding:.6rem .75rem;font-family:inherit}.calendar-first-filters label{font-size:var(--sui-fs-sm);color:var(--cl-text-light);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.5rem;font-weight:600;display:block}.calendar-first-cal{border:1px solid var(--cl-border);box-shadow:var(--cl-shadow-sm);background:#fff;border-radius:12px;padding:1rem}.wizard-steps{flex-wrap:wrap;gap:.5rem;margin:0 0 1.5rem;padding:0;list-style:none;display:flex}.wizard-steps li{border:1px solid var(--cl-border);min-width:120px;font-size:var(--sui-fs-sm);color:var(--cl-text-muted);text-align:center;background:#fff;border-radius:999px;flex:auto;padding:.75rem 1rem;font-weight:600;transition:all .15s}.wizard-steps li.active{background:var(--cl-accent);border-color:var(--cl-accent);color:#fff;box-shadow:var(--cl-shadow-sm)}.grid-row{grid-template-columns:1fr;gap:1.5rem;display:grid}@media (width>=1000px){.grid-row{grid-template-columns:1.1fr 1.5fr 1.3fr}}.grid-col{background:var(--cl-bg-light);border-radius:12px;padding:1.25rem}.grid-col h3{margin-top:0}.booking-footer{border-top:1px solid var(--cl-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-top:auto;padding-top:1.5rem;display:flex}.booking-footer .btn-lg{font-size:var(--sui-fs-md);padding:.85rem 1.75rem}.variant-footer{background:var(--cl-bg-light);text-align:center;border-radius:12px;margin-top:4rem;padding:2.5rem}.variant-footer h2{font-family:var(--cl-display-font,Georgia, serif);font-size:var(--sui-fs-2xl);color:var(--cl-heading);margin:0 0 1rem}.muted{color:var(--cl-text-muted);font-size:var(--sui-fs-sm)}.credit-banner{color:#78350f;font-size:var(--sui-fs-sm);background:linear-gradient(135deg,#fff7ed,#fef3c7);border:1px solid #fde68a;border-radius:8px;align-items:center;gap:.75rem;margin-bottom:1rem;padding:.75rem 1rem;display:flex}.credit-banner-icon{font-size:var(--sui-fs-md);color:#d97706}.btn-prepay{background:linear-gradient(135deg, var(--cl-accent,#ce756e), #b85a52);color:#fff;border:none;font-weight:600}.btn-prepay:hover{filter:brightness(1.05)}[data-membership-locked=true]{background:var(--cl-bg-light,#f9fafb);color:var(--cl-text-muted,#6b7280);border:1px dashed var(--cl-border,#d1d5db);cursor:not-allowed}.provider-filter-hint{font-size:var(--sui-fs-sm);color:var(--cl-text-muted,#6b7280);font-weight:400}.prepay-dialog-backdrop{z-index:1000;background:#1118278c;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.prepay-dialog{background:#fff;border-radius:12px;flex-direction:column;gap:1rem;width:100%;max-width:480px;padding:1.5rem 1.5rem 1.25rem;display:flex;box-shadow:0 20px 50px #00000040}.prepay-dialog-head{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.prepay-dialog-head h2{font-size:var(--sui-fs-lg);font-family:var(--cl-font-family);color:var(--cl-heading);margin:0;font-weight:600}.prepay-dialog-close{font-size:var(--sui-fs-2xl);cursor:pointer;color:var(--cl-text-muted,#6b7280);background:0 0;border:none;padding:.25rem .5rem;line-height:1}.prepay-dialog-lede{font-size:var(--sui-fs-sm);color:var(--cl-text);margin:0}.prepay-dialog-loading{color:var(--cl-text-muted,#6b7280)}.prepay-dialog-actions{justify-content:flex-end;gap:.75rem;margin-top:.5rem;display:flex}.prepay-dialog-success{text-align:center;color:#047857;padding:1rem;font-weight:500}.digital-intake-invite{background:var(--cl-bg-light,#f9fafb);border:1px solid var(--cl-border,#d1d5db);border-radius:8px;padding:1.25rem 1.5rem}.digital-intake-invite p{color:var(--cl-text,#374151);margin:0 0 1rem}.digital-intake-invite-secondary{font-size:var(--sui-fs-sm);color:var(--cl-text-muted,#6b7280);margin:1rem 0 0!important}.forms-gate-dialog-backdrop{z-index:1000;background:#1118278c;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.forms-gate-dialog{background:#fff;border-radius:12px;flex-direction:column;gap:1rem;width:100%;max-width:520px;padding:1.5rem 1.5rem 1.25rem;display:flex;box-shadow:0 20px 50px #00000040}.forms-gate-dialog-head{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.forms-gate-dialog-head h2{font-size:var(--sui-fs-lg);font-family:var(--cl-font-family);color:var(--cl-heading);margin:0;font-weight:600}.forms-gate-dialog-lede{font-size:var(--sui-fs-sm);color:var(--cl-text);margin:0}.forms-gate-dialog-list{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.forms-gate-dialog-list li{border:1px solid var(--cl-border,#d1d5db);border-radius:8px;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;display:flex}.forms-gate-dialog-item-label{color:var(--cl-text,#374151);font-weight:500}.forms-gate-dialog-item-cta{white-space:nowrap;font-size:var(--sui-fs-sm);padding:.5rem 1rem}.forms-gate-dialog-actions{justify-content:flex-end;margin-top:.25rem;display:flex}.scheduling-empty-request{border:1px dashed var(--cl-border,#d1d5db);text-align:center;border-radius:8px;margin-top:.75rem;padding:1rem}.scheduling-empty-request p{color:var(--cl-text,#374151);margin:0 0 .75rem}.request-appointment-toggle{color:var(--cl-accent,#2563eb);font-size:var(--sui-fs-sm);cursor:pointer;background:0 0;border:none;margin-top:.75rem;padding:0;text-decoration:underline;display:inline-block}.request-appointment-section{border:1px solid var(--cl-border,#d1d5db);background:var(--cl-surface,#fff);border-radius:10px;margin-top:1rem;padding:1.25rem}.request-appointment-form h3{margin:0 0 .5rem}.request-appointment-form .request-appointment-intro,.request-appointment-form .form-group{margin:0 0 1.25rem}.request-appointment-form fieldset{border:0;min-width:0;margin:0 0 1.25rem;padding:0}.request-appointment-form legend{font-size:var(--sui-fs-md);color:var(--cl-heading);margin:0 0 .5rem;padding:0;font-weight:600}.request-appointment-form .request-appointment-window-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;max-width:28rem;display:grid}.request-appointment-window-pill{border:1px solid var(--cl-border,#d1d5db);background:var(--cl-bg-white,#fff);min-height:44px;color:var(--cl-text);font-family:inherit;font-size:var(--sui-fs-sm);white-space:nowrap;cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:.4rem;padding:.4rem .25rem;display:inline-flex;position:relative}.request-appointment-window-pill:hover{border-color:var(--cl-brand-terracotta-text)}.request-appointment-window-pill.selected{background:var(--cl-brand-terracotta-text);border-color:var(--cl-brand-terracotta-text);color:var(--cl-button-text);font-weight:700}.request-appointment-window-pill.selected:before{content:"";border:2px solid;border-width:0 2px 2px 0;width:.3em;height:.62em;margin-top:-.15em;transform:rotate(45deg)}.request-appointment-form .form-group textarea{min-height:5.5rem;display:block}.request-appointment-form .char-count,.request-appointment-form .request-appointment-submit-hint{font-size:var(--sui-fs-sm);text-align:right;color:var(--cl-text-light);margin:.25rem 0 0;line-height:1.3}.request-appointment-form .request-appointment-submit-hint{text-align:left;margin:0 0 .6rem}.request-appointment-form .radio-label{min-height:44px;font-size:var(--sui-fs-md);color:var(--cl-text);cursor:pointer;align-items:center;gap:.5rem;margin:0 1.5rem 0 0;font-weight:400;display:inline-flex}.request-appointment-form .radio-label input{width:1.15rem;height:1.15rem;accent-color:var(--cl-brand-terracotta-text);margin:0}.request-appointment-form .request-appointment-contact-pref:has(+.form-group){margin-bottom:.5rem}.request-appointment-form .request-appointment-contact-pref+.form-group{max-width:20rem}.request-appointment-actions{flex-wrap:wrap;gap:.75rem;display:flex}.request-appointment-actions button[type=submit],.request-appointment-cancel,.request-appointment-dismiss{border:1px solid var(--cl-brand-terracotta-text);min-height:44px;color:var(--cl-brand-terracotta-text);font-family:var(--cl-font-family);font-size:var(--sui-fs-md);cursor:pointer;transition:background-color var(--cl-transition), border-color var(--cl-transition), color var(--cl-transition);background:0 0;border-radius:50px;padding:.75rem 1.75rem;font-weight:600;line-height:1.2}.request-appointment-cancel:hover,.request-appointment-dismiss:hover{background-color:color-mix(in srgb, var(--cl-brand-terracotta) 8%, transparent);border-color:var(--cl-primary-dark);color:var(--cl-primary-dark)}.request-appointment-actions button[type=submit]{background:var(--cl-accent);border-color:var(--cl-accent);color:var(--cl-button-text)}.request-appointment-actions button[type=submit]:hover:not(:disabled){background:var(--cl-button-hover);border-color:var(--cl-button-hover)}.request-appointment-actions button[type=submit]:disabled{background:var(--cl-bg-light);border-color:var(--cl-brand-taupe);color:var(--cl-text-light);cursor:not-allowed}.request-appointment-window-pill:focus-visible,.request-appointment-form .radio-label input:focus-visible,.request-appointment-actions button[type=submit]:focus-visible,.request-appointment-cancel:focus-visible,.request-appointment-dismiss:focus-visible{outline:2px solid var(--cl-brand-terracotta-text);outline-offset:2px;box-shadow:0 0 0 4px color-mix(in srgb, var(--cl-brand-terracotta) 30%, transparent)}@media (width<=480px){.request-appointment-form .request-appointment-window-grid{gap:.4rem}.request-appointment-window-pill{padding-inline:.1rem}.request-appointment-window-pill.selected:before{border:1.5px solid var(--cl-bg-white,#fff);background:var(--cl-brand-terracotta-text);border-radius:50%;width:1.1rem;height:1.1rem;margin:0;position:absolute;top:-.35rem;right:-.15rem;transform:none}.request-appointment-window-pill.selected:after{content:"";border:solid var(--cl-button-text);border-width:0 2px 2px 0;width:.26rem;height:.52rem;position:absolute;top:-.12rem;right:.27rem;transform:rotate(45deg)}.request-appointment-actions button[type=submit],.request-appointment-cancel{white-space:nowrap;flex:100%;padding-inline:.75rem}}.request-appointment-success,.request-appointment-pending{text-align:center;padding:1rem}.request-appointment-success p,.request-appointment-pending p{margin:0 0 1rem}.appt-card.appt-card-focus{outline:3px solid var(--cl-primary,#b5651d);outline-offset:2px;animation:1.6s ease-out apptFocusFlash}@keyframes apptFocusFlash{0%,30%{box-shadow:0 0 0 8px #b5651d40}to{box-shadow:0 0 #b5651d00}}@media (prefers-reduced-motion:reduce){.appt-card.appt-card-focus{animation:none}}
