/*
 Theme Name:   Galera
 Description:  Tema de Galera
 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;
}

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

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: 1em;
}

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

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

i {
    font-style: italic;
}

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

p {
    font-size: 18px;
    line-height: 130%;
}

span {
    line-height: 130%;
}


/* error 404 */

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

section#post-404 {
    padding: 150px 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;
}

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

@font-face {
	font-family: 'Roboto'; 
	src: url('/fonts/Roboto-Regular.woff2') format('woff2');
    font-weight: 400; 
    font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Roboto'; 
	src: url('/fonts/Roboto-Bold.woff2') format('woff2');
    font-weight: 700; 
    font-style: normal;
	font-display: swap;
}*/

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

:root {
    --main-color: #B30D00;
    --main-color-hover: #932917;
    --black-color: #343434;
    --light-color: #F3F3F3;
    --grey-color: #F6F6F6;
    --input-grey-color: #D9D9D9;
}

/* --------------------------------------- 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;

    line-height: 120%;
}

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

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

.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;
}




h1,
.h1 {
    font-size: 2.2rem;
    font-weight: 700;
    line-height: 120%;
}

h2,
.h2 {
    font-size: 1.8rem;
    line-height: 120%;
    font-weight: 700;
}

h3,
.h3 {
    font-size: 1.3rem;
    font-weight: 700;
    line-height: 100%;
}

h4,
.h4 {
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 100%;
}

h5,
.h5 {
    font-size: 1.1rem;
    font-weight: 700;
    line-height: 100%;
    color: var(--main-color);
}

img {
    max-width: 100%;
    height: 100%;
    object-fit: cover;
}

.uppercase {
    text-transform: uppercase;
}

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

a:focus,
a:active {
    outline: none !important;
    box-shadow: none !important;
}

/* CABECERA TEMPLATE BÁSICO */


.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;

    z-index: 2;
}

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

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

}

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


.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;
    text-decoration: underline;
}

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

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

header .site-branding {
    padding: 15px 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: center;
}

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



header#masthead ul.primary-menu {
    display: flex;
    justify-content: flex-end;
    padding: 0;

}

header#masthead ul.primary-menu li {
    line-height: 120%;
}

header#masthead ul.primary-menu li a {
    display: block;
    font-size: 16px;
    color: var(--main-color);
    padding: 12px 16px;
}

header#masthead ul.primary-menu li a:hover {
    opacity: 0.7;
}

img.logo-img {
    max-height: 80px;
    width: auto;
    transition: 0.5s;
}

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

nav#site-navigation ul.sub-menu li {
    width: 100%
}

ul#primary-menu {
    flex-flow: row;
    display: flex;
    justify-content: end;
}

nav#site-navigation ul.menu-t1 li a {
    padding: 16px;
    display: block;
    font-size: 16px;
    color: var(--main-color);

}

nav#site-navigation ul.menu-t1 li a:hover {
    opacity: 0.8;
}

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

header#masthead ul#primary-menu li.menu-item-has-children>a {
    padding-right: 40px;
    color: var(--main-color);
}

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";
    color: var(--main-color);
}

/* HOME */

.wp-block-cover.hero-home {
    min-height: 640px;
}

.wp-block-cover.hero-home h2 {
    font-size: clamp(45px, 5vw, 60px) !important;
    font-weight: 600;
    line-height: 1;
    margin-bottom: 50px;
}

.wp-block-cover.hero-home p {
    font-size: 24px;
    margin-bottom: 8px;
    font-weight: 300;
    line-height: 120%;
}

.wp-block-cover.hero-home .wp-block-button__link {
    padding: 10px 20px;
    border-radius: 10px;
    background-color: var(--main-color);
    color: var(--light-color);
    font-size: 16px;
    font-weight: 700;
	height:44px; 
	display:flex;
	align-items:center;

}

.wp-block-cover.hero-home .wp-block-button__link:hover {
    opacity: 0.8;
}

.accesos-rapidos {
    padding: 120px 0;
}

.accesos-rapidos .pretitulo {
    color: var(--main-color);
    margin-bottom: 4px;
}



.accesos-rapidos h3 {
    font-size: clamp(24px, 3vw, 45px);
    font-weight: 300;
    line-height: 1;
    margin-bottom: 30px;
}

.accesos-rapidos h3::after,
.ultimas-noticias h3::after {
    content: "";
    display: block;
    width: 327px;
    height: 1px;
    background-color: var(--main-color);
    margin: 16px auto 0 auto;
}

.accesos-rapidos .row {
    gap: 0;
}

.accesos-rapidos .col-lg-3 {
    padding: 0 8px;
}

.accesos-rapidos .box-acceso {
    padding: 24px 12px;
    border-radius: 8px;
    width: 100%;
    height: 100%;

}

.accesos-rapidos .box-acceso .wp-block-group__inner-container {
    gap: 16px;
    display: flex;
    flex-flow: column;
    align-items: start;
}

.accesos-rapidos .box-acceso p a {
    font-size: 20px;
    font-weight: 600;
    color: var(--light-color);
    text-decoration: none;
}

.accesos-rapidos .box-acceso:hover {
    background-color: var(--main-color-hover) !important;
}

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

.ultimas-noticias .pretitulo {
    color: var(--main-color);
    margin-bottom: 4px;
}

.ultimas-noticias h3 {
    font-size: clamp(24px, 3vw, 45px);
    font-weight: 300;
    line-height: 1;

}

article.card {
    border: none;
    border-radius: 4px;
}

article.card:hover .card-body {
    background-color: white;
}

article.card .card-header {
    height: 220px;
    border: none;
    border-radius: 5px;

}

article.card .card-body {
    padding: 24px 16px 16px 16px;
    background-color: #F6F6F6;
	justify-content:start;
}

article.card .card-body h4 {
    color: var(--black-color);
    font-size: 24px;
    font-weight: 600;
    margin-bottom: 8px;
}

article.card span.category-tag {
    color: var(--main-color);
    font-size: 16px;
    line-height: 120%;
    margin-bottom: 4px;
}

article.card .card-body p {
    color: var(--black-color);
    font-size: 18px;
    font-weight: 400;
}

section.ultimas-entradas {
    padding: 40px 0;
}



.ultimas-noticias .wp-block-button__link {
    padding: 10px 20px;
    border-radius: 10px;
    background-color: var(--main-color);
    color: var(--light-color);
    font-size: 16px;
    font-weight: 700;
	height:44px;
	display:flex;
	align-items:center;

}

.ultimas-noticias .wp-block-button__link:hover {
    opacity: 0.8;
}

.section-turismo {
    padding: 100px 0;
    gap: 100px;
    min-height: 840px;
}

.section-turismo .wp-block-column {
    display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: start;
    gap: 32px;
}

.section-turismo h3 {
    font-size: clamp(24px, 3vw, 45px);
    font-weight: 300;
    line-height: 1;
    margin: 0;
}

.section-turismo h3::after {
    content: "";
    display: block;
    width: 200px;
    height: 5px;
    background-color: var(--main-color);
    margin-top: 32px;
}

.section-turismo p {
    font-size: 18px;
}

.section-turismo .p-principal {
    font-size: 30px;
    margin: 0;
    line-height: 140%;
}

.section-turismo figure {
    height: 100%;
}

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

.wp-block-button__link{
height:44px;
display:flex;
align-items:center;
min-width:200px;
justify-content:center;
}

.section-turismo .wp-block-button__link {
    padding: 10px 20px;
    border-radius: 10px;
    background-color: var(--main-color);
    color: var(--light-color);
    font-size: 16px;
    font-weight: 700;
	height: 44px;
    display: flex;
    align-items: center;
    min-width: 200px;
    justify-content: center;

}

.section-historia.wp-block-cover {
    min-height: 530px;
}

.section-turismo .wp-block-button__link:hover {
    opacity: 0.8;
}

.section-historia .pretitulo {
    margin-bottom: 4px;
}


.section-historia h3 {
    font-size: clamp(24px, 3vw, 45px) !important;
    font-weight: 600;
    line-height: 120%;
    margin-bottom: 40px;
    line-height: 1;

}

.section-historia .container .wp-block-group__inner-container {
    width: 60%;
    margin: 0 auto 0 0;
}



.section-historia h3::after {
    content: "";
    display: block;
    width: 609px;
    height: 1px;
    background-color: var(--light-color);
    margin-top: 16px;
}

.section-historia p {
    font-size: 16px;
    margin-bottom: 40px;
    line-height: 130%;
}

.section-historia .wp-block-button.solid .wp-block-button__link {
    background-color: var(--main-color);
    color: var(--light-color);
    font-size: 16px;
    font-weight: 700;
    padding: 10px 20px;
    border-radius: 10px;
    text-decoration: none;
    transition: 0.5s;
    border: 1px solid var(--main-color);
}

.section-historia .wp-block-button.transparent .wp-block-button__link {
    background-color: transparent;
    color: var(--light-color);
    font-size: 16px;
    font-weight: 700;
    padding: 10px 20px;
    border-radius: 10px;
    text-decoration: none;
    transition: 0.5s;
    border: 1px solid var(--light-color);
}

.section-historia .wp-block-button__link:hover {
    opacity: 0.8;
}

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

.contacto .contact-block .text-block{
display:flex;
flex-flow:column;
gap:5px;
}

/* HISTORIA DE GALERA */

.main-historia .texto-texto,
.main-historia .texto-img {
    padding: 100px 0;
}

.main-historia .texto-img{
gap:100px;}

.main-historia .texto-texto h2,
.main-historia .texto-img h2 {
    font-size: 45px;
    font-weight: 300;
    line-height: 1;
}

.main-historia .texto-texto .wp-block-column,
.main-historia .texto-img .wp-block-column {
    display: flex;
    flex-flow: column;
    align-items: start;
    justify-content: center;

}

.main-historia .texto-img figure{
	width:100%;
	height:100%;
	}
	
	.main-historia .texto-img .wp-block-image img{
		width:100%;
	
}

.main-historia .texto-texto .p-principal,
.main-historia .texto-img .p-principal {
    font-size: 30px;
    font-weight: 400;
    line-height: 125%;
    margin-bottom: 24px;
}

.main-historia .texto-texto p,
.main-historia .texto-img p {
    font-size: 18px;
    line-height: 130%;
}

.main-historia .texto-texto .wp-block-separator,
.main-historia .texto-img .wp-block-separator {
    color: var(--main-color);
    width: 200px;
    opacity: 1;
    height: 5px;
    margin: 32px 0;
}

.main-historia .texto-texto .wp-block-button__link,
.main-historia .texto-img .wp-block-button__link {
    padding: 10px 20px;
}

.main-historia .wp-block-cover {
    min-height: 540px;
}

.main-historia .wp-block-cover .container .wp-block-group__inner-container {
    width: 60%;
    margin: 0 auto 0 0;
}

.main-historia .wp-block-cover .pretitulo {
    margin-bottom: 4px;
}

.main-historia .wp-block-cover h3 {
    font-size: 45px !important;
    font-weight: 600px;
    line-height: 1;
}

.main-historia .wp-block-cover .wp-block-separator {
    width: 300px;
    opacity: 1;
    height: 1px;
    margin: 16px 0 40px 0;
    box-sizing: border-box;
}

.main-historia .wp-block-cover p {
    font-size: 18px;
    line-height: 130%;
}

/* FIESTAS  */

.main-fiestas {
    padding: 100px 0;
}

.main-fiestas .pretitulo {
    font-size: 20px;
    color: var(--main-color);
    margin-bottom: 8px;
}

.main-fiestas h2 {
    font-size: clamp(24px, 5vw, 45px);
    font-weight: 300;
    line-height: 1;
    margin-bottom: 80px;
}

.main-fiestas .row {
    align-items: stretch;
}

.main-fiestas .col-lg-6 {
    padding: 12px 8px;
}

.main-fiestas .card-fiesta {
    padding: 40px 24px;
    box-shadow: 0px 4px 22.3px 0px rgba(0, 0, 0, 0.15);
    height: 100%;
    background-color: white;
    border-radius: 8px;
    display: flex;
    flex-flow: column;
    justify-content: center;
}

.main-fiestas .card-fiesta[data-url]:hover {
    box-shadow: 0px 4px 22.3px 0px rgba(0, 0, 0, 0.30);
}

.main-fiestas .card-fiesta h3 {
    font-size: clamp(30px, 5vw, 40px);
    font-weight: 700;
    color: var(--main-color);
    margin-bottom: 10px;
    line-height: 1;
}

span.card-fiesta__mes {
    color: #797979;
    text-transform: uppercase;
    font-size: 18px;
    margin-bottom: 24px;
    font-weight: 400;
}

h4.card-fiesta__titulo {
    font-size: 24px;
    font-weight: 400;
    margin-bottom: 10px;
    line-height: 1;
}

p.card-fiesta__descripcion {
    font-size: 18px;
    color: #797979;
    line-height: 130%;
    margin-bottom: 24px;
}

a.card-fiesta__enlace {
    font-size: 20px;
    color: var(--main-color);
    line-height: 1.2;
}

a.card-fiesta__enlace:hover {
    color: var(--main-color);
    opacity: 0.8;
}


/* CORPORACION */
.main-corporacion {
    padding: 100px 0;
}

.main-corporacion .pretitulo {
    color: var(--main-color);
    margin-bottom: 4px;
}

.main-corporacion h2 {
    font-size: clamp(24px, 5vw, 45px);
    font-weight: 300;
    line-height: 1;
    margin-bottom: 16px;
}

.main-corporacion .wp-block-separator {
    height: 1px;
    box-sizing: border-box;
    height: 1px;
    color: var(--main-color);
    opacity: 1;
    width: 450px;
    margin: 0 auto;
}

.main-corporacion .grupo {
    margin: 40px 0 50px 0;
}

.main-corporacion .grupo h3 {
    margin-bottom: 30px;
    color: var(--main-color);
    font-size: 24px;
    line-height: 1;
}

.main-corporacion .grupo .col-lg-3 {
    padding: 20px 12px;
}

.main-corporacion .grupo .row {
    align-items: stretch;
}

.main-corporacion .grupo .card-corporacion {
    padding: 24px;
    display: flex;
    flex-flow: column;
    align-items: center;
    border-radius: 12px;
    background: var(--Blanco, #FFF);
    /* Shadow */
    box-shadow: -4px 9px 25px -6px rgba(0, 0, 0, 0.10);
    height: 100%;
}

.main-corporacion .grupo .card-corporacion img {
    margin-bottom: 24px;
    width: 220px;
    height: 220px;
    border-radius: 999px;
    object-position: center;
}

.card-corporacion h4.card-nombre {
    color: var(--black-color);
    font-size: 24px;
    font-weight: 700;
    line-height: 1;
    text-align: center;
    margin-bottom: 4px;
}

.card-corporacion span.card-pretitulo {
    font-size: 20px;
    font-weight: 400;
    line-height: 120%;
    text-align: center;
    margin-bottom: 4px;
}

.card-corporacion span.card-cargo {
    color: var(--main-color-hover);
    font-size: 20px;
    line-height: 120%;
    text-align: center;
}

/* --- CONTACTO --- */

p.gform_required_legend {
    display: none;
}

.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;
}


/* BLOG */
main.blog .contenido {
    padding: 80px 0 120px 0;
}

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;
}

main.blog .card:hover {
    box-shadow: 0px 4px 30px 0px rgba(0, 0, 0, 0.1);
}

main.blog .card .date {
    position: absolute;
    left: 0;
    top: 0;
    background-color: var(--main-color);
    color: var(--light-color);
    padding: 16px;
    font-size: 20px;
    text-transform: uppercase;
    font-weight: 700;
}

main.blog article.card .card-body {
    gap: 16px;
    background-color: transparent;
    padding: 0 0 16px 0;
}

main.blog article.card .card-header {
    height: 370px;
}

main.blog article.card .card-body .etiqueta {
    display: flex;
    align-items: center;
    gap: 4px;
}

main.blog article.card .card-body .etiqueta span {
    font-size: 16px;
    color: #797979;
    font-weight: 400;
    padding: 0;
}

main.blog article.card .card-body h4 {
    font-size: clamp(24px, 5vw, 36px);
    font-weight: 300;
    color: var(--main-color);
    line-height: 1.2;
    margin: 0;
}

main.blog article.card .card-body .card-text {
    font-size: 20px;
    color: #797979;
    line-height: 1.3;
    font-weight: 400;
}

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

main.blog article.card .card-body a:hover {
    opacity: 0.7;
}

/* Single */
main.single .contenido {
    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);

}

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

main.single .date {
    position: absolute;
    left: 0;
    top: 0;
    background-color: var(--main-color);
    color: var(--light-color);
    padding: 16px;
    font-size: 20px;
    text-transform: uppercase;
    font-weight: 700;
}

main.single .etiqueta {
    display: flex;
    gap: 4px;
    align-items: center;
}

main.single .etiqueta span {
    color: #797979 !important;
}

main.single ._description_box h2,
main.single .the-content h2{
    font-size: clamp(24px, 5vw, 36px);
    margin-bottom: 24px;
    color: var(--main-color);
    font-weight: 300;
    line-height: 120%; 
}


main.single ._description_box h3,
main.single ._description_box h4,
main.single .the-content h3,
main.single .the-content h4{
    font-size: clamp(20px, 5vw, 24px);
    margin-bottom: 24px;
    color: var(--main-color);
    font-weight: 300;
    line-height: 120%; 
}

main.single .the-content p,
main.single .the-content a,
main.single .the-content li {
    color: #797979;
    font-size: 20px;
    line-height: 135%;
}

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

main.single .the-content ul {
    list-style: disc;
    padding-left: 20px;
    margin-bottom: 20px;
    margin-bottom: 16px;
}

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

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




/* paginacion */

/* paginacion */

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

.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(--main-color-hover);
    border: 1px solid var(--main-color-hover);
}

.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 */
aside.sidebar .widget_search,
aside.sidebar .widget_block {
    padding: 34px;
    margin-bottom: 40px;
    background-color: #F6F6F6;
    border: 1px solid #EEE;
    box-shadow: 0px 4px 30px 0px rgba(0, 0, 0, 0.04);

}

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

aside.sidebar .widget_search input {
    border: none;
}

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-hover);
    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(--black-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-hover) !important;
    font-size: 16px;
    line-height: 120%;
}

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

.wp-block-latest-posts.wp-block-latest-posts__list li {
    display: flex;
    align-items: center;

}

.wp-block-latest-posts.wp-block-latest-posts__list li a {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    /* número de líneas */
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: 16px;
}

aside.sidebar .wp-block-latest-posts__featured-image {
    width: 75px;
    min-width: 75px;
}

aside.sidebar .wp-block-latest-posts__featured-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

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

ul.wp-block-categories-list li.cat-item {
    transition: 0.3s ease;
}

ul.wp-block-categories-list li.cat-item a {
    color: #797979;
    font-weight: 400;
    font-size: 18px;
    text-decoration: none;
    line-height: 1.2;
    display: flex;
    align-items: center;
}

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

ul.wp-block-categories-list li.cat-item a::before {
    content: "";
    display: inline-block;
    width: 10px;
    height: 10px;
    background-color: #992b1f;
    /* el color del cuadrado */
    margin-right: 8px;
    vertical-align: middle;
}

.wp-block-cover.ayudas-subvenciones h2{
	font-weight:300;
} 

.wp-block-cover.ayudas-subvenciones .pretitulo{
font-weight:600;}

.wp-block-cover.ayudas-subvenciones .card-ayuda a{
color:var(--main-color);
}

.wp-block-cover.ayudas-subvenciones .card-ayuda a:hover{
opacity:0.7;}


/* --- CONTENIDO  --- */

.content-wrapper {
    margin-bottom: 2em;
}

.contenido-texto {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
    padding: 15px;
}

/* --- FORMULARIOS  --- */
.form-container form {
    background: white;
    border-radius: 15px;
    border: 5px solid var(--grey-color);
    box-shadow: 0 2px 6px rgb(51 51 51 / 30%);
    padding: 25px;
}

.single-productos .form-container {
    margin-top: 60px;
}

.background-main .form-container form {
    background: transparent;
    border: 5px solid transparent;
    padding: 0;
}

.background-main .form-container {
    top: 0;
}

.ancla-form {
    display: inline !important;
}

.form-cabecera form {
    text-align: left;
    margin-top: 1em;
}

.form-container .gform_wrapper .top_label input.medium,
.gform_wrapper .top_label select.medium {
    width: 100%;
}

.form-container .gform_wrapper .top_label .gfield_label,
.form-container .gform_wrapper legend.gfield_label {
    line-height: 2;
}

form label {
    width: 100%;
    margin-bottom: 0.3em;
}

form input[type="text"],
form input[type="email"],
select {
    width: 100%;
    padding: 20px 15px 10px 15px !important;
    font-size: 16px;
    border: 1px solid var(--grey-color);
}

select {
    padding: 15px !important;
}

select {
    -webkit-appearance: none;
    font-size: 16px;
}

form select+.error {
    pointer-events: none;
    line-height: 14px;
}

.gfield[type=text] label {
    position: absolute;
    left: 30px;
    top: 10px;
    transition: 0.5s;
}

.gfield input+.error,
.gfield select+.error {
    text-align: right;
    padding: 0px 60px;
    width: 100%;
    font-size: 14px;
}

.gfield input:not(:placeholder-shown)+label,
.gfield input:focus~label,
.gfield input:not(:placeholder-shown)+.error~label {
    white-space: nowrap;
    text-overflow: ellipsis;
    transform-origin: left bottom;
    font-size: 10px;
    top: 0px;
    left: 30px;
}

.gfield input:focus+label.error {
    top: -15px;
    left: 0;
    padding: 0 20px;
}

.gfield input:not(:placeholder-shown)+label.error,
.gfield input:focus+label.error {
    top: 45px;
    left: 0;
}

.gfield .form textarea {
    width: 100%;
    padding: 0.5em 0em;
    font-size: 1em;
    border: none;
    border-bottom: 1px solid #1f1f1f;
    font-size: 18px;
}

.gfield input:focus,
.gfield textarea:focus,
.gfield select:focus {
    outline: 0px solid transparent;
}

.gfield::placeholder,
.gfield:-ms-input-placeholder {
    color: #1D252C;
    font-size: 18px !important;
    padding: 5px;
}

.gfield .check input[type="checkbox"],
.gfield .check label {
    display: inline-block;
    width: auto;
}

.gfield .check label {
    padding-left: 0.5em;
    display: inline;
}

.gfield li.check input:focus {
    outline: none;
}

.gfield .wildcard {
    font-size: 1em;
    padding-left: 3px;
    vertical-align: top;
}

.gfield {
    padding-bottom: 1rem;
    padding-top: 4rem;
}


.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;
    line-height: 20px;
    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;
}

/* CONTENIDO LEGAL */

.container-legal-text {
    padding: 120px 0;
}

.container-legal-text h2 {
    font-size: clamp(24px, 5vw, 40px);
    font-weight: 600;
    margin: 24px 0;
}

.container-legal-text h3,
.container-legal-text h4 {
    font-size: clamp(20px, 5vw, 24px);
    margin: 24px 0;
    font-weight: 600;
}

.container-legal-text p {

    line-height: 130%;
    margin-bottom: 16px;
}

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

.container-legal-text strong {
    line-height: 120%;

}

.container-legal-text a {
    line-height: 120%;
    text-decoration: underline;
    color: var(--black-color);
    font-weight: 600;

}

.container-legal-text a:hover {
    opacity: 0.6;
}

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

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

.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: initial;
    list-style-type: decimal;
}

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

}

.container-legal-text p,
.container-legal-text li,
.container-legal-text strong,
.container-legal-text a {
    font-size: 18px;
}


/* --- PAGINATION --- */
.blog-pagination {
    display: flex;
    justify-content: center;
    align-items: center;
}

/* .blog-pagination>* {
    width: 44px;
    height: 44px;
    border-radius: 500px;
    background: var(--dark-grey-color);
    display: flex;
    justify-content: center;
    align-items: center;
    color: white;
    font-weight: 700;
    margin-right: 15px;
    font-size: 20px;
    transition: 0.5s;
} */

/* .blog-pagination>a:hover {
    background: var(--main-color);
    font-size: 24px;
    color: white;
    box-shadow: 0 2px 6px rgb(51 51 51 / 30%);
} */

/* .blog-pagination>span {
    width: 44px;
    height: 44px;
    border-radius: 500px;
    background: var(--main-color);
    display: flex;
    justify-content: center;
    align-items: center;
    color: white;
    font-weight: 700;
    margin-right: 15px;
    font-size: 22px;
} */

/* --- BLOG --- */
.thumbnail-single-block img {
    object-fit: cover;
    min-width: 100%;
    min-height: 100%;
    display: block;
    margin-bottom: 30px;
}

/* --- FOOTER  --- */



#colophon {
    margin: 0;
    padding: 80px 0;
    background-color: var(--main-color);
}

footer>*,
footer a,
footer p {
    color: var(--light-color);
}


footer {
    background-color: #313232;
    padding-bottom: 0;
    padding-top: 0;
    height: auto;
}

footer .first-row {
    margin-bottom: 40px;
}

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

footer .first-row .logo-footer {
    display: flex;
    flex-flow: column;
    align-items: start;
    gap: 24px;
}

footer .first-row .contacto-footer {
    display: flex;
    flex-flow: column;
    align-items: start;
    gap: 12px;
}

footer .first-row .logo-footer li,
footer .first-row .logo-footer li a {
    display: flex;
    flex-flow: row;
    align-items: center;
    gap: 12px;
    padding: 0;
}


footer .first-row .logo-footer li a:hover {
    opacity:0.8;
    color: var(--light-color);
}

footer .first-row .social-icons {
    display: flex;
    gap: 50px;
}

footer .first-row .social-icons a:hover i {
    color: var(--light-color);
    opacity: 0.8;
}

footer .first-row .social-icons i::before {
    font-size: 22px;
}


footer .first-row .col-footer li {
    padding: 0;
}

footer .first-row .col-footer h3 {
    font-size: 20px;
    margin-bottom: 16px;
}

footer .first-row .col-footer ul {
    display: flex;
    flex-flow: column;
    align-items: start;
    gap: 8px;
}

footer .first-row .col-footer ul a:hover {
    opacity:0.8;
    color: var(--light-color);
}

#copyright {
    border-top: 1px solid var(--dark-grey-color);
    padding-top: 20px;
}

#copyright li {
    padding: 0 !important;
}

#copyright p {
    font-size: 16px;
    ;
}

#copyright a {
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
    line-height: 120%;
    margin-right: 15px;
}

#copyright a:hover {
    opacity:0.8;
    color: var(--light-color);
}

/* - Firma Idento - */

.wrapper-idento {
    display: inline-block;
    vertical-align: middle;
}

.firma-idento {
    background: url(img/logo-idento-1.png);
    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.white {
    background-image: url(/images/idento_neg.svg);
}

.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 #000001;
    padding: 0.5rem;
}

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

/* CONTACTO */

.page-template-template-contacto main {
    padding-top: 160px;
}

.contact-block {
    display: flex;
    gap: 8px;
}

.contacto h2 {
    font-size: 45px;
    font-weight: 300;
    
	line-height:1;
}

/* Contacto template styles */
.contact-block .h3 {
    color: var(--main-color);
    font-size: 20px !important;
    line-height: 1;
    margin: 0;
}

.contact-block span a {
    color: var(--black-color);
    text-decoration: none;
}

.contact-block span a:hover {
    text-decoration: underline;
}

form input[type="text"],
form input[type="email"],
form input[type="tel"],
select,
textarea {
    border-radius: 8px;
    border: 1px solid var(--input-grey-color);
    padding: 16px 15px 16px 15px !important;
    margin: 0;
}

form input[type="submit"] {
    padding: 10px 20px;
    font-size: 16px;
    margin: 0;
}

.gform_legacy_markup_wrapper.gf_browser_chrome .gfield_checkbox li input,
.gform_legacy_markup_wrapper.gf_browser_chrome .gfield_checkbox li input[type=checkbox],
.gform_legacy_markup_wrapper.gf_browser_chrome .gfield_radio li input[type=radio] {
    margin-top: 0px;
}

.gform-field-label a {
    color: var(--black-color);
    font-weight: 700;
    text-decoration: underline;
}

.gform-field-label a:hover {
    opacity: 0.7;
}

li.gfield.gfield--type-checkbox a {
    color: var(--black-color);
    font-weight: 700;
    text-decoration: underline;
}

li.gfield.gfield--type-checkbox a:hover {
    text-decoration: none;
}

form input[type="submit"] {
    border-radius: 10px;
    background: var(--main-color);
    transition: .2s;
    box-shadow: 0px 18px 41.4px 0px rgba(0, 0, 0, 0.16);
}

form input[type="submit"]:hover {
    background: var(--main-color-hover);
    box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.16);
}

.gform_legacy_markup_wrapper .gform_footer {
    padding: 0 !important;
}

h2.gform_title,
p.gform_description,
p.gform_required_legend {
    margin-bottom: 15px;
}

.gfield {
    padding: 0;
}

.gform_wrapper.gravity-theme .gform_fields {
    grid-row-gap: 24px !important;
}


/* Página default */
.page-template-default main {
    padding: 100px 0 0 0;
}

h2.subrayado,
.h2.subrayado {
    position: relative;
    display: inline-block;
}

h2.subrayado::after,
.h2.subrayado::after {
    position: absolute;
    width: 100%;
    height: 1px;
    background: var(--main-color);
    content: '';
    bottom: -15px;
    left: 0;
}


/* COSAS GENERALES */

p.has-medium-font-size {
    font-size: 16px !important;
    font-weight: 400;
    line-height: 26px;
}

hr.separador {
    opacity: 1;
    border: 0;
    margin: 16px 0 40px 0;
}



/* --- RESPONSIVE  --- */

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

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

    .main-corporacion .grupo .col-lg-3 {
        width: 50%;
    }
	
	.main-historia .texto-img {
    gap: 50px;
	}
}

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

    header#masthead .navbar-expand-lg {
        flex-flow: column;
    }

    header#masthead .flex-header {
        flex-flow: column;
        width: 100%;
    }
}

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

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

    /* HEADER MENU */

    header#masthead .navbar-collapse {
        width: 100%;
    }

    header#masthead .flex-header .menu-movil {
        width: 100%;
        padding: 10px 16px;
        background-color: var(--main-color);
    }

    header#masthead .container {
        max-width: 100%;
    }

    header .site-branding {
        padding: 0;
    }

    header a.site-title {
        padding: 10px 0;
    }

    header button.navbar-toggler {
        border: none;
        display: flex;
        align-items: center;
        gap: 8px;
    }

    .navbar-light .navbar-toggler i {
        font-size: 24px;
        color: var(--light-color);

    }

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

    header#masthead ul#primary-menu {
        flex-flow: column;
    }

    header#masthead ul#primary-menu li a {
        padding: 16px 24px;
        border-bottom: 1px solid var(--main-color-hover);
    }

    header#masthead ul#primary-menu li a:focus,
    header#masthead ul#primary-menu li.menu-item-has-children>a:focus,
    header#masthead ul#primary-menu li.menu-item-has-children>a:active {
        background-color: var(--grey-color);
    }

    nav#site-navigation ul.sub-menu {
        position: static;
    }

    nav#site-navigation ul.sub-menu li a::before {
        content: "\f054";
        font-family: "Font Awesome 6 Free";
        font-weight: 900;
        display: inline-block;
        margin-right: 8px;
        font-size: 12px;
        vertical-align: middle;
    }


    header a.telefono {
        display: flex;
        align-items: center;
        color: var(--light-color);
        font-size: 16px;
        font-weight: 700;
        gap: 10px;
        padding: 4px 10px;
        border: 1px solid var(--light-color);
        border-radius: 999px;
    }

    header a.telefono img {
        width: 20px;
        height: 20px;
    }

    header button.navbar-toggler span {
        color: var(--light-color);
        font-size: 16px;
    }
	
	.accesos-rapidos .row{
		flex-wrap: wrap;
	}
	
	.accesos-rapidos .col-lg-3{
	width:50%;
	padding:4px;
	}

    /* BLOG */
    main.blog .contenido{
        padding: 60px 16px;
    }
	
	main.single .contenido{
	padding: 60px 16px 40px 16px;
	}
	

    main.blog .card {
        padding: 16px;
        gap: 24px;
    }

    main.blog .card .date {
        padding: 5px 16px;

    }

    main.blog article.card .card-header {
        height: 256px;
    }

    main.blog article.card .card-body a {
        font-size: 18px;
    }

    nav.blog-pagination {
        padding: 24px 16px;
        margin-bottom: 24px;
    }

    /* single mobile */
    main.single .contenido .row {
        margin: 0;
    }

    main.single .date {
        padding: 5px 16px;

    }

    main.single .blog-single-content {
        padding: 16px;
        gap: 24px;
    }

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


    main.single .the-content p,
    main.single .the-content a,
    main.single .the-content li {

        font-size: 18px;
    }

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

    main.single .the-content ul {
        list-style: disc;
        padding-left: 20px;
        margin-bottom: 12px;

    }

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

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

    aside.sidebar .wp-block-search__button {
        width: 50px;
        height: 50px;
    }

    /* FOOTER */

    footer#colophon {
        padding: 40px 30px;
    }

    footer#colophon .container {
        padding: 0;
    }

    footer#colophon a.site-title {
        height: 60px;
    }

    footer .first-row {
        margin: 0;
    }

    footer .first-row .logo-footer,
    footer .first-row .col-footer {
        margin-bottom: 50px;
        padding: 0;
    }

    #copyright {
        padding: 0;
    }

    ul#menu-textos-legales-footer {
        display: flex;
        flex-flow: column;
        align-items: start;
        gap: 8px;
        margin-bottom: 50px;
    }

    #copyright p {
        justify-content: start !important;
    }

    .wrapper-idento {
        margin-top: 12px;
    }

    .gfield {
        padding-bottom: 0;
    }


}



@media only screen and (max-width: 767px) {
	
	 section.error-404 {
        padding-top: 113px;
    }
	
	  section#post-404 {
        padding: 50px 16px;

    }
	
	.wp-block-button__link{
	min-width:auto;
	}


    /* CABECERA TEMPLATE BÁSICO y SINGLE*/

    .cabecera.hero-container-fluid,
    .cabecera-single {
        padding-top: 113px !important;
    }

    .cabecera.hero-container-fluid {
        min-height: 360px !important;
    }

    main.single .cabecera.hero-container-fluid {
        min-height: 500px !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,
    .cabecera-single .hero-content p#breadcrumbs {
        margin: 0;
    }

    .cabecera-single .hero-content {
        padding: 0 16px;
    }

    /* HOME */
    .wp-block-button__link {
        line-height: 2;
    }

    .wp-block-cover.hero-home {
        height: 580px;
    }

    .wp-block-cover.hero-home p {
        text-transform: uppercase;
        font-size: 16px;
        font-weight: 600;
    }

    .accesos-rapidos {
        padding: 60px 16px;
        margin: 0 auto;
    }

    .accesos-rapidos h3::after,
    .ultimas-noticias h3::after {
        width: 200px;
    }

    .accesos-rapidos .col-lg-3 {
        width: 50%;
        padding: 4px;
    }

    .accesos-rapidos .row {
        flex-wrap: wrap !important;
        gap: 0;
        align-items: stretch;
    }

    .ultimas-noticias {
        margin: 0;
        padding: 40px 0 60px 0;
    }

    .ultimas-noticias .row {
        flex-wrap: nowrap;
        overflow-x: auto;
        margin: 0 !important;
    }

    section.ultimas-entradas {
        margin: 0;
    }

    section.ultimas-entradas .container {
        padding: 0;
    }



    .section-turismo {
        padding: 60px 0 50px 0;
        gap: 40px;
    }

    .section-turismo h3::after {
        margin-top: 16px;
        height: 1px;
    }

    .section-turismo .p-principal {
        font-size: 24px;
    }

    .section-turismo p {
        font-size: 20px;
    }

    .section-turismo .wp-block-column.contenido {
        align-items: left;
        padding: 0 16px;
    }

    .section-turismo .wp-block-buttons,
    .section-turismo .wp-block-buttons .wp-block-button {
        width: 100%;
    }

    .section-turismo .wp-block-button {
        display: flex !important;
        justify-content: center;
        align-items: center;
    }

    .section-historia {
        padding: 60px 16px;
        min-height: 480px;
    }


    .section-historia .pretitulo {
        text-align: center;
    }

    .section-historia h3 {
        text-align: center;
    }

    .section-historia .container {
        padding: 0;
    }

    .section-historia .container .wp-block-group__inner-container {
        width: 100%;
    }

    .section-historia h3::after {
        width: 100%;
    }

    .section-historia .wp-block-buttons {
        justify-content: center;
        flex-wrap: nowrap;
    }

    .section-historia .wp-block-buttons .wp-block-button {
        width: 50%;
    }

    .section-historia .wp-block-buttons .wp-block-button a {
        width: 100%;
        font-weight: 400;
    }

    .section-historia p {
        line-height: 150%;
    }

    .main-home .contacto {
        padding: 60px 24px;
        gap: 24px;
    }

    /* HISTORIA DE GALERA mobile */
    .main-historia .texto-texto,
    .main-historia .texto-img {
        padding: 60px 16px;
    }
	
	
	.main-historia .texto-img .wp-block-image img{
		height:430px;
	}

    .main-historia .texto-texto .p-principal,
    .main-historia .texto-img .p-principal {
        font-size: 24px;
    }

    .main-historia .wp-block-cover {
        min-height: 620px;
        padding: 60px 16px;
    }

    .main-historia .wp-block-cover .container {
        padding: 0;
    }

    .main-historia .wp-block-cover span.wp-block-cover__background {
        background: rgba(0, 0, 0, 0.6) !important;
    }

    .main-historia .wp-block-cover .container .wp-block-group__inner-container {
        width: 100%;
        display: flex;
        flex-flow: column;
        align-items: center;
    }

    .main-historia .wp-block-cover h3 {
        text-align: center;
    }

    /* FIESTAS MOBILE */

    .main-fiestas {
        padding: 80px 20px 40px 20px;
    }

    .main-fiestas .pretitulo {
        font-size: 16px;
    }

    .main-fiestas h2 {
        margin-bottom: 16px;
    }

    .main-fiestas .col-lg-6 {
        padding: 5px 0;
    }

    .main-fiestas .card-fiesta {
        padding: 20px;
    }
	
	.main-fiestas .card-fiesta a.card-fiesta__enlace{
	font-size:18px;}

    .main-fiestas .container {
        padding: 0;

    }

    .main-fiestas h2 {
        margin-bottom: 30px;
    }

    .main-fiestas h2::after {
        content: "";
        display: block;
        height: 1px;
        background-color: var(--main-color);
        margin: 16px auto 16px auto;
        width: 290px;
    }

    .main-fiestas .row {
        margin: 0;
    }

    /* CORPORACION MOBILE */

    .main-corporacion .grupo .col-lg-3 {
        width: 100%;
        padding: 0;
    }

    .main-corporacion .grupo .row {
        gap: 24px;
        margin: 0;
    }

    .main-corporacion {
        padding: 60px 16px 20px 16px;
    }

    .main-corporacion .wp-block-separator {
        width: 240px;
        margin: 0 auto 40px auto;
    }

    .main-corporacion .grupo h3 {
        margin-bottom: 24px;
    }

    .main-corporacion .grupo {
        margin: 0 0 40px 0;
    }

    .main-corporacion .grupo .card-corporacion {
        min-height: 400px;
    }


    .contacto hr.separador {
        margin: 16px 0 24px 0;
    }

    .gform_wrapper.gravity-theme .gform_fields {
        grid-row-gap: 10px !important;
    }

    .gform_wrapper.gravity-theme .ginput_complex span {
        margin: 0 !important;
    }

    .gform_wrapper.gravity-theme input {
        line-height: 1 !important;
    }

    .gfield_checkbox {
        display: flex;
        justify-content: center;
        margin-top: 14px;
        margin-bottom: 24px;
    }

    .gform_footer {
        padding: 0 !important;
        margin: 0 !important;
    }

    .gform_footer input[type="submit"] {
        width: 100%;
        line-height: 2 !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;
    }


    .form-container input[type="submit"] {
        line-height: 1 !important;
    }


    .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;
    }

    .sidebar .widget h2.widgettitle::after {
        position: absolute;
        content: "\f107";
        font-family: 'Font Awesome 5';
        font-weight: 900;
        right: 15px;
        font-size: 24px;
        cursor: pointer;
        transition: 0.5s;
        width: 44px;
        height: 44px;
        border-radius: 500px;
        background: var(--main-color);
        display: flex;
        justify-content: center;
        align-items: center;
        color: white;
        top: 0;
    }

    .sidebar .widget h2.widgettitle+ul {
        max-height: 0;
        overflow: hidden;
        transition: .5s;
    }

    .sidebar .widget h2.widgettitle.desplegado::after {
        transform: rotate(180deg);
    }

    .sidebar .widget h2.widgettitle.desplegado+ul {
        max-height: 500px;
    }


    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: 16px !important;
    }

    section.cabecera h2.h1 {
        font-size: 2rem;
    }

    /* Estilos de títulos y cosas generales */
    h2.has-x-large-font-size {
        font-size: 28px !important;
        font-weight: 600 !important;
    }

    /* CONTENIDO LEGAL MOBILE */
    .container-legal-text {
        padding: 60px 16px;
    }

    .container-legal-text p,
    .container-legal-text li,
    .container-legal-text strong,
    .container-legal-text a {
        font-size: 16px;
    }
}

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


}