/**
 * Theme Name:     Hello Elementor Child
 * Author:         Elementor Team
 * Template:       hello-elementor
 * Text Domain:	   hello-elementor-child
 * Description:    Hello Elementor is a lightweight and minimalist WordPress theme that was built specifically to work seamlessly with the Elementor site builder plugin. The theme is free, open-source, and designed for users who want a flexible, easy-to-use, and customizable website. The theme, which is optimized for performance, provides a solid foundation for users to build their own unique designs using the Elementor drag-and-drop site builder. Its simplicity and flexibility make it a great choice for both beginners and experienced Web Creators.
 */

/* Uikit 
.uk-panel {
	display: block;
	position: relative;
}
.uk-grid {
    display: flex;
    flex-wrap: wrap;
    margin: 0;
    padding: 0;
    list-style: none;
}
.uk-flex-middle {
	align-items: center;
}
.uk-article {
    margin-top: -40px;
}
.uk-width-1-2 {
	width: 50%;
}
.uk-width-medium-1-1 {
	width: 100%;
}
.uk-width-medium-1-4 {
	width: 25%;
}
.uk-width-medium-3-10 {
	width: 30%;
}
.uk-width-medium-7-10 {
	width: 70%;
}
h2, .uk-h2 {
    font-size: 30px;
    line-height: 36px;
	color: #000;
}
.uk-margin-top-remove {
    margin-top: 0 !important;
}*/


/**/





body {
    font-family: 'Noto Sans', sans-serif!important;
}

:root {
--primary: #002099;
--secondary: #1D1D1D;
--accent: #F1C40F;
--white: #ffffff;
}
#wrapper {
	background-color: var(--white);
}
@media only screen and (max-width: 575px){	
	#wrapper {
		padding: 20px;
	}
	#content-sp {
		width: inherit!important;
	}
}
.container {
	padding: 0px;
}
hr {
	border-top: 1px solid var(--primary);
	margin: 30px 0px
}
p {
	font-size: 16px;
	font-weight: 400;
	line-height: 21.79px;
	text-align: left;
}
h1 {
	font-size: 32px;
	font-weight: 500;
	line-height: 43.58px;
	text-align: left;
}
h2 {
	font-size: 24px;
	font-weight: 500;
	line-height: 21.79px;
	text-align: left;
}
.txt-light {color: #ffffff;}
.txt-dark {color: #1D1D1D;}

.fw400 {font-weight: 400;}
.fw500 {font-weight: 500;}
.fw600 {font-weight: 600;}
.fw700 {font-weight: 700!important;}
.fw800 {font-weight: 800;}

.fs12 {font-size: 12px;}
.fs16 {font-size: 16px;}
.fs14 {font-size: 14px;}
.fs20 {font-size: 20px;}
.fs24 {font-size: 24px;}
.fs48 {font-size: 48px;}

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

.w20 {width: 20%;}
.w33 {width: 33%;}
.w30 {width: 30%};
.w40 {width: 40%};
.w50 {width: 50%;}
.w60 {width: 60%;}
.w70 {width: 70%;}
.w80 {width: 80%;}
.w100 {width: 100%;}

.pad10 {padding: 10px;}
.pad20 {padding: 20px;}
.pad48 {padding: 48px;}

.padb20 {padding-bottom: 20px;}
.padb30 {padding-bottom: 30px;}

.marg8 {margin: 8px;}

.d-flex {
	display: flex;
    justify-content: center;
    flex-wrap: nowrap;
    flex-direction: row;
}
.d-flex-wrap {
	display: flex;
    flex-wrap: wrap;
	flex-direction: row;
	justify-content: space-between;
}
.d-flex-sb{
	display: flex;
	justify-content: space-between;
    flex-wrap: nowrap;
    flex-direction: row;
}
.d-inline-flex {
	display: inline-flex;
	justify-content: center;
    flex-wrap: nowrap;
    flex-direction: row;
}
.d-inline-flex-vc {
	display: inline-flex;
	justify-content: center;
    flex-wrap: nowrap;
    flex-direction: row;
	align-items: center;
}
.d-flex-col {
	display: flex;
	justify-content: space-between;
	flex-wrap: nowrap;
	flex-direction: column;
}
.btn-primary {
	background-color: var(--primary);
    color: var(--white);
    border-radius: 4px;
    font-size: 16px;
    width: 100%;
    text-transform: none;
    height: 32px;
    align-items: center;
    display: flex;
    justify-content: center;
    align-content: center;
}
.btn-primary:hover, 
.btn-primary:active, 
.btn-primary:focus,
.btn-primary:active:hover {
	background-color: #01135A!important;
}
.nav_icons a.open-offcanvas{
	display:none;
}
@media only screen and (max-width: 575px){
	.d-flex-col-mob {
		display: flex;
		justify-content: space-between;
		flex-wrap: nowrap;
		flex-direction: column;
	}
    .single-post-page {
        padding-left: 15px;
        padding-right: 15px;
    }
	
}
/* Header */
/*header*/
.header {
	background-color: #1b1b1b;
	padding-top: 10px;
}
.nav-logo {
	display: inline-flex;
	justify-content: space-between;
	flex-direction: row;
	flex-wrap: nowrap;
	align-content: center;
	align-items: center;
	width: 100%;
}
.logo{
	padding: 20px 20px 20px 0px;
	text-align: left;
}
.header-menu {
	max-width: 1140px;
	margin: 0 auto;
	background-color: #1b1b1b;
	padding-bottom: 10px;
}	  
.header input[type=search]{
	border-radius: 25px;
	width: 774px;
}
.nav-menu {
	display:inline-flex;
	align-items: center;
	width: 100%;
}
.nav-items,
.nav_icons {
	display: inline-flex;
	gap: 20px;
	padding-right: 20px;
}
.nav-items a {
	color: #fff;
}
.nav-items a:hover, 
.site-navigation ul.menu li a:hover {
	color: #F1C40F;
}	
.yellow-nav {
	background-color: var(--accent);
	display: flex;
	flex-wrap: nowrap;
	flex-direction: row;
	align-items: center;
	align-content: center;
	justify-content: center;
	gap: 30px;
	min-height: 40px;
	display: flex;
	align-items: center;
}
.yellow-nav img {
	height: 20px;
	width: 20px;
	vertical-align: middle;
}
.top-menu a {
	color: #1d1d1d;
}
.top-menu a:hover {
	color: #ffffff;
}
.menu-principal {
	position: relative;
	z-index: 1000;
	background-color: #fff;
	padding: 10px;
}
.menu li a {
	color: var(--white);
}
.menu li a:hover {
	color: var(--primary);
}
.menu_icons {
	display: flex;
	justify-content: space-around;
	gap: 20px;
}
.site-navigation ul.menu li a{
	padding: 8px!important;
}
.menu_icon {
	display: none;
}
@media only screen and (max-width: 768px){
	.header-menu {
		padding: 0px 10px;
	}
	.header input[type=search]{
		width: 100%;
	}
	.nav-menu {
		display: none;
	}
	.nav_icons {
		padding: 20px;
	}
	.menu_icon {
		display: initial;
	}
	.nav_icons a.open-offcanvas{
	display:inherit;
	}
}

/* Home */
.page-header {
	margin-top: 30px;
}
img.attachment-thumbnail.size-thumbnail.wp-post-image  {
  width: 100%;
  object-fit: cover;
}
.post_destacat {
  border-bottom: 1px solid #D9D9D9;
}
.post-list {
	width: 50%;
    display: flex;
    flex-direction: column;
    gap: 20px!important;
}
.post-list .post-item .img-post-item {
    width: 128px;
    height: 128px;
    border-radius: 4px;
}
.img_ultim_post, 
.img_post {
    width: 100%;
    height: 225px;
    object-fit: cover;
    overflow: hidden;
    border-radius: 4px;
}
.posts-restantes {
    display: flex;
	flex-wrap: wrap;
    gap: 50px;
    padding: 30px 0;
    width: 100%;
}
.post_item {
    display: flex;
    flex-direction: column;
    background: #fff;
    position: relative;
	width: 400px;
}
.img_post {
    width: 100%;
    height: 200px;
    overflow: hidden;
    border-radius: 4px;
}
.img_post img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.post_content h2 {
	font-size: 20px;
	font-weight: 500;
	line-height: 27.24px;
	color: #1D1D1D;
}
.post_content p {
    font-size: 16px;
    color: #333333;
    line-height: 1.3;
}
a.post_item:nth-child(odd)::after {
    content: "";
    position: absolute;
    top: 0;
    right: -25px; 
    width: 1px;
    height: 100%;
    background-color: #ddd;
}
a.post_item:nth-last-child(-n+2)::after {
    display: none;
}
.page-content a {
    text-decoration: underline;
    color: #002199;
}
section.category-section{
	padding-top: 20px;
}
@media only screen and (max-width: 768px){
	.post-item {
		flex-direction: initial!important;
	}
	#main-content {
        padding: 20px!important;
    }
}

#main-content {
    display: flex;
    max-width: 1200px;
    margin: 0 auto;
    gap: 20px;
	padding-top: 50px;
}
.category-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	border-bottom: 1px solid #002099; 
	margin-bottom: 24px;
}
.category-title a {
  text-decoration: none;
  color: #000;
}
.ver_todo {
	display: flex;
	align-items: center;
	font-size: 16px;
	font-weight: 400;
	color:#737373;
}
.ver_todo img {
	margin-left: 8px;
}
.ver_todo .category-name {
	padding-left: 3px;
}
.categories-wrapper {
	display: flex;
	flex-direction: column;
	flex: 3;
	gap: 40px;
}
.category-title {
    font-size: 24px;
    font-weight: 500;
}
.category-posts {
    display: flex;
    gap: 20px;
}
.post-featured {
    width: 50%;
}
.post-featured-content {
    display: flex;
    flex-direction: column;
}
.img-post-featured {
    width: 100%;
    height: 300px;
    overflow: hidden;
    border-radius: 4px;
}
.post-title {
    font-size: 20px;
    margin-top: 10px;
    line-height: 1.3;
}
.post-excerpt {
    font-size: 16px;
	line-height: 1.3;
	color: #333333;
}
.post-list {
    width: 50%;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.post-item {
    display: flex;
    gap: 10px;
}
.post-date{
	font-weight: 400;
	font-size: 14px;
	line-height: 100%;
	color: #737373;
}
.img-post-item {
    width: 100px;
    height: 100px;
    overflow: hidden;
    border-radius: 4px;
}
.post-title-small {
	font-weight: 500;
	font-size: 20px;
	line-height: 1.3;
	margin: 0px;
	padding-bottom: 5px;
}
.post-excerpt-small {
    font-size: 14px;
	padding-top: 5px;
	margin-bottom: 2px;
	line-height: 1.3;
	display: -webkit-box;
    -webkit-line-clamp: 2;       
    -webkit-box-orient: vertical;
     overflow: hidden;
     text-overflow: ellipsis;
}
.sidebar {
    flex: 1;
    padding: 20px;
}
.post-link {
    color: #1D1D1D;
    text-decoration: none;
}

@media (max-width: 768px) {
	.ver_todo {
		font-size: 14px;
	}
	.ver_todo .category-name {
		display: none;
	  }
    #main-content {
        flex-direction: column;
        padding: 10px;
    }
    .categories-wrapper {
        flex: 1;
        gap: 10px;
    }
    .category-posts {
        flex-direction: column;
    }
    .post-featured {
        width: 100%;
    }
    .post-list {
        width: 100%;
        gap: 10px;
    }
    .post-item {
        flex-direction: column;
        gap: 10px;
    }
    .img-post-featured {
        height: auto;
    }
    .img-post-item {
        width: 100%;
        height: auto;
    }
    .sidebar {
        padding: 10px;
        width: 100%;
    }
    .category-title {
        font-size: 20px;
    }
    .post-title {
        font-size: 20px;
    }
    .post-title-small {
        font-size: 16px;
    }
    .post-excerpt {
        font-size: 14px;
    }
    .post-excerpt-small {
        font-size: 14px;
    }
}


/* Single Post */
.single-post-page {
    max-width: 1140px;
	width: 100%;
    margin: 0 auto;
	padding-top: 50px;
}
#content-sp {
	width: 753px;
}
.sub-menu{
	padding-left: 10px;
}
.single-post-page .page-header, 
.archive-post-page .page-header {
    display: none;
}
.single-post-page main#content, 
.archive-post-page main#content {
    padding: 20px;
}
.single-post-page .entry-title {
	font-weight: 500;
	font-size: 32px;
	line-height: 43.58px;
}
.banner-img {
    width: 100%; 
    height: 300px; 
    display: block; 
	object-fit: cover;
	border-radius: 4px;	
}
.wp-block-image img {
	border-radius: 4px;
}
.wp-block-heading {
	font-size: 24px;
    font-weight: 500;
    line-height: 32.69px;
}
.wp-block-button__link {
    color: #fff!important;
    background-color: #002099;
    border-radius: 4px;
    text-decoration: none !important;
    padding: 10px 40px;
    font-size: 16px;
}
.wp-block-button__link:hover {
	color: #fff;
	background-color: #01135A;
}
.wp-block-buttons>.wp-block-button{
	margin: 20px;
}
p a {
	color: var(--primary)!important;
}

/* Archive */
.archive-post-page {
    max-width: 1140px;
	width: 100%;
    margin: 0 auto;
	padding-top: 50px;
}
.img_ultim_post {
	flex-shrink: 0;
	margin-right: 20px; 
	width: 415px;
	height: 288px; 
	object-fit:cover; 
	overflow: hidden; 
	border-radius:4px
}

/* Sidebar */
.sidebar-title {
	font-weight: 700;
	font-size: 14px;
	line-height: 19.07px;
	padding-left: 15px;
	border-bottom: 2px solid #D9D9D9;
}
ul#menu-sidebar li {
     position: relative;
}
ul#menu-sidebar li a::after {
    content: ''; 
    display: inline-block;
    width: 24px; 
    height: 24px;
    background-image: url('/blog/wp-content/uploads/arrow_right.svg'); 
    background-size: contain; 
    background-repeat: no-repeat;
    background-position: center; 
    position: absolute;
    right: 0; 
    top: 50%; 
    transform: translateY(-50%); 
}
ul#menu-sidebar {
    padding-left: 20px;
	width: 290px;
}
#menu-sidebar .sub-menu {
    display: none; 
    padding-left: 20px;
}
#menu-sidebar li.open > .sub-menu {
    display: block; 
}
#menu-sidebar li {
    border-bottom: 2px solid #D9D9D9;
    padding: 15px;
	padding-left: 0px;
	list-style: none;
	font-weight: 700;
	font-size: 14px;
	line-height: 19.07px;
}
#menu-sidebar li a {
	color: var(--secondary);
	font-size: 14px;
	font-weight: 700;
	line-height: 19.07px;
}
#menu-sidebar li a:hover {
	color: var(--primary);
}
#menu-sidebar .sub-menu li:last-child {
    border-bottom: none;
}
.sidebar-title-posts {
	padding-top: 20px;
	font-weight: 700;
	font-size: 14px;
	line-height: 19.07px;
}
.recent-post-title {
    display: block; 
}
.sidebar-date {
    display: block; 
    margin-top: 3px; 
}
.recent-post-content {
    padding-left: 5px;
}
li.recent-post-item .sidebar-date {
	font-weight: 400;
	font-size: 14px;
	line-height: 19.07px;
	color: #737373;
}
li.recent-post-item {
    padding-bottom: 10px;
}
img.attachment-thumbnail.size-thumbnail.wp-post-image{
	border-radius: 4px;
}
.recent-posts {
    padding: 20px 0px 0px 20px;
}
.recent-post-thumbnail {
	width: 56px;
	margin-right: 5px;
}
ul.recent-posts-list {
    list-style: none;
    padding-left: 0px;
}


/* Footer */
#footer {
	background-color: var(--secondary);
	padding-top: 0px;
	margin-top: 40px;
	max-width: 100%;
	padding-bottom: 0px;
}
#footer p, 
#footer ul li a, 
#footer section a{
	color: var(--white);
}
#footer ul li {
	line-height: 25px;
}
#footer section {
	padding: 0px 30px 30px 30px;
}
#footer .footer2 {
	height: 80px;
	border-top: 1px solid #D9D9D9;
}
#footer .footer2 .politicas li,
#footer .footer2 .redes li {
	margin-right: 20px;
}
#footer .end {
	background-color: var(--accent);
	height: 40px;	
	align-content: center;
}
#footer .end p {
	color: var(--primary);
}
#footer	.footer-container {
    max-width: 1140px;
    margin: 0 auto;
}
#footer ul{
    list-style: none;
	padding-left: 0px;
}
#footer .footer-container {
	padding-top: 40px;
}
div#respond {
    display: none;
}


/* Offcanvas  */
.offcanvas {
    visibility: hidden;
    opacity: 0;
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    width: 280px;
    background-color: #fff;
    z-index: 1001;
    box-shadow: -2px 0 5px rgba(0,0,0,0.5); 
    transition: transform .3s ease-out, opacity .3s ease-out, visibility 0s .3s; 
    transform: translateX(-100%);
}
.offcanvas.active {
    visibility: visible;
    opacity: 1;
    right: 0;
    transform: translateX(0);
    transition: transform .3s ease-out, opacity .3s ease-out, visibility 0s; 
}
.offcanvas-bar-animation {
    transition: transform .3s ease-out;
	transform: translateX(-100%);
}
.offcanvas.active .offcanvas-bar-animation {
    transform: translateX(0);
}
.offcanvas-close {
    position: absolute;
    z-index: 1002;
    top: 5px;
    right: 5px;
    width: 24px;
    height: 24px;
    background-image: url('/blog/wp-content/uploads/close.svg');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    border: none;
    cursor: pointer;
}
.offcanvas-content {
    margin-top: 20px;
    color: #000;
	max-height: 100vh; 
  	overflow-y: auto;
}
.offcanvas-content li {
    line-height: 25px;
    font-size: 14px;
}
.offcanvas-content li.title {
    font-size: 16px;
}
.open-offcanvas img {
    pointer-events: none;
}
#offcanvas-menu {
  height: 100vh;              
  overflow-y: auto;          
  -webkit-overflow-scrolling: touch;
}
#offcanvas-menu .site-navigation ul.menu {
	display: flex;
	flex-wrap: nowrap;
	flex-direction: column;
	align-items: flex-start;
	width: 100%;
	padding: 20px;
}
#offcanvas-menu .site-navigation ul.menu li {
	border-bottom: 1px solid #002099;
	width: 100%;
}
#offcanvas-menu .site-navigation ul.menu li a {
	padding: 8px 0px;
}
.offcanvas-content ul {
	padding-left: 10px;
}
.offcanvas-content ul li{
	list-style: none;
	padding-top: 10px;
}
.offcanvas-content ul li a {
	color: #1d1d1d;
}
.search-form {
    position: relative;
	padding-top:90px; 
	padding-left: 20px;
}
.search-field {
    width: 100%;
    background-color: #ffffff;
    padding: 8px 32px 8px 8px; 
    border-radius: 4px;
    border: none;
    font-size: 16px;
    box-shadow: 0px 4px 4px 0px #00209924 inset;
    outline: none;
    box-sizing: border-box; 
}
.search-field {
    background-image: url('/blog/wp-content/uploads/lupa.svg');
    background-position: right 10px center;
    background-repeat: no-repeat;
    background-size: 16px 16px;
    padding-right: 32px;
}
.search-field:focus {
    outline: none;
    padding-right: 32px;
    box-shadow: 0px 4px 4px 0px #00209924 inset;
}
input[type="search"] {
    border: 0px !important;
}
[type=button], [type=submit], button{
	border: 0px!important;
}
/* Search page */
.search-post-page {
    max-width: 1140px;
    margin: 0 auto;
    padding-top: 50px;
}
.search-post-page .category-header{
	margin-bottom: 0px;
}
.search-post-page article.post_item:nth-child(odd)::after {
    content: "";
    position: absolute;
    top: 0;
    right: -25px;
    width: 1px;
    height: 100%;
    background-color: #ddd;
}
.search .page-header {
	margin-top: 0px;
}
	
/* Modal - Enviar por email */	
.modal-compartir {
    display: none; 
    position: fixed;
    z-index: 1003;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5); 
}
.modal-compartir-content {
    background-color: white;
    margin: 15% auto;
    padding: 20px;
    border-radius: 5px;
    width: 80%;
    max-width: 500px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}
.close-modal-compartir {
    color: #aaa;
    float: right;
    font-size: 28px;
    font-weight: bold;
    cursor: pointer;
}
.close-modal-compartir:hover,
.close-modal-compartir:focus {
    color: black;
}
.modal-compartir-footer {
    display: flex;
    justify-content: flex-end;
    margin-top: 20px;
}
.modal-compartir .form-compartir {
    display: flex;
    flex-wrap: nowrap;
    max-width: 600px;
    margin: auto; 
}
.modal-compartir .form-compartir input {
    flex: 1; 
    padding: 10px;
    border: 1px solid #ccc; 
    border-top-left-radius: 4px; 
	border-bottom-left-radius: 4px; 
}
.modal-compartir .form-compartir button {
    padding: 10px 20px; 
    background-color: var(--primary);
    color: white;
    border: none; 
    border-top-right-radius: 4px; 
	border-bottom-right-radius: 4px; 
	cursor: pointer;
}
.modal-compartir .form-compartir button:hover {
    background-color: #01135A; 
}	
.menu_icons a.open-offcanvas {
	display: none;
}

/* Pagination - plugin */
.pagination .wp-pagenavi a, 
.pagination .wp-pagenavi span {
	padding: 10px 50px;
	color: #1d1d1d;
}
.pagination span.pages {
	display: none;
}
.pagination .wp-pagenavi a,
.pagination .wp-pagenavi a:hover,
.pagination .wp-pagenavi span.current,
.pagination .extend{
	border: 0px;
}
.pagination .previouspostslink, 
.pagination .nextpostslink{
	font-weight: 600;
}
.pagination.pagination-mobile {
    display: none;
}
.pagination.pagination-desktop {
	display: inherit;
}
a.last, a.first, span.extend {
    display: none;
}

/* Mobile */
@media (max-width: 768px) {
	.search-form {
		padding-top: 50px;
	}
	.w100-mob {
		width:100%;
	}
	a#menu-icon {
		display: inherit;
	}
	ul#menu-menu-principal {
		display: none;
	}
    .post_destacat {
        flex-direction: column;
    }
    .img_ultim_post {
        max-width: 100%;
        height: auto;
    }
    .post_destacat h2 {
        font-size: 24px;
        line-height: 1.3;
    }
	.archive-post-page {
		padding: 20px;
	}
	/*.posts-restantes, .post_destacat {
		padding: 20px;
	}
	nav.sidebar-menu {
		padding: 20px;
		width: 100%;
	}*/
	#menu-sidebar li{
		padding: 20px 10px;
	}
	ul#menu-sidebar {
   		padding-left: 0px;
	}
	#footer {
		padding: 0px;
	}
	#footer .footer2 {
		height: auto;
	}
	.center-mob {
		text-align:center;
	}
	.menu_icons a.open-offcanvas {
		display: initial;
	}
	.banner-img {
		width: 100%; 
		height: 300px; 
		display: block; 
		object-fit: none;
	}	
	.pagination {
		margin: 20px auto;
		display: flex;
        justify-content: center!important;
    }
    .pagination .wp-pagenavi a  {
        padding: 10px!important; 
        display: inline-block;
        width: auto; 
    }
	.pagination .wp-pagenavi span {
		display:none;
	}
	.pagination.pagination-desktop {
		display: none;
	}
	.pagination.pagination-mobile {
		display: inherit;
	}
	.recent-posts {
    	padding: 30px 15px 0px 0px;
	}
	ul#menu-sidebar {
		width: 100%;
	}
}