

@media (min-width: 1750px) {
    html, html body {
        font-size: 20px !important;
    }
    .container {
        max-width: 1400px;
        padding: 0 19px;
    }

    /* SECCIÓN DE Header */

    .main-header {
        padding: 48px 0;
    }

    .header-content {
        max-width: 1500px;
        padding: 0 19px;
    }

    .main-header.scrolled {
        padding: 13px 0;
    }

    .logo img {
        height: 88px;
    }

    .main-header.scrolled .logo img {
        height: 75px;
    }

    .logo-container p {
        margin-top: -12px;
        margin-left: 13px;
    }

    .menu-container {
        margin-left: -19px;
    }

    .main-menu li {
        margin: 0 23px;
    }

    .main-menu a {
        padding: 0px 0px 31px;
        margin-top: 6px;
    }

    .main-menu a::after {
        bottom: 28px;
    }

    .main-menu li.active a::after,
    .main-menu a:hover::after {
        width: 23px;
    }

    .main-header.scrolled .main-menu a {
        margin-top: 19px;
    }

    .right-header {
        margin-top: -38px;
        margin-right: 25px;
    }

    .logo-cert img {
        max-height: 75px;
        margin-right: 88px;
    }

    .main-header.scrolled .logo-cert img {
        max-height: 69px;
        margin-top: -11px;
    }

    .social-icons {
        margin-top: -6px;
    }

    .main-header.scrolled .social-icons {
        margin-top: -13px;
    }

    .social-icon {
        width: 25px;
        height: 25px;
        margin-left: 13px;
    }

    .menu-toggle .bar {
        width: 31px;
        height: 4px;
        margin: 6px 0;
    }

    .menu-open .menu-toggle .bar:nth-child(1) {
        transform: rotate(-45deg) translate(-6px, 8px);
    }

    .menu-open .menu-toggle .bar:nth-child(3) {
        transform: rotate(45deg) translate(-6px, -8px);
    }

    /* Estilos del banner */

    .banner-section {
        height: 89vh;
        min-height: 750px;
    }

    .banner-heading {
        margin-bottom: 6px;
    }


    .banner-arrow {
        width: 119px;
        height: 113px;
    }

    .marca-overlay {
        height: 275px;
    }

    /* SECCIÓN DE HOME */
    .categories-section {
        margin-top: -175px;
    }

    .categories-container {
        gap: 94px;
    }

    .category-item {
        width: 363px;
        height: 363px;
    }

    .category-title {
        margin-top: -13px;
    }

    /* Sección de bienvenida */
    .welcome-section {
        padding: 119px 63px 75px;
    }

    .welcome-container {
        max-width: 1388px;
        padding-left: 38px;
        padding-right: 38px;
    }

    .welcome-content {
        padding-right: 63px;
    }

    .welcome-title::after {
        height: 10px;
        margin-top: 25px;
        margin-bottom: 13px;
        border-radius: 6px;
    }

    .welcome-points {
        margin-top: 25px;
        margin-right: 25px;
    }

    .welcome-point {
        margin-bottom: 1.9rem;
        margin-left: 9px;
    }

    .welcome-point-icon {
        width: 21px;
        height: 21px;
        margin-right: 15px;
    }

    .welcome-point p {
        max-width: 95%;
        margin-top: -5px;
    }

    .welcome-image {
        margin-top: -25px;
    }

    /* SECCIÓN DE FOOTER */
    .partners-section {
        padding: 75px 0;
    }

    .partners-container {
        gap: 46px;
        max-width: 1375px;
    }

    .partner-box {
        padding: 25px;
        height: 130px;
        max-width: 406px;
    }

    .partner-box img {
        max-height: 70px;
    }

    .contact-info-section {
        padding: 39px 0;
        min-height: 106px;
    }

    .dot-separator {
        margin: 0 8px;
    }

    .contact-col {
        margin: 10px 11px;
    }

    .contact-circle {
        width: 31px;
        height: 31px;
        margin-right: 9px;
    }

    .contact-circle img {
        width: 16px;
    }

    /* Copyright Footer */
    .copyright-section {
        padding: 35px 0;
        min-height: 100px;
    }

    .copyright-text,
    .tecweb-credits {
        margin: 4px 0;
    }

    .tecweb-link img {
        height: 23px;
        margin: 0 4px 0 5px;
    }

    .row {
        margin-right: -25px;
        margin-left: -25px;
    }

    .col-md-4 {
        padding-right: 25px;
        padding-left: 25px;
    }

    .col-md-4,
    .col-auto {
        padding-right: 13px;
        padding-left: 13px;
    }

    /* SECCIÓN DE SERVICE */
    .service-section {
        padding: 100px 0;
        max-width: 1400px;
        margin: 0 auto;
    }
    
    .section-header {
        margin-bottom: 75px;
        padding: 0px 25px;
    }
    
    .section-title {
        margin-bottom: 1.9rem;
        margin-top: 38px;
    }
    
    .section-title::after {
        height: 10px;
        margin-top: 25px;
        margin-bottom: 13px;
        border-radius: 6px;
    }
    
    .section-divider {
        width: 250px;
        height: 3px;
    }
    
    .section-description {
        margin-top: -31px;
        margin-bottom: 125px;
    }
    
    .services-container {
        gap: 38px;
        margin-top: 38px;
        padding: 38px 31px;
    }
    
    .service-item {
        max-width: 400px;
        max-height: 525px;
    }
    
    .service-image {
        height: 250px;
    }
    
    .service-content {
        padding: 38px;
    }
    
    .service-title {
        margin-bottom: 19px;
    }

    /* SECCIÓN DE INFRASTRUCTURE */
    .infrastructure-section {
        padding: 100px 0;
        max-width: 1400px;
    }

    .section-title-Infra {
        margin-bottom: 1.9rem;
        margin-top: 50px;
    }

    .section-title-Infra::after {
        height: 10px;
        margin-top: 25px;
        margin-bottom: 100px;
        border-radius: 6px;
    }

    .products-container {
        max-width: 1500px;
        padding-top: 88px;
        margin-top: -106px;
    }

    .product-card {
        padding: 38px;
        padding-bottom: 75px;
    }

    .products-container::before {
        top: 106px;
        bottom: 94px;
    }

    .products-container::after {
        left: 44px;
        right: 44px;
    }

    .product-card:nth-child(1),
    .product-card:nth-child(3) {
        padding-right: 50px;
    }

    .product-card:nth-child(2),
    .product-card:nth-child(4) {
        padding-left: 50px;
    }

    .product-image {
        width: 231px;
        height: 231px;
        margin-right: 38px;
        margin-top: -13px;
    }

    .product-image::after {
        bottom: -8px;
    }

    .product-title {
        margin-bottom: 19px;
    }

    .product-description {
        margin-bottom: 31px;
    }

    /* SECCIÓN DE GALLERY */
    .gallery-section {
        padding: 50px 0;
        min-height: 719px;
        position: relative;
    }
    
    .section-title-gallery {
        margin: 106px auto 1.9rem;
    }
    
    .section-title-gallery::after {
        height: 10px;
        margin: 25px auto 44px;
        border-radius: 6px;
    }
    
    .bx-gallery-wrapper {
        max-width: 1500px;
        margin: 0 auto;
        position: relative;
        padding: 0 25px;
    }
    
    .gallery-bxslider .gallery-item {
        height: 250px;
        border-radius: 10px;
    }
    
    .gallery-arrows {
        width: 100%;
        position: absolute;
        top: 50%;
        left: 0;
        transform: translateY(-50%);
        pointer-events: none;
    }
    
    .gallery-arrow {
        width: 150px;
        height: 150px;
        pointer-events: auto;
    }
    
    .gallery-arrow.prev {
        left: 2%;
    }
    
    .gallery-arrow.next {
        right: 2%;
    }
    
    /* SECCIÓN DE CONTACT */
    .contact-section {
        padding: 75px 0;
    }
    
    .section-title-contact {
        margin: 56px auto 1.9rem;
    }
    
    .section-title-contact::after {
        height: 10px;
        margin: 25px auto -15px;
        border-radius: 6px;
    }
    
    .contact-section .contact-intro {
        max-width: 875px;
        margin: 0 auto 25px;
    }
    
    .contact-form-container {
        max-width: 1313px;
    }
    
    .form-row {
        gap: 18px;
    }
    
    .form-group {
        flex: 1 0 calc(33.33% - 13px);
        min-width: 188px;
        margin-bottom: 25px;
    }
    
    .contact-section input, 
    .contact-section textarea {
        padding: 23px 19px;
    }
    
    .contact-section textarea {
        min-height: 200px;
        margin-top: -11px;
    }
    
    .contact-section .recaptcha-container {
        margin: 38px 50px;
        transform: scale(1.0); 
    }
    
    .contact-section .form-buttons {
        gap: 11px;
        margin-bottom: 56px;
    }
    
    .contact-section .btn {
        width: 100px;
        height: 50px;
        border-radius: 10px;
    }
    
    /* Sección de Información de Contacto */
    .contact-target-section {
        padding: 50px 0;
    }
    
    .contact-target-section .info-cards {
        gap: 63px;
        max-width: 1500px;
    }
    
    .contact-target-section .info-card {
        border-radius: 6px;
        box-shadow: 0 4px 8px var(--shadow-light);
        width: 588px;
        height: 275px;
    }
    
    .contact-target-section .profile-image-container {
        padding: 6px 31px;
    }
    
    .contact-target-section .profile-image {
        width: 175px;
        height: 175px;
    }
    
    .contact-target-section .profile-info h3 {
        margin-bottom: -6px;
    }
    
    .contact-target-section .profile-role {
        margin-bottom: 6px;
    }
    
    .contact-target-section .detail-label {
        margin-bottom: -6px;
        min-width: 63px;
    }
    
    .contact-target-section .detail-value {
        margin-bottom: 6px;
    }
    
    .contact-target-section .logo-card {
        padding: 19px;
    }
    
    .contact-target-section .company-logo {
        max-height: 188px;
    }
    
    /* Sección de Mapa */
    .map-section .location-info {
        padding: 38px 0;
        min-height: 63px;
    }
    
    .map-section .location-icon {
        width: 28px;
        height: 28px;
    }
    
    .map-section .map-container {
        height: 694px;
    }
    
    /* Mensaje de resultado */
    .form-result {
        margin-bottom: 25px;
        padding: 13px 19px;
        border-radius: 5px;
    }
    
    .alert {
        padding: 19px;
        border-radius: 5px;
    }
}

@media (min-width: 1620px) and (max-width: 1750px) {
    html, html body {
        font-size: 18px !important;
    }
    
    .container {
        max-width: 1300px;
        padding: 0 17px;
    }

    /* SECCIÓN DE Header */
    .main-header {
        padding: 42px 0;
    }

    .header-content {
        max-width: 1350px;
        padding: 0 17px;
    }

    .main-header.scrolled {
        padding: 12px 0;
    }

    .logo img {
        height: 80px;
    }

    .main-header.scrolled .logo img {
        height: 68px;
    }

    .logo-container p {
        margin-top: -11px;
        margin-left: 12px;
        font-size: 1rem;
    }

    /* Ajuste principal para el menú */
    .menu-container {
        margin-left: -10px;
    }

    .main-menu {
        margin-top: -8px;
    }

    .main-menu li {
        margin: 0 21px;
    }

    /* Importante: Mantenemos el tamaño de texto del menú */
    .main-menu a {
        font-size: 0.85rem;
        padding: 0px 0px 28px;
        margin-top: 5px;
    }

    .main-menu a::after {
        bottom: 25px;
    }

    .main-menu li.active a::after,
    .main-menu a:hover::after {
        width: 20px;
    }

    .main-header.scrolled .main-menu a {
        margin-top: 17px;
    }

    .right-header {
        margin-top: -34px;
        margin-right: 22px;
    }

    .logo-cert img {
        max-height: 65px;
        margin-right: 80px;
    }

    .main-header.scrolled .logo-cert img {
        max-height: 60px;
        margin-top: -10px;
    }

    .social-icons {
        margin-top: -5px;
    }

    .main-header.scrolled .social-icons {
        margin-top: -11px;
    }

    .social-icon {
        width: 22px;
        height: 22px;
        margin-left: 12px;
    }

    .menu-toggle .bar {
        width: 28px;
        height: 3.5px;
        margin: 5.5px 0;
    }

    .menu-open .menu-toggle .bar:nth-child(1) {
        transform: rotate(-45deg) translate(-5.5px, 7px);
    }

    .menu-open .menu-toggle .bar:nth-child(3) {
        transform: rotate(45deg) translate(-5.5px, -7px);
    }

    /* Estilos del banner */
    .banner-section {
        height: 85vh;
        min-height: 680px;
    }

    .banner-heading {
        margin-bottom: 5px;
        font-size: 3.1rem;
    }

    .banner-subheading {
        font-size: 1.9rem;
    }

    .banner-arrow {
        width: 108px;
        height: 102px;
    }

    .marca-overlay {
        height: 245px;
    }

    /* SECCIÓN DE HOME */
    .categories-section {
        margin-top: -155px;
    }

    .categories-container {
        gap: 85px;
    }

    .category-item {
        width: 330px;
        height: 330px;
    }

    .category-title {
        margin-top: -12px;
        font-size: 2.5rem;
    }
    
    .category-subtitle {
        font-size: 2.5rem;
    }

    /* Sección de bienvenida */
    .welcome-section {
        padding: 108px 55px 68px;
    }

    .welcome-container {
        max-width: 1280px;
        padding-left: 35px;
        padding-right: 35px;
    }

    .welcome-content {
        padding-right: 55px;
    }

    .welcome-title {
        font-size: 2.3rem;
    }

    .welcome-title::after {
        height: 9px;
        margin-top: 22px;
        margin-bottom: 12px;
        border-radius: 5px;
    }

    .welcome-points {
        margin-top: 22px;
        margin-right: 22px;
    }

    .welcome-point {
        margin-bottom: 1.7rem;
        margin-left: 8px;
    }

    .welcome-point-icon {
        width: 19px;
        height: 19px;
        margin-right: 14px;
    }

    .welcome-point p {
        max-width: 95%;
        margin-top: -4px;
        font-size: 0.9rem;
    }

    .welcome-image {
        margin-top: -22px;
    }

    /* SECCIÓN DE FOOTER */
    .partners-section {
        padding: 68px 0;
    }

    .partners-container {
        gap: 40px;
        max-width: 1250px;
    }

    .partner-box {
        padding: 22px;
        height: 118px;
        max-width: 370px;
    }

    .partner-box img {
        max-height: 65px;
    }

    .contact-info-section {
        padding: 35px 0;
        min-height: 96px;
    }

    .dot-separator {
        margin: 0 7px;
    }

    .contact-col {
        margin: 9px 10px;
    }

    .contact-circle {
        width: 28px;
        height: 28px;
        margin-right: 8px;
    }

    .contact-circle img {
        width: 14px;
    }

    .contact-link span {
        font-size: 0.85rem;
    }

    /* Copyright Footer */
    .copyright-section {
        padding: 32px 0;
        min-height: 90px;
    }

    .copyright-text,
    .tecweb-credits {
        margin: 3.5px 0;
        font-size: 0.56rem;
    }

    .tecweb-link img {
        height: 21px;
        margin: 0 3.5px 0 4.5px;
    }

    .row {
        margin-right: -22px;
        margin-left: -22px;
    }

    .col-md-4 {
        padding-right: 22px;
        padding-left: 22px;
    }

    .col-md-4,
    .col-auto {
        padding-right: 12px;
        padding-left: 12px;
    }

    /* SECCIÓN DE SERVICE */
    .service-section {
        padding: 90px 0;
        max-width: 1300px;
    }
    
    .section-header {
        margin-bottom: 68px;
        padding: 0px 22px;
    }
    
    .section-title {
        margin-bottom: 1.7rem;
        margin-top: 35px;
        font-size: 2.3rem;
    }
    
    .section-title::after {
        height: 9px;
        margin-top: 22px;
        margin-bottom: 12px;
        border-radius: 5px;
    }
    
    .section-divider {
        width: 230px;
        height: 2.5px;
    }
    
    .section-description {
        margin-top: -28px;
        margin-bottom: 115px;
        font-size: 0.9rem;
    }
    
    .services-container {
        gap: 35px;
        margin-top: 35px;
        padding: 35px 28px;
    }
    
    .service-item {
        max-width: 370px;
        max-height: 480px;
    }
    
    .service-image {
        height: 230px;
    }
    
    .service-content {
        padding: 35px;
    }
    
    .service-title {
        margin-bottom: 17px;
        font-size: 1.7rem;
    }
    
    .service-description {
        font-size: 0.9rem;
    }

    /* SECCIÓN DE INFRASTRUCTURE */
    .infrastructure-section {
        padding: 90px 0;
        max-width: 1300px;
    }

    .section-title-Infra {
        margin-bottom: 1.7rem;
        margin-top: 45px;
        font-size: 2.3rem;
    }

    .section-title-Infra::after {
        height: 9px;
        margin-top: 22px;
        margin-bottom: 90px;
        border-radius: 5px;
    }

    .products-container {
        max-width: 1350px;
        padding-top: 80px;
        margin-top: -95px;
    }

    .product-card {
        padding: 35px;
        padding-bottom: 68px;
    }

    .products-container::before {
        top: 95px;
        bottom: 85px;
    }

    .products-container::after {
        left: 40px;
        right: 40px;
    }

    .product-card:nth-child(1),
    .product-card:nth-child(3) {
        padding-right: 45px;
    }

    .product-card:nth-child(2),
    .product-card:nth-child(4) {
        padding-left: 45px;
    }

    .product-image {
        width: 210px;
        height: 210px;
        margin-right: 35px;
        margin-top: -12px;
    }

    .product-image::after {
        bottom: -7px;
    }

    .product-title {
        margin-bottom: 17px;
        font-size: 1.7rem;
    }

    .product-description {
        margin-bottom: 28px;
        font-size: 0.9rem;
    }
    
    .product-details {
        font-size: 0.9rem;
    }

    /* SECCIÓN DE GALLERY */
    .gallery-section {
        padding: 45px 0;
        min-height: 650px;
    }
    
    .section-title-gallery {
        margin: 95px auto 1.7rem;
        font-size: 2.3rem;
    }
    
    .section-title-gallery::after {
        height: 9px;
        margin: 22px auto 40px;
        border-radius: 5px;
    }
    
    .bx-gallery-wrapper {
        max-width: 1350px;
        margin: 0 auto;
        position: relative;
        padding: 0 22px;
    }
    
    .gallery-bxslider .gallery-item {
        height: 240px;
        border-radius: 9px;
    }
    
    .gallery-arrows {
        width: 100%;
        position: absolute;
        top: 50%;
        left: 0;
        transform: translateY(-50%);
        pointer-events: none;
    }
    
    .gallery-arrow {
        width: 135px;
        height: 135px;
        pointer-events: auto;
    }
    
    .gallery-arrow.prev {
        left: 2%;
    }
    
    .gallery-arrow.next {
        right: 2%;
    }
    
    /* SECCIÓN DE CONTACT */
    .contact-section {
        padding: 68px 0;
    }
    
    .section-title-contact {
        margin: 50px auto 1.7rem;
        font-size: 2.3rem;
    }
    
    .section-title-contact::after {
        height: 9px;
        margin: 22px auto -14px;
        border-radius: 5px;
    }
    
    .contact-section .contact-intro {
        max-width: 800px;
        margin: 0 auto 22px;
        font-size: 0.9rem;
    }
    
    .contact-form-container {
        max-width: 1200px;
    }
    
    .form-row {
        gap: 16px;
    }
    
    .form-group {
        flex: 1 0 calc(33.33% - 12px);
        min-width: 170px;
        margin-bottom: 22px;
    }
    
    .contact-section input, 
    .contact-section textarea {
        padding: 21px 17px;
        font-size: 0.8rem;
    }
    
    .contact-section textarea {
        min-height: 180px;
        margin-top: -10px;
    }
    
    .contact-section .recaptcha-container {
        margin: 35px 45px;
        transform: scale(0.95); 
    }
    
    .contact-section .form-buttons {
        gap: 10px;
        margin-bottom: 50px;
    }
    
    .contact-section .btn {
        width: 90px;
        height: 45px;
        border-radius: 9px;
        font-size: 0.8rem;
    }
    
    /* Sección de Información de Contacto */
    .contact-target-section {
        padding: 45px 0;
    }
    
    .contact-target-section .info-cards {
        gap: 55px;
        max-width: 1350px;
    }
    
    .contact-target-section .info-card {
        border-radius: 5px;
        box-shadow: 0 4px 7px var(--shadow-light);
        width: 530px;
        height: 250px;
    }
    
    .contact-target-section .profile-image-container {
        padding: 5px 28px;
    }
    
    .contact-target-section .profile-image {
        width: 160px;
        height: 160px;
    }
    
    .contact-target-section .profile-info h3 {
        margin-bottom: -5px;
        font-size: 1.8rem;
    }
    
    .contact-target-section .profile-role {
        margin-bottom: 5px;
        font-size: 0.9rem;
    }
    
    .contact-target-section .detail-label {
        margin-bottom: -5px;
        min-width: 55px;
        font-size: 0.9rem;
    }
    
    .contact-target-section .detail-value {
        margin-bottom: 5px;
        font-size: 0.9rem;
    }
    
    .contact-target-section .logo-card {
        padding: 17px;
    }
    
    .contact-target-section .company-logo {
        max-height: 170px;
    }
    
    /* Sección de Mapa */
    .map-section .location-info {
        padding: 35px 0;
        min-height: 55px;
        font-size: 1.1rem;
    }
    
    .map-section .location-icon {
        width: 25px;
        height: 25px;
        margin-right: 8px;
    }
    
    .map-section .map-container {
        height: 630px;
    }
    
    /* Mensaje de resultado */
    .form-result {
        margin-bottom: 22px;
        padding: 12px 17px;
        border-radius: 5px;
    }
    
    .alert {
        padding: 17px;
        border-radius: 5px;
    }
}


@media (min-width: 1200px) and (max-width: 1470px) {
    /* SECCIÓN DE GALLERY */
    .gallery-section {
        padding: 40px 0;
        min-height: 600px;
    }
    
    .section-title-gallery {
        margin: 85px auto 1.5rem;
        font-size: 2.1rem;
    }
    
    .section-title-gallery::after {
        height: 8px;
        margin: 20px auto 35px;
        border-radius: 5px;
    }
    
    .bx-gallery-wrapper {
        max-width: 1050px;
        margin: 0 auto;
        position: relative;
        padding: 0 20px;
    }
    
    .gallery-bxslider .gallery-item {
        height: 220px;
        border-radius: 8px;
    }
    
    .gallery-arrows {
        width: 100%;
        position: absolute;
        top: 50%;
        left: 0;
        transform: translateY(-50%);
        pointer-events: none;
    }
    
    .gallery-arrow {
        width: 120px;
        height: 120px;
        pointer-events: auto;
    }
    
    .gallery-arrow.prev {
        left: 2%;
    }
    
    .gallery-arrow.next {
        right: 2%;
    }
}