.hpl-booking *,.hpl-booking-admin *{box-sizing:border-box}.hpl-booking{max-width:1180px;margin:auto;border:1px solid #d1d7e0;border-radius:10px;overflow:hidden;background:white}.hpl-booking .steps,.hpl-booking-admin .steps{display:flex;justify-content:center;gap:24px;padding:18px;border-bottom:1px solid #d1d7e0}.hpl-booking .muted,.hpl-booking-admin .muted{color:#8792a0}.hpl-booking .columns,.hpl-booking-admin .columns{display:grid;grid-template-columns:1fr 1fr}.hpl-booking .columns.booking,.hpl-booking-admin .columns.booking{grid-template-columns:1fr 1.25fr .8fr}.hpl-booking .details,.hpl-booking-admin .details,.hpl-booking .calendar-panel,.hpl-booking-admin .calendar-panel,.hpl-booking .times,.hpl-booking-admin .times{padding:30px;min-width:0}.hpl-booking .calendar-panel,.hpl-booking-admin .calendar-panel,.hpl-booking .times,.hpl-booking-admin .times{border-left:1px solid #d1d7e0;position:relative}.hpl-booking h1,.hpl-booking-admin h1{font-size:24px;margin:0 0 24px}.hpl-booking h2,.hpl-booking-admin h2{font-size:19px;margin:0;flex:1}.hpl-booking p,.hpl-booking-admin p{line-height:1.55}.hpl-booking label,.hpl-booking-admin label{display:block;font-weight:600;margin:18px 0 0}.hpl-booking b,.hpl-booking-admin b{color:#e42642}.hpl-booking input,.hpl-booking-admin input,.hpl-booking select,.hpl-booking-admin select,.hpl-booking textarea,.hpl-booking-admin textarea{width:100%;margin-top:9px;border:1px solid #cfd5e1;border-radius:10px;padding:14px 18px;background:#f8f9fb;color:#092039;font:inherit}.hpl-booking input:focus,.hpl-booking-admin input:focus,.hpl-booking select:focus,.hpl-booking-admin select:focus,.hpl-booking textarea:focus,.hpl-booking-admin textarea:focus{outline:2px solid #174fbd;outline-offset:2px}.hpl-booking .names,.hpl-booking-admin .names{display:grid;grid-template-columns:1fr 1fr;gap:16px}.hpl-booking .consent,.hpl-booking-admin .consent{display:flex;align-items:flex-start;gap:9px;font-size:14px;font-weight:400;line-height:1.5}.hpl-booking .consent input,.hpl-booking-admin .consent input,.hpl-booking .choice input,.hpl-booking-admin .choice input{width:18px;flex:none;margin:3px 0}.hpl-booking .legal,.hpl-booking-admin .legal{font-size:14px}.hpl-booking .legal a,.hpl-booking-admin .legal a{color:inherit}.hpl-booking button,.hpl-booking-admin button{font:inherit;border:1px solid #d1d7e0;padding:12px;border-radius:8px;background:white;color:#092039;cursor:pointer}.hpl-booking button:hover:not(:disabled),.hpl-booking-admin button:hover:not(:disabled){border-color:#0732b8;background:#f0f4ff}.hpl-booking .primary,.hpl-booking-admin .primary{background:linear-gradient(100deg,#08226f,#0735c6);color:white;width:100%;font-weight:600;margin-top:22px;border:0;padding:15px}.hpl-booking .primary:hover:not(:disabled),.hpl-booking-admin .primary:hover:not(:disabled){background:#082b99;color:white}.hpl-booking button:disabled,.hpl-booking-admin button:disabled{opacity:.45;cursor:not-allowed}.hpl-booking .monthnav,.hpl-booking-admin .monthnav{display:flex;gap:9px;align-items:center;margin-bottom:20px}.hpl-booking .weekdays,.hpl-booking-admin .weekdays,.hpl-booking .days,.hpl-booking-admin .days{display:grid;grid-template-columns:repeat(7,1fr);gap:7px}.hpl-booking .weekdays,.hpl-booking-admin .weekdays{font-size:12px;color:#778392;text-align:center;margin-bottom:15px}.hpl-booking .days button,.hpl-booking-admin .days button{padding:12px 0;min-height:44px;border:0}.hpl-booking .days .available,.hpl-booking-admin .days .available{background:#e4e9f5}.hpl-booking .days .selected,.hpl-booking-admin .days .selected,.hpl-booking #slots .selected,.hpl-booking-admin #slots .selected{background:#0732b8;color:white}.hpl-booking .days .blank,.hpl-booking-admin .days .blank{height:44px}.hpl-booking #gate,.hpl-booking-admin #gate{position:absolute;left:18%;right:18%;top:45%;text-align:center;background:white;border:1px solid #d1d7e0;box-shadow:0 4px 12px #0002;border-radius:7px;padding:18px;line-height:1.5}.hpl-booking .calendar-panel.locked .days,.hpl-booking-admin .calendar-panel.locked .days{opacity:.4}.hpl-booking #slots,.hpl-booking-admin #slots{display:grid;gap:12px;max-height:510px;overflow:auto}.hpl-booking #slots button,.hpl-booking-admin #slots button{padding:15px;width:100%}.hpl-booking .question small,.hpl-booking-admin .question small{display:block;color:#728096;font-weight:400;margin-top:5px}.hpl-booking .choice,.hpl-booking-admin .choice{display:flex;gap:10px;align-items:center;font-weight:400;margin-top:10px;padding:12px;border:1px solid #d1d7e0;border-radius:8px}.hpl-booking .choice span,.hpl-booking-admin .choice span{flex:1}.hpl-booking fieldset,.hpl-booking-admin fieldset{border:0;margin:18px 0 0;padding:0}.hpl-booking legend,.hpl-booking-admin legend{font-weight:600}.hpl-booking #error,.hpl-booking-admin #error{color:#b02136;padding:0 24px}.hpl-booking footer,.hpl-booking-admin footer{text-align:center;border-top:1px solid #d1d7e0;padding:10px;color:#65748a;font-size:12px}.hpl-booking [hidden],.hpl-booking-admin [hidden]{display:none!important}.hpl-booking .admin,.hpl-booking-admin .admin{max-width:1000px;margin:auto}.hpl-booking .admin section,.hpl-booking-admin .admin section{padding:24px;border:1px solid #d1d7e0;border-radius:12px;margin:20px 0}.hpl-booking .admin .toolbar,.hpl-booking-admin .admin .toolbar{display:flex;gap:10px;flex-wrap:wrap}.hpl-booking .admin .qcard,.hpl-booking-admin .admin .qcard{padding:20px;border:1px solid #d1d7e0;border-radius:10px;margin:18px 0}.hpl-booking .admin table,.hpl-booking-admin .admin table{border-collapse:collapse;width:100%;font-size:14px}.hpl-booking .admin td,.hpl-booking-admin .admin td,.hpl-booking .admin th,.hpl-booking-admin .admin th{padding:12px;border-bottom:1px solid #d1d7e0;text-align:left;vertical-align:top}.hpl-booking .admin details,.hpl-booking-admin .admin details{margin:10px 0}.hpl-booking .admin pre,.hpl-booking-admin .admin pre{white-space:pre-wrap;overflow-wrap:anywhere}.hpl-booking .success,.hpl-booking-admin .success{color:#136235;background:#eaf8ef;padding:15px;border-radius:9px}@media(max-width:850px){.hpl-booking .columns.booking,.hpl-booking-admin .columns.booking{grid-template-columns:1fr 1fr}.hpl-booking .columns.booking .details,.hpl-booking-admin .columns.booking .details{grid-column:1/-1;border-bottom:1px solid #d1d7e0}.hpl-booking .columns.booking .calendar-panel,.hpl-booking-admin .columns.booking .calendar-panel{border-left:0}.hpl-booking .details,.hpl-booking-admin .details,.hpl-booking .calendar-panel,.hpl-booking-admin .calendar-panel,.hpl-booking .times,.hpl-booking-admin .times{padding:22px}}@media(max-width:600px){.hpl-booking .columns,.hpl-booking-admin .columns,.hpl-booking .columns.booking,.hpl-booking-admin .columns.booking{grid-template-columns:1fr}.hpl-booking .calendar-panel,.hpl-booking-admin .calendar-panel,.hpl-booking .times,.hpl-booking-admin .times{border-left:0;border-top:1px solid #d1d7e0}.hpl-booking .calendar-panel.locked,.hpl-booking-admin .calendar-panel.locked{display:none}.hpl-booking .steps,.hpl-booking-admin .steps{gap:14px;font-size:14px}.hpl-booking .names,.hpl-booking-admin .names{gap:10px}.hpl-booking .admin table,.hpl-booking-admin .admin table{display:block;overflow:auto}}
.hpl-booking,.hpl-booking-admin{font:16px system-ui,-apple-system,Segoe UI,sans-serif;color:#092039;text-align:left;} .hpl-booking .details h1{font-family:inherit;text-transform:none;color:#092039;font-size:24px;} .hpl-booking .calendar-panel h2,.hpl-booking .times h2{font-family:inherit;text-transform:none;color:#092039;font-size:19px;line-height:1.4;letter-spacing:0;margin:0;} .hpl-booking p{color:#092039;max-width:none;margin:16px 0;} .hpl-booking-admin{background:white;padding:22px;margin-bottom:20px;border-radius:10px;} .hpl-booking-admin h2{font-family:inherit;color:#092039;font-size:22px;} .hpl-booking-admin h3{font-family:inherit;color:#092039;font-size:18px;} .hpl-booking-admin .admin{max-width:none;} .hpl-booking{scroll-margin-top:16px;margin-top:28px;} .hpl-booking-admin .qcard{border:1px solid #d1d7e0;padding:20px;margin:18px 0;border-radius:10px;} .hpl-booking-admin .toolbar{display:flex;gap:10px;flex-wrap:wrap;} .hpl-booking-admin table{width:100%;border-collapse:collapse;} .hpl-booking-admin td,.hpl-booking-admin th{padding:12px;border-bottom:1px solid #d1d7e0;} .hpl-booking-admin details{margin:10px 0;}

.hpl-booking{max-width:600px;border-radius:11px;margin:28px auto 0;background:#fff;box-shadow:none;}
.hpl-booking .columns,.hpl-booking .columns.booking{display:flex;flex-direction:column;}
.hpl-booking .details,.hpl-booking .calendar-panel,.hpl-booking .times{width:100%;padding:28px 25px;border:0;}
.hpl-booking .details{padding-bottom:20px;}.hpl-booking .calendar-panel{padding-top:30px;min-height:375px;}.hpl-booking .calendar-panel.locked{display:block;}
.hpl-booking .steps{padding:22px 15px;gap:12px;font-size:16px;}.hpl-booking #step1{color:#171f31;}.hpl-booking #step1::first-letter{color:#7000ff;}
.hpl-booking .details h1{margin-bottom:12px;font-size:23px;font-weight:650;}.hpl-booking .details>p{color:#626b7a;margin:0 0 20px;line-height:1.6;}
.hpl-booking .primary{background:#7000ff;border-radius:10px;padding:16px;margin-top:12px;color:#fff;}.hpl-booking .primary:hover:not(:disabled){background:#5d00d6;}
.hpl-booking .days .available{background:#f1e7ff;}.hpl-booking .days .selected,.hpl-booking #slots .selected{background:#7000ff;color:white;}
.hpl-booking .names label{margin-top:20px;}.hpl-booking .names input{margin-top:0;}.hpl-booking #question-stage{margin-top:0;}.hpl-booking #back-contact{margin-right:10px;}
.hpl-booking .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.hpl-booking .phone-wrap{position:relative;}.hpl-booking .phone-control{display:flex;align-items:center;border:1px solid #cfd5e1;border-radius:10px;background:#f8f9fb;height:50px;}.hpl-booking .phone-control:focus-within{outline:2px solid #7000ff;outline-offset:1px;}
.hpl-booking #country-toggle{display:flex;gap:5px;align-items:center;padding:12px 10px;height:100%;border:0;border-radius:10px 0 0 10px;border-right:1px solid #cfd5e1;background:transparent;flex:none;}
.hpl-booking #country-flag,.hpl-booking #country-list img{width:22px;height:16px;object-fit:cover;border:1px solid #0001;}.hpl-booking .phone-control input{border:0;background:transparent;outline:none;padding:14px 12px;margin:0;min-width:0;width:100%;}
.hpl-booking #country-panel{position:absolute;left:0;right:0;top:56px;z-index:20;background:white;border:1px solid #cfd5e1;border-radius:10px;box-shadow:0 10px 30px #0002;padding:10px;}
.hpl-booking #country-search{margin:0 0 8px;}.hpl-booking #country-list{max-height:260px;overflow:auto;}.hpl-booking #country-list button{display:flex;align-items:center;gap:12px;width:100%;border:0;text-align:left;padding:12px;}.hpl-booking #country-list button span:nth-child(2){flex:1;}.hpl-booking #country-list button[aria-selected=true]{background:#f1e7ff;}
.hpl-booking .legal{font-size:14px;line-height:1.6;margin:20px 0 10px;}.hpl-booking .legal a{font-weight:650;text-decoration:underline;}.hpl-booking #gate{left:18%;right:18%;top:47%;font-size:16px;}.hpl-booking #slots{grid-template-columns:1fr 1fr;max-height:420px;}
@media(max-width:600px){.hpl-booking .details,.hpl-booking .calendar-panel,.hpl-booking .times{padding-left:20px;padding-right:20px;}.hpl-booking .steps{font-size:14px;}.hpl-booking .names{gap:12px;}.hpl-booking .names input{padding:14px 12px;}.hpl-booking #gate{left:12%;right:12%;}.hpl-booking .calendar-panel.locked{display:block;}}

/* Keep the embedded form independent of the landing page's global styles. */
#iclosed-form.hpl-booking{width:100% !important;max-width:600px !important;min-width:0;margin:28px auto 0;box-sizing:border-box;overflow:visible;font-size:16px;line-height:1.5;}
#iclosed-form.hpl-booking *,#iclosed-form.hpl-booking *::before,#iclosed-form.hpl-booking *::after{box-sizing:border-box;}
#iclosed-form.hpl-booking > header.steps{position:static;background:#fff;color:#171f31;padding:20px 15px;margin:0;min-height:64px;border-bottom:1px solid #e5e7eb;overflow:visible;}
#iclosed-form.hpl-booking section{max-width:100%;overflow:visible;margin:0;}
#iclosed-form.hpl-booking input:not([type=checkbox]):not([type=radio]),#iclosed-form.hpl-booking select{height:50px;min-height:50px;font:400 16px/1.4 system-ui,sans-serif;padding:12px;margin-top:8px;}
#iclosed-form.hpl-booking .names input{margin-top:0;}
#iclosed-form.hpl-booking .phone-control{height:50px;}
#iclosed-form.hpl-booking .phone-control input{height:48px;min-height:0;margin:0;padding:12px;}
#iclosed-form.hpl-booking #country-toggle{height:48px;width:auto;min-width:58px;margin:0;padding:10px;}
#iclosed-form.hpl-booking .primary{min-height:50px;font:600 16px/1.4 system-ui,sans-serif;padding:14px 16px;}
#iclosed-form.hpl-booking footer{background:#fff;color:#626b7a;margin:0;padding:16px;font-size:12px;}
#iclosed-form.hpl-booking [hidden]{display:none !important;}
@media(max-width:600px){#iclosed-form.hpl-booking > header.steps{font-size:14px;gap:10px;}}

/* Speed/conversion 2026-10-26: big tap choices instead of dropdowns */
.hpl-booking .wa-label{display:block;font-weight:700;margin:0 0 6px}
.hpl-booking .question fieldset legend{font-weight:700;font-size:1.02rem;margin-bottom:4px}
.hpl-booking .choice{cursor:pointer;min-height:48px;padding:12px 14px;font-weight:600;transition:border-color .15s,background .15s}
.hpl-booking .choice input{accent-color:#d4a017;width:20px;height:20px}
.hpl-booking .choice:has(input:checked){border-color:#d4a017;background:rgba(212,160,23,.12)}
@media (min-width:560px){.hpl-booking .question fieldset{display:grid;grid-template-columns:1fr 1fr;column-gap:10px}.hpl-booking .question fieldset legend,.hpl-booking .question fieldset small{grid-column:1/-1}}

/* One form per phone (2026-10-26) */
.hpl-already{padding:22px 18px;border:2px solid #d4a017;border-radius:14px;background:rgba(212,160,23,.08);text-align:center}
.hpl-already h3{margin:0 0 8px;font-size:1.25rem}
.hpl-already p{margin:0 0 16px;line-height:1.5}
.hpl-already a{display:inline-block;padding:14px 22px;border-radius:999px;background:#25d366;color:#fff;font-weight:800;text-decoration:none}
