@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fraunces-vietnamese-500-normal-GOH_-EGq.woff2) format("woff2"),url(/assets/fraunces-vietnamese-500-normal-B-KbxExq.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fraunces-latin-ext-500-normal-Z5DV8IzT.woff2) format("woff2"),url(/assets/fraunces-latin-ext-500-normal-BMcFk1Xs.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fraunces-latin-500-normal-DnGCNyPD.woff2) format("woff2"),url(/assets/fraunces-latin-500-normal-BTR4KCeb.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/outfit-latin-ext-400-normal-5tcqmc2S.woff2) format("woff2"),url(/assets/outfit-latin-ext-400-normal-DHm7mdGe.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/outfit-latin-400-normal-BGsTXAXT.woff2) format("woff2"),url(/assets/outfit-latin-400-normal-DMwTpYkH.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/outfit-latin-ext-600-normal-B85nYjL1.woff2) format("woff2"),url(/assets/outfit-latin-ext-600-normal-CWJcPgd7.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/outfit-latin-600-normal-B7SfZ07L.woff2) format("woff2"),url(/assets/outfit-latin-600-normal-BEfTtDA7.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #f6f5f2;--bg-elevated: #ffffff;--surface: #ffffff;--surface-muted: #faf9f7;--surface-sunken: #f1efeb;--ink: #1d1b18;--ink-soft: #57534d;--ink-faint: #8a857d;--line: #e6e3dd;--line-strong: #d4d0c8;--brand-primary: #1d4a3c;--brand-accent: #8c3d2f;--brand-soft: #e8f1ed;--brand-ink: #ffffff;--danger: #b42318;--danger-soft: #fef3f2;--danger-line: #fecdca;--warning: #93370d;--warning-soft: #fffaeb;--warning-line: #fedf89;--success: #067647;--success-soft: #ecfdf3;--success-line: #abefc6;--pine: var(--brand-primary);--pine-strong: var(--brand-primary);--pine-soft: var(--brand-soft);--clay: var(--brand-accent);--focus: var(--brand-primary);--radius-sm: 8px;--radius: 12px;--radius-lg: 16px;--radius-pill: 999px;--shadow-xs: 0 1px 2px rgb(16 15 13 / 5%);--shadow: 0 1px 2px rgb(16 15 13 / 4%), 0 4px 12px rgb(16 15 13 / 4%);--shadow-lg: 0 2px 4px rgb(16 15 13 / 4%), 0 12px 32px rgb(16 15 13 / 8%);--font-sans: "Inter Variable", "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-serif: "Fraunces", "Iowan Old Style", Palatino, Georgia, serif;--font-display: var(--font-sans);--text-xs: .75rem;--text-sm: .8125rem;--text-base: .9375rem;--text-md: 1rem;--text-lg: 1.125rem;--text-xl: 1.375rem;--text-2xl: 1.75rem;--text-3xl: 2.125rem;--ease: cubic-bezier(.2, 0, 0, 1);color:var(--ink);background:var(--bg);font-family:var(--font-sans);font-size:var(--text-base);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink)}.test-env-banner{margin:0;background:var(--warning-soft);color:var(--warning);border-bottom:1px solid var(--warning-line);padding:.3rem 1rem;font-weight:500;font-size:var(--text-xs);line-height:1.4;text-align:center}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.fp{color:var(--ink);font-family:var(--font-sans);font-size:var(--text-base)}.fp h1,.fp h2,.fp h3,.fp .display{font-family:var(--font-sans);font-weight:600;letter-spacing:-.015em;line-height:1.2;margin:0;color:var(--ink)}.fp h1,.fp .display{font-family:var(--font-display);font-weight:var(--display-weight, 600)}.fp h1{font-size:var(--text-2xl)}.fp h2{font-size:var(--text-lg)}.fp h3{font-size:var(--text-base)}.fp p{margin:0}.fp a{color:var(--brand-primary)}.fp input,.fp select,.fp textarea,.fp button{font:inherit;color:inherit}.fp label,.fp .label{display:flex;flex-direction:column;gap:.375rem;font-size:var(--text-sm);font-weight:500;color:var(--ink)}.fp input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]),.fp select,.fp textarea{width:100%;min-height:44px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);padding:.55rem .75rem;font-size:var(--text-md);font-weight:400;box-shadow:var(--shadow-xs);transition:border-color .12s var(--ease),box-shadow .12s var(--ease)}.fp select{appearance:none;padding-right:2.25rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2357534d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .7rem center}.fp textarea{min-height:6.5rem;resize:vertical;line-height:1.5}.fp input::placeholder,.fp textarea::placeholder{color:var(--ink-faint)}.fp input:not([type=checkbox]):not([type=radio]):hover,.fp select:hover,.fp textarea:hover{border-color:var(--ink-faint)}.fp input:not([type=checkbox]):not([type=radio]):focus-visible,.fp select:focus-visible,.fp textarea:focus-visible{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-primary) 18%,transparent)}.fp button:focus-visible,.fp a:focus-visible,.fp [tabindex]:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.fp h1[tabindex="-1"]:focus,.fp h2[tabindex="-1"]:focus{outline:none}.fp .hint,.fp .fine{color:var(--ink-soft);font-weight:400;font-size:var(--text-sm);line-height:1.5}.fp .fine{color:var(--ink-faint);font-size:var(--text-xs)}.fp button,.fp .primary,.fp .ghost,.fp .secondary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:44px;border-radius:var(--radius-sm);padding:.55rem 1rem;cursor:pointer;background:var(--surface);border:1px solid var(--line-strong);color:var(--ink);font-size:var(--text-base);font-weight:500;line-height:1.2;text-decoration:none;box-shadow:var(--shadow-xs);transition:background-color .12s var(--ease),border-color .12s var(--ease),box-shadow .12s var(--ease),transform .12s var(--ease)}.fp button:hover,.fp .ghost:hover,.fp .secondary:hover{background:var(--surface-muted);border-color:var(--ink-faint)}.fp button:active{transform:translateY(1px)}.fp .primary{background:var(--brand-primary);color:var(--brand-ink);border:1px solid var(--brand-primary);font-weight:600;box-shadow:var(--shadow-xs),inset 0 1px #ffffff1f}.fp .primary:hover{background:color-mix(in srgb,var(--brand-primary) 88%,black);border-color:color-mix(in srgb,var(--brand-primary) 88%,black);color:var(--brand-ink)}.fp .primary:disabled,.fp button:disabled{opacity:.45;cursor:not-allowed;transform:none}.fp .ghost{background:transparent;box-shadow:none;border-color:var(--line-strong)}.fp .text-button{display:inline-flex;align-items:center;gap:.35rem;min-height:36px;padding:.25rem .125rem;border:0;background:none;box-shadow:none;color:var(--brand-primary);font-weight:500;font-size:var(--text-sm);text-decoration:none;cursor:pointer}.fp .text-button:hover{background:none;text-decoration:underline;text-underline-offset:.2em}.fp .check{display:flex;flex-direction:row;align-items:flex-start;gap:.65rem;font-size:var(--text-base);font-weight:400;line-height:1.45;cursor:pointer}.fp .check input{flex:none;width:1.125rem;height:1.125rem;margin:.15rem 0 0;accent-color:var(--brand-primary);cursor:pointer}.fp .card-surface{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:var(--space-5, 1.25rem)}.fp .powered{margin:0;color:var(--ink-faint);font-size:var(--text-xs)}.fp .alert,.fp .field-error{display:flex;gap:.5rem;color:var(--danger);background:var(--danger-soft);border:1px solid var(--danger-line);border-radius:var(--radius-sm);padding:.65rem .85rem;margin:0;font-size:var(--text-sm);font-weight:500}.fp .notice{background:var(--surface-muted);border:1px solid var(--line);border-radius:var(--radius-sm);padding:.65rem .85rem;color:var(--ink-soft);font-size:var(--text-sm)}.fp .notice-success{background:var(--success-soft);border-color:var(--success-line);color:var(--success)}.fp .badge{display:inline-flex;align-items:center;gap:.3rem;padding:.125rem .5rem;border-radius:var(--radius-pill);background:var(--surface-sunken);color:var(--ink-soft);font-size:var(--text-xs);font-weight:500;white-space:nowrap}.fp .badge-brand{background:var(--brand-soft);color:var(--brand-primary)}.fp table{width:100%;border-collapse:collapse;background:var(--surface);font-size:var(--text-sm)}.fp th,.fp td{text-align:left;padding:.7rem .85rem;border-bottom:1px solid var(--line);vertical-align:middle}.fp th{font-size:var(--text-xs);font-weight:500;color:var(--ink-faint);background:var(--surface-muted)}.fp tbody tr:hover td{background:var(--surface-muted)}.fp .empty{border:1px dashed var(--line-strong);border-radius:var(--radius);padding:1.5rem;color:var(--ink-soft);background:var(--surface-muted);text-align:center;font-size:var(--text-sm)}.fp .skeleton{min-height:2.5rem;border-radius:var(--radius-sm);background:linear-gradient(90deg,var(--surface-sunken),var(--surface-muted),var(--surface-sunken));background-size:200% 100%;animation:fp-shimmer 1.2s linear infinite}@keyframes fp-shimmer{to{background-position:-200% 0}}.fp .sr-only,.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}body{min-height:100dvh}.skip{position:absolute;left:.75rem;top:.75rem;transform:translateY(-200%);background:var(--ink);color:#fff;padding:.6rem .9rem;border-radius:var(--radius-sm);z-index:50;text-decoration:none}.skip:focus{transform:none}.app{min-height:100dvh;display:flex;flex-direction:column}.site-header{background:var(--surface);border-bottom:1px solid var(--line)}.site-header-inner,.page{width:min(70rem,100% - 2rem);margin:0 auto}.site-header-inner{min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:1rem}.brand-lockup{display:inline-flex;align-items:center;gap:.7rem;color:var(--ink);text-decoration:none;min-width:0}.logo-mark{flex:none;width:2.25rem;height:2.25rem;border-radius:10px;display:grid;place-items:center;background:var(--brand-primary);color:var(--brand-ink);font-weight:600;font-size:var(--text-sm);letter-spacing:.02em;overflow:hidden}.logo-mark img{width:100%;height:100%;object-fit:cover}.clinic-name{font-family:var(--font-display);font-weight:var(--display-weight, 600);font-size:var(--text-md);letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.header-links a{color:var(--ink-soft);text-decoration:none;font-weight:500;font-size:var(--text-sm);padding:.5rem .75rem;border-radius:var(--radius-sm)}.header-links a:hover{background:var(--surface-sunken);color:var(--ink)}.page{flex:1;display:flex;flex-direction:column;gap:1.25rem;padding:1.5rem 0 3rem}.page-head{display:flex;flex-direction:column;gap:.35rem}.app.fp h1{font-size:var(--text-2xl)}.lede{color:var(--ink-soft);font-size:var(--text-md)}.powered{margin-top:auto;padding-top:1rem;text-align:center}.app.is-embed .site-header-inner,.app.is-embed .page{width:calc(100% - 1.5rem)}.app.is-embed .page{padding-top:1rem}.stepper{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem}.stepper-item{display:flex;align-items:center;gap:.5rem;padding-top:.6rem;border-top:3px solid var(--line);color:var(--ink-faint);font-size:var(--text-sm);font-weight:500;min-width:0}.stepper-item.is-done{border-color:color-mix(in srgb,var(--brand-primary) 45%,var(--line));color:var(--ink-soft)}.stepper-item.is-current{border-color:var(--brand-primary);color:var(--ink)}.stepper-dot{flex:none;width:1.375rem;height:1.375rem;border-radius:999px;display:grid;place-items:center;font-size:.6875rem;font-weight:600;background:var(--surface-sunken);color:var(--ink-soft)}.is-current .stepper-dot,.is-done .stepper-dot{background:var(--brand-primary);color:var(--brand-ink)}.stepper-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.book-layout{display:grid;gap:1.5rem;align-items:start}.book-main,.step-section{display:flex;flex-direction:column;gap:1rem;min-width:0}.book-summary{display:none}@media(min-width:960px){.book-layout{grid-template-columns:minmax(0,1fr) 320px;gap:2rem}.book-summary{display:flex;flex-direction:column;gap:1rem;position:sticky;top:1.5rem}.mobile-summary{display:none}.app.is-embed .book-layout{grid-template-columns:1fr}.app.is-embed .book-summary{display:none}.app.is-embed .mobile-summary{display:block}}.book-summary h2{font-size:var(--text-md)}.summary-person{display:flex;gap:.75rem;align-items:center;padding-bottom:1rem;border-bottom:1px solid var(--line)}.summary-person strong{display:block;font-weight:600}.summary-person>div span{display:block;color:var(--ink-soft);font-size:var(--text-sm)}.avatar{flex:none;width:2.5rem;height:2.5rem;border-radius:999px;display:grid;place-items:center;background:var(--brand-soft);color:var(--brand-primary);font-weight:600;font-size:var(--text-sm)}.avatar-lg{width:3rem;height:3rem;font-size:var(--text-md)}.summary-facts{display:grid;gap:.6rem;margin:0;font-size:var(--text-sm)}.summary-facts div{display:flex;justify-content:space-between;gap:1rem}.summary-facts dt{color:var(--ink-soft)}.summary-facts dd{margin:0;text-align:right;font-weight:500}.summary-facts .summary-total{margin-top:.25rem;padding-top:.75rem;border-top:1px solid var(--line);font-size:var(--text-base)}.summary-total dt,.summary-total dd{color:var(--ink);font-weight:600}.mobile-summary{background:var(--surface-muted);border:1px solid var(--line);border-radius:var(--radius);padding:.9rem 1rem}.section-label{font-size:var(--text-sm)!important;font-weight:600;color:var(--ink-soft)!important;margin-top:.5rem!important}.service-list{display:grid;gap:.75rem}@media(min-width:720px){.service-list{grid-template-columns:1fr 1fr}}.fp .service-card{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:1rem;width:100%;min-height:88px;padding:1.1rem 1.1rem 1.1rem 1.25rem;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.fp .service-card:hover{border-color:color-mix(in srgb,var(--brand-primary) 40%,var(--line));background:var(--surface);box-shadow:var(--shadow-lg)}.fp .service-card[aria-pressed=true]{border-color:var(--brand-primary);box-shadow:0 0 0 1px var(--brand-primary),var(--shadow)}.service-main,.service-side{display:flex;flex-direction:column;gap:.2rem;min-width:0}.service-side{align-items:flex-end;text-align:right}.service-name{font-weight:600;font-size:var(--text-md);color:var(--ink)}.service-meta,.service-due{color:var(--ink-soft);font-size:var(--text-sm);font-weight:400}.service-price{font-weight:600;font-variant-numeric:tabular-nums}.service-chevron{color:var(--ink-faint);font-size:1.5rem;line-height:1}.service-skeleton{min-height:88px;border-radius:var(--radius-lg)}.book-again{display:flex;flex-direction:column;gap:1rem;border-color:color-mix(in srgb,var(--brand-primary) 30%,var(--line))}.book-again-head{display:flex;gap:.85rem;align-items:center}.book-again h2{font-size:var(--text-lg)}.selection-bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 1rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.selection-bar>div{display:flex;flex-direction:column;gap:.1rem;min-width:0}.selection-label{font-size:var(--text-xs);font-weight:500;color:var(--ink-faint);text-transform:uppercase;letter-spacing:.05em}.selection-bar strong{font-weight:600}.selection-meta{font-size:var(--text-sm);color:var(--ink-soft)}.selection-bar .text-button{flex:none}.addons{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:0 1rem}.addons summary{cursor:pointer;min-height:48px;display:flex;align-items:center;justify-content:space-between;font-weight:500;list-style:none}.addons summary::-webkit-details-marker{display:none}.addons summary:after{content:"+";font-size:1.25rem;font-weight:400;color:var(--ink-faint)}.addons[open] summary:after{content:"−"}.addon-list{display:grid;gap:.25rem;padding-bottom:.75rem}.fp .check.addon{align-items:center;padding:.5rem 0}.addon-name{flex:1}.addon-meta{color:var(--ink-soft);font-size:var(--text-sm)}.time-controls{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.75rem 1rem}.therapist-field{flex:1 1 14rem;max-width:22rem}.chip-row{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.fp .chip{min-height:36px;padding:.35rem .85rem;border-radius:var(--radius-pill);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-soft);font-size:var(--text-sm);font-weight:500;text-decoration:none;box-shadow:none;display:inline-flex;align-items:center;cursor:pointer}.fp .chip:hover{color:var(--ink);border-color:var(--ink-faint);background:var(--surface)}.day-row{display:flex;gap:.5rem;overflow-x:auto;padding:.125rem .125rem .5rem;margin:0 -.125rem;scroll-snap-type:x proximity;scrollbar-width:thin}.fp .day{flex:0 0 auto;scroll-snap-align:start;min-width:4.5rem;min-height:64px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15rem;padding:.5rem .75rem;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);box-shadow:none;line-height:1.1}.day-dow{font-size:var(--text-xs);font-weight:500;color:var(--ink-faint);text-transform:uppercase;letter-spacing:.04em}.day-date{font-weight:600;font-size:var(--text-sm)}.fp .day[aria-pressed=true]{background:var(--brand-primary);border-color:var(--brand-primary);color:var(--brand-ink)}.fp .day[aria-pressed=true] .day-dow{color:color-mix(in srgb,var(--brand-ink) 80%,transparent)}.tz-note{color:var(--ink-faint);font-size:var(--text-sm)}.slots-panel{display:flex;flex-direction:column;gap:1.25rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:1.25rem;box-shadow:var(--shadow)}.slot-group{display:flex;flex-direction:column;gap:.6rem}.slot-group h3{font-size:var(--text-xs)!important;font-weight:600!important;color:var(--ink-faint)!important;text-transform:uppercase;letter-spacing:.06em}.slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}@media(min-width:560px){.slots{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(min-width:1100px){.slots{grid-template-columns:repeat(5,minmax(0,1fr))}}.slots-compact{grid-template-columns:repeat(3,minmax(0,1fr))!important}.fp .slot{min-height:44px;padding:.5rem;border-radius:var(--radius-sm);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);font-weight:500;font-variant-numeric:tabular-nums;box-shadow:none}.fp .slot:hover{border-color:var(--brand-primary);color:var(--brand-primary);background:var(--brand-soft)}.fp .slot[aria-pressed=true]{background:var(--brand-primary);border-color:var(--brand-primary);color:var(--brand-ink)}.form-card{display:flex;flex-direction:column;gap:1rem}.form-card h2{font-size:var(--text-lg)}.name-row{display:grid;gap:1rem}@media(min-width:640px){.name-row{grid-template-columns:1fr 1fr}}.field-label{display:flex;align-items:baseline;gap:.35rem}.optional{display:inline;color:var(--ink-faint);font-weight:400}.dob-field{max-width:16rem}.verify-box{display:flex;flex-direction:column;gap:.75rem;padding:1rem;background:var(--surface-muted);border:1px solid var(--line);border-radius:var(--radius)}.code-actions{display:flex;flex-wrap:wrap;gap:.25rem 1.25rem}.fp .code-input{letter-spacing:.4em;font-size:var(--text-xl)!important;font-weight:600!important;text-align:center;max-width:14rem;font-variant-numeric:tabular-nums}.demo-code{background:var(--warning-soft);border:1px solid var(--warning-line);color:var(--warning);border-radius:var(--radius-sm);padding:.6rem .85rem;font-size:var(--text-sm)}.demo-code strong{margin-left:.35rem;font-size:var(--text-lg);letter-spacing:.15em;font-variant-numeric:tabular-nums;color:var(--ink)}.fp .block{width:100%;min-height:48px;font-size:var(--text-md)}.card-on-file{display:flex;align-items:center;gap:.75rem;padding:.75rem .9rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-muted);font-weight:500}.card-chip{display:inline-grid;place-items:center;min-width:2.75rem;height:1.75rem;border-radius:5px;background:var(--ink);color:#fff;font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:0 .35rem}.pay-row{display:grid;gap:.5rem}@media(min-width:640px){.pay-row{grid-template-columns:repeat(3,1fr)}}.fp .pay-button{min-height:48px;font-weight:600}.fp .pay-apple{background:#000;border-color:#000;color:#fff}.fp .pay-apple:hover{background:#222;border-color:#222}.policy-check{padding:.85rem 1rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-muted)}.policy-detail{display:block;margin-top:.2rem}.disclaimer{text-align:center;margin-top:.5rem!important}.footer-action{display:flex}.confirm-layout{display:flex;flex-direction:column;gap:1rem;max-width:40rem}.confirm-when{display:flex;align-items:center;gap:1rem}.confirm-check{flex:none;width:2.75rem;height:2.75rem;border-radius:999px;display:grid;place-items:center;background:var(--success-soft);color:var(--success);font-weight:700;font-size:var(--text-lg)}.confirm-time{font-weight:600;font-size:var(--text-lg)}.confirm-next{display:flex;flex-direction:column;gap:.75rem;align-items:flex-start}.confirm-actions{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.confirm-links{display:flex;gap:1.5rem}.hub{display:grid;gap:1.5rem;align-items:start}@media(min-width:960px){.hub{grid-template-columns:minmax(0,1fr) 340px}}.hub-col{display:flex;flex-direction:column;gap:1rem;min-width:0}.visit-list{display:flex;flex-direction:column;gap:.75rem}.summary{display:flex;flex-direction:column;gap:.75rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:1rem 1.1rem;box-shadow:var(--shadow)}.visit-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.25rem 1rem;align-items:center}.visit-date{grid-row:span 2;width:3.5rem;height:3.75rem;border-radius:var(--radius);background:var(--brand-soft);color:var(--brand-primary);display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.1}.visit-date small{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.visit-date b{font-size:var(--text-xl);font-weight:600}.visit-title{font-weight:600}.visit-meta{color:var(--ink-soft);font-size:var(--text-sm)}.visit-actions{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:.5rem;padding-top:.75rem;margin-top:.25rem;border-top:1px solid var(--line)}.visit-actions button,.visit-actions a{min-height:38px!important;padding:.35rem .85rem!important;font-size:var(--text-sm)!important}.product-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 0;border-bottom:1px solid var(--line)}.product-row:last-of-type{border-bottom:0}.product-row strong{display:block;font-weight:500}.product-row span{color:var(--ink-soft);font-size:var(--text-sm)}.stack{display:flex;flex-direction:column;gap:1rem}.narrow{max-width:34rem}.signature{width:100%;max-width:28rem;height:140px;border:1px dashed var(--line-strong);border-radius:var(--radius);background:var(--surface);touch-action:none}.question{display:flex;flex-direction:column;gap:.6rem;border:0;margin:0;padding:1rem 0;border-bottom:1px solid var(--line)}.question legend{font-weight:600;padding:0;margin-bottom:.6rem}.question:last-of-type{border-bottom:0}.option-grid{display:grid;gap:.5rem}@media(min-width:640px){.option-grid{grid-template-columns:1fr 1fr}}.option-grid .check{padding:.7rem .85rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface)}.option-grid .check:has(input:checked){border-color:var(--brand-primary);background:var(--brand-soft)}.eyebrow{margin:0;letter-spacing:.08em;text-transform:uppercase;font-size:var(--text-xs);font-weight:600;color:var(--brand-primary)}.banner{background:var(--surface-muted);border:1px solid var(--line);border-radius:var(--radius-sm);padding:.65rem .85rem;font-size:var(--text-sm);color:var(--ink-soft)}.progress{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;list-style:none;padding:0;margin:0}.progress li{border-top:3px solid var(--line);padding-top:.5rem;color:var(--ink-faint);font-size:var(--text-sm)}.progress li[aria-current=step]{border-color:var(--brand-primary);color:var(--ink);font-weight:500}.progress li.is-done{border-color:color-mix(in srgb,var(--brand-primary) 45%,var(--line))}fieldset{border:0;margin:0;padding:0;display:flex;flex-direction:column;gap:.7rem}legend{font-weight:600;margin-bottom:.35rem;padding:0}.group-label{margin:.4rem 0 0;font-size:var(--text-xs);font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint)}.card{position:relative;display:grid;grid-template-columns:1fr auto;gap:.15rem .75rem;width:100%;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:1rem 1.1rem;box-shadow:var(--shadow);cursor:pointer}.card input{position:absolute;opacity:0;width:1px;height:1px;margin:0}.card:has(input:checked){border-color:var(--brand-primary);box-shadow:0 0 0 1px var(--brand-primary),var(--shadow)}.card:focus-within{outline:2px solid var(--brand-primary);outline-offset:2px}.price{font-variant-numeric:tabular-nums;font-weight:600}.meta{grid-column:1 / -1;color:var(--ink-soft);font-size:var(--text-sm)}.segment{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.summary-row{display:flex;justify-content:space-between;gap:1rem;align-items:baseline}.pay-mock{border:1px dashed var(--line-strong);border-radius:var(--radius);padding:1rem;background:var(--surface);display:flex;flex-direction:column;gap:.7rem}.fake-fields{display:grid;gap:.45rem}.fake-input,.fake-row{background:var(--surface-muted);border:1px solid var(--line);border-radius:var(--radius-sm);min-height:44px;color:var(--ink-faint);display:flex;align-items:center;padding:0 .75rem}.fake-row{display:grid;grid-template-columns:1fr 1fr;gap:.45rem;padding:0;background:transparent;border:0}.row{display:flex;gap:.6rem}.confirm{display:flex;flex-direction:column;gap:.8rem}.text-input{width:100%}@media(max-width:380px){.slots{grid-template-columns:repeat(2,minmax(0,1fr))}.stepper-label{display:none}}@media(max-width:559px){.page{width:calc(100% - 2rem);padding-top:1rem}.app.fp h1{font-size:var(--text-xl)}.stepper{gap:.35rem}.stepper-item{font-size:var(--text-xs);gap:.35rem}.fp .service-card{grid-template-columns:minmax(0,1fr) auto;min-height:76px;padding:1rem}.service-chevron{display:none}.slots-panel{padding:1rem}.confirm-actions{grid-template-columns:1fr}}.hub-head{display:flex;align-items:center;justify-content:space-between;gap:1rem}.hub-head .primary{min-height:40px;font-size:var(--text-sm)}.hub-subhead{margin-top:1rem!important;color:var(--ink-soft)!important;font-size:var(--text-md)!important}.visit-card.is-past .visit-date{background:var(--surface-sunken);color:var(--ink-soft)}.reschedule-panel{grid-column:1 / -1;display:flex;flex-direction:column;gap:.75rem;padding-top:.75rem}.day-field{max-width:14rem}.owned{display:flex;flex-wrap:wrap;gap:.4rem}.fp .danger{color:var(--danger)}.fp .danger:hover{border-color:var(--danger-line);background:var(--danger-soft)}.intake-card{max-width:40rem;gap:0}.signature-field{display:flex;flex-direction:column;gap:.5rem;padding:1rem 0}.intake-card .primary{margin-top:.5rem}
