/* @font-face{ font-family: NombreFont; src: url(fonts/NombreFont-Bold.otf); } */
:root {
    --color-blue-hard: #003d92;
    --color-dark-gray: #5b5b5d;
    --color-blue: #1d71b9;
}
/*=============================================================================
GENERAL
=============================================================================*/
body {
    overflow-x: hidden;
    position: relative;
    font-family: "Source Sans Pro", sans-serif;
}
html {
    overflow-x: hidden;
}
*::-moz-selection {
    background: var(--color-blue-hard);
    color: #fff;
    text-shadow: none;
}
*::selection {
    background: var(--color-blue-hard);
    color: #fff;
    text-shadow: none;
}
.bg-default {
    background-color: #eee;
    border: 1px solid #ddd;
}
.bg-default-02 {
    background-color: #ddd;
    border: 1px solid #ccc;
}
.text-black {
    color: #000;
}
.bg-cover-index {
    background-image: url("http://placehold.it/1920x1080");
}
/*=============================================================================
THANKS PAGE
=============================================================================*/
.thanks-page {
    height: 60vh;
}
.thanks-page img {
    width: 400px;
    max-width: 100%;
}
/*=============================================================================
NAVBAR
=============================================================================*/
nav {
    position: absolute !important;
    top: 0;
    left: 48%;
    transform: translateX(-50%);
    z-index: 2000;
    margin-left: 30px;
    margin-right: 30px;
    border-radius: 20px !important;
    background: rgba(255, 255, 255, 0.9);
    width: calc(100% - 60px);
    max-width: 1200px;
    padding: 10px 0px !important;
}

.navbar {
    margin-bottom: 0;
    border: none;
    border-radius: 0;
    padding: 0;
}

.navbar-toggler {
    background-color: white;
    border-color: black;
}

/* colores items menu */
.navbar-light .navbar-nav .active > .nav-link,
.navbar-light .navbar-nav .nav-link.active,
.navbar-light .navbar-nav .nav-link.show,
.navbar-light .navbar-nav .show > .nav-link,
.navbar-light .navbar-nav .nav-link {
    color: white;
}
.navbar-light .navbar-nav .active .nav-link,
.navbar-light .navbar-nav .nav-link:focus,
.navbar-light .navbar-nav .nav-link:hover {
    color: #ff6d01;
}

.navbar-nav > .nav-item {
    padding-left: 10px;
    padding-right: 10px;
}

.nb-container {
    overflow-x: auto;
    flex-wrap: nowrap;
    align-items: center;
}

.navbar-brand img {
    /* max-height: 150px; */
    height: 150px;
    width: auto;
}

.fondoMenu {
    background-color: transparent !important;
}

.navbar-nav .nav-link {
    white-space: nowrap;
}

/* .logo-navbar {
    width: 100% !important;
    height: 800px !important;
} */
/* .active-link {
    color: #ff6d01 !important;
} */
/*=============================================================================
HOME
=============================================================================*/

/* Capa de filtro para fondo */
.overlay {
    background-color: rgba(0, 0, 0, 0.35); /* oscuro suave */
    backdrop-filter: blur(0px); /* desenfoque suave */
    z-index: 1;
}

/* Limita el ancho del h2 */
.limited-width {
    max-width: 60%;
    z-index: 2;
}

/* Asegura que la caja flotante esté bien posicionada */
.cajaFlotante {
    background-color: #1c2b33;
    max-width: 600px;
    height: auto;
    bottom: 0;
    right: 0;
    margin: 0;
    z-index: 2;
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
    /* border-radius: 20px; */
}

.custom-button {
    display: inline-block;
    padding: 12px 24px;
    background-color: #3a5a78;
    color: #fff;
    text-decoration: none;
    font-weight: 500;
    border-radius: 40px;
    transition: background-color 0.3s ease;
    font-size: 1.1rem;
}

.custom-button:hover {
    background-color: #3a5a78;
    color: #fff;
}

.card-custom {
    background-color: #fff;
    border-radius: 20px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    width: 100%;
    max-width: 320px;
    cursor: pointer;
}

.card-custom:hover {
    background-color: #5b5b5d;
    color: white;
    transform: translateY(-5px);
}

.card-custom:hover h5 {
    color: white;
}

.fondoCuartaSeccion {
    background-color: #5b5b5d;
    color: white;
    text-align: start;
}

.hover-card {
    transition: background-color 0.3s ease, transform 0.3s ease;
}

.hover-card:hover {
    background-color: #5b5b5d;
    transform: translateY(-5px);
}

.cardDos {
    width: 100%;
    max-width: 360px;
    height: 320px !important;
    padding: 0 !important;
    height: 220px;
    background-color: #f0f0f0;
    border-radius: 16px !important;
    transition: background-color 0.3 ease, transform 0.3s ease;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}

.cardDos img.card-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

.bg-icono {
    background-color: #ccc;
    border-radius: 8px;
}

.bg-rectangulo {
    width: 40%;
    height: 280px;
    margin-left: auto;
    background-color: #ff6d01;
}

.bg-rectanguloDos {
    width: 70%;
    height: 135%;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    z-index: 1;
    margin-left: auto;
    background-color: #ff6d01;
    border-radius: 15px;
}

.fondoSextaSeccion {
    background-color: white;
}

.palomita {
    color: #ff6d01;
}

.bgTerceraSeccion {
    background-color: #1c2b33;
    color: white;
}

.tituloSegudaSeccion {
    color: #ff6d01;
    font-weight: 700;
    font-size: 48px;
}

.object-fit-cover {
    object-fit: cover;
}

.propImagen {
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    z-index: 2;
    width: 75%;
}

.text-truncate-custom {
    max-width: 275px;
    font-weight: 700;
    font-size: 24px;
}

.formulario {
    color: white;
}

.custom-input {
    background-color: white !important;
    border: none;
    border-bottom: 2px solid white;
    border-radius: 0;
    color: black;
}

.custom-input::placeholder {
    color: white;
    opacity: 1;
}

.custom-input:focus {
    box-shadow: none;
    outline: none;
    border-bottom: 2px solid #fff;
}

.titulo1 {
    font-weight: 700;
    font-size: 80px;
    margin-top: 12%;
}

.parrafo1 {
    font-weight: 600;
    font-size: 22px;
    max-width: 95%;
    color: white;
}

.parrafoSeccDos {
    font-weight: 600;
    font-size: 24px;
    max-width: 70%;
}

.profundo,
.flexible,
.intregral {
    font-family: "Open Sans";
    font-weight: 700;
    font-size: 22px;
}

.servicios {
    font-weight: 700;
    font-size: 64px;
}

.parrafoSeccTres {
    max-width: 65%;
    font-weight: 600;
    font-size: 22px;
}

.tituloCard {
    font-weight: 700;
    font-size: 24px;
}

.clientes {
    font-weight: 700;
    font-size: 48px;
}

.parrafoSeccCuatro {
    font-weight: 400;
    font-size: 22px;
}

.educacion,
.empresas,
.organizaciones {
    font-weight: 700;
    font-size: 24px;
}

.tituloSeccSeis {
    color: #1c2b33;
    font-weight: 700;
    font-size: 53px;
}

.tituloFormulario {
    font-weight: 700;
    font-size: 25px;
}

.nombre,
.emailForm,
.mensaje {
    font-weight: 400;
    font-size: 20px;
}

.columnaVisual {
    min-height: 460px;
}

.imagen-flotante {
    top: 50%;
    left: 40px;
    transform: translateY(-50%);
    z-index: 2;
    width: 85%;
    max-width: 500px;
}

section .container {
    z-index: 3;
}

.elegirnos {
    font-weight: 700;
    font-size: 48px;
}

/* .fondoSegundaSeccion {
    height: 90vh;
    overflow: hidden;
    width: 100vw;
} */

.fondoSegundaSeccion {
    width: 100%;
    position: relative;
    padding-top: 60px;
    padding-bottom: 60px;
    overflow: hidden;
}

.bg-img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    pointer-events: none;
    z-index: 1;
}

.overlay-filter {
    background: linear-gradient(
        to right,
        rgba(0, 0, 0, 0.7),
        rgba(0, 0, 0, 0.3)
    );
    z-index: 2;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.seccion-contenido {
    min-height: 70vh; /* suficiente para centrar */
    z-index: 3;
    padding-top: 40px;
    padding-bottom: 40px;
}

.textoIcono {
    font-family: "Open Sans";
    font-weight: 700;
    font-size: 22px;
}

.colaboramos {
    font-weight: 700;
    font-size: 48px;
}

.fondoPrimSectHome {
    height: 110vh;
    overflow: hidden;
    width: 100vw;
    padding: 0;
    z-index: 900;
}

.fondoGeneral {
    background-color: #1c2b33;
    border-radius: 10px;
}

.regionesOaxaca {
    color: white;
    font-weight: 700;
    font-size: 64px;
}

.region {
    color: #1c2b33;
    font-weight: 400;
    font-size: 30px;
}

.estiloCard {
    border-radius: 45px;
}

.icono-nueva-seccion {
    max-width: 150px;
}
/*=============================================================================
FOOTER
=============================================================================*/
.fondoFooter {
    background-color: #1c2b33;
}

.tituloFooter {
    font-weight: 700;
    font-size: 36px;
}

.titulo2Footer {
    font-weight: 700;
    font-size: 20px;
}

.avenida {
    font-weight: 600;
    font-size: 20px;
}

.sugerencia {
    font-weight: 600;
    font-size: 20px;
}

.email,
.telefono {
    font-weight: 700;
    font-size: 20px;
}

.reservados {
    font-weight: 600;
    font-size: 16px;
}

.Ir {
    font-weight: 600;
    font-size: 20px;
}

.dirigir {
    text-align: start;
    font-weight: 600;
    font-size: 20px;
}

.politica {
    text-align: start;
    font-weight: 600;
    font-size: 18px;
}

.bg-Quinta-Seccion {
    color: white;
    background-color: #1c2b33;
}

.card {
    border: none !important;
}

.cajaVerde {
    height: 550px;
}

.medimos {
    font-weight: 700;
    font-size: 48px;
}

.image-grid-container {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: auto auto;
    gap: 15px;
    width: 100%;
    max-width: 600px;
    position: relative;
}

/*=============================================================================
Quienes somos
=============================================================================*/

.fondoPrimSectSomos {
    height: 110vh;
    overflow: hidden;
    width: 100vw;
    padding: 0;
    z-index: 900;
}

.titulo1QuienesSomos {
    font-weight: 700;
    font-size: 80px;
    margin-top: 10%;
}

.parent {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    /* grid-template-rows: auto; */
    gap: 15px;
    max-width: 100%;
    height: auto;
    justify-items: center;
}

.parent img {
    width: 100%;
    height: 100%;
    display: grid;
    object-fit: cover;
    max-width: fit-content;
}

.img-especial {
    border-radius: 8px;
}

.div1 {
    grid-row: span 2 / span 2;
}

.div2 {
    grid-row: span 3 / span 3;
}

.div3 {
    grid-row: span 3 / span 3;
    grid-row-start: 3;
}

.div4 {
    grid-row: span 2 / span 2;
    grid-column-start: 2;
    grid-row-start: 4;
}

.tituloConstruye {
    font-weight: 700;
    font-size: 50px;
    color: #5c1f0f;
}

.parrafoDigital {
    font-weight: 400;
    font-size: 28px;
}

.cajaVerdeSomos {
    height: 550px;
}

/*=============================================================================
Servicios
=============================================================================*/
.service-img {
    width: 100%;
    max-width: 320px;
    object-fit: cover;
    border-radius: 8px;
    display: block;
    margin: 0 auto;
}

.estudios {
    font-family: "Source Sans Pro";
    font-weight: 900;
    font-size: 48px;
}

.titleCard {
    font-family: "Source Sans Pro";
    font-weight: 700;
    font-size: 32px;
    text-align: start;
}

.subtitleCard {
    font-family: "Source Sans Pro";
    font-weight: 700;
    font-size: 19px;
    text-align: start;
}

.parrafoCard {
    font-family: "Source Sans Pro";
    font-weight: 600;
    font-size: 16px;
    text-align: start;
}

.titulo1Servicios {
    font-weight: 700;
    font-size: 80px;
    margin-top: 12%;
}

.fondoPrimSectServicios {
    height: 110vh;
    overflow: hidden;
    width: 100vw;
    padding: 0;
    z-index: 900;
}

/*=============================================================================
Contacto
=============================================================================*/
.parrafoContact {
    font-weight: 400;
    font-size: 24px;
}

.titulo1Contacto {
    font-weight: 700;
    font-size: 80px;
    margin-top: 14%;
}

.fondoPrimeraSeccionContacto {
    height: 110vh;
    overflow: hidden;
    width: 100vw;
    padding: 0;
    z-index: 900;
}

/*=============================================================================
Vision
=============================================================================*/
.fondoPrimSectVision {
    height: 110vh;
    overflow: hidden;
    width: 100vw;
    padding: 0;
    z-index: 900;
}

.titulo1Vision {
    font-weight: 700;
    font-size: 80px;
    margin-top: 14%;
}

.img-mision {
    border-radius: 20px;
}

.parrafoVision {
    font-weight: 400;
    font-size: 20px;
}

.mision {
    font-weight: 700;
    font-size: 48px;
}

.territorio,
.rigor,
.colaboracion,
.escucha {
    font-weight: 700;
    font-size: 24px;
}

.bgCuartaSeccVision {
    background-color: #2c3e50;
    color: white;
}

.parrafoCuartaMision {
    font-weight: 700;
    font-size: 48px;
    max-width: 50%;
}
/*=============================================================================
Privacidad
=============================================================================*/
.fondoPrimSectPrivacy {
    height: 110vh;
    overflow: hidden;
    width: 100vw;
    padding: 0;
    z-index: 900;
}

.titulo1Privacy {
    font-weight: 700;
    font-size: 80px;
    margin-top: 12%;
}

.tituloPrivacy {
    font-weight: 700;
    font-size: 48px;
    color: #2c3e50;
}

.parrafoPrivacy {
    font-weight: 400;
    font-size: 24px;
    text-align: justify;
}

.parrafo1Privacy {
    font-weight: 600;
    font-size: 22px;
}

.limited-width-privacy {
    max-width: 70%;
    z-index: 2;
}
/*=============================================================================
BLOG
=============================================================================*/
.blog-play-container {
    height: auto !important;
}
.bg-widget-cover.bg-mh {
    background-image: url("http://placehold.it/1920x500.png?text=1920x500.jpg");
    height: 500px;
}
.bg-widget-cover {
    background-position: center;
    background-size: cover;
}
.play-container {
    position: relative;
    height: 100%;
}
.play-container:hover .play-ico {
    opacity: 1;
    cursor: pointer;
}
.play-container:hover {
    cursor: pointer;
}
.play-ico {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s;
    z-index: 1;
    opacity: 0.5;
}
.img-blog {
    min-height: 800px;
    background-image: url("../img/Blog/header.jpg");
    background-position: center;
    background-size: cover;
}
.container-blog {
    padding-right: 30px;
    padding-left: 30px;
    padding-top: 100px;
    padding-bottom: 100px;
    width: 100%;
}
.i-text {
    background: #e2dede;
    border: none;
    border-radius: 10px;
    color: #757575;
    text-align: center;
    font-size: 12px;
    padding: 10px 40px;
    margin-right: 10px;
}
.bolder {
    font-weight: bolder !important;
}
.hr-blog {
    max-width: 15%;
    border: 1px solid #e2dede;
    -webkit-box-shadow: 0px 2px 3px #e2e2e2;
    box-shadow: 0px 2px 3px #e2e2e2;
}
.text-intblog {
    width: 100%;
    position: absolute;
    bottom: 10px;
}
.btn-blog {
    width: 100%;
    background: black;
    border: none;
    font-weight: 100;
    font-family: sans-serif;
    color: #fff;
}
.btn-blog2 {
    background: black;
    border: none;
    font-weight: 100;
    font-family: sans-serif;
    color: #fff;
}
.btn-blog3 {
    background: black;
    border: 1px solid #fff;
    font-weight: 100;
    font-family: sans-serif;
    color: #fff;
    padding: 6px 50px;
    font-size: 16px;
    -webkit-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s;
}
.btn-blog3:hover {
    color: #000;
    background-color: #fff;
    text-decoration: none;
}
.text-initblogf {
    position: absolute;
    top: 30%;
    left: 30%;
}
.img-finalblog {
    background-image: url("../img/Blog/footer.jpg");
    background-position: center;
    background-size: cover;
}
.custom-dropdown > li > .dropdown-menu,
.dropdown-child {
    background-color: #333;
}
.dropdown-child > a {
    color: #fff;
}
.custom-dropdown > li > .dropdown-menu > .nav-link:hover,
.custom-dropdown > li > .dropdown-menu > .dropdown-item:hover,
.dropdown-child > a:hover {
    background-color: #222;
}
.dropdown-child > a:hover {
    color: #fff;
}
/*=============================================================================
MEDIA
=============================================================================*/
/* 3840 x 2160 */
@media (max-width: 3840px) {
    .card-custom {
        max-width: 360px;
    }

    .seccion-contenido {
        min-height: 800px;
    }

    .titulo1 {
        margin-left: 5rem;
    }

    .limited-width {
        max-width: 25%;
    }

    .fondoPrimSectHome {
        height: 50vh;
    }
}

/* 1920 x 1080 */
@media (max-width: 1920px) {
    .card-custom {
        max-width: 320px;
    }

    .titulo1 {
        margin-left: 3rem;
    }

    .limited-width {
        max-width: 65%;
    }

    .fondoPrimSectHome {
        height: 140vh;
    }
}

/* 1600 x 900*/
@media (max-width: 1600px) {
}

/* 1440 x 900 */
@media (max-width: 1440px) {
}

/* 1280 x 800 */
@media (max-width: 1280px) {

    .limited-width-privacy {
        max-width: 70%;
    }

    .bg-rectanguloDos {
        height: 125%;
    }
}

/* 1024 x 1366 */
@media (max-width: 1024px) {
    .elegirnos {
        text-align: center;
    }
    .parrafoSeccDos {
        max-width: none;
        text-align: center !important;
    }
}

/* 990 x 1000 */
@media (max-width: 990px) {
    .seccion-contenido {
        min-height: 600px;
    }
    .parrafoSeccDos {
        text-align: center !important;
        max-width: none;
    }
    .elegirnos {
        text-align: center;
    }

    .fondoPrimSectHome {
        height: 75vh;
    }

    .regionesOaxaca {
        font-size: 50px;
    }

    .region {
        font-size: 20px;
    }

    .parrafoPrivacy {
        font-size: 20px;
    }

    .tituloPrivacy {
        font-size: 40px;
    }

    .cont-privacy {
        padding: 30px;
    }

    .titulo1Privacy {
        font-size: 50px;
        margin-top: 40%;
    }

    .fondoPrimSectPrivacy {
        height: 80vh;
    }

    .avenida {
        font-size: 16px;
    }

    .sugerencia {
        font-size: 16px;
    }

    .email,
    .telefono {
        font-size: 16px;
    }

    .cajaVerdeSomos {
        height: auto;
    }

    .titulo1QuienesSomos {
        font-size: 70px;
        margin-top: 15%;
    }

    .img-especial {
        border-radius: 8px;
        height: 400px;
    }

    .parent {
        width: auto;
        max-width: none;
        margin-top: 30px;
    }

    .parent img {
        max-width: fit-content;
    }

    .tituloConstruye {
        font-size: 35px;
    }

    .parrafoDigital {
        font-size: 20px;
    }

    .medimos {
        font-size: 40px;
    }

    .parrafoSeccCuatro {
        font-size: 20px;
    }

    .fondoPrimSectVision {
        height: 90vh;
    }

    .titulo1Vision {
        margin-top: 25%;
        font-size: 70px;
    }

    .titulo1Contacto {
        font-size: 65px;
        margin-top: 30%;
    }

    .politica {
        margin-top: 25px;
        text-align: center;
    }

    .dirigir {
        text-align: center;
        font-size: 16px;
    }

    .titulo1Servicios {
        font-size: 60px;
        margin-top: 25%;
    }

    .titleCard {
        font-size: 24px;
        margin-top: 20px;
        text-align: center;
    }

    .subtitleCard {
        text-align: center;
    }

    .parrafoCard {
        text-align: center;
    }

    .bg-rectanguloDos {
        height: 115%;
    }

    .limited-width {
        max-width: none;
    }

    .titulo1 {
        font-size: 55px;
        margin-top: 30%;
    }

    .bg-rectangulo {
        height: 230px;
    }

    .navbar .container-fluid {
        flex-wrap: wrap-reverse;
    }

    .navbar-brand {
        order: 1;
        margin-right: 0 !important;
    }

    .navbar-toggler {
        order: 2;
        margin-left: auto;
    }

    #navbarTogglerDemo02 {
        text-align: center;
        background-color: #1c2b33;
        border-radius: 8px;
    }

    #navbarTogglerDemo02 {
        flex-direction: column !important;
        align-items: center !important;
    }
}

/* 767 x 414 */
@media (max-width: 767px) {
    .parent {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 10px;
        justify-items: center;
    }

    .parent > div {
        width: 100%;
        overflow: hidden;
    }

    .parent img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
    
    /* .parent {
        grid-template-columns: 1fr;
        grid-template-rows: auto;
    }

    .div1,
    .div2,
    .div3,
    .div4 {
        grid-column: span 2 !important;
        grid-row: span 2 / span 2 !important;
    } */

    .clientes {
        margin-top: 35px;
    }

    .bg-rectangulo {
        height: 200px;
        margin-right: 155px;
    }
    .propImagen {
        width: 40%;
        left: 150px;
    }

    .bg-rectanguloDos {
        top: 50%;
        width: 40%;
        left: 50px;
        height: 100%;
    }

    .imagen-flotante {
        left: 100px;
        max-width: 355px;
    }

    .card-custom {
        max-width: 90%;
    }

    .card-title {
        font-size: 1.1rem;
    }

    .titulo1 {
        font-size: 35px;
        margin-top: 35%;
    }

    .bg-img {
        object-position: center center;
    }
}

@media (max-width: 650px) {
    .bg-rectangulo {
        height: 200px;
        margin-right: 155px;
    }
    .propImagen {
        width: 50%;
        left: 80px;
    }
}

/* 576 x 320 */
@media (max-width: 576px) {
    .titulo1QuienesSomos {
        font-size: 55px;
        margin-top: 30%;
    }

    .titulo1Privacy {
        margin-top: 35%;
        font-size: 55px;
    }

    .segundaColumnaMision {
        margin-top: 20px;
    }

    .parrafoCuartaMision {
        max-width: none;
        font-size: 35px;
    }

    .titulo1Vision {
        font-size: 55px;
        margin-top: 50%;
    }

    .fondoPrimeraSeccionContacto {
        height: 95vh;
    }

    .tituloSeccSeis {
        font-size: 40px;
    }

    .titulo1Contacto {
        font-size: 45px;
        margin-top: 50%;
    }

    .titulo1Servicios {
        font-size: 45px;
        margin-top: 40%;
    }

    .propImagen {
        width: 45%;
        left: 70px;
    }

    .bg-rectangulo {
        height: 170px;
    }

    .bg-rectanguloDos {
        top: 50%;
        width: 50%;
        left: 50px;
        height: 100%;
    }

    .imagen-flotante {
        left: 100px;
        max-width: 355px;
    }
}

@media (max-width: 490px) {
    .fondoPrimSectHome {
        height: 85vh;
    }

    .bg-rectangulo {
        margin-right: 120px;
    }

    .propImagen {
        width: 50%;
        left: 55px;
    }

    .bg-rectanguloDos {
        top: 50%;
        width: 50%;
        left: 50px;
        height: 90%;
    }

    .imagen-flotante {
        left: 80px;
        max-width: 300px;
    }
}

@media (max-width: 460px) {
    .titulo1QuienesSomos {
        font-size: 45px;
    }

    .titulo1Privacy {
        font-size: 45px;
    }

    .bg-rectangulo {
        margin-right: 80px;
        height: 150px;
    }
}

@media (max-width: 410px) {

    .titulo1 {
        font-size: 35px;
        margin-top: 35%;
    }

    .fondoPrimSectHome {
        height: 100vh;
    }

    .bg-rectanguloDos {
        top: 50%;
        width: 50%;
        left: 50px;
        height: 80%;
    }

    .imagen-flotante {
        left: 80px;
        max-width: 255px;
    }
}

/* 375 x 320 */
@media (max-width: 375px) {
    .seccion-contenido {
        min-height: 550px;
    }

    .icono-nueva-seccion {
        max-width: 80px;
    }
    .regionesOaxaca {
        font-size: 35px;
    }

    .region {
        font-size: 18px;
    }

    .titulo1QuienesSomos {
        font-size: 40px;
        margin-top: 40%;
    }

    .fondoPrimSectSomos {
        height: 90vh;
    }

    .parrafoPrivacy {
        font-size: 18px;
    }

    .tituloPrivacy {
        font-size: 40px;
    }

    .parrafo1Privacy {
        font-size: 15px;
        max-width: none;
    }
    .titulo1Privacy {
        font-size: 40px;
        margin-top: 50%;
    }

    .fondoPrimSectPrivacy {
        height: 90vh;
    }

    .parrafoCuartaMision {
        max-width: none;
        font-size: 24px;
    }
    .segundaColumnaMision {
        margin-top: 20px;
    }

    .territorio,
    .rigor,
    .colaboracion,
    .escucha {
        font-size: 18px;
    }

    .parrafoVision {
        font-size: 18px;
        text-align: center;
    }

    .mision {
        font-size: 30px;
        text-align: center;
    }

    .titulo1Vision {
        font-size: 40px;
        margin-top: 55%;
    }
    .fondoPrimSectVision {
        height: 70vh;
    }
    .fondoPrimeraSeccionContacto {
        height: 90vh;
    }

    .titulo1Contacto {
        font-size: 40px;
        margin-top: 50%;
    }

    .titleCard {
        font-size: 25px;
        margin-top: 20px;
        text-align: center;
    }

    .subtitleCard {
        text-align: center;
    }

    .parrafoCard {
        text-align: center;
    }

    .estudios {
        font-size: 40px;
    }

    .titulo1Servicios {
        font-size: 40px;
        margin-top: 45%;
    }

    .politica {
        margin-top: 25px;
        text-align: center;
    }

    .tituloFooter {
        font-size: 30px;
    }

    .avenida {
        font-size: 18px;
    }

    .elegirnos {
        font-size: 30px;
    }

    .textoIcono {
        font-size: 14px;
    }

    .dirigir {
        text-align: center;
    }

    .colaboramos {
        font-size: 30px;
    }

    .bg-rectangulo {
        height: 160px;
        margin-right: 20px;
    }

    .propImagen {
        width: 60%;
        left: 30px;
    }
    .bg-rectanguloDos {
        left: 4%;
        width: 195px;
        height: 330px;
    }

    .imagen-flotante {
        left: 35px;
        max-width: 270px;
    }

    nav {
        margin-left: 0;
    }

    .navbar-nav {
        flex-direction: column !important;
    }

    .cajaFlotante {
        height: auto;
        bottom: 0px;
    }

    .bg-rectangulo {
        height: 145px;
    }

    .propImagen {
        width: 65%;
    }

    .titulo1 {
        font-size: 40px;
        margin-top: 30%;
    }

    .limited-width {
        max-width: none;
    }

    .parrafo1 {
        font-size: 16px;
        max-width: none;
    }

    .custom-button {
        font-size: 0.9rem;
    }

    .tituloSegudaSeccion {
        font-size: 33px;
    }

    .parrafoSeccDos {
        font-size: 16px;
    }

    .profundo,
    .flexible,
    .intregral {
        font-size: 16px;
    }

    .columnaVisual {
        min-height: 300px;
    }

    .servicios {
        font-size: 45px;
    }

    .parrafoSeccTres {
        font-size: 16px;
        max-width: none;
    }

    .clientes {
        margin-top: 30px;
        text-align: center;
    }

    .parrafoSeccCuatro {
        font-size: 15px;
        text-align: center;
    }

    .educacion,
    .empresas,
    .organizaciones {
        font-size: 16px;
    }

    .cardDos {
        height: 270px !important;
    }

    .text-truncate-custom {
        font-size: 18px;
    }

    .tituloSeccSeis {
        font-size: 30px;
    }

    .tituloFormulario {
        font-size: 18px;
    }

    .nombre,
    .emailForm,
    .mensaje {
        font-size: 18px;
    }

    .navbar-brand img {
        max-height: 100px;
    }

    .medimos {
        font-size: 30px;
    }
}

@media (max-width: 320px) {
    .fondoPrimSectHome {
        height: 100vh;
    }
    .titulo1 {
        font-size: 30px;
        margin-top: 35%;
    }
}
/*
	@media( max-width: 1920px ) {}
	@media( max-width: 1600px ) {}
	@media( max-width: 1440px ) {}
	@media( max-width: 1366px ) {}
	@media( max-width: 1280px ) {}
	@media( max-width: 1024px ) {}
	@media( max-width: 736px ) {}
	@media( max-width: 667px ) {}
	@media( max-width: 640px ) {}
	@media( max-width: 568px ) {}
*/
