/* Landing de Alder Gestiones · base: fuentes, tokens, tipografía y campos.
   Todo lo que se carga es propio (sin servicios externos). Las rutas son absolutas (/landing/...) porque la página
   se sirve en "/" del dominio y en "/landing/" de la app.
   Radios: 14 px en controles, 24 px en superficies, 40 px en el marco de celular. */

@font-face { font-family: "Inter"; font-weight: 400; font-style: normal; font-display: swap; src: url("/landing/fonts/inter-400.woff2") format("woff2"); }
@font-face { font-family: "Inter"; font-weight: 600; font-style: normal; font-display: swap; src: url("/landing/fonts/inter-600.woff2") format("woff2"); }
@font-face { font-family: "Inter Display"; font-weight: 600; font-style: normal; font-display: swap; src: url("/landing/fonts/inter-display-600.woff2") format("woff2"); }
@font-face { font-family: "Inter Display"; font-weight: 700; font-style: normal; font-display: swap; src: url("/landing/fonts/inter-display-700.woff2") format("woff2"); }

:root {
  color-scheme: light dark;
  /* Marca */
  --marino: #0F1D3A; --marino-hondo: #0A1429; --marino-alto: #1A2C55; --marino-linea: #2A3D69;
  --acero: #708090; --acero-claro: #D0E0F0; --nieve: #F5F8FD;
  /* Campo de lectura (claro) */
  --papel: #F3F5FA; --superficie: #FFFFFF; --tinta: #0F1B33; --tinta-2: #47546F; --linea: #D7DDE9;
  /* Acento del rubro elegido: lo cambia [data-rubro]. --acento va sobre papel; --acento-luz va sobre marino. */
  --acento: #1F4FB5; --acento-luz: #9DB9FF; --sobre-acento: #FFFFFF;
  /* Tipografía */
  --f-texto: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --f-titulo: "Inter Display", "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;
  --t-portada: clamp(2.75rem, 1.35rem + 6.4vw, 5.5rem);
  --t-2: clamp(1.9rem, 1.3rem + 2.6vw, 3.1rem);
  --t-3: clamp(1.25rem, 1.12rem + 0.55vw, 1.5rem);
  --t-texto: 1.0625rem; --t-nota: 0.9375rem; --t-chico: 0.8125rem;
  /* Espacio (base 4 px) */
  --e-1: 4px; --e-2: 8px; --e-3: 12px; --e-4: 16px; --e-5: 24px; --e-6: 32px; --e-7: 48px; --e-8: 72px;
  --e-seccion: clamp(72px, 9vw, 136px); --borde-pagina: clamp(20px, 5vw, 64px); --ancho: 1200px;
  /* Forma y movimiento */
  --r-control: 14px; --r-superficie: 24px; --r-telefono: 40px;
  --salida: cubic-bezier(.23, 1, .32, 1); --dur-toque: 140ms; --dur-cambio: 280ms;
  --sombra: 0 1px 2px rgba(10, 20, 41, .06), 0 18px 40px -18px rgba(10, 20, 41, .28);
}
@media (prefers-color-scheme: dark) {
  :root { --papel: #0B1426; --superficie: #121E38; --tinta: #EAF0FA; --tinta-2: #A9B6D0; --linea: #25345A; --sombra: 0 1px 2px rgba(0, 0, 0, .4), 0 18px 40px -18px rgba(0, 0, 0, .7); }
}

/* Acentos por rubro (los mismos de rubros.js). Sobre fondo oscuro se usa la versión clara. */
[data-rubro="tours"] { --acento: #1F4FB5; --acento-luz: #9DB9FF; }
[data-rubro="hoteles"] { --acento: #14405C; --acento-luz: #8FCBEA; }
[data-rubro="cartas"] { --acento: #9A3412; --acento-luz: #FFB48A; }
[data-rubro="compraventa"] { --acento: #1760B8; --acento-luz: #93C2FF; }
@media (prefers-color-scheme: dark) {
  [data-rubro="tours"], :root { --acento: #9DB9FF; --sobre-acento: #0A1429; }
  [data-rubro="hoteles"] { --acento: #8FCBEA; --sobre-acento: #0A1429; }
  [data-rubro="cartas"] { --acento: #FFB48A; --sobre-acento: #0A1429; }
  [data-rubro="compraventa"] { --acento: #93C2FF; --sobre-acento: #0A1429; }
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; scroll-behavior: smooth; scrollbar-color: var(--acero) var(--marino-hondo); }
body { margin: 0; background: var(--papel); color: var(--tinta); font: 400 var(--t-texto)/1.55 var(--f-texto); font-feature-settings: "calt", "kern"; -webkit-font-smoothing: antialiased; -webkit-tap-highlight-color: transparent; }
img, svg, video { display: block; max-width: 100%; }
h1, h2, h3, p, ul, ol, figure { margin: 0; padding: 0; }
ul, ol { list-style: none; }
button, input, select { font: inherit; color: inherit; }
::selection { background: var(--acento); color: var(--sobre-acento); }
:focus-visible { outline: 3px solid var(--acento); outline-offset: 3px; border-radius: 6px; }
[hidden] { display: none !important; }

/* Tipografía */
h1, h2, h3 { font-family: var(--f-titulo); text-wrap: balance; }
h1, .t-portada { font-size: var(--t-portada); font-weight: 700; line-height: .98; letter-spacing: -.035em; }
h2, .t-2 { font-size: var(--t-2); font-weight: 700; line-height: 1.04; letter-spacing: -.028em; }
h3, .t-3 { font-size: var(--t-3); font-weight: 600; line-height: 1.2; letter-spacing: -.015em; }
p { text-wrap: pretty; }
.bajada { font-size: clamp(1.0625rem, .98rem + .45vw, 1.3rem); line-height: 1.45; color: var(--tinta-2); max-width: 36ch; }
.texto { max-width: 56ch; }
.nota { font-size: var(--t-nota); color: var(--tinta-2); }
.cifra { font-variant-numeric: tabular-nums; }
a { color: inherit; text-decoration-thickness: 1px; text-underline-offset: .2em; }
.enlace { color: var(--acento); font-weight: 600; text-decoration: underline; text-decoration-thickness: 1.5px; text-underline-offset: .22em; }

/* Página y campos. Un campo ocupa una región entera con su color. */
.pagina { width: min(var(--ancho), 100%); margin-inline: auto; }
.campo { padding: var(--e-seccion) var(--borde-pagina); background: var(--papel); color: var(--tinta); }
.campo--marino { background: var(--marino); color: var(--nieve); --tinta: var(--nieve); --tinta-2: var(--acero-claro); --linea: var(--marino-linea); --superficie: var(--marino-alto); --acento: var(--acento-luz); --sobre-acento: var(--marino-hondo); }
.campo--marino ::selection { background: var(--acento-luz); color: var(--marino-hondo); }
.campo > .pagina > h2 + * { margin-top: var(--e-5); }

.solo-lector { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.saltar { position: absolute; left: var(--e-4); top: -80px; z-index: 100; padding: var(--e-3) var(--e-4); border-radius: var(--r-control); background: var(--nieve); color: var(--marino); font-weight: 600; }
.saltar:focus { top: var(--e-4); }

@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
