.elementor-379 .elementor-element.elementor-element-415abc5{--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:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-379 .elementor-element.elementor-element-9b39049{--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:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-379 .elementor-element.elementor-element-91ea6b0{--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:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-379 .elementor-element.elementor-element-a157812{--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:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}/* Start custom CSS for html, class: .elementor-element-33bf45c *//* ======================================
   SOLUCIONES · Hero (video + brand tint)
   ====================================== */
:root{
  --clr-ink:#0F1216;
  --clr-muted:#5A6473;
  --clr-line:#E8EDF3;
  --clr-primary:#9B1C1C;
  --clr-primary-600:#7E1515;
  --shadow-sm:0 6px 16px rgba(15,18,22,.08);
  --shadow-md:0 12px 32px rgba(15,18,22,.16);
}
.ce-wrap{ max-width:1120px; margin-inline:auto; padding-inline:16px }

/* ===== Lienzo ===== */
.sol-hero{
  position:relative; isolation:isolate; overflow:clip; color:#fff;
  min-height: clamp(62vh, 70vh, 86vh);
  display:grid; place-items:end;
  padding-bottom: 8vh;
}

/* ===== Overlay config ===== */
.sol-hero--tinted{
  --tint-alpha: .100;       /* oscuridad base (0–1) */
  --vignette-alpha: .38;   /* viñeta */
  --top-fade: .55;         /* degradé superior para títulos */
}

/* ===== Tinte de marca (activar con .sol-hero--brand) ===== */
.sol-hero--brand{
  --brand-rgb: 155, 28, 28; /* #9B1C1C */
  --brand-alpha: .40;       /* intensidad del tinte (0–1) */
}

/* ===== Media ===== */
.sol-hero__media{ position:absolute; inset:0; z-index:-2; background:#0b0d10 }

.sol-hero__video{
  position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block;
  /* base de legibilidad, puedes ajustar si el video es muy claro/oscuro */
  filter: brightness(.78) contrast(1.04) saturate(1.02);
}

/* Back overlay: negro + tinte de marca + viñetas */
.sol-hero__overlay{
  position:absolute; inset:0; z-index:-1; pointer-events:none;
  background:
    /* 0) Tinte de marca (ajusta --brand-alpha) */
    linear-gradient(0deg, rgba(var(--brand-rgb), var(--brand-alpha)), rgba(var(--brand-rgb), var(--brand-alpha))),
    /* 1) Capa negra constante */
    linear-gradient(0deg, rgba(0,0,0,var(--tint-alpha)), rgba(0,0,0,var(--tint-alpha))),
    /* 2) Viñeta */
    radial-gradient(120% 85% at 50% 60%, rgba(0,0,0,var(--vignette-alpha)) 0%, rgba(0,0,0,0) 60%),
    /* 3) Degradé superior */
    linear-gradient(180deg, rgba(0,0,0,var(--top-fade)) 0%, rgba(0,0,0,0) 45%);
}

/* ===== Contenido ===== */
.sol-hero__inner{ width:100% }
.sol-eyebrow{
  margin:0 0 8px; font-size:12px; letter-spacing:.16em; text-transform:uppercase;
  color:#fff !important; /* forzar blanco */
}
.sol-hero__title{
  margin:0 0 10px; font-weight:900; line-height:1.08; text-wrap:balance;
  font-size: clamp(28px, 6.4vw, 56px);
  text-shadow: 0 2px 14px rgba(0,0,0,.45);
}
.sol-hero__sub{
  margin:0 0 16px; max-width: 760px;
  font-size: clamp(15px, 2vw, 18px); line-height:1.6;
  color:rgba(255,255,255,.96)
}
.sol-hero__ctas{ display:flex; gap:10px; flex-wrap:wrap }

/* ===== Botones ===== */
.ce-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  padding:12px 18px; border-radius:999px; font-weight:800;
  border:1px solid var(--clr-line);
  backdrop-filter:saturate(130%) blur(2px);
  transition: transform .16s ease, box-shadow .22s ease, color .2s ease, background .2s ease, border-color .2s;
  box-shadow:var(--shadow-sm);
}
.ce-btn--primary{ background:var(--clr-primary); color:#fff; border-color:transparent }
.ce-btn--primary:hover{ background:var(--clr-primary-600); transform:translateY(-1px); box-shadow:var(--shadow-md) }

/* Botón ghost SIEMPRE blanco */
.ce-btn--ghost,
.ce-btn--ghost:link,
.ce-btn--ghost:visited,
.ce-btn--ghost:hover,
.ce-btn--ghost:active,
.ce-btn--ghost:focus{
  color:#fff !important;
  background:transparent;
  border-color:rgba(255,255,255,.50);
}
.ce-btn--ghost:hover{ background:rgba(255,255,255,.10); transform:translateY(-1px); box-shadow:var(--shadow-md) }

/* ===== Responsive ===== */
@media (max-width:720px){
  .sol-hero{ padding-bottom: 10vh }
  .ce-btn{ width:100%; max-width:360px }
}

/* ===== Reduce motion ===== */
@media (prefers-reduced-motion:reduce){
  .ce-btn{ transition:none }
}


/* ======================================
   HERO · Video con filtro regulable
   ====================================== */

/* 1) Valores base (puedes dejarlos así) */
:root{
  --video-brightness: .62;   /* ↓ más bajo = más oscuro (ej. .58, .54) */
  --video-contrast:   1.08;  /* subir un poco ayuda a que “respire” el texto */
  --video-sat:        .96;   /* ~color; baja para desaturar */
  --video-hue:        0deg;  /* rota el tono si quieres “frío” o “cálido” */
}

/* 2) El lienzo del hero (si ya lo tienes, puedes omitir este bloque) */
.sol-hero{
  position:relative; isolation:isolate; overflow:clip; color:#fff;
  min-height: clamp(62vh, 70vh, 86vh);
  display:grid; place-items:end;
  padding-bottom: 8vh;
}
.sol-hero__media{ position:absolute; inset:0; z-index:-2; background:#0b0d10 }

/* 3) Filtro aplicado al video (usa solo variables ↑) */
.sol-hero__video{
  position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block;
  filter:
    brightness(var(--video-brightness))
    contrast(var(--video-contrast))
    saturate(var(--video-sat))
    hue-rotate(var(--video-hue));
}

/* 4) Presets rápidos (añade UNA clase al <video>) */
.sol-hero__video.is-dim{      /* oscuro recomendado */
  --video-brightness:.60; --video-contrast:1.08; --video-sat:.96; --video-hue:0deg;
}
.sol-hero__video.is-deep{     /* más oscuro aún */
  --video-brightness:.52; --video-contrast:1.10; --video-sat:.94; --video-hue:0deg;
}
.sol-hero__video.is-cool{     /* tono frío y oscuro */
  --video-brightness:.58; --video-contrast:1.08; --video-sat:.98; --video-hue:-10deg;
}
.sol-hero__video.is-warm{     /* tono cálido y oscuro */
  --video-brightness:.58; --video-contrast:1.08; --video-sat:1.06; --video-hue:8deg;
}
.sol-hero__video.is-gray{     /* blanco/negro oscuro */
  --video-brightness:.56; --video-contrast:1.10; --video-sat:0; --video-hue:0deg;
}

/* 5) Si prefieres oscurecer con overlay además del filtro (opcional) */
.sol-hero--tinted{            /* súbele si aún se ve claro */
  --tint-alpha:.70;           /* antes .62 */
}
.sol-hero__overlay{
  position:absolute; inset:0; z-index:-1; pointer-events:none;
  background:
    linear-gradient(0deg, rgba(0,0,0,var(--tint-alpha, .62)), rgba(0,0,0,var(--tint-alpha, .62))),
    radial-gradient(120% 85% at 50% 60%, rgba(0,0,0,.38) 0%, rgba(0,0,0,0) 60%),
    linear-gradient(180deg, rgba(0,0,0,.55) 0%, rgba(0,0,0,0) 45%);
}

/* 6) Tinte de marca (si usas .sol-hero--brand) */
.sol-hero--brand{ --brand-rgb:155,28,28; --brand-alpha:.20; }
.sol-hero--brand .sol-hero__overlay{
  background:
    linear-gradient(0deg, rgba(var(--brand-rgb), var(--brand-alpha)), rgba(var(--brand-rgb), var(--brand-alpha))),
    linear-gradient(0deg, rgba(0,0,0,var(--tint-alpha, .62)), rgba(0,0,0,var(--tint-alpha, .62))),
    radial-gradient(120% 85% at 50% 60%, rgba(0,0,0,.38) 0%, rgba(0,0,0,0) 60%),
    linear-gradient(180deg, rgba(0,0,0,.55) 0%, rgba(0,0,0,0) 45%);
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-86cea0a *//* ======================================
   SOLUCIONES · Sección 2 · Partners (CSS)
   Respeta .ce-wrap = 1120px y look & feel
   ====================================== */

:root{
  --clr-ink:#0F1216;
  --clr-muted:#5A6473;
  --clr-line:#E8EDF3;
  --clr-primary:#9B1C1C;
  --shadow-sm:0 6px 16px rgba(15,18,22,.08);
  --shadow-md:0 12px 32px rgba(15,18,22,.16);
}
.ce-wrap{max-width:1120px; margin-inline:auto; padding-inline:16px}

/* Lienzo */
.sol-partners{
  position:relative; isolation:isolate;
  padding-block: clamp(40px, 8vh, 84px);
  background:
    radial-gradient(1200px 480px at 15% -10%, rgba(155,28,28,.06) 0%, transparent 60%),
    linear-gradient(#ffffff, #fbfbfb);
}

/* Head */
.sol-partners__head{ text-align:left; max-width:920px; margin-inline:auto }
.sol-eyebrow{ margin:0 0 6px; font-size:12px; letter-spacing:.16em; text-transform:uppercase; color:var(--clr-muted) }
.sol-partners__title{
  margin:0 0 6px; font-weight:800; color:var(--clr-ink);
  font-size: clamp(22px, 4.6vw, 32px); line-height:1.18; text-wrap:balance;
}
.sol-partners__lead{ margin:0 0 16px; color:var(--clr-muted); font-size:16.5px; line-height:1.6 }

/* Grid de logos */
.sol-partners__grid{
  list-style:none; margin:0; padding:0;
  display:grid; gap:12px;
  grid-template-columns: repeat(2, 1fr);     /* móvil */
}
@media (min-width:760px){
  .sol-partners__grid{ grid-template-columns: repeat(4, 1fr) }
}

.sol-partners__item{
  background:#fff; border:1px solid var(--clr-line); border-radius:16px;
  box-shadow: var(--shadow-sm);
  display:grid; place-items:center;
  min-height: 120px;
  transition: transform .16s ease, box-shadow .22s ease, border-color .22s ease, background .2s ease;
}
@media (hover:hover){
  .sol-partners__item:hover{
    transform: translateY(-2px);
    box-shadow: var(--shadow-md);
    border-color: rgba(155,28,28,.18);
    background: linear-gradient(#fff, #fdfdfd);
  }
}

/* Logo link + imagen */
.sol-partners__logo{
  display:grid; place-items:center; width:100%; height:100%;
  padding: 14px;
}
.sol-partners__logo img{
  max-width: 180px; max-height: 72px; width:auto; height:auto;
  filter: grayscale(100%) contrast(1.05) opacity(.86);
  transition: filter .22s ease, transform .16s ease;
}
@media (hover:hover){
  .sol-partners__item:hover img{
    filter: grayscale(0%) opacity(1);
    transform: scale(1.02);
  }
}

/* Nota */
.sol-partners__note{
  margin: 14px auto 0; max-width:920px;
  color: var(--clr-muted); font-size:15.5px;
}
.sol-partners__cta{
  font-weight:800; color: var(--clr-primary); text-underline-offset:3px;
}
.sol-partners__cta:hover{ text-decoration: underline }

/* Accesibilidad */
.sol-partners__logo:focus-visible{
  outline:3px solid color-mix(in srgb, var(--clr-primary) 60%, #fff);
  outline-offset:4px; border-radius:12px;
}

/* Reduce motion */
@media (prefers-reduced-motion:reduce){
  .sol-partners__item, .sol-partners__logo img{ transition:none }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-60b0995 *//* ======================================
   SOLUCIONES · Sección 3 · Propuesta de valor + Oferta principal (CSS)
   Respeta .ce-wrap = 1120px y la línea visual del sitio
   ====================================== */

:root{
  --clr-ink:#0F1216;
  --clr-muted:#5A6473;
  --clr-line:#E8EDF3;
  --clr-primary:#9B1C1C;
  --clr-primary-600:#7E1515;
  --shadow-sm:0 6px 16px rgba(15,18,22,.08);
  --shadow-md:0 12px 32px rgba(15,18,22,.16);
}
.ce-wrap{max-width:1120px; margin-inline:auto; padding-inline:16px}

/* ===== Lienzo de la sección ===== */
.sol-value{
  position:relative; isolation:isolate; overflow:clip;
  padding-block: clamp(40px, 8vh, 84px);
  background:
    radial-gradient(1200px 520px at 12% -10%, rgba(155,28,28,.05) 0%, transparent 60%),
    linear-gradient(#ffffff, #fbfbfb);
}

/* ===== Banda visual superior ===== */
.sol-value__band{
  position:relative; max-width:1120px; margin: 0 auto clamp(18px, 4vh, 28px);
  border-radius:18px; overflow:hidden; box-shadow: var(--shadow-md);
}
.sol-value__img{
  display:block; width:100%; height:100%; object-fit:cover; aspect-ratio: 16 / 5;
  filter: saturate(1.04) contrast(1.04);
  object-position: center 45%;
}
.sol-value__overlay{
  position:absolute; inset:0; pointer-events:none;
  background:
    linear-gradient(180deg, rgba(0,0,0,.18), rgba(0,0,0,.06));
}

/* ===== Encabezado ===== */
.sol-value__head{ max-width:920px; margin-inline:auto }
.sol-value__title{
  margin:0 0 8px; font-weight:800; color:var(--clr-ink);
  font-size: clamp(22px, 4.6vw, 32px); line-height:1.18; text-wrap:balance;
}
.sol-value__lead{
  margin:0; color:var(--clr-muted); font-size:16.5px; line-height:1.6;
}

/* ===== Tarjeta de oferta principal ===== */
.sol-offer{
  margin-top: clamp(16px, 3.8vh, 26px);
  display:grid; gap:14px;
  grid-template-columns: 1fr;               /* móvil */
  align-items:stretch;
}
@media (min-width:900px){
  .sol-offer{ grid-template-columns: 1.05fr 1fr }  /* media izquierda + texto derecha */
}

/* Media (imagen) */
.sol-offer__media{
  background:#fff; border:1px solid var(--clr-line); border-radius:16px;
  overflow:hidden; box-shadow: var(--shadow-sm);
}
.sol-offer__media img{
  display:block; width:100%; height:100%; object-fit:cover;
  aspect-ratio: 16 / 10;
  filter: saturate(1.03) contrast(1.03);
}

/* Body (texto) */
.sol-offer__body{
  background:#fff; border:1px solid var(--clr-line); border-radius:16px;
  padding: clamp(16px, 2.6vw, 22px);
  box-shadow: var(--shadow-sm);
  display:grid; gap:10px; align-content:start;
}
.sol-eyebrow{
  margin:0; font-size:12px; letter-spacing:.16em; text-transform:uppercase; color:var(--clr-muted);
}
.sol-offer__title{
  margin:0; font-weight:800; color:var(--clr-ink);
  font-size: clamp(18px, 3.6vw, 24px); line-height:1.18;
}
.sol-offer__text{
  margin:0; color:var(--clr-muted); font-size:16px; line-height:1.65;
}
.sol-offer__text strong{ color:var(--clr-ink) }

/* Acciones */
.sol-offer__actions{
  display:flex; gap:10px; flex-wrap:wrap; align-items:center;
  margin-top: 4px;
}

/* Botones (usa globales si ya los tienes) */
.ce-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  padding:12px 16px; font-weight:700; border-radius:999px; border:1px solid var(--clr-line);
  background:#fff; color:var(--clr-ink); box-shadow: var(--shadow-sm);
  transition: transform .16s ease, box-shadow .22s ease, background .2s ease, color .2s ease, border-color .2s;
}
.ce-btn--primary{ background:var(--clr-primary); color:#fff; border-color:transparent }
.ce-btn--primary:hover{ transform:translateY(-1px); box-shadow: var(--shadow-md); background:var(--clr-primary-600) }
.ce-btn--ghost{ background:transparent; color:var(--clr-ink) }
.ce-btn--ghost:hover{ background:#f7f9fc; transform:translateY(-1px); box-shadow: var(--shadow-md) }

/* ===== Hover/Focus states ===== */
@media (hover:hover){
  .sol-offer__media:hover,
  .sol-offer__body:hover{
    transform: translateY(-2px);
    box-shadow: var(--shadow-md);
    border-color: rgba(155,28,28,.18);
    transition: transform .16s ease, box-shadow .22s ease, border-color .22s ease;
  }
}
.sol-offer__body:focus-within{
  outline:2px solid color-mix(in srgb, var(--clr-primary) 30%, #fff);
  outline-offset:2px;
}

/* ===== Responsive fino ===== */
@media (max-width:520px){
  .ce-btn{ width:100%; max-width:360px }
}

/* ===== Reduce motion ===== */
@media (prefers-reduced-motion:reduce){
  .sol-offer__media:hover, .sol-offer__body:hover, .ce-btn{ transition:none }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-c0d44f8 *//* ======================================
   SOLUCIONES · Sección 4 · Propuesta general (CSS)
   Respeta .ce-wrap = 1120px y la línea visual del sitio
   ====================================== */

:root{
  --clr-ink:#0F1216;
  --clr-muted:#5A6473;
  --clr-line:#E8EDF3;
  --clr-primary:#9B1C1C;
  --clr-primary-600:#7E1515;
  --shadow-sm:0 6px 16px rgba(15,18,22,.08);
  --shadow-md:0 12px 32px rgba(15,18,22,.16);
}
.ce-wrap{max-width:1120px; margin-inline:auto; padding-inline:16px}

/* ===== Lienzo ===== */
.sol-prop{
  position:relative; isolation:isolate; overflow:clip;
  padding-block: clamp(40px, 8vh, 84px);
  background:
    radial-gradient(1200px 520px at 12% -10%, rgba(155,28,28,.05) 0%, transparent 60%),
    linear-gradient(#ffffff, #fbfbfb);
}

/* ===== Banda visual superior ===== */
.sol-prop__band{
  position:relative; max-width:1120px; margin:0 auto clamp(18px, 4vh, 28px);
  border-radius:18px; overflow:hidden; box-shadow: var(--shadow-md);
}
.sol-prop__img{
  display:block; width:100%; height:100%; object-fit:cover; aspect-ratio: 16/5;
  object-position:center 45%;
  filter: saturate(1.04) contrast(1.04);
}
.sol-prop__overlay{
  position:absolute; inset:0; pointer-events:none;
  background: linear-gradient(180deg, rgba(0,0,0,.16), rgba(0,0,0,.06));
}

/* ===== Encabezado ===== */
.sol-prop__head{ max-width:920px; margin-inline:auto }
.sol-prop__title{
  margin:0 0 8px; font-weight:800; color:var(--clr-ink);
  font-size: clamp(22px, 4.6vw, 32px); line-height:1.18; text-wrap:balance;
}
.sol-prop__lead{
  margin:0; color:var(--clr-muted); font-size:16.5px; line-height:1.6;
}

/* ===== Bloque “Convertimos su espacio…” ===== */
.sol-prop__feature{
  margin-top: clamp(16px, 3.8vh, 26px);
  display:grid; gap:14px;
  grid-template-columns: 1fr;               /* móvil */
  align-items:start;
}
@media (min-width:900px){
  .sol-prop__feature{
    grid-template-columns: 1.1fr 1fr;       /* imagen | tarjeta */
    align-items:stretch;
  }
}

/* Figura (imagen) */
.sol-prop__figure{
  background:#fff; border:1px solid var(--clr-line); border-radius:16px;
  overflow:hidden; box-shadow: var(--shadow-sm);
}
.sol-prop__figure img{
  display:block; width:100%; height:100%; object-fit:cover; aspect-ratio: 16/10;
  filter: saturate(1.03) contrast(1.03);
}

/* Tarjeta */
.sol-prop__card{
  background:#fff; border:1px solid var(--clr-line); border-radius:16px;
  padding: clamp(16px, 2.6vw, 22px);
  box-shadow: var(--shadow-sm);
  display:grid; gap:10px; align-content:start;
  position:relative;
}
@media (min-width:900px){
  /* ligero solapamiento visual sobre la imagen */
  .sol-prop__card{ margin-left: -6px }
}

.sol-prop__cardTitle{
  margin:0; font-weight:800; color:var(--clr-ink);
  font-size: clamp(18px, 3.6vw, 24px); line-height:1.18;
}
.sol-prop__cardText{
  margin:0; color:var(--clr-muted); font-size:16px; line-height:1.65;
}
.sol-prop__cardText strong{ color:var(--clr-ink) }

.sol-prop__actions{ display:flex; gap:10px; flex-wrap:wrap; margin-top:4px }

/* ===== Franja de propósito ===== */
.sol-prop__purpose{
  margin-top: clamp(16px, 3.8vh, 26px);
  border:1px solid var(--clr-line); border-radius:16px;
  background:
    radial-gradient(1200px 520px at 85% -10%, rgba(155,28,28,.08) 0%, transparent 60%),
    linear-gradient(#fff, #fdfdfd);
  box-shadow: var(--shadow-sm);
  padding: clamp(14px, 2.2vw, 18px);
}
.sol-prop__purposeText{
  margin:0; text-align:center;
  color:var(--clr-ink); font-size:16px; line-height:1.6; font-weight:700;
}
.sol-prop__purposeText strong{ color:var(--clr-primary) }

/* ===== Hover/Focus ===== */
@media (hover:hover){
  .sol-prop__figure:hover,
  .sol-prop__card:hover{
    transform: translateY(-2px);
    box-shadow: var(--shadow-md);
    border-color: rgba(155,28,28,.18);
    transition: transform .16s ease, box-shadow .22s ease, border-color .22s ease;
  }
}
.sol-prop__card:focus-within,
.sol-prop__purpose:focus-within{
  outline:2px solid color-mix(in srgb, var(--clr-primary) 30%, #fff);
  outline-offset:2px;
}

/* ===== Responsive fino ===== */
@media (max-width:520px){
  .ce-btn{ width:100%; max-width:360px }
}

/* ===== Reduce motion ===== */
@media (prefers-reduced-motion:reduce){
  .sol-prop__figure:hover, .sol-prop__card:hover{ transition:none }
}/* End custom CSS */