/* Homepage collections: compact photographs, clear facts and restrained detail.
   Kept separate from the hero so the established opening stays unchanged. */
body.page-home :is(#fleet,#routes) .collection-card {
  border:1px solid #ded8c9;
  border-radius:14px;
  background:#fffefa;
  box-shadow:0 4px 16px rgba(23,59,50,.035);
  transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease;
}
body.page-home :is(#fleet,#routes) .collection-card::after { display:none; }
body.page-home :is(#fleet,#routes) .thumb { aspect-ratio:16/9; }
body.page-home :is(#fleet,#routes) .thumb img { filter:none; }
body.page-home :is(#fleet,#routes) .thumb::after {
  display:block;
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(13,34,26,.12),transparent 40%,rgba(13,34,26,.18));
}
body.page-home :is(#fleet,#routes) .collection-badge {
  z-index:1;
  top:14px;
  left:14px;
  padding:8px 11px;
  border:0;
  border-radius:5px;
  background:rgba(255,254,250,.96);
  font-size:9px;
  font-weight:600;
}
body.page-home :is(#fleet,#routes) .image-arrow {
  z-index:1;
  width:34px;
  height:34px;
  right:14px;
  bottom:14px;
  border:1px solid rgba(255,255,255,.6);
  background:rgba(255,254,250,.94);
  font-size:19px;
}
body.page-home #routes .duration-label {
  display:flex;
  align-items:baseline;
  gap:5px;
  z-index:1;
  top:auto;
  right:auto;
  left:14px;
  bottom:14px;
  padding:7px 11px;
  border-radius:5px;
  background:#173b32;
  color:#fffefa;
}
body.page-home #routes .duration-label strong { font:500 21px/1 var(--font-serif); color:inherit; }
body.page-home #routes .duration-label span { font-size:10px; }
body.page-home :is(#fleet,#routes) .card-body { padding:18px 19px 19px; }
body.page-home :is(#fleet,#routes) .card-kicker {
  margin-bottom:7px;
  color:#7b725c;
  font-size:9px;
  font-weight:500;
  letter-spacing:.07em;
}
body.page-home :is(#fleet,#routes) h3 {
  margin-bottom:10px;
  font:500 clamp(23px,1.85vw,27px)/1.18 var(--font-serif);
  letter-spacing:-.03em;
}
body.page-home #fleet h3 span { margin-top:5px; font-size:10px; line-height:1.55; color:#5a695e; }
body.page-home :is(#fleet,#routes) .card-body > .muted {
  margin-bottom:12px;
  font-size:13px;
  line-height:1.65;
  color:#58675d;
}
body.page-home #fleet .card-price { padding-left:12px; border-left-color:#dfd8c9; }
body.page-home #fleet .card-price strong { font-size:23px; line-height:1.25; }
body.page-home #fleet .card-price > span { font-size:9px; color:#657266; }
body.page-home #fleet .spec-strip {
  padding:11px 10px;
  border:0;
  border-radius:5px;
  background:#f2f3eb;
  gap:7px;
}
body.page-home #fleet .spec-strip span { flex-wrap:nowrap; font-size:10px; gap:5px; }
body.page-home #fleet .spec-strip span + span { border-left:1px solid #dce1d4; padding-left:8px; }
body.page-home #fleet .spec-strip i { font-size:14px; color:#8c7445; }
body.page-home .card-fit { margin:11px 0 14px; gap:7px; font-size:10px; line-height:1.6; }
body.page-home .card-fit > span { color:#7f6b45; }
body.page-home :is(#fleet,#routes) .actions { gap:8px; }
body.page-home :is(#fleet,#routes) .actions :is(a,button) {
  min-height:44px;
  padding:10px 8px;
  border-radius:6px;
  font-size:10px;
  line-height:1.5;
}
body.page-home :is(#fleet,#routes) .actions .btn-ghost { border-color:#cdd5c7; background:transparent; }
body.page-home #routes .route-kicker { display:flex; justify-content:space-between; flex-wrap:wrap; gap:4px 9px; letter-spacing:0; text-transform:none; }
body.page-home #routes .route-kicker > span { display:inline-flex; align-items:center; gap:5px; }
body.page-home #routes .route-kicker i { color:#8c7445; font-size:11px; }
body.page-home #routes .route-difficulty { color:#61705e; }
body.page-home #routes .route-difficulty::before { content:""; width:4px; height:4px; border-radius:50%; background:#b89b62; }
body.page-home #routes .route-line { padding:10px 0; margin-bottom:0; border-bottom:0; border-top-color:#e2dece; }
body.page-home #routes .route-line > span { font-size:8px; letter-spacing:.11em; margin-bottom:5px; }
body.page-home #routes .route-line p { gap:6px; font-size:10px; }
body.page-home #routes .route-line b { color:#b49862; font-size:10px; }
body.page-home #routes .card-season { background:transparent; border:0; border-top:1px solid #e2dece; border-radius:0; margin-bottom:12px; }
body.page-home #routes .card-season summary { padding:8px 0; gap:6px; min-height:44px; font-size:10px; }
body.page-home #routes .card-season summary strong { font-size:10px; }
body.page-home #routes .best-month-strip { padding:0 0 12px; }
body.page-home #routes .card-body { display:flex; flex-direction:column; }
body.page-home #routes .actions { margin-top:auto; }
body.page-home :is(#fleet,#routes) .collection-card:focus-within { border-color:#aa8c50; box-shadow:0 9px 28px rgba(23,59,50,.09); }
@media (min-width:992px) {
  body.page-home #fleet .card-body > .muted { min-height:calc(2 * 1.65 * 13px); }
  body.page-home #routes .card-body > .muted { min-height:calc(3 * 1.65 * 13px); }
}
@media (hover:hover) and (prefers-reduced-motion:no-preference) {
  body.page-home :is(#fleet,#routes) .collection-card:hover { transform:translateY(-3px); border-color:#b5a27c; box-shadow:0 12px 28px rgba(23,59,50,.085); }
  body.page-home :is(#fleet,#routes) .collection-card:hover .thumb img { transform:scale(1.035); }
}
@media (max-width:767.98px) {
  body.page-home :is(#fleet,#routes) .card-body { padding:17px 17px 18px; }
  body.page-home :is(#fleet,#routes) h3 { font-size:25px; }
  body.page-home #fleet .card-price strong { font-size:22px; }
  body.page-home #routes .route-kicker { font-size:9px; }
  body.page-home :is(#fleet,#routes) .actions :is(a,button) { font-size:11px; }
}
@media (max-width:360px) {
  body.page-home :is(#fleet,#routes) .card-body { padding-inline:14px; }
  body.page-home #fleet .spec-strip { padding-inline:8px; gap:5px; }
  body.page-home #fleet .spec-strip span { font-size:9px; gap:4px; }
  body.page-home #fleet .spec-strip span + span { padding-left:5px; }
  body.page-home :is(#fleet,#routes) .actions :is(a,button) { font-size:10px; }
}
@media (prefers-reduced-motion:reduce) {
  body.page-home :is(#fleet,#routes) .collection-card,
  body.page-home :is(#fleet,#routes) .thumb img { transition:none; transform:none; }
}

/* Avoid the legacy brightness filter on outlined card buttons: it introduces
   a separate compositing layer during hover inside the clipped card. */
body.page-home :is(#fleet,#routes) .actions .btn-ghost,
body.page-home :is(#fleet,#routes) .actions .btn-ghost:hover,
body.page-home :is(#fleet,#routes) .actions .btn-ghost:focus-visible{filter:none;transform:none;position:relative;z-index:1;clip-path:none;overflow:visible;transition:background-color .2s ease,border-color .2s ease,color .2s ease}
body.page-home :is(#fleet,#routes) .actions .btn-ghost:hover{background:#eef1e7;border-color:#9fac92;color:#173b32}
body.page-home :is(#fleet,#routes) .actions .btn-ghost::before,
body.page-home :is(#fleet,#routes) .actions .btn-ghost::after{display:none}

/* Vehicle collection aligned with the approved photo-led route cards. */
body.page-home #fleet .vehicle-card{background:#fff;border-color:#deded4;box-shadow:0 5px 16px rgba(23,44,32,.075);border-radius:14px;isolation:isolate}
body.page-home #fleet .vehicle-card .card-body{background:#fff}
body.page-home #fleet .thumb img{filter:none;transition:transform .7s ease}
body.page-home #fleet .thumb::after{background:linear-gradient(180deg,rgba(9,26,20,.1),transparent 45%,rgba(9,26,20,.38))}
body.page-home #fleet .collection-badge{background:#ffffffed;border-radius:4px;box-shadow:none;color:#173b32}
body.page-home #fleet .image-arrow{background:none;border-color:rgba(255,255,255,.7);color:#fff}
body.page-home #fleet .card-kicker{position:relative;padding-right:31px;color:#6c756b}
body.page-home #fleet .card-kicker::after{content:attr(data-number);position:absolute;right:0;top:-3px;font:500 21px/1 var(--font-serif);color:#ad9972;letter-spacing:-.05em}
body.page-home #fleet .vehicle-card[data-card-number="01"] .card-kicker::after{content:"01"}
body.page-home #fleet .vehicle-card[data-card-number="02"] .card-kicker::after{content:"02"}
body.page-home #fleet .vehicle-card[data-card-number="03"] .card-kicker::after{content:"03"}
body.page-home #fleet h3{font-weight:600}
body.page-home #fleet h3 a{color:#173b32;text-decoration:none}
body.page-home #fleet .spec-strip{background:#f1f4ed;border-radius:5px}
body.page-home #fleet .spec-strip i{color:#647b60}
body.page-home #fleet .spec-strip span+span{border-left-color:#dce3d5}
body.page-home #fleet .card-fit>span{color:#78816e}
body.page-home #fleet .card-price{border-left-color:#dce3d5}
body.page-home #fleet .card-price strong{color:#173b32}
body.page-home #fleet .actions .btn-primary{background:#173b32;border-color:#173b32;color:#fff;box-shadow:none;border-radius:22px}
body.page-home #fleet .actions .btn-ghost{background:#fff;border-color:#d2dacb;color:#173b32;box-shadow:none;border-radius:22px}
body.page-home #fleet .vehicle-card:focus-within{border-color:#829677;box-shadow:0 8px 22px rgba(23,44,32,.12)}
@media(hover:hover){body.page-home #fleet .vehicle-card:hover{transform:none;border-color:#9faa94;box-shadow:0 9px 24px rgba(23,44,32,.12)}body.page-home #fleet .vehicle-card:hover .thumb img{transform:scale(1.035)}body.page-home #fleet h3 a:hover{text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px}}
@media(prefers-reduced-motion:reduce){body.page-home #fleet .thumb img{transition:none}body.page-home #fleet .vehicle-card:hover .thumb img{transform:none}}

/* Approved warm ivory card surface. */
body.page-home #fleet .collection-card,body.page-home #fleet .collection-card .card-body{background:#fffefa}
body.page-home #fleet .actions .btn-ghost{background:#fffefa}
body.page-home #fleet .actions .btn-ghost:hover{background:#eef1e7}

/* Same segmented vehicle filters as the Vehicles page. */
body.page-home #fleet .collection-toolbar .fleet-filters{display:flex;flex-wrap:wrap;gap:4px;padding:4px;border:1px solid #ded6c3;border-radius:9px;background:#f0ede3;width:auto}
body.page-home #fleet .collection-toolbar .fleet-filters .chip{display:inline-flex;align-items:center;gap:8px;min-height:44px;margin:0;padding:10px 16px;border:1px solid transparent;border-radius:6px;background:transparent;color:#52614f;box-shadow:none;font-size:12px;font-weight:500;cursor:pointer;filter:none}
body.page-home #fleet .collection-toolbar .fleet-filters .chip.active{background:#173b32;border-color:#173b32;color:#fffdf6}
body.page-home #fleet .collection-toolbar .fleet-filters .chip:not(.active):hover{background:#eef1e7;border-color:#c7cdbb}
@media(max-width:650px){body.page-home #fleet .collection-toolbar .fleet-filters .chip{padding:10px 12px;font-size:11px}}
@media(max-width:380px){body.page-home #fleet .collection-toolbar .fleet-filters{width:100%;gap:2px}body.page-home #fleet .collection-toolbar .fleet-filters .chip{flex:1;gap:5px;padding:10px 5px;font-size:10px}}
