/*  
Theme Name: Ski Las Parvas
Theme URI: http://www.suragencia.com
Description: Tema desarrollado por Suragancia.com - Derechos reservados uso exclusivo bajo licencia.	
Version: 1
Author: Suragencia.com
Author URI: https://www.suragencia.com
*/

.cleared {
	display:block;
	clear: both;
	float: none;
	margin: 0;
	padding: 0;
	border: none;
	font-size: 0;
	height:0;
	overflow:hidden;
  }

body {
	font-family: 'Rubik', sans-serif;
	font-size: 16px;
	text-align: justify;
	color: #3B3B3B;
	padding: 0; 
  	margin:0;
	background-color: white;
  	background-image: url('images/Bottom_texture.jpg');
  	background-repeat: repeat-y;
  	background-attachment: scroll;
  	background-position: top center;
	-webkit-text-size-adjust: none;
	-webkit-touch-callout: none;
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
}

h1,h2,h3,h4,h5,h6 {
	color: red;
	font-weight: 700;
	line-height: 100%;
	letter-spacing: 0px;
	padding: 0;
	margin: 0;
	margin-bottom: 20px;
}

h1 {
	font-family: "Source Sans 3", sans-serif;
	font-size: 40px;
	color: black;
}

h2 {
	font-family: "Source Sans 3", sans-serif;
	font-size: 22px;
	color: black;
	text-align: center;
}

.linea {
	background-color: lightgrey;
	width: 100px;
	height: 2px;
	margin: 0 auto;
}

.tituloh2 {
	padding: 30px 0px;
}

h3 {
	font-family: "Source Sans 3", sans-serif;
	font-size: 22px;
	color: white;
	font-weight: 400;
	margin-bottom: 30px;
	text-align: left;
	border-left: 4px solid #CC0000;
	padding-left: 3px;
}

h4 {
	font-family: "Source Sans 3", sans-serif;
	font-size: 20px;
	color: black;
}

h5 {
	font-family: "Source Sans 3", sans-serif;
	font-size: 15px;
	color: black;
}

h6 {
	color: #3B3B3B;
	font-size: 15px;
	font-weight: 400;
	line-height: 125%;
	margin-top: 10px;
}

h7 {
	color: white;
	font-size: 24px;
	font-weight: 400;
	line-height: 100%;
	margin: 0;
	padding-top: 4px;
}

.form-txt {
	text-align: center;
	padding-top: 10px;
	width: 600px;
	height: 24px;
	margin: 0 auto;
	letter-spacing: 1px;
	font-weight: 400;
	line-height: 100%;
	z-index: 1;
}

.form-txt p {
	font-family: "Source Sans 3", sans-serif;
	font-size: 22px;
	color: white;
	letter-spacing: 1px;
	font-weight: 400;
	line-height: 100%;
	padding-top: 5px;
}

img {
  height: auto;
  max-width: 100%;
}

p {
	font-family: 'Rubik', sans-serif;
	line-height: 150%;
	font-size: 17px;
	margin-top: 0;
	margin-bottom: 20px;
	letter-spacing: 0px;
	color: #3B3B3B;
}
 
p a,
p a:link,
p a:visited,
p a:hover {
	color: blue;
	text-decoration: none;
}

a, a:visited {
	color: blue;
	text-decoration: none;
}

/*------ header ------  */

.header {
	position: relative;
	margin: 0 auto;
	padding: 0px 0;
	width: 100%;
	min-height: 80px;
	z-index: 1;
	/*background-image: url('images/header.png');*/
	background-repeat: no-repeat;
	background-size: cover;
	background-position: right top;
	background-color: white;
	box-sizing: border-box;
}

.header-wrap {
	position: relative;
	width:100%;;
	min-height: 350px;
	margin: 0 auto;
	padding:  0;
	text-align: left;
	color: white;
	font-weight: 300;
	font-size: 14px;
	letter-spacing: 1px;
	z-index: 1;
	box-sizing: border-box;
}

.header-left {
	width: 70%;
	height: 350px;
	float: left;
	text-align: left;
	padding: 0px;
	box-sizing: border-box;
	background-image: url('images/logo-60.png');
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	z-index: 3;
}

.header-left-text {
	width: 130px;
	min-height: 350px;
	float: left;
	padding: 0px;
	box-sizing: border-box;
	z-index: 3;
	/*background-image: url('images/logo-texto.png');*/
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center left;
}

.header-right {
	width: 30%;
	min-width: 300px;
	min-height: 340px;
	float: right;
	padding: 0px;
	margin-top: 0px;
	margin-bottom: 0px;
	box-sizing: border-box;
	background-image: url('images/logo-background.jpg');
	background-repeat: repeat-x;
	background-position: center bottom;
	z-index: 3;
}

.header-right-logo {
	width: 30%;
	min-width: 280px;
	height: 350px;
	margin: 0 auto;
	padding: 0px;
	box-sizing: border-box;
	background-image: url('images/logo.png');
	background-repeat: no-repeat;
	background-position: center bottom;
	z-index: 3;
}

.header-right-text {
	width: 389px;
	min-height: 340px;
	float: right;
	padding: 0px;
	box-sizing: border-box;
	z-index: 3;
	font-size: 28px;
	font-weight: 400;
	text-align: left;
	color: #018CCD;
	padding-left: 30px;
	display: flex;
  	align-items: center;
  	justify-content: start;
}

/*------ nav ------  */

.nav {
	width: 100%;
	padding: 0;
	min-height: 1px;
	z-index: 1;
	text-align: center;
}

.nav-wrap {
	width:96%;
	min-width: 100px;
	max-width: 1390px;
	min-height: 40px;
	padding: 10px 0;
	position: relative;
	margin: 0 auto;
	letter-spacing: 1px;
}

.nav-left {
	width: 150px;
	height: 150px;
	margin-top: 0px;
	float: left;
	text-align: left;
	padding: 0;
	background-image: url('images/logo.png');
	background-repeat: no-repeat;
	background-size: 100% 100%;
}

.nav-right {
	width: 700px;
	float: left;
	text-align: left;
	padding-top: 5px;
	margin-left: 10px;
	margin-top: 30px;
	font-family: "Source Sans 3", sans-serif;
	font-weight: 400;
	font-size: 42px;
	line-height: 100%;
	color:white;
	letter-spacing: 0;
}

/* ------ menu ------ */

.menu {
	position: relative;
	width: 100%;
	height: 70px;
	padding: 0px;
	background-color: #9D9E9F;
	margin: 0;
	z-index: 1;
	box-sizing: border-box;
	display: flex;
  	align-items: center;
  	justify-content: center;
	font-family: "Source Sans 3", sans-serif;
	text-align: center;
	letter-spacing: 1px;
	font-weight: 400;
	font-size: 26px;
	line-height: 100%;
	color: white;
}

.menu-2 {
	position: relative;
	width: 100%;
	min-height: 70px;
	padding: 0px;
	background-color: #00308E;
	margin: 0;
	z-index: 99999;
	box-sizing: border-box;
	display: flex;
  	align-items: center;
  	justify-content: end;
	text-align: right;
	letter-spacing: 1px;
	font-weight: 400;
	font-size: 26px;
	line-height: 100%;
	color: white;
}

.menu-2 a,
.menu-2 a:link,
.menu-2 a:visited,
.menu-2 a:hover {
	color: white;
}

.menu-3 {
	position: relative;
	width: 100%;
	height: 70px;
	padding: 5px 0;
	background-color: #1B4478;
	margin: 0;
	margin-bottom: 50px;
	z-index: 1;
	box-sizing: border-box;
}

.menu-3-menu {
	position: relative;
	float: left;
	width: 60px;
	height: 60px;
}


.menu-3-revista {
	position: relative;
	margin: 0 auto;
	width: 300px;
	height: 60px;
	text-align: center;
	display: flex;
  	align-items: center;
  	justify-content: center;
	font-family: "Source Sans 3", sans-serif;
	letter-spacing: 1px;
	font-weight: 700;
	font-size: 21px;
	line-height: 100%;
	color: white;
}

.menu-3-revista a,
.menu-3-revista a:link,
.menu-3-revista a:visited,
.menu-3-revista a:hover {
	color: white;
}

.menu-inferior {
	position: relative;
	width: 100%;
	min-height: 50px;
	margin: 0;
	padding: 0px;
	z-index: -1;
	box-sizing: border-box;
	display: flex;
  	align-items: center;
  	justify-content: center;
	font-family: "Source Sans 3", sans-serif;
	letter-spacing: 1px;
	font-weight: 400;
	font-size: 26px;
	line-height: 100%;
	color: white;
}

.menu-inferior-logos {
	position: relative;
	width: 100%;
	min-height: 100px;
	margin: 0;
	margin-top: 60px;
	padding: 60px 0;
	border-top: 1px solid lightgrey;
	background-color: white;
	z-index: 1;
	box-sizing: border-box;
	font-family: "Source Sans 3", sans-serif;
	letter-spacing: 1px;
	font-weight: 400;
	font-size: 33px;
	line-height: 100%;
	color: gray;
	text-align: center;
}

.menu-inferior-logos-grid {
	width: 100%;
	display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    align-content: center;
    flex-direction: row;
	box-sizing: border-box;
	background-color: #FDFDFD !important;
	text-align: center;
}

.div-logos {
	width: 300px;
	height: 150px;
	padding: 0px;
	margin: 20px;
}

#logo {
	height: auto;
	max-width: 220px;
}

.menu-inferior-titulo {
	position: relative;
	width: 100%;
	margin-bottom: 20px;
}

/* ------ body ------ */

.wrap {
	width:90%;
	min-width: 100px;
	max-width: 1390px;
	position: relative;
	margin: 0 auto;
	letter-spacing: 1px;
}

/*------ slider ------  */

.slider {
	position: relative;
	width: 100%;
	min-height: 100px;
	padding: 0px;
	margin: 0px;
	box-sizing: border-box;
	text-align: center;
}

.slider-left {
	position: relative;
	float: left;
	width: 48%;
	min-height: 200px;
	padding: 0px;
	margin: 0;
	margin-left: 10px;
	box-sizing: border-box;
}

.slider-right {
	position: relative;
	float: right;
	width: 48%;
	min-height: 200px;
	padding: 0px;
	padding-top: 10px;
	margin: 0;
	margin-right: 10px;
	box-sizing: border-box;
}

.slider-single {
	width: 100%;
	height: 390px;
	padding: 0px;
	margin: 0 0 10px 0;
	box-sizing: border-box;
	text-align: center;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	background-color: white;
}

#abajo {
	margin-bottom: 60px;
}

/*------ banner ------  */

.banner {
	width: 100%;
	min-height: 80px;
	padding: 0px;
	margin: 20px 0 20px 0;
	box-sizing: border-box;
	text-align: center;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	background-color: white;
}

.banner-2 {
	width: 100%;
	min-height: 80px;
	padding: 0px;
	margin: 20px 0 20px 0;
	box-sizing: border-box;
	text-align: center;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	background-color: white;
}

/*------ seccion ------  */

#seccion-2 {
	width: 100%;
	min-height: 100px;
	padding: 0px;
	margin: 0px;
	margin-top: 0px;
	margin-bottom: 20px;
}

#seccion-3 {
	width: 100%;
	min-height: 100px;
	padding: 0px;
	margin: 0px;
	margin-top: 60px;
}

#seccion-4 {
	width: 100%;
	padding: 60px 0 0 0;
	margin: 0px;
}

#seccion-5 {
	width: 100%;
	padding: 60px 0;
	margin: 0px;
	margin-top: 60px;
}

/* ------ columns ------ */

.columns-1 {
	float: left;
	width: 47%;
	padding: 0px;
	margin: 0px;
	box-sizing: border-box;
}

.columns-2 {
	float: right;
	width: 47%;
	padding: 0px;
	margin: 0px;
	margin-bottom: 0px;
	box-sizing: border-box;
}

.columns-3 {
	float: left;
	width: 70%;
	padding: 0;
	margin: 0px;
	box-sizing: border-box;
}

.columns-4 {
	float: right;
	width: 25%;
	padding: 0;
	margin: 0;
	box-sizing: border-box;
}

/* ------ columns ------ */

.redes {
	margin: 5px 0;
	display: flex;
  	align-items: center;
  	justify-content: center;
}

.redes-0 {
	margin: 0px 5px 0px 0px;
	float: left;
	width: 110px;
	height: 40px;
	display: flex;
  	align-items: center;
  	justify-content: flex-start;
}

.redes-1 {
	float: left;
	width: 40px;
	height: 40px;
	padding: 0px;
	margin: 0px 5px;
	box-sizing: border-box;
	background-image: url('images/redes-1.png');
	background-repeat: no-repeat;
	background-size: cover;
}

.redes-2 {
	float: left;
	width: 40px;
	height: 40px;
	padding: 0px;
	margin: 0px 5px;
	box-sizing: border-box;
	background-image: url('images/redes-2.png');
	background-repeat: no-repeat;
	background-size: cover;
}

.redes-3 {
	float: left;
	width: 40px;
	height: 40px;
	padding: 0px;
	margin: 0px 5px;
	box-sizing: border-box;
	background-image: url('images/redes-3.png');
	background-repeat: no-repeat;
	background-size: cover;
}

.redes-4 {
	float: left;
	width: 40px;
	height: 40px;
	padding: 0px;
	margin: 0px 5px;
	box-sizing: border-box;
	background-image: url('images/redes-4.png');
	background-repeat: no-repeat;
	background-size: cover;
}

.redes-5 {
	float: left;
	width: 40px;
	height: 40px;
	padding: 0px;
	margin: 0px 5px;
	box-sizing: border-box;
	background-image: url('images/redes-5.png');
	background-repeat: no-repeat;
	background-size: cover;
}

.redes-6 {
	float: right;
	width: 40px;
	height: 40px;
	padding: 0px;
	margin: 0px 5px;
	box-sizing: border-box;
	background-image: url('images/redes-6.png');
	background-repeat: no-repeat;
	background-size: cover;
}

.redes-7 {
	float: right;
	width: 40px;
	height: 40px;
	padding: 0px;
	margin: 0px 5px;
	box-sizing: border-box;
	background-image: url('images/redes-7.png');
	background-repeat: no-repeat;
	background-size: cover;
}

.redes-8 {
	float: right;
	width: 40px;
	height: 40px;
	padding: 0px;
	margin: 0px 5px;
	box-sizing: border-box;
	background-image: url('images/redes-8.png');
	background-repeat: no-repeat;
	background-size: cover;
}

.lateral {
	width:50px;
	min-height:150px;
	top: 65%;
	right:10px;
	position:fixed;
	padding: 0px;
	z-index: 9999999999;
  }

.share-icon {
	float: left;
	width: 35px;
	height: 35px;
	padding: 0px;
	margin: 0px;
	margin-right: 5px;
	box-sizing: border-box;
	background-repeat: no-repeat;
	background-size: cover;
}
  
.lateral-icon {
	width:50px;
	height:50px;
	padding: 0px;
	background-size: 100% 100%;
	z-index: 9999999999;
}

.footer-icon {
	float: right;
	width:32px;
	height:32px;
	padding: 0px;
	background-size: 100% 100%;
	z-index: 9999999999;
}

#uptop {
	background-image: url('images/bg-uptop.png');
}

#facebook {
	background-image: url('images/bg-facebook.png');
}

#instagram {
	background-image: url('images/bg-instagram.png');
}

#twitter {
	background-image: url('images/bg-twitter.png');
}

#linkedin {
	background-image: url('images/bg-linkedin.png');
}

#youtube {
	background-image: url('images/bg-youtube.png');
}

#whatsapp {
	background-image: url('images/bg-whatsapp.png');
}

#mail {
	background-image: url('images/bg-mail.png');
}

#logolt {
	background-image: url('images/bg-logo.png');
}

.volver {
	float: left;
	width: 180px;
	height: 40px;
	padding: 0px;
	margin: 0px;
	margin-top: -5px;
	box-sizing: border-box;
	background-image: url('images/volver.png');
	background-repeat: no-repeat;
	background-size: cover;
}

/* ------ footer ------ */

.footer a {
	color: lightgray;
}

.footer-up {
	position: relative;
	margin-top: 0;
	width: 100%;
	height: 400px;
	padding: 0;
	box-sizing: border-box;
	background-color: #062F61;
}

.footer {
	position: relative;
	margin: 0px;
	width: 100%;
	min-height: 100px;
	padding: 80px 0;
	bottom: 0px;
	background-color: #062F61;
	box-sizing: border-box;
}

.footer-wrap {
	width: 96%;
	min-width: 100px;
	max-width: 1390px;    
	position: relative;
	margin:0 auto;
	padding: 0;
	color: white;
}

.footer-div {
	font-size: 15px;
	color: white;
}

.footer-social {
	padding: 25px 0;
	background-color: #062F61;
	width: 100%;
	height: auto;
	position: relative;
	border-top: 1px solid #062F61;
	z-index: 99999999999999999;
}

.footer-social-wrap {
	width: 96%;
	min-width: 100px;
	max-width: 1390px;    
	position: relative;
	margin:0 auto;
	padding: 0;
	color: white;
}

/* ------ icon ------ */

#top2 {
	position: fixed;
	width: 60px;
	height: 60px;
	top: 50%;
	bottom: 50%;
	right: 30px;
	background-image: url('images/top.png');
	background-repeat: repeat-x;
	background-position: center center;
	background-size: 100% 100%;
	z-index: 9999;
	margin: 0;
	padding: 0;
}

/* ------ grilla ------ */

.grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-auto-rows: auto;
	gap: 1.5em;
	overflow: hidden;
}

.grid-2 {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-auto-rows: auto;
	gap: 3em;
	overflow: hidden;
}

.grid-3 {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-auto-rows: auto;
	gap: 6em;
	overflow: hidden;
}

.content-portada {
	background-color: white;
	padding: 0;
	overflow: hidden;
}

.content-noticia {
	background-color: white;
	padding: 0;
	overflow: hidden;
}

.content-banner {
	background-color:white;
	padding: 0;
	overflow: hidden;
}

.inside {
	padding: 10px;
	overflow: hidden;
}

.thumbnail {
	background-color: white;
}

.minititulo {
	font-family: 'Raleway', sans-serif;
	color: white;
	padding: 5px;
	margin: 0 auto 10px auto;
	width: 200px;
	font-size: 12px;
	font-weight: 700;
	background-color:#00308E;
	text-align: center;
}

.minititulo-2 {
	font-family: 'Raleway', sans-serif;
	color: #666666;
	padding: 0px;
	margin: 10px auto 5px auto;
	width: 200px;
	font-size: 12px;
	font-weight: 700;
	text-align: left;
}

.minititulo-3 {
	font-family: 'Raleway', sans-serif;
	color: white;
	padding: 5px;
	margin-bottom: 5px;
	width: 300px;
	font-size: 12px;
	font-weight: 700;
	text-align: center;
	background-color: #0A8478;
	float: left;
}

.minititulo-4 {
	font-family: 'Raleway', sans-serif;
	color: white;
	padding: 5px;
	margin-bottom: 5px;
	width: 300px;
	font-size: 12px;
	font-weight: 700;
	text-align: center;
	background-color: #0A8478;
	float: left;
}

.minititulo-5 {
	font-family: 'Raleway', sans-serif;
	color: white;
	padding: 5px;
	margin-bottom: 5px;
	width: 300px;
	font-size: 12px;
	font-weight: 700;
	text-align: center;
	background-color: #0A8478;
	float: left;
}

.div-flex {
	display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
    align-content: flex-start;
    flex-direction: column;
}

.titulo {
	width: 100%;
	margin: 0 auto;
	font-family: "Source Sans 3", sans-serif;
	color: black;
	font-size: 25px;
	font-weight: 700;
	line-height: 100%;
	letter-spacing: 0px;
	text-align: center;
	margin-bottom: 10px;
}

.titulo-interno {
	width: 100%;
	margin: 0 auto;
	font-family: "Source Sans 3", sans-serif;
	color: black;
	font-size: 36px;
	font-weight: 700;
	line-height: 100%;
	letter-spacing: 0px;
	text-align: left;
	margin-bottom: 30px;
}

.titulo-interno-2 {
	width: 100%;
	margin: 0 auto;
	font-family: "Source Sans 3", sans-serif;
	color: #666666;
	font-size: 33px;
	font-weight: 400;
	line-height: 100%;
	letter-spacing: 0px;
	text-align: center;
	margin-top: 10px;
	margin-bottom: -20px;
}

.texto {
	color: gray;
	width: 100%;
	margin: 0 auto;
	text-align: center;
}

.botonmas {
	max-width: 220px;
	border-radius: 10px;
	width: 70%;
	margin: 0 auto;
	padding: 10px 15px;
	text-align: center;
	font-size: 14px;
	color: white;
	background-color: #062F61;
}

.botonmas a,
.botonmas a:link,
.botonmas a:visited,
.botonmas a:hover {
	color: white;
}

.contenido {
	width: 100%;
	padding: 0;
	margin: 0;
}

.the_post_thumbnail {
	width:100%;
}

.wp-post-image {
	width:100%;
}

#noticia {
	padding: 9px 10px 0px 10px;
	margin: 10px 0px 10px 0px;
	background-color: white;
	box-sizing: border-box;
}

#banner {
	display: none;
}

#noticia2 {
	display: none;
}

#banner2 {
	padding: 9px 10px 0px 10px;
	margin: 10px 0px 10px 0px;
	box-sizing: border-box;
}

#green {
	color: #2D723F;
}

#white {
	color: white;
}

#grey {
	color: #393939;
}

#grey :hover {
	color: #333333;
}

input, select, textarea
{
  vertical-align: middle;
  font-family: 'Open Sans', sans-serif;
  font-style: normal;
  font-weight: none;
  font-size: 13px;
  letter-spacing: 0px;
  padding: 5px 10px;
  margin-top:5px;
  margin-bottom: 10px;
  max-width: 150px;
  width: 100%;
}

.wpcf7-submit {
	background-color: #2D723F;
	color: white;
	font-size: 13px;
	border: solid 0px;
	padding: 7px 12px;
	margin-left: 10px;
}

.form-sigamos {
	float: left;
	padding-top: 12px;
	font-size: 18px;
	height: 40px;
	width: auto;
	text-align: right;
	font-family: "Source Sans 3", sans-serif;
	font-weight: 400;
	color: #333333;
}

.form-mail {
	float: right;
	text-align: right;
	width: 252px;
	height: 40px;
}

.volver-top {
	float: right;
	text-align: right;
	margin-bottom: 0px;
}

/* Recommended by http://codex.wordpress.org/CSS */
/* Begin */
.aligncenter, div.aligncenter, .art-article .aligncenter img, .aligncenter img.art-article, .aligncenter img, img.aligncenter
{
  display: block;
  margin-left: auto;
  margin-right: auto;
}

p.aligncenter , p.center 
{
   text-align: center; 
}

.alignleft
{
  float: left;
}

.alignright
{
  float: right;
}

.alignright img, img.alignright
{
  margin: 20px;
  margin-right: 10px;
  margin-top: 10px;
}

.alignleft img, img.alignleft
{
  margin: 20px;
  margin-left: 10px;
  margin-top: 10px;
}

.wp-caption
{
  border: 1px solid #ddd;
  background-color: #f3f3f3;
  padding-top: 4px;
  margin: 10px;
  text-align: center;
}

.wp-caption img
{
  margin: 0;
  padding: 0;
  border: 0 none;
}

.wp-caption p.wp-caption-text
{
  font-size: 11px;
  line-height: 17px;
  padding: 0 4px 5px;
  margin: 0;
}

.wp-caption p
{
    text-align: center;
}

/* Esconder */

.web {
	display: block;
}

.movil {
	display: none;
}

/* =========================================
   GALERÍAS WORDPRESS CON FLEX (3 cols escritorio / 2 cols móvil)
   Mantiene alto natural, no estira elementos
   ========================================= */

.gallery,
.wp-block-gallery,
.wp-block-gallery.has-nested-images {
  display: flex !important;
  flex-wrap: wrap;
  gap: 16px; /* separación horizontal y vertical */
  align-items: flex-start; /* evita que se estiren en altura */
  justify-content: flex-start; /* justifica a la izquierda */
}

/* Ítems de la galería */
.gallery .gallery-item,
.wp-block-gallery .blocks-gallery-item,
.wp-block-gallery .wp-block-image {
  margin: 0 !important;
  flex: 0 0 calc(33.333% - 16px); /* 3 columnas fijas */
}

/* Imágenes adaptables */
.gallery .gallery-icon img,
.wp-block-gallery img {
  width: 100%;
  height: auto;
  display: block;
  border: 0px !important;
}

/* Ajuste automático si WP añade clases de columnas */
.gallery-columns-1 .gallery-item,
.wp-block-gallery.columns-1 .blocks-gallery-item,
.wp-block-gallery.columns-1 .wp-block-image {
  flex-basis: 100%;
}

.gallery-columns-2 .gallery-item,
.wp-block-gallery.columns-2 .blocks-gallery-item,
.wp-block-gallery.columns-2 .wp-block-image {
  flex-basis: calc(50% - 16px);
}

.gallery-columns-3 .gallery-item,
.wp-block-gallery.columns-3 .blocks-gallery-item,
.wp-block-gallery.columns-3 .wp-block-image {
  flex-basis: calc(33.333% - 16px);
}

.gallery-columns-4 .gallery-item,
.wp-block-gallery.columns-4 .blocks-gallery-item,
.wp-block-gallery.columns-4 .wp-block-image {
  flex-basis: calc(25% - 16px);
}

.gallery-columns-5 .gallery-item,
.wp-block-gallery.columns-5 .blocks-gallery-item,
.wp-block-gallery.columns-5 .wp-block-image {
  flex-basis: calc(20% - 16px);
}

/* ================================
   RESPONSIVE: 2 columnas en móviles
   ================================ */
@media (max-width: 768px) {
  .gallery .gallery-item,
  .wp-block-gallery .blocks-gallery-item,
  .wp-block-gallery .wp-block-image {
    flex: 0 0 calc(50% - 16px);
  }
}

/* 1 columna en pantallas muy pequeñas */
@media (max-width: 480px) {
  .gallery .gallery-item,
  .wp-block-gallery .blocks-gallery-item,
  .wp-block-gallery .wp-block-image {
    flex: 0 0 100%;
  }
}


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

.grid {
	display: grid;
	grid-template-columns: repeat(1, 1fr);
	grid-auto-rows: auto;
	gap: 1.5em;
	overflow: hidden;
}

.grid-2 {
	display: grid;
	grid-template-columns: repeat(1, 1fr);
	grid-auto-rows: auto;
	gap: 1.5em;
	overflow: hidden;
}

.grid-3 {
	grid-template-columns: repeat(1, 1fr);
}

h1 {
	font-size: 24px;
}

h2 {
	font-size: 22px;
}

h3 {
	font-size: 20px;
}

h4 {
	font-size: 18px;
}

h5 {
	font-size: 16px;
}

h6 {
	font-size: 11px;
}

/*------ header ------  */

.header {
	position: relative;
	width: 100%;
}

.header-left {
	width: 100%;
}

.header-right {
	width: 100%;
}

.header-footer {
	position: relative;
	margin: 0 auto;
	padding: 0;
	z-index: 100;
	width: 100%;
	min-height: 500px;
	background-image: url('images/header-footer-movil.png');
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	background-color: gray;
}

.header-footer-left {
	width: 230px;
	height: 310px;
	float: left;
	text-align: left;
	padding-right: 10px;
	padding-top: 16px;
	box-sizing: border-box;
	background-image: url('images/header-left.png');
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center left;
	z-index: 999999;
}

.header-footer-right {
	position: relative;
	z-index: 100;
	width: 230px;
	float: left;
	margin-left: -10px;
}

#plus {
	font-size: 26px;
	line-height: 110%;
	margin-bottom: -5px;
}

.header-form {
	display: none;
}

.header-form-movil {
	width: 100%;
	height: 80px;
	display: flex;
	flex-direction:column;
  	align-items: center;
  	justify-content: center;
	color: white;
	text-align: center;
}

/*------ form ------  */

input, select, textarea
{
  max-width: 140px;
}

/*------ nav ------  */


/* ------ menu ------ */

/* ------ columns ------ */

.columns-1 {
	float: left;
	width: 100%;
	min-height: 80px;
	padding: 0px;
	margin: 0px;
	box-sizing: border-box;
}

.columns-2 {
	float: left;
	width: 100%;
	min-height: 40px;
	padding: 0px;
	margin: 0px;
	margin-bottom: 10px;
	box-sizing: border-box;
}

.columns-3 {
	float: left;
	width: 100%;
	min-height: 40px;
	padding: 0px;
	margin: 0px;
	margin-bottom: 10px;
	text-align: justify;
	box-sizing: border-box;
}

.columns-4 {
	float: left;
	width: 100%;
	min-height: 40px;
	padding: 0px;
	margin: 0px;
	margin-bottom: 25px;
	text-align: justify;
	box-sizing: border-box;
}

/* ------ body ------ */

.wrap {
	width:94%;
	min-width: 100px;
	max-width: 1390px;
	position: relative;
	margin: 0 auto;
	letter-spacing: 1px;
}

.wrap-flex {
	display:block;
	/*flex-wrap: nowrap;*/
	/*align-items: stretch;*/
	/*align-items: center;*/
  	/*justify-content: center;*/
	width:94%;
	min-width: 100px;
	max-width: 1390px;
	position: relative;
	margin: 0 auto;
	letter-spacing: 1px;
}

/* ------ footer ------ */

.footer {
	position: relative;
	margin: 0px;
	width: 100%;
	min-height: 100px;
	bottom: 0px;
	background-image: url('images/footer-movil.png');
	background-repeat: no-repeat;
	background-size: cover;
	background-position: right bottom;
	box-sizing: border-box;
}

.footer-wrap {
	width: 286px;   
	position: relative;
	margin:0 auto;
	padding: 25px 0;
}

.footer-left {
	width: 96%;
	float: left;
	padding: 30px 0 30px 0;
	margin: 0 auto;
}

.footer-left-1 {
	width: 286px;
	height: 286px;
	margin: 20px 0;
	box-sizing: border-box;
	z-index: 999999;
}

.footer-left-2 {
	width: 90%;
	height: 40px;
	float: right;
	padding: 0;
	margin: 0 5%;
	margin-top: 30px;
	margin-bottom: 60px;
	font-family: "Source Sans 3", sans-serif;
	text-align: left;
	letter-spacing: 1px;
	font-weight: 400;
	font-size: 18px;
	line-height: 100%;
	color: white;
}

.footer-right {
	margin: 20px 0;
	margin-bottom: 40px;
	box-sizing: border-box;
	z-index: 9999999999999;
}

.footer-up-right {
	width: 65px;
	height: 240px;
	float: right;
	text-align: left;
	padding-top: 17px;
	box-sizing: border-box;
	background-image: url('images/footer-up-right.png');
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center right;
}

/* ------ icon ------ */

#top2 {
	position: fixed;
	width: 60px;
	height: 60px;
	top: 90%;
	bottom: 20px;
	right: 30px;
	background-image: url('images/top.png');
	background-repeat: repeat-x;
	background-position: center center;
	background-size: 100% 100%;
	z-index: 9999;
	margin: 0;
	padding: 0;
}

.form-sigamos {
	float: right;
	padding-top: 0px;
	font-size: 18px;
	height: 20px;
	width: 252px;
	text-align: left;
	color: white;
	margin-top: 5px;
	margin-left: -40px;;
}

.form-mail {
	float: right;
	text-align: left;
	width: 252px;
	height: 40px;
	margin-left: -40px;;
}

.menu-inferior-logos {
	margin-top: 50px;
	padding: 40px 0;
}

.div-logos {
	width: 150px;
	height: 75px;
	padding: 0px;
	margin: 20px;
}

#logo {
	height: auto;
	max-width: 150px;
}

.slider-left {
	position: relative;
	float: left;
	width: 100%;
	min-height: 200px;
	padding: 0px;
	margin: 0;
	box-sizing: border-box;
}

.slider-right {
	position: relative;
	float: right;
	width: 100%;
	min-height: 200px;
	padding: 0px;
	padding-top: 10px;
	margin: 0;
	box-sizing: border-box;
}

.slider-single {
	width: 100%;
	height: 320px;
	padding: 0px;
	margin: 0 0 10px 0;
	box-sizing: border-box;
	text-align: center;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	background-color: white;
}

.volver-top {
	float: right;
	text-align: right;
	margin-bottom: 50px;
}

.form-txt {
	text-align: right;
	font-size: 24px;
	letter-spacing: 1px;
	font-weight: 400;
	line-height: 100%;
}

.menu-2 {
	box-sizing: border-box;
	z-index: 1;
}

.web {
	display: none;
}

.movil {
	display: block;
}

.footer-social {
	padding: 10px 0;
}

.footer-social-wrap {
	width: 286px;   
	position: relative;
	margin:0 auto;
	padding: 10px 0;
}

/* =========================================
   GALERIAS WORDPRESS CON FLEX (3 cols escritorio / 2 cols movil)
   Mantiene alto natural, no estira elementos
   ========================================= */

  .gallery,
  .wp-block-gallery,
  .wp-block-gallery.has-nested-images {
    display: flex !important;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: space-between; /* distribuye uniformemente */
    align-items: flex-start;
  }

  .gallery .gallery-item,
  .wp-block-gallery .blocks-gallery-item,
  .wp-block-gallery .wp-block-image {
    flex: 0 0 calc(50% - 12px);
    max-width: calc(50% - 12px);
    margin: 0 !important;
  }

}