/* cyrillic-ext */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("../fonts/geist-cyrillic-ext.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("../fonts/geist-cyrillic.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("../fonts/geist-vietnamese.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("../fonts/geist-latin-ext.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("../fonts/geist-latin.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/geist-cyrillic-ext.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/geist-cyrillic.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/geist-vietnamese.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/geist-latin-ext.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/geist-latin.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../fonts/geist-cyrillic-ext.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../fonts/geist-cyrillic.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../fonts/geist-vietnamese.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../fonts/geist-latin-ext.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../fonts/geist-latin.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../fonts/geist-cyrillic-ext.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../fonts/geist-cyrillic.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../fonts/geist-vietnamese.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../fonts/geist-latin-ext.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../fonts/geist-latin.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/geist-cyrillic-ext.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/geist-cyrillic.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/geist-vietnamese.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/geist-latin-ext.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/geist-latin.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("../fonts/geist-cyrillic-ext.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("../fonts/geist-cyrillic.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("../fonts/geist-vietnamese.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("../fonts/geist-latin-ext.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("../fonts/geist-latin.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}



  :root{
    --blue:#5169D7;
    --green:#D3E87F;
    --graphite:#23272F;
    --ivory:#F1EEE8;
    --white:#ffffff;
    --gray:#7a7a78;
    --line:rgba(23,23,23,0.12);
    --font:'Geist', system-ui, sans-serif;
  }
  *{margin:0;padding:0;box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{ font-family:var(--font); background:var(--ivory); color:var(--graphite); -webkit-font-smoothing:antialiased; overflow-x:hidden; }
  a{color:var(--blue);}
  a:hover{color:var(--graphite);}
  img{display:block;max-width:100%;}

  [data-reveal]{ transition:opacity .9s cubic-bezier(.2,.7,.3,1), transform .9s cubic-bezier(.2,.7,.3,1); }
  html.js-reveal [data-reveal]{ opacity:0; transform:translateY(24px); }
  html.js-reveal [data-reveal].is-in{ opacity:1; transform:translateY(0); }
  @media (prefers-reduced-motion: reduce){ html.js-reveal [data-reveal]{opacity:1; transform:none; transition:none;} }

  /* ── NAV ── */
  .nav{
    position:fixed; top:0; left:0; right:0; z-index:100;
    display:flex; align-items:center; justify-content:space-between;
    padding:26px 48px; color:var(--graphite);
    transition:color .4s ease, background .4s ease, padding .4s ease;
  }
  .nav.scrolled{ color:var(--graphite); background:rgba(241,238,232,0.9); backdrop-filter:blur(10px); padding:16px 48px; border-bottom:1px solid var(--line); }
  .nav-mark{ display:inline-flex; align-items:center; gap:9px; color:currentColor; text-decoration:none; }
  .nav-iso{ height:22px; width:auto; display:block; }
  .nav-word{ font-size:16px; font-weight:600; letter-spacing:-0.02em; color:currentColor; }
  .nav-word b{ color:var(--blue); font-weight:600; }
  .nav-links{ display:flex; gap:44px; list-style:none; }
  .nav-links a{
    color:currentColor; text-decoration:none; font-size:12px; font-weight:500;
    letter-spacing:0.14em; text-transform:uppercase; position:relative; padding-bottom:3px;
  }
  .nav-links a::after{ content:''; position:absolute; left:0; right:100%; bottom:0; height:1px; background:var(--blue); transition:right .3s ease; }
  .nav-links a:hover::after{ right:0; }
  .nav-right{ display:flex; align-items:center; gap:22px; }
  .nav-lang{ font-size:12px; font-weight:500; letter-spacing:0.1em; cursor:pointer; background:none; border:none; padding:0; font-family:inherit; color:inherit; display:inline-flex; align-items:center; }
  .nav-lang .sep{ opacity:0.4; margin:0 2px; }
  .lang-code{ opacity:0.45; }
  .lang-code.on{ opacity:1; color:currentColor; }
  .nav-cta{
    display:inline-flex; align-items:center; gap:8px; text-decoration:none;
    background:var(--graphite); color:var(--white);
    font-size:12px; font-weight:600; letter-spacing:0.06em;
    padding:11px 22px; border-radius:999px; white-space:nowrap;
    transition:background .25s ease, transform .15s ease;
  }
  .nav-cta:hover{ background:var(--blue); color:var(--white); transform:translateY(-1px); }

  /* ── HERO / MANIFIESTO ── */
  .hero{ position:relative; min-height:100vh; display:grid; grid-template-columns:1.1fr 0.9fr; align-items:start; gap:48px; padding:150px 48px 120px; overflow:hidden; background:var(--ivory); }
  .hero-content{ position:relative; z-index:2; max-width:640px; }
  .hero-iso{ position:relative; z-index:1; align-self:center; justify-self:end; width:100%; max-width:520px; height:clamp(260px,32vw,460px); display:flex; align-items:center; gap:5%; }
  .hero-iso .h-a{ height:100%; aspect-ratio:17 / 22.31; background:url("../images/hero-isotipo-fondo.png") center/cover; filter:grayscale(1) contrast(1.05);
    -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 17 22.31'><path transform='translate(-4.45 -58.6)' d='M20.58,58.6V80.79H16.25v-7l-6.94,3c0,.34,0,.66,0,1v2.94l-4.82,0s-.29-8.3,1.8-12.87C10.69,58.22,18,58.6,18,58.6ZM16.25,64c-3.68.79-5.45,4-6.27,7.42l6.27-2.74Z' fill='white'/></svg>") no-repeat center / contain;
    mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 17 22.31'><path transform='translate(-4.45 -58.6)' d='M20.58,58.6V80.79H16.25v-7l-6.94,3c0,.34,0,.66,0,1v2.94l-4.82,0s-.29-8.3,1.8-12.87C10.69,58.22,18,58.6,18,58.6ZM16.25,64c-3.68.79-5.45,4-6.27,7.42l6.27-2.74Z' fill='white'/></svg>") no-repeat center / contain; }
  .hero-iso .h-bang{ height:100%; aspect-ratio:10 / 22.31; }
  .hero-iso .h-bang svg{ width:100%; height:100%; display:block; }
  .hero-eyebrow{ font-size:12px; font-weight:600; letter-spacing:0.22em; text-transform:uppercase; color:var(--gray); margin-bottom:26px; }
  .hero-h1{ font-size:clamp(40px, 6.6vw, 96px); font-weight:700; letter-spacing:-0.04em; line-height:0.98; color:var(--graphite); margin-bottom:34px; }
  .hero-h1 .green{ color:var(--green); }
  .hero-p{ font-size:clamp(15px, 1.5vw, 19px); font-weight:400; line-height:1.65; color:var(--graphite); max-width:520px; }
  .hero-scroll{ position:absolute; left:48px; bottom:44px; z-index:2; display:flex; align-items:center; gap:16px; font-size:12px; font-weight:500; letter-spacing:0.2em; text-transform:uppercase; color:var(--graphite); }
  .hero-scroll .rule{ width:40px; height:1px; background:var(--graphite); display:inline-block; }
  @keyframes scrollNudge{ 0%,100%{ transform:translateX(0);} 50%{ transform:translateX(6px);} }
  .hero-scroll .arrow{ display:inline-block; animation:scrollNudge 1.8s ease-in-out infinite; }
  @media (prefers-reduced-motion: reduce){ .hero-scroll .arrow{ animation:none; } }


  /* ── ISOTYPE / PHILOSOPHY ── */
  .iso{ background:var(--ivory); padding:min(13vw,170px) 48px; }
  .iso-statement{ margin-bottom:min(8vw,96px); max-width:1100px; }
  .iso-row{ display:grid; grid-template-columns:60% 1fr; gap:min(5vw,72px); align-items:center; }
  .iso-statement .kick{ font-size:12px; font-weight:600; letter-spacing:0.16em; text-transform:uppercase; color:var(--gray); margin-bottom:24px; }
  .iso-statement .kick b{ color:var(--green); }
  .iso-statement p{ font-size:clamp(26px,3.9vw,52px); font-weight:600; letter-spacing:-0.03em; line-height:1.16; }
  .iso-statement .no{ color:var(--graphite); }
  .iso-statement .yes{ color:var(--green); }

  .team-photo{ position:relative; width:100%; aspect-ratio:16 / 10; overflow:hidden; }
  .team-photo img{ width:100%; height:100%; object-fit:cover; filter:grayscale(1) contrast(1.05); }
  .team-photo .bang-over{ position:absolute; inset:0; display:flex; align-items:center; justify-content:flex-end; padding-right:6%; pointer-events:none; }
  .team-photo .bang-over svg{ height:80%; width:auto; display:block; }

  .iso-estudio .lbl{ font-size:12px; font-weight:600; letter-spacing:0.16em; text-transform:uppercase; color:var(--blue); margin-bottom:18px; }
  .iso-estudio p{ font-size:16px; line-height:1.7; color:var(--graphite); margin-bottom:24px; }
  .iso-estudio a{ font-size:12px; font-weight:600; letter-spacing:0.14em; text-transform:uppercase; text-decoration:none; color:var(--graphite); display:inline-flex; align-items:center; gap:10px; }
  .iso-estudio a svg{ width:22px; height:12px; }
  .iso-estudio a:hover{ color:var(--blue); }

  /* ── NUESTRA APUESTA ── */
  .apuesta{ background:var(--blue); color:var(--white); padding:min(14vw,180px) 48px; }
  .apuesta .kick{ font-size:12px; font-weight:600; letter-spacing:0.2em; text-transform:uppercase; color:rgba(255,255,255,0.6); margin-bottom:34px; }
  .apuesta h2{ font-size:clamp(30px,4.6vw,66px); font-weight:700; letter-spacing:-0.035em; line-height:1.1; max-width:1120px; }
  .apuesta h2 .green{ color:var(--green); }
  .apuesta-btn{ margin-top:48px; display:inline-flex; align-items:center; gap:10px; background:var(--white); color:var(--graphite); text-decoration:none; font-size:13px; font-weight:600; letter-spacing:0.06em; padding:15px 28px; border-radius:999px; transition:background .25s ease, color .25s ease, transform .15s ease; }
  .apuesta-btn:hover{ transform:translateY(-1px); background:var(--green); color:var(--graphite); }

  /* ── EXPERTISE / CAPACIDADES ── */
  .caps{ background:var(--white); padding:min(13vw,170px) 48px; }
  .caps-head{ margin-bottom:min(7vw,90px); }
  .caps-label{ font-size:12px; font-weight:600; letter-spacing:0.16em; text-transform:uppercase; color:var(--gray); margin-bottom:22px; }
  .caps-label b{ color:var(--green); }
  .caps-title{ font-size:clamp(30px,4.4vw,58px); font-weight:700; letter-spacing:-0.035em; line-height:1.04; max-width:900px; }
  .caps-list{ border-top:1px solid var(--line); }
  .cap-row{ display:grid; grid-template-columns:0.9fr 1.1fr; gap:min(6vw,80px); padding:min(5vw,64px) 0; border-bottom:1px solid var(--line); align-items:start; }
  .cap-left{ display:flex; gap:24px; align-items:baseline; }
  .cap-num{ font-size:13px; font-weight:600; color:var(--gray); font-variant-numeric:tabular-nums; padding-top:6px; }
  .cap-name{ font-size:clamp(26px,3.4vw,44px); font-weight:700; letter-spacing:-0.035em; line-height:1.02; }
  .cap-right{ max-width:460px; padding-top:6px; }
  .cap-desc{ font-size:clamp(17px,1.5vw,20px); font-weight:500; letter-spacing:-0.01em; line-height:1.5; color:var(--graphite); }
  .cap-tags{ margin-top:22px; font-size:14px; letter-spacing:0.01em; color:var(--gray); }

  /* ── DIFERENCIAL ── */
  .diferencial{ position:relative; overflow:hidden; background:var(--ivory); padding:min(16vw,210px) 48px; }
  .dif-mark{ position:absolute; right:-6%; top:50%; transform:translateY(-50%); width:44%; max-width:640px; color:var(--graphite); opacity:0.05; pointer-events:none; }
  .dif-inner{ position:relative; z-index:2; }
  .dif-label{ font-size:12px; font-weight:600; letter-spacing:0.16em; text-transform:uppercase; color:var(--gray); margin-bottom:26px; }
  .dif-title{ font-size:clamp(38px,7vw,104px); font-weight:700; letter-spacing:-0.04em; line-height:0.98; }
  .dif-title .blue{ color:var(--blue); }

  /* ── RESPIRO / BREATHER ── */
  .breather{ position:relative; height:54vh; min-height:540px; background-image:url("../images/patagonia-fondo.jpg"); background-size:cover; background-position:center 42%; }
  .breather::after{ content:''; position:absolute; inset:0; background:linear-gradient(180deg, rgba(0,0,0,0) 60%, rgba(0,0,0,0.4) 100%); }
  .breather-caption{ position:absolute; left:48px; bottom:40px; z-index:2; color:var(--white); font-size:13px; font-weight:500; letter-spacing:0.14em; text-transform:uppercase; display:flex; align-items:center; gap:12px; }
  //.breather-caption span{ width:7px; height:7px; border-radius:50%; background:var(--green); display:inline-block; }


  /* ── CONTACTO ── */
  .contacto{ background:#23272F; color:var(--white); padding:min(12vw,150px) 48px; }
  .contacto-grid{ display:grid; grid-template-columns:1.35fr 1fr; gap:min(10vw,120px); max-width:1200px; }
  .contacto-eyebrow{ font-size:12px; font-weight:600; letter-spacing:0.2em; text-transform:uppercase; color:rgba(255,255,255,0.55); margin-bottom:26px; }
  .contacto-title{ font-size:clamp(32px,4.4vw,60px); font-weight:700; letter-spacing:-0.035em; line-height:1.02; color:var(--white); }
  .contacto-sub{ font-size:clamp(18px,2vw,26px); font-weight:500; letter-spacing:-0.02em; line-height:1.35; color:rgba(255,255,255,0.6); margin-top:14px; margin-bottom:52px; }
  .contacto-sub .green{ color:var(--green); }

  .contacto-form{ display:flex; flex-direction:column; gap:26px; max-width:520px; }
  .field{ display:flex; flex-direction:column; gap:10px; }
  .field label{ font-size:12px; font-weight:600; letter-spacing:0.12em; text-transform:uppercase; color:rgba(255,255,255,0.9); }
  .field label .opt{ color:rgba(255,255,255,0.45); font-weight:400; text-transform:none; letter-spacing:0; }
  .field input, .field textarea{
    font-family:var(--font); font-size:16px; color:var(--white);
    background:transparent; border:none; border-bottom:1px solid rgba(255,255,255,0.25);
    padding:10px 2px; outline:none; transition:border-color .25s ease;
    resize:none;
  }
  .field input::placeholder, .field textarea::placeholder{ color:rgba(255,255,255,0.4); }
  .field input:hover, .field textarea:hover{ border-bottom-color:rgba(255,255,255,0.5); }
  .field input:focus, .field textarea:focus{ border-bottom-color:var(--blue); }
  .contacto-btn{
    align-self:flex-start; margin-top:12px;
    display:inline-flex; align-items:center; gap:12px;
    font-family:var(--font); font-size:14px; font-weight:600; letter-spacing:0.06em;
    color:var(--graphite); background:var(--white);
    border:none; border-radius:4px; padding:16px 30px; cursor:pointer;
    transition:background .25s ease, color .25s ease, transform .15s ease;
  }
  .contacto-btn svg{ width:24px; height:11px; }
  .contacto-btn:hover{ background:var(--blue); color:var(--white); transform:translateY(-1px); }

  .contacto-side{ padding-top:6px; }
  .social-list{ list-style:none; display:flex; flex-direction:column; }
  .social-list li{ border-top:1px solid rgba(255,255,255,0.16); }
  .social-list li:last-child{ border-bottom:1px solid rgba(255,255,255,0.16); }
  .social-list a{
    display:flex; align-items:center; justify-content:space-between;
    padding:22px 0; text-decoration:none; color:var(--white);
    font-size:clamp(20px,2.2vw,28px); font-weight:600; letter-spacing:-0.02em;
    transition:color .25s ease, padding-left .25s ease;
  }
  .social-list a svg{ width:20px; height:20px; color:rgba(255,255,255,0.5); transition:color .25s ease, transform .25s ease; }
  .social-list a:hover{ color:var(--green); padding-left:10px; }
  .social-list a:hover svg{ color:var(--green); transform:translate(2px,-2px); }

  /* ── FOOTER ── */
  .footer{ background:#F4F1EB; color:var(--gray); padding:40px 48px; display:flex; align-items:center; justify-content:space-between; border-top:1px solid var(--line); }
  .footer-mark{ display:flex; align-items:center; gap:10px; font-size:14px; font-weight:600; letter-spacing:-0.02em; color:var(--graphite); }
  .footer-mark svg{ width:18px; height:18px; }
  .footer-links{ display:flex; gap:28px; list-style:none; }
  .footer-links a{ font-size:13px; color:var(--gray); text-decoration:none; }
  .footer-links a:hover{ color:var(--graphite); }
  .footer-info{ font-size:12px; letter-spacing:0.02em; }

  @media (max-width: 900px){
    .nav{ padding:18px 22px; }
    .nav-links{ display:none; }
    .hero{ grid-template-columns:1fr; padding:120px 22px 80px; min-height:86vh; }      
    .hero-iso{ display:flex; position:relative; bottom:-16px; width:70vw; max-width:none; height:46vw; z-index:1; pointer-events:none; opacity:100; height:55vw; }
    .hero-content{ z-index:2; display:inline; }
    .hero-scroll{ left:22px; }
    .iso-row{ grid-template-columns:1fr; gap:40px; }
    .iso-canvas{ height:auto; min-height:0; padding:90px 22px; }
    .iso-statement,.glyph-a,.team-photo,.glyph-bang,.iso-estudio{ position:static; width:100%; height:auto; }
    .glyph-a{ margin:40px 0; height:60vw; }
    .team-photo{ height:70vw; margin-bottom:30px; }
    .glyph-bang{ display:none; }
    .iso-estudio{ margin-top:30px; }
    .strip{ grid-template-columns:repeat(2,1fr); }
    .cap-row{ grid-template-columns:1fr; gap:20px; }
    .cap-left{ gap:16px; }
    .breather{ height:42vh; min-height:260px; }
    .contacto{ padding:90px 22px; }
    .contacto-grid{ grid-template-columns:1fr; gap:64px; }
    .footer{ flex-direction:column; gap:16px; align-items:flex-start; padding:32px 22px; }
  }


/* ── IDIOMA (ES/EN) ── */
.lang-en, .lang-es { display: none; }
html[data-lang="en"] .lang-en { display: inline; }
html[data-lang="es"] .lang-es { display: inline; }
.block-i18n .lang-en, .block-i18n .lang-es { display: none; }
html[data-lang="en"] .block-i18n .lang-en { display: block; }
html[data-lang="es"] .block-i18n .lang-es { display: block; }
