/* Readable type across every section, including mobile. */
body{font-size:18px;line-height:1.65}
.topline{font-size:14px;letter-spacing:.03em;flex-wrap:wrap;gap:12px;padding-top:14px;padding-bottom:14px}
nav{font-size:16px;gap:20px;flex-wrap:wrap}
.languages button{font-size:16px;padding:9px 12px;min-height:44px}
.small-cta{font-size:16px;padding:12px 20px}
.eyebrow,.hero .eyebrow{font-size:15px;line-height:1.6;letter-spacing:.08em}
.hero-intro,.section-heading>p,.service-list p,.pickup-panel p,.pickup-detail p,.contact p,.group-copy>p,.package-copy p{font-size:18px;line-height:1.8}
.section-heading>p{max-width:420px}
.hero-details{font-size:16px;line-height:1.7;flex-wrap:wrap;gap:12px 22px}
.button,.hero .button,.button-row .button,.group-copy .button,.package-cta,.pickup-detail .button{font-size:17px;line-height:1.45;padding:15px 20px;min-height:50px;white-space:normal;text-align:center}
.button-row{flex-wrap:wrap;gap:12px}
.brand-services a{font-size:17px;padding:22px 14px;line-height:1.5}
.fleet-book{flex-wrap:wrap;gap:12px;padding:18px}
.fleet-book>span{font-size:14px;max-width:240px;line-height:1.6}
.fleet-book>.phone-stack>a,.fleet-book>a{font-size:22px}
.fleet-route{font-size:18px;flex-wrap:wrap;line-height:1.5}
.fleet-mark{font-size:17px}.fleet-mark b{font-size:14px}
.photo-caption,.vehicle-label{font-size:14px;line-height:1.5;letter-spacing:.03em}
.vehicle-label{max-width:calc(100% - 28px)}
.state{font-size:15px}.route-heading h3{font-size:28px;line-height:1.4}
.times{gap:10px}.times>span{font-size:30px}.times small{font-size:16px}
.fare{font-size:16px;line-height:1.6;flex-wrap:wrap}
.fineprint,.contact .confirmation,.group-copy .group-note,.vehicle-detail,.location-rule{font-size:16px;line-height:1.8}
.service-number{font-size:17px}.service-list h3{font-size:28px}
.contact-links small{font-size:15px;line-height:1.6}.contact-links strong{font-size:30px}
footer p,footer>span{font-size:16px;line-height:1.8}
.booking-grid label{font-size:18px;line-height:1.6}.booking-grid input,.booking-grid select,.booking-grid textarea,#booking-message{font-size:18px;min-width:0;line-height:1.6;padding:14px}
.booking-grid small,.booking-policy,.booking-consent{font-size:16px;line-height:1.8}
#booking-review>p,#booking-error,#booking-copy-status{font-size:18px;line-height:1.8}
.mobile-reserve a{font-size:17px;line-height:1.4;min-height:50px}
@media(max-width:1200px){header{flex-wrap:wrap;gap:14px}nav{order:3;flex-basis:100%;justify-content:center}.header-actions{margin-left:auto}.hero,.groups{grid-template-columns:1fr;gap:40px}.hero-copy{max-width:780px}.hero-fleet{max-width:780px;width:100%;justify-self:center}.hero-intro{max-width:650px}.group-photo{width:100%}.group-copy>p{max-width:750px}.brand-services{grid-template-columns:1fr 1fr}.packages{grid-template-columns:50px 1fr}.package-cta{grid-column:2}.contact{gap:6%}}
@media(max-width:700px){html{scroll-padding-top:190px}.topline{font-size:14px;letter-spacing:0;gap:12px}.topline>span{flex:1;min-width:130px}.topline>.phone-stack{gap:8px}header{position:relative;padding:12px 6%;gap:12px}.brand img{width:min(210px,48vw)}nav{display:flex;font-size:16px;gap:10px 20px;justify-content:flex-start;line-height:1.7}nav a{padding:5px 0}.header-actions{gap:0}.languages button{font-size:16px}.hero .eyebrow{font-size:15px}.hero-intro{font-size:18px}.hero-details{font-size:16px}.hero .button-row,.group-copy .button-row{flex-direction:column}.button-row .button{flex:auto;width:100%}.fleet-book>span{font-size:14px;max-width:none}.fleet-book>.phone-stack>a{font-size:22px}.fleet-route{font-size:16px}.fleet-mark{font-size:15px}.fleet-mark b{font-size:12px}.brand-services a{font-size:16px;align-items:flex-start;padding:18px 10px}.brand-services a>span{font-size:23px}.section-heading h2{font-size:34px}.section-heading>p{max-width:none}.times{grid-template-columns:repeat(2,1fr);gap:20px}.times>span{font-size:32px}.times small{font-size:16px}.fare{font-size:16px}.service-list article{grid-template-columns:28px 1fr;gap:12px}.service-icon{display:none}.service-list h3{font-size:26px}.service-list p,.group-copy>p,.package-copy p,.pickup-panel p,.pickup-detail p,.contact p{font-size:18px}.vehicle-label{font-size:14px}.group-copy .group-note{font-size:16px}.packages{grid-template-columns:1fr;padding:24px}.package-cta{grid-column:1}.booking-grid{gap:24px}.booking-grid label{font-size:18px}.contact-links strong{font-size:28px}footer{padding-bottom:130px}footer p,footer>span{font-size:16px}.photo-caption{font-size:14px}.mobile-reserve a{font-size:17px}.office-city{font-size:20px}}
@media(max-width:380px){.topline{font-size:14px}.fleet-book>.phone-stack>a{font-size:22px}.brand img{width:46vw}.languages button{padding:8px}.contact-links strong{font-size:26px}}

.booking-trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}#booking-submit-status{font-size:18px;font-weight:700;line-height:1.8;margin:20px 0}.booking-section [hidden]{display:none!important}
