/*
Theme Name: very-theme
Theme URI: https://
Author: granota.net
Author URI: https://granota.marketing
Description: Un tema básico para WordPress.
Version: 1.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: very-theme
*/

@import url('https://fonts.googleapis.com/css2?family=Lato:wght@400;700&display=swap');
/* --- Reseteo Básico --- */
body, h1, h2, h3, h4, h5, h6, p, blockquote, pre, ul, ol, li, table, th, td {
	margin: 0;
	padding: 0;
	border: 0;
}

body {
	color: #fff;
	font-family: "Lato", sans-serif;
	
}

/* --- Enlaces --- */
a {
	color: #0073aa;
	text-decoration: none;
}

a:hover {
	color: #005177;
	text-decoration: underline;
}

/* --- Encabezados --- */
h1, h2, h3, h4, h5, h6 {
	font-weight: bold;
	margin-bottom: 0.5em;
}

h1 { font-size: 2em; }
h2 { font-size: 1.75em; }
h3 { font-size: 1.5em; }
h4 { font-size: 1.25em; }
h5 { font-size: 1em; }
h6 { font-size: 0.875em; }

/* --- Estructura Básica --- */
header, footer, main, nav, section, aside {
	display: block;
	margin-bottom: 1.5em;
}


/* --- Listas --- */
ul {
	list-style: none;
	padding-left: 1em;
}



/* --- Imágenes --- */
img {
	max-width: 100%;
	height: auto;
}

/** ERROR 404 **/
.error-404 {
	text-align: center;
	padding: 2em;
	background-color: #f9f9f9;
	border: 1px solid #ddd;
	border-radius: 5px;
}

.error-404 .page-title {
	font-size: 2em;
	color: #333;
}
.error-404 .page-content {margin-top: 1em;}

/** Page **/
.site-main {
	max-width: 800px;
	margin: 0 auto;
	padding: 1em;
}
.entry-header {margin-bottom: 1em;}
.entry-title {
	font-size: 2em;
	color: #333;
	text-align: center;
}
.entry-content {
	font-size: 1em;
	line-height: 1.6;
	color: #555;
}
.page-links {
	margin-top: 2em;
	padding: 1em 0;
	text-align: center;
	background-color: #f5f5f5;
	border-radius: 5px;
}
.page-links a {
	color: #0073aa;
	text-decoration: none;
	margin: 0 5px;
}
.page-links a:hover {text-decoration: underline;}

/** SEARCH **/

.page-header {
	text-align: center;
	margin-bottom: 2em;
}
.page-title span {
	font-weight: bold;
	color: #0073aa;
}
.search-results article {
	border-bottom: 1px solid #ddd;
	padding-bottom: 1em;
	margin-bottom: 1em;
}
.entry-title a {
	color: #333;
	text-decoration: none;
	font-size: 1.5em;
}
.entry-title a:hover {
	color: #0073aa;
	text-decoration: underline;
}
.entry-meta {
	font-size: 0.9em;
	color: #666;
}
.entry-summary {
	font-size: 1em;
	color: #555;
}
.no-results {
	text-align: center;
	padding: 2em 0;
	font-size: 1.2em;
}
.pagination {
	margin-top: 2em;
	text-align: center;
}


article h1{
	padding-top: 60px;
	padding-bottom: 60px;
	text-align: center;
	font-weight: 300;
	font-family: "Lato", sans-serif;
	line-height: 32px;
	font-size: 30px;
}
.gn-imagePost{
	width: 100%;
	height: 450px;
	position: relative;
	overflow: hidden;
	display: flex;
	justify-content: center;
	align-content: center;
	align-items: center;
}
.entry-content{
	font-size: 18px;
	font-weight: 300;
	font-family: "Lato", sans-serif;
}
.entry-content h1, 
.entry-content h2, 
.entry-content h3, 
.entry-content h4, 
.entry-content h5{
	font-weight: 400;
	font-family: "Lato", sans-serif;
}
.gn-articleInterInfo{
	display: flex;
	justify-content: space-between;
}
.gn-articleInterInfo i{margin-right: 5px;}
.gn-articleInterInfo a{
	text-decoration: none;
	color: white;
	padding: 5px 10px;
	background-color: #1b2744;
}
.gn-articleInterInfo a:hover{
	background-color: white;
	color: #1b2744;
}
.gn-postLeft{border-right: 1px solid #FAFCFC;}
.gn-postRight{border-left: 1px solid #FAFCFC;}
.gn-postLeft, .gn-postRight{
	background-color: #1b2744;
	padding: 10px 20px;
	color: white;
}
.gn-postLeft a, .gn-postRight a{
	text-decoration: none;
	color: white;
}
.gn-postNavigation{margin-bottom: 60px;}
.sidebar{margin-top: 60px;}
.sidebar .widget{margin-bottom: 30px;}
.sidebar .wp-block-search__inside-wrapper{border: 1px solid #1b2744;}
.sidebar .wp-block-search__button{
	background-color: #1b2744;
	color: white;
	border:none;
}
.sidebar .wp-block-heading{font-weight: 300;}
.sidebar .wp-block-categories-list{
	list-style-type: none;
	margin: 0px;
	padding: 0px;
}
.sidebar ul.wp-block-categories-list li::before{content: none;}
.sidebar .wp-block-categories-list li{margin-bottom: 5px;}
.sidebar .wp-block-categories-list li a{
	background-color: #1b2744;
	color: white;
	padding: 10px 20px;
	text-decoration: none;
	display: flex;
}
.sidebar .wp-block-latest-posts li::before{content: none;}
.sidebar .wp-block-latest-posts li {
	background-color: white;
	margin-bottom: 10px;
	padding: 10px 10px;
}
.sidebar .wp-block-latest-posts li:hover {background-color: #1b2744;}
.sidebar .wp-block-latest-posts li a{
	text-decoration: none;
	color: #1b2744;
}
.sidebar .wp-block-latest-posts li:hover a{color: white;}
/**/

.gn-btnAnime:hover{
	transition: all 1s ease-in-out;
	border-bottom: 1px solid white;
	padding-bottom: 40px;
}

.wpcf7-form label{
	font-size: 18px;
	width: 100%;
	font-weight: 600;
}
.wpcf7-form input.wpcf7-form-control,
.wpcf7-form textarea{
	border-radius: 7px;
	border: 1px solid rgb(35, 47, 59);
	height: 48px;
	width: 100%;
}
.wpcf7-form textarea {height: 132px !important;}
.wpcf7-form  .wpcf7-submit{
	width: fit-content !important;
	border: 3px solid rgb(35, 47, 59) !important;
	color: rgb(35, 47, 59);
	background-color: transparent;
	font-size: 13px;
	padding: 0px 20px !important;
}
.wpcf7-form  .wpcf7-submit:hover{
	background-color: rgb(35, 47, 59);
	color: white;
}
.wpcf7-form .wpcf7-radio{
	display: grid;
	font-weight: 400;
	font-size: 16px !important;
}


/****/
header{
	background-color: white;
	padding: 20px 0px;
}
header{margin: 0px;}
header .site-branding{padding: 15px 0;}
header .site-branding img{
	height: auto; 
	width: 350px;
}
header .main-navigation{
	margin: 0px;
	padding: 0px;
}
header .navbar{
	margin: 0px;
	padding: 0px;
}
header .navbar-collapse{
	display: flex;
	justify-content: flex-end;
	
}
.gn-menu{
	display: flex;
	margin: 0px;
	padding: 0px;
	column-gap: 32px;
}
.gn-menu li{
	margin-left: 5px;
	margin-right: 5px;
	position: relative;
	cursor: pointer;
}
.gn-menu li:hover{border-bottom: 1px solid #1D1E20;}
.gn-menu li:last-child{margin-right: 30px;}
.gn-menu .sub-menu{
	position: absolute;
	background-color: white;
	right: 0px;
	margin-top: 20px;
	padding: 10px 15px;
}
.gn-menu > li.current-menu-item > a{
	border-bottom: 1px solid #1D1E20;
	padding-bottom: 5px;
}
.gn-menu li a{
	text-decoration: none;
	color: #1D1E20;
}
.gn-btnContact{
	background-color: #1D1E20;
	border-radius: 10px;
	padding: 16px 40px;
	color: white;
	text-decoration: none;
	font-size: 16px;
	margin-left: 15px;
}
.gn-btnContact:hover{
	color: white;
	text-decoration: none;
}
.gn-btnIcons{
	color: #1D1E20;
	font-size: 20px;
	padding-right: 10px;
}
.gn-galeria .gallery-item a{
	height: 400px;
	position: relative;
	overflow: hidden;
	display: flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	border-radius: 20px;
	border: 0px solid transparent;
}
.gn-galeria .gallery-item .portrait a img{
	width: 100%;
	height: auto;
}
.gn-galeria .gallery-item a img{
	height: 100%;
	width: auto;
	max-width: none !important;
}
.banner{
	background-color: #232F3B;
	padding: 50px 0 80px;	
}
.banner .header-content{
	display: flex;
	justify-content: center;
	flex-direction: column;
	align-content: center;
	align-items: center;
}
.banner h1{
	font-family: Lato, Arial, Tahoma, sans-serif;
	color: white;
	text-align: center;
	font-size: 28px;
	font-weight: 300;
	margin-top: 20px;
}
.breadcrumbs{
	margin: 0px;
	padding: 0px;
	color: rgba(255,255,255,0.6);
	font-size: 13px;
	margin-top: -20px;
}
.banner .breadcrumbs a{
	color: white;
	text-decoration: none;
	font-family: Lato, Arial, Tahoma, sans-serif !important;
	color: rgba(255,255,255,0.6);
}
.gn-archivePostlist{margin-top: 60px;}
.gn-archivePostlist a:hover{
	text-decoration: none;
	color: #232F3B;
}
.gn-archivePostlist article{margin-bottom: 40px;}
.gn-archivePostlist h2{
	font-weight: 300;
	font-size: 20px;
	margin-bottom: 10px;
}
.gn-archivePostlist .post-thumbnail{
	height: 280px;
	position: relative;
	overflow: hidden;
	display: flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	margin-bottom: 20px;
}
.gn-archivePostlist .gn-articleInterInfo{
	padding-bottom: 20px;
	border-bottom: 1px solid #232F3B;
	margin-bottom: 20px;
}
.gn-archivePostlist .read-more a{
	background-color: #232F3B;
	display: flex;
	padding: 10px 20px;
	color: white;
	text-decoration: none;
	justify-content: center;
}
.gn-categoryPosts{margin-top: 60px;}
.gn-categoryPosts h2{font-weight: 200;}
article .entry-content a{
	font-weight: 800;
	color: #232F3B;
	text-decoration: none;
}
.gn-404{
	height: 60vh;
	display: flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	font-weight: 300;
	font-family: "Lato", sans-serif;
}
.gn-404 .btn{
	background-color: #232F3B;
	padding: 10px 20px;
	width: fit-content;
	border-radius: 0px;
	color: white;
}
button.navbar-toggler{
	border: 0px solid transparent;
	position: relative;
	width: 50px;
	height: 50px;
	padding: 5px;
}
.burger__bun,
.burger__meat{
	position: absolute;
	display: block;
	width: 35px;
	height: 2px;
	background-color: black;
	border-radius: 2px;
	transition-property: transform,opacity,width;
	transition-duration: .25s;
	transition-timing-function: ease-in-out;
	transition-delay: .1s;
	transform: rotate(0);
	transform-origin: left center;
	cursor: pointer;
}
.burger__bun:first-child{
	top: 14px;
	left: 8px;
}
.burger__meat{
	top: 24px;
	left: 8px;
}
.burger__bun:last-child{
	top: 34px;
	left: 8px;
}
.burger--open[aria-expanded="true"] .burger__bun:first-child{
	transform: rotate(45deg) !important;
	top: 12px;
	left: 13px;
}
.burger--open[aria-expanded="true"] .burger__meat{
	opacity: 0;
	left: 10px;
}
.burger--open[aria-expanded="true"] .burger__bun:last-child{
	transform: rotate(-45deg) !important;
	top: 36px;
	left: 13px;
}
footer{
	background-color: white;
	padding-top: 80px;
	padding-bottom: 80px;
}

footer h2{
	font-size: 26px;
	line-height: 33.7999px;
	color: rgb(35,47,59);
}
footer p.descripcion{
	color: rgb(35,47,59);
	font-size: 14px;
	line-height: 18.20px;
	max-width: 297px;
	padding-top: 15px;
	padding-bottom: 15px;
}
footer a.gn-btnContact{
	margin-left: 0px;
}

footer h3{
	margin-top: 30px;
	font-size: 18px;
	padding-bottom: 10px;
}

footer p.direccion{
	font-size: 16px;
	max-width: 400px;
	color: rgb(29,30,32);
	line-height: 24px;
}

footer a{
	color: rgb(29,30,32);
	font-weight: bold;
	text-decoration: none;
}
@media (max-width: 768px){
	header .site-branding img{width: 250px;}
	header{padding: 8px 0px !important;}
	.gn-galeria .gallery-item a{height: 150px;}
	header .navbar-collapse,
	.gn-menu{
		display: block;
		margin-bottom: 15px;
	}
	.gn-menu li{padding: 10px;}
	.gn-btnIcons{margin: 15px;	}
	footer a.gn-btnContact{
		width: 100%;
		display: flex;
		justify-content: center;
	}
	footer p.descripcion{
		font-size: 16px;
		line-height: 20px;
		max-width: 100%;
		
	}
}
@media (min-width: 768px) and (max-width: 992px){
	.gn-galeria .gallery-item a{height: 250px;}
	header .navbar-collapse,
	.gn-menu{
		display: block;
		margin-bottom: 15px;
	}
	.gn-menu li{padding: 10px;}
	.gn-btnIcons{margin: 15px;	}
	
}