:root{--brand: #354092;--accent: #1c7e7e;--charcoal: #333f48;--grey: #5a5a5e;--line: #d4d8e0;--surface: #ffffff;--surface-2: #f5f6f9;--ok: #1e6b35;--ok-50: #e7f4ec;--warn: #7a4f00;--warn-50: #fdf3dc;--bad: #a3221b;--bad-50: #fbeaea;--info-50: #eef0f9;--radius: 10px;--navy: var(--brand);--navy-50: #eef0f9;--navy-100: #dde1f2;--teal: var(--accent)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:Arial,system-ui,-apple-system,Segoe UI,sans-serif;font-size:17px;line-height:1.5;color:var(--charcoal);background:var(--surface-2)}h1,h2,h3{color:var(--brand);line-height:1.25;margin:0}h1{font-size:24px}h1:focus{outline:none}h2{font-size:19px}h3{font-size:17px}a{color:var(--brand)}p{margin:0 0 10px}:focus-visible{outline:3px solid var(--accent);outline-offset:2px}button{font:inherit}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.page{min-height:100vh;display:flex;flex-direction:column}.top{background:var(--brand);color:#fff}.top-inner{max-width:760px;margin:0 auto;padding:10px 16px;display:flex;align-items:center;gap:12px}.logo{height:40px;width:auto;max-width:120px;background:#fff;border-radius:6px;padding:2px}.logo-mark{width:36px;height:36px;border-radius:8px;background:#fff;flex:none;position:relative}.logo-mark:after{content:"";position:absolute;top:11px;right:11px;bottom:11px;left:11px;border-radius:50%;background:var(--accent)}.top-name{font-weight:700;font-size:15px;flex:1;line-height:1.25}.top-phone{color:#fff;font-weight:700;white-space:nowrap;text-decoration:none;border:2px solid rgba(255,255,255,.7);border-radius:22px;padding:8px 12px;min-height:44px;display:inline-flex;align-items:center}.main{flex:1;width:100%;max-width:760px;margin:0 auto;padding:16px;display:flex;flex-direction:column;gap:16px}.main>section{display:flex;flex-direction:column;gap:14px}.foot{max-width:760px;margin:0 auto;padding:16px;color:var(--grey);font-size:14px}.urgent{background:var(--bad-50);border:1px solid #f0c7c4;border-left:5px solid var(--bad);border-radius:var(--radius);padding:10px 14px;font-size:15px}.urgent p{margin:0 0 6px}.urgent p:last-child{margin:0}.urgent a{color:var(--bad)}.step-head{display:flex;flex-direction:column;gap:2px}.step-count{color:var(--grey);font-size:14px}.lead{color:var(--grey);margin:0}.q{margin-top:6px;font-size:18px}.hint{color:var(--grey);font-size:15px}.mt{margin-top:12px}.ok-text{color:var(--ok);font-weight:700}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:10px 20px;border-radius:24px;border:2px solid var(--brand);background:var(--surface);color:var(--brand);font-weight:700;cursor:pointer;text-decoration:none}.btn:disabled{opacity:.5;cursor:default}.btn-primary{background:var(--brand);color:#fff}.btn-lg{min-height:54px;font-size:18px}.btn-ghost{border-color:var(--line);color:var(--charcoal)}.btn-danger{background:var(--bad);border-color:var(--bad);color:#fff}.btn-ghost-danger{border-color:var(--bad);color:var(--bad)}.link,.link-btn{background:none;border:0;padding:0;color:var(--brand);text-decoration:underline;cursor:pointer;font:inherit}.nav-row{display:flex;justify-content:space-between;gap:12px;margin-top:8px;flex-wrap:wrap-reverse}.nav-row .btn-primary{flex:1;max-width:320px;margin-left:auto}.actions{display:flex;flex-direction:column;gap:10px}@media (min-width: 560px){.actions{flex-direction:row;flex-wrap:wrap}}.choices{display:flex;flex-direction:column;gap:8px}@media (min-width: 560px){.choices{flex-direction:row;flex-wrap:wrap}}.choice{text-align:left;min-height:52px;padding:12px 16px;border-radius:var(--radius);border:2px solid var(--line);background:var(--surface);color:var(--charcoal);cursor:pointer;display:flex;flex-direction:column}.choice.on{border-color:var(--brand);background:var(--info-50);box-shadow:inset 0 0 0 1px var(--brand)}.choice-label{font-weight:700}.choice-hint{font-size:14px;color:var(--grey)}.cards{display:grid;grid-template-columns:1fr;gap:10px}@media (min-width: 640px){.cards{grid-template-columns:1fr 1fr}}.card-choice{text-align:left;border:2px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:14px 16px;cursor:pointer;display:flex;flex-direction:column;gap:4px;color:var(--charcoal);min-height:72px}.card-choice:hover{border-color:var(--brand)}.card-choice.on{border-color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand)}.cc-title{font-weight:700;color:var(--brand);font-size:18px}.cc-len{color:var(--grey);font-size:15px}.cc-desc{font-size:15px}.cc-note{font-size:14px;color:var(--grey)}.picker{display:flex;flex-direction:column;gap:12px}.days{display:flex;gap:8px;overflow-x:auto;padding:4px 2px 10px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}.day{flex:none;scroll-snap-align:start;width:64px;min-height:64px;border-radius:var(--radius);border:2px solid var(--line);background:var(--surface);display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;color:var(--charcoal)}.day:disabled{background:var(--surface-2);color:#8e8e93;border-style:dashed;cursor:default}.day.on{border-color:var(--brand);background:var(--brand);color:#fff}.day-w{font-size:13px;font-weight:700}.day-n{font-size:15px}.times-head{font-size:18px}.times{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px}.time{min-height:48px;border-radius:24px;border:2px solid var(--brand);background:var(--surface);color:var(--brand);font-weight:700;cursor:pointer}.time.on{background:var(--brand);color:#fff}.time:disabled{opacity:.6}.field{display:flex;flex-direction:column;gap:6px;border:0;padding:0;margin:0}.field label,.field legend,.field .label{font-weight:700;padding:0}.field-hint{color:var(--grey);font-size:15px}.field input,.field textarea,.field select{font:inherit;font-size:17px;padding:10px 12px;min-height:48px;border:2px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--charcoal);width:100%}.field textarea{min-height:88px}.field.has-err input,.field.has-err textarea{border-color:var(--bad)}.err{color:var(--bad);font-size:15px;font-weight:700}.req{color:var(--bad)}.dob-boxes{display:flex;align-items:center;gap:8px}.dob-boxes label{display:block}.dob-boxes input{width:72px;text-align:center}.dob-boxes label:last-child input{width:96px}.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.tick{display:flex;gap:12px;align-items:flex-start;padding:12px;border:2px solid var(--line);border-radius:var(--radius);background:var(--surface);cursor:pointer}.tick input{width:26px;height:26px;flex:none;margin:0}.tick.has-err{border-color:var(--bad)}.notice{background:var(--surface);border-left:4px solid var(--accent);border-radius:var(--radius);padding:10px 14px;font-size:15px}.summary{display:grid;grid-template-columns:110px 1fr;gap:6px 12px;background:var(--surface);border-radius:var(--radius);padding:14px;margin:0;border:1px solid var(--line)}.summary dt{color:var(--grey)}.summary dd{margin:0;font-weight:700}.booked{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px}.booked-when{font-size:20px;font-weight:700;color:var(--brand)}.alert{border-radius:var(--radius);padding:12px 14px;border:1px solid transparent;font-size:16px}.alert-info{background:var(--info-50);border-color:#cfd5ee}.alert-ok{background:var(--ok-50);border-color:#bfe0c9;color:var(--ok)}.alert-warn{background:var(--warn-50);border-color:#f0dca7;color:var(--warn)}.alert-bad{background:var(--bad-50);border-color:#f0c7c4;color:var(--bad)}.spinner{display:flex;align-items:center;gap:10px;color:var(--grey);padding:8px 0}.spin{width:20px;height:20px;border-radius:50%;border:3px solid var(--line);border-top-color:var(--brand);animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.spin{animation:none}}.forms-online .fr-flow{gap:16px}.fr{display:flex;flex-direction:column;gap:18px}.fr-intro p{margin:0 0 6px;color:var(--grey)}.fr-section{border-top:1px solid var(--line);padding-top:14px;display:flex;flex-direction:column;gap:14px}.fr-section>h3{margin:0;color:var(--brand);font-size:18px}.fr-field{display:flex;flex-direction:column;gap:6px}.fr-label{font-weight:700;font-size:16px}.fr-help{color:var(--grey);font-size:14px}.fr-field input,.fr-field textarea,.fr-field select,.fr-signer input{font:inherit;font-size:17px;padding:10px 12px;min-height:48px;border:2px solid var(--line);border-radius:var(--radius);width:100%}.fr-field.has-err input,.fr-field.has-err textarea{border-color:var(--bad)}.fr-field .err,.fr-consent .err{color:var(--bad);font-size:14px}.req-star{color:var(--bad)}.fr-choices{display:flex;flex-wrap:wrap;gap:8px}.fr-choice{border:2px solid var(--line);background:var(--surface);border-radius:24px;padding:10px 16px;font-size:16px;min-height:48px;cursor:pointer;text-align:left;color:var(--charcoal)}.fr-choice.on{background:var(--brand);border-color:var(--brand);color:#fff}.fr-tick{display:inline-block;width:18px;font-weight:700}.fr-consent{display:flex;flex-wrap:wrap;align-items:flex-start;gap:10px;font-size:16px;padding:12px;border:2px solid var(--line);border-radius:var(--radius);background:var(--surface);cursor:pointer}.fr-consent input{width:26px;height:26px;margin-top:1px;flex:none}.fr-consent>span{flex:1}.fr-consent.has-err{border-color:var(--bad)}.fr-info{background:var(--navy-50);border-radius:var(--radius);padding:10px 14px;font-size:15px;line-height:1.5}.fr-info p{margin:0 0 8px}.fr-info p:last-child{margin:0}.fr-info.locked{background:var(--surface);border:1px solid var(--line);max-height:420px;overflow-y:auto}.fr-info.urgent{background:var(--bad-50);color:var(--bad);font-weight:700}.fr-rows{display:flex;flex-direction:column;gap:10px}.fr-row{border:1px solid var(--line);border-radius:var(--radius);padding:10px;display:flex;flex-direction:column;gap:10px;background:var(--surface)}.fr-row-head{display:flex;justify-content:space-between}.fr-flow{display:flex;flex-direction:column;gap:16px}.fr-title{margin:0;color:var(--brand)}.fr-progress{display:flex;align-items:center;justify-content:space-between;color:var(--grey);font-size:15px}.fr-steps{display:flex;gap:6px}.fr-steps span{width:22px;height:6px;border-radius:3px;background:var(--line)}.fr-steps span.done{background:var(--accent)}.fr-steps span.now{background:var(--brand)}.fr-declaration p{font-weight:700;margin:0}.fr-signer{display:grid;grid-template-columns:1fr;gap:12px}.fr-actions{display:flex;justify-content:flex-end}.fr-actions .btn{width:100%}@media (min-width: 560px){.fr-actions .btn{width:auto}}.fr-done{text-align:center;padding:40px 0}.sig-pad{position:relative;border:2px dashed var(--navy-100);border-radius:var(--radius);background:#fff}.sig-pad canvas{display:block;width:100%;height:auto;aspect-ratio:3 / 1;touch-action:none;cursor:crosshair}.sig-line{display:flex;justify-content:space-between;padding:4px 10px 8px;border-top:1px solid var(--line);color:var(--grey);font-size:14px}.sig-pad.disabled canvas{opacity:.3}.sig-cover{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:var(--grey);font-weight:700;text-align:center;padding:8px}.check{display:flex;gap:10px;align-items:flex-start}.check input{width:22px;height:22px}.mt-8{margin-top:8px}.small{font-size:14px}.muted{color:var(--grey)}
