@charset "UTF-8";
/*
Theme Name: Logit Medical
Theme URI: https://http://www.lojit.es
Author: un.pez.vivo
Author URI: https://www.unpezvivo.com
Description: Theme for Lojit Medical
Version: 1.0.0
Tested up to: 6.3
Requires PHP: 8
*/
/* VENDORS */
@import url(css/normalize.css);
@import url(css/animsition.min.css);
@import url(css/animate.min.css);
@import url(css/linea-icons.css);
@import url(css/microtip.min.css);
/* ********************************************************************************************************************* VENDORS OVERWRITES */
@import url("https://fonts.googleapis.com/css2?family=Space+Grotesk&display=swap");
.wpb_content_element { margin: 0 !important; }

.vc_row-full-width.vc_clearfix { margin-bottom: -3px; }

.animate__animated.animate__delay-05s { -webkit-animation-delay: .5s; animation-delay: .5s; }

.slider-style2 .slick-prev, .slider-style2 .slick-next { width: 30px; height: 30px; top: -60px; border: 0; border-radius: 0; }
.slider-style2 .slick-prev:before, .slider-style2 .slick-next:before { content: "\e04b"; font-size: 35px; }
.slider-style2 .slick-prev { right: 40px; }
.slider-style2 .slick-next { right: 0px; }

.slick-prev, .slick-next { position: absolute; z-index: 1000; cursor: pointer; display: flex; align-items: center; justify-content: center; outline: none; width: 60px; height: 60px; top: -100px; padding: 0; text-align: center; color: transparent; border: 1px solid #000; border-radius: 50%; background: transparent; opacity: 0.3; }
.slick-prev:before, .slick-next:before { content: "\e068"; font-family: "linea-arrows-10" !important; font-size: 25px; color: #000; opacity: 1; transition: all 0.4s ease 0s !important; }
.slick-prev:hover, .slick-next:hover { opacity: 0.8; }

.slick-prev { left: auto; right: 80px; transform: scaleX(-1); }

.slick-next { right: 0px; }

.slick-dotted.slick-slider { margin-bottom: 30px; }

.slick-dots { position: absolute; display: block; list-style: none; width: 100%; margin-top: 15px; text-align: center; }
.slick-dots li { position: relative; display: inline-block; cursor: pointer; width: 20px; height: 20px; padding: 0; }
.slick-dots li button { display: block; cursor: pointer; position: relative; width: 20px; height: 20px; padding: 5px; font-size: 0; line-height: 0; color: transparent; border: 0; outline: none; background: transparent; }
.slick-dots li button:hover, .slick-dots li button:focus { outline: none; }
.slick-dots li button:hover:before, .slick-dots li button:focus:before { opacity: 1; }
.slick-dots li button:before { content: 'ò'; position: absolute; top: 0; left: 0; width: 20px; height: 20px; font-size: 24px; line-height: 24px; text-align: center; color: #000; opacity: 0.1; }
.slick-dots li.slick-active button:before { opacity: .5; color: #000; }

/* .consent-box {
	margin-bottom: 20px;
	padding: 30px;
	background-color: $light-grey;

	h5 {
		font-weight: 700;
	}

	a {
		text-decoration: underline;
	}
} */
.wt-cli-cookie-bar { z-index: 1000; padding: 30px !important; }
.wt-cli-cookie-bar .cli-bar-message { font-size: 14px; }
.wt-cli-cookie-bar .cli-bar-message a { text-decoration: underline; }
.wt-cli-cookie-bar .cli-bar-btn_container { margin-top: 15px; }
.wt-cli-cookie-bar #wt-cli-accept-btn, .wt-cli-cookie-bar #wt-cli-settings-btn { cursor: pointer; font-size: 16px; outline: 0; }
.wt-cli-cookie-bar #wt-cli-accept-btn { padding: 12px 25px !important; border-radius: .25em !important; }
.wt-cli-cookie-bar #wt-cli-accept-btn:hover { background-color: #6F6F6E !important; }

.cli_setting_save_button { background-color: #000 !important; }

.cli-privacy-content-text a { text-decoration: underline; }

table.cookielawinfo-winter thead th { background-color: #6F6F6E !important; }

.pagination ul li a, .pagination ul li span { border: 0; }

.wp-pagenavi { margin: 30px 0 40px 0 !important; }
.wp-pagenavi .pages { display: none; }
.wp-pagenavi a, .wp-pagenavi span { margin: 0 4px; padding: 5px; font-size: 20px; color: #B9B9B9; text-decoration: none; }
.wp-pagenavi a img { vertical-align: top; }
.wp-pagenavi a:hover { color: #6F6F6E; }
.wp-pagenavi .current { font-weight: 600; color: #6F6F6E; }
.wp-pagenavi .previouspostslink, .wp-pagenavi .nextpostslink { font-size: 30px; }
.wp-pagenavi .previouspostslink { margin-right: 6px; }
.wp-pagenavi .nextpostslink { margin-left: 6px; }

@media screen and (max-width: 767px) { .wt-cli-cookie-bar { padding: 20px !important; }
  .wt-cli-cookie-bar #wt-cli-accept-btn, .wt-cli-cookie-bar #wt-cli-settings-btn { font-size: 14px; }
  .wt-cli-cookie-bar #wt-cli-accept-btn { margin-left: 20px !important; padding: 9px 15px !important; border-radius: .18em !important; }
  .pagination { margin-bottom: 10px; }
  .wp-pagenavi { margin: 20px 0 !important; }
  .wp-pagenavi a, .wp-pagenavi span { font-size: 18px; } }
/* GLOBAL */
/* ********************************************************************************************************************* FONTS */
@font-face { font-family: "cr"; src: url("fonts/c.woff2") format("woff2"), url("fonts/c.woff") format("woff"); font-weight: normal; font-style: normal; }
@font-face { font-family: "cm"; src: url("fonts/cm.woff2") format("woff2"), url("fonts/cm.woff") format("woff"); font-weight: normal; font-style: normal; }
@font-face { font-family: "cb"; src: url("fonts/cb.woff2") format("woff2"), url("fonts/cb.woff") format("woff"); font-weight: bold; font-style: normal; }
@font-face { font-family: "linea-arrows-10"; src: url("fonts/linea-arrows-10.woff2") format("woff2"), url("fonts/linea-arrows-10.woff") format("woff"); font-weight: normal; font-style: normal; }
.cr { font-family: 'cr', serif; }

.cm { font-family: 'cm', serif; }

.cb { font-family: 'cb', serif; }

/* ********************************************************************************************************************* GLOBALS */
body { font-family: 'cr', sans-serif; font-weight: 400; font-size: 14px; line-height: 1.3; color: #000; background-color: #9fb7cf; }

h1, h2, h3, h4, h5, h6 { margin: 0; font-family: 'cm'; font-weight: 400; line-height: 1.2; letter-spacing: 0; text-transform: none; color: #000; }

h1 { font-size: 40px; }

h2 { font-size: 40px; }

h3 { font-family: 'cb'; text-align: center; font-size: 16px; color: #fff; }

h4 { font-size: 18px; }

h5 { font-size: 20px; }

h6 { font-size: 14px; }

p, li { margin: 0; font-family: 'Space Grotesk', sans-serif; font-size: 18px; line-height: 1.4; color: #6F6F6E; /* &:empty {
	display: none;
} */ }
p strong, li strong { font-weight: 900; }

p + p, ul + p, ol + p, p + ul, p + ol { margin-top: 20px; }

ul { margin: 0; padding-left: 0; }

ol { padding-left: 40px; }
ol li { margin-bottom: 20px; }

ul.styled { text-indent: -20px; margin-left: 20px; padding-left: 40px; }
ul.styled li:before { content: "\2022"; display: inline-block; vertical-align: top; font-weight: 700; font-size: 1em; line-height: 1.3; color: #174D87; transform: translateY(3px); }

img { max-width: 100%; height: auto; image-rendering: optimizeQuality; }

img.invert { filter: invert(1); }

.text-light, .text-light a { font-weight: 300; }

.text-medium, .text-medium a { font-weight: 500; }

.text-bold, .text-bold a { font-weight: 700; }

.text-bigger { font-size: 40px; line-height: 1.3; }

.text-even-bigger { font-size: 50px; }

.text-smaller { font-size: 16px; }

.text-spaced { letter-spacing: 3px; }

::selection { color: #fff; background: #b7cadf; }

.white { color: #fff; }
.white p, .white h1, .white h2, .white h3, .white h4, .white h5, .white h6, .white span { color: #fff; }

.black { color: #000 !important; }

.grey { color: #B9B9B9 !important; }

.light-grey { color: #D0D0D0 !important; }

.dark-grey { color: #6F6F6E !important; }

.accent, .accent p { color: #174D87 !important; }

.light-accent, .light-accent p { color: #b7cadf !important; }

.blue, .blue p { color: #546cff !important; }

.pink, .pink p { color: #e29dff !important; }

.border-top { border-top: 1px solid #d2d2d2; }

.border-bottom { border-bottom: 1px solid #d2d2d2; }

.no-block { display: inline; }
.no-block + p { margin-top: -10px; }

.boxed { padding: 6px 10px; background-color: #174D87; color: #fff; }

.boxed-white { border: 1px solid #fff; }
.boxed-white:hover { background-color: #fff; }

.title-boxed { display: inline; padding: 0 10px; background-color: #D0D0D0; color: #444444; }
.title-boxed + br { display: block !important; margin-bottom: 20px; content: " "; }
.title-boxed.accent { background-color: #174D87; color: #fff; }
.title-boxed.dark { background-color: #6F6F6E; color: #fff; }

.with-line-below:after { content: ''; display: block; width: 50px; height: 1px; margin: 10px auto 20px auto; background-color: #B9B9B9; }

.with-line-above:before { content: ''; display: block; width: 50px; height: 1px; margin: 20px auto 10px auto; background-color: #B9B9B9; }

@keyframes charSlideIn { from { transform: translateY(40px) scale(0.5); opacity: 0; } }
.hidden, .hide { display: none !important; }

.invisible { visibility: hidden; }

.hide-on-desktop { display: none; }

.only-home { display: none; }

.only-admin { display: none; }

body.logged-in .only-admin { display: block; }

.page-id-56 header, .page-id-56 footer, .page-id-56 main { display: none; }

@media screen and (max-width: 1300px) { h1 { font-size: 40px; }
  h2 { font-size: 30px; }
  /* h3 { 	font-size: 30px; } */
  	/* h4 { 		font-size: 28px; 	}  	h5 { 		font-size: 16px; 	}  	h6 { 		font-size: 14px; 	} */ }
@media screen and (max-width: 1000px) { p, li { font-size: 16px; }
  h1 { font-size: 30px; }
  h2 { font-size: 24px; }
  /* h3 { 	font-size: 24px; } */
  h4 { font-size: 16px; }
  /* h5 { 	font-size: 15px; } */ }
@media screen and (max-width: 767px) { p, li { font-size: 15px; }
  .hide-on-desktop { display: block; }
  .hide-on-mobile { display: none; }
  h1 { font-size: 25px; }
  h2 { font-size: 20px; }
  /* h3 { 	font-size: 18px; } */
  ul.styled { text-indent: -15px; margin-left: 15px; padding-left: 30px; }
  ul.styled li:before { width: 15px; } }
body:lang(es-ES) { 	/* @media screen and (max-width: 767px) {

		h1 {
			font-size: 25px;
		}
	} */ }

/* ********************************************************************************************************************* LAYOUT */
body > .wrapper { padding-bottom: 460px; opacity: 0; -webkit-animation-fill-mode: both; -o-animation-fill-mode: both; animation-fill-mode: both; }

.grid__container { position: relative; width: 1200px; margin: 0 auto; }

.content { position: relative; z-index: 1; min-height: calc(100vh - 116px); }

.flex { display: flex; flex-flow: row wrap; justify-content: space-between; }

.align-left { text-align: left; }

.align-center { text-align: center; }

.align-right { text-align: right; }

.margin-10-below { margin-bottom: 10px; }

.margin-20-below { margin-bottom: 20px; }

.margin-30-below { margin-bottom: 30px; }

.margin-40-below { margin-bottom: 40px; }

.margin-10-above { margin-top: 10px; }

.margin-20-above { margin-top: 20px; }

.margin-30-above { margin-top: 30px; }

.margin-40-above { margin-top: 50px; }

.element-with-side-padding-120 { padding: 0 120px; }

.row-with-vertical-padding-60 { padding: 60px 0; }

.row-with-vertical-padding-120 { padding: 120px 0; }

.row-with-bottom-padding-120 { padding-bottom: 120px; }

.column-no-padding-right .vc_column-inner { padding-right: 0 !important; }

.column-no-padding-left .vc_column-inner { padding-left: 0 !important; }

.row-with-side-padding-200 { padding: 0 200px; }

.centered { margin: 0 auto; text-align: center; }

.vertical-centered { position: relative; top: 50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }

@media screen and (max-width: 1300px) { .grid__container { width: 980px; } }
@media screen and (max-width: 1000px) { .grid__container { width: 85%; } }
@media screen and (max-width: 767px) { body > .wrapper { padding-bottom: 390px; } }
/* ********************************************************************************************************************* LINKS */
a, a:before, a:after, button { transition: all 0.3s ease 0s !important; }

a { color: #000; }

a.accent-link { color: #174D87; text-decoration: none; border-bottom: 1px solid transparent; }
a.accent-link:hover { border-color: #174D87; }

a.black-link { color: #000; }
a.black-link:hover { color: #174D87; }

a.white-link { line-height: 1; color: #fff; text-decoration: none; border-bottom: 1px solid transparent; }
a.white-link:hover { border-color: #fff; }

a.grey-link { color: #B9B9B9 !important; }
a.grey-link:hover { color: #6F6F6E !important; }

a.dark-grey-link { text-decoration: none; color: #6F6F6E !important; }
a.dark-grey-link:hover { color: #B9B9B9 !important; }

a.light-grey-link { color: #D0D0D0; }
a.light-grey-link:hover { color: #174D87 !important; }

.boxed-link { display: inline-block; padding: 12px 35px; font-size: 16px; text-decoration: none !important; color: #fff; background-color: #000; border-radius: 8px; }
.boxed-link:hover { padding: 12px 40px; color: #fff; background-color: #174D87; }
.boxed-link.accent { color: #fff !important; background-color: #174D87; }
.boxed-link.accent:hover { background-color: #b7cadf; }
.boxed-link.white { color: #000; background-color: #fff; }
.boxed-link.white:hover { color: #fff !important; background-color: #174D87; }
.boxed-link.bold { font-weight: 700; }
.boxed-link.icon-left img { float: left; margin: -2px 10px 0 0; }
.boxed-link.icon-left i { vertical-align: middle; margin-right: 10px; }
.boxed-link.icon-right img { float: right; margin: -2px 0 0 10px; }
.boxed-link.icon-right i { vertical-align: middle; margin-left: 10px; }
.boxed-link.bordered { color: #000; background-color: transparent; border: 1px solid #000; }
.boxed-link.bordered:hover { color: #fff; background-color: #B9B9B9; border-color: #B9B9B9; }
.boxed-link.bordered-white { color: #fff; background-color: transparent; border: 1px solid #fff; }
.boxed-link.bordered-white:hover { color: #fff; background-color: #B9B9B9; border-color: #B9B9B9; }
.boxed-link.rounded { border-radius: 25px; }
.boxed-link.wider { padding: 8px 35px; }
.boxed-link.wider:hover { padding: 8px 40px; }
.boxed-link.medium { padding: 14px 35px; }
.boxed-link.medium:hover { padding: 14px 40px; }
.boxed-link.big { padding: 22px 55px; }
.boxed-link.big:hover { padding: 22px 60px; }

a.line-link { display: inline-block; padding-bottom: 8px; line-height: 0; color: #000; }
a.line-link:after { content: ''; position: relative; width: 101%; height: 1px; margin-bottom: -4px; display: inline-block; background-color: transparent; transform: scaleX(0); -webkit-transform-origin: 0 0; transform-origin: 0 0; transition: all 0.6s cubic-bezier(0.785, 0.135, 0.15, 0.86) 0s !important; }
a.line-link:hover { color: #6F6F6E !important; }
a.line-link:hover:after { background-color: #B9B9B9; transform: scaleX(1); }
a.line-link.grey { color: #B9B9B9; }
a.line-link.grey:hover { color: #fff !important; }
a.line-link.grey:hover:after { background-color: #fff; }
a.line-link.white { color: #fff; }
a.line-link.white:hover { color: #fff !important; }
a.line-link.white:hover:after { background-color: #fff; }
a.line-link.disabled { pointer-events: none; }

a.icon-link { display: block; color: #B9B9B9; }
a.icon-link span { color: #000; text-decoration: none; }
a.icon-link img { float: left; margin-right: 10px; }
a.icon-link:hover { opacity: 0.8; }

a.alt-link { letter-spacing: 2px; color: #000; }
a.alt-link:before, a.alt-link:after { content: ''; display: inline-block; vertical-align: middle; width: 30px; height: 1px; margin: 0 10px; background-color: #174D87; }
a.alt-link:hover { color: #174D87; }
a.alt-link:hover:before, a.alt-link:hover:after { margin: 0 14px; }

a.hover-link { position: relative; }
a.hover-link:before { transform: scaleX(0); transform-origin: bottom right; }
a.hover-link:hover { padding: 0 4px; color: #fff; }
a.hover-link:hover:before { transform: scaleX(1); transform-origin: bottom left; }
a.hover-link:before { content: ' '; display: block; position: absolute; top: 0; right: 0; bottom: 0; left: 0; inset: 0 0 0 0; background: #174D87; z-index: -1; transition: transform 0.5s cubic-bezier(0.77, 0, 0.175, 1); }

a.arrow-link { position: relative; display: inline-block; font-size: 12px; line-height: 1.7; font-weight: 600; }
a.arrow-link:hover { padding-left: 7px; color: #174D87 !important; }
a.arrow-link:hover:after { padding-left: 15px; }
a.arrow-link:after { content: url("../../../media/arrow-right.svg"); display: inline-block; vertical-align: top; padding-left: 10px; }
a.arrow-link.white { color: #fff; }
a.arrow-link.white:after { filter: invert(1); }

a.iconed-link { display: inline-block; font-size: 20px; text-decoration: none; }
a.iconed-link:before { display: inline-block; margin-right: 15px; }
a.iconed-link span { vertical-align: top; line-height: 1.5; }
a.iconed-link:hover { padding-left: 8px; }
a.iconed-link:hover span { color: #174D87; }
a.iconed-link.white span { color: #fff !important; }
a.iconed-link.mail:before { content: url("../../../media/icon-envelope.svg"); }

.pdf-links { position: relative; margin-top: 30px; padding-left: 70px; }
.pdf-links--big { padding-left: 85px; }
.pdf-links--big:before { transform-origin: 0 0; transform: scale(2); }
.pdf-links--one { padding-left: 50px; line-height: 35px; }
.pdf-links:before { content: url("../../../media/icon-pdf.svg"); position: absolute; left: 0; }
.pdf-links a { display: inline-block; padding-bottom: 8px; text-decoration: underline; }

.bt-back { display: flex; align-items: center; font-weight: 400; color: #B9B9B9; }
.bt-back:before { content: "\e03f"; font-family: "linea-arrows-10"; font-size: 20px; }
.bt-back:hover { color: #000; }

.bt-like { display: flex; }
.bt-like i { margin-right: 8px; font-size: 18px; color: #B9B9B9; }
.bt-like:hover { color: #B9B9B9; }

#interlinks .section_inner { margin-bottom: 60px; padding: 50px 0; border-top: 1px solid #d2d2d2; border-bottom: 1px solid #d2d2d2; }
#interlinks .bts a { position: relative; padding-left: 40px; font-size: 24px; }
#interlinks .bts a span { display: block; color: #B9B9B9; font-size: 16px; }
#interlinks .bts a:before { content: "\e03f"; position: absolute; left: 0; top: 18px; font-family: "linea-arrows-10"; font-size: 30px; }
#interlinks .bts a:hover { margin-left: -5px; padding-left: 50px; }
#interlinks .bts a.right { padding: 0 40px 0 0; text-align: right; }
#interlinks .bts a.right:before { left: auto; right: 0; top: 20px; transform: rotate(180deg); }
#interlinks .bts a.right:hover { margin: 0 -5px 0 0; padding: 0 50px 0 0; }

@media screen and (max-width: 1000px) { /* .boxed-link { 		padding: 6px 35px; 		font-size: 15px;  		&:hover { 			padding: 6px 40px; 		} 	} */
  #interlinks .bts a { font-size: 20px; }
  #interlinks .bts a span { padding-bottom: 5px; font-size: 15px; } }
@media screen and (max-width: 767px) { /* .boxed-link { 	font-size: 14px; } */
  a.iconed-link { font-size: 16px; }
  #interlinks { display: none; } }
/* ********************************************************************************************************************* SHARED ELEMENTS */
/* PRELOAD */
.preload, .preload:after { position: absolute; z-index: 2; width: 180px; height: 180px; left: 50%; top: 50%; margin: -90px 0 0 -90px; border-radius: 50%; }

.preload { background-color: transparent; border-top: 1px solid #e29dff; border-right: 1px solid #e29dff; border-bottom: 1px solid #e29dff; border-left: 1px solid #174D87; transform: translateZ(0); animation-iteration-count: infinite; animation-timing-function: linear; animation-duration: .8s; animation-name: preload-loading; }

@keyframes preload-loading { 0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); } }
.animblock { opacity: 0; }

.animtext > span > span { overflow: hidden; margin-bottom: -10px; }

.esfera { position: relative; width: 330px; height: 330px; }
.esfera .bola { position: relative; z-index: 2; width: 100%; height: 100%; border-radius: 50%; background: radial-gradient(circle at 10% 10%, #f8f8f8 20%, #888888 90%); box-shadow: inset 0 0 5px 0 rgba(0, 0, 0, 0.1); }
.esfera .sombra { position: absolute; z-index: 1; mix-blend-mode: multiply; width: 480px; height: 330px; top: 50px; left: 30px; transform: rotateZ(35deg); border-radius: 50%; background: radial-gradient(ellipse at 30% 30%, #777777 19%, rgba(255, 255, 255, 0.2) 100%); filter: blur(25px); }
.esfera .circ { position: absolute; box-sizing: border-box; z-index: 3; top: 165px; left: 165px; width: 112px; height: 112px; border: 22px solid #fff; border-radius: 50%; transform: translate(-50%, -50%); }

.contact-block { display: flex; flex-direction: column; align-items: start; gap: 4px; margin: 40px 0; }
.contact-block a { font-family: 'cb'; font-size: 15px; }

.app-bt { display: flex; justify-content: start; max-width: 100px; text-decoration: none; }
.app-bt span { max-width: 70px; padding-left: 15px; font-size: 15px; line-height: 1.1; color: #fff; }
.app-bt--big { max-width: 120px; }
.app-bt--big img { width: 22px; }
.app-bt--big span { font-size: 18px; }

.popup { position: fixed; display: none; z-index: 10000000; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.8); }
.popup .modal-box { position: absolute; box-sizing: border-box; overflow: hidden; left: 50%; top: 50%; max-width: 500px; min-height: 300px; margin: -250px 0 0 -250px; padding: 40px; background-color: #fff; }
.popup .modal-box a.bt-close { position: fixed; right: 25px; top: 30px; text-decoration: none; }
.popup .modal-box a.bt-close:after { content: '\00d7' !important; font-weight: 400; font-size: 40px !important; line-height: 0; color: #fff; }
.popup .modal-box a.bt-close:hover { opacity: 0.5; }

@media screen and (max-height: 700px) and (min-width: 1000px) { /* .popup {  		.modal-box { 			width: 750px; 			height: 500px; 			top: 80px; 			margin: 0 0 0 -375px; 		} 	} */ }
@media screen and (max-width: 1400px) { /* .popup {  		.modal-box { 			width: 900px; 			height: 500px; 			margin: -250px 0 0 -450px; 		} 	} */ }
@media screen and (max-width: 1000px) { /* .popup {  		.modal-box { 			width: 750px; 			height: 420px; 			margin: -210px 0 0 -375px; 		} 	} */ }
@media screen and (max-width: 767px) { .preload, .preload:after { width: 100px; height: 100px; margin: -50px 0 0 -50px; }
  .popup .modal-box { overflow: visible; width: 360px; margin: -100px 0 0 -180px; } }
@media screen and (max-width: 400px) { .popup.form .modal-box { width: 90%; margin: -260px 0 0 -45%; }
  .popup.form .modal-box a.bt-close { position: absolute; right: 15px; top: 25px; }
  .popup.form .modal-box a.bt-close:after { color: #000; } }
/* * {
	border: 0;
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}
:root {
	font-size: calc(16px + (20 - 16) * (100vw - 320px) / (1280 - 320));
}
body {
	background-color: hsl(223, 90%, 95%);
	font: 1em/1.5 sans-serif;
	height: 100vh;
	display: grid;
	place-items: center;
} */
.preloader { position: absolute; height: 100vh; width: 100%; display: grid; place-items: center; background: linear-gradient(186deg, #8da3bc 0%, #9fb7cf 20%); /* background-image: url('../../../media/intro.jpg');
background-size: cover; */ }

.pl, .pl__ball, .pl__ball-inner-shadow, .pl__ball-side-shadows, .pl__ball-texture, .pl__inner-ring, .pl__outer-ring, .pl__track-cover { border-radius: 50%; }

.pl { position: relative; width: 16em; height: 16em; }

.pl__ball, .pl__ball-inner-shadow, .pl__ball-outer-shadow, .pl__ball-side-shadows, .pl__ball-texture, .pl__ball-texture:before, .pl__inner-ring, .pl__outer-ring, .pl__track-cover { position: absolute; }

.pl__ball, .pl__ball-inner-shadow, .pl__ball-outer-shadow, .pl__ball-texture:before, .pl__track-cover { animation: ball 3s linear infinite; }

.pl__ball { top: calc(50% - 1.25em); left: calc(50% - 1.25em); transform: rotate(0) translateY(-6.5em); width: 2.5em; height: 2.5em; }

.pl__ball-inner-shadow { animation-name: ballInnerShadow; box-shadow: 0 0.1em 0.2em rgba(0, 0, 0, 0.3), 0 0 0.2em rgba(0, 0, 0, 0.1) inset, 0 -1em 0.5em rgba(0, 0, 0, 0.15) inset; width: 100%; height: 100%; }

.pl__ball-outer-shadow { animation-name: ballOuterShadow; background-image: linear-gradient(rgba(0, 0, 0, 0.15), transparent); border-radius: 0 0 50% 50% / 0 0 100% 100%; filter: blur(2px); top: 50%; left: 0; width: 100%; height: 250%; transform: rotate(20deg); transform-origin: 50% 0; z-index: -2; }

.pl__ball-side-shadows { background-color: rgba(0, 0, 0, 0.1); filter: blur(2px); width: 100%; height: 100%; transform: scale(0.75, 1.1); z-index: -1; }

.pl__ball-texture { overflow: hidden; width: 100%; height: 100%; transform: translate3d(0, 0, 0); }

.pl__ball-texture:before { animation-name: ballTexture; animation-duration: 0.25s; background-color: #fff; content: ""; display: block; filter: brightness(1.05); top: 0; right: 0; width: 200%; height: 100%; }

.pl__inner-ring { box-shadow: 0 -0.25em 0.5em rgba(255, 255, 255, 0.4), 0 0.5em 0.75em rgba(255, 255, 255, 0.4) inset, 0 0.5em 0.375em rgba(0, 0, 0, 0.15), 0 -0.5em 0.75em rgba(0, 0, 0, 0.15) inset; top: 2.375em; left: 2.375em; width: calc(100% - 4.75em); height: calc(100% - 4.75em); }

.pl__outer-ring { box-shadow: 0 -0.45em 0.375em rgba(0, 0, 0, 0.15), 0 0.5em 0.75em rgba(0, 0, 0, 0.15) inset, 0 0.25em 0.5em rgba(255, 255, 255, 0.4), 0 -0.5em 0.75em rgba(255, 255, 255, 0.4) inset; top: 0.75em; left: 0.75em; width: calc(100% - 1.5em); height: calc(100% - 1.5em); }

.pl__track-cover { animation-name: trackCover; background-image: conic-gradient(#9fb7cf 210deg, rgba(231, 237, 254, 0) 270deg); top: 0; left: 0; width: 100%; height: 100%; }

/* Animations */
@keyframes ball { from { transform: rotate(0) translateY(-6.5em); }
  50% { transform: rotate(180deg) translateY(-6em); }
  to { transform: rotate(360deg) translateY(-6.5em); } }
@keyframes ballInnerShadow { from { transform: rotate(0); }
  to { transform: rotate(-360deg); } }
@keyframes ballOuterShadow { from { transform: rotate(20deg); }
  to { transform: rotate(-340deg); } }
@keyframes ballTexture { from { transform: translateX(0); }
  to { transform: translateX(50%); } }
@keyframes trackCover { from { transform: rotate(0); }
  to { transform: rotate(360deg); } }
/* ********************************************************************************************************************* RRSS & SOCIAL */
.social-menu { position: relative; }
.social-menu a { content: ''; width: 30px; height: 30px; display: inline-block; overflow: hidden; background: transparent url("../../../media/social-sprite.svg") no-repeat 0 -3px; }
.social-menu a.facebook { background-position: 0 -3px; }
.social-menu a.twitter { background-position: -30px -3px; }
.social-menu a.linkedin { background-position: -60px -3px; }
.social-menu a.instagram { background-position: -90px -3px; }
.social-menu a.podcast { background-position: -120px -3px; }
.social-menu a.youtube { background-position: -150px -3px; }
.social-menu a.rss { background-position: -180px -3px; }
.social-menu a.spotify { background-position: -210px -3px; }
.social-menu a.whatsapp { background-position: -240px -3px; }
.social-menu a.mail { background-position: -270px -3px; }
.social-menu a.tripadvisor { background-position: -300px -3px; }
.social-menu a:hover { opacity: 0.7; }
.social-menu a.white { filter: invert(100%); }
.social-menu.big a { margin-right: 5px; transform: scale(1.2); }

.social ul li { display: inline-block; vertical-align: top; overflow: hidden; width: 32px; height: 32px; margin: 0 3px; border-radius: 100%; border: 1px solid #fff; transition: all 0.4s ease 0s !important; }
.social ul li:first-child { margin-left: 0; }
.social ul li a { display: block; width: 100%; height: 200%; position: relative; top: 0; line-height: 32px !important; text-align: center; color: #fff; }
.social ul li a i { font-size: 16px; }
.social ul li a i:last-child { display: block; margin-top: 2px; color: #fff; }
.social ul li:hover { border-color: transparent; }
.social ul li:hover a { top: -26px; }
.social ul li:hover a i:first-child { transition: all 0.3s ease 0s !important; opacity: 0; }
.social ul li:nth-of-type(1):hover { background-color: #537bbd; }
.social ul li:nth-of-type(2):hover { background-color: #77cdf0; }
.social ul li:nth-of-type(3):hover { background-color: #ff0000; }
.social ul li:nth-of-type(4):hover { background-color: #0077B5; }

@media screen and (max-width: 767px) { .social-menu { position: relative; }
  .social-menu a { margin: 0 3px; transform: scale(1.2); } }
/* ********************************************************************************************************************* FORMS / CF7 */
.form-container .form-column-left { position: relative; float: left; width: 49%; z-index: 2; }
.form-container .form-column-right { position: relative; float: right; width: 49%; z-index: 2; }
.form-container .form-column-full { position: relative; display: block; z-index: 1; }
.form-container .block-legal { padding-top: 10px; }
.form-container .block-legal p { padding-bottom: 8px; color: #6F6F6E; }

.wpcf7-form > p { position: relative; margin: 5px 0 !important; }
.wpcf7-form > p label { position: absolute; display: block; z-index: 1; pointer-events: none; top: 30px; width: 100%; font-size: 17px; color: #B9B9B9; transition: all 0.4s cubic-bezier(0.785, 0.135, 0.15, 0.86) 0s !important; }
.wpcf7-form > p label.has-value { top: 7px; font-size: 12px; color: #174D87; }
.wpcf7-form input.wpcf7-text, .wpcf7-form input.wpcf7-mail, .wpcf7-form textarea.wpcf7-textarea { outline: none; max-width: 100%; padding: 0 0 4px 0; font-family: 'cr'; font-size: 20px !important; color: #000 !important; background-color: transparent; border: 0; border-bottom: 1px solid #B9B9B9; }
.wpcf7-form textarea.wpcf7-textarea { height: 30px; line-height: 1.2; transition: height 0.4s cubic-bezier(0.785, 0.135, 0.15, 0.86) 0s !important; }
.wpcf7-form textarea.wpcf7-textarea:focus { height: 100px; }
.wpcf7-form .wpcf7-list-item { margin-left: 0 !important; }
.wpcf7-form .block-legal { margin: 40px 0 20px 0; font-size: 12px; }
.wpcf7-form .block-legal > p { display: flex; align-items: center; }
.wpcf7-form .block-legal .wpcf7-not-valid-tip { position: absolute; top: 20px; left: 0; width: 200px; }
.wpcf7-form .txt-legal { display: inline-block; margin: 0 0 0 30px; font-size: 12px; color: #000; transform: translateY(-6px); }
.wpcf7-form .txt-legal a, .wpcf7-form .txt-legal a:hover { color: #000 !important; }
.wpcf7-form span.wpcf7-list-item { margin: 0 5px 0 0; }
.wpcf7-form .wpcf7-checkbox label { position: relative; cursor: pointer; color: #174D87; }
.wpcf7-form .wpcf7-checkbox input[type=checkbox] { position: absolute; visibility: hidden; }
.wpcf7-form .wpcf7-checkbox input[type=checkbox] + span { display: inline-block; overflow: hidden; width: 0; color: transparent; }
.wpcf7-form .wpcf7-checkbox input[type=checkbox] + span:before { display: block; position: absolute; box-sizing: border-box; content: ''; height: 20px; width: 20px; top: -8px; left: 0px; border: 1px solid #B9B9B9; transition: all 0.3s ease 0s !important; }
.wpcf7-form .wpcf7-checkbox input[type=checkbox] + span:after { content: "\2713"; position: absolute; display: block; visibility: hidden; height: 20px; width: 20px; top: -9px; left: 0; font-size: 15px; font-weight: 700; text-align: center; line-height: 1.5; color: #fff; -moz-transform: scale(0); -webkit-transform: scale(0); transform: scale(0); transition: transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0s !important; }
.wpcf7-form .wpcf7-checkbox input[type=checkbox]:checked + span:before { background: #174D87; border-color: #174D87; }
.wpcf7-form .wpcf7-checkbox input[type=checkbox]:checked + span:after { visibility: visible; -moz-transform: scale(1); -webkit-transform: scale(1); transform: scale(1); }
.wpcf7-form input.wpcf7-submit { display: inline-block; cursor: pointer; padding: 12px 35px; font-size: 16px; text-decoration: none !important; color: #fff; background-color: #174D87; border: 0; transition: all 0.3s cubic-bezier(0.165, 0.84, 0.44, 1); }
.wpcf7-form input.wpcf7-submit:hover { padding: 12px 40px; color: #fff; background-color: #1e66b3; }
.wpcf7-form .wpcf7-spinner { display: block; margin: 10px auto 0 auto; }
.wpcf7-form .wpcf7-not-valid-tip { display: block !important; padding: 5px 0 0 0; text-transform: uppercase; font-size: 12px !important; color: #ff0000 !important; }
.wpcf7-form .wpcf7-response-output { margin: 0 !important; font-size: 16px !important; padding: 20px !important; line-height: 1.2; color: #fff; background-color: #ff0000 !important; border: 0 !important; }
.wpcf7-form.sent .wpcf7-response-output { padding: 25px 40px 25px 75px !important; background-color: #80c84b !important; }
.wpcf7-form.sent .wpcf7-response-output:before { font-size: 30px !important; }

/* HACK FOR AUTOCOMPLETE FIELDS IN CHROME (YELLOW BUG) */
input:-webkit-autofill, input:-webkit-autofill:hover, input:-webkit-autofill:focus { -webkit-box-shadow: 0 0 0 100px transparent inset; color: #222; }

/* ::-webkit-input-placeholder {
	color: #000;
	opacity: 1 !important;
}

::-moz-placeholder {
	color: #000;
	opacity: 1 !important;
}

input:focus::-webkit-input-placeholder { opacity: 0; @include transition(all,.4s,linear); }
input:focus::-moz-placeholder { opacity: 0; }
textarea:focus::-webkit-input-placeholder { opacity: 0; @include transition(all,.4s,linear); }
textarea:focus::-moz-placeholder { opacity: 0; }
textarea:focus::-moz-placeholder { opacity: 0; } */
@media screen and (max-width: 1000px) { .wpcf7-form { 		/* .block-legal {
			margin: 10px 0;
		}

		p {
			margin-bottom: 10px !important;
		}

		p.text-bigger {
			font-size: 16px !important;
		} */ }
  .wpcf7-form > p label { top: 20px; }
  .wpcf7-form > p label.has-value { font-size: 11px; }
  .wpcf7-form input.wpcf7-text, .wpcf7-form input.wpcf7-mail, .wpcf7-form textarea.wpcf7-textarea { width: 100%; }
  .wpcf7-form .txt-legal { font-size: 11px; }
  .wpcf7-form .wpcf7-spinner { position: absolute; margin: 10px 0 0 0; } }
@media screen and (max-width: 767px) { .form-container .form-column-left, .form-container .form-column-right { float: none; width: 100%; }
  .wpcf7-form > p label { font-size: 15px; }
  .wpcf7-form input.wpcf7-text, .wpcf7-form input.wpcf7-mail, .wpcf7-form textarea.wpcf7-textarea { font-size: 16px !important; } }
/* ********************************************************************************************************************* HEADER - MENU */
header { z-index: 2; position: fixed; box-sizing: border-box; width: 100%; height: 0; padding: 30px 80px; transition: all .5s ease; }
header.sticky { padding-top: 0; }
header.sticky .logo { width: 90px; padding-top: 20px; }
header.sticky nav.main-menu { transform: translateY(0); }
header.faded { pointer-events: none; opacity: 0; }
header .container { align-items: end; }
header .logo { display: flex; width: 133px; padding-top: 5px; transition: all .5s ease; }
header .logo a:hover { opacity: 0.9; }
header .hamb { position: fixed; display: none; z-index: 3; top: 50px; right: 60px; width: 30px; height: 30px; }
header .hamb span { display: block; position: absolute; left: 0; height: 1px; width: 30px; background-color: #fff; transition: all 0.7s cubic-bezier(0.68, -0.55, 0.265, 1.55); }
header .hamb span:nth-child(1) { top: 0; }
header .hamb span:nth-child(2) { top: 10px; }
header .hamb span:nth-child(3) { top: 20px; }
header .hamb:hover { transform: scaleX(1.1); }
header nav.main-menu { transform: translateY(-50%); transition: all 0.6s cubic-bezier(0.77, 0, 0.175, 1); }
header nav.main-menu ul { display: flex; margin: 0; }
header nav.main-menu ul li { position: relative; list-style: none; margin-left: 35px; }
header nav.main-menu ul li a { font-family: 'cr'; font-size: 15px; line-height: 1; text-decoration: none; color: #fff; }
header nav.main-menu ul li a:after { content: ''; position: absolute; left: -50%; bottom: -2px; width: 101%; height: 1px; display: inline-block; background-color: transparent; transform: scaleX(0); transform-origin: 0 0; transition: all 0.6s cubic-bezier(0.785, 0.135, 0.15, 0.86); }
header nav.main-menu ul li a:hover:after { left: 0; background-color: #fff; transform: scaleX(1); }
header nav.main-menu ul li a.active { font-family: 'cb'; }
header nav.main-menu ul li.lang-item:last-of-type { margin-left: 5px; }
header nav.main-menu ul li.lang-item:last-of-type a { padding-left: 5px; border-left: 1px solid #fff; }
header nav.main-menu ul li.lang-item a { opacity: 0.7; }
header nav.main-menu ul li.lang-item a:after { display: none; }
header nav.main-menu ul li.lang-item a:hover { opacity: 1; }
header nav.main-menu ul li.lang-item.current_page_item a { font-family: 'cb'; opacity: 1; }
header nav.main-menu .extra { display: none; }
header .status { position: relative; width: 100%; height: 1px; margin-top: 20px; background-color: #fff; }
header .status .progress { position: absolute; width: 0; height: 3px; background-color: #fff; transform: translateY(-50%); }
header .status .ball { position: absolute; width: 18px; height: 18px; left: 0; margin: -9px 0 0 -9px; background-color: #fff; border-radius: 50%; }

.menu-open header .hamb span:nth-child(1) { -moz-transform: rotate(45deg); -webkit-transform: rotate(45deg); transform: rotate(45deg); top: 10px; }
.menu-open header .hamb span:nth-child(2) { opacity: 0; width: 0; left: -10px; }
.menu-open header .hamb span:nth-child(3) { -moz-transform: rotate(-45deg); -webkit-transform: rotate(-45deg); transform: rotate(-45deg); top: 10px; }
.menu-open header .hamb:hover { transform: scale(0.9); }
.menu-open header nav.main-menu { right: 0; opacity: 1; }

@media screen and (max-width: 1000px) { header.sticky .logo { pointer-events: none; opacity: 0; }
  header .hamb { display: block; }
  header nav.main-menu { position: fixed; box-sizing: border-box; top: 0; right: -260px; height: 100vh; width: 260px; padding: 150px 30px 0 50px; background-color: #174D87; transform: translateY(0); opacity: 0; box-shadow: -5px 0px 18px -4px rgba(0, 0, 0, 0.25); }
  header nav.main-menu ul { flex-direction: column; }
  header nav.main-menu ul li { margin: 0 0 10px 0; }
  header nav.main-menu ul li a { font-size: 18px; }
  header nav.main-menu ul li.popup-bt, header nav.main-menu ul li.lang-item.current_page_item { display: none; }
  header nav.main-menu ul li.lang-item { margin-top: 10px; }
  header nav.main-menu .extra { display: block; }
  header nav.main-menu .extra .contact-block { margin: 60px 0; }
  header nav.main-menu .extra .contact-block a { font-size: 18px; }
  header .status { display: none; } }
@media screen and (max-width: 767px) { header { padding: 30px; }
  header .logo img { width: 160px; max-width: none; }
  header.sticky .hamb { top: 30px; }
  header .hamb { right: 30px; } }
/* ********************************************************************************************************************* FOOTER */
footer { position: fixed; box-sizing: border-box; align-items: top; bottom: 0; width: 100%; padding: 80px; background-color: #B9B9B9; box-shadow: inset 0px 10px 20px -8px rgba(0, 0, 0, 0.21); }
footer .left .logo { width: 180px; }
footer .left .logo:hover { opacity: 0.8; }
footer .left h5 { max-width: 200px; margin: 30px 0 40px 0; color: #fff; }
footer .left .legal { display: flex; flex-direction: column; align-items: start; gap: 4px; }
footer .left .credits { margin-top: 8px; color: #fff; }
footer .left .credits span { display: block; }
footer .right { width: 200px; }
footer .right .menu { list-style: none; }
footer .right .menu li { padding-bottom: 5px; }
footer .right .menu li a { font-size: 15px; text-decoration: none; color: #fff; border-bottom: 1px solid transparent; }
footer .right .menu li a:hover { border-color: #fff; }
footer .right .menu li.popup-bt, footer .right .menu li.lang-item { display: none; }
footer .right .app-bt:hover { filter: invert(75%); }
footer .bt-top { position: absolute; bottom: 30px; right: 30px; font-size: 30px; line-height: 0; text-decoration: none; color: #fff; }
footer .bt-top:hover { transform: scale(1.2); }

@media screen and (max-width: 767px) { footer { flex-flow: row nowrap !important; padding: 50px 30px; }
  footer .left { padding-right: 20px; }
  footer .left .logo { display: block; width: 120px; }
  footer .left h5 { font-size: 18px; }
  footer .right { padding-left: 20px; border-left: 1px solid #D0D0D0; /* .contact-block {
	margin: 30px 0 21px 0;
} */ }
  footer .right .menu li a { font-size: 14px; } }
/* PAGES / MODULES */
#intro { position: relative; overflow: hidden; height: 100vh; background-size: cover; background-position: center center; }
#intro .cover { position: absolute; z-index: 2; top: 0; left: 0; width: 100%; height: 100%; background-color: #174D87; opacity: 0; }
#intro video { position: absolute; z-index: 1; top: 50%; left: 50%; transform: translate(-50%, -50%); min-width: 100%; min-height: 100%; width: auto; height: auto; opacity: 0; transition: opacity .6s linear; }
#intro video.active { opacity: 1; }
#intro .data { position: relative; z-index: 3; padding-top: 45vh; opacity: 0; transition: opacity 1s linear 1s; }
#intro .data h1 { max-width: 700px; margin: 0 auto; text-align: center; color: #fff; }
#intro .data h1.splitting .char { position: relative; animation: charSlideIn 1s cubic-bezier(0.5, 0, 0.5, 1) both; animation-delay: calc(30ms * var(--char-index)); }
#intro .bt-follow { position: absolute; z-index: 3; top: 80vh; left: calc(50% - 10px); font-size: 60px; color: #fff; opacity: 0; transition: all .8s ease 1.5s !important; }
#intro .bt-follow:hover { color: #174D87; }
#intro.active { transform: scale(1); }
#intro.active .data { opacity: 1; }
#intro.active .bt-follow { top: 86vh; opacity: 1; }

@media screen and (max-width: 767px) { #intro { height: 95vh; }
  #intro video { height: 100%; }
  #intro .data h1 { max-width: 85%; }
  #intro.active .bt-follow { top: 82vh; } }
#servicios { position: relative; overflow: hidden; min-height: 100vh; padding-bottom: 80px; background-color: #D0D0D0; }
#servicios h3 { margin-top: 120px; }
#servicios .servs { position: relative; width: 1200px; height: 820px; margin: 0 auto; /* .cover {
	position: absolute;
	box-sizing: border-box;
	pointer-events: none;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-58%);
	width: 1500px;
	height: 1500px;
	border-radius: 50%;
	border: 1000px solid $light-grey;
	transition: border 5s $easeOutQuart;
} */ }
#servicios .servs .logo { display: none; }
#servicios .servs .esfera { position: absolute; top: 130px; left: 50%; transform: translateX(-50%); opacity: 0; transition: opacity 1s linear .5s; }
#servicios .servs .esfera .circ { border-width: 0; transition: border 1s cubic-bezier(0.165, 0.84, 0.44, 1) 2s; }
#servicios .servs .mods { position: absolute; width: 100%; height: 100%; }
#servicios .servs .mods .mod { position: absolute; cursor: default; opacity: 0; transition: all 0.5s cubic-bezier(0.455, 0.03, 0.515, 0.955); }
#servicios .servs .mods .mod.active .data .txt { opacity: 1; }
#servicios .servs .mods .mod .data { position: absolute; display: flex; align-items: end; gap: 10px; top: 50%; left: 30px; transform: translateY(-50%); transition: filter 0.5s cubic-bezier(0.165, 0.84, 0.44, 1); }
#servicios .servs .mods .mod .data--rev { flex-direction: row-reverse; left: auto; right: 30px; }
#servicios .servs .mods .mod .data--rev h6 { text-align: right; }
#servicios .servs .mods .mod .data h6 { max-width: 140px; font-size: 18px; color: #fff; }
#servicios .servs .mods .mod .data .txt { position: absolute; opacity: 0; transition: opacity .4s linear; }
#servicios .servs .mods .mod .data .txt p { margin-bottom: 20px; font-size: 15px; line-height: 1.2; }
#servicios .servs .mods .mod .data .txt a { display: flex; gap: 10px; }
#servicios .servs .mods .mod .data .txt a img { width: 12px; filter: invert(75%); }
#servicios .servs .mods .mod .data .txt a:hover { padding-top: 5px; }
#servicios .servs .mods .mod--1 { top: 100px; left: calc(50% + 61px); transform: translateX(-50px); transition-delay: 2s; }
#servicios .servs .mods .mod--1 .data .txt { top: 110%; left: -70px; width: 210px; text-align: right; }
#servicios .servs .mods .mod--2 { top: 294px; left: calc(50% + 60px); transform: translateX(-50px); transition-delay: 2.2s; }
#servicios .servs .mods .mod--2 .data { align-items: center; top: 30%; }
#servicios .servs .mods .mod--2 .data .txt { top: -20px; left: calc(100% + 45px); width: 150px; }
#servicios .servs .mods .mod--3 { top: 320px; left: calc(50% + 35px); transform: translateX(-50px); transition-delay: 2.4s; }
#servicios .servs .mods .mod--3 .data { top: 45%; }
#servicios .servs .mods .mod--3 .data .txt { top: 100%; left: calc(100% + 45px); width: 200px; }
#servicios .servs .mods .mod--4 { top: 319px; left: 82px; transform: translateX(50px); transition-delay: 2.6s; }
#servicios .servs .mods .mod--4 .data .txt { top: 115%; left: 55px; width: 150px; }
#servicios .servs .mods .mod--5 { top: 294px; left: 180px; transform: translateX(50px); transition-delay: 2.8s; }
#servicios .servs .mods .mod--5 .data { top: 32%; }
#servicios .servs .mods .mod--5 .data .txt { top: -10px; left: -200px; width: 150px; text-align: right; }
#servicios .servs .mods .mod--6 { top: 4px; left: 6px; transform: translateX(50px); transition-delay: 3s; }
#servicios .servs .mods .mod--6 .data { align-items: top; top: 60%; }
#servicios .servs .mods .mod--6 .data .txt { top: 115%; left: 40px; width: 210px; }
#servicios.active { /* .cover {
	border-width: 0;
} */ }
#servicios.active .esfera { opacity: 1; }
#servicios.active .esfera .circ { border-width: 22px; }
#servicios.active .servs .mods .mod { opacity: 1; transform: translateX(0); }

@media screen and (max-width: 1200px) { #servicios .servs { transform: scale(0.75); margin-left: -80px; } }
@media screen and (min-width: 1000px) { #servicios .servs .mods .mod:hover .data .txt { opacity: 1; } }
@media screen and (max-width: 1000px) { #servicios { min-height: 0; }
  #servicios h3 { margin: 60px 0 30px 0; }
  #servicios .servs { width: 80%; height: auto; transform: scale(1); margin-left: auto; }
  #servicios .servs .logo { display: block; text-align: center; }
  #servicios .servs .esfera { display: none; }
  #servicios .servs .mods { position: relative; width: 100%; margin-top: 35px; }
  #servicios .servs .mods .mod { position: relative; top: 0 !important; left: 0 !important; padding: 15px 0 25px 0; border-top: 1px solid #fff; }
  #servicios .servs .mods .mod .shape { display: none; }
  #servicios .servs .mods .mod .data { position: relative; display: block; top: 0 !important; left: 0 !important; transform: translateY(0); }
  #servicios .servs .mods .mod .data--rev { flex-direction: row; right: auto; }
  #servicios .servs .mods .mod .data--rev h6 { text-align: left; }
  #servicios .servs .mods .mod .data > img { position: absolute; height: 40px; }
  #servicios .servs .mods .mod .data h6 { max-width: none; padding: 15px 0 0 55px; font-size: 16px; font-family: 'cb'; }
  #servicios .servs .mods .mod .data h6 br { display: none; }
  #servicios .servs .mods .mod .data .txt { position: relative; top: 0 !important; left: 0 !important; width: 100% !important; text-align: left !important; opacity: 1; }
  #servicios .servs .mods .mod .data .txt p { margin: 20px 0 0 0; }
  #servicios .servs .mods .mod .data .txt a { margin-top: 15px; }
  #servicios .servs .mods .mod--2 .data img { height: 25px; top: 10px; } }
@media screen and (max-width: 767px) { #servicios .servs .mods .mod { padding: 15px 0 10px 0; }
  #servicios .servs .mods .mod.active .data .txt { height: auto; padding-bottom: 10px; }
  #servicios .servs .mods .mod .data .txt { box-sizing: border-box; height: 0; opacity: 0; }
  #servicios .servs .mods .mod .data .txt p { font-size: 14px; }
  #servicios .servs .mods .mod--3 { transition-delay: 3.2s; } }
#salud { position: relative; overflow: hidden; height: 100vh; background-size: cover; background-position: center center; }
#salud .cover { position: absolute; z-index: 2; top: 0; left: 0; width: 100%; height: 100%; background-color: #000; opacity: 0; }
#salud video { position: absolute; z-index: 1; top: 50%; left: 50%; transform: translate(-50%, -50%); min-width: 100%; min-height: 100%; width: auto; height: auto; opacity: 0; transition: opacity 2s linear; }
#salud video.active { opacity: 1; }
#salud .data { position: relative; z-index: 3; padding-top: 45vh; opacity: 0; transition: opacity 1s linear 1s; }
#salud .data h2 { text-align: center; color: #6F6F6E; /* &.splitting .char {
	position: relative;
	animation: charSlideIn 1s cubic-bezier(.5, 0, .5, 1) both;
	animation-delay: calc(40ms * var(--char-index));
} */ }
#salud .bt-follow { position: absolute; z-index: 3; top: 80vh; left: calc(50% - 10px); font-size: 60px; color: #fff; opacity: 0; filter: invert(75%); transition: all .8s ease 1.5s !important; }
#salud .bt-follow:hover { padding-top: 10px; }
#salud.active video { opacity: 1; }
#salud.active .data { opacity: 1; }
#salud.active .bt-follow { top: 86vh; opacity: 1; }

@media screen and (max-width: 1000px) { #salud { height: 80vw; }
  #salud video { height: 100%; }
  #salud .data { display: flex; justify-content: center; align-items: center; height: 100%; padding: 0 50px; } }
@media screen and (max-width: 767px) { #salud { height: 100vw; } }
#proceso { position: relative; overflow: hidden; height: 100vh; background-color: #174D87; }
#proceso h3 { display: block; padding-top: 120px; }
#proceso .proceso { position: relative; width: 1480px; height: 540px; margin: 100px auto 0 auto; opacity: 0; background-color: #174D87; transition: all 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94) 1s; }
#proceso .proceso > div { position: absolute; }
#proceso .proceso .back { top: 0; left: 0; opacity: 0.3; }
#proceso .proceso .proceso-mobile { display: none; }
#proceso .proceso .logo { pointer-events: none; left: calc(50% - 100px); top: 180px; opacity: 0; transform: scale(1.3); mix-blend-mode: screen; transition: all 0.8s cubic-bezier(0.455, 0.03, 0.515, 0.955) 1.5s; }
#proceso .proceso .lines { display: flex; justify-content: space-between; align-items: center; pointer-events: none; top: 100px; left: calc(50% - 560px); width: 1120px; opacity: 0; transition: opacity 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94) 2s; }
#proceso .proceso .lines > div { position: relative; }
#proceso .proceso .anim { pointer-events: none; top: 95px; left: calc(50% - 560px); opacity: 0; transition: opacity 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94) 4s; }
#proceso .proceso .anim svg { overflow: visible; }
#proceso .proceso .anim svg .p_path { opacity: 0; }
#proceso .proceso .blocks { top: 0; left: 0; width: 100%; }
#proceso .proceso .blocks .block { position: absolute; cursor: default; padding-left: 12px; border-left: 1px solid #fff; opacity: 0; transform: scale(0.7); transition: all 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94); }
#proceso .proceso .blocks .block:before { content: ''; position: absolute; top: 0; left: -3px; width: 5px; height: 5px; background-color: #fff; border-radius: 50%; }
#proceso .proceso .blocks .block p { width: 120px; margin-top: -3px; font-size: 14px; line-height: 1.25; color: #fff; }
#proceso .proceso .blocks .block--invert { top: 305px; }
#proceso .proceso .blocks .block--invert:before { top: auto; bottom: 0; }
#proceso .proceso .blocks .block.active { opacity: 0.5; transform: scale(1); }
#proceso .proceso .blocks .block.no-delay { transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1); transition-delay: 0s !important; }
#proceso .proceso .blocks .block.no-delay:hover { opacity: 1; transform: scale(1.05); }
#proceso .proceso .blocks .block.b1 { top: 232px; left: 110px; border: 0; height: 50px; }
#proceso .proceso .blocks .block.b1 p { width: 100px; margin-left: -130px; text-align: right; }
#proceso .proceso .blocks .block.b1:before { top: calc(50% - 2px); }
#proceso .proceso .blocks .block.b1:after { content: ''; position: absolute; top: 50%; left: 0px; width: 72px; height: 1px; background-color: #fff; }
#proceso .proceso .blocks .block.b2 { top: 105px; left: 300px; height: 106px; }
#proceso .proceso .blocks .block.b3 { top: 65px; left: 495px; height: 145px; }
#proceso .proceso .blocks .block.b4 { top: 5px; left: 50%; height: 80px; }
#proceso .proceso .blocks .block.b5 { top: 95px; left: calc(50% + 240px); height: 116px; }
#proceso .proceso .blocks .block.b5 p { width: 160px; }
#proceso .proceso .blocks .block.b6 { top: 115px; left: calc(50% + 470px); height: 96px; }
#proceso .proceso .blocks .block.b7 { top: 232px; left: calc(50% + 630px); border: 0; height: 50px; }
#proceso .proceso .blocks .block.b7 p { width: 100px; }
#proceso .proceso .blocks .block.b7:before { top: calc(50% - 2px); }
#proceso .proceso .blocks .block.b7:after { content: ''; position: absolute; top: 50%; left: -70px; width: 70px; height: 1px; background-color: #fff; }
#proceso .proceso .blocks .block.b8 { left: calc(50% + 410px); height: 65px; }
#proceso .proceso .blocks .block.b8 p { width: 170px; margin-top: 53px; }
#proceso .proceso .blocks .block.b9 { left: calc(50% + 215px); height: 110px; }
#proceso .proceso .blocks .block.b9 p { margin-top: 98px; }
#proceso .proceso .blocks .block.b10 { top: 415px; left: 680px; height: 60px; }
#proceso .proceso .blocks .block.b10 p { width: 150px; margin-top: 48px; }
#proceso .proceso .blocks .block.b11 { left: 440px; height: 110px; }
#proceso .proceso .blocks .block.b11 p { width: 160px; margin-top: 98px; }
#proceso .proceso .blocks .block.b12 { left: 275px; height: 65px; }
#proceso .proceso .blocks .block.b12 p { margin-top: 53px; }
#proceso.active .proceso { opacity: 1; }
#proceso.active .proceso .logo { transform: scale(1); opacity: 1; }
#proceso.active .proceso .lines { opacity: 1; }
#proceso.active .proceso .anim { opacity: 1; }

@media screen and (max-width: 1500px) { #proceso .proceso { transform: scale(0.8); margin-top: 0; } }
@media screen and (max-width: 1300px) { #proceso .proceso { transform: scale(0.7); margin-left: -100px; } }
@media screen and (max-width: 1200px) { #proceso .proceso { margin-left: -150px; } }
@media screen and (max-width: 1000px) { #proceso { height: auto; }
  #proceso h3 { padding-top: 60px; }
  #proceso .proceso { width: 100%; height: auto; margin: 0; transform: scale(1); 			/* transform-origin: 0;
			transform: scale(1) rotate(90deg);
			margin: 0;

			.blocks .block p {
				transform: rotate(-90deg);
			} */ }
  #proceso .proceso .proceso-mobile { position: relative; display: block; max-width: none; margin: 60px auto; }
  #proceso .proceso .logo { top: 348px; left: calc(50% - 107px); transform: scale(0.8) !important; }
  #proceso .proceso .lines, #proceso .proceso .blocks, #proceso .proceso .anim { display: none; } }
@media screen and (max-width: 767px) { #proceso .proceso .proceso-mobile { max-width: 320px; }
  #proceso .proceso .logo { top: 305px; transform: scale(0.7) !important; } }
#nosotros { position: relative; overflow: hidden; height: 100vh; background-size: cover; background-position: center center; }
#nosotros .cover { position: absolute; z-index: 2; top: 0; left: 0; width: 100%; height: 100%; background-color: #174D87; opacity: 0; }
#nosotros video { position: absolute; z-index: 1; top: 50%; left: 50%; transform: translate(-50%, -50%); min-width: 100%; min-height: 100%; width: auto; height: auto; opacity: 0; transition: opacity .6s linear 1s; }
#nosotros video.active { opacity: 1; }
#nosotros .data { position: relative; z-index: 3; display: flex; flex-direction: column; justify-content: center; align-items: center; height: 100%; opacity: 0; transition: opacity 1s linear 1s, padding 1.5s cubic-bezier(0.25, 0.46, 0.45, 0.94) 1s; }
#nosotros .data h3 { margin-bottom: 20vh; }
#nosotros .data p { max-width: 1060px; text-align: center; }
#nosotros.active { transform: scale(1); }
#nosotros.active video { opacity: 1; }
#nosotros.active .data { opacity: 1; }

@media screen and (max-width: 1000px) { #nosotros { height: 80vw; }
  #nosotros video { height: 100%; }
  #nosotros .data h3 { margin-bottom: 50px; }
  #nosotros .data p { max-width: 85%; font-size: 30px; } }
@media screen and (max-width: 767px) { #nosotros { height: 100vw; }
  #nosotros .data h3 { margin-bottom: 50px; }
  #nosotros .data p { max-width: 80%; font-size: 18px; text-align: left; } }
#desc { position: relative; display: flex; align-items: center; justify-content: center; height: 500px; background-color: #D0D0D0; }
#desc .data { display: flex; align-items: start; justify-content: center; gap: 60px; }
#desc .data p { max-width: 550px; margin: 0; }

@media screen and (max-width: 1200px) { #desc .data { gap: 50px; }
  #desc .data p { max-width: 450px; margin: 0; } }
@media screen and (max-width: 1000px) { #desc { height: auto; padding: 60px 0; }
  #desc .data { flex-direction: column; align-items: center; gap: 40px; }
  #desc .data p { max-width: 80%; } }
#contacto { position: relative; padding: 100px 0 80px 0; background-color: #fff; }
#contacto h3 { color: #6F6F6E; }
#contacto > p { max-width: 900px; margin: 20px auto 60px auto; text-align: center; }
#contacto > p.splitting .char { position: relative; }
#contacto .graf { position: relative; width: 300px; height: 400px; margin: 0 auto; opacity: 0; transition: opacity 0.8s linear 2s; }
#contacto .graf .esfera { position: absolute; z-index: 2; left: -15px; top: -15px; transform: scale(0.5); }
#contacto .graf .circs { position: absolute; z-index: 1; }
#contacto .graf .circs > div { position: absolute; box-sizing: border-box; width: 300px; height: 300px; border: 1px solid #174D87; border-radius: 50%; transform: scale(0); transition: transform 1.5s cubic-bezier(0.455, 0.03, 0.515, 0.955) 2.5s; }
#contacto .graf .circs .circ2 { border-width: 1.5px; transition-delay: 2.8s; }
#contacto .graf .line { position: absolute; z-index: 1; top: 150px; left: 50%; width: 1px; height: 0; background-color: #174D87; transition: height 2s cubic-bezier(0.25, 0.46, 0.45, 0.94) 2.5s; }
#contacto .contact { text-align: center; opacity: 0; transform: translateY(-80px); transition: all 2s cubic-bezier(0.455, 0.03, 0.515, 0.955) 2.5s; }
#contacto .contact p { margin-bottom: 10px; font-size: 24px; color: #174D87; }
#contacto .contact a { font-family: 'Space Grotesk'; font-size: 24px; }
#contacto .contact span { padding: 0 5px; font-size: 24px; color: #174D87; }
#contacto.active > p.splitting .char { animation: charSlideIn 1s cubic-bezier(0.5, 0, 0.5, 1) both; animation-delay: calc(20ms * var(--char-index)); }
#contacto.active .graf { opacity: 1; }
#contacto.active .graf .circs .circ1 { transform: scale(1); }
#contacto.active .graf .circs .circ2 { transform: scale(0.8); }
#contacto.active .graf .line { height: 200px; }
#contacto.active .contact { transform: translateY(0); opacity: 1; }

@media screen and (max-width: 1000px) { #contacto > p { max-width: 80%; } }
@media screen and (max-width: 767px) { #contacto { padding: 60px 0; }
  #contacto h3 { padding-top: 0; }
  #contacto > p { margin: 30px auto 60px auto; font-size: 20px; }
  #contacto .graf { margin: -40px auto; transform: scale(0.8); }
  #contacto .contact p { font-size: 16px; }
  #contacto .contact a { font-size: 16px; }
  #contacto .contact span { font-size: 16px; } }
/* ********************************************************************************************************************* LEGAL */
.page-legal { 	/* nav.main-menu {

		ul {

			li.lang-item {
				display: none;
			}
		}
	} */ }
.page-legal header .status { display: none; }
.page-legal .content { background-color: #D0D0D0; }
.page-legal .grid__container .wpb_text_column { padding: 200px 0 100px 0; }
.page-legal .grid__container h1 { color: #174D87; }
.page-legal .grid__container h2 { padding: 40px 0 0 0; font-size: 24px; letter-spacing: 0; color: #174D87; }
.page-legal .grid__container h2:after { content: ''; display: block; width: 30px; height: 2px; margin-top: 10px; background-color: #174D87; }
.page-legal .grid__container h2 + p, .page-legal .grid__container h2 + div { margin-top: 20px; }
.page-legal .grid__container h5 { margin: 30px 0 10px 0; color: #174D87; }
.page-legal .grid__container p, .page-legal .grid__container table, .page-legal .grid__container li { font-size: 14px; }
.page-legal .grid__container a { text-decoration: underline; }
.page-legal .grid__container ul, .page-legal .grid__container ol { margin-top: 30px; }
.page-legal .grid__container ul { /* text-indent: -20px;
margin-left: 20px; */ padding-left: 40px; }
.page-legal .grid__container ul li { /* &:before {
	content: "\2022";
	display: inline-block;
	vertical-align: top;
	font-weight: 700;
	font-size: 1em;
	line-height: 1.3;
	color: #000;
	transform: translateY(3px);
} */ }
.page-legal .grid__container table { width: 100%; margin: 20px 0; }
.page-legal .grid__container table th, .page-legal .grid__container table td { text-align: left !important; border: 1px solid #B9B9B9; }
.page-legal .grid__container hr { visibility: hidden; margin: 40px 0 !important; }

@media screen and (max-width: 767px) { .page-legal .grid__container .wpb_text_column { padding: 150px 0 60px 0; }
  .page-legal .grid__container .wpb_text_column h2 { font-size: 18px; }
  .page-legal .grid__container .wpb_text_column h5 { font-size: 16px; } }
/* FIXES */
/* ********************************************************************************************************************* FIREFOX FIXES */
@-moz-document url-prefix() { .wpcf7-form select.wpcf7-select { line-height: 29px; } }
