.rdv-page{min-height:calc(100vh - var(--navbar-height));padding:64px max(24px,calc((100vw - 1180px) / 2)) 104px;background:var(--surface-1);color:var(--text-primary)}.rdv-hero{max-width:780px;margin-bottom:48px}.rdv-eyebrow{margin:0 0 16px;color:var(--text-secondary);font-size:var(--font-size-body-m);line-height:var(--line-height-body-m)}.rdv-hero h1{max-width:760px;margin:0;color:var(--text-primary);font-size:clamp(48px,5vw,72px);font-weight:var(--font-weight-medium);line-height:.98;letter-spacing:-.035em}.rdv-hero h1 span{color:var(--text-tertiary)}.rdv-hero__lead{max-width:620px;margin:22px 0 0;color:var(--text-secondary);font-size:17px;line-height:26px}.rdv-alert{margin:0 0 18px;padding:14px 18px;border:1px solid color-mix(in srgb,var(--brand-tertiary) 55%,transparent);border-radius:14px;color:var(--text-primary);background:var(--brand-tertiary-lighter);font-size:var(--font-size-body-m)}.rdv-layout{display:grid;grid-template-columns:minmax(0,1.58fr) minmax(300px,.72fr);grid-gap:18px;gap:18px;align-items:start}.rdv-card{border:1px solid var(--surface-hover);border-radius:28px;background:var(--surface-0)}.rdv-scheduler{min-height:582px;padding:32px}.rdv-existing-state h2,.rdv-scheduler>h2,.rdv-summary>h2,.success-modal-title{margin:0;color:var(--text-primary);font-family:var(--title-font-family);font-size:34px;font-weight:var(--font-weight-medium);line-height:1.08;letter-spacing:-.025em}.rdv-type-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px;margin:26px 0 34px}.rdv-type-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-gap:14px;gap:14px;align-items:start;min-width:0;padding:18px;border:1px solid var(--surface-3);border-radius:14px;color:var(--text-primary);background:var(--surface-0);cursor:pointer;text-align:left;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.rdv-type-card:hover{transform:translateY(-1px)}.rdv-cancel-button:focus-visible,.rdv-day:focus-visible,.rdv-primary-button:focus-visible,.rdv-time:focus-visible,.rdv-type-card:focus-visible,.rdv-week-navigation button:focus-visible{outline:none;box-shadow:var(--focus-ring)}.rdv-type-card--active{border-color:var(--text-primary);box-shadow:inset 0 0 0 1px var(--text-primary)}.rdv-type-card small,.rdv-type-card strong{display:block}.rdv-type-card strong{margin:1px 0 4px;font-size:var(--font-size-body-l);font-weight:var(--font-weight-semibold);line-height:var(--line-height-body-l)}.rdv-type-card small{color:var(--text-secondary);font-size:var(--font-size-body-s);line-height:var(--line-height-body-s)}.rdv-icon{display:inline-grid;flex:0 0 auto;place-items:center;width:38px;height:38px;border:1px solid var(--surface-3);border-radius:50%;color:var(--text-primary);background:color-mix(in srgb,var(--surface-0) 55%,transparent)}.rdv-icon--large{width:52px;height:52px}.rdv-icon svg,.rdv-reassurance svg,.success-modal-icon svg{display:block;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}.rdv-icon--large svg{width:22px;height:22px}.rdv-radio{position:relative;width:18px;height:18px;margin-top:10px;border:1px solid var(--surface-3);border-radius:50%}.rdv-type-card--active .rdv-radio{border-color:var(--text-primary)}.rdv-type-card--active .rdv-radio:after{position:absolute;inset:4px;border-radius:50%;background:var(--text-primary);content:""}.rdv-calendar{padding-top:28px;border-top:1px solid var(--surface-3)}.rdv-calendar__header{display:flex;gap:20px;align-items:center;justify-content:space-between;margin-bottom:22px}.rdv-calendar__title{display:flex;gap:12px;align-items:center}.rdv-calendar__title div>span,.rdv-calendar__title div>strong{display:block}.rdv-calendar__title strong{font-size:17px;font-weight:var(--font-weight-semibold);line-height:22px;text-transform:capitalize}.rdv-calendar__title div>span{margin-top:2px;color:var(--text-secondary);font-size:var(--font-size-body-s);line-height:var(--line-height-body-s)}.rdv-week-navigation{display:flex;gap:7px}.rdv-week-navigation button{width:38px;height:38px;border:1px solid var(--surface-3);border-radius:50%;color:var(--text-primary);background:transparent;cursor:pointer;transition:background-color .16s ease,color .16s ease}.rdv-week-navigation button:hover:not(:disabled){color:var(--surface-0);background:var(--brand-primary)}.rdv-week-navigation button:disabled{cursor:not-allowed;opacity:.3}.rdv-days{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:8px;gap:8px}.rdv-day{min-width:0;padding:13px 8px 12px;border:1px solid var(--surface-hover);border-radius:12px;color:var(--text-primary);background:transparent;cursor:pointer;text-align:center;transition:background-color .16s ease,color .16s ease,border-color .16s ease}.rdv-day span,.rdv-day strong{display:block}.rdv-day span{color:var(--text-secondary);font-size:10px;line-height:14px;letter-spacing:.06em;text-transform:capitalize}.rdv-day strong{margin-top:3px;font-size:20px;font-weight:var(--font-weight-medium);line-height:24px}.rdv-day:hover:not(:disabled){border-color:var(--text-primary)}.rdv-day--active{border-color:var(--brand-primary);color:var(--surface-0);background:var(--brand-primary)}.rdv-day--active span{color:color-mix(in srgb,var(--surface-0) 70%,transparent)}.rdv-day:disabled{cursor:not-allowed;opacity:.35}.rdv-times{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:8px;gap:8px;margin-top:18px}.rdv-time{min-height:43px;border:1px solid var(--surface-3);border-radius:999px;color:var(--text-primary);background:transparent;cursor:pointer;font-size:var(--font-size-button-m);transition:background-color .16s ease,color .16s ease,border-color .16s ease}.rdv-time--active,.rdv-time:hover:not(:disabled){border-color:var(--brand-primary);color:var(--surface-0);background:var(--brand-primary)}.rdv-time:disabled{cursor:not-allowed;opacity:.28;text-decoration:line-through}.rdv-calendar-message{display:grid;place-items:center;min-height:148px;padding:24px;color:var(--text-secondary);text-align:center}.rdv-calendar-message--error{color:var(--color-danger-dark)}.rdv-existing-state,.rdv-loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:510px;text-align:center}.rdv-loading-state p{margin:18px 0 0;color:var(--text-secondary)}.rdv-existing-state .rdv-eyebrow{margin-top:22px}.rdv-existing-state h2{max-width:470px}.rdv-existing-state>p:last-child{max-width:460px;margin:18px 0 0;color:var(--text-secondary)}.rdv-summary{position:-webkit-sticky;position:sticky;top:calc(var(--navbar-height) + 24px);padding:26px}.rdv-summary .rdv-eyebrow{margin-bottom:10px}.rdv-summary>h2{font-size:24px;line-height:30px}.rdv-selection-details{margin:30px 0 0}.rdv-selection-details div{padding:15px 0;border-bottom:1px solid var(--surface-hover)}.rdv-selection-details dt{margin:0 0 5px;color:var(--text-secondary);font-size:10px;line-height:14px;letter-spacing:.08em;text-transform:uppercase}.rdv-selection-details dd{margin:0;font-size:var(--font-size-body-l);font-weight:var(--font-weight-semibold);line-height:var(--line-height-body-l);text-transform:capitalize}.rdv-cabinet-note{margin:18px 0 0;color:var(--text-secondary);font-size:var(--font-size-body-s);line-height:var(--line-height-body-s)}.rdv-cabinet-note a{color:var(--text-primary);font-weight:var(--font-weight-semibold);overflow-wrap:anywhere}.rdv-reassurance{display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:20px;color:var(--text-secondary);font-size:var(--font-size-body-s);line-height:var(--line-height-body-s)}.rdv-reassurance--grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:26px}.rdv-reassurance span{display:flex;gap:7px;align-items:center}.rdv-reassurance svg{flex:0 0 auto;width:15px;height:15px}.rdv-cancel-button,.rdv-primary-button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:11px 18px;border-radius:999px;cursor:pointer;font-size:var(--font-size-button-m);font-weight:var(--font-weight-medium);line-height:20px;transition:background-color .16s ease,color .16s ease,border-color .16s ease,transform .16s ease}.rdv-primary-button{width:100%;gap:8px;margin-top:28px;border:1px solid var(--brand-primary);color:var(--surface-0);background:var(--brand-primary)}.rdv-cancel-button:hover,.rdv-primary-button:hover:not(:disabled){transform:translateY(-1px)}.rdv-primary-button:hover:not(:disabled){background:var(--brand-primary-hover)}.rdv-primary-button:disabled{cursor:not-allowed;opacity:.35}.rdv-cancel-button{width:100%;margin-top:24px;border:1px solid var(--brand-tertiary);color:var(--color-danger-dark);background:transparent}.rdv-cancel-button:hover{color:var(--surface-0);background:var(--brand-tertiary)}.rdv-summary__note{margin:11px 0 0;color:var(--text-tertiary);font-size:11px;line-height:16px;text-align:center}.rdv-appointment-card{display:flex;gap:12px;align-items:center;margin-top:24px;padding:15px;border:1px solid var(--surface-hover);border-radius:14px}.rdv-date-tile{display:grid;flex:0 0 50px;place-content:center;width:50px;height:54px;border-radius:11px;background:var(--surface-1);line-height:1;text-align:center}.rdv-date-tile strong{font-size:21px;font-weight:var(--font-weight-medium)}.rdv-date-tile span{margin-top:4px;color:var(--text-secondary);font-size:9px;text-transform:uppercase}.rdv-appointment-card__copy{flex:1 1;min-width:0}.rdv-appointment-card__copy span,.rdv-appointment-card__copy strong{display:block}.rdv-appointment-card__copy strong{font-size:var(--font-size-body-m);font-weight:var(--font-weight-semibold);line-height:var(--line-height-body-m);text-transform:capitalize}.rdv-appointment-card__copy span{margin-top:3px;color:var(--text-secondary);font-size:var(--font-size-body-s)}.rdv-status{padding:5px 9px;border-radius:999px;color:var(--brand-secondary-hover);background:color-mix(in srgb,var(--brand-secondary) 12%,transparent);font-size:10px;line-height:14px}.success-modal-overlay{position:fixed;z-index:1200;inset:0;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(14,18,25,.58);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.success-modal-content{position:relative;width:min(100%,500px);max-height:calc(100vh - 48px);overflow-y:auto;padding:40px;border-radius:24px;color:var(--text-primary);background:var(--surface-0);box-shadow:0 32px 80px -24px rgba(0,0,0,.38);text-align:center}.success-modal-close{position:absolute;top:16px;right:16px;display:grid;place-items:center;width:34px;height:34px;padding:0;border:0;border-radius:50%;color:var(--text-secondary);background:var(--surface-1);cursor:pointer;font-size:22px}.success-modal-icon{display:inline-grid;place-items:center;width:58px;height:58px;margin-bottom:22px;border-radius:50%;color:var(--surface-0);background:var(--brand-primary)}.success-modal-icon svg{width:24px;height:24px}.success-modal-details{display:grid;grid-gap:1px;gap:1px;margin-top:28px;overflow:hidden;border:1px solid var(--surface-hover);border-radius:14px;background:var(--surface-hover);text-align:left}.success-modal-details div{padding:14px 16px;background:var(--surface-0)}.success-modal-details span,.success-modal-details strong{display:block}.success-modal-details span{color:var(--text-secondary);font-size:10px;letter-spacing:.06em;text-transform:uppercase}.success-modal-details strong{margin-top:3px;font-size:var(--font-size-body-m);font-weight:var(--font-weight-semibold);text-transform:capitalize}.success-modal-message{margin:22px 0 0;color:var(--text-secondary);font-size:var(--font-size-body-m);line-height:var(--line-height-body-m)}@media (max-width:960px){.rdv-page{padding-right:32px;padding-left:32px}.rdv-layout{grid-template-columns:1fr}.rdv-summary{position:static}}@media (max-width:640px){.rdv-page{padding:42px 20px 72px}.rdv-hero{margin-bottom:34px}.rdv-hero h1{font-size:46px;line-height:48px}.rdv-hero__lead{font-size:var(--font-size-body-l);line-height:var(--line-height-body-l)}.rdv-scheduler,.rdv-summary{padding:22px;border-radius:22px}.rdv-existing-state h2,.rdv-scheduler>h2{font-size:30px}.rdv-type-grid{grid-template-columns:1fr}.rdv-calendar__header{align-items:flex-start}.rdv-calendar__title .rdv-icon{display:none}.rdv-days{gap:4px}.rdv-day{padding-right:3px;padding-left:3px}.rdv-times{grid-template-columns:repeat(3,minmax(0,1fr))}.rdv-reassurance--grid{grid-template-columns:1fr}.success-modal-content{padding:34px 22px 26px}}@media (max-width:380px){.rdv-page{padding-right:14px;padding-left:14px}.rdv-times{grid-template-columns:repeat(2,minmax(0,1fr))}}