.elementor-5009 .elementor-element.elementor-element-51b17fe{padding:0px 0px 0px 0px;}.elementor-5009 .elementor-element.elementor-element-ee6b7eb > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}.elementor-5009 .elementor-element.elementor-element-b01877d{width:100%;max-width:100%;}.elementor-5009 .elementor-element.elementor-element-b01877d > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-5009 .elementor-element.elementor-element-70c39fc{margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-5009 .elementor-element.elementor-element-eab5285 > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}.elementor-5009 .elementor-element.elementor-element-301eed5{width:100%;max-width:100%;}.elementor-5009 .elementor-element.elementor-element-301eed5 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-5009 .elementor-element.elementor-element-65f53b7{margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-5009 .elementor-element.elementor-element-23ca91e{width:100%;max-width:100%;}.elementor-5009 .elementor-element.elementor-element-23ca91e > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-5009 .elementor-element.elementor-element-b9ffd72{margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-5009 .elementor-element.elementor-element-4f83ade > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}.elementor-5009 .elementor-element.elementor-element-f4bec01{margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-5009 .elementor-element.elementor-element-22d6696 > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}.elementor-5009 .elementor-element.elementor-element-a4ed4c7{width:100%;max-width:100%;}.elementor-5009 .elementor-element.elementor-element-a4ed4c7 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-5009 .elementor-element.elementor-element-92c6bad{margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-5009 .elementor-element.elementor-element-757b791{width:100%;max-width:100%;}.elementor-5009 .elementor-element.elementor-element-757b791 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-5009 .elementor-element.elementor-element-617c3fb{margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-5009 .elementor-element.elementor-element-f9eb894 > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}.elementor-5009 .elementor-element.elementor-element-b8971d4{margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-5009 .elementor-element.elementor-element-b61a3d7 > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}.elementor-5009 .elementor-element.elementor-element-d061ef2{margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-5009 .elementor-element.elementor-element-d125e14 > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}.elementor-5009 .elementor-element.elementor-element-e15f0b4{margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-5009 .elementor-element.elementor-element-4abad84 > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}/* Start custom CSS for html, class: .elementor-element-b01877d *//* ==============================
   HERO – CLEAN & REAL IMAGE
============================== */

#hero-county{
  position:relative;
  width:100%;
  min-height:92vh;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  font-family:Montserrat, system-ui, sans-serif;
}

/* BACKGROUND IMAGE */
#hero-county .hero-bg{
  position:absolute;
  inset:0;
  z-index:0;
}

#hero-county .hero-bg img{
  width:100%;
  height:100%;
  object-fit:cover;
  filter:none; /* IMPORTANTE: sin gris */
}

/* LIGHT OVERLAY (NO GRAY) */
#hero-county .hero-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(
    180deg,
    rgba(0,0,0,.18) 0%,
    rgba(0,0,0,.35) 100%
  );
  z-index:1;
}

/* CONTENT */
#hero-county .hero-content{
  position:relative;
  z-index:2;
  max-width:1100px;
  padding:0 5%;
  text-align:center;
  color:#ffffff;
}

/* TITLE */
#hero-county h1{
  font-family:Poppins, system-ui, sans-serif;
  font-size:clamp(2.8rem, 5vw, 4.6rem);
  font-weight:900;
  line-height:1.12;
  margin:0 0 20px;
  color:#ffffff;
}

/* TEXT */
#hero-county p{
  font-size:clamp(1.15rem, 2vw, 1.4rem);
  line-height:1.7;
  max-width:860px;
  margin:0 auto 38px;
  color:rgba(255,255,255,.95);
}

/* ACTIONS */
#hero-county .hero-actions{
  display:flex;
  gap:18px;
  justify-content:center;
  flex-wrap:wrap;
}

/* BUTTONS */
#hero-county .hero-btn{
  padding:14px 32px;
  border-radius:999px;
  font-weight:800;
  font-size:1rem;
  text-transform:uppercase;
  text-decoration:none;
  color:#ffffff;
  transition:transform .25s ease, box-shadow .25s ease;
}

#hero-county .hero-btn.primary{
  background:#C71014;
}

#hero-county .hero-btn.secondary{
  background:#15426C;
}

#hero-county .hero-btn:hover{
  transform:translateY(-3px);
  box-shadow:0 14px 30px rgba(0,0,0,.35);
}

/* MOBILE */
@media(max-width:768px){
  #hero-county{
    min-height:85vh;
  }

  #hero-county .hero-actions{
    flex-direction:column;
  }

  #hero-county .hero-btn{
    width:100%;
    max-width:320px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-301eed5 *//* ===============================
   REMOVE ARROWS – NUMBER FIELD
   WPForms Field ID #15 ONLY
=============================== */
#CEOJA_Form_TwoBrothers 
.wpforms-field-number[data-field-id="15"] 
input::-webkit-outer-spin-button,
#CEOJA_Form_TwoBrothers 
.wpforms-field-number[data-field-id="15"] 
input::-webkit-inner-spin-button{
  -webkit-appearance:none;
  margin:0;
}
#CEOJA_Form_TwoBrothers 
.wpforms-field-number[data-field-id="15"] 
input{
  -moz-appearance:textfield;
  appearance:textfield;
}

/* ===============================
   BASE (BLUE)
=============================== */
#CEOJA_Form_TwoBrothers{
  width:100%;
  padding:110px 0;
  background:
    radial-gradient(900px 420px at 14% 18%, rgba(255,255,255,.10), transparent 60%),
    radial-gradient(900px 520px at 88% 82%, rgba(199,16,20,.22), transparent 60%),
    linear-gradient(180deg,#15426C,#0f3151);
  font-family:Montserrat, system-ui, sans-serif;
  color:#ffffff;
}

#CEOJA_Form_TwoBrothers *{ box-sizing:border-box; }

#CEOJA_Form_TwoBrothers .wrap{
  max-width:2000px;
  margin:0 auto;
  padding:0 5%;
  display:grid;
  gap:60px;
}

/* ===============================
   HEADER
=============================== */
#CEOJA_Form_TwoBrothers .head{
  text-align:center;
  max-width:900px;
  margin:0 auto;
}

#CEOJA_Form_TwoBrothers .head h2{
  font-family:Poppins,sans-serif;
  font-size:3rem;
  font-weight:900;
  margin:0 0 16px;
  color:#ffffff;
}

#CEOJA_Form_TwoBrothers .head p{
  font-size:1.15rem;
  line-height:1.6;
  color:rgba(255,255,255,.85);
}

/* ===============================
   GRID
=============================== */
#CEOJA_Form_TwoBrothers .grid{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:40px;
}

/* ===============================
   LEFT INFO (GLASS)
=============================== */
#CEOJA_Form_TwoBrothers .info{
  border-radius:26px;
  border:1px solid rgba(255,255,255,.18);
  padding:28px;
  display:grid;
  gap:18px;
  background:linear-gradient(180deg,rgba(255,255,255,.14),rgba(255,255,255,.08));
  backdrop-filter:blur(10px);
}

#CEOJA_Form_TwoBrothers .info img{
  width:100%;
  height:260px;
  object-fit:cover;
  border-radius:18px;
  filter:none;
  opacity:1;
}

#CEOJA_Form_TwoBrothers .info h3{
  font-family:Poppins,sans-serif;
  font-size:1.45rem;
  font-weight:900;
  margin:0;
  color:#ffffff;
}

#CEOJA_Form_TwoBrothers .info p{
  font-size:1.05rem;
  line-height:1.7;
  color:rgba(255,255,255,.88);
}

#CEOJA_Form_TwoBrothers .info ul{
  padding-left:18px;
  margin:0;
}

#CEOJA_Form_TwoBrothers .info li{
  margin-bottom:8px;
  font-weight:600;
}

#CEOJA_Form_TwoBrothers .note{
  background:rgba(0,0,0,.18);
  border-left:4px solid #C71014;
  padding:14px;
  border-radius:12px;
  font-weight:700;
}

/* ===============================
   FORM CARD (WHITE)
=============================== */
#CEOJA_Form_TwoBrothers .formCard{
  border-radius:26px;
  border:1px solid rgba(0,0,0,.12);
  padding:28px;
  background:#ffffff;
  color:#111;
}

/* ===============================
   WPFORMS INPUTS (NO CHECKBOX)
=============================== */
#CEOJA_Form_TwoBrothers .wpforms-container input:not([type="checkbox"]):not([type="radio"]),
#CEOJA_Form_TwoBrothers .wpforms-container textarea,
#CEOJA_Form_TwoBrothers .wpforms-container select{
  width:100%!important;
  border-radius:14px!important;
  border:1px solid rgba(0,0,0,.18)!important;
  padding:14px!important;
  font-size:1.05rem!important;
  font-family:Montserrat,sans-serif!important;
}

/* ===============================
   CHECKBOX FIX
=============================== */
#CEOJA_Form_TwoBrothers .wpforms-field-checkbox ul{
  list-style:none!important;
  padding:0!important;
  margin:14px 0 0!important;
  display:grid;
  gap:12px;
}

#CEOJA_Form_TwoBrothers .wpforms-field-checkbox ul li{
  display:flex;
  align-items:center;
  gap:12px;
}

#CEOJA_Form_TwoBrothers .wpforms-field-checkbox input[type="checkbox"]{
  width:20px!important;
  height:20px!important;
  accent-color:#C71014;
}

#CEOJA_Form_TwoBrothers .wpforms-field-checkbox label{
  font-family:Poppins,sans-serif!important;
  font-weight:700!important;
  font-size:1.05rem!important;
}

/* ===============================
   SUBMIT BUTTON
=============================== */
#CEOJA_Form_TwoBrothers .wpforms-submit{
  width:100%!important;
  height:56px!important;
  border-radius:14px!important;
  border:none!important;
  background:#C71014!important;
  color:#ffffff!important;
  font-family:Poppins,sans-serif!important;
  font-size:1.05rem!important;
  font-weight:900!important;
  cursor:pointer!important;
  transition:transform .2s ease, box-shadow .2s ease;
}

#CEOJA_Form_TwoBrothers .wpforms-submit:hover{
  transform:translateY(-2px);
  box-shadow:0 16px 36px rgba(0,0,0,.35);
}

/* ===============================
   RESPONSIVE
=============================== */
@media(max-width:980px){
  #CEOJA_Form_TwoBrothers .grid{
    grid-template-columns:1fr;
  }
}

@media(max-width:520px){
  #CEOJA_Form_TwoBrothers .head h2{
    font-size:2.3rem;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-23ca91e *//* =========================================
   CLEAN COUNTY – ENHANCED DESIGN (SAFE)
========================================= */

#clean-county{
  background:#ffffff;
  padding:140px 5%;
  font-family:Montserrat, system-ui, sans-serif;
}

#clean-county *{ box-sizing:border-box; }

/* CONTAINER */
#clean-county .clean-wrap{
  max-width:2000px;
  margin:0 auto;
  display:grid;
  grid-template-columns:1.15fr 1fr;
  gap:100px;
  align-items:center;
}

/* EYEBROW */
#clean-county .clean-eyebrow{
  display:inline-block;
  font-size:0.95rem;
  letter-spacing:2px;
  text-transform:uppercase;
  color:#555;
  margin-bottom:14px;
}

/* TITLE – ELEGANT */
#clean-county .clean-title{
  position:relative;
  font-family:Poppins, system-ui, sans-serif;
  font-size:3.2rem;
  font-weight:800;
  line-height:1.2;
  color:#111;
  margin:0 0 22px;
  padding-left:28px;
}

#clean-county .clean-title .title-line{
  position:absolute;
  left:0;
  top:6px;
  width:6px;
  height:85%;
  background:linear-gradient(
    180deg,
    #15426C 0%,
    #C71014 100%
  );
  border-radius:4px;
}

/* LEAD */
#clean-county .clean-lead{
  font-size:1.3rem;
  line-height:1.7;
  color:#333;
  max-width:880px;
  margin-bottom:36px;
}

/* FEATURES */
#clean-county .clean-features{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:26px;
  margin-bottom:36px;
}

#clean-county .feat{
  display:flex;
  gap:14px;
  align-items:flex-start;
}

#clean-county .feat-icon{
  width:12px;
  height:12px;
  margin-top:6px;
  border-radius:50%;
  background:#15426C;
  flex-shrink:0;
}

#clean-county .feat strong{
  display:block;
  font-size:1.05rem;
  margin-bottom:4px;
  color:#111;
}

#clean-county .feat p{
  font-size:0.95rem;
  color:#444;
  line-height:1.6;
  margin:0;
}

/* LIST */
#clean-county .clean-list{
  padding-left:22px;
  margin:0 0 42px;
}

#clean-county .clean-list li{
  font-size:1.05rem;
  margin-bottom:10px;
  color:#111;
}

/* CTA */
#clean-county .clean-cta{
  display:flex;
  gap:18px;
  flex-wrap:wrap;
}

/* BUTTONS – ANIMATED */
#clean-county .clean-btn{
  position:relative;
  overflow:hidden;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-weight:800;
  font-size:1rem;
  letter-spacing:1px;
  text-transform:uppercase;
  padding:14px 30px;
  border-radius:12px;
  text-decoration:none;
  color:#ffffff;
  transition:transform .25s ease, box-shadow .25s ease;
}

#clean-county .clean-btn i{
  position:absolute;
  inset:0;
  background:rgba(255,255,255,.15);
  transform:translateX(-100%);
  transition:transform .35s ease;
}

/* RED */
#clean-county .clean-btn.red{ background:#C71014; }

/* BLUE */
#clean-county .clean-btn.blue{ background:#15426C; }

/* HOVER ANIMATION */
#clean-county .clean-btn:hover{
  transform:translateY(-3px);
  box-shadow:0 10px 24px rgba(0,0,0,.15);
}

#clean-county .clean-btn:hover i{
  transform:translateX(0);
}

/* IMAGE */
#clean-county .clean-media img{
  width:100%;
  height:440px;
  object-fit:cover;
  border-radius:18px;
}

/* RESPONSIVE */
@media(max-width:1100px){
  #clean-county .clean-wrap{
    grid-template-columns:1fr;
    gap:60px;
  }

  #clean-county .clean-title{
    font-size:2.6rem;
  }

  #clean-county .clean-features{
    grid-template-columns:1fr;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-a4ed4c7 *//* =========================================================
     TWO BROTHERS — SEO VISUAL SECTION (BLUE PREMIUM)
     ✔ Fondo azul elegante
     ✔ 1700px + 5% reales
     ✔ Imágenes nítidas (SIN overlays feos)
     ✔ Texto SEO legible
     ✔ Responsive real
  ========================================================= */

  #tbSeoVisual{
    --tb-blue:#15426C;
    --tb-blue-dark:#0f3151;
    --tb-red:#C71014;

    --tb-white:#ffffff;
    --tb-muted:rgba(255,255,255,.82);
    --tb-line:rgba(255,255,255,.14);

    padding:100px 5%;
    background:
      radial-gradient(900px 400px at 12% 18%, rgba(255,255,255,.12), transparent 60%),
      radial-gradient(900px 500px at 88% 82%, rgba(199,16,20,.22), transparent 60%),
      linear-gradient(180deg, var(--tb-blue), var(--tb-blue-dark));
    font-family:Montserrat, system-ui, sans-serif;
    color:var(--tb-white);
    position:relative;
    overflow:hidden;
  }

  #tbSeoVisual *{box-sizing:border-box}

  /* WRAP */
  #tbSeoVisual .tb-wrap{
    max-width:1700px;
    margin:0 auto;
    display:grid;
    grid-template-columns:1.05fr .95fr;
    gap:60px;
    align-items:center;
  }

  /* TEXT */
  #tbSeoVisual h2{
    font-family:Poppins, system-ui, sans-serif;
    font-size:clamp(2.1rem, 2.6vw, 2.7rem);
    font-weight:900;
    line-height:1.12;
    margin:0 0 18px;
    letter-spacing:-.02em;
    color:#fff;
  }

  #tbSeoVisual p{
    font-size:1.06rem;
    line-height:1.75;
    color:var(--tb-muted);
    margin:0 0 18px;
    font-weight:500;
    max-width:70ch;
  }

  /* LIST SEO */
  #tbSeoVisual .tb-seo-list{
    margin:26px 0 0;
    padding:0;
    list-style:none;
    display:grid;
    gap:12px;
  }

  #tbSeoVisual .tb-seo-list li{
    position:relative;
    padding-left:26px;
    font-weight:700;
    font-size:1.02rem;
    color:#fff;
  }

  #tbSeoVisual .tb-seo-list li::before{
    content:"";
    position:absolute;
    left:0;
    top:8px;
    width:12px;
    height:12px;
    border-radius:50%;
    background:var(--tb-red);
    box-shadow:0 0 0 4px rgba(199,16,20,.25);
  }

  /* IMAGE GRID */
  #tbSeoVisual .tb-images{
    display:grid;
    grid-template-columns:repeat(2, 1fr);
    gap:18px;
  }

  #tbSeoVisual .tb-img{
    position:relative;
    border-radius:20px;
    overflow:hidden;
    border:1px solid var(--tb-line);
    background:#000;
  }

  #tbSeoVisual .tb-img img{
    width:100%;
    height:260px;
    object-fit:cover;
    display:block;
    opacity:1;
    filter:none;
    transform:scale(1);
    transition:transform .5s ease;
  }

  #tbSeoVisual .tb-img:hover img{
    transform:scale(1.06);
  }

  /* RESPONSIVE */
  @media(max-width:1100px){
    #tbSeoVisual .tb-wrap{
      grid-template-columns:1fr;
      gap:48px;
    }
    #tbSeoVisual .tb-images{
      grid-template-columns:1fr 1fr;
    }
  }

  @media(max-width:640px){
    #tbSeoVisual{
      padding:80px 5%;
    }
    #tbSeoVisual .tb-images{
      grid-template-columns:1fr;
    }
    #tbSeoVisual .tb-img img{
      height:220px;
    }
  }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-757b791 *//* ==============================
   SERVICES GRID (1 FULL + 2/2/2)
   Colors: Red #C71014 | Blue #15426C
============================== */

#svc-grid{
  padding:120px 5%;
  background:#ffffff;
  font-family:Montserrat, system-ui, sans-serif;
}

#svc-grid .svc-head{
  text-align:center;
  max-width:980px;
  margin:0 auto 60px;
}

#svc-grid .svc-head h2{
  font-family:Poppins, system-ui, sans-serif;
  font-size:3rem;
  font-weight:800;
  margin:0 0 14px;
  color:#111;
}

#svc-grid .svc-head p{
  font-size:1.15rem;
  line-height:1.7;
  color:#555;
  margin:0;
}

/* WRAP */
#svc-grid .svc-wrap{
  max-width:2000px;
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(2, 1fr);
  gap:34px;
}

/* CARD BASE */
#svc-grid .svc-card{
  position:relative;
  border-radius:22px;
  overflow:hidden;
  height:340px;
}

/* FULL WIDTH CARD */
#svc-grid .svc-full{
  grid-column:1 / -1;
  height:420px;
}

/* IMAGE */
#svc-grid .svc-card img{
  width:100%;
  height:100%;
  object-fit:cover;
  transform:scale(1);
  transition:transform .45s ease;
}

/* OVERLAY */
#svc-grid .svc-overlay{
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  padding:30px;
  background:linear-gradient(
    180deg,
    rgba(0,0,0,.08) 0%,
    rgba(0,0,0,.78) 100%
  );
}

/* TITLE */
#svc-grid .svc-overlay h3{
  font-family:Poppins, system-ui, sans-serif;
  font-size:1.9rem;
  font-weight:800;
  color:#ffffff;
  margin:0 0 10px;
}

/* DESCRIPTION */
#svc-grid .svc-overlay p{
  font-size:1.02rem;
  line-height:1.6;
  color:rgba(255,255,255,.92);
  margin:0 0 18px;
  max-width:560px;
}

/* ACTIONS */
#svc-grid .svc-actions{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
}

/* BUTTONS */
#svc-grid .svc-btn{
  position:relative;
  overflow:hidden;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:12px 20px;
  border-radius:999px;
  text-decoration:none;
  font-weight:800;
  font-size:.92rem;
  letter-spacing:.8px;
  text-transform:uppercase;
  color:#ffffff;
  transition:transform .2s ease, box-shadow .2s ease;
}

#svc-grid .svc-btn::after{
  content:"";
  position:absolute;
  inset:-40% -60%;
  background:linear-gradient(120deg, transparent 40%, rgba(255,255,255,.22) 50%, transparent 60%);
  transform:translateX(-40%);
  transition:transform .55s ease;
}

/* COLORS */
#svc-grid .svc-btn.red{ background:#C71014; }
#svc-grid .svc-btn.blue{ background:#15426C; }

/* HOVER */
#svc-grid .svc-card:hover img{
  transform:scale(1.06);
}

#svc-grid .svc-btn:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 24px rgba(0,0,0,.25);
}

#svc-grid .svc-btn:hover::after{
  transform:translateX(40%);
}

/* RESPONSIVE */
@media(max-width:980px){
  #svc-grid .svc-wrap{
    grid-template-columns:1fr;
  }

  #svc-grid .svc-full{
    height:340px;
  }

  #svc-grid .svc-card{
    height:300px;
  }

  #svc-grid .svc-head h2{
    font-size:2.4rem;
  }
}


/* ==============================
   MOBILE FIX – TITLES & LAYOUT
============================== */

@media(max-width:768px){

  /* Cards auto height */
  #svc-grid .svc-card,
  #svc-grid .svc-full{
    height:auto;
    min-height:320px;
  }

  /* Overlay spacing */
  #svc-grid .svc-overlay{
    padding:22px 20px;
  }

  /* Title fix */
  #svc-grid .svc-overlay h3{
    font-size:1.55rem;        /* más pequeño */
    line-height:1.25;         /* evita cortes */
    word-break:break-word;    /* fuerza wrap limpio */
    overflow-wrap:anywhere;
    white-space:normal;
    margin-bottom:10px;
  }

  /* Description */
  #svc-grid .svc-overlay p{
    font-size:0.95rem;
    line-height:1.55;
    margin-bottom:14px;
  }

  /* Buttons stack */
  #svc-grid .svc-actions{
    flex-direction:column;
    gap:10px;
  }

  #svc-grid .svc-btn{
    width:100%;
    justify-content:center;
    font-size:.9rem;
    padding:12px 18px;
  }
}

#svc-grid{
  padding:80px 5%;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-09ff594 */#tbFAQ{
  --tb-blue:#15426C;
  --tb-blue2:#0f3151;
  --tb-red:#C71014;

  --tb-ink:#0b1220;
  --tb-muted:rgba(11,18,32,.72);

  --tb-card:#ffffff;
  --tb-line:rgba(11,18,32,.10);
  --tb-shadow:0 16px 44px rgba(0,0,0,.10);

  padding:84px 5%;
  background:#ffffff;
  color:var(--tb-ink);
  font-family:"Montserrat",system-ui,-apple-system,BlinkMacSystemFont,sans-serif;
  box-sizing:border-box;
  overflow:hidden;
  position:relative;
}
#tbFAQ *{box-sizing:border-box}

/* wrap */
#tbFAQ .tbfaq-wrap{
  max-width:1700px;
  margin:0 auto;
  padding:0;
}

/* head */
#tbFAQ .tbfaq-head{
  text-align:center;
  margin-bottom:22px;
}

#tbFAQ .tbfaq-title{
  font-family:"Poppins",system-ui,-apple-system,BlinkMacSystemFont,sans-serif;
  font-size:clamp(1.95rem, 2.5vw, 2.65rem);
  line-height:1.12;
  margin:0 0 10px;
  letter-spacing:-.02em;
  color:var(--tb-blue2);
}

#tbFAQ .tbfaq-sub{
  margin:0 auto 18px;
  max-width:72ch;
  color:var(--tb-muted);
  font-size:1.02rem;
  line-height:1.65;
  font-weight:600;
}

/* Search */
#tbFAQ .tbfaq-search{
  max-width:540px;
  margin:0 auto;
}
#tbFAQ .tbfaq-search input{
  width:100%;
  padding:12px 16px;
  border-radius:999px;
  border:1px solid rgba(11,18,32,.14);
  background:#ffffff;
  color:var(--tb-ink);
  outline:none;
  font-size:.98rem;
  font-weight:600;
  transition:border-color .25s ease, box-shadow .25s ease, background .25s ease;
}
#tbFAQ .tbfaq-search input::placeholder{ color:rgba(11,18,32,.55); }
#tbFAQ .tbfaq-search input:focus{
  border-color:rgba(199,16,20,.65);
  box-shadow:0 0 0 3px rgba(199,16,20,.18);
  background:#fff;
}

/* Grid */
#tbFAQ .tbfaq-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:16px;
  align-items:flex-start;
  margin-top:22px;

  /* clave para que no se “rompa” por textos largos */
  min-width:0;
}
#tbFAQ .tbfaq-item,
#tbFAQ .tbfaq-q,
#tbFAQ .tbfaq-q span{
  min-width:0; /*  clave */
}

/*  Desktop pequeño: pasa a 2 columnas antes (arregla “How fast…”) */
@media (max-width:1180px){
  #tbFAQ .tbfaq-grid{ grid-template-columns:repeat(2, minmax(0,1fr)); }
}

/* Tablet */
@media (max-width:1024px){
  #tbFAQ .tbfaq-grid{ grid-template-columns:repeat(2, minmax(0,1fr)); gap:14px; }
}

/* Mobile */
@media (max-width:680px){
  #tbFAQ{ padding:74px 5%; }
  #tbFAQ .tbfaq-grid{ grid-template-columns:1fr; gap:12px; }
}

/* Item card */
#tbFAQ .tbfaq-item{
  border-radius:18px;
  background:var(--tb-card);
  border:1px solid var(--tb-line);
  box-shadow:var(--tb-shadow);
  overflow:hidden;

  transform: translateY(10px);
  opacity:0;
  transition: transform .55s ease, opacity .55s ease, box-shadow .25s ease;
}
#tbFAQ.is-in .tbfaq-item{
  transform: translateY(0);
  opacity:1;
}
#tbFAQ .tbfaq-item:hover{
  box-shadow:0 22px 60px rgba(0,0,0,.14);
}

/* red top line */
#tbFAQ .tbfaq-item::before{
  content:"";
  display:block;
  height:6px;
  background:linear-gradient(90deg, var(--tb-red), rgba(21,66,108,.25));
  opacity:.95;
}

/* Question button */
#tbFAQ .tbfaq-q{
  width:100%;
  display:flex;
  align-items:center;                 /*  */
  justify-content:space-between;
  gap:12px;                           /*  */
  padding:16px 18px;
  background:transparent;
  border:none;
  cursor:pointer;
  text-align:left;
  color:var(--tb-blue2);
  font-weight:900;
  font-size:.98rem;
  letter-spacing:-.01em;

  max-width:100%;
}

/*  CLAVE: texto largo NO empuja la flecha fuera */
#tbFAQ .tbfaq-q span{
  flex:1 1 auto;
  min-width:0;
  white-space:normal;                 /*  permite 2 líneas */
  overflow-wrap:anywhere;             /*  evita overflow */
  word-break:break-word;
  line-height:1.25;
}

/* Arrow fija dentro */
#tbFAQ .tbfaq-arrow{
  flex:0 0 auto;                      /*  */
  margin-left:10px;
  font-size:1.35rem;                  /* un poco menos para móvil */
  line-height:1;
  color:rgba(199,16,20,.90);
  transition: transform .22s ease, color .22s ease;
}

/* Answer */
#tbFAQ .tbfaq-a{
  max-height:0;
  overflow:hidden;
  opacity:0;
  padding:0 18px;
  transition:max-height .30s ease, opacity .22s ease, padding .22s ease;
}
#tbFAQ .tbfaq-a p{
  margin:0;
  padding:0 0 16px;
  color:var(--tb-muted);
  line-height:1.65;
  font-weight:600;
  font-size:.95rem;
}

/* Active */
#tbFAQ .tbfaq-item.active .tbfaq-arrow{
  transform:rotate(180deg);
  color:rgba(21,66,108,.95);
}
#tbFAQ .tbfaq-item.active .tbfaq-a{
  max-height:260px;                   /* un poco más seguro */
  opacity:1;
  padding:0 18px;
}

/* CTA */
#tbFAQ .tbfaq-cta{
  margin-top:22px;
  display:flex;
  justify-content:center;
  gap:14px;
  flex-wrap:wrap;
}
#tbFAQ .tbfaq-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:14px 22px;
  min-height:52px;
  border-radius:12px;
  text-decoration:none;
  font-weight:900;
  letter-spacing:.02em;
  border:1px solid rgba(11,18,32,.12);
  transition:transform .16s ease, box-shadow .16s ease, background-color .2s ease, color .2s ease, border-color .2s ease;
  box-shadow:0 10px 24px rgba(0,0,0,.10);
  white-space:nowrap;
}
#tbFAQ .tbfaq-btn.primary{
  background:var(--tb-red);
  color:#fff;
  border-color:rgba(199,16,20,.85);
}
#tbFAQ .tbfaq-btn.primary:hover{
  background:var(--tb-blue2);
  border-color:rgba(15,49,81,.85);
  transform:translateY(-1px);
  box-shadow:0 14px 32px rgba(0,0,0,.14);
}
#tbFAQ .tbfaq-btn.secondary{
  background:#ffffff;
  color:var(--tb-blue2);
  border-color:rgba(21,66,108,.22);
}
#tbFAQ .tbfaq-btn.secondary:hover{
  background:rgba(21,66,108,.08);
  transform:translateY(-1px);
  box-shadow:0 14px 32px rgba(0,0,0,.14);
}

/* Mobile padding fine-tune */
@media (max-width:680px){
  #tbFAQ .tbfaq-q{ padding:14px 16px; gap:12px; }
  #tbFAQ .tbfaq-a{ padding:0 16px; }
  #tbFAQ .tbfaq-item.active .tbfaq-a{ padding:0 16px; }
}/* End custom CSS */