:root {
  --negro: #0C0E10;
  --hueso: #ECE8DF;
  --bronce: #C99B5D;
  --bronce-claro: #E8C48F;
  --gris: #8C8983;
  --gris-2: #A3A09A;
  --gris-3: #CFCAC0;
  --linea: #1F2327;
  --tinta: #2B4C7E;
  --sans: "Archivo", "Segoe UI", system-ui, sans-serif;
  --serif: "Instrument Serif", Georgia, serif;
  --mono: "IBM Plex Mono", Consolas, monospace;
  --u: 1px;
  --lado: 20px;
  --margen: max(var(--lado), calc(50% - 720px + var(--lado)));
  --k: 1;
  --alto-cab: 64px;
  --grano: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .93 0 0 0 0 .91 0 0 0 0 .87 0 0 0 .9 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
@media (min-width: 601px) {
  :root { --lado: 40px; }
}
@media (min-width: 1024px) {
  :root { --u: min(1px, calc(100vw / 1440)); --lado: calc(64 * var(--u)); }
}
html {
  background-color: #0C0E10;
  background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .93 0 0 0 0 .91 0 0 0 0 .87 0 0 0 .0495 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  background-size: 240px 240px;
  color-scheme: dark;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  scroll-padding-top: 12px;
}
@media (min-width: 601px) { html { scroll-padding-top: 76px; } }
@media (prefers-reduced-motion: no-preference) { html { scroll-behavior: smooth; } }
body { margin: 0; background: #0C0E10; }
.pagina {
  position: relative;
  overflow-x: hidden;
  min-height: 100vh;
  background: #0C0E10;
  color: var(--hueso);
  font-family: var(--sans);
  font-size: 16px;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  font-kerning: normal;
}
@supports (overflow: clip) { .pagina { overflow-x: clip; } }
*, *::before, *::after { box-sizing: border-box; }
h1, h2, h3, p, ul, ol, dl, dd, figure { margin: 0; padding: 0; }
ul, ol { list-style: none; }
::selection { background: var(--bronce); color: var(--negro); }
a { color: var(--hueso); text-decoration: none; }
button { font: inherit; color: inherit; background: none; border: 0; cursor: pointer; padding: 0; }
:focus-visible { outline: 2px solid var(--bronce-claro); outline-offset: 3px; }
@media (min-width: 1024px) { :focus-visible { outline-offset: 4px; } }
[hidden] { display: none !important; }
svg { overflow: visible; }
.defs { position: absolute; width: 0; height: 0; overflow: hidden; }
@media (min-width: 601px) { .solo-movil { display: none !important; } }
@media (max-width: 600px) { .no-movil { display: none !important; } }
@media (max-width: 1023px) { .solo-escritorio { display: none !important; } }
@media (min-width: 1024px) { .no-escritorio { display: none !important; } }
.solo-lector { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.saltar { position: absolute; left: 12px; top: -80px; z-index: 50; display: inline-flex; align-items: center; min-height: 44px; box-sizing: border-box; padding: 12px 16px; background: var(--bronce); color: var(--negro); font-weight: 600; border-radius: 2px; }
.saltar:focus { top: 12px; color: var(--negro); }
.cinta-prueba { position: relative; z-index: 21; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 4px 14px; padding: 7px var(--lado); background: #07080A; border-bottom: 1px solid #1B1F23; font-family: var(--mono); font-size: 11px; line-height: 1.4; letter-spacing: .12em; text-transform: uppercase; color: var(--bronce); text-align: center; }
.cinta-prueba .cinta-detalle { color: var(--gris); letter-spacing: .06em; text-transform: none; }
@media (max-width: 600px) { .cinta-prueba .cinta-detalle { display: none; } }
.grano { position: fixed; inset: 0; z-index: 4; pointer-events: none; opacity: .055; background-size: 240px 240px; background-image: var(--grano); }
.halo { position: absolute; pointer-events: none; z-index: 0; }
.capa { position: relative; z-index: 1; }
.luz { position: absolute; left: 0; top: 0; width: 100%; height: 100%; z-index: 0; pointer-events: none; display: block; }
.charco { display: none; }
@media (hover: hover) and (pointer: fine) {
  .charco { display: block; position: fixed; inset: 0; z-index: 0; pointer-events: none; opacity: 0; transition: opacity .8s ease; background: radial-gradient(600px circle at var(--lx, 50%) var(--ly, 0px), rgba(201,155,93,.035), rgba(201,155,93,0) 70%); }
}
.filo { position: relative; overflow: hidden; height: 1px; background: linear-gradient(90deg, rgba(31,35,39,0) 0%, #1F2327 12%, #1F2327 88%, rgba(31,35,39,0) 100%); }
@media (min-width: 1024px) { .filo { background: linear-gradient(90deg, rgba(31,35,39,0) 0%, #1F2327 14%, #1F2327 86%, rgba(31,35,39,0) 100%); } }
.filo::after { content: ""; position: absolute; left: -20%; top: 0; width: 20%; height: 100%; pointer-events: none; opacity: 0; background: linear-gradient(90deg, rgba(232,196,143,0), rgba(232,196,143,.9) 50%, rgba(232,196,143,0)); }
.filo.visto::after { animation: destello .9s .15s cubic-bezier(.4,0,.2,1) 1 both; }
.filo.traza.visto::after { animation-delay: 1.3s; }
@keyframes destello { 0% { transform: translateX(0); opacity: 0; } 15% { opacity: 1; } 85% { opacity: 1; } 100% { transform: translateX(600%); opacity: 0; } }
.mono { font-family: var(--mono); }
.serif { font-family: var(--serif); font-weight: 400; }
.bronce { color: var(--bronce); }
.gris { color: var(--gris); }
em { font-style: italic; }
@media (max-width: 1023px) { h1, h2, h3 { text-wrap: balance; } }
.rotulo { font-family: var(--mono); font-size: 12px; line-height: 1.5; letter-spacing: .14em; text-transform: uppercase; color: var(--bronce); display: flex; align-items: center; gap: 12px; }
.rotulo::before { content: ""; width: 22px; height: 1px; background: var(--bronce); opacity: .7; flex: none; }
.titulo-sec { font-family: var(--serif); font-weight: 400; font-size: 46px; line-height: .98; letter-spacing: -0.014em; color: var(--hueso); }
.titulo-sec em { font-style: italic; color: #B9B4AA; }
.titulo-sec em.bronce { color: var(--bronce); }
.bajada { font-size: 17px; line-height: 1.55; color: var(--gris-2); }
@media (min-width: 601px) and (max-width: 1023px) {
  .titulo-sec { font-size: clamp(46px, 7.4vw, 66px); }
  .bajada { font-size: 18px; }
}
@media (min-width: 1024px) {
  .rotulo { font-size: 13px; line-height: 1.55; gap: 14px; }
  .rotulo::before { width: 28px; }
  .titulo-sec { font-size: calc(96 * var(--u)); line-height: .94; letter-spacing: -0.018em; }
  .bajada { font-size: 18px; line-height: 1.6; }
}
.btn { position: relative; isolation: isolate; overflow: hidden; display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 54px; font-family: var(--sans); font-weight: 600; font-size: 17px; line-height: 1.2; padding: 14px 20px; border-radius: 2px; transition: background-color .25s, color .25s, border-color .25s, box-shadow .35s, transform .2s cubic-bezier(.2,.8,.2,1); }
.btn svg { width: 20px; height: 20px; flex: none; }
.btn-ancho, .btn-ancho-movil { display: flex; width: 100%; text-align: center; }
a.btn-bronce, a.btn-bronce:hover { color: var(--negro); }
.btn-bronce { background: var(--bronce); color: var(--negro); box-shadow: 0 0 0 0 rgba(201,155,93,0), inset 0 1px 0 rgba(255,236,205,.35); }
.btn-bronce:focus-visible { background: var(--bronce-claro); }
.btn-linea { border: 1px solid #33393F; color: var(--hueso); }
.btn-linea:focus-visible { border-color: var(--bronce); }
.btn .bronce { color: var(--bronce); }
.brillo { position: absolute; inset: 0; z-index: -1; pointer-events: none; opacity: 0; transition: opacity .5s ease; background: radial-gradient(150px circle at var(--bx, 50%) var(--by, 50%), rgba(255,244,224,.5), rgba(255,244,224,0) 70%); }
.btn-linea .brillo { background: radial-gradient(170px circle at var(--bx, 50%) var(--by, 50%), rgba(201,155,93,.2), rgba(201,155,93,0) 70%); }
.btn:focus-visible .brillo { opacity: 1; }
@media (min-width: 601px) { .btn-ancho-movil { display: inline-flex; width: auto; } }
@media (min-width: 1024px) {
  .btn { min-height: 0; gap: 12px; font-size: 16px; padding: 16px 24px; justify-content: flex-start; }
  .btn svg { width: 19px; height: 19px; }
  .btn-chico { padding: 10px 16px; font-size: 15px; }
  .btn-nav { padding: 11px 18px; font-size: 15px; }
}
.enlace-sub { display: inline-flex; align-items: center; gap: 9px; min-height: 44px; font-weight: 500; font-size: 17px; color: var(--hueso); }
.enlace-sub > span { border-bottom: 1px solid #3A4046; padding-bottom: 2px; transition: border-color .25s; }
.enlace-sub svg { width: 18px; height: 18px; flex: none; color: var(--bronce); }
.enlace-sub .bronce { color: var(--bronce); }
.enlace-sub:focus-visible > span { border-color: var(--bronce); }
@media (min-width: 1024px) {
  .enlace-sub { min-height: 0; font-size: 16px; border-bottom: 1px solid #3A4046; padding-bottom: 3px; transition: border-color .25s, color .25s; }
  .enlace-sub > span { border: 0; padding: 0; }
  .enlace-sub svg { width: 17px; height: 17px; }
  .enlace-sub:focus-visible { border-color: var(--bronce); }
  .enlace-sub .birome::after { bottom: -8px; }
}
.enlace-linea { display: inline-flex; align-items: center; min-height: 44px; line-height: 1.2; }
.enlace-linea > span { border-bottom: 1px solid #3A4046; }
.enlace-linea > span.linea-bronce { border-bottom-color: var(--bronce); }
@media (min-width: 1024px) { .enlace-linea { display: inline; min-height: 0; line-height: inherit; } }
.birome { position: relative; }
.birome::after, .nav a:not(.btn)::after { content: ""; position: absolute; left: -2px; right: -2px; bottom: -5px; height: 6px; pointer-events: none; background: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 6' preserveAspectRatio='none'%3E%3Cpath d='M1 3.8 C 40 2, 90 4.8, 140 3 S 188 3.6, 199 2.4' fill='none' stroke='%23E8C48F' stroke-width='1.6' stroke-linecap='round' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E") no-repeat 0 0 / 100% 100%; clip-path: inset(0 100% 0 0); transition: clip-path .45s .35s cubic-bezier(.6,.1,.3,1); }
a:focus-visible .birome::after, button:focus-visible .birome::after, .birome:focus-visible::after, .nav a:not(.btn):focus-visible::after { clip-path: inset(0 0 0 0); transition: clip-path .14s 0s cubic-bezier(.6,.1,.3,1); }
.barra { display: none; }
@media (min-width: 601px) {
  .barra { display: block; position: fixed; left: 0; right: 0; top: 0; z-index: 20; background: rgba(12,14,16,.82); -webkit-backdrop-filter: blur(14px) saturate(120%); backdrop-filter: blur(14px) saturate(120%); transform: translateY(-104%); transition: transform .45s cubic-bezier(.2,.8,.2,1); }
  .barra.visible { transform: none; }
  .barra-dentro { width: 1440px; max-width: 100%; margin: 0 auto; padding: 12px var(--lado); display: flex; align-items: center; justify-content: space-between; gap: 24px; }
  .barra-marca { display: flex; align-items: center; gap: 11px; }
  .barra-marca .serif { font-size: 22px; line-height: 1; }
  .barra-acciones { display: flex; align-items: center; gap: 26px; }
  .barra .btn-chico { min-height: 44px; padding: 10px 16px; font-size: 15px; }
  .barra-enlace { font-size: 15px; }
}
@media (min-width: 601px) and (max-width: 759px) { .barra-enlace { display: none; } }
@media (min-width: 1024px) { .barra .btn-chico { min-height: 0; } }
.cabecera { padding-inline: var(--margen); }
.cabecera-fila { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 0 8px; }
.marca { display: flex; align-items: center; gap: 10px; min-height: 44px; }
.marca svg { width: 28px; height: 28px; flex: none; }
.marca .serif { font-size: 24px; line-height: 1; letter-spacing: .01em; }
.nav { display: none; }
.boton-menu { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 14px; border: 1px solid #33393F; border-radius: 2px; font-size: 16px; font-weight: 600; transition: color .25s, border-color .25s, transform .2s cubic-bezier(.2,.8,.2,1); }
.boton-menu .icono-cerrar, .boton-menu .texto-cerrar { display: none; }
.boton-menu[aria-expanded="true"] .icono-cerrar, .boton-menu[aria-expanded="true"] .texto-cerrar { display: inline; }
.boton-menu[aria-expanded="true"] .icono-abrir, .boton-menu[aria-expanded="true"] .texto-abrir { display: none; }
.menu-movil { padding-bottom: 14px; }
.menu-lista a { display: flex; align-items: center; justify-content: space-between; min-height: 54px; font-size: 18px; color: var(--hueso); border-top: 1px solid var(--linea); transition: color .3s ease; }
.menu-lista a svg { width: 18px; height: 18px; color: var(--bronce); transition: transform .3s cubic-bezier(.2,.8,.2,1); }
.menu-lista a:focus-visible { color: var(--bronce-claro); }
.menu-lista a:focus-visible svg { transform: translateY(2px); }
@media (min-width: 1024px) {
  .cabecera-fila { padding: calc(24 * var(--u)) 0 calc(18 * var(--u)); }
  .marca { gap: 13px; min-height: 0; }
  .marca svg { width: 32px; height: 32px; }
  .marca .serif { font-size: 27px; }
}
@media (min-width: 1200px) {
  .nav { display: flex; align-items: center; gap: calc(34 * var(--u)); }
  .nav a:not(.btn) { position: relative; font-size: 15px; color: var(--gris-2); transition: color .2s; }
  .nav a:not(.btn):focus-visible { color: var(--hueso); }
  .boton-menu, .menu-movil { display: none !important; }
}
.asoma { animation: asoma .9s cubic-bezier(.2,.75,.2,1) both; }
@keyframes asoma { from { opacity: .62; transform: translateY(12px); } to { opacity: 1; transform: none; } }
.filo.traza { animation: traza 1.3s .05s cubic-bezier(.7,0,.2,1) both; transform-origin: left center; }
@keyframes traza { from { transform: scaleX(.35); } to { transform: none; } }
.entra { animation: entra .4s cubic-bezier(.2,.7,.2,1) both; }
@keyframes entra { from { opacity: .6; transform: translateY(8px); } to { opacity: 1; transform: none; } }
@media (min-width: 1024px) {
  .asoma { animation-duration: 1s; }
  .asoma { animation-name: asomaE; }
  @keyframes asomaE { from { opacity: .62; transform: translateY(16px); } to { opacity: 1; transform: none; } }
  .filo.traza { animation-duration: 1.6s; animation-delay: .1s; }
  .entra { animation-duration: .45s; }
}
.portada { position: relative; padding-inline: var(--margen); }
.luz-portada { top: calc(-1 * var(--alto-cab)); height: calc(100% + var(--alto-cab)); -webkit-mask-image: linear-gradient(to bottom, #000 70%, transparent 100%); mask-image: linear-gradient(to bottom, #000 70%, transparent 100%); }
.halo-portada { left: -220px; top: 236px; width: 700px; height: 700px; background: radial-gradient(closest-side, rgba(201,155,93,.07), rgba(201,155,93,0)); }
.meta { padding: 7px 0 6px; font-size: 11px; line-height: 1.6; letter-spacing: .1em; text-transform: uppercase; color: var(--gris); }
.meta > span { display: block; }
.inicio { padding-top: 30px; }
.inicio .rotulo { margin-bottom: 18px; }
.palabras { --fp: min(19.5vw, calc((100vw - 2 * var(--lado)) / 4.6), 124px); }
.fila-palabra { position: relative; height: calc(var(--fp) * .921); white-space: nowrap; }
.palabra { position: absolute; top: 0; display: inline-block; font-family: var(--serif); font-size: var(--fp); line-height: .921; letter-spacing: -0.02em; color: var(--hueso); transition: color .7s ease; }
.palabra em { font-style: italic; }
.p1 { left: 0; }
.p2 { left: 1.026em; }
.p3 { left: .29em; }
.palabra-in, .cruza, .deriva { display: inline-block; position: relative; }
.tachon { position: absolute; left: -4%; top: .237em; width: 108%; height: .553em; overflow: visible; pointer-events: none; }
.tachon path { fill: none; stroke-linecap: round; stroke-dasharray: 100 140; stroke-dashoffset: 112; transition: stroke-dashoffset .5s cubic-bezier(.6,.1,.3,1); }
.tachon path.a { stroke: var(--bronce); stroke-width: 6; }
.tachon path.b { stroke: var(--bronce-claro); stroke-width: 2.6; opacity: .85; }
.fase-1 .palabra, .fase-2 .palabra { color: #4B4945; }
.fase-1 .t1 path.a, .fase-2 .t1 path.a { stroke-dashoffset: 0; transition-delay: 0s; }
.fase-1 .t1 path.b, .fase-2 .t1 path.b { stroke-dashoffset: 0; transition-delay: .25s; }
.fase-1 .t2 path.a, .fase-2 .t2 path.a { stroke-dashoffset: 0; transition-delay: .18s; }
.fase-1 .t2 path.b, .fase-2 .t2 path.b { stroke-dashoffset: 0; transition-delay: .43s; }
.fase-1 .t3 path.a, .fase-2 .t3 path.a { stroke-dashoffset: 0; transition-delay: .36s; }
.fase-1 .t3 path.b, .fase-2 .t3 path.b { stroke-dashoffset: 0; transition-delay: .61s; }
.e1 { animation: cruzaIzq 1.1s cubic-bezier(.16,.8,.2,1) both; }
.e2 { animation: cruzaDer 1.2s .08s cubic-bezier(.16,.8,.2,1) both; }
.e3 { animation: cruzaIzq 1.3s .16s cubic-bezier(.16,.8,.2,1) both; }
@keyframes cruzaIzq { from { transform: translateX(-36px); opacity: .5; } to { transform: none; opacity: 1; } }
@keyframes cruzaDer { from { transform: translateX(40px); opacity: .5; } to { transform: none; opacity: 1; } }
.flecha-fila { display: grid; grid-template-columns: auto 1fr; align-items: center; column-gap: 12px; row-gap: 2px; margin-top: 14px; }
.flecha-sistema { display: block; flex: none; width: 48px; height: 22px; }
.flecha-sistema path { fill: none; stroke: var(--bronce); stroke-width: 6; stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: 100 140; stroke-dashoffset: 112; transition: stroke-dashoffset .6s .1s cubic-bezier(.6,.1,.3,1); }
.fase-2 .flecha-sistema path { stroke-dashoffset: 0; }
.flecha-texto { font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--gris); }
.palabra-sistema { grid-column: 1 / -1; justify-self: start; position: relative; display: inline-block; }
.sistema { font-family: var(--sans); font-size: calc(var(--fp) * .868); line-height: 1.09; letter-spacing: -0.035em; font-weight: 300; font-stretch: 62%; font-variation-settings: normal; white-space: nowrap; display: inline-block; transition: font-stretch 1s cubic-bezier(.2,.8,.2,1), font-weight 1s cubic-bezier(.2,.8,.2,1), opacity .7s ease; }
.sistema-gris { color: #74716B; }
.sistema-bronce { position: absolute; left: 0; top: 0; color: transparent; opacity: 0; background-image: linear-gradient(100deg, rgba(255,240,214,0) 0%, rgba(255,240,214,0) 40%, rgba(255,240,214,.95) 50%, rgba(255,240,214,0) 60%, rgba(255,240,214,0) 100%), linear-gradient(180deg, #E8C48F 0%, #C99B5D 48%, #9C7440 100%); background-size: 280% 100%, 100% 100%; background-position: 100% 0, 0 0; background-repeat: no-repeat; -webkit-background-clip: text; background-clip: text; }
.fase-2 .sistema { font-stretch: 125%; font-weight: 800; }
.fase-2 .sistema-gris { opacity: 0; }
.fase-2 .sistema-bronce { opacity: 1; animation: veta 2.4s .7s cubic-bezier(.45,0,.2,1) both; }
@keyframes veta { from { background-position: 100% 0, 0 0; } to { background-position: 0% 0, 0 0; } }
.fase-2 .veta-a .sistema-bronce { animation: vetaA .9s cubic-bezier(.45,0,.2,1) both; }
.fase-2 .veta-b .sistema-bronce { animation: vetaB .9s cubic-bezier(.45,0,.2,1) both; }
@keyframes vetaA { from { background-position: 100% 0, 0 0; } to { background-position: 0% 0, 0 0; } }
@keyframes vetaB { from { background-position: 100% 0, 0 0; } to { background-position: 0% 0, 0 0; } }
.inicio-texto { margin-top: 34px; display: flex; flex-direction: column; gap: 18px; }
.inicio-texto h1 { font-size: 46px; line-height: .98; letter-spacing: -0.014em; }
.inicio-texto h1 em { display: block; font-style: italic; color: var(--bronce); }
.inicio-bajada { font-size: 17px; line-height: 1.55; color: var(--gris-3); }
.inicio-acciones { display: flex; flex-direction: column; align-items: flex-start; gap: 6px; margin-top: 2px; }
.claves { margin-top: 30px; }
.claves-lista li { display: grid; grid-template-columns: 34px 1fr; padding: 12px 0; border-top: 1px solid var(--linea); font-size: 16px; line-height: 1.4; color: var(--gris-3); }
.claves-lista .num { font-size: 12px; color: var(--bronce); padding-top: 3px; }
@media (min-width: 601px) and (max-width: 1023px) {
  .halo-portada { top: 300px; width: 900px; height: 900px; }
  .meta { font-size: 12px; }
  .inicio { padding-top: 44px; }
  .inicio-texto { max-width: 620px; margin-top: 44px; }
  .inicio-texto h1 { font-size: clamp(46px, 7.8vw, 70px); }
  .inicio-bajada { font-size: 18px; }
  .inicio-acciones { flex-direction: row; flex-wrap: wrap; align-items: center; gap: 12px 28px; }
  .claves-lista { display: grid; grid-template-columns: 1fr 1fr; column-gap: 40px; }
  .claves { margin-top: 44px; }
}
@media (min-width: 1024px) {
  .luz-portada { -webkit-mask-image: linear-gradient(to bottom, #000 72%, transparent 100%); mask-image: linear-gradient(to bottom, #000 72%, transparent 100%); }
  .halo-portada { left: calc(-200 * var(--u)); top: calc(306 * var(--u)); width: calc(1100 * var(--u)); height: calc(900 * var(--u)); background: radial-gradient(closest-side, rgba(201,155,93,.06), rgba(201,155,93,0)); }
  .meta { display: flex; justify-content: space-between; align-items: center; padding: 8px 0 7px; font-size: 13px; line-height: 1.55; letter-spacing: .12em; }
  .inicio { display: grid; grid-template-columns: calc(790 * var(--u)) 1fr; column-gap: calc(56 * var(--u)); align-items: end; padding-top: calc(40 * var(--u)); }
  .inicio .rotulo { margin-bottom: 26px; }
  .palabras { --fp: calc(132 * var(--u)); }
  .fila-palabra { height: calc(112 * var(--u)); }
  .palabra { line-height: .8485; transition-duration: .9s; }
  .p2 { left: 1.2727em; }
  .p3 { left: .4848em; }
  .tachon { left: -3%; top: .2197em; width: 106%; height: .5379em; }
  .tachon path { transition-duration: .6s; }
  .tachon path.a { stroke-width: 8; }
  .tachon path.b { stroke-width: 3; }
  .fase-1 .t1 path.b, .fase-2 .t1 path.b { transition-delay: .35s; }
  .fase-1 .t2 path.a, .fase-2 .t2 path.a { transition-delay: .25s; }
  .fase-1 .t2 path.b, .fase-2 .t2 path.b { transition-delay: .6s; }
  .fase-1 .t3 path.a, .fase-2 .t3 path.a { transition-delay: .5s; }
  .fase-1 .t3 path.b, .fase-2 .t3 path.b { transition-delay: .85s; }
  .e1 { animation: cruzaIzqE 1.5s cubic-bezier(.16,.8,.2,1) both; }
  .e2 { animation: cruzaDerE 1.6s .1s cubic-bezier(.16,.8,.2,1) both; }
  .e3 { animation: cruzaIzqE 1.7s .2s cubic-bezier(.16,.8,.2,1) both; }
  @keyframes cruzaIzqE { from { transform: translateX(-70px); opacity: .5; } to { transform: none; opacity: 1; } }
  @keyframes cruzaDerE { from { transform: translateX(80px); opacity: .5; } to { transform: none; opacity: 1; } }
  .deriva.d1 { animation: derivaA 9s 1.6s ease-in-out infinite; }
  .deriva.d2 { animation: derivaB 11s 1.7s ease-in-out infinite; }
  .deriva.d3 { animation: derivaA 10s 1.8s ease-in-out infinite; }
  .fase-2 .deriva { animation-play-state: paused; }
  @keyframes derivaA { 0%, 100% { transform: translateX(0); } 50% { transform: translateX(22px); } }
  @keyframes derivaB { 0%, 100% { transform: translateX(0); } 50% { transform: translateX(-26px); } }
  .flecha-fila { display: flex; align-items: center; gap: 16px; margin-top: 6px; }
  .flecha-sistema { width: 62px; height: 29px; }
  .flecha-sistema path { stroke-width: 5; transition: stroke-dashoffset .7s .15s cubic-bezier(.6,.1,.3,1); }
  .sistema { font-size: calc(140 * var(--u)); line-height: .9714; transition-duration: 1.2s, 1.2s, .8s; }
  .fase-2 .sistema-bronce { animation: veta 2.8s .9s cubic-bezier(.45,0,.2,1) both; }
  .inicio-texto { margin-top: 0; gap: 24px; padding-bottom: 14px; }
  .inicio-texto h1 { font-size: calc(82 * var(--u)); line-height: .96; letter-spacing: -0.016em; }
  .inicio-bajada { font-size: 19px; }
  .inicio-acciones { flex-direction: row; align-items: center; gap: 28px; flex-wrap: wrap; margin-top: 4px; }
  .claves { margin-top: calc(40 * var(--u)); }
  .claves-lista { display: grid; grid-template-columns: repeat(4, 1fr); gap: calc(32 * var(--u)); padding-top: 20px; }
  .claves-lista li { display: flex; gap: 14px; padding: 0; border: 0; font-size: 15px; line-height: 1.45; }
  .claves-lista .num { padding-top: 2px; }
}
.seccion { position: relative; padding-inline: var(--margen); }
.comparador { padding-top: 104px; padding-bottom: 88px; }
.halo-comparador { left: -180px; top: 260px; width: 750px; height: 900px; background: radial-gradient(closest-side, rgba(236,232,223,.035), rgba(236,232,223,0)); }
.comp-cabeza .rotulo { margin-bottom: 16px; }
.comp-cabeza .bajada { margin-top: 16px; }
.pestanas { margin-top: 28px; display: grid; grid-template-columns: 1fr 1fr 1.5fr; gap: 14px; border-bottom: 1px solid var(--linea); }
.tab { display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-end; gap: 2px; min-height: 64px; padding: 8px 0 10px; border-bottom: 2px solid transparent; margin-bottom: -1px; color: var(--gris); text-align: left; transition: color .2s, border-color .2s, transform .2s cubic-bezier(.2,.8,.2,1); }
.tab-indice { font-size: 12px; transition: color .25s; }
.tab-nombre { font-size: 16px; font-weight: 500; line-height: 1.25; }
.tab[aria-selected="true"] { color: var(--hueso); border-bottom-color: var(--bronce); }
.tab[aria-selected="true"] .tab-indice, .tab:focus-visible .tab-indice { color: var(--bronce); }
.comp-caption { font-size: 12px; letter-spacing: .04em; color: var(--gris); margin-top: 10px; line-height: 1.5; }
.interruptor { position: relative; display: grid; grid-template-columns: 1fr 1fr; height: 60px; margin-top: 16px; padding: 4px; border: 1px solid #2A2F34; background: #0A0C0E; border-radius: 2px; box-shadow: inset 0 1px 0 rgba(236,232,223,.04); }
.interruptor-bola { position: absolute; top: 4px; bottom: 4px; left: 4px; width: calc(50% - 4px); background: var(--hueso); border-radius: 1px; transition: transform .4s cubic-bezier(.65,0,.25,1), background-color .4s, box-shadow .45s ease; box-shadow: 0 6px 16px -8px rgba(0,0,0,.9); }
.vista-despues .interruptor-bola { transform: translateX(100%); background: var(--bronce); }
.interruptor button { position: relative; z-index: 1; display: flex; align-items: center; justify-content: center; gap: 8px; font-size: 17px; font-weight: 600; color: var(--gris-2); transition: color .4s, transform .2s cubic-bezier(.2,.8,.2,1); }
.interruptor button[aria-pressed="true"] { color: var(--negro); }
.interruptor svg { width: 18px; height: 18px; flex: none; }
.pista .interruptor { animation: pistaI 1.4s ease-in-out 2; }
@keyframes pistaI { 0%, 100% { box-shadow: 0 0 0 0 rgba(201,155,93,0); } 50% { box-shadow: 0 0 0 6px rgba(201,155,93,.35); } }
.escena { position: relative; isolation: isolate; margin-top: 22px; height: 620px; }
.escena.alta { height: 664px; }
.escena .halo-papel { position: absolute; left: -60px; right: -60px; top: -40px; bottom: -40px; pointer-events: none; background: radial-gradient(closest-side, rgba(236,232,223,.05), rgba(236,232,223,0)); }
.escena .papel { position: absolute; inset: 0; overflow: hidden; display: flex; flex-direction: column; color: var(--negro); transition: transform .7s cubic-bezier(.2,.8,.2,1), opacity .45s .3s ease, box-shadow .45s ease; box-shadow: inset 0 1px 0 rgba(255,255,255,.55), 0 1px 2px rgba(0,0,0,.5), 0 16px 26px -16px rgba(0,0,0,.9), 14px 24px 34px -22px rgba(0,0,0,.85), 0 44px 70px -40px rgba(0,0,0,.7); }
.escena .papel::after { content: ""; position: absolute; inset: 0; pointer-events: none; z-index: 4; background: linear-gradient(128deg, rgba(255,255,255,.26) 0%, rgba(255,255,255,0) 34%, rgba(0,0,0,0) 62%, rgba(40,30,15,.1) 100%), radial-gradient(180px 120px at 100% 100%, rgba(40,30,15,.12), rgba(40,30,15,0) 70%); }
.vista-despues .escena .papel { opacity: 0; }
.escena .pantalla { position: absolute; inset: 0; z-index: 2; overflow: hidden; display: flex; flex-direction: column; background: #0F1215; color: var(--hueso); border: 1px solid #23282D; border-radius: 3px; clip-path: inset(0 0 0 100%); transition: clip-path .75s cubic-bezier(.65,0,.25,1); box-shadow: inset 0 1px 0 rgba(236,232,223,.06), 0 26px 50px -24px rgba(0,0,0,.95); }
.escena .pantalla::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(118deg, rgba(236,232,223,.045) 0%, rgba(236,232,223,0) 28%, rgba(201,155,93,0) 72%, rgba(201,155,93,.05) 100%); }
.vista-despues .escena .pantalla { clip-path: inset(0 0 0 0); }
.escena .manuscrito { font-family: var(--serif); font-style: italic; color: var(--tinta); filter: url(#tinta-m); }
.fibra::before { content: ""; position: absolute; inset: 0; pointer-events: none; z-index: 5; mix-blend-mode: multiply; opacity: .07; background-size: 200px 200px; background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='f'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9 .45' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .35 0 0 0 0 .3 0 0 0 0 .22 0 0 0 1.2 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23f)'/%3E%3C/svg%3E"); }
.fila-cuaderno { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-content: start; column-gap: 10px; height: 64px; padding: 6px 14px 0 46px; border-bottom: 1px solid rgba(43,76,126,.2); }
.fila-sistema { display: grid; grid-template-columns: 46px minmax(0, 1fr) auto; column-gap: 8px; row-gap: 2px; padding: 10px 14px 10px 12px; border-top: 1px solid #1B1F23; }
.celda { padding: 0 8px; height: 58px; display: flex; align-items: center; border-right: 1px solid rgba(12,14,16,.18); border-bottom: 1px solid rgba(12,14,16,.18); overflow: hidden; line-height: 1.2; }
.burbuja { max-width: 86%; padding: 9px 12px; font-size: 16px; line-height: 1.4; }
.fila-entra-a { animation: filaA .45s cubic-bezier(.2,.8,.2,1) both; }
.fila-entra-b { animation: filaB .45s cubic-bezier(.2,.8,.2,1) both; }
@keyframes filaA { from { opacity: .6; transform: translateY(6px); } to { opacity: 1; transform: none; } }
@keyframes filaB { from { opacity: .6; transform: translateY(6px); } to { opacity: 1; transform: none; } }
.comp-pie { margin-top: 30px; padding-top: 16px; border-top: 1px solid var(--linea); }
.comp-cambia-rotulo { font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--bronce); margin-bottom: 10px; }
.comp-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.comp-chips li { font-family: var(--mono); font-size: 12px; letter-spacing: .06em; text-transform: uppercase; line-height: 1.3; padding: 6px 10px; background: transparent; color: var(--gris-2); border: 1px solid #33393F; transition: background-color .35s, color .35s, border-color .35s; }
.vista-despues .comp-chips li { background: var(--bronce); color: var(--negro); border-color: var(--bronce); }
.comp-aclara { margin-top: 16px; font-size: 12px; letter-spacing: .04em; color: var(--gris); line-height: 1.5; }
@media (min-width: 601px) and (max-width: 1023px) {
  .comparador { padding-top: 128px; padding-bottom: 104px; }
  .halo-comparador { left: 10%; width: 1000px; }
  .comp-cabeza .bajada { max-width: 620px; }
  .pestanas { grid-template-columns: auto auto auto; justify-content: start; gap: 36px; }
  .tab-nombre { font-size: 18px; }
  .comp-caption { font-size: 13px; }
  .interruptor { max-width: 520px; }
  .escena { max-width: 720px; margin-top: 28px; }
}
@media (min-width: 1024px) {
  .comparador { padding-top: calc(170 * var(--u)); padding-bottom: calc(120 * var(--u)); }
  .halo-comparador { left: calc(300 * var(--u)); top: calc(180 * var(--u)); width: calc(1300 * var(--u)); height: calc(1000 * var(--u)); }
  .comp-cabeza { display: grid; grid-template-columns: 1fr calc(440 * var(--u)); gap: calc(64 * var(--u)); align-items: end; }
  .comp-cabeza .rotulo { margin-bottom: 24px; }
  .comp-cabeza .titulo-sec { font-size: calc(108 * var(--u)); line-height: .92; }
  .comp-cabeza .bajada { margin-top: 0; padding-bottom: 14px; }
  .comp-pestanas { margin-top: calc(64 * var(--u)); display: flex; justify-content: space-between; align-items: flex-end; gap: 24px; border-bottom: 1px solid var(--linea); }
  .pestanas { margin-top: 0; display: flex; gap: calc(44 * var(--u)); border-bottom: 0; }
  .tab { flex-direction: row; align-items: baseline; gap: 12px; min-height: 0; padding: 14px 0 13px; border-bottom-width: 1px; }
  .tab-indice { font-size: 13px; }
  .tab-nombre { font-size: 19px; line-height: 1.55; }
  .comp-caption { margin-top: 0; font-size: 13px; letter-spacing: .06em; padding-bottom: 15px; line-height: 1.55; text-align: right; }
  .comp-marco { position: relative; z-index: 1; margin-top: calc(8px * var(--k)); height: calc(720px * var(--k)); }
  .comp-pie { display: grid; grid-template-columns: 1fr auto; gap: 40px; align-items: baseline; margin: calc(-34px * var(--k)) 8.84% 0; padding-top: 18px; }
  .comp-cambia { font-size: 17px; line-height: 1.5; color: var(--gris-3); }
  .comp-cambia .comp-cambia-rotulo { font-size: 13px; margin: 0 14px 0 0; }
  .comp-aclara { margin-top: 0; font-size: 13px; white-space: nowrap; }
}
.escenario { position: absolute; left: 0; top: 0; width: 1312px; height: 720px; transform: scale(var(--k)); transform-origin: 0 0; user-select: none; -webkit-user-select: none; touch-action: pan-y; cursor: ew-resize; overflow: hidden; }
.escenario .capa-comp { position: absolute; inset: 0; }
.escenario .halo-papel { position: absolute; left: 0; top: -40px; width: 1312px; height: 760px; pointer-events: none; background: radial-gradient(closest-side, rgba(236,232,223,.05), rgba(236,232,223,0)); }
.escenario .papel { position: absolute; left: 116px; top: 44px; width: 1080px; height: 560px; overflow: hidden; color: var(--negro); transition: transform .7s cubic-bezier(.2,.8,.2,1), background-color .4s, translate .35s cubic-bezier(.2,.8,.2,1), box-shadow .35s ease; box-shadow: inset 0 1px 0 rgba(255,255,255,.55), 0 1px 2px rgba(0,0,0,.5), 0 18px 30px -18px rgba(0,0,0,.9), 22px 34px 44px -26px rgba(0,0,0,.85), 0 60px 90px -50px rgba(0,0,0,.7); }
.escenario .papel::after { content: ""; position: absolute; inset: 0; pointer-events: none; z-index: 4; background: linear-gradient(128deg, rgba(255,255,255,.28) 0%, rgba(255,255,255,0) 34%, rgba(0,0,0,0) 62%, rgba(40,30,15,.1) 100%), radial-gradient(260px 160px at 100% 100%, rgba(40,30,15,.12), rgba(40,30,15,0) 70%); }
.escenario .pantalla { position: absolute; left: 116px; top: 44px; width: 1080px; height: 560px; overflow: hidden; background: #0F1215; color: var(--hueso); border: 1px solid #23282D; border-radius: 3px; transition: translate .35s cubic-bezier(.2,.8,.2,1); box-shadow: inset 0 1px 0 rgba(236,232,223,.06), 0 0 0 1px rgba(0,0,0,.6), 0 26px 50px -24px rgba(0,0,0,.95); }
.escenario .pantalla::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(118deg, rgba(236,232,223,.045) 0%, rgba(236,232,223,0) 28%, rgba(201,155,93,0) 72%, rgba(201,155,93,.05) 100%); }
.escenario .manuscrito { font-family: var(--serif); font-style: italic; color: var(--tinta); filter: url(#tinta); }
.escenario.suave .capa-comp { transition: clip-path .9s cubic-bezier(.65,0,.25,1); }
.escenario.suave .tirador, .escenario.suave .nota-comp { transition: left .9s cubic-bezier(.65,0,.25,1), opacity .3s; }
.escenario .fila-entra-a { animation: filaAE .55s cubic-bezier(.2,.8,.2,1) both; }
.escenario .fila-entra-b { animation: filaBE .55s cubic-bezier(.2,.8,.2,1) both; }
@keyframes filaAE { from { opacity: .6; transform: translateY(8px); } to { opacity: 1; transform: none; } }
@keyframes filaBE { from { opacity: .6; transform: translateY(8px); } to { opacity: 1; transform: none; } }
.tirador { position: absolute; top: 20px; bottom: 92px; width: 0; z-index: 3; }
.filo-tirador { position: absolute; top: 0; bottom: 0; left: -1px; width: 2px; display: block; background: linear-gradient(180deg, rgba(232,196,143,0) 0%, #C99B5D 12%, #E8C48F 50%, #C99B5D 88%, rgba(232,196,143,0) 100%); box-shadow: 0 0 18px 2px rgba(201,155,93,.35); transition: box-shadow .35s ease; }
.perilla { position: absolute; top: 50%; left: 0; width: 60px; height: 68px; margin: -34px 0 0 -30px; display: flex; align-items: center; justify-content: center; cursor: grab; transition: transform .25s cubic-bezier(.2,.8,.2,1), filter .25s; filter: drop-shadow(0 12px 18px rgba(0,0,0,.7)); }
.perilla svg { display: block; transition: transform .4s cubic-bezier(.34,1.56,.64,1); transform-origin: 50% 50%; }
.arrastrando .perilla { cursor: grabbing; transform: scale(1.08); filter: drop-shadow(0 12px 18px rgba(0,0,0,.7)) drop-shadow(0 0 14px rgba(201,155,93,.45)); }
.perilla:focus-visible { outline: 2px solid var(--bronce-claro); outline-offset: 6px; }
.perilla:focus-visible svg { transform: scale(1.05); }
.pista .perilla { animation: pista 1.6s ease-in-out 3; }
@keyframes pista { 0%, 100% { transform: translateX(0); } 30% { transform: translateX(-10px); } 60% { transform: translateX(10px); } }
.escenario.cerca .perilla svg { transform: scale(1.05); }
.escenario.cerca .filo-tirador, .tirador:focus-within .filo-tirador { box-shadow: 0 0 22px 3px rgba(201,155,93,.5); }
.escenario:focus-within .pantalla, .escenario:focus-within .papel { translate: 0 -3px; }
.escenario:focus-within .papel { box-shadow: inset 0 1px 0 rgba(255,255,255,.55), 0 1px 2px rgba(0,0,0,.45), 0 24px 34px -18px rgba(0,0,0,.9), 26px 42px 52px -26px rgba(0,0,0,.85), 0 72px 100px -50px rgba(0,0,0,.7); }
.nota-comp { position: absolute; z-index: 2; font-family: var(--mono); font-size: 13px; letter-spacing: .06em; text-transform: uppercase; background: var(--bronce); color: var(--negro); padding: 5px 9px 4px; white-space: nowrap; pointer-events: none; box-shadow: 0 8px 18px -8px rgba(0,0,0,.8); }
.etq-comp { position: absolute; z-index: 2; font-family: var(--mono); font-size: 12px; letter-spacing: .12em; text-transform: uppercase; padding: 4px 9px; pointer-events: none; transition: opacity .3s; top: 10px; color: var(--negro); }
.etq-antes { left: 116px; background: var(--hueso); }
.etq-despues { right: 116px; background: var(--bronce); }
.diagnostico { padding-top: 96px; padding-bottom: 88px; }
.halo-camara { left: 0; right: 0; top: -200px; bottom: -200px; background: linear-gradient(180deg, rgba(7,8,10,0) 0%, rgba(7,8,10,.92) 18%, rgba(7,8,10,.92) 82%, rgba(7,8,10,0) 100%); }
.halo-diag { left: -160px; top: 380px; width: 720px; height: 1000px; background: radial-gradient(closest-side, rgba(201,155,93,.07), rgba(201,155,93,0)); }
.diag-cabeza .rotulo { margin-bottom: 16px; }
.aviso-linea { display: flex; flex-direction: column; gap: 6px; padding-left: 14px; border-left: 1px solid var(--bronce); }
.aviso-linea .marca-aviso { font-family: var(--mono); font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--bronce); line-height: 1.4; }
.aviso-linea > span:last-child { font-size: 16px; line-height: 1.5; color: var(--gris-2); }
.diag-aviso { margin-top: 24px; }
.diag-grid { margin-top: 36px; }
.diag-progreso { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding-bottom: 12px; }
.diag-progreso p { font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--gris-2); }
.segmentos { display: flex; gap: 5px; }
.segmentos span { display: block; width: 28px; height: 3px; background: #2A2F34; transition: background-color .3s; }
.segmentos span.actual { background: var(--gris); }
.segmentos span.ok { background: var(--bronce); }
.respondidas { border-bottom: 1px solid var(--linea); }
.respuesta-fila { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 52px; padding: 6px 0; border-top: 1px solid var(--linea); }
.respuesta-fila .rf-textos { display: flex; flex-direction: column; min-width: 0; line-height: 1.35; }
.respuesta-fila .rf-corto { font-family: var(--mono); font-size: 11px; letter-spacing: .08em; text-transform: uppercase; color: var(--gris); }
.respuesta-fila .rf-respuesta { font-size: 16px; font-weight: 600; color: var(--bronce-claro); }
.cambiar { min-height: 44px; padding: 0 12px; border: 1px solid #33393F; border-radius: 2px; font-family: var(--mono); font-size: 12px; letter-spacing: .08em; text-transform: uppercase; color: var(--hueso); flex: none; transition: color .25s, border-color .25s, transform .2s cubic-bezier(.2,.8,.2,1); }
.pregunta-actual { margin-top: 20px; }
.pregunta { display: flex; flex-direction: column; gap: 16px; }
.pregunta-cabeza { border-top: 1px solid #262B30; padding-top: 14px; }
.num-pregunta { font-family: var(--mono); font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--bronce); margin-bottom: 6px; }
.pregunta-texto { font-family: var(--serif); font-size: 32px; line-height: 1.06; color: var(--hueso); text-wrap: balance; }
.pregunta-ayuda { font-size: 16px; color: var(--gris-2); margin-top: 6px; }
.opciones { display: flex; flex-direction: column; gap: 8px; }
.opcion { display: flex; align-items: center; gap: 12px; width: 100%; min-height: 54px; padding: 12px 16px; text-align: left; font-family: var(--sans); font-size: 17px; font-weight: 500; line-height: 1.3; border-radius: 2px; background: rgba(17,20,23,.6); color: var(--hueso); border: 1px solid #2E3338; transition: border-color .18s, background-color .18s, color .18s, transform .2s cubic-bezier(.2,.8,.2,1); }
.opcion[aria-pressed="true"] { background: var(--bronce); color: var(--negro); border-color: var(--bronce); }
.casilla { display: inline-flex; align-items: center; justify-content: center; flex: none; width: 20px; height: 20px; border-radius: 50%; border: 1.5px solid #6E6B66; }
.casilla.cuadrada { border-radius: 2px; }
.opcion[aria-pressed="true"] .casilla { background: var(--negro); border-color: var(--negro); }
.casilla svg { width: 12px; height: 12px; }
.listo-fila { display: flex; flex-direction: column; gap: 6px; }
.listo { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 54px; font-family: var(--sans); font-size: 17px; font-weight: 600; border-radius: 2px; background: transparent; color: var(--gris); border: 1px solid #2A2F34; cursor: not-allowed; transition: color .25s, border-color .25s, transform .2s cubic-bezier(.2,.8,.2,1); }
.listo[aria-disabled="false"] { background: var(--hueso); color: var(--negro); border-color: var(--hueso); cursor: pointer; }
.listo-ayuda { font-size: 16px; color: var(--gris-2); text-align: center; }
.final { display: flex; flex-direction: column; gap: 16px; border-top: 1px solid #262B30; padding-top: 14px; }
.final-cabeza { display: flex; gap: 12px; align-items: flex-start; }
.final-cabeza svg { flex: none; width: 26px; height: 26px; margin-top: 4px; }
.final-titulo { font-family: var(--serif); font-size: 30px; line-height: 1.06; color: var(--hueso); }
.final-texto { font-size: 16px; line-height: 1.5; color: var(--gris-2); margin-top: 6px; }
.reiniciar { align-self: center; min-height: 44px; padding: 0 12px; font-size: 16px; color: var(--gris-2); }
.reiniciar > span { border-bottom: 1px solid #3A4046; }
.pasos-envio { font-size: 16px; line-height: 1.45; color: var(--gris-2); }
.pasos-envio li { display: grid; grid-template-columns: 34px 1fr; padding: 10px 0; border-top: 1px solid var(--linea); }
.pasos-envio .mono { font-size: 12px; color: var(--bronce); padding-top: 3px; }
.diag-directo { margin-top: 20px; padding-top: 10px; border-top: 1px solid var(--linea); font-size: 16px; line-height: 1.5; color: var(--gris-2); }
.diag-directo a { color: var(--hueso); }
.diag-hoja-col { margin-top: 40px; }
.hoja-cabeza { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-bottom: 14px; }
.hoja-cabeza p { font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--gris); }
.hoja-cabeza .hoja-estado { font-size: 11px; flex: none; }
.hoja-estado.activo { color: var(--bronce); }
.plegar { position: relative; z-index: 1; display: flex; align-items: center; justify-content: space-between; gap: 12px; width: 100%; min-height: 64px; padding: 12px 16px; background: var(--hueso); color: var(--negro); text-align: left; transform: rotate(-.7deg); box-shadow: inset 0 1px 0 rgba(255,255,255,.6), 0 1px 2px rgba(0,0,0,.5), 0 14px 22px -14px rgba(0,0,0,.9), 12px 20px 28px -20px rgba(0,0,0,.7); transition: transform .4s cubic-bezier(.2,.8,.2,1); }
.plegar::before { content: ""; position: absolute; left: 0; right: 0; bottom: -7px; height: 7px; background: #DDD6C6; transform: rotate(.9deg); transform-origin: 0 0; z-index: -1; box-shadow: 0 8px 12px -6px rgba(0,0,0,.7); }
.plegar-textos { display: flex; flex-direction: column; line-height: 1.3; min-width: 0; }
.plegar-titulo { font-size: 17px; font-weight: 600; }
.plegar-resumen { font-size: 15px; color: #4A4741; }
.plegar svg { width: 20px; height: 20px; flex: none; transition: transform .3s; }
.plegar[aria-expanded="true"] { transform: rotate(0deg); }
.plegar[aria-expanded="true"] svg { transform: rotate(180deg); }
.plegar:focus-visible { outline: 2px solid var(--bronce-claro); outline-offset: 4px; }
.pila { position: relative; isolation: isolate; margin: 18px 6px 0; filter: drop-shadow(0 1px 1px rgba(0,0,0,.55)) drop-shadow(0 18px 18px rgba(0,0,0,.55)) drop-shadow(10px 22px 22px rgba(0,0,0,.45)); transition: translate .3s cubic-bezier(.2,.8,.2,1), transform .35s cubic-bezier(.2,.8,.2,1), filter .35s ease; }
.pila::before, .pila::after { content: ""; position: absolute; left: 0; right: 0; top: 0; bottom: 0; z-index: -1; background: #E9E4D8; }
.pila::before { transform: translate(4px, 6px) rotate(-.8deg); background: #E4DED0; }
.pila::after { transform: translate(-3px, 10px) rotate(.9deg); background: #DDD6C6; }
.pila:focus-within { translate: 0 -4px; filter: drop-shadow(0 1px 1px rgba(0,0,0,.5)) drop-shadow(0 26px 22px rgba(0,0,0,.55)) drop-shadow(14px 32px 28px rgba(0,0,0,.45)); }
@media (max-width: 1023px) { .pila[data-plegada="true"] { display: none; } }
.hoja { position: relative; padding: 26px 20px; background-color: #F6F3EC; background-image: linear-gradient(160deg, rgba(255,255,255,.5) 0%, rgba(255,255,255,0) 30%, rgba(0,0,0,0) 70%, rgba(60,45,20,.07) 100%); color: var(--negro); transform: rotate(.5deg); transform-origin: 50% 0; box-shadow: inset 0 1px 0 rgba(255,255,255,.6); clip-path: polygon(0 0, 100% 0, 100% calc(100% - 1px), 88% 100%, 71% calc(100% - 2px), 52% 100%, 33% calc(100% - 1px), 14% 100%, 0 calc(100% - 2px)); transition: transform .3s cubic-bezier(.2,.8,.2,1); }
.hoja :focus-visible { outline-color: var(--tinta); }
.hoja-membrete { display: flex; justify-content: space-between; align-items: baseline; gap: 10px; padding-bottom: 10px; margin-bottom: 18px; border-bottom: 3px double var(--negro); }
.hoja-membrete .serif { font-size: 20px; line-height: 1; white-space: nowrap; }
.hoja-membrete .mono { font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: #5E5B55; text-align: right; }
.linea-hoja { display: block; margin-top: 12px; }
.linea-hoja .l-marca { display: none; }
.linea-hoja .l-cuerpo { min-width: 0; }
.linea-hoja .l-fila { display: flex; align-items: flex-start; justify-content: space-between; gap: 8px; }
.linea-hoja .l-texto { font-family: var(--sans); font-size: 17px; font-weight: 600; line-height: 1.35; color: var(--negro); }
.linea-hoja .l-sub { font-family: var(--sans); font-size: 16px; line-height: 1.45; color: #5E5B55; margin-top: 2px; }
.l-titulo { margin: 0 0 6px; }
.l-titulo .l-texto { font-family: var(--serif); font-weight: 400; font-size: 36px; line-height: 1.04; letter-spacing: -0.01em; min-height: 38px; text-wrap: balance; }
.l-meta { margin: 0 0 4px; }
.l-meta .l-texto { font-family: var(--mono); font-weight: 400; font-size: 11px; letter-spacing: .08em; line-height: 1.5; text-transform: uppercase; color: #5E5B55; }
.l-espera { margin-top: 24px; }
.l-espera .l-texto { font-weight: 400; font-size: 16px; color: #5E5B55; }
.l-seccion { margin-top: 22px; padding-top: 12px; border-top: 1px solid #DCD5C7; }
.l-seccion .l-texto { font-family: var(--mono); font-size: 11px; letter-spacing: .14em; text-transform: uppercase; font-weight: 500; color: #7A5A2F; }
.l-modulo { display: grid; grid-template-columns: 24px minmax(0, 1fr); gap: 0 6px; align-items: start; }
.l-modulo .l-marca { display: block; font-family: var(--mono); font-size: 12px; color: #7A5A2F; padding-top: 3px; }
.l-destacado { padding: 12px 14px; background: #ECE6D8; }
.l-destacado .l-sub { color: #4A4741; }
.linea-hoja.quitado .l-texto { text-decoration: line-through; text-decoration-color: var(--tinta); text-decoration-thickness: 2px; color: #8C877E; }
.linea-hoja.quitado .l-sub { text-decoration: line-through; text-decoration-color: var(--tinta); text-decoration-thickness: 1px; color: #8C877E; }
.cursor-hoja { display: inline-block; width: 2px; height: 1em; background: var(--tinta); margin-left: 2px; vertical-align: -0.14em; animation: parpadeo 1s steps(1) infinite; }
@keyframes parpadeo { 50% { opacity: 0; } }
.quitar { min-height: 44px; min-width: 44px; margin: -12px -10px -12px 0; padding: 0 10px; font-family: var(--mono); font-size: 12px; letter-spacing: .08em; text-transform: uppercase; color: #4A4741; flex: none; transition: color .25s, border-color .25s, background-color .25s, transform .2s cubic-bezier(.2,.8,.2,1); }
.quitar > span { border-bottom: 1px solid rgba(12,14,16,.3); }
.quitar:focus-visible { outline-color: var(--tinta); }
.hoja-faltan { margin-top: 24px; padding-top: 12px; border-top: 1px solid #DCD5C7; display: flex; flex-direction: column; gap: 10px; }
.fantasma { height: 10px; background: linear-gradient(90deg, #E6E0D3 0%, #EFEAE0 50%, #E6E0D3 100%); background-size: 200% 100%; animation: brillo 1.8s linear infinite; }
@keyframes brillo { from { background-position: 100% 0; } to { background-position: -100% 0; } }
.hoja-faltan p { font-size: 12px; color: #5E5B55; margin-top: 4px; }
.hoja-nota { display: block; margin-top: 24px; padding-top: 12px; border-top: 1px solid #DCD5C7; }
.hoja-nota > span { display: block; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; font-weight: 500; color: #7A5A2F; margin-bottom: 8px; }
.nota-hoja { display: block; width: 100%; min-height: 96px; resize: vertical; font-family: var(--serif); font-style: italic; font-size: 22px; line-height: 1.35; color: var(--tinta); background: repeating-linear-gradient(to bottom, transparent 0, transparent 29px, rgba(43,76,126,.2) 29px, rgba(43,76,126,.2) 30px); border: 0; border-bottom: 1px solid rgba(12,14,16,.2); border-radius: 0; padding: 2px 2px 6px; outline: none; }
.nota-hoja::placeholder { color: #6E695F; }
.nota-hoja:focus-visible { outline: 2px solid var(--tinta); outline-offset: 4px; }
.hoja-pie { margin-top: 22px; font-size: 16px; line-height: 1.5; color: #4A4741; }
.hoja-pie strong { font-weight: 600; color: var(--negro); }
.vista-previa { margin-top: 40px; display: flex; flex-direction: column; align-items: flex-end; gap: 10px; }
.vista-previa > .mono { font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: var(--gris); text-align: right; }
.burbuja-wa { max-width: 94%; background: #231E17; border: 1px solid #3F3324; border-radius: 10px 10px 2px 10px; padding: 12px 14px; font-size: 16px; line-height: 1.5; color: var(--hueso); white-space: pre-line; overflow-wrap: anywhere; box-shadow: 0 18px 30px -20px rgba(0,0,0,.9); }
.envio-nota { font-size: 16px; line-height: 1.45; color: var(--gris-2); text-align: right; }
.envio-nota a { margin-left: 4px; color: var(--hueso); }
@media (min-width: 601px) and (max-width: 1023px) {
  .diagnostico { padding-top: 120px; padding-bottom: 104px; }
  .halo-diag { left: 20%; width: 900px; }
  .diag-grid { max-width: 680px; }
  .opciones { display: grid; grid-template-columns: 1fr 1fr; }
  .pregunta-texto { font-size: 38px; }
  .pila { margin: 18px 6px 0; }
  .hoja { padding: 34px 36px; }
  .burbuja-wa { max-width: 520px; }
}
@media (min-width: 1024px) {
  .diagnostico { padding-top: calc(140 * var(--u)); padding-bottom: calc(120 * var(--u)); }
  .halo-camara { top: -260px; bottom: -260px; background: linear-gradient(180deg, rgba(7,8,10,0) 0%, rgba(7,8,10,.92) 16%, rgba(7,8,10,.92) 84%, rgba(7,8,10,0) 100%); }
  .halo-diag { left: calc(560 * var(--u)); top: calc(220 * var(--u)); width: calc(1100 * var(--u)); height: calc(1300 * var(--u)); background: radial-gradient(closest-side, rgba(201,155,93,.075), rgba(201,155,93,0)); }
  .diag-cabeza { max-width: calc(1080 * var(--u)); }
  .diag-cabeza .rotulo { margin-bottom: 24px; }
  .diag-cabeza .titulo-sec { font-size: calc(80 * var(--u)); line-height: .96; }
  .aviso-linea { flex-direction: row; align-items: center; gap: 16px; padding-left: 0; border-left: 0; }
  .aviso-linea .marca-aviso { flex: none; display: inline-flex; align-items: center; gap: 12px; font-size: 13px; line-height: 1.55; }
  .aviso-linea .marca-aviso::before { content: ""; width: 1px; height: 18px; background: var(--bronce); display: block; }
  .diag-aviso { margin-top: calc(34 * var(--u)); }
  .diag-aviso > span:last-child { font-size: 17px; }
  .diag-grid { margin-top: calc(64 * var(--u)); display: grid; grid-template-columns: calc(540 * var(--u)) 1fr; column-gap: 0; }
  .diag-preguntas { padding: 8px calc(56 * var(--u)) 8px 0; display: flex; flex-direction: column; gap: 28px; border-right: 1px solid var(--linea); align-self: start; }
  .diag-progreso { gap: 16px; padding-bottom: 0; }
  .diag-progreso p { font-size: 13px; }
  .segmentos { gap: 6px; }
  .segmentos span { width: 34px; }
  .diag-panel { display: flex; flex-direction: column; gap: 30px; }
  .pregunta-e { display: flex; flex-direction: column; gap: 14px; }
  .pregunta-e .pe-cabeza { display: flex; gap: 12px; align-items: flex-start; }
  .pregunta-e .num-e { font-family: var(--mono); font-size: 13px; letter-spacing: .06em; color: var(--bronce); flex: none; width: 26px; padding-top: 14px; }
  .pregunta-e .pe-titulo { flex: 1; border-top: 1px solid #262B30; padding-top: 12px; }
  .pregunta-e .pe-texto { font-size: 20px; font-weight: 500; line-height: 1.35; color: var(--hueso); }
  .pregunta-e .pe-ayuda { font-size: 15px; color: var(--gris-2); margin-top: 3px; }
  .pregunta-e .pe-cuerpo { display: flex; flex-direction: column; gap: 12px; padding-left: 38px; }
  .opciones-e { display: flex; flex-wrap: wrap; gap: 8px; }
  .opcion-e { display: inline-flex; align-items: center; gap: 9px; font-family: var(--sans); font-size: 15px; font-weight: 500; line-height: 1.3; padding: 10px 15px; border-radius: 2px; background: rgba(17,20,23,.6); color: var(--hueso); border: 1px solid #2E3338; transition: background-color .25s, color .25s, border-color .25s, box-shadow .35s, transform .15s; }
  .opcion-e[aria-pressed="true"] { background: var(--bronce); color: var(--negro); border-color: var(--bronce); }
  .casilla-e { display: inline-flex; align-items: center; justify-content: center; width: 16px; height: 16px; border-radius: 1px; border: 1px solid #6E6B66; }
  .opcion-e[aria-pressed="true"] .casilla-e { background: var(--negro); border-color: var(--negro); }
  .casilla-e svg { width: 10px; height: 10px; }
  .listo-e-fila { display: flex; align-items: center; gap: 14px; }
  .listo-e { font-family: var(--sans); font-size: 15px; font-weight: 600; padding: 10px 16px; border-radius: 2px; background: transparent; color: var(--gris); border: 1px solid #2A2F34; cursor: not-allowed; transition: background-color .25s, color .25s, border-color .25s, transform .15s; }
  .listo-e[aria-disabled="false"] { background: var(--hueso); color: var(--negro); border-color: var(--hueso); cursor: pointer; }
  .listo-e-fila .listo-ayuda { font-size: 15px; text-align: left; }
  .respuesta-chip { display: inline-flex; align-items: center; gap: 12px; background: var(--bronce); color: var(--negro); border-radius: 2px; padding: 10px 14px; font-size: 15px; font-weight: 600; line-height: 1.35; text-align: left; max-width: 440px; transition: background-color .25s, color .25s, border-color .25s, box-shadow .35s, transform .15s; }
  .respuesta-chip .rc-cambiar { font-family: var(--mono); font-size: 12px; letter-spacing: .08em; text-transform: uppercase; font-weight: 500; border-left: 1px solid rgba(12,14,16,.3); padding-left: 10px; flex: none; }
  .final-e { display: flex; flex-direction: column; gap: 18px; }
  .final-e .pe-cuerpo { gap: 16px; }
  .final-e .fe-titulo { font-size: 20px; font-weight: 500; line-height: 1.35; color: var(--hueso); }
  .final-e .fe-texto { font-size: 16px; line-height: 1.5; color: var(--gris-2); margin-top: 4px; }
  .final-e .fe-acciones { display: flex; flex-wrap: wrap; align-items: center; gap: 18px; }
  .final-e .btn { font-size: 17px; padding: 16px 22px; }
  .final-e .reiniciar-e { font-size: 15px; color: var(--gris-2); border-bottom: 1px solid #3A4046; padding-bottom: 1px; }
  .final-e .pasos-e { display: flex; flex-wrap: wrap; gap: 6px 22px; font-size: 14px; line-height: 1.45; color: var(--gris-2); }
  .final-e .pasos-e .mono { font-size: 12px; color: var(--bronce); margin-right: 8px; }
  .diag-directo { margin-top: 0; padding-top: 18px; }
  .diag-directo .linea-bronce { border-bottom: 1px solid var(--bronce); }
  .diag-hoja-col { margin-top: 0; padding: 8px 8px 20px calc(64 * var(--u)); }
  .diag-hoja-pegada { position: sticky; top: 96px; }
  .hoja-cabeza { margin-bottom: 22px; gap: 16px; }
  .hoja-cabeza p { font-size: 13px; }
  .hoja-cabeza .hoja-estado { font-size: 12px; }
  .pila { margin: 0; filter: drop-shadow(0 1px 1px rgba(0,0,0,.55)) drop-shadow(0 22px 22px rgba(0,0,0,.55)) drop-shadow(16px 30px 28px rgba(0,0,0,.45)); }
  .pila::before { transform: translate(5px, 7px) rotate(-.8deg); }
  .pila::after { transform: translate(-4px, 12px) rotate(.9deg); }
  .pila:focus-within { translate: none; transform: translateY(-4px); filter: drop-shadow(0 1px 1px rgba(0,0,0,.5)) drop-shadow(0 30px 26px rgba(0,0,0,.55)) drop-shadow(18px 40px 34px rgba(0,0,0,.45)); }
  .hoja { padding: 40px calc(50 * var(--u)) 38px; min-height: 480px; display: flex; flex-direction: column; transform: rotate(.6deg); }
  .hoja-membrete { padding-bottom: 12px; margin-bottom: 26px; }
  .hoja-membrete .serif { font-size: 22px; }
  .hoja-membrete .mono { font-size: 13px; }
  .hoja-lineas { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: 28px; align-items: start; }
  .l-ancho { grid-column: 1 / -1; }
  .linea-hoja .l-texto { font-size: 16px; }
  .linea-hoja .l-sub { font-size: 14.5px; line-height: 1.5; }
  .l-titulo .l-texto { font-size: 46px; min-height: 48px; text-wrap: wrap; }
  .l-meta .l-texto { font-size: 12px; letter-spacing: .1em; }
  .l-espera { margin-top: 30px; }
  .l-seccion .l-texto { font-size: 12px; }
  .l-destacado { padding: 12px 16px; }
  .l-destacado .l-sub { font-size: 14px; }
  .quitar { min-height: 0; min-width: 0; margin: -1px -8px 0 0; padding: 3px 8px; font-size: 13px; letter-spacing: .06em; border: 1px solid rgba(12,14,16,.25); border-radius: 2px; }
  .quitar > span { border: 0; }
  .hoja-faltan { margin-top: 26px; padding-top: 14px; }
  .hoja-faltan p { font-size: 13px; }
  .hoja-nota { margin-top: 30px; padding-top: 14px; }
  .hoja-nota > span { font-size: 13px; }
  .nota-hoja { min-height: 84px; }
  .hoja-pie { margin-top: auto; padding-top: 24px; font-size: 14px; }
  .vista-previa { margin-top: 44px; }
  .vista-previa > .mono { font-size: 13px; }
  .burbuja-wa { max-width: 520px; padding: 14px 18px; font-size: 15px; line-height: 1.55; }
  .envio-nota { font-size: 15px; }
  .envio-nota a { margin-left: 6px; }
  .envio-nota .linea-bronce { border-bottom: 1px solid var(--bronce); }
}
.servicios { padding-inline: 0; padding-top: 88px; padding-bottom: 24px; }
.halo-servicios { left: -240px; top: 40px; width: 760px; height: 900px; background: radial-gradient(closest-side, rgba(236,232,223,.03), rgba(236,232,223,0)); }
.serv-cabeza { padding-inline: var(--margen); }
.serv-cabeza .rotulo { margin-bottom: 16px; }
.serv-bajada { padding: 16px var(--margen) 36px; }
.linea-filo { padding-inline: var(--margen); }
.servicio { display: grid; grid-template-columns: 40px 1fr; column-gap: 14px; padding: 32px var(--margen) 36px; }
.servicio-ultimo { padding-bottom: 44px; }
.icono-serv { width: 40px; height: 40px; grid-column: 1; grid-row: 1; align-self: center; }
.icono-serv * { transition: stroke .6s ease; }
.serv-titulos { display: contents; }
.serv-rotulo { grid-column: 2; grid-row: 1; align-self: center; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--gris); line-height: 1.4; }
.servicio h3 { grid-column: 1 / -1; margin-top: 14px; font-size: 36px; line-height: 1; }
.serv-cuerpo { grid-column: 1 / -1; }
.serv-texto { font-size: 17px; margin-top: 14px; color: var(--hueso); }
.serv-lista { margin-top: 16px; color: var(--gris-2); font-size: 16px; }
.serv-lista li { border-top: 1px solid var(--linea); padding: 10px 0; }
.serv-nota { font-size: 16px; color: var(--gris); margin-top: 6px; }
.serv-ia { margin-top: 18px; display: flex; flex-direction: column; gap: 16px; font-size: 16px; }
.serv-ia li { border-top: 1px solid #7A5A2F; padding-top: 10px; display: flex; flex-direction: column; gap: 4px; }
.serv-ia .mono { font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--bronce); }
.serv-ia span:last-child { color: var(--hueso); }
.halo-serv { position: absolute; inset: 0; z-index: -1; pointer-events: none; opacity: 0; transition: opacity .7s ease; background: radial-gradient(320px 220px at var(--sx, 30%) var(--sy, 40%), rgba(201,155,93,.07), rgba(201,155,93,0) 70%); }
@media (min-width: 601px) and (max-width: 1023px) {
  .servicios { padding-top: 112px; }
  .serv-bajada .bajada { max-width: 620px; }
  .servicio { padding-top: 40px; padding-bottom: 44px; }
  .servicio h3 { font-size: 44px; }
  .serv-cuerpo { max-width: 760px; }
  .serv-lista { display: grid; grid-template-columns: 1fr 1fr; column-gap: 32px; }
  .serv-ia { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px 24px; }
}
@media (min-width: 1024px) {
  .servicios { padding-top: calc(110 * var(--u)); padding-bottom: calc(40 * var(--u)); }
  .halo-servicios { left: calc(-300 * var(--u)); top: 0; width: calc(1200 * var(--u)); height: calc(1100 * var(--u)); }
  .serv-cabeza { padding-bottom: calc(44 * var(--u)); }
  .serv-cabeza .rotulo { margin-bottom: 22px; }
  .serv-cabeza .titulo-sec { font-size: calc(88 * var(--u)); max-width: calc(900 * var(--u)); }
  .serv-bajada { padding: 0 var(--margen) calc(22 * var(--u)) calc(var(--margen) + 630 * var(--u)); }
  .serv-bajada .bajada { max-width: 560px; }
  .servicio { grid-template-columns: calc(64 * var(--u)) calc(470 * var(--u)) 1fr; gap: calc(48 * var(--u)); padding: calc(56 * var(--u)) var(--margen); }
  .servicio-ultimo { padding-bottom: calc(72 * var(--u)); }
  .icono-serv { width: 48px; height: 48px; align-self: start; }
  .serv-titulos { display: block; grid-column: 2; grid-row: 1; }
  .serv-rotulo { font-size: 13px; line-height: 1.55; margin-bottom: 14px; }
  .servicio h3 { margin-top: 0; font-size: max(40px, calc(52 * var(--u))); }
  .serv-cuerpo { grid-column: 3; grid-row: 1; display: flex; flex-direction: column; gap: 20px; }
  .serv-texto { font-size: 18px; margin-top: 0; }
  .serv-lista { margin-top: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 12px calc(40 * var(--u)); }
  .serv-lista li { padding: 10px 0 0; }
  .serv-nota { font-size: 14px; margin-top: 0; }
  .serv-ia { margin-top: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px calc(32 * var(--u)); }
  .serv-ia li { padding-top: 12px; gap: 6px; }
  .serv-ia .mono { font-size: 13px; }
  .halo-serv { transition-duration: .4s; background: radial-gradient(560px 300px at var(--sx, 20%) var(--sy, 50%), rgba(201,155,93,.065), rgba(201,155,93,0) 70%); }
  .icono-serv * { transition-duration: .3s; }
}
.proceso { padding-top: 96px; padding-bottom: 64px; }
.halo-proceso { left: -120px; top: 200px; width: 700px; height: 1100px; background: radial-gradient(closest-side, rgba(201,155,93,.05), rgba(201,155,93,0)); }
.proc-cabeza .rotulo { margin-bottom: 16px; }
.proc-bajada { margin-top: 16px; }
.pasos { margin-top: 40px; }
.paso { position: relative; display: grid; grid-template-columns: 78px minmax(0, 1fr); column-gap: 14px; padding: 24px 0 26px; border-top: 1px solid #2A2F34; }
.numeral { position: relative; font-family: var(--serif); font-size: 112px; line-height: .8; letter-spacing: -0.04em; display: block; color: transparent; background-image: linear-gradient(180deg, #2A2F34 0%, #14171A 100%); -webkit-background-clip: text; background-clip: text; -webkit-text-stroke: 1px #2F353B; transition: transform .35s cubic-bezier(.2,.8,.2,1); }
.numeral-luz { position: absolute; left: 0; top: 0; color: transparent; background-image: linear-gradient(180deg, #E8C48F 0%, #C99B5D 45%, rgba(122,90,47,.55) 100%); -webkit-background-clip: text; background-clip: text; -webkit-text-stroke: 0; opacity: 0; transition: opacity .7s ease; }
.paso.activo .numeral-luz { opacity: 1; }
.paso-cuerpo { position: relative; display: flex; flex-direction: column; gap: 8px; }
.paso-rotulo { font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--gris); transition: color .4s; }
.paso.activo .paso-rotulo { color: var(--bronce); }
.paso h3 { font-size: 30px; line-height: 1.02; }
.paso-texto { font-size: 16px; color: var(--gris-2); }
.paso-pie { margin-top: 4px; padding-top: 10px; border-top: 1px solid var(--linea); font-size: 13px; line-height: 1.5; color: var(--gris-3); }
.paso::before { content: ""; position: absolute; left: 0; right: 0; top: -1px; height: 1px; background: var(--bronce); transform: scaleX(0); transform-origin: left center; transition: transform .45s .3s cubic-bezier(.6,.1,.3,1); pointer-events: none; }
@media (min-width: 601px) and (max-width: 1023px) {
  .proceso { padding-top: 120px; padding-bottom: 80px; }
  .pasos { display: grid; grid-template-columns: 1fr 1fr; column-gap: 40px; }
  .paso { grid-template-columns: 88px minmax(0, 1fr); }
  .numeral { font-size: 124px; }
}
@media (min-width: 1024px) {
  .proceso { padding-top: calc(150 * var(--u)); padding-bottom: calc(120 * var(--u)); }
  .halo-proceso { left: calc(200 * var(--u)); top: calc(220 * var(--u)); width: calc(1300 * var(--u)); height: calc(900 * var(--u)); background: radial-gradient(closest-side, rgba(201,155,93,.045), rgba(201,155,93,0)); }
  .proc-cabeza { display: flex; align-items: baseline; gap: calc(40 * var(--u)); }
  .proc-cabeza .rotulo { flex: none; margin-bottom: 0; }
  .proc-cabeza .titulo-sec { font-size: calc(72 * var(--u)); line-height: 1; }
  .proc-bajada { margin: 18px 0 0 calc(226 * var(--u)); font-size: 18px; line-height: 1.55; }
  .pasos { margin-top: calc(56 * var(--u)); display: grid; grid-template-columns: repeat(4, 1fr); gap: calc(36 * var(--u)); }
  .paso { display: flex; flex-direction: column; padding: 0; border-top: 0; }
  .paso::before { content: none; }
  .numeral { font-size: calc(240 * var(--u)); line-height: .78; margin-bottom: calc(26 * var(--u)); -webkit-text-stroke: 1px #2A3036; }
  .paso-cuerpo { border-top: 1px solid #2A2F34; padding-top: 20px; gap: 14px; flex: 1; }
  .paso-cuerpo::before { content: ""; position: absolute; left: 0; right: 0; top: -1px; height: 1px; background: var(--bronce); transform: scaleX(0); transform-origin: left center; transition: transform .4s cubic-bezier(.6,.1,.3,1); pointer-events: none; }
  .paso-rotulo { font-size: 13px; }
  .paso h3 { font-size: max(32px, calc(40 * var(--u))); line-height: 1; }
  .paso-pie { margin-top: auto; padding-top: 12px; }
}
.compromisos { padding-top: 24px; padding-bottom: 88px; }
.comp2-titulo { font-weight: 400; padding-bottom: 20px; }
.linea-comp { display: flex; flex-direction: column; gap: 10px; padding: 22px 0 26px; border-top: 1px solid var(--linea); }
.comp-pregunta-titulo { display: flex; flex-direction: column; gap: 10px; }
.comp-pregunta { font-size: 14px; line-height: 1.45; color: var(--gris); transition: color .5s ease .15s; }
.comp-titulo { position: relative; display: inline-block; align-self: flex-start; font-size: 36px; line-height: 1.04; letter-spacing: -0.01em; color: var(--hueso); text-wrap: balance; transition: color .3s; }
.subrayado { position: absolute; left: 0; bottom: -7px; width: 100%; height: 12px; overflow: visible; }
.subrayado path { fill: none; stroke: var(--bronce); stroke-width: 2.5; stroke-linecap: round; stroke-dasharray: 100 140; stroke-dashoffset: 65; transition: stroke-dashoffset 1.1s cubic-bezier(.6,.1,.3,1); }
.comp-vistos .subrayado path { stroke-dashoffset: 0; }
.comp-detalle { font-size: 16px; margin-top: 4px; color: var(--gris-2); transition: color .5s ease .15s; }
@media (min-width: 601px) and (max-width: 1023px) {
  .compromisos { padding-top: 40px; padding-bottom: 104px; }
  .comp-titulo { font-size: 48px; }
  .comp-detalle { font-size: 17px; max-width: 560px; }
}
@media (min-width: 1024px) {
  .compromisos { padding-top: calc(40 * var(--u)); padding-bottom: calc(140 * var(--u)); }
  .comp2-titulo { padding-bottom: 30px; }
  .linea-comp { display: grid; grid-template-columns: 1fr calc(400 * var(--u)); gap: calc(56 * var(--u)); align-items: end; padding: 28px 0 34px; }
  .comp-pregunta-titulo { gap: 12px; }
  .comp-titulo { font-size: calc(68 * var(--u)); line-height: 1.02; letter-spacing: -0.012em; text-wrap: wrap; }
  .subrayado { bottom: -8px; height: 14px; }
  .comp-detalle { font-size: 17px; padding-bottom: 8px; margin-top: 0; transition: color .3s ease; }
  .comp-pregunta { transition: color .3s ease; }
}
.casos { padding-top: 24px; padding-bottom: 96px; }
.halo-casos { left: -200px; top: 60px; width: 790px; height: 1000px; background: radial-gradient(closest-side, rgba(236,232,223,.03), rgba(236,232,223,0)); }
.casos-rotulos .rotulo { margin-bottom: 14px; }
.casos-rotulos .aviso-linea { margin-bottom: 26px; }
.casos-rotulos .aviso-linea > span:last-child { color: var(--gris-3); }
.casos-cabeza .bajada { margin-top: 16px; }
.casos-grilla { margin-top: 36px; display: flex; flex-direction: column; gap: 44px; }
.casos-divisor { display: none; }
.caso { display: flex; flex-direction: column; gap: 14px; }
.caso-rotulo { font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--bronce); }
.caso h3 { font-size: 32px; line-height: 1.02; }
.caso-lista { font-size: 16px; color: var(--gris-2); }
.caso-lista li { border-top: 1px solid var(--linea); padding: 10px 0; }
.caso-lista li:last-child { border-bottom: 1px solid var(--linea); }
@media (min-width: 601px) and (max-width: 1023px) {
  .casos { padding-top: 40px; padding-bottom: 112px; }
  .casos-grilla { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; }
  .caso h3 { font-size: 36px; }
}
@media (min-width: 1024px) {
  .casos { padding-top: calc(60 * var(--u)); padding-bottom: calc(150 * var(--u)); }
  .halo-casos { left: calc(-100 * var(--u)); width: calc(1640 * var(--u)); }
  .casos-rotulos { display: flex; align-items: center; flex-wrap: wrap; gap: 12px 28px; margin-bottom: 24px; }
  .casos-rotulos .rotulo, .casos-rotulos .aviso-linea { margin-bottom: 0; }
  .casos-rotulos .aviso-linea > span:last-child { font-size: 16px; }
  .casos-cabeza { display: grid; grid-template-columns: 1fr calc(400 * var(--u)); gap: calc(64 * var(--u)); align-items: end; margin-bottom: calc(64 * var(--u)); }
  .casos-cabeza .titulo-sec { font-size: calc(80 * var(--u)); }
  .casos-cabeza .bajada { margin-top: 0; padding-bottom: 8px; }
  .casos-grilla { margin-top: 0; display: grid; grid-template-columns: 1fr 1px 1fr; gap: calc(56 * var(--u)); }
  .casos-divisor { display: block; background: linear-gradient(180deg, rgba(31,35,39,0), #1F2327 20%, #1F2327 80%, rgba(31,35,39,0)); }
  .caso { gap: 20px; padding: 8px 0; }
  .caso-rotulo { font-size: 13px; }
  .caso h3 { font-size: max(38px, calc(48 * var(--u))); line-height: 1; }
  .caso-lista { margin-top: 6px; }
  .caso-lista li { padding: 11px 0; }
}
.contacto { padding-top: 96px; }
.luz-contacto { -webkit-mask-image: linear-gradient(to bottom, transparent 0%, #000 20%, #000 75%, transparent 100%); mask-image: linear-gradient(to bottom, transparent 0%, #000 20%, #000 75%, transparent 100%); }
.contacto .rotulo { margin-bottom: 16px; }
.contacto-titulo { font-size: 52px; line-height: .95; letter-spacing: -0.016em; }
.contacto-titulo em { font-style: italic; }
.contacto-lado .bajada { margin-top: 18px; }
.btn-contacto { display: flex; width: 100%; margin-top: 26px; min-height: 58px; font-size: 18px; }
.datos-contacto { margin-top: 30px; font-size: 16px; color: var(--gris-3); }
.datos-contacto dt { font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--gris); padding-top: 14px; border-top: 1px solid var(--linea); }
.datos-contacto dd { padding-bottom: 14px; }
.datos-contacto .dato-numero { font-size: 17px; color: var(--hueso); }
.quien-atiende { display: grid; grid-template-columns: 60px 1fr; gap: 16px; align-items: center; padding-top: 18px; border-top: 1px solid var(--linea); }
.quien-atiende svg { width: 60px; height: 60px; }
.quien-datos { display: flex; flex-direction: column; gap: 4px; }
.quien-nombre { font-size: 17px; font-weight: 600; color: var(--hueso); }
.quien-lugar { font-size: 16px; color: var(--gris-2); }
.quien-datos .aviso-linea { margin-top: 10px; }
.pie { padding: 0 var(--margen) 24px; margin-top: 56px; }
.pie-fila { display: flex; flex-direction: column; gap: 6px; padding-top: 22px; font-size: 14px; line-height: 1.5; color: var(--gris); }
.pie-marca { display: inline-flex; align-items: flex-start; gap: 10px; }
.pie-marca svg { flex: none; margin-top: 2px; }
.barra-wa { position: sticky; bottom: 0; z-index: 20; padding: 22px 20px calc(12px + env(safe-area-inset-bottom, 0px)); background: linear-gradient(180deg, rgba(12,14,16,0) 0%, rgba(12,14,16,.9) 34%, #0C0E10 100%); }
@media (min-width: 601px) and (max-width: 1023px) {
  .contacto { padding-top: 120px; }
  .contacto-titulo { font-size: clamp(52px, 8.4vw, 80px); }
  .contacto-lado { max-width: 560px; }
  .btn-contacto { display: inline-flex; width: auto; }
  .pie { padding-bottom: 32px; }
  .pie-fila { flex-direction: row; justify-content: space-between; gap: 24px; }
}
@media (min-width: 1024px) {
  .contacto { padding-top: calc(170 * var(--u)); }
  .luz-contacto { -webkit-mask-image: linear-gradient(to bottom, transparent 0%, #000 22%, #000 72%, transparent 100%); mask-image: linear-gradient(to bottom, transparent 0%, #000 22%, #000 72%, transparent 100%); }
  .contacto-grid { display: grid; grid-template-columns: 1fr calc(470 * var(--u)); gap: calc(80 * var(--u)); align-items: end; padding-bottom: calc(130 * var(--u)); }
  .contacto .rotulo { margin-bottom: 26px; }
  .contacto-titulo { font-size: calc(116 * var(--u)); line-height: .92; letter-spacing: -0.022em; }
  .contacto-lado { display: flex; flex-direction: column; gap: 28px; min-width: 330px; }
  .contacto-lado .bajada { margin-top: 0; }
  .btn-contacto { margin-top: 0; min-height: 0; justify-content: center; font-size: 18px; padding: 20px 24px; }
  .datos-contacto { margin-top: 0; display: grid; grid-template-columns: 120px 1fr; gap: 14px 20px; }
  .datos-contacto dt { font-size: 13px; padding-top: 3px; border-top: 0; }
  .datos-contacto dd { padding-bottom: 0; }
  .quien-atiende { grid-template-columns: 72px 1fr; gap: 18px; padding-top: 20px; }
  .quien-atiende svg { width: 72px; height: 72px; }
  .quien-nombre { font-size: 18px; }
  .quien-lugar { font-size: 15px; }
  .quien-datos .aviso-linea { margin-top: 6px; }
  .quien-datos .aviso-linea > span:last-child { font-size: 14px; }
  .pie { margin-top: 0; padding-bottom: 38px; }
  .pie-fila { flex-direction: row; justify-content: space-between; align-items: center; padding-top: 28px; }
  .pie-marca { align-items: center; gap: 12px; }
  .pie-marca svg { margin-top: 0; }
}
a, button { -webkit-tap-highlight-color: transparent; }
@media (hover: hover) {
  a:hover { color: var(--bronce-claro); }
  a.btn-bronce:hover { color: var(--negro); }
  .btn-bronce:hover { background: var(--bronce-claro); box-shadow: 0 14px 40px -14px rgba(201,155,93,.55), inset 0 1px 0 rgba(255,236,205,.45); }
  .btn-linea:hover { border-color: var(--bronce); color: var(--hueso); }
  .btn:hover .brillo { opacity: 1; transition-duration: .3s; }
  .enlace-sub:hover { color: var(--hueso); }
  .enlace-sub:hover > span { border-color: var(--bronce); }
  .nav a:not(.btn):hover { color: var(--hueso); }
  .birome:hover::after, a:hover .birome::after, button:hover .birome::after, .nav a:not(.btn):hover::after { clip-path: inset(0 0 0 0); transition: clip-path .35s 0s cubic-bezier(.6,.1,.3,1); }
  .boton-menu:hover, .cambiar:hover { border-color: var(--bronce); }
  .tab:hover { color: var(--hueso); }
  .tab:hover .tab-indice { color: var(--bronce); }
  .opcion:hover, .opcion-e:hover { border-color: var(--bronce); }
  .respuesta-chip:hover { background: var(--bronce-claro); }
  .quitar:hover { color: var(--negro); }
  .menu-lista a:hover { color: var(--bronce-claro); }
  .pila:hover { transform: translateY(-4px); filter: drop-shadow(0 1px 1px rgba(0,0,0,.5)) drop-shadow(0 30px 26px rgba(0,0,0,.55)) drop-shadow(18px 40px 34px rgba(0,0,0,.45)); }
  .escenario:hover .pantalla { translate: 0 -3px; }
  .escenario:hover .papel { translate: 0 -3px; box-shadow: inset 0 1px 0 rgba(255,255,255,.55), 0 1px 2px rgba(0,0,0,.45), 0 24px 34px -18px rgba(0,0,0,.9), 26px 42px 52px -26px rgba(0,0,0,.85), 0 72px 100px -50px rgba(0,0,0,.7); }
  .perilla:hover { transform: scale(1.08); filter: drop-shadow(0 12px 18px rgba(0,0,0,.7)) drop-shadow(0 0 14px rgba(201,155,93,.45)); }
  .servicio:hover .halo-serv { opacity: 1; }
  .servicio:hover .icono-serv * { stroke: var(--bronce-claro); }
  .paso:hover .numeral-luz { opacity: 1; transition-duration: .35s; }
  .paso:hover .paso-rotulo { color: var(--bronce); }
  .paso:hover::before { transform: scaleX(1); transition: transform .25s 0s cubic-bezier(.6,.1,.3,1); }
  .linea-comp:hover .subrayado path { stroke-dashoffset: 0; }
  .linea-comp:hover .comp-titulo { color: #F3EFE6; }
  .linea-comp:hover .comp-pregunta { color: var(--bronce); transition-delay: 0s; }
  .linea-comp:hover .comp-detalle { color: var(--gris-3); transition-delay: 0s; }
}
@media (hover: hover) and (min-width: 1024px) {
  .paso:hover .numeral { transform: translateY(-4px); }
  .paso:hover .paso-cuerpo::before { transform: scaleX(1); }
}
@media (hover: hover) and (pointer: fine) {
  .pila:hover:not(:focus-within) .hoja { transform: perspective(1600px) rotateX(var(--ix, 0deg)) rotateY(var(--iy, 0deg)) rotate(.6deg); }
}
.btn:active .brillo { opacity: 1; transition-duration: .08s; }
.btn:active, .opcion:active, .opcion-e:active, .respuesta-chip:active, .listo-e[aria-disabled="false"]:active, .cambiar:active, .quitar:active, .tab:active, .boton-menu:active, .listo[aria-disabled="false"]:active, .interruptor button:active { transform: translateY(1px) scale(.985); }
.interruptor:active .interruptor-bola { box-shadow: 0 6px 16px -8px rgba(0,0,0,.9), 0 0 18px 1px rgba(201,155,93,.4); transition: transform .4s cubic-bezier(.65,0,.25,1), background-color .4s, box-shadow .12s ease; }
.plegar:active { transform: rotate(-.7deg) translateY(1px) scale(.992); transition-duration: .1s; }
.plegar[aria-expanded="true"]:active { transform: translateY(1px) scale(.992); }
.tab:active .tab-indice { color: var(--bronce); }
a:active .birome::after, button:active .birome::after { clip-path: inset(0 0 0 0); transition: clip-path .14s 0s cubic-bezier(.6,.1,.3,1); }
.menu-lista a:active { color: var(--bronce-claro); transition-duration: .1s; }
.menu-lista a:active svg { transform: translateY(2px); transition-duration: .12s; }
@media (hover: none) {
  .btn-bronce:active { background: var(--bronce-claro); box-shadow: 0 14px 34px -14px rgba(201,155,93,.55), inset 0 1px 0 rgba(255,236,205,.45); }
  .escena .papel:active { box-shadow: inset 0 1px 0 rgba(255,255,255,.55), 0 1px 2px rgba(0,0,0,.45), 0 22px 30px -16px rgba(0,0,0,.9), 20px 34px 44px -24px rgba(0,0,0,.85), 0 60px 90px -44px rgba(0,0,0,.7); transition: transform .7s cubic-bezier(.2,.8,.2,1), opacity .45s .3s ease, box-shadow .15s ease; }
  .servicio:active .halo-serv { opacity: 1; transition-duration: .15s; }
  .servicio:active .icono-serv * { stroke: var(--bronce-claro); transition-duration: .15s; }
  .paso:active::before { transform: scaleX(1); transition: transform .25s 0s cubic-bezier(.6,.1,.3,1); }
  .paso:active .paso-cuerpo::before { transform: scaleX(1); }
  .paso:active .numeral-luz { opacity: 1; transition-duration: .25s; }
  .paso:active .paso-rotulo { color: var(--bronce); transition-duration: .15s; }
  .linea-comp:active .comp-pregunta { color: var(--bronce); transition: color .15s ease 0s; }
  .linea-comp:active .comp-detalle { color: var(--gris-3); transition: color .15s ease 0s; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
  .subrayado path { stroke-dashoffset: 0; }
  .charco { display: none !important; }
  .btn:active, .opcion:active, .opcion-e:active, .respuesta-chip:active, .cambiar:active, .quitar:active, .tab:active, .boton-menu:active, .listo:active, .listo-e:active, .interruptor button:active, .menu-lista a:active svg, .menu-lista a:focus-visible svg,
  .pila:hover, .pila:focus-within, .paso:hover .numeral, .escenario.cerca .perilla svg, .perilla:focus-visible svg, .perilla:hover, .arrastrando .perilla { transform: none !important; }
  .plegar:active { transform: rotate(-.7deg); }
  .plegar[aria-expanded="true"]:active { transform: rotate(0deg); }
  .pila:focus-within { translate: none; }
  .escenario .papel, .escenario .pantalla { translate: none !important; }
  .pila:hover .hoja { transform: rotate(.6deg) !important; }
}
html.reducido *, html.reducido *::before, html.reducido *::after { animation: none !important; transition: none !important; }
