:root{--bg:#ffffff;--ink:#111;--accent:#3b5a2c;--muted:#f4f4f5;}
*{box-sizing:border-box}
body{
	font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu;
	line-height:1.5;margin:0;
	color:var(--ink);
	background:var(--bg)
}
.hp-field {
  position: absolute;
  left: -9999px;
  opacity: 0;
  height: 0;
  overflow: hidden;
}

.container{
	max-width:960px;
	margin:auto;
	padding:15px
}
.nav{
	background:var(--muted);
	border-bottom:1px solid #e5e7eb
}
.nav .container{
	display:flex;gap:16px;
	align-items:center;
	justify-content:space-between
}
.brand{
	font-weight:700
}
.menu a{
	margin:0 8px;text-decoration:none;
	color:var(--ink)
}
.menu a.active, .menu a:hover{
	color:var(--accent);
	text-decoration:underline
}
.banner{
	background:#f4f4f5;
	border:1px dashed #94a3b8;
	padding:24px;
	border-radius:12px;
	margin:24px 0;
	display:flex;
	gap:16px;
	align-items:center
}
.banner img{
	max-width:220px;
	height:auto
}
.card{
	background:#fff;
	border:1px solid #e5e7eb;
	border-radius:12px;
	padding:16px;
	margin:12px 0
}
footer{
	margin-top:24px;
	padding:16px 0;
	border-top:1px solid #e5e7eb;
	color:#555
}
.button{
	display:inline-block;
	background:var(--accent);
	color:white;
	padding:10px 14px;
	border-radius:10px;
	text-decoration:none
}
label{
	display:block;
	margin:8px 0 4px
}
input, textarea{
	width:100%;
	padding:10px;
	border:1px solid #d1d5db;
	border-radius:8px
}


@media (max-width:640px){.banner{flex-direction:column}}

.nav img{
	margin: 0;
	padding: 0;
	width: 70px;
	height: 70px;
}

.ser-text{
	text-align: center;
	padding: 40px;
}
.servicios-content {
    display: flex;
    justify-content: space-around;
    margin-top: 20px;
    color: skyblue;
}

.servicio-1 {
    text-align: center;
    h3{
    	color: black;
    }
}

.servicio-1 i {
    font-size: 40px;
    margin-bottom: 10px;
}

.servicio-1 h3 {
    margin-top: 5px;
}
select{
  width:100%;
  padding:10px;
  border:1px solid #d1d5db;
  border-radius:8px;
  margin-bottom:8px;
}

a{
	text-decoration: none;
	color: black;
	font-size: 20px;
}
.unidad{
	font-size: 20px;

}

.unidad{
  font-size: 25px;
}

.unidad-sm { display: none; }

/* MOBILE */
@media (max-width: 640px){
  .nav .container{
    flex-wrap: wrap;             
    justify-content: center;      
    text-align: center;
  }

  .nav img{
    width: 50px;
    height: 50px;
  }

  .unidad{
    font-size: 18px;
  }

  .unidad-lg { display: none; }
  .unidad-sm { display: inline-block; }

  .navbar{
    width: 100%;
    margin-top: 4px;
  }

  .navbar a{
    font-size: 16px;
  }
}



/* Fondo semi-transparente */
.modal {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.5);
  display: none;
  align-items: center;
  justify-content: center;
  z-index: 999;
}

/* Cuando tenga la clase show, se muestra */
.modal.show {
  display: flex;
}

/* Cuadro blanco del contenido */
.modal-content {
  background: #fff;
  max-width: 480px;
  width: 90%;
  border-radius: 10px;
  padding: 20px 24px 24px;
  box-shadow: 0 10px 25px rgba(0,0,0,0.2);
  font-size: 0.95rem;
}

.modal-content h2 {
  text-align: center;
  margin-top: 0;
  margin-bottom: 8px;
}

.modal-content hr {
  border: none;
  border-top: 2px solid #3b5a2c; 
  margin-bottom: 10px;
}

.modal-content ul {
  padding-left: 18px;
  max-height: 300px;
  overflow-y: auto;
}

.modal-content li {
  margin-bottom: 6px;
}

/* Botón OK dentro del modal puede reutilizar .button */
.modal-content .button {
  width: 100%;
  margin-top: 12px;
}

.horario-msg {
  margin-top: 5px;
  font-size: 0.9rem;
  text-align: center;
}

.button:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
