/* Two-page visual migration. Tokens/fonts match the current ISO/ENS pillars.
   Scope is deliberately local: no shared header, form or tracking replacement. */
@font-face {
  font-family: 'NP Geo Display'; font-style: normal; font-weight: 200 800;
  font-display: swap;
  src: url('/_next/static/_vinext_fonts/bricolage-grotesque-b05cd6d95bab/bricolage-grotesque-2064f7d0.woff2') format('woff2');
}
@font-face {
  font-family: 'NP Geo Body'; font-style: normal; font-weight: 100 900;
  font-display: swap;
  src: url('/_next/static/_vinext_fonts/public-sans-1cb43b4783fb/public-sans-f631476b.woff2') format('woff2');
}
body.np-geo-current {
  --geo-ink: #102b47; --geo-text: #52616c; --geo-line: #d9dfdc;
  --geo-accent: #3f6f5b; --geo-paper: #f4f6f0;
  color: var(--geo-text); background: #fff;
  font-family: 'NP Geo Body', Arial, sans-serif !important;
}
body.np-geo-ens { --geo-accent: #2e6384; --geo-paper: #f4f6f8; }
.np-geo-current .np-geo-main { padding: 0; }
.np-geo-current .np-geo-main :is(h1,h2,h3) {
  font-family: 'NP Geo Display', Arial, sans-serif !important;
  letter-spacing: -.025em !important;
}
.np-geo-current .np-geo-main :is(p,li) { line-height: 1.7; }
.np-geo-current .np-geo-main h2 { font-size: clamp(26px,3vw,40px) !important; line-height: 1.18 !important; }
.np-geo-current .np-geo-main > .np-geo-hero {
  background: radial-gradient(#d9dfdc 1px,transparent 1px) 0 0 / 26px 26px, var(--geo-paper) !important;
  min-height: 0 !important; padding: 70px 0 !important;
}
/* The retained effects.js can insert a late, minimum-200px WebGL canvas.
   These two heroes use the static dotted background, not legacy decoration. */
.np-geo-current .np-geo-hero > :is(.vanta-bg, .vanta-fallback) {
  display: none !important;
}
.np-geo-current .np-geo-hero-grid {
  display: grid !important; grid-template-columns: minmax(0,1.25fr) minmax(0,.85fr) !important;
  align-items: center; gap: clamp(32px,5vw,76px) !important;
}
.np-geo-current .np-geo-copy, .np-geo-current .np-geo-summary { min-width: 0; }
.np-geo-current .np-geo-copy > div:first-child {
  color: #7b6318 !important; background: transparent !important;
  border: 0 !important; border-radius: 0 !important; padding: 0 !important;
  font-size: 12px !important; line-height: 1.6;
}
.np-geo-current .np-geo-copy h1 {
  color: var(--geo-ink) !important; font-size: clamp(34px,4.2vw,60px) !important;
  font-weight: 750 !important; line-height: 1.08 !important;
}
.np-geo-current .np-geo-copy h1 span { color: var(--geo-accent) !important; }
.np-geo-current .np-geo-copy > p {
  color: var(--geo-text) !important; max-width: 650px !important;
  font-size: 17px !important;
}
.np-geo-current .np-geo-copy > div > span {
  color: var(--geo-text) !important; background: transparent !important;
  border: 0 !important; padding: 0 !important; font-size: 12px !important;
}
.np-geo-current .np-geo-copy > div > span svg { stroke: var(--geo-accent); flex-shrink: 0; }
.np-geo-current .np-geo-main .btn-gold {
  color: #fff !important; background: var(--geo-ink) !important;
  border: 1px solid var(--geo-ink) !important; border-radius: 4px !important;
  box-shadow: 4px 4px 0 #e5dcc0 !important; min-height: 48px;
  white-space: normal; text-align: center;
}
.np-geo-current .np-geo-copy .btn-outline {
  color: var(--geo-ink) !important; border: 1px solid #abb8b1 !important;
  background: transparent !important; border-radius: 4px !important;
}
.np-geo-current .np-geo-summary {
  background: #fff !important; border: 1px solid var(--geo-line) !important;
  border-top: 3px solid var(--geo-accent) !important; border-radius: 12px !important;
  box-shadow: 0 20px 44px #102b4712 !important; padding: 26px !important;
  backdrop-filter: none !important;
}
.np-geo-current .np-geo-summary > div:first-child { background: var(--geo-paper) !important; padding: 18px !important; }
.np-geo-current .np-geo-summary img { height: 160px !important; width: auto; max-width: 100%; }
.np-geo-current .np-geo-summary > div:nth-child(2) {
  grid-template-columns: repeat(2,minmax(0,1fr)) !important; gap: 10px !important;
}
.np-geo-current .np-geo-summary > div:nth-child(2) > div {
  background: #f6f7f5 !important; border: 1px solid var(--geo-line);
  border-radius: 6px !important; padding: 14px 8px !important;
}
.np-geo-current .np-geo-summary > div:nth-child(2) > div > div:first-child { color: var(--geo-accent) !important; font-size: 24px !important; }
.np-geo-current .disclaimer-acreditacion { max-width: 1180px; margin: 24px auto !important; }
.np-geo-current .np-geo-main > div.py-16 { padding-block: 38px !important; background: var(--geo-paper); }
.np-geo-current .np-geo-main > div.py-16 > div { max-width: 1180px; }
.np-geo-current .direct-answer-box { max-width: none !important; background: #fff !important; border-color: var(--geo-line) !important; border-left: 4px solid var(--geo-accent) !important; }
.np-geo-current .np-geo-main .np-geo-section {
  padding-block: 58px !important; min-height: 0 !important;
}
.np-geo-current .np-geo-main .np-geo-section > :is(.max-w-screen-xl,.max-w-6xl) { max-width: 1180px; }
.np-geo-current .np-geo-section.bg-silver { background: var(--geo-paper) !important; }
.np-geo-current .np-geo-section.rounded-2xl {
  border: 1px solid var(--geo-line) !important; border-radius: 10px !important;
  box-shadow: none !important; padding: clamp(24px,4vw,42px) !important;
}
.np-geo-current .np-geo-main > .np-geo-faq { max-width: 1132px; margin: 40px auto; }
.np-geo-current .np-geo-faq h3 { color: var(--geo-ink); font-size: 19px; line-height: 1.4; }
.np-geo-current .np-geo-faq p { color: var(--geo-text); }
.np-geo-current .np-geo-main .np-geo-dark { background: var(--geo-ink) !important; }
.np-geo-current .np-geo-main .np-geo-dark h2 { color: #fff !important; }
.np-geo-current .np-geo-main .np-geo-contact { background: #edf1ec !important; }
.np-geo-current .np-geo-main .np-geo-contact h2 { color: var(--geo-ink) !important; }
.np-geo-current .np-geo-contact > div > :is(p,span) { color: var(--geo-text) !important; }
.np-geo-current .np-geo-contact form { border: 1px solid var(--geo-line); border-radius: 12px !important; box-shadow: 0 18px 42px #102b470c !important; }
.np-geo-current .np-geo-contact .section-label { color: #7b6318 !important; }
.np-geo-current .np-geo-contact button[type="submit"] {
  color: #fff !important; background: var(--geo-ink) !important;
  border-radius: 4px !important; box-shadow: 4px 4px 0 #e5dcc0;
}
.np-geo-current .np-geo-main :is(a,button,input,select,textarea):focus-visible { outline: 3px solid var(--geo-accent); outline-offset: 3px; }
.np-geo-current #waChatBox { width: min(320px, calc(100vw - 40px)) !important; }
@media (max-width: 980px) {
  .np-geo-current .np-geo-hero-grid { grid-template-columns: minmax(0,1fr) !important; gap: 32px !important; }
  .np-geo-current .np-geo-summary { width: 100%; max-width: 590px; }
  .np-geo-current .np-geo-main > .np-geo-hero { padding: 42px 0 !important; }
  .np-geo-current .np-geo-main > .np-geo-faq { margin-inline: 24px; }
}
@media (max-width: 600px) {
  .np-geo-current .np-geo-main .np-geo-section { padding-block: 36px !important; }
  .np-geo-current .np-geo-copy h1 { font-size: clamp(32px,8vw,42px) !important; }
  .np-geo-current .np-geo-copy > p { font-size: 16px !important; }
  .np-geo-current .np-geo-summary { padding: 18px !important; }
  .np-geo-current .np-geo-copy > div:last-child { flex-direction: column; align-items: stretch; }
  .np-geo-current .disclaimer-acreditacion { margin-inline: 24px !important; }
  .np-geo-current .np-geo-main [style*="minmax(240px"] { grid-template-columns: minmax(0,1fr) !important; }
  .np-geo-current .np-geo-summary > div:nth-child(2) { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
}
@media (max-width: 370px) {
  .np-geo-current .site-header { column-gap: 8px; }
  .np-geo-current .site-header .logo { width: 114px; }
  .np-geo-current .site-header .header-cta { gap: 6px; padding-left: 10px; }
}
