/* =====================================================================
   ABOGADA ISABELLA GONZALES — Capa de diseño editorial premium
   Transforma el contenido informativo (texto plano) en un layout tipo
   "revista jurídica": jerarquía clara, color de marca, iconografía,
   tarjetas, cajas de aviso y ritmo de lectura. 100% responsive.
   Ámbito: solo #main .content (no toca header ni footer).
   ===================================================================== */

:root{
  --ce-navy:#0E2A47;
  --ce-navy-2:#1C4E7A;
  --ce-ink:#2c3a49;        /* texto base, no negro puro */
  --ce-muted:#5b6b7a;
  --ce-gold:#C49A45;
  --ce-gold-2:#E2C480;
  --ce-teal:#1C7C7A;
  --ce-line:#e7ebf0;
  --ce-soft:#f6f8fb;       /* fondo de tarjetas/cajas */
  --ce-soft-2:#eef3f9;
}

/* ---------- Contenedor de lectura ---------- */
#main .content{
  color:var(--ce-ink);
  font-size:17px;
  line-height:1.68;
  -webkit-font-smoothing:antialiased;
}
/* Ancho de lectura SOLO en páginas de texto puro (no toca home/compuestas) */
#main .content > div[class=""]{ max-width:900px; margin:0 auto; }
#main .content > .taxonomy-description{ max-width:900px; margin:0 auto 1.6em; }

/* Neutraliza el negro puro heredado del contenido pegado */
#main .content [style*="color: #000000"],
#main .content [style*="color:#000000"]{ color:var(--ce-ink) !important; }

/* ---------- Títulos ---------- */
#main .content h1{
  font-size:clamp(1.9rem,1.2rem + 2.6vw,2.9rem);
  line-height:1.12;
  font-weight:800;
  color:var(--ce-navy);
  letter-spacing:-.5px;
  margin:.2em 0 .55em;
  position:relative;
  padding-bottom:.45em;
}
#main .content h1 span{ color:var(--ce-navy) !important; }
#main .content h1::after{
  content:"";
  position:absolute; left:0; bottom:0;
  width:84px; height:4px; border-radius:4px;
  background:linear-gradient(90deg,var(--ce-gold),var(--ce-gold-2));
}

#main .content h2{
  font-size:clamp(1.4rem,1rem + 1.5vw,1.95rem);
  line-height:1.22;
  font-weight:750;
  color:var(--ce-navy);
  letter-spacing:-.3px;
  margin:1.8em 0 .55em;
  padding-left:18px;
  position:relative;
}
#main .content h2 span{ color:var(--ce-navy) !important; }
#main .content h2::before{
  content:"";
  position:absolute; left:0; top:.12em; bottom:.12em;
  width:5px; border-radius:5px;
  background:linear-gradient(180deg,var(--ce-gold),var(--ce-gold-2));
}

#main .content h3{
  font-size:clamp(1.12rem,.95rem + .6vw,1.3rem);
  font-weight:700;
  color:var(--ce-navy-2);
  margin:1.4em 0 .5em;
  letter-spacing:-.2px;
}
#main .content h3 span{ color:var(--ce-navy-2) !important; }

/* ---------- Párrafos ---------- */
#main .content p{ margin:0 0 .9em; }
#main .content strong{ color:var(--ce-navy); font-weight:700; }

/* Párrafo guía: el primero tras el H1 */
#main .content h1 + p{
  font-size:1.18em;
  line-height:1.6;
  color:#3a4858;
  font-weight:450;
}
#main .content h1 + p strong{ color:var(--ce-navy); }

/* ---------- Enlaces en texto ---------- */
#main .content p a,
#main .content li a{
  color:var(--ce-navy-2);
  font-weight:600;
  text-decoration:none;
  border-bottom:1.5px solid rgba(196,154,69,.45);
  transition:border-color .2s, color .2s, background .2s;
  padding-bottom:1px;
}
#main .content p a:hover,
#main .content li a:hover{
  color:var(--ce-gold);
  border-bottom-color:var(--ce-gold);
}

/* ---------- Listas en REJILLA de "chips" (distribución en 2 bloques) ---------- */
#main .content ul{
  list-style:none;
  margin:0 0 1.6em;
  padding:0;
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(290px,1fr));
  gap:10px 14px;
}
#main .content ul li{
  position:relative;
  padding:13px 16px 13px 46px;
  margin:0;
  background:var(--ce-soft);
  border:1px solid var(--ce-line);
  border-radius:12px;
  line-height:1.5;
  transition:border-color .18s, box-shadow .18s, transform .18s;
}
#main .content ul li:hover{
  border-color:rgba(196,154,69,.55);
  box-shadow:0 6px 16px rgba(14,42,71,.07);
  transform:translateY(-1px);
}
#main .content ul li::before{
  content:"";
  position:absolute; left:14px; top:14px;
  width:20px; height:20px;
  background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='11' fill='%230E2A47'/%3E%3Cpath d='M7 12.5l3 3 7-7' fill='none' stroke='%23E2C480' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
#main .content ul li strong{ display:inline; }
/* Listas anidadas o dentro de cajas: vuelven a una sola columna */
#main .content li ul,
#main .content .ig-related ul,
#main .content .ig-note ul{ grid-template-columns:1fr; }
#main .content ol{ padding-left:1.3em; margin:0 0 1.4em; }
#main .content ol li{ margin:.4em 0; padding-left:.3em; }
#main .content ol li::marker{ color:var(--ce-gold); font-weight:700; }

/* ---------- Lista de garantías/beneficios (.ig-checks) — PANEL unificado ---------- */
#main .content ul.ig-checks{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:2px 14px;
  margin:.35em 0 .9em; padding:10px 16px; list-style:none;
  background:#fff;
  border:1px solid #e4ecf4;
  border-radius:14px;
  box-shadow:0 6px 20px rgba(14,42,71,.06);
}
#main .content ul.ig-checks li{
  position:relative;
  padding:7px 4px 7px 30px; margin:0;
  background:none; border:0;
  border-radius:0; box-shadow:none;
  line-height:1.32; font-weight:600; color:var(--ce-navy);
  font-size:.97em;
  transition:none;
}
#main .content ul.ig-checks li:hover{ transform:none; box-shadow:none; }
#main .content ul.ig-checks li::before{
  content:""; width:18px; height:18px;
  position:absolute; left:2px; top:8px; transform:none;
  background-position:center; background-repeat:no-repeat; background-size:contain;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='11' fill='%231C7C7A'/%3E%3Cpath d='M7 12.5l3 3 7-7' fill='none' stroke='%23fff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
#main .content ul.ig-checks li a{ font-weight:700; }

/* ---------- Divisores: convierte los <hr> en aire elegante ---------- */
#main .content hr{
  border:0;
  height:1px;
  background:linear-gradient(90deg,transparent,var(--ce-line) 18%,var(--ce-line) 82%,transparent);
  margin:1.9em 0 .2em;
}

/* ---------- Tarjetas de enlace: párrafos que son solo un enlace ---------- */
#main .content p.ig-linkcard{
  margin:.5em 0;
}
#main .content p.ig-linkcard > a{
  display:flex; align-items:center; gap:.7em;
  background:var(--ce-soft);
  border:1px solid var(--ce-line);
  border-left:4px solid var(--ce-gold);
  border-radius:12px;
  padding:14px 18px;
  font-weight:650;
  color:var(--ce-navy);
  border-bottom:1px solid var(--ce-line);
  border-left:4px solid var(--ce-gold);
  box-shadow:0 2px 10px rgba(14,42,71,.04);
  transition:transform .18s, box-shadow .18s, border-color .18s;
}
#main .content p.ig-linkcard > a::before{
  content:"";
  flex:0 0 22px; width:22px; height:22px;
  background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C49A45' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3h7v7'/%3E%3Cpath d='M10 14L21 3'/%3E%3Cpath d='M21 14v5a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5'/%3E%3C/svg%3E");
}
#main .content p.ig-linkcard > a::after{
  content:"→";
  margin-left:auto;
  color:var(--ce-gold);
  font-weight:700;
  transition:transform .18s;
}
#main .content p.ig-linkcard > a:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 22px rgba(14,42,71,.1);
  border-color:var(--ce-gold);
  color:var(--ce-navy);
}
#main .content p.ig-linkcard > a:hover::after{ transform:translateX(4px); }

/* ---------- Bloque "Artículos relacionados" (tras limpieza) ---------- */
#main .content .ig-related{
  margin-top:2.4em;
  padding:26px 28px;
  background:linear-gradient(160deg,#0E2A47,#12365c);
  border-radius:18px;
  box-shadow:0 16px 34px rgba(14,42,71,.18);
}
#main .content .ig-related h3{
  color:#fff; margin:0 0 .8em; font-size:1.15rem;
  display:flex; align-items:center; gap:.5em;
}
#main .content .ig-related h3::before{ content:"📌"; font-size:1em; }
#main .content .ig-related p{ margin:.5em 0; }
/* Alta especificidad para ganar a la tarjeta genérica de enlaces */
#main .content .ig-related p.ig-linkcard > a,
#main .content .ig-related p a{
  display:flex; align-items:center; gap:.7em;
  color:#eef4fb !important;
  background:rgba(255,255,255,.06) !important;
  border:1px solid rgba(255,255,255,.14) !important;
  border-left:3px solid var(--ce-gold) !important;
  border-radius:10px !important;
  padding:12px 16px !important;
  font-weight:550 !important;
  text-decoration:none !important;
  box-shadow:none !important;
  transform:none;
  transition:background .18s, border-color .18s, transform .18s !important;
}
#main .content .ig-related p.ig-linkcard > a::before{
  filter:brightness(1.2);
}
#main .content .ig-related p.ig-linkcard > a::after{ color:var(--ce-gold-2); }
#main .content .ig-related p a:hover{
  background:rgba(196,154,69,.18) !important;
  border-color:var(--ce-gold) !important;
  transform:translateX(3px) !important;
  color:#fff !important;
}

/* ---------- Rejilla de tarjetas con icono (home) — compacta + premium ---------- */
#main .content .icon-with-text-shortcode .text-icon{
  width:56px !important; height:56px !important; line-height:56px !important;
  margin:0 auto 12px !important;
  border-radius:16px !important;
  background:linear-gradient(155deg,#11335a,#0E2A47) !important;
  border:0 !important;
  box-shadow:0 8px 18px rgba(14,42,71,.20) !important;
  color:var(--ce-gold-2) !important;
}
#main .content .icon-with-text-shortcode .text-icon .icon-inner{
  min-width:56px !important; min-height:56px !important; height:56px !important;
  border-radius:16px !important; background:transparent !important;
  display:flex !important; align-items:center; justify-content:center;
}
#main .content .icon-with-text-shortcode .text-icon i{ display:none !important; }
/* Quitar el cuadro/overlay heredado que tapaba la insignia y el icono */
#main .content .icon-with-text-shortcode .icon-inner::before,
#main .content .icon-with-text-shortcode .icon-inner::after,
#main .content .icon-with-text-shortcode .text-icon::before,
#main .content .icon-with-text-shortcode .text-icon::after{ display:none !important; content:none !important; }
#main .content .text-icon .ig-svgico{ position:relative; z-index:2; }
#main .content .text-icon .ig-svgico{
  width:28px; height:28px; color:var(--ce-gold-2);
  display:block;
}
#main .content .icon-with-text-shortcode .text-icon:hover{
  background:linear-gradient(155deg,#1C4E7A,#11335a) !important;
  transform:translateY(-3px);
  transition:transform .2s, background .2s;
}
/* Compactar textos y separación de cada tarjeta */
#main .content .icon-with-text-shortcode{ margin-bottom:0 !important; }
#main .content .icon-with-text-shortcode .dt-text-title{ margin:0 0 6px !important; font-size:1.18rem !important; }
#main .content .icon-with-text-shortcode .dt-text-desc,
#main .content .icon-with-text-shortcode p{ margin:0 0 12px !important; line-height:1.45 !important; }

/* ---------- Bloque comparativo "errores vs. recomendaciones" ---------- */
#main .content p.ig-dont,
#main .content p.ig-do{
  display:flex; align-items:center; gap:13px;
  padding:14px 18px; margin:11px 0;
  border-radius:13px; border:1px solid;
  font-weight:550; line-height:1.45; color:#2c3a49;
  box-shadow:0 2px 8px rgba(14,42,71,.04);
  transition:transform .18s, box-shadow .18s;
}
#main .content p.ig-dont:hover,
#main .content p.ig-do:hover{ transform:translateX(3px); box-shadow:0 8px 18px rgba(14,42,71,.09); }
#main .content p.ig-dont{ background:#fdf5f4; border-color:#f1d9d5; }
#main .content p.ig-do{ background:#f0f8f4; border-color:#cfe8dd; }
#main .content p.ig-dont span,
#main .content p.ig-do span{ color:#2c3a49 !important; }
#main .content p.ig-dont::before,
#main .content p.ig-do::before{
  content:""; flex:0 0 28px; width:28px; height:28px;
  background-repeat:no-repeat; background-position:center; background-size:contain;
}
#main .content p.ig-dont::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='11' fill='%23C0392B'/%3E%3Cpath d='M8 8l8 8M16 8l-8 8' stroke='%23fff' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E");
}
#main .content p.ig-do::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='11' fill='%231C7C7A'/%3E%3Cpath d='M7 12.5l3 3 7-7' fill='none' stroke='%23fff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
@media (max-width:782px){
  #main .content p.ig-dont, #main .content p.ig-do{ padding:12px 14px; gap:11px; }
  #main .content p.ig-dont::before, #main .content p.ig-do::before{ flex-basis:24px; width:24px; height:24px; }
}

/* ---------- Caja de aviso oficial (CNMV y similares) ---------- */
#main .content .ig-note{
  display:flex; gap:14px; align-items:flex-start;
  background:var(--ce-soft-2);
  border:1px solid #d8e3ef;
  border-left:4px solid var(--ce-navy-2);
  border-radius:14px;
  padding:18px 20px;
  margin:1.8em 0;
}
#main .content .ig-note::before{
  content:"";
  flex:0 0 26px; width:26px; height:26px; margin-top:2px;
  background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231C4E7A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z'/%3E%3Cpath d='M9 12l2 2 4-4'/%3E%3C/svg%3E");
}
#main .content .ig-note h3{ margin:0 0 .2em; color:var(--ce-navy); }
#main .content .ig-note p{ margin:0; }

/* ---------- Imágenes dentro del contenido ---------- */
#main .content img{
  max-width:100%; height:auto;
  border-radius:14px;
}
#main .content figure{ margin:1.8em 0; }
#main .content figure img{ box-shadow:0 14px 30px rgba(14,42,71,.14); display:block; }
#main .content figcaption{
  margin-top:.6em; font-size:.9em; color:var(--ce-muted); text-align:center;
}

/* Ilustración cabecera de página (insertada por nosotros) */
#main .content .ig-hero-figure{
  margin:0 0 1.6em;
}
#main .content .ig-hero-figure img{
  width:100%; max-height:300px; object-fit:cover;
  border-radius:18px;
  box-shadow:0 18px 40px rgba(14,42,71,.16);
}

/* ---------- Cita destacada ---------- */
#main .content blockquote{
  margin:1.8em 0;
  padding:18px 24px;
  background:var(--ce-soft);
  border-left:5px solid var(--ce-gold);
  border-radius:0 14px 14px 0;
  font-style:italic;
  color:var(--ce-navy);
}

/* ---------- Tablas ---------- */
#main .content table{ border-collapse:collapse; width:100%; margin:1.6em 0; border-radius:12px; overflow:hidden; box-shadow:0 6px 18px rgba(14,42,71,.06); }
#main .content table th{ background:var(--ce-navy); color:#fff; padding:12px 14px; text-align:left; }
#main .content table td{ padding:11px 14px; border-bottom:1px solid var(--ce-line); }
#main .content table tr:nth-child(even) td{ background:var(--ce-soft); }

/* =====================================================================
   RESPONSIVE / MÓVIL
   ===================================================================== */
@media (max-width:782px){
  #main .content{ font-size:16px; line-height:1.72; }
  #main .content ul.ig-checks{ grid-template-columns:1fr !important; }
  #main .content h1{ font-size:clamp(1.6rem,1.1rem + 4vw,2.2rem); }
  #main .content h2{ margin-top:1.9em; padding-left:14px; }
  #main .content h2::before{ width:4px; }
  #main .content h1 + p{ font-size:1.08em; }
  #main .content .ig-related{ padding:20px 18px; }
  #main .content p.ig-linkcard > a{ padding:13px 14px; }
  #main .content .ig-hero-figure img{ max-height:200px; }
}
@media (max-width:480px){
  #main .content ul{ gap:10px; }
  #main .content ul li{ padding:11px 14px 11px 42px; }
  #main .content ul li::before{ width:18px; height:18px; left:13px; top:13px; }
}

/* =====================================================================
   MENÚ / HEADER — Identidad AZUL FUERTE + CELESTE + BLANCO
   (carga al final: tiene prioridad sobre custom-logo y custom-theme)
   ===================================================================== */
:root{
  --ig-blue:#0A53A8;       /* azul fuerte */
  --ig-blue-d:#063571;     /* azul profundo */
  --ig-blue-2:#1675D1;
  --ig-celeste:#4FC3F7;    /* celeste */
  --ig-celeste-2:#9BDDFB;  /* celeste claro */
}

/* Barra superior: azul profundo */
.masthead .top-bar,
.masthead .top-bar .top-bar-bg{
  background-color:var(--ig-blue-d) !important;
  background-image:linear-gradient(90deg,#052c5e,#0A53A8) !important;
}
.masthead .top-bar .mini-contacts,
.masthead .top-bar .mini-contacts a,
.masthead .top-bar a,
.masthead .top-bar .mini-widgets *{ color:#eaf4ff !important; }
.masthead .top-bar .mini-contacts i,
.masthead .top-bar .mini-contacts:before{ color:var(--ig-celeste) !important; }
.masthead .top-bar .soc-ico a{ background:rgba(255,255,255,.12) !important; color:#eaf4ff !important; }
.masthead .top-bar .soc-ico a:hover{ background:var(--ig-celeste) !important; color:#06305f !important; transform:translateY(-2px); }

/* Header principal: degradado azul fuerte */
.masthead.inline-header,
.floating-menu.masthead{
  background:linear-gradient(105deg,#0A53A8 0%, #1675D1 55%, #2A93E6 100%) !important;
  box-shadow:0 4px 20px rgba(6,40,90,.28) !important;
}

/* Header fijo: permanece visible al hacer scroll sin tapar el contenido. */
html body{
  padding-top:138px !important;
}
html body .masthead.inline-header{
  position:fixed !important;
  top:0 !important;
  left:0 !important;
  right:0 !important;
  z-index:10020 !important;
  width:100% !important;
  backdrop-filter:saturate(145%) blur(10px);
}
html body.admin-bar .masthead.inline-header{ top:32px !important; }
.masthead.inline-header .header-bar{
  transition:min-height .22s ease, padding .22s ease, box-shadow .22s ease;
}

/* Menú: texto blanco, subrayado y hover celeste */
.masthead{ --the7-menu-color:#ffffff !important; }
#primary-menu > li > a .menu-text{ color:#ffffff !important; }
#primary-menu > li > a:before{ background:var(--ig-celeste) !important; height:3px !important; }
#primary-menu > li > a:hover .menu-text,
#primary-menu > li.act > a .menu-text,
#primary-menu > li.current-menu-item > a .menu-text{ color:var(--ig-celeste-2) !important; }

/* CTA: blanco con texto azul, hover celeste (mantiene icono a la derecha) */
a.ig-cta{
  background:#ffffff !important;
  color:var(--ig-blue) !important;
  box-shadow:0 6px 16px rgba(6,40,90,.30), inset 0 1px 0 rgba(255,255,255,.6) !important;
}
a.ig-cta i, a.ig-cta .fas, a.ig-cta .fa-phone-alt{ color:var(--ig-blue) !important; }
a.ig-cta:hover{
  background:var(--ig-celeste-2) !important;
  color:var(--ig-blue-d) !important;
  box-shadow:0 10px 24px rgba(6,40,90,.36) !important;
}
a.ig-cta:hover i, a.ig-cta:hover .fas, a.ig-cta:hover .fa-phone-alt{ color:var(--ig-blue-d) !important; }

/* Buscador / iconos varios del header en blanco */
.masthead .mini-search a, .masthead .mini-search .the7-mw-icon-search-bold{ color:#ffffff !important; }

/* Móvil: hamburguesa blanca sobre el azul; panel desplegable claro */
@media (max-width:991px){
  html body{
    padding-top:108px !important;
  }
  html body .masthead.inline-header{
    position:fixed !important;
    top:0 !important;
  }
  .masthead .header-bar{
    display:none !important;
  }
  .masthead .top-bar{
    min-height:48px !important;
    padding-left:12px !important;
    padding-right:12px !important;
  }
  .masthead .mobile-header-bar{
    height:60px !important;
    min-height:60px !important;
    padding:0 18px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:14px !important;
    background:transparent !important;
    box-sizing:border-box !important;
  }
  .masthead .mobile-mini-widgets{
    display:none !important;
  }
  .masthead .mobile-branding{
    order:1 !important;
    display:flex !important;
    align-items:center !important;
    width:auto !important;
    max-width:190px !important;
    flex:0 1 auto !important;
    margin:0 !important;
    overflow:hidden !important;
  }
  .masthead .mobile-branding a:not(.ig-logo-link){
    display:none !important;
  }
  .masthead .mobile-branding a{
    display:inline-flex !important;
    align-items:center !important;
    line-height:0 !important;
  }
  .masthead .mobile-branding img{
    display:block !important;
    width:auto !important;
    max-width:180px !important;
    max-height:48px !important;
    object-fit:contain !important;
  }
  .masthead .mobile-navigation{
    order:2 !important;
    margin:0 0 0 auto !important;
    height:46px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    flex:0 0 46px !important;
  }
  .masthead .mobile-menu-icon,
  .masthead .toggle-menu,
  .masthead .dt-mobile-menu-icon,
  .masthead .dt-mobile-menu-icon:not(:empty){
    width:46px !important;
    height:46px !important;
    min-width:46px !important;
    max-width:46px !important;
    min-height:46px !important;
    max-height:46px !important;
    box-sizing:border-box !important;
    padding:0 !important;
    border-radius:14px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    margin-left:auto !important;
    color:#ffffff !important;
    background:rgba(255,255,255,.13) !important;
    border:1px solid rgba(255,255,255,.28) !important;
    box-shadow:0 10px 24px rgba(2,21,48,.22), inset 0 1px 0 rgba(255,255,255,.18) !important;
    transition:background .2s ease, transform .2s ease, box-shadow .2s ease;
  }
  .masthead .dt-mobile-menu-icon .lines-button{
    width:22px !important;
    height:16px !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:space-between !important;
    align-items:stretch !important;
    margin:0 !important;
    padding:0 !important;
  }
  .masthead .dt-mobile-menu-icon .menu-line{
    display:block !important;
    width:22px !important;
    height:2.5px !important;
    border-radius:999px !important;
    background:#ffffff !important;
    box-shadow:0 1px 0 rgba(0,0,0,.12) !important;
  }
  #primary-menu{
    display:none !important;
  }
  .masthead .mobile-menu-icon:hover,
  .masthead .toggle-menu:hover,
  .masthead .dt-mobile-menu-icon:hover{
    background:rgba(255,255,255,.22) !important;
    transform:translateY(-1px);
    box-shadow:0 14px 30px rgba(2,21,48,.28), inset 0 1px 0 rgba(255,255,255,.25) !important;
  }
  .masthead .mobile-menu-icon i,
  .masthead .mobile-menu-icon span,
  .masthead .mobile-menu-icon:before,
  .masthead .toggle-menu i,
  .masthead .toggle-menu span,
  .masthead .dt-mobile-menu-icon i,
  .masthead .dt-mobile-menu-icon span{
    background-color:#ffffff !important;
    color:#ffffff !important;
    border-radius:8px !important;
  }
  .dt-mobile-header{
    position:fixed !important;
    top:0 !important;
    right:0 !important;
    bottom:0 !important;
    left:auto !important;
    width:min(88vw,360px) !important;
    max-width:360px !important;
    height:100vh !important;
    overflow-y:auto !important;
    background:#ffffff !important;
    border-left:1px solid #dce8f5 !important;
    box-shadow:-22px 0 56px rgba(4,26,61,.26) !important;
    z-index:10060 !important;
    padding:22px 18px 28px !important;
    transform:translateX(105%) !important;
    -webkit-transform:translateX(105%) !important;
    translate:0 0 !important;
    transition:transform .32s cubic-bezier(.22,.75,.22,1), translate .32s cubic-bezier(.22,.75,.22,1), box-shadow .22s ease !important;
    will-change:transform;
  }
  html body.right-mobile-menu.show-overlay-mobile-header .dt-mobile-header,
  html body.right-mobile-menu.show-sticky-mobile-header .dt-mobile-header,
  html body.show-overlay-mobile-header.show-sticky-mobile-header .dt-mobile-header,
  body.show-overlay-mobile-header .dt-mobile-header,
  html body#the7-body.right-mobile-menu.show-overlay-mobile-header.show-sticky-mobile-header .dt-mobile-header.mobile-menu-show-divider.dt-parent-menu-clickable{
    transform:translateX(0) !important;
    -webkit-transform:translateX(0) !important;
    translate:-105% 0 !important;
  }
  #mobile-menu,
  .mobile-main-nav{
    background:#ffffff !important;
    display:flex !important;
    flex-direction:column !important;
    gap:8px !important;
    margin:54px 0 0 !important;
    padding:0 !important;
  }
  #mobile-menu li,
  .mobile-main-nav li{
    border:0 !important;
  }
  #mobile-menu li a,
  .mobile-main-nav li a{
    display:flex !important;
    align-items:center !important;
    min-height:48px !important;
    padding:13px 15px !important;
    border-radius:12px !important;
    background:#f4f8fd !important;
    border:1px solid #e2ecf6 !important;
    text-decoration:none !important;
    transition:background .18s ease, border-color .18s ease, transform .18s ease;
  }
  #mobile-menu li a:hover,
  .mobile-main-nav li a:hover{
    background:#eaf5ff !important;
    border-color:#b7d9f7 !important;
    transform:translateX(-2px);
  }
  #mobile-menu li a .menu-text,
  .mobile-main-nav li a .menu-text{
    color:var(--ig-blue) !important;
    font-weight:800 !important;
    font-size:13px !important;
    letter-spacing:.3px !important;
  }
  .dt-mobile-header .dt-close-mobile-menu-icon{
    top:16px !important;
    right:16px !important;
    width:44px !important;
    height:44px !important;
    border-radius:14px !important;
    background:#eef6ff !important;
    border:1px solid #d5e7f9 !important;
    box-shadow:0 8px 18px rgba(6,40,90,.10) !important;
  }
  .dt-mobile-header .close-line{
    background:var(--ig-blue) !important;
    height:2px !important;
    border-radius:8px !important;
  }
  .dt-mobile-header{
    display:none !important;
  }
  .ig-mobile-overlay{
    position:fixed;
    inset:0;
    z-index:10050;
    background:rgba(4,20,45,.46);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:none;
  }
  .ig-mobile-drawer{
    position:fixed;
    top:0;
    right:-380px;
    bottom:0;
    z-index:10070;
    width:min(88vw,360px);
    max-width:360px;
    background:#ffffff;
    border-left:1px solid #dce8f5;
    box-shadow:-24px 0 58px rgba(4,26,61,.28);
    transform:none !important;
    transition:box-shadow .22s ease;
    padding:20px 18px 28px;
    overflow-y:auto;
    box-sizing:border-box;
  }
  .ig-mobile-drawer-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin-bottom:18px;
  }
  .ig-mobile-drawer-brand{
    color:var(--ig-blue-d);
    font-size:13px;
    font-weight:900;
    letter-spacing:.5px;
    text-transform:uppercase;
  }
  .ig-mobile-drawer-close{
    width:44px;
    height:44px;
    border:1px solid #d5e7f9;
    border-radius:14px;
    background:#eef6ff;
    color:var(--ig-blue);
    font-size:28px;
    line-height:1;
    cursor:pointer;
    box-shadow:0 8px 18px rgba(6,40,90,.10);
  }
  .ig-mobile-drawer-nav{
    display:flex;
    flex-direction:column;
    gap:8px;
  }
  .ig-mobile-drawer-nav a{
    display:flex;
    align-items:center;
    min-height:48px;
    padding:13px 15px;
    border-radius:12px;
    background:#f4f8fd;
    border:1px solid #e2ecf6;
    color:var(--ig-blue) !important;
    font-weight:800;
    font-size:13px;
    letter-spacing:.3px;
    text-decoration:none !important;
    text-transform:uppercase;
    transition:background .18s ease, border-color .18s ease, transform .18s ease;
  }
  .ig-mobile-drawer-nav a:hover{
    background:#eaf5ff;
    border-color:#b7d9f7;
    transform:translateX(-2px);
  }
  body.ig-mobile-menu-open{
    overflow:hidden !important;
  }
  body.ig-mobile-menu-open .ig-mobile-overlay{
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
  }
  body.ig-mobile-menu-open .ig-mobile-drawer{
    right:0 !important;
    transform:none !important;
  }
  body.ig-mobile-menu-open .masthead .dt-mobile-menu-icon .menu-line:nth-child(1){
    transform:translateY(6.75px) rotate(45deg);
  }
  body.ig-mobile-menu-open .masthead .dt-mobile-menu-icon .menu-line:nth-child(2){
    opacity:0;
  }
  body.ig-mobile-menu-open .masthead .dt-mobile-menu-icon .menu-line:nth-child(3){
    transform:translateY(-6.75px) rotate(-45deg);
  }
  .masthead .dt-mobile-menu-icon .menu-line{
    transition:transform .2s ease, opacity .2s ease;
  }
}

@media (max-width:480px){
  html body{ padding-top:106px !important; }
  .masthead .mobile-header-bar{ height:58px !important; min-height:58px !important; padding:0 14px !important; }
  .masthead .mobile-branding img{ max-height:44px !important; max-width:168px !important; }
}

/* =====================================================================
   REDUCCIÓN DE NOTICIAS — ocultar feeds/carruseles de blog
   ===================================================================== */
/* Carrusel "Nuestro Blog y Noticias" de la home (oculta toda su fila) */
.vc_row:has(.blog-carousel-shortcode){ display:none !important; }
/* Bloque "Artículos relacionados" (sus enlaces eran a artículos inexistentes) */
#main .content .ig-related{ display:none !important; }
/* Rejillas de artículos (listados de blog) y su paginación */
#main .content .iso-container{ display:none !important; }
#main .content .pagination,
#main .content .paging-navigation,
#main .content .blog-pagination,
#main .content .post-nav{ display:none !important; }
#main .content .paginator{ display:none !important; }
/* Widget de categorías del blog (taxonomía) */
#main .content .vc_wp_categories,
#main .content .widget_categories,
.vc_row:has(> .wpb_column .vc_wp_categories){ display:none !important; }

/* ---------- Bloque "Explora por tema" (sustituye al widget de categorías) ---------- */
#main .content .ig-temas{ margin:.4em 0 1.4em; }
#main .content .ig-temas h3{ margin:0 0 .25em; }
#main .content .ig-temas .ig-temas-sub{ color:var(--ce-muted); margin:0 0 1em; max-width:760px; }
#main .content .ig-temas-grid{
  display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:12px;
}
#main .content .ig-temas-grid a{
  display:flex; align-items:center; gap:10px;
  padding:14px 16px; border-radius:12px;
  background:linear-gradient(160deg,#ffffff,#f3f7fc);
  border:1px solid #e2ebf3; border-left:4px solid var(--ig-celeste,#4FC3F7);
  color:var(--ce-navy) !important; font-weight:650; text-decoration:none !important;
  box-shadow:0 3px 12px rgba(14,42,71,.05);
  transition:transform .18s, box-shadow .18s, border-color .18s;
}
#main .content .ig-temas-grid a::before{
  content:""; flex:0 0 20px; width:20px; height:20px;
  background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231675D1' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 18l6-6-6-6'/%3E%3C/svg%3E");
}
#main .content .ig-temas-grid a:hover{
  transform:translateY(-2px); border-left-color:var(--ig-blue,#0A53A8);
  box-shadow:0 10px 22px rgba(14,42,71,.12); color:var(--ig-blue,#0A53A8) !important;
}

/* =====================================================================
   LEGIBILIDAD sobre franjas oscuras + eliminación de posts relacionados
   ===================================================================== */
/* Texto BLANCO sobre filas con fondo navy (.upb_row_bg) — evita títulos oscuros ilegibles */
#main .content .vc_row:has(> .upb_row_bg) h1,
#main .content .vc_row:has(> .upb_row_bg) h1 span,
#main .content .vc_row:has(> .upb_row_bg) h2,
#main .content .vc_row:has(> .upb_row_bg) h2 span,
#main .content .vc_row:has(> .upb_row_bg) h3,
#main .content .vc_row:has(> .upb_row_bg) h3 span,
#main .content .vc_row:has(> .upb_row_bg) h4,
#main .content .vc_row:has(> .upb_row_bg) h4 span,
#main .content .vc_row:has(> .upb_row_bg) p,
#main .content .vc_row:has(> .upb_row_bg) p span,
#main .content .vc_row:has(> .upb_row_bg) li,
#main .content .vc_row:has(> .upb_row_bg) li span,
#main .content .vc_row:has(> .upb_row_bg) b,
#main .content .vc_row:has(> .upb_row_bg) strong,
#main .content .vc_row:has(> .upb_row_bg) em{ color:#ffffff !important; }
#main .content .vc_row:has(> .upb_row_bg) a:not(.ig-hero-btn){ color:#9BDDFB !important; }

/* Ocultar grids de posts relacionados (VC Grid con botones "Leer más") */
#main .content .vc_grid,
#main .content .vc_basic_grid,
#main .content .vc_grid-container,
#main .content .vc_pageable-slide-wrapper,
#main .content .vc_grid-pagination{ display:none !important; }

/* Botones (dt-btn / vc_btn3) SIEMPRE con texto blanco — tienen su propio fondo de color.
   (Corrige el celeste heredado de la regla de franjas oscuras.) */
#main .content a.dt-btn,
#main .content a.dt-btn span,
#main .content a.dt-btn i,
#main .content .default-btn-shortcode,
#main .content .default-btn-shortcode span,
#main .content .default-btn-shortcode i,
#main .content a.vc_btn3,
#main .content a.vc_btn3 span,
#main .content a.vc_btn3 i,
#main .content .vc_row:has(> .upb_row_bg) a.dt-btn,
#main .content .vc_row:has(> .upb_row_bg) a.dt-btn span,
#main .content .vc_row:has(> .upb_row_bg) a.dt-btn i,
#main .content .vc_row:has(> .upb_row_bg) a.vc_btn3,
#main .content .vc_row:has(> .upb_row_bg) a.vc_btn3 span{ color:#ffffff !important; }

/* Quitar TODA la zona de comentarios / login de blog (el sitio no usa login ni comentarios) */
#comments,
.comments-area,
#respond,
.comment-respond,
.comment-reply-login,
.must-log-in,
.comment-list,
.comments-title,
.comment-form,
.logged-in-as,
.comments-link,
.comment-notes,
.comment-reply-title{ display:none !important; }

/* =====================================================================
   CONTACTO MINIMALISTA: solo correo (sin teléfono, sin redes, sin botones)
   ===================================================================== */
/* Barra superior: ocultar teléfono y redes sociales; dejar el correo */
.masthead .top-bar .mini-contacts.phone{ display:none !important; }
.masthead .top-bar .soc-ico,
.masthead .top-bar .right-widgets{ display:none !important; }

/* Quitar el botón CTA del header (Consulta Gratis = teléfono) */
a.ig-cta{ display:none !important; }

/* Quitar botones de acción/acceso en todo el contenido */
#main .content .dt-btn,
#main .content .default-btn-shortcode,
#main .content .vc_btn3,
#main .content .btn-align-center,
#main .content .vc_btn3-container,
#main .content a.anchor-link[href^="tel:"],
#main .content a[href^="tel:"],
#main .content a[href^="tf:"]{ display:none !important; }

/* =====================================================================
   BLOQUE DE CONTACTO DEL FOOTER (dirección · correo · teléfono)
   ===================================================================== */
#footer .ig-footer-contact{
  padding:6px 20px 2px;
  margin-top:4px;
}
#footer .ig-fc-inner{
  max-width:1040px; margin:0 auto;
  display:flex; flex-wrap:wrap; justify-content:center; align-items:stretch;
  gap:10px 26px;
}
#footer .ig-fc-item{
  display:flex; align-items:center; gap:14px;
  color:#e9f1fa !important; text-decoration:none !important;
  padding:12px 18px; border-radius:14px;
  border:1px solid transparent;
  transition:background .2s, transform .2s, border-color .2s;
}
#footer .ig-fc-item:hover{
  background:rgba(255,255,255,.05);
  border-color:rgba(226,196,128,.35);
  transform:translateY(-2px);
}
#footer .ig-fc-ico{
  flex:0 0 46px; width:46px; height:46px;
  display:flex; align-items:center; justify-content:center;
  border-radius:50%;
  background:linear-gradient(155deg,#E2C480,#C49A45);
  color:#0E2A47;
  box-shadow:0 6px 16px rgba(0,0,0,.25), inset 0 1px 0 rgba(255,255,255,.4);
}
#footer .ig-fc-ico svg{ width:22px; height:22px; }
#footer .ig-fc-txt{ display:flex; flex-direction:column; line-height:1.35; }
#footer .ig-fc-txt b{
  color:#E2C480; font-size:11.5px; font-weight:700;
  text-transform:uppercase; letter-spacing:1px; margin-bottom:2px;
}
#footer .ig-fc-txt > span{ color:#e9f1fa; font-size:14.5px; font-weight:500; }
#footer .ig-fc-item:hover .ig-fc-txt > span{ color:#fff; }
/* separador sutil bajo el bloque de contacto */
#footer .ig-footer-contact::after{
  content:""; display:block; max-width:520px; height:1px; margin:14px auto 0;
  background:linear-gradient(90deg,transparent,rgba(226,196,128,.5),transparent);
}
@media (max-width:760px){
  #footer .ig-fc-inner{ flex-direction:column; align-items:center; gap:4px; }
  #footer .ig-fc-item{ width:100%; max-width:340px; }
}

/* =====================================================================
   CABECERA REESTRUCTURADA: top-bar (correo · logo→/ · teléfono)
   y barra de menú solo con subpáginas (sin logo en escritorio)
   ===================================================================== */
/* Barra superior: correo (izquierda) y teléfono (derecha) */
.masthead .top-bar{ min-height:48px !important; display:flex !important; align-items:center !important; position:relative; }
.masthead .top-bar .top-bar-bg{ z-index:0; }
.masthead .top-bar .left-widgets{ flex:1 1 0; display:flex; align-items:center; justify-content:flex-start; z-index:1; }
.masthead .top-bar .right-widgets{ flex:1 1 0; display:flex !important; align-items:center; justify-content:flex-end; z-index:1; }
.masthead .top-bar .right-widgets .mini-contacts.phone{ display:inline-flex !important; align-items:center; }
.masthead .top-bar .mini-contacts{ color:#eaf4ff !important; }
.masthead .top-bar .mini-contacts i{ color:var(--ig-celeste,#4FC3F7) !important; margin-right:7px; }
.masthead .top-bar .mini-contacts:hover{ color:#fff !important; }

/* Header: LOGO grande a la izquierda + menú a la derecha (como antes) */
@media (min-width:992px){
  .header-bar{ display:flex !important; align-items:center !important; justify-content:space-between !important;
    padding-top:8px !important; padding-bottom:8px !important; gap:18px; }
  .header-bar .branding{ display:flex !important; align-items:center; flex:0 0 auto !important; margin:0 !important; }
  .branding a.ig-logo-link{ display:inline-flex; align-items:center; line-height:0; }
  .branding img.ig-logo{ height:70px !important; width:auto !important; max-width:none !important; display:block;
    transition:transform .25s ease; }
  .branding a.ig-logo-link:hover img.ig-logo{ transform:scale(1.03); }
  #primary-menu{ flex:0 1 auto !important; margin:0 0 0 auto !important; justify-content:flex-end !important; }
}
@media (max-width:1200px){ .branding img.ig-logo{ height:60px !important; } }
@media (max-width:991px){ .header-bar .branding{ display:flex !important; } }

/* =====================================================================
   FORMULARIO "REPORTA TU CASO" — diseño moderno PC + móvil
   ===================================================================== */
:root{
  --igf-blue:#1668c9; --igf-blue-dk:#0e2a52; --igf-cyan:#1ebbf0;
  --igf-ink:#13315c; --igf-soft:#5a6b80; --igf-line:#e1e9f3;
}

/* La página de formulario ocupa TODO el ancho (sin hueco de sidebar) */
/* Sin franja blanca entre el banner del título y la sección de color */
#main.ig-fullwidth{ padding-top:0 !important; }
/* Inicio: sin franja blanca antes del hero oscuro */
#main.ig-flush-top{ padding-top:0 !important; }
#main.ig-flush-top .main-gradient{ display:none !important; }
#main.ig-fullwidth .main-gradient{ display:none !important; }
#main.ig-fullwidth .wf-container-main{ display:block !important; grid-template-columns:none !important; }
#main.ig-fullwidth #content.content{ width:100% !important; max-width:100% !important; float:none !important; margin:0 !important; }
#main.ig-fullwidth .sidebar,
#main.ig-fullwidth #sidebar{ display:none !important; }

/* Banda full-bleed que cubre el ancho completo de la pantalla */
.ig-form-section{
  width:100vw; margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw);
  background:
    radial-gradient(900px 420px at 12% -10%, rgba(30,187,240,.12), transparent 60%),
    radial-gradient(900px 460px at 100% 0%, rgba(22,104,201,.12), transparent 55%),
    linear-gradient(180deg,#f3f7fc 0%, #e9f0f8 100%);
  padding:38px clamp(16px,5vw,40px) 52px; box-sizing:border-box; overflow:hidden;
}

.ig-form-wrap{
  max-width:1080px; margin:0 auto; background:#fff; border-radius:20px; overflow:hidden;
  box-shadow:0 28px 70px rgba(14,42,71,.18), 0 2px 10px rgba(9,30,66,.05); border:1px solid #dbe6f1;
}

/* ---- Cabecera (azul fuerte, texto 100% legible) ---- */
.ig-form-head{
  background:linear-gradient(125deg,#0e2a52 0%, #154e95 55%, #1668c9 100%);
  color:#fff !important; padding:34px clamp(22px,4vw,44px); position:relative;
}
.ig-form-head::before{ content:""; position:absolute; inset:0; background:radial-gradient(420px 200px at 90% 0%, rgba(30,187,240,.35), transparent 70%); pointer-events:none; }
.ig-form-head::after{ content:""; position:absolute; left:clamp(22px,4vw,44px); bottom:18px; width:64px; height:4px; border-radius:4px; background:linear-gradient(90deg,#1ebbf0,#7fe0ff); }
.ig-form-head h2{ margin:0 0 10px !important; font-size:clamp(1.5rem,3vw,2.05rem) !important; font-weight:800 !important; letter-spacing:-.5px; color:#fff !important; line-height:1.15; position:relative; }
.ig-form-head p{ margin:0 !important; color:#dbe9fb !important; font-size:clamp(.95rem,1.4vw,1.05rem); max-width:680px; line-height:1.55; position:relative; }
.ig-form-head .ig-trust{ display:flex; flex-wrap:wrap; gap:8px 18px; margin-top:16px; position:relative; }
.ig-form-head .ig-trust span{ display:inline-flex; align-items:center; gap:7px; font-size:13px; font-weight:600; color:#eaf4ff; }
.ig-form-head .ig-trust svg{ width:16px; height:16px; color:#7fe0ff; flex:0 0 16px; }

/* ---- Cuerpo del formulario ---- */
.ig-form{ padding:clamp(24px,3.5vw,40px) clamp(22px,4vw,44px); }
.ig-form-grid{ display:grid; grid-template-columns:1fr 1fr; gap:18px 20px; margin-bottom:6px; }
.ig-field{ display:flex; flex-direction:column; gap:7px; }
.ig-field > span{ font-size:13.5px; font-weight:800; color:#071522; }
.ig-field b{ color:#d23b2e; }
.ig-q-label .req{ color:#d23b2e; }
.ig-q-label .opt{ color:#8a98a8; font-weight:600; font-size:12.5px; }

.ig-in{ width:100%; box-sizing:border-box; padding:13px 15px; border:1.6px solid #c9d6e4; border-radius:12px;
  font-size:15px; color:#071522 !important; background:#fff; transition:border-color .18s, box-shadow .18s, background .18s; font-family:inherit;
  box-shadow:0 1px 0 rgba(9,30,66,.03); }
.ig-form input.ig-in, .ig-form textarea.ig-in, .ig-form button.ig-in{ color:#071522 !important; }
.ig-in::placeholder, .ig-form input.ig-in::placeholder, .ig-form textarea.ig-in::placeholder{ color:#334155 !important; opacity:1; }
.ig-in:focus{ outline:none; border-color:var(--igf-blue); background:#fff; box-shadow:0 0 0 4px rgba(22,104,201,.14), 0 6px 18px rgba(9,30,66,.08); }
.ig-ta{ resize:vertical; min-height:54px; line-height:1.55; }
.ig-ta-big{ min-height:120px; }
.ig-phone{ display:flex; gap:10px; align-items:stretch; }
.ig-country-combo{ position:relative; flex:0 0 min(58%, 280px); min-width:220px; }
.ig-country-input{ min-height:52px; padding-right:38px; font-weight:700; }
.ig-country-input::-webkit-search-cancel-button{ cursor:pointer; }
.ig-country-chevron{ position:absolute; right:15px; top:22px; width:9px; height:9px; border-right:2px solid #475569; border-bottom:2px solid #475569; transform:rotate(45deg); pointer-events:none; }
.ig-country-combo[data-open="true"] .ig-country-chevron{ transform:rotate(225deg); top:25px; }
.ig-country-panel{ position:absolute; left:0; right:0; top:calc(100% + 8px); z-index:50; padding:10px;
  background:#fff; border:1px solid #c8d6e6; border-radius:14px; box-shadow:0 22px 48px rgba(8,31,58,.22); }
.ig-country-list{ max-height:292px; overflow:auto; padding:2px; display:grid; gap:3px; }
.ig-country-option{ width:100%; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:11px 12px;
  border:0; border-radius:10px; background:#fff; color:#071522; cursor:pointer; font:inherit; text-align:left; }
.ig-country-option:hover, .ig-country-option:focus{ outline:none; background:#edf6ff; box-shadow:inset 0 0 0 1px #b8d8f7; }
.ig-country-option[aria-selected="true"]{ background:#1668c9; color:#fff; font-weight:800; }
.ig-country-name{ min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.ig-country-code{ flex:0 0 auto; font-weight:800; color:inherit; }
.ig-country-empty{ padding:14px 12px; color:#596b80; font-weight:700; }
.ig-phone input{ flex:1 1 160px; min-width:0; }

.ig-in.ig-err, .ig-q.ig-err .ig-in, .ig-q.ig-err .ig-opts{ border-color:#d23b2e !important; box-shadow:0 0 0 3px rgba(210,59,46,.12); }
.ig-q.ig-err .ig-q-label{ color:#d23b2e; }

/* ---- Separador de sección ---- */
.ig-form-sep{ display:flex; align-items:center; gap:14px; margin:30px 0 22px; color:var(--igf-blue); font-weight:800;
  text-transform:uppercase; letter-spacing:1.4px; font-size:12.5px; }
.ig-form-sep span{ display:inline-flex; align-items:center; gap:8px; }
.ig-form-sep::before, .ig-form-sep::after{ content:""; height:1px; flex:1; background:linear-gradient(90deg,transparent,#d4e0ee,transparent); }

/* ---- Preguntas ---- */
.ig-q{ margin:0 0 22px; }
.ig-q-label{ display:flex; align-items:flex-start; gap:10px; font-weight:800; color:#071522; margin-bottom:11px; font-size:15px; line-height:1.4; }
.ig-q-ico{ font-size:18px; line-height:1.3; flex:0 0 auto; }
.ig-q-text b{ color:var(--igf-blue); margin-right:2px; }
.ig-q-hint{ margin:-5px 0 11px 28px; font-size:13px; color:var(--igf-soft); }

/* Opciones tipo tarjeta en rejilla uniforme (rápido de leer y elegir) */
.ig-opts{ display:grid; grid-template-columns:repeat(auto-fill,minmax(190px,1fr)); gap:10px; }
.ig-opt{ display:flex; align-items:center; gap:11px; cursor:pointer; padding:13px 15px; border-radius:13px;
  background:#fff; border:1.6px solid #d9e4f0; font-size:14.5px; color:#071522; transition:all .16s; user-select:none; line-height:1.3;
  box-shadow:0 1px 0 rgba(9,30,66,.03); }
.ig-opt:hover{ border-color:#9fc7ef; background:#f1f8ff; transform:translateY(-1px); box-shadow:0 8px 18px rgba(22,104,201,.10); }
.ig-opt input{ position:absolute; opacity:0; width:0; height:0; }
.ig-mark{ width:20px; height:20px; border:2px solid #b9c8d8; border-radius:50%; flex:0 0 20px; display:inline-block;
  position:relative; transition:all .15s; background:#fff; }
.ig-opt input[type=checkbox] + .ig-mark{ border-radius:6px; }
.ig-opt input:checked + .ig-mark{ border-color:var(--igf-blue); background:var(--igf-blue); }
.ig-opt input[type=checkbox]:checked + .ig-mark::after{ content:""; position:absolute; left:5px; top:1px; width:6px; height:11px;
  border:solid #fff; border-width:0 2.5px 2.5px 0; transform:rotate(45deg); }
.ig-opt input[type=radio]:checked + .ig-mark::after{ content:""; position:absolute; left:4px; top:4px; width:8px; height:8px; border-radius:50%; background:#fff; }
.ig-opt input:checked ~ span:last-child{ color:var(--igf-ink); font-weight:700; }
.ig-opt:has(input:checked){ border-color:var(--igf-blue); background:#e9f3ff; box-shadow:0 4px 12px rgba(22,104,201,.13); }
.ig-otro-text{ grid-column:1 / -1; margin-top:2px; }

/* ---- Botón enviar (azul fuerte, alto contraste) ---- */
.ig-submit{ display:flex; align-items:center; justify-content:center; gap:10px; width:100%; margin-top:30px; padding:17px 24px;
  border:0; border-radius:50px; cursor:pointer; font-size:16.5px; font-weight:800; letter-spacing:.3px; color:#fff; font-family:inherit;
  background:linear-gradient(135deg,#1668c9 0%, #1e8fe0 55%, #1ebbf0 100%);
  box-shadow:0 12px 26px rgba(22,104,201,.4), inset 0 1px 0 rgba(255,255,255,.25); transition:transform .18s, box-shadow .18s, filter .18s; }
.ig-submit:hover{ transform:translateY(-2px); box-shadow:0 16px 34px rgba(22,104,201,.5); }
.ig-submit:active{ transform:translateY(0); }
.ig-submit.loading{ filter:saturate(.6); cursor:wait; }

.ig-status{ margin:16px 2px 0; font-size:14.5px; font-weight:600; min-height:1em; text-align:center; }
.ig-status-ok{ color:#15806e; background:#e6f7f1; border:1px solid #bfe9dc; padding:12px 16px; border-radius:12px; }
.ig-status-err{ color:#c0392b; }

/* ---- Responsive ---- */
@media (max-width:760px){
  .ig-form-grid{ grid-template-columns:1fr; }
  .ig-opts{ grid-template-columns:1fr; }
  .ig-phone{ flex-direction:column; flex-wrap:nowrap; }
  .ig-country-combo{ flex:1 1 100%; min-width:0; }
  .ig-phone input{ flex:1 1 100%; }
  .ig-country-panel{ max-height:min(360px,55vh); overflow:hidden; }
  .ig-country-list{ max-height:min(300px,48vh); }
}
@media (max-width:480px){
  .ig-form-section{ padding:38px 12px 48px; }
  .ig-form-head h2{ font-size:1.45rem !important; }
  .ig-q-hint{ margin-left:0; }
}

/* =====================================================================
   PÁGINA DE AGRADECIMIENTO  /thanks
   ===================================================================== */
.ig-thanks-section{
  width:100vw; margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw);
  background:
    radial-gradient(820px 380px at 50% -8%, rgba(30,187,240,.16), transparent 62%),
    radial-gradient(680px 360px at 100% 110%, rgba(31,157,107,.12), transparent 55%),
    linear-gradient(180deg,#f4f8fc 0%, #e9f1f8 100%);
  padding:54px clamp(16px,5vw,40px) 66px; box-sizing:border-box; overflow:hidden;
  display:flex; justify-content:center;
}
.ig-thanks-card{
  max-width:760px; width:100%; background:#fff; border-radius:24px; border:1px solid #e6eef6;
  box-shadow:0 30px 70px rgba(14,42,71,.16); padding:clamp(30px,5vw,52px) clamp(22px,5vw,54px) clamp(30px,4vw,46px);
  text-align:center; position:relative; animation:igThanksIn .6s cubic-bezier(.2,.7,.2,1) both;
}
@keyframes igThanksIn{ from{opacity:0; transform:translateY(18px);} to{opacity:1; transform:none;} }

/* Insignia con check animado */
.ig-thanks-badge{
  width:104px; height:104px; margin:0 auto 22px; border-radius:50%;
  background:radial-gradient(circle at 50% 40%, #e7f8f0, #d6f0e4);
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 12px 28px rgba(31,157,107,.28), inset 0 0 0 1px rgba(31,157,107,.18);
  animation:igBadgePop .5s cubic-bezier(.2,.8,.2,1) both;
}
@keyframes igBadgePop{ 0%{transform:scale(.5); opacity:0;} 60%{transform:scale(1.06);} 100%{transform:scale(1); opacity:1;} }
.ig-check{ width:62px; height:62px; }
.ig-check-circle{ stroke:#1f9d6b; stroke-width:2.4; stroke-dasharray:151; stroke-dashoffset:151; animation:igStroke .6s cubic-bezier(.65,0,.45,1) .15s forwards; }
.ig-check-mark{ stroke:#1f9d6b; stroke-width:3.6; stroke-linecap:round; stroke-linejoin:round; stroke-dasharray:48; stroke-dashoffset:48; animation:igStroke .4s cubic-bezier(.65,0,.45,1) .6s forwards; }
@keyframes igStroke{ to{ stroke-dashoffset:0; } }

.ig-thanks-eyebrow{
  display:inline-block; background:#e7f8f0; color:#15806e; font-weight:800; letter-spacing:.6px;
  text-transform:uppercase; font-size:12px; padding:6px 14px; border-radius:50px; margin-bottom:14px;
}
.ig-thanks-title{ margin:0 0 14px !important; font-size:clamp(1.7rem,3.4vw,2.4rem) !important; font-weight:800 !important;
  color:#13315c !important; letter-spacing:-.5px; line-height:1.12; padding-left:0 !important; }
.ig-thanks-title::before{ display:none !important; content:none !important; }
.ig-thanks-lead{ margin:0 auto 30px !important; max-width:560px; font-size:clamp(1rem,1.6vw,1.12rem); line-height:1.65; color:#46566a; }
.ig-thanks-lead b{ color:#13315c; }

/* Pasos */
.ig-thanks-steps{ display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin:0 0 28px; text-align:left; }
.ig-step{ background:#f6f9fd; border:1px solid #e6edf6; border-radius:16px; padding:18px 16px; display:flex; flex-direction:column; gap:4px; transition:transform .18s, box-shadow .18s; }
.ig-step:hover{ transform:translateY(-3px); box-shadow:0 12px 24px rgba(14,42,71,.10); }
.ig-step-ico{ width:46px; height:46px; border-radius:13px; margin-bottom:12px;
  display:flex; align-items:center; justify-content:center;
  background:linear-gradient(135deg,#e9f3ff,#dbeaff); box-shadow:inset 0 0 0 1px rgba(22,104,201,.12); }
.ig-step-ico svg{ width:24px; height:24px; color:#1668c9; }
.ig-step-n{ font-size:11.5px; font-weight:800; text-transform:uppercase; letter-spacing:1px; color:#1668c9; }
.ig-step b{ color:#13315c; font-size:15.5px; }
.ig-step span:last-child{ font-size:13.5px; color:#5a6b80; line-height:1.45; }

/* Nota correo */
.ig-thanks-note{ display:flex; align-items:center; gap:11px; justify-content:center; text-align:left;
  background:#eff6fd; border:1px solid #d8e8f8; border-radius:14px; padding:14px 18px; margin:0 0 28px; color:#3a4a5e; font-size:14px; line-height:1.5; }
.ig-thanks-note svg{ width:24px; height:24px; color:#1668c9; flex:0 0 24px; }
.ig-thanks-note b{ color:#13315c; }

/* Botones */
.ig-thanks-actions{ display:flex; flex-wrap:wrap; gap:14px; justify-content:center; }
.ig-tbtn{ display:inline-flex; align-items:center; justify-content:center; padding:15px 28px; border-radius:50px;
  font-weight:800; font-size:15.5px; letter-spacing:.2px; text-decoration:none; transition:transform .18s, box-shadow .18s, background .18s; }
.ig-tbtn-primary{ color:#fff !important; background:linear-gradient(135deg,#1668c9,#1e8fe0 55%,#1ebbf0);
  box-shadow:0 12px 26px rgba(22,104,201,.4); }
.ig-tbtn-primary:hover{ transform:translateY(-2px); box-shadow:0 16px 34px rgba(22,104,201,.5); color:#fff !important; }
.ig-tbtn-ghost{ color:#13315c !important; background:#fff; border:1.7px solid #cfe0f1; }
.ig-tbtn-ghost:hover{ transform:translateY(-2px); border-color:#1668c9; color:#1668c9 !important; }

@media (max-width:680px){
  .ig-thanks-steps{ grid-template-columns:1fr; }
  .ig-thanks-actions{ flex-direction:column; }
  .ig-tbtn{ width:100%; }
  .ig-thanks-note{ flex-direction:column; text-align:center; }
}

/* =====================================================================
   HERO: Botones CTA (Revisa mi caso / Quiénes somos)
   ===================================================================== */
.ig-hero-cta{
  display:flex; flex-wrap:wrap; justify-content:center; align-items:center;
  gap:18px; margin:34px 0 6px;
  animation:igHeroCtaIn .8s cubic-bezier(.2,.7,.2,1) both;
}
@keyframes igHeroCtaIn{ from{opacity:0; transform:translateY(14px);} to{opacity:1; transform:none;} }

html body .ig-hero-btn,
html body .ig-hero-btn:hover,
html body .ig-hero-btn:focus,
html body .ig-hero-btn:visited{
  display:inline-flex; align-items:center; justify-content:center; gap:11px;
  padding:15px 30px; border-radius:60px;
  font-family:inherit !important; font-size:14.5px !important; font-weight:700 !important; letter-spacing:.7px !important; text-transform:uppercase !important;
  text-decoration:none !important; white-space:nowrap; line-height:1 !important; cursor:pointer;
  border:2px solid transparent; position:relative; overflow:hidden;
  transition:transform .25s cubic-bezier(.2,.7,.2,1), box-shadow .25s, background .25s, color .25s, border-color .25s;
}
/* Anular cualquier subrayado o estilo del tema en hover */
html body .ig-hero-btn::after,
html body .ig-hero-btn:hover::after{ display:none !important; content:none !important; background:none !important; border:0 !important; }
.ig-hero-btn-icon, .ig-hero-btn-arrow{ display:inline-flex; align-items:center; justify-content:center; flex:0 0 auto; }
.ig-hero-btn-icon svg{ width:18px; height:18px; }
.ig-hero-btn-arrow svg{ width:16px; height:16px; transition:transform .25s; }
.ig-hero-btn:hover .ig-hero-btn-arrow svg{ transform:translateX(4px); }

/* Botón PRIMARIO: dorado degradado (acción principal) */
html body a.ig-hero-btn-primary,
html body a.ig-hero-btn-primary:hover,
html body a.ig-hero-btn-primary:visited,
html body a.ig-hero-btn-primary:focus{
  background:linear-gradient(135deg, #d8b252 0%, #e9c576 50%, #c69a3f 100%) !important;
  color:#0e2a47 !important;
  box-shadow:0 12px 28px rgba(201,160,71,.40), inset 0 1px 0 rgba(255,255,255,.45);
  border-color:transparent !important;
  text-shadow:none !important;
}
.ig-hero-btn-primary::before{
  content:""; position:absolute; inset:0; border-radius:inherit;
  background:linear-gradient(135deg, #e9c576, #f6dc97);
  opacity:0; transition:opacity .3s; z-index:0;
}
.ig-hero-btn-primary > *{ position:relative; z-index:1; }
.ig-hero-btn-primary:hover{
  transform:translateY(-3px);
  box-shadow:0 18px 38px rgba(201,160,71,.55), inset 0 1px 0 rgba(255,255,255,.55);
  color:#0e2a47 !important;
}
.ig-hero-btn-primary:hover::before{ opacity:1; }

/* Botón GHOST: contorno claro sobre el hero oscuro */
html body a.ig-hero-btn-ghost,
html body a.ig-hero-btn-ghost:visited,
html body a.ig-hero-btn-ghost:focus{
  background:rgba(255,255,255,.06) !important;
  color:#ffffff !important;
  border:2px solid rgba(255,255,255,.45) !important;
  backdrop-filter:blur(4px);
  -webkit-backdrop-filter:blur(4px);
  text-shadow:none !important;
}
html body a.ig-hero-btn-ghost:hover{
  transform:translateY(-3px);
  background:rgba(255,255,255,.14) !important;
  border-color:#e9c576 !important;
  color:#e9c576 !important;
  box-shadow:0 10px 24px rgba(0,0,0,.25);
}

@media (max-width:560px){
  .ig-hero-cta{ flex-direction:column; gap:12px; margin-top:28px; }
  .ig-hero-btn{ width:100%; max-width:340px; padding:14px 24px; font-size:13.5px; }
}

/* =====================================================================
   PAGE-CTA: Sección final reutilizable al cerrar páginas informativas
   ===================================================================== */
.ig-page-cta{
  position:relative; width:100vw; margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw);
  background:
    radial-gradient(900px 420px at 12% -20%, rgba(30,187,240,.18), transparent 60%),
    radial-gradient(900px 460px at 105% 100%, rgba(201,160,71,.20), transparent 55%),
    linear-gradient(135deg,#0a2038 0%, #0e2a47 50%, #154e95 100%);
  padding:64px clamp(20px,5vw,40px) 64px; box-sizing:border-box; overflow:hidden;
  margin-top:60px;
}
.ig-page-cta::before{
  content:""; position:absolute; left:0; right:0; top:0; height:4px;
  background:linear-gradient(90deg, transparent, #c9a04b 30%, #e9c576 50%, #c9a04b 70%, transparent);
}
.ig-page-cta-inner{
  max-width:920px; margin:0 auto; text-align:center; position:relative;
}
.ig-page-cta-eyebrow{
  display:inline-flex; align-items:center; gap:8px;
  background:rgba(201,160,71,.16); color:#e9c576;
  font-weight:800; letter-spacing:1.4px; text-transform:uppercase;
  font-size:12px; padding:7px 16px; border-radius:50px; margin-bottom:18px;
  border:1px solid rgba(201,160,71,.28);
}
.ig-page-cta-eyebrow svg{ width:14px; height:14px; }
html body .ig-page-cta h2.ig-page-cta-title,
html body .ig-page-cta .ig-page-cta-title{
  margin:0 0 16px !important;
  font-size:clamp(1.6rem,3vw,2.3rem) !important;
  font-weight:800 !important; letter-spacing:-.5px;
  color:#ffffff !important; line-height:1.2;
  padding-left:0 !important;
}
html body .ig-page-cta .ig-page-cta-title::before{ display:none !important; content:none !important; }
.ig-page-cta-lead{
  margin:0 auto 30px !important; max-width:660px;
  font-size:clamp(1rem,1.5vw,1.1rem); line-height:1.65;
  color:#dbe9fb !important;
}
.ig-page-cta-lead b{ color:#ffffff; }
.ig-page-cta-actions{
  display:flex; flex-wrap:wrap; justify-content:center; align-items:center;
  gap:16px; margin-bottom:24px;
}
html body a.ig-page-cta-btn,
html body a.ig-page-cta-btn:visited,
html body a.ig-page-cta-btn:focus,
html body a.ig-page-cta-btn:hover{
  display:inline-flex; align-items:center; justify-content:center; gap:11px;
  padding:16px 32px; border-radius:60px;
  font-family:inherit !important; font-size:14.5px !important;
  font-weight:800 !important; letter-spacing:.7px !important; text-transform:uppercase !important;
  text-decoration:none !important; white-space:nowrap; line-height:1 !important;
  border:2px solid transparent !important;
  transition:transform .25s cubic-bezier(.2,.7,.2,1), box-shadow .25s, background .25s, color .25s, border-color .25s;
  text-shadow:none !important;
}
html body a.ig-page-cta-btn::after{ display:none !important; content:none !important; }
html body a.ig-page-cta-btn-primary,
html body a.ig-page-cta-btn-primary:visited,
html body a.ig-page-cta-btn-primary:focus{
  background:linear-gradient(135deg,#d8b252 0%, #e9c576 50%, #c69a3f 100%) !important;
  color:#0e2a47 !important;
  box-shadow:0 14px 30px rgba(201,160,71,.45), inset 0 1px 0 rgba(255,255,255,.45);
}
html body a.ig-page-cta-btn-primary:hover{
  transform:translateY(-3px);
  box-shadow:0 20px 40px rgba(201,160,71,.55), inset 0 1px 0 rgba(255,255,255,.55);
  color:#0e2a47 !important;
}
html body a.ig-page-cta-btn-ghost,
html body a.ig-page-cta-btn-ghost:visited,
html body a.ig-page-cta-btn-ghost:focus{
  background:rgba(255,255,255,.06) !important;
  color:#ffffff !important;
  border:2px solid rgba(255,255,255,.4) !important;
  backdrop-filter:blur(4px);
}
html body a.ig-page-cta-btn-ghost:hover{
  transform:translateY(-3px);
  background:rgba(255,255,255,.12) !important;
  border-color:#e9c576 !important;
  color:#e9c576 !important;
}
.ig-page-cta-btn svg{ width:18px; height:18px; }
.ig-page-cta-btn .ig-arrow{ transition:transform .25s; }
.ig-page-cta-btn:hover .ig-arrow{ transform:translateX(4px); }

.ig-page-cta-trust{
  display:flex; flex-wrap:wrap; justify-content:center; align-items:center;
  gap:10px 22px; font-size:13.5px; color:#a8c2dc; margin-top:8px;
}
.ig-page-cta-trust span{ display:inline-flex; align-items:center; gap:7px; }
.ig-page-cta-trust svg{ width:14px; height:14px; color:#7fe0ff; flex:0 0 14px; }

@media (max-width:560px){
  .ig-page-cta{ padding:48px 18px 50px; margin-top:40px; }
  .ig-page-cta-actions{ flex-direction:column; gap:12px; }
  .ig-page-cta-btn{ width:100%; max-width:340px; }
}

/* =====================================================================
   HOME: 3 tarjetas de "Chiringuitos" - Ilustraciones SVG + botones
   ===================================================================== */
.ig-card-illu{
  width:100%; max-width:100%; margin:0 auto 18px;
  border-radius:14px; overflow:hidden; line-height:0;
  box-shadow:0 12px 30px rgba(14,42,71,.18);
  transition:transform .4s cubic-bezier(.2,.7,.2,1), box-shadow .4s;
}
.ig-card-illu svg{ width:100%; height:auto; display:block; }
.ig-card-illu:hover{
  transform:translateY(-4px);
  box-shadow:0 20px 40px rgba(14,42,71,.28);
}

/* Botones azules de las 3 tarjetas - <a> contiene un <button> interno.
   Hacemos el <a> wrapper transparente y aplicamos todo el estilo al <button>. */
html body .wpb_wrapper a.ubtn-link,
html body .wpb_wrapper a.ubtn-link:visited,
html body .wpb_wrapper a.ubtn-link:hover{
  display:inline-block !important;
  padding:0 !important;
  background:transparent !important; background-color:transparent !important; background-image:none !important;
  box-shadow:none !important;
  border:0 !important; outline:none !important;
  text-decoration:none !important;
  margin-top:14px !important;
}
html body .wpb_wrapper a.ubtn-link::before,
html body .wpb_wrapper a.ubtn-link::after{ display:none !important; content:none !important; }

/* El <button> interno es el verdadero "botón" visual */
html body .wpb_wrapper a.ubtn-link > button.ubtn{
  display:inline-flex !important; align-items:center !important; justify-content:center !important;
  gap:8px !important;
  padding:14px 26px !important;
  border-radius:50px !important;
  background:linear-gradient(135deg,#1668c9 0%, #1e8fe0 55%, #1ebbf0 100%) !important;
  background-image:linear-gradient(135deg,#1668c9 0%, #1e8fe0 55%, #1ebbf0 100%) !important;
  color:#ffffff !important;
  font-family:inherit !important; font-size:13.5px !important; font-weight:800 !important;
  letter-spacing:.8px !important; text-transform:uppercase !important;
  text-shadow:none !important; white-space:nowrap !important; line-height:1.2 !important;
  border:0 !important; outline:none !important;
  box-shadow:0 10px 22px rgba(22,104,201,.35), inset 0 1px 0 rgba(255,255,255,.25) !important;
  transition:transform .25s cubic-bezier(.2,.7,.2,1), box-shadow .25s, filter .25s !important;
  position:relative !important; overflow:hidden !important;
  cursor:pointer;
  width:auto !important; height:auto !important; min-width:0 !important;
}
/* Texto interno: mostrar como inline normal en flex (no se rompe en 2 lineas) */
html body .wpb_wrapper a.ubtn-link button.ubtn .ubtn-data.ubtn-text{
  white-space:nowrap !important; line-height:1 !important;
  display:inline-block !important;
}
/* Ocultar el icono "+" (the7-plus) y el hover vacio que el tema mete dentro */
html body .wpb_wrapper a.ubtn-link button.ubtn .ubtn-data.ubtn-icon,
html body .wpb_wrapper a.ubtn-link button.ubtn .ubtn-icon,
html body .wpb_wrapper a.ubtn-link button.ubtn .ubtn-icon i,
html body .wpb_wrapper a.ubtn-link button.ubtn .ubtn-hover{
  display:none !important;
}
/* Efecto brillo deslizante */
html body .wpb_wrapper a.ubtn-link > button.ubtn::before{
  content:""; position:absolute; top:0; left:-100%; width:60%; height:100%;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.35), transparent);
  transform:skewX(-20deg);
  transition:left .55s cubic-bezier(.4,0,.2,1);
  pointer-events:none;
}
/* No usamos ::after de flecha aqui porque el tema The7 mete spans internos
   que interfieren con la posicion. El boton queda limpio con su degradado. */
/* Hover sobre el <a> aplica efectos al <button> interno */
html body .wpb_wrapper a.ubtn-link:hover > button.ubtn,
html body .wpb_wrapper a.ubtn-link > button.ubtn:hover{
  transform:translateY(-3px) !important;
  box-shadow:0 16px 34px rgba(22,104,201,.50), inset 0 1px 0 rgba(255,255,255,.4) !important;
  filter:brightness(1.08);
}
html body .wpb_wrapper a.ubtn-link:hover > button.ubtn::before,
html body .wpb_wrapper a.ubtn-link > button.ubtn:hover::before{ left:140%; }
html body .wpb_wrapper a.ubtn-link:active > button.ubtn{ transform:translateY(-1px) !important; }

/* Texto del data wrapper */
html body .wpb_wrapper a.ubtn-link button.ubtn .ubtn-data,
html body .wpb_wrapper a.ubtn-link button.ubtn span{
  color:#ffffff !important; background:transparent !important;
  font-weight:800 !important; letter-spacing:1px !important;
  position:relative; z-index:1;
}

@media (max-width:768px){
  html body .wpb_wrapper a.ubtn-link > button.ubtn{ padding:13px 26px !important; font-size:12.5px !important; }
}

/* =====================================================================
   FOTO DE LA ABOGADA (Pexels, vertical) - mostrar elegante sin distorsion
   ===================================================================== */
html body img[src*="abogada-isabella"]{
  width:100% !important; height:auto !important;
  max-height:480px !important;
  object-fit:cover !important;
  object-position:center 28% !important;  /* enfoca el rostro (foto horizontal) */
  border-radius:14px !important;
  box-shadow:0 16px 40px rgba(14,42,71,.20) !important;
  display:block;
}
@media (max-width:768px){
  html body img[src*="abogada-isabella"]{ max-height:380px !important; }
}

/* Evita que el preloader oculto del tema intercepte clics sobre formularios. */
html body .load-wrap,
html body .load-wrap *{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}
