:root{--brand: #1a2b4e;--brand-2: #2a4172;--brand-dark: #11203f;--accent: #1a2b4e;--accent-2: #11203f;--ink: #11203f;--muted: #5b6678;--line: #e3e7ee;--bg: #f4f6fa;--card: #ffffff;--green: #1a2b4e;--radius: 18px;--shadow: 0 14px 44px rgba(17, 32, 63, .1);--font-heading: "Archivo", system-ui, -apple-system, "Segoe UI", sans-serif;--font-body: "DM Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;font-family:var(--font-body)}*{box-sizing:border-box}html,body{margin:0;padding:0;min-height:100%;color:var(--ink);background:radial-gradient(1100px 560px at 50% -12%,#ffffff 0%,var(--bg) 55%,#e9edf5 100%)}body.modal-open{overflow:hidden}#app{display:flex;justify-content:center;align-items:flex-start;min-height:100vh;padding:28px 16px 56px}.shell{width:100%;max-width:480px}.brand{display:flex;align-items:center;justify-content:center;margin:2px 0 16px}.brand__logo{width:100%;max-width:190px;height:auto;display:block}.progress{background:#f1f3fb;border:1px solid var(--line);border-radius:14px 14px 0 0;padding:12px 18px 14px}.progress__label{font-size:13px;color:var(--muted);margin-bottom:8px}.progress__track{height:6px;background:#e2e6f3;border-radius:999px;overflow:hidden}.progress__bar{height:100%;background:linear-gradient(90deg,var(--brand),var(--brand-2));border-radius:999px;transition:width .35s ease}.card{background:var(--card);border:1px solid var(--line);border-top:none;border-radius:0 0 var(--radius) var(--radius);box-shadow:var(--shadow);padding:26px 22px 28px}.card--standalone{border-top:1px solid var(--line);border-radius:var(--radius)}.badge{display:inline-flex;align-items:center;gap:6px;margin:6px auto 14px;padding:6px 14px;border-radius:999px;background:#eaeff7;color:var(--brand);font-size:13px;font-weight:600}.h1{font-family:var(--font-heading);letter-spacing:-.02em;text-align:center;font-size:27px;line-height:1.15;font-weight:800;margin:4px 0 2px}.h1 .accent{color:var(--brand)}.h1--left{text-align:left;font-size:28px}.subtitle{text-align:center;color:var(--muted);font-size:15px;margin:14px 0 18px}.subtitle--left{text-align:left;font-size:16px}.eyebrow{font-family:var(--font-heading);letter-spacing:-.02em;text-align:left;font-size:27px;font-weight:800;margin:6px 0 4px}.divider{height:1px;background:var(--line);margin:16px 0}.options{display:flex;flex-direction:column;gap:14px;margin-top:6px}.option{display:flex;align-items:center;gap:16px;width:100%;text-align:left;background:#fff;border:1.5px solid var(--line);border-radius:14px;padding:18px;cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .05s}.option:hover{border-color:#b9c4d8;box-shadow:0 6px 20px #1a2b4e1a}.option:active{transform:scale(.995)}.option.is-selected{border-color:var(--brand);box-shadow:0 0 0 3px #1a2b4e24}.option__icon{flex:0 0 auto;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;color:#fff}.option__icon svg{width:26px;height:26px}.option__body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column}.option__title{display:block;font-family:var(--font-heading);font-size:17px;font-weight:700;line-height:1.25;letter-spacing:-.01em}.option__desc{display:block;font-size:14px;color:var(--muted);margin-top:4px;line-height:1.35}.option__radio{flex:0 0 auto;width:22px;height:22px;border-radius:50%;border:2px solid #cbd5e1;position:relative}.option.is-selected .option__radio{border-color:var(--brand)}.option.is-selected .option__radio:after{content:"";position:absolute;top:4px;right:4px;bottom:4px;left:4px;border-radius:50%;background:var(--brand)}.g-navy{background:linear-gradient(135deg,#2a4172,#1a2b4e)}.g-steel{background:linear-gradient(135deg,#51648c,#2a4172)}.g-green,.g-blue,.g-teal,.g-brand{background:linear-gradient(135deg,#2a4172,#1a2b4e)}.g-red,.g-purple,.g-orange{background:linear-gradient(135deg,#51648c,#2a4172)}.field{margin-top:14px}.field__label{display:block;font-size:14px;font-weight:600;margin-bottom:6px;color:#334155}.input,.gmp-wrap :is(input){width:100%;font-size:16px;padding:14px 14px 14px 42px;border:1.5px solid var(--line);border-radius:12px;outline:none;background:#fff url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="%2364748b" stroke-width="2"><path stroke-linecap="round" stroke-linejoin="round" d="M15 10.5a3 3 0 11-6 0 3 3 0 016 0z"/><path stroke-linecap="round" stroke-linejoin="round" d="M19.5 10.5c0 7.142-7.5 11.25-7.5 11.25S4.5 17.642 4.5 10.5a7.5 7.5 0 1115 0z"/></svg>') no-repeat 12px center / 20px 20px}.input--plain{padding-left:14px;background-image:none}.input:focus{border-color:var(--brand);box-shadow:0 0 0 3px #1a2b4e24}.input.is-error{border-color:#ef4444}.error-text{color:#ef4444;font-size:13px;margin-top:6px}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.gmp-wrap{position:relative}.gmp-wrap gmp-place-autocomplete,.gmp-wrap #gmp-autocomplete{width:100%;--gmpx-color-surface: #fff;--gmpx-font-family-base: inherit;color-scheme:light!important}.addr-trigger{width:100%;display:flex;align-items:center;gap:10px;text-align:left;background:#fff;border:1.5px solid var(--line);border-radius:12px;padding:15px 14px;cursor:pointer;transition:border-color .15s,box-shadow .15s}.addr-trigger:hover{border-color:#b9c4d8}.addr-trigger--filled{border-color:var(--brand);box-shadow:0 0 0 3px #1a2b4e1a}.addr-trigger__pin{flex:0 0 auto;width:20px;height:20px;color:var(--muted)}.addr-trigger--filled .addr-trigger__pin{color:var(--brand)}.addr-trigger__placeholder{flex:1 1 auto;color:#98a1b0;font-size:16px}.addr-trigger__text{flex:1 1 auto;color:var(--ink);font-size:15px;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.addr-trigger__change{flex:0 0 auto;color:var(--brand);font-weight:700;font-size:13px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#11203f73;display:flex;align-items:center;justify-content:center;padding:20px}.modal{width:100%;max-width:440px;background:#fff;border-radius:16px;box-shadow:0 24px 60px #11203f4d;overflow:hidden}.modal__head{display:flex;align-items:center;justify-content:space-between;padding:15px 16px 15px 18px;border-bottom:1px solid var(--line)}.modal__title{font-family:var(--font-heading);font-weight:700;font-size:17px}.modal__close{background:none;border:none;cursor:pointer;color:var(--muted);display:grid;place-items:center;width:32px;height:32px;border-radius:8px}.modal__close:hover{background:#f1f3f8}.modal__body{padding:18px;min-height:120px}.modal__hint{margin:12px 2px 0;font-size:13px;color:var(--muted)}.modal__altlink{display:block;width:100%;margin-top:16px;padding:6px;background:none;border:none;cursor:pointer;color:var(--brand);font-weight:600;font-size:14px;text-align:center}.modal__altlink:hover{text-decoration:underline}.modal-enter-active,.modal-leave-active{transition:opacity .2s ease}.modal-enter-active .modal,.modal-leave-active .modal{transition:transform .24s ease}.modal-enter-from,.modal-leave-to{opacity:0}.modal-enter-from .modal,.modal-leave-to .modal{transform:translateY(14px)}.btn{width:100%;border:none;cursor:pointer;font-family:var(--font-heading);font-size:16px;font-weight:700;letter-spacing:-.01em;padding:16px 18px;border-radius:12px;background:linear-gradient(90deg,var(--accent),var(--accent-2));color:#fff;box-shadow:0 8px 20px #1a2b4e47;transition:opacity .15s,transform .05s,box-shadow .15s}.btn:hover{opacity:.94}.btn:active{transform:scale(.99)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn--ghost{background:none;box-shadow:none;color:var(--muted);font-weight:600;font-size:14px;padding:8px;width:auto}.actions{margin-top:22px}.back{display:inline-flex;align-items:center;gap:6px;margin-bottom:4px}.testimonial{margin-top:22px;background:#f8fafc;border:1px solid var(--line);border-radius:12px;padding:14px 16px;display:flex;gap:12px}.testimonial__avatar{flex:0 0 auto;width:36px;height:36px;border-radius:50%;background:#dbeafe;color:#2563eb;display:grid;place-items:center;font-weight:700}.testimonial__name{font-weight:600;font-size:14px}.testimonial__stars{color:#f59e0b;font-size:13px}.testimonial__text{color:var(--muted);font-size:13px;margin-top:4px;line-height:1.45}.trust{margin-top:22px;display:flex;align-items:center;justify-content:center;gap:26px}.trust img,.trust svg{height:30px}.trust__google{display:flex;flex-direction:column;align-items:center;gap:2px}.trust__stars{color:#f59e0b;font-size:12px;letter-spacing:1px}.outcome{text-align:center;padding:8px 4px}.outcome__icon{width:72px;height:72px;border-radius:50%;margin:6px auto 16px;display:grid;place-items:center}.outcome__icon svg{width:38px;height:38px;color:#fff}.outcome__icon--warn{background:linear-gradient(135deg,#fbbf24,#f59e0b)}.outcome__icon--info{background:linear-gradient(135deg,#60a5fa,#3b82f6)}.outcome h2{font-family:var(--font-heading);letter-spacing:-.02em;font-size:24px;margin:0 0 8px}.outcome p{color:var(--muted);font-size:15px;line-height:1.5;margin:0 auto 14px;max-width:360px}.booking{width:100%;min-height:680px;border:none;border-radius:12px}.booking-note{text-align:center;color:var(--muted);font-size:13px;margin-top:10px}.spinner{width:26px;height:26px;border:3px solid #e2e8f0;border-top-color:var(--brand);border-radius:50%;animation:spin .8s linear infinite;margin:18px auto}@keyframes spin{to{transform:rotate(360deg)}}.fade-enter-active,.fade-leave-active{transition:opacity .22s ease,transform .22s ease}.fade-enter-from{opacity:0;transform:translateY(8px)}.fade-leave-to{opacity:0;transform:translateY(-8px)}@media(max-width:520px){#app{padding:18px 12px 44px}.card{padding:22px 18px 24px}.h1,.h1--left,.eyebrow{font-size:22px}.subtitle{font-size:14px;margin:12px 0 16px}.subtitle--left{font-size:14px}.badge{font-size:12px}.option{padding:15px;gap:13px}.option__icon{width:46px;height:46px}.option__icon svg{width:23px;height:23px}.option__title{font-size:15px}.option__desc{font-size:12.5px}.field__label{font-size:13px}.btn{font-size:15px;padding:14px 16px}.outcome h2{font-size:20px}.outcome p{font-size:14px}.modal-overlay{align-items:stretch;padding:0}.modal{max-width:100%;height:100%;border-radius:0;display:flex;flex-direction:column}.modal__body{flex:1 1 auto;overflow-y:auto;-webkit-overflow-scrolling:touch}.modal-enter-from .modal,.modal-leave-to .modal{transform:translateY(100%)}}@media(max-width:380px){.h1,.h1--left,.eyebrow{font-size:20px}.option__title{font-size:14px}.option__desc{font-size:12px}}
