  :root{
    --blue:#1e3a8a;
    --blue-deep:#162a63;
    --blue-light:#3b5bb8;
    --blue-soft:#e8edf8;
    --orange:#f37021;
    --orange-deep:#d85c10;
    --orange-soft:#fef0e6;
    --white:#ffffff;
    --cream:#fbfaf7;
    --gray-bg:#f5f6f8;
    --ink:#0f172a;
    --ink-soft:#374151;
    --muted:#64748b;
    --line:#e5e7eb;
    --line-strong:#cbd5e1;
  }
  *{margin:0;padding:0;box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{
    font-family:'Manrope',sans-serif;
    background:var(--white);
    color:var(--ink);
    line-height:1.6;
    overflow-x:hidden;
    -webkit-font-smoothing:antialiased;
  }
  ::selection{background:var(--orange);color:var(--white)}

  h1,h2,h3,h4{font-family:'Playfair Display',serif;font-weight:600;letter-spacing:-0.02em;line-height:1.1}
  .mono{font-family:'Manrope',sans-serif;font-size:0.72rem;letter-spacing:0.18em;text-transform:uppercase;font-weight:600}

  /* ============ LOGO MARK SVG (recreación simplificada) ============ */
  .brand{
    display:flex;align-items:center;gap:0.85rem;
    text-decoration:none;
  }
  .brand-mark{
    width:44px;height:44px;
    position:relative;
    flex-shrink:0;
  }
  .brand-mark svg{width:100%;height:100%;display:block}
  .brand-mark img{width:100%;height:100%;object-fit:contain;display:block}
  .footer-brand .brand-mark{background:var(--white);border-radius:10px;padding:5px}
  .brand-text{
    display:flex;flex-direction:column;
    line-height:1.05;
  }
  .brand-name{
    font-family:'Playfair Display',serif;
    font-size:1.15rem;
    font-weight:700;
    color:var(--blue);
    letter-spacing:-0.01em;
  }
  .brand-sub{
    font-size:0.66rem;
    letter-spacing:0.15em;
    text-transform:uppercase;
    color:var(--orange);
    font-weight:600;
    margin-top:2px;
  }

  /* ============ TOP BAR ============ */
  .topbar{
    background:var(--blue-deep);
    color:var(--white);
    padding:0.55rem 3rem;
    display:flex;justify-content:space-between;align-items:center;
    font-size:0.82rem;
    font-weight:400;
  }
  .topbar-left{display:flex;gap:2rem}
  .topbar-item{display:flex;align-items:center;gap:0.5rem;opacity:0.92}
  .topbar-item svg{width:14px;height:14px;stroke:var(--orange);stroke-width:2;fill:none}
  .topbar-right a{
    color:var(--white);text-decoration:none;
    opacity:0.85;transition:opacity 0.2s;
    margin-left:1.5rem;
  }
  .topbar-right a:hover{opacity:1;color:var(--orange)}

  /* ============ NAV ============ */
  nav{
    position:sticky;top:0;
    z-index:100;
    padding:1.1rem 3rem;
    display:flex;justify-content:space-between;align-items:center;
    background:rgba(255,255,255,0.97);
    backdrop-filter:blur(20px);
    border-bottom:1px solid var(--line);
    transition:all 0.3s ease;
  }
  .nav-links{
    display:flex;gap:2.2rem;list-style:none;align-items:center;
  }
  .nav-links a{
    color:var(--ink);text-decoration:none;
    font-size:0.92rem;font-weight:500;
    position:relative;
    transition:color 0.2s;
  }
  .nav-links a::after{
    content:"";
    position:absolute;left:0;bottom:-6px;
    width:0;height:2px;background:var(--orange);
    transition:width 0.3s ease;
  }
  .nav-links a:hover{color:var(--blue)}
  .nav-links a:hover::after{width:100%}
  .nav-cta{
    background:var(--orange);color:var(--white);
    padding:0.75rem 1.4rem;
    border-radius:6px;
    font-size:0.88rem;
    font-weight:600;
    text-decoration:none;
    transition:all 0.3s;
    display:inline-flex;align-items:center;gap:0.5rem;
  }
  .nav-cta:hover{background:var(--orange-deep);transform:translateY(-1px);box-shadow:0 6px 16px rgba(243,112,33,0.3)}
  /* Botón hamburguesa (solo móvil) */
  .nav-toggle{
    display:none;
    flex-direction:column;justify-content:center;gap:5px;
    width:42px;height:42px;
    border:none;background:transparent;cursor:pointer;padding:0;
  }
  .nav-toggle span{
    display:block;width:24px;height:2px;margin:0 auto;
    background:var(--blue-deep);border-radius:2px;
    transition:all 0.3s ease;
  }
  .nav-toggle.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .nav-toggle.is-open span:nth-child(2){opacity:0}
  .nav-toggle.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

  /* ============ HERO ============ */
  .hero{
    min-height:88vh;
    padding:5rem 3rem 5rem;
    position:relative;
    display:grid;
    grid-template-columns:1.15fr 1fr;
    gap:4rem;
    align-items:center;
    overflow:hidden;
    background:
      radial-gradient(circle at 85% 20%, rgba(243,112,33,0.08) 0%, transparent 50%),
      radial-gradient(circle at 10% 90%, rgba(30,58,138,0.06) 0%, transparent 50%),
      var(--cream);
  }
  .hero::before{
    content:"";
    position:absolute;
    inset:0;
    background-image:
      linear-gradient(var(--line) 1px, transparent 1px),
      linear-gradient(90deg, var(--line) 1px, transparent 1px);
    background-size:60px 60px;
    opacity:0.4;
    mask-image:radial-gradient(ellipse at center, black 30%, transparent 75%);
    pointer-events:none;
  }
  .hero-content{position:relative;z-index:2}
  .hero-tag{
    display:inline-flex;align-items:center;gap:0.6rem;
    padding:0.5rem 1rem;
    background:var(--white);
    border:1px solid var(--line);
    border-radius:100px;
    margin-bottom:2rem;
    box-shadow:0 2px 8px rgba(15,23,42,0.04);
  }
  .hero-tag .dot{
    width:8px;height:8px;border-radius:50%;
    background:var(--orange);
    box-shadow:0 0 0 4px rgba(243,112,33,0.2);
    animation:pulse 2s infinite;
  }
  .hero-tag span:last-child{
    font-size:0.78rem;
    letter-spacing:0.08em;
    color:var(--ink-soft);
    font-weight:500;
  }
  @keyframes pulse{
    0%,100%{box-shadow:0 0 0 4px rgba(243,112,33,0.2)}
    50%{box-shadow:0 0 0 8px rgba(243,112,33,0.05)}
  }
  h1.hero-title{
    font-size:clamp(2.8rem, 5.5vw, 5rem);
    margin-bottom:1.8rem;
    color:var(--blue-deep);
  }
  .hero-title em{
    font-style:italic;
    font-weight:500;
    color:var(--orange);
  }
  .hero-desc{
    font-size:1.15rem;
    color:var(--ink-soft);
    max-width:520px;
    margin-bottom:2.5rem;
    line-height:1.7;
  }
  .hero-actions{
    display:flex;gap:1rem;flex-wrap:wrap;
    align-items:center;
    margin-bottom:3rem;
  }
  .btn-primary{
    background:var(--blue);color:var(--white);
    padding:1rem 1.8rem;
    border-radius:8px;
    text-decoration:none;
    font-weight:600;
    transition:all 0.3s;
    display:inline-flex;align-items:center;gap:0.6rem;
    border:none;cursor:pointer;
    font-size:0.95rem;
  }
  .btn-primary:hover{background:var(--blue-deep);transform:translateY(-2px);box-shadow:0 10px 24px rgba(30,58,138,0.25)}
  .btn-secondary{
    background:var(--white);color:var(--blue);
    padding:1rem 1.6rem;
    border-radius:8px;
    text-decoration:none;
    font-weight:600;
    border:1.5px solid var(--blue);
    transition:all 0.3s;
    font-size:0.95rem;
    display:inline-flex;align-items:center;gap:0.5rem;
  }
  .btn-secondary:hover{background:var(--blue-soft)}

  .hero-trust{
    display:flex;gap:2.2rem;
    padding-top:2rem;
    border-top:1px solid var(--line);
    flex-wrap:wrap;
  }
  .trust-item{
    display:flex;align-items:center;gap:0.6rem;
    font-size:0.85rem;
    color:var(--ink-soft);
  }
  .trust-item svg{
    width:18px;height:18px;
    stroke:var(--orange);
    stroke-width:2.5;fill:none;
  }

  /* Hero visual */
  .hero-visual{
    position:relative;
    height:560px;
    z-index:1;
  }
  .hv-main{
    position:absolute;
    inset:20px 0 20px 40px;
    border-radius:24px;
    background:linear-gradient(160deg, var(--blue) 0%, var(--blue-deep) 100%);
    overflow:hidden;
    box-shadow:0 30px 80px rgba(30,58,138,0.25);
  }
  .hv-main::before{
    content:"";
    position:absolute;
    width:300px;height:300px;
    border-radius:50%;
    background:rgba(243,112,33,0.3);
    top:-100px;right:-80px;
    filter:blur(20px);
  }
  .hv-main::after{
    content:"";
    position:absolute;
    width:200px;height:200px;
    border-radius:50%;
    background:rgba(255,255,255,0.08);
    bottom:60px;left:-40px;
  }
  .hv-pattern{
    position:absolute;
    inset:0;
    background-image:
      radial-gradient(circle at 1px 1px, rgba(255,255,255,0.15) 1px, transparent 0);
    background-size:24px 24px;
  }
  .hv-content{
    position:absolute;
    bottom:2.5rem;left:2.5rem;right:2.5rem;
    color:var(--white);
    z-index:2;
  }
  .hv-quote{
    font-family:'Playfair Display',serif;
    font-style:italic;
    font-size:1.6rem;
    line-height:1.3;
    margin-bottom:1.5rem;
  }
  .hv-author{
    font-size:0.85rem;
    opacity:0.85;
    border-top:1px solid rgba(255,255,255,0.2);
    padding-top:1rem;
  }

  .hv-card-1, .hv-card-2{
    position:absolute;
    background:var(--white);
    border-radius:14px;
    padding:1.2rem;
    box-shadow:0 15px 40px rgba(15,23,42,0.1);
    z-index:3;
  }
  .hv-card-1{
    top:1.5rem;right:-1rem;
    width:230px;
    border-left:4px solid var(--orange);
  }
  .hv-card-2{
    bottom:2.5rem;right:1.5rem;
    width:200px;
    background:var(--orange);
    color:var(--white);
  }
  .hv-card-1 .lbl{
    font-size:0.7rem;
    color:var(--muted);
    text-transform:uppercase;
    letter-spacing:0.1em;
    font-weight:600;
    margin-bottom:0.4rem;
  }
  .hv-card-1 .val{
    font-family:'Playfair Display',serif;
    font-size:1.5rem;
    color:var(--blue-deep);
    margin-bottom:0.2rem;
  }
  .hv-card-1 .sub{
    font-size:0.8rem;
    color:var(--ink-soft);
  }
  .hv-card-2 .big{
    font-family:'Playfair Display',serif;
    font-size:2.2rem;
    line-height:1;
    margin-bottom:0.4rem;
  }
  .hv-card-2 .lbl2{
    font-size:0.78rem;
    opacity:0.9;
    line-height:1.4;
  }

  /* ============ STATS ============ */
  .stats{
    background:var(--blue-deep);
    color:var(--white);
    padding:3.5rem 3rem;
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:2rem;
    position:relative;
    overflow:hidden;
  }
  .stats::before{
    content:"";
    position:absolute;
    top:0;left:0;right:0;
    height:3px;
    background:linear-gradient(to right, var(--orange) 0%, var(--orange) 100%);
  }
  .stat{
    display:flex;
    align-items:center;
    gap:1.2rem;
  }
  .stat-icon{
    width:54px;height:54px;
    border-radius:12px;
    background:rgba(243,112,33,0.15);
    display:flex;align-items:center;justify-content:center;
    flex-shrink:0;
  }
  .stat-icon svg{width:26px;height:26px;stroke:var(--orange);stroke-width:2;fill:none}
  .stat-num{
    font-family:'Playfair Display',serif;
    font-size:2.4rem;
    font-weight:600;
    line-height:1;
    margin-bottom:0.3rem;
  }
  .stat-label{
    font-size:0.85rem;
    opacity:0.8;
    line-height:1.4;
  }

  /* ============ SECCIÓN BASE ============ */
  section{padding:6rem 3rem;position:relative}
  .section-head{
    display:grid;
    grid-template-columns:1fr 1.5fr;
    gap:3rem;
    margin-bottom:4rem;
    align-items:end;
  }
  .section-head.centered{
    grid-template-columns:1fr;
    text-align:center;
    max-width:760px;
    margin-left:auto;margin-right:auto;
    align-items:center;
  }
  .section-label{
    color:var(--orange);
    margin-bottom:1.2rem;
    display:flex;align-items:center;gap:0.8rem;
  }
  .centered .section-label{justify-content:center}
  .section-label::before, .section-label::after{
    content:"";
    width:24px;height:2px;
    background:var(--orange);
  }
  .section-label::after{display:none}
  .centered .section-label::after{display:block}
  h2.section-title{
    font-size:clamp(2.2rem,4vw,3.5rem);
    color:var(--blue-deep);
  }
  h2 em{font-style:italic;color:var(--orange);font-weight:500}
  .section-intro{
    font-size:1.05rem;
    color:var(--ink-soft);
    max-width:540px;
    line-height:1.75;
  }
  .centered .section-intro{margin-left:auto;margin-right:auto}

  /* ============ NOSOTROS ============ */
  .about{background:var(--white)}
  .about-grid{
    display:grid;
    grid-template-columns:1fr 1.1fr;
    gap:5rem;
    align-items:center;
  }
  .about-visual{
    position:relative;
    height:580px;
  }
  .about-img-main{
    position:absolute;
    width:78%;height:100%;
    border-radius:20px;
    background:linear-gradient(160deg, var(--blue) 0%, var(--blue-deep) 70%, #0a1a4a 100%);
    overflow:hidden;
    left:0;top:0;
  }
  .about-img-main::before{
    content:"";
    position:absolute;
    inset:0;
    background-image:
      radial-gradient(circle at 25% 30%, rgba(243,112,33,0.25), transparent 50%),
      radial-gradient(circle at 75% 75%, rgba(255,255,255,0.1), transparent 50%);
  }
  .about-img-cross{
    position:absolute;
    top:50%;left:50%;
    transform:translate(-50%,-50%);
    width:140px;height:140px;
    opacity:0.15;
  }
  .about-img-sub{
    position:absolute;
    right:0;bottom:-30px;
    width:55%;height:240px;
    border-radius:20px;
    background:var(--orange);
    overflow:hidden;
    z-index:2;
    padding:2rem;
    color:var(--white);
    display:flex;flex-direction:column;justify-content:space-between;
    box-shadow:0 20px 50px rgba(243,112,33,0.3);
  }
  .about-img-sub::before{
    content:"";
    position:absolute;
    width:200px;height:200px;
    border-radius:50%;
    background:rgba(255,255,255,0.12);
    top:-80px;right:-60px;
  }
  .about-img-sub .yr{
    font-family:'Playfair Display',serif;
    font-size:3.8rem;
    line-height:1;
    position:relative;z-index:1;
  }
  .about-img-sub .txt{
    font-size:0.9rem;
    line-height:1.5;
    position:relative;z-index:1;
  }
  .about-badge{
    position:absolute;
    top:2rem;right:-1rem;
    background:var(--white);
    padding:1rem 1.4rem;
    border-radius:12px;
    box-shadow:0 15px 35px rgba(15,23,42,0.12);
    z-index:3;
    display:flex;align-items:center;gap:0.8rem;
  }
  .about-badge-icon{
    width:42px;height:42px;
    border-radius:10px;
    background:var(--blue-soft);
    display:flex;align-items:center;justify-content:center;
  }
  .about-badge-icon svg{width:22px;height:22px;stroke:var(--blue);stroke-width:2;fill:none}
  .about-badge .num{
    font-family:'Playfair Display',serif;
    font-size:1.3rem;color:var(--blue-deep);
    line-height:1;
  }
  .about-badge .lbl{
    font-size:0.72rem;color:var(--muted);
  }

  .about-text h3{
    font-size:1.8rem;
    margin-bottom:1.5rem;
    color:var(--blue-deep);
  }
  .about-text > p{
    font-size:1.02rem;
    color:var(--ink-soft);
    margin-bottom:1.2rem;
    line-height:1.8;
  }
  .pillars{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:1.2rem;
    margin-top:2.2rem;
  }
  .pillar{
    padding:1.4rem;
    background:var(--gray-bg);
    border-radius:12px;
    border-left:3px solid var(--orange);
  }
  .pillar-title{
    font-weight:700;
    color:var(--blue-deep);
    margin-bottom:0.3rem;
    display:flex;align-items:center;gap:0.5rem;
    font-size:0.98rem;
  }
  .pillar-title svg{width:16px;height:16px;stroke:var(--orange);stroke-width:2.5;fill:none}
  .pillar p{
    font-size:0.88rem;
    color:var(--muted);
    line-height:1.5;
  }

  /* ============ MISIÓN / VISIÓN ============ */
  .mv{
    background:var(--gray-bg);
    padding:5rem 3rem;
  }
  .mv-grid{
    display:grid;
    grid-template-columns:1fr 1fr 1fr;
    gap:1.5rem;
    max-width:1400px;
    margin:0 auto;
  }
  .mv-card{
    background:var(--white);
    border-radius:16px;
    padding:2.2rem;
    border:1px solid var(--line);
    transition:all 0.3s;
    position:relative;
    overflow:hidden;
  }
  .mv-card:hover{
    transform:translateY(-6px);
    box-shadow:0 20px 40px rgba(15,23,42,0.08);
    border-color:var(--orange);
  }
  .mv-card .num-big{
    position:absolute;
    top:1.5rem;right:1.5rem;
    font-family:'Playfair Display',serif;
    font-style:italic;
    font-size:3.5rem;
    color:var(--blue-soft);
    line-height:1;
  }
  .mv-card .icon-box{
    width:52px;height:52px;
    border-radius:12px;
    background:var(--blue);
    display:flex;align-items:center;justify-content:center;
    margin-bottom:1.5rem;
    position:relative;z-index:1;
  }
  .mv-card .icon-box svg{width:24px;height:24px;stroke:var(--white);stroke-width:2;fill:none}
  .mv-card:nth-child(2) .icon-box{background:var(--orange)}
  .mv-card h3{
    font-size:1.5rem;
    color:var(--blue-deep);
    margin-bottom:0.8rem;
  }
  .mv-card p{
    color:var(--ink-soft);
    line-height:1.7;
    font-size:0.95rem;
  }

  /* ============ SERVICIOS ============ */
  .services{background:var(--white)}
  .services-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:1.3rem;
  }
  .service{
    background:var(--white);
    border-radius:16px;
    border:1px solid var(--line);
    transition:all 0.4s ease;
    position:relative;
    overflow:hidden;
    cursor:pointer;
    content-visibility:auto;
    contain-intrinsic-size:360px 380px;
  }
  .service::before{
    content:"";
    position:absolute;
    top:0;left:0;
    width:100%;height:4px;
    background:var(--orange);
    transform:scaleX(0);
    transform-origin:left;
    transition:transform 0.4s ease;
  }
  .service:hover::before{transform:scaleX(1)}
  .service:hover{
    transform:translateY(-6px);
    border-color:transparent;
    box-shadow:0 20px 40px rgba(30,58,138,0.1);
  }
  .service-img{
    width:100%;
    height:200px;
    object-fit:cover;
    display:block;
    background:var(--blue-soft);
    transition:transform 0.4s ease;
  }
  .service:hover .service-img{transform:scale(1.04)}
  .service-body{
    padding:1.8rem;
  }
  .service h3{
    font-size:1.35rem;
    margin-bottom:0.7rem;
    color:var(--blue-deep);
  }
  .service p{
    font-size:0.92rem;
    color:var(--ink-soft);
    margin-bottom:0;
    line-height:1.65;
  }
  .services-grid.is-collapsed .service:nth-child(n+7){display:none}
  .services-more{
    display:flex;
    justify-content:center;
    margin-top:2.5rem;
  }
  #servicios-toggle svg{width:18px;height:18px;stroke:currentColor;stroke-width:2;fill:none;transition:transform 0.3s}
  #servicios-toggle.is-open svg{transform:rotate(180deg)}
  /* Modal de servicio */
  .service-modal{
    position:fixed;inset:0;z-index:1000;
    display:none;align-items:center;justify-content:center;
    padding:1.5rem;
    background:rgba(15,23,42,0.72);
    -webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);
  }
  .service-modal.is-open{display:flex;animation:svcFade 0.25s ease}
  @keyframes svcFade{from{opacity:0}to{opacity:1}}
  .service-modal-card{
    background:var(--white);
    border-radius:18px;
    max-width:640px;width:100%;
    max-height:90vh;overflow:hidden;
    display:flex;flex-direction:column;
    box-shadow:0 30px 60px rgba(15,23,42,0.35);
    position:relative;
  }
  .service-modal-card img{
    width:100%;height:320px;object-fit:cover;display:block;
    background:var(--blue-soft);
  }
  .service-modal-body{padding:2rem;overflow-y:auto}
  .service-modal-body h3{font-size:1.7rem;color:var(--blue-deep);margin-bottom:0.9rem}
  .service-modal-body p{color:var(--ink-soft);line-height:1.7;font-size:0.98rem}
  .service-modal-close{
    position:absolute;top:1rem;right:1rem;
    width:42px;height:42px;border-radius:50%;
    border:none;cursor:pointer;
    background:rgba(255,255,255,0.92);
    color:var(--blue-deep);
    display:flex;align-items:center;justify-content:center;
    box-shadow:0 4px 14px rgba(15,23,42,0.18);
    transition:all 0.2s;
  }
  .service-modal-close:hover{background:var(--white);transform:rotate(90deg)}
  .service-modal-close svg{width:20px;height:20px;stroke:currentColor;stroke-width:2.2;fill:none}

  /* ============ ESPECIALIDADES ============ */
  .specialties{
    background:var(--blue-deep);
    color:var(--white);
    position:relative;
    overflow:hidden;
  }
  .specialties::before{
    content:"";
    position:absolute;
    width:500px;height:500px;
    border-radius:50%;
    background:radial-gradient(circle, rgba(243,112,33,0.2), transparent 70%);
    top:-200px;right:-200px;
    pointer-events:none;
  }
  .specialties .section-label{color:var(--orange)}
  .specialties .section-label::before, .specialties .section-label::after{background:var(--orange)}
  .specialties h2.section-title{color:var(--white)}
  .specialties h2 em{color:var(--orange)}
  .specialties .section-intro{color:rgba(255,255,255,0.75)}

  .spec-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:1rem;
    position:relative;z-index:1;
  }
  .spec-card{
    background:rgba(255,255,255,0.05);
    border:1px solid rgba(255,255,255,0.15);
    border-radius:14px;
    padding:1.6rem 1.4rem;
    transition:all 0.3s;
    cursor:pointer;
  }
  .spec-card:hover{
    background:var(--orange);
    border-color:var(--orange);
    transform:translateY(-4px);
  }
  .spec-card-icon{
    width:42px;height:42px;
    background:rgba(243,112,33,0.2);
    border-radius:10px;
    display:flex;align-items:center;justify-content:center;
    margin-bottom:1.2rem;
    transition:background 0.3s;
  }
  .spec-card:hover .spec-card-icon{background:rgba(255,255,255,0.2)}
  .spec-card-icon svg{width:22px;height:22px;stroke:var(--orange);stroke-width:2;fill:none;transition:stroke 0.3s}
  .spec-card:hover .spec-card-icon svg{stroke:var(--white)}
  .spec-card h4{
    font-family:'Manrope',sans-serif;
    font-size:1.02rem;
    font-weight:700;
    margin-bottom:0.4rem;
  }
  .spec-card p{
    font-size:0.82rem;
    color:rgba(255,255,255,0.65);
    line-height:1.5;
    transition:color 0.3s;
  }
  .spec-card:hover p{color:rgba(255,255,255,0.9)}

  /* ============ EPS / CONVENIOS ============ */
  .eps{background:var(--gray-bg)}
  .eps-grid{
    display:grid;
    grid-template-columns:repeat(6,1fr);
    gap:1rem;
    max-width:1200px;
    margin:0 auto;
  }
  .eps-card{
    background:var(--white);
    border:1px solid var(--line);
    border-radius:12px;
    padding:1.5rem 1rem;
    text-align:center;
    transition:all 0.3s;
  }
  .eps-card:hover{
    border-color:var(--orange);
    transform:translateY(-3px);
    box-shadow:0 10px 25px rgba(15,23,42,0.06);
  }
  .eps-logo{
    height:36px;
    display:flex;align-items:center;justify-content:center;
    margin-bottom:0.6rem;
    font-family:'Playfair Display',serif;
    font-weight:700;
    color:var(--blue);
    font-size:1.1rem;
  }
  .eps-logo-img{
    height:56px;
    display:flex;align-items:center;justify-content:center;
    margin-bottom:0.7rem;
  }
  .eps-logo-img img{
    max-width:100%;max-height:56px;
    object-fit:contain;
  }
  .eps-name{
    font-size:0.75rem;
    color:var(--muted);
    letter-spacing:0.05em;
  }
  /* Grupos de convenios */
  .conv-group{max-width:1200px;margin:0 auto 3rem}
  .conv-group:last-child{margin-bottom:0}
  .conv-group-head{
    display:flex;align-items:center;gap:0.8rem;
    margin-bottom:1.4rem;
  }
  .conv-group-head h3{
    font-size:1.3rem;color:var(--blue-deep);
  }
  .conv-group-head .mono{color:var(--orange)}
  .conv-group-head::after{
    content:"";flex:1;height:1px;background:var(--line);
  }

  /* ============ SOAT ============ */
  .soat{background:var(--gray-bg)}
  .soat-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:1.5rem;
    margin-bottom:3.5rem;
  }
  .soat-card{
    background:var(--white);
    border:1px solid var(--line);
    border-radius:16px;
    padding:2rem;
    border-top:3px solid var(--blue);
  }
  .soat-card.docs{border-top-color:var(--orange)}
  .soat-card-head{
    display:flex;align-items:center;gap:0.9rem;
    margin-bottom:1.3rem;
  }
  .soat-icon{
    width:48px;height:48px;border-radius:12px;
    background:var(--blue-soft);
    display:flex;align-items:center;justify-content:center;flex-shrink:0;
  }
  .soat-card.docs .soat-icon{background:var(--orange-soft)}
  .soat-icon svg{width:24px;height:24px;stroke:var(--blue);stroke-width:2;fill:none}
  .soat-card.docs .soat-icon svg{stroke:var(--orange)}
  .soat-card h3{font-size:1.25rem;color:var(--blue-deep)}
  .soat-list{list-style:none}
  .soat-list li{
    font-size:0.92rem;color:var(--ink-soft);
    padding:0.55rem 0;
    display:flex;align-items:flex-start;gap:0.7rem;
    border-bottom:1px solid var(--line);
  }
  .soat-list li:last-child{border-bottom:none}
  .soat-list li::before{
    content:"";width:7px;height:7px;border-radius:50%;
    background:var(--orange);flex-shrink:0;margin-top:0.5rem;
  }
  .soat-subtitle{
    font-family:'Playfair Display',serif;font-weight:600;
    font-size:1.6rem;color:var(--blue-deep);
    margin:0 0 2.5rem;text-align:center;
  }
  .soat-faq{max-width:840px;margin:3.5rem auto 0}

  /* ============ PROCESO ATENCIÓN ============ */
  .process{background:var(--white)}
  .process-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:1.5rem;
    position:relative;
  }
  .step{
    position:relative;
    padding:2rem 1.5rem;
    background:var(--gray-bg);
    border-radius:14px;
    transition:all 0.3s;
  }
  .step:hover{
    background:var(--blue);
    color:var(--white);
    transform:translateY(-5px);
  }
  .step:hover h3{color:var(--white)}
  .step:hover p{color:rgba(255,255,255,0.85)}
  .step-num{
    position:absolute;
    top:-18px;left:1.5rem;
    width:42px;height:42px;
    border-radius:50%;
    background:var(--orange);
    color:var(--white);
    display:flex;align-items:center;justify-content:center;
    font-family:'Playfair Display',serif;
    font-size:1.3rem;
    font-weight:700;
    box-shadow:0 8px 20px rgba(243,112,33,0.3);
  }
  .step h3{
    font-size:1.2rem;
    margin:1rem 0 0.6rem;
    color:var(--blue-deep);
    transition:color 0.3s;
  }
  .step p{
    font-size:0.9rem;
    color:var(--ink-soft);
    line-height:1.6;
    transition:color 0.3s;
  }

  /* ============ DERECHOS Y DEBERES ============ */
  .rights{
    background:var(--gray-bg);
  }
  .rights-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:2rem;
  }
  .rights-block{
    background:var(--white);
    border-radius:16px;
    padding:2.5rem;
    border-top:5px solid var(--blue);
  }
  .rights-block.deberes{border-top-color:var(--orange)}
  .rights-block-head{
    display:flex;align-items:center;gap:1rem;
    margin-bottom:1.8rem;
    padding-bottom:1.5rem;
    border-bottom:1px solid var(--line);
  }
  .rights-icon{
    width:48px;height:48px;
    border-radius:12px;
    background:var(--blue-soft);
    display:flex;align-items:center;justify-content:center;
    flex-shrink:0;
  }
  .deberes .rights-icon{background:var(--orange-soft)}
  .rights-icon svg{width:24px;height:24px;stroke:var(--blue);stroke-width:2;fill:none}
  .deberes .rights-icon svg{stroke:var(--orange)}
  .rights-block h3{
    font-size:1.6rem;
    color:var(--blue-deep);
  }
  .rights-block ul{
    list-style:none;
  }
  .rights-block li{
    padding:0.7rem 0;
    padding-left:2rem;
    position:relative;
    color:var(--ink-soft);
    font-size:0.95rem;
    line-height:1.6;
    border-bottom:1px solid var(--line);
  }
  .rights-block li:last-child{border-bottom:none}
  .rights-block li::before{
    content:"✓";
    position:absolute;
    left:0;top:0.7rem;
    width:20px;height:20px;
    background:var(--blue);
    color:var(--white);
    border-radius:50%;
    display:flex;align-items:center;justify-content:center;
    font-size:0.75rem;
    font-weight:bold;
  }
  .deberes li::before{background:var(--orange)}

  /* ============ HABILITACIÓN / CALIDAD ============ */
  .quality{
    background:linear-gradient(135deg, var(--blue-deep) 0%, var(--blue) 100%);
    color:var(--white);
    padding:5rem 3rem;
    position:relative;
    overflow:hidden;
  }
  .quality::before{
    content:"";
    position:absolute;
    width:600px;height:600px;
    border-radius:50%;
    background:radial-gradient(circle, rgba(243,112,33,0.15), transparent 60%);
    bottom:-300px;left:-200px;
  }
  .quality-grid{
    display:grid;
    grid-template-columns:1.5fr 1fr;
    gap:4rem;
    align-items:center;
    position:relative;z-index:1;
  }
  .quality-text .section-label{color:var(--orange)}
  .quality-text .section-label::before{background:var(--orange)}
  .quality-text h2{
    color:var(--white);
    font-size:clamp(2rem,3.5vw,3rem);
    margin-bottom:1.5rem;
  }
  .quality-text h2 em{color:var(--orange)}
  .quality-text p{
    font-size:1.05rem;
    color:rgba(255,255,255,0.8);
    line-height:1.75;
    margin-bottom:1rem;
  }
  .certifications{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:1rem;
  }
  .cert{
    background:rgba(255,255,255,0.08);
    border:1px solid rgba(255,255,255,0.15);
    border-radius:14px;
    padding:1.5rem;
    text-align:center;
    transition:all 0.3s;
  }
  .cert:hover{background:rgba(243,112,33,0.15);border-color:var(--orange)}
  .cert-icon{
    width:48px;height:48px;
    border-radius:12px;
    background:var(--orange);
    display:flex;align-items:center;justify-content:center;
    margin:0 auto 1rem;
  }
  .cert-icon svg{width:24px;height:24px;stroke:var(--white);stroke-width:2;fill:none}
  .cert h4{
    font-family:'Manrope',sans-serif;
    font-size:0.95rem;
    font-weight:700;
    margin-bottom:0.3rem;
  }
  .cert p{
    font-size:0.78rem;
    color:rgba(255,255,255,0.7);
    margin:0;
    line-height:1.4;
  }

  /* ============ TESTIMONIOS ============ */
  .testimonials{background:var(--white)}
  .testimonials-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:1.5rem;
  }
  .testimonial{
    background:var(--gray-bg);
    padding:2.2rem;
    border-radius:16px;
    border:1px solid var(--line);
    position:relative;
    transition:all 0.3s;
  }
  .testimonial:hover{transform:translateY(-4px);box-shadow:0 15px 35px rgba(15,23,42,0.08)}
  .testimonial.featured{
    background:var(--blue);
    color:var(--white);
    border-color:var(--blue);
  }
  .testimonial.featured .stars{color:var(--orange)}
  .testimonial.featured .quote{color:var(--white)}
  .testimonial.featured .author{color:var(--white)}
  .testimonial.featured .author-role{color:rgba(255,255,255,0.7)}
  .testimonial.featured .author-row{border-color:rgba(255,255,255,0.2)}
  .quote-mark{
    font-family:'Playfair Display',serif;
    font-size:3.5rem;
    line-height:0.5;
    color:var(--orange);
    margin-bottom:1rem;
    display:block;
  }
  .testimonial.featured .quote-mark{color:rgba(255,255,255,0.4)}
  .stars{
    color:var(--orange);
    font-size:0.95rem;
    margin-bottom:1.2rem;
    letter-spacing:2px;
  }
  .quote{
    font-family:'Playfair Display',serif;
    font-style:italic;
    font-size:1.1rem;
    line-height:1.55;
    color:var(--blue-deep);
    margin-bottom:1.8rem;
  }
  .author-row{
    display:flex;align-items:center;gap:1rem;
    padding-top:1.3rem;
    border-top:1px solid var(--line);
  }
  .author-avatar{
    width:46px;height:46px;
    border-radius:50%;
    background:linear-gradient(135deg, var(--blue-light), var(--blue));
    display:flex;align-items:center;justify-content:center;
    color:var(--white);
    font-family:'Playfair Display',serif;
    font-weight:600;
    font-size:1.1rem;
  }
  .testimonial.featured .author-avatar{
    background:var(--orange);
  }
  .author{
    font-weight:700;
    font-size:0.95rem;
    color:var(--blue-deep);
  }
  .author-role{
    font-size:0.8rem;
    color:var(--muted);
  }

  /* ============ CONTACTO Y UBICACIÓN ============ */
  .contact{background:var(--gray-bg)}
  .contact-grid{
    display:grid;
    grid-template-columns:1fr 1.2fr;
    gap:3rem;
  }
  .contact-info{
    background:var(--blue-deep);
    color:var(--white);
    border-radius:20px;
    padding:3rem;
    position:relative;
    overflow:hidden;
  }
  .contact-info::before{
    content:"";
    position:absolute;
    width:300px;height:300px;
    border-radius:50%;
    background:radial-gradient(circle, rgba(243,112,33,0.2), transparent 70%);
    top:-150px;right:-150px;
  }
  .contact-info > *{position:relative;z-index:1}
  .contact-info h3{
    font-size:1.8rem;
    margin-bottom:0.8rem;
    color:var(--white);
  }
  .contact-info > p{
    color:rgba(255,255,255,0.8);
    margin-bottom:2.5rem;
    line-height:1.7;
  }
  .contact-items{
    list-style:none;
    margin-bottom:2.5rem;
  }
  .contact-item{
    display:flex;align-items:flex-start;gap:1rem;
    padding:1.2rem 0;
    border-bottom:1px solid rgba(255,255,255,0.15);
  }
  .contact-item:last-child{border-bottom:none}
  .contact-item-icon{
    width:42px;height:42px;
    background:var(--orange);
    border-radius:10px;
    display:flex;align-items:center;justify-content:center;
    flex-shrink:0;
  }
  .contact-item-icon svg{width:20px;height:20px;stroke:var(--white);stroke-width:2;fill:none}
  .contact-item-text{flex:1}
  .contact-item-label{
    font-size:0.78rem;
    text-transform:uppercase;
    letter-spacing:0.1em;
    color:rgba(255,255,255,0.6);
    font-weight:600;
    margin-bottom:0.2rem;
  }
  .contact-item-val{
    font-size:1rem;
    color:var(--white);
  }
  .contact-item-val a{
    color:var(--white);
    text-decoration:none;
    transition:color 0.2s;
  }
  .contact-item-val a:hover{color:var(--orange)}

  .contact-socials{
    display:flex;gap:0.8rem;
    padding-top:2rem;
    border-top:1px solid rgba(255,255,255,0.15);
  }
  .contact-socials a{
    width:42px;height:42px;
    border-radius:50%;
    border:1px solid rgba(255,255,255,0.25);
    display:flex;align-items:center;justify-content:center;
    color:var(--white);
    text-decoration:none;
    transition:all 0.3s;
  }
  .contact-socials a svg{width:18px;height:18px;fill:currentColor}
  .contact-socials a:hover{background:var(--orange);border-color:var(--orange);transform:translateY(-2px)}

  .schedule-card{
    background:var(--white);
    border-radius:20px;
    padding:3rem;
    border:1px solid var(--line);
  }
  .schedule-card h3{
    font-size:1.8rem;
    margin-bottom:0.6rem;
    color:var(--blue-deep);
  }
  .schedule-card > p{
    color:var(--ink-soft);
    margin-bottom:2rem;
    line-height:1.7;
  }
  .schedule{
    list-style:none;
    margin-bottom:2rem;
  }
  .schedule li{
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:1rem 0;
    border-bottom:1px solid var(--line);
  }
  .schedule li:last-child{border-bottom:none}
  .schedule .day{
    color:var(--ink);
    font-weight:600;
    font-size:0.95rem;
    display:flex;align-items:center;gap:0.6rem;
  }
  .schedule .day::before{
    content:"";
    width:6px;height:6px;
    border-radius:50%;
    background:var(--orange);
  }
  .schedule .hrs{
    color:var(--ink-soft);
    font-size:0.92rem;
  }
  .schedule .closed{
    color:#ef4444;
    font-style:italic;
    font-family:'Playfair Display',serif;
    font-size:0.95rem;
  }
  .emergency-box{
    background:var(--orange-soft);
    border:1px solid var(--orange);
    border-radius:12px;
    padding:1.5rem;
    display:flex;align-items:center;gap:1rem;
  }
  .emergency-icon{
    width:48px;height:48px;
    background:var(--orange);
    border-radius:12px;
    display:flex;align-items:center;justify-content:center;
    flex-shrink:0;
  }
  .emergency-icon svg{width:24px;height:24px;stroke:var(--white);stroke-width:2.5;fill:none}
  .emergency-box h4{
    font-family:'Manrope',sans-serif;
    color:var(--orange-deep);
    font-weight:700;
    margin-bottom:0.2rem;
    font-size:0.95rem;
  }
  .emergency-box p{
    font-size:0.85rem;
    color:var(--ink-soft);
    line-height:1.4;
  }
  .emergency-box strong{color:var(--orange-deep)}

  /* ============ FAQ ============ */
  .faq{background:var(--white)}
  .faq-grid{
    display:grid;
    grid-template-columns:1fr 1.7fr;
    gap:5rem;
  }
  .faq-side .section-label{margin-bottom:1.2rem}
  .faq-side h2{margin-bottom:1.5rem}
  .faq-side p{
    color:var(--ink-soft);
    font-size:1rem;
    line-height:1.7;
    margin-bottom:2rem;
  }
  .faq-help{
    background:var(--blue-soft);
    border-radius:14px;
    padding:1.8rem;
  }
  .faq-help h4{
    font-family:'Manrope',sans-serif;
    color:var(--blue-deep);
    font-weight:700;
    margin-bottom:0.6rem;
    font-size:1rem;
  }
  .faq-help p{
    font-size:0.9rem;
    margin-bottom:1rem;
  }
  .faq-help a{
    color:var(--blue);
    font-weight:700;
    text-decoration:none;
    font-size:0.92rem;
    display:inline-flex;align-items:center;gap:0.4rem;
  }
  .faq-help a:hover{color:var(--orange)}

  .faq-list{}
  details{
    background:var(--gray-bg);
    border-radius:12px;
    padding:1.3rem 1.6rem;
    margin-bottom:0.8rem;
    transition:all 0.3s;
    border:1px solid transparent;
  }
  details[open]{
    background:var(--white);
    border-color:var(--blue);
    box-shadow:0 8px 20px rgba(30,58,138,0.06);
  }
  summary{
    cursor:pointer;
    list-style:none;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:1rem;
    font-family:'Manrope',sans-serif;
    font-weight:600;
    font-size:1.02rem;
    color:var(--blue-deep);
  }
  summary::after{
    content:"+";
    width:28px;height:28px;
    border-radius:50%;
    background:var(--orange);
    color:var(--white);
    display:flex;align-items:center;justify-content:center;
    font-size:1.2rem;
    font-weight:300;
    flex-shrink:0;
    transition:transform 0.3s;
  }
  details[open] summary::after{transform:rotate(45deg)}
  details p{
    margin-top:1rem;
    padding-top:1rem;
    border-top:1px solid var(--line);
    color:var(--ink-soft);
    line-height:1.7;
    font-size:0.95rem;
  }

  /* ============ CTA FINAL ============ */
  .cta-final{
    background:var(--white);
    padding:3rem 3rem 6rem;
  }
  .cta-banner{
    background:linear-gradient(135deg, var(--orange) 0%, var(--orange-deep) 100%);
    border-radius:24px;
    padding:4rem 3rem;
    text-align:center;
    color:var(--white);
    position:relative;
    overflow:hidden;
    max-width:1400px;
    margin:0 auto;
  }
  .cta-banner::before, .cta-banner::after{
    content:"";
    position:absolute;
    border-radius:50%;
    background:rgba(255,255,255,0.1);
  }
  .cta-banner::before{
    width:300px;height:300px;
    top:-150px;left:-50px;
  }
  .cta-banner::after{
    width:250px;height:250px;
    bottom:-100px;right:-50px;
  }
  .cta-content{
    position:relative;
    z-index:2;
    max-width:680px;
    margin:0 auto;
  }
  .cta-banner h2{
    font-size:clamp(2rem,4vw,3rem);
    margin-bottom:1.2rem;
    color:var(--white);
  }
  .cta-banner h2 em{color:var(--white);opacity:0.9}
  .cta-banner p{
    font-size:1.1rem;
    margin-bottom:2.2rem;
    opacity:0.95;
    line-height:1.6;
  }
  .cta-actions{
    display:flex;gap:1rem;
    justify-content:center;
    flex-wrap:wrap;
  }
  .cta-banner .btn-primary{
    background:var(--white);
    color:var(--orange-deep);
  }
  .cta-banner .btn-primary:hover{background:var(--blue-deep);color:var(--white)}
  .cta-banner .btn-secondary{
    background:transparent;
    color:var(--white);
    border-color:var(--white);
  }
  .cta-banner .btn-secondary:hover{background:rgba(255,255,255,0.15)}

  /* ============ FOOTER ============ */
  footer{
    background:var(--blue-deep);
    color:var(--white);
    padding:5rem 3rem 2rem;
    position:relative;
  }
  footer::before{
    content:"";
    position:absolute;
    top:0;left:0;right:0;
    height:4px;
    background:linear-gradient(to right, var(--orange) 0%, var(--orange) 100%);
  }
  .footer-grid{
    display:grid;
    grid-template-columns:1.5fr 1fr 1fr 1fr;
    gap:3rem;
    margin-bottom:3.5rem;
    padding-bottom:3rem;
    border-bottom:1px solid rgba(255,255,255,0.15);
  }
  .footer-brand .brand{margin-bottom:1.2rem}
  .footer-brand .brand-name{color:var(--white)}
  .footer-brand p{
    color:rgba(255,255,255,0.7);
    font-size:0.92rem;
    line-height:1.7;
    margin-bottom:1.5rem;
    max-width:320px;
  }
  .footer-col h4{
    font-family:'Manrope',sans-serif;
    font-size:0.82rem;
    font-weight:700;
    color:var(--white);
    text-transform:uppercase;
    letter-spacing:0.12em;
    margin-bottom:1.3rem;
  }
  .footer-col ul{list-style:none}
  .footer-col li{margin-bottom:0.7rem}
  .footer-col a{
    color:rgba(255,255,255,0.7);
    text-decoration:none;
    font-size:0.92rem;
    transition:color 0.2s;
    display:inline-flex;align-items:center;gap:0.4rem;
  }
  .footer-col a:hover{color:var(--orange)}
  .footer-bottom{
    display:flex;
    justify-content:space-between;
    align-items:center;
    font-size:0.83rem;
    color:rgba(255,255,255,0.5);
    flex-wrap:wrap;
    gap:1rem;
  }
  .footer-bottom-links a{color:rgba(255,255,255,0.5);text-decoration:none;margin-left:1.5rem;font-size:0.83rem;display:inline-flex;align-items:center}
  .footer-bottom-links a:hover{color:var(--orange)}
  .footer-bottom-links a svg{width:15px;height:15px;margin-right:0.35rem}
  .footer-credit a{color:var(--white);font-weight:600;text-decoration:none}
  .footer-credit a:hover{color:var(--orange)}

  /* ============ ANIMATIONS ============ */
  @keyframes fadeUp{
    from{opacity:0;transform:translateY(30px)}
    to{opacity:1;transform:translateY(0)}
  }
  .fade-up{
    opacity:0;
    animation:fadeUp 0.9s ease forwards;
  }
  .delay-1{animation-delay:0.15s}
  .delay-2{animation-delay:0.3s}
  .delay-3{animation-delay:0.45s}
  .delay-4{animation-delay:0.6s}

  @keyframes float{
    0%,100%{transform:translateY(0)}
    50%{transform:translateY(-10px)}
  }
  .hv-card-1{animation:float 6s ease-in-out infinite}
  .hv-card-2{animation:float 7s ease-in-out infinite 1s}

  /* ============ RESPONSIVE ============ */
  @media (max-width:1024px){
    .topbar{padding:0.55rem 1.5rem;font-size:0.78rem}
    .topbar-left{gap:1rem}
    .topbar-right a{margin-left:1rem}
    .hero{grid-template-columns:1fr;padding:3rem 1.5rem}
    .hero-visual{height:480px;margin-top:1rem}
    .stats{grid-template-columns:repeat(2,1fr);padding:2.5rem 1.5rem}
    .about-grid{grid-template-columns:1fr;gap:3rem}
    .about-visual{height:440px}
    .mv-grid{grid-template-columns:1fr;gap:1.2rem}
    .services-grid{grid-template-columns:repeat(2,1fr)}
    .spec-grid{grid-template-columns:repeat(2,1fr)}
    .eps-grid{grid-template-columns:repeat(3,1fr)}
    .process-grid{grid-template-columns:repeat(2,1fr);gap:2rem 1.5rem}
    .rights-grid{grid-template-columns:1fr}
    .soat-grid{grid-template-columns:1fr}
    .quality-grid{grid-template-columns:1fr;gap:2.5rem}
    .testimonials-grid{grid-template-columns:1fr}
    .contact-grid{grid-template-columns:1fr;gap:2rem}
    .faq-grid{grid-template-columns:1fr;gap:2.5rem}
    .footer-grid{grid-template-columns:1fr 1fr;gap:2.5rem}
    .section-head{grid-template-columns:1fr;gap:1.5rem;align-items:start}
    .nav-toggle{display:flex}
    .nav-cta{display:none}
    .nav-links{
      display:flex;flex-direction:column;align-items:stretch;gap:0;
      position:absolute;top:100%;left:0;right:0;
      background:var(--white);
      border-bottom:1px solid var(--line);
      box-shadow:0 12px 30px rgba(15,23,42,0.08);
      padding:0.4rem 1.5rem 1rem;
      transform:translateY(-12px);opacity:0;pointer-events:none;
      transition:opacity 0.25s ease, transform 0.25s ease;
    }
    nav.nav-open .nav-links{transform:translateY(0);opacity:1;pointer-events:auto}
    .nav-links li{width:100%}
    .nav-links a{display:block;padding:0.9rem 0;border-bottom:1px solid var(--line);font-size:1rem}
    .nav-links li:last-child a{border-bottom:none}
    .nav-links a::after{display:none}
    nav{padding:0.9rem 1.5rem}
    section{padding:4rem 1.5rem}
    .cta-final{padding:2rem 1.5rem 4rem}
    .cta-banner{padding:3rem 2rem}
    footer{padding:4rem 1.5rem 2rem}
    .mv{padding:4rem 1.5rem}
    .quality{padding:4rem 1.5rem}
    .hv-card-1{width:200px;right:0}
    .hv-card-2{width:170px;right:1rem}
  }
  @media (max-width:640px){
    .topbar{display:none}
    .services-grid{grid-template-columns:1fr}
    .spec-grid{grid-template-columns:1fr}
    .eps-grid{grid-template-columns:repeat(2,1fr)}
    .stats{grid-template-columns:1fr;gap:1.5rem}
    .stat-num{font-size:2rem}
    .process-grid{grid-template-columns:1fr}
    .pillars{grid-template-columns:1fr}
    .footer-grid{grid-template-columns:1fr;gap:2rem}
    .footer-bottom{flex-direction:column;text-align:center}
    .footer-bottom-links a{margin:0 0.5rem}
    .brand-name{font-size:1rem}
    .brand-sub{font-size:0.6rem}
    .nav-cta{padding:0.6rem 1rem;font-size:0.82rem}
    .hero-visual{height:420px}
    .contact-info, .schedule-card{padding:2rem}
    .rights-block{padding:2rem}
  }
