body{padding-bottom:82px}.sticky-call{position:fixed;bottom:0;left:0;right:0;width:100%;box-sizing:border-box;z-index:1200;display:flex;align-items:center;justify-content:center;gap:22px;min-height:68px;padding:13px 20px calc(13px + env(safe-area-inset-bottom));background:#152f4a;color:white;text-decoration:none;border-top:3px solid #c5a773;box-shadow:0 -5px 25px #142c4622}.sticky-call strong{font-size:24px;letter-spacing:.02em}.sticky-call span{font-size:15px}.sticky-call:hover{background:#234969}.motion-toggle{bottom:85px!important}.contact-section{display:grid;grid-template-columns:1fr 1.4fr;gap:50px;align-items:start}.message-form{background:#f3f6fa;border:1px solid #dae2eb;padding:30px;border-radius:8px;min-width:0}.message-form textarea{resize:vertical}.message-form button:disabled{opacity:.65}.message-status{font-size:14px;line-height:1.6;margin-top:16px}.contact-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}input,select,textarea{max-width:100%;box-sizing:border-box}img,iframe{max-width:100%}.fields>*{min-width:0}pre{white-space:pre-wrap;overflow-wrap:anywhere}.container{max-width:calc(100% - 40px)}.contact-section a{overflow-wrap:anywhere}@media(max-width:1000px){.contact-section{gap:26px;grid-template-columns:1fr 1.3fr}.message-form{padding:22px}}@media(max-width:800px){.contact-section{grid-template-columns:1fr}.contact-section h2{font-size:34px}.fields input,.fields select,.fields textarea,.quick-journey input,.quote-inputs input,.quote-output select{font-size:16px}header #navigation{max-height:calc(100dvh - 165px)}.quote-inputs,.quote-output{min-width:0}.quote-layout,.contact-grid,.detail-grid{grid-template-columns:1fr}.hero h1{font-size:clamp(38px,9vw,58px)}.intro h1{font-size:clamp(34px,8vw,52px)}.section{padding-top:45px;padding-bottom:45px}}@media(max-width:500px){.container{width:auto;max-width:none;margin-left:18px;margin-right:18px}.contact-section{gap:20px}.message-form{padding:19px}.fields{grid-template-columns:minmax(0,1fr)}.fields .full{grid-column:1/-1}.sticky-call{flex-direction:column;gap:2px;min-height:72px;padding-top:8px;padding-bottom:calc(8px + env(safe-area-inset-bottom))}.sticky-call span{font-size:12px}.sticky-call strong{font-size:23px}body{padding-bottom:calc(88px + env(safe-area-inset-bottom))}.motion-toggle{bottom:calc(88px + env(safe-area-inset-bottom))!important}.address-results{min-width:0;width:100%}.quote-total{font-size:43px}.quote-mode{gap:15px}.quote-inputs .button,.message-form .button{width:100%}.hero-bottom{left:18px;right:18px}.rate-table-wrap{max-width:100%}}@media print{.sticky-call,.motion-toggle{display:none!important}body{padding-bottom:0}}
.booking-map-card{padding:20px;background:#f1f5f9;border:1px solid #d9e2eb;border-radius:8px;margin-bottom:22px}.booking-map-card h3{margin:0 0 14px}.booking-map-card iframe{width:100%;height:250px;border:0;border-radius:6px;display:block}.booking-map-card a{display:block;font-size:14px;margin-top:12px;color:#213f5c}.booking button:disabled{opacity:.6}#booking-status{font-size:15px;line-height:1.6;margin-top:18px}@media(max-width:800px){.contact-layout{display:grid;grid-template-columns:minmax(0,1fr)}.booking-map-card iframe{height:230px}}
/* Keep every booking panel and its suggestions below the sticky navigation. */
header{z-index:100;isolation:isolate}main{position:relative;z-index:0}.quick-journey{position:relative;z-index:1;overflow:visible}html{scroll-padding-top:110px}@media(max-width:800px){html{scroll-padding-top:90px}}
.booking-estimate{padding:24px;background:#eff4f9;border:1px solid #d6e1ec;border-top:3px solid #c5a773;border-radius:8px;margin-bottom:24px}.booking-estimate h3{margin:0 0 12px}.booking-estimate-total{font-size:42px;font-weight:600;color:#152f4a;line-height:1.2}.booking-estimate dl>div{display:flex;justify-content:space-between;gap:15px;padding:9px 0;border-bottom:1px solid #d6e1ec;font-size:14px}.booking-estimate dd{margin:0;text-align:right}.booking-estimate small{font-size:12px;display:block;margin-top:6px;color:#60738b}.booking-estimate p{font-size:14px;line-height:1.6}.booking-estimate input{font-size:16px}
.route-canvas{width:100%;height:280px;border-radius:8px;background:#e9eff5;overflow:hidden;color:#52667c;font-size:15px}.route-summary{font-weight:600;color:#173552;font-size:16px;line-height:1.6}.contact-layout>aside{min-width:0}.booking-estimate{scroll-margin-top:120px}#q-map{height:300px}@media(min-width:1000px){.contact-layout>aside{position:sticky;top:118px;align-self:start;max-height:calc(100vh - 210px);overflow-y:auto}}@media(max-width:800px){.route-canvas{height:245px}}

/* Phone and mobile layout refinement. */
body{padding-bottom:calc(88px + env(safe-area-inset-bottom))}header .brand{min-width:0}header .brand>span:last-child{overflow-wrap:anywhere}.topbar{gap:12px;flex-wrap:wrap}.topbar a{white-space:nowrap}.sticky-call{min-height:72px}.sticky-call:focus-visible{outline:3px solid #fff;outline-offset:-6px}.copyright{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}.copyright span{white-space:nowrap}.contact-layout,.quote-layout,.map-layout,.hero,.quick-journey{min-width:0}.contact-layout>*,.quote-layout>*,.map-layout>*,.hero>*,.quick-journey>*{min-width:0}footer a{overflow-wrap:anywhere}
@media(max-width:800px){header .brand{font-size:15px;gap:10px}header .brand small{font-size:10px;letter-spacing:1.5px}header .monogram{flex-shrink:0}.quick-journey form{display:grid;grid-template-columns:minmax(0,1fr);width:100%}.quick-journey form>*{min-width:0;width:100%}.contact-layout>aside{position:static;max-height:none;overflow:visible}.sticky-call{flex-direction:row;gap:12px}.sticky-call span{font-size:14px}.sticky-call strong{font-size:21px}.motion-toggle{bottom:calc(90px + env(safe-area-inset-bottom))!important}}
@media(max-width:420px){.topbar{justify-content:center;text-align:center;font-size:12px}header .brand{font-size:12px;letter-spacing:.7px}header .brand small{font-size:9px}.sticky-call strong{font-size:20px}.copyright{flex-direction:column}.quote-mode{flex-wrap:wrap}.hero-actions{flex-wrap:wrap}.booking-estimate dl>div{flex-wrap:wrap}}
