/* Owner draft package, using the existing four-theme tokens. */
.owner-package { margin-top:56px; border-top:1px solid var(--line); padding-top:32px; scroll-margin-top:175px; }
.owner-package h3 { font-size:clamp(30px,4vw,48px); margin:8px 0 18px; }
.owner-package-price { font-family:'Barlow Condensed',sans-serif; font-size:clamp(32px,4vw,46px); font-weight:600; margin:0 0 12px; }
.owner-package-price span { font-family:'Barlow',sans-serif; font-size:15px; font-weight:400; display:inline-block; }
.owner-package-grid { display:grid; grid-template-columns:1fr 1fr; gap:32px; margin:24px 0; }
.owner-package details { border-block:1px solid var(--line); padding:12px 0; }
.owner-package summary { min-height:44px; cursor:pointer; padding:10px 0; font-weight:600; }
.owner-package li { padding-bottom:6px; }.owner-package ul { padding-left:20px; }
.public-contact { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; text-align:center; gap:10px 28px; }
.public-contact .contact-link { display:inline-flex; align-items:center; gap:10px; min-height:44px; max-width:100%; }
.public-contact .contact-icon { flex:0 0 20px; }
.public-contact .contact-link span { min-width:0; }
.page-index .route-stops { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:8px; }
.page-index .route-stops li { overflow-wrap:anywhere; text-align:center; }
@media(max-width:700px) {
  .owner-package-grid { grid-template-columns:1fr; gap:18px; }
  .owner-package-price span { display:block; }
  .page-index .route-stops { gap:3px; font-size:10px; }
}
