/* GENERAL STYLING */


@font-face {
    font-family: 'Space Odyssey';
    src: url('SpaceOdysseyDEMO.woff2') format('woff2'),
        url('SpaceOdysseyDEMO.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}


::-moz-selection {
  background: #368991;
  color: #ffffff;
  text-shadow: none;
}

::selection {
  background: #368991;
  color: #ffffff;
  text-shadow: none;
}


:root {
	--primary: #000000;
	--altcolor: #368991;
	--green: #368991;
	--lightblue: #EFF9F9;
	--text-color: #000000;
	--blue-bbva: #072146;
}
.bg-lightblue{
	background-color: var(--lightblue);
}
.bg-blue-bbva{
	background-color: var(--blue-bbva);
	color: #ffffff;
}
html {
	scroll-behavior: smooth;
	font-size: 1rem;
}

body {
	font-family: 'Manrope',sans-serif;
	background-color: #ffffff;
	color: #000000;
	line-height: 1.4;
	font-weight: 300;
	margin:0;
}

a {
	color:#000000;
	outline:none;
}
a.link-url{
	color: #0967EB;
	text-decoration: underline;
}

img {
	max-width:100%;
	height:auto;
}
small{
	display: inline-block;
}
.text-green{
	color: #368991;
}

p {
	margin: 0px 0 1.5rem;
}

.relative {
	position:relative;
}
.text-bold{
	font-weight: bold;
}
iframe {
	max-width:100%;
}
.overflow-hidden{
	overflow: hidden;
}

.small-font, .font-small {
	font-size:12px;
}

.rounded {
	border-radius:4px;
}

.box-shadow {
	box-shadow:3px 4px 18px -14px #666;
}
.container{
	max-width: 1170px;
}
.w-100{
	width: 100% !important;
}
.h-100{
	height: 100% !important;
}

section {
	position:relative;
}

.padding-content {
	padding: 30px 0px;
}

.py {
	padding-top: 30px;
	padding-bottom: 30px;
}
.pt {
	padding-top: 30px;
}
.pb {
	padding-bottom: 30px;
}
.my {
	margin-top: 30px;
	margin-bottom: 30px;
}
.mt {
	margin-top: 30px;
}
.mb {
	margin-bottom: 30px;
}


/* COLORS */

.white,.white a,a.white {
	color:#fff;
}

.white-content {
	background-color:#fff;
}

.black,.black a,a.black, .mcd-color {
	color: #000;
}
.black-content{
	background-color: #000000;
}

.gray, a.gray{
	color: #737B7D;
}
.gray-content{
	background-color: #737B7D;
}

.blue, a.blue, .blue a, .mcv-color{
	color: #4CA0DE;
}
.blue-content, .mcv-content{
	background-color: #4CA0DE;
	color: #ffffff;
}
.blue-content a{
	color: #ffffff;
}

.lightviolet-content{
	background-color: #F1E8EF;
}
.lightgray-content{
	background-color: #F5F6F6;
}
.green{
	color: #4CB79E;
}
.bg-green{
	background-color: #368991;
	color: #ffffff;
}


/* HEADINGS & FONTS CLASSES */

.title{
	font-weight: bold;
}

.h1,.h2,.h3,h1,h2,h3 {
	font-family: 'Manrope', sans-serif;
	clear:both;
	line-height: 1.1;
	font-weight: 700;
	margin: 0 0 20px;
}

.h4,.h5,.h6,h4,h5,h6 {
    font-family: 'Manrope', sans-serif;
    clear:both;
    line-height: 1.4;
    font-weight: bold;
    margin: 0 0 10px;
}


.font-space-odyssey, h1, .h1{
    font-family: 'Space Odyssey', serif;
}


.h1,.h2,.h3,.h4,.h5,.h6 {
}

h1,.h1 {font-size: 2.8rem;margin: 0 0 20px;line-height: 1.1;text-transform: uppercase;font-weight: 300;-webkit-font-smoothing: antialiased;}

h2,.h2 {
	font-size: 26px;
}

h3,.h3 {
    font-size: 21px;
}

h4,.h4 {font-size: 17px;}

h5,.h5 {font-size: 15px;}

h6,.h6 {
}

@media (min-width: 992px){
	
	body{
		font-size: 18px;
	}
	h1,.h1 {font-size: 4.5rem;margin: 0 0 20px;line-height: 1.1;}
	
	h2,.h2 {
		font-size: 26px;
	}
	
	h3,.h3 {
	    font-size: 1.4rem;
	}
	
	h4,.h4 {font-size: 1.2rem;}
	
	h5,.h5 {font-size: 15px;}
	
	h6,.h6 {
	}
	.py {
		padding-top: 40px;
		padding-bottom: 40px;
	}
	
	.my {
		margin-top: 40px;
		margin-bottom: 40px;
	}
	.mt {
		margin-top: 40px;
	}
	.mb {
		margin-bottom: 40px;
	}
}


.light {
	font-weight:300;
}

.regular {
	font-weight: 300;
}

.medium {
	font-weight:500;
}
.semibold {
	font-weight:600;
}

strong,.bold, .font-bold {
	font-weight:700;
}

.rounded{border-radius: 9px;}
.text-italic,.text-cursive{
	font-style: italic;
}

/* buttons */

button,.button,input[type="submit"],
a.button {
	-webkit-appearance:none;
	-webkit-border-radius:0;
	outline:none;
	border:none;
	line-height:1;
	text-decoration:none;
	padding: 1rem 2rem;
	text-align:center;
	transition:all .3s ease;
	border-radius:0;
	display:inline-block;
	font-size: 0.9rem;
	white-space:nowrap;
	font-weight:700;
	border-radius: 3rem;
}

.button:hover {
	opacity:.8;
}


a.button.border-button {
	border: 1px solid;
}
a.button.border-button:hover {
	background-color: var(--lightblue);
}

@media (min-width: 992px){
	button, .button, input[type="submit"], a.button {
	    padding: 1rem 2rem;
	    font-size: 1rem;
	}
}

/****************************************************/
/* ANIMATIONS */
/****************************************************/


.animated-element {
	opacity:0;
	display:block;
}

.animated-element.visible {
	-webkit-transform:translateY(5px);
	-moz-transform:translateY(5px);
	-ms-transform:translateY(5px);
	transform:translateY(5px);
	-webkit-animation:moveUp .7s ease forwards;
	-moz-animation:moveUp .7s ease forwards;
	-ms-animation:moveUp .7s ease forwards;
	animation:moveUp .7s ease forwards;
}

@-webkit-keyframes moveUp {
	0% {
	}
	
	100% {
		-webkit-transform:translateY(0);
		-moz-transform:translateY(0);
		transform:translateY(0);
		opacity:1;
	}
}

@-moz-keyframes moveUp {
	0% {
	}
	
	100% {
		-webkit-transform:translateY(0);
		-moz-transform:translateY(0);
		transform:translateY(0);
		opacity:1;
	}
}

@-ms-keyframes moveUp {
	0% {
	}
	
	100% {
		-ms-transform:translateY(0);
		opacity:1;
	}
}

@keyframes moveUp {
	0% {
	}
	
	100% {
		-webkit-transform:translateY(0);
		-moz-transform:translateY(0);
		transform:translateY(0);
		opacity:1;
	}
}

.animated-element.delay-1{
	animation-delay: .3s;
}
.animated-element.delay-2{
	animation-delay: .5s;
}
.animated-element.delay-3{
	animation-delay: .7s;
}


/****************************************************/
/* HEADER */
/****************************************************/

#head{
    padding: 0.5rem 0;
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    z-index: 2;
    transition: all .4s;
    background-color: #ffffff;
    transition: all .4s;
}
.scrolling #head{
	padding-block: .6rem;
}

#head .logo{
    display: block;
    width: 120px;
}

#head .button{}


#head + #main{
	padding-top: 6.5rem;
}

@media (min-width: 992px){
		
	#head{
		padding-block: 2rem;
	}
	#head .logo{
	    width: 210px;
	}
		
	#head + #main{
		padding-top: 112px;
	}

}

/****************************************************/
/* IMAGE GROUP */
/****************************************************/


.image-group{
	position: relative;
}
.image-group .img1{
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	border-radius: 2rem;
	object-fit: cover;
	transition: all 1s .2s;
	transform: translate3d(20px,0,0);
	opacity: 0;
	display: block;
}
.image-group .img2{
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	border-radius: 2rem;
	object-fit: cover;
	z-index: 1;
	transition: all 1s .2s;
	opacity: 0;
	transform: translate3d(-20px,0,0);
}

.image-group.visible .img1,
.image-group.visible .img2{
	opacity: 1;
	transform: translate3d(0px,0,0);
}

.svg-text{
	margin-bottom: 2rem;
}


/****************************************************/
/* CUSTOM FAQS */
/****************************************************/


.custom-faqs {}

.custom-faqs .panel {margin: 0 0 20px;position: relative;transition: all 0.3s;border: 1px solid #368991;border-radius: 10px;}
.custom-faqs .panel.expanded,.custom-faqs .panel:hover {
    background-color: var(--lightblue);
}
.custom-faqs .panel:hover a.question .trigger,
.custom-faqs .panel.expanded a.question .trigger{
	border-color: #7E8C9E;
}
.custom-faqs .panel.expanded a{
	text-decoration: underline;
}

.custom-faqs .panel a.question {
	display: flex;
	padding: 40px 90px 30px 30px;
	text-decoration:none;
	font-weight: 600;
}

.custom-faqs .panel a .text {
	position:relative;
	transition:all .3s;
	display: block;
	line-height: 1.2;
	font-size: 1.3rem;
}

.custom-faqs .panel a.question .trigger{
	position:absolute;
	right: 20px;
	top: 35px;
	transition:all .3s;
	width: 24px;
	height: 29px;
	background: url(arrow_top.svg) no-repeat center center;
	background-size: contain;
	transform: rotateX(180deg);
}

.custom-faqs .panel.expanded a.question .trigger {
	transform: rotateX(0deg);
}


.custom-faqs .panel .panel-collapse {
	font-size: 16px;
	padding: 20px 30px;
	transition: opacity .4s 1s;
	opacity: 0;
	display: none;
}

.custom-faqs .panel.expanded .panel-collapse {
	display:block;
	padding-top: 0;
	opacity: 1;
}

.legal-text{
	padding: 2rem;
}
/*  RESPONSIVE (768, 992,..) */

@media (min-width: 992px) {	
	
	
	.legal-text{
		padding: 3rem;
	}

}

@media (min-width: 1200px) {
	
}


/****************************************************/
/* FEATURES & TRAVEL FEATURES  */
/****************************************************/


.feature{
    position: relative;
    margin-bottom: 2rem;
    border-radius: 20px;
}
.feature .thumb{
    object-fit: cover;
    aspect-ratio: 1;
    border-radius: 14px;
}
.feature  .content{
    position: absolute;
    left: 0;
    top: 0;
    color: #ffffff;
    padding: 2rem;
}
.feature  .content .title{
    font-size: 1.4rem;
    margin-bottom: 0.6rem;
}
.feature  .content p{}


.travel-feature{
    padding: 2rem;
    margin-bottom: 1rem;
}
.travel-feature h3{}
.travel-feature p{}

@media (min-width: 992px){
		
	.feature{
	    margin: 0;
	}
	.feature .thumb{
	    aspect-ratio: inherit;
	    transition: all .5s;
	    display: block;
	}
	.feature:hover .thumb{
		opacity: .8;
	}
	.feature  .content{
	    padding: 40px;
	    transition: all .5s;
	}
	.feature:hover .content{
		transform: translate3d(0,-5px,0);
}
	.feature  .content .title{}
	.feature  .content p{
    font-size: 16px;
}
	
		
	.travel-feature{}
	.travel-feature h3{}
	.travel-feature p{}
	
}


/****************************************************/
/* MARQUEE SECTION  */
/****************************************************/

.marquee-section {
	width:100%;
	margin-block: 2rem;
	position: relative;
	min-height: 70px;
}
@media (min-width: 992px){
	
.marquee-section {
	min-height: 76px;
}
}

.marquee-section,.marquee-section * {
	overflow:hidden;
}

.marquee {
	white-space:nowrap;
}

.marquee > a {
	text-decoration:none;
	display:inline-flex;
	padding: 1.4em 0.8em;
	position: relative;
}

.marquee > a:after {
	content: '';
	position: absolute;
	width: 2px;
	height: 2px;
	border-radius: 50%;
	background-color: var(--text-color);
	margin-left: 1rem;
	top: calc(50% - 1px);
	right: 0%;
}

.marquee-div {
	position:absolute;
	animation:move-left-to-right linear 30.5s infinite;
	top:0;
	left:0;
	display:block;
}

@keyframes move-left-to-right {
	from {
		transform:translateX(-50%);
	}
	
	to {
		transform:translateX(0);
	}
}



/****************************************************/
/* FOOTER */
/****************************************************/

	
#footer{
    font-size: 0.9rem;
}
#footer .bg-green{
    padding-block: 2rem;
    font-weight: 500;
    font-size: 1.2rem;
}
#footer .bg-green .phone{
	font-weight: bold;
	color: #ffffff;
	text-decoration: none;
	font-size: 1.8rem;
}
#footer .logo {
    width: 119px;
    display: block;
    margin: 1rem auto 2rem;
}

#footer .bg-blue-bbva{
	padding-block: 1rem;
	font-size: 1rem;
}
#footer .inline-menu{
    margin-bottom: 2rem;
    gap: 1.1rem;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
#footer .inline-menu a{
    color: #5BBEFF;
    text-decoration: none;
    font-weight: bold;
    display: inline-block;
    padding-right: 0rem;
    padding-bottom: 1rem;
}
#footer .inline-menu a:hover{}

#footer .lang-social{}
#footer .lang-social .lang{
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    list-style: none;
    align-items: center;
}
#footer .lang-social .lang li{}
#footer .lang-social .lang li a{
    color: #ffffff;
    text-decoration: none;
}

#footer .lang-social .social{
    display: flex;
    gap: 1rem;
    margin-block: 2rem 1rem;
    align-items: center;
}
#footer .lang-social .social a{
    font-size: 0;
    display: block;
    width: 30px;
    aspect-ratio: 1;
    border-radius: 50%;
}
#footer .lang-social .social a:hover{}

#footer .lang-social .social a img{
	display: block;
	width: 100%;
}

@media(min-width: 992px){
	
		
	#footer{
    font-size: 0.9rem;
}
	#footer .bg-green{}
	#footer .bg-green .number{}

	#footer .bg-blue-bbva{
		padding-block: 3rem;
		font-size: 0.8rem;
	}
	#footer .logo {
	    margin-inline: inherit;
	    margin-top: 0;
	}
	
	#footer .inline-menu{
    max-width: 86%;
    margin-block: 2rem;
    gap: 1rem 1.8rem;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}
	#footer .inline-menu a{
    font-size: 1rem;
}
	#footer .inline-menu a:hover{}
	
	#footer .lang-social{
	    position: absolute;
	    right: 15px;
	    top: 0;
	    display: flex;
	    align-items: center;
	    gap: 1.1rem;
	    justify-content: center;
	}
	
	#footer .lang-social > div{
		display: flex;
		align-items: center;
	}
	#footer .lang-social > div:not(:last-child):after{
		content: '';
		width: 0.1px;
		height: 20px;
		background-color: #ffffff;
		margin-inline: 1rem 0;
	}
	#footer .lang-social .lang{}
	#footer .lang-social .lang li{
    font-size: 13px;
}
	#footer .lang-social .lang li a{}
	
	#footer .lang-social .social{
    gap: 0.9rem;
    margin: 0;
}
	#footer .lang-social .social a{
    width: 23px;
}
	#footer .lang-social .social a:hover{}
}