.elementor-kit-830{--e-global-color-primary:#F4F5F7;--e-global-color-secondary:#F5F1E8;--e-global-color-text:#333333;--e-global-color-accent:#0D652D;--e-global-color-f74a39a:#FFFFFF;--e-global-color-8a6eaf5:#181818;--e-global-color-b72ff5e:#000000;--e-global-color-e118c1c:#000000CC;--e-global-color-25fe8e3:#02010100;--e-global-color-02a40d3:#006B3F59;--e-global-color-9cb6ca2:#F4F5F7;--e-global-color-592b540:#0D652D;--e-global-color-e6c0bcf:#006B3F59;--e-global-color-da1f04b:#00000026;--e-global-typography-primary-font-family:"Montserrat";--e-global-typography-primary-font-size:95px;--e-global-typography-primary-font-weight:600;--e-global-typography-primary-text-transform:uppercase;--e-global-typography-primary-font-style:normal;--e-global-typography-primary-text-decoration:none;--e-global-typography-primary-line-height:105px;--e-global-typography-primary-letter-spacing:-0.28px;--e-global-typography-primary-word-spacing:0px;--e-global-typography-secondary-font-family:"Montserrat";--e-global-typography-secondary-font-size:50px;--e-global-typography-secondary-font-weight:500;--e-global-typography-secondary-text-transform:uppercase;--e-global-typography-secondary-font-style:normal;--e-global-typography-secondary-text-decoration:none;--e-global-typography-secondary-line-height:60px;--e-global-typography-secondary-letter-spacing:-0.28px;--e-global-typography-secondary-word-spacing:0px;--e-global-typography-text-font-family:"Montserrat";--e-global-typography-text-font-size:18px;--e-global-typography-text-font-weight:400;--e-global-typography-text-text-transform:none;--e-global-typography-text-font-style:normal;--e-global-typography-text-text-decoration:none;--e-global-typography-text-line-height:25px;--e-global-typography-text-letter-spacing:1px;--e-global-typography-text-word-spacing:0px;--e-global-typography-accent-font-family:"Montserrat";--e-global-typography-accent-font-size:60px;--e-global-typography-accent-font-weight:600;--e-global-typography-accent-text-transform:capitalize;--e-global-typography-accent-font-style:normal;--e-global-typography-accent-text-decoration:underline;--e-global-typography-accent-line-height:74px;--e-global-typography-accent-letter-spacing:0px;--e-global-typography-accent-word-spacing:0px;--e-global-typography-05b982c-font-family:"Poppins";--e-global-typography-05b982c-font-size:54px;--e-global-typography-05b982c-font-weight:600;--e-global-typography-05b982c-line-height:1.15px;--e-global-typography-05b982c-word-spacing:0.2px;--e-global-typography-4837d60-font-family:"Poppins";--e-global-typography-4837d60-font-size:64px;--e-global-typography-4837d60-font-weight:600;--e-global-typography-e50476a-font-family:"Poppins";--e-global-typography-e50476a-font-size:64px;--e-global-typography-e50476a-font-weight:500;--e-global-typography-49670bf-font-family:"Poppins";--e-global-typography-49670bf-font-size:64px;--e-global-typography-49670bf-font-weight:700;--e-global-typography-f2d9d58-font-family:"Poppins";--e-global-typography-f2d9d58-font-size:48px;--e-global-typography-f2d9d58-font-weight:bold;--e-global-typography-f923ef6-font-family:"Poppins";--e-global-typography-f923ef6-font-size:48px;--e-global-typography-f923ef6-font-weight:600;--e-global-typography-d40b9d0-font-family:"Poppins";--e-global-typography-d40b9d0-font-size:48px;--e-global-typography-d40b9d0-font-weight:500;--e-global-typography-38f9d9d-font-family:"Poppins";--e-global-typography-38f9d9d-font-size:48px;--e-global-typography-38f9d9d-font-weight:600;--e-global-typography-c5fda3c-font-family:"Geologica";--e-global-typography-c5fda3c-font-size:40px;--e-global-typography-c5fda3c-font-weight:bold;--e-global-typography-ce757de-font-family:"Poppins";--e-global-typography-ce757de-font-size:40px;--e-global-typography-ce757de-font-weight:600;--e-global-typography-9b7f3b2-font-family:"Poppins";--e-global-typography-9b7f3b2-font-size:40px;--e-global-typography-9b7f3b2-font-weight:500;--e-global-typography-708c7e4-font-family:"Poppins";--e-global-typography-708c7e4-font-size:40px;--e-global-typography-708c7e4-font-weight:400;--e-global-typography-881d09a-font-family:"Poppins";--e-global-typography-881d09a-font-size:32px;--e-global-typography-881d09a-font-weight:bold;--e-global-typography-fa4db82-font-family:"Poppins";--e-global-typography-fa4db82-font-size:32px;--e-global-typography-fa4db82-font-weight:600;--e-global-typography-f999d11-font-family:"Poppins";--e-global-typography-f999d11-font-size:32px;--e-global-typography-f999d11-font-weight:500;--e-global-typography-bd2a917-font-family:"Poppins";--e-global-typography-bd2a917-font-size:32px;--e-global-typography-bd2a917-font-weight:400;--e-global-typography-8333109-font-family:"Geologica";--e-global-typography-8333109-font-size:24px;--e-global-typography-8333109-font-weight:bold;--e-global-typography-43cb27c-font-family:"Geologica";--e-global-typography-43cb27c-font-size:24px;--e-global-typography-43cb27c-font-weight:600;--e-global-typography-ce751e1-font-family:"Geologica";--e-global-typography-ce751e1-font-size:24px;--e-global-typography-ce751e1-font-weight:500;--e-global-typography-4530ab9-font-family:"Geologica";--e-global-typography-4530ab9-font-size:24px;--e-global-typography-4530ab9-font-weight:400;--e-global-typography-ea21317-font-family:"Geologica";--e-global-typography-ea21317-font-size:18px;--e-global-typography-ea21317-font-weight:700;--e-global-typography-8191543-font-family:"Geologica";--e-global-typography-8191543-font-size:18px;--e-global-typography-8191543-font-weight:600;--e-global-typography-0bb828c-font-family:"Geologica";--e-global-typography-0bb828c-font-size:18px;--e-global-typography-0bb828c-font-weight:500;--e-global-typography-6fa7a7c-font-family:"Geologica";--e-global-typography-6fa7a7c-font-size:18px;--e-global-typography-6fa7a7c-font-weight:400;--e-global-typography-2989ba9-font-family:"Geologica";--e-global-typography-2989ba9-font-size:16px;--e-global-typography-2989ba9-font-weight:700;--e-global-typography-57a6060-font-family:"Geologica";--e-global-typography-57a6060-font-size:16px;--e-global-typography-57a6060-font-weight:600;--e-global-typography-d97c851-font-family:"Geologica";--e-global-typography-d97c851-font-size:16px;--e-global-typography-d97c851-font-weight:500;--e-global-typography-292affe-font-family:"Geologica";--e-global-typography-292affe-font-size:16px;--e-global-typography-292affe-font-weight:400;--e-global-typography-94c32b3-font-family:"Geologica";--e-global-typography-94c32b3-font-size:14px;--e-global-typography-94c32b3-font-weight:700;--e-global-typography-6b161a2-font-family:"Geologica";--e-global-typography-6b161a2-font-size:14px;--e-global-typography-6b161a2-font-weight:600;--e-global-typography-2b65c69-font-family:"Geologica";--e-global-typography-2b65c69-font-size:14px;--e-global-typography-2b65c69-font-weight:500;--e-global-typography-0e1c549-font-family:"Geologica";--e-global-typography-0e1c549-font-size:14px;--e-global-typography-0e1c549-font-weight:400;--e-global-typography-71e3ec7-font-family:"Geologica";--e-global-typography-71e3ec7-font-size:12px;--e-global-typography-71e3ec7-font-weight:700;--e-global-typography-c68b166-font-family:"Geologica";--e-global-typography-c68b166-font-size:12px;--e-global-typography-c68b166-font-weight:600;--e-global-typography-6fa62cc-font-family:"Geologica";--e-global-typography-6fa62cc-font-size:12px;--e-global-typography-6fa62cc-font-weight:500;--e-global-typography-f164aea-font-family:"Geologica";--e-global-typography-f164aea-font-size:12px;--e-global-typography-f164aea-font-weight:400;--e-global-typography-e1ae241-font-family:"Montserrat";--e-global-typography-e1ae241-font-size:22px;--e-global-typography-e1ae241-font-weight:700;--e-global-typography-e1ae241-text-transform:none;--e-global-typography-e1ae241-font-style:normal;--e-global-typography-e1ae241-text-decoration:underline;--e-global-typography-e1ae241-line-height:30px;--e-global-typography-e1ae241-letter-spacing:0px;--e-global-typography-e1ae241-word-spacing:0px;--e-global-typography-b6196b7-font-family:"Montserrat";--e-global-typography-b6196b7-font-size:30px;--e-global-typography-b6196b7-font-weight:700;--e-global-typography-b6196b7-line-height:38px;--e-global-typography-b6196b7-letter-spacing:-0.13px;--e-global-typography-b84f1b3-font-family:"Montserrat";--e-global-typography-b84f1b3-font-size:25px;--e-global-typography-b84f1b3-font-weight:500;--e-global-typography-b84f1b3-text-transform:none;--e-global-typography-b84f1b3-font-style:normal;--e-global-typography-b84f1b3-text-decoration:none;--e-global-typography-b84f1b3-line-height:35px;--e-global-typography-b84f1b3-letter-spacing:0px;--e-global-typography-b84f1b3-word-spacing:0px;--e-global-typography-22e62d7-font-family:"Montserrat";--e-global-typography-22e62d7-font-size:156px;--e-global-typography-22e62d7-font-weight:700;--e-global-typography-22e62d7-text-transform:none;--e-global-typography-22e62d7-font-style:normal;--e-global-typography-22e62d7-text-decoration:none;--e-global-typography-22e62d7-line-height:198px;--e-global-typography-22e62d7-letter-spacing:-1.22px;--e-global-typography-22e62d7-word-spacing:0px;--e-global-typography-785de07-font-family:"Montserrat";--e-global-typography-785de07-font-size:14px;--e-global-typography-785de07-font-weight:400;--e-global-typography-785de07-text-transform:none;--e-global-typography-785de07-font-style:normal;--e-global-typography-785de07-text-decoration:none;--e-global-typography-785de07-line-height:17px;--e-global-typography-785de07-letter-spacing:0px;--e-global-typography-785de07-word-spacing:0px;--e-global-typography-d7a06da-font-family:"Montserrat";--e-global-typography-d7a06da-font-size:20px;--e-global-typography-d7a06da-font-weight:700;--e-global-typography-d7a06da-text-transform:uppercase;--e-global-typography-d7a06da-font-style:normal;--e-global-typography-d7a06da-text-decoration:none;--e-global-typography-d7a06da-line-height:24px;--e-global-typography-d7a06da-letter-spacing:0px;--e-global-typography-d7a06da-word-spacing:0px;--e-global-typography-94be0e7-font-family:"Poppins";--e-global-typography-94be0e7-font-weight:800;--e-global-typography-94be0e7-font-style:normal;--e-global-typography-94be0e7-text-decoration:none;color:#333333;font-family:"Montserrat", Sans-serif;font-size:18px;}.elementor-kit-830 e-page-transition{background-color:var( --e-global-color-592b540 );}.elementor-kit-830 p{margin-block-end:16px;}.elementor-kit-830 a{color:#006B3F;font-family:"Montserrat", Sans-serif;font-size:20px;}.elementor-kit-830 h1{font-family:"Montserrat", Sans-serif;font-size:48px;font-weight:700;word-spacing:0px;}.elementor-kit-830 h2{font-family:"Montserrat", Sans-serif;font-size:36px;}.elementor-kit-830 h3{font-family:"Montserrat", Sans-serif;font-size:28px;}.elementor-kit-830 h4{font-family:"Montserrat", Sans-serif;font-size:22px;}.elementor-kit-830 h5{font-family:"Montserrat", Sans-serif;font-size:18px;}.elementor-kit-830 button,.elementor-kit-830 input[type="button"],.elementor-kit-830 input[type="submit"],.elementor-kit-830 .elementor-button{font-family:"Poppins", Sans-serif;font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:0.5px;border-style:solid;border-width:2px 2px 2px 2px;border-radius:999px 999px 999px 999px;padding:12px 28px 12px 28px;}.elementor-kit-830 button:hover,.elementor-kit-830 button:focus,.elementor-kit-830 input[type="button"]:hover,.elementor-kit-830 input[type="button"]:focus,.elementor-kit-830 input[type="submit"]:hover,.elementor-kit-830 input[type="submit"]:focus,.elementor-kit-830 .elementor-button:hover,.elementor-kit-830 .elementor-button:focus{color:var( --e-global-color-f74a39a );border-style:solid;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-830{--e-global-typography-primary-font-size:59px;--e-global-typography-primary-line-height:60px;--e-global-typography-primary-letter-spacing:-0.28px;--e-global-typography-primary-word-spacing:0em;--e-global-typography-secondary-font-size:50px;--e-global-typography-text-font-size:15px;--e-global-typography-text-line-height:17px;--e-global-typography-accent-font-size:14px;--e-global-typography-accent-line-height:30px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-830{--e-global-typography-primary-font-size:36px;--e-global-typography-primary-line-height:40px;--e-global-typography-primary-letter-spacing:-0.28px;--e-global-typography-primary-word-spacing:0px;--e-global-typography-secondary-font-size:36px;--e-global-typography-secondary-line-height:50px;--e-global-typography-text-font-size:16px;--e-global-typography-text-line-height:20px;--e-global-typography-accent-letter-spacing:2px;--e-global-typography-e1ae241-font-size:20px;--e-global-typography-b84f1b3-font-size:18px;--e-global-typography-b84f1b3-line-height:20px;--e-global-typography-22e62d7-font-size:100px;--e-global-typography-22e62d7-line-height:110px;--e-global-typography-94be0e7-font-size:28px;--e-global-typography-94be0e7-line-height:1.2em;--e-global-typography-94be0e7-letter-spacing:0px;--e-global-typography-94be0e7-word-spacing:0em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* ============================================================
   INNOBAME – CSS GLOBAL DEPURADO
   ============================================================ */

/* ============================================================
   0. RESET ESTRUCTURAL
   ============================================================ */

*,
*::before,
*::after {
  box-sizing: border-box;
}

html,
body {
  width: 100%;
  margin: 0;
  padding: 0;
  overflow-x: hidden;
}

img,
video,
iframe,
svg {
  max-width: 100%;
  height: auto;
  display: block;
}

/* Elementor estructura */
.elementor,
.elementor-section,
.elementor-container,
.elementor-column,
.elementor-widget-wrap {
  max-width: 100%;
}

/* ============================================================
   1. VARIABLES DE MARCA
   ============================================================ */

:root {
  --ib-green: #006B3F;
  --ib-green-dark: #004F2D;
  --ib-green-accent: #0B9455;

  --ib-primary: #F4F5F7;
  --ib-secondary: #F5F1E8;
  --ib-body: #333333;
  --ib-accent: #0D652D;
  --ib-white: #FFFFFF;

  --ib-mint-bg: #E6F6EC;
  --ib-mint-light: #F5FBF7;

  --ib-text-dark: #0F172A;
  --ib-text-body: #334155;
  --ib-text-muted: #64748B;

  --ib-text-on-green: rgba(245, 241, 232, 0.88);
  --ib-border-on-green: rgba(245, 241, 232, 0.55);

  --ib-gray-line: #E2E8F0;
  --ib-gray-track: #F1F5F9;

  --ib-header-border: rgba(13, 101, 45, 0.10);
  --ib-header-shadow: 0 12px 30px rgba(0, 0, 0, 0.06);

  --ib-radius: 16px;
  --ib-shadow-soft: 0 10px 24px rgba(15, 23, 42, 0.06);
  --ib-shadow-hover: 0 18px 40px rgba(15, 23, 42, 0.12);
}

/* ============================================================
   2. BASE TIPOGRÁFICA
   ============================================================ */

body {
  font-family: 'Montserrat', system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--ib-body);
  line-height: 1.6;
  background-color: #FFFFFF;
}

body,
button,
input,
select,
textarea,
.elementor-widget-heading .elementor-heading-title,
.elementor-widget-text-editor,
.elementor-widget-theme-post-title,
.elementor-widget-theme-post-content,
.elementor-widget-post-content,
.elementor-button,
.elementor-nav-menu--main .elementor-item,
.elementor-nav-menu--dropdown .elementor-item {
  font-family: 'Montserrat', system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

h1 {
  font-weight: 700;
  margin-top: 0;
  font-family: 'Montserrat', system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

h2,
h3,
h4,
h5,
h6 {
  color: var(--ib-accent);
  font-weight: 700;
  margin-top: 0;
  font-family: 'Montserrat', system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

p {
  margin: 0 0 0.8em;
}

p,
li,
span,
div {
  color: inherit;
}

/* ============================================================
   3. CONTENEDORES Y SECCIONES
   ============================================================ */

.ib-container,
.ib-hero-inner {
  max-width: 1120px;
  margin: 0 auto;
  padding: 0 20px;
}

.ib-section {
  padding: 60px 0;
}

.ib-section.bg-mint {
  background: var(--ib-mint-bg);
}

.ib-section.bg-light {
  background: var(--ib-mint-light);
}

/* ============================================================
   4. LAYOUTS
   ============================================================ */

.ib-two-col {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
  gap: 32px;
}

.ib-grid-3 {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}

.ib-grid-2 {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}

/* ============================================================
   5. BOTONES
   ============================================================ */

.ib-btn,
.elementor-button,
button,
input[type="submit"] {
  background: var(--ib-green);
  color: #FFFFFF;
  border: none;
  padding: 12px 28px;
  border-radius: 999px;
  font-weight: 600;
  font-size: 0.95rem;
  line-height: 1.2;
  text-decoration: none;
  box-shadow: 0 4px 12px rgba(0, 107, 63, 0.18);
  transition: background 0.22s ease, box-shadow 0.22s ease, transform 0.22s ease;
}

.ib-btn:hover,
.elementor-button:hover,
button:hover,
input[type="submit"]:hover {
  background: var(--ib-green-dark);
  box-shadow: 0 6px 18px rgba(0, 107, 63, 0.32);
  transform: translateY(-2px);
}

/* ============================================================
   6. TARJETAS
   ============================================================ */

.ib-problem-card,
.ib-servicio-card,
.ib-method-card {
  background: #FFFFFF;
  border-radius: var(--ib-radius);
  border: 1px solid var(--ib-gray-line);
  box-shadow: var(--ib-shadow-soft);
  padding: 22px;
  transition: transform 0.22s ease, box-shadow 0.22s ease;
}

.ib-problem-card:hover,
.ib-servicio-card:hover,
.ib-method-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--ib-shadow-hover);
}

/* ============================================================
   7. PROGRESO
   ============================================================ */

.elementor-progress-wrapper {
  background: var(--ib-gray-track);
  border-radius: 999px;
  height: 6px;
}

.elementor-progress-bar {
  background: var(--ib-green);
  border-radius: 999px;
}

/* ============================================================
   8. FONDOS Y SISTEMA VISUAL
   ============================================================ */

.ib-green-bg,
.ib-green-bg .elementor-widget-container,
.ib-green-bg .elementor-heading-title,
.ib-green-bg .elementor-text-editor {
  color: var(--ib-text-on-green);
}

.ib-green-bg h1,
.ib-green-bg h2,
.ib-green-bg h3,
.ib-green-bg .elementor-heading-title,
.ib-green-bg .elementor-widget-heading h1,
.ib-green-bg .elementor-widget-heading h2,
.ib-green-bg .elementor-widget-heading h3 {
  color: var(--ib-secondary) !important;
}

.ib-green-bg p,
.ib-green-bg li,
.ib-green-bg span,
.ib-green-bg .elementor-text-editor,
.ib-green-bg .elementor-text-editor p {
  color: var(--ib-text-on-green) !important;
}

.ib-green-bg a {
  color: var(--ib-secondary);
}

.ib-green-bg a:hover {
  color: #ffffff;
}

.ib-green-bg .elementor-button,
.ib-green-bg .wp-element-button,
.ib-green-bg button,
.ib-green-bg input[type="button"],
.ib-green-bg input[type="submit"] {
  background: transparent !important;
  color: var(--ib-secondary) !important;
  border: 1px solid var(--ib-border-on-green) !important;
  box-shadow: none;
}

.ib-green-bg .elementor-button:hover,
.ib-green-bg .wp-element-button:hover,
.ib-green-bg button:hover,
.ib-green-bg input[type="button"]:hover,
.ib-green-bg input[type="submit"]:hover {
  background: var(--ib-secondary) !important;
  color: var(--ib-accent) !important;
  border-color: var(--ib-secondary) !important;
}

.ib-green-bg input,
.ib-green-bg textarea,
.ib-green-bg select {
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid var(--ib-border-on-green);
  color: var(--ib-secondary);
}

.ib-green-bg input::placeholder,
.ib-green-bg textarea::placeholder {
  color: rgba(245, 241, 232, 0.70);
}

.ib-light-bg {
  background: var(--ib-primary);
  color: var(--ib-body);
}

.ib-light-bg h1,
.ib-light-bg h2 {
  color: var(--ib-body);
}

.ib-light-bg h3,
.ib-light-bg h4 {
  color: var(--ib-accent);
}

.ib-secondary-bg {
  background: var(--ib-secondary);
  color: var(--ib-body);
}

.ib-secondary-bg h1,
.ib-secondary-bg h2 {
  color: var(--ib-body);
}

.ib-secondary-bg h3,
.ib-secondary-bg h4 {
  color: var(--ib-accent);
}

.ib-title-light {
  color: var(--ib-secondary) !important;
}

.ib-title-dark {
  color: var(--ib-body) !important;
}

.ib-title-accent {
  color: var(--ib-accent) !important;
}

.ib-text-soft-on-green {
  color: var(--ib-text-on-green) !important;
}

/* ============================================================
   9. HEADER / NAV FIX
   ============================================================ */

header,
.site-header,
.elementor-location-header,
.ib-site-header {
  position: relative;
  z-index: 9999;
}

.elementor-location-header {
  background: #ffffff !important;
}

.elementor-location-header .e-con,
.elementor-location-header .elementor-container,
.elementor-location-header .elementor-section {
  background: #ffffff;
}

.elementor-location-header .elementor-nav-menu--main .elementor-item,
.elementor-location-header .elementor-nav-menu--main .elementor-item:visited {
  color: var(--ib-accent) !important;
  background: transparent !important;
}

.elementor-location-header .elementor-nav-menu--main .elementor-item:hover,
.elementor-location-header .elementor-nav-menu--main .elementor-item:focus,
.elementor-location-header .elementor-nav-menu--main .elementor-item.elementor-item-active,
.elementor-location-header .elementor-nav-menu--main .elementor-item.highlighted {
  color: var(--ib-accent) !important;
  opacity: 0.88;
}

.elementor-location-header .elementor-nav-menu--main .sub-arrow {
  color: var(--ib-accent) !important;
}

.elementor-location-header .elementor-nav-menu--dropdown,
.elementor-location-header .elementor-nav-menu__container.elementor-nav-menu--dropdown {
  background: #ffffff !important;
  border: 1px solid var(--ib-header-border) !important;
  box-shadow: var(--ib-header-shadow) !important;
  min-width: 240px;
  padding: 10px 0 !important;
}

.elementor-location-header .elementor-nav-menu--dropdown a,
.elementor-location-header .elementor-nav-menu--dropdown .elementor-item,
.elementor-location-header .elementor-nav-menu--dropdown .sub-menu a {
  color: var(--ib-accent) !important;
  background: #ffffff !important;
  padding: 14px 22px !important;
  line-height: 1.35;
  border: 0 !important;
}

.elementor-location-header .elementor-nav-menu--dropdown a:hover,
.elementor-location-header .elementor-nav-menu--dropdown .elementor-item:hover,
.elementor-location-header .elementor-nav-menu--dropdown .current-menu-item > a,
.elementor-location-header .elementor-nav-menu--dropdown .current_page_item > a,
.elementor-location-header .elementor-nav-menu--dropdown .current-menu-parent > a {
  background: var(--ib-primary) !important;
  color: var(--ib-accent) !important;
}

.elementor-location-header .sub-menu,
.elementor-location-header ul.sub-menu {
  background: #ffffff !important;
}

.elementor-location-header,
.elementor-location-header * {
  backdrop-filter: none;
}

.elementor-location-header .elementor-social-icon {
  background: var(--ib-accent) !important;
  border-color: var(--ib-accent) !important;
}

.elementor-location-header .elementor-social-icon i,
.elementor-location-header .elementor-social-icon svg {
  color: #ffffff !important;
  fill: #ffffff !important;
}

.elementor-location-header .site-logo,
.elementor-location-header .custom-logo-link,
.elementor-location-header .elementor-heading-title,
.elementor-location-header .elementor-icon-list-text {
  color: var(--ib-accent);
}

.elementor-location-header .elementor-menu-toggle {
  color: var(--ib-accent) !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

.elementor-location-header .elementor-menu-toggle:hover,
.elementor-location-header .elementor-menu-toggle:focus {
  color: var(--ib-accent) !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

.elementor-location-header .elementor-menu-toggle svg {
  fill: var(--ib-accent) !important;
}

/* Protección del logo del header */
.elementor-location-header .custom-logo,
.elementor-location-header .custom-logo-link img,
.elementor-location-header .elementor-widget-theme-site-logo img,
.elementor-location-header .elementor-widget-image img {
  width: auto !important;
  height: auto !important;
  max-height: 56px !important;
  object-fit: contain !important;
  display: block;
}

.elementor-location-header .custom-logo-link,
.elementor-location-header .elementor-widget-theme-site-logo,
.elementor-location-header .elementor-widget-image {
  display: flex;
  align-items: center;
}

.elementor-location-header .elementor-nav-menu--dropdown.elementor-nav-menu__container {
  background: #ffffff !important;
}

.elementor-location-header .elementor-nav-menu--main,
.elementor-location-header nav,
.elementor-location-header .elementor-widget-nav-menu {
  background: transparent !important;
}

.elementor-location-header.elementor-sticky--active,
.elementor-location-header .elementor-sticky--active {
  background: rgba(255, 255, 255, 0.96) !important;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.05);
}

.elementor-location-header .elementor-nav-menu--main .sub-menu {
  margin-top: 8px !important;
  border-radius: 0 !important;
}

.elementor-location-header .elementor-nav-menu--dropdown,
.elementor-location-header .sub-menu {
  z-index: 10001 !important;
}

/* ============================================================
   10. SINGLE POST – BLOG PREMIUM
   ============================================================ */

.single-post .elementor-widget-theme-post-content,
.single-post .elementor-widget-post-content,
.single-post .entry-content {
  max-width: 820px;
  margin: 0 auto;
  padding-top: 20px;
}

.single-post .elementor-widget-theme-post-content > h1:first-child,
.single-post .elementor-widget-post-content > h1:first-child,
.single-post .elementor-widget-theme-post-content .wp-block-post-title,
.single-post .elementor-widget-post-content .wp-block-post-title,
.single-post .elementor-widget-theme-post-content .entry-title,
.single-post .elementor-widget-post-content .entry-title {
  display: none !important;
}

.single-post .elementor-widget-theme-post-title h1,
.single-post .elementor-widget-post-title h1 {
  color: #111111;
  font-size: 52px;
  font-weight: 700;
  line-height: 1.08;
  letter-spacing: -0.03em;
  max-width: 12ch;
  margin-bottom: 24px;
}

.single-post .elementor-widget-theme-post-featured-image img,
.single-post .elementor-widget-post-featured-image img {
  width: 100%;
  height: 420px;
  object-fit: cover;
  border-radius: 10px;
  box-shadow: 0 20px 40px rgba(0, 0, 0, .08);
}

.single-post .elementor-widget-theme-post-content p,
.single-post .elementor-widget-post-content p,
.single-post .entry-content p {
  color: #333333;
  font-size: 20px;
  line-height: 1.8;
  margin-bottom: 1.35em;
  max-width: 38em;
}

.single-post .elementor-widget-theme-post-content h2,
.single-post .elementor-widget-post-content h2,
.single-post .entry-content h2 {
  color: #0D652D !important;
  font-size: 38px;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -0.02em;
  margin-top: 70px;
  margin-bottom: 20px;
}

.single-post .elementor-widget-theme-post-content h3,
.single-post .elementor-widget-post-content h3,
.single-post .entry-content h3 {
  color: #111111;
  font-size: 28px;
  font-weight: 700;
  line-height: 1.2;
  margin-top: 45px;
  margin-bottom: 14px;
}

.single-post .elementor-widget-theme-post-content a,
.single-post .elementor-widget-post-content a,
.single-post .entry-content a {
  color: #0D652D;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.single-post footer,
.single-post .site-footer {
  margin-top: 70px;
}

/* ============================================================
   11. RESPONSIVE
   ============================================================ */

@media (max-width: 960px) {
  .ib-two-col {
    grid-template-columns: 1fr;
  }

  .ib-grid-3 {
    grid-template-columns: repeat(2, 1fr);
  }

  .single-post .elementor-widget-theme-post-title h1,
  .single-post .elementor-widget-post-title h1 {
    font-size: 40px;
  }

  .single-post .elementor-widget-theme-post-featured-image img,
  .single-post .elementor-widget-post-featured-image img {
    height: 360px;
  }

  .single-post .elementor-widget-theme-post-content h2,
  .single-post .elementor-widget-post-content h2,
  .single-post .entry-content h2 {
    font-size: 32px;
  }
}

@media (max-width: 640px) {
  .ib-section {
    padding: 40px 0;
  }

  .ib-grid-3,
  .ib-grid-2 {
    grid-template-columns: 1fr;
  }

  .single-post .elementor-widget-theme-post-title h1,
  .single-post .elementor-widget-post-title h1 {
    font-size: 30px;
    max-width: 100%;
  }

  .single-post .elementor-widget-theme-post-featured-image img,
  .single-post .elementor-widget-post-featured-image img {
    height: 240px;
  }

  .single-post .elementor-widget-theme-post-content,
  .single-post .elementor-widget-post-content,
  .single-post .entry-content {
    padding-left: 22px;
    padding-right: 22px;
  }

  .single-post .elementor-widget-theme-post-content p,
  .single-post .elementor-widget-post-content p,
  .single-post .entry-content p {
    font-size: 18px;
  }

  .single-post .elementor-widget-theme-post-content h2,
  .single-post .elementor-widget-post-content h2,
  .single-post .entry-content h2 {
    font-size: 28px;
    margin-top: 50px;
  }

  .single-post .elementor-widget-theme-post-content h3,
  .single-post .elementor-widget-post-content h3,
  .single-post .entry-content h3 {
    font-size: 22px;
  }
}

.elementor-widget-heading h2,
.elementor-widget-heading h3,
.elementor-widget-heading h4,
.elementor-widget-heading h5,
.elementor-widget-heading h6 {
  color: var(--ib-accent);
}

/* TITULOS DE TARJETAS EN VERDE INNOBAME */

.ib-problem-card h3,
.ib-problem-card h4,
.ib-servicio-card h3,
.ib-servicio-card h4,
.ib-method-card h3,
.ib-method-card h4,
.elementor-widget-container .ib-problem-card .elementor-heading-title,
.elementor-widget-container .ib-servicio-card .elementor-heading-title,
.elementor-widget-container .ib-method-card .elementor-heading-title,
.elementor-widget-icon-box .elementor-icon-box-title,
.elementor-widget-image-box .elementor-image-box-title {
  color: var(--ib-accent) !important;
}/* End custom CSS */