  :root{
      --brand:#02b37b;
      --brand2:#0a7fa3;
      --ink:#0f172a;
      --muted:#475569;
      --bg:#f6faf9;
      --card:#ffffff;
      --radius:18px;
      --space:clamp(16px,2.2vw,28px);
      --hero-url:url('img/planes.png');
    }

    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{margin:0; font-family:'Inter',system-ui,Segoe UI,Roboto,Arial; color:var(--muted); background:var(--bg)}
    img{max-width:100%; display:block}
    a{color:inherit; text-decoration:none}

    /* ===== NAV ===== */
    nav.main-nav{ background:#fff; border-bottom:1px solid #e8f2ef }
    nav .inner{ max-width:1160px; margin:auto; padding:.85rem 16px; display:flex; align-items:center; gap:12px; flex-wrap:wrap; justify-content:space-between }
    .nav-toggle{ display:none; border:0; border-radius:999px; padding:.55rem .95rem; font-weight:800; color:#fff; background:linear-gradient(90deg,var(--brand),var(--brand2)); }
    .menu{ display:flex; gap:.6rem; flex-wrap:wrap; justify-content:center }
    .chip{ background:#fff; border:1px solid #e8f2ef; padding:.55rem .9rem; border-radius:999px; font-weight:700; color:#0d2b2a; transition:.2s; }
    .chip:hover{ background:#eefcf6; border-color:#b7f2da }
    .nav-cta{
      display:inline-flex; align-items:center; justify-content:center;
      padding:.6rem 1rem; border-radius:999px; font-weight:800;
      background:linear-gradient(90deg, var(--brand), var(--brand2));
      color:#fff; box-shadow:0 10px 22px rgba(2,179,123,.18);
      transition:transform .18s ease;
    }
    .nav-cta:hover{ transform:translateY(-1.5px); }

    /* ===== HERO solo imagen ===== */
    header.hero{ position:relative; overflow:hidden; background:none; color:inherit; height:auto; padding:0 }
    .hero-img{
      width:100%;
      height: clamp(60px, 55vw, 1080px);
      object-fit:cover; object-position:center; display:block; filter:saturate(104%);
    }
    .hero svg.wave{ position:absolute; left:0; right:0; bottom:-1px; width:100%; height:64px }
    .sr-only{ position:absolute !important; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }

    /* ===== LAYOUT base ===== */
    .contenedor{ width:min(1160px, 92%); margin:auto; padding: clamp(42px,6vw,84px) 0 }
    .titulo{ font-family:'Montserrat',sans-serif; font-weight:800; color:#07281f; font-size:clamp(26px,3.4vw,40px); margin:0 0 6px; text-align:center }
    .sub{ text-align:center; opacity:.8; margin:0 0 22px }
