:root{font-family:system-ui,-apple-system,"Segoe UI",sans-serif;color:#11243a;background:#f3f6f9;--navy:#0a1828;--blue:#0078ad;--line:#d5e0e9}*{box-sizing:border-box}body{margin:0}a{color:var(--blue)}header,main,footer{max-width:1160px;margin:auto}header{display:flex;justify-content:space-between;align-items:center;padding:28px 24px;gap:20px}.brand{font-size:26px;font-weight:800;text-decoration:none;color:var(--navy);letter-spacing:.02em}.brand span{display:block;font-size:11px;font-weight:500;letter-spacing:.1em;margin-top:3px}.language{font-size:12px;display:flex;flex-direction:column;gap:4px}.language select{padding:8px;width:130px}main{padding:24px}.intro{max-width:730px;margin:12px 0 36px}.eyebrow{font-size:12px;letter-spacing:.16em;font-weight:700;color:var(--blue)}h1{font-size:clamp(34px,5vw,58px);line-height:1.06;letter-spacing:-.03em;margin:12px 0 20px}p{line-height:1.6}.intro>p:last-child{font-size:19px;color:#50677c}.layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:30px;align-items:start}.card,.aside-card{border:1px solid var(--line);border-radius:20px;background:#fff;padding:30px}.aside-card{padding:24px;margin-bottom:18px}.aside-card:first-child{background:var(--navy);color:#fff}.aside-card h2{font-size:18px;margin-top:0}.aside-card ol{padding-left:20px}.aside-card li{margin:12px 0;line-height:1.55}.aside-card p{font-size:14px}fieldset{border:0;padding:0;margin:28px 0 32px}legend{font-size:20px;font-weight:750;padding:0;margin-bottom:16px}.services{display:grid;gap:10px}.service{position:relative;display:flex;align-items:center;gap:12px;border:1px solid var(--line);padding:16px;border-radius:12px;cursor:pointer}.service:has(input:checked){border:2px solid var(--blue);padding:15px;background:#eef8fc}.service input{width:18px;height:18px;accent-color:var(--blue);flex:none}.service strong{display:block;font-size:15px}.service small{display:block;color:#50677c;margin-top:4px}.fields{display:grid;gap:18px}label{font-weight:600;font-size:14px}input,select,textarea{display:block;font:inherit;color:inherit;background:#fff;border:1px solid #b8c9d8;border-radius:8px;padding:12px;width:100%;margin-top:7px}input:focus,select:focus,textarea:focus{outline:3px solid #a8dcef;outline-offset:2px}.hint{font-size:13px;color:#50677c}.slots{display:flex;gap:9px;flex-wrap:wrap;margin-top:18px}.slots button{background:#fff;border:1px solid #a8bfce;border-radius:8px;padding:11px 14px;min-width:104px}.slots button[aria-pressed=true]{background:var(--blue);color:#fff;border-color:var(--blue)}button{font:inherit;cursor:pointer}.primary,.secondary{display:inline-block;border-radius:9px;padding:13px 18px;font-weight:650;text-decoration:none;text-align:center;cursor:pointer;margin:6px 6px 6px 0}.primary{background:var(--blue);color:#fff;border:1px solid var(--blue)}.secondary{background:#fff;color:var(--navy);border:1px solid var(--line)}button:disabled{opacity:.5;cursor:wait}.summary{padding:18px;background:#f0f5f8;border-radius:10px;line-height:1.7;margin:18px 0;font-weight:550;white-space:pre-line}#notice{color:#345b73;line-height:1.6}#notice.error{color:#9b203b;background:#fff1f2;padding:15px;border-radius:10px}#code{max-width:220px;font-size:24px;letter-spacing:.2em}footer{padding:38px 24px;color:#50677c;font-size:13px}.skip{position:absolute;top:-100px;left:20px;background:#fff;padding:12px;z-index:20}.skip:focus{top:0}[hidden]{display:none!important}#result h2{font-size:28px;margin-top:10px}.admin{max-width:1000px}.admin textarea{font-family:monospace;min-height:260px}.admin pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px}.admin .card{margin-bottom:20px}.appointment{padding:16px 0;border-bottom:1px solid var(--line)}@media(max-width:720px){header{padding:22px 18px}.brand{font-size:22px}main{padding:12px 18px}.layout{grid-template-columns:1fr;gap:22px}.card{padding:22px 18px}.intro{margin-top:14px}.primary,.secondary{max-width:100%}.slots button{min-width:90px}.aside-card{padding:22px}h1{font-size:38px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}
.time-picker{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:24px;border:1px solid var(--line);border-radius:14px;padding:20px}.calendar-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:20px}.calendar h3,.day-times h3{font-size:14px;margin:0;line-height:1.5}.calendar h3{text-transform:capitalize}.month-controls{display:flex;gap:4px}.month-controls button{border:0;background:transparent;color:var(--blue);width:28px;height:32px;font-size:24px;border-radius:6px}.weekdays,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;text-align:center}.weekdays{font-size:11px;color:#60758a;margin-bottom:10px}.calendar-days button{border:0;background:transparent;color:var(--navy);border-radius:8px;min-height:36px;font-size:12px;padding:0}.calendar-days button.today{box-shadow:inset 0 0 0 1px var(--line)}.calendar-days button[aria-pressed=true]{background:var(--blue);color:white;font-weight:700}.calendar-days button:disabled{color:#a5b3bf;opacity:1;cursor:default}.calendar-days button:not(:disabled):hover,.month-controls button:not(:disabled):hover{background:#e6f3f9;color:var(--navy)}.calendar-days button:focus-visible,.month-controls button:focus-visible,.slots button:focus-visible{outline:3px solid #a8dcef;outline-offset:2px}.day-times{border-left:1px solid var(--line);padding-left:20px}.day-times .slots{display:grid;grid-template-columns:1fr;margin-top:18px;gap:8px}.day-times .slots button{width:100%;min-width:0;padding:10px 6px;font-size:13px}.timezone-note{font-size:12px;color:#50677c;margin-bottom:0;display:flex;gap:8px;align-items:center}@media(max-width:1000px) and (min-width:721px){.time-picker{grid-template-columns:1fr}.day-times{border-left:0;border-top:1px solid var(--line);padding:18px 0 0}.day-times .slots{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.time-picker{grid-template-columns:1fr;padding:16px;gap:20px}.calendar-days button{min-height:38px;font-size:14px}.day-times{border-left:0;border-top:1px solid var(--line);padding:18px 0 0}.day-times .slots{grid-template-columns:repeat(2,minmax(0,1fr))}}
.monthly-plans{margin-top:26px;padding-top:22px;border-top:1px solid var(--line)}.monthly-plans h3{font-size:16px;margin:0 0 14px}.plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.plan{background:#f5f8fb;border:1px solid var(--line);border-radius:12px;padding:16px;display:flex;flex-direction:column}.plan h4{font-size:18px;margin:0}.plan .plan-price{font-size:20px;font-weight:750;color:var(--blue);margin:8px 0}.plan p{font-size:13px;margin:4px 0 14px}.plan .secondary{font-size:12px;margin-top:auto;margin-right:0;padding:10px}@media(max-width:520px){.plan-grid{grid-template-columns:1fr}}
.plan.selected-plan{border:2px solid var(--blue);padding:15px;background:#eef8fc}.booking-policy{background:#f5f8fb;border:1px solid var(--line);border-radius:12px;padding:18px;margin-top:20px}.booking-policy h3{font-size:16px;margin:0 0 8px}.booking-policy p{font-size:13px;margin:0 0 16px}.policy-check{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.5}.policy-check input{width:18px;height:18px;flex:none;margin:1px 0;accent-color:var(--blue)}#billing-options{margin-top:18px}#plan-title{font-size:26px}
.intro .preview-note{font-size:12px!important;background:#fff7e3;border:1px solid #ead39d;color:#765318!important;padding:12px 16px;border-radius:10px;line-height:1.5}

.booking-logo{display:block;width:220px;max-width:100%;height:auto}.brand{max-width:55%}@media(max-width:480px){.booking-logo{width:180px}}
