/* landing-tecmilenio-optimized.css
   Cleaned and optimized (keeps first-version colors and structure)
*/

* { box-sizing: border-box; margin:0; padding:0; -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale; }
.tecmilenio { background-color: #78D64B; color: #263640; font-family: 'Poppins', sans-serif; line-height:1.5; }

/* Container */
.container { max-width:1150px; margin:0 auto; padding-left:15px; padding-right:15px; padding-bottom:40px; }

/* Header */
.bg-header { background-color:#00534C; }
.navbar { padding: 18px 0; }
.logo-img { max-width:230px; display:block; }
.nav-link { font-weight:700; color: #fff !important; font-size:13px; padding: 10px 12px; }
.nav-link.active { border-bottom:5px solid #fff; }
.call-text { color:#fff; font-size:16px; }
.phone-link { color:#fff; font-size:25px; font-weight:700; text-decoration:underline; }

/* Bar */
.bar { background-color:#78D64B; }
.content-bar { height:80px; display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; }
.text-bar { color:#07322F; font-weight:700; font-size:20px; }
.wa-bar a { color:#07322F; display:inline-flex; align-items:center; }

/* Hero */
.hero { padding:30px 0; }
.hero-img { display:block; border-radius:4px;}
.form-wrapper { max-width:400px; margin:0 auto; }
.body-form { background:#fff; border-radius:6px; padding:16px; }
.body-form h3 { color:#00534C; font-weight:900; }
.form-text { color:#00534C; font-weight:700; font-size:12px; display:block; margin-bottom:6px; }
.form-control, .form-select { height:40px; border-radius:10px; background:#EAF2FF; border:0; padding:6px 10px; }
.form-control:focus, .form-select:focus { box-shadow:none; outline:none; }
.btn-cta { background:#97D700; color:#000; font-weight:700; border-radius:30px; height:50px; border:0; }
.head-form {background-color: #00534C; padding: 15px; border-radius: 0;}
.head-form p { font-size: 15px; color: white; text-align: center; margin: 0; }
.video video{ width: 100%; max-width: 750px; height: 100%; max-height: 430px; display: block; margin: 0 auto 60px;}

/* Carrusel */
.carruselBlock { padding:70px 0; }
.carruselOferta { position:relative; }
.itemOferta { padding:10px; }
.contentItemOferta { background:#00534C; color:#fff; padding:20px; border-radius:10px; }
.contentItemOferta .intro h4 { color:#fff; font-size:16px; text-align:center; margin-bottom:8px; }
.contentItemOferta .intro h3 { color:#fff; font-size:18px; text-align:center; margin-bottom:12px; }
.contentItemOferta .intro p { color:#78D64B; text-align:center; margin-bottom:12px; }
.icons .fas { color:#fff; font-size:30px; margin-bottom:8px; }
.info { background:#97D700; color:#00534C; padding:15px; border-radius:10px; margin-bottom:15px; }
.info ul { padding-left:18px; color:#fff; }
.convenio-becas .side h4 { color:#78D64B; margin-bottom:6px; }


/* Buttons inside cards */
.btnInterest { background:#78D64B; color:#000; font-weight:700; padding:8px 18px; border-radius:20px; text-decoration:none; }

/* Footer */
footer { background:#00534C; padding:18px 40px; color:#fff; display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; }
footer p { color:#fff; }


/* Mobile specific */
@media (max-width: 767px) {
  .container { padding-left:12px; padding-right:12px; }
  .content-bar { padding:20px 0; height:auto; text-align:center; }
  .text-bar { font-size:16px; }
  .btns-movil { display:flex !important; position:fixed; bottom:0; left:0; right:0; z-index:9999; background:#97D700; }
  .btns-movil a { flex:1; padding:14px 8px; color:#07322F; text-align:center; border-right:1px solid #07322F; }
  .btns-movil a:last-child { border-right:none; }
  .navbar { padding:12px 0; }
  .logo-img { max-width:180px; margin:0 auto; }
  .call { margin-top:12px; text-align:center; width:100%; }
  .form-wrapper { max-width:100%; margin-top:18px; }
  .hero-img { margin-bottom:20px; }
  .contentItemOferta { padding:18px; }
  .nav-link.active { border-bottom:none; text-decoration:underline; }
  footer { padding:20px; text-align:center; margin-bottom:55px !important; }
  footer .container{display: block !important;}
 }
}
@media (min-width: 768px) {
	.tecmilenio .btns-movil { display: none !important; }
	
}
@media (min-width: 768px) {
	.btns-movil { display: none !important; }
	
}
/* Utility tweaks */
a { text-decoration:none; }
ul { list-style: disc; margin-left:18px; }
p { color:#fff; }

/* ================================
   HERO DESKTOP + RESPONSIVE FORM
   ================================ */

/* Estructura general */
.hero {
  position: relative;
  padding: 0;
}

/* Imagen full width */
.hero .hero-img {
  width: 100%;
  height: auto;
  display: block;
}

/* ------- Desktop -------- */
@media (min-width: 992px) {

  /* Contenedor del banner debe ser full-width */
  .hero .container {
    max-width: 100%;
    padding: 0;
	height:700px;
	overflow:hidden;
	margin-bottom:70px;
  }

  /* Desactivar grid original */
  .hero .row {
    position: relative;
  }

  /* Formulario flotado sobre la imagen */
  #form.form-wrapper {
    position: absolute;
    top: 35%;
    right: 4%;
    transform: translateY(-50%);
    width: 380px;
    z-index: 5;

    /* sombra estética */
    box-shadow: 0 8px 25px rgba(0,0,0,0.25);
  }
}

/* ------- Tablets y móviles -------- */
@media (max-width: 991px) {

  /* Restaurar comportamiento normal */
  #form.form-wrapper {
    position: relative;
    top: auto;
    right: auto;
    transform: none;
    width: 100%;
    margin-top: 20px;
    box-shadow: none;
  }

  /* Espacio entre imagen y form */
  .hero-img {
    margin-bottom: 15px;
  }
}
