.elementor-9968 .elementor-element.elementor-element-0385452{--display:flex;--min-height:100vh;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overlay-opacity:0.5;--padding-top:40px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9968 .elementor-element.elementor-element-0385452::before, .elementor-9968 .elementor-element.elementor-element-0385452 > .elementor-background-video-container::before, .elementor-9968 .elementor-element.elementor-element-0385452 > .e-con-inner > .elementor-background-video-container::before, .elementor-9968 .elementor-element.elementor-element-0385452 > .elementor-background-slideshow::before, .elementor-9968 .elementor-element.elementor-element-0385452 > .e-con-inner > .elementor-background-slideshow::before, .elementor-9968 .elementor-element.elementor-element-0385452 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#F5FAF0;--background-overlay:'';}.elementor-9968 .elementor-element.elementor-element-0385452 > .elementor-shape-bottom svg, .elementor-9968 .elementor-element.elementor-element-0385452 > .e-con-inner > .elementor-shape-bottom svg{width:calc(300% + 1.3px);height:170px;}.elementor-9968 .elementor-element.elementor-element-2003f8b{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:flex-end;}.elementor-9968 .elementor-element.elementor-element-2003f8b.e-con{--align-self:center;}.elementor-9968 .elementor-element.elementor-element-undefined-c2acb1b{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:flex-end;--gap:00px 00px;--row-gap:00px;--column-gap:00px;}.elementor-9968 .elementor-element.elementor-element-undefined-c2acb1b.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-9968 .elementor-element.elementor-element-undefined-6cee7bc{width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;text-align:start;}.elementor-9968 .elementor-element.elementor-element-undefined-6cee7bc.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-9968 .elementor-element.elementor-element-undefined-6cee7bc .elementor-heading-title{font-family:"DM Sans", Sans-serif;font-size:0.8em;font-weight:600;text-transform:uppercase;font-style:normal;text-decoration:none;line-height:1em;letter-spacing:0px;color:var( --e-global-color-75d05c9 );}.elementor-9968 .elementor-element.elementor-element-1cc7535{width:var( --container-widget-width, 112.308% );max-width:112.308%;--container-widget-width:112.308%;--container-widget-flex-grow:0;text-align:start;}.elementor-9968 .elementor-element.elementor-element-1cc7535.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-9968 .elementor-element.elementor-element-1cc7535 .elementor-heading-title{font-family:"Fraunces", Sans-serif;font-size:2.8em;font-weight:700;font-style:normal;text-decoration:none;line-height:1em;letter-spacing:0px;color:var( --e-global-color-secondary );}.elementor-9968 .elementor-element.elementor-element-undefined-dc70cee{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:start;}.elementor-9968 .elementor-element.elementor-element-undefined-dc70cee .elementor-heading-title{font-size:15px;text-transform:none;font-style:normal;text-decoration:none;line-height:1.2em;letter-spacing:0px;color:var( --e-global-color-astglobalcolor1 );}.elementor-9968 .elementor-element.elementor-element-f14ae14{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-9968 .elementor-element.elementor-element-1a1a6c7{--display:flex;--min-height:100vh;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:stretch;--overlay-opacity:0.93;}.elementor-9968 .elementor-element.elementor-element-1a1a6c7::before, .elementor-9968 .elementor-element.elementor-element-1a1a6c7 > .elementor-background-video-container::before, .elementor-9968 .elementor-element.elementor-element-1a1a6c7 > .e-con-inner > .elementor-background-video-container::before, .elementor-9968 .elementor-element.elementor-element-1a1a6c7 > .elementor-background-slideshow::before, .elementor-9968 .elementor-element.elementor-element-1a1a6c7 > .e-con-inner > .elementor-background-slideshow::before, .elementor-9968 .elementor-element.elementor-element-1a1a6c7 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-image:url("https://replanta.net/wp-content/uploads/2025/08/mantenimiento-web-wordpress.webp");--background-overlay:'';background-repeat:no-repeat;background-size:cover;}.elementor-9968 .elementor-element.elementor-element-766b07d{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9968 .elementor-element.elementor-element-766b07d:not(.elementor-motion-effects-element-type-background), .elementor-9968 .elementor-element.elementor-element-766b07d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(180deg, #F7D45026 0%, #92F1CB0F 100%);}.elementor-9968 .elementor-element.elementor-element-766b07d > .elementor-shape-top svg, .elementor-9968 .elementor-element.elementor-element-766b07d > .e-con-inner > .elementor-shape-top svg{width:calc(177% + 1.3px);height:72px;}.elementor-9968 .elementor-element.elementor-element-766b07d > .elementor-shape-bottom svg, .elementor-9968 .elementor-element.elementor-element-766b07d > .e-con-inner > .elementor-shape-bottom svg{width:calc(300% + 1.3px);height:50px;}.elementor-9968 .elementor-element.elementor-element-50e252e{padding:0px 0px 0px 0px;}.elementor-9968 .elementor-element.elementor-element-67de854{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9968 .elementor-element.elementor-element-fff8273{padding:0px 0px 0px 0px;}.elementor-9968 .elementor-element.elementor-element-a0eb07e{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9968 .elementor-element.elementor-element-38e22c5{--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;--padding-top:20px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9968 .elementor-element.elementor-element-38e22c5:not(.elementor-motion-effects-element-type-background), .elementor-9968 .elementor-element.elementor-element-38e22c5 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F8F9FA;}.elementor-9968 .elementor-element.elementor-element-5b2fb5d{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9968 .elementor-element.elementor-element-ec46f57{--display:flex;--padding-top:20px;--padding-bottom:20px;--padding-left:0px;--padding-right:0px;}.elementor-9968 .elementor-element.elementor-element-9256b1a{--display:flex;--padding-top:40px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9968 .elementor-element.elementor-element-9256b1a:not(.elementor-motion-effects-element-type-background), .elementor-9968 .elementor-element.elementor-element-9256b1a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(180deg, var( --e-global-color-astglobalcolor5 ) 0%, #93F1C938 100%);}.elementor-9968 .elementor-element.elementor-element-9256b1a > .elementor-shape-top svg, .elementor-9968 .elementor-element.elementor-element-9256b1a > .e-con-inner > .elementor-shape-top svg{width:calc(264% + 1.3px);height:54px;}.elementor-9968 .elementor-element.elementor-element-6c8c571{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9968 .elementor-element.elementor-element-6c8c571:not(.elementor-motion-effects-element-type-background), .elementor-9968 .elementor-element.elementor-element-6c8c571 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F9FAFB;}.elementor-9968 .elementor-element.elementor-element-5ac1859{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9968 .elementor-element.elementor-element-d2fa1e8{width:100%;max-width:100%;}.elementor-9968 .elementor-element.elementor-element-d2fa1e8 .elementor-icon-box-wrapper{text-align:center;gap:22px;}.elementor-9968 .elementor-element.elementor-element-d2fa1e8 .elementor-icon-box-title{margin-block-end:16px;color:#2F4649;}.elementor-9968 .elementor-element.elementor-element-d2fa1e8.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-accent );}.elementor-9968 .elementor-element.elementor-element-d2fa1e8.elementor-view-framed .elementor-icon, .elementor-9968 .elementor-element.elementor-element-d2fa1e8.elementor-view-default .elementor-icon{fill:var( --e-global-color-accent );color:var( --e-global-color-accent );border-color:var( --e-global-color-accent );}.elementor-9968 .elementor-element.elementor-element-d2fa1e8 .elementor-icon-box-title, .elementor-9968 .elementor-element.elementor-element-d2fa1e8 .elementor-icon-box-title a{font-size:28px;font-weight:600;text-transform:none;font-style:normal;text-decoration:none;line-height:1.1em;letter-spacing:0px;word-spacing:0em;}.elementor-9968 .elementor-element.elementor-element-d2fa1e8 .elementor-icon-box-description{font-size:16px;font-weight:300;text-transform:none;font-style:normal;text-decoration:none;line-height:1.5em;letter-spacing:0px;word-spacing:0em;color:var( --e-global-color-secondary );}.elementor-9968 .elementor-element.elementor-element-d171569{--display:flex;}.elementor-9968 .elementor-element.elementor-element-78e74f8{--display:flex;}.elementor-9968 .elementor-element.elementor-element-0eff78c{--display:flex;--overlay-opacity:0.5;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9968 .elementor-element.elementor-element-0eff78c::before, .elementor-9968 .elementor-element.elementor-element-0eff78c > .elementor-background-video-container::before, .elementor-9968 .elementor-element.elementor-element-0eff78c > .e-con-inner > .elementor-background-video-container::before, .elementor-9968 .elementor-element.elementor-element-0eff78c > .elementor-background-slideshow::before, .elementor-9968 .elementor-element.elementor-element-0eff78c > .e-con-inner > .elementor-background-slideshow::before, .elementor-9968 .elementor-element.elementor-element-0eff78c > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-9968 .elementor-element.elementor-element-23c25b2{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-9968 .elementor-element.elementor-element-undefined-c2acb1b{--gap:20px 20px;--row-gap:20px;--column-gap:20px;}.elementor-9968 .elementor-element.elementor-element-undefined-6cee7bc{padding:60px 0px 0px 0px;}.elementor-9968 .elementor-element.elementor-element-undefined-6cee7bc .elementor-heading-title{font-size:9px;}.elementor-9968 .elementor-element.elementor-element-1cc7535 .elementor-heading-title{font-size:40px;}.elementor-9968 .elementor-element.elementor-element-undefined-dc70cee .elementor-heading-title{font-size:18px;}.elementor-9968 .elementor-element.elementor-element-1a1a6c7::before, .elementor-9968 .elementor-element.elementor-element-1a1a6c7 > .elementor-background-video-container::before, .elementor-9968 .elementor-element.elementor-element-1a1a6c7 > .e-con-inner > .elementor-background-video-container::before, .elementor-9968 .elementor-element.elementor-element-1a1a6c7 > .elementor-background-slideshow::before, .elementor-9968 .elementor-element.elementor-element-1a1a6c7 > .e-con-inner > .elementor-background-slideshow::before, .elementor-9968 .elementor-element.elementor-element-1a1a6c7 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-size:cover;}.elementor-9968 .elementor-element.elementor-element-d2fa1e8{width:var( --container-widget-width, 40% );max-width:40%;--container-widget-width:40%;--container-widget-flex-grow:0;}.elementor-9968 .elementor-element.elementor-element-d2fa1e8 .elementor-icon-box-title, .elementor-9968 .elementor-element.elementor-element-d2fa1e8 .elementor-icon-box-title a{font-size:24px;letter-spacing:0px;}}@media(max-width:767px){.elementor-9968 .elementor-element.elementor-element-0385452{--flex-direction:column-reverse;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9968 .elementor-element.elementor-element-undefined-c2acb1b{--width:99.692%;--padding-top:0%;--padding-bottom:0%;--padding-left:0%;--padding-right:0%;}.elementor-9968 .elementor-element.elementor-element-undefined-6cee7bc{padding:0px 0px 0px 0px;text-align:center;}.elementor-9968 .elementor-element.elementor-element-undefined-6cee7bc .elementor-heading-title{font-size:0.8em;line-height:120%;}.elementor-9968 .elementor-element.elementor-element-1cc7535{width:100%;max-width:100%;text-align:center;}.elementor-9968 .elementor-element.elementor-element-1cc7535.elementor-element{--align-self:center;}.elementor-9968 .elementor-element.elementor-element-1cc7535 .elementor-heading-title{font-size:1.6em;line-height:1em;}.elementor-9968 .elementor-element.elementor-element-undefined-dc70cee{text-align:center;}.elementor-9968 .elementor-element.elementor-element-undefined-dc70cee .elementor-heading-title{font-size:15px;}.elementor-9968 .elementor-element.elementor-element-f14ae14.elementor-element{--align-self:center;}.elementor-9968 .elementor-element.elementor-element-1a1a6c7{--min-height:266px;--margin-top:10px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-9968 .elementor-element.elementor-element-5b2fb5d{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9968 .elementor-element.elementor-element-d2fa1e8{width:100%;max-width:100%;}.elementor-9968 .elementor-element.elementor-element-d2fa1e8 .elementor-icon-box-title, .elementor-9968 .elementor-element.elementor-element-d2fa1e8 .elementor-icon-box-title a{font-size:20px;}}@media(min-width:768px){.elementor-9968 .elementor-element.elementor-element-2003f8b{--width:50%;}.elementor-9968 .elementor-element.elementor-element-undefined-c2acb1b{--width:580px;}.elementor-9968 .elementor-element.elementor-element-1a1a6c7{--width:50%;}}@media(max-width:1024px) and (min-width:768px){.elementor-9968 .elementor-element.elementor-element-0385452{--width:100%;}.elementor-9968 .elementor-element.elementor-element-undefined-c2acb1b{--width:100%;}.elementor-9968 .elementor-element.elementor-element-1a1a6c7{--width:50%;}}/* Start custom CSS for html, class: .elementor-element-f14ae14 */.elementor-9968 .elementor-element.elementor-element-f14ae14 .rep-chip{font-size:11px;}
.elementor-9968 .elementor-element.elementor-element-f14ae14 a{font-size:13px;}
.elementor-9968 .elementor-element.elementor-element-f14ae14 p.rep-text-small{font-size:12px!important;}
@media(max-width:980px){
.elementor-9968 .elementor-element.elementor-element-f14ae14 .rep-hero__cta a{width:100%;text-align:center;}
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0385452 *//* ===== HERO · Mantenimiento WP ===== */
#hero-mantenimiento.rep-hero-wp{ padding:56px 0 28px; }

#hero-mantenimiento .rep-hero__wrap{
  display:grid; grid-template-columns:1.1fr .9fr; gap:32px; align-items:center;
}

#hero-mantenimiento .rep-hero__lead{ max-width:62ch; }

#hero-mantenimiento .rep-hero__chips{
  margin:12px 0 0; padding:0; list-style:none;
  display:flex; gap:10px; flex-wrap:wrap;
}

#hero-mantenimiento .rep-hero__cta{
  display:flex; gap:12px; flex-wrap:wrap; margin-top:14px;
}

#hero-mantenimiento .rep-hero__note{ margin-top:8px; color:var(--rep-text-muted); }

/* Columna visual + halo sutil en marca */
#hero-mantenimiento .rep-hero__visual{ position:relative; isolation:isolate; }
#hero-mantenimiento .rep-hero__visual::after{
  content:""; position:absolute; inset:-8% -6% -10% -6%; z-index:-1;
  background: radial-gradient(120% 60% at 50% 40%, rgba(146,241,203,.20), transparent 60%);
  filter: blur(10px); pointer-events:none;
}

#hero-mantenimiento .rep-hero__illus{
  max-width:520px; width:100%; height:auto; display:block; margin:0 auto;
  filter: drop-shadow(0 10px 20px rgba(30,47,35,.08));
}

/* Logos de stack */
#hero-mantenimiento .rep-hero__logos{
  display:grid; grid-template-columns:repeat(3, minmax(0,1fr));
  gap:10px; margin-top:12px;
}
#hero-mantenimiento .logo-card{
  background:#fff; border:1px solid var(--rep-border); border-radius:14px;
  padding:12px; box-shadow:var(--rep-shadow-sm);
  display:flex; align-items:center; justify-content:center;
}
#hero-mantenimiento .logo-card img{ max-height:36px; width:auto; opacity:.95; }

/* Responsive */
@media (max-width:980px){
  #hero-mantenimiento .rep-hero__wrap{ grid-template-columns:1fr; }
  #hero-mantenimiento .rep-hero__visual{ order:-1; } /* imagen antes en móvil */
}

/* ===== Dinamismo sutil (entrada “waterfall”) ===== */
@keyframes rep-rise{ to{ opacity:1; transform:none } }

#hero-mantenimiento .stagger > *{ opacity:0; transform:translateY(10px); }
#hero-mantenimiento .stagger > *:nth-child(1){ animation:rep-rise .55s ease .05s forwards; }
#hero-mantenimiento .stagger > *:nth-child(2){ animation:rep-rise .55s ease .12s forwards; }
#hero-mantenimiento .stagger > *:nth-child(3){ animation:rep-rise .55s ease .20s forwards; }
#hero-mantenimiento .stagger > *:nth-child(4){ animation:rep-rise .55s ease .28s forwards; }
#hero-mantenimiento .stagger > *:nth-child(5){ animation:rep-rise .55s ease .36s forwards; }

/* Logos aparecen un pelín después */
#hero-mantenimiento .rep-hero__logos .logo-card{
  opacity:0; transform:translateY(6px); animation:rep-rise .45s ease .40s forwards;
}

/* Respeta accesibilidad para quien prefiera menos movimiento */
@media (prefers-reduced-motion: reduce){
  #hero-mantenimiento .stagger > *,
  #hero-mantenimiento .rep-hero__logos .logo-card{
    animation:none; opacity:1; transform:none;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-766b07d *//* ==== Fila 2A · Problema ==== */
#fila-problema.rep-row{ position:relative; padding:44px 0;  }
#fila-problema .rep-row__grid{ display:grid; grid-template-columns:1.1fr .9fr; gap:28px; align-items:center }
#fila-problema .rep-row__lead{ margin:6px 0 10px }
#fila-problema .rep-row__chips{ display:flex; gap:8px; flex-wrap:wrap; margin-top:10px }
#fila-problema .rep-row__ctas{ display:flex; gap:10px; flex-wrap:wrap; margin-top:12px }

/* Ilustración con marco sutil + halo cálido */
#fila-problema .rep-row__visual{ position:relative; isolation:isolate }
#fila-problema .rep-row__visual::before{
  content:""; position:absolute; inset:-12% -8% auto -8%; height:55%;
  background:radial-gradient(60% 40% at 75% 30%, rgba(247,212,80,.18), transparent 60%);
  filter:blur(12px); pointer-events:none; z-index:-1;
}
#fila-problema .rep-illus{
  max-width:520px; width:100%; height:auto; display:block;
  background:#fff; border:1px solid var(--rep-border); border-radius:16px; box-shadow:var(--rep-shadow-sm);
}

/* Cascada suave */
#fila-problema .stagger > *{ opacity:0; transform:translateY(10px) }
#fila-problema .stagger > *:nth-child(1){ animation:rep-rise .55s ease .06s forwards }
#fila-problema .stagger > *:nth-child(2){ animation:rep-rise .55s ease .14s forwards }
#fila-problema .stagger > *:nth-child(3){ animation:rep-rise .55s ease .22s forwards }
#fila-problema .stagger > *:nth-child(4){ animation:rep-rise .55s ease .30s forwards }
@keyframes rep-rise{ to{ opacity:1; transform:none } }

@media (max-width:980px){
  #fila-problema .rep-row__grid{ grid-template-columns:1fr }
  /* Imagen a la derecha en desktop, debajo en mobile para mantener el relato */
  #fila-problema .rep-row__visual{ order:2 }
}

/* Respeta preferencia de menos movimiento */
@media (prefers-reduced-motion:reduce){
  #fila-problema .stagger > *{ animation:none; opacity:1; transform:none }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-ff8827e *//* ==== Fila 2B · Solución ==== */
#fila-solucion.rep-row{ position:relative; padding:44px 0;  }
#fila-solucion .rep-row__grid{ display:grid; grid-template-columns:.95fr 1.05fr; gap:28px; align-items:center }
#fila-solucion .rep-row__lead{ margin:6px 0 10px }
#fila-solucion .rep-row__chips{ display:flex; gap:8px; flex-wrap:wrap; margin-top:10px }
#fila-solucion .rep-row__ctas{ display:flex; gap:10px; flex-wrap:wrap; margin-top:12px }

/* Ilustración con marco sutil + halo verde */
#fila-solucion .rep-row__visual{ position:relative; isolation:isolate }
#fila-solucion .rep-row__visual::before{
  content:""; position:absolute; inset:-10% -8% auto -8%; height:55%;
  background:radial-gradient(60% 40% at 25% 35%, rgba(146,241,203,.20), transparent 60%);
  filter:blur(12px); pointer-events:none; z-index:-1;
}
#fila-solucion .rep-illus{
  max-width:520px; width:100%; height:auto; display:block;
  background:#fff; border:1px solid var(--rep-border); border-radius:16px; box-shadow:var(--rep-shadow-sm);
}

/* Cascada suave */
#fila-solucion .stagger > *{ opacity:0; transform:translateY(10px) }
#fila-solucion .stagger > *:nth-child(1){ animation:rep-rise .55s ease .06s forwards }
#fila-solucion .stagger > *:nth-child(2){ animation:rep-rise .55s ease .14s forwards }
#fila-solucion .stagger > *:nth-child(3){ animation:rep-rise .55s ease .22s forwards }
#fila-solucion .stagger > *:nth-child(4){ animation:rep-rise .55s ease .30s forwards }
/* usa @keyframes rep-rise ya definido arriba; si pegas solo esta fila, añade lo siguiente: */
@keyframes rep-rise{ to{ opacity:1; transform:none } }

@media (max-width:980px){
  #fila-solucion .rep-row__grid{ grid-template-columns:1fr }
  /* En móvil mostramos primero la imagen sana para reforzar el contraste con la fila anterior */
  #fila-solucion .rep-row__visual{ order:-1 }
}

@media (prefers-reduced-motion:reduce){
  #fila-solucion .stagger > *{ animation:none; opacity:1; transform:none }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-fff8273 *//* ===== Fila 3 · Qué incluye (local) ===== */
#incluye.fila-incluye{ padding:28px 0 12px }

/* Animación en cascada (usa keyframes propios por si la página no los trae) */
#incluye .fila-incluye__grid > .rep-card{ opacity:0; transform:translateY(10px) }
#incluye .fila-incluye__grid > .rep-card:nth-child(1){ animation:incl-rise .55s ease .05s forwards }
#incluye .fila-incluye__grid > .rep-card:nth-child(2){ animation:incl-rise .55s ease .12s forwards }
#incluye .fila-incluye__grid > .rep-card:nth-child(3){ animation:incl-rise .55s ease .19s forwards }
#incluye .fila-incluye__grid > .rep-card:nth-child(4){ animation:incl-rise .55s ease .26s forwards }
#incluye .fila-incluye__grid > .rep-card:nth-child(5){ animation:incl-rise .55s ease .33s forwards }
#incluye .fila-incluye__grid > .rep-card:nth-child(6){ animation:incl-rise .55s ease .40s forwards }

@keyframes incl-rise{ to{ opacity:1; transform:none } }

/* Carrusel táctil sin JS en móvil */
@media (max-width:640px){
  #incluye .fila-incluye__grid{
    display:flex; overflow-x:auto; gap:12px;
    padding:4px 2px 10px; margin:0 -8px;
    scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch;
  }
  #incluye .fila-incluye__grid::-webkit-scrollbar{ height:8px }
  #incluye .fila-incluye__grid::-webkit-scrollbar-thumb{ background:rgba(30,47,35,.15); border-radius:999px }
  #incluye .rep-card{ min-width:280px; flex:0 0 auto; scroll-snap-align:start }
}

/* Respeta reduce motion */
@media (prefers-reduced-motion:reduce){
  #incluye .fila-incluye__grid > .rep-card{ animation:none; opacity:1; transform:none }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-687c54e *//* ===== Fila 4 · Resultados (local) ===== */
.fila-resultados{ padding:28px 0 10px }
.fila-resultados__head{
  display:flex; justify-content:space-between; align-items:end; gap:16px; flex-wrap:wrap; margin-bottom:8px
}
.fila-resultados__banner{
  max-width:100%; width:100%; height:auto; margin:8px 0 16px;
  border:1px solid var(--rep-border); border-radius:16px; box-shadow:var(--rep-shadow-sm);
  background:linear-gradient(180deg,#fff 0, rgba(146,241,203,.08) 100%)
}

/* Métricas */
.fila-resultados__metrics{
  display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin-top:6px
}
.metric{
  display:flex; gap:12px; align-items:flex-start; padding:16px;
  border:1px solid var(--rep-border); border-radius:14px; background:#fff
}
.metric__k{
  min-width:96px; text-align:center; font-weight:700; color:var(--rep-forest);
  background:var(--rep-mint); border-radius:10px; padding:10px 8px
}
.metric__txt h3{ margin:.05rem 0 .15rem }
.metric__txt p{ margin:0 }

/* Testimonio compacto */
.fila-resultados__testi{
  margin-top:16px; border:1px solid var(--rep-border); border-radius:14px; background:#fff
}
.fila-resultados__testi blockquote{ margin:0 0 6px }
.fila-resultados__testi figcaption{ color:var(--rep-text-tertiary) }

/* Animación en cascada (suave) */
.cascade > *{ opacity:0; transform:translateY(10px) }
.cascade > *:nth-child(1){ animation:res-rise .5s ease .05s forwards }
.cascade > *:nth-child(2){ animation:res-rise .5s ease .12s forwards }
.cascade > *:nth-child(3){ animation:res-rise .5s ease .20s forwards }
@keyframes res-rise{ to{ opacity:1; transform:none } }

/* Responsivo */
@media (max-width:980px){
  .fila-resultados__metrics{ grid-template-columns:1fr }
  .metric__k{ min-width:86px }
}

/* Respeta reduce motion */
@media (prefers-reduced-motion:reduce){
  .cascade > *{ animation:none; opacity:1; transform:none }
}
/* ===== Rotador de testimonios Replanta (sin JS) ===== */
.testi-rotator{ position:relative; overflow:hidden }
.testi-rotator input{ position:absolute; opacity:0; pointer-events:none }

/* Paneles */
.testi-rotator .testi-panels{ position:relative; min-height: 120px }
.testi-rotator .testi{ display:none; opacity:0; transition: opacity .28s ease }
.testi-rotator .stars{ display:flex; gap:6px; align-items:center; margin:0 0 6px }
.testi-rotator .star{ width:18px; height:18px; color: var(--rep-mint) }
.testi-rotator .star svg{ width:100%; height:100%; display:block; fill: currentColor }

/* Mostrar el panel activo según radio */
#rep-t1:checked ~ .testi-panels .t1,
#rep-t2:checked ~ .testi-panels .t2,
#rep-t3:checked ~ .testi-panels .t3{
  display:block; opacity:1;
}

/* Bullets */
.testi-rotator .testi-dots{ display:flex; gap:8px; margin-top:10px }
.testi-rotator .testi-dot{
  width:8px; height:8px; border-radius:999px; border:1px solid var(--rep-teal);
  background:transparent; opacity:.6; cursor:pointer; display:inline-block;
}

/* Estado activo del bullet según radio */
#rep-t1:checked ~ .testi-dots label[for="rep-t1"],
#rep-t2:checked ~ .testi-dots label[for="rep-t2"],
#rep-t3:checked ~ .testi-dots label[for="rep-t3"]{
  background: var(--rep-teal); opacity:1;
}

/* Ajustes visuales dentro del card, por si lo usas suelto */
.testi-rotator blockquote{ margin:0 0 4px }
.testi-rotator figcaption{ color: var(--rep-text-tertiary) }

/* Opcional: ligera animación de entrada del bloque completo */
@media (prefers-reduced-motion: no-preference){
  .testi-rotator{ animation: rep-fadein .4s ease both }
  @keyframes rep-fadein { from{opacity:0; transform: translateY(6px)} to{opacity:1; transform:none} }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-0aaf42b *//* ===== ¿Cómo trabajamos? (tabs + panel) ===== */
.howwork{padding:32px 0 8px}
.howwork .intro{max-width:840px}
.howwork-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:12px}
@media(max-width:980px){.howwork-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.howwork-steps{grid-template-columns:1fr}}

/* radios ocultos (control de tabs) */
.howwork input[type="radio"]{position:absolute;opacity:0;pointer-events:none}

/* tarjeta-step (label) */
.howwork-step{cursor:pointer;user-select:none;display:flex;flex-direction:column;gap:4px}
.howwork-step .head{display:flex;gap:10px;align-items:center;margin-bottom:4px}
.howwork-step .k{width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--rep-green);color:#0C5E6E;font-weight:800}
.howwork-step .title{display:flex;align-items:center;gap:6px}
.howwork-step .desc{color:var(--rep-text-tertiary);margin:0}

/* estado activo de la tarjeta según el radio correspondiente */
#hw-1:checked + label.howwork-step,
#hw-2:checked + label.howwork-step,
#hw-3:checked + label.howwork-step,
#hw-4:checked + label.howwork-step{
  border-color:var(--rep-teal); box-shadow:var(--rep-shadow-md);
}

/* panel inferior con el contenido largo */
.howwork-panel{margin-top:16px;border:1px solid var(--rep-border);border-radius:16px;background:#fff;box-shadow:var(--rep-shadow-sm)}
.howwork-panel .hw-panel{display:none;padding:18px 18px 12px}
.howwork-panel .hw-panel h3{margin:.2rem 0}
.howwork-panel .hw-panel .cols{display:grid;grid-template-columns:1.2fr .8fr;gap:16px;align-items:start}
@media(max-width:980px){.howwork-panel .hw-panel .cols{grid-template-columns:1fr}}
.howwork-panel .hw-panel .prose p{margin:.4rem 0}
.howwork-panel .hw-panel .prose ul{margin:.4rem 0 0;padding:0 0 0 18px}
.howwork-panel .hw-panel .aside{background:var(--rep-bg-light);border:1px solid var(--rep-border);border-radius:12px;padding:12px}

/* mostrar el panel que toca (hermano general) */
#hw-1:checked ~ .howwork-panel .hw-panel[data-for="hw-1"]{display:block}
#hw-2:checked ~ .howwork-panel .hw-panel[data-for="hw-2"]{display:block}
#hw-3:checked ~ .howwork-panel .hw-panel[data-for="hw-3"]{display:block}
#hw-4:checked ~ .howwork-panel .hw-panel[data-for="hw-4"]{display:block}

/* details/summary ("ver más") */
.howwork-panel details{border:1px dashed var(--rep-border);border-radius:10px;padding:10px 12px;background:#fff}
.howwork-panel summary{cursor:pointer;font-weight:600;color:var(--rep-forest);list-style:none;position:relative;padding-right:16px}
.howwork-panel summary::-webkit-details-marker{display:none}
.howwork-panel summary::after{content:"▾";position:absolute;right:0;top:0;opacity:.5;transition:transform .2s ease}
.howwork-panel details[open] summary::after{transform:rotate(-180deg)}

/* ===== Fallback mínimo para tooltips y links (por si faltan estilos globales) ===== */
.howwork .rep-tipwrap{display:inline-flex;align-items:center;margin-left:2px;position:relative}
.howwork .rep-tip{
  width:14px;height:14px;display:inline-grid;place-items:center;border-radius:50%;
  background:#fff;border:1px solid var(--rep-border);color:var(--rep-text-tertiary);
  font-style:italic;font-size:11px;line-height:1;padding:0;cursor:help;
}
.howwork .rep-tip:hover,.howwork .rep-tip:focus{color:var(--rep-teal);border-color:var(--rep-teal);outline:2px solid var(--rep-teal);outline-offset:2px}
.howwork .rep-tooltip{
  position:absolute;z-index:30;min-width:240px;max-width:360px;background:#fff;border:1px solid var(--rep-border);
  border-radius:10px;box-shadow:var(--rep-shadow-lg);padding:10px 12px;left:50%;top:calc(100% + 8px);
  transform:translateX(-50%) translateY(6px);opacity:0;pointer-events:none;transition:transform .15s ease,opacity .15s ease
}
/* ===== Fix tooltips "Cómo trabajamos": anclar al icono ===== */
.howwork .rep-tipwrap{
  position: relative;               /* el contenedor del icono define el contexto */
  display: inline-flex;
  align-items: center;
}

/* Por defecto: anclamos al borde derecho del icono */
.howwork .rep-tipwrap .rep-tooltip{
  position: absolute;
  z-index: 30;
  min-width: 240px; max-width: 360px;
  background: #fff; border: 1px solid var(--rep-border); border-radius: 10px;
  box-shadow: var(--rep-shadow-lg);
  padding: 10px 12px;

  /* ↓↓ cambio clave: dejamos de usar left:50%/translateX(-50%) */
  left: auto; 
  right: 0;                         /* alinear al borde derecho del icono */
  top: calc(100% + 8px);            /* debajo del icono */
  transform: translateY(6px);       /* micro-animación vertical */
  opacity: 0; pointer-events: none;
  transition: transform .15s ease, opacity .15s ease;
}

.howwork .rep-tipwrap .rep-tooltip::before{
  content:"";
  position:absolute;
  top:-6px;
  /* flecha hacia el icono (cuando estamos a la derecha) */
  right: 10px;                      /* alinear con el icono */
  border-left:6px solid transparent;
  border-right:6px solid transparent;
  border-bottom:6px solid #fff;
}

/* Mostrar en hover/focus */
.howwork .rep-tipwrap:hover .rep-tooltip,
.howwork .rep-tipwrap:focus-within .rep-tooltip{
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}

/* ===== Modificadores ===== */
/* Alinear al borde izquierdo del icono */
.howwork .rep-tipwrap[data-align="left"] .rep-tooltip{
  left: 0; right: auto; 
}
.howwork .rep-tipwrap[data-align="left"] .rep-tooltip::before{
  right: auto; left: 10px;
}

/* Mostrar arriba del icono */
.howwork .rep-tipwrap[data-dir="up"] .rep-tooltip{
  bottom: calc(100% + 8px); top: auto;
}
.howwork .rep-tipwrap[data-dir="up"] .rep-tooltip::before{
  top: auto; bottom: -6px;
  border-bottom: 0; border-top: 6px solid #fff;
}

/* (Opcional) Si algún contenedor recorta, asegúrate de no tener overflow oculto */
.howwork .howwork-step{ overflow: visible; }
.howwork .howwork-panel{ overflow: visible; }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-c228719 *//* ===== Auditoría gratuita · layout & estilo (escopado a #auditoria) ===== */
#auditoria{ padding:32px 0 12px; position:relative;  }
#auditoria::before{
  content:""; position:absolute; inset:-8% 0 auto 0; height:46%;
  
  filter:blur(12px); pointer-events:none;
}
#auditoria .audit-grid{ display:grid; grid-template-columns:1.2fr .8fr; gap:22px; align-items:start }
@media (max-width:980px){ #auditoria .audit-grid{ grid-template-columns:1fr } 
    
}

#auditoria .audit-copy > p{ margin:.4rem 0 1rem }
#auditoria .audit-checklist{ margin:12px 0 }
#auditoria .audit-cols{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:12px }
@media (max-width:720px){ #auditoria .audit-cols{ grid-template-columns:1fr } }
#auditoria .audit-links{ margin-top:10px }

#auditoria .audit-cta-card{ position:sticky; top:18px }
@media (max-width:980px){ #auditoria .audit-cta-card{ position:static } }
#auditoria .mini-form{ display:grid; gap:10px; margin-top:8px }
#auditoria .mini-form label{ display:grid; gap:6px }
#auditoria .mini-form input{
  border:1px solid var(--rep-border); background:#fff; color:var(--rep-text-secondary);
  border-radius:10px; padding:10px 12px; font:400 1rem/1.2 var(--rep-font-body);
}
#auditoria .mini-form input:focus{ outline:2px solid var(--rep-teal); outline-offset:2px }
#auditoria .audit-trust{ display:flex; gap:8px; flex-wrap:wrap; margin-top:10px }

#auditoria .result-banner{ margin-top:12px }
/* Auditoría: hacer sticky toda la columna derecha, no solo la card */
#auditoria .audit-cta{
  position: sticky;
  top: 18px;
  display: grid;
  gap: 12px;
  z-index: 0; /* contexto propio para evitar solapes raros */
}
#auditoria .audit-cta-card{ position: static } /* deja de ser sticky individualmente */

/* En móviles, sin sticky */
@media (max-width: 980px){
  #auditoria .audit-cta{ position: static }
}

/* Asegurar que los banners no se pisen por z-index */
#auditoria .audit-highlight,
#auditoria .result-banner{
  position: relative;
  z-index: 1;
}

/* ====== Estilos encapsulados del bloque auditoría ====== */
#auditoria .audit-grid{
  display:grid; grid-template-columns:1.15fr .85fr; gap:18px; align-items:start;
}
@media (max-width:980px){
  #auditoria .audit-grid{ grid-template-columns:1fr }
}
#auditoria .audit-checklist ul li em{ font-style:italic }
#auditoria .audit-cols{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:12px 0 }
@media (max-width:700px){
  #auditoria .audit-cols{ grid-template-columns:1fr }
   #auditoria ul {padding-left:0px;max-width:95%;}
   #auditoria button{font-size:13px;}
}
#auditoria .mini-form label{ display:block; margin:8px 0 }
#auditoria .mini-form input,
#auditoria .mini-form textarea{
  width:100%; padding:10px; border:1px solid var(--rep-border); border-radius:10px; background:#fff;
}
#auditoria .audit-cta-card{ position:relative; z-index:1 }
#auditoria .result-banner{ margin-top:12px }
.audit-cta-card{ position: relative }
.audit-state{ display:none; text-align:center; border:1px solid var(--rep-border); border-radius:14px; padding:18px; background:#fff }
.audit-state .icon{ width:56px; height:56px; border-radius:999px; margin:0 auto 8px; display:flex; align-items:center; justify-content:center; font-weight:800; font-size:1.25rem }
.audit-state.success .icon{ background:var(--rep-mint); color:var(--rep-forest) }
.audit-state.error .icon{ background:#FDECEC; color:#7a1515 }
.audit-cta-card.is-sent #auditForm{ display:none }
.audit-cta-card.is-sent #auditSuccess{ display:block }
.audit-cta-card.is-error #auditForm{ display:none }
.audit-cta-card.is-error #auditError{ display:block }

/* ===== FIX móvil · #auditoria se rebasa de ancho ===== */
#auditoria{ overflow:hidden; }

#auditoria .audit-grid > *,
#auditoria .audit-grid,
#auditoria .audit-copy,
#auditoria .audit-cta{ min-width:0; }

#auditoria img,
#auditoria video,
#auditoria .result-banner img,
#auditoria .sec-illus{ max-width:100%; height:auto; display:block; }

@media (max-width: 720px){
  #auditoria::before{
    left:0; right:0; top:-6%; bottom:auto; height:40%;
    filter: blur(10px);
  }
}

@media (max-width: 980px){
  #auditoria .audit-grid{ grid-template-columns:1fr; gap:16px; }
}

#auditoria .mini-form input,
#auditoria .mini-form textarea,
#auditoria .mini-form select{ max-width:100%; box-sizing:border-box; }

#auditoria .rep-btn-primary,
#auditoria .rep-btn-secondary{ white-space:nowrap; }
@media (max-width:480px){
  #auditoria .rep-btn-primary,
  #auditoria .rep-btn-secondary{ white-space:normal; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-233cd97 */#faq .rep-cards-grid{ align-items:start; grid-auto-rows:auto; }
#faq .rep-cards-grid > .rep-card{ align-self:start; height:auto; }
#faq details.rep-card{ display:block; }
#faq details.rep-card summary{ position:relative; padding-right:22px; cursor:pointer; list-style:none; }
#faq details.rep-card summary::-webkit-details-marker{ display:none; }
#faq details.rep-card summary::after{
  content:""; position:absolute; right:0; top:10px; width:10px; height:10px;
  border-right:2px solid currentColor; border-bottom:2px solid currentColor;
  transform:rotate(-45deg); transition:transform .2s ease;
}
#faq details.rep-card[open] summary::after{ transform:rotate(45deg); }
#faq details.rep-card p{ margin-top:8px; }/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6c8c571 */.elementor-9968 .elementor-element.elementor-element-6c8c571 h2{text-align:center;font-family:poppins;}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-0146377 *//* Comparativa de mantenimiento */
#comparativa-mant .rep-compare--mobile details{ margin-top:10px }
#comparativa-mant .rep-compare--mobile .rep-cards{
  list-style:none; margin:10px 0 0; padding:0; display:grid; gap:8px
}
#comparativa-mant .rep-compare--mobile .rep-cards li{
  background:#fff; border:1px solid var(--rep-border); border-radius:10px; padding:10px 12px
}
#comparativa-mant .rep-compare--mobile summary{
  cursor:pointer; list-style:none; position:relative; padding-right:18px; font-family:var(--rep-font-display); font-weight:600; color:var(--rep-forest)
}
#comparativa-mant .rep-compare--mobile summary::-webkit-details-marker{ display:none }
#comparativa-mant .rep-compare--mobile summary::after{ content:"▾"; position:absolute; right:0; top:0; opacity:.6; transition: transform .2s ease }
#comparativa-mant .rep-compare--mobile details[open] summary::after{ transform: rotate(-180deg) }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-6989156 *//* ===== Estudio de caso · Maquistoresas ===== */
#caso-maquistoresas .case-head{margin-bottom:12px}
#caso-maquistoresas .case-domain{background:rgba(146,241,203,.18); padding:2px 8px; border-radius:8px}
#caso-maquistoresas .case-grid{
  display:grid; grid-template-columns:1.05fr .95fr; gap:16px; margin-top:14px
}
@media (max-width:980px){
  #caso-maquistoresas .case-grid{ grid-template-columns:1fr }
}

/* Pasos */
#caso-maquistoresas .case-steps{ list-style:none; margin:10px 0 0; padding:0; display:grid; gap:10px }
#caso-maquistoresas .step{ display:grid; grid-template-columns:26px 1fr; gap:10px; align-items:start }
#caso-maquistoresas .k{
  width:26px; height:26px; display:inline-flex; align-items:center; justify-content:center;
  border-radius:999px; background:var(--rep-green); color:#0C5E6E; font-weight:800
}
#caso-maquistoresas .case-chips{ display:flex; gap:8px; flex-wrap:wrap; margin-top:12px }
#caso-maquistoresas .case-ctas{ display:flex; gap:10px; flex-wrap:wrap; margin-top:12px }/* End custom CSS */