@media screen and (min-width: 1800px) {
    h1, h2 {
        font-size: 37px;
        line-height: 42px;
    }

    h3, h4 {
        font-size: 30px;
        line-height: 35px;
    }

    h5, h6 {
        font-size: 23px;
        line-height: 28px;
    }

    p {
        font-size: 20px;
        line-height: 28px;
    }

    .cv-container,
    header {
        width: 1640px;
    }

    .cv-logo {
        width: 240px;
    }

    .cv-menu ul li a {
        font-size: 16px;
    }

    .cv-banner__rotador .slick-dots li {
        width: 20px;
        height: 20px;
    }

    .cv-banner__rotador .slick-dots li button {
        width: 12px;
        height: 12px;
    }

    .cv-acceso-text {
        max-width: 145px;
    }

    .cv-btn,
    .cv-btn:visited {
        font-size: 18px;
        padding: 12px 22px;
    }

    .cv-servicios-text p {
        font-size: 18px;
    }

    .cv-servicios-item:hover .cv-servicios-text p {
        line-height: 24px;
    }

    .cv-sidebar-descripcion p {
        font-size: 32px;
        line-height: 42px;
    }

    footer p,
    footer a,
    footer a:visited,
    footer li {
        font-size: 15px;
        line-height: 17px;
    }

    .cv-titulo {
        padding: 140px 0 25px;
    }
}

@media screen and (min-width: 1025px) {
    .cv-article__content .is-style-rounded[class*="is-style-rounded"] img {
        width: 100%;
    }
}

@media screen and (max-width: 1024px) {
    header {
        overflow: initial;
    }

    .cv-icon-menu {
        display: flex;
    }

    .cv-menu-principal {
        position: absolute;
        display: none;
        width: 100%;
        top: 90px;
        right: 0;
    }

    .cv-menu ul {
        width: 100%;
        padding: 15px 20px;
        background: #fff;
        border-radius: 12px;
        box-shadow: -2px 2px 2px rgb(0 0 0 / 12%);
        flex-direction: column;
    }

    .cv-menu ul li {
        padding: 2px;
    }

    .cv-menu ul li a {
        position: relative;
    }

    .cv-menu ul li a:after {
        width: 0;
        height: 2px;
        margin: 0;
        top: 100%;
        left: 0;
        opacity: 1;
        border-radius: 0;
        transition: 0.4s ease-in-out all;
    }

    .cv-menu ul li a:hover:after,
    .cv-menu ul li.current-menu-item a:after {
        width: 70%;
    }

    .cv-accesos-list {
        overflow: hidden;
    }

    .cv-entrada-img {
        max-width: 40%;
    }

    .cv-entrada-text {
        max-width: 60%;
        padding: 20px 0 20px 30px;
    }

    .cv-entradas-bottom .cv-entrada-text {
        padding: 20px 30px 20px 0;
    }

    .cv-entradas-bottom .cv-entrada-item {
        padding: 40px;
    }

    .cv-servicios-list {
        flex-wrap: wrap;
    }

    .cv-servicios-item {
        flex: auto;
        max-width: calc(98% / 2);
    }

    .cv-servicios-item:before {
        height: 100%;
        opacity: 1;
    }

    .cv-servicios-item .cv-servicios-text p {
        line-height: 20px;
        margin-bottom: 0;
        top: 0;
    }

    .cv-servicios-text {
        padding: 50px 20px 20px;
    }

    .cv-servicios-link {
        position: relative;
        margin-top: 10px;
    }

    footer .cv-container {
        flex-wrap: wrap;
        gap: 25px 4%;
    }

    footer .cv-container > div {
        width: 44%;
        margin: 0;
    }

    .cv-copy {
        margin-top: 20px;
    }
}

@media (min-width: 782px) {
    .cv-article__content [class*="wp-block-column"].orden1 {
        order: 1;
    }

    .cv-article__content [class*="wp-block-column"].orden2 {
        order: 2;
    }

    .cv-article__content [class*="wp-block-column"].w50 {
        max-width: calc(50% - 1em);
    }

    .cv-article__content [class*="wp-block-column"].margen0 {
        gap: 1em;
        margin-bottom: 0;
    }

    .cv-article__content [class*="wp-block-column"].margen1 {
        gap: 1em;
        margin-bottom: 1em;
    }

    .cv-article__content [class*="wp-block-column"].margen2 {
        gap: 2em;
        margin-bottom: 2em;
    }

    .cv-article__content [class*="wp-block-column"].margen3 {
        gap: 3em;
        margin-bottom: 3em;
    }

    .cv-article__content [class*="wp-block-column"].margen4 {
        gap: 4em;
        margin-bottom: 4em;
    }

    .cv-article__content [class*="wp-block-column"].margen5 {
        gap: 5em;
        margin-bottom: 5em;
    }

    .cv-article__content [class*="wp-block-column"].margen6 {
        gap: 6em;
        margin-bottom: 6em;
    }

    .cv-article__content [class*="wp-block-column"].borde1 {
        padding: 1%;
    }

    .cv-article__content [class*="wp-block-column"].borde2 {
        padding: 2%;
    }

    .cv-article__content [class*="wp-block-column"].borde3 {
        padding: 3%;
    }

    .cv-article__content [class*="wp-block-column"].borde4 {
        padding: 4%;
    }

    .cv-article__content [class*="wp-block-column"].borde5 {
        padding: 5%;
    }

    .cv-article__content [class*="wp-block-column"].borde6 {
        padding: 6%;
    }

    .cv-article__content [class*="wp-block-column"].espacio1 {
        padding: 0 1%;
    }

    .cv-article__content [class*="wp-block-column"].espacio2 {
        padding: 0 2%;
    }

    .cv-article__content [class*="wp-block-column"].espacio3 {
        padding: 0 3%;
    }

    .cv-article__content [class*="wp-block-column"].espacio4 {
        padding: 0 4%;
    }

    .cv-article__content [class*="wp-block-column"].espacio5 {
        padding: 0 5%;
    }

    .cv-article__content [class*="wp-block-column"].espacio6 {
        padding: 0 6%;
    }

    .cv-article__content [class*="wp-block-column"].espacio-izquierda1 {
        padding-left: 1%;
    }

    .cv-article__content [class*="wp-block-column"].espacio-derecha1 {
        padding-right: 1%;
    }

    .cv-article__content [class*="wp-block-column"].espacio-izquierda2 {
        padding-left: 2%;
    }

    .cv-article__content [class*="wp-block-column"].espacio-derecha2 {
        padding-right: 2%;
    }

    .cv-article__content [class*="wp-block-column"].espacio-izquierda3 {
        padding-left: 3%;
    }

    .cv-article__content [class*="wp-block-column"].espacio-derecha3 {
        padding-right: 3%;
    }

    .cv-article__content [class*="wp-block-column"].espacio-izquierda4 {
        padding-left: 4%;
    }

    .cv-article__content [class*="wp-block-column"].espacio-derecha4 {
        padding-right: 4%;
    }

    .cv-article__content [class*="wp-block-column"].espacio-izquierda5 {
        padding-left: 5%;
    }

    .cv-article__content [class*="wp-block-column"].espacio-derecha5 {
        padding-right: 5%;
    }

    .cv-article__content [class*="wp-block-column"].espacio-izquierda6 {
        padding-left: 6%;
    }

    .cv-article__content [class*="wp-block-column"].espacio-derecha6 {
        padding-right: 6%;
    }
}

@media (max-width: 781px) {
    h1, h2 {
        font-size: 25px;
        line-height: 30px;
        margin: 0 auto 15px;
    }

    h3, h4 {
        font-size: 20px;
        line-height: 25px;
        margin: 0 auto 15px;
    }

    h5, h6 {
        font-size: 18px;
        line-height: 20px;
    }

    .cv-article__content .wp-block-columns {
        gap: 20px;
        margin-bottom: 20px;
    }
}

@media screen and (max-width: 768px) {
    .cv-container,
    header {
        max-width: 90%;
    }

    .cv-logo {
        width: 160px;
    }

    .cv-banner__item {
        height: auto;
    }

    .cv-banner__rotador .slick-dots {
        bottom: 5px;
    }

    .cv-accesos-list {
        margin: 20px auto 0;
    }

    .cv-entrada-item {
        padding: 0 5%;
        flex-direction: column;
    }

    .cv-entrada-img {
        max-width: 100%;
    }

    .cv-entrada-text {
        max-width: 100%;
        padding: 25px 0 0;
    }

    .cv-entradas-bottom .cv-entrada-text {
        padding: 30px 0 0;
        order: 2;
    }

    .cv-sidebar-item {
        padding: 0 25px;
        flex-direction: column-reverse;
    }

    .cv-sidebar-item img {
        margin-top: 0;
    }

    .cv-sidebar-text {
        max-width: 100%;
        margin-left: 0;
    }

    .cv-entradas .cv-container {
        max-width: 100%;
    }

    .cv-entradas-bottom .cv-entrada-item {
        padding: 45px 5%;
        border-radius: 0;
        box-shadow: none;
    }

    .cv-entradas-bottom .cv-entrada-item:last-child {
        margin-bottom: 0;
    }

    .cv-servicios-list {
        flex-direction: column;
    }

    .cv-servicios-item {
        width: 100%;
        max-width: 100%;
    }

    .cv-article__construccion {
        flex-direction: column;
    }

    .cv-article__construccion-image {
        max-width: 90%;
        margin: 0 auto;
    }

    .cv-article__construccion-text p {
        font-size: 26px;
        line-height: 30px;
    }

    .cv-article__construccion-text p strong {
        font-size: 32px;
        line-height: 42px;
    }
}

@media screen and (max-width: 539px) {
    .cv-banner__item--img-desktop.oculta-responsive {
        display: none;
    }

    .cv-banner__item--img-desktop.oculta-responsive + .cv-banner__item--img-movil {
        display: block !important;
    }

    .cv-banner__rotador .slick-dots {
        bottom: 75px;
    }

    .cv-accesos-list {
        margin: -55px auto 0;
    }

    .cv-acceso-item:after {
        content: none;
    }

    .cv-sidebar--img-desktop.oculta-responsive {
        display: none;
    }

    .cv-sidebar--img-desktop.oculta-responsive + .cv-sidebar--img-movil {
        display: block !important;
    }

    .cv-servicios-text h6 {
        font-size: 18px;
        line-height: 23px;
        margin-bottom: 10px;
    }

    .cv-servicios-item .cv-servicios-text p {
        width: 100%;
        line-height: 18px;
    }

    footer .cv-container {
        flex-direction: column;
    }

    footer .cv-container > div {
        width: 100%;
    }

    .cv-article__content .texto-flotante[class*="texto-flotante"] {
        padding: 0;
    }

    .wp-block-column:nth-child(2) .texto-flotante[class*="texto-flotante"] {
        margin-top: 0;
    }

    .cv-article__content .texto-flotante[class*="texto-flotante"] img {
        width: 100%;
    }

    .cv-article__content .texto-flotante[class*="texto-flotante"] .wp-block-cover__inner-container {
        width: 100%;
        margin-top: -20px;
    }
}