/* AvalosCPA — Figma pixel-perfect styles (node 1:1291) */

.avaloscpa-section p,
.avaloscpa-section p:last-child {
  margin: 0;
}

/* ===== TYPOGRAPHY — EB Garamond headings (missing from Elementor) ===== */

/* Hero h1 — Figma 1:1378 */
.elementor-element-a1hero003 .elementor-heading-title {
  font-family: "EB Garamond", serif;
  font-weight: 600;
  font-size: 56px;
  line-height: 64px;
  color: #ffffff;
  letter-spacing: -1.12px;
  text-shadow: 0px 2px 1px rgba(0,0,0,0.06), 0px 4px 1.5px rgba(0,0,0,0.07);
}

/* Trust block headings — Figma 1:1455,1:1464,1:1473,1:1482 */
.elementor-element-a2trust06 .elementor-heading-title,
.elementor-element-a2trust10 .elementor-heading-title,
.elementor-element-a2trust14 .elementor-heading-title,
.elementor-element-a2trust18 .elementor-heading-title {
  font-family: "EB Garamond", serif;
  font-weight: 500;
  font-size: 24px;
  line-height: 32px;
  color: #10243a;
}

/* Services section eyebrow — Figma 1:1296 */
.elementor-element-a3serv05 .elementor-heading-title {
  font-family: "Inter", sans-serif;
  font-weight: 600;
  font-size: 12px;
  line-height: 16px;
  color: #082746;
  letter-spacing: 1.2px;
  text-transform: uppercase;
}

/* Services section heading — Figma 1:1298 */
.elementor-element-a3serv06 .elementor-heading-title {
  font-family: "EB Garamond", serif;
  font-weight: 500;
  font-size: 32px;
  line-height: 40px;
  color: #10243a;
}

/* Service card titles — Figma 1:1309,1:1321,1:1333,1:1345 */
.elementor-element-a3card03 .elementor-heading-title,
.elementor-element-b3card03 .elementor-heading-title,
.elementor-element-c3card03 .elementor-heading-title,
.elementor-element-d3card03 .elementor-heading-title {
  font-family: "EB Garamond", serif;
  font-weight: 500;
  font-size: 24px;
  line-height: 32px;
  color: #10243a;
}

/* Stats numbers — Figma 1:1356,1:1360,1:1364,1:1368 */
.elementor-element-a4stat02 .elementor-heading-title,
.elementor-element-b4stat02 .elementor-heading-title,
.elementor-element-c4stat02 .elementor-heading-title,
.elementor-element-d4stat02 .elementor-heading-title {
  font-family: "EB Garamond", serif;
  font-weight: 600;
  font-size: 56px;
  line-height: 64px;
  color: #c99a32;
  letter-spacing: -1.12px;
  text-align: center;
}

/* Process section eyebrow — Figma 1:1389 */
.elementor-element-a5proc05 .elementor-heading-title {
  font-family: "Inter", sans-serif;
  font-weight: 600;
  font-size: 12px;
  line-height: 16px;
  color: #082746;
  letter-spacing: 1.2px;
  text-align: center;
  text-transform: uppercase;
}

/* Process section heading — Figma 1:1391 */
.elementor-element-a5proc06 .elementor-heading-title {
  font-family: "EB Garamond", serif;
  font-weight: 500;
  font-size: 32px;
  line-height: 40px;
  color: #10243a;
  text-align: center;
}

/* Process step titles — Figma 1:1400,1:1408,1:1416,1:1424,1:1432 */
.elementor-element-a5titl01 .elementor-heading-title,
.elementor-element-a5titl02 .elementor-heading-title,
.elementor-element-a5titl04 .elementor-heading-title,
.elementor-element-a5titl05 .elementor-heading-title {
  font-family: "EB Garamond", serif;
  font-weight: 500;
  font-size: 24px;
  line-height: 32px;
  color: #10243a;
  text-align: center;
}

/* Process step title "Proponemos" (active/highlighted) — Figma 1:1416 */
.elementor-element-a5titl03 .elementor-heading-title {
  font-family: "EB Garamond", serif;
  font-weight: 600;
  font-size: 24px;
  line-height: 32px;
  color: #082746;
  text-align: center;
}

/* CTA heading — Figma 1:1441 */
.elementor-element-a6cta003 .elementor-heading-title {
  font-family: "EB Garamond", serif;
  font-weight: 500;
  font-size: 32px;
  line-height: 40px;
  color: #ffffff;
  text-align: center;
}

/* ===== STATS SECTION — Figma 1:1352, data-id a4stats1 ===== */

/* Stats inner container — padding and alignment */
.elementor-element-a4stats2 {
  padding-top: 80px !important;
  padding-bottom: 80px !important;
  padding-left: 120px !important;
  padding-right: 120px !important;
  justify-content: center !important;
  align-items: center !important;
}

/* Stats columns — center align */
.elementor-element-a4stat01,
.elementor-element-b4stat01,
.elementor-element-c4stat01,
.elementor-element-d4stat01 {
  align-items: center !important;
  justify-content: center !important;
}

/* Stats numbers */
.elementor-element-a4stat02 .elementor-heading-title,
.elementor-element-b4stat02 .elementor-heading-title,
.elementor-element-c4stat02 .elementor-heading-title,
.elementor-element-d4stat02 .elementor-heading-title {
  font-family: "EB Garamond", serif;
  font-weight: 600;
  font-size: 56px;
  line-height: 64px;
  color: #c99a32;
  letter-spacing: -1.12px;
  text-align: center;
  margin: 0;
}

/* Stats labels */
.elementor-element-a4stat03 p,
.elementor-element-b4stat03 p,
.elementor-element-c4stat03 p,
.elementor-element-d4stat03 p {
  font-family: "Inter", sans-serif;
  font-weight: 600;
  font-size: 12px;
  line-height: 16px;
  letter-spacing: 1.2px;
  color: rgba(255, 255, 255, 0.8);
  text-align: center;
  margin: 0;
}

/* ===== HERO: multiply overlay + horizontal gradient (Figma 1:1373, 1:1374) ===== */
.avaloscpa-hero {
  position: relative;
  overflow: hidden;
}
.avaloscpa-hero::before,
.avaloscpa-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
}
.avaloscpa-hero::before {
  background: rgba(0, 18, 39, 0.85);
  mix-blend-mode: multiply;
  z-index: 1;
}
.avaloscpa-hero::after {
  background: linear-gradient(to right, rgba(8, 39, 70, 0.9), rgba(8, 39, 70, 0));
  z-index: 2;
}
/* Content above overlays — fix: a1hero002 is the real direct child, not .e-con-inner */
.avaloscpa-hero > * {
  position: relative;
  z-index: 3;
}

/* ===== Services header link with underline + arrow (Figma 1:1299) ===== */
.avaloscpa-link-arrow p,
.avaloscpa-card-link p {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin: 0;
}
.avaloscpa-link-arrow p {
  border-bottom: 1px solid #082746;
  padding-bottom: 5px;
}
.avaloscpa-link-arrow img {
  width: 10px;
  height: 10px;
}
.avaloscpa-card-link img {
  width: 5px;
  height: 8px;
}

/* ===== Fixed-size helpers (below container slider minimums) ===== */
.avaloscpa-icon-box {
  width: 56px !important;
  min-width: 56px !important;
  height: 56px;
}
.avaloscpa-dot {
  width: 16px !important;
  min-width: 16px !important;
  height: 16px;
  margin-bottom: 24px;
  position: relative;
  z-index: 1;
}
.avaloscpa-node {
  width: 182px;
  max-width: 100%;
}
.avaloscpa-max-672 {
  width: 672px;
  max-width: 100%;
}

/* ===== PROCESS SECTION — Figma 1:1386, data-id a5proc01 ===== */

/* Process container padding */
.elementor-element-a5proc02 {
  padding-top: 80px !important;
  padding-bottom: 80px !important;
  padding-left: 80px !important;
  padding-right: 80px !important;
  gap: 48px !important;
  align-items: center !important;
}

/* Process header — centered */
.elementor-element-a5proc03 {
  align-items: center !important;
  gap: 12px !important;
}

/* Eyebrow "NUESTRO ENFOQUE" */
.elementor-element-a5proc04 .elementor-heading-title {
  font-family: "Inter", sans-serif;
  font-weight: 600;
  font-size: 12px;
  line-height: 16px;
  letter-spacing: 1.2px;
  color: #082746;
  text-transform: uppercase;
}

/* Main heading */
.elementor-element-a5proc05 .elementor-heading-title {
  font-family: "EB Garamond", serif;
  font-weight: 500;
  font-size: 32px;
  line-height: 40px;
  color: #10243a;
}

/* Process row — timeline */
.avaloscpa-process-row {
  position: relative;
  display: flex;
  justify-content: center;
  gap: 32px !important;
  width: 100%;
}
.avaloscpa-process-row::before {
  content: "";
  position: absolute;
  top: 8px;
  left: 10%;
  right: 10%;
  height: 2px;
  background: #e5e7eb;
  z-index: 0;
}

/* Process nodes — equal width */
.avaloscpa-node {
  flex: 1 !important;
  max-width: 200px !important;
  width: auto !important;
  display: flex;
  flex-direction: column;
  align-items: center;
}

/* Process dots — 16px circle */
.avaloscpa-dot {
  width: 16px !important;
  min-width: 16px !important;
  height: 16px !important;
  border-radius: 50% !important;
  border: 2px solid #e5e7eb !important;
  background: #ffffff !important;
  margin-bottom: 16px !important;
  position: relative;
  z-index: 1;
  box-shadow: none !important;
}

/* Active dot (Proponemos) — gold */
.elementor-element-a5dot003 {
  border-color: #c99a32 !important;
  background: #ffffff !important;
}

/* Process step titles */
.elementor-element-a5titl01 .elementor-heading-title,
.elementor-element-a5titl02 .elementor-heading-title,
.elementor-element-a5titl04 .elementor-heading-title,
.elementor-element-a5titl05 .elementor-heading-title {
  font-family: "EB Garamond", serif;
  font-weight: 500;
  font-size: 20px;
  line-height: 28px;
  color: #10243a;
  text-align: center;
  margin-bottom: 8px;
}

/* Active step title (Proponemos) — bold, dark navy */
.elementor-element-a5titl03 .elementor-heading-title {
  font-family: "EB Garamond", serif;
  font-weight: 600;
  font-size: 20px;
  line-height: 28px;
  color: #082746;
  text-align: center;
  margin-bottom: 8px;
}

/* Process step descriptions */
.elementor-element-a5desc01 p,
.elementor-element-a5desc02 p,
.elementor-element-a5desc03 p,
.elementor-element-a5desc04 p,
.elementor-element-a5desc05 p {
  font-family: "Inter", sans-serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  color: #4b5563;
  text-align: center;
  margin: 0;
}

/* ===== CTA SECTION — Figma 1:1441, data-id a6cta001 ===== */

/* CTA container — padding */
.elementor-element-a6cta001 {
  padding-top: 100px !important;
  padding-bottom: 100px !important;
  padding-left: 40px !important;
  padding-right: 40px !important;
}

/* CTA inner — gap and alignment */
.elementor-element-a6cta002 {
  gap: 24px !important;
  align-items: center !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* CTA heading */
.elementor-element-a6cta003 .elementor-heading-title {
  font-family: "EB Garamond", serif;
  font-weight: 500;
  font-size: 32px;
  line-height: 40px;
  color: #ffffff;
  text-align: center;
  margin: 0;
}

/* CTA description */
.elementor-element-a6cta004 p {
  font-family: "Inter", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  color: rgba(255, 255, 255, 0.85);
  text-align: center;
  margin: 0;
  max-width: 600px;
}

/* CTA button — gold with shadow */
.elementor-element-a6cta005 .elementor-button {
  background-color: #c99a32 !important;
  font-family: "Inter", sans-serif;
  font-weight: 500;
  font-size: 14px;
  line-height: 20px;
  color: #ffffff !important;
  fill: #ffffff !important;
  padding: 14px 28px !important;
  border-radius: 4px !important;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15) !important;
  transition: all 0.3s ease !important;
}
.elementor-element-a6cta005 .elementor-button:hover {
  background-color: #b88a2a !important;
  box-shadow: 0 12px 24px rgba(0, 0, 0, 0.2) !important;
  transform: translateY(-1px);
}

/* CTA overlay — multiply + gradient (like hero) */
.elementor-element-a6cta001::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 18, 39, 0.85);
  mix-blend-mode: multiply;
  z-index: 1;
  pointer-events: none;
}
.elementor-element-a6cta001::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to right, rgba(8, 39, 70, 0.9), rgba(8, 39, 70, 0.7));
  z-index: 2;
  pointer-events: none;
}
.elementor-element-a6cta001 > * {
  position: relative;
  z-index: 3;
}

/* ===== Header (Figma 1:1280, 1:1553) ===== */
.avaloscpa-logo-box {
  width: 40px !important;
  min-width: 40px !important;
  height: 40px;
}
.avaloscpa-logo-mini {
  width: 31px !important;
  min-width: 31px !important;
  height: 32px;
}
.avaloscpa-badge {
  height: 48px;
}
.avaloscpa-preheader p {
  margin: 0;
}
.avaloscpa-preheader a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: rgba(255, 255, 255, 0.8);
  font: 400 12px/16px Inter, sans-serif;
  letter-spacing: 1.2px;
  text-decoration: none;
}
.avaloscpa-preheader a + a {
  margin-left: 24px;
}
.avaloscpa-preheader img {
  display: block;
}
.avaloscpa-nav p {
  margin: 0;
  display: flex;
  align-items: center;
}
.avaloscpa-nav a {
  color: #43474e;
  font: 600 12px/16px Inter, sans-serif;
  letter-spacing: 1.2px;
  text-decoration: none;
  margin-left: 32px;
}
.avaloscpa-nav a:first-of-type {
  color: #001227;
  opacity: 0.8;
  border-bottom: 2px solid #7a5900;
  padding-bottom: 6px;
  margin-left: 0;
}
.avaloscpa-nav a:hover {
  color: #c99a32;
}

/* ===== FOOTER — Figma 1:1485, data-id b0foote01 ===== */

/* Footer container — dark navy */
.elementor-element-b0foote01 {
  background-color: #001227 !important;
}

/* Footer inner — padding and layout */
.elementor-element-b0foote03 {
  padding-top: 60px !important;
  padding-bottom: 40px !important;
  padding-left: 80px !important;
  padding-right: 80px !important;
  gap: 32px !important;
  justify-content: space-between !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
}

/* Logo column */
.elementor-element-b0foote04 {
  flex: 1.2 !important;
  max-width: 280px !important;
}

/* Logo row */
.elementor-element-b0foote05 {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin-bottom: 16px !important;
}

/* Logo box — "A" badge */
.elementor-element-b0foote06 {
  background-color: rgba(255, 255, 255, 0.1) !important;
  border-radius: 4px !important;
  width: 40px !important;
  height: 40px !important;
  min-width: 40px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Logo "A" text */
.elementor-element-b0foote07 .elementor-heading-title {
  font-family: "EB Garamond", serif;
  font-weight: 700;
  font-size: 20px;
  line-height: 24px;
  color: #ffffff;
  margin: 0;
}

/* Company name */
.elementor-element-b0foote08 .elementor-heading-title {
  font-family: "EB Garamond", serif;
  font-weight: 600;
  font-size: 18px;
  line-height: 24px;
  color: #ffffff;
  margin: 0;
}

/* Description */
.elementor-element-b0foote09 p {
  font-family: "Inter", sans-serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  color: rgba(255, 255, 255, 0.5);
  margin: 0;
}

/* Column headings — "Navegación", "Contacto", "Certificaciones" */
.elementor-element-b0foote11 .elementor-heading-title,
.elementor-element-b0foote14 .elementor-heading-title,
.elementor-element-b0foote26 .elementor-heading-title {
  font-family: "Inter", sans-serif;
  font-weight: 600;
  font-size: 12px;
  line-height: 16px;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.4);
  margin-bottom: 20px !important;
}

/* Navigation links */
.elementor-element-b0foote10 {
  flex: 0.8 !important;
}
.elementor-element-b0foote12 p {
  margin: 0;
}
.elementor-element-b0foote12 a {
  display: block;
  margin-bottom: 12px;
  font-family: "Inter", sans-serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  color: rgba(255, 255, 255, 0.6);
  text-decoration: none;
  transition: color 0.2s ease;
}
.elementor-element-b0foote12 a:hover {
  color: #ffffff;
}

/* Contact column */
.elementor-element-b0foote13 {
  flex: 1 !important;
  padding-bottom: 0 !important;
}

/* Contact rows */
.avaloscpa-contact-row {
  display: flex !important;
  align-items: flex-start !important;
  gap: 12px !important;
  margin-bottom: 16px !important;
}
.avaloscpa-contact-row p {
  margin: 0;
  font-family: "Inter", sans-serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  color: rgba(255, 255, 255, 0.6);
}
.avaloscpa-contact-row img {
  width: 16px !important;
  height: 16px !important;
  flex-shrink: 0;
  margin-top: 2px;
}

/* Certifications column */
.elementor-element-b0foote25 {
  flex: 0.8 !important;
}

/* Certification badges */
.elementor-element-b0foote27 {
  display: flex !important;
  gap: 12px !important;
  flex-wrap: wrap !important;
}
.elementor-element-b0foote28,
.elementor-element-b0foote30 {
  background-color: rgba(255, 255, 255, 0.08) !important;
  border: 1px solid rgba(255, 255, 255, 0.15) !important;
  border-radius: 4px !important;
  padding: 10px 20px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.elementor-element-b0foote29 p,
.elementor-element-b0foote31 p {
  font-family: "Inter", sans-serif;
  font-weight: 600;
  font-size: 12px;
  line-height: 16px;
  color: rgba(255, 255, 255, 0.7);
  margin: 0;
}

/* Bottom bar */
.elementor-element-b0foote32 {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  padding-top: 24px !important;
  padding-bottom: 24px !important;
  padding-left: 80px !important;
  padding-right: 80px !important;
}

/* Copyright text */
.elementor-element-b0foote33 p {
  font-family: "Inter", sans-serif;
  font-weight: 400;
  font-size: 12px;
  line-height: 16px;
  color: rgba(255, 255, 255, 0.4);
  margin: 0;
}

/* Legal links */
.avaloscpa-legal {
  display: flex !important;
  gap: 24px !important;
}
.avaloscpa-legal a {
  color: rgba(255, 255, 255, 0.4) !important;
  font-family: "Inter", sans-serif;
  font-weight: 400;
  font-size: 12px;
  line-height: 16px;
  text-decoration: none;
  transition: color 0.2s ease;
}
.avaloscpa-legal a:hover {
  color: #ffffff !important;
}

/* ===== TRUST SECTION — match referencia/1.png ===== */

/* Dark navy background behind the card (a2trust01) */
.elementor-element-a2trust01 {
  background-color: #082746 !important;
  padding-top: 80px !important;
  padding-bottom: 100px !important;
}

/* White card container (a2trust02) */
.elementor-element-a2trust02 {
  border-radius: 8px !important;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15) !important;
  margin-top: 0 !important;
  border-bottom: none !important;
  max-width: 1100px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Remove vertical borders between columns */
.elementor-element-a2trust08,
.elementor-element-a2trust12,
.elementor-element-a2trust16 {
  border-left: none !important;
}

/* Trust icons — gold/copper color and larger */
.elementor-element-a2trust05 img,
.elementor-element-a2trust09 img,
.elementor-element-a2trust13 img,
.elementor-element-a2trust17 img {
  filter: invert(45%) sepia(85%) saturate(600%) hue-rotate(1deg) brightness(95%) contrast(95%);
  width: 40px !important;
  height: 40px !important;
  object-fit: contain;
}

/* Trust card titles */
.elementor-element-a2trust06 .elementor-heading-title,
.elementor-element-a2trust10 .elementor-heading-title,
.elementor-element-a2trust14 .elementor-heading-title,
.elementor-element-a2trust18 .elementor-heading-title {
  font-family: "EB Garamond", serif;
  font-weight: 500;
  font-size: 22px;
  line-height: 28px;
  color: #10243a;
  margin-bottom: 8px;
}

/* Trust card descriptions */
.elementor-element-a2trust07 p,
.elementor-element-a2trust11 p,
.elementor-element-a2trust15 p,
.elementor-element-a2trust19 p {
  font-family: "Inter", sans-serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  color: #4b5563;
  margin: 0;
}

/* Trust card columns — center align, more padding */
.elementor-element-a2trust04,
.elementor-element-a2trust08,
.elementor-element-a2trust12,
.elementor-element-a2trust16 {
  align-items: center !important;
  padding: 32px 24px !important;
}

/* ===== SERVICES SECTION — Figma 1:1292, data-id a3serv01 ===== */

/* White background (not gray) */
.elementor-element-a3serv01 {
  background-color: #ffffff !important;
}

/* Inner container padding */
/*
.elementor-element-a3serv02 {
  padding-top: 80px !important;
  padding-bottom: 80px !important;
  padding-left: 80px !important;
  padding-right: 80px !important;
  gap: 48px !important;
}
*/

/* Header row — title left, link right */
.elementor-element-a3serv03 {
  justify-content: space-between !important;
  align-items: flex-end !important;
}

/* Eyebrow "NUESTRA EXPERIENCIA" */
.elementor-element-a3serv05 .elementor-heading-title {
  font-family: "Inter", sans-serif;
  font-weight: 600;
  font-size: 12px;
  line-height: 16px;
  letter-spacing: 1.2px;
  color: #082746;
  text-transform: uppercase;
}

/* Main heading */
.elementor-element-a3serv06 .elementor-heading-title {
  font-family: "EB Garamond", serif;
  font-weight: 500;
  font-size: 32px;
  line-height: 40px;
  color: #10243a;
}

/* "Ver todos los servicios" link — blue */
.elementor-element-a3serv07 {
  font-family: "Inter", sans-serif;
  font-weight: 600;
  font-size: 14px;
  line-height: 20px;
  color: #082746;
}
.elementor-element-a3serv07 a {
  color: #082746 !important;
}
.elementor-element-a3serv07 a:hover {
  color: #c99a32 !important;
}

/* Grid — 2 columns, 2 rows, gap 24px */
.elementor-element-a3serv08 {
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 24px !important;
}

/* Service cards — remove borders, increase radius */
.elementor-element-a3card01,
.elementor-element-b3card01,
.elementor-element-c3card01,
.elementor-element-d3card01 {
  border: none !important;
  border-radius: 8px !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06) !important;
  padding: 32px !important;
  gap: 16px !important;
  background-color: #ffffff !important;
}

/* Service card icon box — light blue background */
.elementor-element-a3card02,
.elementor-element-b3card02,
.elementor-element-c3card02,
.elementor-element-d3card02 {
  background-color: #e8f0fe !important;
  border-radius: 8px !important;
  width: 56px !important;
  height: 56px !important;
  min-width: 56px !important;
}

/* Service card icons — blue color */
.elementor-element-a3card03 img,
.elementor-element-b3card03 img,
.elementor-element-c3card03 img,
.elementor-element-d3card03 img {
  filter: invert(20%) sepia(100%) saturate(200%) hue-rotate(190deg) brightness(90%) contrast(95%);
  width: 28px !important;
  height: 28px !important;
}

/* Service card titles */
.elementor-element-a3card04 .elementor-heading-title,
.elementor-element-b3card04 .elementor-heading-title,
.elementor-element-c3card04 .elementor-heading-title,
.elementor-element-d3card04 .elementor-heading-title {
  font-family: "EB Garamond", serif;
  font-weight: 500;
  font-size: 24px;
  line-height: 32px;
  color: #10243a;
}

/* Service card descriptions — always 3 lines */
.elementor-element-a3card05,
.elementor-element-b3card05,
.elementor-element-c3card05,
.elementor-element-d3card05 {
  min-height: 72px !important;
}
.elementor-element-a3card05 p,
.elementor-element-b3card05 p,
.elementor-element-c3card05 p,
.elementor-element-d3card05 p {
  font-family: "Inter", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  color: #4b5563;
  margin: 0;
}

/* Service card links — blue color */
.elementor-element-a3card06 p,
.elementor-element-b3card06 p,
.elementor-element-c3card06 p,
.elementor-element-d3card06 p {
  font-family: "Inter", sans-serif;
  font-weight: 500;
  font-size: 14px;
  line-height: 20px;
  color: #082746;
  margin: 0;
}
.elementor-element-a3card06 a,
.elementor-element-b3card06 a,
.elementor-element-c3card06 a,
.elementor-element-d3card06 a {
  color: #082746 !important;
}

/* ===== NOSOTROS HERO — Figma 1:1590, data-id nos_hero01 ===== */

/* Apply multiply blend to Elementor's existing ::before overlay */
.elementor-281 .elementor-element.elementor-element-nos_hero01::before {
  mix-blend-mode: multiply !important;
}

/* Add vertical gradient (top to bottom) as ::after */
.elementor-281 .elementor-element.elementor-element-nos_hero01::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(to bottom, rgba(8, 39, 70, 0) 0%, rgba(8, 39, 70, 0.6) 60%, rgba(8, 39, 70, 0.9) 100%);
  z-index: 1;
}

/* Ensure content sits above both overlays */
.elementor-281 .elementor-element.elementor-element-nos_hero01 > * {
  position: relative;
  z-index: 2;
}

/* Golden line — exact Figma dimensions: 96px × 4px, no stretch */
.elementor-281 .elementor-element.elementor-element-nos_hero05 {
  width: 96px !important;
  min-width: 96px !important;
  max-width: 96px !important;
  height: 4px !important;
  min-height: 4px !important;
  flex-grow: 0 !important;
  align-self: center !important;
}
