
/* tokens/fonts */
/* EGANEX — General Sans (official brand typeface). Files supplied by the client. */
@font-face{font-family:"General Sans";src:url("assets/fonts/GeneralSans-Extralight.otf") format("opentype");font-weight:200;font-style:normal;font-display:swap}
@font-face{font-family:"General Sans";src:url("assets/fonts/GeneralSans-ExtralightItalic.otf") format("opentype");font-weight:200;font-style:italic;font-display:swap}
@font-face{font-family:"General Sans";src:url("assets/fonts/GeneralSans-Light.otf") format("opentype");font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:"General Sans";src:url("assets/fonts/GeneralSans-LightItalic.otf") format("opentype");font-weight:300;font-style:italic;font-display:swap}
@font-face{font-family:"General Sans";src:url("assets/fonts/GeneralSans-Regular.otf") format("opentype");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"General Sans";src:url("assets/fonts/GeneralSans-Italic.otf") format("opentype");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"General Sans";src:url("assets/fonts/GeneralSans-Medium.otf") format("opentype");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"General Sans";src:url("assets/fonts/GeneralSans-MediumItalic.otf") format("opentype");font-weight:500;font-style:italic;font-display:swap}
@font-face{font-family:"General Sans";src:url("assets/fonts/GeneralSans-Semibold.otf") format("opentype");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"General Sans";src:url("assets/fonts/GeneralSans-SemiboldItalic.otf") format("opentype");font-weight:600;font-style:italic;font-display:swap}
@font-face{font-family:"General Sans";src:url("assets/fonts/GeneralSans-Bold.otf") format("opentype");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"General Sans";src:url("assets/fonts/GeneralSans-BoldItalic.otf") format("opentype");font-weight:700;font-style:italic;font-display:swap}

/* tokens/colors */
/* EGANEX — Color. Dark-first. Graphite structure, champagne accent, warm indirect light. */
:root{
  /* Base — graphite / microcemento scale */
  --eg-black:#000000;
  --eg-ink-950:#060607;
  --eg-ink-900:#0B0B0C;
  --eg-ink-850:#111113;
  --eg-ink-800:#17171A;
  --eg-ink-750:#1D1D21;
  --eg-ink-700:#242429;
  --eg-ink-600:#2E2E34;
  --eg-ink-500:#3B3B42;
  --eg-ink-400:#55555E;

  /* Base — warm neutrals (text on dark) */
  --eg-grey-400:#6E6E76;
  --eg-grey-300:#8C8C93;
  --eg-grey-200:#A9A9AF;
  --eg-grey-100:#CFCFD3;
  --eg-paper:#FCFAFB;

  /* Base — champagne (brand accent, sampled from the isotipo) */
  --eg-champagne-100:#EBDDD1;
  --eg-champagne-200:#D9C6B4;
  --eg-champagne-300:#C2A995; /* CORE ACCENT */
  --eg-champagne-400:#A78B76;
  --eg-champagne-500:#846956;
  --eg-champagne-600:#5A463A;

  /* Base — warm structural light (indirect glow, never a UI fill) */
  --eg-light-warm:#F5DEB8;
  --eg-light-core:#FFF0D6;
  --eg-glow-soft:rgba(245,222,184,.14);
  --eg-glow-edge:rgba(255,240,214,.55);

  /* Base — light surfaces (documents, print, inverted sections) */
  --eg-bone-050:#FCFAF8;
  --eg-bone-100:#F2EFEB;
  --eg-bone-200:#E4E0DA;
  --eg-bone-300:#CFC9C1;

  /* Semantic — status. Restrained, desaturated. Use sparingly. */
  --eg-signal-ok:#7E9B7A;
  --eg-signal-warn:#C9A227;
  --eg-signal-risk:#A85B4B;
  --eg-signal-info:#7E8FA0;

  /* ── Semantic aliases: use these in product & comms ── */
  --surface-canvas:var(--eg-ink-900);
  --surface-base:var(--eg-ink-850);
  --surface-card:var(--eg-ink-800);
  --surface-raised:var(--eg-ink-750);
  --surface-inset:var(--eg-ink-950);
  --surface-glass:rgba(23,23,26,.62);
  --surface-inverse:var(--eg-bone-050);

  --text-primary:var(--eg-paper);
  --text-secondary:var(--eg-grey-200);
  --text-muted:var(--eg-grey-400);
  --text-accent:var(--eg-champagne-300);
  --text-on-accent:var(--eg-ink-900);
  --text-inverse:var(--eg-ink-900);

  --accent:var(--eg-champagne-300);
  --accent-hover:var(--eg-champagne-200);
  --accent-press:var(--eg-champagne-400);
  --accent-quiet:rgba(194,169,149,.12);

  --border-hairline:rgba(252,250,251,.08);
  --border-soft:rgba(252,250,251,.14);
  --border-strong:rgba(252,250,251,.24);
  --border-accent:rgba(194,169,149,.45);

  --focus-ring:var(--eg-champagne-300);
}

/* Inverted / light scope — documents, print, light sections. */
.eg-light{
  --surface-canvas:var(--eg-bone-050);
  --surface-base:var(--eg-bone-100);
  --surface-card:#FFFFFF;
  --surface-raised:#FFFFFF;
  --surface-inset:var(--eg-bone-100);
  --surface-glass:rgba(255,255,255,.72);
  --surface-inverse:var(--eg-ink-900);
  --text-primary:var(--eg-ink-900);
  --text-secondary:#4A4A52;
  --text-muted:#7C7C84;
  --text-accent:var(--eg-champagne-500);
  --text-inverse:var(--eg-paper);
  --accent:var(--eg-champagne-400);
  --accent-hover:var(--eg-champagne-500);
  --accent-press:var(--eg-champagne-600);
  --accent-quiet:rgba(167,139,118,.14);
  --border-hairline:rgba(11,11,12,.10);
  --border-soft:rgba(11,11,12,.16);
  --border-strong:rgba(11,11,12,.28);
  --border-accent:rgba(167,139,118,.55);
}

/* tokens/typography */
/* EGANEX — Typography. General Sans only. Light weights, wide tracking on caps. */
:root{
  --font-sans:"General Sans","Helvetica Neue",Arial,sans-serif; /* @kind font */
  --font-display:var(--font-sans); /* @kind font */
  --font-mono:ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace; /* @kind font */

  --fw-extralight:200; /* @kind font */
  --fw-light:300; /* @kind font */
  --fw-regular:400; /* @kind font */
  --fw-medium:500; /* @kind font */
  --fw-semibold:600; /* @kind font */
  --fw-bold:700; /* @kind font */

  /* Type scale — 1.25 major third, 16px base */
  --fs-3xs:11px; /* @kind font */
  --fs-2xs:12px; /* @kind font */
  --fs-xs:13px; /* @kind font */
  --fs-sm:15px; /* @kind font */
  --fs-base:17px; /* @kind font */
  --fs-md:19px; /* @kind font */
  --fs-lg:23px; /* @kind font */
  --fs-xl:29px; /* @kind font */
  --fs-2xl:37px; /* @kind font */
  --fs-3xl:47px; /* @kind font */
  --fs-4xl:60px; /* @kind font */
  --fs-5xl:76px; /* @kind font */
  --fs-6xl:96px; /* @kind font */

  --lh-tight:1.04; /* @kind font */
  --lh-snug:1.16; /* @kind font */
  --lh-heading:1.24; /* @kind font */
  --lh-body:1.58; /* @kind font */
  --lh-loose:1.72; /* @kind font */

  /* Tracking — the brand signature is wide letterspacing on uppercase */
  --ls-display:-0.02em; /* @kind font */
  --ls-heading:-0.01em; /* @kind font */
  --ls-body:0em; /* @kind font */
  --ls-wide:0.08em; /* @kind font */
  --ls-wider:0.16em;   /* eyebrows, labels, nav */
  --ls-widest:0.30em;  /* logotype-adjacent caps, claim lines */

  /* Composed roles */
  --type-display:var(--fw-light) var(--fs-5xl)/var(--lh-tight) var(--font-display); /* @kind font */
  --type-h1:var(--fw-light) var(--fs-4xl)/var(--lh-snug) var(--font-display); /* @kind font */
  --type-h2:var(--fw-light) var(--fs-3xl)/var(--lh-snug) var(--font-display); /* @kind font */
  --type-h3:var(--fw-regular) var(--fs-xl)/var(--lh-heading) var(--font-sans); /* @kind font */
  --type-h4:var(--fw-medium) var(--fs-md)/var(--lh-heading) var(--font-sans); /* @kind font */
  --type-body:var(--fw-regular) var(--fs-base)/var(--lh-body) var(--font-sans); /* @kind font */
  --type-body-sm:var(--fw-regular) var(--fs-sm)/var(--lh-body) var(--font-sans); /* @kind font */
  --type-lead:var(--fw-light) var(--fs-md)/var(--lh-loose) var(--font-sans); /* @kind font */
  --type-label:var(--fw-medium) var(--fs-2xs)/1.2 var(--font-sans); /* @kind font */
  --type-eyebrow:var(--fw-medium) var(--fs-3xs)/1.2 var(--font-sans); /* @kind font */
  --type-caption:var(--fw-regular) var(--fs-xs)/1.45 var(--font-sans); /* @kind font */
}

/* tokens/spacing */
/* EGANEX — Spacing & layout. 4px base, architectural rhythm. */
:root{
  --space-0:0px; /* @kind spacing */
  --space-1:4px; /* @kind spacing */
  --space-2:8px; /* @kind spacing */
  --space-3:12px; /* @kind spacing */
  --space-4:16px; /* @kind spacing */
  --space-5:24px; /* @kind spacing */
  --space-6:32px; /* @kind spacing */
  --space-7:40px; /* @kind spacing */
  --space-8:56px; /* @kind spacing */
  --space-9:72px; /* @kind spacing */
  --space-10:96px; /* @kind spacing */
  --space-11:128px; /* @kind spacing */
  --space-12:160px; /* @kind spacing */

  /* Section rhythm */
  --section-y-sm:72px; /* @kind spacing */
  --section-y:120px; /* @kind spacing */
  --section-y-lg:160px; /* @kind spacing */

  /* Containers */
  --container-narrow:720px; /* @kind spacing */
  --container-text:880px; /* @kind spacing */
  --container:1180px; /* @kind spacing */
  --container-wide:1440px; /* @kind spacing */
  --gutter:24px; /* @kind spacing */
  --gutter-lg:48px; /* @kind spacing */

  /* Grid */
  --grid-cols:12; /* @kind other */
  --grid-gap:24px; /* @kind spacing */
}

/* tokens/surfaces */
/* EGANEX — Surface treatment: radii, borders, elevation, motion, structural light. */
:root{
  /* Radii — architectural, near-square. Nothing pill-shaped except tags. */
  --radius-0:0px; /* @kind radius */
  --radius-xs:2px; /* @kind radius */
  --radius-sm:3px; /* @kind radius */
  --radius-md:4px; /* @kind radius */
  --radius-lg:6px; /* @kind radius */
  --radius-xl:10px; /* @kind radius */
  --radius-pill:999px; /* @kind radius */

  --border-width:1px; /* @kind spacing */
  --border-width-thick:2px; /* @kind spacing */
  --rule:1px solid var(--border-hairline); /* @kind color */

  /* Elevation — depth comes from light, not drop shadow. Shadows stay deep and soft. */
  --shadow-none:none; /* @kind shadow */
  --shadow-sm:0 1px 2px rgba(0,0,0,.40); /* @kind shadow */
  --shadow-md:0 8px 24px rgba(0,0,0,.45); /* @kind shadow */
  --shadow-lg:0 24px 64px rgba(0,0,0,.55); /* @kind shadow */
  --shadow-inset-top:inset 0 1px 0 rgba(252,250,251,.06); /* @kind shadow */

  /* Structural Light — the proprietary visual device. Warm light through dark structure. */
  --light-hairline:linear-gradient(90deg,transparent,var(--eg-glow-edge) 45%,var(--eg-glow-edge) 55%,transparent); /* @kind color */
  --light-hairline-v:linear-gradient(180deg,transparent,var(--eg-glow-edge) 45%,var(--eg-glow-edge) 55%,transparent); /* @kind color */
  --light-wash:radial-gradient(120% 90% at 100% 0%,var(--eg-glow-soft),transparent 60%); /* @kind color */
  --light-grazing:linear-gradient(105deg,transparent 0%,transparent 62%,rgba(245,222,184,.06) 70%,transparent 86%); /* @kind color */
  --light-bloom:0 0 24px rgba(245,222,184,.28); /* @kind shadow */
  --light-seam:1px solid rgba(245,222,184,.35); /* @kind color */

  /* Glass — smoked, never frosted-white */
  --glass-blur:blur(14px) saturate(1.05); /* @kind other */
  --glass-bg:rgba(17,17,19,.66); /* @kind color */

  /* Motion — calm, controlled, no bounce */
  --ease-standard:cubic-bezier(.22,.61,.36,1); /* @kind other */
  --ease-out:cubic-bezier(.16,1,.3,1); /* @kind other */
  --ease-in:cubic-bezier(.6,.04,.98,.34); /* @kind other */
  --dur-instant:90ms; /* @kind other */
  --dur-fast:160ms; /* @kind other */
  --dur-base:240ms; /* @kind other */
  --dur-slow:420ms; /* @kind other */
  --dur-reveal:720ms; /* @kind other */
  --transition-base:all var(--dur-base) var(--ease-standard); /* @kind other */

  --z-base:0; /* @kind other */
  --z-sticky:100; /* @kind other */
  --z-overlay:400; /* @kind other */
  --z-modal:500; /* @kind other */
  --z-toast:600; /* @kind other */
}

/* tokens/base */
/* EGANEX — Base element styling & brand utilities. */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
body{margin:0;background:var(--surface-canvas);color:var(--text-primary);font:var(--type-body);letter-spacing:var(--ls-body);text-wrap:pretty}
h1,h2,h3,h4,h5,h6{margin:0;color:var(--text-primary);text-wrap:balance}
h1{font:var(--type-h1);letter-spacing:var(--ls-display)}
h2{font:var(--type-h2);letter-spacing:var(--ls-display)}
h3{font:var(--type-h3);letter-spacing:var(--ls-heading)}
h4{font:var(--type-h4);letter-spacing:var(--ls-heading)}
p{margin:0 0 var(--space-4)}
a{color:var(--text-accent);text-decoration:none;border-bottom:1px solid var(--border-accent);transition:color var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard)}
a:hover{color:var(--accent-hover);border-bottom-color:var(--accent-hover)}
a:active{color:var(--accent-press)}
:focus-visible{outline:1px solid var(--focus-ring);outline-offset:2px}
hr{border:0;border-top:1px solid var(--border-hairline);margin:var(--space-6) 0}
img{max-width:100%;display:block}
::selection{background:var(--accent-quiet);color:var(--text-primary)}

/* Brand utilities */
.eg-eyebrow{font:var(--type-eyebrow);letter-spacing:var(--ls-widest);text-transform:uppercase;color:var(--text-accent)}
.eg-label{font:var(--type-label);letter-spacing:var(--ls-wider);text-transform:uppercase;color:var(--text-secondary)}
.eg-lead{font:var(--type-lead);color:var(--text-secondary)}
.eg-caps{text-transform:uppercase;letter-spacing:var(--ls-widest)}
.eg-display{font:var(--type-display);letter-spacing:var(--ls-display)}
.eg-container{max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}

/* Structural Light devices */
.eg-seam{height:1px;background:var(--light-hairline);opacity:.9}
.eg-seam-v{width:1px;background:var(--light-hairline-v);opacity:.9}
.eg-wash{background-image:var(--light-wash)}
.eg-grazed{background-image:var(--light-grazing)}

/* design system */







/* ---- base ---- */
html, body { margin: 0; padding: 0; background: #11110F; color: #F2F0EC; font: 400 17px/1.65 var(--font-sans); }
* { box-sizing: border-box; }
img, video { max-width: 100%; }
a { color: #D1B99F; text-decoration: none; }
a:hover { color: #DCC8B2; }




@media (prefers-reduced-motion: reduce) { [data-marquee-track] { animation: none !important; } }

/* ===== index.html ===== */

  html, body { margin: 0; padding: 0; background: #11110F; color: #F2F0EC; font: 400 17px/1.65 var(--font-sans); }
  * { box-sizing: border-box; }
  @media (max-width: 760px) { [data-thumb] { display: none !important; } }
  @keyframes egFadeIn { from { opacity: 0; } to { opacity: 1; } }
  @keyframes egSubBlockIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
  [data-hero-sub] { will-change: opacity, transform; }
  @media (prefers-reduced-motion: reduce) { [data-hero-sub], [data-hero-subblock] { animation: none !important; opacity: 1 !important; transform: none !important; } }
  
   /* header out of scale */
  a { color: #D1B99F; text-decoration: none; border-bottom: none; }
  a:hover { color: #DCC8B2; }
  [data-menu] { display: none; }
  @keyframes eg-letter { from { opacity: 0; transform: translateY(0.34em); } to { opacity: 1; transform: none; } }
  [data-letter] { display: inline-block; opacity: 0; }
  [data-cascade] [data-letter] { animation: eg-letter 520ms cubic-bezier(.16,1,.3,1) both; }
  @media (prefers-reduced-motion: reduce) {
    [data-letter] { opacity: 1 !important; animation: none !important; }
  }
  @keyframes eg-marquee { from { transform: translate3d(0,0,0); } to { transform: translate3d(-50%,0,0); } }
  [data-marquee]:hover [data-marquee-track] { animation-play-state: paused; }
  @media (prefers-reduced-motion: reduce) { [data-marquee-track] { animation: none !important; } }
  @keyframes eg-reveal { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: none; } }
  [data-reveal] { animation: eg-reveal 720ms cubic-bezier(.16,1,.3,1) both; }
  @supports (animation-timeline: view()) {
    [data-reveal] { animation-timeline: view(); animation-range: entry 0% cover 26%; }
  }
  @media (prefers-reduced-motion: reduce) { [data-reveal] { animation: none; } }
  @media (max-width: 1180px) {
    [data-navitem] { display: none !important; }
    [data-menutoggle] { display: grid !important; }
  }
  @media (max-width: 860px) {
    [data-hero] { min-height: 0 !important; padding: 132px 0 64px !important; height: auto !important; }
    [data-hero-title] { position: static !important; white-space: normal !important; }
    [data-hero-row] { position: static !important; margin-top: 56px; flex-direction: column !important; align-items: flex-start !important; gap: 28px !important; }
    [data-cols] { grid-template-columns: 1fr !important; }
    [data-routes] { grid-template-columns: 1fr !important; }
  }
  @media (max-width: 1100px) {
    [data-footgrid] { grid-template-columns: 1fr 1fr !important; gap: 48px !important; }
    [data-footcol] { border-left: none !important; padding-left: 0 !important; }
  }
  @media (max-width: 680px) {
    [data-footgrid] { grid-template-columns: 1fr !important; }
    [data-footbar] { flex-direction: column !important; align-items: flex-start !important; }
  }
  @media (max-width: 1000px) { [data-quad] { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } }
  @media (max-width: 760px) { [data-tri] { grid-template-columns: 1fr !important; } }
  @media (max-width: 560px) { [data-quad] { grid-template-columns: 1fr !important; } }

.eg-index-0:hover { background-size: 100% 1px; color: #F2F0EC }
.eg-index-1:hover { background-size: 100% 1px; color: #F2F0EC }
.eg-index-2:hover { background-size: 100% 1px; color: #F2F0EC }
.eg-index-3:hover { background-size: 100% 1px; color: #F2F0EC }
.eg-index-4:hover { border-color: #D1B99F; color: #D1B99F }
.eg-index-5:hover { background: #EBDDD1; transform: scale(1.06); box-shadow: 0 0 24px rgba(209,185,159,.34) }
.eg-index-6:hover { background: #EBDDD1; transform: scale(1.03); box-shadow: 0 0 28px rgba(209,185,159,.3) }
.eg-index-7:hover { border-color: #D1B99F; background: rgba(209,185,159,.14); color: #F2F0EC; transform: scale(1.06); box-shadow: 0 0 28px rgba(209,185,159,.3) }
.eg-index-8:hover { color: #F2F0EC; gap: 24px; border-color: #D1B99F }
.eg-index-9:hover { background: rgba(209,185,159,.05) }
.eg-index-10:hover { opacity: 1; transform: scale(1.05) }
.eg-index-11:hover { background: rgba(209,185,159,.05) }
.eg-index-12:hover { opacity: 1; transform: scale(1.05) }
.eg-index-13:hover { background: rgba(209,185,159,.05) }
.eg-index-14:hover { opacity: 1; transform: scale(1.05) }
.eg-index-15:hover { color: #11110F; gap: 24px; border-color: #8A6A4B }
.eg-index-16:hover { border-color: #8A6A4B }
.eg-index-17:hover { transform: scale(1.05) }
.eg-index-18:hover { border-color: #8A6A4B }
.eg-index-19:hover { transform: scale(1.05) }
.eg-index-20:hover { border-color: #8A6A4B }
.eg-index-21:hover { transform: scale(1.05) }
.eg-index-22:hover { border-color: #8A6A4B }
.eg-index-23:hover { transform: scale(1.05) }
.eg-index-24:hover { color: #F2F0EC; gap: 24px; border-color: #D1B99F }
.eg-index-25:hover { background: #EBDDD1; transform: scale(1.06); box-shadow: 0 0 32px rgba(209,185,159,.36) }
.eg-index-26:hover { color: #D1B99F }
.eg-index-27:hover { color: #D1B99F }
.eg-index-28:hover { color: #D1B99F }
.eg-index-29:hover { color: #D1B99F }
.eg-index-30:hover { color: #D1B99F }
.eg-index-31:hover { color: #D1B99F }
.eg-index-32:hover { color: #D1B99F }
.eg-index-33:hover { color: #D1B99F; gap: 24px; border-color: #D1B99F }
.eg-index-34:hover { color: #D1B99F }
.eg-index-35:hover { border-color: #D1B99F }
.eg-index-36:hover { color: #D1B99F }
.eg-index-37:hover { border-color: #D1B99F }
.eg-index-38:hover { color: #D1B99F }
.eg-index-39:hover { border-color: #D1B99F }
.eg-index-40:hover { color: #D1B99F }
.eg-index-41:hover { color: #D1B99F }
.eg-index-42:hover { color: #D1B99F }
/* ===== metodo.html ===== */

  html, body { margin: 0; padding: 0; background: #11110F; color: #F2F0EC; font: 400 17px/1.65 var(--font-sans); }
  * { box-sizing: border-box; }
  a:hover [data-cta-arrow] { transform: translateX(7px); }
  
   /* header out of scale */
  
  a { color: #D1B99F; text-decoration: none; border-bottom: none; }
  a:hover { color: #DCC8B2; }
  [data-menu] { display: none; }
  @keyframes eg-reveal { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: none; } }
  [data-reveal] { animation: eg-reveal 720ms cubic-bezier(.16,1,.3,1) both; }
  @supports (animation-timeline: view()) {
    [data-reveal] { animation-timeline: view(); animation-range: entry 0% cover 26%; }
  }
  @media (prefers-reduced-motion: reduce) { [data-reveal] { animation: none; } }
  @media (max-width: 1180px) {
    [data-navitem] { display: none !important; }
    [data-menutoggle] { display: grid !important; }
  }
  @media (max-width: 1000px) {
    [data-band] { grid-template-columns: 1fr !important; }
    [data-band-media] { mask-image: linear-gradient(180deg, transparent 0%, #000 8%, #000 92%, transparent 100%) !important; }
    [data-band-media] { order: 2 !important; min-height: 300px !important; }
    [data-band-text] { order: 1 !important; padding: 64px clamp(24px, 6.7vw, 96px) 56px !important; }
    [data-close] { grid-template-columns: 1fr !important; gap: 48px !important; }
    [data-close-cols] { grid-template-columns: 1fr !important; gap: 28px !important; }
  }
  @media (max-width: 640px) {
    [data-band-inner] { grid-template-columns: 1fr !important; gap: 20px !important; }
    [data-band-num] { flex-direction: row !important; align-items: baseline !important; gap: 16px !important; }
  }
  @media (max-width: 1100px) {
    [data-footgrid] { grid-template-columns: 1fr 1fr !important; gap: 48px !important; }
    [data-footcol] { border-left: none !important; padding-left: 0 !important; }
  }
  @media (max-width: 680px) {
    [data-footgrid] { grid-template-columns: 1fr !important; }
    [data-footbar] { flex-direction: column !important; align-items: flex-start !important; }
  }

.eg-metodo-0:hover { background-size: 100% 1px; color: #F2F0EC }
.eg-metodo-1:hover { background-size: 100% 1px; color: #F2F0EC }
.eg-metodo-2:hover { background-size: 100% 1px; color: #F2F0EC }
.eg-metodo-3:hover { border-color: #D1B99F; color: #D1B99F }
.eg-metodo-4:hover { background: #EBDDD1; transform: scale(1.06); box-shadow: 0 0 24px rgba(209,185,159,.34) }
.eg-metodo-5:hover { background: #EBDDD1; transform: scale(1.03); box-shadow: 0 0 28px rgba(209,185,159,.3) }
.eg-metodo-6:hover { background: #EBDDD1 }
.eg-metodo-7:hover { color: #D1B99F }
.eg-metodo-8:hover { color: #D1B99F }
.eg-metodo-9:hover { color: #D1B99F }
.eg-metodo-10:hover { color: #D1B99F }
.eg-metodo-11:hover { color: #D1B99F }
.eg-metodo-12:hover { color: #D1B99F }
.eg-metodo-13:hover { color: #D1B99F }
.eg-metodo-14:hover { color: #D1B99F; gap: 24px; border-color: #D1B99F }
.eg-metodo-15:hover { color: #D1B99F }
.eg-metodo-16:hover { border-color: #D1B99F }
.eg-metodo-17:hover { color: #D1B99F }
.eg-metodo-18:hover { border-color: #D1B99F }
.eg-metodo-19:hover { color: #D1B99F }
.eg-metodo-20:hover { border-color: #D1B99F }
.eg-metodo-21:hover { color: #D1B99F }
.eg-metodo-22:hover { color: #D1B99F }
.eg-metodo-23:hover { color: #D1B99F }
/* ===== servicios.html ===== */

  html, body { margin: 0; padding: 0; background: #11110F; color: #F2F0EC; font: 400 17px/1.65 var(--font-sans); }
  * { box-sizing: border-box; }
  
   /* header out of scale */
  
  a { color: #D1B99F; text-decoration: none; border-bottom: none; }
  a:hover { color: #DCC8B2; }
  [data-menu] { display: none; }
  @keyframes eg-reveal { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: none; } }
  [data-reveal] { animation: eg-reveal 720ms cubic-bezier(.16,1,.3,1) both; }
  @supports (animation-timeline: view()) {
    [data-reveal] { animation-timeline: view(); animation-range: entry 0% cover 26%; }
  }
  @media (prefers-reduced-motion: reduce) { [data-reveal] { animation: none; } }
  @media (max-width: 1180px) {
    [data-navitem] { display: none !important; }
    [data-menutoggle] { display: grid !important; }
  }
  @media (max-width: 1000px) { [data-group] { grid-template-columns: 1fr !important; gap: 28px !important; } }
  @media (max-width: 1180px) { [data-blocks] { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 32px !important; } }
  @media (max-width: 620px) { [data-blocks] { grid-template-columns: 1fr !important; } }
  @media (max-width: 860px) {
    [data-cols] { grid-template-columns: 1fr !important; }
  }
  @media (max-width: 1100px) {
    [data-footgrid] { grid-template-columns: 1fr 1fr !important; gap: 48px !important; }
    [data-footcol] { border-left: none !important; padding-left: 0 !important; }
  }
  @media (max-width: 680px) {
    [data-footgrid] { grid-template-columns: 1fr !important; }
    [data-footbar] { flex-direction: column !important; align-items: flex-start !important; }
  }

.eg-servicios-0:hover { background-size: 100% 1px; color: #F2F0EC }
.eg-servicios-1:hover { background-size: 100% 1px; color: #F2F0EC }
.eg-servicios-2:hover { background-size: 100% 1px; color: #F2F0EC }
.eg-servicios-3:hover { border-color: #D1B99F; color: #D1B99F }
.eg-servicios-4:hover { background: #EBDDD1; transform: scale(1.06); box-shadow: 0 0 24px rgba(209,185,159,.34) }
.eg-servicios-5:hover { background: #EBDDD1; transform: scale(1.03); box-shadow: 0 0 28px rgba(209,185,159,.3) }
.eg-servicios-6:hover { z-index: 30; transform: scale(1.08) translateY(-14px); box-shadow: 0 40px 80px -24px rgba(17,17,15,.5) }
.eg-servicios-7:hover { z-index: 30; transform: scale(1.08) translateY(-14px); box-shadow: 0 40px 80px -24px rgba(17,17,15,.5) }
.eg-servicios-8:hover { z-index: 30; transform: scale(1.08) translateY(-14px); box-shadow: 0 40px 80px -24px rgba(17,17,15,.5) }
.eg-servicios-9:hover { z-index: 30; transform: scale(1.08) translateY(-14px); box-shadow: 0 40px 80px -24px rgba(17,17,15,.5) }
.eg-servicios-10:hover { background: #EBDDD1; transform: scale(1.06); box-shadow: 0 0 32px rgba(209,185,159,.36) }
.eg-servicios-11:hover { color: #D1B99F }
.eg-servicios-12:hover { color: #D1B99F }
.eg-servicios-13:hover { color: #D1B99F }
.eg-servicios-14:hover { color: #D1B99F }
.eg-servicios-15:hover { color: #D1B99F }
.eg-servicios-16:hover { color: #D1B99F }
.eg-servicios-17:hover { color: #D1B99F }
.eg-servicios-18:hover { color: #D1B99F; gap: 24px; border-color: #D1B99F }
.eg-servicios-19:hover { color: #D1B99F }
.eg-servicios-20:hover { border-color: #D1B99F }
.eg-servicios-21:hover { color: #D1B99F }
.eg-servicios-22:hover { border-color: #D1B99F }
.eg-servicios-23:hover { color: #D1B99F }
.eg-servicios-24:hover { border-color: #D1B99F }
.eg-servicios-25:hover { color: #D1B99F }
.eg-servicios-26:hover { color: #D1B99F }
.eg-servicios-27:hover { color: #D1B99F }
/* ===== casos-de-exito.html ===== */

  html, body { margin: 0; padding: 0; background: #11110F; color: #F2F0EC; font: 400 17px/1.65 var(--font-sans); }
  * { box-sizing: border-box; }
  @media (max-width: 900px) { [data-marcasgrid] { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; } [data-marcasgrid] > div { border-left: 1px solid rgba(242,240,236,.14) !important; } [data-marcasgrid] > div:nth-child(3n+1) { border-left: 0 !important; } }
  @media (max-width: 600px) { [data-marcasgrid] { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } [data-marcasgrid] > div:nth-child(odd) { border-left: 0 !important; } [data-marcasgrid] > div:nth-child(even) { border-left: 1px solid rgba(242,240,236,.14) !important; } }
  @keyframes eg-grow { from { transform: scaleY(0); } to { transform: scaleY(1); } }
  [data-grow] { animation: eg-grow 760ms cubic-bezier(.16,1,.3,1) both; }
  @supports (animation-timeline: view()) { [data-grow] { animation-timeline: view(); animation-range: entry 10% cover 34%; } }
  @media (prefers-reduced-motion: reduce) { [data-grow] { animation: none !important; transform: none !important; } }
  @keyframes eg-marquee { from { transform: translate3d(0,0,0); } to { transform: translate3d(-50%,0,0); } }
  [data-marquee]:hover [data-marquee-track] { animation-play-state: paused; }
  @media (prefers-reduced-motion: reduce) { [data-marquee-track] { animation: none !important; } }
  [data-rail]::-webkit-scrollbar { height: 6px; }
  [data-rail]::-webkit-scrollbar-track { background: rgba(17,17,15,.08); }
  [data-rail]::-webkit-scrollbar-thumb { background: rgba(138,106,75,.5); }
  @media (max-width: 720px) { [data-railhint] { display: none !important; } }
  @media (max-width: 820px) { [data-lado] { flex-direction: column !important; align-items: flex-start !important; gap: 28px !important; } }
  
   /* header out of scale */
  
  a { color: #D1B99F; text-decoration: none; border-bottom: none; }
  a:hover { color: #DCC8B2; }
  [data-menu] { display: none; }
  @keyframes eg-reveal { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: none; } }
  @keyframes eg-fade { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }
  [data-reveal] { animation: eg-reveal 720ms cubic-bezier(.16,1,.3,1) both; }
  @supports (animation-timeline: view()) {
    [data-reveal] { animation-timeline: view(); animation-range: entry 0% cover 26%; }
  }
  @media (prefers-reduced-motion: reduce) { [data-reveal] { animation: none; } }
  @media (max-width: 1180px) {
    [data-navitem] { display: none !important; }
    [data-menutoggle] { display: grid !important; }
  }
  @media (max-width: 1180px) {  [data-resenas] { grid-template-columns: 1fr !important; } }
  @media (max-width: 1040px) { [data-herogrid] { grid-template-columns: 1fr !important; } [data-metricas] { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } }
  @media (max-width: 620px) {  [data-metricas] { grid-template-columns: 1fr !important; } }
  @media (max-width: 860px) { [data-compare] { aspect-ratio: 3 / 4 !important; } }
  @media (max-width: 1180px) {  [data-resenas] { grid-template-columns: 1fr !important; } }
  @media (max-width: 1040px) { [data-herogrid] { grid-template-columns: 1fr !important; } [data-metricas] { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } }
  @media (max-width: 620px) {  [data-metricas] { grid-template-columns: 1fr !important; } }
  @media (max-width: 860px) {
    [data-cols] { grid-template-columns: 1fr !important; }
  }
  @media (max-width: 1100px) {
    [data-footgrid] { grid-template-columns: 1fr 1fr !important; gap: 48px !important; }
    [data-footcol] { border-left: none !important; padding-left: 0 !important; }
  }
  @media (max-width: 680px) {
    [data-footgrid] { grid-template-columns: 1fr !important; }
    [data-footbar] { flex-direction: column !important; align-items: flex-start !important; }
  }

.eg-casos-de-exito-0:hover { background-size: 100% 1px; color: #F2F0EC }
.eg-casos-de-exito-1:hover { background-size: 100% 1px; color: #F2F0EC }
.eg-casos-de-exito-2:hover { background-size: 100% 1px; color: #F2F0EC }
.eg-casos-de-exito-3:hover { border-color: #D1B99F; color: #D1B99F }
.eg-casos-de-exito-4:hover { background: #EBDDD1; transform: scale(1.06); box-shadow: 0 0 24px rgba(209,185,159,.34) }
.eg-casos-de-exito-5:hover { background: #EBDDD1; transform: scale(1.03); box-shadow: 0 0 28px rgba(209,185,159,.3) }
.eg-casos-de-exito-6:hover { transform: translateY(-8px); box-shadow: 0 26px 54px -22px rgba(17,17,15,.3); border-color: rgba(209,185,159,.9) }
.eg-casos-de-exito-7:hover { transform: translateY(-8px); box-shadow: 0 26px 54px -22px rgba(17,17,15,.3); border-color: rgba(209,185,159,.9) }
.eg-casos-de-exito-8:hover { transform: translateY(-8px); box-shadow: 0 26px 54px -22px rgba(17,17,15,.3); border-color: rgba(209,185,159,.9) }
.eg-casos-de-exito-9:hover { transform: translateY(-8px); box-shadow: 0 26px 54px -22px rgba(17,17,15,.3); border-color: rgba(209,185,159,.9) }
.eg-casos-de-exito-10:hover { transform: translateY(-8px); box-shadow: 0 26px 54px -22px rgba(17,17,15,.3); border-color: rgba(209,185,159,.9) }
.eg-casos-de-exito-11:hover { transform: translateY(-8px); box-shadow: 0 26px 54px -22px rgba(17,17,15,.3); border-color: rgba(209,185,159,.9) }
.eg-casos-de-exito-12:hover { opacity: 1 }
.eg-casos-de-exito-13:hover { opacity: 1 }
.eg-casos-de-exito-14:hover { opacity: 1 }
.eg-casos-de-exito-15:hover { opacity: 1 }
.eg-casos-de-exito-16:hover { opacity: 1 }
.eg-casos-de-exito-17:hover { opacity: 1 }
.eg-casos-de-exito-18:hover { opacity: 1 }
.eg-casos-de-exito-19:hover { opacity: 1 }
.eg-casos-de-exito-20:hover { background: #EBDDD1; transform: scale(1.06); box-shadow: 0 0 32px rgba(209,185,159,.36) }
.eg-casos-de-exito-21:hover { color: #D1B99F }
.eg-casos-de-exito-22:hover { color: #D1B99F }
.eg-casos-de-exito-23:hover { color: #D1B99F }
.eg-casos-de-exito-24:hover { color: #D1B99F }
.eg-casos-de-exito-25:hover { color: #D1B99F }
.eg-casos-de-exito-26:hover { color: #D1B99F }
.eg-casos-de-exito-27:hover { color: #D1B99F }
.eg-casos-de-exito-28:hover { color: #D1B99F; gap: 24px; border-color: #D1B99F }
.eg-casos-de-exito-29:hover { color: #D1B99F }
.eg-casos-de-exito-30:hover { border-color: #D1B99F }
.eg-casos-de-exito-31:hover { color: #D1B99F }
.eg-casos-de-exito-32:hover { border-color: #D1B99F }
.eg-casos-de-exito-33:hover { color: #D1B99F }
.eg-casos-de-exito-34:hover { border-color: #D1B99F }
.eg-casos-de-exito-35:hover { color: #D1B99F }
.eg-casos-de-exito-36:hover { color: #D1B99F }
.eg-casos-de-exito-37:hover { color: #D1B99F }
/* ===== sobre-eganex.html ===== */

  html, body { margin: 0; padding: 0; background: #11110F; color: #F2F0EC; font: 400 17px/1.65 var(--font-sans); }
  * { box-sizing: border-box; }
  
   /* header out of scale */
  
  a { color: #D1B99F; text-decoration: none; border-bottom: none; }
  a:hover { color: #DCC8B2; }
  [data-menu] { display: none; }
  @keyframes eg-reveal { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: none; } }
  [data-reveal] { animation: eg-reveal 720ms cubic-bezier(.16,1,.3,1) both; }
  @supports (animation-timeline: view()) {
    [data-reveal] { animation-timeline: view(); animation-range: entry 0% cover 26%; }
  }
  @media (prefers-reduced-motion: reduce) { [data-reveal] { animation: none; } }
  @media (max-width: 1180px) {
    [data-navitem] { display: none !important; }
    [data-menutoggle] { display: grid !important; }
  }
  @media (max-width: 1000px) { [data-split] { grid-template-columns: 1fr !important; gap: 28px !important; } }
  @media (max-width: 1000px) { [data-fundadores] { grid-template-columns: 1fr !important; gap: 56px !important; } }
  @media (max-width: 860px) {
    [data-cols] { grid-template-columns: 1fr !important; }
  }
  @media (max-width: 1100px) {
    [data-footgrid] { grid-template-columns: 1fr 1fr !important; gap: 48px !important; }
    [data-footcol] { border-left: none !important; padding-left: 0 !important; }
  }
  @media (max-width: 680px) {
    [data-footgrid] { grid-template-columns: 1fr !important; }
    [data-footbar] { flex-direction: column !important; align-items: flex-start !important; }
  }

.eg-sobre-eganex-0:hover { background-size: 100% 1px; color: #F2F0EC }
.eg-sobre-eganex-1:hover { background-size: 100% 1px; color: #F2F0EC }
.eg-sobre-eganex-2:hover { background-size: 100% 1px; color: #F2F0EC }
.eg-sobre-eganex-3:hover { border-color: #D1B99F; color: #D1B99F }
.eg-sobre-eganex-4:hover { background: #EBDDD1; transform: scale(1.06); box-shadow: 0 0 24px rgba(209,185,159,.34) }
.eg-sobre-eganex-5:hover { background: #EBDDD1; transform: scale(1.03); box-shadow: 0 0 28px rgba(209,185,159,.3) }
.eg-sobre-eganex-6:hover { background: #EBDDD1; transform: scale(1.06); box-shadow: 0 0 32px rgba(209,185,159,.36) }
.eg-sobre-eganex-7:hover { color: #D1B99F }
.eg-sobre-eganex-8:hover { color: #D1B99F }
.eg-sobre-eganex-9:hover { color: #D1B99F }
.eg-sobre-eganex-10:hover { color: #D1B99F }
.eg-sobre-eganex-11:hover { color: #D1B99F }
.eg-sobre-eganex-12:hover { color: #D1B99F }
.eg-sobre-eganex-13:hover { color: #D1B99F }
.eg-sobre-eganex-14:hover { color: #D1B99F; gap: 24px; border-color: #D1B99F }
.eg-sobre-eganex-15:hover { color: #D1B99F }
.eg-sobre-eganex-16:hover { border-color: #D1B99F }
.eg-sobre-eganex-17:hover { color: #D1B99F }
.eg-sobre-eganex-18:hover { border-color: #D1B99F }
.eg-sobre-eganex-19:hover { color: #D1B99F }
.eg-sobre-eganex-20:hover { border-color: #D1B99F }
.eg-sobre-eganex-21:hover { color: #D1B99F }
.eg-sobre-eganex-22:hover { color: #D1B99F }
.eg-sobre-eganex-23:hover { color: #D1B99F }
/* ===== aviso-legal.html ===== */

  html, body { margin: 0; padding: 0; background: #11110F; color: #F2F0EC; font: 400 17px/1.65 var(--font-sans); }
  * { box-sizing: border-box; }
  
   /* header out of scale */
  a { color: #D1B99F; text-decoration: none; border-bottom: none; }
  a:hover { color: #DCC8B2; }

.eg-aviso-legal-0:hover { color: #F2F0EC; gap: 22px }
/* ===== privacidad.html ===== */

  html, body { margin: 0; padding: 0; background: #11110F; color: #F2F0EC; font: 400 17px/1.65 var(--font-sans); }
  * { box-sizing: border-box; }
  
   /* header out of scale */
  a { color: #D1B99F; text-decoration: none; border-bottom: none; }
  a:hover { color: #DCC8B2; }

.eg-privacidad-0:hover { color: #F2F0EC; gap: 22px }
/* ===== cookies.html ===== */

  html, body { margin: 0; padding: 0; background: #11110F; color: #F2F0EC; font: 400 17px/1.65 var(--font-sans); }
  * { box-sizing: border-box; }
  
   /* header out of scale */
  a { color: #D1B99F; text-decoration: none; border-bottom: none; }
  a:hover { color: #DCC8B2; }

.eg-cookies-0:hover { color: #F2F0EC; gap: 22px }
@keyframes eg-glow { to { opacity: 1; } }
@media (prefers-reduced-motion: reduce) { [data-hero-video], [data-hero-glow] { transition: none !important; transform: none !important; opacity: 1 !important; animation: none !important; } }

/* Keep the mobile logo and menu separate; the CTA remains in the mobile menu. */
@media (max-width: 680px) {
  header nav > a:not([data-navitem]) { display: none !important; }
  header > div > a { min-height: 24px; }
}


/* ===== Mobile polish 2026-09-23 ===== */
/* System-level mobile pass: header, menu, hero, rhythm, touch targets and footer. */
@media (max-width: 860px) {
  html { scroll-padding-top: 76px; }
  body { font-size: 16px; line-height: 1.6; }

  header {
    min-height: 72px !important;
    padding: 8px 0 !important;
  }
  header > div {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  header > div > a img {
    width: 126px !important;
    height: auto !important;
  }
  [data-menutoggle] {
    width: 48px !important;
    height: 48px !important;
    font-size: 18px !important;
  }

  [data-menu] {
    padding: 20px 20px 28px !important;
  }
  [data-menu] > div:first-child {
    min-height: 52px !important;
  }
  [data-menu] > div:first-child img {
    width: 126px !important;
    height: auto !important;
  }
  [data-menu] nav {
    gap: 18px !important;
    margin-bottom: 28px !important;
  }
  [data-menu] nav a {
    font-size: clamp(28px, 8vw, 38px) !important;
    line-height: 1.02 !important;
  }
  [data-menu] > a {
    width: 100% !important;
    padding: 17px 18px !important;
    font-size: 14px !important;
    letter-spacing: .13em !important;
  }

  /* Hero: keep the brand statement visible and layered above the image/overlays. */
  [data-hero] {
    height: 100svh !important;
    min-height: 680px !important;
    padding: 0 !important;
    isolation: isolate;
  }
  [data-hero-poster] {
    z-index: 0 !important;
    object-position: 62% center !important;
  }
  [data-hero-video] {
    z-index: 0 !important;
  }
  [data-hero] > div[aria-hidden="true"]:not([data-hero-glow]) {
    z-index: 1 !important;
    background:
      linear-gradient(
        180deg,
        rgba(17,17,15,.90) 0%,
        rgba(17,17,15,.70) 24%,
        rgba(17,17,15,.42) 52%,
        rgba(17,17,15,.82) 78%,
        rgba(17,17,15,.96) 100%
      ) !important;
  }
  [data-hero-glow] {
    z-index: 1 !important;
    opacity: .7 !important;
  }
  [data-hero-title] {
    position: absolute !important;
    top: clamp(112px, 15svh, 142px) !important;
    left: 20px !important;
    right: 20px !important;
    z-index: 3 !important;
    margin: 0 !important;
    max-width: none !important;
    font-size: clamp(38px, 10.8vw, 50px) !important;
    line-height: .93 !important;
    letter-spacing: -.035em !important;
    white-space: normal !important;
    text-wrap: balance;
  }
  [data-hero-row] {
    position: absolute !important;
    left: 20px !important;
    right: 20px !important;
    bottom: max(28px, 4.5svh) !important;
    z-index: 3 !important;
    margin: 0 !important;
    gap: 20px !important;
    align-items: stretch !important;
  }
  [data-hero-subblock] {
    width: 100% !important;
    max-width: 31ch !important;
    font-size: 17px !important;
    line-height: 1.5 !important;
  }
  [data-hero-row] > a {
    width: 100% !important;
    min-height: 52px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 16px 18px !important;
    font-size: 14px !important;
    line-height: 1.15 !important;
    letter-spacing: .13em !important;
    text-align: center !important;
    white-space: normal !important;
  }


  /* Shared internal-page opening rhythm. */
  [data-screen-label="Cabecera"] {
    padding: 124px 0 72px !important;
  }
  [data-screen-label="Cabecera"] > div {
    padding-left: 20px !important;
    padding-right: 20px !important;
    gap: 16px !important;
  }
  [data-screen-label="Cabecera"] h1 {
    font-size: clamp(46px, 13vw, 66px) !important;
    line-height: .96 !important;
  }
  [data-screen-label="Cabecera"] p {
    font-size: 17px !important;
    line-height: 1.55 !important;
    max-width: 34ch !important;
  }

  /* Method page */
  [data-screen-label="Fases"] [data-band-text] {
    padding: 52px 20px 44px !important;
  }
  [data-screen-label="Fases"] [data-band-media] {
    min-height: 260px !important;
  }
  [data-screen-label="Fases"] [data-band-inner] {
    gap: 18px !important;
  }

  /* Services page */
  [data-screen-label="Bloques"] {
    padding: 80px 0 88px !important;
  }
  [data-screen-label="Bloques"] > div {
    padding-left: 20px !important;
    padding-right: 20px !important;
    gap: 42px !important;
  }
  [data-screen-label="Bloques"] [data-blocks] {
    gap: 36px !important;
  }

  /* Cases page */
  [data-screen-label="Sectores"] {
    padding-top: 80px !important;
    padding-bottom: 84px !important;
  }
  [data-screen-label="Sectores"] > div {
    gap: 32px !important;
  }
  [data-screen-label="Sectores"] [data-reveal] {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  [data-screen-label="Sectores"] [data-rail] {
    scroll-padding-left: 20px !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  /* About page */
  [data-screen-label="Misión"] {
    padding-bottom: 84px !important;
  }
  [data-screen-label="Misión"] [data-split] {
    padding: 48px 20px 0 !important;
    gap: 28px !important;
  }
  [data-screen-label="Misión declarada"] {
    padding: 84px 0 !important;
  }
  [data-screen-label="Misión declarada"] > div,
  [data-screen-label="Fundadores"] > div {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  [data-screen-label="Fundadores"] {
    padding-top: 84px !important;
    padding-bottom: 88px !important;
  }
  [data-screen-label="Fundadores"] > div {
    gap: 48px !important;
  }

  /* Home mobile rhythm */
  [data-screen-label="Problema"] {
    padding: 88px 0 !important;
  }
  [data-screen-label="Problema"] > div {
    gap: 48px !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  [data-screen-label="Problema"] h2,
  [data-screen-label="Método"] h2,
  [data-screen-label="Servicios"] h2,
  [data-screen-label="Casos"] h2 {
    font-size: clamp(30px, 8.8vw, 40px) !important;
    line-height: 1.02 !important;
  }
  [data-screen-label="Problema"] p {
    font-size: 18px !important;
    line-height: 1.55 !important;
  }
  [data-screen-label="Marcas"],
  [data-screen-label="Método"],
  [data-screen-label="Servicios"],
  [data-screen-label="Casos"] {
    padding-top: 84px !important;
    padding-bottom: 84px !important;
  }
  [data-screen-label="Marcas"] > div,
  [data-screen-label="Método"] > div,
  [data-screen-label="Servicios"] > div,
  [data-screen-label="Casos"] > div[style*="position: relative"] {
    gap: 36px !important;
  }
  [data-screen-label="Método"] > div,
  [data-screen-label="Servicios"] > div,
  [data-screen-label="Casos"] > div[style*="position: relative"] {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  /* Method rows become a clean two-column mobile list. */
  [data-screen-label="Método"] a.eg-index-9,
  [data-screen-label="Método"] a.eg-index-11,
  [data-screen-label="Método"] a.eg-index-13 {
    grid-template-columns: 64px 1fr !important;
    gap: 18px !important;
    padding: 26px 0 !important;
    align-items: start !important;
  }
  [data-screen-label="Método"] a.eg-index-9 > span:first-child,
  [data-screen-label="Método"] a.eg-index-11 > span:first-child,
  [data-screen-label="Método"] a.eg-index-13 > span:first-child {
    font-size: 46px !important;
  }

  /* Service cards and measured-result blocks breathe on small screens. */
  [data-screen-label="Servicios"] [data-quad],
  [data-screen-label="Casos"] [data-quad] {
    gap: 10px !important;
  }
  [data-screen-label="Servicios"] [data-quad] > a {
    padding: 24px 0 30px !important;
  }
  [data-screen-label="Casos"] [data-quad] > div {
    padding: 22px 0 16px !important;
  }

  [data-screen-label="Analizar"] > div[style*="position: relative"] {
    padding: 88px 20px !important;
  }
  [data-screen-label="Analizar"] h2 {
    font-size: clamp(44px, 13vw, 62px) !important;
  }
  [data-screen-label="Analizar"] p {
    font-size: 17px !important;
    line-height: 1.55 !important;
  }
  [data-screen-label="Analizar"] a[href^="mailto:"] {
    width: 100% !important;
    min-height: 52px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 16px 18px !important;
    font-size: 14px !important;
    letter-spacing: .13em !important;
    text-align: center !important;
  }

  /* Footer */
  [data-footgrid] {
    padding: 72px 20px 40px !important;
    gap: 40px !important;
  }
  [data-footcol] {
    gap: 20px !important;
  }
  [data-footcol] > span:first-child {
    text-align: left !important;
  }
  [data-social] {
    justify-content: flex-start !important;
    gap: 18px !important;
  }
  [data-footbar] {
    margin: 0 20px !important;
    padding: 24px 0 36px !important;
    gap: 18px !important;
  }
  [data-footbar] > div {
    gap: 12px !important;
  }

  /* Touch behaviour: no sticky desktop hover transforms on phones/tablets. */
  @media (hover: none) {
    a:hover,
    button:hover {
      transform: none !important;
      box-shadow: none !important;
    }
  }
}

@media (max-width: 420px) {
  [data-hero-title] {
    top: clamp(108px, 14svh, 130px) !important;
    font-size: clamp(36px, 10.6vw, 46px) !important;
  }
  [data-hero-subblock] {
    font-size: 16px !important;
    max-width: 30ch !important;
  }
  [data-hero-row] {
    left: 18px !important;
    right: 18px !important;
    bottom: max(24px, 3.5svh) !important;
  }
}

@media (max-width: 380px), (max-height: 700px) {
  [data-hero] {
    min-height: 640px !important;
  }
  [data-hero-title] {
    top: 102px !important;
    font-size: 36px !important;
  }
  [data-hero-row] {
    bottom: 22px !important;
    gap: 16px !important;
  }
  [data-hero-subblock] {
    font-size: 15px !important;
    line-height: 1.45 !important;
  }
  [data-hero-row] > a {
    min-height: 48px !important;
    padding-top: 14px !important;
    padding-bottom: 14px !important;
  }
}
