/* HI THERE! WELCOME TO SINAPSIS, WE ARE CURRENTLY SERVING MAYHEM */

/* MAP: */
/* 0. RESET RULES ------------------ */
/* 1. EMBEDED FONTS ---------------- */
/* 2. GLOBAL SETTINGS/VARIABLES  --- */
/* 3. UNITS, HELPERS & ANIMATIONS -- */
/*    COMMON COMPONETS ------------- */
/* 4. CONTENT WRAPPER -------------- */
/* 5. Z-INDEXING ------------------- */
/* 6. ELEMENTS --------------------- */
/*    ATOMS / MOLECULES / ORGANISMS- */
/* 7. TEMPLATES -------------------- */
/* 8. PAGES ------------------------ */


/* 0. RESET RULES -------------------------------------------------- */
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, 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, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
	outline: none;
}
html {
	min-height: 100%;
	-webkit-font-smoothing: antialiased;
	-webkit-text-size-adjust: 100%;
	overflow: auto;
}
body {
	font-size: 62.5%;
	line-height: 1;
	font-family: Arial, Tahoma, sans-serif;
	/* word-wrap: break-word; */
	/* word-break: break-word; */
	word-break: normal;
	overflow-wrap: normal;
	hyphens: auto;
	-webkit-hyphens: auto;
	margin: 0;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }
ol, ul { list-style: none; }
blockquote, q { quotes: none; }
blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; }
strong { font-weight: bold; }
table { border-collapse: collapse; border-spacing: 0; }
img { border: 0 !important; max-width: 100%; display:block;}
p { font-size: 1.2em; line-height: 1.0em; margin: 0;}
a {text-decoration: none;}
a:hover {cursor: pointer !important;}
a:focus {outline: none;}
input {-webkit-appearance: none !important;}
input[type='submit']:focus {outline: none;}
input[type='button']:focus {outline: none;}



/* 1. EMBEDED FONTS ------------------------------------------------ */

/* exo-2-800 - latin */
@font-face {
	font-family: 'Exo 2';
	font-style: normal;
	font-weight: 800;
	src: url('../fonts/exo-2-v20-latin/exo-2-v20-latin-800.eot'); /* IE9 Compat Modes */
	src: local(''),
		 url('../fonts/exo-2-v20-latin/exo-2-v20-latin-800.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
		 url('../fonts/exo-2-v20-latin/exo-2-v20-latin-800.woff2') format('woff2'), /* Super Modern Browsers */
		 url('../fonts/exo-2-v20-latin/exo-2-v20-latin-800.woff') format('woff'), /* Modern Browsers */
		 url('../fonts/exo-2-v20-latin/exo-2-v20-latin-800.ttf') format('truetype'), /* Safari, Android, iOS */
		 url('../fonts/exo-2-v20-latin/exo-2-v20-latin-800.svg#Exo2') format('svg'); /* Legacy iOS */
}

/* open-sans-regular - latin */
@font-face {
	font-family: 'Open Sans';
	font-style: normal;
	font-weight: 400;
	src: url('../fonts/open-sans-v34-latin/open-sans-v34-latin-regular.eot'); /* IE9 Compat Modes */
	src: local(''),
		 url('../fonts/open-sans-v34-latin/open-sans-v34-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
		 url('../fonts/open-sans-v34-latin/open-sans-v34-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
		 url('../fonts/open-sans-v34-latin/open-sans-v34-latin-regular.woff') format('woff'), /* Modern Browsers */
		 url('../fonts/open-sans-v34-latin/open-sans-v34-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
		 url('../fonts/open-sans-v34-latin/open-sans-v34-latin-regular.svg#OpenSans') format('svg'); /* Legacy iOS */
}

/* open-sans-600 - latin */
@font-face {
	font-family: 'Open Sans';
	font-style: normal;
	font-weight: 600;
	src: url('../fonts/open-sans-v34-latin/open-sans-v34-latin-600.eot'); /* IE9 Compat Modes */
	src: local(''),
		 url('../fonts/open-sans-v34-latin/open-sans-v34-latin-600.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
		 url('../fonts/open-sans-v34-latin/open-sans-v34-latin-600.woff2') format('woff2'), /* Super Modern Browsers */
		 url('../fonts/open-sans-v34-latin/open-sans-v34-latin-600.woff') format('woff'), /* Modern Browsers */
		 url('../fonts/open-sans-v34-latin/open-sans-v34-latin-600.ttf') format('truetype'), /* Safari, Android, iOS */
		 url('../fonts/open-sans-v34-latin/open-sans-v34-latin-600.svg#OpenSans') format('svg'); /* Legacy iOS */
}

/* open-sans-700 - latin */
@font-face {
	font-family: 'Open Sans';
	font-style: normal;
	font-weight: 700;
	src: url('../fonts/open-sans-v34-latin/open-sans-v34-latin-700.eot'); /* IE9 Compat Modes */
	src: local(''),
		 url('../fonts/open-sans-v34-latin/open-sans-v34-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
		 url('../fonts/open-sans-v34-latin/open-sans-v34-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
		 url('../fonts/open-sans-v34-latin/open-sans-v34-latin-700.woff') format('woff'), /* Modern Browsers */
		 url('../fonts/open-sans-v34-latin/open-sans-v34-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
		 url('../fonts/open-sans-v34-latin/open-sans-v34-latin-700.svg#OpenSans') format('svg'); /* Legacy iOS */
}

  

  /* 2. GLOBAL SETTINGS/VARIABLES ------------------------------------ */

/* SETTINGS */
body {
	background-color: hsla(var(--black), 1);
	color: hsla(var(--green), 1);
}

.grecaptcha-badge {
	display: none;
}

/* VARIABLES */
:root {

	/* COLOR PALETTE */
	--black: 0, 0%, 0%;
	--white: 0, 0%, 90%;

	--green-hue: 81;
	--green: var(--green-hue), 65%, 50%;
	--green-light: var(--green-hue), 85%, 60%;
	--green-dark-hue: 199;
	--green-dark: var(--green-dark-hue), 90%, 4%;
	
	--blue-hue: 186;
	--blue: var(--blue-hue), 100%, 50%;

	--blue-light: var(--blue-hue), 100%, 80%;

	--blue-dark-hue: 203;
	--blue-dark: var(--blue-dark-hue), 100%, 3%;

	/* FONTS */
	--font-exo2: 'Exo 2', sans-serif;
	--font-openSans: 'Open sans', sans-serif;
}



/* 3. UNITS, HELPERS & ANIMATINOS + COMMON COMPONENTS ------------------------ */

/* UNITS */
.layer {
	top: 0;
	left: 0;
	right: 0;
	width: 100%;
	height: 100%;
	margin: 0 auto 0 auto;
}

.section-fullHeight {
	position: relative;
	width: 100%;
	height: 100vh;
}

input[type=button],
button,
.button {
	padding: 10px 15px 9px 17px;
	background: url("../img/menu_bg.png") 0 0 repeat;
	background: none;
	border-radius: 5px;
	border: 1px solid hsla(var(--blue), .2);
	color: #00e4fe;
	font-size: 12px;
	font-weight: 600;
	line-height: 25px;
	letter-spacing: 2px;
	text-align: center;
	text-shadow: 0px 0px 10px hsla(var(--blue), .4), 0px 0px 20px hsla(var(--blue), 0);
	text-transform: uppercase;
	box-shadow: inset 0 0 6px 0px hsla(var(--blue), .1), 0px 0px 6px 0px hsla(var(--blue), .1);
	transition: color .3s, text-shadow .3s, border .2s;
}

input[type=button]:hover,
button:hover,
.button:hover {
	cursor: pointer;
	color: hsla(var(--blue-light), 1);
	text-shadow: 0px 0px 5px hsla(var(--blue), 1), 0px 0px 16px hsla(var(--blue), .6);
}

button:active,
.button:active {
	border: 1px solid hsla(var(--blue), .4);
}

/* SEPARADOR */
.divider-wrapper {
	position: relative;
	width: 60%;
	height: 4px;
	margin: 0 auto;
}

.divider-line {
	position: absolute;
	top: 50%;
	width: 100%;
	border-top: 1px dotted #B5E33D;
	opacity: 0.4;
}

.divider-block {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: 0 auto;
	width: 40px;
	background-color: #B5E33D;
}

/* TOOLTIP */
#tooltip {
    text-align: center;
    color: #B5E33D;
    background: #13222c;
    position: absolute;
    z-index: 100;
    padding: 15px;
	font-family: 'Open Sans', sans-serif;
	font-weight: 600;
    font-size: 12px;
    line-height: 20px;
	-webkit-border-radius: 	5px;
	-moz-border-radius: 	5px; 
	border-radius: 			5px;
}

/* triangle decoration */
#tooltip:after {
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-top: 10px solid #13222c;
    content: '';
    position: absolute;
    left: 50%;
    bottom: -10px;
    margin-left: -10px;
}
 
#tooltip.top:after {
    border-top-color: transparent;
    border-bottom: 10px solid #111;
    top: -20px;
    bottom: auto;
}

#tooltip.left:after {
    left: 10px;
    margin: 0;
}

#tooltip.right:after {
    right: 10px;
    left: auto;
    margin: 0;
}


/* LIGHTBOX COMPONENT */

#snps_lightbox {
	top: 17px;
	right: 0;
	left: 0;
	width: calc(100% - 26px);
	height: calc(100% - 30px);
	margin: 0 auto 0 auto;
	padding: 0;
	background: hsla(var(--green-dark), .95);
	display: none;
}

#cerrar_lb {
	right: 15px;
	top: 15px;
	padding: 4px 10px 5px 11px;
	color: hsla(var(--blue), 1);
	font: 700 28px/100% 'Open Sans', sans-serif;
	border-radius: 25px;
	border: 2px solid hsla(var(--blue), .4);
	transform: rotate(45deg);
	transition: color 0.3s, border 0.3s;
}

#cerrar_lb:hover {
	cursor: pointer;
	border: 2px solid hsla(var(--blue), 1);
}

#contenido_lb {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
	pointer-events: none;
}

.loading_txt {
	position: absolute;
	top: calc(50% - 10px);
	width: 100%;
	text-align: center;
	font-size: 20px;
	line-height: 20px;
	color: #bada55;
}

#loading_lb,
#error_lb {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	text-align: center;
	color: hsla(var(--blue), 1);
	pointer-events: none;
	display: none;
}

#loading_lb {
	font-size: 30px;
}

#error_lb {
	width: calc(100% - 40px);
	font-family: 'Open Sans', sans-serif;
}

#error_lb p {
	font-size: 12px;
	font-weight: 100;
	line-height: 1.5;
}

#error_lb p:last-of-type {
	margin-bottom: 20px;
}

#error_lb .button {
	pointer-events: all;
}

.slick-dots {
	display: inline-block;
}

.slick-list.draggable,
.slick-dots {
	pointer-events: all;
}

/* ENDS LIGHTBOX COMPONENT */






/* HELPERS */
.s5,
.s10,
.s15,
.s20,
.s30,
.s40,
.s50,
.s60,
.s70,
.s80,
.s90,
.s100,
.s120,
.s140,
.s160,
.s180,
.s200 {
	clear: both;
	width: 100%; display: block;
}

.s5 { height: 5px; }
.s10 { height: 10px; }
.s15 { height: 15px; }
.s20 { height: 20px; }
.s30 { height: 30px; }
.s40 { height: 40px; }
.s50 { height: 50px; }
.s60 { height: 60px; }
.s70 { height: 70px; }
.s80 { height: 80px; }
.s90 { height: 90px; }
.s100 { height: 100px; }
.s120 { height: 120px; }
.s140 { height: 140px; }
.s160 { height: 160px; }
.s180 { height: 180px; }
.s200 { height: 200px; }

.clearer {
	clear: both;
	width: 100%;
	height: 1px;
	display: block;
}

.hide {
	display: none;
}

/* 4. CONTENT WRAPPER ---------------------------------------------- */

.content-wrapper {
	width: 78%;
	margin: 0 auto 0 auto;
}

@media screen and (min-width: 800px) {
	.content-wrapper {
		width: 700px;
	}		
}

.content {
	font-family: var(--font-openSans);
	color: hsla(var(--white), .88)
}

.content h3 {
	color: #B5E33D;
	text-transform: uppercase;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.6;
	text-align: center;
}

.content p {
	font-size: 15px;
	line-height: 2;
	margin-bottom: 40px;
	/* word-break: break-word; */
}

.content.contentServicios {
	max-width: 420px;
	text-align: center;
	margin: 0 auto;
}

.content p:last-child {
	margin-bottom: 0;
}

.content a {
	color: hsla(var(--blue), 1);
}

.content .green-text {
	color: #B5E33D;
}

.content .intro-txt,
.content .intro-txt strong {
	font-size: 16px;
	font-weight: 600;
	line-height: 1.8;
}

.content.contentCenter {
	text-align: center;
}

@media screen and (min-width: 750px) {
	.content p {
		font-size: 16px;
		line-height: 2.4;
	}		

	.content .intro-txt,
	.content .intro-txt strong {
		font-size: 17px;
		line-height: 2.4;
	}	
}




/* 5. Z-INDEXING --------------------------------------------------- */
/* GLOBAL */
#o-background-pos 				{ position: fixed; z-index: 10; }
#content-wrapper				{ position: relative; z-index: 20; }
	#landing-sliderSinapsis-wrapper { position:relative; z-index: 20; }
#m-logoPos 						{ position: fixed; z-index: 30; }
#o-mainNav-pos					{ position: fixed; z-index: 40; }
	#m-mainNav-switch				{ z-index: 10; }
#snps_lightbox					{ position: fixed; z-index: 50; }
	#cerrar_lb 						{ position: absolute; z-index: 3; }
	#loading_lb,
	#error_lb 						{ z-index: 3; }
	#contenido_lb 					{ position: absolute; z-index: 2; }
	#cerrar-lb-screen 				{ position: absolute; z-index: 1; }


/* BACKGROUND / TSITEWIDE / THREE.JS CANVAS */
#m-background-threejscanvas 	{ position: fixed; z-index: 1; }
/* GRID */
#m-backgroundGrid 				{ position: fixed; z-index: 2; }
/* VIEWER */
#m-background-frame-wrapper		{ position: fixed; z-index: 3; }




/* 6. ELEMENTS ----------------------------------------------------- */
/* ATOMS / MOLECULES / ORGANISMS------------------------------------ */

/* GLOBAL BACKGROUND -------------------- */
/* GRID */
#m-backgroundGrid {
	pointer-events: none;
	background:	url("../img/bg_texture_lineas.png") 0 0 repeat,
				url("../img/bg_brillo_up.png") 50% 0 no-repeat;
}

#m-backgroundGrid #degrade {
	background: linear-gradient(
		hsla(var(--blue-dark), 0),
		hsla(var(--blue-dark), 0.7));
}

#m-backgroundGrid #grid,
#m-backgroundGrid #noise {
	position: absolute;
}
	
#m-backgroundGrid #grid {
	background: url("../img/bg_cuadricula.png") 0 0 repeat;
}

#m-backgroundGrid #noise {
	background: url("../img/bg_texture_noise.png") 0 0 repeat;
}

/* LINE FRAME */
#marco-ui {
	position: absolute;
	top: 16px;
	right: 0;
	left: 0;
	width: calc(100% - 26px);
	height: calc(100% - 30px);
	margin: 0 auto 0 auto;
	padding: 0;
	border: 1px solid hsla(var(--green), 0.2);
}

#esquineros-ui {
	position: absolute;
	top: 15px;
	right: 0;
	left: 0;
	width: calc(100% - 22px);
	height: calc(100% - 26px);
	margin: 0 auto 0 auto;
	padding: 0;
}

#esquineros-ui div {
	position: absolute;
	width: 4px;
	height: 4px;
	background-color: hsla(var(--green), 1);
}

#esquineros-ui div:nth-child(1) {  top: 0; left: 0;}
#esquineros-ui div:nth-child(2) {  top: 0; right: 0;}
#esquineros-ui div:nth-child(3) {  bottom: 0; left: 0;}
#esquineros-ui div:nth-child(4) {  bottom: 0; right: 0;}



/* LOGO --------------------------------- */
#a-logo {
	width: 100px;
	height: 50px;
	text-indent: -10000px;
	background: url("../img/logotype.svg") 0 0 no-repeat;
	background-size: 100% auto;
}

#m-logoPos {
	top: 30px;
	left: 23px;
}

@media screen and (min-width: 600px) {
	#m-logoPos {
		top: 33px;
		left: 33px;
	}
}

#m-logoPos #date-count {
	color: hsla(var(--green), 0.8);
	font-size: 10px;
	font-weight: 700;
	line-height: 20px;
}


/* MAIN NAV ----------------------------- */
/* MOBILE */
#m-mainNav {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	background-color: hsla(var(--blue-dark), 0.8);
	text-align: center;
	text-transform: uppercase;
	display: none;
}

#m-mainNav li a {
	display: block;
	color: hsla(var(--blue), 1);
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 5px;
	line-height: 100px;
	text-transform: uppercase;
	text-decoration: none;
	border-bottom: 1px solid hsla(var(--blue), 0.2);
	/* background: -moz-linear-gradient(0deg, rgba(0,0,0, 0.3) 0%, rgba(0,0,0,0) 30%);
	background: -webkit-linear-gradient(0deg, rgba(0,0,0, 0.3) 0%, rgba(0,0,0,0) 30%);
	background: linear-gradient(0deg, rgba(0,0,0, 0.3) 0%, rgba(0,0,0,0) 30%); */
	transition: all .3s;
}

#m-mainNav li a:hover {
	text-shadow: 0 0 10px hsla(var(--blue), .88);
	color: hsla(var(--blue-light), 1);
}

/* MAIN NAV TOGGLER - */
#m-mainNav-switch {
	position: fixed;
	top: 27px;
	right: 20px;
	width: 50px;
	height: 50px;
	text-align: center;
	background: hsla(var(--blue), 0.1);
	background: -moz-radial-gradient(circle, hsla(var(--blue), 0.4) 0%, hsla(var(--blue), 0.01) 55%, hsla(var(--blue), 0) 90%);
	background: -webkit-radial-gradient(circle, hsla(var(--blue), 0.4) 0%, hsla(var(--blue), 0.01) 55%, hsla(var(--blue), 0) 90%);
	background: radial-gradient(circle, hsla(var(--blue), 0.4) 0%, hsla(var(--blue), 0.01) 55%, hsla(var(--blue), 0) 90%);
}

#m-mainNav-switch p,
#m-mainNav-switch i {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	width: 100%;
	color: hsla(var(--blue), 1);
}

#m-mainNav-switch p {
	font-family: var(--font-exo2);
}

#m-mainNav-switch:hover {
	cursor: pointer;
}

.togglerIconOpen {
	width: 100%;
	height: 100%;
	background: url('../img/icon-menu-switch.svg');
	background-repeat: no-repeat;
	background-position-x: 50%;
	background-position-y: 50%;
	background-size: 24px auto;
}

.togglerIconClose {
	width: 100%;
	height: 100%;
	background: url('../img/icon-menu-switch-close.svg');
	background-repeat: no-repeat;
	background-position-x: 50%;
	background-position-y: 50%;
	background-size: 24px auto;
	display: none;
}


/* MAIN NAV DESKTOP */
@media screen and (min-width: 600px){
	#m-mainNav {
		display: inline-block !important;
		top: auto;
		bottom: 25px;
		right: 0;
		width: 530px;
		margin: 0 auto;
		background-color: hsla(var(--blue-dark), .88);
		padding: 8px 0;
		border-radius: 5px;
		border: 1px solid hsla(var(--blue), .05);
	}

	#m-mainNav li {
		display: inline-block;
		margin-right: 8px;
	}

	#m-mainNav li:last-child {
		margin-right: 0;
	}

	#m-mainNav li a {
		display: block;
		padding: 11px 12px 10px 12px;
		font-size: 11px;
		font-weight: 700;
		letter-spacing: 2.8px;
		line-height: 12px;
		text-transform: uppercase;
		text-decoration: none;
		cursor: pointer;
		border-radius: 5px;
		border: none;
		text-shadow: 0 0 6px hsla(var(--blue), .6);
		transition: all 0.3s;
	}

	#m-mainNav li a:hover {
		text-shadow: 0 0 20px hsla(var(--blue), .9);
	}

	/* HOME ICON */
	#m-mainNav #home {
		text-indent: -999999px;
	}

	#m-mainNav #home span {
		width: 20px;
		display: block;
		background: url("../img/icon_home.svg") 50% 0 no-repeat;
		background-size: 100% 300%;
		background-position-y: 0%;
		transition: background-position-y 0.3s;
	}

	#m-mainNav #home:hover span {
		background-position-y: 50%;
	}

	/* MAIN NAV TOGGLER */
	#m-mainNav-switch {
		display: none;
	}
}



/* BANNER LANDING -------------------------------------------------- */

.bannerLandingCTA	{ position: absolute; z-index: 3; }
.bannerLandingCopy 	{ position: absolute; z-index: 2; }
.bannerLandingBG 	{ position: absolute; z-index: 1; }

#landing-sliderSinapsis-wrapper {
	overflow: hidden;
}

/* COPY */
.bannerLandingCopy {
	top: 50%;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	transform: translateY(-60%);
	height: max-content;
	text-align: center;
}

@media screen and (min-width: 500px) {
	.bannerLandingCopy {
		transform: translateY(-50%);
	}	
}

.bannerLandingCopy h1 {
	font-family: var(--font-exo2);
	color: hsla(var(--green), 1);
	text-transform: uppercase;
	font-size: 11vw;
	line-height: 80%;
}

@media screen and (min-width: 1150px) {
	.bannerLandingCopy h1 {
		font-size: 6.2vw;
	}
}

.bannerLandingCopy h2 {
	width: 80%;
	margin: 0 auto;
	font-family: var(--font-openSans);
	color: hsla(var(--white), .88);
	text-transform: uppercase;
	font-size: 12px;
	line-height: 120%;
	font-weight: 700;
}

@media screen and (min-width: 800px) {
	.bannerLandingCopy h2 {
		font-size: 16px;
	}
}

@media screen and (min-width: 2000px) {
	.bannerLandingCopy h2 {
		font-size: 22px;
	}
}

.bannerLandingCopy h3 {
	width: 80%;
	margin: 0 auto;
	font-family: var(--font-openSans);
	color: hsla(var(--green-light), 1);
	font-size: 8px;
	letter-spacing: 2px;
	line-height: 120%;
	font-weight: 600;
}

@media screen and (min-width: 800px) {
	.bannerLandingCopy h3 {
		font-size: 10px;
	}
}

@media screen and (min-width: 1400px) {
	.bannerLandingCopy h3 {
		font-size: 12px;
	}
}

@media screen and (min-width: 2000px) {
	.bannerLandingCopy h3 {
		font-size: 16px;
	}
}


/* CTA */
.bannerLandingCTA {
	right: 0;
	bottom: 22%;
	left: 0;
	text-align: center;
}


/* BG */
.bannerLandingBG {
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 444%;
	margin: 36px 0 0 -80%;
	height: 100%;
}

.bannerLandingBG svg {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
}

@media screen and (min-width: 550px) {
	.bannerLandingBG {
		width: 285%;
		margin: -10% 0 0 -180%;
	}
}

@media screen and (min-width: 800px) {
	.bannerLandingBG {
		width: 250%;
		margin: 0 0 0 -75%;
	}
}

@media screen and (min-width: 1000px) {
	.bannerLandingBG {
		width: 200%;
		margin: 0 0 0 -50%;
	}
}

@media screen and (min-width: 1500px) {
	.bannerLandingBG {
		width: 150%;
		margin: -4% 0 0 -25%;
	}
}

.bannerLandingBG .st0,
.bannerLandingBG .st1 {
	--strokeW: 1px;
	stroke: #B5E33D;
	fill: rgba(0,0,0,0);
	stroke-width: var(--strokeW);
	vector-effect: non-scaling-stroke;
	opacity: .25;
}

/* LANDING SECC HEADER */
.secc-header {
	text-align: center;
}

.secc-header h2 {
	font-family: var(--font-exo2);
	color: hsla(var(--green), 1);
	text-transform: uppercase;
	font-size: 10vw;
	line-height: 80%;
}

@media screen and (min-width: 1150px) {
	.secc-header h2 {
		font-size: 6.2vw;
	}
}

.secc-header h3 {
	width: 80%;
	margin: 0 auto;
	font-family: var(--font-openSans);
	color: hsla(var(--white), .88);
	text-transform: uppercase;
	font-size: 12px;
	line-height: 120%;
	font-weight: 700;
}

@media screen and (min-width: 800px) {
	.secc-header h3 {
		font-size: 16px;
	}
}

@media screen and (min-width: 2000px) {
	.secc-header h3 {
		font-size: 22px;
	}
}


/* LANDING BRANDS */
.landing-brands {
	--landing-brands-gap: clamp(40px, 8vw, 70px);
	width: 100%;
	overflow: hidden;
}

.landing-brands__track,
.landing-brands__group {
	display: flex;
	width: max-content;
}

.landing-brands__group {
	height: 55px;
	align-items: center;
	flex-shrink: 0;
	gap: var(--landing-brands-gap);
	padding-inline-end: var(--landing-brands-gap);
}

.landing-brands__group img {
	display: block;
	width: auto;
	max-width: none;
	height: auto;
	flex-shrink: 0;
	opacity: .7;
}




/* 7. TEMPLATES ---------------------------------------------------- */

/* SLICK SLIDER */
/* INCLUDE MAIN SLICK CSS, INIT SLICK JS,*/

/* SLICK TEMPLATE TYPE: A: .slickTemplateA ------------------- */

/* RESETS HERE, IF ANY */
/* ------------------- */

/* WRAPPER CLASS: .slickTemplateA */
.slickTemplateA {
	font-family: var(--font-openSans);
}

/* MASTER WIDTH AND PADDING */
.slickTemplateA .itemCard {
	position: relative;
	width: 240px;
	padding: 0 20px;
}

.slickTemplateA .itemCard .itemCard-img {
	cursor: pointer;
}

.slickTemplateA .itemCard .itemCard-name,
.slickTemplateA .itemCard .itemCard-product {
	color: white;
	text-transform: uppercase;
	font-weight: 700;
}


@media screen and (min-width: 380px) {
	.slickTemplateA .itemCard {
		width: 340px;
	}
}

@media screen and (min-width: 500px) {
	.slickTemplateA .itemCard {
		width: 400px;
	}
}

@media screen and (min-width: 800px) {
	.slickTemplateA .itemCard {
		width: 444px;
	}
}

.slickTemplateA .itemCard-info {
	padding-left: 4px;
	font-weight: 600;
	font-size: 12px;
	opacity: .8;
}

.slickTemplateA .itemCard-info i {
	margin-right: 2px;
}

.slickTemplateA .itemCard-img {
	position: relative;
	padding: 4px;
    background-color: hsla(var(--blue), 0.1);
    border-radius: 2px;
}

.slickTemplateA .itemCard-data {
	position: relative;
	vertical-align: top;
	display: flex;
}

.slickTemplateA .itemCard-dataTools {
	box-sizing: border-box;
	flex: 0 0 calc(100% - 100px);
	padding-left: 4px;
}

.slickTemplateA .itemCard-dataTools i {
    float: left;
    width: fit-content;
    margin: 0 8px 0 0;
    font-size: 12px;
	padding-top: 4px;
}

.slickTemplateA .itemCard-dataTools p,
.slickTemplateA .itemCard-dataTools .itemCard-url,
.slickTemplateA .itemCard-dataTools .itemCard-tagsToggle {
	display: inline-block;
	margin: 0 6px 6px 0;
	text-transform: uppercase;
	font-size: 10px;
	font-weight: 600;
	line-height: 1em;
	padding: 4px 6px;
	border: 1px solid hsla(var(--green), .4);
	border-radius: 2px;
	opacity: 0.8;
}

.slickTemplateA .itemCard-dataTools .itemCard-url {
	border-color: hsla(var(--blue), .4);
}

.slickTemplateA .itemCard-dataTools .itemCard-tagsIcon,
.slickTemplateA .itemCard-dataTools .itemCard-tagsToggle,
.slickTemplateA .itemCard-dataTools .itemCard-tagsBreak,
.slickTemplateA .itemCard-dataTools .itemCard-toolsTags p {
	display: none;
}

.slickTemplateA .itemCard-dataTools.has-tags .itemCard-tagsIcon {
	display: block;
}

.slickTemplateA .itemCard-dataTools.has-tags .itemCard-tagsToggle,
.slickTemplateA .itemCard-dataTools.tags-expanded .itemCard-toolsTags p {
	display: inline-block;
}

.slickTemplateA .itemCard-dataTools.tags-expanded .itemCard-tagsBreak {
	display: block;
	height: 0;
}

.slickTemplateA .itemCard-dataTools .itemCard-tagsToggle {
	appearance: none;
	background: none;
	border-color: hsla(var(--blue), .4);
	box-shadow: none;
	font-family: inherit;
	letter-spacing: normal;
	text-align: left;
}

.slickTemplateA .itemCard-dataTools .itemCard-tagsToggle::after {
	position: relative;
	top: -1px;
	display: inline-block;
	margin-left: 4px;
	font-family: 'Font Awesome 5 Free';
	font-size: .9em;
	font-weight: 900;
	line-height: 1;
	content: "\f06e";
}

.slickTemplateA .itemCard-dataTools .itemCard-tagsToggle[aria-expanded="true"]::after {
	content: "\f070";
}

.slickTemplateA .itemCard-dataTools .itemCard-url::after {
	position: relative;
	top: -1px;
	display: inline-block;
	margin-left: 4px;
	font-family: 'Font Awesome 5 Free';
	font-size: .9em;
	font-weight: 900;
	line-height: 1;
	content: "\f062";
	transform: rotate(45deg);
}

@media screen and (min-width: 600px) {
	.slickTemplateA .itemCard-dataTools.has-tags .itemCard-tagsToggle {
		display: none;
	}

	.slickTemplateA .itemCard-dataTools.tags-expanded .itemCard-tagsBreak {
		display: none;
	}

	.slickTemplateA .itemCard-dataTools .itemCard-toolsTags p {
		display: inline-block;
		opacity: .8 !important;
	}
}

.slickTemplateA .itemCard-dataMasInfo {
	box-sizing: border-box;
	padding: 0 4px 20px 0;
	flex: 0 0 100px;
	color: hsla(var(--blue), 1);
	letter-spacing: 1px;
	font-weight: 600;
	font-size: 11px;
	text-align: right;
}

.fx-hoverBlueGlow {
	color: hsla(var(--blue), 1);
	text-shadow: 0px 0px 4px hsla(var(--blue), 0), 0px 0px 6px hsla(var(--blue), 0);
	transition: color .5s, text-shadow .5s;
}

.fx-hoverBlueGlow:hover {
	cursor: pointer;
	color: hsla(var(--blue-light), 1);
	text-shadow: 0px 0px 4px hsla(var(--blue), 0), 0px 0px 6px hsla(var(--blue), 1);
}

.slickTemplateA .itemCard-dataMasInfo i {
	padding-left: 8px;
}

.slickTemplateA.portfolio-nav ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	column-gap: 2px;
	row-gap: 20px;
	margin: 0 auto;
	width: 80%;
	max-width: 500px;
}

.slickTemplateA.portfolio-nav ul li {
	width: 20px;
	height: 20px;
	text-indent: -10000px;
	padding: 4px 8px 4px 8px;
	margin: 0;
	background: url("../img/icon_carrusel_circle.svg") 50% 50% no-repeat;
	background-size: 12px auto;
	border: none;
	opacity: 0.3;
	transition: opacity .4s;
	cursor: pointer;
}

.slickTemplateA.portfolio-nav ul li.slick-active {
	opacity: 0.8;
}



/* LIGHTBOX PORTFOLIO CONTENT */
#o-lb-carrousel {
	position: absolute;
	inset: 0;
	box-sizing: border-box;
	display: grid;
	grid-template-columns: minmax(max-content, 1fr) minmax(0, 1440px) minmax(max-content, 1fr);
	grid-template-areas:
		"prev viewer next"
		"dots dots dots";
	grid-template-rows: minmax(0, max-content) max-content;
	row-gap: clamp(4px, 2vmin, 20px);
	align-content: center;
	width: 100%;
	height: 100%;
	min-width: 0;
	min-height: 0;
	margin: 0 auto;
	padding: clamp(40px, 8vh, 60px) 0;
}

#snps_lightbox .portfolio-viewer > .slick-list {
	grid-area: viewer;
	width: 100%;
	min-width: 0;
	min-height: 0;
}

#snps_lightbox .portfolio-viewer .slick-track,
#snps_lightbox .portfolio-viewer .slick-slide {
	height: 100%;
	min-height: 0;
}

#snps_lightbox .portfolio-viewer .slick-slide {
	display: flex;
	align-items: center;
	justify-content: center;
}

#snps_lightbox .portfolio-viewer img.lightbox-media,
#snps_lightbox .portfolio-viewer video.lightbox-media {
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 100%;
	margin: 0 auto;
	object-fit: contain;
}

#snps_lightbox .lightbox-iframe {
	position: relative;
	width: 100%;
	max-height: 100%;
	aspect-ratio: 16 / 9;
	overflow: hidden;
}

#snps_lightbox .lightbox-iframe iframe {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

#snps_lightbox .portfolio-viewer > .slick-dots {
	grid-area: dots;
	justify-self: stretch;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: clamp(2px, 1vmin, 10px);
	min-width: 0;
	margin: 0;
	padding: 0;
	text-align: center;
}

#snps_lightbox .portfolio-viewer > .slick-dots li {
	display: flex;
	margin: 0;
	padding: 0;
}

#snps_lightbox .portfolio-viewer > .slick-dots button {
	display: block;
	margin: 0;
	padding: 0 8px;
	border: none;
	box-shadow: none;
	line-height: 20px;
}

#snps_lightbox .portfolio-viewer > .slick-dots li.slick-active button {
	color: white;
	text-shadow: 0px 0px 5px hsla(var(--blue), 1), 0px 0px 16px hsla(var(--blue), .6);
}

#snps_lightbox .portfolio-viewer > .slick-prev {
	grid-area: prev;
}

#snps_lightbox .portfolio-viewer > .slick-next {
	grid-area: next;
}

#snps_lightbox .portfolio-viewer > .slick-prev,
#snps_lightbox .portfolio-viewer > .slick-next {
	align-self: center;
	justify-self: center;
	margin: 0;
	border: none;
	box-shadow: none;
	font-size: 20px;
	pointer-events: all;
}


/* 8. PAGES -------------------------------------------------------- */
