
      html {
        scroll-behavior: smooth;
      }

      body {
        display: flex;
        flex-direction: column;
        justify-content: center;
      }

     .form-card {
        width: 100% !important;
        max-width: auto;
        margin: 0 auto;
        background-color: #eeeeee;
        padding: 40px 26px;
        border: none;
      }
      .custom-modal {
        max-width: 100%;
        width: 1200px;
      }

      .modal-header {
        border-bottom: none !important;
      }

      .modal-header h5 {
        color: #0f5e8b;
        text-align: center;
        font-family: "Inter";
        font-size: 32px;
        font-style: normal;
        font-weight: 600;
        line-height: normal;
        margin: auto !important;
      }

      .modal-header button {
        margin: 0 !important;
      }

      .modal-body iframe {
        height: 100%;
      }

      .navbar-wrapper {
        background-color: #0f5e8b;
        display: flex;
        width: 100%;
        justify-content: space-between;
      }

      .list-column-1 ul li {
        color: #000;
        font-family: "Inter";
        font-size: 16px;
        text-align: left;
        margin: 20px 0;
        padding-left: 10px;
        font-style: normal;
        font-weight: 400;
        line-height: 28px;
        /* 140% */
        vertical-align: top;
        list-style-image: url("");
      }

      .navbar-wrapper nav {
        max-width: 1440px;
        margin: 0 auto;

        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 15px;
      }

      .nav-links {
        list-style: none;
        margin: 0;
        padding: 0;
        display: flex;
      }

      .nav-links li {
        margin-left: 20px;
        text-align: center;
      }

      .nav-links a:hover {
        color: #96e4ff;
        text-decoration: none;
        font-weight: 500;
      }

      .nav-links a:active {
        color: #96e4ff;
        text-decoration: none;
        font-weight: 500;
      }

      .nav-links button {
        text-decoration: none;
        border: none;
        background-color: transparent;
        color: #fff;
        text-align: center;
        font-family: Inter;
        font-size: 18px;
        font-style: normal;
        font-weight: 400;
        line-height: normal;
      }

      .nav-links button:hover {
        color: #96e4ff;
        text-decoration: none;
        font-weight: 500;
      }

      .nav-links button:active {
        color: #96e4ff;
        text-decoration: none;
        font-weight: 500;
      }

      .nav-links a {
        text-decoration: none;
        color: #fff;
        text-align: center;
        font-family: Inter;
        font-size: 18px;
        font-style: normal;
        font-weight: 400;
        line-height: normal;
      }

      .card-button-wrapper {
        margin-top: auto;
        margin-left: auto;
      }

      .btn {
        border-radius: 0 !important;
      }

      .card-button-wrapper button {
        background: #96e4ff;
        width: 282px;
        color: #000;
        text-align: center;
        font-family: "Inter";
        font-size: 18px;
        font-style: normal;
        font-weight: 400;
        line-height: 24px;
        /* 133.333% */
        padding: 8px 18px;
        margin-top: auto;
        transition: 0.3s;
      }

      .card-button-wrapper button:hover {
        background-color: #0f5e8b;
        color: #fff;
      }

      .logo img {
        height: 36px;
      }

      .burger-menu {
        display: none;
        cursor: pointer;
      }

      .bar {
        width: 25px;
        height: 3px;
        background-color: #fff;
        margin: 5px 0;
      }

     .slider-container {
  width: 100%;
  height: auto;
  max-height: 383px;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
  margin: 0 auto;
}

.slide {
  width: 100%;
  height: 100%;
  position: relative;
  text-align: center;
  opacity: 0;
  transition: opacity 0.5s ease-in-out;
}

.slide.active {
  opacity: 1;
}

.slide img {
  width: 100%;        /* ahora ocupa todo el ancho */
  height: auto;       /* mantiene proporción */
  object-fit: cover;  /* cubre el espacio sin deformar */
  position: relative; /* ya no absolute */
}

.slide h1 {
  color: #fff;
  text-align: center;
  font-family: "Playfair Display";
  font-size: 60px;
  font-style: normal;
  font-weight: 800;
  position: absolute;
  top: 40%;
  left: 50%;
  line-height: 80px;
  transform: translate(-50%, -50%);
}


      .carousel-indicators {
        position: absolute;
        bottom: 25px;
        left: 50%;
        margin: 0;
        transform: translateX(-50%);
      }

      .indicator {
        display: inline-block;
        width: 10px;
        height: 10px;
        background-color: #ccc;
        border-radius: 50%;
        margin: 0 5px;
        cursor: pointer;
      }

      .indicator.active {
        background-color: #333;
      }

      .indicator.active {
        background-color: #333;
      }

      .contact-wrapper {
        width: 100%;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        margin: 120px 0;
      }

      .contact {
        width: 100%;
        max-width: 1200px;
        text-align: center;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
      }

      .contact h1 {
        color: #0f5e8b;
        text-align: center;
        font-family: "Playfair Display";
        font-size: 48px;
        max-width: 1080px;
        font-style: normal;

        font-weight: 800;
        line-height: 52px;
        /* 108.333% */
      }

      .contact p {
        font-family: "Inter";
        font-size: 20px;
        font-weight: 400;
        line-height: 23.44px;
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 80px;
        max-width: 800px;
      }

      .botones-left {
        display: flex;
        flex-direction: row;
        margin-left: 50px;
        margin-right: 50px;
      }

      .botones-left a {
        background: #000;
        border-radius: 0;
        color: #fff;
        transition: 0.3s;
      }

      .botones-left a:hover {
        background-color: #e5e5e5 !important;
        color: black;
      }

      .botones-left a:first-child:hover {
        background-color: #96e4ff !important;
        color: black;
      }

      .botones-left a:first-child {
        background: #0f5e8b !important;
        border-radius: 0;
      }

      .botones a {
        font-size: 18px;
        margin: 5px 10px;
        padding: 8px 25px;
        background: #000;
        border-radius: 0;
        color: #fff;
        transition: 0.3s;
        width: 226px;
      }

      .botones a:hover {
        background-color: #e5e5e5 !important;
        color: black;
      }

      .botones a:first-child:hover {
        background-color: #96e4ff !important;
        color: black;
      }

      .botones a:first-child {
        background: #0f5e8b !important;
        border-radius: 0;
      }

      .big-title {
        text-align: center;
        font-family: "Playfair Display";
        font-size: 48px;
        font-style: normal;
        font-weight: 800;
      }

      .form-container {
        width: 100%;
        height: auto;
        max-width: 1200px;
        margin: 0 auto;
        padding: 100px 20px;
      }

      .tabs {
        display: flex;
        gap: 10px;
        margin-bottom: 20px;
      }

      .tabs button {
        width: 100%;
        color: #0f5e8b;
        text-align: center;
        font-family: "Playfair Display";
        font-size: 44px;
        padding: 18px 15px;
        font-style: normal;
        font-weight: 700;

        line-height: normal;
      }

      .tab {
        padding: 10px 15px;
        border: none;
        background-color: #fff;
        outline: none;
        border: 4px solid transparent;
      }

      .tab-content > div {
        display: none;
        gap: 36px;
      }

      .tab-content .active {
        display: block;
      }

      .tab.active {
        background-color: #fff;
        color: #0f5e8b;
        border-bottom: 4px solid #0f5e8b;
        outline: none;
        transition: 0.3s;
      }

      .tab-content {
        display: flex;
        flex-direction: column;
        flex-wrap: nowrap;
      }

      .tab-content form input {
        width: 100%;
        padding: 12px 30px;
        margin: 18px 0;
        border: 2px solid #0f5e8b;
      }

      .tab-content form p {
        margin-top: 80px;
        margin-bottom: 40px;
        color: #000;
        font-family: "Inter";
        font-size: 20px;
        font-style: normal;
        font-weight: 400;
        line-height: normal;
      }

      .file-selector {
        color: #979797;
      }

      .file-selector::file-selector-button {
        background-color: #0f5e8b;
        color: white;
        border: none;
        padding: 3px 10px;
        margin-right: 10px;
        transition: 0.3s;
        border: 1px solid transparent;
      }

      .file-selector::file-selector-button:hover {
        border: 1px solid #0f5e8b;
        background-color: white;
        color: #0f5e8b;
      }

      .tab-content form button {
        display: block;
        padding: 20px 116px;
        justify-content: center;
        align-items: center;
        align-self: flex-end;
        border: none;
        gap: 10px;
        margin-left: auto;
        margin-right: 0;
        background-color: #0f5e8b;
        color: #fff;
        text-align: center;
        font-family: "Inter";
        font-size: 18px;
        font-style: normal;
        font-weight: 400;
        line-height: normal;
        border: 1px solid transparent;
        transition: 0.3s;
      }

      .tab-content form button:hover {
        border: 1px solid #0f5e8b;
        background-color: white;
        color: #0f5e8b;
      }

      .tab-content form input::placeholder {
        color: #979797;
      }

      .tab-content form textarea {
        width: 100%;
        padding: 12px 30px;
        margin: 18px 0px;
        min-height: 52px;
        max-height: 450px;
        border: 2px solid #0f5e8b;
      }

      .tab-content form textarea::placeholder {
        color: #979797;
      }

      .tab-content form {
        display: none;
        gap: 36px;
      }

      .tab-content .active {
        display: block;
      }

      /* primer bloque de cards*/
      .card {
        width: 100%;
        background-color: #eeeeee;
        padding: 60px 120px;
        text-align: center;
        border: none !important;
      }

      .card-wrapper h1 {
        color: #0f5e8b;
        text-align: center;
        font-family: "Playfair Display";
        font-size: 48px;
        font-style: normal;
        font-weight: 700;
        line-height: normal;
        letter-spacing: -0.72px;
        padding: 0 50px;
      }

      .card p {
        margin: 2rem 0;
        text-align: left;
      }

      .card-body {
        display: flex;
        justify-content: space-around;
        flex-direction: column;
        font-family: "Inter";
        padding: 0;
        font-size: 17px;
      }

      .card-wrapper-v2 {
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
      }

      .card-body-v2 {
        max-width: 1200px;
        width: 100%;
      }

      .card-body h5 {
        color: #0f5e8b;
        font-family: "PlayFair Display";
        font-size: 40px;
        text-align: left;
        font-style: normal;
        font-weight: 600;
        line-height: 52px;
        /* 130% */
      }

      .card-body-v2 h5 {
        color: #0f5e8b;
        font-family: "Playfair Display";
        font-size: 40px;
        text-align: center;
        font-style: normal;
        font-weight: 600;
        line-height: 52px;
        /* 130% */
      }

      .card-body ul {
        margin-top: 40px;
        padding-left: 25px;
        margin-bottom: 20px;
      }

      .card-body ul li {
        color: #000;
        font-family: "Inter";
        font-size: 16px;
        text-align: left;
        margin: 10px 0;
        font-style: normal;
        font-weight: 400;
        line-height: 28px;
        /* 140% */
      }

      .card img {
        width: 74px;
        margin: 0 auto;
      }

      .card-wrapper {
        width: 100%;
        display: flex;
        margin-top: 80px;
        flex-direction: column;
        justify-content: center;
        align-items: center;
      }

      .card-container {
        width: 100%;
        max-width: 1200px;
        margin-bottom: 80px;
        gap: 40px;
        padding: 0 24px;
        justify-content: center;
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
      }

      .list-container {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 20px;
      }

      .list-container-v2 {
        display: grid;
        grid-template-columns: repeat(1, 1fr);
        grid-column-gap: 60px;
        grid-row-gap: 40px;
        margin: 60px 0;
      }

      .list-container h6 {
        margin-top: 60px;
        margin-bottom: 20px;
        color: #000;
        font-family: "Inter";
        font-size: 26px;
        text-align: left;
        font-style: normal;
        font-weight: 600;
        line-height: 28px;
        /* 107.692% */
      }

      .list-container-v2 h6 {
        margin-top: 0;
        margin-bottom: 20px;
        color: #000;
        font-family: "Inter";
        font-size: 26px;
        text-align: left;
        font-style: normal;
        font-weight: 600;
        line-height: 28px;
        /* 107.692% */
      }

      /* segundo bloque de cards*/
      .cards-wrapper {
        width: 100%;
        display: flex;
        justify-content: center;
        margin: 80px 0;
      }

      .cards-container {
        width: 100%;
        max-width: 1200px;
        display: flex;
        flex-direction: column;
        gap: 26px;
      }

      .cards {
        display: flex;
        flex-direction: row;
        gap: 24px;
      }

      .container {
        max-width: 1200px;
        margin: 0 auto;
        padding: 20px;
        margin-bottom: 100px;
      }

      .container h2 {
        margin-bottom: 60px;
      }

      .card2 {
        background-color: #96e4ff42 !important;
      }

      .w40 {
        width: 40%;
      }

      .w60 {
        width: 60%;
      }

      .upper-left img {
        max-width: 486px;
        width: 100%;
        height: 100%;
        object-fit: contain;
      }

      .bottom-right img {
        max-width: 486px;
        width: 100%;
        height: 100%;
        object-fit: cover;
        text-align: left;
      }

      .upper-right {
        background-color: #093650;
        display: flex;
        flex-direction: column;
        text-align: left;
        align-items: left;
        justify-content: center;
        vertical-align: middle;
        padding: 0 70px;
      }

      .footer-wrapper {
        width: 100%;
        background-color: #0f5e8b;
        display: flex;
        justify-content: center;
      }

      .footer-container {
        max-width: 1200px;
        width: 100%;
        display: flex;
        flex-direction: column;
        padding: 38px 0px;
      }

      .footer-left-info {
        display: flex;
        flex-direction: row;
        justify-content: space-between;
      }

      .footer-info {
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        width: 100%;
        border-bottom: 1px solid #fff;
      }
      .leyenda {
        padding: 7%;
        color: #fff;
        font-size: 1.2rem;
      }
      .leyenda1 {
        width: 35%;
      }

      .footer-left-info img {
        width: 195px;
      }

      .footer-text {
        color: #fff;
        font-family: "Inter";
        font-size: 14px;
        font-style: normal;
        font-weight: 700;
        line-height: 130%;
      }

      .map {
        padding-left: 40px;
        padding-bottom: 26px;
      }

      .contact-link {
        padding-top: 15px;
      }

      .contact-link a {
        color: #fff;
        font-family: "Inter";
        font-size: 14px;
        font-style: normal;
        font-weight: 400;
        line-height: 130%;
        /* 18.2px */
        padding-left: 12px;
      }

      .contact-link a:hover {
        color: #fff !important;
      }

      .footer-tyc {
  display: flex;
  flex-direction: column; /* apila los links verticalmente */
  gap: 10px; /* separación uniforme */
  margin-top: 20px; /* espacio desde la sección de la izquierda */
}

.footer-tyc a {
  color: #fff;
  font-family: "Inter";
  font-weight: 700;
  font-size: 14px;
  text-decoration: underline;
  margin: 0; /* eliminamos top/position que rompe el mobile */
}

.footer-tyc a:hover {
  color: #fff;
}


      .footer-contact {
        display: flex;
        flex-direction: row;
        justify-content: space-between;
      }

      .footer-contact-left {
        display: flex;
        flex-direction: row;
        gap: 46px;
      }

      .footer-contact-right {
        display: flex;
        gap: 28px;
      }

      .footer-contact-right img {
        width: 28px;
        margin-top: 14px;
      }

      /* MEDIA QUERIES */

      @media screen and (max-width: 1440px) {
        .footer-container {
          padding-left: 50px;
          padding-right: 50px;
        }

        .navbar-wrapper nav {
          padding-left: 50px;
          padding-right: 50px;
        }

        .contact {
          padding: 50px 0;
        }

        .contact h1 {
          margin-left: 50px;
          margin-right: 50px;
        }

        .card-container {
          padding: 0 24px;
        }

        .contact p {
          margin-left: 60px;
          margin-right: 60px;
        }

        .cards-container {
          margin-left: 50px;
          margin-right: 50px;
        }

        .card-wrapper-v2 {
          padding: 0 40px;
        }
      }

      @media screen and (max-width: 1080px) {
        .burger-menu {
          display: block;
        }

        .nav-links {
          display: none;
          flex-direction: column;
          position: absolute;
          top: 50px;
          width: 100%;
          right: 0;
          background-color: #f0f0f0;
          padding: 10px;
        }

        .nav-links.active {
          display: flex;
          z-index: 1000;
          background-color: #0f5e8b;
          gap: 15px;
          width: 100%;
          padding-top: 30px;
        }

        .navbar-wrapper nav {
          padding-left: 15px;
          padding-right: 15px;
        }

        .certification-details {
          margin: 0 60px;
        }
      }

      @media screen and (max-width: 792px) {
        .card {
          margin-top: 30px !important;
        }
      }

      @media screen and (max-width: 768px) {
        .footer-left-info {
          flex-direction: column;
        }
         .footer-info {
    flex-direction: column; /* apila logo/mapa + links */
    gap: 20px;
  }

  .footer-tyc {
    flex-direction: row; /* puedes ponerlos en fila si quieres */
    flex-wrap: wrap; /* que se ajusten si son largos */
    gap: 10px;
    margin-top: 10px;
  }

        .map {
          padding-left: 0px;
          padding-top: 30px;
        }

        .contact {
          margin: 0 30px;
        }

        .logo img {
          height: 25px;
        }

        .certification {
          flex: 1 1 100%;
        }

        .tabs {
          flex-direction: column;
          width: 100%;
          justify-content: center;
        }

        .big-title {
          font-size: 36px;
        }

        .tab-content form p {
          text-align: center;
          margin-top: 40px;
        }

        .footer-contact {
          flex-direction: column;
          text-align: center;
          justify-content: center;
          align-items: center;
        }

        .card-group {
          flex-direction: column;
        }

        .cards {
          flex-direction: column;
          gap: 0px;
        }

        .reversed {
          flex-direction: column-reverse !important;
        }

        .container h2 {
          margin-bottom: 30px;
        }

        .container {
          margin-top: 60px !important;
        }

        .w40 {
          width: 100%;
          max-width: 100%;
        }

        .w60 {
          box-sizing: border-box;
          width: 100%;
          max-width: 100%;
        }

        .bottom-right img {
          max-width: 100%;
        }

        .upper-left img {
          max-width: 100%;
        }

        .bottom-left {
          padding-left: 45px;
          padding-right: 30px;
        }

        .upper-right {
          padding-left: 45px;
          padding-right: 30px;
        }

        .bottom-left h1 {
          line-height: 100%;
          font-size: 38px;
        }

        .upper-right h1 {
          line-height: 100%;
          font-size: 38px;
          text-align: left;
        }

        .bottom-left p {
          line-height: 100%;
          font-size: 15px;
          height: fit-content;
          margin-top: 20px;
        }

        .slide img {
          width: 100%;
          max-width: 100%;
        }

        .upper-right p {
          line-height: 100%;
          font-size: 15px;
          height: fit-content;
          margin-top: 20px;
        }

        .upper-right button {
          margin-top: 25px;
          line-height: 100%;
          font-size: 15px;
        }

        .bottom-left button {
          margin-top: 25px;
          line-height: 100%;
          font-size: 15px;
        }

        .contact-wrapper {
          margin: 60px 0;
        }

        .list-container {
          grid-template-columns: 1fr;
        }

        .list-container-v2 {
          grid-template-columns: 1fr;
        }

        .card {
          padding: 40px 40px;
        }

        .card-body h5 {
          font-size: 28px;
          line-height: normal;
        }

        .card-button {
          width: 170px;
          max-width: 170px;
        }

        .card-wrapper {
          margin-top: 40px !important;
        }
      }

      @media screen and (max-width: 500px) {
        .footer-info {
          flex-direction: column;
          justify-content: center;
          align-items: center;
          text-align: center;
        }

        .footer-tyc {
          margin-bottom: 26px;
        }

        .footer-tyc a {
          position: inherit;
        }

        .footer-contact-left {
          flex-direction: column;
          gap: 00px;
        }

        .footer-container {
          padding-left: 25px;
          padding-right: 25px;
        }

        .big-title {
          font-size: 26px;
        }

        .contact h1 {
          font-size: 28px;
          line-height: 100%;
        }

        .container {
          margin-top: 30px !important;
        }

        .container h2 {
          margin-bottom: 15px;
        }

        .upper-right h1 {
          font-size: 28px;
          line-height: normal;
        }

        .upper-right p {
          margin: 0;
        }

        .bottom-left p {
          margin: 0;
        }

        .bottom-left h1 {
          font-size: 28px;
          line-height: normal;
        }

        .contact-wrapper {
          margin: 20px 0;
        }
      }

      @media (max-width: 400px) {
        .card {
          width: 300px !important;
        }

        .tab-content form button {
          display: block;
          padding: 20px 66px;
        }
      }

      #form1 iframe,
      #form2 iframe {
        min-height: 700px;
      }