/* ----------------------------------------------------------------
	Custom CSS

	Add all your Custom Styled CSS here for New Styles or
	Overwriting Default Theme Styles for Better Handling Updates
-----------------------------------------------------------------*/

/*#index:not(.is-expanded-menu) .primary-menu {
    background: rgba(4, 30, 66, 0.80) !important;
}*/
#footer {
	background: rgb(4,30,66);
	background: linear-gradient(90deg, rgba(4,30,66,1) 0%, rgba(25,35,155,1) 100%);
}

#cookiescript_fsd_wrapper #cookiescript_readmore, .cookiescript_vendor_name {
	color:#429757 !important;
}

.cookiescript_vendor_name a, .cookiescript_vendor_name a, .cookiescript_fsd_cookies_control, #cookiescript_declarationwrap > div > div.cookiescript_fsd_cookies > table > tbody > tr > td:nth-child(2) {  
    color: #19239b !important;
}


.cookiescript_fsd_tabs > .cookiescript_active {
    border-top: 1px solid #19239b !important;   
    color: #19239b !important;
}

#cookiescript_injected #cookiescript_accept, #cookiescript_save {
	background-color: #429757 !important;
}

#cookiescript_header, #cookiescript_injected, #cookiescript_badge, #cookiescript_description, .cookiescript_checkbox_label, #cookiescript_manage, #cookiescript_fsd_wrapper, #cookiescript_fsd_footer {    
    font-family: 'Raleway' !important;
}

#cookiescript_fsd_wrapper > div.cookiescript_fsd_header > a > img, #cookiescript_copyright {
	display: none !important;
}

#content > div.section.pt-4.border-top-0.m-0 > div > div > div:nth-child(2) > img {
	max-width: unset;
}

/*#bienestar #video > div > div > div {
    min-height: 50vh;
}*/

.gdpr-settings {
    padding: var(--cnvs-gdpr-settings-spacing) !important;
}

.column-container {
	display: flex;
	justify-content: space-between;
}
.column {
	flex-basis: 48%; /* Ajusta el ancho de las columnas según tu preferencia */
}
#video > div > div > div {    
    display: flex;
    flex-direction: column;
    justify-content: center;	
}
#index #video > div > div > div {    
	min-height: 100vh;
}

#index .sticky-header #header-wrap {
    background-color: #fff !important;   
}

#index #header-wrap {    
    background-color: unset;    
}

body:not(.is-expanded-menu) #header:not([data-mobile-sticky=true]) #header-wrap {
    position: fixed;
}

#index .header-wrap-clone, .header-wrap-clone  {
    height: 0 !important;
}

#footer > div > div.footer-widgets-wrap > div > div:nth-child(4) > div > div > div {
	display: none !important;
}

.is-expanded-menu .menu-container > .menu-item:not(.mega-menu) .sub-menu-container:not([class*=col-]):not([class=col]) {
    width: 60px;
}
#header, .not-dark {    
    --cnvs-primary-menu-submenu-bg: #ffffff;
}
	
.text-image {
	position: relative;
    display: inline-block;
    text-align: center;
}
.unete h2 {		
	font-weight: 600;
	color: #ffffff;
}
.unete {	
	text-align: left;
	position: absolute;
	top: 76.5%;
    left: 25.4%;
    transform: translate(-50%, -50%);
}

#down {    
    border-radius: 100px;    
    background-color: #429757;
    color: #ffffff;
    width: 24px;
}
.fondo-trabaja {
	 background-image: url("/images/paper.jpg");
	 background-color: #041E42;
	 background-repeat: no-repeat;
 	 background-position: center;
	 background-size: cover;
}

.miniweb-pads {
	padding-left: 7.5px !important;
    padding-right: 7.5px !important;	
}
.miniweb {
    margin-bottom: 15px;
    padding-left: 7.5px !important;
    padding-right: 7.5px !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
}

#bienestar .section {    
    background-color: unset;   
}

#equipo-img, #proces {
  max-width: 100%;
  height: auto;
}

.nube-mov {	
    align-items: center;	
}
.playa {
  background-image: url("/images/playa-esc.jpg");
  height: 345px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.gradiente-arriba-abajo {
	background: rgb(4,30,66);
	background: linear-gradient(180deg, rgba(4,30,66,1) 0%, rgba(25,35,155,1) 129%);
}

#numarcas > div.first.col-md-7.col-sm-12.col-12 {
	min-height: 222px;
}
#header .button.button-border {
    --cnvs-btn-border-color: #fff;
}

#header .button.button-border:not(.button-fill) {
    background-color: var(--cnvs-btn-color);
}

#index #header .button.button-border:not(.button-fill) {
    background-color: transparent;
}

#header, .not-dark {
    --cnvs-header-bg: #ffffff;
}

.active a svg {
	opacity: 1 !important;
}
.mt-perso {
	margin-top: 65px;
}

.padding-section {
	padding: var(--cnvs-section-padding) 0;
}

.owl-dots, .owl-nav {
	display: none;
}

.title-border::before, .title-border::after {
    border-top-width: 0;
}
.efecto-aro {
	position: absolute !important;
    left: unset !important;
    top: 305px !important;
	
	border: double 8px transparent;
    border-radius: 150px;
    background-image: linear-gradient(90deg, rgb(13 32 106) 0%, rgb(15 33 113) 100%), linear-gradient(90deg, rgb(24 35 150) 0%, rgb(23 34 148) 8%, rgba(66,151,87,1) 24%);
    background-origin: border-box;
    background-clip: padding-box, border-box;
    height: 275px;
	width: 275px;
}

.button.button-3d {
    border-radius: 25px;
	box-shadow: none;
}
#footer .footer-widgets-wrap {
    padding-bottom: 0;
}
.form-control-check.error {
    border-color: var(--cnvs-form-label-error);
}
.form-control {    
    --cnvs-input-btn-input-bg: #fff;    
    --cnvs-input-focus-bg: #fff;
}

.form-check-input {
    --bs-form-check-bg:  #fff;	
    background-color:  #fff;
}

input[type=checkbox]:not(:checked) + label.error {
    display: none !important;
}
.fondo-azul-grad1 {
	background: rgb(4,30,66);
	background: linear-gradient(81deg, rgba(4,30,66,1) 0%, rgba(25,35,155,1) 100%);
	/*min-height: 721.5px !important;*/
}
/* Triangulo*/


#contacto .emailc span {
	font-size: 21px;
}

#contacto .emailc {
	float: right;
}

.fondo-azul-grad1 hr {
	border-top: 1px solid #fff;
    opacity: 1;
}

#numarcas .entry-title, #numarcas .entry-content {
    max-width: 585px;
}

#numarcas > div:nth-child(3) > div > div:nth-child(3) {
	
	border: double 8px transparent;
    border-radius: 116px;
    background-image: linear-gradient(90deg, rgb(13 32 106) 0%, rgb(15 33 113) 100%), linear-gradient(90deg, rgb(24 35 150) 0%, rgb(23 34 148) 8%, rgba(66,151,87,1) 24%);
    background-origin: border-box;
    background-clip: padding-box, border-box;	
	
	height: 225px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

#numarcas h2 a, .fondo-azul-grad1 > div > hr, #numarcas .entry-content > p {
	color: #fff !important;
}

#numarcas > div:nth-child(3) > div > div:nth-child(3) > a > svg {	
	opacity: 1 !important;
	fill: #fff;
}

#numarcas svg {
	    /*height: 59px;*/
		opacity: 0.4;
		fill: #fff;
}

#contacto .g-recaptcha {
	padding-top: 10px;
}

#contacto .direccion {
	font-family: "Raleway";	
}

:root {
    --bs-border-radius: 5px !important;
}

#contacto .info-map .row {
	align-items: center;
}
#contacto .row {
    justify-content: center ;    
}

#contacto > div > div > div.row.gx-5.col-mb-80 > main > div.emailc {
    justify-content: center ;
}

#contacto .email-contacto {
	line-height: 40px;
    color: #429757;
    font-size: 32px;
    font-weight: bold;
    border-bottom: 1px solid;
}

#contacto .title-contact h2 {
	max-width: 470px;
    font-weight: bold;
    font-size: 36px;
    line-height: 46px;
    color: #19239B;    
    margin-bottom: 0 !important;
}


#contacto .text-contacts {
    font-family: 'Raleway';
    font-weight: 500;
    color: #8f949c;    
    padding-top: 10px;
    padding-left: 10px;
}

#contacto .text-contacts2 {
    font-family: 'Raleway';
    font-weight: 500;
    color: #8f949c;   
    font-size: 12px;
}
#contacto label {
	font-family: 'Raleway';
    font-weight: 500;
    color: #8f949c;
}

#contacto input, #contacto textarea {
    
    font-family: 'Raleway';
    font-weight: 500;
    color: #8f949c;
    /*border: 0;*/
}


#contacto label input, #contacto label textarea {
    background: #ffffff;
}
/* Triangulo*/



.fondo-azul-claro {
	background-color: var(--cnvs-body-bg);
}

.p-15 {
	padding: 15px;
}
.top-40 {
    --cnvs-custom-gutter: 40px;
}

.is-expanded-menu .sticky-header #header-wrap {    
    background-color: #fff !important;
	border: 0;
}

#Canales > div.col-lg-12 > div > div > div.col-md-6.p-4 > div > p, #content > div.content-wrap.py-0.bg-light > div.min-vh-60.d-flex.align-items-left.justify-content-center.dark.position-relative > div > p {
	color: #ffffff !important;
}

#sobre-nosotros #content {
	display: none;
}
#content > div.section.border-top-0.m-0 > div > div > div.col-md-6.d-flex.align-items-center {
	padding-right: calc(var(--bs-gutter-x));
    padding-left: calc(var(--bs-gutter-x));
}

.heading-block {    
    --cnvs-heading-block-font-color: #19239B;
	--cnvs-heading-block-border: none;
}

.more-link:hover {
    border-bottom-color: #429757;
	color: #429757;
}
#nuestras-marcas > div.entry.col-md-4.col-sm-6.col-12 > div > div.entry-content > a > i {
	--cnvs-gotoTop-size: 3.5rem;
    border-radius: 100px;
    --cnvs-gotoTop-icon-size: 2.5rem;
    background-color: #429757;
    margin-left: 7px;    
    color: #fff;
    width: 20px;
    height: 20px;
    padding-left: 2.4px;
    display: inline-flex;
}

#nuestras-marcas > div.first.entry.col-md-4.col-sm-6.col-12 > div > div.entry-title, #nuestras-marcas > div.first.entry.col-md-4.col-sm-6.col-12 > div > div.entry-content {
	padding-left: 0;
}

.more-link {
	border-bottom: none;
    font-style: initial;
    font-weight: 600;	
	display: flex;    
    align-items: center;
}

hr {
	margin-top: 60px;
    color: #222;
	padding: 15px 0;
}

#nuestras-marcas {
	margin: 0px 0 30px 0;
}

#nuestras-marcas .first div {
	background: #EDEEF8;
}

.entry-title h2 a, .entry-title .h2 a, .entry-title h3 a, .entry-title .h3 a, .entry-title h4 a, .entry-title .h4 a {
    color: #19239B;
}

.post-grid .entry-title h2, .post-grid .entry-title .h2,.entry-title h2 {
    font-size: 45px;
    line-height: 55px;    
}

.entry-content {
	margin-bottom: 2rem;
}
.entry-title, .entry-content {
	padding: 0 30px;
}
#nuestras-marcas > div > div {
	background: #ffffff;
	min-height: 535px;
}
p {
	color: #041E42;
}


.body-container {
	max-width: 1425px;
    margin-left: auto;
    margin-right: auto;
	padding: 15px !important;
}


.dark, body.dark {
    --cnvs-body-bg: #EDEEF8 !important;
}



h4, .h4 {
    font-weight: 500;
}

.sticky-header .menu-link {
	color: #041E42;
}
.cnvs-hamburger {
    --cnvs-hamburger-size: 1.2rem !important;
    --cnvs-hamburger-width: 3px !important;
}
#header-wrap > div > div > nav > ul > li.menu-item.sub-menu > button {
	margin-right: 15px;
}

.primary-menu-trigger {
	margin-right: 15px;
}
.header-misc {    
    padding-right: 15px;
}
.menu-link {    
    padding: 15px;
}


.container .header-row {
	padding: 0 !important;	
    margin-left: -12px !important;
    margin-right: -12px;
}

body:not(.is-expanded-menu) .primary-menu  {
	background: #041E42;
    max-width: unset !important;
    position: absolute;
    top: 81px;
    width: 100%;		
}



.button {    
    --cnvs-btn-color-dark: #e9ecef;
}
	
#video video {width: 100%; height: auto; top: 0; left: 0; position: absolute; overflow: hidden; z-index: 0;}


.sticky-header .button.button-border {
	background: var(--cnvs-themecolor) !important;
}
.sticky-header button a:hover {
	background: var(--bs-link-hover-color-rgb);
}


.fw-semibold {
    font-weight: 500 !important;
}

.button {
	--cnvs-btn-color-light: #429757;
}
:root {	
    --cnvs-themecolor: #429757;
    --cnvs-themecolor-rgb: 66, 151, 87;
    --cnvs-secondary-color: #00235b;
    --cnvs-primary-font: 'Raleway', sans-serif;
    --cnvs-secondary-font: 'Raleway', sans-serif;
	--bs-body-bg: #EDEEF8;
	--cnvs-header-height: 80px;
    --cnvs-header-height-sm: 80px;
    --cnvs-header-height-md: 80px;
    --cnvs-header-height-lg: 80px;
    --cnvs-header-height-shrink: 80px;
	--bs-dark-rgb: 4, 30, 66;
	--bs-border-radius: 0;
	
}

.header-row #logo img {	
	padding-left: 15px;
}

#logo img {   
    max-width: 172px;
	margin-left: 0;	
}

.py-logo {
    padding-top: 0.8rem !important; 
    padding-bottom: 1.2rem !important;
}


.border-dark {
    border: 1px solid rgba(var(--cnvs-contrast-rgb), 0.2) !important;
}

.button {
    --cnvs-btn-border-width: .01em;
}

.ms-2 {
    margin-left: 0 !important;
}

.elementor .elementor-background-video {
    position: absolute;
    max-width: 100%;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
	object-fit: cover;
}

.elementor .elementor-background-video-container {
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    position: absolute;
    overflow: hidden;
    z-index: 0;
}


.footer-horizontal h4 {
	color: #42C057;
}

footer {
	font-family: 'Raleway' !important;
}
#footer > div.container > div > div > div:nth-child(2) {
	padding: 18px 12px;
}

.dark #copyrights {
	background-color: transparent;
	padding-bottom: 10px !important;
}

#copyrights > div > div > div:nth-child(1) > a:not(:last-child) {
padding: 0 15px 0 0;
}
#copyrights > div > div > div:nth-child(1) > a {
	color: rgba(255, 255, 255, 0.4) !important;	
	line-height: 30px;
	text-decoration: underline !important;
}

#copyrights > div > div > div:nth-child(1) > a:hover {
	color: rgba(255, 255, 255, 1) !important;
}
#gotoTop {	
    --cnvs-gotoTop-size: 3.5rem;    
    border-radius: 100px;
	--cnvs-gotoTop-icon-size: 2.5rem;
	background-color: #429757;
}

@media (min-width: 576px) {
	.container-sm, .container {
		max-width: 100%;
	}
}

@media (min-width: 768px) {
	
	/*#bienestar #video > div > div > div {  
		min-height: 50vh;
	}*/


	#oc-images > div.owl-stage-outer > div > div:nth-child(3) > div > a > svg {		
		opacity: 1;		
	}

	footer #logo > a > img {
		margin-bottom: 1.5rem !important;
	}

	.container-md, .container-sm, .container {
		max-width: 100%;
	}		
}




@media (max-width: 769px) {

	#footer > div > div.footer-widgets-wrap > div {
		padding: 0 30px;
	}

	#bienestar #content > div.section.pt-2.border-top-0.m-0 > div > div > div:nth-child(2) > img, #sobre-nos-nube > div > div.row.justify-content-center.align-items-center.m-0 > div > div > div:nth-child(2) > img {
		max-width: fit-content !important;
	}

	 
	.p-0-45 {
		padding: 0 45px;
	}

	.sticky-header .menu-link {
		color: #f8f9fa;
	}

	.menu-container {
		min-height: 100vh;
	}
	#gotoTop {	
		--cnvs-gotoTop-position-boxed-bottom: 80px;
		--cnvs-gotoTop-size: 2.5rem;		
		--cnvs-gotoTop-icon-size: 1.5rem;		
	}

	.unete {		
		left: 39.4%;
		top: 87%;		
	}
	
	.nube-mov {		
		align-items: center;
		flex-flow: column-reverse;
		margin-bottom: 30px;
	}

	.fondo-azul-grad1 {		
		min-height: 580.5px !important;
	}

	.mt-perso {
		margin-top: 72px;
	}

	.fondo-azul-grad1 {
		padding: 60px 0 20px 0;
	}

	#numarcas > div:nth-child(2) > div > div > a {		
		margin-left: 27px;
	}

	#oc-images div.owl-stage-outer svg {		
		opacity: 1;		
	}

	.efecto-aro {		    
		height: 140px !important;
		width: 140px !important;
		top: 396px !important;
	}
	.post-grid .entry-title h2, .post-grid .entry-title .h2, .entry-title h2, .heading-block h2, .heading-block .h2, h2, .h2 {
		font-size: 26px !important;
		line-height: 36px !important;
	}

	#contacto .info-map .col-md-9 {
		padding: 0;
	}

	#contacto .direccion {    
    	padding: 60px;
	}
	
	#contacto .info-map .row, .col-reverse-movil {
		flex-direction: column-reverse;
	}	

	#content > div.section.border-top-0.m-0 > div > div:nth-child(1) {
		 flex-direction: column-reverse;	
	}
	
	hr {
		display: none;
	}	

	#nuestras-marcas > div > div {		
		min-height: initial !important;
	}
	
	
	#header-wrap > div > div > nav > ul > li.menu-item.sub-menu > ul {
		border-radius: 0 !important;
	}	

	#footer > div.container > div > div > div:nth-child(2) {
		display: none;
	}
	
}


@media (min-width: 991px) {
	
	.min-vh-100 {
        min-height: 70vh !important;
    }
	
	.fondo-azul-grad1 {		
		min-height: 690px !important;
	}
	
	.mt-80-esc {
		margin-top: 80px !important;
	}

	#contacto .title-contact h2 {   
		padding-right: 80px;
	}
	
	.footer-horizontal {
		display: flex !important;		
		flex-wrap: wrap;
		flex-direction: row;
		justify-content: space-between;
	}
}

@media (max-width: 1154px) {

	.efecto-aro {
		height: 225px;
		width: 225px;
		top: 374px !important;
	}
	.post-grid .entry-title h2, .post-grid .entry-title .h2, .entry-title h2 {
		font-size: 36px;
		line-height: 46px;
	}
}
@media (max-width: 992px) {
	.menu-link, .menu-item .sub-menu-trigger, .sub-menu-container .menu-item > .menu-link {    
    	color: #f8f9fa;    
	}
	
	.post-grid .entry-title h2, .post-grid .entry-title .h2, .entry-title h2 {
		font-size: 34px;
		line-height: 44px;
	}

	.efecto-aro {
		height: 180px;
		width: 180px;
		top: 404px !important;	
	}

	#contacto .email-contacto {    
    	font-size: 28px;
	}
	#contacto .emailc {
		float: left;
	}
	
	#contacto .title-contact h2 {
		font-size: 36px;
		line-height: 46px;
	}

	.ft-mov {		
		margin-right: 15px !important;
	}

	#video > div > div > div {
		min-height: 666px;		
	}

	#copyrights > div > div > div:nth-child(1) {
		font-size: 10px;
		text-align: center;
	}		
	#copyrights > div > div > div.col-md-12.col-lg-6.text-md-end {
		text-align: center !important;
		line-height: 30px;
	}	

	.menu-item:not(:first-child),.sub-menu-container, .mega-menu-content {
		border-top: solid 2px #429757 !important;
	}	
	
}




@media (min-width: 1400px) {
	
	.min-vh-100 {
		min-height: 100vh !important;
	}
	.container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container {
		max-width: 1425px !important;
	}
}


/*@media (min-width: 2240px) {

	#video video {
		top: -95px !important;
	}	
}*/
@media (max-width: 417px) {
	#video > div > div > div > p {
		font-size: 14px;
	}
}