.booking-shell{width:min(1320px,100%);margin:0 auto;padding:70px 42px 95px;display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:clamp(38px,5vw,72px);color:var(--ink)}
.booking-shell *{box-sizing:border-box}
.booking-intro{align-self:start;max-width:500px}
.booking-intro>.eyebrow{font-size:16px;line-height:1.45;margin:0 0 20px;letter-spacing:.08em}
.booking-shell .booking-intro h1,.booking-shell .booking-intro h2{font-size:clamp(38px,4.1vw,59px);line-height:1.09;letter-spacing:-.025em;margin:0 0 25px;text-wrap:balance}
.booking-intro>p:not(.eyebrow){max-width:440px;font-size:18px;line-height:1.55;margin:0 0 28px}
.booking-assurances{display:grid;gap:0;margin:30px 0;border-top:1px solid #c5cfb8}
.booking-assurances>span{display:block;padding:20px 0;border-bottom:1px solid #c5cfb8;font-size:16px;color:var(--muted);line-height:1.5}
.booking-assurances b{display:block;font-size:18px;font-weight:550;color:var(--ink);margin-bottom:3px}
.booking-intro>.note{font-size:16px!important;max-width:410px}
.booking-shell .booking-workspace{min-width:0;width:100%;background:var(--paper);border:0;border-radius:5px;padding:32px;box-shadow:none;align-self:start}
.quick-quote-form{margin:0}
.quick-form-heading{border-bottom:1px solid #d2dac8;padding-bottom:22px;margin-bottom:25px}
.quick-form-heading p{margin:0 0 4px;font-size:23px;font-weight:500;line-height:1.25;color:var(--ink)}
.quick-form-heading>span{font-size:16px;color:var(--muted)}
.quick-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:23px 20px;align-items:start}
.quick-fields label,.quick-service{display:flex;flex-direction:column;min-width:0;gap:9px;font-size:16px;font-weight:500;line-height:1.4;margin:0}
.quick-fields input,.quick-fields select{width:100%;height:54px;border:1px solid #7f8b76;border-radius:4px;padding:13px 14px;font:inherit;font-size:16px;line-height:1.4;background:#fff;color:var(--ink);min-width:0}
.quick-fields select{appearance:none;padding-right:40px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%2324282e' stroke-width='1.6'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}
.quick-fields input::placeholder{color:#62685e;opacity:1}
.quick-fields .optional{font-weight:400;color:var(--muted);white-space:nowrap}
.quick-contact{grid-column:1/-1;display:flex;flex-direction:column;gap:9px}
.contact-helper{font-size:16px;color:var(--muted);line-height:1.35}
.phone-field{display:grid;grid-template-columns:minmax(118px,.85fr) minmax(0,1.5fr);gap:10px}
.phone-field select.phone-country{padding-right:34px;font-size:16px}
.phone-field input{min-width:0}
.quick-price{margin:6px 0 24px;padding:14px 16px;background:#eef3e2;border:1px solid #c5cfb8;border-radius:4px;font-size:16px;line-height:1.4;color:var(--ink)}
.quick-contact-fields{margin-top:0}
.quick-price b{font-weight:600}
.quick-service{min-height:85px;padding:0 0 0 14px;border-left:3px solid var(--wa);justify-content:center;gap:6px}
.quick-service b{font-size:16px;font-weight:400;color:var(--muted)}
.quick-service span{font-size:18px;font-weight:500;line-height:1.3}
.booking-shell .button.quick-submit{background:var(--wa);border:1px solid var(--wa);color:#fff;display:flex;align-items:center;justify-content:space-between;width:100%;min-height:58px;padding:15px 22px;font-size:18px;font-weight:550;gap:16px;margin-top:21px;border-radius:4px;cursor:pointer}
.quick-submit>span{font-size:25px;line-height:1}
.booking-shell .button.quick-submit:hover{background:#234736;border-color:#234736}
.booking-shell .quick-submit:disabled{cursor:wait;opacity:.7}
.quick-form-note{font-size:16px;line-height:1.5;margin:18px 0 0;color:var(--muted)}
.quick-form-note a{text-decoration:underline;text-underline-offset:3px}
.quick-form-error{color:#8c2020;background:#fff5f3;border:1px solid #8c2020;border-radius:4px;padding:13px;font-size:16px;line-height:1.45;margin:20px 0 0}
.quick-fields [aria-invalid=true]{border:2px solid #8c2020}
.quick-fields [hidden]{display:none}
.quick-fields input:focus-visible,.quick-fields select:focus-visible,.booking-shell button:focus-visible{outline:3px solid var(--wa);outline-offset:3px}
.quick-success{display:flex;flex-direction:column;gap:20px}
.quick-success :is(h2,h3){font-size:30px;line-height:1.12;margin:0}
.quick-success p{font-size:17px;line-height:1.5;margin:0;overflow-wrap:anywhere}
.quick-success .success-reference{font-size:19px}
.quick-success .success-reference b{font-weight:700;letter-spacing:.02em}
.quick-success .button{white-space:normal;font-size:17px;width:100%;gap:12px;padding:15px}
.quick-success .note{font-size:16px}
@media(min-width:701px) and (max-width:1050px){
 .booking-shell{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:32px;padding-inline:28px}
 .booking-shell .booking-workspace{padding:25px}
 .quick-fields{grid-template-columns:minmax(0,1fr);gap:20px}
 .booking-shell .booking-intro h1,.booking-shell .booking-intro h2{font-size:40px}
}
@media(max-width:700px){
 .booking-shell,.home-online .booking-shell,.landing-online .booking-shell{grid-template-columns:minmax(0,1fr);gap:25px;padding:42px 22px 48px}
 .booking-shell .booking-intro h1,.booking-shell .booking-intro h2{font-size:36px;line-height:1.1;margin-bottom:18px}
 .booking-intro>.eyebrow{margin-bottom:15px}
 .booking-intro>p:not(.eyebrow){font-size:17px;margin-bottom:20px}
 .booking-assurances{grid-template-columns:1fr 1fr;gap:20px;margin:22px 0 18px}
 .booking-assurances>span{padding:16px 0;font-size:16px}
 .booking-assurances b{font-size:17px;line-height:1.3;margin-bottom:6px}
 .booking-intro>.note{margin-bottom:0!important}
 .booking-shell .booking-workspace{padding:23px 20px}
 .quick-fields{grid-template-columns:minmax(0,1fr);gap:21px}
 .quick-form-heading{padding-bottom:19px;margin-bottom:22px}
 .quick-form-heading p{font-size:22px}
 .quick-success .button{font-size:16px}
}
@media(max-width:350px){
 .booking-shell,.home-online .booking-shell,.landing-online .booking-shell{padding-inline:18px}
 .booking-shell .booking-workspace{padding:22px 16px}
 .booking-shell .booking-intro h1,.booking-shell .booking-intro h2{font-size:34px}
 .booking-assurances{gap:14px}
 .phone-field{grid-template-columns:1fr}
}
.booking-shell .booking-intro h1,.booking-shell .booking-intro h2{font-size:clamp(36px,3.5vw,50px);line-height:1.08;max-width:510px}.booking-detail-photo{position:relative;margin:0 0 24px;border-radius:6px;overflow:hidden}.booking-detail-photo img{height:220px;width:100%;object-fit:cover;object-position:50% 46%}.booking-detail-photo figcaption{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#10251fee);padding:40px 20px 17px;color:white;font-size:16px;line-height:1.4}.booking-assurances{display:grid;grid-template-columns:1.3fr 1fr;gap:20px;margin:0 0 20px;padding:0;border:0}.booking-assurances>span{display:flex;align-items:flex-start;gap:12px;border:0!important;padding:0!important;font-size:15px;line-height:1.4}.booking-assurances>span>svg{width:32px;height:32px;flex:none;color:#214833}.booking-assurances>span>span{display:block;border:0;padding:0;font-size:15px;line-height:1.45}.booking-assurances b{font-size:17px;line-height:1.25;margin:0 0 5px}.booking-intro>.note{font-size:15px!important}.booking-intro>p:not(.eyebrow){margin-bottom:22px}
@media(max-width:700px){.booking-detail-photo img{height:185px}.booking-assurances{gap:18px}.booking-shell .booking-intro h1,.booking-shell .booking-intro h2{font-size:36px}.booking-assurances>span{gap:9px}.booking-assurances>span>svg{width:28px;height:28px}.booking-assurances b{font-size:16px}.booking-assurances>span>span{font-size:14px}.booking-detail-photo{margin-bottom:20px}}
