/*
 Theme Name:   Colegios
 Description:  Idento Framework Child Theme
 Author:       Idento
 Author URI:   https://idento.es
 Template:     identofmk
 Version:      1.0.0
 Text Domain:  identofmk
*/


html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
    line-height: 1.8em;
    scroll-behavior: smooth;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block;
}

ol,
ul {
    list-style: none;
}

blockquote,
q {
    quotes: none;
}

body {
    line-height: normal;
    font-family: 'Roboto', sans-serif;
    padding: 0 !important;
    overflow-x: hidden;
}

h1,
h2,
h3,
h4,
h5 {
    line-height: normal;
}

ol,
ul {
    list-style: none;
}

blockquote,
q {
    quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
    content: '';
    content: none;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

html {
    overflow-x: hidden;
}

/*.container {
    max-width: 1350px;
}*/
strong {
    font-weight: 700;
    line-height: 120%;
}

.text-center {
    text-align: center;
}

* {
    margin: 0;
    padding: 0;
    list-style: none;
    -webkit-font-smoothing: antialiased;
}

z i {
    font-style: italic;
}

.cookie-comprimida {
    padding: 0;
    background: #F1F1F1;
    margin: 15px 0;
    font-size: 16px;
}

.uppercase {
    text-transform: uppercase;
}




/* --------------------------------------- TIPOGRAFÍAS --------------------------------------- 


.roboto-<uniquifier> {
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
  font-variation-settings:
    "wdth" 100;
}

/* --------------------------------------- PALETA DE COLORES --------------------------------------- */

:root {
    --main-color: #1D3159;
    --main-color-hover: #001530;
    --accent-color: #932917;
    --accent-color-hover: #C5857A;
    --third-color: #F6B600;
    --third-color-hover: #F4CF66;
    --black-color: #343434;
    --light-color: white;
    --light-color-hover: rgba(255, 255, 255, 0.20);
    --grey-color: #EEEEEE;
    --dark-grey-color: #797979;
    --grey-input: #C8C8C8;
    --grey-light: #BDBDBD;
    --grey-bg: #F6F6F6;
    --marinoHover: #001530;
    --shadowBox: 0px 9px 27.2px 0px rgba(0, 0, 0, 0.15);
}

/* --------------------------------------- COMUNES --------------------------------------- */

div#content .politica-cookie a.ver-cookie[aria-expanded="false"] .arrow.down {
    transform: rotate(-135deg);
    left: calc(100% + 15px);
    top: calc(50% - 7px);
    transition: .5s;
}

div#content .politica-cookie a.ver-cookie[aria-expanded="true"] .arrow.down {
    transform: rotate(45deg);
    left: calc(100% + 15px);
    top: calc(50% + -1px);
}

div#content .politica-cookie a {
    position: relative;
}

.arrow {
    display: inline-block;
    position: absolute;
    width: 10px;
    height: 10px;
    background: transparent;
    text-indent: -9999px;
    border-top: 2px solid #505050;
    border-left: 2px solid #505050;
    transition: all 250ms ease-in-out;
    text-decoration: none;
    color: transparent;
}

div#content .politica-cookie .cookie-comprimida {
    padding: 15px;
}

div#content .politica-cookie .info {
    margin-top: 15px;
}

div#content .politica-cookie .card.card-body.container {
    padding: 15px;
}

a {
    text-decoration: none;
    color: var(--main-color);
}

#formulario1 {
    margin-top: -70px;
    position: absolute;
}

a:hover {
    text-decoration: none;

}

.cta {
    text-align: center;
    display: inline-block;
    font-size: 1.5rem;
    color: var(--accent-color);
}

.cta-button {
    background: var(--accent-color);
    color: white !important;
    font-size: 18px;
    padding: 20px 40px;
    text-align: center;
    border-radius: 50px;
    display: inline-block;
    font-weight: 700;
    transition: ease 0.3s;
    cursor: pointer;
    border: 0px;
}

.boton {
    margin-top: 30px;
    display: inline-block;
}

.cta-button:hover,
.cta-button:active {
    /* background: var(--accent-color-hover); */
    text-shadow: 1px 1px rgb(0 0 0 / 30%);
}

.centrado-verticalmente {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

p {
    margin-bottom: 1em;
}

.p-width {
    width: 70%;
    line-height: 120%;
    margin-left: auto;
    margin-right: auto;
}

/* ------------- CABECERAS ------------ */
h1,
h2,
h3,
h4,
h5 {
    font-family: "Roboto", sans-serif;
    line-height: 1;
}

.h1-hero {
    font-size: 4.5rem;
    font-weight: bold;

    color: #ffffff;
}

h1,
.h1 {
    font-size: 72px;
    font-weight: 700;

}

h2,
.h2 {
    font-size: 3.25rem;
    font-weight: 700;

}

h3,
.h3 {
    font-size: 2.25rem;
    font-weight: 700;
    margin-bottom: 0.5em;

}

h4,
.h4 {
    font-size: 1.5rem;
    font-weight: 400;


}

h5,
.h5 {
    font-size: 1.25rem;
    font-weight: 400;



}

.pretitulo {
    font-size: 1.25rem;
    font-weight: 700;

}

img {
    max-width: 100%;
}


a:focus {
    outline: none;
    box-shadow: none;
}

.uppercase {
    text-transform: uppercase;
}

.wp-block-button__link {
    line-height: 120%;
}

/* a:focus-visible {
    outline: 1px solid var(--grey-input, var(--grey-color));
    
} */

/* --------------------------------------- HEADER --------------------------------------- */

header {
    background: white;
    padding: 0;
    width: 100%;
    z-index: 99;
}

header .site-branding {
    padding: 12px 0;
    transition: 0.5s;
}

header#masthead {
    box-shadow: 0 2px 6px rgb(51 51 51 / 30%);
    position: fixed;
    top: 0;
    transition: 0.5s;
}

header#masthead .flex-header {
    display: flex;
    justify-content: space-between;
    align-items: end;
}

nav#site-navigation,
nav#site-navigation>* {
    flex-grow: 1;
}

header#masthead ul.nav-link {
    display: flex;
    justify-content: flex-end;
}


img.logo-img {
    /* max-height: 70px; */
    width: auto;
    transition: 0.5s;
    height: 100%;
}


nav#site-navigation ul.sub-menu {
    position: absolute;
    background: white;
    display: none;
}

nav#site-navigation li>a {
    position: relative;
}

header#masthead ul.nav-link li.menu-item-has-children>a {
    padding-right: 40px;
}

nav#site-navigation li.menu-item-has-children>a::after {
    position: absolute;
    right: 0;
    width: 25px;
    top: calc(50% - 8px);
    height: 25px;
    content: "\f107";
    font-family: "Font Awesome 5";
	pointer-events:none;
}


/*  */
/* anulamos el ocultar header cuando hace scroll */
#masthead {
    transform: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    transition: background-color 0.3s ease;

}

.menu-transparente {
    background-color: transparent;
    transition: background-color 0.3s ease;
}

.menu-solido {
    background-color: var(--main-color);
    /* Cambia al color sólido que prefieras */
    transition: background-color 0.3s ease;
}

#masthead .donativos a {
    color: var(--third-color) !important;
}

#masthead a {
    color: var(--light-color);
}

#masthead .pre-menu {
    padding: 8px 0;
}

#masthead .pre-menu ul#menu-pre-menu {
    display: flex;
    align-items: center;
}

#masthead .pre-menu ul#menu-pre-menu li {
    position: relative;
    margin: 0px 24px;
}

#masthead .pre-menu ul#menu-pre-menu li a {
    font-size: 16px;
}

#masthead .pre-menu ul#menu-pre-menu li a:hover {
    opacity: 0.8;
}

#masthead .pre-menu ul#menu-pre-menu li.contact a {
    padding: 8px 12px;
    background-color: var(--third-color);
    color: var(--main-color);
    border-radius: 999px;
    font-weight: 500;
}

/* decoracion top-menu */
.pre-menu-links li:not(:last-child)::after {
    content: "";
    position: absolute;
    right: -26px;
    /* Ajusta la posición horizontal del círculo */
    top: 50%;
    transform: translateY(-50%);
    width: 4px;
    height: 4px;
    background-color: var(--light-color);
    /* Color del círculo */
    border-radius: 50%;
}

#masthead .navbar.navbar-expand-lg {
    padding: 0 0 8px 0 !important;
}

#masthead div#navbarheader,
ul#menu-menu-superior {
    padding: 0 !important;
	
}

.navbar-brand {
    padding-bottom: 0;
    font-size: unset;
    height: 70px;
}

#masthead ul#menu-menu-superior li.inline {
    position: relative;
}

#masthead ul#menu-menu-superior li.inline>a {
    position: unset;
    width: auto;
    display: inline-block;
}

#masthead ul#menu-menu-superior li a {
    font-size: clamp(16px, 2vw, 20px);

}

#masthead ul#menu-menu-superior ul.sub-menu li a{
line-height:130%;
}


#masthead .navbar.navbar-expand-lg {
    border-bottom: 1px solid var(--light-color);
}

.menu-transparente ul#menu-menu-superior ul.sub-menu {
    background-color: transparent !important;
}


.menu-solido ul#menu-menu-superior ul.sub-menu li {
    background-color: var(--main-color);
    border-bottom: 0.8px solid var(--light-color);
}

ul#menu-menu-superior ul.sub-menu li:last-child {
    border-bottom: none;
}

ul#menu-menu-superior li a {
    padding: 12px 24px;
    display: block;
}

header#masthead ul#menu-menu-superior li.menu-item-has-children>a {
    padding-right: 40px;
}

ul#menu-menu-superior li a::after {
    top: 14px !important;
    right: 0px;

}

.menu-solido ul#menu-menu-superior li a:hover {
    background-color: var(--main-color-hover);
}

.menu-transparente ul#menu-menu-superior li a::before {
    position: absolute;
    content: '';
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, .3);
    top: 0;
    left: 0;
    transition: .3s;
    opacity: 0;
}

.menu-transparente ul#menu-menu-superior li a:hover::before {

    opacity: 0.5;
}

.transparente ul#menu-menu-superior li a:hover {
    background-color: var(--light-color-hover);
}


/* cabecera genérica migas de pan */

.cabecera.hero-container-fluid {
    padding-top: 177px;
    border-bottom: 5px solid var(--accent-color);
    position: relative;
    width: 100%;
    min-height: 500px;
    background-size: cover;
    background-position: center;
    display: flex;
    align-items: center;
    justify-content: start;
    /* text-align: center; */
    color: #fff;
    z-index: 1;
    overflow: hidden;
    margin: 0;
}


.cabecera.hero-container-fluid .hero-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(29, 49, 89, 0.6);
    z-index: 2;
}

.cabecera.hero-container-fluid .hero-content {
    z-index: 3;
    padding: 0;
}

.cabecera.hero-container-fluid .hero-content .h1 {
    font-size: clamp(26px, 5vw, 56px);
    margin-bottom: 25px;

}

.cabecera.hero-container-fluid .hero-content p#breadcrumbs a {
    font-size: 20px;
    color: var(--third-color);
    margin: 0;
    text-decoration: underline;
}


.cabecera.hero-container-fluid .hero-content p#breadcrumbs span {
    font-size: 20px;
    color: var(--light-color);
    margin: 0;
}

.cabecera.hero-container-fluid .hero-content p#breadcrumbs a:hover {
    opacity: 0.8;
}

/* cabacera single */
/* cabecera page */

.cabecera-single {
    padding-top: 177px;
    min-height: 500px !important;
    /* background-color: var(--main-color); */
}


.cabecera-single h1 {
    color: var(--light-color);
    font-size: clamp(26px, 5vw, 56px);
}

.cabecera-single .hero-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(29, 49, 89, 0.6);
    z-index: 2;

}

.cabecera-single .hero-content {
    z-index: 3 !important;
}

.cabecera-single .breadcrumbs span {
    color: var(--light-color);
    font-size: 20px;
}

.cabecera-single .breadcrumbs a {
    color: var(--third-color);
    font-size: 20px;
    text-decoration: underline;
}

.cabecera-single .breadcrumbs a:hover {
    opacity: 0.8;
}

/* cabecera page */

.cabecera-page {
    padding-top: 177px;
}

.cabecera-page .hero-content {
    padding: 100px 0;
}

.cabecera-page .h1 {
    font-size: clamp(26px, 5vw, 56px);
    color: var(--main-color);
    margin: 0;
}

.cabecera-page .breadcrumbs span {
    color: var(--main-color);
    font-size: 20px;
    line-height: 120%;
}

.cabecera-page .breadcrumbs span a {
    color: var(--third-color);
    text-decoration: underline;
    line-height: 120%;
    font-size: 20px;
}

.cabecera-page .breadcrumbs span a:hover {
    opacity: 0.8;
}


/* ------- SLIDER ----------- */

.slider .carousel-item img {
    max-height: 700px;
    object-fit: cover;
}

.slider .carousel-caption {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    height: 100%;
}



/* --- BANNER DATOS --- */
section.banner-datos {
    width: 100%;
    background-color: var(--accent-color);
    padding: 30px 0;
}

section.banner-datos h3 {
    font-size: 65px;
    /* color: var(--main-color); */
    text-align: center;
    margin: 0;
    white-space: nowrap;
}


/* --- CONTACTO --- */

/* .form-container input,
.form-container textarea,
.form-container select {
    border-radius: 5px;
    border: 2px solid var(--grey-color) !important;
}

.form-container .gfield input:focus,
.form-container .gfield textarea:focus {
    border-radius: 5px;
    border: 2px solid var(--accent-color) !important;
    outline: 0;
}

.form-container .floating label {
    position: absolute;
    color: var(--dark-grey-color);
    padding: 11px 15px;
    pointer-events: none;
}

.form-container label {
    transition: 0.5s;
    top: 0;
}

.form-container .focusin label {
    color: var(--accent-color);
    font-size: 12px !important;
    top: -11px;
}

.form-container .focusin label .gfield_required {
    color: var(--accent-color);
}

.form-container .top_label li ul.gfield_radio {
    display: flex;
    flex-wrap: wrap;
}

.form-container .top_label li ul.gfield_radio li {
    margin-right: 15px;
    margin-bottom: 0;
    overflow: visible;
    display: flex;
    justify-content: center;
    align-items: center;
}

.form-container input[type="checkbox"] {
    margin-top: -3px !important;
    margin-right: 5px;
}

.form-container .gform_footer.top_label {
    padding: 0;
    margin: 0;
}


.contacto-home .form-container {
    margin-top: 0;
}

.background-main .form-container {
    padding: 30px 15px;
}

.form-container input,
.form-container textarea,
.form-container select {
    border-radius: 5px;
    border: 2px solid var(--grey-color) !important;
}

.background-main .form-container input,
.background-main .form-container textarea {
    border-radius: 5px;
    border: 2px solid transparent !important;
    background: var(--light-color);
}

.form-container .gfield input:focus,
.form-container .gfield textarea:focus {
    border-radius: 5px;
    border: 2px solid var(--accent-color) !important;
    border-bottom: 2px solid var(--accent-color) !important;
    outline: 0;
}

.form-container .floating label {
    position: absolute;
    color: var(--dark-grey-color);
    padding: 11px 15px;
    pointer-events: none;
}

.form-container label {
    transition: 0.5s;
    top: 0;
}

.form-container .focusin label {
    color: var(--accent-color);
    font-size: 12px !important;
    top: -11px;
}

.form-container .focusin label .gfield_required {
    color: var(--accent-color);
}

.form-container .top_label li ul.gfield_radio {
    display: flex;
    flex-wrap: wrap;
}

.form-container .top_label li ul.gfield_radio li {
    margin-right: 15px;
    margin-bottom: 0;
    overflow: visible;
    display: flex;
    justify-content: center;
    align-items: center;
}

.form-container label a {
    font-weight: 700;
}

.form-container input[type="checkbox"] {
    margin-top: -3px !important;
    margin-right: 5px;
}

.form-container .gform_footer.top_label {
    padding: 0;
    margin: 0;
}

.form-container input[type="submit"] {
    background-color: var(--accent-color);
    color: white !important;
    font-size: 20px !important;
    padding: 20px 40px !important;
    border-radius: 50px !important;
    display: inline-block !important;
    font-weight: 700;
    transition: ease 0.3s;
    cursor: pointer;
    border: 0px !important;
    width: 100% !important;
    text-align: center;
}

.form-container .gform_wrapper h3.gform_title {
    font-size: 28px;
    text-align: center;
    font-weight: 400;
}

body .gform_wrapper ul li.field_description_below div.ginput_container_radio {
    margin-top: 0 !important;
}

.form-container ul.gfield_radio li label {
    white-space: nowrap;
}

.form-container .gfield_radio li input[type=radio] {
    margin-top: 0px !important;
}
 */


/* --- FORMULARIOS  --- */


div.gform_confirmation_message h3{
	font-size:20px;
	font-weight:400;
}

.content-legal {
    padding: 2rem;
}

.content-legal ul {
    padding-left: 2rem;
}

.content-legal ul li {
    list-style: disc;
}

.content-legal table td {
    border: 1px solid #000001;
    padding: 0.5rem;
}

.content-legal table p {
    margin-bottom: 0rem;
}

.form-group.campo-movil input {
    width: 100%;
    padding: 15px 15px 0 15px;
    border-radius: 5px;
    border: 1px solid var(--grey-color);
}

form h3 {
    margin-bottom: 25px;
}

label.form-check-label {
    margin-right: 15px;
}

.oculto {
    display: none;
}

form#contact-form input#aceptocondiciones {
    margin-top: 6px;
    margin-right: 10px;
}

form#contact-form input.cta-button {
    padding: 10px 40px;
    width: 100%;
}

.gform_wrapper ul.gform_fields .gfield {
    position: relative;
}

.form-container .gform_wrapper .top_label select.medium {
    width: 100%;
    line-height: 1;
}

/* - Verificación formulario  - */

.form_box label.error,
#contact-form>ul>li.check>label.error {
    color: #c40000;
    margin: 5px;
}

.form_box .sms_ok {
    font-size: 16px;
    font-weight: 400;
    padding: 30px 30px 50px 30px;
}

.form_box .sms_ok h5 {
    color: #6b737e;
    font-weight: 700;
    margin-bottom: 15px;
}

.sms_ok .tpv_response_code {
    background: #c4e8c4;
    padding: 1em 2em;
    color: #234423;
    font-size: 0.9em;
}

.sms_ko .tpv_response_code {
    background: #e8c4c4;
    padding: 1em 2em;
    color: #981414;
    font-size: 0.9em;
}



/* CSS COLEGIOS*/

/* boton flotante */

a.btn-icono-flecha {
    position: absolute;
    bottom: 20px;
    z-index: 10;
}


a.btn-icono-flecha:hover {
    opacity: 0.8;
}

/* Hero */

section.hero {
    position: relative;
    background-size: cover !important;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 900px;
    overflow: hidden;
}

.video-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
}

.video-background video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

section.hero::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.60) 0%, rgba(0, 0, 0, 0.00) 42.57%), linear-gradient(0deg, rgba(0, 0, 0, 0.20) 0%, rgba(0, 0, 0, 0.20) 100%);
    z-index: 1;
}

.hero .container {
    position: relative;
    z-index: 1;
    margin: 0 !important;
}

.hero .overlay {
    position: relative;
    z-index: 2;
}


.overlay {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    color: white;
    z-index: 1;

}

main.home .cabecera-home .overlay h2 {
    color: var(--light-color) !important;
    font-size: clamp(52px, 5vw, 72px);
    line-height: 1;
    font-weight: 600;
}

main.home .cabecera-home .overlay .parrafo {
    color: var(--light-color) !important;
    font-size: clamp(52px, 5vw, 72px);
    font-weight: 400;
    line-height: 1;
    width: 50%;
}

/* puntos fuertes col-3 */

section.puntos-fuertes-col-3 {
    background-color: var(--accent-color);
    padding: 60px 0;
}

section.puntos-fuertes-col-3 .cuadrado span.h3 {
    color: var(--light-color);
    font-size: clamp(20px, 5vw, 24px);
    margin: 0 !important;

    font-weight: 700;
    line-height: 120%;
    text-align: center;
}

section.puntos-fuertes-col-3 {
    padding: 40px 0;
}

section.puntos-fuertes-col-3 .cuadrado {
    padding: 0;
    box-shadow: none;
    background: none;
    display: flex;
    flex-flow: column;
    align-items: center;
    gap: 17px;
    padding: 0 24px;
}

section.puntos-fuertes-col-3 .cuadrado img {
    width: 70px;
    height: 70px;
}

section.puntos-fuertes-col-3 .bullet.container .col-md-3 {
    position: relative;
}

section.puntos-fuertes-col-3 .bullet.container .col-md-3:not(:first-child)::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    height: 58px;
    width: 1px;
    background-color: var(--third-color);
    opacity: 0.5;
}



/* info */

main.home section.info {
    background-color: var(--main-color);
    padding: 60px 0;
}

main.home section.info figure {
    height: 105px;
    margin-right: 24px;
}

main.home section.info figure img {
    width: 100% !important;
}

main.home section.info .pretitulo {
    margin-bottom: 4px;
    color: var(--third-color);
    font-size: 20px;
    line-height: 120%;
	text-transform:uppercase;
}

main.home section.info .p-principal {
    font-size: 36px;
    font-weight: 700;
    color: var(--light-color);
    line-height: 110%;
    margin: 0;
	width:80%;

}

main.home section.info a {
    background-color: var(--third-color);
    color: var(--main-color);
    padding: 16px 24px;
    line-height: 120%;
    font-size: 24px;
	border-radius: 999px;
}

main.home section.info a:hover {
    opacity: 0.8;
}

/* modelo pedagogico */

section.modelo-pedagógico {
    padding: 120px 0;

}

section.modelo-pedagógico h2 {
    font-size: clamp(36px, 5vw, 72px);
    margin-bottom: 24px;

}

section.modelo-pedagógico p {
    font-size: 20px;
}

section.modelo-pedagógico p.width {
    margin-bottom: 0;
}

section.modelo-pedagógico .wp-block-button__link {
    padding: 20px 32px;
    background-color: var(--accent-color);
    font-size: clamp(20px, 5vw, 24px);
}

section.modelo-pedagógico .wp-block-button__link:hover {
    opacity: 0.8;
    color: var(--light-color);
}

.fila-absolute-centrado {
    gap: 0;
    flex-wrap: wrap !important;
    padding: 105px 0;
}

.fila-absolute-centrado .absolute-centrado {
    padding: 12px;
    display: flex;
    flex-flow: column;
    position: relative;
    margin-bottom: 120px;

}

.fila-absolute-centrado .absolute-centrado figure{
	height: 450px;
    overflow: hidden;
}

.fila-absolute-centrado .absolute-centrado figure img{
	height: 100%;
    object-fit:cover;
	width:100%;
}

.fila-absolute-centrado .absolute-centrado .contenido-absolute {
    padding: 30px;
    background-color: var(--light-color);
    box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.10);
    position: absolute;
    left: 50%;
    transform: translate(-50%);
    width: 90%;
    bottom: -80px;

}

.fila-absolute-centrado .contenido-absolute h3 {
    font-size: clamp(20px, 5vw, 36px);
    color: var(--main-color);
    margin: 0;
}

.fila-absolute-centrado .contenido-absolute h3::after {
    content: '';
    display: block;
    width: 200px;
    height: 5px;
    background-color: var(--third-color);
    margin: 16px auto;
}

.fila-absolute-centrado .contenido-absolute p {
    font-size: 20px;
    line-height: 120%;
    color: var(--main-color);
    margin: 0;
}

.fila-absolute-centrado .contenido-absolute .bloque-interior {
    padding: 16px;
    border: 1px solid #DBDBDB;
}

/* etapas educativas  y section absolute*/

.etapas-educativas {
    padding: 150px 0;
}

.etapas-educativas main p {
    color: var(--light-color);
    font-size: 20px;
    line-height: 120%;
}

.section-caja-absolute {

    position: relative;
    background-color: var(--main-color);
    /* color de fondo principal */
    overflow: hidden;
    z-index: 1;
}

.section-caja-absolute::before {

    content: "";
    position: absolute;
    inset: 0;
    background-image: url('/wp-content/themes/fundacion/img/logo-vertical-blanco.png');
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    background-position-y: 100px;
    /* background-position-x: 500px; */
    opacity: 0.1;


}

.section-caja-absolute>div.is-layout-constrained:first-of-type {
    position: relative;
}

.section-caja-absolute>div.is-layout-constrained:first-of-type .fondo-home {
    position: absolute;
    right: -500px;
    top: 100px;
    z-index: 0;
}

.section-caja-absolute .wp-block-group.grupo-card-overlay {
    margin-top: 150px;
}


.section-caja-absolute .imagen-overlap {
    margin-bottom: 220px;
    position: relative;
}

.etapas-educativas h2 {
    font-size: clamp(36px, 5vw, 72px);
    color: var(--light-color);
    line-height: 1;
    z-index: 1;
    position: relative;
    z-index: 1;
    margin-bottom: 32px;
}
.section-caja-absolute p.has-text-align-center{
color:white;
font-size:20px;
}
.section-caja-absolute .caja-absolute {
    display: flex;
    flex-direction: column;
    gap: 13px;
    padding: 60px;
    width: 680px;
    min-height: 385px;
    position: absolute;
    right: 25%;
    bottom: -50px;
}

.section-caja-absolute .caja-absolute h3 {
    font-size: clamp(24px, 5vw, 36px);
    margin: 0;
    line-height: normal;
}

.section-caja-absolute .caja-absolute p {
    font-size: 20px;
    margin: 0;
    line-height: 140%;
}

.section-caja-absolute .caja-absolute a.wp-block-button__link {
    padding: 12px 16px;
    background-color: transparent;
    border: 2px solid var(--light-color);
    color: var(--light-color);
    font-size: 20px;
    line-height: 120%;
    margin-top: 27px;
}

.section-caja-absolute .caja-absolute a.wp-block-button__link::after {
    content: '\f061';
    font-family: "Font Awesome 5 Free";
    /* O "Font Awesome 6 Free" según tu versión */
    font-weight: 900;
    /* Necesario para iconos sólidos */
    display: inline-block;
    margin-left: 0.5em;
    transition: transform 0.3s ease;
}

.section-caja-absolute .caja-absolute a.wp-block-button__link:hover {
    opacity: 0.8;
}

.section-caja-absolute .col-img figure {
    height: 600px;
    overflow: hidden;
    position: relative;
}

.section-caja-absolute .col-img figure img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Servicios */

.servicios {
    gap: 0;
}

.card-servicios {
    min-height: 760px;
    padding: 40px;
}



.card-servicios .wp-block-cover__inner-container {
    display: flex;
    flex-flow: column;
    gap: 32px;
}


.card-servicios h4 {
    color: var(--light-color);
    font-weight: 700;
    font-size: clamp(24px, 5vw, 36px);
    line-height: 1;
}

.card-servicios h4::after {
    content: "";
    display: block;
    width: 100%;
    height: 5px;
    background-color: var(--third-color);
    margin-top: 24px;
}

.card-servicios p {
    font-size: 20px;
    color: var(--light-color);
    line-height: 120%;
    margin: 0;
}

main.home .card-servicios a {
    font-size: 18px;
    padding: 0;
    background-color: transparent;
    color: var(--light-color);
}

main.home .card-servicios a:hover {
    opacity: 0.8;
}


main.home .card-servicios a::after {
    content: '\f061';
    font-family: "Font Awesome 5 Free";
    /* O "Font Awesome 6 Free" según tu versión */
    font-weight: 900;
    /* Necesario para iconos sólidos */
    display: inline-block;
    margin-left: 0.5em;
    transition: transform 0.3s ease;
}

.card-servicios img {
    transition: all 0.3s ease;
}

.card-servicios:hover img {
    transform: scale(1.05);
    opacity: 0.8;
}

.elfsight-app-22c02f6b-d943-4c6d-89db-83899860d8e5 {
    padding: 120px 0;
}


/*últimas noticias*/

.ultimas-noticias {
    padding: 100px 0;
}

.bloque-ultimas-entradas-blog-hora-lugar {
    margin-bottom: 60px;
}

.bloque-ultimas-entradas-blog-hora-lugar .row{
justify-content:center;
}

.ultimas-noticias .pretitulo {
    color: var(--accent-color);
    line-height: 120%;
    margin-bottom: 12px;
}

.ultimas-noticias h3 {
    color: var(--main-color);
    font-size: clamp(36px, 5vw, 52px);
    margin-bottom: 100px;
}

.ultimas-noticias .post {
    padding: 0 8px;
}

.ultimas-noticias .card {
    padding: 40px;
    border: 1px solid #EEE;
    box-shadow: 0px 4px 30px 0px rgba(0, 0, 0, 0.04);
    gap: 28px;
    position: relative;
    border-bottom: 5px solid var(--accent-color);
}

.ultimas-noticias .card .card-body{
justify-content: center;
}

.ultimas-noticias .card .card-body span.date {
    flex-flow: column;
    align-items: start;
    gap: 0px;
    padding: 12px 32px;
    background-color: var(--accent-color);
    color: var(--light-color);
    position: absolute;
    top: 84px;
    left: 0;
}

.ultimas-noticias .card span.date p.dia {
    margin: 0;
    font-size: 32px;
    font-weight: 700;
    line-height: 1;
}

.ultimas-noticias .card .card-body span.date p.mes-ano {
    margin: 0;
    font-size: 18px;
    text-transform: uppercase;
    line-height: 1;
    font-weight: 700;
}

.ultimas-noticias .card .card-body span {
    display: flex;
    align-items: center;
    gap: 17px;
    margin-bottom: 28px;
}

.ultimas-noticias .card .card-body span .hora-lugar,
.ultimas-noticias .card .card-body span .etiqueta {
    display: flex;
    align-items: center;
    justify-content: start;
    gap: 4px;

}

.ultimas-noticias .card .card-body span .hora-lugar p,
.ultimas-noticias .card .card-body span .etiqueta p {
    font-size: 16px;
    color: var(--dark-grey-color);
    font-weight: 400;
    margin: 0;
    line-height: 120%;
}

.ultimas-noticias .card .card-img-top {
    height: 400px;

}

.ultimas-noticias .card .card-img-top img {
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.ultimas-noticias .card h4.card-title {
    font-size: clamp(24px, 5vw, 36px);
    color: var(--main-color);
    font-weight: 700;
    margin-bottom: 10px;
}


.ultimas-noticias .card .card-text {
    font-size: 20px;
    color: var(--dark-grey-color);
    margin-bottom: 24px;
    line-height: 120%;
}

.ultimas-noticias .card a.leer-mas {
    font-size: 20px;
    color: var(--accent-color);
    margin: 0;
    line-height: 120%;
}

.ultimas-noticias .card a.leer-mas:hover {
    opacity: 0.8;
}

.ultimas-noticias .wp-block-button a {
    padding: 12px 16px;
    font-size: 20px;
}

.ultimas-noticias .wp-block-button a:hover {
    color: var(--light-color);
    opacity: 0.8;
}


/* datos */

section.datos {
    background-color: var(--accent-color);
    position: relative;
    z-index: 1;
    padding: 150px 0;
    overflow: hidden;
}

section.datos>div.is-layout-constrained:first-of-type::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: url('/wp-content/themes/fundacion/img/fondo-datos.png');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    opacity: 0.07;
}

section.datos p.uppercase {
    font-size: 20px;
    color: var(--light-color);
    font-weight: 600;
    margin: 0;
    position: relative;
    z-index: 1;
    line-height: 140%;

}

section.datos h3 {
    font-size: clamp(36px, 5vw, 52px);
    color: var(--light-color);
    margin: 0;
    position: relative;
    z-index: 1;

}


section.datos .banner-datos {
    padding-top: 60px;
    background-color: transparent;
    position: relative;
    z-index: 1;
}

section.datos .banner-datos .container {
    padding: 0;
}

section.datos .banner-datos .container .row {
    align-items: end;
}

section.datos .banner-datos .icono-cifras {
    margin-bottom: 8px;
}


section.datos .banner-datos h4,
section.datos .banner-datos span.count {
    font-size: clamp(36px, 5vw, 56px);
    color: var(--light-color);
    line-height: 1;
    font-weight: 700;
    margin-bottom: 8px;
}

section.datos .banner-datos h5 {
    font-size: clamp(20px, 5vw, 22px);
    color: var(--light-color);
    font-weight: 400;
    margin: 0;
}

/* pre footer contacta */

.pre-footer-contacta {
    padding: 60px 0;
    position: relative;
    overflow: hidden;
}

.pre-footer-contacta .columnas {
    z-index: 3;
    position: relative;
}

.pre-footer-contacta::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: var(--imagen-fondo-prefooter);
    background-repeat: no-repeat;
    background-position: right;
    background-size: 500px;

    background-position-x: 80%;
    opacity: 0.1;
}

.pre-footer-contacta .pretitulo {
    color: var(--accent-color);
    font-size: 20px;
    line-height: 120%;
    margin-bottom: 24px;
}

.pre-footer-contacta .p-principal {
    font-size: clamp(36px, 5vw, 52px);
    color: var(--main-color);
    font-weight: 700;
    line-height: 1;
    margin: 0;
}

.pre-footer-contacta .wp-block-button a {
    padding: 12px 24px;
    background-color: var(--third-color);
    color: var(--main-color);
    font-size: clamp(20px, 5vw, 24px);
}

.pre-footer-contacta .wp-block-button a:hover {
    color: var(--main-color);
    opacity: 0.8;
}





/* ORGANIGRAMA */

.container-organigrama .estructura-organigrama {
    padding: 150px 0 40px 0;
}

.container-organigrama h2 {
    font-size: clamp(32px, 5vw, 64px);
    margin-bottom: 60px;
}

.container-organigrama h3 {
    font-size: clamp(24px, 5vw, 40px);
    margin-bottom: 40px;
}

.container-organigrama .fila-organigrama {
    flex-wrap: wrap;
    gap: 0;
    align-items: stretch;
    justify-content: center;
    margin-bottom: 60px;
}

.container-organigrama .fila-directores {
    margin-bottom: 60px;
}

.container-organigrama .fila-organigrama .bloque-organigrama {
    padding: 0 12px;

}

.container-organigrama .fila-directores {
    justify-content: center;
    align-items: stretch;
}

.container-organigrama .fila-directores .bloque-director .wp-block-group__inner-container {
    display: flex;
    flex-flow: column;
    align-items: center;
    justify-content: center;

}

.container-organigrama .fila-directores .bloque-organigrama {
    width: 100%;
}

.container-organigrama .bloque-organigrama .card {
    border-radius: 8px;
    box-shadow: 0px 4px 22.3px 0px rgba(0, 0, 0, 0.15);
    display: flex;
    flex-flow: column;
}

.container-organigrama .bloque-organigrama .card-header {
    min-height: 400px;
    border-radius: 8px 8px 0 0;
    border-bottom: none;
}

.container-organigrama .bloque-organigrama .card-body {
    padding: 24px 16px !important;
    gap: 12px;
    border-radius: 0 0 8px 8px;
    flex-grow: 1;
    justify-content: center;
}

.container-organigrama .bloque-organigrama .card-body h5 {
    font-size: clamp(20px, 5vw, 24px);
    font-weight: 400;
    line-height: 120%;
    margin: 0;
    color: var(--light-color);
}

.container-organigrama .bloque-organigrama .card-body p {
    font-size: 20px;
    font-weight: 400;
    line-height: 120%;
    margin: 0;
    color: var(--light-color) !important;
}

.container-organigrama .bloque-organigrama .card-body {
    background-color: var(--main-color);
}




.container-organigrama .nuestro-equipo {
    padding: 100px 0;
}

.container-organigrama .nuestro-equipo h2 {
    color: var(--main-color);
    font-size: clamp(36px, 5vw, 52px);
    margin-bottom: 60px;
}

.container-organigrama .nuestro-equipo .fila {
    gap: 0;
    margin-bottom: 60px;
    ;
}

.container-organigrama .nuestro-equipo .wp-block-button__link {
    background-color: var(--accent-color);
    padding: 12px 16px;
    font-size: 20px;
}

.container-organigrama .nuestro-equipo .wp-block-button__link:hover {
    color: var(--light-color);
    opacity: 0.8;
}

.container-organigrama .card-nuestro-equipo .wp-block-group__inner-container {
    display: flex;
    flex-flow: column;
    gap: 40px;
}

.container-organigrama .card-nuestro-equipo {
    padding: 0 20px;
}

.container-organigrama .card-nuestro-equipo h4 {
    font-size: 36px;
    font-weight: 600;
    color: var(--accent-color);
}

.container-organigrama .card-nuestro-equipo figure {
    height: 500px;
    width: 100%;
    overflow: hidden;
    border-radius: 12px;
}
.container-organigrama .card-nuestro-equipo figure a{
	height:100%;
	width:100%;
	}


.container-organigrama .card-nuestro-equipo figure img {
    display: block;
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.container-organigrama .pre-footer {
    padding: 100px 0;
    height: 800px;
}





.container-organigrama .pre-footer .pretitulo {
    color: var(--light-color);
    font-size: 20px !important;
    line-height: 120%;
    margin-bottom: 12px;
}

.container-organigrama .pre-footer h3 {
    color: var(--light-color);
    font-size: clamp(36px, 5vw, 52px);
    margin-bottom: 32px;
}

.container-organigrama .pre-footer a.wp-block-button__link {
    background-color: var(--accent-color);
    padding: 12px 16px;
    font-size: 20px;
}

.container-organigrama .pre-footer a.wp-block-button__link:hover {
    color: var(--light-color);
    opacity: 0.8;
    ;
}

/* VIDA ESCOLAR */
section#nuestro-propósito {
    padding: 100px 0;
    background-color: rgba(249, 249, 249, 0.98);

}

section#nuestro-propósito .wp-block-image {
    margin-bottom: 24px;
}

section#nuestro-propósito .pretitulo {
    color: var(--accent-color);
    margin-bottom: 24px;
    line-height: 120%;
}

section#nuestro-propósito h2 {
    color: var(--main-color);
    font-size: clamp(24px, 5vw, 36px);
    margin-bottom: 50px;
}

section#nuestro-propósito .wp-block-button__link {
    background-color: transparent;
    border: 2px solid var(--accent-color);
    color: var(--accent-color);
    font-size: 24px;
    line-height: 120%;
    padding: 20px 32px;
}

section#nuestro-propósito .wp-block-group{
gap:24px;
}

section#nuestro-propósito .wp-block-button__link:hover {
    opacity: 0.7;
}

div#calendario-escolar {
    padding: 100px 0;
}

div#calendario-escolar .wp-block-column {
    display: flex;
    flex-flow: column;
    justify-content: center;
}

div#calendario-escolar .wp-block-column:first-of-type img {
    margin-bottom: 40px;
    ;
}

div#calendario-escolar .wp-block-column:first-of-type h3 {
    font-size: clamp(36px, 5vw, 52px);
    color: var(--main-color);
}

div#calendario-escolar .wp-block-column:first-of-type p {
    font-size: 20px;
    color: var(--dark-grey-color);
}

section#horarios-escolares {
    padding: 120px 0;
    background-color: var(--main-color);
}

section#horarios-escolares h3 {
    color: var(--light-color);
    margin-bottom: 80px;
    font-size: clamp(36px, 5vw, 52px);
}

section#horarios-escolares .fila-horarios {
    flex-wrap: wrap;
    gap: 0;
	justify-content:center;
	align-items: stretch;
}

section#horarios-escolares .card {
    flex-flow: row;
    padding: 24px;
    border-radius: 12px;
    border: 1px solid #DBDBDB;
}

section#horarios-escolares .card img {
    height: 50px;
    width: auto;
    margin-right: 12px;
}

section#horarios-escolares .fila-horarios .bloque-imagen-titulo-texto {
    padding: 0 20px;
}

section#horarios-escolares .bloque-imagen-titulo-texto h5 {
    font-size: 24px;
    font-weight: 700;
    color: var(--main-color);
    margin-bottom: 12px;
}

section#horarios-escolares .bloque-imagen-titulo-texto p {
    font-size: 20px;
    color: var(--dark-grey-color);
    line-height: 120%;
}

section#uniforme-escolar {
    padding-top: 100px;

}

section#uniforme-escolar h2 {
    font-size: clamp(36px, 5vw, 52px);
    color: var(--main-color);
    margin-bottom: 24px;
}

section#uniforme-escolar p {
    font-size: 20px;
    color: var(--main-color);
}

section#uniforme-escolar .texto-imagen-check .col-img figure{
height:100%;
	max-height: 690px;
}

section#uniforme-escolar figure.aligncenter {
    width: 70px;
}

section#uniforme-escolar .texto-imagen-check h4 {
    font-size: clamp(36px, 5vw, 52px);
    color: var(--main-color);
}

section#uniforme-escolar p.has-text-align-center {
    margin: 0 auto;
	width:80%;
	line-height:130%;
}

section#uniforme-escolar .texto-imagen-check .col-contenido {
    display: flex;
    flex-flow: column;
    justify-content: center;
}

.texto-imagen-check {
    padding: 100px 0;
}

.texto-imagen-check .col-img .wp-block-image img {
    /* max-height: 610px; */
    height: 100%;
    object-fit: cover;
    border-radius: 12px;
	width:100%;
}

.texto-imagen-check h4 {
    font-size: clamp(36px, 5vw, 52px);
    font-weight: 700;
    color: var(--main-color);
    margin: 24px 0;
}

.texto-imagen-check p {
    font-size: 20px;
    margin-bottom: 24px;
    color: var(--main-color);
    line-height: 130%;
}

.texto-imagen-check p em{
line-height:130%;
font-style:italic;
}

.texto-imagen .col-contenido a{
	text-decoration:underline;
	line-height: 130%;
	
}

.texto-imagen .col-contenido a:hover{
    opacity:0.8;
	color: var(--main-color);
}


.texto-imagen-check .box-check {
    margin-bottom: 24px;
}

.texto-imagen-check .box-check .wp-block-group__inner-container {
    display: flex;
    align-items: start;
    gap: 20px;
}

.texto-imagen-check .box-check p{
    font-weight: 400;
    margin: 0;

}

.texto-imagen-check .box-check p strong{
font-weight:700;}

.texto-imagen-check .box-check figure {
    width: 32px;
    height: 32px;
    display: flex;
    justify-content: center;
    flex-shrink: 0;
}

.texto-imagen-check .col-contenido{
display:flex; 
flex-flow:column;
justify-content:center;
}

.container-vida-escolar .pre-contacto {
    padding: 100px 0;
}

.container-vida-escolar .pre-contacto h3 {
    font-size: clamp(24px, 5vw, 52px) !important;
    margin-bottom: 24px;
}

.container-vida-escolar .pre-contacto p {
    font-size: 20px;
    line-height: 120%;

}

.container-vida-escolar .pre-contacto p a {
    text-decoration: underline;
}

.container-vida-escolar .pre-contacto p a:hover {
    opacity: 0.7;
}

/* QUIENES SOMOS */

.container-quienes-somos .valores {
    padding: 120px 0;
}

.container-quienes-somos .valores h3 {
    font-size: clamp(36px, 5vw, 52px);
    color: var(--main-color);
    margin: 0 auto 40px auto;
	width:80%;
}

.container-quienes-somos .valores h3 em {
    font-style: italic;
    line-height: 120%;
}

.container-quienes-somos .valores .col-md-4 {
    padding: 0 8px;
}

.container-quienes-somos .valores .cuadrado {
    display: flex;
    gap: 12px;
    padding: 24px;
    border-radius: 12px;
    border: 1px solid #DBDBDB;
    background-color: var(--light-color);
	height:100%;

}

.container-quienes-somos .valores .cuadrado img{
max-width:60px;
}

.container-quienes-somos .valores .cuadrado .contenido {
    display: flex;
    flex-flow: column;
    gap: 12px;
    align-items: start;
}

.container-quienes-somos .valores .cuadrado span.h3 {
    color: var(--main-color);
    margin: 0 !important;
    font-size: 24px;
}

.container-quienes-somos .valores .cuadrado p {
    font-size: 20px;
    line-height: 130%;
    margin: 0;
}

.container-quienes-somos .section-absolute {
    padding: 150px 0 100px 0;
    background-color: var(--main-color);

}

.container-quienes-somos .section-absolute h2 {
    color: var(--light-color);
    font-size: clamp(36px, 5vw, 72px);
    width: 70%;
    margin: 0 auto 120px auto;
    /* margin-bottom: 120px; */
}

.container-quienes-somos .section-absolute .col-absolute-proyecto {
    position: relative;
    margin-bottom: 105px;
}

.container-quienes-somos .section-absolute .col-absolute-proyecto figure {
    height: 550px;
    overflow: hidden;
}

.container-quienes-somos .section-absolute .col-absolute-proyecto figure img{
height:100%;
width:100%;
object-fit:cover;
}

.container-quienes-somos .contenido-absolute {
    position: absolute;
    background-color: var(--light-color);
    padding: 30px;
    max-width: 700px;
    width: 100%;
}

.container-quienes-somos .contenido-absolute{
	min-height:380px;
	display: flex;
    align-items: stretch;
}

.container-quienes-somos .contenido-absolute.col-right {
    bottom: 50px;
    right: 20px;
}

.container-quienes-somos .contenido-absolute.col-left {
    bottom: 50px;
    left: 20px;
	z-index:10;
}

.container-quienes-somos .col-img-left {
    margin-left: auto;
}

.container-quienes-somos .contenido-absolute h3 {
    font-size: clamp(20px, 5vw, 36px);
    color: var(--main-color);
}

.container-quienes-somos .contenido-absolute h3::after {
    content: '';
    display: block;
    width: 200px;
    height: 5px;
    background-color: var(--third-color);
    margin: 32px auto;
}

.container-quienes-somos .contenido-absolute .bloque-interior {
    border: 1px solid var(--grey-light);
    padding: 30px;
	display: flex;
    align-items: center;
	width: 100%;
    justify-content: center;
}

.container-quienes-somos .contenido-absolute .bloque-interior p {
    font-size: 20px;
    line-height: 120%;
    margin: 0;
}

.container-quienes-somos .texto-imagen-check p.strong {
    margin-bottom: 0;
    margin-top: 50px;
}

.container-quienes-somos .texto-imagen-check .box-check {
    margin-bottom: 8px;
}

.container-quienes-somos .texto-imagen-check .wp-block-button__link {
    margin-top: 24px;
}


.texto-imagen-check h2,
.texto-imagen-check h3{
    font-size: clamp(36px, 5vw, 52px);
    color: var(--main-color);
    margin: 24px 0;
}

.texto-imagen-check h4,
.texto-imagen-check h5{
    font-size: clamp(20px, 5vw, 36px);
    color: var(--accent-color);
    margin-bottom: 24px;
}

.texto-imagen-check .box-check p {
    font-size: 20px;
    line-height: 120%;
    margin: 0;
}

.texto-imagen-check p.strong {
    font-weight: 700;
}

.texto-imagen-check strong {
    line-height: 120%;
}


.texto-imagen-check .wp-block-button__link {
    background-color: var(--accent-color);
    color: var(--light-color);
    padding: 12px 16px;
    line-height: 120%;
}

.texto-imagen-check .wp-block-button__link:hover {
    color: var(--light-color);
    opacity: 0.8;
    ;
}

.texto-imagen-check .col-img figure {
    height: 100%;

}


/* IGLESIA */

.container-iglesia .cabecera-texto-cursiva {
    padding: 100px 0;
}

.container-iglesia .cabecera-texto-cursiva h2 {
    font-size: clamp(36px, 5vw, 52px);
    color: var(--main-color);
    margin: 0 24px 24px 24px;
}

.container-iglesia .cabecera-texto-cursiva h2 em {
    line-height: 1;
    font-style: italic;
}

.container-iglesia .cabecera-texto-cursiva p {
    line-height: 120%;
    color: var(--main-color);
    font-size: 20px;
    margin:0 auto;
	width:80%;
}

.container-iglesia .cabecera-texto-cursiva .wp-block-button__link {
    background-color: transparent;
    color: var(--accent-color);
    border: 2px solid var(--accent-color);
    padding: 12px 16px;
    line-height: 120%;
}

.container-iglesia .cabecera-texto-cursiva .wp-block-button__link:hover {
    color: var(--accent-color);
    opacity: 0.8;
}


.container-iglesia .texto-imagen-check .col-img figure{
height:600px;
}

.container-iglesia section.modelo-pedagógico {
    background-color: var(--main-color);

}

.container-iglesia section.modelo-pedagógico h2 {
    font-size: clamp(36px, 5vw, 52px);
    color: var(--light-color);
    margin-bottom: 24px;
}

.container-iglesia section.modelo-pedagógico p {
    font-size: 20px;
    color: var(--light-color);
    line-height: 120%;
}

.container-iglesia section.modelo-pedagógico .fila-absolute-centrado {
    padding: 0;
    margin-top: 80px;
    justify-content: center;
}

.container-iglesia .contenido-absolute .bloque-interior p {
    color: var(--main-color);
}

.container-iglesia .pre-footer {
    min-height: 700px;
}

.container-iglesia .pre-footer h3 {
    margin-bottom: 32px;
    font-size: clamp(36px, 5vw, 52px) !important;
    line-height: 1;
    ;
}

.container-iglesia .pre-footer .wp-block-button__link {
    padding: 12px 16px;
    font-size: 20px;
    font-weight: 500;
}

/* BLOG NOTICIAS Y EVENTOS */

main.blog .container.contenido {
    padding: 80px 0 120px 0;
}

main.blog .cabecera {
    background-color: var(--third-color);
}



main.blog .cabecera .hero-overlay {
    background-color: transparent;
}

main.blog .cabecera h1 {
    color: var(--main-color);
    font-size: clamp(26px, 5vw, 56px);
}

main.blog .cabecera .breadcrumbs a {
    text-decoration: underline;
    color: var(--accent-color) !important;
}

main.blog .cabecera .breadcrumbs a:hover {
    opacity: 0.8;
}

main.blog .cabecera .breadcrumbs span {
    color: var(--main-color) !important;
}

main.blog .card {
    padding: 40px;
    border: 1px solid #EEE;
    box-shadow: 0px 4px 30px 0px rgba(0, 0, 0, 0.04);
    gap: 28px;
    position: relative;
    border-bottom: 5px solid var(--accent-color);
}

main.blog .card .card-body span.date {
    flex-flow: column;
    align-items: start;
    gap: 0px;
    padding: 12px 32px;
    background-color: var(--accent-color);
    color: var(--light-color);
    position: absolute;
    top: 84px;
    left: 0;
}

main.blog .card .card-body span.date p.dia {
    margin: 0;
    font-size: 32px;
    font-weight: 700;
    line-height: 1;
}

main.blog .card .card-body span.date p.mes-ano {
    margin: 0;
    font-size: 18px;
    text-transform: uppercase;
    line-height: 1;
}

main.blog .card .card-body span {
    display: flex;
    align-items: center;
    gap: 17px;
    margin-bottom: 28px;
    ;
}

main.blog .card .card-body span .hora-lugar,
main.blog .card .card-body span .etiqueta {
    display: flex;
    align-items: center;
    justify-content: start;
    gap: 4px;
	flex-wrap:wrap;
}

main.blog .card .card-body span .hora-lugar p,
main.blog .card .card-body span .etiqueta p {
    font-size: 18px;
    color: var(--dark-grey-color);
    font-weight: 400;
    margin: 0;
	line-height:120%;
}

main.blog .card .card-img-top {
    height: 450px;

}

main.blog .card .card-img-top img {
    height: 100%;
    width: 100%;
    object-fit: cover;
}

main.blog .card h4.card-title {
    font-size: clamp(24px, 5vw, 36px);
    color: var(--main-color);
    margin-bottom: 10px;
    font-weight: 600;
}

main.blog .card .card-text {
    font-size: 20px;
    color: var(--dark-grey-color);
    margin-bottom: 32px;
    line-height: 120%;

}

main.blog .card a.leer-mas {
    font-size: 20px;
    color: var(--accent-color);
    margin: 0;
}

main.blog .card a.leer-mas:hover {
    opacity: 0.8;
}

main.blog .row>.post:nth-child(1) {
    width: 100% !important;
}

main.blog .row>.post:nth-child(1) .card {
    padding: 50px;
    border-bottom-color: var(--accent-color);
}

main.blog .row>.post:nth-child(1) .card-body span.date p.date {
    font-size: 40px;
}

main.blog .row>.post:nth-child(1) .card-body span.date p.tag {
    font-size: 20px;
}

/* single blog */

main.single .content-single {
    padding: 100px 0;
}

main.single .blog-single-content {
    position: relative;
    padding: 50px 40px;
    border: 1px solid #EEE;
    box-shadow: 0px 4px 30px 0px rgba(0, 0, 0, 0.04);
    border-bottom: 5px solid var(--accent-color);
}

main.single .blog-single-content ._description_box{
margin-top:24px;
}

main.single .thumbnail-single-block{
height:800px;
}

main.single .thumbnail-single-block img {
    width: 100%;
    height: 100%;
	object-fit:cover;
    display: block;
}

main.single span.date {
    flex-flow: column;
    align-items: start;
    gap: 0px;
    padding: 12px 32px;
    background-color: var(--accent-color);
    color: var(--light-color);
    position: absolute;
    top: 84px;
    left: 0;
}

main.single span.date p {
    margin: 0;
}

main.single span.date p.dia {
    margin: 0;
    font-size: 32px;
    font-weight: 700;
    line-height: 1;
}

main.single span.date p.mes-ano {
    text-transform: uppercase;
    font-size: 20px;
    font-weight: 700;
    margin: 0;
    line-height: 1;
}

main.single span.lugar-etiqueta {
    display: flex;
    align-items: center;
    gap: 17px;
    margin: 28px 0;
}

main.single span .hora-lugar,
main.single span .etiqueta {
    display: flex;
    align-items: center;
    justify-content: start;
    gap: 4px;
	flex-wrap:wrap;
}

main.single span .hora-lugar p,
main.single span .etiqueta p {
    font-size: 18px;
    color: var(--dark-grey-color);
    font-weight: 400;
    margin: 0;
	line-height:120%;
}

main.single h2,
main.single h3,
main.single h4 {
    font-size: clamp(24px, 5vw, 36px);
    line-height: 120%;
    margin: 24px 0;
    font-weight: 600;
    color: var(--main-color);
}

main.single .the-content p,
main.single .the-content a,
main.single .the-content li{
    font-size: 20px;
    color: var(--dark-grey-color);
    line-height: 140%;
}

main.single .the-content li{
margin-bottom:8px;
}

main.single .the-content p {
    margin-bottom: 16px;
}



main.single .the-content a {
    text-decoration: underline;
    word-break: break-all;
}

main.single .the-content a:hover {
    opacity: 0.6;
}

main.single .the-content ul,
main.single .the-content ol {
    padding-left: 1em;
    list-style-position: outside;
    list-style: initial;
}

main.single .the-content ul *{
	 list-style: initial;
}

main.single .the-content ol *{
	list-style: initial;
    list-style-type: decimal;
}



/* paginacion */

nav.blog-pagination {
    padding: 50px 0;
}

.page-numbers a.page-numbers {
    padding: 12px;
    border: 1px solid var(--black-color);
    color: var(--black-color);
}

.page-numbers a.next.page-numbers {
    color: var(--accent-color);
    border: 1px solid var(--accent-color);
}

.page-numbers span.page-numbers.current {
    padding: 12px;
    color: var(--light-color);
    border: 1px solid var(--black-color);
    background-color: var(--black-color);
}

.page-numbers a.page-numbers:hover {
    opacity: 0.7;
}

/* sidebar */

.wp-block-latest-posts__featured-image img{
width:90px;
}

aside.sidebar .widget_search,
aside.sidebar .widget_block,
aside.sidebar .widget_categories {
    padding: 34px;
    margin-bottom: 40px;
    background-color: var(--light-color);
    border: 1px solid #EEE;
    box-shadow: 0px 4px 30px 0px rgba(0, 0, 0, 0.04);
    border-radius: 16px;
}

.sidebar .widget ul li{
	line-height:120%
}

aside.sidebar .widget_search label {
    display: none;
}

aside.sidebar .widget_search input {
    border-width: 1px 0 1px 1px;
    border-color: var(--grey-input);
    border-style: solid;
}

aside.sidebar .widget_search input:focus {
    border-color: var(--dark-grey-color);
    box-shadow: 0 0 0 2px rgba(0, 119, 204, 0.15);
    outline: none;
}

aside.sidebar .wp-block-search__button {
    position: relative;
    color: transparent;
    /* Oculta el texto visualmente */
    background: none;
    border: none;
    width: 60px;
    height: 60px;
    padding: 0;
    background-color: var(--main-color);
    margin: 0;
}

.wp-block-search__button::before {
    content: "\f002";
    /* Unicode de la lupa */
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-size: 22px;
    color: white;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

aside.sidebar .wp-block-search__button:hover {
    opacity: 0.8;
}

aside.sidebar h2.wp-block-heading,
aside.sidebar h2.widgettitle {
    font-size: 24px;
    font-weight: 400;
    margin-bottom: 24px;
    color: var(--main-color);
    padding-bottom: 8px;
    border-bottom: 1px solid #E0E0E0;
}

.sidebar .widget ul {
    display: flex;
    flex-flow: column;
    gap: 16px;
}

aside.sidebar .wp-block-latest-posts__featured-image {
    margin-right: 8px;
}



aside.sidebar .wp-block-latest-posts a {
    font-weight: 400;
    color: var(--main-color) !important;
    font-size: 18px;
    line-height: 120%;
}

aside.sidebar .wp-block-latest-posts a:hover {
    opacity: 0.8;
    ;
}

aside.sidebar .wp-block-latest-posts time {
    color: var(--main-color) !important;
    text-transform: uppercase;
    font-weight: 700;
    font-size: 14px;
}

li.widget.widget_categories ul {
    padding: 0;
    margin: 0;
    list-style: none;
}

ul.wp-block-categories-list li.cat-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: white;
	display: flex;
    align-items: stretch;

    transition: 0.3s ease;
}

ul.wp-block-categories-list li.cat-item a {
    color: var(--dark-grey-color);
    padding: 12px 16px;
    font-weight: 400;
    font-size: 18px;
    text-decoration: none;
    flex-grow: 1;
    line-height: 1.2;
    border-width: 1px 0 1px 1px;
    border-color: var(--grey-input);
    border-style: solid;
    height: auto;
}

ul.wp-block-categories-list li::after {
    content: "\f061";
    /* Unicode de Font Awesome → flecha derecha */
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    background-color: var(--main-color);
    color: white;
    padding: 10px;
    border-radius: 0;
    display: inline-block;
    width: 50px;
	min-width:50px;
    height: auto;
    text-align: center;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
}

ul.wp-block-categories-list li.cat-item:hover a,
ul.wp-block-categories-list li.cat-item:hover::after {
    opacity: 0.8;
}

/* POR QUE NOSOTROS */


.container-porque-nosotros .texto-imagen .col-img {
    height: auto;
	display: flex;
    align-items: center;
}


.texto-imagen {
    padding: 100px 0;
}



.texto-imagen .col-img figure {
    height: 100%;
	min-height:500px;
	max-height: 690px;
	width:100%;

}

.texto-imagen .col-img figure img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 12px;
}

.texto-imagen .col-contenido {
    display: flex;
    flex-flow: column;
    justify-content: center;
}

.texto-imagen .col-contenido h3 {
    font-size: clamp(36px, 5vw, 52px);
    line-height: 1;
    margin: 24px 0;
    color: var(--main-color);
}

.texto-imagen .col-contenido h4{
 font-size: clamp(24px, 5vw, 36px);
	color: var(--accent-color);
	line-height: 1;
	font-weight:700;
	margin: 24px 0;
}

.texto-imagen .col-contenido p,
.texto-imagen .col-contenido li,
.texto-imagen .col-contenido strong,
.texto-texto  p,
.texto-texto  li,
.texto-texto strong{
    font-size: 20px;
    line-height: 130%;
    color: var(--main-color);
}

.texto-imagen .col-contenido li,
.texto-texto li{
margin-bottom:8px;
}

.texto-imagen strong {
    line-height: 120%;
}

.texto-imagen .col-contenido .box-contenido {
    padding: 24px;
    border-radius: 12px;
    border: 1px solid #DBDBDB;
    margin-bottom: 16px;
	background-color:white;
}

.texto-imagen .col-contenido .box-contenido .wp-block-group__inner-container {
    display: flex;
    flex-flow: column;
    gap: 12px;
}

.texto-imagen .col-contenido .box-contenido strong {
    margin-bottom: 12px;
    color: var(--main-color);
    line-height: 120%;
    font-size: 24px;
}

.texto-imagen .col-contenido .box-contenido p {
    color: var(--dark-grey-color);
    margin: 0;
}


/* CALIDAD */

.perfil-alumnado {
    padding-top: 100px;
    background-color: var(--accent-color);

}

.perfil-alumnado h2 {
    font-size: clamp(36px, 5vw, 52px);
    color: var(--light-color);
    margin-bottom: 24px;
}

.perfil-alumnado p,
.perfil-alumnado strong {
    font-size: 20px;
    color: var(--light-color);
    line-height: 130%;

}

.perfil-alumnado .fila {
    flex-wrap: wrap;
    gap: 0;
    margin-top: 80px;
    align-items: stretch;
}

.perfil-alumnado .fila .box-check {
    padding: 24px;

}

.perfil-alumnado .fila .box-check p {
    margin: 0;
}

.perfil-alumnado .fila .box-check .wp-block-group__inner-container:first-child {
    gap: 12px;
    flex-flow: row;
    align-items: start;
    display: flex;
}

.perfil-alumnado .fila .box-check figure {
    width: 32px;
    height: 32px;
    display: flex;
    justify-content: center;
    flex-shrink: 0;
}

.perfil-alumnado .bg-perfil-alumno img {
    width: 100%;
}

.container-calidad .texto-imagen .col-img img {
    object-fit: cover;
}

.container-calidad .texto-imagen .col-img .contain img{
	object-fit: contain;
}

.container-calidad .texto-imagen strong {
    line-height: 120%;
}

.container-calidad .texto-imagen h4 {
    font-size: clamp(20px, 5vw, 36px);
    color: var(--accent-color);
    line-height: 1;
    margin-bottom: 24px;
    font-weight: 600;
}

.texto-imagen .box-check .wp-block-group__inner-container:first-child {
    display: flex;
    flex-flow: row;
    align-items: center;
    gap: 12px;
}

.texto-imagen .box-check {
    margin-bottom: 16px;
}

.texto-imagen .box-check figure {
    width: 40px;
    height: 40px;
    display: flex;
    justify-content: center;
    flex-shrink: 0;
}

.texto-imagen .box-check p {
    margin: 0;
}

.texto-imagen-check .col-img figure.contain img {
    object-fit: contain;
}

.container-calidad .pre-footer .pretitulo {
    text-transform: uppercase;
    font-weight: 600;
    font-size: 20px;
    line-height: 120%;

}

.container-calidad .pre-footer h3 {
    font-size: clamp(24px, 5vw, 52px) !important;
    margin-bottom: 32px;
    line-height: 1.2;
}

.pre-footer .wp-block-button__link {
    background-color: var(--accent-color);
    padding: 16px 24px;
    font-size: 24px;
    font-weight: 500;
    line-height: 120%;
}

.pre-footer .wp-block-button__link:hover {
    color: var(--light-color);
    opacity: 0.8;
}


/* PROYECTO PEDAGÓGICO */

.container-proyecto-pedagogico .encabezado-parrafo {
    padding: 100px 0;
}

.container-proyecto-pedagogico p{
line-height:130%;
}

.container-proyecto-pedagogico .encabezado-parrafo h2 {
    font-size: clamp(36px, 5vw, 52px);
    color: var(--main-color);
    margin-bottom: 24px;
    line-height: 1;
}

.container-proyecto-pedagogico .encabezado-parrafo p {
    line-height: 120%;
    font-size: 20px;
    color: var(--main-color);
}

.container-proyecto-pedagogico .texto-imagen-check .col-img figure {
    height: 100%;
}

.container-proyecto-pedagogico .texto-imagen-check .col-img figure img {
    max-height: none;
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.container-proyecto-pedagogico .texto-imagen-check h4 {
    margin: 24px 0;
}

.texto-imagen-check em{
line-height:1.2;
}

 .texto-imagen-check ul *,
 .texto-imagen-check ol *,
.texto-imagen ul *,
 .texto-imagen ol *,
.texto-texto ul *,
 .texto-texto ol *{
	list-style:initial;
	 font-size: 20px;
	 color: var(--main-color);
	
}

 .texto-imagen-check ul,
 .texto-imagen-check ol,
 .texto-imagen ul,
 .texto-imagen ol,
.texto-texto ul ,
 .texto-texto ol {
	list-style:initial;
	padding-left: 1em;
	list-style-position: outside;
	 margin-bottom:16px;
}

 .texto-imagen-check ol *,
.texto-imagen ol *,
 .texto-texto ol *{
	list-style-type: decimal;
	 padding-left: 1em;
}





.container-proyecto-pedagogico .texto-imagen-check p,
.container-proyecto-pedagogico .texto-imagen-check li,
.container-proyecto-pedagogico .texto-imagen-check a{
    margin-bottom: 12px;
	color: var(--main-color);
	line-height:130%;
	font-size:20px;
}

.container-proyecto-pedagogico .bloque-centrado {
    padding: 100px 0;
    background-color: var(--accent-color);
}

.container-proyecto-pedagogico .bloque-centrado figure {
    margin-bottom: 24px;
}

.container-proyecto-pedagogico .bloque-centrado h3 {
    font-size: clamp(36px, 5vw, 52px);
    color: var(--light-color);
    margin-bottom: 24px;
}

.container-proyecto-pedagogico .bloque-centrado p {
    color: var(--light-color);
    font-size: 20px;
    line-height: 120%;
    margin: 0;
}

.container-proyecto-pedagogico .wp-block-cover {
    min-height: 940px;
}

.container-proyecto-pedagogico .wp-block-cover .p-principal {
    font-size: 52px;
    font-weight: 700;
    margin-bottom: 24px;
}

.container-proyecto-pedagogico .wp-block-cover p {
    font-size: 20px;
    line-height: 120%;
    margin-bottom: 32px;
}

.container-proyecto-pedagogico .wp-block-cover .wp-block-button__link {
    padding: 12px 16px;
    background-color: var(--accent-color);
    font-size: 20px;
}

.container-proyecto-pedagogico .wp-block-cover .wp-block-button__link:hover {
    color: var(--light-color);
    opacity: 0.8;
}

.container-proyecto-pedagogico .otros-proyectos {
    background-color: var(--accent-color);
    padding-top: 100px;
}

.container-proyecto-pedagogico .otros-proyectos .pretitulo {
    text-transform: uppercase;
    color: var(--light-color);
    font-size: 20px;
    margin-bottom: 24px;
    line-height: 120%;
}

.container-proyecto-pedagogico .otros-proyectos h3 {
    font-size: clamp(36px, 5vw, 52px);
    color: var(--light-color);
    margin-bottom: 0;
}

.container-proyecto-pedagogico .otros-proyectos .fila {
    flex-wrap: wrap;
    gap: 0;
    margin-top: 80px;
    justify-content: center;
    align-items: stretch;
}

.container-proyecto-pedagogico .otros-proyectos .bloque-card-proyectos {
    margin-bottom: 100px;
    padding: 0 8px;
}

.container-proyecto-pedagogico .otros-proyectos .bloque-card-proyectos .card {
    border: none;
    box-shadow: var(--shadowBox);
    border-radius: 12px;
	
}

.container-proyecto-pedagogico .otros-proyectos .bloque-card-proyectos .card:hover{
box-shadow: 0px 9px 27.2px 0px rgba(0, 0, 0, 0.25)}

.container-proyecto-pedagogico .otros-proyectos .bloque-card-proyectos .card-header {
    height: 250px !important;
    border-radius: 12px 12px 0 0;
}

.container-proyecto-pedagogico .otros-proyectos .bloque-card-proyectos .card-body {
    padding: 24px;
    border-radius: 0 0 12px 12px;
	gap:24px;
	flex: 0 0 auto;
	
}

.container-proyecto-pedagogico .otros-proyectos .bloque-card-proyectos .card-body h5 {
    font-size: clamp(20px, 5vw, 36px);
    color: var(--main-color);
    line-height: 0.8;
    border-bottom: 4px solid var(--third-color);
    font-weight: 700;
	margin:0;
}

.container-proyecto-pedagogico .otros-proyectos .bloque-card-proyectos .card-body p {
    font-size: 20px;
    line-height: 120%;
    color: var(--black-color);
	margin:0;

}

.container-proyecto-pedagogico .otros-proyectos .bloque-card-proyectos .card-body .btn {
    width: fit-content;
    padding: 12px 24px;
    background-color: var(--accent-color);
    color: var(--light-color);
    border-radius: 999px;
    font-size: 20px;
}

.container-proyecto-pedagogico .otros-proyectos .bloque-card-proyectos .card-body .btn:hover {
    opacity: 0.8;
}

.container-proyecto-pedagogico .otros-proyectos .bloque-card-proyectos .card-body .btn:focus {
    box-shadow: none;
    outline: none;
}

/* OTROS PROYECTOS */



.container-proyectos .texto-imagen .pretitulo {
    font-size: 20px;
    line-height: 120%;
    text-transform: uppercase;
    color: var(--accent-color);
    margin-bottom: 24px;
}

.container-proyectos .texto-imagen h2,
.container-proyectos .texto-imagen h3 {
    font-size: clamp(36px, 5vw, 52px);
    color: var(--main-color);
    margin-bottom: 24px;
    line-height: 1;
    margin-top: 0;
}

.container-proyectos .texto-imagen h4 {
    font-size: clamp(20px, 5vw, 36px);
    color: var(--accent-color);
    margin-bottom: 40px;
    font-weight: 700;
    line-height: 1.2;
}

/* .container-proyectos .texto-imagen p {
    margin: 0;
} */

.container-proyectos .texto-imagen strong {
    line-height: 130%;
    margin-top: 24px;
    
}


/* SERVICIOS */

.main-servicios .cabecera-archive-servicios {
    padding-top: 177px;
}

.main-servicios .cabecera-archive-servicios .col-12 {
    padding: 100px 0;
}

.main-servicios .cabecera-archive-servicios .h1 {
    font-size: clamp(26px, 5vw, 56px);
    color: var(--main-color);
    line-height: 1;
}

.main-servicios .cabecera-archive-servicios p#breadcrumbs a {
    font-size: 20px;
    color: var(--third-color);
    margin: 0;
    text-decoration: underline;
}

.main-servicios .cabecera-archive-servicios p#breadcrumbs span {
    font-size: 20px;
    color: var(--main-color);
    margin: 0;
}

.main-servicios .cabecera-archive-servicios p#breadcrumbs a:hover {
    opacity: 0.8;
}

.main-servicios .fila-servicios {
    justify-content: center;
    gap: 0;
}

.main-servicios .fila-servicios .col-lg-4 {
    margin-bottom: 100px;
    padding: 0 8px;

}

.main-servicios .fila-servicios .card {

    box-shadow: var(--shadowBox);
    border-radius: 12px;
}

.main-servicios .fila-servicios .card:hover{
	box-shadow: 0px 9px 27.2px 0px rgba(0, 0, 0, 0.25);
}

.main-servicios .fila-servicios .card-header {
    height: 300px;
    border-radius: 12px 12px 0 0;
}

.main-servicios .fila-servicios .card-body {
    padding: 24px;
    border-radius: 0 0 12px 12px;
    gap: 24px;
}

.main-servicios .fila-servicios .card-body h3 {
    font-size: clamp(20px, 5vw, 36px);
    color: var(--main-color);

    line-height: 1;
    line-height: 0.8;
    border-bottom: 4px solid var(--third-color);
    font-weight: 700;
}

.main-servicios .fila-servicios .card-body p {
    font-size: 20px;
    line-height: 120%;
    color: var(--black-color);
	margin:0;

}

.main-servicios .fila-servicios .card-body .btn {
    width: fit-content;
    padding: 12px 24px;
    background-color: var(--accent-color);
    color: var(--light-color);
    border-radius: 999px;
    font-size: 20px;
    border: none;
}

.main-servicios .fila-servicios .card-body .btn:hover {
    opacity: 0.8;
}

.main-servicios .fila-servicios .card-body .btn:focus {
    box-shadow: none;
    outline: none;
}

.main-servicios .container-contacto.container {
    padding: 100px 0;
}



/* SINGLE SERVICIOS */

main.servicio .cabecera.hero-container-fluid {
    border-bottom: none;
}

main.servicio .descripcion-servicio {
    padding: 100px 0;
    background-color: var(--accent-color);
    color: var(--light-color);
}

main.servicio .texto-imagen .col-img figure{
	min-height:400px;
	max-height:700px;
}

main.servicio .descripcion-servicio h2 {
    font-size: clamp(36px, 5vw, 52px);
    margin-bottom: 50px;
}

main.servicio .descripcion-servicio h2::after {
    content: "";
    display: block;
    width: 450px;
    margin: 0 auto;
    height: 4px;
    background-color: var(--third-color);
    margin-top: 24px;
}

main.servicio .descripcion-servicio p {
    font-size: 20px;
    line-height: 130%;
}

 

main.servicio .texto-texto {
    padding: 100px 0;
    ;
}

main.servicio .texto-texto h3 {
    font-size: clamp(36px, 5vw, 52px);
    color: var(--main-color);
    line-height: 1;
    margin-bottom: 24px;
}

main.servicio .texto-texto a{
text-decoration:underline;
line-height:130%;	
}

main.servicio .texto-texto a:hover{
opacity:0.8;
color: var(--main-color);}

main.servicio .texto-texto p {
    font-size: 20px;
    line-height: 130%;
    color: var(--main-color);
}

main.servicio .texto-texto .col-contenido.border-right {
    border-right: 5px solid var(--accent-color);
	padding-right:100px;
	padding-left:0;
}

main.servicio .texto-texto .col-contenido{
	padding-right:0;
	padding-left:100px;
}

main.servicio .texto-imagen p a {
    text-decoration: underline;
    font-weight: 700;
    line-height: 120%;
}

main.servicio .texto-imagen p a:hover {
    opacity: 0.8;
    color: var(--main-color);
}

main.servicio .texto-imagen a.wp-block-button__link {
    background-color: transparent;
    color: var(--accent-color);
    border: 2px solid var(--accent-color);
    padding: 12px 16px;
    font-size: 20px;
	text-decoration:none;
}

main.servicio .texto-imagen a.wp-block-button__link:hover {
    color: var(--accent-color);
    opacity: 0.8;
}

/* CANAL DENUNCIAS */

.container-canal-denuncias section.principal {
    padding: 100px 0;
}

.container-canal-denuncias section.principal h2 {
    color: var(--main-color);
    font-size: clamp(36px, 5vw, 52px);
    line-height: 1;
    margin-bottom: 50px;
}

.container-canal-denuncias section.principal h2::after {
    content: "";
    display: block;
    width: 450px;
    margin: 0 auto;
    height: 4px;
    background-color: var(--third-color);
    margin-top: 24px;
}

.container-canal-denuncias section.principal p {
    font-size: 20px;
    line-height: 120%;
    color: var(--main-color);
}

.container-canal-denuncias section.principal .fila {
    padding: 80px 0;
    align-items: stretch;
}

.container-canal-denuncias section.principal .fila .box {
    padding: 40px;
    box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.10);
    border-radius: 12px;
}

.container-canal-denuncias section.principal .fila .box .wp-block-group__inner-container {
    display: flex;
    flex-flow: column;
    align-items: start;
    justify-content: start;
    gap: 24px;
}

.container-canal-denuncias section.principal .wp-block-buttons{
gap:24px;
}

.container-canal-denuncias .gform-theme--foundation .gform_fields {
    row-gap: 0px !important;
    column-gap: 0px !important;
}

.container-canal-denuncias .gform-theme--foundation .gfield_checkbox {
    margin-bottom: 16px;
}

.container-canal-denuncias section.principal .fila .box h4 {
    font-size: clamp(24px, 5vw, 36px);
    color: var(--main-color);
    font-weight: 700;

}

.container-canal-denuncias section.principal .fila .box p {
    margin: 0;
}

.container-canal-denuncias section.principal a {
    padding: 12px 16px;
    font-size: 20px;
    color: var(--accent-color);
    background-color: transparent;
    border: 2px solid var(--accent-color);
    font-weight: 500;
}

.container-canal-denuncias section.principal .solid a {
    background-color: var(--accent-color);
    color: var(--light-color);
}

.container-canal-denuncias section.principal a:hover {
    opacity: 0.8;
}

.container-canal-denuncias section.formulario-denuncia {
    padding: 100px 0;
}

.container-canal-denuncias section.formulario-denuncia figure {
    width: 350px;
}

.container-canal-denuncias section.formulario-denuncia .gform_wrapper {
    background-color: var(--light-color);
    padding: 50px;
    border-radius: 12px;
    border: 1px solid #D4D4D4;
    box-shadow: 0px 4px 22.3px 0px rgba(0, 0, 0, 0.15);
    margin-top: 80px;
}

.container-canal-denuncias section.formulario-denuncia .gform_wrapper h2,
.container-canal-denuncias section.formulario-denuncia .gform_wrapper h3 {
    color: var(--main-color);
    font-size: clamp(24px, 5vw, 36px);
    line-height: 1;
    margin-bottom: 24px;
}

.container-canal-denuncias h2.gform_submission_error.hide_summary{
	font-size: 24px !important;
    margin: 0 !important;
}

.container-canal-denuncias section.formulario-denuncia .gform_wrapper p {
    font-size: 20px;
    line-height: 120%;
    color: var(--main-color);
    margin-bottom: 16px;
}

.container-canal-denuncias section.formulario-denuncia .gform_wrapper p.gform_description {
    margin-bottom: 24px;
}

.container-canal-denuncias section.formulario-denuncia .gform_wrapper .gfield {
    margin-bottom: 24px;
}

.container-canal-denuncias section.formulario-denuncia .gform_wrapper .gfield--type-html {
    margin: 0;
    line-height: 120%;
    display: flex;
    flex-flow: column;
    gap: 24px;
}

.gfield--type-section{
    margin: 50px 0 50px 0 !important;
}

.gfield--type-consent{
margin:0 !important;}

.container-canal-denuncias section.formulario-denuncia .gform_wrapper .gfield--type-html p,
.container-canal-denuncias section.formulario-denuncia .gform_wrapper .gfield--type-html a,
.container-canal-denuncias section.formulario-denuncia .gform_wrapper .gfield--type-html span,
.container-canal-denuncias section.formulario-denuncia .gform_wrapper .gfield--type-html h3,
.container-canal-denuncias section.formulario-denuncia .gform_wrapper .gfield--type-html h4 {
    margin: 0;
}

.container-canal-denuncias section.formulario-denuncia .gform_wrapper button:focus{
box-shadow:none !important;
outline:none !important;
}

.container-canal-denuncias fieldset.gfield_repeater_container legend.gfield_label{
color: var(--accent-color) !important;
margin-bottom:24px !important;
}

.gform-theme--framework .gfield--type-repeater .gfield_repeater_wrapper{
border:none !important;
padding:0 !important;
}

.gform-theme--framework .gfield--type-repeater .gfield_repeater_buttons button{
	font-size:20px !important;
	width:35px !important;
	height:30px !important;
	border-radius:100% !important;
}

.gfield_repeater .gfield_repeater_cell{
margin: 0 0 24px 0 !important!;
}


.container-canal-denuncias section.formulario-denuncia .gform_wrapper .acciones-repetidor {
    display: flex;
    align-items: center;
    gap: 12px;
}

.container-canal-denuncias section.formulario-denuncia .gform_wrapper .gfield--type-html button[type="button"]:focus {
    box-shadow: 0 0 2px rgba(0, 0, 0, 0.5);
    outline: none;
    opacity: 0.7;
}

.container-canal-denuncias section.formulario-denuncia .gform_wrapper .gfield--type-html button[type="button"]:hover {
    opacity: 0.7;
}


.container-canal-denuncias section.formulario-denuncia .gform_wrapper .gfield_label,
.container-canal-denuncias section.formulario-denuncia .gform_wrapper .gfield--type-html label,
.gform-theme--framework .field_sublabel_above .gform-field-label--type-sub
{
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 16px;
    line-height: 120%;
    color: var(--main-color);
}

.container-canal-denuncias section.formulario-denuncia .gform_wrapper .gfield select,
.container-canal-denuncias section.formulario-denuncia .gform_wrapper .gfield input[type="text"],
.container-canal-denuncias section.formulario-denuncia .gform_wrapper .gfield input[type="email"],
.container-canal-denuncias section.formulario-denuncia .gform_wrapper .gfield input[type="file"],
.container-canal-denuncias section.formulario-denuncia .gform_wrapper .gfield input[type="tel"]{
    font-size: 18px;
    border: 1px solid var(--grey-input);
    color: var(--black-color);
    height: 45px;
    display: flex;
    align-items: center;
}

.container-canal-denuncias section.formulario-denuncia .gform_wrapper .ginput_container_textarea,
.gform-theme--foundation .gfield textarea.large{
    border-color: var(--grey-input) !important;
    color: var(--black-color);
    font-size: 18px;
    outline: none !important;
    box-shadow: none !important;
}

.container-canal-denuncias section.formulario-denuncia .gform_wrapper .gfield select:focus,
.container-canal-denuncias section.formulario-denuncia .gform_wrapper .gfield input[type="text"]:focus,
.container-canal-denuncias section.formulario-denuncia .gform_wrapper .gfield input[type="email"]:focus,
.container-canal-denuncias section.formulario-denuncia .gform_wrapper .ginput_container_textarea:focus,
.container-canal-denuncias section.formulario-denuncia .gform_wrapper .gfield input[type="file"]:focus {
    border-color: #999 !important;
    box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.05) !important;
    /* efecto suave */
    outline: none !important;
}

.container-canal-denuncias section.formulario-denuncia h3.gsection_title {
    display: none;
}

.container-canal-denuncias section.formulario-denuncia span.uppercase {
    font-size: 20px;
    line-height: 120%;
    color: var(--main-color);
    font-weight: 600;
    margin-bottom: 16px;
}

.container-canal-denuncias section.formulario-denuncia h4 {
    color: var(--accent-color);
    font-size: 20px;
    font-weight: 600;
    line-height: 1;
    margin-bottom: 24px;
}

.container-canal-denuncias section.formulario-denuncia .h4 {
    color: var(--accent-color);
    font-size: 20px;
    font-weight: 600;
    line-height: 1;
    margin: 24px 0;
}

.container-canal-denuncias section.formulario-denuncia small {
    font-size: 16px;
    line-height: 110%;
    color: var(--main-color);
}

.container-canal-denuncias section.formulario-denuncia .gchoice label {
    font-size: 16px;
    color: var(--main-color);
    line-height: 120%;
    margin-left: 8px;
}

.gchoice input.gfield-choice-input{
    width: 16px;
    height: 16px;
}

.gchoice input.gfield-choice-input:focus,
.gchoice input.gfield-choice-input:active,
.gform-theme--framework input[type=checkbox]:active,
.ginput_container.ginput_container_phone input:active,
.gform-theme--framework input[type=checkbox]:focus,
.ginput_container.ginput_container_phone input:focus{
box-shadow:none !important;
outline:none !important;
}


.container-canal-denuncias section.formulario-denuncia .gchoice label a {
    font-weight: 600;
    line-height: 120%;
}

.container-canal-denuncias section.formulario-denuncia .gform_footer .button {
    width: 100% !important;
    padding: 12px 16px !important;
    border-radius: 999px !important;
    background-color: var(--third-color) !important;
    color: var(--main-color) !important;
    font-size: 20px !important;
    font-weight: 500 !important;
}

.container-canal-denuncias section.formulario-denuncia .gform_footer .button:hover {
    opacity: 0.8 ipo !important;
}

.container-canal-denuncias section.informacion {
    padding: 100px 0;

}



.container-canal-denuncias section.informacion h3 {
    font-size: clamp(36px, 5vw, 52px);
    color: var(--main-color);
    line-height: 1.2;
    margin-bottom: 24px;
}

.container-canal-denuncias section.informacion h4 {
    text-transform: uppercase;
    line-height: 1.2;
    font-size: clamp(20px, 5vw, 36px);
    color: var(--accent-color);
    font-weight: 700;
    margin-bottom: 24px;
}

.container-canal-denuncias section.informacion p {
    font-size: 20px;
    line-height: 130%;
    color: var(--main-color);
}

/* VISITA VIRTUAL */

.container-visita-virtual {
    padding: 100px 0;
}

.container-visita-virtual .col-lg-4 {
    padding: 0 12px;
}

.card.card-visita {
    padding: 16px;
    border-radius: 12px;
    border: none;
    box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.10);
    gap: 40px;
    justify-content: space-between;
	margin-bottom:16px;
}

.card.card-visita .card-header {
    display: flex;
    flex-flow: column;
    gap: 16px;
    align-items: center;
    background-color: transparent;
    border: 0;
    text-align: center;
    padding: 0;
    margin: 0;

}

.card.card-visita .card-icon {
    height: 50px;
}

.card.card-visita .card-icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.card.card-visita .card-title {
    font-size: 36px;
    line-height: 1;
    color: var(--main-color);
    margin: 0;
}

.card.card-visita .card-video iframe {
    width: 100%;
    max-width: 1000px;
}

.card.card-visita .card-video-preview .iframe-wrapper {
    height: 260px;
}

.card.card-visita .card-video-preview .iframe-wrapper iframe {
    width: 100%;
    height: 100%;
    border-radius: 8px;
}

.card-video-preview {
    position: relative;
    cursor: pointer;
}

.card-video-preview::before {
    content: '';
    position: absolute;
    inset: 0;
    /* shorthand para top: 0; right: 0; bottom: 0; left: 0; */
    background: rgba(29, 49, 89, 0.3);
    /* transparente inicialmente */
    transition: background 0.3s ease;
    z-index: 2;
    pointer-events: none;
    /* deja pasar clics al iframe */
    border-radius: 8px;
}

.card-video-preview:hover::before {
    background: rgba(29, 49, 89, 0.1);
    /* color al hacer hover */
}

.video-content {
    position: relative;
    width: 80%;
    height: 80%;
}

.video-content video-iframe {
    width: 100%;
    height: 100%;
}

.video-content .video-frame {
    width: 100%;
    height: 100%;
}

.close-overlay {
    position: absolute;
    top: -50px;
    right: -30px;
    font-size: 2rem;
    color: #fff;
    cursor: pointer;
}

.close-overlay:hover {
    opacity: 0.7;
}

.video-overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.85);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9999;
    padding: 2rem;
}

.video-frame iframe {
    max-width: 90vw;
    max-height: 80vh;
    width: 100%;
    height: 100%;
    border: none;
}


/* ETAPA EDUCATIVA Page*/


.container-etapas-educativas {
    padding: 0 0 100px 0;
}

.container-etapas-educativas .card-etapa {
    height: 650px;
    display: flex;
    align-items: end;
    padding: 0;
    border-radius: 8px;
}

.container-etapas-educativas .card-etapa .wp-block-cover__inner-container {
    padding: 24px;
    z-index: 1;
    position: relative;
}

.container-etapas-educativas .card-etapa .wp-block-cover__inner-container::before {
    content: "";
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    background-color: var(--main-color);
    opacity: 0.6;
    position: absolute;
    z-index: 0;
}

.container-etapas-educativas .card-etapa .bloque-interior {
    position: relative;
    z-index: 1;
}

.container-etapas-educativas .card-etapa .bloque-interior .wp-block-group__inner-container {
    gap: 32px;
    display: flex;
    flex-flow: column;
    align-items: start;

}

.container-etapas-educativas .card-etapa .bloque-interior figure {
    height: 50px;
}

.container-etapas-educativas .card-etapa .bloque-interior h4 {
    font-size: clamp(20px, 5vw, 36px) !important;
    color: var(--light-color);
    font-weight: 700;
    line-height: 0.6;
    border-bottom: 5px solid var(--third-color);
    margin: 0;
	width:100%;
}

.container-etapas-educativas .card-etapa .bloque-interior p {
    font-size: 20px;
    line-height: 120%;
    margin: 0;
}

.container-etapas-educativas .card-etapa .bloque-interior .wp-block-button__link {
    background-color: var(--accent-color);
    color: var(--light-color);
    padding: 12px 24px;
    font-size: 20px;
    font-weight: 500;
    line-height: 120%;
}

.container-etapas-educativas .card-etapa .bloque-interior .wp-block-button__link:hover {
    opacity: 0.8;
    color: var(--light-color);
}

/* ETAPA single */

.container-etapa .texto-imagen-check p.pretitulo {
    text-transform: uppercase;
    margin: 0;
    color: var(--accent-color);
}



.container-etapa .texto-imagen-check .col-img figure{
height:100%;
max-height:690px;
}

.container-etapa .texto-imagen-check .col-contenido {
    display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: start;
}

.container-etapa .texto-imagen-check .col-contenido p{
line-height:130%;
}

.container-etapa .pre-footer {
    min-height: 800px;
}

.container-etapa .pre-footer h3 {
    font-size: clamp(36px, 5vw, 52px);
    margin-bottom: 24px;
    line-height: 1;

}

.container-etapa .pre-footer p {
    font-size: 20px;
    margin-bottom: 32px;
    line-height: 120%;
}

/* CONTACTO */

.container-contacto.container {
    padding: 150px 0;

}

.container-contacto.container .pretitulo {
    font-size: 20px;
    color: var(--accent-color);
    line-height: 120%;
}

.container-contacto.container h2 {
    font-size: clamp(36px, 5vw, 52px);
    color: var(--main-color);
    margin-bottom: 80px;
}

.container-contacto.container h2.gform_submission_error{
margin:0;}

.div-contacto .col-form {
    position: absolute;
    bottom: 60px;
    left: 50%;
    padding: 50px;
    background-color: var(--light-color);
    box-shadow: var(--shadowBox);
    border-radius: 12px;
    height: fit-content;
}

.div-contacto .col-form .gform-theme--foundation .gform_fields{
row-gap:16px;
}
.div-contacto {
    position: relative;
}

.div-contacto figure.wp-block-image {
    height: 900px;
    width: 100%;
    overflow: hidden;
}

.div-contacto figure.wp-block-image img {
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.div-contacto .gform_wrapper h2.gform_title {
    font-size: clamp(24px, 5vw, 36px);
    margin-bottom: 24px;
    color: var(--main-color);
}

.div-contacto .gform_wrapper .gfield {
    padding: 0;
}


.div-contacto .gform_wrapper .gfield textarea.large {
    height: 150px !important;
    padding: 16px 24px !important;
    border-color: var(--grey-input) !important;
    border-radius: 4px;
    font-size: 18px;

}

.div-contacto .gform_wrapper .gform-field-label--type-inline a{
	font-weight:400;
	text-decoration:underline;
}

.div-contacto .gform_wrapper .gform-field-label--type-inline a:hover{
opacity:0.8;
	color: var(--main-color);
}

.div-contacto .gform_wrapper .gfield input[type="text"],
.div-contacto .gform_wrapper .gfield input[type="email"] {
    padding: 16px 24px !important;
    border-color: var(--grey-input) !important;
    border-radius: 4px;
    font-size: 18px;
    height: 50px;
}

.div-contacto .gform_wrapper .gfield input::placeholder,
.div-contacto .gform_wrapper .gfield textarea.large::placeholder {
    color: var(--dark-grey-color);
}

.div-contacto .gform_wrapper .gfield input:focus,
.div-contacto .gform_wrapper .gfield textarea.large:focus {
    box-shadow: none !important;
    outline: none !important;
}

.div-contacto .gform_wrapper .gform_button {
    width: 100%;
    background-color: var(--accent-color);
    border-radius: 4px;
    padding: 12px 16px;
}

.div-contacto .gform_wrapper .gform_button:hover {
    opacity: 0.8;
}

.div-contacto .gform_footer {
    padding: 0 !important;
    margin: 24px 0 0 0 !important;
}

.gform-theme--foundation .gform_fields {
    column-gap: 16px !important;
}

.container-contacto .gform_wrapper .gform_button {
    width: 100% !important;
    border-radius: 999px !important;
    padding: 12px 16px;
    font-size: 20px !important;
    height: 50px !important;
}

.container-contacto .gform_wrapper .gform_button:hover {
    opacity: 0.8;
}



/* --- FOOTER  --- */

.imagen-arzobispado {
    height: 90px;
}

.imagen-arzobispado img {
    height: 100%;
}

footer .donativos-footer {
    position: relative;
    background-color: var(--third-color);
    padding: 60px 0;
    overflow: hidden;
}

footer .donativos-footer .fondo-donaciones {
    position: absolute;
    left: 200px;
    top: 50%;
    transform: translateY(-50%);
    width: 750px;
    height: auto;
    opacity: 0.2;
    z-index: 1;
}

footer .donativos-footer .container {
    position: relative;
    z-index: 2;
}

footer .donativos-footer .col-12 {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

footer .donativos-footer .col-12 a.btn {
    height: auto;
    align-self: center;
    font-size: 24px;
    color: var(--light-color);
    background-color: transparent;
    border: 1px solid var(--light-color);
    border-radius: 4px;
}

footer .donativos-footer .col-12 a.btn:hover {
    opacity: 0.8;
}

footer .donativos-footer .pretitulo {
    font-size: 20px;
    color: var(--light-color);
    font-weight: 600;
    margin: 0;

}

footer .donativos-footer h4 {
    font-size: clamp(36px, 5vw, 52px);
    color: var(--light-color);
    font-weight: 600;
    margin: 0;
    line-height: 120%;

}

footer #footer {
    background-color: var(--main-color) !important;
    color: var(--light-color);
    padding: 80px 0;
    font-size: 16px;
    height: auto;
    padding-top: 60px;
}

footer a,
footer h3,
footer i {
    color: var(--light-color);
}

footer h3 {
    font-size: 20px;
    margin: 0;
    padding-bottom: 16px;
}

footer div.logo-footer {
    display: flex;
    flex-flow: column;
    gap: 24px;
}

footer .social-links {
    display: flex;
    gap: 50px;
    align-items: center;
}

footer .social-links a i::before {
    font-size: 24px;
    color: var(--third-color);
}

footer .social-links a:hover i::before{
opacity:0.8;
}

footer div.logo-footer p {
    margin: 0;
}

footer div.logo-footer a.site-title{
width:215px;
	height:auto;
}

footer .col-footer {
    display: flex;
    justify-content: center;
}

footer .contacto-footer ul li i {
    padding-right: 16px;
}

footer .col-footer ul li i::before {
    font-size: 20px;
}


footer .col-footer .container-column ul {
    gap: 16px;
}

footer .col-footer .container-column ul li a:hover,
footer .menu-footer-menu-textos-legales-container a:hover {
    color: var(--light-color);
    text-decoration: underline;
}



footer .main-navigation {
    max-height: fit-content;
}

footer .col-footer ul li {
    padding: 0 !important;
    display: flex;
    align-items: start;
}

footer .col-footer ul li p,
footer .col-footer ul li a {
    margin: 0;
    line-height: 120%;
}


#copyright {
    padding-top: 40px;
}

#copyright li {
    padding: 0 !important;
}

#copyright a {
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
    margin-right: 50px;
}
#copyright a:hover{
	color:white;
	text-decoration:underline;
}


/* - Firma Idento - */

.wrapper-idento {
    display: inline-block;
    vertical-align: middle;
	margin-left:8px;
	display:flex;
	align-items:center;
}

.firma-idento {
    background: url(img/idento.svg);
    width: 20px;
    height: 20px;
    background-repeat: no-repeat;
    display: inline-block;
    background-size: 53px;
    margin: 0;
    transition: width 0.3s;
    margin-top: 0px;
}


.firma-idento:hover {
    width: 53px;
}

/* Mail */

#contact-form #mail,
#contact-form2 #mail {
    visibility: hidden;
    position: absolute;
    opacity: 0;
    left: -100vw;
}


.content-legal {
    padding: 2rem;
}

.content-legal ul {
    padding-left: 2rem;
}

.content-legal ul li {
    list-style: disc;
}

.content-legal .h2:after {
    display: none;
}

.content-legal table td {
    border: 1px solid var(--black-color);
    padding: 0.5rem;
}

.content-legal table p {
    margin-bottom: 0rem;
}

/* Política de privacidad */
.wp-block-group.container-legal-text.container {
    padding: 100px 0;
}

.wp-block-group.container-legal-text.container h2 {
    margin-bottom: 24px;
    line-height: 1;
}

.wp-block-group.container-legal-text.container h3,
.wp-block-group.container-legal-text.container h4 {
    margin-top: 24px;
    line-height: 1;
}

.wp-block-group.container-legal-text.container strong {
    line-height: 120%;
}

.wp-block-group.container-legal-text.container p {
    margin-bottom: 12px;
}

/* textos legales */

/* Política de privacidad */
.wp-block-group.container-legal-text.container {
    padding: 100px 0;
}

.wp-block-group.container-legal-text.container h2 {
    margin-bottom: 24px;
    line-height: 1;
    color: var(--main-color);
    font-size: clamp(24px, 5vw, 52px);
    font-weight: 700;
}


.wp-block-group.container-legal-text.container h3{
	margin-bottom: 24px;
    line-height: 1;
    color: var(--main-color);
    font-size: clamp(24px, 5vw, 36px);
    font-weight: 700;
}


.wp-block-group.container-legal-text.container h4 {
    margin: 24px 0;
    line-height: 1;
    color: var(--main-color);
    font-weight: 700;
}

.wp-block-group.container-legal-text.container strong {
    line-height: 110%;

}

.wp-block-group.container-legal-text.container p {
    margin-bottom: 12px;
    line-height: 130%;
}

.wp-block-group.container-legal-text.container ul,
.wp-block-group.container-legal-text.container ol {
    padding-left: 1em;
    list-style-position: outside;
    list-style: initial;
}

.wp-block-group.container-legal-text.container ul * {
    list-style: initial;
	list-style-type: disc;
}

.wp-block-group.container-legal-text.container ul {
    list-style-type: disc;
}

.wp-block-group.container-legal-text.container ol *{
	 list-style-type: decimal;
}

.wp-block-group.container-legal-text.container ol {
    list-style-type: decimal;
}

.wp-block-group.container-legal-text.container li {
    line-height: 130%;
}

.wp-block-group.container-legal-text.container li{
margin-bottom:8px;
}

/* 404 */

section.error-404 {
    padding-top: 177px;
}

section#post-404 {
    padding: 100px 0;

}

section#post-404 h1 {
    font-size: clamp(26px, 5vw, 56px);
    font-weight: 700;
    color: var(--main-color);
}

section#post-404 h2 a {
    font-size: clamp(20px, 5vw, 36px);
    font-weight: 400;
    color: var(--accent-color);
    text-decoration: underline;
    line-height: 120%;
}

section#post-404 h2 a:hover {
    opacity: 0.7;
}






/* --- RESPONSIVE  --- */

/* @media only screen and (min-width: 1400px) {

   
} */
@media only screen and (min-width: 1200px) and (max-width: 1800px) {
  


}

@media only screen and (max-width: 1199px) {

    .p-width {
        width: 100%;
    }

    section.puntos-fuertes-col-3 .cuadrado {
        padding: 16px 24px;
    }

    section.puntos-fuertes-col-3 .bullet.container .col-md-3 {
        width: 50%;
    }

    section.puntos-fuertes-col-3 .bullet.container .col-md-3:not(:first-child)::before {
        display: none;
    }

    main.home section.datos .banner-datos .container .row {
        flex-flow: column;
        align-items: center;
        width: 100%;
        gap: 32px;
        margin: 0;
    }

    main.home section.datos .banner-datos .container .row .col-lg-3 {
        width: 100%;
    }
	
	/* noticias home*/
	
	.ultimas-noticias .post{
	width:50%;
	}
	
	.ultimas-noticias .card{
	width:100%;
	}


    /*organigrama*/

    .container-organigrama .bloque-organigrama {
        width: 33.3%;
    }

    /* etapas educativas */
    .container-etapas-educativas .fila-etapas-educativas {
        flex-wrap: wrap;
        gap: 24px;
        justify-content: center;
    }
	
	.container-etapas-educativas .card-etapa{
	width:100%;
	}
	
	/*Servicios*/
	main.servicio .texto-texto .col-contenido.border-right{
		padding:0;
}
	
	main.servicio .texto-texto .col-contenido{
	padding:0;
	}
	
	/*Quienes somos*/
	
	.container-quienes-somos .valores .col-lg-12 .row{
	gap:16px;
	}
	
	.container-quienes-somos .valores .col-md-4{
	width:100%;
	}
	
	
/*Contacto*/
	.div-contacto{
	flex-direction: column-reverse;
		
	}
	
	.div-contacto .col-form{
	position:static;
	}
	

    /* FOOTER */
    footer .col-md-6 {
        width: 100%;
        margin-bottom: 40px;
        padding: 0;
        justify-content: start !important;
    }

    footer .container-column {
        padding: 0;
    }

    footer .col-footer {
        justify-content: start;
    }

    #copyright {
        padding: 0;
    }

    #copyright .col-md-6 {
        margin: 0;
    }

    /* noticias */

    aside.sidebar .wp-block-latest-posts__list li {
        display: flex;
        flex-flow: column;
    }

    aside.sidebar .widget_search,
    aside.sidebar .widget_block {
        padding: 24px;
        margin-bottom: 32px;
    }

    ul.wp-block-categories-list li.cat-item a {
        font-size: 16px;
        height: 50px;
    }

    main.blog .card .card-body span {
        flex-flow: column;
        align-items: start;
    }
}

@media only screen and (max-width: 1091px) {


/* SERVICIOS*/
	
	.main-servicios .fila-servicios .card .card-header{
	height:200px;}
}

@media only screen and (max-width: 1090px) {
    section.error-404 {
        padding-top: 117px;
    }

}

@media only screen and (max-width: 991px) {

    /* HEADER MENU */

    .flex-header {
        flex-grow: 1;
    }
	
	.main-menu-wrapper{
	overflow-y:auto;
	max-height:100vh;
	}
		

    nav#site-navigation ul.sub-menu {
        position: relative;
        background-color: var(--main-color);
    }

    .menu-toggle {
        display: flex;
        justify-content: flex-end;
        align-items: center;
    }

    header#masthead .search-navbar .search-form {
        max-width: none;
    }

    header#masthead {
        padding: 16px;
        box-shadow: 0 2px 6px rgb(51 51 51 / 30%);
		
    }

    #masthead .navbar.navbar-expand-lg {
        border-bottom: 0;
        padding: 0 !important;
    }

    #masthead a.site-title.navbar-brand {
        height: 50px;

    }


    .navbar-toggler {
        background: none;
        border: 1px solid var(--third-color) !important;
        border-radius: 4px;
        padding: 10px 12px;
    }

    .navbar-toggler:focus,
    .navbar-toggler:active {
        outline: none;
        box-shadow: none;
    }

    .navbar-icon {
        font-size: 24px;
        color: var(--third-color);
    }

    .navbar-toggler-text {
        font-size: 16px;
        color: var(--third-color);
    }

    div#navbarheader ul#menu-menu-superior {
        background-color: var(--main-color);
        padding-top: 16px !important;
    }

    div#navbarheader ul#menu-menu-superior li  {
        border-bottom: 0.8px solid var(--light-color);
    }
	
	nav#site-navigation ul.sub-menu li:not(:last-child){
	border-bottom: 0.8px solid var(--light-color) !important;
	}
	
	ul#menu-menu-superior ul.sub-menu li:last-child{
	border-bottom:none !important;}

    nav#site-navigation ul.sub-menu li a::before {
        content: "\f054";
        /* Código Unicode de la flecha Font Awesome (fas fa-angle-right) */
        font-family: "Font Awesome 6 Free";
        font-weight: 900;
        /* Necesario para iconos sólidos (fas) */
        display: inline-block;
        margin-right: 8px;
        font-size: 12px;
        vertical-align: middle;
    }

    
	
/* Pero quítaselo solo a los enlaces dentro de <li class="inline"> */
nav#site-navigation ul.sub-menu li.inline > a:focus,
nav#site-navigation ul.sub-menu li.inline > a:active {
  background-color: transparent !important;
  outline: none !important; /* opcional: quita contorno de enfoque */
}
	
	.menu-solido ul#menu-menu-superior li a:hover{
	background-color:transparent !important;
	text-decoration: underline;
	}
    #masthead ul#menu-menu-superior li a {
        width: 100%;
    }

    .pre-menu-mobile ul#menu-pre-menu-1 {
        width: 100%;
		padding-bottom:120px;
    }

    .pre-menu-mobile ul#menu-pre-menu-1 li a {
        padding: 12px 24px;
        display: block;
    }

    .pre-menu-mobile ul#menu-pre-menu-1 li a:active {
        background-color: var(--main-color-hover);
    }

    .form-cabecera {
        top: 15px;
    }

    .cuadrado:first-child {
        margin-left: 15px;
    }
	.fila-absolute-centrado .absolute-centrado{
	width:100%;
	}
	/* noticias home*/
	
	.ultimas-noticias .post{
	width:100%;
	}
	
	

    section.hero-bullets {
        margin: 0 auto;
        margin-bottom: 50px;
        margin-top: 15px;
    }

    .home section.hero-bullets+section {
        margin-top: 0;
    }

    section.productos .row.w-100.column.justify-content-center .col-md-6.col-lg-3 {
        margin-bottom: 30px;
    }

    section.productos article.card {
        min-height: 400px;
    }

    section.productos article.card .card-body {
        justify-content: flex-end;
        align-items: center;
    }

    section.productos article.card h4.card-title {
        color: white;
        position: relative;
        background: transparent;
        margin-bottom: 15px;
    }

    section.productos article.card a.read_more {
        padding: 7px 30px;
        border: 2px solid white;
        font-weight: bold;
        border-radius: 100px;
        z-index: 1;
        color: white;
    }

    section.productos article.card a.read_more i {
        margin-left: 5px;
    }

    section.productos article.card::after {
        position: absolute;
        content: '';
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        opacity: 0.5;
        background: rgba(0, 0, 0, 0.3);
    }

    section.productos article.card .card-body .contenido-texto::after {
        background: rgba(0, 0, 0, 0.3);
    }

    .team .text-team {
        padding: 50px 15px;
    }

    .carousel-control-next,
    .carousel-control-prev {
        color: black;
    }

    .carousel-control-next {
        right: -13px;
    }

    .carousel-control-prev {
        left: -13px;
    }

    .carousel .carousel-item {
        padding: 15px;
    }

    .carousel .carousel-inner {
        padding-bottom: 30px;
    }

    .carousel-indicators .active {
        background-color: black;
    }

    .carousel-control-prev:hover,
    .carousel-control-next:hover {
        color: black;
    }

    .carousel-indicators li {
        background-color: rgba(0, 0, 0, .5);
    }

    footer#colophon .col-sm-12.col-md-6.col-lg-3 {
        margin-bottom: 40px;
    }

    #colophon {
        background: none;
    }

    ul#menu-menu-superior {
        flex-direction: column;
        padding-bottom: 15px;
    }

    button#button-main-menu-toggle {
        display: flex;
        justify-content: flex-end;
        align-items: center;
    }

    section.cabecera {
        padding-top: 30px;
    }

    .form-container form {
        padding: 15px;
    }

    .gfield {
        padding-bottom: 0;
    }

    .row-reverse-tablet {
        flex-direction: column-reverse;
    }

    section.proceso.steps .col-lg-6.text-center {
        margin-bottom: 30px;
    }

    .cabecera .img.right {
        width: 100vw;
        height: fit-content;
        min-height: 400px;
        display: flex;
        justify-content: center;
        align-items: center;
        top: 0;
    }

    .cabecera .img.right::after {
        position: absolute;
        content: '';
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 0, 0.3);
    }

    .single-productos section.cabecera>.container>.row>.col-12.col-lg-6>span,
    .single-productos section.cabecera>.container>.row>.col-12.col-lg-6>h2,
    .single-productos section.cabecera>.container>.row>.col-12.col-lg-6>h4,
    .single-productos section.cabecera>.container>.row>.col-12.col-lg-6>p {
        color: white;
    }

    /* HERO*/
    section.cabecera-home {
        min-height: 700px;
        margin: 0;
    }

    /* HOME */

    /* hero */

    main.home .cabecera-home .overlay .parrafo {
        width: 100%;
        font-weight: 600;
    }

    /* section caja absolute */

    main.home .section-caja-absolute {
        padding: 60px 0;
        margin: 0;
    }
	
	main.home .section-caja-absolute p.has-text-align-center,
	main.home .section-caja-absolute h2{
	padding: 0 16px;
	}
	
	main.home .section-caja-absolute p.has-text-align-center{
	font-size:18px;
	}

    .section-caja-absolute::before {

        display: block;
        background-position-y: center;
        background-position-x: center;
        background-size: cover;
        background-position: center;
    }

    .section-caja-absolute .wp-block-group.grupo-card-overlay {
        margin: 0;
    }

    main.home .section-caja-absolute h2 {
        margin: 0 0 24px 0;
    }

    main.home .section-caja-absolute .etapas-educativas p {
        margin-bottom: 32px;
        font-size: 20px;
        line-height: 120%;
    }

    main.home .grupo-card-overlay .wp-block-group__inner-container {
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
        padding: 32px 0;
    }

    main.home .etapas-educativas p.p-with {
        margin: 0;
        font-size: 18px;
    }

    main.home .section-caja-absolute .imagen-overlap {
        margin-right: 16px;
        margin-bottom: 0;
        position: static;
        display: flex;
        flex-direction: column;
        gap: 0;
        box-shadow: var(--shadowBox);
        flex: 0 0 90%;
        scroll-snap-align: center;
        position: relative;
    }
	
	main.home .grupo-card-overlay .wp-block-group__inner-container > .imagen-overlap:first-child{
	margin-left:16px;}

    main.home .section-caja-absolute .imagen-overlap .col-img {
        flex-basis: auto !important;
        width: 100%;
        height: auto;
        flex: none;
    }

    main.home .section-caja-absolute .col-img figure {
        height: 213px;
        width: 100%;
    }

    main.home .section-caja-absolute .wp-block-column.caja-absolute {
        position: static;
        width: 100%;
        height: auto;
        margin-top: 0;
        
        flex-basis: auto !important;
		justify-content: center;
		padding: 16px;

    }

    .section-caja-absolute .caja-absolute a.wp-block-button__link {
        margin-top: 16px;
    }

    /* texto imagen check */

    .texto-imagen-check .wp-block-columns {
        flex-flow: column;
    }

    .texto-imagen-check .col-img {
        order: 2;
    }

    /* ORGANIGRAMA */

    .container-organigrama .estructura-organigrama {
        padding: 40px 0 0 0;
        margin: 0;
    }

    .container-organigrama .fila-directores {
        margin-bottom: 32px;
    }

    .container-organigrama .fila-directores,
    .container-organigrama .fila-organigrama {
        flex-wrap: nowrap;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        justify-content: start;
        align-items: stretch;
        padding-left: 16px;
        gap: 0;
    }


    .container-organigrama .fila-directores .bloque-director,
    .container-organigrama .fila-organigrama .bloque-organigrama {
        flex: 0 0 60%;
        scroll-snap-align: center;
        position: relative;
        padding: 0;
        margin-right: 16px;
    }

    .container-organigrama .bloque-organigrama .card-header {
        min-height: 294px;
    }

    .container-organigrama .nuestro-equipo {
        padding: 20px 16px 40px 16px;
        margin: 0;
    }

    .container-organigrama .nuestro-equipo .fila {
        flex-wrap: wrap;
        margin: 0;
    }

    .container-organigrama .nuestro-equipo h2 {
        margin-bottom: 40px;
    }

    .container-organigrama .card-nuestro-equipo {
        padding: 0;
        margin-bottom: 40px;
    }

    .container-organigrama .card-nuestro-equipo figure {
        height: 350px;
    }
	


    .container-organigrama .pre-footer {
        padding: 40px 16px;
        height: 378px;
    }

    .container-organigrama .pre-footer .pretitulo {
        font-size: 16px;
        font-weight: 500;
        margin-bottom: 24px;
    }

    .container-organigrama .wp-block-button {
        width: 100%;
    }

    /* QUIENES SOMOS */

    .container-quienes-somos .section-absolute {
        padding: 40px 0;

    }

    .container-quienes-somos .contenido-absolute {
        position: static;
        padding: 16px;
        order: 2;

    }

    .container-quienes-somos .container-proyecto-educativo .col-img {
        height: 240px;
		width:100%;
    }

    .container-quienes-somos .section-absolute .col-absolute-proyecto {
        gap: 0;
        margin-bottom: 0;
        padding: 0;
        flex-flow: column;
        align-items: center !important;
    }

    .container-quienes-somos .section-absolute .col-absolute-proyecto figure {
        height: 225px;
    }

    .container-quienes-somos .col-absolute-proyecto .contenido-absolute h3::after {
        margin: 16px auto;
    }

    .container-quienes-somos .contenido-absolute .bloque-interior {
        padding: 10px;
        flex-grow: 1;
        display: flex;
        align-items: center;
    }

    /* ETAPAS EDUCATIVAS */

    .cabecera-page .hero-content {
        padding: 50px 0;
        text-align: center;
    }

    .container-etapas-educativas {
        padding: 0;
    }

    .container-etapas-educativas .fila-etapas-educativas {
        margin: 0;
        padding: 40px 16px;
    }

    .container-etapas-educativas .card-etapa {
        height: 375px;
        width: 100%;
    }

    .container-etapas-educativas .card-etapa .bloque-interior figure {
        height: 30px;
        margin-bottom: 16px;
    }

    .container-etapas-educativas .card-etapa .bloque-interior figure img {
        height: 100%;
    }

    .container-etapas-educativas .card-etapa .wp-block-cover__inner-container {
        padding: 24px 16px;
    }

    .container-etapas-educativas .card-etapa .bloque-interior .wp-block-group__inner-container {
        gap: 0;
    }

    .container-etapas-educativas .card-etapa .bloque-interior h4 {
        margin-bottom: 16px;
    }

    .container-etapas-educativas .card-etapa .bloque-interior p {
        margin-bottom: 24px;
        font-size: 16px;
    }

    .container-etapas-educativas .card-etapa .bloque-interior .wp-block-buttons,
    .container-etapas-educativas .card-etapa .bloque-interior .wp-block-button {
        width: 100%;

    }

    .container-etapas-educativas .card-etapa .bloque-interior .wp-block-button__link {
        font-size: 18px;
        padding: 8px 12px;
    }
	
	

    /* NOTICIAS Y EVENTOS */
    main.blog .container.contenido {
        padding: 50px 16px;
    }

    main.single .blog-single-content {
        margin-bottom: 40px;
    }

    /* CONTACTO */
    .container-contacto.container {
        padding: 40px 16px;
    }

    .container-contacto h2 {
        margin-bottom: 32px !important;
    }

    .div-contacto .wp-block-columns {
        padding: 0;
        flex-flow: column;
    }

    .container-contacto .col-img {
        order: 1;
    }

    .container-contacto .col-img figure {
        min-height: auto;
    }

    .container-contacto .col-form {
        position: static;
        padding: 24px 12px;
        order: 1;
    }

    .container-contacto .gform_wrapper h2.gform_title {
        margin-bottom: 16px !important;
    }

    .div-contacto figure.wp-block-image {
        border-radius: 12px;
		height:240px;
    }

    .container-contacto .gform_wrapper .gform_fields {
        gap: 12px !important;
    }

    .container-contacto .gform_wrapper .gform_fields span.name_last {
        margin-bottom: 0 !important;
    }



    .container-contacto .gform_wrapper .gfield input[type="text"],
    .container-contacto .gform_wrapper .gfield textarea.large {
        font-size: 16px !important;
        line-height: 1 !important;
    }

    .container-contacto .gform_wrapper .gform_button {
        line-height: 1 !important;

    }

    .container-contacto .gform_footer {
        padding: 0 !important;
        margin: 32px 0 0 0 !important;
    }

    .cabecera-single {
        margin: 0 !important;
    }
	
	/* Corrección menú */

	div#navbarheader {
		height: 100vh;
	}
	

}


@media only screen and (max-width: 767px) {

    /* 404 */
    section.error-404 {
        padding-top: 113px;
    }

    section#post-404 {
        padding: 50px 16px;

    }

    .cabecera.hero-container-fluid,
    .cabecera-single,
    .cabecera-archive-servicios,
    .cabecera-page {
        padding-top: 113px !important;
    }

    .content-legal {
        padding: 1rem;
    }

    .content-legal h3,
    .content-legal .h3 {
        font-size: 17px;
        font-weight: 700;
        line-height: 23px;
    }

    .content-legal a {
        word-break: break-word;
    }

    .content-legal ul {
        padding-left: 1rem;
    }

    .content-legal h2,
    .content-legal .h2 {
        font-size: 21px;
        line-height: 27px;
    }

    .content-legal p,
    .content-legal li {
        font-size: 14px;
        line-height: 21px;
    }

    .content-legal h1 {
        font-size: 1.4rem;
        margin-bottom: 0.5rem;
    }

    a.telefono.gtm_phone {
        position: fixed;
        bottom: 30px;
        right: 30px;
        border-radius: 100px;
        width: 50px;
        height: 50px;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    a.telefono.gtm_phone span {
        display: none;
    }

    a.telefono.gtm_phone i {
        margin: 0;
        font-size: 24px;
    }

    section.hero-bullets .col-md-4.p-0 {
        margin-bottom: 15px;
    }

    section.hero-bullets .col-md-4.p-0:last-child {
        margin-bottom: 0;
    }

    .team .foto {
        position: relative;
        top: 0;
    }

    .team .row.position-relative {
        flex-direction: column-reverse;
    }

    .cuadrado p {
        min-height: auto;
    }

    .form-container input[type="submit"] {
        line-height: 1 !important;
    }

    .carousel-control-next {
        right: -6px;
    }

    .carousel-control-prev {
        left: -6px;
    }

    .row-reverse-movil {
        flex-direction: column-reverse;
    }

    .row-reverse-movil .sidebar {
        margin-bottom: 30px;
    }

    .widget .sidebar h2.widgettitle {
        position: relative;
        transition: 0.5s;
        cursor: pointer;
    }


    /* HOME */
    main.home .cabecera-home .overlay h2 {
        font-weight: 600;
    }

    /* Puntos fuertes */
    main.home section.puntos-fuertes-col-3 {
        padding: 40px 16px;
        margin: 0;

    }

    section.puntos-fuertes-col-3 .row {
        gap: 40px;
    }

    section.puntos-fuertes-col-3 .bullet.container .col-md-3:not(:first-child)::before {

        display: none;
    }

    section.puntos-fuertes-col-3 .bullet.container .col-lg-12 {
        padding: 0;
    }

    section.puntos-fuertes-col-3 .bullet.container .col-md-3 {
        width: 100%;
    }

    section.puntos-fuertes-col-3 .cuadrado {
        margin: 0;
        position: relative;
        padding: 0;
        align-items: start;
        gap: 12px;
    }

    section.puntos-fuertes-col-3 .cuadrado span.h3 {
        text-align: left;
    }

    main.home section.info {
        margin: 0;
        padding: 40px 16px;
    }
	
main.home section.info .info__content img{
	display:none;
	}
	
	main.home section.info .p-principal{
	width:100%;
	}

    main.home section.info .wp-block-columns {
        padding: 0;
    }

	main.home section.info .container{
	padding:0;
	}
	
    main.home section.info .pretitulo {
        margin-bottom: 24px;
        
    }

   

    main.home section.info  a {
        padding: 12px 16px;
        font-size: 20px;
		 width: 100%;
    }

    section.modelo-pedagógico {
        margin: 0 auto;
        padding: 60px 0;
    }

    section.modelo-pedagógico p {
        font-size: 16px;
        line-height: 120%;
        margin: 0;
		padding:0 16px;
    }

    .fila-absolute-centrado {
        padding: 32px 0 16px 0;
        flex-wrap: nowrap !important;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        margin-bottom: 32px;
    }

    main.home .fila-absolute-centrado {
        padding: 32px 0;
    }
	
.fila-absolute-centrado .absolute-centrado figure{
		height:240px;
	}

    .fila-absolute-centrado .absolute-centrado {
        gap: 0;
        margin: 0;
        padding: 0;
        flex: 0 0 90%;
        scroll-snap-align: center;
        margin-right: 16px;
		box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.10);
    }

    .fila-absolute-centrado .absolute-centrado .contenido-absolute {
        position: static;
        width: 100%;
        transform: none;
        padding: 16px;
        min-height: 250px;
        height: 100%;
        align-items: stretch;
        justify-content: center;
        display: flex;
    }
	
	main.home .fila-absolute-centrado > .absolute-centrado:first-child{
	margin-left:16px;}

    .fila-absolute-centrado .contenido-absolute .bloque-interior {
        padding: 16px;
        height: auto;
    }

    .fila-absolute-centrado .contenido-absolute .bloque-interior .wp-block-group__inner-container {
        height: 100%;
        display: flex;
        flex-flow: column;
        justify-content: center;
    }

    .fila-absolute-centrado .contenido-absolute .bloque-interior p {
        font-size: 16px;
		padding:0;
    }


    .fila-absolute-centrado .contenido-absolute h3::after {
        margin: 16px auto;
    }

    section.modelo-pedagógico .wp-block-button__link {
        background-color: var(--third-color);
        color: var(--main-color);
        line-height: 110%;
        font-weight: 500;
        padding: 12px 16px;
    }

    .etapas-educativas p.p-with {
        font-size: 18px;
        margin: 0;
    }

    .section-caja-absolute .caja-absolute p {
        font-size: 16px;
    }

    .elfsight-app-22c02f6b-d943-4c6d-89db-83899860d8e5 {
        padding: 40px 16px;
    }

    /* servicios */

    section.servicios {
        flex-wrap: wrap;
        margin: 0;
    }

    section.servicios .card-servicios {
        min-height: 340px;
        padding: 24px;
    }

    section.servicios .card-servicios figure.wp-block-image {
        width: 60px;
    }

    .card-servicios .wp-block-cover__inner-container {
        gap: 24px;
    }

    .card-servicios h4::after {
        margin-top: 16px;
    }

    .card-servicios p {
        font-size: 16px;
        ;
    }

    .bloque-ultimas-entradas-blog-hora-lugar {
        margin-bottom: 0;
    }

    section.bloque-ultimas-entradas-blog-hora-lugar {
        margin: 0;
    }

    .ultimas-noticias {
        padding: 40px 16px;
    }

    .ultimas-noticias h3 {
        margin-bottom: 32px;
    }

    .ultimas-noticias .post {
        padding: 0;
    }

    .ultimas-noticias .card {
        padding: 16px;
    }
	
	.ultimas-noticias .card .card-img-top{
	height:175px;
	}

    .ultimas-noticias .card .card-body span.date {
        padding-inline: 10px 12px;
        gap: 4px;
		top:26px;
    }

    .ultimas-noticias .card span.date p.dia,
    .ultimas-noticias .card .card-body span.date p.mes-ano {
        font-size: 16px;
    }

    .ultimas-noticias .card .card-body span {
        flex-flow: column;
        align-items: start;
        margin-bottom: 8px;
    }

    .ultimas-noticias .card .card-body span .hora-lugar p,
    .ultimas-noticias .card .card-body span .etiqueta p {
        font-size: 18px;

    }

    .ultimas-noticias .card .card-text {
        font-size: 16px;
        margin-bottom: 16px;
    }

    .ultimas-noticias .wp-block-button {
        width: 100%;
    }

    /* banner datos */

    main.home section.datos {
        padding: 60px 16px;
        margin: 0;
    }

    main.home section.datos>div.is-layout-constrained:first-of-type {
        padding: 0;
    }

    main.home section.datos p.uppercase {
        margin-bottom: 5px;
        line-height: 120%;
    }

    main.home section.datos h3 {
        line-height: 120%;
    }

    main.home section.datos .banner-datos {
        margin: 0;
    }

    section.datos .banner-datos .container .row {
        gap: 40px;
    }

    section.datos .banner-datos .icono-cifras {
        margin-bottom: 24px;
    }


    main.home section.datos .banner-datos .h4 {
        margin-bottom: 8px !important;
    }

    .pre-footer-contacta {
        padding: 40px 16px;
		margin:0;

    }
	.pre-footer-contacta::before{
		background-image: none;
	}


    .pre-footer-contacta .pretitulo {
        font-size: 16px;
    }

    .pre-footer-contacta .p-principal {
        margin: 0;
    }

    .pre-footer-contacta .columnas {
        gap: 40px;
		padding:0;
    }

    .pre-footer-contacta .wp-block-button {
        width: 100%;
    }


    /* cabecera genérica migas de pan */

    .cabecera.hero-container-fluid,
    .cabecera-single {
        min-height: 360px !important;
    }

    .cabecera.hero-container-fluid .hero-content {
        text-align: center;
    }

    .cabecera.hero-container-fluid .hero-content h1,
    .cabecera-single .hero-content h1 {
        font-weight: 700;
        margin-bottom: 12px;
    }



    .cabecera.hero-container-fluid .hero-content p#breadcrumbs a,
    .cabecera-single .hero-content p#breadcrumbs a {
        font-size: 16px;
    }

    .cabecera.hero-container-fluid .hero-content p#breadcrumbs span,
    .cabecera-single .hero-content p#breadcrumbs span {
        font-size: 16px;
    }

    .cabecera-single .hero-content {
        padding: 0 16px;
        text-align: center;

    }



    /* ORGANIGRAMA */


    .container-organigrama h2 {
        width: 80%;
        margin: 0 auto 40px auto;
    }

    .container-organigrama .bloque-organigrama .card-body {
        gap: 6px;

    }

    .container-organigrama .fila-directores .bloque-director,
    .container-organigrama .fila-organigrama .bloque-organigrama {
        flex: 0 0 80%;

    }

    /* VIDA ESCOLAR */
    section#nuestro-propósito {
        padding: 40px 16px;
        margin: 0;
    }

    section#nuestro-propósito .wp-block-image {
        margin-bottom: 16px;
    }

    section#nuestro-propósito .wp-block-image figure {
        margin-left: 0 !important;
    }

    section#nuestro-propósito p.pretitulo {
        font-size: 16px;
        text-align: left;
    }

    section#nuestro-propósito h2 {
        text-align: left;
        margin-bottom: 40px;
    }



    section#nuestro-propósito .wp-block-group {
        flex-flow: column;
        gap: 16px;

    }

    section#nuestro-propósito .wp-block-buttons,
    section#nuestro-propósito .wp-block-button {
        width: 100%;
    }

    section#nuestro-propósito .wp-block-group .wp-block-button__link {

        padding: 12px 16px;
        font-size: 20px;
    }

    div#calendario-escolar {
        padding: 40px 16px 64px 16px;
    }

    div#calendario-escolar figure:first-of-type {
        width: 70px;
    }

    div#calendario-escolar .col-img figure {
        width: 100%;

    }

    div#calendario-escolar .wp-block-column:first-of-type img {
        margin-bottom: 16px;
    }

    div#calendario-escolar .wp-block-column:first-of-type h3 {
        margin-bottom: 40px;
    }

    section#horarios-escolares {
        padding: 40px 16px;
        margin: 0;
    }

    section#horarios-escolares .wp-block-image figure.aligncenter {
        margin-right: auto;
        margin-left: 0;
    }

    section#horarios-escolares .fila-horarios {
        padding: 0;
        gap: 8px;
    }

    section#horarios-escolares h3 {
        margin-bottom: 40px;
    }

    section#horarios-escolares .card {
        padding: 16px;
    }

    section#horarios-escolares .fila-horarios .bloque-imagen-titulo-texto {
        padding: 0;
        margin: 0 !important;
    }

    section#horarios-escolares .bloque-imagen-titulo-texto p {
        font-size: 16px;
    }

    section#uniforme-escolar {
        padding: 40px 0 20px 0;
        margin: 0;
    }

    section#uniforme-escolar figure.aligncenter {
        width: 70px;
    }

    section#uniforme-escolar figure {
        margin-left: 0;
        padding-left: 16px;
    }

    section#uniforme-escolar h2 {
        text-align: left;
        padding: 0 16px;
    }
	section#uniforme-escolar p.has-text-align-center{
		width:100%;
	}

    section#uniforme-escolar p {
        line-height: 120%;
        font-size: 16px;
        text-align: left;
        padding: 0 16px;
		
    }



    section#uniforme-escolar .texto-imagen-check {
        padding: 40px 16px;
    }
	
.texto-imagen-check .col-img figure{
	height:240px;
	text-align:center;
}

    section#uniforme-escolar .texto-imagen-check h4 {
        margin: 10px 0 24px 0;

    }

    section#uniforme-escolar .texto-imagen-check .col-contenido figure {
        width: 40px;
    }

    section#uniforme-escolar .texto-imagen-check p {
        margin-bottom: 40px;
    }

    section#uniforme-escolar .texto-imagen-check .wp-block-columns {
        gap: 32px;
        padding: 0;
    }

    section#uniforme-escolar .texto-imagen-check .wp-block-columns figure {
        padding: 0;
    }


    section#uniforme-escolar .texto-imagen-check .box-check .wp-block-group__inner-container {
        gap: 12px;
    }



    section#uniforme-escolar .texto-imagen-check p {
        padding: 0 !important;
    }


    section#uniforme-escolar .texto-imagen-check .box-check p.strong {
        font-weight: 400;
        margin-bottom: 0 !important;
        font-style: normal;
    }

    section#uniforme-escolar .texto-imagen-check .box-check {
        margin-bottom: 0;
    }

    section#uniforme-escolar .texto-imagen-check .col-img figure {
        height: 250px;

    }

    section#uniforme-escolar .texto-imagen-check .col-img figure img {
        height: 100%;

    }

    .container-vida-escolar .pre-contacto {
        padding: 40px 16px;
        min-height: 310px;
    }

    .container-vida-escolar .pre-contacto p {
        font-size: 16px;
    }

    /* QUIENES SOMOS */

    .container-quienes-somos .valores {
        padding: 40px 16px;
        margin: 0;
    }

    .container-quienes-somos .valores h3 {
        text-align: left;
        margin-bottom: 24px;
		width:100%;
    }

    .container-quienes-somos .valores .col-md-4 {
        padding: 0;
    }

    .container-quienes-somos .valores .cuadrado {
        margin: 0;
        flex-flow: column;
        align-items: start;
        padding: 16px;
    }

    .container-quienes-somos .valores .cuadrado p {
        font-size: 16px;
    }

    .container-quienes-somos .valores .col-lg-12 .row {
        gap: 16px;
    }

    .container-quienes-somos .section-absolute h2 {
        width: 100%;
        margin-bottom: 32px;
    }

    .container-quienes-somos .section-absolute .col-img {
        flex-grow: 0;
    }

    .row-mobile .wp-block-group__inner-container:first-child {
        display: flex;
        flex-wrap: nowrap !important;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        gap: 16px;
        justify-content: stretch;
        padding-bottom: 32px;
    }

    .container-quienes-somos .section-absolute .col-absolute-proyecto {
        flex: 0 0 90%;
        scroll-snap-align: center;
        display: flex;
        justify-content: stretch;
        height: 100%;
        min-height: 465px;
    }
	
	.row-mobile .wp-block-group__inner-container > :first-child.col-absolute-proyecto{
	margin-left:16px;
	}

    .container-quienes-somos .section-absolute .col-absolute-proyecto .contenido-absolute {
        display: flex;
        flex-flow: column;
        justify-content: center;
        flex-grow: 1;
        height: 100%;
		min-height:auto;
    }

    .container-quienes-somos .section-absolute .bloque-interior .wp-block-group__inner-container {
        flex-flow: column;
        gap: 0;
    }

    .container-quienes-somos .section-absolute .bloque-interior h3 {
        margin: 0;
    }

    .container-quienes-somos .section-absolute .bloque-interior p {
        font-size: 16px;
    }

    .container-quienes-somos .texto-imagen-check h4 {
        margin-bottom: 24px;
    }

    .container-quienes-somos .texto-imagen-check .box-check {
        margin-bottom: 16px;
    }

    .container-quienes-somos .texto-imagen-check p.strong {
        margin-top: 12px;
        margin-bottom: 24px;
    }

    .container-quienes-somos .texto-imagen-check .wp-block-button__link {
        margin-top: 12px;
    }

    .texto-imagen-check .box-check figure {
        width: 32px;
    }

    .texto-imagen-check {
        padding: 40px 16px;
    }

    .texto-imagen-check .col-contenido figure {
        width: 40px;

    }

    .texto-imagen-check .col-contenido p {
        font-size: 16px;
        margin-bottom: 20px;
    }



    .texto-imagen-check .box-check .wp-block-group__inner-container {
        gap: 12px;
        align-items: center;
      
    }

    .texto-imagen-check .box-check p {
        font-size: 16px;
        margin: 0;
    }

    .texto-imagen-check .box-check p.strong {
        font-size: 16px;
        font-style: italic;
        margin: 0;
    }

    .texto-imagen-check .wp-block-columns.container {
        padding: 0;
        gap: 16px;
    }

    .texto-imagen-check .wp-block-button {
        width: 100%;
    }


    /* POR QUE NOSOTROS */

    .container-porque-nosotros .texto-imagen .col-contenido h3 {
        margin: 16px 0 24px 0;
    }


    .texto-imagen {
        margin: 0;
        padding: 40px 16px;
    }

    .texto-imagen .container {
        padding: 0;
    }

    .texto-imagen .col-img {
        order: 2;
        height: 250px;
    }

    .texto-imagen .col-img figure {
        height: 250px !important;
		min-height:250px !important;
    }

    .texto-imagen .col-contenido figure {
        width: 40px;
    }

    .texto-imagen .col-contenido p,
	.texto-imagen .col-contenido li,
	.texto-imagen .col-contenido strong{
        font-size: 16px;
    }
	
  

    .texto-imagen .col-contenido .box-contenido {
        padding: 12px;
    }

    .texto-imagen .col-contenido .box-contenido strong {
        font-size: 24px;

    }

    /* CALIDAD */

    .container-calidad .texto-imagen .col-contenido figure {
        width: 40px;
    }



    .container-calidad .texto-imagen-check h4 {
        margin-bottom: 24px;
    }

    .container-calidad .texto-imagen-check figure:first-child {
        width: 40px;
    }


    .container-calidad .texto-imagen-check .wp-block-columns.container {
        gap: 0;
    }

    .perfil-alumnado {
        margin: 0;
        padding-top: 40px;
    }

    .perfil-alumnado h2 {
        padding: 0 16px;
    }

    .perfil-alumnado p,
    .perfil-alumnado strong {
        font-size: 16px;
    }

    .perfil-alumnado .fila {
        margin-top: 40px;
        gap: 24px;
        padding: 0 16px;
    }

    .perfil-alumnado .fila .box-check {
        padding: 0;
    }

    .perfil-alumnado .fila .box-check .wp-block-group__inner-container:first-child {
        justify-content: center;
    }

    .perfil-alumnado .fila .box-check figure {
        width: 24px;
        height: 24px;
    }



    .perfil-alumnado .bg-perfil-alumno {
        margin-top: 60px;
        height: 300px;
    }

    .perfil-alumnado .bg-perfil-alumno img {
        object-fit: cover;
        height: 100%;
    }

    /* IGLESIA */

    .container-iglesia .cabecera-texto-cursiva {
        padding: 40px 16px;
        margin: 0;
    }

    .container-iglesia .cabecera-texto-cursiva h2 {
        text-align: left;
		margin-left:0;
		margin-right:0;
    }

    .container-iglesia .cabecera-texto-cursiva h2 em {
        font-style: normal;
    }
	

    .container-iglesia .cabecera-texto-cursiva p {
        text-align: left;
        font-size: 16px;
		width:100%;
    }

    .container-iglesia .texto-imagen-check p {
        font-size: 16px;
        margin-bottom: 40px;
    }
	
	.container-iglesia .texto-imagen-check .col-img figure{
	height:240px;
	}
	
 .container-iglesia .texto-imagen-check .box-check p {
        margin:0;
    }
	
	.container-iglesia .texto-imagen-check strong{
	line-height:120%
	}

    .container-iglesia .texto-imagen-check .col-contenido figure {
        width: 40px;
    }



    .container-iglesia .texto-imagen-check .box-check p.strong {
        font-style: normal;
    }

    .container-iglesia .pre-footer h3 {
        font-size: 24px !important;
    }

    .container-iglesia .pre-footer {
        min-height: 460px;
    }


    .container-iglesia section.modelo-pedagógico p {
        font-size: 16px;
    }

    .container-iglesia section.modelo-pedagógico .fila-absolute-centrado {
        padding: 32px 0 24px 0;
        margin: 0;
        justify-content: start;
    }
	
.container-iglesia section.modelo-pedagógico .fila-absolute-centrado > .absolute-centrado:first-child {
	margin-left:16px;
	}

    /* PROYECTO PEDAGÓGICO */
    .container-proyecto-pedagogico .encabezado-parrafo {
        padding: 40px 16px;
    }

    .container-proyecto-pedagogico .encabezado-parrafo h2 {
        text-align: left;
    }

    .container-proyecto-pedagogico .encabezado-parrafo p {
        text-align: left;
        font-size: 16px;
    }

    .container-proyecto-pedagogico .texto-imagen-check .col-contenido figure {
        width: 40px;
    }

    .texto-imagen-check h3 {
        margin: 16px 0 24px 0;
    }

    .container-proyecto-pedagogico .texto-imagen-check p {
        margin: 0;
    }

    .container-proyecto-pedagogico .texto-imagen-check h4 {
        margin: 32px 0 24px 0;
    }

    .container-proyecto-pedagogico .bloque-centrado {
        padding: 40px 16px
    }

    .container-proyecto-pedagogico .bloque-centrado .container {
        padding: 0;
    }

    .container-proyecto-pedagogico .bloque-centrado figure {
        width: 40px;
    }

    .container-proyecto-pedagogico .bloque-centrado p {
        font-size: 16px;
        margin: 0;
    }

    .container-proyecto-pedagogico .wp-block-cover {
        padding: 40px 16px;
        min-height: 690px;
    }

    .container-proyecto-pedagogico .wp-block-cover .container {
        padding: 0;
    }

    .container-proyecto-pedagogico .wp-block-cover .p-principal {
        font-size: 24px !important;
        margin-bottom: 24px;
    }

    .container-proyecto-pedagogico .wp-block-columns.container {
        gap: 32px;
    }

    .container-proyecto-pedagogico .wp-block-cover p {
        font-size: 16px;
        margin-bottom: 32px;
    }

    .container-proyecto-pedagogico .wp-block-cover .wp-block-button__link {
        padding: 12px 16px;
    }

    .container-proyecto-pedagogico .otros-proyectos {
        padding: 40px 16px;
        margin: 0;
    }

    .container-proyecto-pedagogico .otros-proyectos .pretitulo {
        font-size: 16px;
        text-align: left;
    }

    .container-proyecto-pedagogico .otros-proyectos h3 {
        text-align: left;
        margin-bottom: 32px;
    }

    .container-proyecto-pedagogico .otros-proyectos .fila {
        margin: 0;
        gap: 24px;
        padding: 0;
    }

    .container-proyecto-pedagogico .otros-proyectos .bloque-card-proyectos {
        margin: 0;
        padding: 0;
        width: 100%;
    }
	
	.container-proyecto-pedagogico .otros-proyectos .bloque-card-proyectos .row{
	gap:24px;}

    .container-proyecto-pedagogico .otros-proyectos .bloque-card-proyectos .card-header {
        height: 200px;
    }

    .container-proyecto-pedagogico .otros-proyectos .bloque-card-proyectos .card-body {
        padding: 24px 16px;
    }

    

    .container-proyecto-pedagogico .otros-proyectos .bloque-card-proyectos .card-body p {
        font-size: 16px;
    }

    .container-proyecto-pedagogico .otros-proyectos .bloque-card-proyectos .card-body .btn {
        width: 100%;
        font-size: 18px;
        padding: 8px 12px;
    }

    /* OTROS PROYECTOS */
    .container-proyectos .texto-imagen .col-img {
        height: 250px;
    }

    .container-proyectos .texto-imagen .pretitulo {
        font-size: 18px;
    }

    .container-proyectos .texto-imagen .col-img figure {
        height: 100%;
    }

    /* SERVICIOS */
    .cabecera-archive-servicios {
        min-height: 200px !important;
    }

    .main-servicios .cabecera-archive-servicios .col-12 {
        padding: 50px 0;
    }

    .cabecera-archive-servicios p#breadcrumbs {
        text-align: center;
        margin-bottom: 12px;
    }

    .cabecera-archive-servicios p#breadcrumbs p,
    .cabecera-archive-servicios p#breadcrumbs span {
        font-size: 16px;
    }

    .main-servicios .cabecera-archive-servicios .h1 {
        text-align: center;
    }

    .main-servicios .fila-servicios {
        padding: 0 16px;
        gap: 24px;

    }

    .main-servicios .fila-servicios .col-lg-4 {
        padding: 0;
        margin: 0;
    }

    .main-servicios .fila-servicios .card .card-header {
        height: 200px;
    }

    .main-servicios .fila-servicios .card .card-body p {
        font-size: 16px;
        line-height: 120%;
        margin-bottom: 8px;
    }

    .main-servicios .fila-servicios .card-body {
        gap: 16px;
        padding: 16px 24px;
    }

    .main-servicios .fila-servicios .card-body .btn {
        font-size: 18px;
        width: 100%;
        padding: 8px 12px;
    }

    .main-servicios .container-contacto.container {
        padding: 40px 0;
    }

    /* SERVICIOS */

    main.servicio .descripcion-servicio {
        padding: 40px 16px;
    }
f
    main.servicio .descripcion-servicio h2 {
        text-align: left;
    }

    main.servicio .descripcion-servicio p {
        font-size: 16px;
        text-align: left;

    }
	
	main.servicio .descripcion-servicio h2::after{
	width: 343px;
	}

    main.servicio .col-12 {
        padding: 0;
    }

    main.servicio .texto-texto {
        padding: 40px 16px;

    }
	
   main.servicio ul *,
	main.servicio ol *{
	list-style:initial;
		font-size: 16px;
        line-height: 130%;
	}
	
  main.servicio ul,
	main.servicio ol{
	list-style:initial;
	padding-left: 1em;
	list-style-position: outside;
	}
	
	main.servicio ol *{
	list-style-type: decimal;
	 padding-left: 1em
	}
	
.texto-imagen p,
	.texto-imagen-check a{
   margin-bottom: 16px;
	color: var(--main-color);
	line-height:130%;
	font-size:20px;
	}

	.texto-imagen-check li{
	margin-bottom:8px;
		color: var(--main-color);
	line-height:130%;
		font-size:16px;
	}
    main.servicio .texto-texto .wp-block-columns {
        padding: 0;
        gap: 0;
    }

    main.servicio .texto-texto p {
        margin: 0;
        font-size: 16px;
    }

    main.servicio .texto-texto .col-contenido.border-right {
        border-right: none !important;
		padding:0;
    }
	
	main.servicio .texto-texto .col-contenido{
	padding:0;
	}

    main.servicio .texto-texto .border-right::after {
        content: "";
        display: block;
        width: 100%;
        height: 5px;
        background-color: var(--accent-color);
        margin: 40px 0;
    }



    main.servicio .texto-imagen .wp-block-button {
        width: 100%;
    }

    /* CANAL DENUNCIA */

    .container-canal-denuncias section.principal {
        padding: 40px 16px;
    }

    .container-canal-denuncias section.principal h2 {
        margin-bottom: 32px;
    }

    .container-canal-denuncias section.principal h2::after {
        width: 100%;
    }

    .container-canal-denuncias section.principal p {
        font-size: 20px;
        margin-bottom: 24px;
    }

    .container-canal-denuncias section.principal .fila {
        flex-wrap: wrap;
        padding: 0;
        gap: 24px;
        margin-bottom: 24px;
    }

    .container-canal-denuncias section.principal .fila .box {
        padding: 16px;
    }

    .container-canal-denuncias section.principal .fila .box p {
        font-size: 16px;
    }

    .container-canal-denuncias section.principal .wp-block-button {
        width: 100%;
    }

    .container-canal-denuncias section.principal .wp-block-button .wp-block-button__link {
        padding: 12px 16px;
    }

    .container-canal-denuncias section.principal .wp-block-buttons {
        gap: 16px;
    }

    .container-canal-denuncias section.formulario-denuncia {
        margin: 0;
        padding: 40px 16px;
    }

    .container-canal-denuncias section.formulario-denuncia figure {
        width: 320px;
    }

    .container-canal-denuncias section.formulario-denuncia .gform_wrapper {
        margin-top: 40px;
        padding: 16px;
    }

    .container-canal-denuncias section.formulario-denuncia .container {
        padding: 0;
    }

    .container-canal-denuncias section.formulario-denuncia .gform_footer.top_label {
        margin: 0;
    }

    /* .container-canal-denuncias section.formulario-denuncia .gform_wrapper .gfield {
        margin: 0;
    } */

    .container-canal-denuncias section.formulario-denuncia .gform_wrapper .gfield_label,
    .container-canal-denuncias section.formulario-denuncia .gform_wrapper .gfield--type-html label {
        font-size: 18px;
    }

    .container-canal-denuncias section.formulario-denuncia .gform_wrapper p {
        font-size: 16px;
    }

    .container-canal-denuncias section.formulario-denuncia .gform_wrapper .gfield select,
    .container-canal-denuncias section.formulario-denuncia .gform_wrapper .gfield input[type="text"],
    .container-canal-denuncias section.formulario-denuncia .gform_wrapper .gfield input[type="email"] {
        padding: 12px 16px !important;
        font-size: 16px;
		height: auto;
        line-height: 120%;
    }

    .container-canal-denuncias section.formulario-denuncia .gform_wrapper .gfield input[type="file"] {
        font-size: 16px;
    }

    .container-canal-denuncias section.formulario-denuncia .gform_wrapper .ginput_container_textarea {
        font-size: 16px;
    }

    .container-canal-denuncias section.formulario-denuncia span.uppercase {
        font-size: 18px;
        font-weight: 400;
    }

    .container-canal-denuncias section.formulario-denuncia .gform_wrapper .gfield--type-html .h4 {
        margin-top: 24px;
    }

    .container-canal-denuncias section.formulario-denuncia .gform_wrapper .gfield--type-html .consentimiento {
        margin-bottom: 24px;
    }

    .container-canal-denuncias section.informacion {
        padding: 40px 16px;
        margin: 0;
    }

    .container-canal-denuncias section.informacion p {
        font-size: 16px;
        ;
    }



    /* etapa */
    .container-etapa .texto-imagen-check p.pretitulo.big {
        font-size: 20px;
    }

    .container-etapa .texto-imagen-check .wp-block-columns.container {
        gap: 24px;
    }

    .container-etapa .texto-imagen-check .col-img figure {
        height: 240px;
    }

    .container-etapa .texto-imagen-check .col-contenido figure {
        height: 40px;
    }

    .container-etapa .texto-imagen-check .col-contenido .wp-block-image img {
        object-fit: cover;
    }

    .container-etapa .texto-imagen-check .col-contenido .box-check figure {
        width: auto;
    }

    .container-etapa .texto-imagen-check .box-check .wp-block-group__inner-container {
        margin-bottom: 0;
    }

    .texto-imagen-check .box-check {
        margin-bottom: 16px;
    }

    .container-etapa .pre-footer {
        min-height: 476px;
    }

    .container-etapa .pre-footer p {
        font-size: 16px;
    }

    .container-etapa .pre-footer .wp-block-button__link {
        font-size: 20px;
    }


    /* VISITA VIRTUAL */

    .container-visita-virtual {
        padding: 0;
    }

    .card-visita-virtual {
        margin: 0;
    }

    .container-visita-virtual .col-lg-4 {
        padding: 0;
    }

    .container-visita-virtual .row>div.col-lg-4:nth-child(2) .card.card-visita {
        background-color: #F9F9F9;

    }

    .card.card-visita {
        padding: 40px 16px;
        border-radius: 0;
        box-shadow: none;
        gap: 24px;
    }

    .card.card-visita .card-title {
        text-align: left;
    }

    .card.card-visita .card-header {
        flex-flow: row;
        gap: 12px;
        padding-top: 24px;

    }

    .card.card-visita .card-video-preview .iframe-wrapper {
        height: 190px;
    }

    .close-overlay {
        right: 0;
    }

    .video-content {
        width: 100%;
        height: 40%;
    }


    /* BLOG Noticias y eventos */

    main.blog .container {
        padding: 50px 16px;
    }

    main.blog .post {
        margin: 0;
    }

    main.blog .card {
        padding: 16px;
    }

    main.blog .card .card-body span.date {
        padding: 5px 10px;
        top: 26px;
    }

    main.blog .card .card-body span.date p.dia {
        font-size: 16px;
    }

    main.blog .card .card-body span.date p.mes-ano {
        font-size: 14px;
        font-weight: 600;

    }

    main.blog .card .card-img-top {
        height: 175px;
    }

    main.blog .card .card-body span.lugar-etiqueta {
        flex-flow: column;
        align-items: start;
        margin-bottom: 8px;
    }

    main.blog .card .card-body span.lugar-etiqueta p {
        line-height: 1;
    }

    main.blog .card .card-text {
        font-size: 16px;
        margin-bottom: 16px;
    }

    main.blog .row>.post:nth-child(1) .card {
        padding: 16px;
        /* border-bottom: 5px solid var(--third-color); */
    }

    /* single noticias y eventos */

    .cabecera-single,
    .cabecera-archive-servicios,
    .cabecera-page {
        margin: 0 !important;
    }


    main.single .content-single {
        padding: 40px 16px;
    }

    main.single .blog-single-content {
        padding: 0;
    }

    main.single .content-single .row {
        --bs-gutter-x: 0;
    }

    main.single .blog-single-content {
        border: none;
        box-shadow: none;
    }

    main.single span.date {
        top: 26px;
        padding: 6px 12px;
    }

    main.single span.date p.dia {
        font-size: 16px;
    }

    main.single span.date p.mes-ano {
        font-size: 14px;
    }

    main.single h2 {
        color: var(--main-color);
    }
	
	main.single .thumbnail-single-block{
	height:280px;}

    main.single .content.the-content p,
	 main.single .content.the-content a,
	 main.single .content.the-content li{
        font-size: 16px;
    }

    main.single span.lugar-etiqueta {
        display: flex;
        flex-flow: column;
        align-items: start;
        gap: 16px;
        margin: 32px 0;
    }

    main.single span.lugar-etiqueta p {
        line-height: 120%;
    }

    aside.sidebar .wp-block-latest-posts__list li {
        display: block;
    }

    /* paginación */

    nav.blog-pagination {
        padding: 32px 16px;
    }


    /* sidebar */

    aside.sidebar .widget_block:last-child {
        padding: 24px;
        margin: 0;
    }

    aside.sidebar .wp-block-search__button {
        width: 55px;
        height: 55px;
    }

    .sidebar .widget h2.widgettitle+ul {
        max-height: none;
        overflow: auto;
    }

    aside.sidebar .widget_categories {
        margin-bottom: 0;
    }






    /* CONTACTO */

    .container-contacto .col-form {
        padding: 12px;
    }


    /* CABECERA SINGLE PRODUCTOS */

    .single-productos section.cabecera>.container>.row>.col-12 {
        order: 2;
    }

    .single-productos section.cabecera {
        padding-top: 0;
    }

    .single-productos .form-container {
        margin-top: 30px;
    }

    .cabecera .img.right.bg-seccion-absolute img {
        object-fit: cover;
        display: block;
        width: auto;
        max-width: 500%;
        height: 400px;
        min-height: 100%;
        min-width: 100%;
    }


    .single-productos section.cabecera>.container>.row>.col-12.col-lg-6 {
        margin-top: 35px;
    }

    .single-productos section.cabecera>.container>.row.row-reverse-tablet>.col-12.col-lg-6 {
        margin-top: 0;
    }

    section.banner-datos h3 {
        font-size: 60px;
    }

    .boton {
        padding: 0 15px;
    }

    a.cta-button {
        padding: 15px 20px;
        font-size: 16px;
    }

    .single-productos section.productos {
        margin-top: 45px;
    }

    footer {
        margin-top: 45px;
        padding-top: 45px;
    }

    section.faq {
        margin: 45px 0 45px 0;
    }

    section {
        margin-top: 45px;
    }

    .form-container input[type="submit"] {
        padding: 15px 20px !important;
        font-size: 20px !important;
    }

    section.cabecera h2.h1 {
        padding: 0 16px;
    }

    /* FOOTER */
    footer {
        margin: 0;
        padding: 0;
    }



    footer .donativos-footer {
        padding: 40px 16px;
    }

    .donativos-footer .col-12 {
        flex-flow: column;
        gap: 24px;
    }

    .donativos-footer .col-12 div {
        display: flex;
        flex-flow: column;
        justify-content: start;
        gap: 4px;
    }

    .donativos-footer .col-12 a.btn {
        width: 100%;
        border: 3px solid var(--light-color);
    }



    footer #footer {
        padding: 40px 16px;
    }

    footer .col-footer {
        justify-content: start;
    }

    footer .col-footer .container-column ul {
        gap: 8px;
    }

    footer .col-footer.contacto-footer ul {
        gap: 16px;
    }

    footer ul#menu-footer-textos-legales {
        display: flex;
        flex-flow: column;
        margin-bottom: 0;
    }

    #copyright {
        padding: 0;
        display: flex;
        gap: 40px;
    }

    .wp-block-group.container-legal-text.container {
        padding: 40px 16px;
    }
	


}

@media only screen and (max-width: 479px) {

    a.btn-icono-flecha {
        width: 50px;
    }


}