.booking-header{padding:42px 0 26px;max-width:900px}.booking-header h1{font-size:58px}.booking-header>.intro{max-width:700px;font-size:17px;margin:20px 0}.demo-notice{border:1px solid #7b719b;background:#eee8fb;padding:16px 20px;border-radius:14px;font-size:14px;line-height:1.6}.demo-notice strong{display:block;font-size:15px;margin-bottom:3px}.booking-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:48px;padding:12px 0 90px;align-items:start}.booking-panel{border:1px solid var(--line);background:#fffdf7;border-radius:24px;padding:34px;min-width:0}.booking-progress{display:flex;list-style:none;padding:0;margin:0 0 32px;border-bottom:1px solid var(--line);gap:12px;padding-bottom:25px}.booking-progress li{font-size:12px;display:flex;align-items:center;gap:7px;flex:1;line-height:1.3}.booking-progress span{width:25px;height:25px;display:grid;place-items:center;border-radius:50%;background:#e8e4db;flex-shrink:0;font-weight:600}.booking-progress [aria-current] span{background:var(--ink);color:var(--paper)}.booking-progress .done span{background:var(--lime)}.booking-panel h2{font-size:36px;margin-bottom:16px}.booking-panel h2:focus{outline:0}.booking-panel .step-intro{font-size:15px;line-height:1.65;margin-bottom:26px}.booking-actions{display:flex;gap:16px;align-items:center;justify-content:space-between;margin-top:30px;flex-wrap:wrap}.booking-actions button{cursor:pointer}.booking-actions .back{background:transparent;border:0;padding:13px 10px;text-decoration:underline;text-underline-offset:4px;font-size:14px;min-height:48px}.booking-panel label{font-size:14px;font-weight:600;display:block;margin-bottom:8px}.booking-panel fieldset{border:0;margin:0 0 25px;padding:0;min-width:0}.booking-panel legend{font-size:15px;font-weight:600;margin-bottom:12px}.booking-panel input:not([type=radio]){display:block;width:100%;border:1px solid #8a8e9e;background:#fffdf9;border-radius:10px;min-height:50px;font:inherit;font-size:16px;padding:11px 13px;color:var(--ink)}.booking-panel input:focus-visible{outline:3px solid #202849;outline-offset:3px}.booking-panel .form-field{margin-bottom:22px}.hint{font-size:12px;color:#555b72;display:block;margin-top:7px;line-height:1.6}.service-option{border:2px solid var(--ink);background:#f0ebfb;border-radius:16px;padding:24px;display:flex!important;align-items:start;gap:15px;cursor:pointer}.service-option input{width:20px;height:20px;accent-color:var(--ink);flex-shrink:0;margin:5px 0}.service-option .service-title{display:block;font-family:var(--display);font-size:27px;font-weight:500}.service-option small{display:block;font-weight:400;font-size:14px;line-height:1.6;margin-top:8px}.date-slots{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.date-slots button{background:var(--paper);color:var(--ink);border:1px solid #9b9daa;border-radius:10px;padding:13px 8px;font-size:14px;cursor:pointer;min-height:48px}.date-slots button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:white}.date-slots button:disabled{opacity:.45;cursor:not-allowed;text-decoration:line-through}.error-box{color:#8f2b21;background:#ffe8e0;border:1px solid #c94d3c;padding:13px 16px;border-radius:10px;font-size:14px;margin-top:18px}.error-box:empty{display:none}.review-list{margin:24px 0}.review-row{display:flex;justify-content:space-between;gap:22px;border-bottom:1px solid var(--line);padding:18px 0;font-size:15px;align-items:start}.review-row dt{font-size:12px;color:#555b72;margin-bottom:6px}.review-row dd{margin:0;overflow-wrap:anywhere}.edit-button{background:none;border:0;text-decoration:underline;text-underline-offset:4px;font-size:13px;min-height:44px;padding:8px;cursor:pointer;flex-shrink:0}.booking-side{padding:26px 0}.booking-side h3{font-size:27px;margin-bottom:20px}.booking-side p{font-size:14px;line-height:1.7}.booking-side a:not(.button){font-size:15px}.booking-side .side-note{margin-top:30px;padding-top:25px;border-top:1px solid var(--line)}.confirmation-icon{width:64px;height:64px;background:var(--lime);border-radius:50%;display:grid;place-items:center;margin-bottom:24px}.confirmation-icon .icon{width:30px;height:30px}.reference{font-family:monospace;font-size:16px;background:var(--paper);padding:15px;border:1px dashed #8a8e9e;border-radius:9px;display:block;margin:24px 0;overflow-wrap:anywhere}.booking-panel .confirmation-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.confirmation-actions .button{font-size:13px;min-height:48px;padding-inline:18px;cursor:pointer}.button:disabled{opacity:.65;cursor:wait;transform:none}.booking-panel .privacy-note{font-size:12px;color:#555b72;margin-top:20px}.cancel-panel{background:#fff0e9;border:1px solid #c94d3c;padding:20px;border-radius:12px;margin-top:22px}.cancel-panel h3{font-size:24px;margin-bottom:14px}.booking-status{font-size:14px;min-height:0}.booking-status:not(:empty){padding:12px 0}.book-demo-pill{display:inline-flex;font-size:10px;line-height:1.3;text-transform:uppercase;letter-spacing:.08em;padding:5px 8px;border-radius:5px;background:var(--lime);font-weight:700;vertical-align:middle;margin-left:8px}.booking-noscript{padding:30px;font-size:16px;border:1px solid var(--ink);border-radius:16px}.sample-help{font-size:13px;background:var(--lime);padding:14px 16px;border-radius:10px;margin-bottom:24px}.check-confirm{display:flex!important;gap:12px;align-items:start;font-size:13px!important;font-weight:400!important;line-height:1.6;margin-top:22px}.check-confirm input{display:inline-block!important;width:20px!important;min-height:20px!important;height:20px;flex-shrink:0;accent-color:var(--ink);margin-top:2px}
@media(max-width:1000px){.booking-layout{grid-template-columns:minmax(0,1fr) 230px;gap:28px}.booking-panel{padding:26px}.booking-progress{gap:8px}.booking-progress li{font-size:11px}}
@media(max-width:799px){.booking-header{padding-block:32px 20px}.booking-header h1{font-size:44px}.booking-header>.intro{font-size:15px}.demo-notice{padding:14px 16px;font-size:12px}.demo-notice strong{font-size:13px}.booking-layout{grid-template-columns:1fr;gap:28px;padding-bottom:60px}.booking-panel{padding:25px 20px;border-radius:20px}.booking-progress{gap:8px;margin-bottom:27px;padding-bottom:20px}.booking-progress li{flex-direction:column;align-items:center;text-align:center;gap:7px;font-size:10px}.booking-panel h2{font-size:31px}.booking-panel .step-intro{font-size:14px}.booking-actions{gap:10px}.booking-actions .button{font-size:13px;padding-inline:20px}.booking-side{padding:12px 6px}.booking-side .side-note{margin-top:22px}.service-option{padding:19px}.service-option .service-title{font-size:25px}.date-slots{gap:8px}.date-slots button{font-size:13px}.review-row{gap:10px}.booking-panel .confirmation-actions{flex-direction:column;align-items:stretch}.reference{font-size:14px}.review-row dd{font-size:14px}}

.booking-banner{position:sticky;top:0;z-index:10;background:var(--paper);padding:8px 0;border-bottom:1px solid var(--line)}.booking-panel h2{scroll-margin-top:145px}

.result-disclaimer{font-size:14px;line-height:1.65;border-top:1px solid var(--line);padding-top:18px;margin:24px 0 0}.booking-panel h2{scroll-margin-top:25px}
