.sow-nav a[aria-current=page] { border-bottom: 1px solid #d2b27a; }
.sow-desktop .sow-quote, .sow-quote {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 44px; padding: 10px 18px; border-radius: 999px;
  background: #fff; color: #141412; text-decoration: none; font-size: 14px;
}
.sow-mobile-quote { display: none; }
.sow-nav { gap: 20px; }
.sow-desktop { gap: 20px; }
.site-footer { background: #1b1b19; color: #fff; padding: 56px 0 24px; }
.site-footer__columns { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 28px; }
.site-footer nav { display: flex; flex-direction: column; align-items: start; gap: 4px; }
.site-footer h2 { margin: 0 0 12px; font: 600 15px/1.4 Arial,sans-serif; color: #fff; }
.site-footer nav a, .site-footer nav span { padding: 8px 0; font-size: 13px; line-height: 1.5; overflow-wrap: anywhere; }
.site-footer a { color: #fff; text-decoration: none; }
.site-footer a:hover { text-decoration: underline; text-underline-offset: 4px; }
.site-footer span { color: #b9b8b1; }
.site-footer a:focus-visible, .sow-quote:focus-visible { outline: 2px solid #d2b27a; outline-offset: 4px; }
.site-footer__disclosure { border-top: 1px solid #ffffff30; margin-top: 36px; padding-top: 24px; font-size: 12px; line-height: 1.8; color: #d0cfc8; }
.site-footer__disclosure>div { display: flex; flex-wrap: wrap; gap: 20px; }
@media(max-width:1050px) {
  .sow-desktop { gap: 12px; }
  .sow-desktop>a, .sow-desktop summary { font-size: 12px; }
  .sow-desktop .sow-quote { padding: 10px 12px; }
}
@media(max-width:900px) { .site-footer__columns { grid-template-columns: repeat(3,minmax(0,1fr)); } }
@media(max-width:700px) { .sow-mobile-quote { display: inline-flex; margin-left: auto; } }
@media(max-width:639px) {
  .sow-nav { flex-wrap: wrap; gap: 12px; }
  .sow-wordmark { flex-basis: 100%; }
  .sow-mobile-quote { order: 3; margin-left: auto; }
  .sow-mobile nav { top: 134px; }
  .sow-hero { padding-top: 185px; }
  .site-footer__columns { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; }
  .site-footer nav a { min-height: 44px; }
}

/* Service and business pages share a compact booking bar and clear page hierarchy. */
.service-hero,.business-hero{background:#202a25;color:#fff;padding:32px 5vw 64px}.service-hero h1,.business-hero h1{font:400 clamp(42px,5vw,72px)/1.08 Georgia,serif;max-width:950px;margin:24px 0}.service-lead,.business-hero>p{font-size:18px;line-height:1.75;max-width:780px;color:#e4e8e2}.service-hero .quick-book{margin-top:38px}.service-hero .quick-book__bar{background:#2b3530;backdrop-filter:none}.business-hero{padding-bottom:80px}.business-hero .btn--outline{color:#fff;border-color:#fff}.breadcrumbs{display:flex;gap:12px;flex-wrap:wrap;align-items:center;font-size:13px;margin-bottom:40px}.breadcrumbs a{color:inherit;min-height:44px;display:inline-flex;align-items:center}.site-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin-top:36px}.site-tiles--three{grid-template-columns:repeat(3,minmax(0,1fr))}.site-tiles article{border-top:1px solid #b7b2a5;padding:28px 10px 12px 0}.site-tiles h2,.site-tiles h3{font:400 27px/1.2 Georgia,serif;margin:20px 0}.site-tiles p{font-size:15px;line-height:1.75;color:#595a53}.tile-number{font-size:12px;color:#74582f}.trip-preview{background:#fff;border:1px solid #d8d5ce;border-radius:20px;padding:40px;box-shadow:0 12px 40px #1d26140d}.trip-preview h3{font:36px Georgia,serif}.trip-preview li{padding:20px 0;border-bottom:1px solid #e6e4de}.event-band{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-top:48px;padding-bottom:48px}.event-band h2{font:32px Georgia,serif}.route-link{display:inline-flex;min-height:48px;align-items:center;margin:8px 16px 8px 0;color:#292c23;border-bottom:1px solid #8d784a}.inquiry-form{max-width:650px;width:100%}.inquiry-form input,.inquiry-form textarea{width:100%;min-height:48px;background:white}.fleet-page .vehicle-options{grid-template-columns:repeat(4,minmax(0,1fr))}.fleet-page .vehicle-options img{height:190px}.fleet-page .vehicle-options h2{font:26px Georgia,serif}.fleet-page .fleet--driving .fleet-scene{top:84px;height:calc(100svh - 84px)}
@media(max-width:900px){.site-tiles,.site-tiles--three,.fleet-page .vehicle-options{grid-template-columns:repeat(2,minmax(0,1fr))}.service-hero,.business-hero{padding-left:24px;padding-right:24px}.event-band{align-items:flex-start;flex-direction:column}}
@media(max-width:560px){.site-tiles,.site-tiles--three,.fleet-page .vehicle-options{grid-template-columns:1fr}.service-hero h1,.business-hero h1{font-size:43px}.service-lead{font-size:16px}.breadcrumbs{margin-bottom:24px;gap:8px}.trip-preview{padding:24px}.sow-wide{overflow-wrap:break-word}}
.service-hero .eyebrow,.business-hero .eyebrow{color:#d2b27a}

.options-shell{max-width:1460px;margin:auto;padding:48px 4vw 80px}.options-shell h1{font:48px/1.1 Georgia,serif}.options-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:36px;margin-top:36px}.class-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.class-option{background:#f5f3ee;border:1px solid #ddd8cc;border-radius:18px;padding:24px}.class-option img{width:100%;height:150px;object-fit:contain}.class-option h2{font:28px Georgia,serif}.class-option p,.class-option details{font-size:14px;line-height:1.65}.class-option summary{min-height:44px;cursor:pointer}.class-option .btn{width:100%;margin-top:24px;text-transform:none;white-space:normal}.class-option .btn:disabled{opacity:.5;cursor:not-allowed}.option-price{font-weight:700}.trip-summary,.trip-edit{padding:24px;background:#f0eee8;border-radius:18px;margin-bottom:20px;overflow-wrap:anywhere}.trip-summary h2,.trip-edit h2{font:26px Georgia,serif}.trip-summary svg{width:100%;height:auto}.trip-summary p{font-size:15px;line-height:1.7}.pickup-tag{display:inline-block;font-size:12px;padding:8px 12px;background:#dfebdf;border-radius:16px}.trip-edit label{display:block;margin:14px 0;font-size:14px}.trip-edit input,.trip-edit select,.booking-detail-form input:not([type=checkbox]),.booking-detail-form textarea,.booking-detail-form select{width:100%;min-height:48px;padding:12px;border:1px solid #aaa;background:#fff;border-radius:8px}.booking-detail-form{max-width:720px}.booking-detail-form h2{font:28px Georgia,serif}.booking-detail-form .field{margin:20px 0}.booking-detail-form .btn{min-height:52px;width:100%}.option-price{color:#4d5b3d}
@media(max-width:900px){.options-layout{grid-template-columns:minmax(0,1fr)}.options-layout>div:last-child{order:-1}.options-shell h1{font-size:40px}.class-options{display:flex;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:12px}.class-option{flex:0 0 min(85vw,340px);scroll-snap-align:start}.booking-detail-form{max-width:none}}
.trip-map{height:240px;max-width:100%;margin:16px 0;border-radius:12px;z-index:0}.booking-detail-form [hidden]{display:none}

.hp{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}

.information-page{max-width:1040px;margin:auto;padding:48px 28px 80px;color:#242821}.information-page h1{font:clamp(42px,6vw,76px)/1.05 "Instrument Serif",Georgia,serif;margin:36px 0 24px}.information-page h2{font-size:26px;margin:40px 0 14px}.information-page p{line-height:1.7;max-width:75ch}.information-lead{font-size:21px}.information-page a{overflow-wrap:anywhere}.information-page .inquiry-form{max-width:680px;margin:20px 0}.information-faq{border-bottom:1px solid #d9d7ce;padding:20px 0}.information-faq summary{font-size:20px;cursor:pointer}.contact-cards{margin:32px 0}.contact-cards article{padding:26px;background:#f5f3ee;border-radius:18px}.contact-cards h2{margin-top:0}@media(max-width:640px){.information-page{padding:28px 20px 60px}.information-lead{font-size:18px}}

.options-layout>*{min-width:0}.trip-edit-fold{margin-bottom:24px}.trip-edit-fold>summary{min-height:48px;padding:14px;cursor:pointer;font-weight:600;border:1px solid #d9d7ce;border-radius:12px}
