.inner-page { --inner-hero-image: none; background: var(--paper); }
.page-servicios { --inner-hero-image: url("assets/bg-servicios-panorama-v2.png"); }
.page-flotillas { --inner-hero-image: url("assets/bg-flotillas-panorama-v2.png"); }
.page-citas { --inner-hero-image: url("assets/bg-citas-panorama-v2.png"); }
.page-proceso { --inner-hero-image: url("assets/bg-proceso-panorama-v2.png"); }
.page-contacto { --inner-hero-image: url("assets/bg-contacto-panorama-v2.png"); }
.inner-hero {
  display: grid;
  min-height: clamp(520px, 46vw, 680px);
  padding: clamp(3.5rem, 8vw, 6.5rem) 0;
  align-items: center;
  color: var(--white);
  background:
    linear-gradient(90deg, rgba(12,20,27,.98) 0%, rgba(17,28,37,.92) 34%, rgba(17,28,37,.62) 55%, rgba(17,28,37,.12) 100%),
    var(--inner-hero-image) center / cover no-repeat;
}
.inner-hero-grid { display: block; }
.inner-hero-grid > div { position: relative; z-index: 1; max-width: 570px; }
.inner-hero h1 { max-width: 12ch; margin: .4rem 0 1rem; font-size: clamp(2.7rem, 6vw, 5rem); line-height: .98; letter-spacing: -.05em; }
.inner-hero p:not(.eyebrow) { max-width: 58ch; margin: 0; color: rgba(255,255,255,.78); font-size: 1.08rem; }
.inner-actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.7rem; }
.inner-actions .btn-secondary { color: var(--white); border-color: rgba(255,255,255,.45); }
.home-routes { padding: clamp(3rem, 7vw, 5.5rem) 0; }
.home-routes-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; margin-top: 1.8rem; }
.home-route { display: grid; min-height: 190px; padding: 1.5rem; border: 1px solid var(--line); border-radius: 10px; background: var(--white); box-shadow: 0 8px 22px rgba(36,48,59,.05); }
.home-route span { color: var(--red); font-size: .78rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.home-route h2 { align-self: end; margin: 2rem 0 .3rem; font-size: 1.45rem; }
.home-route p { margin: 0; color: var(--muted); }
.home-route:hover { border-color: rgba(201,31,47,.4); transform: translateY(-2px); }
.compact-cta { padding: clamp(2.5rem, 6vw, 4rem) 0; color: var(--white); background: var(--ink); }
.compact-cta-inner { display: flex; align-items: center; justify-content: space-between; gap: 2rem; }
.compact-cta h2 { margin: 0 0 .4rem; font-size: clamp(1.8rem, 4vw, 2.8rem); }
.compact-cta p { margin: 0; color: rgba(255,255,255,.72); }
.page-section { padding: clamp(3.5rem, 8vw, 6rem) 0; }
.page-section + .page-section { padding-top: 0; }
.contact-map-link { word-break: normal; }
@media (max-width: 760px) {
  .home-page .hero-panel { display: none; }
  .home-routes-grid { grid-template-columns: repeat(2, 1fr); gap: .75rem; }
  .home-route { min-height: 125px; padding: 1rem; }
  .home-route h2 { margin: 1rem 0 0; font-size: 1.12rem; }
  .home-route p { display: none; }
  .compact-cta-inner { display: grid; }
  .compact-cta .btn { width: 100%; }
  .inner-hero {
    min-height: 620px;
    padding: 3rem 0 2.5rem;
    align-items: end;
    background:
      linear-gradient(180deg, rgba(12,20,27,.28) 0%, rgba(12,20,27,.58) 40%, rgba(12,20,27,.98) 80%),
      var(--inner-hero-image) 66% center / cover no-repeat;
  }
  .inner-hero h1 { font-size: clamp(2.35rem, 11vw, 3.15rem); }
  .inner-actions, .inner-actions .btn { width: 100%; }
}
