.mhp-booking{padding-block:55px 95px}.mb-intro{display:grid;grid-template-columns:1fr 220px;gap:50px;align-items:center;margin-bottom:50px}.mb-intro h1{font-size:clamp(42px,5.2vw,72px);line-height:1.08;letter-spacing:-2.5px;margin:0 0 24px}.mb-intro h1 em{font-style:normal;color:var(--blue)}.mb-intro>div>p{max-width:700px;font-size:18px;line-height:1.8;color:#526d70}.mb-badge{width:210px;height:210px;border-radius:50%;background:var(--yellow);display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(6deg);text-align:center;gap:10px}.mb-badge>span{font-size:32px;line-height:1}.mb-badge strong{font-size:24px;line-height:1.15;letter-spacing:-.5px}.mb-badge small{font-size:12px}.mb-layout{display:grid;grid-template-columns:310px minmax(0,1fr);gap:70px;align-items:start}.mb-aside{padding-top:12px}.mb-aside h2{font-size:32px;line-height:1.15;letter-spacing:-1px;margin:0 0 30px}.mb-aside ol{counter-reset:booking-step;list-style:none;padding:0;margin:0}.mb-aside li{position:relative;border-top:1px solid var(--line);padding:24px 0 24px 40px;counter-increment:booking-step}.mb-aside li:before{content:counter(booking-step,decimal-leading-zero);position:absolute;left:0;top:26px;color:var(--blue);font-size:13px;font-weight:700}.mb-aside li strong{display:block;font-size:16px;margin-bottom:8px}.mb-aside li span{display:block;font-size:14px;line-height:1.8;color:#526d70}.mb-help{background:#e6ede9;padding:25px;margin-top:20px;border-radius:5px}.mb-help strong,.mb-help a{display:block}.mb-help a{font-size:18px;font-weight:700;margin-top:10px}.mb-form{background:white;border:1px solid var(--line);border-radius:8px;padding:35px;min-width:0}.mb-form fieldset{border:0;padding:0;margin:0 0 36px;min-width:0}.mb-form legend{font-size:23px;font-weight:700;letter-spacing:-.5px;padding:0;margin-bottom:20px}.mb-form legend>span{font-size:12px;vertical-align:middle;color:var(--blue);margin-right:12px}.mb-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}.mb-wide{grid-column:1/-1}.mb-fields label{font-size:14px;font-weight:700;line-height:1.5;display:block}.mb-fields input,.mb-fields select{display:block;width:100%;min-width:0;box-sizing:border-box;font:inherit;font-weight:400;font-size:16px;background:#fafbf8;color:var(--ink);border:1px solid #bdceca;border-radius:4px;padding:13px;margin-top:8px;min-height:49px}.mb-fields input:focus,.mb-fields select:focus{outline:2px solid var(--blue);outline-offset:2px}.mb-field-note,.mb-calendar-note,.mb-email-note{font-size:13px;line-height:1.8;color:#526d70;margin:0 0 18px}.mb-calendar{border:1px solid var(--line);border-radius:6px;padding:18px;max-width:490px}.mb-calendar-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:20px}.mb-calendar-head h3{font-size:18px;margin:0;text-transform:capitalize}.mb-calendar-head button{width:38px;height:38px;flex-shrink:0;background:transparent;border:1px solid var(--line);border-radius:50%;color:var(--ink);font-size:20px;cursor:pointer}.mb-calendar-head button:disabled{opacity:.3;cursor:default}.mb-weekdays,.mb-calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.mb-weekdays{margin-bottom:8px;text-align:center;font-size:12px;color:#526d70}.mb-calendar-days button{font:inherit;font-size:15px;min-height:43px;border:1px solid transparent;border-radius:5px;color:#899997;background:#f5f6f2;padding:5px;min-width:0}.mb-calendar-days button.mb-day-available{color:var(--ink);background:var(--yellow);font-weight:700;cursor:pointer}.mb-calendar-days button[aria-pressed=true]{background:var(--ink);color:white;box-shadow:0 0 0 2px var(--ink)}.mb-calendar button:focus-visible{outline:3px solid var(--blue);outline-offset:2px}.mb-calendar-note{margin-top:13px;margin-bottom:14px}.mb-selection{font-size:15px;font-weight:700;padding:14px 16px;background:#e6ede9;border-radius:4px;line-height:1.6;margin-bottom:0}.mb-dropoff{padding:22px;background:#fdf4d7;border-left:4px solid var(--yellow);margin-bottom:22px;line-height:1.7;font-size:14px}.mb-dropoff strong{font-size:16px}.mb-dropoff p{margin:8px 0 0}.mb-check{display:flex;align-items:flex-start;gap:12px;font-size:13px;line-height:1.8;margin:18px 0}.mb-check input{width:19px;height:19px;flex:0 0 19px;margin:3px 0 0;accent-color:var(--ink)}.mb-check a,.mb-success a{text-decoration:underline;text-underline-offset:3px}.mb-submit{font:inherit;font-size:16px;font-weight:700;color:var(--ink);background:var(--yellow);border:0;border-radius:4px;padding:20px 22px;display:flex;gap:20px;align-items:center;justify-content:space-between;width:100%;cursor:pointer;line-height:1.4}.mb-submit:hover{background:#f6c323}.mb-submit:disabled{opacity:.6;cursor:wait}.mb-submit:focus-visible{outline:3px solid var(--blue);outline-offset:3px}.mb-error{color:#962f26;background:#fff0ed;border-left:3px solid #962f26;padding:16px;font-size:14px;line-height:1.7}.mb-honey{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.mb-status{line-height:1.8;font-size:16px}.mb-demo{background:#fdf4d7;padding:18px 22px;border-left:4px solid var(--yellow);font-size:14px;line-height:1.7;margin-bottom:30px}.mb-success{max-width:800px;background:white;border:1px solid var(--line);padding:45px;border-radius:8px;margin-inline:auto;scroll-margin-top:30px}.mb-success h2{font-size:38px;letter-spacing:-1px;margin:20px 0}.mb-success p{line-height:1.8;font-size:16px}.mb-success-mark{display:inline-flex;align-items:center;justify-content:center;background:var(--yellow);width:55px;height:55px;border-radius:50%;font-size:28px}.mb-confirm-details{background:#e6ede9;padding:16px 22px;margin-block:25px}.mb-confirm-details p{margin:7px 0;font-weight:700}.mb-workshop-link{margin-block:40px 65px!important;padding:35px;background:#e6ede9;display:flex;align-items:center;justify-content:space-between;gap:40px;box-sizing:border-box}.mb-workshop-link h2{font-size:34px;letter-spacing:-1px;line-height:1.15;margin:0 0 15px}.mb-workshop-link p{line-height:1.8;max-width:660px;font-size:15px}.mb-workshop-link>a{flex-shrink:0;text-align:center}
@media(max-width:1000px){.mb-layout{grid-template-columns:250px minmax(0,1fr);gap:35px}.mb-form{padding:26px}.mb-intro{grid-template-columns:1fr 160px;gap:25px}.mb-badge{width:150px;height:150px}.mb-badge strong{font-size:21px}.mb-badge>span{font-size:24px}}
@media(max-width:760px){.mb-intro{grid-template-columns:1fr}.mb-intro h1{font-size:47px;letter-spacing:-1.8px}.mb-badge{display:none}.mb-layout{grid-template-columns:1fr;gap:25px}.mb-aside h2{font-size:29px}.mb-aside ol{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.mb-aside li{padding:16px 0}.mb-aside li:before{display:none}.mb-help{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:18px;margin-top:10px}.mb-help a{margin:0;font-size:16px}.mhp-booking{padding-block:35px 70px}.mb-intro{margin-bottom:25px}.mb-workshop-link{display:block}.mb-workshop-link>a{display:inline-block;margin-top:10px}}
@media(max-width:500px){.mb-intro h1{font-size:40px}.mb-intro>div>p{font-size:16px}.mb-form{padding:22px 16px}.mb-fields{grid-template-columns:1fr;gap:17px}.mb-wide{grid-column:auto}.mb-form legend{font-size:22px}.mb-calendar{padding:12px}.mb-weekdays,.mb-calendar-days{gap:4px}.mb-calendar-days button{min-height:38px;font-size:14px}.mb-aside ol{display:block}.mb-aside li{padding:16px 0 16px 34px}.mb-aside li:before{display:block;top:18px}.mb-dropoff{padding:17px}.mb-submit{font-size:15px;padding:18px}.mb-success{padding:25px}.mb-success h2{font-size:31px}.mb-confirm-details{padding:12px}.mb-workshop-link{padding:25px}.mb-workshop-link h2{font-size:30px}}

@media(max-width:760px){body:has([data-mhp-booking]) .whatsapp-float{position:static;width:max-content;max-width:calc(100% - 32px);margin:0 16px 22px auto}body:has([data-mhp-booking]) .footer{padding-bottom:30px}}

/* Persistent, accessible validation feedback on desktop and mobile. */
.mb-fields [aria-invalid="true"]{border:2px solid #962f26;background:#fff8f6}.mb-check:has([aria-invalid="true"]){flex-wrap:wrap;border-left:3px solid #962f26;padding-left:12px}.mb-check [aria-invalid="true"]{outline:2px solid #962f26;outline-offset:2px}.mb-field-error{display:block;color:#962f26;font-size:13px;font-weight:600;line-height:1.6;margin-top:8px}.mb-check>.mb-field-error{flex-basis:100%;margin:0 0 0 31px}.mb-fields label{scroll-margin-top:130px}
