﻿@charset "utf-8";

/*
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@100;200;300;400;500;600;700;800;900&display=swap');
*/
@import url('https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif:ital,wght@0,100..900;1,100..900&display=swap');

/* RESET */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset,
form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td { margin: 0; padding: 0; border: 0; outline: 0; vertical-align: baseline; }

/* Make HTML 5 elements display block-level for consistent styling */
header, nav, article, footer, address { display: block; }

* { box-sizing: border-box; }
img { max-width: 100%; }

html { font-size: 20px; }
@media only screen and ( max-width: 1024px ) {
	html { font-size: 18px; }
}
@media only screen and ( max-width: 778px ) {
	html { font-size: 17px; }
}

body { width: 100%; max-width: 100%; color: #010101; font-family: 'Lato', sans-serif; font-size: 0.9rem; font-weight: 400; line-height: 1.2em; background: #ffffff; }
a { text-decoration: none; }

/* classes */
.cleaner { clear: both; }
.centered { text-align: center; }
.center { text-align: center; }
.left { text-align: left; }
.right { text-align: right; }
.middle { vertical-align: middle; }
.top { vertical-align: top; }
.bottom { vertical-align: bottom; }
.row { clear: both; }
.onLeft { clear: left; float: left; }
.onRight { clear: right; float: right; }

.wrapper { margin: 0 auto; width: 1000px; height: 100%; position: relative; }

.hidden { display: none; }
.hide-field { height: 0px !important; overflow: hidden; }
.data { display: none; }
.dataHidden { display: none; }

.scroll-less { overflow: hidden; }

.vertical-aligner { display: flex; align-items: center; height: 100%; }
.vertical-aligner > div { margin: 0 auto; }

/**/
body[dev-mode="false"] .showOnDev { height: 0px !important; overflow: hidden !important; }

h1 { margin-bottom: 1em; font-size: 3rem; font-weight: 700; line-height: 1.2em; transition: all 0.3s ease-out 0s; }
h2 { margin-bottom: 1em; font-family: 'Noto Serif'; font-size: 3rem; font-weight: 300; line-height: 1.2em; transition: all 0.3s ease-out 0s; }
h3 { margin-bottom: 1em; font-family: 'Noto Serif'; font-size: 2rem; font-weight: 300; line-height: 1.2em; transition: all 0.3s ease-out 0s; }
h4 { margin-bottom: 1em; font-size: 1.8rem; font-weight: 400; line-height: 1.2em; transition: all 0.3s ease-out 0s; }
h5 { margin-bottom: 1em; font-size: 1.3rem; font-weight: 400; line-height: 1.2em; transition: all 0.3s ease-out 0s; }

p { margin: 0 auto; margin-bottom: 1.2em; }
strong { font-weight: 700; }

@media only screen and ( max-width: 1024px ) {
	h2 { line-height: 1.1em; }
}
@media only screen and ( max-width: 778px ) {
	h2 { line-height: 1em; }
}

/**/
.row { box-sizing: border-box; position: relative; width: 100%; height: 100%; margin: 0 auto; text-align: center; }
.row .container { position: relative; max-width: 1260px; height: 100%; margin: 0 auto; padding: 5rem 20px; }

.bt { display: inline-block; position: relative; margin: 0.3rem; padding: 0.9rem 1.4rem; color: #020202; font-size: 0.9rem; font-weight: 600; line-height: 1em; text-align: center; letter-spacing: 0px; background: #C9B977; border: 0; border-radius: 100px; z-index: 0; cursor: pointer; overflow: hidden; }
	.bt:before { content: ''; display: block; position: absolute; top: 49%; left: 49%; width: 2%; padding-bottom: 2%; background: rgba(255,255,255,0.25); transform: scale(0); border-radius: 1000px; z-index: -1; transition: all 0.5s ease-out 0s; }
	.bt:hover:before { transform: scale(100); }
.bt.transparent { padding: calc(0.9rem - 2px) calc(1.4rem - 2px); color: #C9B977; background: transparent; border: 2px solid #C9B977; }
	.bt.transparent:before { background: rgba(0,0,0,0.25); }
.bt.negative { padding: calc(0.8rem - 2px) calc(1.5rem - 2px); color: #C9B977; background: #373739; }
	.bt.negative:before { background: rgba(0,0,0,0.25); }

.withSplitter:after { content: ''; display: block; width: 60%; max-width: 550px; height: 1px; margin: 0 auto; margin-top: 2.6rem; background: rgba(255,255,255,1); opacity: 0.5; }

.serif { font-family: 'Noto Serif'; font-weight: 300; }
.highlighted { padding-left: 0.2rem; padding-right: 0.2rem; }
.xbig { font-size: 2rem; line-height: 1.2em; }

/**/
.sm {  }
.sm > * { display: inline-block; margin-left: -0.2rem; vertical-align: middle; }
	.sm a { transition: all 0.3s ease-out 0s; }
	.sm a:hover { transform: scale(1.2); }
		.sm svg { width: 2.2rem; height: 2.2rem; margin: 0.2rem; _transform: scale(1.2); fill: rgba(201,185,119,0.5); transition: all 0.3s ease-out 0s; }
		.sm svg .st0 { visibility: visible !important; fill: #ffffff !important; }
		.sm svg .st1 { visibility: hidden; fill: #ffffff; }
		.sm img { margin: 0.2rem; transition: all 0.3s ease-out 0s; }
	.sm span { font-size: 1.75rem; font-weight: 500; line-height: 1em; }

/**/
[cmd-lang-set] { cursor: pointer; }
[cmd-lang-set].current { opacity: 0.5; cursor: default; }

/**/
.row .columns { display: flex; justify-content: space-evenly; }
.row .columns { margin: 0 auto; text-align: left; }
.row .columns .columns_column { width: 50%; margin: 0; padding: 0px 20px; }
	.row .columns .columns_column.columns_column_40 { width: 40%; }
	.row .columns .columns_column.columns_column_45 { width: 45%; }
	.row .columns .columns_column.columns_column_50 { width: 50%; }
	.row .columns .columns_column.columns_column_55 { width: 55%; }
	.row .columns .columns_column.columns_column_60 { width: 60%; }
	.row .columns .columns_column:first-of-type { padding-left: 0px; }
	.row .columns .columns_column:last-of-type { padding-right: 0px; }

@media only screen and ( max-width: 600px ) {
	.row .columns { flex-direction: column; }
	.row .columns .columns_column { width: 100%; margin-bottom: 3rem; padding: 0px; }
		.row .columns .columns_column.columns_column_40,
		.row .columns .columns_column.columns_column_45,
		.row .columns .columns_column.columns_column_50,
		.row .columns .columns_column.columns_column_55,
		.row .columns .columns_column.columns_column_60 { width: 100%; }
	.row .columns .columns_column:empty { display: none; }
}

/**/
.row form .col_05 { float: left; display: inline-block; width: calc(50% - 0.2rem); }
.row form .col_05:after { content: ''; display: block; width: 100%; clear: both; ; }
.row form .col_05:nth-child(2n) { margin-left: 0.4rem; }

.row form { width: 800px; max-width: 100%; margin: 0 auto; }
.row form .form-group { position: relative; padding: 0.4rem 0; transition: all 0.3s ease-out 0s; }
	.row form .row:first-of-type .form-group { padding-top: 0; }
	.row form .row:last-of-type .form-group { padding-bottom: 0; }
.row form input,
.row form textarea { box-sizing: border-box; width: 100%; height: auto; margin: 0px; padding: 0.8rem 1.2rem 0.9rem; color: #666; font-family: 'Lato'; font-size: 0.8rem; font-weight: 400; line-height: 1.2em; background: #EEEEEE; _background: red; border: 1px solid rgba(0,0,0,0); border-radius: 1.3rem; }
.row form textarea { height: 6.3rem; margin-bottom: -4px; resize: none; }
.row form .bt_submit { width: 100%; margin: 0.6rem auto -8px; padding: 0.8rem 1.2rem 0.9rem 1.2rem; color: #19191A; font-size: 1rem; font-weight: 500; line-height: 1em; text-align: center; background-color: #C9B977; border: 0px; border-radius: 1000px; transition: all 0.3s ease-out 0s; }
.row form .bt_submit:not(.disable) { cursor: pointer; }

.row form .form_element_validation { display: none; position: absolute; bottom: 0.5rem; right: 1.1rem; color: red; font-size: 0.55rem; line-height: 1em; }
.row form .form_element_validation:empty { display: none; }
/*
.row form.advising .form_element_validation { display: block; }
*/
/*
.row form input.withError,
.row form textarea.withError { border-color: rgba(255,0,0,1); }
*/
.row form.advising .withError + .form_element_validation { display: block; }

.row form .legend { margin: 0.6rem 0 0.1rem 0; color: #999999; font-size: 0.65rem; line-height: 1.2em; }

.row .adviser { position: fixed; bottom: -3.5rem; left: 10px; width: 100%; padding: 0.6rem; color: #fff; font-size: 0.8rem; line-height: 1em; background: #222; z-index: 3; }
.row .adviser:empty { padding: 0px; }
.row .adviser .command { cursor: pointer; }

@media only screen and ( max-width: 778px ) {
	.row form .col_05 { float: none; display: block; width: 100%; }
	.row form .col_05:nth-child(2n) { margin-left: 0rem; }
}

/**/
.pselect { position: absolute; top: 0px; left: 0px; width: 100%; height: calc(100% - 0.8rem); margin: 0.4rem 0; color: #666; z-index: 1; }
.pselect .pselect_overlay { _display: none; position: fixed; top: 0px; left: 0px; width: 100%; height: 100%; background: rgba(255,255,255,0); z-index: 1; }
.pselect .pselect_trigger { position: absolute; top: 0rem; right: 0rem; width: 100%; height: 100%; padding: 0.4rem; color: #999; font-size: 1.4rem; font-weight: 700; line-height: 1em; z-index: 2; cursor: pointer; }
.pselect .pselect_trigger .pselect_icon { position: absolute; top: 0.15rem; right: 0.4rem; padding: 0.4rem; color: #999; font-size: 1.4rem; font-weight: 700; line-height: 1em; cursor: pointer; }
.pselect .pselect_options { display: none; position: absolute; top: 2rem; left: 0rem; width: 100%; padding: 1rem 0.6rem 1rem; background: #eee; border-bottom-left-radius: 1.3rem; border-bottom-right-radius: 1.3rem; z-index: 2; }
.pselect .pselect_options { display: block; }
	.pselect .pselect_trigger:before { content: ''; display: block; position: absolute; bottom: 0.1rem; left: 0px; width: 1.2rem; height: 1.2rem; background: #eee; opacity: 0; z-index: 1; transition: all 0.3s ease-out 0s; }
	.pselect .pselect_trigger:after { content: ''; display: block; position: absolute; bottom: 0.1rem; right: 0px; width: 1.2rem; height: 1.2rem; background: #eee; opacity: 0; z-index: 1; transition: all 0.3s ease-out 0s; }
.pselect .pselect_options .pselect_options_option { display: block; padding: 0.3rem 0.6rem 0.35rem; font-size: 0.6rem; line-height: 1em; text-align: left; cursor: pointer; }
.pselect .pselect_options .pselect_options_option:hover { background: #ddd; }

.pselect.active { z-index: 5; }
.pselect.active .pselect_trigger:before, 
.pselect.active .pselect_trigger:after { opacity: 1; }

.row form input.field_pselect { padding-right: 2rem; }


/**/
.accordion {}
.accordion .accordion_item { border-bottom: 1px solid rgba(0,0,0,0.15); }
.accordion .accordion_item:first-of-type { border-top: 1px solid rgba(0,0,0,0.15); }
.accordion .accordion_item .accordion_item_header { position: relative; padding: 0.5rem 2rem 0.5rem 0.2rem; font-size: 1.1rem; font-weight: 300; line-height: 1.2em; _cursor: pointer; transition: all 0.3s ease-out 0s; }
.accordion .accordion_item:not(.opened) .accordion_item_header { cursor: pointer; }
	.accordion .accordion_item .accordion_item_header:before { content: ''; display: block; position: absolute; top: 1.2rem; right: 0.5rem; width: 0.7rem; height: 2px; background: #000; }
	.accordion .accordion_item .accordion_item_header:after { content: ''; display: block; position: absolute; top: 0.9rem; right: 0.8rem; width: 2px; height: 0.7rem; background: #000; _transition: all 0.3s ease-out 0s; }
.accordion .accordion_item .accordion_item_body { position: relative; padding: 0.5rem 0.2rem 1rem; font-size: 0.9rem; font-weight: 400; line-height: 1.4em; }
.accordion .accordion_item .accordion_item_body > *:last-child { margin-bottom: 0; }

.accordion .accordion_item .accordion_item_header:hover { background: rgba(0,0,0,0.02); }
/*
.accordion .accordion_item.opened .accordion_item_header:after { top: 1.2rem; height: 0.1rem; }
*/
.accordion .accordion_item.opened .accordion_item_header:before, 
.accordion .accordion_item.opened .accordion_item_header:after { opacity: 0; }

	/* eye */
	.accordion .accordion_item .accordion_item_header:before { border-radius: 0%; }
	.accordion .accordion_item .accordion_item_header:after { border-radius: 0%; }
	.accordion .accordion_item.opened .accordion_item_header:before { top: 1rem; height: 0.4rem; border-radius: 50%; }
	.accordion .accordion_item.opened .accordion_item_header:after { top: 1.05rem; right: 0.7rem; width: 0.3rem; height: 0.3rem; background: #fff; border-radius: 100px; }
	
/**/
#topbar { position: fixed; top: 0px; height: auto; z-index: 4; }
#topbar:before { content: ''; display: block; position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; background: rgba(0,0,0,0.5); background: #000000; opacity: 0; transition: all 0.3s ease-out 0s; }
#topbar .container { display: flex; align-items: center; justify-content: space-between; height: 180px; max-width: 1300px; padding: 26px; transition: all 0.3s ease-out 0s; }
#topbar .container { align-items: start; }

	#topbar.floating:before { opacity: 1; }
	#topbar.floating .container { align-items: center; height: 60px; }
	#topbar.floating .logo-wrapper img { height: 50px; }
	
#topbar .logo-wrapper { position: relative; max-width: 60%; text-align: left; z-index: 0; }
#topbar .logo-wrapper img { height: 128px; max-width: 100%; margin-bottom: -8px; transition: all 0.3s ease-out 0s; }

@media only screen and ( max-width: 1024px ) {
	#topbar .logo-wrapper img { max-height: calc(128px * 0.8); }
}

#topbar #menu_featured { float: left; position: relative; margin: 0.55rem 1.6rem 0.4rem 0; z-index: 2; }
#topbar #menu_featured { margin-right: 0; }
#topbar #menu_featured { color: #fff; font-size: 0.7rem; line-height: 1em; }
#topbar #menu_featured .menu_item { padding: 0.55rem; color: #fff; font-size: 0.8rem; font-weight: 700; _letter-spacing: 2px; text-transform: uppercase; cursor: pointer; transition: all 0.3s ease-out 0s; }
#topbar #menu_featured .menu_item { margin: 0 0.1rem; padding: 0.5rem 0.6rem 0.6rem; border-radius: 50px; }
#topbar #menu_featured .menu_item.external { color: rgba(201,185,119,1); font-weight: 400; }
#topbar #menu_featured .splitter { margin: 0 0.4rem; color: #fff; font-weight: 400; }
	#topbar #menu_featured .menu_item.active, 
	#topbar #menu_featured .menu_item:hover { color: #191919; background: rgba(201,185,119,1); }

#topbar #menu_featured .menu_item[rel="stripe_nosotros"]:target { background: red; }

#topbar #menu { position: relative; z-index: 0; }
#topbar #menu .menu_overlay { display: none; position: fixed; top: 0px; left: 0px; width: 100%; height: 100%; background: rgba(0,0,0,0.5); opacity: 0; z-index: -1; transition: all 0.3s ease-out 0s; }

#topbar #menu .menu_trigger { display: flex; position: relative; padding: 0; background-color: transparent; border: none; cursor: pointer; z-index: 2; }
#topbar #menu .menu_trigger svg { margin-top: 0.45rem; }
	.line { fill: none; stroke: white; stroke-width: 6; transition: stroke-dasharray 600ms cubic-bezier(0.4, 0, 0.2, 1), stroke-dashoffset 600ms cubic-bezier(0.4, 0, 0.2, 1); }
	.line { stroke: #fff; }
	.line1 { stroke-dasharray: 60 207; stroke-width: 6; }
	.line2 { stroke-dasharray: 60 60; stroke-width: 6; }
	.line3 { stroke-dasharray: 60 207; stroke-width: 6; }
	.opened .line1 { stroke-dasharray: 90 207; stroke-dashoffset: -134; stroke-width: 6; }
	.opened .line2 { stroke-dasharray: 1 60; stroke-dashoffset: -30; stroke-width: 6; }
	.opened .line3 { stroke-dasharray: 90 207; stroke-dashoffset: -134; stroke-width: 6; }
#topbar #menu .menu_trigger .menu_label { margin-top: 0.35rem; padding: 0.55rem; color: #fff; font-size: 0.7rem; font-weight: 600; letter-spacing: 2px; }

#topbar #menu .menu_content { display: block; position: fixed; top: 0px; right: -320px; width: 320px; min-height: 100vh; padding: 7rem 1rem 2rem; background: #000000; z-index: 1; transition: all 0.3s ease-out 0s; }
#topbar #menu .menu_content .menu_item { display: block; margin: 0px; padding: 0.7rem 0.5rem 0.8rem; color: #fff; font-size: 0.8rem; font-weight: 400; line-height: 1.2em; text-align: left; border-bottom: 1px solid rgba(255,255,255,0.2); cursor: pointer; }

#topbar #menu .menu_content .sm { margin: 1rem 0 0; padding: 0 0.5rem; text-align: left; }
/*
#topbar #menu .menu_content .sm { display: block; margin: 1rem 0 0; padding: 0 0.1rem; text-align: left; }
#topbar #menu .menu_content .sm a { display: inline-block; width: 2.4rem; height: 2.4rem; margin: 0.2rem; line-height: 1em; }

		#topbar #menu .menu_content .sm a { transition: all 0.3s ease-out 0s; }
		#topbar #menu .menu_content  .sm a:hover { transform: scale(1.2); }
			#topbar #menu .menu_content  .sm svg { width: 2.4rem; height: 2.4rem; margin-right: 0.2rem; transform: scale(1.2); fill: #ffffff; transition: all 0.3s ease-out 0s; }
		#topbar #menu .menu_content  .sm span { font-size: 1.75rem; font-weight: 500; line-height: 1em; }
*/

@media only screen and ( min-width: 1100px ) {
	#topbar #menu .menu_trigger { display: none; }
}
@media only screen and ( max-width: 1099px ) {
	#topbar #menu #menu_featured { display: none; }
}

@media only screen and ( max-height: 520px ) {
	#topbar #menu .menu_content { padding-top: 90px; }
}

#topbar #menu.opened .menu_overlay { display: block; opacity: 1; z-index: 0; }
#topbar #menu.opened .menu_content { right: 0px; }

@media only screen and ( min-width: 1301px ) {
	#topbar #menu.right { position: absolute; right: 26px; }
}
@media only screen and ( max-width: 1024px ) {
	#topbar #menu .menu_trigger svg { margin-top: 0.3rem; }
}
@media only screen and ( max-width: 520px ) {
	#topbar #menu_featured { margin-right: 0.6rem; }
	#topbar #menu .menu_trigger .menu_label { display: none; }
}
@media only screen and ( max-width: 420px ) {
	#topbar .logo-wrapper img { height: 70px; }
	#topbar .container { height: 100px; padding: 14px; }
	#topbar #menu .menu_trigger .menu_label { display: none; }
}

/**/
.row.stripe_slider {  }
.row.stripe_slider .slide { padding-top: 160px; color: #fff; text-align: left; }
	.row.stripe_slider .slide.slide_addOverlay:before { content: ''; display: block; position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; background: rgba(0,0,0,0.5); }
.row.stripe_slider .slide .container { width: 1260px; max-width: 94%; }
.row.stripe_slider .slide .content { width: 100%; }
.row.stripe_slider .slide .slide_pretitle { margin: 0; font-size: 0.8rem; }
.row.stripe_slider .slide .slide_title { max-width: 960px; margin-bottom: 0.1em; font-size: 3rem; font-weight: 300; line-height: 1em; }
.row.stripe_slider .slide .slide_title strong { font-weight: 500; }
.row.stripe_slider .slide .slide_text { margin-bottom: 2em; font-size: 1.3rem; line-height: 1.2em; }

@media only screen and ( max-width: 800px ) {
	.slide .vertical-aligner { align-items: end; }
	.slide .content { margin-bottom: 4rem; }
}

@media only screen and ( max-width: 900px ) {
	.row.stripe_slider .title { font-size: 2.5rem; line-height: 1.1em; }
}
@media only screen and ( max-width: 500px ) {
	.row.stripe_slider .title { font-size: 2.1rem; line-height: 1.1em; }
}

/**/
.row.stripe_nosotros {  }
.row.stripe_nosotros .container { padding-top: 4.5rem; padding-bottom: 3.5rem; }
.row.stripe_nosotros .pretitle { font-size: 0.8rem; line-height: 1.2em; }
.row.stripe_nosotros p { font-size: 0.9rem; line-height: 1.4em; }
.row.stripe_nosotros .accordion_wrapper { margin-top: 4rem; }
.row.stripe_nosotros .gallery_wrapper { position: relative; width: 100%; padding-top: 100%; }
.row.stripe_nosotros .gallery_wrapper img { position: absolute; top: 0px; left: 0px; opacity: 0; transition: all 0.3s ease-out 0s; }
.row.stripe_nosotros .gallery_wrapper img.show { opacity: 1; }

/**/
.row.stripe_eventos { color: #C9B977; text-align: center; background: url('imgs/deco_iso') no-repeat center center #19191A; background-size: cover; }
.row.stripe_eventos { background: url('imgs/deco_iso.png') top right no-repeat, url('imgs/deco_iso.png') bottom left no-repeat, url('imgs/deco_03.png') top left no-repeat; background-color: #19191A; background-size: 40vw, 18vw, auto; background-position: top -5rem right -7rem, bottom 4rem left -1rem, top 3rem left 18vw; }
.row.stripe_eventos h2 { margin-bottom: 0.3em; }

.row.stripe_eventos .tiles { display: flex; flex-wrap: wrap; justify-content: start; padding: 2rem 0 4rem; }
.row.stripe_eventos .tiles .tile { position: relative; width: calc(100% / 3); margin-bottom: -4px; transition: all 0.3s ease-out 0s; }
.row.stripe_eventos .tiles .tile img { max-width: 100%; }
.row.stripe_eventos .tiles .tile .tile_info { position: absolute; bottom: 1rem; left: 1.5rem; text-align: left; opacity: 0; transition: all 0.3s ease-out 0s; }
.row.stripe_eventos .tiles .tile .tile_info .tile_title { display: inline-block; padding: 1px 2px 2px; color: rgba(255,255,255,1); font-size: 1.35rem; line-height: 1.2em; background: #19191A; }
.row.stripe_eventos .tiles .tile .tile_info .tile_address { display: inline-block; padding: 1px 2px 2px; color: rgba(255,255,255,0.5); font-size: 0.54rem; line-height: 1.2em; background: #19191A; }
.row.stripe_eventos .tiles .tile .tile_info .tile_separator { display: block; width: 100%; height: 1px; margin-bottom: -0.3rem; }
	.row.stripe_eventos .tiles .tile:hover { z-index: 1; transform: scale(1.1); }
	.row.stripe_eventos .tiles .tile:hover .tile_info { opacity: 1; }

@media only screen and ( max-width: 900px ) {
	.row.stripe_eventos .tiles .tile { width: calc(100% / 2); }
}
@media only screen and ( max-width: 560px ) {
	.row.stripe_eventos .tiles .tile { width: calc(100% / 1); }
}

/**/
.row.stripe_numeros { color: #C9B977; text-align: center; background: url('imgs/stripe_numeros_bg.jpg') no-repeat center center #19191A; background-size: cover; }
	.row.stripe_numeros:after { content: url('imgs/deco_01.png'); position: absolute; top: -56px; right: 12vw; }
.row.stripe_numeros .container { padding-top: 3.5rem; padding-bottom: 0; }
.row.stripe_numeros h2 { margin-bottom: 0.3em; }

.row.stripe_numeros .items { display: flex; flex-wrap: wrap; justify-content: space-between; padding: 3rem 0 0; }
.row.stripe_numeros .items .item { max-width: calc(50% - 20px); margin: 0 0 5rem; text-align: left; }
.row.stripe_numeros .items .item .item_number { font-size: 4.8rem; font-weight: 700; line-height: 1em; }
.row.stripe_numeros .items .item .item_text { font-size: 1rem; line-height: 1.2em; }

@media only screen and ( max-width: 900px ) {
	.row.stripe_numeros .items { padding: 3rem 0 2rem; }
	.row.stripe_numeros .items .item { margin: 0 0 3rem; }
	.row.stripe_numeros .items .item .item_number { font-size: 9.6vw; line-height: 1em; }
}
@media only screen and ( max-width: 600px ) {
	.row.stripe_numeros .items .item { width: 370px; max-width: calc(100% - 20px); margin: 0 auto; margin-bottom: 3rem; }
	.row.stripe_numeros .items .item .item_number { font-size: 3rem; line-height: 1em; }
}

/**/
.row.stripe_servicios { color: #373739; text-align: center; background: url('imgs/stripe_servicios_bg.jpg') no-repeat center center #C9B977; background-size: cover; }
.row.stripe_servicios .container {  }
.row.stripe_servicios h2 { margin-bottom: 0.3em; }

.row.stripe_servicios .tiles { display: flex; justify-content: center; padding: 4rem 0 2rem; }
.row.stripe_servicios .tiles .tile { width: 25%; width: calc(25% + 3rem); margin: 0 -2rem; padding: 0 0 2rem; transition: all 0.3s ease-out 0s; }
.row.stripe_servicios .tiles .tile img { position: relative; max-width: 100%; border: 0.75rem solid rgba(201,185,119,0); border-radius: 50%; box-shadow: 0 0 1rem transparent; transition: all 0.3s ease-out 0s; }
.row.stripe_servicios .tiles .tile img:hover { border-color: rgba(201,185,119,1); box-shadow: 0 0 1rem #373739; z-index: 1; }
.row.stripe_servicios .tiles .tile .tile_title { margin: 1.5rem 0 0; color: #373739; font-size: 1.5rem; line-height: 1.2em; }

@media only screen and ( max-width: 900px ) {
	.row.stripe_servicios .tiles { padding: 3rem 0 1rem; }
	.row.stripe_servicios .tiles .tile .tile_title { opacity: 0; transition: all 0.3s ease-out 0s; }
	.row.stripe_servicios .tiles .tile:hover .tile_title { opacity: 1; }
}
@media only screen and ( max-width: 560px ) {
	.row.stripe_servicios .tiles { flex-wrap: wrap; padding: 2rem 0 1rem; }
	.row.stripe_servicios .tiles .tile { width: 50%; min-width: 220px; margin: 0 0 2rem; padding: 0 0 0rem; transition: all 0.3s ease-out 0s; }
	.row.stripe_servicios .tiles .tile .tile_title { margin: 0.5rem 0 0; opacity: 1;}
}

/**/
.row.stripe_beneficios { color: #373739; text-align: center; }
	.row.stripe_beneficios:after { content: url('imgs/deco_02b.png'); position: absolute; top: -56px; left: 11vw; }
.row.stripe_beneficios .container { overflow: hidden; }
.row.stripe_beneficios h5 { margin-bottom: 0.3em; }

.row.stripe_beneficios .tiles { display: flex; flex-wrap: wrap; justify-content: space-evenly; padding: 2rem 0 2rem; }
.row.stripe_beneficios .tiles .tile { max-width: 280px; margin: 0 0 2rem; }
.row.stripe_beneficios .tiles .tile h5 { margin: 1.3rem 0 1.1rem; }

.row.stripe_beneficios .xbig { margin-bottom: 1.4em; font-weight: 900; }

.row.stripe_beneficios .testimonial { display: inline-block; position: relative; width: 740px !important; max-width: calc(100% - 2rem); margin: 0 auto; margin-top: 1rem; margin-bottom: 1rem; padding: 2rem 2.6rem; font-family: 'Noto Serif'; font-size: 1.3rem; font-weight: 300; line-height: 1.2em; text-align: left; border: 2px solid #C9B977; border-radius: 1.7rem; }
	.row.stripe_beneficios .testimonial:before, 
	.row.stripe_beneficios .testimonial:after { content: url('imgs/quotes.png'); display: block; position: absolute; padding: 1rem; background: #fff; border-radius: 1000px; }
	.row.stripe_beneficios .testimonial:before { top: -2rem; left: -2rem; }
	.row.stripe_beneficios .testimonial:after { bottom: -2rem; right: -2rem; transform: rotate(180deg); }
.row.stripe_beneficios .testimonial .testimonial_signature { margin-bottom: 0.2rem; font-size: 0.8rem; }

/**/
.row.stripe_fiestasreales { color: #C9B977; text-align: center; background: url('imgs/deco_05.png') no-repeat top 3rem left 3rem #19191A; }
	.row.stripe_fiestasreales:after { content: url('imgs/deco_04.png'); position: absolute; top: -56px; right: 11vw; }
.row.stripe_fiestasreales .container { max-width: 1300px; padding-bottom: 2rem; }
.row.stripe_fiestasreales h2 { margin-bottom: 0.15em; }

.row.stripe_fiestasreales .galleries { display: flex; flex-wrap: wrap; justify-content: space-between; padding: 2rem 0 2rem; }
.row.stripe_fiestasreales .galleries .gallery { width: 32%; max-width: 100%; margin: 0 0 2rem; text-align: left; }
.row.stripe_fiestasreales .galleries .gallery .gallery_poster { position: relative; width: 100%; padding-top: 74%; background: url('') no-repeat center center transparent; background-size: cover; }
.row.stripe_fiestasreales .galleries .gallery .gallery_poster .gallery_icon { position: absolute; bottom: calc(-1.8rem - 6px); right: 1.2rem; width: calc(3.6rem + 12px); background-color: rgba(201,185,119,0.2); border: 6px solid transparent; border-radius: 1000px; transition: all 0.3s ease-out 0s; }
.row.stripe_fiestasreales .galleries .gallery .gallery_poster .gallery_icon:hover { background-color: rgba(201,185,119,0.6); }
.row.stripe_fiestasreales .galleries .gallery .gallery_title { margin: 1.3rem 0 0.1rem; color: #C9B877; font-family: 'Noto Serif'; font-size: 1.3rem; font-weight: 300; line-height: 1.4em; }
.row.stripe_fiestasreales .galleries .gallery .gallery_location { font-family: 'Noto Serif'; font-size: 0.8rem; font-weight: 300; line-height: 1.4em; opacity: 0.3; }

@media only screen and ( max-width: 900px ) {
	.row.stripe_fiestasreales .galleries .gallery { width: calc(50% - 10px); }
}
@media only screen and ( max-width: 560px ) {
	.row.stripe_fiestasreales .galleries .gallery { width: 100%; }
}

/**/
.row.stripe_suscripcion { color: #373739; text-align: center; background: url('imgs/stripe_suscripcion_bg.jpg') no-repeat center center #C9B977; background-size: cover; }
.row.stripe_suscripcion .container { padding-top: 3rem; padding-bottom: 3.5rem; }
.row.stripe_suscripcion h2 { margin-bottom: 0.15em; }

.row.stripe_suscripcion form input { background: #fff; }
.row.stripe_suscripcion form .bt_submit { color: #fff; background: #373739; }

.row.stripe_suscripcion #subscription_form_advider { position: absolute; bottom: 0px; left: 0px; width: 100%; }

.row.stripe_suscripcion .aviso { display: inline-block; padding: 0 0 0 18px; font-size: 0.55rem; line-height: 1.2em; background: url('imgs/icon_alert.png') no-repeat 0px 2px transparent; }

@media only screen and ( min-width: 1024px ) {
	.row.stripe_suscripcion .bt_submit { padding: 0.9rem 1.4rem; }
}
@media only screen and ( min-width: 500px ) {
	.row.stripe_suscripcion .subscription_row { display: flex; }
	
	.row.stripe_suscripcion form .form_element_validation { bottom: 0.5rem; right: 2.2rem; }
	
	.row.stripe_suscripcion .form-group { display: inline-block; width: calc(100% - 7.8rem + 1.1rem); margin-right: -1.1rem; }
	.row.stripe_suscripcion .form-group .form-control { padding-right: 2.8rem; border-top-right-radius: 0px; border-bottom-right-radius: 0px; }
	.row.stripe_suscripcion .bt_submit { display: inline-block; width: 9rem; margin: 0 0 8px -1.2rem; padding: 0.9rem 1.4rem; }
	
	.row.stripe_suscripcion .aviso { font-size: 0.65rem; line-height: 1.4em; }
}
@media only screen and ( max-width: 499px ) {
	.row.stripe_suscripcion .aviso { margin: 0.6rem 1.6rem 0; font-size: 0.65rem; line-height: 1.4em; text-align: left; }
}

/**/
.row.stripe_contact { color: #C9B877; }
.row.stripe_contact .container {  }
.row.stripe_contact h5 { margin-bottom: 0.15em; }

.row.stripe_contact .tabs {  }
.row.stripe_contact .tabs .tabs_triggers { margin: 0 0 0.8rem; color: rgba(55,55,55,0.3); font-size: 0.8rem; line-height: 1em; }
.row.stripe_contact .tabs .tabs_triggers .tabs_trigger { display: inline-block; }
.row.stripe_contact .tabs .tabs_triggers .tabs_trigger:not(.active) { color: rgba(201,185,119,1); font-weight: 700; text-decoration: underline; cursor: pointer; }
	.row.stripe_contact .tabs .tabs_triggers .tabs_trigger:not(.active):hover { text-decoration: none; }
.row.stripe_contact .tabs .tabs_triggers .tabs_splitter { display: inline-block; margin: 0 0.6rem; }

.row.stripe_contact #contact_form .adviser, 
.row.stripe_contact #quotes_form .adviser { display: none !important; }
.row.stripe_contact #contact_form_advider, 
.row.stripe_contact #quotes_form_advider { position: absolute; bottom: 0px; left: 0px; width: 100%; }

@media only screen and ( max-width: 778px ) {
	.row .columns .columns_column:last-of-type { margin-bottom: 0; }
}

/**
#overlay { position: fixed; top: 0px; left: 0px; width: 100%; height: 100%; background: var(--color-contrast-03); z-index: -1; opacity: 0; transition: all 0.5s ease-out 0s; }
#overlay.enabled { z-index: 899; opacity: 1; transition: all 0.5s ease-out 0s; }
#overlay.heavy { background: var(--color-contrast-06); }

/* #footer */
#footer { color: rgba(201,185,119,0.5); font-size: 0.9rem; font-weight: 400; line-height: 1.4em; background: #19191A; }
#footer .container { padding-top: 2rem; padding-bottom: 3rem; }
	#footer img { max-width: 100%; }
	#footer a { color: inherit; text-decoration: none; transition: all 0.3s ease-out 0s; }
	#footer a:hover { text-decoration: underline; }
	
	#footer p { font-size: 0.7rem; line-height: 1.2em; }
	#footer p.enlaces { font-size: 0.6rem; line-height: 1.2em; }
	
	#footer .footer_menu { margin: 0 0 2rem; }
	#footer .footer_menu .menu_item { display: inline-block; cursor: pointer; }
	#footer .footer_menu .menu_item:not(:last-child):after { content: "|"; display: inline-block; padding: 0 1rem 0 0.8rem; }
	#footer .footer_menu .menu_item:hover { text-decoration: underline; }
	
	#footer .sm { margin: 0 0 2rem; }
	#footer .sm a { margin: 0 0.5rem 0; }

/**/
#bottom-bar { padding: 0.8rem 0 1rem; color: rgba(255,255,255,0.2); font-size: 0.7rem; line-height: 1.2em; background: #000000; }
#bottom-bar .container { padding-top: 0; padding-bottom: 0rem; }
	#bottom-bar img { display: none; position: relative; top: 0px; margin: 0 0 1rem; transition: all 0.3s ease-out 0s; }
	#bottom-bar a { color: inherit; }
	#bottom-bar a:hover { text-decoration: underline; }
	#bottom-bar p { margin-bottom: 0; }
/*
#bottom-bar img:hover { transition: all 0.5s ease-out 0s; -webkit-transform: rotate(360deg); -moz-transform: rotate(360deg); -ms-transform: rotate(360deg); -o-transform: rotate(360deg); transform: rotate(360deg); }
*/

/**/
.stripe_whatsapp { margin: 0px 0px 0px; padding: 20px 0px; font-size: 30px; line-height: 1em; white-space: nowrap; transition: all 0.3s ease-out 0s; }
.stripe_whatsapp a { color: inherit; }
.stripe_whatsapp img { vertical-align: middle; transition: all 0.3s ease-out 0s; }
@media only screen and ( max-width: 420px ) {
	.stripe_whatsapp { font-size: 22px; line-height: 1em; }
	.stripe_whatsapp img { width: 38px; }
}
.bottom-fixed { position: fixed; bottom: -100px; width: 100%; text-align: center; background: #333; z-index: 3; transition: all 0.5s ease-out 0s; }
.bottom-fixed .stripe_whatsapp { margin: 0px; padding: 12px 0px 10px; }
.bottom-fixed.enabled { bottom: 0px; }

/**/
body .wapp_flag {  }
body .wapp_flag { display: block; position: fixed; bottom: 48px; right: 0px; width: 90px; height: 90px; background: url('imgs/icon_wapp_floating.png') no-repeat center left 20px #65BC54 !important; background-size: auto 60px !important; border-top-left-radius: 45px; border-bottom-left-radius: 45px; opacity: 0.9; z-index: 10; transition: all 0.3s ease-out 0s; }
body .wapp_flag:hover { width: 99px; opacity: 1; }

body .wapp_flag_floating { display: block; position: fixed; bottom: 60px; right: 6px; width: 50px; height: 50px; background: url('imgs/icon_wapp_floating.png') no-repeat center center #65BC54 !important; background-size: 60% !important; border-radius: 100px; opacity: 0.9; z-index: 10; transition: all 0.3s ease-out 0s; }
body .wapp_flag_floating:hover { opacity: 1; }

body .wapp_flag_inline { display: inline-block; width: 50px; height: 50px; background: url('imgs/icon_wapp_floating.png') no-repeat center center #65BC54 !important; background-size: 60% !important; border-radius: 100px; opacity: 0.9; z-index: 10; transition: all 0.3s ease-out 0s; }
body .wapp_flag_inline:hover { opacity: 1; }

@media only screen and ( max-width: 500px ) {
	body .wapp_flag { bottom: 1rem; }
}

/* #overlay */
.popupContent { display: none; }

#overlay { display: none; align-items: center; justify-content: center; position: fixed; top: 0px; left: 0px; width: 100%; height: 100%; background-color: rgba(0,0,0,0.6); z-index: 1101; }
	#overlay.visible { display: flex; }
#overlay #overlay_container { position: relative; max-width: 100vw; max-height: 100vh; margin: 40px; background: #fff; z-index: 1102; }
	#overlay #overlay_container .overlay_closer { width: 100%; padding: 4px 14px 4px 14px; color: #fff; text-align: right; background-color: #fff; }
	#overlay #overlay_container .overlay_closer span { cursor: pointer; }
	#overlay #overlay_container .overlay_closer div { display: inline-block; position: relative; top: 3px; width: 44px; height: 44px; background: url('imgs/modal_closer.png') no-repeat center center transparent; cursor: pointer; opacity: 0.5; transition: all 0.3s ease-out 0s; }
	#overlay #overlay_container .overlay_closer div:hover { opacity: 1; }

#overlay #overlay_container #overlay_content { position: relative; width: 100%; max-width: 100%; max-height: calc(100vh - 136px); padding: 0px 60px 60px; color: #232335; font-family: 'Montserrat'; font-size: 0.8rem; line-height: 1.2em; background: rgba(255,255,255,1); z-index: 1102; overflow: auto; }
#overlay #overlay_container #overlay_content > *:last-child { margin-bottom: 0px; }
#overlay #overlay_container #overlay_content h3 { margin: 0px 0px 2.5rem; font-size: 1.4rem; line-height: 1.2em; }
#overlay #overlay_container #overlay_content p { margin: 0px 0px 1.5rem; font-size: 1rem; font-weight: 300; line-height: 1.4em; }
#overlay #overlay_container #overlay_content p strong { font-weight: 500; }

@media only screen and ( max-width: 500px ) {
	#overlay #overlay_container { width: 100vw; height: 100vh; margin: 0 auto; }
	#overlay #overlay_container #overlay_content { max-height: calc(100vh - 56px); padding: 10px 40px 40px; }
}
@media only screen and ( max-width: 400px ) {
	#overlay #overlay_container #overlay_content { padding: 10px 20px 20px; }
}
