:root{--glass-canvas: #edf0f5;--workspace-canvas: var(--glass-canvas);--glass-surface: rgb(231 236 244 / 78%);--glass-rim: rgb(255 255 255 / 72%);--glass-highlight: rgb(255 255 255 / 93%);--glass-shadow: inset 0 1px 0 var(--glass-highlight), inset 0 -1px 0 rgb(81 96 113 / 5%), 0 3px 8px rgb(41 54 74 / 8%);--glass-fill: linear-gradient(155deg, rgb(255 255 255 / 94%), rgb(255 255 255 / 40%));--glass-selected: rgb(255 255 255 / 96%);--glass-panel: linear-gradient(135deg, rgb(255 255 255 / 96%), rgb(255 255 255 / 86%));--glass-panel-shadow: inset 0 1px 1px #fff, 0 8px 24px rgb(41 54 74 / 6%);--glass-dialog: rgb(250 251 252 / 94%);--glass-chrome: rgb(233 237 243 / 88%);--glass-sidebar: rgb(224 230 239 / 88%);--glass-nav-selection: rgb(34 45 64 / 12%);--glass-filter: blur(20px) saturate(140%)}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){:root{--glass-fill: #e8edf4;--glass-dialog: #fafbfc;--glass-selected: #fff;--glass-chrome: #e9edf3;--glass-sidebar: #e0e6ef}}@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){:root{--glass-panel: #fff;--glass-panel-shadow: none}:root{--glass-surface: #f5f5f7;--glass-fill: #f5f5f7;--glass-selected: #fff;--glass-dialog: #fff;--glass-chrome: #f5f5f7;--glass-sidebar: #eceef0;--glass-nav-selection: #dcdfe4;--glass-filter: none;--glass-shadow: none;--glass-rim: #9297a1}}@font-face{font-family:Gloft;src:url(/fonts/gloft/gloft-regular.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Gloft;src:url(/fonts/gloft/gloft-bold.otf) format("opentype");font-weight:700;font-style:normal;font-display:swap}html[data-public-scheduling=true]{--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display: "Gloft", Arial, "Helvetica Neue", Helvetica, ui-sans-serif, system-ui, sans-serif;min-height:100%;background:#eef0f5;color-scheme:light;font-family:var(--font-sans)}html[data-public-scheduling=true] body,html[data-public-scheduling=true] #root{min-height:100%;margin:0}.public-scheduling-boot,.public-scheduling-boot *{box-sizing:border-box}.public-scheduling-boot{--public-boot-accent: #7f47dd;--public-boot-soft: #eee3ff;display:grid;min-height:100dvh;place-items:center;padding:24px;background:linear-gradient(145deg,#eef0f5,#f7f8fb 60%,#e8edf5);color:#17131d;font-family:var(--font-sans, Arial, sans-serif)}.public-scheduling-boot.is-jeanne{--public-boot-accent: #312783;--public-boot-soft: #baf5ff}html[data-scheduling-embed=true],html[data-scheduling-embed=true] body,html[data-scheduling-embed=true] #root{min-height:0;background:transparent}html[data-scheduling-embed=true] .public-scheduling-boot{min-height:620px;padding:0;background:transparent}.public-scheduling-boot__card{display:grid;width:min(420px,100%);justify-items:center;gap:10px;border-radius:28px;padding:36px 28px;background:var(--glass-fill);border:1px solid var(--glass-rim);backdrop-filter:var(--glass-filter);-webkit-backdrop-filter:var(--glass-filter);box-shadow:var(--glass-shadow);text-align:center}.public-scheduling-boot__wordmark{margin-bottom:14px;color:var(--public-boot-accent);font-family:var(--font-display, Arial, sans-serif);font-size:22px;font-weight:700}.public-scheduling-boot__spinner{width:26px;height:26px;margin-bottom:4px;border:3px solid var(--public-boot-soft);border-top-color:var(--public-boot-accent);border-radius:999px;animation:public-scheduling-spin .65s linear infinite}.public-scheduling-boot strong{font-size:16px;line-height:1.35}.public-scheduling-boot small{color:#6f6877;font-size:13px;line-height:1.45}@keyframes public-scheduling-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.public-scheduling-boot__spinner{animation-duration:1.4s}}@font-face{font-family:Catherine Work Sans;src:url(/branding/catherine-public/work-sans-variable.ttf) format("truetype");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Catherine Work Sans;src:url(/branding/catherine-public/work-sans-italic-variable.ttf) format("truetype");font-weight:100 900;font-style:italic;font-display:swap}@font-face{font-family:Catherine Cabinet;src:url(/branding/catherine-public/cabinet.woff2) format("woff2");font-weight:100 900;font-display:swap}@font-face{font-family:Catherine Motterdam;src:url(/branding/catherine-public/motterdam.ttf) format("truetype");font-display:swap}.client-portal-shell[data-brand=catherine]{--font-ui:"Catherine Work Sans",Arial,sans-serif;font-family:var(--font-ui)}.client-portal-shell[data-brand=catherine] :is(h1,h2,h3,h4,h5,h6){font-family:Catherine Cabinet,Arial,sans-serif}.client-portal-shell[data-brand=catherine] .signature{font-family:Catherine Motterdam,cursive}.client-portal-shell[data-brand=catherine] .client-login-screen{min-height:100svh;background:linear-gradient(90deg,#07040740,#07040714),url(/branding/catherine-public/login-essentiel-20261022.webp) center 45%/cover #241e24}.client-portal-shell[data-brand=catherine] .client-login-window{background:#ebebeb;border:1px solid #07040714;border-radius:2px;box-shadow:0 20px 70px #07040730}.client-portal-shell[data-brand=catherine] .client-login-header h1{color:#070407;white-space:normal}.client-portal-shell[data-brand=catherine] .client-login-field label{color:#615c60;font-weight:600}.client-portal-shell[data-brand=catherine] .client-login-input{font-family:var(--font-ui);color:#070407;border-radius:2px}.client-portal-shell[data-brand=catherine] .client-login-submit{font-family:var(--font-ui);background:#070407;color:#ebebeb;border-radius:2px;box-shadow:none}.client-portal-shell[data-brand=catherine] .client-login-submit:hover{background:#2c0433}.client-portal-shell[data-brand=catherine] .client-login-text-button{font-family:var(--font-ui);color:#2c0433}.client-portal-shell[data-brand=catherine] .client-login-input:focus{border-color:#2c0433;box-shadow:0 0 0 3px #2c043318}@media(max-width:720px){.client-portal-shell[data-brand=catherine] .client-login-screen{background-position:47% center}}html[data-public-scheduling-brand=catherine] :is(.appointment-booking-page,.appointment-management-page,.public-scheduling-boot){font-family:Catherine Work Sans,Arial,sans-serif}html[data-public-scheduling-brand=catherine] :is(.appointment-booking-page,.appointment-management-page,.public-scheduling-boot) :is(h1,h2,h3,h4,h5,h6,.booking-wordmark,.booking-manage-brand span,.public-scheduling-boot__wordmark){font-family:Catherine Cabinet,Arial,sans-serif}html[data-public-scheduling-brand=catherine]{--catherine-booking-paper: #ebebeb;--catherine-booking-ink: #070407;--catherine-booking-copy: #241e24;--catherine-booking-muted: #766a7b;--catherine-booking-line: #d7cedb;--catherine-booking-violet: #2c0433;--catherine-booking-soft: #dfd7e2;background:var(--catherine-booking-paper)}html[data-public-scheduling-brand=catherine] :is(.appointment-booking-page,.appointment-management-page,.public-scheduling-boot){--booking-accent: var(--catherine-booking-violet) !important;--booking-accent-strong: var(--catherine-booking-ink) !important;--booking-accent-soft: var(--catherine-booking-soft) !important;--booking-page: var(--catherine-booking-paper) !important;--booking-ink: var(--catherine-booking-ink);--booking-copy: var(--catherine-booking-copy);--booking-muted: var(--catherine-booking-muted);--booking-line: var(--catherine-booking-line);--booking-surface: var(--catherine-booking-paper);--booking-radius-sm: 2px;--booking-radius-md: 2px;--booking-radius-lg: 2px;--booking-shadow-card: none;--control-radius: 2px;--control-ink: var(--booking-ink);--control-shadow: none;--glass-rim: var(--booking-line);--glass-fill: var(--booking-surface);--glass-selected: var(--booking-accent-soft);--glass-shadow: none;--glass-filter: none;--public-boot-accent: var(--booking-ink);--public-boot-soft: var(--booking-line);background:var(--booking-page);color:var(--booking-copy)}html[data-public-scheduling-brand=catherine] .appointment-booking-page{display:flex;align-items:flex-start;justify-content:center;padding:48px 24px}html[data-public-scheduling-brand=catherine] :is(.booking-shell,.booking-manage-shell,.booking-complete-card,.booking-page-state,.public-scheduling-boot__card){border:1px solid var(--booking-line);border-radius:2px;background:var(--booking-surface);box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}html[data-public-scheduling-brand=catherine] .booking-shell{width:min(1020px,100%);min-height:560px;grid-template-columns:280px minmax(0,1fr);gap:0;margin:0 auto;overflow:hidden}html[data-public-scheduling-brand=catherine] .booking-info-panel{display:flex;flex-direction:column;gap:24px;padding:30px 28px;border:0;border-radius:0;background:var(--booking-accent);color:var(--booking-page)}html[data-public-scheduling-brand=catherine] .booking-logo-line{min-height:24px;margin-bottom:36px}html[data-public-scheduling-brand=catherine] .booking-logo-line img{max-width:150px;height:24px;filter:brightness(0) invert(1)}html[data-public-scheduling-brand=catherine] .booking-wordmark{font-family:Catherine Work Sans,Arial,sans-serif;color:var(--booking-page);font-size:23px;font-weight:900;letter-spacing:-.065em;line-height:1}html[data-public-scheduling-brand=catherine] .booking-info-panel h1{color:var(--booking-page);font-size:32px;font-weight:400;line-height:1.1;letter-spacing:-.04em}html[data-public-scheduling-brand=catherine] .booking-info-panel .booking-info-details{display:grid;gap:12px;margin:0;color:#ddd0e1;font-size:13px}html[data-public-scheduling-brand=catherine] .booking-info-details svg{flex:none;width:16px;height:16px;color:#c5b0cb}html[data-public-scheduling-brand=catherine] .booking-summary-choice{display:flex;align-items:center;gap:9px;min-width:0}html[data-public-scheduling-brand=catherine] .booking-summary-choice select{min-width:0;width:100%;min-height:36px;border:0;border-radius:2px;background:transparent;color:inherit;font:inherit;padding:6px 0;cursor:pointer}html[data-public-scheduling-brand=catherine] .booking-summary-choice option{background:var(--booking-page);color:var(--booking-ink)}html[data-public-scheduling-brand=catherine] .booking-event-more{color:#ddd0e1;font-size:12px}html[data-public-scheduling-brand=catherine] .booking-event-more summary{padding-block:5px;cursor:pointer}html[data-public-scheduling-brand=catherine] .booking-event-host{margin:12px 0 0;font-size:13px}html[data-public-scheduling-brand=catherine] .booking-preparation{padding:0;border:0;border-radius:0;background:transparent;color:inherit}html[data-public-scheduling-brand=catherine] .booking-preparation :is(strong,p){color:inherit}html[data-public-scheduling-brand=catherine] .booking-brand-photo{display:block;flex:none;width:100%;height:172px;margin-top:auto;object-fit:cover;object-position:50% 51%}html[data-public-scheduling-brand=catherine] :is(.booking-work-panel,.booking-manage-actions){min-height:0;border:0;border-radius:0;background:var(--booking-surface);box-shadow:none}html[data-public-scheduling-brand=catherine] .booking-work-panel{padding:34px 36px 28px}html[data-public-scheduling-brand=catherine] .booking-progress{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}html[data-public-scheduling-brand=catherine] .booking-progress small{display:inline}html[data-public-scheduling-brand=catherine] .booking-step{max-width:none}html[data-public-scheduling-brand=catherine] :is(.booking-step-heading h2,.booking-manage-choice h2,.booking-manage-form h2,.booking-manage-reschedule h2){color:var(--booking-ink);font-size:24px;font-weight:400;line-height:1.2;letter-spacing:-.035em}html[data-public-scheduling-brand=catherine] :is(.booking-complete-card h1,.booking-manage-heading h1){color:var(--booking-ink);font-size:30px;font-weight:400;line-height:1.15}html[data-public-scheduling-brand=catherine] .booking-calendar-layout{grid-template-columns:minmax(0,1fr) 164px;gap:26px;margin-top:30px}html[data-public-scheduling-brand=catherine] .booking-calendar-layout.is-date-only{grid-template-columns:minmax(0,380px)}html[data-public-scheduling-brand=catherine] .booking-calendar-header{grid-template-columns:34px minmax(0,1fr) 34px;gap:4px}html[data-public-scheduling-brand=catherine] .booking-calendar-header strong{text-align:center;font-size:14px;font-weight:400}html[data-public-scheduling-brand=catherine] .booking-calendar-header button{width:34px;height:34px;border:0;border-radius:2px;background:transparent;color:var(--booking-muted);box-shadow:none}html[data-public-scheduling-brand=catherine] .booking-weekdays span{font-size:11px;font-weight:400}html[data-public-scheduling-brand=catherine] .booking-month-grid button{width:40px;height:40px;min-height:40px;border:0;border-radius:2px;background:transparent;box-shadow:none;font-size:13px;font-weight:400;text-decoration:none}html[data-public-scheduling-brand=catherine] .booking-month-grid button.is-available{background:transparent;color:var(--booking-ink);font-weight:600}html[data-public-scheduling-brand=catherine] .booking-month-grid button.is-selected{background:var(--booking-ink);color:var(--booking-page);box-shadow:none}html[data-public-scheduling-brand=catherine] .booking-month-grid button:disabled{background:transparent;color:#aaa1af;opacity:1}html[data-public-scheduling-brand=catherine] :is(.booking-month-grid button,.booking-calendar-header button):hover:not(:disabled){background:var(--booking-accent-soft);color:var(--booking-ink)}html[data-public-scheduling-brand=catherine] .booking-month-grid button.is-selected:hover{background:var(--booking-accent);color:var(--booking-page)}html[data-public-scheduling-brand=catherine] .booking-timezone{display:grid;grid-template-columns:16px minmax(0,1fr);gap:0 8px;border:0;margin-top:22px;padding:0;color:var(--booking-muted);font-size:12px}html[data-public-scheduling-brand=catherine] .booking-timezone>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}html[data-public-scheduling-brand=catherine] .booking-timezone select{grid-column:2;width:100%;min-height:36px;border:0;border-radius:2px;background:transparent;color:inherit;font-size:12px}html[data-public-scheduling-brand=catherine] .booking-calendar-status{margin:16px 0 0;color:var(--booking-muted);font-size:13px}html[data-public-scheduling-brand=catherine] .booking-slots-panel{border:0;padding:0}html[data-public-scheduling-brand=catherine] .booking-date-back{display:none}html[data-public-scheduling-brand=catherine] .booking-slots-panel h3{margin:8px 0 20px;font-family:Catherine Work Sans,Arial,sans-serif;font-size:12px;font-weight:400;letter-spacing:0}html[data-public-scheduling-brand=catherine] .booking-slot-list{grid-template-columns:minmax(0,1fr);max-height:314px;gap:9px;padding:3px 4px}html[data-public-scheduling-brand=catherine] .booking-slot-list button{justify-content:center;flex-wrap:wrap;min-height:44px;border:1px solid #cfc7d3;border-radius:2px;background:#ffffff40;color:#514456;box-shadow:none;font-size:13px;font-weight:500}html[data-public-scheduling-brand=catherine] .booking-slot-list button:hover:not(:disabled):not(.is-selected){border-color:var(--booking-accent);background:var(--booking-accent-soft)}html[data-public-scheduling-brand=catherine] .booking-slot-list button.is-selected,html[data-public-scheduling-brand=catherine] .booking-slot-list button.is-selected:hover:not(:disabled){background:var(--booking-ink);border-color:var(--booking-ink);color:var(--booking-page)}html[data-public-scheduling-brand=catherine] .booking-slot-list button>svg{display:none}html[data-public-scheduling-brand=catherine] .booking-calendar-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:28px;border-top:1px solid var(--booking-line);padding-top:20px}html[data-public-scheduling-brand=catherine] .booking-selection-summary{font-size:12px;color:var(--booking-muted)}html[data-public-scheduling-brand=catherine] .booking-calendar-actions .booking-primary-button{flex:none;width:auto;min-width:114px}html[data-public-scheduling-brand=catherine] :is(.booking-field,.booking-file-control>label,.booking-manage-calendar-actions a,.booking-manage-action-card,.booking-manage-date-list button,.booking-manage-time-list button){border-radius:2px;border-color:var(--booking-line);background:#ffffff60;color:var(--booking-ink);box-shadow:none}html[data-public-scheduling-brand=catherine] :is(.booking-held-slot,.booking-review-card,.booking-review-answers,.booking-confirmation-summary){border:0;border-radius:2px;background:#ffffff60}html[data-public-scheduling-brand=catherine] :is(.booking-form-group>label,.booking-review-card strong,.booking-review-answers strong){font-weight:500}html[data-public-scheduling-brand=catherine] :is(.appointment-booking-page,.appointment-management-page) :is(.booking-primary-button,.booking-secondary-button,.booking-manage-danger-button)[class]{font-family:Catherine Work Sans,Arial,sans-serif;box-shadow:none}html[data-public-scheduling-brand=catherine] :is(.appointment-booking-page,.appointment-management-page) .booking-primary-button[class]{border-color:var(--booking-accent);background:var(--booking-accent);color:var(--booking-page);min-height:44px;font-size:13px;font-weight:400}html[data-public-scheduling-brand=catherine] :is(.appointment-booking-page,.appointment-management-page) .booking-primary-button[class]:hover:not(:disabled){border-color:var(--booking-ink);background:var(--booking-ink)}html[data-public-scheduling-brand=catherine] :is(.appointment-booking-page,.appointment-management-page) .booking-secondary-button[class]{border-color:var(--booking-line);background:var(--booking-surface);color:var(--booking-ink)}html[data-public-scheduling-brand=catherine] :is(.appointment-booking-page,.appointment-management-page) :is(button,a,input,select,textarea,summary):focus-visible{outline:2px solid var(--booking-accent);outline-offset:3px;box-shadow:none}html[data-public-scheduling-brand=catherine] .booking-info-panel :is(select,summary):focus-visible{outline-color:var(--booking-page)}html[data-public-scheduling-brand=catherine][data-scheduling-embed=true],html[data-public-scheduling-brand=catherine][data-scheduling-embed=true] :is(.appointment-booking-page,.public-scheduling-boot){background:transparent}@media(max-width:1100px)and (min-width:801px){html[data-public-scheduling-brand=catherine] .booking-shell{grid-template-columns:240px minmax(0,1fr)}html[data-public-scheduling-brand=catherine] :is(.booking-info-panel,.booking-work-panel){padding:28px 24px}html[data-public-scheduling-brand=catherine] .booking-calendar-layout{grid-template-columns:minmax(0,1fr) 136px;gap:20px}html[data-public-scheduling-brand=catherine] .booking-calendar-layout.is-date-only{grid-template-columns:minmax(0,1fr)}html[data-public-scheduling-brand=catherine] .booking-month-grid button{width:34px;height:38px;min-height:38px}}@media(max-width:800px){html[data-public-scheduling-brand=catherine] .appointment-booking-page{padding:0}html[data-public-scheduling-brand=catherine] .booking-shell{width:min(520px,100%);min-height:0;grid-template-columns:minmax(0,1fr);border:0;border-radius:0}html[data-public-scheduling-brand=catherine] .booking-info-panel{padding:24px;gap:16px}html[data-public-scheduling-brand=catherine] .booking-logo-line{margin-bottom:20px}html[data-public-scheduling-brand=catherine] .booking-wordmark{font-size:21px}html[data-public-scheduling-brand=catherine] .booking-info-panel h1{font-size:27px}html[data-public-scheduling-brand=catherine] .booking-info-panel .booking-info-details{display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px}html[data-public-scheduling-brand=catherine] .booking-summary-choice{max-width:220px}html[data-public-scheduling-brand=catherine] .booking-brand-photo{display:none}html[data-public-scheduling-brand=catherine] .booking-work-panel{padding:26px 24px}html[data-public-scheduling-brand=catherine] .booking-step-heading h2{font-size:22px}html[data-public-scheduling-brand=catherine] .booking-calendar-layout,html[data-public-scheduling-brand=catherine] .booking-calendar-layout.is-date-only{grid-template-columns:minmax(0,1fr);gap:22px;margin-top:22px}html[data-public-scheduling-brand=catherine] .booking-shell:not(.is-choosing-time) .booking-slots-panel,html[data-public-scheduling-brand=catherine] .is-choosing-time .booking-calendar-card,html[data-public-scheduling-brand=catherine] .booking-shell:not(.is-choosing-time) .booking-calendar-actions{display:none}html[data-public-scheduling-brand=catherine] .booking-date-back{display:inline-flex;margin-bottom:12px;font-weight:400}html[data-public-scheduling-brand=catherine] .booking-slot-list{grid-template-columns:repeat(2,minmax(0,1fr));max-height:none}html[data-public-scheduling-brand=catherine] .booking-month-grid button{width:38px;height:42px;min-height:42px}html[data-public-scheduling-brand=catherine] .booking-selection-summary{font-size:11px}}
