.booking-page{min-height:100vh;display:flex;flex-direction:column}.booking-header{display:flex;align-items:center;gap:28px;min-height:104px;background:var(--pi-navy);color:#fff}.booking-header>a:first-child{margin-right:auto}.booking-header img{display:block;width:165px;height:auto}.booking-back{display:flex;align-items:center;gap:18px;font-size:14px}.booking-header .pi-languages{padding:0;border:0}.booking-back .arrow{transform:rotate(-135deg)}.booking-shell{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:8vw;padding-block:80px 100px;flex:1}.booking-intro h1{font-size:clamp(38px,4.5vw,76px);letter-spacing:-.04em;line-height:1.03;font-weight:750;max-width:12ch}.booking-intro>p{font-size:20px;line-height:1.5;margin-top:24px;max-width:34ch}.booking-facts{list-style:none;margin:32px 0 0;padding:0;font-size:15px;line-height:1.7}.booking-facts li{border-top:1px solid var(--pi-rule);padding:12px 0}.booking-email{font-size:15px!important;padding-top:22px}.booking-email a{display:inline-flex;align-items:center;gap:14px;font-size:22px;font-weight:650;text-decoration:underline;text-underline-offset:5px}.booking-workspace{min-width:0}.booking-status{font-size:19px;line-height:1.5;margin-bottom:24px!important}.booking-status a{text-decoration:underline;color:var(--pi-blue)}.booking-date-zone{display:grid;grid-template-columns:1fr 1.2fr;gap:20px}.booking-field{margin-bottom:20px}.booking-field label{display:block;font-size:15px;font-weight:650;margin-bottom:9px}.booking-field input,.booking-field textarea,.booking-field select{display:block;width:100%;min-height:52px;padding:13px 14px;border:1px solid #8294bb;border-radius:8px;color:var(--pi-navy);background:#fff;font-size:16px;line-height:1.45}.booking-field input:focus,.booking-field textarea:focus,.booking-field select:focus{outline:2px solid var(--pi-blue);outline-offset:2px}.booking-field textarea{resize:vertical;min-height:115px}.booking-field input:disabled,.booking-field select:disabled{opacity:.6}.booking-field ::placeholder{color:#4d628a;opacity:1}.booking-zone-note{font-size:13px;color:#3f557f;margin-top:-6px!important;margin-bottom:28px!important}.booking-times{border:0;margin:0;padding:0;min-width:0}.booking-times legend{padding:0;margin-bottom:14px;font-weight:650;font-size:17px}.booking-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(95px,1fr));gap:10px}.booking-slot{position:relative;cursor:pointer}.booking-slot input{position:absolute;opacity:0;width:1px;height:1px}.booking-slot span{display:block;padding:12px 8px;border:1px solid #8294bb;border-radius:8px;text-align:center;font-size:16px;font-variant-numeric:tabular-nums;transition:background .15s}.booking-slot input:checked+span{color:#fff;background:var(--pi-blue);border-color:var(--pi-blue)}.booking-slot input:focus-visible+span{outline:3px solid var(--pi-blue);outline-offset:3px}.booking-slot:hover span{border-color:var(--pi-blue)}.booking-slot input:disabled+span{opacity:.5;cursor:wait}.booking-details{padding-top:28px}.booking-selection{font-size:18px;font-weight:650;margin-bottom:24px!important}.booking-field-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px}.booking-submit{margin-top:4px;min-height:54px;width:100%;font-size:16px}.booking-privacy{font-size:13px;line-height:1.6;color:#3f557f;margin-top:16px!important}.booking-privacy a{text-decoration:underline}.booking-error{padding-block:12px;color:#a02c17;font-size:15px}.booking-honey{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.booking-text-button{display:inline-flex;min-height:44px;align-items:center;padding:8px 0;margin-right:20px;color:var(--pi-blue);border:0;background:none;cursor:pointer;text-decoration:underline;text-underline-offset:5px;font-size:15px}.booking-text-button:disabled{opacity:.5;cursor:wait}.booking-test-note{padding:14px 18px;border:1px solid #aa481f;background:#fff1e9;color:#772a10;font-size:14px;margin-bottom:24px!important}.booking-confirmation h2,.booking-current h2{font-size:clamp(28px,3vw,44px);line-height:1.1;letter-spacing:-.03em;font-weight:740}.booking-confirmation>p,.booking-current>p{margin-top:20px;line-height:1.6}.booking-confirmation>p:first-of-type,.booking-current>p:first-of-type{font-size:22px;font-weight:650}.booking-confirmation>a{margin-top:24px}.booking-link{display:flex;width:fit-content;align-items:center;gap:16px;color:var(--pi-blue)!important;text-decoration:underline!important;text-underline-offset:5px}.booking-management-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:24px}.booking-current{margin-bottom:32px}.booking-cancel-confirm{padding-block:24px;border-top:1px solid var(--pi-rule);margin-top:20px}.booking-cancel-confirm .pi-button{margin-top:16px;margin-right:16px}.booking-footer{display:flex;flex-wrap:wrap;gap:20px 32px;padding-block:28px;background:var(--pi-navy);color:var(--pi-muted);font-size:13px}.booking-footer span:first-child{margin-right:auto}.booking-footer a{text-decoration:underline}.booking-page select{color-scheme:light}.booking-back .arrow{transform:rotate(180deg)}@media(max-width:800px){.booking-header{min-height:82px;gap:16px}.booking-header img{width:130px}.booking-back{font-size:0;gap:0;min-width:28px}.booking-back .arrow{width:22px}.booking-shell{display:block;padding-top:40px;padding-bottom:56px}.booking-intro h1{font-size:clamp(40px,10vw,64px);max-width:14ch}.booking-intro>p{font-size:18px;margin-top:20px}.booking-facts{margin-top:24px;display:flex;gap:10px 20px;flex-wrap:wrap}.booking-facts li{border:0;padding:0;font-size:13px}.booking-email{padding-top:0;margin-top:22px!important}.booking-email a{font-size:20px}.booking-workspace{margin-top:44px;padding-top:28px;border-top:1px solid var(--pi-rule)}.booking-date-zone,.booking-field-pair{grid-template-columns:1fr;gap:0}.booking-status{font-size:17px}.booking-slots{grid-template-columns:repeat(3,minmax(0,1fr))}.booking-management-actions{gap:10px 20px}.booking-footer{font-size:12px;gap:16px}.booking-footer span:first-child{width:100%}.booking-footer a{margin-right:auto}}
