  :root{
    --azul-marino:#0b2e5c;
    --azul-medio:#173f7a;
    --naranja:#f5821f;
    --gris-texto:#4a4a4a;
    --gris-claro:#9aa0a6;
  }

  html, body {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
}

  body{
    font-family: 'Inter', sans-serif;
    color:var(--gris-texto);
  }

  h1,h2,h3,.brand{
    font-family:'Inter', sans-serif;
  }

  .logo {
    height: 112px;
    width: 278px;
    display: block;
    margin-top: 40px;
    margin-left: 58px;
}

  .hero {
    min-height: 700px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
}

.navbar-nav {
  margin-right: 86px;
}

.container {
  max-width: 100%;
}
.hero .navbar {
    background: transparent;
}

.hero .nav-link {
    color: #17438D;
    font-family: 'Inter', sans-serif;
    font-weight: 500;
    font-size: 16px;
}

.hero .nav-link:hover {
    color: #00AAFF;
}

.brand-catodica {
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-weight: 700;
}

.brand-peru {
    color: #00AAFF;
    font-family: 'Inter', sans-serif;
    font-weight: 700;
}

.hero-content {
    padding-top: 180px;
}

.hero h1 {
    margin-left:86px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 50px;
    font-weight: 700;
    line-height: 120%;
    
}

@media (max-width: 991.98px) {
  .hero h1 {
    margin-left: 0px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 40px;
    font-weight: 700;
    line-height: 120%;
    
}
}

  /* ---------- INTRO / SLOGAN ---------- */
  .intro-slogan{
    color:#17438D;
    font-weight:700;
    font-size:30px;
    line-height:1.5;
  }

  /* ---------- INDUSTRY CARDS ---------- */
  .industry-card{
    position:relative;
    width: 200px;
    height: 248px;
    border-radius:20px;
    overflow:hidden;
    aspect-ratio:1/1;
    box-shadow:0 3px 10px rgba(0,0,0,.15);
    cursor:pointer;
  }
  .industry-card img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .4s ease;
  }
  .industry-card:hover img{
    transform:scale(1.08);
  }
  .industry-card .label{
    position:absolute;
    left:0; right:0; bottom:0;
    background:linear-gradient(0deg, rgba(0,0,0,.75) 0%, rgba(0,0,0,0) 100%);
    color:#fff;
    font-weight:700;
    font-size:.78rem;
    padding:.5rem .5rem .4rem;
    text-align:center;
  }

@media (min-width: 1200px) {
    .cartashome {
    
        margin-left: 10%;
        margin-right: 10%;
    }
}


  /* ---------- CONTACT SECTION ---------- */
  .contact-section{
    background:#17438D;
    color:#fff;
    
    
  }
  .contact-section h2{
    font-weight:700;
    font-size:50px;
  }

  .contactohome p{
    font-size: 25px;
  }

  .contactohome {
    padding-left: 100px;
  }



  
  .contact-section .form-control{
    border-radius:20px;
    border:none;
    padding:.6rem 1.1rem;
  }
  .contact-section textarea.form-control{
    border-radius:16px;
  }
  .btn-enviar{
    background:#fff;
    color:var(--azul-marino);
    font-weight:700;
    border-radius:20px;
    padding:.5rem 2.5rem;
    border:none;
  }
  .btn-enviar:hover{
    background:var(--naranja);
    color:#fff;
  }

  .form-control::placeholder {
  color:#17438D;
  font-weight: 500;
  font-size: 20px;
    }

    .formulariopiedepagina {
      padding-right: 100px;
    }

@media (max-width: 991.98px) {
  .formulariopiedepagina {
      padding-right: 0px;
    }

    .contactohome {
    padding-left: 20px;
  }
}

  /* ---------- FOOTER ---------- */
  footer{
    background:#6F696A;
    color:#fff;
    font-size:.9rem;
  }
  footer .footer-brand{
    font-weight:800;
    font-size:1.3rem;
  }
  footer a.social-icon{
    color:#fff;
    background:#6F696A;
    width:36px;
    height:36px;
    border-radius:50%;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    margin-left:.5rem;
    transition:background .3s;
  }
  footer a.social-icon:hover{
    background:var(--naranja);
  }
  .copyright-bar{
    background:#D9D9D9;
    font-size:15px;
    color:#3A3A3A;
    
  }
 


  .logofooter {
    height: 72px;
    width: 180x;
    display: block;
    margin-top: 20px;
    margin-left: 58px;
}



  /* quienes somos */
  .quienes-somos {
    max-width: 1000px;
    margin: 0 auto;
    padding: 48px 24px 64px;
  }
 
  .qs-title {
    text-align: center;
    color:  #17438D;
    font-size: 1.8rem;
    font-weight: 700;
    margin: 0 0 28px;
  }
 
  .qs-intro p {
    font-size: 20px;
    line-height: 1.6;
    color: #000000;
    text-align: justify;
    margin: 0 0 16px;
  }
 
  /* Mision / Vision */
  .qs-cards {
    display: flex;
    gap: 24px;
    margin: 36px 0 40px;
    flex-wrap: wrap;
  }
 
  .qs-card {
    flex: 1 1 300px;
    background:  #1e4d91;
    color: #ffffff;
    border-radius: 6px;
    padding: 28px 24px;
    text-align: center;
  }
 
  .qs-card h3 {
    margin: 0 0 16px;
    font-size: 30px;
    font-weight: 700;
  }
 
  .qs-card p {
    margin: 0;
    font-size: 20px;
    line-height: 1.6;
  }
 
  /* Propuesta de valor */
  .qs-valor {
    display: flex;
    align-items: flex-start;
    gap: 20px;
  }
 
  .qs-valor-icon {
    flex-shrink: 0;
    width: 60px;
    height: 60px;
  }
 
  .qs-valor-content h3 {
    color: #1c3f7c;
    font-size: 30px;
    font-weight: 700;
    margin: 4px 0 14px;
  }
 
  .qs-valor-content ul {
    margin: 0;
    padding-left: 18px;
    font-size: 20px;
    line-height: 1.8;
    color: var(--texto-suave);
  }
 
  .qs-valor-content li {
    margin-bottom: 2px;
  }
 
  /* Responsive */
  @media (max-width: 640px) {
    .qs-cards { flex-direction: column; }
    .qs-valor { flex-direction: column; align-items: center; text-align: center; }
    .qs-valor-content ul { text-align: left; }
  }

 /* Servicios */
    .servicios {
    max-width: 1100px;
    margin: 0 auto;
    padding: 48px 24px;
  }
 
  .servicios-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 28px 24px;
  }
 
  .servicio-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
 
  .servicio-item img {
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    border: 1px solid #d9d9d9;
    display: block;
  }
 
  .servicio-item .servicio-label {
    margin-top: 12px;
    font-size: 20px;
    line-height: 1.4;
    color: #17438D;
    font-weight: 500;
  }
 
  
  .servicio-item .servicio-label.is-link {
    
    text-decoration: none;
  }
 
  .servicio-item .servicio-label.is-link:hover {
    color: #143f9e;
  }
 
  /* Responsive */
  @media (max-width: 860px) {
    .servicios-grid { grid-template-columns: repeat(2, 1fr); }
  }
 
  @media (max-width: 480px) {
    .servicios-grid { grid-template-columns: 1fr 1fr; gap: 20px 16px; }
    .servicio-item .servicio-label { font-size: 0.8rem; }
  }


    .materiales {
    max-width: 1000px;
    margin: 0 auto;
    padding: 48px 24px;
  }
 
  .materiales-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
  }
 
  .material-card {
    border: 1px solid #17438D;
    border-radius: 2px;
    padding: 20px 22px;
  }
 
  .material-card h3 {
    margin: 0 0 12px;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.3;
  }
 
  .material-card p {
    margin: 0 0 12px;
    font-size: 0.88rem;
    line-height: 1.5;
  }
 
  .material-card .subhead {
    margin: 0 0 8px;
    font-size: 0.9rem;
    font-weight: 700;
  }
 
  .material-card ul {
    margin: 0;
    padding-left: 20px;
    font-size: 0.88rem;
    line-height: 1.55;
  }
 
  .material-card li {
    margin-bottom: 2px;
  }
 
  /* Responsive */
  @media (max-width: 700px) {
    .materiales-grid { grid-template-columns: 1fr; }
  }


.contactotext {
  text-align: center;
  font-size: 20px;
}