.elementor-300 .elementor-element.elementor-element-048f210{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-300 .elementor-element.elementor-element-0d8efb5{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}/* Start custom CSS for html, class: .elementor-element-2716716 *//* ===== SECCIÓN GENERAL ===== */
.sos-contact-section{
  position:relative;
  overflow:hidden;
  padding:90px 20px;
  font-family:Arial, Helvetica, sans-serif;
  background-image:url('https://images.unsplash.com/photo-1606811841689-23dfddce3e95?auto=format&fit=crop&w=1800&q=80');
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
}

.sos-contact-overlay{
  position:absolute;
  inset:0;
  z-index:1;
  background:
    linear-gradient(rgba(255,255,255,0.85), rgba(255,255,255,0.9)),
    linear-gradient(130deg, rgba(0,60,135,0.08), rgba(255,135,40,0.05));
}

/* DECORACIONES */
.sos-contact-decor{
  position:absolute;
  border-radius:50%;
  filter:blur(30px);
  z-index:1;
  pointer-events:none;
}

.decor-one{
  width:240px;
  height:240px;
  background:rgba(0,60,135,0.12);
  left:-60px;
  top:40px;
}

.decor-two{
  width:220px;
  height:220px;
  background:rgba(255,135,40,0.14);
  right:-60px;
  bottom:30px;
}

/* CONTENEDOR */
.sos-contact-container{
  position:relative;
  z-index:2;
  max-width:1240px;
  margin:0 auto;
  display:grid;
  grid-template-columns:1.05fr 0.95fr;
  gap:36px;
  align-items:center;
}

/* ===== IZQUIERDA ===== */
.sos-contact-glass{
  background:rgba(255,255,255,0.35);
  border:1px solid rgba(255,255,255,0.6);
  box-shadow:0 22px 60px rgba(0,60,135,0.12);
  backdrop-filter:blur(12px);
  border-radius:36px;
  padding:50px 42px;
}

/* BADGE */
.sos-mini-badge{
  display:inline-block;
  padding:9px 16px;
  border-radius:999px;
  background:rgba(0,60,135,0.08);
  color:#003C87;
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  margin-bottom:18px;
}

/* TEXTOS */
.sos-contact-left h2{
  font-size:56px;
  font-weight:800;
  color:#003C87;
  margin-bottom:10px;
}

.sos-contact-left h3{
  font-size:26px;
  color:#1f3d68;
  margin-bottom:26px;
}

.sos-contact-text{
  font-size:19px;
  line-height:1.7;
  color:#374b67;
  margin-bottom:30px;
}

/* INFO LIST */
.sos-contact-info-list{
  display:flex;
  flex-direction:column;
  gap:20px;
  margin-bottom:30px;
}

.sos-contact-info-item{
  display:flex;
  gap:15px;
  align-items:flex-start;
}

.sos-icon-circle{
  width:52px;
  height:52px;
  border-radius:50%;
  background:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:22px;
  box-shadow:0 8px 20px rgba(0,0,0,0.08);
}

.sos-contact-info-item strong{
  font-size:20px;
  color:#003C87;
}

.sos-contact-info-item span{
  font-size:16px;
  color:#5a6d86;
}

/* BOTONES */
.sos-contact-buttons{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
}

.sos-contact-buttons a{
  text-decoration:none;
  padding:16px 22px;
  border-radius:14px;
  font-weight:800;
  font-size:15px;
  transition:all .3s ease;
}

.btn-whatsapp{
  background:linear-gradient(135deg,#25D366,#1ebe5d);
  color:#fff;
  box-shadow:0 10px 25px rgba(37,211,102,0.3);
}

.btn-location{
  background:linear-gradient(135deg,#003C87,#0f67d0);
  color:#fff;
}

.sos-contact-buttons a:hover{
  transform:translateY(-3px);
}

/* ===== FORMULARIO ===== */
.sos-form-card{
  background:rgba(255,255,255,0.98);
  border-radius:30px;
  padding:35px;
  box-shadow:0 25px 60px rgba(0,60,135,0.15);
}

/* HEAD */
.sos-form-head{
  margin-bottom:25px;
}

.sos-form-badge{
  display:inline-block;
  padding:7px 14px;
  border-radius:999px;
  background:rgba(0,60,135,0.08);
  color:#003C87;
  font-size:12px;
  font-weight:800;
  margin-bottom:12px;
}

.sos-form-head h3{
  font-size:38px;
  color:#003C87;
  margin-bottom:10px;
}

.sos-form-head p{
  font-size:15px;
  color:#5b6e86;
}

/* INPUTS */
.sos-input-group{
  margin-bottom:14px;
}

.sos-input-group label{
  font-size:13px;
  font-weight:700;
  color:#003C87;
  margin-bottom:6px;
  display:block;
}

.sos-input input,
.sos-input textarea{
  width:100%;
  padding:15px;
  border-radius:14px;
  border:1.5px solid #d7deea;
  font-size:15px;
  transition:all .25s;
}

.sos-input input:focus,
.sos-input textarea:focus{
  border-color:#0f67d0;
  box-shadow:0 0 0 4px rgba(15,103,208,0.1);
  outline:none;
}

.sos-input textarea{
  min-height:120px;
  resize:vertical;
}

/* SELECT CUSTOM */
.sos-custom-select{
  position:relative;
}

.sos-custom-select-trigger{
  width:100%;
  padding:15px;
  border-radius:14px;
  border:1.5px solid #d7deea;
  background:#fff;
  cursor:pointer;
  text-align:left;
}

.sos-custom-select-menu{
  position:absolute;
  top:110%;
  left:0;
  right:0;
  background:#fff;
  border-radius:16px;
  box-shadow:0 20px 40px rgba(0,0,0,0.1);
  display:none;
  padding:10px;
}

.sos-custom-select.open .sos-custom-select-menu{
  display:block;
}

.sos-custom-option{
  padding:12px;
  border:none;
  width:100%;
  text-align:left;
  background:none;
  cursor:pointer;
  border-radius:10px;
  font-weight:600;
}

.sos-custom-option:hover{
  background:#f3f7fd;
}

/* BOTÓN SUBMIT */
.sos-submit-btn{
  width:100%;
  margin-top:10px;
  padding:18px;
  border:none;
  border-radius:16px;
  font-size:18px;
  font-weight:800;
  color:#fff;
  cursor:pointer;
  background:linear-gradient(90deg,#ff7a18,#ffb347);
  box-shadow:0 15px 30px rgba(255,135,40,0.3);
  transition:all .25s;
}

.sos-submit-btn:hover{
  transform:translateY(-2px);
}

/* ===== RESPONSIVE ===== */
@media (max-width: 1024px){
  .sos-contact-container{
    grid-template-columns:1fr;
  }

  .sos-contact-left h2{
    font-size:44px;
  }
}

@media (max-width: 767px){
  .sos-contact-section{
    padding:60px 16px;
  }

  .sos-contact-glass,
  .sos-form-card{
    padding:26px;
  }

  .sos-contact-left h2{
    font-size:34px;
  }

  .sos-contact-left h3{
    font-size:20px;
  }
}/* End custom CSS */