@font-face{font-family:Oria;src:url(/booking/fonts/OriaNew-Regular.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Polin;src:url(/booking/fonts/Polin-Light.woff2)format("woff2");font-weight:300;font-display:swap}@font-face{font-family:Polin;src:url(/booking/fonts/Polin-Bold.woff2)format("woff2");font-weight:700;font-display:swap}:root{--c-primary:#08707a;--c-primary-dark:#055a62;--c-primary-soft:#e1f2f3;--c-primary-wash:#f3f9f9;--c-accent:#bf264f;--c-accent-dark:#9e1f42;--c-accent-soft:#fbe3ea;--c-lime:#a4b23b;--c-lime-dark:#5d6719;--c-lime-soft:#eef2d6;--c-teal:#0b7f88;--c-teal-raw:#0e9da8;--c-teal-tint:#0e9da82e;--c-heart:#f0b3c4;--c-ink:#1d2222;--c-muted:#56605f;--c-faint:#b5bfbe;--c-bg:#f7fafa;--c-surface:#fff;--c-surface-alt:#f4f8f8;--c-border:#dde8e8;--c-error:#b3261e;--c-success:#2e7d4f;--font-display:"Oria", "Assistant", sans-serif;--font-body:"Polin", "Assistant", sans-serif;--radius-card:20px;--radius-control:10px;--radius-pill:100px;--shadow-card:0 2px 16px #211d1d0f;--shadow-sheet:0 -8px 40px #211d1d2e;--focus-ring:0 0 0 3px #0e9da873}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--c-bg);color:var(--c-ink);font-family:var(--font-body);margin:0;font-size:17px;font-weight:300;line-height:1.55}body:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(closest-side,#0e9da81a,#0000);width:80vw;height:60vh;position:fixed;inset-block-start:-30vh;inset-inline-start:-20vw}#root{z-index:1;position:relative}h1,h2,h3{font-family:var(--font-display);margin:0;font-weight:400}a{color:var(--c-teal)}button{font-family:inherit;font-size:inherit;cursor:pointer}:focus-visible{box-shadow:var(--focus-ring);border-radius:var(--radius-control);outline:none}h2:focus,h2:focus-visible,.error:focus,.error:focus-visible,.form-error:focus,.form-error:focus-visible{box-shadow:none;outline:none}.skip-link{background:var(--c-surface);border-radius:var(--radius-control);z-index:10;padding:8px 16px;transition:inset-block-start .15s;position:absolute;inset-block-start:-48px;inset-inline-start:8px}.skip-link:focus{inset-block-start:8px}.shell{max-width:480px;padding:0 16px calc(150px + env(safe-area-inset-bottom));min-height:100dvh;margin-inline:auto}.footer-nav{justify-content:center;gap:20px;padding-block:18px 4px;font-size:14px;display:flex}.footer-nav a{color:var(--c-muted)}.site-header{text-align:center;flex-direction:column;align-items:center;gap:2px;padding:20px 0 4px;display:flex;position:relative}.logo-link{border-radius:var(--radius-control);display:block}.logo-link:focus-visible{outline:2px solid var(--c-primary);outline-offset:4px}.site-header .logo{width:132px;height:auto;margin-block-end:2px;display:block}.site-header:before{content:"";pointer-events:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 70 80'%3E%3Cg fill='%23f0b3c4'%3E%3Cpath d='M20 14c-3-5-11-3-10 3 1 5 10 10 10 10s9-5 10-10c1-6-7-8-10-3z'/%3E%3Cpath opacity='.7' d='M48 40c-2-4-9-3-8 3 1 4 8 8 8 8s7-4 8-8c1-6-6-7-8-3z'/%3E%3Cpath opacity='.5' d='M26 58c-2-3-7-2-6 2 0 3 6 6 6 6s5-3 6-6c0-4-5-5-6-2z'/%3E%3C/g%3E%3C/svg%3E") 50%/contain no-repeat;width:54px;height:62px;position:absolute;inset-block-start:14px;inset-inline-end:4px}.site-header .clinic{font-family:var(--font-display);color:var(--c-primary);margin:0;font-size:24px;font-weight:400}.wave{align-items:center;gap:4px;height:26px;margin-block:6px 2px;display:flex}.wave i{background:var(--c-teal-raw);opacity:.85;border-radius:2px;width:3px;display:block}.wave i:nth-child(3n){background:var(--c-accent)}.demo-banner{background:var(--c-surface-alt);border:1px dashed var(--c-border);color:var(--c-muted);text-align:center;border-radius:var(--radius-control);margin-block:10px 4px;padding:6px 12px;font-size:13px}.tester-banner{border:2px solid var(--c-error);color:var(--c-error);font-weight:600}.stepper{justify-content:center;gap:28px;margin:0;padding:14px 0 20px;list-style:none;display:flex}.stepper li{color:var(--c-muted);flex-direction:column;align-items:center;gap:6px;font-size:13px;display:flex}.stepper .dot{background:var(--c-border);border-radius:50%;width:12px;height:12px;transition:all .25s}.stepper li[aria-current=step]{color:var(--c-primary);font-weight:700}.stepper li[aria-current=step] .dot{background:var(--c-primary);box-shadow:0 0 0 4px var(--c-primary-soft)}.stepper li.done .dot{background:var(--c-lime)}.card{background:var(--c-surface);border-radius:var(--radius-card);box-shadow:var(--shadow-card);margin-block-end:16px;padding:22px 20px}.card h2{margin-block-end:4px;font-size:24px}.intro{color:var(--c-muted);margin-block:0 14px;font-size:15px}.field{margin-block-end:16px}.field-pair{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));column-gap:12px;display:grid}.field label{margin-block-end:6px;font-size:15px;font-weight:700;display:block}.field .hint{color:var(--c-muted);font-size:13px;font-weight:300}.field input{border:1.5px solid var(--c-border);border-radius:var(--radius-control);background:var(--c-surface);width:100%;color:var(--c-ink);min-height:48px;padding:12px 14px;font-family:inherit;font-size:17px}.field input:focus-visible{border-color:var(--c-teal)}.field input[aria-invalid=true]{border-color:var(--c-error)}.field .error{color:var(--c-error);margin-block-start:4px;font-size:14px}input.ltr{text-align:end;direction:ltr}.date-field{border:none;margin-inline:0;padding:0}.date-field legend{margin-block-end:6px;padding:0;font-size:15px;font-weight:700}.date-selects{gap:8px;display:flex}.date-selects select{border:1.5px solid var(--c-border);border-radius:var(--radius-control);background:var(--c-surface);min-width:0;min-height:48px;color:var(--c-ink);appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%235B5B5B' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E");background-position:12px;background-repeat:no-repeat;flex:1;padding:12px 10px;padding-inline:12px 30px;font-family:inherit;font-size:16px}.date-selects select:nth-child(2){flex:1.5}.date-selects select[aria-invalid=true]{border-color:var(--c-error)}.date-selects select:focus-visible{border-color:var(--c-teal)}.segmented{gap:8px;display:flex}.segmented button{border:1.5px solid var(--c-border);background:var(--c-surface);border-radius:var(--radius-control);min-height:48px;color:var(--c-ink);flex:1;font-size:16px;transition:all .15s}.segmented button[aria-pressed=true]{border-color:var(--c-accent);background:var(--c-accent-soft);color:var(--c-accent-dark);font-weight:700}.reveal{animation:.3s reveal}@keyframes reveal{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.note{background:var(--c-surface-alt);border-inline-start:3px solid var(--c-teal);border-radius:var(--radius-control);color:var(--c-muted);padding:10px 14px;font-size:14px}.badge-pending{border:1px dashed var(--c-lime);color:var(--c-lime-dark);border-radius:var(--radius-pill);vertical-align:middle;margin-inline-start:8px;padding:1px 10px;font-size:12px;display:inline-block}.age-readout{background:var(--c-primary-soft);border-radius:var(--radius-control);flex-direction:column;gap:2px;margin-block:-4px 18px;padding:12px 14px;display:flex}.age-readout-main{color:var(--c-primary-dark);font-size:15px}.age-readout-route{color:var(--c-ink);font-size:15px;font-weight:700}.age-readout-note{color:var(--c-muted);margin-block-start:2px;font-size:13.5px}.form-section{border-block-start:1px solid var(--c-border);margin-block-start:20px;padding-block-start:16px}.section-title{font-family:var(--font-body);color:var(--c-primary-dark);margin:0 0 2px;font-size:16px;font-weight:700}.section-hint{color:var(--c-muted);margin:0 0 12px;font-size:13.5px}.docs-block{margin-block-start:20px}.docs-label{margin:0 0 2px;font-size:15px;font-weight:700}.doc-list{flex-direction:column;gap:10px;display:flex}.doc-card{border:1.5px dashed var(--c-border);border-radius:var(--radius-control);background:var(--c-surface);padding:12px 14px}.doc-card.has-error{border-color:var(--c-error)}.doc-card .error{color:var(--c-error);margin:8px 0 0;font-size:14px}.doc-card.is-filled{border-style:solid;border-color:var(--c-primary-soft);background:var(--c-primary-wash)}.doc-title{align-items:center;gap:6px;font-size:15px;font-weight:700;display:inline-flex}.doc-card.is-filled .doc-title{color:var(--c-primary-dark)}.doc-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.doc-remove{color:var(--c-muted);background:0 0;border:none;min-height:44px;padding-inline:6px;font-size:14px;text-decoration:underline}.doc-filled-body{align-items:center;gap:10px;margin-block-start:8px;display:flex}.doc-thumb{object-fit:cover;border:1px solid var(--c-border);border-radius:8px;flex:none;width:46px;height:46px}.doc-thumb-generic{color:var(--c-muted);background:var(--c-surface-alt);justify-content:center;align-items:center;display:inline-flex}.doc-filename{color:var(--c-muted);word-break:break-all;font-size:14px}.doc-actions{align-items:center;gap:8px;margin-block-start:10px;display:flex}.doc-action{border:1.5px solid var(--c-border);border-radius:var(--radius-control);background:var(--c-surface);min-height:62px;color:var(--c-primary-dark);cursor:pointer;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;font-size:14px;transition:background .15s,border-color .15s;display:inline-flex}.doc-action:hover{background:var(--c-primary-soft);border-color:var(--c-primary)}.doc-action:focus-within{box-shadow:var(--focus-ring)}.doc-add{min-height:44px;color:var(--c-primary-dark);text-underline-offset:3px;cursor:pointer;background:0 0;border:none;align-self:flex-start;align-items:center;gap:6px;padding-inline:4px;font-size:15px;font-weight:600;text-decoration:underline;display:inline-flex}.doc-add:focus-visible{box-shadow:var(--focus-ring);border-radius:6px}.doc-or{color:var(--c-muted);flex:none;font-size:13px}.upload-btn{border:1.5px dashed var(--c-border);background:var(--c-surface);border-radius:var(--radius-control);color:var(--c-muted);align-items:center;gap:6px;min-height:44px;padding:10px 14px;font-size:15px;display:inline-flex}.upload-chip{background:var(--c-primary-soft);color:var(--c-primary-dark);border-radius:var(--radius-pill);align-items:center;gap:8px;padding:8px 14px;font-size:14px;display:inline-flex}.upload-chip button{color:var(--c-primary-dark);background:0 0;border:none;min-width:44px;min-height:44px;margin-block:-10px;font-size:16px;line-height:1}.cta-bar{background:linear-gradient(to top, var(--c-bg) 65%, transparent);padding:18px 16px calc(16px + env(safe-area-inset-bottom));z-index:5;justify-content:center;display:flex;position:fixed;inset-block-end:0;inset-inline:0}.btn-primary{border-radius:var(--radius-pill);background:var(--c-primary);color:#fff;width:100%;max-width:448px;min-height:52px;font-size:18px;font-weight:700;font-family:var(--font-body);border:none;transition:background .15s,transform .1s}.btn-primary:hover{background:var(--c-primary-dark)}.btn-primary:active{transform:scale(.99)}.btn-primary:disabled{background:var(--c-border);color:var(--c-muted);cursor:default}.btn-secondary{border:1.5px solid var(--c-primary);border-radius:var(--radius-pill);background:var(--c-surface);min-height:48px;color:var(--c-primary-dark);padding:0 22px;font-size:16px;font-weight:700}.btn-ghost{color:var(--c-teal);background:0 0;border:none;padding:8px;font-size:15px;text-decoration:underline}.calendar{margin-block:6px 4px}.cal-head{justify-content:space-between;align-items:center;gap:8px;margin-block-end:10px;display:flex}.cal-title{font-family:var(--font-display);color:var(--c-ink);font-size:20px}.cal-nav{border:1.5px solid var(--c-border);border-radius:var(--radius-control);background:var(--c-surface);width:44px;height:44px;color:var(--c-primary-dark);justify-content:center;align-items:center;display:inline-flex}.cal-nav:disabled{color:var(--c-border);cursor:default}.cal-weekdays,.cal-row{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.cal-weekdays{margin-block-end:4px}.cal-weekdays span{text-align:center;color:var(--c-muted);padding-block:2px;font-size:13px}.cal-grid{flex-direction:column;gap:4px;display:flex}.cal-cell{display:block}.cal-day{border:1.5px solid var(--c-border);border-radius:var(--radius-control);background:var(--c-surface);width:100%;min-height:46px;color:var(--c-ink);flex-direction:column;justify-content:center;align-items:center;gap:1px;padding:4px 2px;transition:background .12s,border-color .12s;display:flex}.cal-num{font-size:16px;font-weight:700;line-height:1.1}.cal-count{color:var(--c-primary-dark);background:var(--c-primary-soft);border-radius:var(--radius-pill);padding:0 7px;font-size:11px;line-height:1.3}.cal-day.disabled{color:var(--c-faint);cursor:default;background:0 0;border-color:#0000}.cal-day.selected{border-color:var(--c-accent);background:var(--c-accent)}.cal-day.selected .cal-num{color:#fff}.cal-day.selected .cal-count{color:var(--c-accent-dark);background:#ffffffeb}.cal-legend{color:var(--c-muted);margin-block:10px 0;font-size:13px}.chosen-day{color:var(--c-muted);margin-block:14px 2px;font-size:15px}.chosen-day strong{color:var(--c-ink)}.time-group{color:var(--c-muted);margin-block:10px 4px;font-size:14px;font-weight:700}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{border:1.5px solid var(--c-border);border-radius:var(--radius-control);background:var(--c-surface);direction:ltr;min-width:72px;min-height:44px;font-size:16px}.chip[aria-pressed=true]{border-color:var(--c-accent);background:var(--c-accent);color:#fff;font-weight:700}.empty-state{text-align:center;color:var(--c-muted);padding:28px 12px}.sheet-backdrop{z-index:20;background:#211d1d66;animation:.2s fade;position:fixed;inset:0}@keyframes fade{0%{opacity:0}}.sheet{background:var(--c-surface);border-radius:var(--radius-card) var(--radius-card) 0 0;max-width:480px;box-shadow:var(--shadow-sheet);padding:22px 20px calc(20px + env(safe-area-inset-bottom));z-index:21;margin-inline:auto;animation:.25s slide-up;position:fixed;inset-block-end:0;inset-inline:0}@keyframes slide-up{0%{opacity:0;transform:translateY(30px)}}.summary{margin:0}.summary>div{border-block-end:1px solid var(--c-surface-alt);justify-content:space-between;gap:12px;padding:9px 0;display:flex}.summary dt{color:var(--c-muted);font-size:15px}.summary dd{text-align:end;unicode-bidi:plaintext;margin:0;font-weight:700}.success-head{text-align:center;padding-block:10px 4px}.success-head .icon{background:var(--c-lime-soft);width:64px;height:64px;color:var(--c-lime-dark);border-radius:50%;justify-content:center;align-items:center;margin-block-end:10px;animation:.4s cubic-bezier(.2,1.6,.4,1) pop;display:inline-flex}@keyframes pop{0%{opacity:0;transform:scale(.5)}}.booking-code{text-align:center;background:var(--c-surface-alt);border-radius:var(--radius-control);margin-block:12px;padding:12px}.booking-code .code{letter-spacing:.25em;direction:ltr;font-size:28px;font-weight:700;display:block}.callout{background:var(--c-primary-wash);border-inline-start:4px solid var(--c-primary);border-radius:var(--radius-control);margin-block:14px;padding:14px 16px}.callout h3{font-family:var(--font-body);color:var(--c-primary-dark);margin-block-end:4px;font-size:16px;font-weight:700}.callout p{margin:0 0 6px;font-size:15px}.status-pill{border-radius:var(--radius-pill);background:var(--c-primary-soft);color:var(--c-primary-dark);padding:2px 14px;font-size:14px;font-weight:700;display:inline-block}.status-pill.cancelled{background:var(--c-surface-alt);color:var(--c-muted)}.admin-row{border-block-end:1px solid var(--c-surface-alt);align-items:center;gap:12px;padding:12px 0;display:flex}.admin-row.cancelled{opacity:.55}.admin-row.cancelled .who>:first-child,.admin-row.cancelled .time{text-decoration:line-through}.row-chips{margin-block-start:4px;display:block}.mini-chip{border-radius:var(--radius-pill);background:var(--c-surface-alt);color:var(--c-muted);margin-inline-end:6px;padding:1px 9px;font-size:11.5px;display:inline-block}.mini-chip.alert{background:var(--c-accent-soft);color:var(--c-accent-dark)}.success-sub{color:var(--c-muted);margin-block:4px 0}.booking-code .btn-ghost{margin-block-start:4px;margin-inline:auto;display:block}.admin-row .time{direction:ltr;min-width:48px;font-weight:700}.admin-row .who{flex:1}.admin-row .who .sub{color:var(--c-muted);font-size:13px}.cal-badge{border-radius:var(--radius-pill);background:var(--c-teal-tint);color:var(--c-primary-dark);white-space:nowrap;padding:2px 10px;font-size:12px}.cal-badge.under5{background:var(--c-lime-soft);color:var(--c-lime-dark)}.form-error{color:var(--c-error);border-radius:var(--radius-control);background:#fbeeed;border:1px solid #f0d4d2;margin-block-end:12px;padding:10px 14px;font-size:15px}.spinner{border:2.5px solid #fff6;vertical-align:-3px;border-block-start-color:#fff;border-radius:50%;width:18px;height:18px;margin-inline-end:8px;animation:.7s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.hold-notice{border-radius:var(--radius-control);background:var(--c-primary-soft);color:var(--c-ink);align-items:center;gap:8px;margin-block:12px 0;padding:8px 12px;font-size:.9rem;display:flex}.hold-notice:before{content:"";background:var(--c-primary);border-radius:50%;flex:none;block-size:8px;inline-size:8px}.hold-notice[data-urgent=true]{color:var(--c-error);font-weight:600}.hold-notice[data-urgent=true]:before{background:var(--c-error)}.hold-notice time{font-variant-numeric:tabular-nums}.privacy-note{color:var(--c-muted);text-align:center;margin-block:12px 0;font-size:13px}.privacy-note a{color:inherit;text-decoration:underline}
