.elementor-114 .elementor-element.elementor-element-9d3fa6e{--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-114 .elementor-element.elementor-element-9d3fa6e:not(.elementor-motion-effects-element-type-background), .elementor-114 .elementor-element.elementor-element-9d3fa6e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#087000;}.elementor-114 .elementor-element.elementor-element-6828394{--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-114 .elementor-element.elementor-element-6f404eb{width:var( --container-widget-width, 100% );max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;--container-widget-width:100%;--container-widget-flex-grow:0;}.elementor-114 .elementor-element.elementor-element-6f404eb.elementor-element{--align-self:stretch;--flex-grow:0;--flex-shrink:0;}:root{--page-title-display:none;}/* Start custom CSS for html, class: .elementor-element-6f404eb */.about-section {
    max-width: 2200px;
    margin: 0 auto;
    position: relative;
    overflow: hidden;
    padding: 20px;
}

.about-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    min-height: 200px;
    background: linear-gradient(135deg, #f0f9ff 1%, #087000 90%);
    border-radius: 20px;
    overflow: hidden;
    position: relative;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.08);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.about-container:hover {
    transform: scale(1.01);
    box-shadow: 0 15px 50px rgba(0, 0, 0, 0.12);
}

.text-content {
    padding: 60px 50px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    position: relative;
    z-index: 2;
}

.about-title {
    font-size: 48px;
    font-weight: 800;
    color: #fff;
    line-height: 1.2;
    letter-spacing: -0.5px;
}

.image-content {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}

.business-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 15px;
    margin: 20px;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.12);
    transition: transform 0.5s ease, box-shadow 0.5s ease;
}

.business-image:hover {
    transform: scale(1.05);
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.18);
}

/* Elemento decorativo curvo */
.decorative-shape {
    position: absolute;
    right: -100px;
    top: -50px;
    width: 250px;
    height: 500px;
    background: linear-gradient(45deg, #085000 , #085000);
    border-radius: 50% 0 50% 0;
    opacity: 0.75;
    z-index: 1;
    transform: rotate(15deg);
    transition: transform 0.5s ease;
}

.decorative-shape::before {
    content: '';
    position: absolute;
    right: 50px;
    bottom: 50px;
    width: 150px;
    height: 150px;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 50%;
}

/* Elementos flotantes */
.floating-elements {
    position: absolute;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 1;
}

.floating-circle {
    position: absolute;
    border-radius: 50%;
    background: rgba(0, 119, 3, 0.12);
    animation: float 6s ease-in-out infinite;
}

.circle-1 {
    width: 80px;
    height: 80px;
    top: 10%;
    left: 10%;
    animation-delay: 0s;
}

.circle-2 {
    width: 60px;
    height: 60px;
    top: 70%;
    left: 5%;
    animation-delay: 2s;
}

.circle-3 {
    width: 40px;
    height: 40px;
    top: 30%;
    right: 20%;
    animation-delay: 4s;
}

@keyframes float {
    0%, 100% {
        transform: translateY(0px) rotate(0deg);
    }
    50% {
        transform: translateY(-15px) rotate(180deg);
    }
}

/* Responsive */
@media (max-width: 968px) {
    .about-container {
        grid-template-columns: 1fr;
    }
    .text-content {
        padding: 40px 30px;
        text-align: center;
    }
    .about-title {
        font-size: 36px;
    }
    .decorative-shape {
        display: none;
    }
}

@media (max-width: 768px) {
    .text-content {
        padding: 30px 20px;
    }
    .about-title {
        font-size: 28px;
    }
}

@media (max-width: 480px) {
    .about-section {
        padding: 0 10px;
    }
    .about-container {
        border-radius: 15px;
    }
    .about-title {
        font-size: 24px;
    }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-602cf06 *//* =========================
CONTENEDOR GENERAL
========================= */

.wpcf7 {
  max-width: 1200px;
  width: 100%;
  margin: auto;
  padding: 20px;
  box-sizing: border-box;
  font-family: Arial, sans-serif;
  background: #fff;
}

/* =========================
TÍTULOS
========================= */

.titulo-principal{
  text-align:center;
  font-size:20px;
  font-weight:bold;
  line-height:1.5;
  text-transform:uppercase;
}

.subtitulo{
  text-align:center;
  font-size:16px;
  font-weight:bold;
  margin-top:10px;
  text-decoration:underline;
}

.nota{
  text-align:center;
  font-size:13px;
  margin:15px 0 25px;
  font-style:italic;
}

/* =========================
TÍTULOS DE SECCIONES
========================= */

.titulo-seccion{
  background:#d9d9d9;
  padding:10px;
  border:1px solid #999;
  font-size:14px;
  font-weight:bold;
  text-transform:uppercase;
  margin-top:25px;
  margin-bottom:0;
}

/* =========================
GRID 3 COLUMNAS
========================= */

.form-grid-2,
.form-grid-6{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:0;
  border-left:1px solid #999;
  border-top:1px solid #999;
  width:100%;
}

/* =========================
FORM GROUP
========================= */

.form-group{
  display:flex;
  flex-direction:column;
  padding:6px;
  border-right:1px solid #999;
  border-bottom:1px solid #999;
  min-height:75px;
  background:#f3f3f3;
}

/* CAMPOS GRANDES */
.form-group.full{
  grid-column:1 / -1;
}

/* =========================
LABELS
========================= */

.form-group label{
  font-size:11px;
  font-weight:bold;
  text-transform:uppercase;
  margin-bottom:5px;
  color:#000;
}

/* =========================
INPUTS
========================= */

.wpcf7 input[type="text"],
.wpcf7 input[type="tel"],
.wpcf7 input[type="number"],
.wpcf7 input[type="date"],
.wpcf7 input[type="email"],
.wpcf7 select,
.wpcf7 textarea{

  width:100% !important;
  box-sizing:border-box;
  border:none;
  background:transparent;
  font-size:13px;
  padding:4px 0;
  outline:none;
  box-shadow:none;
}

/* EVITA ERRORES DE CF7 */

.wpcf7-form-control-wrap{
  width:100%;
  display:block;
}

/* =========================
RADIO GROUP
========================= */

.wpcf7-form .radio-group{
  margin:20px 0;
  color:#333;
}

.wpcf7-form .radio-group label{
  display:block;
  margin-bottom:15px;
  font-size:1.1em;
}

.wpcf7-form .radio-group .wpcf7-list-item{
  display:inline-flex;
  align-items:center;
  margin-right:30px;
  font-size:1em;
}

.wpcf7-form .radio-group input[type="radio"]{
  width:20px;
  height:20px;
  margin-right:8px;
  cursor:pointer;
}

.wpcf7-form .radio-group input[type="radio"]:checked{
  accent-color:#333;
}

/* =========================
BOTÓN
========================= */

.wpcf7 input[type="submit"]{
  background:#222;
  color:#fff;
  border:none;
  padding:14px 30px;
  font-size:14px;
  font-weight:bold;
  margin-top:30px;
  cursor:pointer;
  transition:.3s;
}

.wpcf7 input[type="submit"]:hover{
  background:#000;
}

/* =========================
FIRMAS
========================= */

.firmas{
  display:flex;
  justify-content:space-between;
  gap:30px;
  margin-top:60px;
}

.firma-box{
  width:45%;
  text-align:center;
}

.firma-box p{
  margin-bottom:5px;
}

.firma-box span{
  font-size:12px;
  font-weight:bold;
}

/* =========================
RESPONSIVE
========================= */

@media(max-width:768px){

  .form-grid-2,
  .form-grid-6{
    grid-template-columns:1fr !important;
  }

  .form-group{
    border-right:1px solid #999;
  }

  .firmas{
    flex-direction:column;
  }

  .firma-box{
    width:100%;
  }

}/* End custom CSS */