@charset "utf-8";
/* CSS Document */

@import url('https://cdn-uicons.flaticon.com/3.0.0/uicons-regular-straight/css/uicons-regular-straight.css');
@import url('https://cdn-uicons.flaticon.com/3.0.0/uicons-brands/css/uicons-brands.css');
@import url('https://fonts.googleapis.com/css2?family=Lexend:wght@100..900&family=Public+Sans:ital,wght@0,100..900;1,100..900&display=swap');

@font-face {
    font-family: 'General Sans Regular';
    font-style: normal;
    font-weight: normal;
    src: local('General Sans Regular'), url('../fuentes/GeneralSans-Regular.woff') format('woff');
    }
 @font-face {
    font-family: 'General Sans Light';
    font-style: normal;
    font-weight: 200;
    src: local('General Sans Light'), url('../fuentes/GeneralSans-Light.woff') format('woff');
    }

/*--------*/

* {outline:0; padding:0; margin:0; box-sizing: border-box;}
html {font-size: 62.5%; }

body { font-family:"Public Sans", sans-serif; overflow-x:hidden !important; background:#0D0D0D; }
main { width:100%; clear:both; font-size:1.6rem; }
a {color:#49b276; text-decoration:none; display:inline-block;} a:hover {color:#A1D3EC; } 
strong { color:#b56f40; }
b { color:#0f3834; }
i { color:#49b276; } 
p { padding:.5em 0; line-height:2.1rem; width:100%; color:#fff; font-size:1.6rem;} p i {margin-left:-.5em;} 
button {border:0; background:none; color:#fff; font-size:1.6rem; cursor:pointer;}
li {color: #fff!important;}

h1 {font-size:5rem; line-height:4.8rem; color:#fff; padding:.7em 0; width:100%; font-family:"General Sans Light", sans-serif; } 
h2 {font-size:4rem; line-height:4.1rem; color:#fff; padding:.6em 0; width:100%; font-family:"General Sans Regular", sans-serif; } 
h3 {font-size:2.6rem; line-height:2.5rem; color:#fff; padding:.5em 0; width:100%; font-family:"General Sans Light", sans-serif; font-weight: 100;} 
h4 {font-size:2.2rem; line-height:2rem; color:#fff; padding:.5em 0; width:100%; font-family:"Lexend", sans-serif; } 
h5 {font-size:1.4rem; line-height:1.6rem; color:#fff; padding:.4em 0; width:100%; font-family:"Lexend", sans-serif; } 
h6 {font-size:1.2rem; line-height:1.3rem; color:#fff; padding:.4em 0; width:100%; font-family:"Lexend", sans-serif; } 

.boton { padding:.8em 1.2em; margin: .6em; color:#fff; text-align: center; background:#0f3834; font-size:1.8rem; text-align:center; cursor:pointer; border-radius: 12px; } 
.boton i {color:#fff !important; font-size:1.8rem; padding: .4em 0em 0em .5em;}
.boton:hover { color:#fff; background:#b56f40; }

.boton-2 { padding:.8em 1.2em; margin: .6em; color:#fff; text-align: center; background:#b56f40; font-size:1.5rem; text-align:center; cursor:pointer; border-radius: 12px; } 
.boton-2 i {color:#fff !important; font-size:1.6rem; padding: .4em 0em 0em .5em;}
.boton-2:hover { color:#fff; background:#0f3834; }

#arriba { display:none; position:fixed; bottom:2em; right:30px; z-index:20; background:#0f3834; color:#fff; cursor: pointer; padding:13px  8px 10px 8px; border-radius:50px; border:0; box-shadow:0 3px 3px 0 rgba(0,0,0,0.5); line-height:18px; font-size:1.5rem;}
#arriba i {color: #fff;}
#arriba:hover {  background:#49b276; color:#0f3834; }
#arriba:hover i {color: #0f3834;}

.color-1 {color: #026FA7!important;}
.color-2 {color: #45A429!important;}

.izquierda {text-align:left !important;}
.derecha {text-align:right !important;}
.centrado {text-align: center;}
.oculto { display:none !important; }

.listas ul {list-style: none; padding: 0; margin: 0;}
.listas li {list-style: none; font-size: 1.6rem; text-indent: -1.8rem; padding-left: 1.5rem;}
.listas i {color: #095E95;}

.back2 {background:#F5E7FF; width:100%; display:flex; justify-content:space-evenly; flex-wrap:wrap; align-items:center; padding:2em 0; }

.col-2, .col-3, .col-4, .col-40, .col-30, .col-50, .col-60, .col-80, .col-90, .col-25, .col-75 {min-height:50px;  padding:1em .5em; }

/*------------------Social Menu--------*/

.social-section {
  padding: 20px 0;
  display: flex;
  justify-content: center;
}

.icon-list {
  display: flex;
  gap: 14px; /* Espacio entre los círculos */
  list-style: none;
  padding: 0;
}

.icon-link {display: flex;align-items: center;justify-content: center;
  width: 40px;
  height: 40px;
  background-color: #000;
  color: #333;
  border-radius: 50%;
  text-decoration: none;
  font-size: 18px;
  transition: all 0.3s ease;
  box-shadow: 0 3px 5px rgba(0,0,0,0.1);
}

/* Efecto Hover para darle vida */
.icon-link:hover {
  background-color: #0f3834;
  color: white;
  transform: translateY(-5px);
  box-shadow: 0 8px 12px rgba(0,0,0,0.2);
}

/*---------------------footer-----------*/
footer { width:100%; min-height:100px; clear:both; text-align:center; font-size:1.5rem; padding-bottom:3em;  background:#0D0D0D; }
footer .col {align-items:center; justify-content:center; margin-top:0;}

/*----- form ----*/

.form-card { background: 000; max-width: 800px; margin: auto; padding: 25px; border-radius: 9px; shadow: 0 2px 10px rgba(0,0,0,0.1); }
.section-title { color: #b56f40; border-bottom: 2px solid #333333; padding-bottom: 10px; margin-top: 25px; }
.question { margin-bottom: 20px; }
label { display: block; margin-bottom: 5px; font-weight: bold; color: #fff; }
.options label { font-weight: normal; display: flex; align-items: center; gap: 10px; cursor: pointer; }
input[type="text"], input[type="email"], input[type="tel"] { width: 100%; padding: 8px; margin-bottom: 15px; border: 1px solid #333333; border-radius: 4px; }

/*--------------------- Extras --------*/

.clear {width:100%; height:1px;}
.white {color:#fff;}

.icon { font-size:4rem; }
.foto { width:100%;} .foto2 {box-shadow:0 0 10px rgba(0,0,0,.5); border-radius:1.5em;} .foto3 {box-shadow:0 0 10px rgba(0,0,0,.5);}	
.foto_pantalla {width:100%; box-shadow:0 0 5px rgba(0,0,0,.3); margin:1em 0;}

.imagen-1 {border-radius: 0px 30px 0px 30px; box-shadow:0 0 10px rgba(0,0,0,.2); width: 85%; }
.imagen-2 {border-radius: 20px 0px 20px 0px; width: 100%; margin-bottom: 15px; }

main table {text-align:left;  font-size:1.6rem; line-height:2.5rem; width:100%; } 

.separador {width:100%; height:50px;}
.separador2 {width:100%; height:5px; }

/* Style the buttons that are used to open and close the accordion panel */
.accordion { background-color: #D1E9FF; color: #444; cursor: pointer; padding: 18px; width: 100%; text-align: left; border: none;outline: none; transition: 0.4s; }

/* Add a background color to the button if it is clicked on (add the .active class with JS), and when you move the mouse over it (hover) */
.active-accordion, .accordion:hover {background-color: #84CAFF;}

.accordion:after { content: '\02795'; /* Unicode character for "plus" sign (+) */ font-size: 14px; color: #000; float: right; margin-left: 5px; }

.active-accordion:after { content: "\2796"; /* Unicode character for "minus" sign (-) */ }

/* Style the accordion panel. Note: hidden by default */
.panel { padding: 0 18px;background-color: white;display: none; overflow: hidden; }

.negro {width:100%;  background:#000;   }
.negro p, .negro li, .negro h1, .negro h2, .negro h3, .negro h4  { color:#fff; } 
.negro i {color: #13AFE5;}

.negro-style {width:100%; min-height:400px; background: #000 url("../images/bg-negro.svg") top center repeat-y fixed; background-size:contain;  }
.negro-style p, .negro-style li, .negro-style i, .negro-style h1, .negro-style h2, .negro-style h3, .negro-style h4  { color:#fff; } 

.blanco {width:100%; background: #fff; min-height:400px; background-size:contain; border-radius: 0px 0px 20px 0px; padding: 1em; }
.blanco-2 {width:100%; background: #fff; min-height:300px; background-size:contain; border-radius: 30px 0px 30px 0px; padding: 1em; } 
.blanco-bg {width:100%; background: #fff; }

.vd-cta {width:100%; align-content: center; text-align: center; padding: 2em; margin: 1em; border-radius: 22px; background: #6ABE51 url("../images/bg-vd.png") top left; }
.vd-cta p, .vd-cta li, .vd-cta h1, .vd-cta h2, .vd-cta h3, .vd-cta h4 { color:#fff; } 

.gris1 {width:100%; background:#F8F8F8 !important; color: #434D4E; } .gris1 h3 {color: #434D4E !important;} .gris1 p {color: #434D4E !important;}
.gris2 {width:100%; background:#3C5066 !important; color: #fff; } .gris2 h3 {color: aliceblue !important;} .gris2 p {color: #fff !important; font-size: .85em;}

.sombra {box-shadow:0 3px 3px rgba(0,0,0,.5); }

.box-blue {padding: 1em; height: 316px; border-radius: 18px; border: solid 0.6px #A6A6A6; margin: .5em; background: rgba(9,94,149,0.10); box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px; }
.box-blue a:hover {background:#A1D3EC; }

.box-white {padding: 1em; border-radius: 18px; border: solid 0.6px #fff; background: #fff; box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px; }
.gris3 {width:100%;  background: #EEEEEE;  }

/*-------------------------------------- WEB--*/

@media screen and (min-width:1025px){
		
main {padding-top:0px;}
header { width:100%; background:#2B569E; text-align:center; display:fixed; flex-wrap:wrap; justify-content:center; align-items:center; } 

.top {text-align:right; width:auto; padding:.5em 0; font-size:1.8rem; position: fixed; right:0; top:0; z-index:1001;  }
.top ul {padding:.5em 0; margin-right:1em; margin-bottom: 0.5em; }
.top li {display:inline; padding:.5em 0; }
.top a:hover img {filter:invert(1);}
.top a:hover i {color:#000;}
	
#banner {width:100%; height:100%; background:rgba(0,0,0,.8); position:fixed; z-index:20; display:none; } 		
.bannerIn {width:800px; min-height:500px; position:absolute; z-index:21; background:#fff; top:5%; left:50%; margin-left:-400px; border-radius:3em; padding:1em 2em;  } 	
.bannerIn2 {width:500px; height:auto; position:absolute; z-index:21; background:#fff; top:5%; left:50%; margin-left:-250px; border-radius:3em; padding:1em 2em;  } 	
.bannerIn iframe {border-radius:1em; margin:4em 0 2em 0;}	
	
nav { width:100%; font-size:1.2rem; color: #fff; position: fixed; z-index:1000; }
nav ul { width:auto; height:auto; color:#fff; background: #2B569E; padding:1.5em; display:flex; justify-content:center; flex-wrap:wrap; align-items:center;  }
nav li {list-style: none; padding:0 .5em;}	
nav a { padding:.4em .8em; color:#fff; text-decoration:none; font-size: 1.5rem; font-weight: 600; line-height:1.6rem; text-transform:uppercase;  }
nav a:hover { color:#45A429; } 	
nav a span { color:#000 !important;} nav a:hover span {color:#095E95!important;}
nav .last {border:none; } nav .last2 {border:none; margin:0 2em 0 3em;}		
.active { color:#6ABE51; }  .active span {color:#434D4E !important;}	

.sep-nav {margin-left:4em;}
	
.dropbtn { padding:1.1em 3em 1em 3em; cursor:pointer; }
.dropdown {  display:inline-block;   }
.dropdown:hover .dropdown-content, .dropdown:hover .dropdown-content2  { display: block; box-shadow: 3px 1px 30px 1px rgba(0,0,0,0.20); }	
	
.dropdown-content { display:none; position:absolute; z-index:20; text-align:left; background-color:#fff;  margin-top:0; padding:2em 3em 2em 3em; border-bottom-left-radius:.5em; border-bottom-right-radius:.5em; }	
.dropdown-content .uno { width:300px; float:left; height:auto;  padding:0; margin-right:1em;  }
.dropdown-content .dos { width:300px; float:left; height:auto;  padding:0;  }
.dropdown-content p { margin-bottom:.5em; font-size: 1.2em;}	
.dropdown-content a {color:#13AFE5; width:100%; text-decoration:none; display:inline-block; padding:.5em 0em !important; font-size:1.5rem;   }
.dropdown-content a:hover { background:#FFF; color:#000; border-top:0; }
.dropdown-content i {color: #6ABE51!important;}
	
.drop-active { color:#6ABE51 !important;}	.drop-active img { background:#000;}
		
.menu-fixed { position:fixed; z-index:1000; width:100%; top:0; }	
	
.hero { width:100%; height:auto; padding-top: 6em; display:flex; flex-wrap:wrap; align-items:flex-start; background: url("../images/monte.jpg") right top no-repeat; background-size:cover;}
	
.col {width:1240px; margin:0 auto; display:flex; justify-content:space-around; flex-wrap:wrap; align-items:center; padding:2em 0; }
.col-2 {width:600px;} 
.col-3 {width:408px;}
.col-4 {width:304px;}
.col-50 {width:48%; }
.col-20 {width:20%;}
.col-25 {width:24%;}
.col-30 {width:30%;}
.col-70 {width:68%;}
.col-90 {width:90%;}
.col-80 {width:80%;}
.col-75 {width:75%; }
.col-60 {width:60%;}
.col-66 {width:66%; }
.col-40 {width:40%;}
.col-33 {width:33%;}
	
.izquierda {text-align:left !important;}
.derecha {text-align:right !important;}
.oculto { display:none !important; }	

.porcentaje {font-size:6rem; line-height:6rem; color:#272C66; width:auto; text-align:center; font-family:inter; }
.porcentaje2 {  width:180px; font-family:inter; border-radius:10em; padding:3em 3em; text-align:center;  }	
	
#uno {position:absolute; top:0; left:0;}
#dos {position:absolute; top:7em; left:7em;}
#tres {position:absolute; top:2em; right:4em;}
#cuatro {position:absolute; top:11em; right:0;}	

.azul { padding:2em; }
	
}


/*-------------------------------------- movil--*/ 

@media screen and (max-width:450px){
	
header {width:100%; min-height:62px; background:#fff; z-index:9; position:fixed; display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; border-bottom:1px solid #ccc;}
.logo {padding:0px; width:50%; margin-left: 6px; }	
main { padding:0;}
	
.col { width:100%; padding:.5em 4%; display:flex; flex-wrap: wrap; justify-content:space-evenly; }		
.col-2, .col-7, .col-3, .col-4, .col-5, .col-6, .col-8, .col-50, .col-20, .col-25, .col-30, .col-40, .col-70, .col-80, .col-90, .col-75, .col-60, .col-33  {width:100% !important; margin-bottom:1em;}

h1 {font-size:3.2rem; line-height:3.6rem; padding:.5em 0em;}
h2 {font-size:2.6rem; line-height:2.8rem; padding:.4em 0em;}
h3 {font-size:2.2rem; line-height:2.5rem; padding:.4em 0em;}
h4 {font-size:1.8rem; line-height:2rem; padding:.4em 0em;}
	
.menu_movil {width:15%; z-index:30; padding:0; margin:0;  cursor:pointer;  }
.btn_menu { padding:0; width:100%; color:#ffc60c; font-weight:normal; font-size:2.8rem; } 
	
nav {position:absolute; z-index:11; }		
nav ul { width:100%; left:-100%;  border:none; position:fixed; padding:0; top:0; background:#fff; color:#000; margin-top:65px; } 
nav li {display:block; float:none; text-align:left; width:100%; border-right:none; border-bottom:1px solid #ccc; padding-left:2em; }
nav a { font-size:1.4rem; padding:.8em 0; color:#000; width:100%; display:inline-block;  text-transform:uppercase;}
nav span { color:#000;}
.active { color:#095E95;}  .active span {color:#095E95 !important ;}	 
nav .boton, nav .boton2, nav .boton3 {border-radius:0; border:0; }	
.last {width: 100%;}	
	
.dropdown-content {display:block; padding-left:2em;}
.dropdown-content a { display:inline-block; padding:.8em 0; }
	
#banner {width:100%; height:100%; background:rgba(0,0,0,.8); position:fixed; z-index:20; display:none; } 	
.bannerIn, .bannerIn2 { width:90%; left:5%; position:absolute; z-index:21; top:3%; border-radius:2em; background:#fff; padding:1em; overflow-y:visible; } 	 	
.bannerIn iframe {border-radius:1em; margin:4em 0 2em 0;}				
	
.hero { width:100%; height:auto; padding-top: 2em; background: url("../images/monte.jpg") center top no-repeat; background-size:cover;}

main table { font-size:1.4rem;}	

.izquierda2 {text-align:left;}
.orden1 { order:1;} .orden2 { order:2;} .orden3 { order:3;} .orden4 { order:4;} .orden5 { order:5;} .orden6 { order:6;}	
.porcentaje {font-size:5rem; line-height:5rem; color:#272C66; width:50%; text-align:center; font-family:inter; margin:0 auto;}
.porcentaje2 {  width:180px; font-family:inter; border-radius:10em; padding:3em 3em; text-align:center;  }	

#uno, #dos, #tres, #cuatro {margin:1em auto;}
	
footer .logotipo {width:250px;}

.centrado2 {text-align: center;}	

.gris-textura { padding: 1em; height: auto; }	
.tabs-container{width:98%;border-radius:18px;}.tab{display:flex;align-items:center;padding:.5rem 1rem;}
.tab-indicator{width:12px;height:12px;border-radius:50%;border:2px solid #ccc;margin-right:.5rem;box-sizing:border-box}
.tabs-content{padding:1rem}	
}


/*-------------------------------------- tablet --*/ 

@media screen and (min-width:451px) and (max-width:1024px){
	
header {width:100%; min-height:60px; background:#fff; z-index:9; position:fixed; display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; border-bottom:1px solid #ccc;}
.logo {padding:0px 0px 0px 16px; width:60%; margin-left: 0.5em; }	
main { padding:0;}

h1 {font-size:4rem; line-height:4.2rem; padding:.8em;}
h2 {font-size:3.2rem; line-height:3.3rem; padding:.8em;}
h3 {font-size:2.5rem; line-height:2.5rem; padding:.6em;}
h4 {font-size:2rem; line-height:1.8rem; padding:.5em;}	
	
.menu_movil {width:auto; z-index:20; position:absolute; padding:.5em 1em 0em 1em; margin:0;  cursor:pointer; top:5px; right:25px;  }
.btn_menu { padding:0; color:#e0b123; text-decoration:none; font-weight:normal; font-size:3.2rem;} 

nav {position:absolute; z-index:60; width:100%; }		
nav ul { width:100%; left:-100%;  border:none; position:absolute; padding:0; top:22px; background:#fff; color:#000; border-bottom:1px solid #6f78de;  padding-bottom: 2em;   } 
nav li {display:block; float:none; text-align:left; width:100%; border-right:none; border-bottom:1px solid #6f78de; padding-left:3em; }
nav a { font-size:1.4rem; padding:.8em 0; color:#000; width:100%; display:inline-block;  text-transform:uppercase;}
nav span { color:#000;} 
nav .last { border:none;}
nav img {display:none;}
	
.hero { width:100%; height:auto; padding-top: 4em; background: url("../images/monte.jpg") right top no-repeat; background-size:cover;}
	
.dropbtn { color:#FFF; background:rgba(255,251,240,0); border: none; cursor: pointer; padding-bottom:.55em;  }
.dropdown { display:inline-block;}
.dropdown:hover .dropdown-content {display:block;}	
	
.dropdown-content {display:block;}
.dropdown-content a { display:inline-block; padding:.7em 0; }
	
.col { width:98%; padding:1em 2%; display:flex; flex-wrap:wrap; justify-content:space-evenly; align-items:center;  }	
.col-7 {width:14.2%;}
.col-2 {width:48%;}
.col-3 {width:31%;}
.col-4 {width:25%;}
.col-5 {width:200px;}
.col-6 {width:200px;}
.col-20 {width:20%;}	
.col-25 {width:25%;}
.col-30 {width:30%;}
.col-33 {width:33%;}	
.col-40 {width:40%;}	
.col-50 {width:48%;}
.col-60 {width:60%;}		
.col-70 {width:70%;}	
.col-75 {width:75%;}
.col-80 {width:80%;}
.col-90 {width:90%;}	

.slider { width:100%; height:auto; padding: 3em 0em 1em 0em; display:flex; justify-content:flex-start; flex-wrap:wrap; align-items:center; }
	.box-blue {height: auto; padding: 1em;}
	
}


@media (max-width:450px){.hide-small{display:none!important}}
@media (min-width:451px) and (max-width:1024px){.hide-medium{display:none!important}}
@media (min-width:1025px){.hide-large{display:none!important}}

.animate-fading{-webkit-animation:fading 1s;animation:fading 1s}
@-webkit-keyframes fading{0%{opacity:0}100%{opacity:1}}
@keyframes fading{0%{opacity:0}100%{opacity:1}}
.animate-opacity{-webkit-animation:opac 1s;animation:opac 1s}
@-webkit-keyframes opac{from{opacity:0} to{opacity:1}}
@keyframes opac{from{opacity:0} to{opacity:1}}
.animate-top{position:relative;-webkit-animation:animatetop 0.4s;animation:animatetop 0.4s}
@-webkit-keyframes animatetop{from{top:-300px;opacity:0} to{top:0;opacity:1}}
@keyframes animatetop{from{top:-300px;opacity:0} to{top:0;opacity:1}}
.animate-left{position:relative;-webkit-animation:animateleft 0.4s; animation:animateleft 0.4s}
@-webkit-keyframes animateleft{from{left:-1000px;opacity:0} to{left:0;opacity:1}}
@keyframes animateleft{from{left:-1000px;opacity:0} to{left:0;opacity:1}}
.animate-right{position:relative;-webkit-animation:animateright 0.8s;animation:animateright 0.8s}
@-webkit-keyframes animateright{from{right:-300px;opacity:0} to{right:0;opacity:1}}
@keyframes animateright{from{right:-300px;opacity:0} to{right:0;opacity:1}}
.animate-bottom{position:relative;-webkit-animation:animatebottom 0.8s;animation:animatebottom 0.8s}
@-webkit-keyframes animatebottom{from{bottom:-300px;opacity:0} to{bottom:0px;opacity:1}}
@keyframes animatebottom{from{bottom:-300px;opacity:0} to{bottom:0;opacity:1}}
.animate-zoom {-webkit-animation:animatezoom 0.6s;animation:animatezoom 0.6s}
@-webkit-keyframes animatezoom{from{-webkit-transform:scale(0)} to{-webkit-transform:scale(1)}}
@keyframes animatezoom{from{transform:scale(0)} to{transform:scale(1)}}
.animate-input{-webkit-transition:width 0.4s ease-in-out;transition:width 0.4s ease-in-out}.animate-input:focus{width:100%!important}