/**
Theme Name: Paquetellegue Express Chalco
Author: Cointic
Author URI: https://cointic.com.mx/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: paquetellegue-express-chalco
Template: astra

/*Estilos Fernando */

.ser-pos-sticky {
	position: sticky !important;
	top: 140px;
}

/*Formulario */

/* Formulario */ 

.form-style {
	display: flex;
	flex-wrap: wrap;
    justify-content: space-between;
}


.form-style p {
	margin-bottom: 10px !important;
}

.input-com {
	width: 100%;
	margin: 5px 0px 5px 0px;
}

.input-com input {
	padding: 25px 0px 25px 20px !important;
	font-size: 15px !important;   
	border: 1px solid #cccccc;
	border-radius: 10px !important;
    font-family: 'Jost';
}

.input-com input:focus {
	border-style: solid;
    border-color: #FBB03B !important;
}

.input-com textarea {
	min-height: 150px !important;
	padding: 20px !important;
    border: 1px solid #cccccc;
    font-family: 'Jost';
	height: 200px !important;
	border-radius: 10px;
}

.input-com textarea:focus {
	border-style: solid;
    border-color: #FBB03B !important;
}

.input-com select {
	padding: 0px 20px !important;
    border: 1px solid #cccccc;
    font-family: 'Jost';
	height: 42px;
}

.input-com select:focus {
    border-color: #FBB03B !important;
}

.input-med {
	width: 48%;
	margin: 5px 0px 5px 0px;
}

.input-med input {
	padding: 25px 0px 25px 20px !important;
	font-size: 15px !important;   
	border: 1px solid #cccccc;
	border-radius: 10px !important;
}

.input-med input:focus {
	border-style: solid;
    border-color: #FBB03B !important;
}

.input-btn input {
	padding: 12px 40px;
    font-size: 16px;
    background: #3AAA35;
    border: 1px solid #3AAA35;
    color: #ffff;
	transition: .3s;
}

.input-btn input:hover {
    background: #FBB03B;
    border: 1px solid #FBB03B;
    color: #ffff;
	transition: .3s;
}

@media (max-width: 767px) {
	
	.input-med {
		width: 100%;
	}
	.she-header .elementskit-menu-container {
        height: 100vh !important;
	 }
}


/*Estilos Angel */
/* Tarjetas */
.servicios-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 35px;
  max-width: 1200px;
  margin: 0 auto;
  padding: 20px 15px;
  justify-items: center;
}

.servicio-card {
  background: #fff;
  border-radius: 20px;
  text-align: center;
  padding: 30px 25px;
  transition: all 0.35s ease;
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.05);
  border-top: 7px solid #3AA935;
  position: relative;
  overflow: hidden;
  width: 100%;
  max-width: 350px;
}

.servicio-card::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  height: 6px;
  width: 0%;
  background: linear-gradient(90deg, #3AA935, #F5A623);
  transition: width 0.4s ease;
}

.servicio-card:hover::after {
  width: 100%;
}

.servicio-icon {
  width: 90px;
  height: 90px;
  margin: 0 auto 20px;
  border-radius: 50%;
  background: #EAF6E9;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 4px;
  transition: all 0.35s ease;
  color: #3AA935;
  box-shadow: 0 0 10px rgba(58, 169, 53, 0.15);
}

.servicio-card:hover .servicio-icon {
  background: #F5A623;
  color: #fff;
  transform: scale(1.1) rotate(10deg);
}

.servicio-card h3 {
  font-size: 21px;
  font-weight: 700;
  color: #000;
  margin-bottom: 10px;
}

.servicio-card p {
  font-size: 15px;
  color: #555;
  line-height: 1.6;
  margin: 0 auto;
  max-width: 90%;
}

/* Formulario */
.contact-form-grid {
  display: flex;
  flex-direction: column;
  gap: 1.3rem;
  max-width: 700px;
  margin: 40px auto;
  background: #fff;
  padding: 2rem;
  border-radius: 16px;
  border-top: 5px solid #3AA935;
  box-shadow: 0 5px 20px rgba(0,0,0,0.08);
  font-family: 'Poppins', sans-serif;
}

/* Filas */
.contact-form-grid .row {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}

/* Columnas */
.contact-form-grid .col {
  flex: 1;
  min-width: 260px;
  display: flex;
  flex-direction: column;
}

/* Etiquetas */
.contact-form-grid label {
  font-weight: 600;
  color: #222;
  margin-bottom: 6px;
  font-size: 15px;
}

/* Campos de entrada */
.contact-form-grid input[type="text"],
.contact-form-grid input[type="email"],
.contact-form-grid input[type="tel"],
.contact-form-grid select,
.contact-form-grid textarea {
  width: 100%;
  padding: 10px 12px;
  border: 1.8px solid #28a745; /* verde inicial */
  border-radius: 6px;
  font-size: 15px;
  color: #333;
  background-color: #fff;
  transition: all 0.3s ease;
}

/* Placeholder */
.contact-form-grid ::placeholder {
  color: #aaa;
}

/* Efecto al enfocar */
.contact-form-grid input[type="text"]:focus,
.contact-form-grid input[type="email"]:focus,
.contact-form-grid input[type="tel"]:focus, 
.contact-form-grid textarea:focus {
  border-color: #7ae27a !important;/* verde más claro */
  box-shadow: 0 0 5px rgba(122, 226, 122, 0.4);
  outline: none;
}

/* Área de texto */
.contact-form-grid textarea {
  resize: none; /* no se puede cambiar tamaño */
  height: 120px;
  max-height: 120px;
  min-height: 120px;
}

/* Botón de envío */
.contact-form-grid input[type="submit"],
.contact-form-grid button[type="submit"] {
  background-color: #3AA935;
  color: #fff;
  font-weight: 600;
  padding: 12px 28px;
  border: none;
  border-radius: 8px;
  cursor: pointer;
  transition: all 0.25s ease;
  font-size: 16px;
}

.contact-form-grid input[type="submit"]:hover,
.contact-form-grid button[type="submit"]:hover {
  background-color: #F5A623;
  transform: scale(1.03);
}

/* Responsivo*/
@media (max-width: 768px) {
  .contact-form-grid {
    padding: 1.3rem;
  }

  .contact-form-grid .row {
    flex-direction: column;
    gap: 0.8rem;
  }

  .contact-form-grid input,
  .contact-form-grid select,
  .contact-form-grid textarea {
    font-size: 14px;
    padding: 12px;
  }

  .contact-form-grid input[type="submit"] {
    width: 100%;
  }
}


/* maps */
.mapa-box {
  position: relative;
  width: 100%;
  max-width: 850px;
  margin: 30px auto;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 8px 25px rgba(0,0,0,0.2);
  border: 4px solid #00a651;
  transition: transform 0.3s ease, border-color 0.3s ease;
}

.mapa-box iframe {
  width: 100%;
  height: 380px;
  border: none;
  display: block;
}

.mapa-box:hover {
  transform: scale(1.02);
  border-color: #ff7a00;
}

/* Decoracion cuadritos */
.hero-image {
  position: relative;
  display: inline-block;
}

.hero-image::before,
.hero-image::after {
  content: "";
  position: absolute;
  width: 40px;
  height: 40px;
  border-radius: 8px;
  opacity: 0.85;
  animation: float 5s infinite ease-in-out;
}

.hero-image::before {
  top: 10%;
  left: -15px;
  background-color: #00a651;
}

.hero-image::after {
  bottom: 10%;
  right: -15px;
  background-color: #F5A623;
  animation-delay: 2.5s;
}

@keyframes float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-15px); }
}

/*Carrusel de imagenes*/

/* Aumentar tamaño del carrusel solo en móviles */
@media (max-width: 768px) {
  .imagen-carrusel img {
    max-height: 80px !important; /* Ajusta la altura de las imágenes */
    width: auto !important;
  }

  .imagen-carrusel {
    padding: 10px 0 !important; /* Espaciado vertical adicional */
  }
}

/* responsividad*/

/* Tablets (hasta 992px) */
@media (max-width: 992px) {
  .servicios-grid {
    gap: 25px;
    padding: 15px;
  }

  .servicio-card {
    max-width: 320px;
    padding: 25px 20px;
  }

  .contact-form-grid {
    padding: 1.5rem;
  }

  .mapa-box iframe {
    height: 320px;
  }
}

/* Móviles grandes (hasta 768px) */
@media (max-width: 768px) {
  

  .servicios-grid {
    grid-template-columns: 1fr 1fr;
  }

  .contact-form-grid input[type="submit"],
  .contact-form-grid button[type="submit"] {
    width: 100%;
    font-size: 14px;
  }

  .mapa-box {
    border-width: 3px;
    border-radius: 10px;
  }

  .mapa-box iframe {
    height: 280px;
  }
}

/* Móviles pequeños (hasta 480px) */
@media (max-width: 480px) {
  .servicios-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .servicio-card {
    padding: 20px 15px;
  }

  .servicio-card h3 {
    font-size: 18px;
  }

  .servicio-card p {
    font-size: 14px;
  }

  .contact-form-grid {
    padding: 1rem;
  }

  .mapa-box iframe {
    height: 240px;
  }

}




