@import url('https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300..800;1,300..800&family=Saira:ital,wght@0,100..900;1,100..900&display=swap');
@import url("https://cdn.jsdelivr.net/npm/bootstrap-icons@1.13.1/font/bootstrap-icons.min.css");

:root {
  box-sizing: border-box;
  --main_clr: #02A645;
  --scnd_clr: #127bce;
  --hvr_clr: #000;
  --dark_clr: #232323;
  --light_clr: #fff;
  --gray_clr: #555;
  --none_shadow: none;
  --filter_w: brightness(0) saturate(100%) invert(99%) sepia(1%) saturate(0%) hue-rotate(169deg) brightness(114%) contrast(100%);
  --filter_m: brightness(0) saturate(100%) invert(51%) sepia(68%) saturate(6744%) hue-rotate(131deg) brightness(101%) contrast(98%);
}

html {
  scroll-padding-top: 115px; /* altura de la navbar fija */
}

* {
	-webkit-transition: 300ms;
	-moz-transition: 300ms;
	-o-transition: 300ms;
	transition: 300ms;
}
body {
	font-family: "Open Sans", sans-serif;
	position: relative;
	font-weight: 300;
	background: transparent;
	color:#232323;
	font-size: 22px;
	line-height: 1.2;
	overflow-x: hidden;
	z-index: 0;
}

body  section{
	padding: 1em 0;
	position: relative;
	min-height: 40vh;
}

a:hover,
a:focus {
	outline:none;
	outline-offset: 0;
	text-decoration:none;
	color:#232323;
}

a {color:var(--main_clr);text-decoration:none;}

h1, h2, h3, h4, h5, h6 {
	font-family: "Saira", sans-serif;
	text-transform: uppercase;
	font-weight: 700;
	line-height: 1.1;
}

img {width:100%; pointer-events: none;}
.center {text-align: center;}
.right_ {text-align: right;}
.justify {text-align: left;}
.justifyc {text-align: justify;text-align-last: center;}
.no_drop {cursor: no-drop;}

.img_gif_main {filter: hue-rotate(320deg);}

ul, ol {padding-left: 55px;}

.ml_auto {margin-left: auto!important;}

.imgc {
display: block;
margin-right: auto;
margin-left: auto;
text-align: center;
}

.upp_ {
    text-transform: uppercase;
}

.clr_00 {color: #fff!important;}
.clr_01 {color: #232323;}
.clr_02 {color: var(--main_clr);}
.white_ {color: #fff;}
.gray_ {color: #b5b5b5;}

.bg_w {background: #fff;}

.marg_00 {margin: 0;}
.padd_00 {padding: 0!important;}

.no_marg {margin-left: 0; margin-right: 0;}
.no_padd {padding-left: 0; padding-right: 0;}

.dly1{ animation-delay: 0.2s;}
.dly2{ animation-delay: 0.4s;}
.dly3{ animation-delay: 0.6s;}
.dly4{ animation-delay: 0.8s;}
.dly5{ animation-delay: 1.0s;}
.dly6{ animation-delay: 1.2s;}
.dly7{ animation-delay: 1.4s;}
.dly8{ animation-delay: 1.6s;}
.dly9{ animation-delay: 1.8s;}
.dly10{ animation-delay: 2.0s;}
.dly11{ animation-delay: 2.2s;}
.dly12{ animation-delay: 2.4s;}

.cont_10 {width: 10%; padding: 0 15px;}
.cont_20 {width: 20%; padding: 0 15px;}
.cont_30 {width: 30%; padding: 0 15px;}
.cont_33 {width: 33%; padding: 0 15px;}
.cont_40 {width: 40%; padding: 0 15px;}
.cont_50 {width: 50%; padding: 0 15px;}
.cont_60 {width: 60%; padding: 0 15px;}
.cont_70 {width: 70%; padding: 0 15px;}
.cont_80 {width: 80%; padding: 0 15px;}
.cont_90 {width: 90%; padding: 0 15px;}

.btn.active.focus, .btn.active:focus, .btn.focus, .btn:active.focus, .btn:active:focus, .btn:focus {
    outline: 0px auto transparent;
    outline-offset: -2px;
}
button.active.focus, button.active:focus, button.focus, button:active.focus, button:active:focus, button:focus {
    outline: 0px auto transparent;
    outline-offset: -2px;
}
a.active.focus, a.active:focus, a.focus, a:active.focus, a:active:focus, a:focus {
    outline: 0px auto transparent;
    outline-offset: -2px;
}

hr {margin: 20px auto;border-top: 5px solid #ddd;width: 200px;opacity: 1; }

.btn { line-height: 1; }

.video_yt{width:100%;box-shadow:0 23px 15px -25px #000;margin:10px auto;position:relative; border-radius: 1em;}
.video_yt .ratio>* {border-radius:1em} 

.align_c {
    display: inline-flex;
    align-items: center;
    width: 100%;
}

.w90 {width: 90%;margin:0 auto;}
.w70 {width: 70%;}
.w80_ {width: 80%;padding: 0 15px;margin: 0 auto;}
.w50 {width: 50%;}

.carousel-control {
    font-size: 10px;
	opacity: 0;
}

.carousel-control .icon-prev, 
.carousel-control .icon-next, 
.carousel-control .fa-angle-left, 
.carousel-control .fa-angle-right {
    position: absolute;
    top: 50%;
    z-index: 5;
    display: inline-block;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
}

.carousel-control.left {
    background-image: -webkit-linear-gradient(left,color-stop(transparent 0),color-stop(rgba(0,0,0,0.0001) 100%));
    background-image: linear-gradient(to right,transparent 0,rgba(0,0,0,0.0001) 100%);
}
.carousel-control.right {
    background-image: -webkit-linear-gradient(left,color-stop(rgba(0,0,0,0.0001) 0),color-stop(transparent 100%));
    background-image: linear-gradient(to right,rgba(0,0,0,0.0001) 0,transparent 100%);
}

.carousel-indicators .active{
	background-color: #4FBDBA !important;
	width: 50px!important;
}

.carousel-indicators .active{background-color: #fff !important;}

.fs_4 {font-size: 4vw;}

.btn_00 {
	background: var(--main_clr);
	color: #fff;
	border-radius: 5px;
	border: none;
	padding: 10px 20px;
	font-size: 22px;
	margin: 10px auto;
	font-weight: 300;
	letter-spacing: 0;
}
.btn_00:focus,
.btn_00:hover {
	background: #232323;
	color: #fff;
}

.btn_01 {
	background: #232323;
	color: #fff;
	border-radius: 5px;
	border: none;
	padding: 10px 20px;
	font-size: 22px;
	margin: 10px auto;
	font-weight: 300;
	letter-spacing: 0;
}
.btn_01:focus,
.btn_01:hover {
	background: var(--main_clr);
	color: #fff;
}

.btn_02 {
    background: #b5b5b5;
    color: #fff;
    border-radius: 5px;
    border: none;
    padding: 10px 40px;
    font-size: 18px;
    margin: 25px auto;
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: 3px;
    display: block;
}
.btn_02:focus,
.btn_02:hover {
	background: var(--main_clr);
	color: #fff;
}

.poss {position: relative;}

.hide_ {display:initial!important;}
.show_ {display: none!important;}

.cont_w100 {
    display: flex;
    flex-wrap: inherit;
    align-items: center;
    justify-content: space-between;
}

#gral {padding: 5em 0 1em;}
.gral {position: relative;z-index: 1;background: #fff;}

.video_event {
    width: 50%;
    margin: 25px auto 10px;
    position: relative;
    float: right;
    padding: 10px;
}
.center_y_flex {justify-content: center;}

#iframe_flipbook {
    aspect-ratio: 16 / 9;
    overflow: hidden;
    border-radius: 1em;
}
#iframe_flipbook_16_9 {
    aspect-ratio: 16 / 9;
    width: 100%;
    overflow: hidden;
    margin: 0 0 -6px;
    border-radius: 0em;
}
#iframe_flipbook_1_1 {
    aspect-ratio: 1 / 1;
    width: 100%;
    overflow: hidden;
    margin: 0 0 -6px; 
    border-radius: 1em;
}

.iframe_model {height: 80vh;margin: 0 0 -7px;}

.doc_ivt {
    height: 100vh;
    margin: 0 0 -10px;
}

.share_wa {
    position: absolute;
    right: 8rem;
    top: 10px;
    width: fit-content;
    margin: 0 auto;
    background: #25d366;
    color: #fff;
    border: none;
    padding: 5px 15px;
    border-radius: 2em;
    box-shadow: 0 0 5px #000;
    font-size: 85%;
}
.share_wa:hover {
    background: #128c7e;
    color: #fff;
}

::selection{color: #fff;background: var(--main_clr);}

/************ MODALS STYLE ************/
.modal-open .modal {backdrop-filter: blur(5px);}
body.modal-open {padding-right: 0 !important; /* Desactiva la compensaci�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�7777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�7777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�7777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�7777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�7777777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�7777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�7777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�7777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�7777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�7777777777�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�7777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�7777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�7777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�7777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�7777777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�7777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�7777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�7777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�7777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�7777777777n autom�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�7777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�7777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�7777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�7777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�7777777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�7777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�7777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�7777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�7777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�7777777777�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�7777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�7777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�7777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�7777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�7777777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�7777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�7777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�7777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�7777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�777771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�77771�1�71�1�771�1�71�1�7771�1�71�1�771�1�71�1�7777777777tica de margen */} /*EVITA QUE SALTE LA PAGINA AL ABRIR MODAL overflow: auto!important;*/
.navbar {padding-right: 0 !important; /* Evita que el padding dinamico afecte la navbar */}

.modal-dialog {
	width: 100%;
	margin: 0;
}
.modal-content {
    border: 0px solid #FFF;
    border-radius: 0;
    -webkit-box-shadow: 0 0 0 #FFF;
    box-shadow: 0 0 0 #FFF;
    background-color: transparent;
    width: 100vw;
}
.modal-header {
    padding: 15px;
    border-bottom: 0px solid #fff;
    background: var(--main_clr);
    text-align: center;
    justify-content: center;
}
.modal-header h4 {
    font-size: 2.5rem;
    margin: 0;
}
.modal-title {
    font-size: 44px;
    letter-spacing: 0px;
	color: #fff;
}
.close {
    top: 5px;
    right: 0px;
    left: unset;
    opacity: 1;
    position: absolute;
    font-size: 3rem;
    font-weight: 400;
    background: var(--main_clr);
    color: #fff;
    padding: 0 0;
    width: 50px;
    height: 45px;
    line-height: 1;
    border-radius: 1em 0 0 1em;
    text-align: center;
    border: none;
}
.close:hover, .close:focus {
    background: var(--hvr_color);
    color: #fff;
    opacity: 1;
}

.modal-dialog .btn_00 {
    position: absolute;
    left: 1rem;
    bottom: 1rem;
    z-index: 10;
    font-size: 1rem;
    padding: 5px 10px;
    margin: 0;
}

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

.animated {
  animation-duration: 1s;
  animation-fill-mode: both;
}
.fadeIn {animation-name: fadeIn;}

@keyframes fadeIn {
  from {opacity: 0;}
  to {opacity: 1;}
}

/*********** PANEL COLLAPSE ****************/

.accordion-button::after {
    content: '';
}
.accordion-button .icon {
    transition: transform 0.3s ease;
}
.accordion-button.collapsed .icon {
    transform: rotate(0deg);
}
.accordion-button:not(.collapsed) .icon {
    transform: rotate(180deg);
}
/*CUSTOM COLLAPSE*/
.accordion-button:focus {box-shadow: var(--none_shadow);}

.accordion-button {
    font-size: 1.5rem;
    font-weight: 700;
    background: #232323;
    color: #fff;
}
.accordion-button::after {filter: brightness(0) saturate(100%) invert(100%) sepia(8%) saturate(0%) hue-rotate(157deg) brightness(107%) contrast(107%);}
.accordion-button:hover {
    background: var(--main_clr);
    color: #fff;
}
.accordion-button:not(.collapsed) {
    color: #fff;
    background: var(--main_clr);
    box-shadow: inset 0 calc(-1* var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color);
}

.accordion-body {
    max-height: 200px;
    overflow: auto;
}

/*********** GALERIA LIGHTBOX ****************/
.lb_  { background: #fff; position: relative; width: 100%; margin: 0 0 10px; }
.lb__  { background: #fff; position: relative; width: 100%; margin: 0 0 10px; }
.tz-gallery .lightbox img { width: 100%; border-radius: 0; position: relative; }
.tz-gallery .lightbox:hover img { opacity: 0.3; -webkit-filter: blur(5px); filter: blur(3px);}
.tz-gallery .lightbox:before {
    position: absolute;
    top: 45%;
    left: 0;
    right: 0;
    margin: -15px 0 0;
    opacity: 0;
    color: var(--main_clr);
    font-size: 50px;
    font-family: fontawesome;
    content: "\f002";
    pointer-events: none;
    z-index: 1;
    transition: 0.4s;
    text-align: center;
}
.tz-gallery .lightbox:after {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    background-color: transparent;
    content: '';
    transition: 0.4s;
}
.tz-gallery .lightbox:hover:after, .tz-gallery .lightbox:hover:before { opacity: 1; }
.baguetteBox-button { background-color: transparent !important; }
#baguetteBox-overlay .full-image img { box-shadow: none;background: transparent;}

.gall_img img {
    border-radius: 1em !important;
}

.small_gall {
    display: inline-grid;
    position: relative;
    padding: 10px;
    width: 6em;
}


/*********** FIN GALERIA LIGHTBOX ****************/

table .tz-gallery .lightbox:before {
    position: relative;
    display: none;
}
table .tz-gallery .lightbox:after {
    position: unset;
}
#nolupa .tz-gallery .lightbox:before {
    position: relative;
    display: none;
}
#nolupa .tz-gallery .lightbox:after {
    position: unset;
}


/***********BOOTSTRAP 5.3****************/

.form-control:focus, .form-select:focus {
    border-color: #efefef;
    box-shadow: none;
}

#gral_pills .nav-pills .nav-link {
    color: #232323;
    background-color: var(--gray_color);
    border: 4px solid transparent;margin: 0 5px;
    font-weight: 500;
}
#gral_pills .nav-pills .nav-link.active {
    color: var(--main_clr);
    background-color: transparent;
    border: 4px solid var(--main_clr);
}

.dropdown-toggle::after {
    display: inline-block;
    vertical-align: unset;
    content: "\F282";
    font-family: "bootstrap-icons";
    font-size: 1vw;
    border: none;
    margin: 0 0 0 0.5vw;
}
.dropend .dropdown-toggle::after {
    display: inline-block;
    vertical-align: unset;
    content: "\F285";
    font-family: "bootstrap-icons";
    font-size: 1vw;
    border: none;
    margin: 0 0 0 0.5vw;
}

/************ NUEVO FORM GOOGLE ***********/

.input_hidden {display: none;}

#loading_oculto{
    z-index: 1050;
    position: fixed;
    top: 50%;
    left: 0;
    right: 0;
    visibility: hidden;
    transform: translate(0, -50%);
    background: rgb(0 0 0 / 50%);
    width: 100%;
    height: 100%;
    display: inline-flex;
    align-items: center;
}
#loading_oculto img{
    filter: var(--filter_w);
    width: 120px;
    margin: 0 auto;
}

/************ FIN NUEVO FORM GOOGLE ***********/

/************ RADIO INPUT CUSTOM ***********/

.radio-custom-label {
    display: block; 
    position: relative;
    padding-left: 35px;
    cursor: pointer;
    font-size: 15px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    margin: 10px 0 10px 10px;
}

.radio-inline+.radio-inline, .checkbox-inline+.checkbox-inline { margin-top: 0; margin: 10px 0 10px 10px; }
/* Hide the browser's default radio button */
.radio-custom-label input { position: absolute; opacity: 0; }
/* Create a custom radio button */
.radio-custom {
  position: absolute;
  top: 0;
  left: 0;
  height: 25px;
  width: 25px;
  border: 3px solid #ddd;
  border-radius: 5px;
  -webkit-transition: all 600ms ease-in-out;
  -moz-transition: all 600ms ease-in-out;
  -o-transition: all 600ms ease-in-out;
}
/* On mouse-over, add a grey background color */
.radio-custom-label:hover input ~ .radio-custom {
  	border-color: var(--main_clr);
	outline: 0;
	-webkit-box-shadow: none;
	box-shadow: none;;
}
/* When the radio button is checked, add a blue background */
.radio-custom-label input:checked ~ .radio-custom {
  background-color: transparent;
  border: 3px solid var(--main_clr);
}
/* Create the indicator (the dot/circle - hidden when not checked) */
.radio-custom:after { content: ""; position: absolute; display: none; }
/* Show the indicator (dot/circle) when checked */
.radio-custom-label input:checked ~ .radio-custom:after { display: block; }
/* Style the indicator (dot/circle) */
.radio-custom-label .radio-custom:after {
	top: 11px;
    left: 3px;
    width: 6px;
    height: 13px;
    content: '';
    border-top: 3px solid var(--main_clr);
    border-right: 3px solid var(--main_clr);
	-webkit-transform: scaleX(-1) rotate(135deg);
	   -moz-transform: scaleX(-1) rotate(135deg);
	    -ms-transform: scaleX(-1) rotate(135deg);
	        transform: scaleX(-1) rotate(135deg);
	-webkit-transform-origin: left top;
	   -moz-transform-origin: left top;
	    -ms-transform-origin: left top;
	        transform-origin: left top;
  	-webkit-animation: check 0.5s;
	   -moz-animation: check 0.5s;
	     -o-animation: check 0.5s;
	        animation: check 0.5s;
}
@-webkit-keyframes check { 0% { width: 0; height: 0;} 25% { width: 6px; height: 0;} 50% { width: 6px; height: 14px;}}
@-moz-keyframes check { 0% { width: 0; height: 0;} 25% { width: 6px; height: 0;} 50% { width: 6px; height:14px;}}	
@-ms-keyframes check { 0% { width: 0; height: 0;} 25% { width: 6px; height: 0;} 50% { width: 6px; height: 14px;}}
@keyframes check { 0% { width: 0; height: 0;} 25% { width: 6px; height: 0;} 50% { width: 6px; height: 14px;}}

/************ FIN RADIO INPUT CUSTOM ***********/


/*====================
======Header CSS=====
======================*/

#navigation .navbar {
    background: var(--gray_clr);
    border-radius: 0;
    border-bottom: 0;
    box-shadow: none;
    padding: 0;
    display: inline;
    z-index: 5;
}

.bg-dark {
    background: rgb(0 0 0 / 0%)!important;
    backdrop-filter: blur(0rem);
    padding: 0.5rem 0;
    box-shadow: var(--none_shadow);
}
.bg-dark.scrolled {
    background: rgb(0 0 0 / 70%)!important;
    backdrop-filter: blur(0.4rem);
    padding: 0.4rem 0;
    box-shadow: var(--main_shadow);
}

.logo {
    width: 200px;
    padding: 5px;
}

.top_menu {
    position: relative;
    background: #232323;
    color: #fff;
    font-size: 70%;
    display: flex;
    justify-content: flex-start;
    align-items: center;
}
.top_menu a {color: #fff;}
.top_menu a:hover {color: var(--main_clr);}

.top_info_ {padding: 5px 10px;margin: 0 5px 0 0;}
.top_info_:last-child {margin: 0;}
.top_info_:hover:last-child {background: transparent;}
.top_info_:hover {background: #111;}
.top_info_ a {color: #fff;}
.top_info_ a:hover {color: #fff;}

.social_i {
    display: inline-grid;
    position: relative;
    margin: 5px 20px 0 0;
}
.social_i a .fa-shop:focus, .social_i a .fa-shop:hover {color: var(--main_clr);}
.social_i a .fa-facebook:focus, .social_i a .fa-facebook:hover {color: #1877f2;}
.social_i a .fa-youtube:focus, .social_i a .fa-youtube:hover {color: #ff0000;}
.social_i a .fa-instagram:focus, .social_i a .fa-instagram:hover {color: #c13584;}

/********/

.dropdown-item {
  color: #fff;
}
.dropdown .dropdown-menu {
  display: none;
  background: #fcfcfc;
}
.dropdown:hover>.dropdown-menu, 
.dropend:hover>.dropdown-menu {
    display: block;
    right: 0;
    margin: 0;
    padding: 0;
    border: none;
    /*border-radius: 0 0 10px 10px;*/
    box-shadow: 0 5px 15px -5px rgb(0 0 0 / 30%);
    min-width: 240px;
}
@media screen and (min-width:769px) {
  .dropend:hover>.dropdown-menu {
    position: absolute;
    top: 0;
    left: 100%;
  }
  .dropend .dropdown-toggle {
    margin-left: .5em;
  }
}

#navigation .dropend .dropdown-toggle::after {
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    right: 10px;
}

#navigation .navbar-brand {padding: 0;}

#navigation .nav-link {text-transform: uppercase;background: transparent;color: #fff;font-family: "Saira", sans-serif;font-weight: 500;}
#navigation .nav-link:hover {background: #232323;color: #fff;}

#navigation .dropdown-menu li .nav-link {text-transform: uppercase;background: transparent;color: #232323;padding: 5px 25px 5px 10px;margin: 0;display: flex;align-items: center;white-space: break-spaces;font-size: 100%;}
#navigation .dropdown-menu li .nav-link span{display: block; font-size: 80%;}
#navigation .dropdown-menu li .nav-link:hover {background: transparent;color: var(--main_clr);}

#navigation .dropdown-item {
    text-transform: uppercase;
    color: #232323;
    padding: 5px 10px;
    white-space: break-spaces;
    display: flex;
    align-items: center;
    line-height: 1.1;
    font-family: "Saira", sans-serif;
    font-weight: 500;
}
#navigation .dropdown-menu li .nav-link img,
#navigation .dropdown-item img{
    width: 30px;
    height: 30px;
    margin: 0 5px 0 0;
}
#navigation .dropdown-menu li .nav-link:hover .clr_hvr,
#navigation .dropdown-item:hover .clr_hvr{
    filter: var(--filter_m)
}
#navigation .dropdown-item:hover {color: var(--main_clr);}

#navigation .navbar-toggler {
    margin: 0 10px;
    background: rgb(0 0 0 / 100%);
    color: #fff; 
}
#navigation .navbar-toggler:focus {
    box-shadow: none;
    background: rgb(0 0 0 / 50%);
}
#navigation .navbar-toggler-icon {
    background-image: url(../img/burg.svg);
}
#navigation .dropdown-item.active, #navigation .dropdown-item:active {
    color: var(--main_clr);
    text-decoration: none;
    background-color: transparent;
}

.catalogo_header {
    position: fixed;
    z-index: 1030;
    padding: 3rem;
    background: rgb(0 0 0 / 60%);
    backdrop-filter: blur(3px);
    width: 100%;
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
}
.card_catalogo {
    width: 80%;
    padding: 2rem;
}
.btn_x {
    width: 50px;
    height: 50px;
    position: absolute;
    left: 50%;
    right: 0;
    top: 0.5rem;
    background: transparent;
    border: 3px solid;
    color: #fff;
    font-weight: 800;
    font-size: 3vw;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    transform: translateX(-50%);
}
.btn_x:hover {
    background: var(--main_clr);
    border: 3px solid var(--main_clr);
    color: #fff;
}

/********/

/************ NUEVO BUSCADOR GENERAL ***********/

#finder_api {
    position: relative;
    min-width: 320px;
}
.img_result {
    width: 50px;
    height: 50px;
    object-fit: cover;
    margin-right: 10px;
}
.search_list_api {
    max-height: 300px;
    min-width: 320px;
    overflow-y: auto;
    border: 1px solid #dee2e6;
    border-radius: 0.25rem;
    background-color: #fff;
    position: absolute;
    z-index: 1030;
    color: #232323;
}
.search_item_api {
    padding: 10px;
    cursor: pointer;
    transition: background-color 0.2s;
}
.search_item_api:hover {
    background-color: #ddd;
}
.search_item_api.active {
    background-color: #ccc;
}


/** FOOTER SECTION **/

footer {
	background: #181818;
    padding: 20px 0;
    color: #fff;
    position: relative;
}
footer p {margin: 0;}
footer a {color: #fff;}
footer a:hover, footer a:focus {color: var(--main_clr);}

#footer_main {
    position: relative;
    z-index: 1029;
}

#ftr_btm {
    padding: 3em 0 1em;
    background-image: url(../img/bg_ftr_mdl.webp);
    background-attachment: fixed;
    position: relative;
    z-index: 1;
    color: #fff;
    overflow: hidden;
    background-size: cover;
}
#ftr_btm::before {
    background: linear-gradient(45deg, var(--scnd_clr), rgb(0 0 0 / 85%), var(--main_clr));
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    opacity: 1;
    mix-blend-mode: multiply;
}

#ftr_btm a {color: #fff;}
#ftr_btm a:hover {color: var(--main_clr);}

#ftr_btm .social_ {
    position: relative;
    z-index: 10;
    color: #fff;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 1vw;
}
#ftr_btm .social_ a {
    font-size: 2vw;
}
#ftr_btm ul {
    padding: 0;
    list-style: none;
}

.img_ftr_top {
    position: absolute;
    top: -1px;
    transform: rotate(180deg);
    filter: var(--filter_w);
}

#btm_last {
    padding: 15px;
    background: #232323;
    color: #fff;
    font-size: 80%;
    position: relative;
    z-index: 1;
    min-height: unset;
}
#btm_last p {margin: 0;text-align: center;}
#btm_last a {color:#fff;}
#btm_last a:hover,
#btm_last a:focus {
	color: var(--main_clr);;
}

.lamco_logo_ftr {
    width: 95px;
    filter: var(--filter_w);
}
#btm_last a:hover .lamco_logo_ftr {filter: var(--filter_m);}


/** FOOTER SECTION **/

/* NUEVO INDEX*/

#idx_top {
    position: relative;
    min-height: 100vh;
    padding: 5vw 0 0;
    z-index: 1;
    color: #fff;
    overflow: hidden;
}
#idx_top::before {
    background: linear-gradient(45deg, var(--scnd_clr), rgb(0 0 0 / 85%), var(--main_clr));
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    opacity: 1;
    mix-blend-mode: multiply;
}

#idx_top .video_bg_idx {position: fixed;}

.video_bg_idx {
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    z-index: -2;
    transform: translate(-50%, -50%);
    object-fit: cover;
}

.cont_main {
    position: relative;
    display: flex;
    align-items: center;
    width: 100vw;
    min-height: 100vh;
}

.cont_main:last-child {min-height: 70vh;}

.ttl_idx_top {
    font-size: 9.3vw;
    line-height: 0.8;
}
.ttl_idx_top span {
    -webkit-text-stroke: 0.4vw #fff;
    color: transparent;
    display: block;
    font-size: 155%;
}

.ttl_idx_top_ {
    font-size: 1.7vw;
    font-weight: unset;
}

.ttl_idx_model {
    position: absolute;
    top: 1vw;
    right: 0;
    font-size: 10vw;
    z-index: -1;
    color: transparent;
    -webkit-text-stroke: 0.2vw #fff;
}
.ttl_idx_model span {
    color: #fff;
    -webkit-text-stroke: unset;
    font-weight: 100;
    font-size: 20%;
    display: block;
    text-align: right;
    letter-spacing: 1vw;
    line-height: 0;
}

.img_obj_01 {
    position: absolute;
    top: 0;
    left: 0;
    filter: var(--filter_w);
    width: 70vw;
}
.img_obj_02 {
    position: absolute;
    bottom: -3vw;
    filter: var(--filter_w);
    z-index: -1;
}

#idx_bloq_01 {
    position: relative;
    padding: 2em 0
}

.filter_container {
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 300px;
    padding: 16px;
    background-color: #f8f9fa;
    border-radius: 8px;
    margin-bottom: 16px;
}

.filter_group {
    margin-bottom: 16px;
}

.filter_group label {
    font-weight: 700;
    font-family: "Saira", sans-serif;
    margin-bottom: 8px;
    display: block;
}

.form_range {
    width: 100%;
    accent-color: var(--main_clr);
}

.form_range::-webkit-slider-thumb {
    background: var(--main_clr);
    border: 2px solid var(--main_clr);
    cursor: pointer;
}

.form_range::-moz-range-thumb {
    background: var(--main_clr);
    border: 2px solid var(--main_clr);
    cursor: pointer;
}

.form_select {
    width: 100%;
    padding: 8px;
    border: 1px solid #d1d5db;
    border-radius: 4px;
    font-size: 14px;
}

.filter_group span {
    font-size: 12px;
    color: #4b5e58;
    margin-top: 4px;
    display: block;
}

.clear_button {
    background-color: var(--scnd_clr);
    color: #fff;
    padding: 8px 16px;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-size: 14px;
}
.clear_button:hover {
    background-color: var(--main_clr);
}

.cards_container {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
    gap: 1vw;
    overflow: auto;
}

.model_card {
    background-color: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 0.5rem;
    text-align: center;
    overflow: hidden;
    height: 20vw;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    position: relative;
}
.model_card a {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}
.model_card .model_image {
    width: 100%;
    max-width: 180px;
    height: auto;
    object-fit: contain;
}
.model_card:hover .model_image {
    transform: scale(0.95);
}

.model_title {
    font-size: 1.6vw;
    font-weight: 600;
    margin: 1rem 0 0;
}

.model_description {
    font-size: 1vw;
}

.no_results {
    text-align: center;
    color: #6b7280;
    font-size: 16px;
}

.model_card .model_ttl_cont {
    background: var(--main_clr);
    color: #fff;
    padding: 0 1rem;
    width: 100%;
    min-height: 7vw;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.model_card:hover .model_ttl_cont {
    background: var(--scnd_clr);
}

@media (min-width: 768px) {
    .filter_container {
        position: sticky;
        top: 16px;
    }

    .finder_container {
        display: flex;
        gap: 1rem;
        max-height: 30vw;
    }

    .cards_container {
        flex: 1;
    }
}

#idx_bloq_02 {
    background-image: url(../img/bg_01.webp);
    background-attachment: fixed;
    background-size: cover;
    position: relative;
    padding: 8vw 0;
    z-index: 1;
    color: #fff;
    overflow: hidden;
}
#idx_bloq_02::before {
    background: #000;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    opacity: 0.8;
}

.img_bloq_02_top {
    position: absolute;
    top: 0;
    filter: var(--filter_w);
}
.img_bloq_02_btm {
    position: absolute;
    bottom: -1px;
    filter: var(--filter_w);
    transform: rotate(180deg);
}

#idx_bloq_02 .btn_01 {background: var(--main_clr);}
#idx_bloq_02 .btn_01:hover {background: var(--scnd_clr);}

#idx_bloq_03 {padding: 2em 0;}

#idx_bloq_03 .btn_01 {background: var(--scnd_clr);}
#idx_bloq_03 .btn_01:hover {background: var(--main_clr);}

.size_img_crsl {
    min-height: 500px;
    aspect-ratio: 1;
    opacity: 0;
}

#crsl_idx_compact .caption {
    width: 100%;
    height: 100%;
    margin: 30px 0 0;
    position: absolute;
    bottom: 0;
    padding: 0 0 30px;
    right: 0;
    text-align: center;
    background: transparent;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
#crsl_idx_compact .caption .poss img {
    mix-blend-mode: multiply;
}

/* FIN NUEVO INDEX*/

/* MODELOS PANTALLA */

#top_mdl {
    background-image: url(../img/bg_top_model.webp);
    padding: 6em 2em 2em;
    background-size: cover;
    background-position: 50% 50%;
    z-index: 1;
    color: #fff;
    overflow: hidden;
    text-align: center;
    min-height: unset;
}
#top_mdl::before {
    background: linear-gradient(45deg, #094778, #045826);
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    opacity: 1;
    mix-blend-mode: multiply;
}
#top_mdl h1 {
    font-size: 3.5vw;
    margin: 0 0 1.5vw;
}

.img_btm_top {
    position: absolute;
    bottom: 0;
    left: 0;
    filter: var(--filter_w);
}

#mdl_bloq_01 {min-height: 65vh;display: flex;align-items: center;}

.fs_mdls {
    font-size: 1vw;
}
.features_mdl {
    display: flex;
    flex-direction: column;
    padding: 0;
    list-style: none;
}
.features_mdl li {
    display: flex;
    margin: 0 0 0.5rem;
    padding: 0 0 0.5rem;
    justify-content: space-between;
    border-bottom: 1px solid #efefef;
    gap: 1rem;
}
.features_mdl li:last-child {
    border-bottom: none;
    margin: 0;
}
.features_mdl li span {text-align: right;}
.fs_mdls hr {
    margin: 1vw auto;
    border-top: 2px solid var(--scnd_clr);
    width: 100%;
}

.table_mdls {
    font-size: 1vw;
}
.table_mdls tr td:first-child {
    width: 11vw;
}

.table_mdls_ {
    font-size: 1vw;
}
.table_mdls_ tr td:first-child {
    width: unset;
}

#model_pills .nav-pills .nav-link {
    color: #232323;
    background-color: #efefef;
    border: 3px solid transparent;
    margin: 0 5px 0 0;
    font-family: "Saira", sans-serif;
    padding: 0.2vw 0.5vw;
    font-size: 1vw;
    display: flex;
    align-items: center;
}
#model_pills .nav-pills .nav-link.active {
    color: var(--scnd_clr);
    background-color: transparent;
    border: 3px solid var(--scnd_clr);
}
#model_pills .tab-content>.tab-pane {
    max-height: 22vw;
    overflow: auto;
}

.thead_sticky {max-height: 22vw;}
.thead_sticky thead {position: sticky; top: 0; z-index: 1;}

.iframe_model_dmn {
    width: 100%;
    min-height: 330px;
}

#model_pills .btn_01 {
    font-family: "Saira", sans-serif;
    background: var(--scnd_clr);
    margin: 0;
    font-size: 1vw;
}
#model_pills .btn_01:hover {
    background: var(--main_clr);
}

.ttl_details {
    text-transform: unset;
    font-weight: 500;
}

.img_cert {
    position: absolute;
    right: 1.5rem;
    width: 8vw;
}

.glightbox-container {overflow: auto !important;}
.gscrollbar-fixer {margin-right: 0px !important;}
.glightbox {position: absolute;width: -webkit-fill-available;}
.gslide-media {background: transparent;border-radius: 1rem!important;overflow: hidden;box-shadow: none !important;}
.glightbox-mobile .goverlay, .goverlay { background: rgba(0 0 0 / 40%) !important;backdrop-filter: blur(5px);}

.dispo_cont {
    position: fixed;
    top: 0;
    background: rgb(0 0 0 / 60%);
    padding: 1rem;
    backdrop-filter: blur(5px);
    width: 100%;
    height: 100vh;
    z-index: 1031;
    display: flex;
    align-items: center;
    justify-content: center;
}

#cont_Dispo .btn_00 {
    position: absolute;
    top: 1rem;
    left: 50%;
    border: 2px solid;
    color: #fff;
    width: 2em;
    height: 2em;
    display: flex;
    justify-content: center;
    align-items: center;
    background: rgb(0 0 0 / 50%);
    transform: translate(-50%, 0);
}
#cont_Dispo .btn_00:hover {
    background: rgb(0 0 0 / 80%);
}

.dispo_data {
    background: #fff;
    padding: 0 1em 1em;
    border-radius: 1rem;
}

#cont_Dispo {transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;}
#cont_Dispo:not(.show) {opacity: 0;visibility: hidden;}
#cont_Dispo.show {opacity: 1;visibility: visible;}

.dispo_data h2 {
    display: flex;
    align-items: center;
    gap: 1rem;
}
.dispo_data p {
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid #ddd;
    padding: 0.5rem 0;
    gap: 1rem;
}
.dispo_data .price_ {
    display: flex;
    gap: 1rem;
    align-items: center;
    justify-content: space-between;
}
.dispo_data select {
    max-width: 12vw;
    text-align: right;
}
.img_mdl_dispo {width: 5vw;}

/* FIN MODELOS PANTALLA */

/* FORMULARIOS */

.form-floating .form-control:focus ~ label, .form-floating .form-control:not(:placeholder-shown) ~ label {
    transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
    padding: 1rem 0.5rem 0;
    background: transparent;
    line-height: 1;
    height: unset;
    font-size: 80%;
}

.bg_ttl {
    background-image: url(../img/bg_ttl.svg);
    background-size: cover;
    background-position: 100% 100%;
    padding: 1rem;
    margin: 0 0 1rem;
    position: relative;
    z-index: 0;
    border-radius: 1rem;
    overflow: hidden;
    color: #fff;
    text-shadow: 0 0 5px #000;
}
.bg_ttl::before {
    background: linear-gradient(45deg, var(--scnd_clr) 5%, var(--main_clr) 40%, #fff 70%);
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    opacity: 1;
    mix-blend-mode: hard-light;
}

#register_ .form-control:focus,#register_ .form-select:focus {border-color: var(--main_clr);}

/* FIN FORMULARIOS */

/* MANUAL DE MOTORES */

.manual {
    position: fixed;
    width: inherit;
    max-height: 80vh;
    overflow-y: auto;
    z-index: 10;
    left: 2em;
    top: 12em;
    padding: 0 10px 0 0;
}
.manual.scrolled {
    top: 6em;
}
.manual .btn_01 {
    margin: 0 auto 10px;
    background: #232323;
    padding: 5px 20px;
    width: 100%;
}
.sec_data {
    padding: 10px 20px;
    background: #f1f1f1;
    margin: 10px 0;
    border-radius: 10px;
}

.red_ {color: #e60000;}
.warn {
    color: #e60000;
    border: 4px solid #e60000;
    display: inline-flex;
    align-items: center;
    padding: 5px;
    margin: 0 10px 0 0;
    border-radius: 5px;
    font-size: 20px;
    font-weight: 500;
}
.warn i {margin: 0 5px 0 0;}
.align_txt {
    color: #e60000;
    align-items: center;
    display: inline-flex;
}

.btn_btns {
    background: var(--main_clr);
    font-size: 5vw;
    aspect-ratio: 1;
    width: 50px;
    border: none;
    border-radius: 50%;
    position: fixed;
    top: 7.5em;
    color: #fff;
    box-shadow: 0 0 5px rgb(0 0 0 / 45%);
}
.btn_btns:focus, .btn_btns:hover {
    background: var(--scnd_clr);
    color: #fff;
}

/* FIN MANUAL DE MOTORES */

/* MENSAJE ENVIADO */

#message_success {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
    margin: 0;
    background-image: url(../img/bg_send.webp);
    background-size: cover;
    background-position: 50% 50%;
    position: fixed;
    position: relative;
}
#message_success > .bg_overlay {
    background: linear-gradient(45deg, #000, var(--main_clr));
    opacity: 0.9;
    /*transition: background 0.3s, border-radius 0.3s, opacity 0.3s;*/
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    position: absolute;
}

.success-message {
    background-color: rgb(0 0 0 / 30%);
    padding: 30px;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    text-align: center;
    width: 100%;
    max-width: 650px;
    color: #fff;
}
.success-message h1 {
    color: var(--main_clr);
    font-size: 2em;
}
.success-message p {
    font-size: 1.2em;
    margin-top: 10px;
}
.success-message .btn_me {
    display: inline-block;
    padding: 10px 20px;
    background-color: var(--main_clr);
    color: white;
    text-decoration: none;
    border-radius: 5px;
    margin-top: 20px;
}
.success-message .btn_me:hover {
    background-color: #232323;
}

/* FIN MENSAJE ENVIADO */

/* FORMULARIOS GARANTIA */

.btn_next {
    background: var(--main_clr);
    border: none;
    padding: 0.5rem 2rem;
    margin: 1rem 0;
    border-radius: 5px;
    color: #fff;
}
.btn_next:hover {
    background: #232323;
    color: #fff;
}
.btn_next img {filter: var(--filter_b);}
.btn_next:hover img {filter: unset;}

.btn_prev {
    background: #efefef;
    border: none;
    padding: 0.5rem 2rem;
    margin: 1rem 0;
    border-radius: 5px;
    color: #000;
}
.btn_prev:hover {
    background: #232323;
    color: #fff;
}

.form-check {line-height: 1.5;position: relative;}

.custom-checkbox:checked {
    background-color: var(--main_clr);
    border-color: var(--main_clr);
}
.custom-checkbox:focus {
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}
.form-check-input:focus {
    border-color: var(--main_clr);
    outline: 0;
    box-shadow: 0 0 0 .2rem rgb(0 0 0 / 10%);
}

.modulo_formulario { display: none; }
.modulo_formulario.modulo_actual { display: block; }

.options_radio_form {
    display: flex;
    gap: 1rem;
    flex-direction: row;
    width: 100%;
}

/* Ocultar el radio original */
.form-check-input[type="radio"] {
    --bs-form-check-bg-image: none;
}
/* Estilo para la etiqueta cuando NO esta seleccionado */
.form-check-input[type="radio"] + .form-check-label::before {
    font-family: "bootstrap-icons";
    content: "\F272";
    color: transparent;
    background: transparent;
    vertical-align: middle;
    position: absolute;
    left: 2px;
    top: 7px;
    aspect-ratio: 1/1;
    height: 20px;
    border-radius: 50%;
    line-height: 1.1;
    font-size: 85%;
}
/* Estilo cuando esta seleccionado */
.form-check-input[type="radio"]:checked + .form-check-label::before {
    color: #fff;
    background: var(--main_clr);
}

.lbl_txt {
    display: flex;
    align-items: center;
    background: #efefef;
    padding: 5px 15px;
    border-radius: 5px 0 0 5px;
    font-size: 90%;
}
.invalid-feedback {width: unset;}

.tyc_forms {
    background: #efefef;
    padding: 2rem;
    border-radius: 1rem;
    border-left: 1rem solid var(--scnd_clr);
    font-size: 65%;
}
.tyc_forms a {color: #000;opacity: 0.15;}
.tyc_forms a:hover {color: #000;opacity: 0.7;}
.tyc_forms a .bi {
    position: absolute;
    right: 0.5rem;
    top: 0.5rem;
    font-size: 2rem;
}

.alert_form a {color: #ddd;}
.alert_form a:hover {color: var(--main_clr);}
.alert_form .bi {
    position: absolute;
    right: -20px;
    top: -20px;
    background: white;
    padding: 0.5rem;
    width: 40px;
    aspect-ratio: 1/1;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
}
.alert_cont_form {
    background: #f6f6f6;
    font-size: 80%;
    width: 80%;
    margin: 0 auto 1rem;
    padding: 1rem;
    border-radius: 1rem;
}
.alert_cont_form a {color: #999;}
.alert_cont_form a:hover {color: var(--main_clr);}
.alert_cont_form a .bi {
    position: absolute;
    right: 0;
    top: 0;
    background: transparent;
    width: unset;
}

/* FIN FORMULARIOS GARANTIA */

/* DISTRIBUIDORES */

#dealers {
    padding: 2vw 0 ;
}

#dealers .cont_dealers_map {
    display: flex;
    width: 70%;
    min-height: 500px; /* Minimum height to ensure visibility */
    margin: 0 auto;
    height: calc(100vh - 20vw); /* Adjust based on viewport height minus padding and header/footer */
    border-radius: 1rem;
    overflow: hidden;
}

#dealers .left-panel {
    width: 40%;
    padding: 20px;
    overflow-y: auto;
    border-right: 1px solid #ccc;
    background-color: #efefef;
    max-height: 100%; /* Ensure it doesn't overflow the container */
}

#dealers .right-panel {
    width: 60%;
    height: 100%; /* Ensure it takes full height of cont_dealers_map */
}

#dealers #map {
    width: 100%;
    height: 100%; /* Ensure map fills the right-panel */
    min-height: 400px; /* Minimum height as a fallback */
}

#dealers .search-bar {
    position: sticky;
    top: -20px;
    z-index: 10;
    margin: 0 -20px 20px;
    padding: 10px;
    border-bottom: 1px solid #eee;
    backdrop-filter: blur(10px);
}

#dealers .search-bar input {
    width: 100%;
    padding: 10px;
    font-size: 16px;
    border: 1px solid #ccc;
    border-radius: 4px;
    box-sizing: border-box;
}

#dealers .search-bar input:focus {
    outline: none;
    border-color: #007bff;
    box-shadow: 0 0 5px rgba(0, 123, 255, 0.5);
}

#dealers .search-count {
    font-size: 14px;
    color: #555;
    margin-top: 5px;
}

#dealers .store-list {
    list-style: none;
    padding: 0;
}

#dealers .store-item {
    padding: 10px;
    border-bottom: 1px solid #eee;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

#dealers .store-item:hover {
    background-color: #f1f1f1;
}

#dealers .store-item h3 {
    margin: 0 0 5px;
    font-size: 18px;
    display: flex;
    gap: 0.5rem;
    color: #333;
}

#dealers .store-item ul {
    list-style: none;
    padding: 0;
    margin: 10px 0 0 0;
}

#dealers .store-item li {
    position: relative;
    padding-left: 30px;
    margin-bottom: 8px;
    font-size: 14px;
    color: #666;
}

#dealers .store-item li i {
    position: absolute;
    left: 0;
    top: 2px;
    color: #007bff;
}

#dealers .info-window h3 {
    margin: 0 0 5px;
    font-size: 18px;
    display: flex;
    gap: 0.5rem;
    color: #333;
}

#dealers .info-window ul {
    list-style: none;
    padding: 0;
    margin: 10px 0 0 0;
}

#dealers .info-window li {
    position: relative;
    padding-left: 30px;
    margin-bottom: 8px;
    font-size: 14px;
    color: #666;
}

#dealers .info-window li i {
    position: absolute;
    left: 0;
    top: 2px;
    color: #007bff;
}

#dealers a {
    text-decoration: none;
    color: #007bff;
}

#dealers a:hover {
    text-decoration: underline;
}

#dealers .error-message {
    color: red;
    padding: 10px;
    display: none;
    background-color: #ffebee;
    border: 1px solid #ffcdd2;
    border-radius: 4px;
}

/* Responsive Design */
@media (max-width: 768px) {
    #dealers .cont_dealers_map {
        width: 90%;
        flex-direction: column;
        height: auto; /* Allow natural height */
        min-height: 400px; /* Ensure minimum visibility */
    }

    #dealers .left-panel {
        width: 100%;
        height: auto; /* Adjust height dynamically */
        border-right: none;
        border-bottom: 1px solid #ccc;
        max-height: 50vh; /* Limit to half viewport height */
    }

    #dealers .right-panel {
        width: 100%;
        height: 400px; /* Fixed height for map on mobile */
    }

    #dealers #map {
        min-height: 400px; /* Ensure map is visible */
    }
}

/* FIN DISTRIBUIDORES */

/* MODELO DE NEGOCIOS */

.map_dealers {
  position: relative;
  width: 100%;
}

.map_dealers > img {
  width: 100%;
  position: relative;
  margin: 0;
  padding: 0;
}

.map_dealers .map_dot {
	cursor: pointer;
	outline: none;
	z-index: 0;
	position: absolute;
	filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
	opacity: 1;
}

.map_dotz {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}
.dot_ {
    position: absolute;
    background: #232323;
    padding: 5px 15px;
    border-radius: 5px;
    box-shadow: 0 0 5px #61e8de;
    display: none;
}
.map_dealers a:hover, .map_dealers a {color: #fff;}

.img_dot {
    transform: scale(1);
    display: inline-flex;
    width: 18%;
    cursor: default!important;
}
.img_dot:hover {
    transform: scale(1.2);
}
#mod_dist {
    padding: 0;
    margin: -2em 0 5em;
}
#mod_dist .map_dealers h3 {
    margin: 3px 3px 0;
    font-size: 16px;
    letter-spacing: 0px;
    text-transform: uppercase;
}
#mod_dist .map_dealers .nav-pills>li.active>a, 
#mod_dist .map_dealers .nav-pills>li.active>a:focus, 
#mod_dist .map_dealers .nav-pills>li.active>a:hover {
    color: #fff;
    background-color: #232323;
}
#mod_dist .map_dealers a:hover, #mod_dist .map_dealers a {
    color: #fff;
    background: #232323;
    padding: 5px;
    width: 100%;
    display: block;
}

#mod_Dist_01, 
#mod_Dist_02, 
#mod_Dist_03, 
#mod_Dist_04, 
#mod_Dist_05, 
#mod_Dist_06, 
#mod_Dist_07 {
    position: fixed;
    z-index: 1035;
    background: #fff;
    color: #232323;
    top: 50%;
    right: 0;
    left: 0;
    width: 50%;
    padding: 5px 35px 15px;
    margin: 0 auto;
    border-radius: 0;
    transform: translate(0, -50%);
    box-shadow: 0 0 0 35em rgb(0 0 0 / 60%);
}
.md_ttl {
    background: #232323;
    color: #fff;
    padding: 10px 20px;
    position: relative;
    width: -webkit-fill-available;
    margin: 0 -35px 10px;
    top: -15px;
    font-size: 35px;
    text-transform: uppercase;
}
.md_i {
    color: #232323;
    position: absolute;
    top: -20px;
    left: 0;
    right: 0;
    text-align: center;
    font-size: 35px;
    animation: md_icon 2s linear infinite;
	-webkit-animation: md_icon 2s linear infinite;
}

@keyframes md_icon { 
    0% {transform: translate(0,-10px); opacity: 1;} 
    90% {transform: translate(0,0px); opacity: 0;} 
    100% {transform: translate(0,5px); opacity: 0;} 
}
@-webkit-keyframes md_icon { 
    0% {transform: translate(0,-10px); opacity: 1;} 
    90% {transform: translate(0,0px); opacity: 0;} 
    100% {transform: translate(0,5px); opacity: 0;} 
}
@-moz-keyframes md_icon { 
    0% {transform: translate(0,-10px); opacity: 1;} 
    90% {transform: translate(0,0px); opacity: 0;} 
    100% {transform: translate(0,5px); opacity: 0;} 
}

.btn_modelo_close {
    background: #1d5ca7;
    color: #fff;
    border-radius: 2em 10px 0 2em;
    position: absolute;
    top: 0;
    right: 0em;
    width: 40px;
    height: 40px;
    margin: 0;
    font-size: 20px;
    line-height: 0.1;
    z-index: 10;
}
.btn_modelo_close:hover,
.btn_modelo_close:focus {
	background: #232323;
	color: #fff;
}

/* FIN MODELO DE NEGOCIOS */

/* PROMOCIONES */

.flip_card {
  background-color: transparent;
  width: 14vw; 
  aspect-ratio: 9 / 16; 
  perspective: 1000px;
  padding: 0;
}

.flip_card_inner {
  position: relative;
  width: 100%;
  height: 100%;
  transition: transform 0.8s ease-in-out 600ms;
  transform-style: preserve-3d;
}

.flip_card:hover .flip_card_inner {
  transform: rotateY(180deg);
}

.flip_card_front, .flip_card_back {
  position: absolute;
  width: 100%;
  height: 100%;
  backface-visibility: hidden;
  border-radius: 0.5rem;
  overflow: hidden;
}

.flip_card_front {
  background-color: #fff;
}

.flip_card_front img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.flip_card_back {
  background-color: #000;
  transform: rotateY(180deg);
  display: flex;
  justify-content: center;
  align-items: center;
}

.flip_card_back iframe {
  width: 100%;
  height: 100%;
  aspect-ratio: 9 / 16;
  object-fit: cover;
  border: none;
}

/* FIN PROMOCIONES */

/* GALERÍA */

.video_gall {
    display: inline-block;
    width: 330px;
    position: relative;
    padding: 10px;
}
.video_gall .video_yt {
    margin: 0px auto;
}

/* FIN GALERÍA */

/* CONTACTO */

.contact-list {
  list-style: none; /* quitamos bullets nativos */
  padding-left: 0;  /* alineamos con borde */
}
.contact-list li {
  position: relative;
  padding-left: 40px; /* espacio para el icono */
  margin-bottom: 10px;
}
.contact-list li::before {
  font-family: "bootstrap-icons"; /* Fuente de Bootstrap Icons */
  position: absolute;
  left: 0;
  top: 0;
  font-size: 1.2em;
  color: var(--main_clr); 
}
.contact-list li:nth-child(1)::before {
  content: "\f32f"; /* código unicode de bi-envelope-fill */
}
.contact-list li:nth-child(2)::before {
  content: "\f5c1"; /* código unicode de bi-telephone-fill */
}

.cont_promo {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
    width: 100%;
    justify-content: space-between;
}
.cont_promo .cont_cc {
    display: flex;
    align-items: flex-start;
    width: 100%;
    border: 2px solid #ddd;
    font-size: 75%;
    border-radius: 10px;
    flex-direction: column;
    align-content: center;
    flex-wrap: wrap;
    padding: 0.5rem;
}
.cont_promo .cont_cc i {margin: 0 10px 0 0;}
.cont_promo .cont_cc h3 {margin: 0;font-size: 1.5rem;}
.cont_promo .cont_cc p {margin: 0;}

.btn_form {
    background: var(--main_clr);
    border: none;
    padding: 1rem 2rem;
    width: 100%;
    color: #fff;
    border-radius: 0.5rem;
}
.btn_form:hover {
    background: var(--scnd_clr);
}

/* FIN CONTACTO */

#mmodelo_ {
    background: rgb(0 0 0 / 50%);
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    z-index: 1031;
    backdrop-filter: blur(3px);
}
#mmodelo_ .btn_modelo_close {
    border-radius: 3em;
    top: 1%;
    left: 50%;
    width: 50px;
    transform: translate(-50%, 0);
    background: #232323;
}
#cont_gi, #cont_ft {
    background: rgb(0 0 0 / 50%);
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    z-index: 1031;
    backdrop-filter: blur(3px);
}
#mmodelo_ .modal-content {
    width: 95vw;
}
#mdl_pills .lb_ a img {
    border-radius: 1rem !important;
}

.btn_modelo_close {
    background: var(--main_clr);
    color: #fff;
    border-radius: 2em 10px 0 2em;
    border: none;
    position: absolute;
    top: 0;
    right: 0em;
    width: 60px;
    height: 50px;
    margin: 0;
    font-size: 30px;
    line-height: 0.1;
    z-index: 10;
}
.btn_modelo_close:hover,
.btn_modelo_close:focus {
	background: #232323;
	color: #fff;
}
.dispo_cp {
    display: block;
    margin: 0 auto;
    text-align: center;
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    background: #fff;
    width: fit-content;
    height: auto;
    padding: 1rem;
    border-radius: 1rem;
    transform: translate(0, -50%);
}
.dispo_form {
    display: block;
    margin: 0 auto;
    text-align: center;
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    background: #fff;
    width: 50%;
    height: auto;
    padding: 1rem;
    border-radius: 1rem;
    transform: translate(0, -50%);
}
.dispo_form .form-control {margin: 0 0 1rem;}
.ttl_model_ {
    font-size: 45px;
    text-transform: uppercase;
    margin: 0;
    font-weight: 700;
    color: var(--main_clr);
    line-height: 0.7;
    position: relative;
}
.ttl_model_ span {
    display: block;
    font-size: 80%;
    margin: 10px 0 0;
    color: var(--tird_clr);
}
.ttl_model {
    font-size: 45px;
    text-transform: uppercase;
    margin: 0 0 1em;
    font-weight: 700;
    color: var(--main_clr);
    line-height: 0.7;
    position: relative;
}

.ttl_02 {
    font-size: 40px;
    text-transform: uppercase;
    margin: 0 0 15px;
    font-weight: 400;
    color: var(--main_clr);
}

/*PANTALLA DISPONIBILIDAD*/

.card_dispo {
    position: relative;
    width: 100%;
    height: 100%;
    border: none;
    margin: 0 auto;
    border-radius: 0.5rem;
    overflow: hidden;
    display: flex;
    flex-direction: row;
    background: #fff;
}
.cont_data_dispo {
    width: 75%;
    height: 100%;
    overflow-y: auto;
}

.card_dispo_head {
    display: flex;
    background: #333;
    color: #fff;
    padding: 0.5rem;
    gap: 0.5rem;
    justify-content: space-between;
    align-items: center;
}
.card_dispo_head h2 {
    -webkit-text-stroke: 2px;
    font-size: 4vw;
    letter-spacing: 2px;
}
.card_dispo_head ul {
    padding: 0;
    list-style: none;
    margin: 0;
}
.card_dispo_head ul li {
    display: inline-block;
}
.card_dispo_head ul li:not(:last-child)::after {content: " - ";}
.card_dispo_body {
    background: #fff;
}
.cont_btns_dispo {display: flex;flex-direction: column;gap: 0.5rem;align-items: flex-end;}
.btn_dispo {
    border: 2px solid;
    color: #fff;
    min-width: 250px;
    background: rgb(0 0 0 / 0%);
    padding: 0.5rem;
    font-size: 90%;
    display: flex;
    justify-content: space-between;
    border-radius: 0.4rem;
}
.btn_dispo:hover {
    background: rgb(0 0 0 / 30%);
}
.cont_entrega {
    display: flex;
    justify-content: space-between;
    padding: 0 0 0 0.5rem;
    font-size: 75%;
    border: 0.5px solid #efefef;
    gap: 1rem;
    border-radius: 0.3rem;
    overflow: hidden;
    align-items: center;
    width: 100%;
}
.cont_precios {
    padding: 0.5rem;
    margin: 0;
    text-align: center;
    background: #f2f3f5;
    font-size: 1.2vw;
}
.data_highlight {
    background: var(--main_clr);
    color: #fff;
    padding: 0.5rem;
    width: 150px;
    display: block;
    text-align: center;
}

#dispo_pills .center_y_flex {
    background: #8d8ea3;
    padding: 0.5rem;
    margin: 0!important;
}
#dispo_pills .cont_promo {
    grid-template-columns: repeat(2, 1fr);
    padding: 1rem;
}
#dispo_pills .nav-pills .nav-link {
    color: #fff;
    background-color: rgb(0 0 0 / 15%);
    border: 4px solid transparent;
    margin: 5px;
    font-weight: 500;
    text-transform: uppercase;
}
#dispo_pills .nav-pills .nav-link.active {
    color: #fff;
    background-color: var(--main_clr);
    border: 4px solid var(--main_clr);
}
.btn_compra_dispo {
    background: var(--scnd_clr);
    color: #fff;
    padding: 0.8rem 1.5rem;
    margin: 5px 0 0;
    border-radius: 5px;
    border: none;
    font-weight: 500;
    text-transform: uppercase;
}
.btn_compra_dispo:hover {
    background: #1892a4;
}
#dispo_pills form {padding: 1rem;}
#dispo_pills .row_inputs .ipt {
    width: 50%;
    padding: 10px;
}
.cont_card_sales_dispo {padding: 1rem;}
.cont_card_sales_dispo a {color: #232323;}
.cont_card_sales_dispo a:hover {color: var(--main_clr);}
.card_sales_dispo {
    border: 1px solid #ddd;
    border-radius: 1rem;
    font-weight: 400;
    display: flex;
    gap: 0.5rem;
    align-items: center;
    flex-direction: row;
}
.card_sales_dispo img {width: 25%;}
.card_sales_dispo .cont_data_sales {padding: 1rem;}
.card_sales_dispo .cont_data_sales h4 {font-size: 2rem;}
.cont_card_sales_dispo ul {
  list-style: none; /* quita los bullets */
  padding: 0;
  margin: 0;
}
.cont_card_sales_dispo ul li {
  position: relative;
  padding-left: 28px; /* espacio para el ícono */
  margin-bottom: 0.5rem;
}
.cont_card_sales_dispo ul li:last-child {
  margin-bottom: 0;
}
.cont_card_sales_dispo ul li::before {
    font-family: "bootstrap-icons";
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    position: absolute;
    left: 0;
    top: 0;
    margin: 1px 0 0;
}
.cont_card_sales_dispo ul li.whatsapp::before {
  content: "\F618"; /* ícono WhatsApp */
  color: #25D366;
}
.cont_card_sales_dispo ul li.email::before {
  content: "\F32F"; /* ícono sobre (email) */
  color: #555;
}
.cont_precio_promo {
    background: var(--scnd_clr);
    margin: -0.5rem 0;
    padding: 0.5rem 1rem;
    color: #fff;
}
.cont_tabla_modelos {padding: 1rem}
#dispo_pills .table-responsive { max-height: 500px; overflow-y: auto; font-size: 90%;}
#dispo_pills thead th { position: sticky; top: 0; background: #151515; color: #fff; z-index: 1; }
.model-link { cursor: pointer; color: #232323; text-decoration: underline; }
.model-link:hover { color: var(--main_clr); }

#dispo_pills .form-range {
    width: 100%;
    accent-color: var(--main_clr);
}
#dispo_pills .form-range::-webkit-slider-thumb {
    background: var(--main_clr);
    border: 10px solid var(--main_clr);
    cursor: pointer;
}
#dispo_pills .form-range::-moz-range-thumb {
    background: var(--main_clr);
    border: 10px solid var(--main_clr);
    cursor: pointer;
}
#dispo_pills .form-range:focus::-webkit-slider-thumb {
  background-color: var(--main_clr);
  box-shadow: 0 0 0 0.25rem rgb(0 0 0 / 10%);
}
#dispo_pills .form-range:focus::-moz-range-thumb {
  background-color: var(--main_clr);
  box-shadow: 0 0 0 0.25rem rgb(0 0 0 / 10%);
}
#dispo_pills .form-label {
    font-size: 85%;
}
#dispo_pills small {
    font-size: 65%;
    background: #232323;
    padding: 0.3rem 0.5rem;
    border-radius: 0.2rem;
    color: #fff;
}
#dispo_pills .form-check-input {
    margin: 0;
    border: 1px solid #555;
}
#dispo_pills .form-check-input:focus {
    border-color: var(--main_clr);
    border: 1px solid var(--main_clr);
    outline: 0;
    box-shadow: 0 0 0 0.25rem rgb(0 0 0 / 10%);
}
#dispo_pills .form-check-input:checked {
    background-color: var(--main_clr);
    border-color: var(--main_clr);
}
.check_inventory {
    display: flex;
    gap: 0.5rem;
    font-size: 85%;
    align-items: center;
}
#dispo_pills .table td,
#dispo_pills .table th {
  white-space: normal !important; /* permite saltos de línea */
  word-wrap: break-word;          /* rompe palabras largas si es necesario */
}
#dispo_pills .table td:first-child,
#dispo_pills .table th:first-child {
  min-width: 215px;
  white-space: nowrap; /* evita que se rompa el texto */
}
#dispo_pills .table td:nth-child(2),
#dispo_pills .table th:nth-child(2) {
  min-width: 100px;
  white-space: nowrap; /* evita que se rompa el texto */
}
#dispo_pills .table td:nth-child(3),
#dispo_pills .table th:nth-child(3) {
    max-width: 140px;
    white-space: break-spaces!important;
}

.cont_data_dispo {
    width: 75%;
    height: 100%;
    overflow-y: auto;
}
.card_dispo_head {
    transition: opacity 0.3s ease;
}

.cont_promo_dispo {position: relative;width: 25%;aspect-ratio: 1/2.2;overflow: hidden;background: linear-gradient(45deg, var(--main_clr), var(--scnd_clr));}
.cont_promo_dispo::before {
  background: url("../img/USMotors-GIF.gif") center/cover no-repeat;
  content: "";position: absolute;inset: 0;filter: blur(12px);transform: scale(1.1);z-index: 0;opacity: 0.9;
}
.cont_promo_dispo::after {
  background: url("../img/USMotors-GIF.gif") center/contain no-repeat;
  content: "";position: relative;display: block;width: 100%;height: 100%;z-index: 1;
}
.cont_mmodel {padding: 2em;}

/* Estilos para el contenedor de disponibilidad especial */
.special-availability-container {
    text-align: center;
    padding: 2rem 0 0;
    background: transparent;
    margin: 0;
    max-width: 100%;
}

.special-model-title {
    color: #dc3545;
    margin-bottom: 20px;
    font-size: 2.2rem;
    font-weight: bold;
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.1);
}

.special-model-title i {
    margin-right: 10px;
}

.special-model-description {
    font-size: 1.2rem;
    margin-bottom: 30px;
    color: #6c757d;
    line-height: 1.6;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
}

.special-buttons-wrapper {
    margin-bottom: 25px;
}

.special-btn {
    border-radius: 25px;
    padding: 15px 35px;
    font-size: 1.1rem;
    font-weight: 600;
    text-decoration: none;
    display: inline-block;
    margin: 5px;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
}

.special-btn i {
    margin-right: 8px;
}

.cotizar-btn {
    background: linear-gradient(45deg, #28a745, #20c997);
    border: none;
    color: white;
    box-shadow: 0 4px 15px rgba(40, 167, 69, 0.3);
}

.cotizar-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(40, 167, 69, 0.4);
    color: white;
}

.contactar-btn {
    color: #007bff;
    border: 2px solid #007bff;
}

.contactar-btn:hover {
    background: #007bff;
    color: white;
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(0, 123, 255, 0.4);
}

.special-note {
    background: #fff3cd;
    border: 1px solid #ffeaa7;
    padding: 15px;
    margin-top: 20px;
}

.special-note small {
    color: #856404;
}

.special-note i {
    margin-right: 5px;
}

/* Responsive para móviles */
@media (max-width: 768px) {
    .special-availability-container {
        padding: 30px 15px;
    }
    
    .special-model-title {
        font-size: 1.8rem;
    }
    
    .special-model-description {
        font-size: 1rem;
    }
    
    .special-btn {
        padding: 12px 25px;
        font-size: 1rem;
        display: block;
        margin: 10px auto;
        width: 100%;
        max-width: 250px;
    }
    
    .special-buttons-wrapper {
        display: flex;
        flex-direction: column;
        align-items: center;
    }
}

/* Estilos para el contenedor no_dispo_ */
.no_dispo_ {
    text-align: justify;
    padding: 0.5rem 20px;
    background: linear-gradient(270deg, #999, transparent);
    position: relative;
    display: block;
    visibility: visible;
}

/* Estilos para el título dentro de no_dispo_ */
.no_dispo_ h2 {
    color: var(--tird_clr);
    margin-bottom: 1rem;
    font-size: 3.5vw;
    font-weight: 800;
}
.no_dispo_ h2 span {
    display: block;
    font-size: 45%;
    text-transform: capitalize;
    color: #888;
    font-weight: 600;
}

/* Estilos para el párrafo de descripción */
.no_dispo_ p.description {
    margin-bottom: 20px;
    color: #6c757d;
}

/* Estilos para el párrafo de acción */
.no_dispo_ p.action {
    font-size: 1.2rem;
    font-weight: bold;
    color: #343a40;
    margin-bottom: 1rem;
}

.price_ .form-select {font-size: 125%;font-weight: 400;text-align: center;}