@charset "utf-8";
/****************************GENERAL****************************
***************************************************************/
html, body { min-width: 980px; height: 100%; font-family: 'Lato', sans-serif; }
body { color: #7a7a7a; font: 100%/1.25em Arial, Helvetica, sans-serif; position: relative; margin: 0; width: 100%; background: url(../images/splash.png) no-repeat center -653px #EAEAEA; }
.main { width: 940px; margin: 0 auto; font-size: 0.75em; }
#main-first{margin-top:-126px;}
.clearfloat { clear: both; height: 0; font-size: 1px; line-height: 0px; }
#header { height: 145px; position: relative; z-index: 9400; }
#contenido { min-height: 100%; height: auto!important; height: 100%; background: url(../images/body-tail.png) repeat center top; }
#article { position: relative; z-index: 1; padding: 118px 0 155px 0; overflow: hidden; }
nav.primary { position: absolute; right: 0; top: 0; z-index: 2; display: block }
/* Logo centrado */
.logo.center {
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -74.5px;
  margin-top: -72.5px;
}

/* Contenedor fijo de la cortina */
.loading-container {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  overflow: hidden;
  z-index: 9999999999999 !important;
  pointer-events: none;
}

/* Cortina animada */
.loading-screen {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #232323;

  /* Estado inicial: visible */
  transform: scaleY(1);
  transform-origin: top left;

  will-change: transform;
}

/****************************LINKS****************************
***************************************************************/
a img { border: none }
.text-9 a { text-decoration: none }
.text-9 a:hover { text-decoration: underline }
/****************************LISTAS****************************
***************************************************************/
ul, ol, dl { padding: 0; margin: 0; }
/****************************TEXTOS****************************
***************************************************************/
h1, h2, h3, h4, h5, h6, p { margin-top: 0; padding-right: 0px; padding-left: 0px; }
h3{
  font-size:1.1666em;
  margin:0 0 1.286em;
  color:#4c4c4c;
  line-height:1.2em;
}
.text-1 { color: #c2c2c2; letter-spacing: -4px; text-shadow: 1px 1px 1px #fff; font-size: 70px; line-height: 82px; }
.text-2 { color: #c2c2c2; letter-spacing: 0px; text-shadow: 1px 1px 1px #fff; margin-top: 5px; font-size: 22px; line-height: 28px; }
.text-3 { color: #fff; font-weight: 700; font-size: 36px; line-height: 44px; text-transform: uppercase; letter-spacing: -2px; }
.text-4 { font-size: 18px; line-height: 22px; color: #474747; letter-spacing: normal; text-shadow: 1px 1px 1px #fff; float: left; padding-top: 6px; padding-right: 10px; }
.text-5 { font-size: 15px; line-height: 19px; color: #474747; letter-spacing: 0px; text-shadow: 1px 1px 1px #fff; float: left; padding-top: 8px; display: block; }
.text-9 { font-size: 15px; nowhitespace: afterproperty; line-height: 22px; /*color: #EEE60F;*/ color: #232323; text-transform: uppercase; margin-top: -4px; font-weight: normal; ;; }
.p1 { margin-top: 20px }
.p1 span { color: #414141; font-weight: bold; }
.p2 { overflow: hidden; padding-top: 4px; }
/****************************CICLOS****************************
***************************************************************/
.cycle { display: inline; float: left; overflow: hidden; position: relative; z-index: 1; }
.item1 { display: block; background: none !important; height:285px; }
.item { display: block; padding-top: 12px; background: none !important; }
.item img {width: 940px; height: 530px; }
.item {height: 518px; width:940px;}
#nav { display: inline-block; overflow: hidden; position: absolute !important; text-align: center; top: 497px; width: 88px; z-index: 6; left: 0px; }
#nav li { float: left; list-style: none; }
#nav a { background-image: url(../images/boton2.png); background-repeat: no-repeat; background-position: center center; width: 15px; height: 15px; padding-right: 2px; display: block; }
#nav li.activeSlide a { background-image: url(../images/boton1.png) }
#nav a:focus { outline: none }
#nav a:hover { background-image: url(../images/boton1.png) }
#nav2 { display: inline-block; overflow: hidden; position: absolute !important; right: 0px; text-align: center; top: 198px; z-index: 6; }
#nav2 li { float: left; list-style: none; }
#nav2 a { background-image: url(../images/boton3.png); background-repeat: no-repeat; background-position: center center; width: 15px; height: 15px; padding-right: 2px; display: block; }
#nav2 li.activeSlide { background-image: url(../images/boton2.png) }
#nav2 a:focus { outline: none }
#nav2 a:hover { background-image: url(../images/boton2.png) }
.banner-inicio { width: 360px; position: absolute; top: 143px; left: 0px; }
.banner-inicio .title h1 {
	font-size: 93px;
	line-height: 0.85em;
	color: #202020;
	margin: 0 0 15px 0px;
	font-weight: 300;
	text-transform: uppercase;
	font-family: 'Open Sans', sans-serif;
	letter-spacing: -5px;
	border-bottom: 1px solid gainsboro;
	border-bottom: 1px solid rgba(0, 0, 0, .1);
	padding-bottom: 16px;
}
.banner-inicio .title-description h2 { color: #202020; font-size: 22px; text-transform: uppercase; line-height: 1.1em; margin: 0 0 22px 0; font-weight: normal; }
/****************************BOTONES****************************
***************************************************************/
.button { text-transform: uppercase; font-size: 10px; color: #fff; display: inline-block; font-style: normal; padding: 15px 19px; text-decoration: none !important; line-height: 1.2; background-color: #232323; font-weight: normal; margin-top: 20px; }
.button:hover { color: #FFF; background-color: #6a6a6a; }
.button { -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease; }
.button3 {
  font-size: 10px;
  color: #fff;
  background: #232323;
  text-transform: uppercase;
  padding: 14px 20px;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all .3s ease;
}
.button3:hover { background: #505050 }
/****************************TABLAS****************************
***************************************************************/
#title-left { text-align: left }
#last-right { border-right-style: none }
#last-down { border-bottom-style: none }
#title-web span { font-size: 20px; line-height: 35px; color: #4c4c4c; letter-spacing: 0px; text-shadow: 1px 1px 1px #fff; display: block; }
/****************************COLUMNAS****************************
***************************************************************/
.director { padding-top: 20px; padding-bottom: 5px; }
.fservices { float: left; width: 380px; margin-left: 60px; }
.col-news { float: left; width: 500px; }
.fservices img { float: left; margin: 0 17px 0px 0; }
.col1-p { overflow: hidden; padding-bottom: 10px; }
.col1-quienes { float: left; width: 630px; position: relative; margin-right: 20px; }
.col2-quienes { float: left; width: 290px; }
.col1-quienes img { float: left; margin-right: 20px; margin-bottom: 0px; border: 1px solid #cbcbcb; }
.col-eligenos { float: left; width: 290px; }
.cols-7 { margin: 6px; float: left; width: 111px; height: 60px; border: 1px solid #CCC; background-color: #FFF; padding: 5px; }
.col-4 { float: left; width: 205px; margin-right: 20px; margin-bottom: 0px; margin-left: 20px; }
.col-3b {width: 286px;margin-left: 3%;float: left;}
.col-portafolio { width: 300px; margin-top: 20px; margin-right: 20px; margin-bottom: 20px; margin-left: 20px; float: left; }
.valores { margin-bottom: 20px; width: 228px; margin-right: 20px; float: left; }
.col-dg { width: 203px; margin-right: 10px; margin-left: 10px; float: left; margin-top: 20px; }
.col-eligenos-text { overflow: hidden }
.col1-soporte { position: relative; width: 940px; }
.col3-quienes { float: left; width: 630px; margin-right: 20px; }
.col4-quienes { float: left; width: 290px; }
.col-3b img { margin: 6px 10px 0px 0; float: left; }
.col1-disenoweb { float: left; width: 650px; position: relative; padding-right: 20px; }
.padright{border-right: 1px solid #cbcbcb;}
.col1-disenoweb img { float: left; margin-right: 20px; }
.col2-disenoweb { float: left; width: 249px; padding-left: 20px; }
.col-3 { -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; width: 253px; float: left; text-align: center; padding: 30px; background-color: #232323; color: #7a7a7a; text-decoration: none; }
.col-3:hover { background: #505050; color: #FFF; }
.col_port2 { height: 268px; margin-bottom: 53px; }
.alpha { margin-left: 0px }
.omega { margin-right: 0px }
/****************************LOGO****************************
***************************************************************/
.logo h1 a { color: white; text-decoration: none; background: #232323; display: block; height: 93px; padding: 52px 28px 0 26px; font-size: 39px; line-height: 47px; font-family: 'Comfortaa', cursive; text-transform: none; }
.logo .description { display: block; font-family: 'Comfortaa', cursive; color: #4F4F4F; font-size: 12px; line-height: 1.2em; margin-top: -6px; letter-spacing: 0px; text-align: right; }
.logo {position: absolute;left: 0;top: 0;width: 149px;height: 145px;background-color: #232323;z-index: 9999;}
.logo img {
    width: 100px;
    margin: 24.5px;
    margin-bottom: 0px;
}
.logo span {
    display: block;
    margin: 0px 22.5px 0px 24.5px;
    text-align: right;
    letter-spacing: 2px;
    text-transform: uppercase;
    font-size: 8px;
    line-height: 8px;
    margin-top: 7px;
}
/****************************TESTIMONIOS****************************
***************************************************************/
.testimonios { background-color: #e7e7e7; border: 1px solid #d1d1d1; position: relative; padding: 1.5em; }
.comillas { float: left; height: 40px; width: 40px; background-image: url(../images/comillas.png); background-repeat: no-repeat; margin-right: 10px; left: 10px; }
.text-2 a { color: #c7c7c7 }
.text-2 a:hover { text-decoration: none }
#linkb { color: #7a7a7a; text-decoration: none; display: block; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease; }
#linkb:hover { color: #202020; text-decoration: none; }
/****************************PROVEEDORES****************************
***************************************************************/
a #microsoft { background-image: url(../images/alianzas/microsoft.jpg); background-repeat: no-repeat; background-position: center center; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease; }
a:hover #microsoft { background-image: url(../images/alianzas/microsoft.png); background-repeat: no-repeat; background-position: center center; border: 1px solid #000; }
a #hp { background-image: url(../images/alianzas/hp.jpg); background-repeat: no-repeat; background-position: center center; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease; }
a:hover #hp { background-image: url(../images/alianzas/hp.png); background-repeat: no-repeat; background-position: center center; border: 1px solid #000; }
a #oracle { background-image: url(../images/alianzas/oracle.jpg); background-repeat: no-repeat; background-position: center center; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease; }
a:hover #oracle { background-image: url(../images/alianzas/oracle.png); background-repeat: no-repeat; background-position: center center; border: 1px solid #000; }
a #symantec { background-image: url(../images/alianzas/symantec.jpg); background-repeat: no-repeat; background-position: center center; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease; }
a:hover #symantec { background-image: url(../images/alianzas/symantec.png); background-repeat: no-repeat; background-position: center center; border: 1px solid #000; }
a #apple { background-image: url(../images/alianzas/apple.jpg); background-repeat: no-repeat; background-position: center center; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease; }
a:hover #apple { background-image: url(../images/alianzas/apple.png); background-repeat: no-repeat; background-position: center center; border: 1px solid #000; }
a #dell { background-image: url(../images/alianzas/dell.jpg); background-repeat: no-repeat; background-position: center center; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease; }
a:hover #dell { background-image: url(../images/alianzas/dell.png); background-repeat: no-repeat; background-position: center center; border: 1px solid #000; }
a #java { background-image: url(../images/alianzas/java.jpg); background-repeat: no-repeat; background-position: center center; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease; }
a:hover #java { background-image: url(../images/alianzas/java.png); background-repeat: no-repeat; background-position: center center; border: 1px solid #000; }
a #telmex { background-image: url(../images/alianzas/telmex.jpg); background-repeat: no-repeat; background-position: center center; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease; }
a:hover #telmex { background-image: url(../images/alianzas/telmex.png); background-repeat: no-repeat; background-position: center center; border: 1px solid #000; }
a #toshiba { background-image: url(../images/alianzas/toshiba.jpg); background-repeat: no-repeat; background-position: center center; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease; }
a:hover #toshiba { background-image: url(../images/alianzas/toshiba.png); background-repeat: no-repeat; background-position: center center; border: 1px solid #000; }
a #cisco { background-image: url(../images/alianzas/cisco.jpg); background-repeat: no-repeat; background-position: center center; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease; }
a:hover #cisco { background-image: url(../images/alianzas/cisco.png); background-repeat: no-repeat; background-position: center center; border: 1px solid #000; }
a #telcel { background-image: url(../images/alianzas/telcel.jpg); background-repeat: no-repeat; background-position: center center; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease; }
a:hover #telcel { background-image: url(../images/alianzas/telcel.png); background-repeat: no-repeat; background-position: center center; border: 1px solid #000; }
a #lenovo { background-image: url(../images/alianzas/lenovo.jpg); background-repeat: no-repeat; background-position: center center; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease; }
a:hover #lenovo { background-image: url(../images/alianzas/lenovo.png); background-repeat: no-repeat; background-position: center center; border: 1px solid #000; }
a #axtel { background-image: url(../images/alianzas/axtel.jpg); background-repeat: no-repeat; background-position: center center; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease; }
a:hover #axtel { background-image: url(../images/alianzas/axtel.png); background-repeat: no-repeat; background-position: center center; border: 1px solid #000; }
a #iusacell { background-image: url(../images/alianzas/iusacell.jpg); background-repeat: no-repeat; background-position: center center; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease; }
a:hover #iusacell { background-image: url(../images/alianzas/iusacell.png); background-repeat: no-repeat; background-position: center center; border: 1px solid #000; }
/****************************NOTICIAS****************************
***************************************************************/
.noticias { background-color: #202020; height: 403px; width: 500px; position: relative; }
#special-controls #next-spec { background-position: -37px -35px }
#special-controls #prev-spec:hover { background-position: left -35px }
#special-controls #next-spec:hover { background-position: -37px 0 }
#special-controls a { background-image: url(../images/news/prev-next-sprite.png); background-repeat: no-repeat; width: 35px; height: 35px; float: left; margin-left: 2px; display: block; }
#special-controls { position: absolute; top: -65px; right: 0px; }
.text-noticia a { text-decoration: none; font-size: 16px; line-height: 22px; color: #FFFFFF; letter-spacing: -1px; text-transform: uppercase; }
.text-noticia a:hover { text-decoration: underline }
.p-noticia { padding-top: 10px; margin-bottom: 0px; }
/****************************PORTAFOLIO****************************
***************************************************************/
.img_port { height: 268px; width: 540px; border: 1px solid #cbcbcb; float: left; margin-right: 20px; background: url(../images/low_contrast_linen.png) repeat; position: relative; overflow: hidden; }
.lupa { height: 78px; width: 78px; position: absolute; left: 230px; top: -80px; }
.page_nav { margin-left: 17px; font-weight: bold; color: #232323; line-height: 35px; }
.page_nav a { font-weight: bold }
#next {background-image: url(../images/news/prev-next-sprite.png);background-repeat: no-repeat;width: 35px;heig;height: 35px;t: left;margin-left: 2px;display: block;backgro;background-position: -37px -35px;}
#next:hover { background-position: -37px 0 }
#prev { background-image: url(../images/news/prev-next-sprite.png); background-repeat: no-repeat; width: 35px; height: 35px; float: left; margin-left: 2px; display: block; }
#prev:hover { background-position: left -35px }
.pages { float: left; height: 35px; margin-right: 15px; line-height: 35px; }
/****************************CONTACTO****************************
***************************************************************/
.address {float: left;width: 260px;margin-bottom: 20px;}
#map_canvas {
    width: 530px;
    height: 233px;
    margin-bottom: 20px;
}
.address img { float: left; margin-right: 10px; margin-top: 5px; }
/****************************FOOTER****************************
***************************************************************/
.lan-select{float:left;margin-top: 7px;margin-left: 7px;}
.lan-select a {float:left;width: 18px;margin-left: 8px;}
.derechos {float: left;color: #fff;font-size: 10px;line-height: 33px;}
#footer {background: #232323;height: 33px;line-height: 33px;/* margin-top: -33px; */color: #eeeeee;position: relative;z-index: 9400;text-transform: none;}
#footer .container { font-size: 10px }
#footer a { color: #eeeeee; text-decoration: none; }
#footer a:hover { text-decoration: underline }
/* Footer widget */
#widget-footer { }
#widget-footer .social-networks li { list-style-type: none; padding: 0 0 .5em 0; margin: 0; }
/* Footer navigation */
nav.footer { float: right }
nav.footer ul { }
nav.footer ul li { list-style-type: none; float: left; padding-left: 15px; margin: 0; }
/****************************OTROS****************************
***************************************************************/
.borderline { border-bottom: #bab0b7 1px dashed; margin-bottom: 25px; }
#img3 { margin: 0 11px 0px 0 }
.numero { background-image: url(../images/marker-bg.png); height: 29px; width: 49px; background-repeat: no-repeat; font-size: 20px; font-weight: bold; color: #000; line-height: 29px; padding-top: 10px; padding-bottom: 10px; text-align: center; float: left; margin-right: 10px; }
.icono_img { float: left; margin: 0px 17px 0px 0px; width: 60px; }
.abc { background-image: url(../images/dropcap-bg.png); height: 35px; width: 77px; float: left; font-size: 45px; color: #202020; padding-top: 29px; padding-bottom: 10px; text-align: center; margin-right: 10px; }
.abc-title { height: 86px }
iframe { border: 1px solid #cbcbcb }
.hr { display: block; border-bottom: 1px solid #cbcbcb; margin-bottom: 53px; }
#slider {width: 940px; height: 530px;}
#slider2 { width: 940px; height: 285px }
#slider3 { height: 400px }
#slider3 .item3 { height: 380px; width: 460px; }
#topnav { display: block; }
#menu-icon { color: #000; width: 162px; font-size: 17px; line-height: 17px; padding: 14px 17px 14px 50px; background: #EAEAEA url(../images/menu-icon.png) no-repeat 15px 13px; position: absolute; z-index: 999; right: 0; cursor: pointer; border: solid 1px #666; display: none; text-transform: uppercase; }
#menu-icon:hover { background-color: #f8f8f8 }
#menu-icon.active { background-color: #bbb }
/* tables */
table { max-width: 100%; border-collapse: collapse; border-spacing: 0; }
.pro_table { width: 100%; margin-bottom: 18px; margin-top: 40px; }
.pro_table th, .pro_table td { padding: 8px; line-height: 25px; text-align: left; }
.pro_table th { font-weight: bold; vertical-align: bottom; text-align: center; }
.pro_table td { vertical-align: top; text-align: center; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #cbcbcb; border-right-width: 1px; border-right-style: solid; border-right-color: #cbcbcb; }
.pro_table thead:first-child tr th, .pro_table thead:first-child tr td { border-top: 0 }
.pro_table tbody + tbody { border-top: 2px solid #ddd }
.pro_table-condensed th, .pro_table-condensed td { padding: 4px 5px }
.pro_table-bordered { border: 1px solid #ddd; border-collapse: separate; *border-collapse: collapsed; border-radius: 4px; }
.pro_table-bordered th + th, .pro_table-bordered td + td, .pro_table-bordered th + td, .pro_table-bordered td + th { border-left: 1px solid #ddd }
.pro_table-bordered thead:first-child tr:first-child th, .pro_table-bordered tbody:first-child tr:first-child th, .pro_table-bordered tbody:first-child tr:first-child td { border-top: 0 }
.pro_pro_table-bordered thead:first-child tr:first-child th:first-child, .pro_table-bordered tbody:first-child tr:first-child td:first-child { border-radius: 4px 0 0 0 }
.pro_table-bordered thead:first-child tr:first-child th:last-child, .pro_table-bordered tbody:first-child tr:first-child td:last-child { border-radius: 0 4px 0 0 }
.pro_table-bordered thead:last-child tr:last-child th:first-child, .pro_table-bordered tbody:last-child tr:last-child td:first-child { border-radius: 0 0 0 4px }
.pro_table-bordered thead:last-child tr:last-child th:last-child, .pro_table-bordered tbody:last-child tr:last-child td:last-child { border-radius: 0 0 4px 0 }
.pro_table-striped tbody tr:nth-child(odd) td, .pro_table-striped tbody tr:nth-child(odd) th { background-color: #f9f9f9 }
.pro_table-striped2 thead th, .pro_table-striped2 tbody tr td:first-child { background-color: #f9f9f9 }
/* Information blocks */
.pro_info { padding: 5px; font-weight: bold; display: inline-block; background: #999; border-radius: 3px; color: #fff; }
.pro_info_success { background: #468847 }
.pro_info_warning { background: #F89406 }
.pro_info_important { background: #B94A48 }
.pro_info_info { background: #3A87AD }
.pro_info-indent { margin: 5px 15px 15px 0; float: left; min-width: 100px; text-align: center; }
/*==================================RESPONSIVE LAYOUTS===============================================*/
@media only screen and (max-width: 995px) { 
    html, body { min-width: 768px }
    .main { width: 768px;}
    .text-1 { font-size: 55px }
	h3{font-size:11px; margin:0 0 1.286em; color:#4c4c4c; line-height:1.2em;}    
    .banner-inicio { top: 50px; width:300px;}
    .banner-inicio .title h1 { font-size: 86px; margin: 0 0 15px 0px; margin-top:40px}
	.banner-inicio .title-description h2 { font-size:20px;}
    .item { width: 768px; height: 433px;}
    .item1 { width: 768px; height:285px;}
    .item img { width: 748px; height: 421px; margin-top: 0px; margin-left: 0px; }
	#nav { top: 400px }
    #nav2 { top: 198px }
	#slider{ width:768px; height:433px;}
    #slider2 { width: 768px; height:285px;}
    #slider3 { width: 420px; height:400px }
    #slider3 .item3 { width: 400px; padding-bottom: 20px; }
    .noticias { width: 100%; position: relative; padding-bottom: 15px; }
    #news-image { width: 380px; overflow: hidden; }
    .col-news { display: block; width: 55%; float: left; margin-right:5%; }
    .fservices { width: 40%; display: block; margin-top: 60px; margin-left: 0px; }
    .col-3 { width: 196px }
	.col1-quienes { width: 55%; position: relative; margin-right: 5%; }
	.col1-quienes img { float: left; margin-right: 20px; margin-bottom: 0px; border: 1px solid #cbcbcb; width:200px; height:168px }
	.col2-quienes { width: 40%;}
	.col3-quienes { width: 55%; margin-right:5% }
	.col-eligenos { float: none; width: 100%; }
	.col4-quienes { width: 40%; }
	.col-4 { width: 44%; margin-right: 3%; margin-bottom: 40px; margin-left: 3%; }
	.col1-soporte { position: relative; width: 100%; }
	.col-3b {width: 27%;margin-left: 3%;}
	.col1-disenoweb { width: 60%; position: relative; padding-right: 2%; margin-bottom:40px; }
	.col1-disenoweb img { margin-right: 20px; display:block; margin-bottom:20px; clear:both;}
	.col2-disenoweb { width: 35%; padding-left: 2%;}
	.dg-img img{ margin-right:50px;}
	.col-dg { width: 50%; margin-right: 0px; margin-left: 0px; float: left; margin-top: 20px; }
	.col-portafolio { width: 100%; margin-top: 20px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; float: left; }
	.col_port2 { height: 270px; margin-bottom: 53px; }
	.valores { margin-bottom: 20px; width: 228px; margin-right: 20px; float: none; overflow:hidden }
	.icono { width:100%; display:block;}
	.img_port { height: 268px; width: 60%; border: 1px solid #cbcbcb; float: left; margin-right: 5%; background: url(../images/low_contrast_linen.png) repeat; position: relative; overflow: hidden; margin-bottom: 20px}
	a #microsoft { margin-left:6px;}
	a #java { margin-right: 12px;}
	iframe { width:100%; }
	.address{ margin-bottom:20px;}
	.lupa{ left:40%;}	
}
@media only screen and (max-width: 767px) { 
	#map_canvas{ width: 100%;}
    html, body { min-width: 420px; height: 100%; }
    .main { width: 420px; margin: 0 auto; font-size: 0.75em; }
	#main-first{margin-top:-56px;}
	#menu-icon{ display:block;}
    .text-1 { font-size: 40px }
	#title-web span{ font-size:12px;}
	h3{font-size:11px; margin:0 0 1.286em; color:#4c4c4c; line-height:1.2em;}
	.banner-inicio { top: 50px }
    .banner-inicio .title h1 {font-size: 53px;margin: 0 0 15px 0px;}
    .item img { width: 611px; height: 344px; margin-top: 200px; margin-left:-160px;}
    .item { width: 420px; height: 344px;}
    .item1 { width: 420px; height:285px;}
    nav.primary { top: 51px; right:0px; }
    #nav { top: 302px }
    #topnav { display: none; right:0; position:absolute; }
    #nav2 { top: 198px; display: none }
	#slider{ width:420px; height:530px;}
    #slider2 { width: 420px; height:285px;}
    #slider3 { width: 420px; height:400px}
    #slider3 .item3 { width: 400px; padding-bottom: 20px; }
	.noticias { width: 100%; position: relative; padding-bottom: 15px;}
    #news-image { width: 380px; overflow: hidden; }
    .col-news { display: block; width: 100%; margin-top: 60px; float: none; }
    .fservices { width: 100%; display: block; margin-top: 60px; margin-left: 0px; }
    .col-3 { width: 360px }
	.col1-quienes { float: none; display:block; width: 100%; position: relative; margin-right: 0px; }
	.col1-quienes img { float: left; margin-right: 20px; margin-bottom: 0px; border: 1px solid #cbcbcb; width:200px; height:168px }
	.col2-quienes { float: none; width: 100%; margin-top:40px; }
	.col3-quienes { float: none; width: 100%; }
	.col-eligenos { float: none; width: 100%; }
	.col4-quienes { float: left; width: 100%; }
	.col-4 { float: none; width: 100%; margin-right: 0px; margin-bottom: 40px; margin-left: 0px; clear:both; }
	.col1-soporte { position: relative; width: 100%; }
	.col-3b {width: 400px;float: left;}
	.col1-disenoweb { float: none; width: 100%; position: relative; padding-right: 0px; margin-bottom:40px; }
	.padright{border-right: none}
	.col1-disenoweb img { float: none; margin-right: 0px; display:block; margin-bottom:20px;}
	.col2-disenoweb { float: none; width: 100%; padding-left: 0px; border-top: 1px solid #cbcbcb; border-left:hidden; padding-top:20px;}
	.col-dg { width: 100%; margin-right: 0px; margin-left: 0px; float: left; margin-top: 20px; }
	.col-portafolio { width: 100%; margin-top: 20px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; float: left; }
	.col_port2 { height: 100%; margin-bottom: 53px; }
	.img_port { height: 268px; width: 100%; border: 1px solid #cbcbcb; float: left; margin-right: 0px; background: url(../images/low_contrast_linen.png) repeat; position: relative; overflow: hidden; margin-bottom: 20px}
	a #microsoft { margin-left:6px;}
	a #java { margin-right: 12px;}
	.valores { margin-bottom: 20px; width: 228px; margin-right: 20px; float: none; overflow:hidden }
	.icono { width:100%; display:block;}
	iframe { width:413px; }
	.address{ margin-bottom:20px;}
	.lupa{ left:40%;}
}
@media only screen and (max-width: 479px) { 
	.logo.center{left: 50%; margin-left: -53px; top:50%; margin-top:  -51.5px}
    html, body { min-width: 300px; height: 100%; }
	.main { width: 300px; margin: 0 auto; font-size: 0.75em;}
	#main-first{margin-top:-89px;}
	#article { padding-top:84px;}
	.logo { position: absolute; left: 0; top: 0; width: 106px; height: 103px; background-color: #232323; }
	.logo img {
    width: 71px;
    margin: 18px;
    margin-bottom: 0px;
}
.logo span {
    margin-right: 16px;
    font-size: 7px;
    line-height: 7px;
}
	#menu-icon{ display:block;}
	#menu-icon {width: 80px; font-size: 17px; line-height: 17px; padding: 14px 17px 14px 50px; background: #EAEAEA url(../images/menu-icon.png) no-repeat 15px 13px; position: absolute; z-index: 999; right: 0; cursor: pointer; }
    .text-1 { font-size: 30px }
	#title-web span{ font-size:10px;}
	h3{font-size:9px; margin:0 0 1.286em; color:#4c4c4c; line-height:1.2em;}
    .banner-inicio { top: 50px }
    .banner-inicio .title h1 {font-size: 53px;margin: 0 0 15px 0px;}
    .item img { width: 611px; height: 344px; margin-top: 200px; margin-left:-160px;}
    .item { width: 300px; height: 530px;}
    .item1 { width: 300px; height:350px;}
    nav.primary { top: 30px; right:0px; }
    #topnav { display: none; right:0; position:absolute; }
    #nav { top: 302px }
    #nav2 { top: 198px; display: none }	
	#slider{ width:300px; height:530px;}
    #slider2{ width: 300px; height:350px;}
    #slider3 { width: 280px; height:435px;  }
    #slider3 .item3 { width: 300px; padding-bottom: 20px; }
    .noticias { width: 100%; height:435px; position: relative; padding-bottom: 15px; }
    #news-image { width: 260px; overflow: hidden; }
    #news-image img{ margin-left:-100px}
	.p-noticia{ width:260px;}
    .col-news { display: block; width: 100%; margin-top: 60px;}
    .fservices { width: 100%; display: block; margin-top: 60px; margin-left: 0px; }
    .col-3 { width: 240px }
	.col1-quienes { float: none; display:block; width: 100%; position: relative; margin-right: 0px; }
	.col1-quienes img { float: left; margin-bottom: 20px; border: 1px solid #cbcbcb; width:100%; height:auto; }
	.col2-quienes { float: none; width: 100%; margin-top:40px; }
	.col3-quienes { float: none; width: 100%; }
	.col-eligenos { float: none; width: 100%; }
	.col4-quienes { float: left; width: 100%; }
	.col-4 { float: none; width: 100%; margin-right: 0px; margin-bottom: 40px; margin-left: 0px; clear:both; }
	.col1-soporte { position: relative; width: 100%; }
	.col-3b { width: 260px;; margin: 20px; float: left; }
	.col1-disenoweb { float: none; width: 100%; position: relative; padding-right: 0px; margin-bottom:40px; }
	.padright{border-right: none}
	.col1-disenoweb img { float: none; margin-right: 0px; display:block; margin-bottom:20px; width:298px; height:auto;}
	.col2-disenoweb { float: none; width: 100%; padding-left: 0px; border-top: 1px solid #cbcbcb; border-left:hidden; padding-top:20px;}
	.col-dg { width: 100%; margin-right: 0px; margin-left: 0px; float: left; margin-top: 20px; }
	.col-portafolio { width: 100%; margin-top: 20px; margin-right: 0px; margin-bottom: 20px; margin-left: 0px; float: left; }
	.col_port2 { height: 100%; margin-bottom: 53px; }
	.img_port { height: 268px; width: 100%; border: 1px solid #cbcbcb; float: left; margin-right: 0px; background: url(../images/low_contrast_linen.png) repeat; position: relative; overflow: hidden; margin-bottom: 20px}
	a #microsoft { margin-left:6px;}
	a #java { margin-right: 12px;}
	.valores { margin-bottom: 20px; width: 220px; margin-right: 0px; float: none; overflow:hidden }
	.icono { width:100%; float:left;}
	iframe { width:293px; }
	.address{ margin-bottom:20px;}
	.lupa{ left:40%;}
    .pro_table th, .pro_table td { padding: 2px }
    .pro_table { font-size: 80% }
}

#portfolio {
  /* padding: 50px 20px; */
  text-align: center;
}

.portfolio-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr); /* máximo 2 columnas */
  gap: 20px;
  margin-top: 30px;
  perspective: 1000px;
}

@media (max-width: 600px) {
  .portfolio-grid {
    grid-template-columns: 1fr; /* 1 columna en pantallas pequeñas */
  }
}

/* Contenedor principal del proyecto */
.portfolio-item {
  position: relative;
  height: 300px;
  border-radius: 10px;
  overflow: hidden;
  cursor: pointer;
  transform-style: preserve-3d;
  transition: transform 0.6s ease, box-shadow 0.3s ease;
  opacity: 0;
  transform: translateY(20px);
  animation: fadeInUp 0.6s forwards;
}

/* Animación de entrada */
@keyframes fadeInUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Fondo interno para zoom suave */
.portfolio-item .bg-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  transition: transform 1.2s ease; /* zoom suave */
  z-index: 1; /* detrás del overlay */
}

/* Hover: zoom del fondo */
.portfolio-item:hover .bg-image {
  transform: scale(1.2);
}

/* Hover: giro y zoom de la tarjeta */
.portfolio-item:hover {
  transform: rotateY(10deg) rotateX(5deg) scale(1.05);
  box-shadow: 0 20px 40px rgba(0,0,0,0.3);
}

.portfolio-item:nth-child(odd):hover {
  transform: rotateY(8deg) rotateX(-5deg) scale(1.05);
}

.portfolio-item:nth-child(even):hover {
  transform: rotateY(-8deg) rotateX(5deg) scale(1.05);
}

/* Overlay */
.overlay {
  position: relative; /* para que los hijos se animen correctamente */
  z-index: 2;         /* por encima del fondo */
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  opacity: 0;
  transition: opacity 0.5s ease;
  background-color: rgba(0,0,0,0.6); /* color de overlay por defecto */
}

/* Mostrar overlay al hover */
.portfolio-item:hover .overlay {
  opacity: 1;
}

/* Logo del proyecto */
.project-logo {
  height: 120px;      /* altura fija para todos los logos */
  width: auto;        /* ancho proporcional según la altura */
  max-width: 60%;     /* no se salga del overlay si es muy horizontal */
  object-fit: contain;/* mantiene proporción */
  margin-bottom: 10px;
  opacity: 0;
  transform: translateY(10px);
  transition: opacity 0.8s ease, transform 0.8s ease;
}

/* Logo aparece con fade y slide */
.portfolio-item:hover .project-logo {
  opacity: 1;
  transform: translateY(0);
}

/* Botón dentro del overlay */
.overlay .button3 {
  opacity: 0;
  transform: translateY(10px);
  transition: opacity 0.9s ease, transform 0.9s ease;
}

/* Botón aparece con fade y slide */
.portfolio-item:hover .overlay .button3 {
  opacity: 1;
  transform: translateY(0);
}


/* ================= BLOQUE 2: COLUMNA DE VIDEO/IMAGEN ================= */
.col-r-img {
<div class="col-r-img">
<div class="top-port-2">
<div class="wow fadeInUp animated" style="visibility: visible; animation-name: fadeInUp;">
  <video playsinline="" width="404" height="720" id="video" class="video-js" autoplay="" muted="" loop="" poster="videos/pv3.jpg">
   <source type="video/mp4" src="videos/pv3.mp4">
            Your browser does not support the video tag
  </video>
</div>
<div class="muted"><i class="fas fa-volume-mute" aria-hidden="true"></i></div>
</div>
</div>;float: left;width: 40%;margin-top: 0px;margin-left: 0px;}
.top-port-2 {z-index: 9;position: relative;display: inline-block;/* border: 7px solid #000; */background: #e1e1e1;float: left;}
.top-port-2 video {
    width: 100%;
    height: auto;
    display: block;
}
.muted, .muted2 {position: absolute;top: 7px;right: 7px;width: 40px;height: 40px;background: #232323;border-radius: 40px;text-align: center;line-height: 85px;color: #fff;cursor: pointer;font-size: 22px;animation: zoom-in-zoom-out 1s linear infinite;}

/* ================= BLOQUE 3: COLUMNA DE TEXTO ================= */
.col-r {float: left;width: 48%;padding: 0px 4%;margin-bottom: 40px;}
.col-r h1 {/* display: block; *//* text-align: left; *//* font-size: 21px; *//* font-family: 'Montserrat', sans-serif; *//* line-height: 30px; *//* text-transform: uppercase; *//* font-weight: bold; *//* text-transform: none; */text-transform: none;font-weight: bold;font-size: 12px;color: #202020;letter-spacing: normal;}
.r-titles {font-family: 'Blackstone', cursive;font-size: 25px;line-height: 25px;}
.col-r p {font-size: 13px;line-height: 21px;}

/* ================= BLOQUE 4: COURSE BOX ================= */
.col-4b {width: 100%;max-width: 300px;border: 1px solid #ebebeb;display: inline-block;border-radius: 5px;margin-top: 20px;/* font-family: 'Montserrat'; */overflow: hidden;}
.course-box {background: #fff;display: inline-block;float: left;width: 223px;border-radius: 5px;text-align: center;letter-spacing: 0px;overflow: hidden;margin: 5px;box-shadow: 2px 0px 23px -12px rgba(0, 0, 0, 0.36);-webkit-box-shadow: 2px 0px 23px -12px rgba(0, 0, 0, 0.36);-moz-box-shadow: 2px 0px 23px -12px rgba(0,0,0,0.36);}
.course-img {display: block;height: 170px;background-size: cover;background-position: center top;}
.course-title {font-size: 12px;font-weight: bold;padding-top: 15px;padding-bottom: 15px;border-bottom: 1px solid #eaeaea;line-height: 21px;max-height: 73px;}
.course-box-2 {
    padding: 10px;
}
.course-col-1 {
    font-size: 11px;
}

/* ================= BLOQUE 5: BOTONES ================= */
.buttons-box {
    margin-top: 20px;
}
.button-2.brown2 {
    color: #fff;
    background: #232323;
    /* border: 2px solid #232323; */
    padding: 10px 20px;
    cursor: pointer;
    display: inline-block;
    margin-right: 10px;
    text-transform: uppercase;
}
.button-2.brown2.signup-disabled {
    background: #a8a8a8;
    border: 2px solid #a8a8a8;
    cursor: not-allowed;
}
.button-2.brown3 {
    color: #232323;
    background: #fff;
    /* border: 2px solid #ffffff; */
    padding: 10px 20px;
    display: inline-block;
    text-decoration: none;
    text-transform: uppercase;
}
.button-2.brown2:hover,.button-2:hover{ background:#505050; color:#ffffff}
/* ================= BLOQUE 6: REVIEWS ================= */
.cycleE {
    +: 100%;
     */
    position: relative;
    overflow: hidden; */
    position: relative;
    z-index: 1;
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
    /* margin-top: 20px; */
}
.itemE {width: 100%;height: 100%;padding-top: 80px;}
.itemE.active {
    display: block;
}
.r-text {width: 63%;background: #fff;position: relative;z-index: -1;margin: 0 auto;}
.r-text-box {padding: 15% 10%;padding-left: 20%;letter-spacing: 0px;font-family: 'Bacasime Antique', sans-serif;}
.stars i {
    color: #ffcc00;
}
.r-title {
    font-weight: bold;
    font-size: 18px;
    margin: 10px 0;
}
.r-name {
    font-style: italic;
    margin-top: 5px;
}
.clearfloat { clear: both; }
.btns-cycle{
    left: 50%;
    margin-left: -44px;
    color: #bfa18d;
    position: absolute;
    z-index: 99999;
    color: #fff;
    text-transform: uppercase;
    font-size: 11px;
    font-weight: bold;
    cursor: pointer;
    top: 25px;
    }
#sliderE{width: 100%;
    height: 580px;}
#reviews2{
    background-size: cover;
    background-position: center bottom;
    /* padding-top: 40px; */
    /* padding-bottom: 40px; */
    position: relative;
    /* margin-top: 20px; */
    }

.btns-cycle div {
    float: left;
    cursor: pointer;
}
.stars {
    color: #ffdd6a;
    margin-top: 15px;
}
.r-title {
    font-size: 23px;
    font-weight: normal;
    line-height: 19px;
}
.r-name {
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 5px;
    font-weight: bold;
}
.live-dot {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin-left: 8px;
  background-color: #e60000;
  border-radius: 50%;
  vertical-align: middle;
  animation: livePulse 1.2s infinite ease-in-out;
}

/* Animación tipo grabación */
@keyframes livePulse {
  0% {
    transform: scale(1);
    opacity: 1;
  }
  50% {
    transform: scale(1.6);
    opacity: 0.4;
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}

.course-card {
  max-width: 900px;
  margin: 40px auto;
  padding: 50px;
  background: #ffffff;
  border-radius: 16px;
  box-shadow: 0 30px 60px rgba(0,0,0,.08);
  color: #1f2933;
  margin-bottom: 0px;
  border-bottom-left-radius: 0px;
  border-bottom-right-radius: 0px;
}

.course-header {
  text-align: center;
  margin-bottom: 40px;
}

.badge {
  display: inline-block;
  background: #232323;
  color: #fff;
  padding: 6px 14px;
  border-radius: 20px;
  font-size: 13px;
  margin-bottom: 10px;
}

.course-header h1 {
  font-size: 21px;
  margin: 15px 0;
  font-weight: BOLD;
}

.price {
  font-size: 28px;
  font-weight: 700;
  color: #adadad;
}

.countdown-box {
  text-align: center;
  padding: 30px;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  margin-bottom: 40px;
}

.countdown-title {
  font-size: 14px;
  letter-spacing: 2px;
  color: #6b7280;
}

.countdown-box h2 {
  font-size: 30px;
  margin: 10px 0 25px;
}

.countdown {
  display: flex;
  justify-content: center;
  gap: 20px;
}

.countdown div {
  background: #f9fafb;
  border-radius: 10px;
  padding: 15px 20px;
  min-width: 90px;
}

.countdown span {
  font-size: 32px;
  font-weight: 700;
  display: block;
}

.countdown small {
  font-size: 12px;
  color: #6b7280;
}

.course-info {
  list-style: none;
  padding: 0;
  margin-bottom: 40px;
}

.course-info li {
  /* font-size: 18px; */
  margin-bottom: 12px;
}

.trial-box {
  background: #232323;
  color: #fff;
  padding: 30px;
  border-radius: 14px;
  margin-bottom: 80px;
  text-align: center;
  border-top-left-radius: 0px;
  border-top-right-radius: 0px;
  padding-bottom: 60px;
}

.trial-box h3 {
  font-size: 24px;
  margin-bottom: 10px;
  color: #ffffff;
}

.course-actions {
  display: flex;
  justify-content: center;
  gap: 20px;
  align-items: flex-start;
}

.btn {
  padding: 8px 15px;
  /* border-radius: 30px; */
  text-decoration: none;
  font-weight: 600;
  transition: all .3s ease;
  font-size: 9px;
  font-weight: normal;
  text-transform: uppercase;
  line-height: 19px;
}

.btn.primary {
  background: #232323;
  color: #fff;
}

.btn.primary:hover {
  background: #505050;
}

.btn.secondary {
  color: #232323;
  background: #ffffff;
  display: inline-block;
  cursor: pointer;
  border: none; /* sin borde real */
  box-shadow: inset 0 0 0 2px #232323; /* borde interno blanco */
}

.btn.secondary:hover {
  background: #505050;
	  box-shadow: inset 0 0 0 2px #505050; /* borde interno blanco */

  color: #fff;
}

/* ===============================
   TABLET (<= 1024px)
================================ */
@media (max-width: 1024px) {

  .course-card {
    /* margin: 50px 20px; */
    /* padding: 40px; */
  }

  .course-header h1 {
  }

  .price {
    font-size: 24px;
  }

  .countdown {
    gap: 12px;
  }

  .countdown div {
    min-width: 75px;
    padding: 12px;
  }

  .countdown span {
    font-size: 26px;
  }

  .course-info li {
    font-size: 12px;
  }
}


/* ===============================
   MOBILE (<= 768px)
================================ */
@media (max-width: 768px) {

  .course-card {
    padding: 30px 22px;
    margin: 0px;
  }

  .course-header h1 {
    /* font-size: 26px; */
    /* line-height: 1.2; */
  }

  .price {
    font-size: 22px;
  }

  .countdown-box h2 {
    font-size: 24px;
    line-height: 30px;
  }

  .countdown {
    flex-wrap: wrap;
    gap: 10px;
  }

  .countdown div {
    width: 45%;
  }

  .course-info li {
    font-size: 15px;
  }

  .trial-box {
    padding: 22px;
  }
.date-course{}
  .trial-box h3 {
    font-size: 20px;
  }

  .course-actions {
    flex-direction: column;
  }

  .btn {
    text-align: center;
  }
}


/* ===============================
   SMALL MOBILE (<= 480px)
================================ */
@media (max-width: 480px) {

  .course-header h1 {
    font-size: 22px;
  }

  .price {
    font-size: 20px;
  }

  .countdown-box h2 {
    font-size: 20px;
    line-height: 27px;
  }

  .countdown div {
    width: 100%;
  }

  .countdown span {
    font-size: 24px;
  }

  .course-info li {
    font-size: 14px;
  }
}

.date-course{ font-size:20px}

.faq {
  max-width: 900px;
  /* margin: 80px auto; */
  padding: 0 20px;
  font-family: Arial, sans-serif;
  margin-bottom: 40px;
}

.faq h2 {
  text-align: center;
  /* font-size: 24px; */
  margin-bottom: 40px;
  text-align: -webkit-auto;
  margin-bottom: 20px;
}

.faq-item {
  border-bottom: 1px solid #e5e5e5;
}

.faq-question {
   appearance: none;
  -webkit-appearance: none;
  background: none;
  border: none;
  color: inherit;

  font: inherit;
 
  width: 100%;

  border: none;
  padding: 7px 10px;
  /* font-size: 18px; */
  font-weight: 600;
  text-align: left;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.faq-question:hover {
  color: #505050;
}

.faq-question .icon {
  font-size: 22px;
  transition: transform 0.3s ease;
}

.faq-answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s ease, padding 0.3s ease;
  /* font-size: 16px; */
  line-height: 1.6;
  color: #555;
  padding: 0 10px;
}

.faq-item.active .faq-answer {
  max-height: 500px;
  padding: 0 10px 20px;
}

.faq-item.active .icon {
  transform: rotate(45deg);
}
.whatsapp-float {
  position: fixed;
  right: 20px;
  bottom: 20px;
  width: 57px;
  height: 57px;
  /* background: #25D366; */
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 8px 20px rgba(0,0,0,.25);
  z-index: 9999;
  transition: transform .25s ease, box-shadow .25s ease;
}

.whatsapp-float img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}

.whatsapp-float:hover {
  transform: scale(1.08);
  box-shadow: 0 12px 28px rgba(0,0,0,.35);
}
@media (max-width: 600px) {
  .whatsapp-float {
    width: 56px;
    height: 56px;
    right: 15px;
    bottom: 15px;
  }

  .whatsapp-float img {
    /* max-width: 70%; */
    /* max-height: 70%; */
  }
}


/* === Founder Section === */
.founder-section {
  padding: 80px 20px;
  background: #ffffff;
  margin-bottom: 80px;
}

.founder-container {
  max-width: 1100px;
  margin: 0 auto;
  display: flex;
  gap: 80px;
  position: relative;
  align-items: center;
}

.founder-image img {
  max-width: 450px;
  width: 100%;
  position: absolute;
  bottom: -80px;
  left: -35px;
  border-bottom: 1px solid #a2a2a2;
}
.founder-image{
    max-width: 360px;
    width: 360px;
}
.founder-label {
  font-size: 12px;
  letter-spacing: 2px;
  color: #888;
  display: block;
  margin-bottom: 16px;
}

.founder-content h2 {
  font-size: 32px;
  font-weight: 500;
  line-height: 1.3;
  margin-bottom: 24px;
  color: #111;
  max-width: 520px;
  text-transform: none;
}

.founder-content p {
  font-size: 12px;
  line-height: 1.8;
  color: #a2a2a2;
  margin-bottom: 24px;
  max-width: 520px;
}

.founder-content blockquote {
  font-size: 18px;
  font-style: italic;
  color: #111;
  border-left: 3px solid #111;
  padding-left: 16px;
  margin: 32px 0;
}

.founder-sign {
  font-size: 14px;
  letter-spacing: 1px;
  color: #666;
}

/* === Responsive === */
@media (max-width: 900px) {
  .founder-container {
    flex-direction: column;
    text-align: center;
    gap: 40px;
  }

  .founder-content blockquote {
    border-left: none;
    padding-left: 0;
  }

  .founder-content p {
    max-width: 100%;
  }
	.founder-content h2{
		/* max-width: 75%; */
		margin: 0 auto;
		margin-bottom: 20px;
	}
	.founder-image img {
    max-width: 360px;
    width: 100%;
    position: relative;
    bottom: auto;
	}
}
.coming-soon {
  min-height: 300px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #232323; /* fondo elegante */
  border-radius: 16px;
  color: #ffffff;
  font-family: 'Inter', system-ui, sans-serif;
}

.coming-soon .main {
  text-align: center;
  padding: 40px;
}

.coming-soon h1 {
  font-size: clamp(2rem, 5vw, 3.2rem);
  font-weight: 600;
  letter-spacing: -0.5px;
  margin-bottom: 12px;
}

.coming-soon p {
  font-size: 1.1rem;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: #adadad;
  position: relative;
  margin: 0;
}

/* pequeño detalle visual */
.coming-soon p::after {
  content: '';
  display: block;
  width: 40px;
  height: 2px;
  background: #a0a4ab;
  margin: 18px auto 0;
  opacity: 0.6;
}

.coming-soon p {
  font-size: 1.1rem;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: #a0a4ab;
  opacity: 0;
  filter: blur(6px);
  animation: revealBlur 2.8s ease-in-out infinite;
}

@keyframes revealBlur {
  0% {
    opacity: 0;
    filter: blur(6px);
    transform: translateY(6px);
  }

  40% {
    opacity: 1;
    filter: blur(0);
    transform: translateY(0);
  }

  70% {
    opacity: 1;
    filter: blur(0);
    transform: translateY(0);
  }

  100% {
    opacity: 0;
    filter: blur(6px);
    transform: translateY(-6px);
  }
}
.message_ok {
    color: #3db473;
    background: #3db47324;
    display: inline-block;
    /* width: 100%; */
    margin-top: 15px;
    border-radius: 4px;
    padding: 10px 15px;
    border-left: 4px solid #3db473;
    display: none;
}
#sign-up {
  position: fixed;
  inset: 0; /* top:0 right:0 bottom:0 left:0 */
  margin: auto;

  background: #232323;
  color: #fff;

  width: 100%;
  max-width: 600px;
  max-height: 90vh;

  padding: 60px;
  box-sizing: border-box;

  overflow-y: auto;

  display: none;
  z-index: 999999;

  border-radius: 12px;
} 
#contact-form, #contact-form2 {
    position: relative;
    margin-top: -1px;
    text-align: left;
    margin-bottom: 0px;
    font-family: 'Bacasime Antique', sans-serif;
    font-size: 12px;
    letter-spacing: 0px;
    color: #939393;
}
.close-s {
    color: #fff;
    float: right;
    font-size: 20px;
    cursor: pointer;
}
#sign-up h1 {
    color: #ffffff;
}

#contact-form label, #contact-form2 label {
    display: inline-block;
    position: relative;
    min-height: 70px;
    width: 100%;
    float: left;
}
.message_error {
 display: none;
 margin-top: 10px;
 padding: 10px 14px;
 color: #a94442;
 background: #e25c5c2b;
 border-left: 4px solid #e25c5c;
 font-size: 13px;
 line-height: 1.4;
 border-radius: 4px;
 box-shadow: 0 2px 6px rgba(0,0,0,0.05);
}
.message_error a{ color:#a94442}
#sign-up #contact-form span {
    display: block;
    color: #a2a2a2;
}
#contact-form label input, #contact-form2 label input {
    height: 47px;
    box-shadow: none !important;
    padding: 13px 7px 11px 15px;
    outline: none;
    background: #f6eeea;
    font-family: 'Bacasime Antique', sans-serif;
    font-size: 15px;
}
#contact-form2 label input, #contact-form2 label textarea, #contact-form2 label select, #contact-form label input, #contact-form label textarea, #contact-form label select, #contact-form2 label select {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -o-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
    float: left;
    outline: none;
    border-radius: 0;
    outline: none;
    box-shadow: none;
    width: 100%;
    color: #a2a2a2;
    font-size: 13px;
    background: #ffffff;
    border: none;
    -webkit-appearance: none;
    font-weight: normal;
}
.button-2.brown3 {
    color: #bfa18d;
    background: #fff;
    border: 2px solid #bfa18d;
}
.email-warning {
  margin-top: 20px;
  background: #d4a60026;
  padding: 10px 20px;
  font-size: 12px;
  border-radius: 4px;
  margin-bottom: 20px;
  border-left: 5px solid #d4a600;
}

.email-warning-text {
  color: #d4a600;
  /* font-size: 16px; */
  line-height: 1.4;
  margin-bottom: 0px;
}

.email-warning-check {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 15px;
  color: #333;
}

.email-warning-check input[type="checkbox"] {
  accent-color: #d65151;
  cursor: pointer;
}
#contact-form2 label input[type="checkbox"],
#contact-form label input[type="checkbox"] {
  float: none;
  width: auto;
  -webkit-appearance: checkbox;
  appearance: checkbox;
  border: initial;
  box-shadow: none;
}
.checkbox-wrap {
  display: flex;
  align-items: center;
  gap: 8px;
}
/* Checkboxes */
#contact-form2 input[type="checkbox"],
#contact-form input[type="checkbox"] {
  -webkit-appearance: checkbox;
  appearance: checkbox;
  border-radius: initial;
}

/* Radios */
#contact-form2 input[type="radio"],
#contact-form input[type="radio"] {
  -webkit-appearance: radio;
  appearance: radio;
}
.password-wrapper {
  position: relative;
}

.password-wrapper .toggle-password {
  position: absolute;
  right: 10px;
  top: 36px;
  cursor: pointer;
  color: #999;
  font-size: 16px;
}

.password-wrapper .toggle-password:hover {
  color: #333;
}
@media (max-width: 768px) {
  #sign-up {
    width: 92%;
    padding: 24px;
    max-height: 92vh;
    border-radius: 10px;
  }
}

.signup-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.7);
  z-index: 999998;
  display: none;
}


body#login-body {
  background: #232323;
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* =========================
   LOGIN BOX
========================= */
.login-box {
  width: 100%;
  max-width: 420px;
  background: #ffffff;
  /* border: 1px solid #eaeaea; */
}

/* =========================
   HEADER
========================= */
.login-top {
  padding: 32px 0;
  text-align: center;
  /* border-bottom: 1px solid #eaeaea; */
  background: #232323;
}

.logo2 img {
  width: 130px;
  display: block;
  margin: 0 auto 6px;
}

.logo2 span {
  /* font-size: 12px; */
  /* letter-spacing: 2px; */
  display: block;
  margin: 0px 22.5px 0px 24.5px;
  /* text-align: right; */
  letter-spacing: 2px;
  text-transform: uppercase;
  font-size: 8px;
  line-height: 8px;
  margin-top: 7px;
  /* color: #232323; */
}

/* =========================
   FORM
========================= */
#login-form {
  padding: 32px 32px 36px;
}

.login-welcome {
  font-size: 20px;
  margin-bottom: 28px;
  color: #232323;
}

/* =========================
   INPUTS
========================= */
.log-icons {
  display: block;
  margin-bottom: 18px;
}

.log-icons input {
  width: 100%;
  padding: 12px 0;
  border: none;
  border-bottom: 1px solid #eaeaea;
  font-size: 14px;
  color: #232323;
  background: transparent;
}

.log-icons input::placeholder {
  color: #999;
}

.log-icons input:focus {
  outline: none;
  border-bottom-color: #232323;
}

/* =========================
   REMEMBER ME
========================= */
.squaredFour {
  display: flex;
  align-items: center;
  margin: 14px 0 24px;
}

.squaredFour input[type="checkbox"] {
  width: 14px;
  height: 14px;
  cursor: pointer;
}

.squaredFour-txt {
  margin-left: 8px;
  font-size: 13px;
  color: #232323;
}

/* =========================
   ERRORES
========================= */
.login-error {
  border: 1px solid #eaeaea;
  padding: 10px;
  font-size: 13px;
  margin-bottom: 18px;
  color: #232323;
  text-align: center;
}

/* =========================
   BOTÓN
========================= */
.button-6 {
  width: 100%;
  padding: 12px 0;
  background: #232323;
  color: #ffffff;
  border: none;
  font-size: 14px;
  cursor: pointer;
  transition: opacity 0.2s ease;
}

.button-6:hover {
  opacity: 0.85;
}

/* =========================
   UTILIDADES
========================= */
.clearfloat {
  clear: both;
}

/* =========================
   RESPONSIVE
========================= */
@media (max-width: 480px) {
  .login-box {
    margin: 20px;
  }
}
#top{padding-bottom:40px;position:relative;background: #232323;}
.subMenu {
    font-size: 13px;
    display: block;
    margin: 0;
    list-style: none;
    text-transform: uppercase;
    text-align: center;
    padding: 10px 20px;
    border-bottom: 1px solid #373737;
}
.subMenu a {
    color: #ffffff;
    text-decoration: none;
    padding: 10px 5px;
    font-size: 9px;
}
.subMenu .inner {
}
	.menu2{height: 100%;top: 0;padding-top: 40px;position: fixed;width: auto;z-index: 9999;padding-right: 0;display: none;width: 100%;right: 0;display: none;background: #ffffff;z-index: 99999;background: #bfa18ee8;color: #fff;}
.logo-small {
    -webkit-transition: all 1s ease;
    -moz-transition: all 1s ease;
    -o-transition: all 1s ease;
    transition: all 1s ease;
    padding: 10px;
    display: block;
    font-family: 'Blackstone', cursive;
    top: 60px;
    z-index: 999999;
    font-size: 32px;
    color: #fff;
    letter-spacing: 0px;
    width: 100px;
    margin: 0 auto;
    padding-top: 40px;
}
.logo-small img {
  width: 100%;
}
.top-bg {
}
.col-1 {
    float: right;
}
.top-menu {
    list-style: none;
    font-size: 15px;
}
.top-menu li {
    float: left;
    margin-right: 20px;
    margin-top: 10px;
}
.top-menu a {
    -webkit-transition: .25s ease-in-out;
    -moz-transition: .25s ease-in-out;
    -o-transition: .25s ease-in-out;
    transition: .25s ease-in-out;
    color: #fff;
    font-size: 10px;
}
.top-img {
    height: 100%;
    width: 100%;
    float: right;
    position: absolute;
    right: 0;
    top: 0;
    display: none;
}
.top-title2.contact{margin-left: 0px;line-height: 17px;}
.top-title2{
    font-size: 9px;
    display: inline-block;
    word-break: break-all;
    width: 100%;
    color: #7a7a7a;
    text-align: center;
    font-family: 'Montserrat', sans-serif;
    text-transform: uppercase;
    margin: 0 auto;
    font-weight: bold;
    }
.top-title{
    font-weight: bold;
    ¡: 24px;
    text-transform: uppercase;
    color: #fff;
    font-weight: normal;
    line-height: 85px;
    display: inline-block;
    word-break: break-all;
    width: 100%;
    letter-spacing: 0px;
    text-align: center;
    margin: 0 auto;
    font-size: 16px;
    line-height: 1.2em;
    color: #ffffff;
    margin-top: 20px;
    margin-bottom: 10px;
    }
#contact-box {
    background: #eaeaea;
    padding-top: 40px;
    padding-bottom: 113px;
}
.main-small {
    width: 700px;
    margin: 0 auto;
    font-size: 12px;
}
.col-10 {
    width: 100%;
    text-align: center;
    margin-bottom: 40px;
    letter-spacing: 0px;
    font-family: 'Bacasime Antique', sans-serif;
}
.col-11 {
    width: 100%;
    margin: 0 auto;
}
.r-title {
    /* font-size: 30px; */
    /* line-height: 30px; */
    font-size: 24px;
    line-height: 1.2em;
    margin: 0 0 1.5em;
    color: #232323;
    text-transform: uppercase;
    /* letter-spacing: -1px; */
    font-weight: normal;
    text-align: left;
}
.course-box {
    background: #fff;
    display: inline-block;
    float: left;
    width: 223px;
    border-radius: 5px;
    text-align: center;
    letter-spacing: 0px;
    overflow: hidden;
    margin: 5px;
    box-shadow: 2px 0px 23px -12px rgba(0, 0, 0, 0.36);
    -webkit-box-shadow: 2px 0px 23px -12px rgba(0, 0, 0, 0.36);
    -moz-box-shadow: 2px 0px 23px -12px rgba(0,0,0,0.36);
}
.course-img {
    display: block;
    height: 170px;
    background-size: cover;
    background-position: center;
    position: relative;
}
.course-title {
    font-size: 14px;
    font-weight: bold;
     */
    border-bottom: 1px solid #eaeaea;
    line-height: 21px;
    height: 59px;
    max-height: 73px;
    padding: 15px;
}
.course-col-2 {
    width: 50%;
    float: left;
    padding-top: 15px;
    padding-bottom: 15px;
    font-size: 11px;
}
.course-col-2 i{ margin-right:5px}
.course-col-2 a{
    color: #232323;
    text-decoration: none;
}
#all {
    padding-top: 60px;
    text-align: center;
    padding-bottom: 118px;
    background: white;
}
@media (max-width: 768px) {
  .main-small {
    max-width: 80%;
    padding: 0 12px;
  }
}
#contact-box select{
	height: 47px;
	box-shadow: none !important;
	padding: 13px 7px 11px 15px;
	outline: none;
	background: #f6eeea;
	margin-bottom: 20px;
}
.form_buttons .button3{
    display: inline-block;
}
.form_buttons{margin-bottom: 80px;}
/* Header general */
.dashboard-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 12px 20px;
  background-color: #232323;
  color: #ffffff;
  box-shadow: 0 2px 4px rgba(0,0,0,0.2);
  position: sticky;
  top: 0;
  z-index: 100;
  flex-wrap: wrap;
}

/* Información de usuario */
.user-info {
  display: flex;
  align-items: center;
}

.user-avatar {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  object-fit: cover;
  margin-right: 10px;
  border: 2px solid #eaeaea;
}

.user-name {
  font-size: 14px;
  font-weight: 600;
}

/* Botón hamburguesa (oculto en desktop) */
.menu-toggle {
  display: none;
  background: none;
  border: none;
  font-size: 32px;
  color: #ffffff;
  cursor: pointer;
  position: absolute;
  right: 8px;
}

/* Navegación */
.dashboard-nav {
  display: flex;
  gap: 20px;
}

.nav-item {
  font-size: 14px;
  font-weight: 500;
  text-decoration: none;
  color: #ffffff;
  padding: 6px 12px;
  border-radius: 4px;
  transition: background 0.3s, color 0.3s;
}

.nav-item:hover {
  background-color: #eaeaea;
  color: #232323;
}

.logout {
  background-color: #5d5d5d;
  color: #ffffff;
}

.logout:hover {
  background-color: #434343;
  color: #ffffff;
}

/* Responsive: pantallas pequeñas */
@media (max-width: 768px) {
  .menu-toggle {
    display: block;
  }

  .dashboard-nav {
    display: none; /* Oculto hasta abrir menú */
    flex-direction: column;
    width: 100%;
    margin-top: 10px;
    gap: 10px;
  }

  .dashboard-nav.show {
    display: flex;
  }

  .dashboard-header {
    flex-direction: column;
    align-items: flex-start;
  }
}
.user-img {
    width: 150px;
    height: 150px;
    border: 2px solid #232323;
    margin: 0 auto;
    border-radius: 100px;
    margin-bottom: 20px;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}
.button-3 a{
	background: #ffffff;
	padding: 9px 20px;
	font-size: 12px;
	text-decoration: none;
	color: #232323;
	margin-top: 20px;
	display: inline-block;
	transition: all .3s ease;
}
.button-3 a:hover{
	background: #505050;
	color: #ffffff;
}
.course-box i{ margin-right:5px}
.col-2b {
    float: left;
    width: 62%;
    letter-spacing: 0px;
}

.col-3b {
    float: left;
    width: 35%;
}

.col-box {
    padding-right: 5%; /* o tu padding fijo de 40px */
}
.c-title-down {
    border-bottom: 1px solid #d8d8d8;
    position: relative;
    padding: 5px;
    font-weight: bold;
    cursor: pointer;
}
.close-btn {
    position: absolute;
    right: 20px;
    top: 0;
}
.c-title-box {
    padding: 10px;
    font-size: 13px;
}

* a{ text-decoration:none; color: inherit;}


.header-course {
    background: #232323;
    height: 70px;
}
.c-col-left {
    float: left;
    width: 28%;
    margin: 1%;
}
.c-col-right {
    float: left;
    width: 69%;
    margin: 1%;
    margin-left: 0px;
}
#c-progress {
    width: 86%;
    float: left;
}
.c-title {
    font-size: 20px;
    font-weight: bold;
    line-height: 23px;
}

.c-back{float:left;font-weight: bold;letter-spacing: 0px;color: #fff;line-height: 70px;margin-left: 20px;}
.hr{width:100%;height:1px;background:#ccc;margin-top: 20px;margin-bottom:  20px;}
a[href^="tel:"] {
  color: inherit;
  text-decoration: none;
}
.c-file-btns{
    margin: 10px;
    text-align: center;
}
.c-title{
    font-size: 15px;
    font-weight: bold;
    line-height: 18px;
}
video::-webkit-media-controls-fullscreen-button {
    display: none;
}
video::-webkit-media-controls-play-button {}
video::-webkit-media-controls-timeline {}
video::-webkit-media-controls-current-time-display{}
video::-webkit-media-controls-time-remaining-display {}
video::-webkit-media-controls-mute-button {}
video::-webkit-media-controls-toggle-closed-captions-button {}
video::-webkit-media-controls-volume-slider {}
.c-percentage {
    font-size: 13px;
    font-weight: normal;
    line-height: 13px;
}
.c-bar-p {
    background: #67ae67;
    height: 4px;
}
#c-index {
    float: left;
    width: 86%;
    overflow: hidden;
    overflow: scroll;
}
.c-scroll {
    min-width: 200px;
}
.c-c {
    font-size: 13px;
    font-weight: bold;
    line-height: 15px;
    border-bottom: 1px solid #ccc;
    padding: 10px;
    /* height: 40px; */
}
.c-sub {
    padding: 10px;
    border-bottom: 1px solid #ccc;
    /* height: 50px; */
    padding-left: 20px;
}
.c-check {
    float: left;
}
.c-check.OK i{color:#67ae67}
	.c-check i {
    color: #acacac;
    margin-right: 10px;
}
	.c-sub-title {
    font-size: 13px;
    line-height: 18px;
    overflow: hidden;
}
	.c-sub-icon {
    font-size: 10px;
    text-transform: uppercase;
    line-height: 10px;
    color: #acacac;
    margin-top: 3px;
    margin-left: 23px;
}
	.c-file-top {
    background: #232323;
    color: #fff;
    padding: 10px 15px;
}
	.c-file-btns {
    margin: 10px;
    text-align: center;
}
	.c-file-title {
    float: left;
    font-weight: bold;
    letter-spacing: 0px;
}
	.c-file-open {
    float: right;
    cursor: pointer;
}
.c-box-style {
    background: #fff;
    box-shadow: 1px 1px 8px -1px rgba(0, 0, 0, 0.39);
    -webkit-box-shadow: 1px 1px 8px -1px rgba(0, 0, 0, 0.39);
    -moz-box-shadow: 1px 1px 8px -1px rgba(0,0,0,0.39);
    padding: 7%;
    letter-spacing: 0px;
    border-radius: 5px;
    margin-bottom: 4%;
}
.logo-small-2{
	width: 55px;
	float: right;
	padding: 13px;
}
.logo-small-2 img{
	width: 100%;
}
.pago-wrapper {
    display: inline-flex;       /* alinea botón y texto lado a lado */
    align-items: center;        /* centra verticalmente */
    gap: 12px;                  /* espacio entre botón y logo */
}

.btn.signup {
    cursor: pointer;
    transition: background 0.3s;
}
.pago-info {
    font-size: 14px;
    color: #333;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.pago-info img {
    height: 20px; /* tamaño del logo */
}
.header-course i{ margin-right:5px}
/* Tablets */
@media screen and (max-width: 992px) {
    .col-2b{
        width: 57%;       /* se hacen más parecidas */
        float: left;
        margin-bottom: 20px; /* espacio entre filas */
    }
    .col-3b {
    width: 40%;
}
}

/* Móviles */
@media screen and (max-width: 600px) {
    .col-2b, .col-3b {
        width: 100%;      /* columnas apiladas */
        float: none;
        padding-right: 0; /* opcional para que no sobrepase la pantalla */
        margin: 0;
        margin-bottom: 20px;
    }
	.col-box {
    padding-right: 0px;
}
 
}
@media screen and (max-width: 780px) {
   	.c-col-left{
		width: 90%;
		margin: 0 auto;
		float: none;
		margin-top: 20px;
	}
	.c-col-right{
		width: 90%;
		margin: 0 auto;
		float: none;
	}
}
.zoom-chapters {
    max-width: 800px;
    margin: 0 auto;
    padding: 20px;
    padding-bottom: 0px;
    font-family: Arial, sans-serif;
}

.zoom-chapters h2 {
    text-align: left;
    margin-bottom: 20px;
    font-size: 20px;
}

.zoom-card {
    background-color: #f2f2f2;
    border-radius: 8px;
    padding: 15px 20px;
    margin-bottom: 15px;
    /* box-shadow: 0 2px 5px rgba(0,0,0,0.1); */
}

.zoom-card h3 {
    margin-top: 0;
    margin-bottom: 10px;
    color: #232323;
    font-size: 16px;
}

.zoom-info {
    margin-bottom: 10px;
    line-height: 1.5;
}

.btn-join {
    display: inline-block;
    padding: 10px 20px;
    background-color: #2d8cff;
    color: #FFFFFF;
    text-decoration: none;
    border-radius: 5px;
    transition: 0.3s;
}

.btn-join:hover {
    background-color: #555555;
}
.right-box.full{
    float: none;
    width: 100%;
    position: fixed;
    /* background: #fff; */
    margin: 0px;
    border-radius: 0px;
    box-shadow: 1px 1px 8px -1px rgba(0,0,0,0.39);
    -webkit-box-shadow: 1px 1px 8px -1px rgba(0,0,0,0.39);
    -moz-box-shadow: 1px 1px 8px -1px rgba(0, 0, 0, 0.39);
    overflow: scroll;
    margin-left: 0px;
    top: 0;
    bottom: 0;
    z-index: 9999999;
    position: FIXED;
    left: 0;
}
#payment-checking-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.6);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9999;
}

.payment-box {
    background: #fff;
    max-width: 420px;
    padding: 30px;
    border-radius: 12px;
    text-align: center;
    font-family: Arial, sans-serif;
}

.payment-box h3 {
    margin-bottom: 15px;
}
.title-pago{
	font-weight:bold;
	margin-bottom: 20px;
	font-size: 20px;
}
.box-pago{
	background:#f2f2f2;
	font-size: 13px;
	padding: 10px 40px;
	border-radius: 5px;
	line-height: 18px;
	color: #b5b5b5;
}
.course-price {
    position: absolute;
    bottom: 10px;
    right: 10px;
    background-color: #232323bf;
    color: #fff;
    font-weight: bold;
    padding: 2px 6px;
    border-radius: 6px;
    font-size: 12px;
}

.code-container {
    position: relative;
    margin-bottom: 20px;
    border-radius: 8px;
    overflow: hidden;
}

.code-container pre {
    margin: 0;
    padding: 20px;
    overflow-x: auto;
    background: #2d2d2d; /* fondo oscuro */
    color: #f8f8f2;
    font-family: 'Fira Code', monospace;
    font-size: 14px;
}

.copy-btn {
    position: absolute;
    top: 17px;
    right: 10px;
    padding: 6px 12px;
    background: #505050;
    color: white;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-size: 12px;
}

.copy-btn:hover {
    background: #434343;
}
.right-box{
	margin-bottom: 2%;
	background: #ffffff;
	border-radius: 5px;
	overflow: hidden;
	border: 1px solid #eeeeee;
}
.code-title{
    font-size: 12px;
    margin: 20px;
    margin-bottom: 0px;
    /* font-weight: bold; */
}
.code-place {
  font-size: 11px;
  background-color: #eaeaea;
  padding: 0px 5px;
  border-radius: 6px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  color: #505050;
  /* margin-left: 20px; */
}

.code-place .folder {
  font-weight: normal;
  color: #9a9a9a;
}

.code-place .file {
  font-weight: bold;
  color: #2b6cb0;
}

.code-place .separator {
  margin: 0 4px;
  color: #718096;
}
#free-bg {
  background: linear-gradient(-45deg, #f1c40f, #ee7752, #e73c7e, #23a6d5, #23d5ab); /* Agregamos mostaza */
	background-size: 400% 400%;
	animation: gradient 15s ease infinite;
}

@keyframes gradient {
	0% {
		background-position: 0% 50%;
	}
	50% {
		background-position: 100% 50%;
	}
	100% {
		background-position: 0% 50%;
	}
}
.course-progress{
    margin: 0px;
}

.progress-bar{
    height:6px;
    background:#e5e5e5;
    border-radius:4px;
    overflow:hidden;
}

.progress-bar-fill{
    height:100%;
    background:#2ecc71;
}

.progress-text{
    font-size:12px;
    color: #fff;
    margin-top:4px;
    opacity: 0.8;
    font-weight: bold;
}  
.right-container{
  background:#ffffff;
  padding: 20px;
  border-radius: 5px;
  box-shadow: 1px 1px 8px -1px rgba(0, 0, 0, 0.39);
  -webkit-box-shadow: 1px 1px 8px -1px rgba(0, 0, 0, 0.39);
  -moz-box-shadow: 1px 1px 8px -1px rgba(0, 0, 0, 0.39);
  overflow: hidden;
  margin-bottom: 20px;
  padding-top: 80px;
  position: relative;
}
.c-chapter-top {
    display: flex;
    align-items: center;          /* Centra verticalmente */
    justify-content: space-between; /* Título izquierda, flecha derecha */
    cursor: pointer;              /* Indica que es clickeable */
    padding: 12px 16px;
    user-select: none;
    background: #232323;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    /* width: 100%; */
    color: #ffffff;
}
.c-chapter-title {
    font-size: 16px;
    font-weight: 600;
}

.c-file-arrow {
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.3s ease;
}

/* Rotación cuando el acordeón está abierto */
.c-chapter-top.active .c-file-arrow {
    transform: rotate(180deg);
}

.pdf-controls {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin: 15px 0;
}

/* Botones */
.pdf-controls button {
    background-color: #232323;
    color: #ffffff;
    border: none;
    padding: 6px 14px;
    font-size: 14px;
    border-radius: 4px;
    cursor: pointer;
    transition: background-color 0.2s ease, transform 0.1s ease;
}

/* Hover */
.pdf-controls button:hover {
    background-color: #3a3a3a;
}

/* Click */
.pdf-controls button:active {
    transform: scale(0.96);
}

/* Botón deshabilitado */
.pdf-controls button:disabled {
    background-color: #999999;
    cursor: not-allowed;
}

/* Contador de páginas */
.pdf-controls .page_num,
.pdf-controls .page_count {
    font-size: 14px;
    color: #232323;
    min-width: 18px;
    text-align: center;
}
.right-container {
    transition: all 0.3s ease;
    overflow: hidden;
}

.right-container.collapsed {
    height: 44px;
    padding: 0;
}