
    :root{
      --brand: #d71920; /* rojo aprox Continental */
    }
    body{
      font-family: "Open Sans", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    }
    .navbar-blur{
      background: rgba(10,10,10,.65);
      backdrop-filter: blur(10px);
    }
    .hero{
      min-height: 92vh;
      position: relative;
    }
    .hero .carousel-item img{
      height: 92vh;
      object-fit: cover;
      filter: contrast(1.05) saturate(1.05);
    }
    .hero-overlay{
      position:absolute;
      inset:0;
      background: linear-gradient(90deg, rgba(0,0,0,.65), rgba(0,0,0,.25));
      pointer-events:none;
      z-index: 1;
    }
    .hero-content{
      position:absolute;
      inset:0;
      z-index:2;
      display:flex;
      align-items:center;
    }
    .badge-brand{
      background: rgba(215,25,32,.15);
      color: #fff;
      border: 1px solid rgba(215,25,32,.35);
    }
    .section-title{
      letter-spacing: .02em;
    }
    .divider{
      width: 92px;
      height: 4px;
      background: var(--brand);
      border-radius: 999px;
      margin: .75rem auto 0;
    }
    .route-card{
      cursor: pointer;
      transition: transform .12s ease, box-shadow .12s ease;
    }
    .route-card:hover{
      transform: translateY(-3px);
      box-shadow: 0 .75rem 1.5rem rgba(0,0,0,.10);
    }
    .route-icon{
      width: 54px;
      height: 54px;
      display:grid;
      place-items:center;
      border-radius: 16px;
      background: rgba(215,25,32,.08);
      border: 1px solid rgba(215,25,32,.18);
    }
    .promo-img{
      width: 88px;
      height: 88px;
      object-fit: contain;
    }
    footer{
      background: #0b0b0b;
      color: rgba(255,255,255,.85);
    }
    footer a{ color:#fff; }
