:root{--paper: #FBFAF7;--surface: #FFFFFF;--surface-tint: #F6F4EF;--ink: #1A1D24;--ink-soft: #5B6470;--ink-mute: #8A93A0;--rule: #E6E1D6;--rule-strong: #D8D2C4;--color-primary: #2563EB;--color-primary-hover: #1D4ED8;--color-primary-light: #DBE6FE;--brand-blue: var(--color-primary);--brand-blue-hover: var(--color-primary-hover);--brand-blue-soft: var(--color-primary-light);--color-secondary: #DC2626;--color-secondary-hover: #B91C1C;--color-secondary-light: #FBE3E2;--brand-red: var(--color-secondary);--brand-red-hover: var(--color-secondary-hover);--brand-red-soft: var(--color-secondary-light);--status-confirmed: #10B981;--status-pending: #F59E0B;--status-cancelled: #DC2626;--status-completed: #6366F1;--status-no_show: #6B7280;--color-text: var(--ink);--color-text-light: var(--ink-soft);--color-muted: var(--ink-soft);--color-background: var(--paper);--color-border: var(--rule);--color-border-hover: var(--rule-strong);--font-display: "Fraunces", Georgia, "Times New Roman", serif;--font-body: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "SFMono-Regular", ui-monospace, "Cascadia Code", Consolas, monospace;--text-xs: .75rem;--text-sm: .825rem;--text-base: .95rem;--text-lg: clamp(1.05rem, .97rem + .4vw, 1.2rem);--text-xl: clamp(1.3rem, 1.1rem + .9vw, 1.65rem);--display-sm: clamp(1.5rem, 1.2rem + 1.3vw, 2rem);--display-md: clamp(1.85rem, 1.4rem + 2.2vw, 2.6rem);--display-lg: clamp(2.3rem, 1.6rem + 3.4vw, 3.4rem);--radius-xs: 4px;--radius-sm: 6px;--radius-base: 10px;--radius-lg: 14px;--radius-pill: 999px;--shadow-soft: 0 1px 2px rgba(26,29,36,.04), 0 10px 28px rgba(26,29,36,.05);--shadow-sm: 0 1px 2px rgba(26,29,36,.05);--shadow-md: 0 2px 6px rgba(26,29,36,.06), 0 8px 20px rgba(26,29,36,.05);--shadow-lg: 0 4px 12px rgba(26,29,36,.06), 0 20px 44px rgba(26,29,36,.07);--shadow-xl: 0 8px 24px rgba(26,29,36,.08), 0 30px 60px rgba(26,29,36,.09);--maxw: 1140px;--maxw-form: clamp(720px, 60vw, 880px);--gutter: clamp(1rem, .7rem + 1.5vw, 2rem);--space-section: clamp(1.75rem, 1.2rem + 2.5vw, 3.25rem);--space-section-xl: clamp(2.5rem, 1.6rem + 3.6vw, 4.5rem);--tap: 44px;--ease: cubic-bezier(.2, .7, .3, 1)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font-body);font-size:var(--text-base);line-height:1.6;color:var(--ink);background-color:var(--paper);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4{font-family:var(--font-display);font-weight:600;line-height:1.12;letter-spacing:-.01em;color:var(--ink);margin:0}h1{font-size:var(--display-md)}h2{font-size:var(--text-xl)}h3{font-size:var(--text-lg)}p{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--brand-blue);outline-offset:2px;border-radius:var(--radius-xs)}::selection{background:var(--brand-blue-soft, #DBE6FE);color:var(--ink)}.container{max-width:var(--maxw);margin:0 auto;padding-inline:var(--gutter)}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.tnum{font-variant-numeric:tabular-nums}.ui-btn{--btn-bg: transparent;--btn-fg: var(--ink);--btn-bd: var(--rule-strong);--btn-py: .6rem;--btn-px: 1.1rem;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:var(--tap);padding:var(--btn-py) var(--btn-px);border:1px solid var(--btn-bd);border-radius:var(--radius-base);background:var(--btn-bg);color:var(--btn-fg);font-family:var(--font-body);font-size:var(--text-sm);font-weight:600;line-height:1;cursor:pointer;transition:background .16s var(--ease),color .16s var(--ease),border-color .16s var(--ease),box-shadow .16s var(--ease),transform .16s var(--ease);text-align:center;white-space:nowrap}.ui-btn:hover:not(:disabled){transform:translateY(-1px)}.ui-btn:active:not(:disabled){transform:translateY(0)}.ui-btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.ui-btn--primary{--btn-bg: var(--brand-red);--btn-fg: #fff;--btn-bd: var(--brand-red);box-shadow:0 1px 2px #dc262633,0 8px 18px #dc26262e}.ui-btn--primary:hover:not(:disabled){--btn-bg: var(--brand-red-hover);--btn-bd: var(--brand-red-hover)}.ui-btn--secondary{--btn-bg: var(--brand-blue);--btn-fg: #fff;--btn-bd: var(--brand-blue);box-shadow:0 1px 2px #2563eb33,0 8px 18px #2563eb29}.ui-btn--secondary:hover:not(:disabled){--btn-bg: var(--brand-blue-hover);--btn-bd: var(--brand-blue-hover)}.ui-btn--outline{--btn-bg: var(--surface);--btn-fg: var(--ink);--btn-bd: var(--rule-strong)}.ui-btn--outline:hover:not(:disabled){--btn-bd: var(--ink)}.ui-btn--blueoutline{--btn-bg: var(--surface);--btn-fg: var(--brand-blue);--btn-bd: var(--brand-blue)}.ui-btn--blueoutline:hover:not(:disabled){--btn-bg: var(--brand-blue-soft)}.ui-btn--ghost{--btn-bg: transparent;--btn-fg: var(--ink-soft);--btn-bd: transparent}.ui-btn--ghost:hover:not(:disabled){--btn-fg: var(--ink);background:var(--surface-tint)}.ui-btn--danger{--btn-bg: var(--surface);--btn-fg: var(--brand-red);--btn-bd: var(--brand-red)}.ui-btn--danger:hover:not(:disabled){--btn-bg: var(--brand-red-soft)}.ui-btn--sm{--btn-py: .4rem;--btn-px: .75rem;min-height:36px;font-size:var(--text-xs)}.ui-btn--block{display:flex;width:100%}.ui-btn--lg{--btn-py: .9rem;--btn-px: 1.6rem;min-height:52px;font-size:var(--text-base)}.ui-card{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);padding:clamp(1.5rem,1.1rem + 1.8vw,2.75rem)}.ui-card--bare{box-shadow:none}.ui-card--accent{position:relative;overflow:hidden}.ui-card--accent:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:var(--brand-red)}.ui-card--ruled{position:relative;background-image:repeating-linear-gradient(to bottom,transparent 0,transparent 31px,var(--rule) 31px,var(--rule) 32px);background-position:0 18px}.ui-field{display:grid;gap:.4rem}.ui-field>.ui-field__label{font-size:var(--text-sm);font-weight:600;color:var(--ink)}.ui-field>.ui-field__hint{font-size:var(--text-xs);color:var(--ink-soft)}.ui-field>.ui-field__error{font-size:var(--text-xs);color:var(--brand-red);font-weight:600}.ui-input,.ui-select,.ui-textarea{width:100%;min-height:var(--tap);padding:.7rem .85rem;background:var(--surface);border:1px solid var(--rule-strong);border-radius:var(--radius-base);font:inherit;font-size:var(--text-base);color:var(--ink);transition:border-color .15s var(--ease),box-shadow .15s var(--ease),background .15s var(--ease)}@media(max-width:768px){.ui-input,.ui-select,.ui-textarea{font-size:16px}}.ui-input::placeholder,.ui-textarea::placeholder{color:var(--ink-mute)}.ui-input:focus,.ui-select:focus,.ui-textarea:focus{outline:none;border-color:var(--brand-blue);box-shadow:0 0 0 4px #2563eb1f}.ui-textarea{min-height:96px;resize:vertical;line-height:1.5}.ui-input:disabled,.ui-select:disabled,.ui-textarea:disabled{background:var(--surface-tint);color:var(--ink-soft);cursor:not-allowed}.ui-check{display:inline-flex;align-items:center;gap:.5rem;cursor:pointer}.ui-check input[type=checkbox]{width:1.15rem;height:1.15rem;accent-color:var(--brand-blue)}.ui-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.28rem .7rem;border-radius:var(--radius-pill);font-size:var(--text-xs);font-weight:600;background:var(--surface-tint);color:var(--ink-soft);line-height:1.2;white-space:nowrap}.ui-badge--blue{background:var(--brand-blue-soft);color:var(--brand-blue-hover)}.ui-badge--red{background:var(--brand-red-soft);color:var(--brand-red-hover)}.ui-badge--green{background:#d3f8e2;color:#047857}.ui-badge--amber{background:#fef0d8;color:#b45309}.ui-badge--violet{background:#e6e3fe;color:#4338ca}.ui-badge--grey{background:#edf0f3;color:#5b6470}.ui-badge__dot{width:7px;height:7px;border-radius:50%;background:currentColor}.ui-badge--dur{min-width:4.75rem;justify-content:center;text-align:center}.ui-stepper{display:flex;width:100%;list-style:none;margin:0 0 clamp(1.5rem,1.1rem + 1.4vw,2.5rem) 0;padding:0;counter-reset:step}.ui-stepper__li{display:flex;align-items:center;flex:1 1 0;min-width:0}.ui-stepper__item{display:flex;align-items:center;gap:.5rem;flex:1 1 0;min-width:0;padding:.6rem .5rem;border:0;background:transparent;cursor:pointer;color:var(--ink-soft);font:inherit;text-align:left}.ui-stepper__item:disabled{cursor:default}.ui-stepper__num{flex:none;width:26px;height:26px;display:grid;place-items:center;border-radius:50%;border:1px solid var(--rule-strong);background:var(--surface);color:var(--ink-soft);font-family:var(--font-display);font-size:var(--text-sm);font-weight:600;transition:all .16s var(--ease)}.ui-stepper__label{font-size:var(--text-sm);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ui-stepper__item--current .ui-stepper__num{background:var(--brand-blue);border-color:var(--brand-blue);color:#fff}.ui-stepper__item--current .ui-stepper__label{color:var(--ink)}.ui-stepper__item--done .ui-stepper__num{background:var(--brand-red-soft);border-color:var(--brand-red-soft);color:var(--brand-red-hover)}.ui-stepper__item--done .ui-stepper__label{color:var(--ink)}.ui-stepper__rule{flex:0 0 12px;height:1px;background:var(--rule-strong);margin:0 .15rem}@media(max-width:560px){.ui-stepper__label{display:none}.ui-stepper__item{justify-content:center}}.ui-empty{text-align:center;padding:clamp(1.75rem,1.2rem + 2vw,3rem);border:1px dashed var(--rule-strong);border-radius:var(--radius-lg);background:var(--surface-tint);display:grid;gap:.75rem;justify-items:center}.ui-empty__title{font-family:var(--font-display);font-size:var(--text-lg);color:var(--ink)}.ui-empty__text{color:var(--ink-soft);max-width:42ch}.ui-skeleton{background:linear-gradient(90deg,var(--surface-tint) 25%,#ECE9E2 37%,var(--surface-tint) 63%);background-size:400% 100%;animation:sk 1.4s ease-in-out infinite;border-radius:var(--radius-sm)}.ui-skeleton--text{height:.9rem}.ui-skeleton--title{height:1.4rem;width:60%}.ui-skeleton--block{height:90px}@keyframes sk{0%{background-position:100% 0}to{background-position:0 0}}.ui-spinner{width:1.1rem;height:1.1rem;border:2px solid rgba(37,99,235,.18);border-top-color:var(--brand-blue);border-radius:50%;animation:spin .8s linear infinite}.ui-spinner--lg{width:2.2rem;height:2.2rem;border-width:3px}@keyframes spin{to{transform:rotate(360deg)}}.ui-shell{display:flex;min-height:100vh;background:var(--paper)}.ui-shell__sidebar{flex:0 0 auto;width:248px;background:var(--surface);border-right:1px solid var(--rule);display:flex;flex-direction:column;padding:1.25rem .85rem;position:sticky;top:0;height:100vh}.ui-shell__brand{display:flex;align-items:center;gap:.6rem;padding:.25rem .5rem 1.1rem}.ui-shell__brand img{height:38px;width:auto}.ui-shell__brandtxt{font-family:var(--font-display);font-weight:600;font-size:var(--text-base)}.ui-shell__org{font-size:var(--text-xs);color:var(--ink-soft)}.ui-shell__nav{display:grid;gap:.2rem;margin-top:.5rem}.ui-shell__link{display:flex;align-items:center;gap:.6rem;padding:.62rem .75rem;border-radius:var(--radius-base);color:var(--ink-soft);font-size:var(--text-sm);font-weight:600;transition:background .15s var(--ease),color .15s var(--ease)}.ui-shell__link:hover{background:var(--surface-tint);color:var(--ink)}.ui-shell__link--active{background:var(--brand-blue-soft);color:var(--brand-blue-hover)}.ui-shell__link--active:before{content:"";width:3px;height:1.1rem;border-radius:2px;background:var(--brand-blue);margin-left:-.75rem;margin-right:.1rem}.ui-shell__footer{margin-top:auto;padding-top:1rem;border-top:1px solid var(--rule)}.ui-shell__user{font-size:var(--text-xs);color:var(--ink-soft);padding:0 .5rem;word-break:break-word}.ui-shell__main{flex:1 1 auto;min-width:0;padding:var(--space-section) var(--gutter)}.ui-shell__topbar{display:none}@media(max-width:880px){.ui-shell{flex-direction:column}.ui-shell__sidebar{position:sticky;top:0;z-index:30;width:100%;height:auto;flex-direction:row;align-items:center;padding:.6rem var(--gutter);border-right:0;border-bottom:1px solid var(--rule);box-shadow:var(--shadow-sm);gap:.5rem;overflow:hidden}.ui-shell__brand{padding:0}.ui-shell__brandtxt,.ui-shell__org,.ui-shell__nav,.ui-shell__footer{display:none}.ui-shell__main{padding-bottom:5.5rem}.ui-shell__topbar{display:flex;gap:.5rem;margin-left:auto;align-items:center}.ui-shell__bottomnav{position:fixed;left:0;right:0;bottom:0;z-index:40;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;background:var(--surface);border-top:1px solid var(--rule);box-shadow:var(--shadow-md);padding-bottom:env(safe-area-inset-bottom,0)}.ui-shell__bottomlink{display:flex;flex-direction:column;align-items:center;gap:.2rem;padding:.5rem .25rem;font-size:var(--text-xs);font-weight:600;color:var(--ink-soft);min-height:var(--tap)}.ui-shell__bottomlink--active{color:var(--brand-blue-hover)}}@media(min-width:881px){.ui-shell__bottomnav{display:none}}.calendar{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);padding:clamp(1rem,.9rem + .6vw,1.75rem);width:100%;max-width:520px}.calendar__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem}.calendar__title{font-family:var(--font-display);font-size:var(--text-lg);font-weight:600;margin:0;letter-spacing:-.01em}.calendar__nav{width:40px;height:40px;display:grid;place-items:center;border:1px solid var(--rule-strong);border-radius:50%;background:var(--surface);color:var(--ink);cursor:pointer;transition:background .15s var(--ease),color .15s var(--ease),border-color .15s var(--ease)}.calendar__nav:hover:not(:disabled){background:var(--brand-blue-soft);color:var(--brand-blue-hover);border-color:var(--brand-blue-soft)}.calendar__nav:disabled{opacity:.35;cursor:not-allowed}.calendar__weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:.25rem;margin-bottom:.6rem}.calendar__weekday{text-align:center;font-size:var(--text-xs);font-weight:700;letter-spacing:.04em;color:var(--ink-soft);padding:.4rem 0;border-bottom:1px solid var(--rule)}.calendar__grid{display:flex;flex-direction:column;gap:.2rem}.calendar__row{display:grid;grid-template-columns:repeat(7,1fr);gap:.2rem}.calendar__cell{position:relative;padding-bottom:100%}.calendar__day{position:absolute;inset:0;width:100%;height:100%;min-height:44px;border-radius:var(--radius-base);border:none;background:transparent;color:var(--ink);font-family:var(--font-display);font-size:var(--text-base);font-weight:500;font-variant-numeric:tabular-nums;display:grid;place-items:center;cursor:pointer;transition:background .14s var(--ease),color .14s var(--ease),box-shadow .14s var(--ease)}.calendar__day:focus-visible{outline:none;box-shadow:0 0 0 2px var(--paper),0 0 0 4px var(--brand-blue);z-index:1}.calendar__day--has-slots:before{content:"";position:absolute;bottom:12%;left:50%;transform:translate(-50%);width:5px;height:5px;border-radius:50%;background:currentColor;opacity:.6}.calendar__day--selected.calendar__day--has-slots:before{opacity:.9}.calendar__day--today{background:var(--brand-red-soft);color:var(--brand-red-hover);font-weight:600}.calendar__day--today:after{content:"";position:absolute;bottom:8%;left:25%;right:25%;height:2px;background:var(--brand-red);border-radius:2px}.calendar__day:hover:not([aria-disabled=true]):not(.calendar__day--selected){background:var(--brand-blue-soft);color:var(--brand-blue-hover)}.calendar__day--selected{background:var(--brand-blue);color:#fff;font-weight:700}.calendar__day--selected.calendar__day--today{background:var(--brand-blue);color:#fff}.calendar__day--selected.calendar__day--today:after{background:#ffffffd9}.calendar__day--selected:hover{background:var(--brand-blue-hover);color:#fff}.calendar__day--past{color:var(--ink-mute);cursor:default}.calendar__day--window{color:var(--ink-mute);cursor:default;text-decoration:line-through}.calendar__day--no-slots{color:var(--ink-soft);cursor:default}.calendar__day--disabled{color:var(--ink-mute);cursor:not-allowed}.calendar__legend{display:inline-flex;align-items:center;gap:.4rem;margin:.85rem 0 0;font-size:var(--text-xs);color:var(--ink-soft)}.calendar__legend-dot{width:6px;height:6px;border-radius:50%;background:var(--brand-blue)}.stack{display:grid;gap:1rem}.stack-sm{display:grid;gap:.5rem}.stack-section{display:grid;gap:var(--space-section)}.grid-2{display:grid;gap:1rem;grid-template-columns:1fr 1fr}.grid-auto{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.center-screen{min-height:100vh;display:grid;place-items:center;padding:var(--gutter)}.eyebrow{font-size:var(--text-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--brand-red-hover)}.rule-h{height:1px;background:var(--rule);border:0}@media(max-width:640px){.grid-2{grid-template-columns:1fr}}.time-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:1.5rem;align-items:start}@media(min-width:768px){.time-grid{grid-template-columns:minmax(340px,1.05fr) minmax(240px,.95fr);gap:clamp(1.5rem,2.5vw,2.5rem)}}.time-grid .calendar{max-width:none;width:100%}.time-slots{display:grid;gap:1rem;min-width:0}.time-slots__head{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.time-slots__label{display:inline-flex;align-items:center;gap:.45rem;font-size:var(--text-sm);font-weight:600;color:var(--ink)}.time-slots__date{font-size:var(--text-xs);color:var(--ink-soft);font-weight:600}.time-slots__list{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:.5rem;max-height:clamp(320px,42vh,420px);overflow-y:auto;padding:.15rem .35rem .35rem 0;margin:0 -.35rem 0 0;scrollbar-width:thin}.time-slots__empty{padding:1.25rem;border-radius:var(--radius-base);border:1px solid var(--rule);background:var(--surface-tint);color:var(--ink-soft);font-weight:500;display:flex;flex-direction:column;gap:.6rem;align-items:flex-start}.time-slots__alert{padding:1.25rem;border-radius:var(--radius-base);border:1px dashed var(--brand-red);background:var(--brand-red-soft);color:var(--brand-red-hover);font-weight:600;display:flex;flex-direction:column;gap:.6rem;align-items:flex-start}.time-slots__tz{display:grid;gap:.4rem;margin-top:.25rem}.time-slots__tz-label{display:inline-flex;align-items:center;gap:.45rem;font-size:var(--text-sm);font-weight:600;color:var(--ink)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.ui-btn:hover:not(:disabled),.ui-btn:active:not(:disabled){transform:none}}.text-balance{text-wrap:balance}.text-pretty{text-wrap:pretty}.page{position:relative;overflow:hidden;min-height:100vh;background:var(--paper);display:flex;flex-direction:column}.page__main{position:relative;z-index:1;flex:1 1 auto;min-width:0;padding:var(--space-section-xl) var(--gutter);display:grid;gap:clamp(1.75rem,1.2rem + 2.4vw,3rem);max-width:var(--maxw);margin:0 auto;width:100%}.page__orb{position:absolute;border-radius:50%;filter:blur(100px);pointer-events:none;z-index:0}.page__orb--blue{top:-6rem;right:-6rem;width:32rem;height:32rem;background:radial-gradient(circle,rgba(37,99,235,.07),transparent 70%)}.page__orb--red{bottom:-6rem;left:-6rem;width:26rem;height:26rem;background:radial-gradient(circle,rgba(220,38,38,.05),transparent 70%)}.eyebrow-pill{display:inline-flex;align-items:center;gap:.45rem;padding:.32rem .85rem;border-radius:var(--radius-pill);background:var(--brand-red-soft);color:var(--brand-red-hover);border:1px solid rgba(220,38,38,.22);font-size:var(--text-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase}.form-hero{display:grid;justify-items:center;text-align:center;gap:clamp(.7rem,.5rem + .7vw,1rem);margin-bottom:clamp(1.5rem,1rem + 1.5vw,2.5rem)}.form-hero__title{font-family:var(--font-display);font-size:var(--display-md);font-weight:600;letter-spacing:-.01em;line-height:1.08;margin:0;max-width:18ch;text-wrap:balance}.form-hero__sub{color:var(--ink-soft);max-width:54ch;font-size:var(--text-lg);line-height:1.6;text-wrap:pretty}.form-shell{width:100%;max-width:var(--maxw-form);margin:0 auto}.ui-card--form{max-width:var(--maxw-form);padding:clamp(1.5rem,1.1rem + 1.8vw,2.75rem);display:grid;gap:clamp(1.25rem,.9rem + 1.4vw,2rem)}.ui-card--form-narrow{max-width:28rem}.animate-step-in{animation:stepIn .4s cubic-bezier(.16,1,.3,1) both}@keyframes stepIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.form-step{display:grid;gap:clamp(1rem,.8rem + .8vw,1.5rem)}.form-step__head{display:grid;gap:.45rem;margin-bottom:.25rem}.form-step__title{font-family:var(--font-display);font-size:var(--display-sm);font-weight:600;margin:0;text-wrap:balance}.form-step__sub{color:var(--ink-soft);max-width:52ch}.choice{position:relative;display:flex;align-items:center;justify-content:space-between;gap:1rem;width:100%;text-align:left;padding:1.1rem 1.2rem;border:1px solid var(--rule);border-radius:var(--radius-base);background:var(--surface);cursor:pointer;min-height:72px;transition:border-color .18s var(--ease),background .18s var(--ease),box-shadow .18s var(--ease),transform .18s var(--ease);box-shadow:var(--shadow-sm)}.choice:hover{border-color:#dc262659;transform:translateY(-1px);box-shadow:var(--shadow-md)}.choice--active{border-color:var(--brand-red);background:var(--brand-red-soft);box-shadow:0 0 0 3px #dc26261f}.choice--active:hover{transform:translateY(-1px)}.choice__body{display:grid;gap:.2rem;min-width:0}.choice__title{font-family:var(--font-display);font-weight:600;font-size:var(--text-lg);color:var(--ink);word-break:break-word}.choice--active .choice__title{color:var(--brand-red-hover)}.choice__sub{font-size:var(--text-sm);color:var(--ink-soft)}.choice__check{flex:none;width:1.6rem;height:1.6rem;display:grid;place-items:center;border-radius:50%;background:var(--brand-red);color:#fff}.choice--active .choice__check{background:var(--brand-red)}.choice:not(.choice--active) .choice__check{display:none}.summary{display:grid;gap:0;padding:clamp(1rem,.85rem + .8vw,1.4rem) clamp(1.1rem,.9rem + .9vw,1.5rem);background:var(--surface-tint);border:1px solid var(--rule);border-radius:var(--radius-base)}.summary__row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.6rem 0}.summary__row:first-child{padding-top:0}.summary__row:last-child{padding-bottom:0}.summary__label{font-size:var(--text-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);display:inline-flex;align-items:center;gap:.4rem}.summary__value{font-weight:600;color:var(--ink);text-align:right;max-width:22ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.summary__divider{height:1px;background:var(--rule);border:0;margin:0}.confirm-form{display:grid;gap:1.25rem}.contact-panel{display:grid;gap:1.1rem;padding:clamp(1.1rem,.9rem + .9vw,1.5rem);background:var(--surface-tint);border:1px solid var(--rule);border-radius:var(--radius-base)}.contact-panel__head{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.contact-panel__title{font-size:var(--text-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft)}.contact-panel__hint{font-size:var(--text-xs);color:var(--ink-mute)}.contact-fields{display:grid;gap:1.1rem}@media(min-width:600px){.contact-fields{grid-template-columns:1fr 1fr}.contact-fields>:first-child{grid-column:1 / -1}}.password-hint{font-size:var(--text-xs);color:var(--ink-soft);margin-top:-.4rem}.callout{padding:.85rem 1rem;border-radius:var(--radius-base);display:grid;gap:.3rem;font-weight:600}.callout--error{background:var(--brand-red-soft);border:1px solid var(--brand-red);color:var(--brand-red-hover)}.callout--success{background:#d3f8e2;border:1px solid #6EE7B7;color:#047857}.form-nav{display:flex;justify-content:space-between;align-items:center;gap:.75rem;flex-wrap:wrap}.choices{display:grid;grid-template-columns:minmax(0,1fr);gap:.75rem}@media(min-width:768px){.choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}}@media(min-width:1024px){.choices{grid-template-columns:repeat(3,minmax(0,1fr))}}.choices>.choice--alone{grid-column:1 / -1}.gap-2x{display:grid;gap:2rem}.mb-step{margin-bottom:1.5rem}.step-body{display:grid;gap:clamp(1rem,.8rem + .8vw,1.5rem)}
