.booking-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:80px;align-items:start}.booking-form{display:grid;gap:56px}.booking-section{display:grid;gap:24px}.booking-section-head{display:flex;align-items:baseline;gap:16px;padding-bottom:16px;border-bottom:1px solid var(--hairline)}.booking-section-head .mono{font-size:11px;color:var(--ink-soft);letter-spacing:.2em}.booking-section-head h3{font-size:clamp(24px,2.4vw,32px);margin:0}.booking-field{display:flex;flex-direction:column;gap:8px}.booking-field label{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft);font-weight:700}.booking-field input,.booking-field select,.booking-field textarea{font:inherit;font-family:var(--font-body);background:var(--surface);border:1.5px solid var(--hairline-strong);border-radius:var(--radius-btn);padding:14px 16px;color:var(--ink);font-size:16px;outline:none;width:100%;resize:vertical;transition:border-color var(--t-fast) var(--ease),box-shadow var(--t-fast) var(--ease)}.booking-field input::-moz-placeholder,.booking-field textarea::-moz-placeholder{color:color-mix(in oklab,var(--ink) 36%,transparent)}.booking-field input::placeholder,.booking-field textarea::placeholder{color:color-mix(in oklab,var(--ink) 36%,transparent)}.booking-field input:focus,.booking-field select:focus,.booking-field textarea:focus{border-color:var(--purple-700);box-shadow:0 0 0 4px var(--purple-50)}.booking-field select{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;background-image:linear-gradient(45deg,transparent 50%,var(--purple-700) 50%),linear-gradient(135deg,var(--purple-700) 50%,transparent 50%);background-position:calc(100% - 20px) 22px,calc(100% - 15px) 22px;background-size:5px 5px;background-repeat:no-repeat}.booking-row-2{display:grid;grid-template-columns:1fr 1fr;gap:32px}.booking-fineprint{font-size:13px;color:var(--ink-soft);font-family:var(--font-display);margin:0;max-width:480px;line-height:1.5}.booking-toggle-row{display:flex;gap:12px;flex-wrap:wrap}.booking-pill{display:inline-flex;align-items:center;gap:10px;padding:12px 18px;border:1.5px solid var(--hairline-strong);border-radius:var(--radius-pill);font-size:14px;font-weight:600;white-space:nowrap;background:transparent;color:var(--ink);transition:all var(--t-fast) var(--ease);cursor:pointer}.booking-pill .dot{width:10px;height:10px;border-radius:50%;border:1px solid var(--hairline-strong);background:transparent;transition:all var(--t-fast) var(--ease)}.booking-pill.is-active{border-color:var(--ink);background:var(--ink);color:var(--bg)}.booking-pill.is-active .dot{background:var(--accent);border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in oklab,var(--accent) 40%,transparent)}.pill-tag{font-size:10px;letter-spacing:.12em;text-transform:uppercase;padding:3px 8px;background:var(--accent);color:var(--on-accent);border-radius:999px;margin-left:4px}.booking-pill.is-active .pill-tag{background:var(--bg);color:var(--ink)}.time-pills{display:flex;gap:8px;padding-top:8px}.time-pill{flex:1;padding:14px;border:1.5px solid var(--hairline-strong);border-radius:var(--radius-btn);background:transparent;color:var(--ink);font-size:14px;text-transform:capitalize;transition:all var(--t-fast) var(--ease);font-family:var(--font-display);font-weight:600;cursor:pointer}.time-pill:hover{border-color:var(--ink)}.time-pill.is-active{background:var(--ink);color:var(--bg);border-color:var(--ink)}.booking-submit{padding-top:24px;border-top:1px solid var(--hairline);display:flex;flex-direction:column;gap:16px;align-items:flex-start}.booking-submit .btn:disabled{opacity:.4;pointer-events:none}.booking-aside{display:grid;gap:20px;position:sticky;top:96px}.aside-card{border:1px solid var(--hairline);border-radius:var(--radius-lg);padding:32px;background:var(--surface)}.aside-card .eyebrow{margin-bottom:24px;display:inline-block}.aside-steps{list-style:none;padding:0;margin:0;display:grid;gap:20px}.aside-steps li{display:grid;grid-template-columns:32px 1fr;gap:16px;padding-bottom:20px;border-bottom:1px solid var(--hairline)}.aside-steps li:last-child{border-bottom:0;padding-bottom:0}.aside-steps li .mono{font-size:11px;color:var(--ink-soft);letter-spacing:.15em}.aside-steps li strong{font-family:var(--font-display);font-weight:400;font-size:18px;display:block;letter-spacing:-.01em}.aside-steps li p{margin-top:6px;font-size:13px;color:var(--ink-soft);line-height:1.5}.aside-card-dark{background:var(--purple-900);color:var(--white);border:0}.aside-card-dark .eyebrow{background:#ffffff1a;color:var(--white)}.aside-card-dark .eyebrow .dot{background:var(--accent)}.aside-phone{font-family:var(--font-display);font-weight:700;font-size:clamp(28px,3vw,40px);letter-spacing:-.01em;color:var(--white);margin-bottom:8px}.aside-mobile{font-family:var(--font-body);font-size:13px;color:color-mix(in oklab,var(--bg) 65%,transparent);margin-bottom:24px;letter-spacing:.05em}.aside-hours{border-top:1px solid rgba(255,255,255,.15);padding-top:20px;display:grid;gap:8px}.aside-hours-row{display:flex;justify-content:space-between;font-size:13px}.aside-hours-time{color:color-mix(in oklab,var(--bg) 55%,transparent);font-family:var(--font-body);font-size:11px;letter-spacing:.05em}.aside-card-quote{background:var(--bg-alt);position:relative;border:0}.aside-quote-mark{font-family:var(--font-display);font-size:80px;line-height:0;position:absolute;top:50px;left:24px;color:var(--accent);opacity:.5;-webkit-user-select:none;-moz-user-select:none;user-select:none}.aside-card-quote p{font-family:var(--font-display);font-size:22px;line-height:1.3;letter-spacing:-.01em;margin:16px 0 24px;padding-left:32px}.aside-card-quote .mono{font-size:10px;color:var(--ink-soft);letter-spacing:.18em}.booking-success{max-width:720px;padding:64px 48px;background:var(--bg-alt);border-radius:16px;text-align:center}.booking-success-icon{width:72px;height:72px;margin:0 auto 24px;background:var(--accent);color:var(--on-accent);border-radius:50%;display:grid;place-items:center}.booking-success-label{font-size:10px;letter-spacing:.2em;color:var(--ink-soft);text-transform:uppercase;font-weight:700}.booking-success-title{font-size:clamp(40px,5vw,64px);letter-spacing:-.02em;margin:16px 0 24px}.booking-success-title em{color:var(--accent)}.booking-success-lede{font-size:17px;line-height:1.55;color:var(--ink-soft);margin-bottom:40px;max-width:540px;margin-left:auto;margin-right:auto}.booking-success-lede strong{color:var(--ink);font-weight:500}.booking-receipt{background:var(--bg);border-radius:12px;padding:8px 24px;text-align:left;margin-bottom:32px}.booking-receipt-row{display:grid;grid-template-columns:140px 1fr;gap:16px;padding:18px 0;border-bottom:1px solid var(--hairline);font-size:15px;align-items:center}.booking-receipt-row:last-child{border-bottom:0}.booking-receipt-label{font-size:10px;color:var(--ink-soft);letter-spacing:.18em;text-transform:uppercase;font-weight:700}.booking-receipt-value{font-family:var(--font-display);font-size:18px;letter-spacing:-.01em}.booking-receipt-note{padding:14px 0;font-size:13px;color:var(--ink-soft);border-top:1px solid var(--hairline);text-align:center;font-family:var(--font-display);border-bottom:0}.booking-success-ctas{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.booking-receipt-timepref{text-transform:capitalize}@media (max-width: 960px){.booking-grid{grid-template-columns:1fr;gap:48px}.booking-row-2{grid-template-columns:1fr}.booking-aside{position:static}}
