/* ============================================================================
   BRILLIANT INTERNATIONAL — hoja de estilo del sitio (re-brief 17-sep-2026)
   Paleta del brief del cliente: Deep Amethyst #3C2547 · Platinum #C8C0CC · Ink #231A29 · Off-White #F7F5F8.
   Tipografía de la dirección de marca del cliente: Unbounded (display) · IBM Plex Sans (texto) · Plex Mono (cifras).

   Mundo: el GRUPO COMO RED ESQUEMÁTICA. Las regiones fabriles son estaciones, las industrias son
   líneas y Brilliant es el intercambio entre China y los mercados. Fotografía y video a sangre bajo
   un velo de malla amatista (header/footer 09 "gradient mesh" re-skineado: cero azul).
   El chrome fijo NO se mueve con el puntero; solo cambia de tono según el fondo que tiene debajo.
   ============================================================================ */

:root{
  /* --- color (7 sub-paletas: _research/variabilidad-v2.md) ------------------ */
  --amethyst-900:#22142B;
  --amethyst:#3C2547;        /* titulares sobre claro, CTA: 12.3:1 sobre off-white */
  --amethyst-600:#4D3159;
  --bloom:#6B4A7E;           /* estado activo sobre claro: 7.2:1 */
  --bloom-400:#8A6A9D;
  --lilac:#B9A3C6;           /* énfasis sobre tinta: 7.4:1 */
  --platinum:#C8C0CC;        /* filetes, wordmark sobre oscuro; nunca texto sobre claro */
  --platinum-200:#DDD7E2;
  --platinum-100:#ECE8EF;
  --ink:#231A29;             /* texto y bandas oscuras */
  --ink-2:#2C2233;
  --ink-3:#372C3F;
  --paper:#F7F5F8;           /* off-white del brief */
  --white:#FFFFFF;
  --text-2:#4A3F52;          /* sobre off-white 9.1:1 */
  --text-3:#675D6D;          /* sobre off-white 5.9:1 · sobre white 6.3:1 */
  --on-ink:#E4DFE8;          /* sobre ink 12.9:1 */
  --on-ink-2:#B1A8B7;        /* sobre ink 7.3:1 */
  --line:rgba(60,37,71,.16);
  --line-2:rgba(60,37,71,.09);
  --line-ink:rgba(200,192,204,.20);
  --line-ink-2:rgba(200,192,204,.11);
  --ok:#2F6B4F;
  --err:#A4343A;

  /* --- medida --------------------------------------------------------------- */
  --maxw:1240px;
  --gut:clamp(16px,4.6vw,48px);
  --hdr-h:88px;              /* 12 px de aire + 64 px de barra + 12 */
  --bar-pad:12px;            /* el logo queda alineado con la columna de contenido */
  --r-s:6px;
  --r:12px;                  /* fotos y tarjetas */
  --r-btn:11px;              /* botón del 09 */
  --r-bar:16px;              /* barra del 09 */
  --r-panel:24px;            /* panel del pie 09 */
  --sh-1:0 2px 4px rgba(35,26,41,.05),0 14px 32px -18px rgba(35,26,41,.32);
  --sh-2:0 4px 10px rgba(35,26,41,.08),0 28px 60px -30px rgba(35,26,41,.5);

  /* --- tipografía ----------------------------------------------------------- */
  --f-display:'Unbounded','IBM Plex Sans',system-ui,sans-serif;
  --f:'IBM Plex Sans',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --f-mono:'IBM Plex Mono',ui-monospace,'SFMono-Regular',Menlo,Consolas,monospace;
  --f-cjk:'IBM Plex Sans','PingFang SC','Hiragino Sans GB','Microsoft YaHei','Noto Sans SC',system-ui,sans-serif;

  /* --- movimiento (Ley de Motion, skill emil-design-eng) --------------------- */
  --ease-out:cubic-bezier(.23,1,.32,1);
  --ease-in-out:cubic-bezier(.77,0,.175,1);
  --t-tap:.14s;
  --t:.2s;
  --t-pop:.22s;
  --t-tone:.26s;
  --t-panel:.34s;

  /* --- alias canónicos HKR (los lee generador/brand_manual.py) ---------------- */
  --brand-1:#3C2547; --brand-2:#22142B; --brand-3:#6B4A7E; --brand-4:#C8C0CC; --brand-5:#F7F5F8;
  --accent:#6B4A7E; --ink-soft:#4A3F52; --surface:#FFFFFF; --surface-2:#F7F5F8; --card:#FFFFFF;
  --font-display:'Unbounded','IBM Plex Sans',system-ui,sans-serif;
  --font-body:'IBM Plex Sans',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --radius:12px;
}

/* ── base ────────────────────────────────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;color-scheme:light;overflow-x:clip;scroll-padding-top:calc(var(--hdr-h) + 16px)}
:target,#main{scroll-margin-top:calc(var(--hdr-h) + 16px)}
body{margin:0;background:var(--paper);color:var(--ink);overflow-x:clip;
  font-family:var(--f);font-size:17px;line-height:1.66;font-weight:400;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
  caret-color:var(--bloom);scrollbar-color:var(--bloom-400) var(--paper);scrollbar-width:thin}
html:lang(zh) body{font-family:var(--f-cjk);line-height:1.85}
img,svg,video{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
a,button,summary,label,input,select,textarea{touch-action:manipulation;-webkit-tap-highlight-color:rgba(107,74,126,.16)}
h1,h2,h3,h4,p,ul,ol,dl,dd,figure,blockquote{margin:0}
ul,ol{padding:0;list-style:none}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--bloom);outline-offset:3px;border-radius:var(--r-s)}
.on-ink :focus-visible,.hdr[data-tone="ink"] :focus-visible{outline-color:var(--lilac)}
::selection{background:var(--platinum);color:var(--ink)}
.on-ink ::selection{background:var(--bloom);color:var(--white)}
::-webkit-scrollbar{width:12px;height:12px}
::-webkit-scrollbar-track{background:var(--paper)}
::-webkit-scrollbar-thumb{background:var(--platinum);border:3px solid var(--paper);border-radius:8px}
::-webkit-scrollbar-thumb:hover{background:var(--bloom-400)}
.num,.mono{font-family:var(--f-mono);font-variant-numeric:tabular-nums;letter-spacing:0}
.skip{position:absolute;left:-9999px;top:0;z-index:300;background:var(--amethyst);color:var(--paper);padding:12px 18px}
.skip:focus{left:0}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ── contenedor y ritmo ─────────────────────────────────────────────────── */
.wrap{max-width:var(--maxw);margin-inline:auto;width:100%;padding-inline:var(--gut)}
@supports (padding:max(0px)){.wrap{padding-inline:max(var(--gut),env(safe-area-inset-left)) max(var(--gut),env(safe-area-inset-right))}}
.sec{position:relative;padding:clamp(76px,9vw,132px) 0}
.sec--tight{padding:clamp(52px,6vw,84px) 0}
.sec--white{background:var(--white)}
.on-ink{background:var(--ink);color:var(--on-ink)}
.mt-s{margin-top:14px}.mt-m{margin-top:26px}.mt-l{margin-top:clamp(40px,5vw,64px)}

/* ── tipografía ─────────────────────────────────────────────────────────── */
.d1,.d2,.d3{font-family:var(--f-display);color:var(--amethyst);text-wrap:balance}
.on-ink .d1,.on-ink .d2,.on-ink .d3{color:var(--white)}
.d1{font-weight:800;font-size:clamp(2.2rem,1.3rem + 3.4vw,4.4rem);line-height:1.04;letter-spacing:-.03em}
.d2{font-weight:800;font-size:clamp(1.7rem,1.1rem + 2.1vw,2.9rem);line-height:1.1;letter-spacing:-.025em}
.d3{font-weight:600;font-size:clamp(1.16rem,1rem + .6vw,1.45rem);line-height:1.25;letter-spacing:-.01em}
html:lang(zh) .d1,html:lang(zh) .d2,html:lang(zh) .d3{font-family:var(--f-cjk);letter-spacing:0;font-weight:700;line-height:1.25}
.lede{font-size:clamp(1.04rem,.98rem + .3vw,1.22rem);line-height:1.6;color:var(--text-2);max-width:58ch}
.on-ink .lede{color:var(--on-ink-2)}
.body-copy{max-width:64ch;color:var(--text-2)}
.body-copy+.body-copy{margin-top:14px}
.on-ink .body-copy{color:var(--on-ink-2)}
.small{font-size:.9rem;color:var(--text-3)}
.on-ink .small{color:var(--on-ink-2)}
.hdline{max-width:780px}
.hdline .lede{margin-top:16px}
.hdline--row{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:18px 40px;max-width:none}
.hdline--row>div{max-width:700px}

/* ── botones y enlaces ──────────────────────────────────────────────────── */
.btn{display:inline-flex;align-items:center;gap:10px;min-height:50px;padding:13px 22px;border-radius:var(--r-btn);
  font-weight:600;font-size:.98rem;line-height:1.2;border:1px solid transparent;cursor:pointer;
  transition:background-color var(--t) var(--ease-out),color var(--t) var(--ease-out),border-color var(--t) var(--ease-out),filter var(--t) var(--ease-out),transform var(--t-tap) var(--ease-out)}
.btn svg{width:16px;height:16px;flex:none;transition:transform var(--t) var(--ease-out)}
.btn:active{transform:scale(.97)}
/* sólido del 09: degradé dentro de la misma familia (amatista → bloom), nunca hacia azul */
.btn--solid{background:linear-gradient(120deg,var(--amethyst),var(--bloom));color:var(--white);box-shadow:0 12px 26px -12px rgba(60,37,71,.7)}
.btn--light{background:var(--paper);color:var(--ink)}
.btn--glass{background:rgba(247,245,248,.08);border-color:rgba(228,223,232,.38);color:var(--white);
  -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.btn--line{border-color:var(--line);color:var(--amethyst);background:transparent}
@media (hover:hover) and (pointer:fine){
  .btn--solid:hover{filter:brightness(1.1)}
  .btn--light:hover{background:var(--white)}
  .btn--glass:hover{background:rgba(247,245,248,.16);border-color:var(--lilac)}
  .btn--line:hover{border-color:var(--bloom);color:var(--bloom)}
  .btn:hover svg{transform:translateX(3px)}
}
.tlink{display:inline-flex;align-items:center;gap:8px;font-weight:600;color:var(--amethyst);
  text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:6px;text-decoration-thickness:1px;
  transition:color var(--t) var(--ease-out),text-decoration-color var(--t) var(--ease-out)}
.tlink svg{width:15px;height:15px;transition:transform var(--t) var(--ease-out)}
.on-ink .tlink{color:var(--white);text-decoration-color:rgba(228,223,232,.3)}
@media (hover:hover) and (pointer:fine){
  .tlink:hover{color:var(--bloom);text-decoration-color:var(--bloom)}
  .on-ink .tlink:hover{color:var(--lilac);text-decoration-color:var(--lilac)}
  .tlink:hover svg{transform:translateX(3px)}
}
.actions{display:flex;flex-wrap:wrap;gap:14px 16px;align-items:center}
.tlink--long{display:inline}
.tlink--long svg{display:inline-block;vertical-align:-2px;margin-left:6px}

/* ── HEADER 09 · barra de vidrio sobre malla (re-skin amatista/platino) ─── */
.hdr{position:fixed;inset:0 0 auto 0;z-index:100;pointer-events:none}
.hdr__in{max-width:calc(var(--maxw) - 2 * var(--gut) + 2 * var(--bar-pad));margin-inline:auto;
  padding:12px 0 0;width:calc(100% - 2 * (var(--gut) - var(--bar-pad)))}
.hdr__bar{pointer-events:auto;display:flex;align-items:center;gap:clamp(10px,1.6vw,22px);height:64px;
  padding:0 8px 0 var(--bar-pad);border-radius:var(--r-bar);border:1px solid;
  -webkit-backdrop-filter:blur(16px) saturate(150%);backdrop-filter:blur(16px) saturate(150%);
  transition:background-color var(--t-tone) var(--ease-out),border-color var(--t-tone) var(--ease-out),box-shadow var(--t-tone) var(--ease-out)}
/* tono tinta: sobre video, foto o bandas oscuras (estado inicial de todas las páginas) */
.hdr[data-tone="ink"] .hdr__bar{background:rgba(35,26,41,.48);border-color:rgba(200,192,204,.2);box-shadow:0 16px 40px -24px rgba(0,0,0,.7)}
/* tono claro: sobre secciones off-white */
.hdr[data-tone="paper"] .hdr__bar{background:rgba(247,245,248,.78);border-color:rgba(255,255,255,.75);box-shadow:0 16px 40px -24px rgba(60,37,71,.45)}
.hdr__logo{position:relative;display:flex;align-items:center;flex:none;height:44px;color:var(--white)}
.hdr__logo img{height:40px;width:auto;transition:opacity var(--t-tone) var(--ease-out)}
.hdr__logo .lg-pri{position:absolute;left:0;top:2px;opacity:0}
.hdr[data-tone="paper"] .hdr__logo{color:var(--amethyst)}
.hdr[data-tone="paper"] .hdr__logo .lg-pri{opacity:1}
.hdr[data-tone="paper"] .hdr__logo .lg-rev{opacity:0}
.hdr__nav{display:flex;align-items:center;gap:2px;margin-left:auto}
.hdr__nav a{position:relative;padding:9px 12px;border-radius:10px;font-size:.92rem;font-weight:500;
  transition:background-color var(--t) var(--ease-out),color var(--t) var(--ease-out)}
.hdr[data-tone="ink"] .hdr__nav a{color:rgba(247,245,248,.82)}
.hdr[data-tone="paper"] .hdr__nav a{color:var(--text-2)}
.hdr[data-tone="ink"] .hdr__nav a[aria-current="page"]{color:var(--white)}
.hdr[data-tone="paper"] .hdr__nav a[aria-current="page"]{color:var(--amethyst)}
.hdr__nav a[aria-current="page"]::after{content:"";position:absolute;left:50%;bottom:3px;width:5px;height:5px;margin-left:-2.5px;border-radius:50%;background:var(--lilac)}
.hdr[data-tone="paper"] .hdr__nav a[aria-current="page"]::after{background:var(--bloom)}
@media (hover:hover) and (pointer:fine){
  .hdr[data-tone="ink"] .hdr__nav a:hover{background:rgba(247,245,248,.1);color:var(--white)}
  .hdr[data-tone="paper"] .hdr__nav a:hover{background:rgba(255,255,255,.85);color:var(--ink)}
}
.hdr__end{display:flex;align-items:center;gap:8px;flex:none}
.hdr__burger{display:none;width:44px;height:44px;border-radius:var(--r-btn);border:0;align-items:center;justify-content:center;cursor:pointer;
  transition:background-color var(--t) var(--ease-out)}
.hdr[data-tone="ink"] .hdr__burger{background:rgba(247,245,248,.1);color:var(--white)}
.hdr[data-tone="paper"] .hdr__burger{background:rgba(255,255,255,.8);color:var(--ink)}
.hdr__burger span,.hdr__burger span::before,.hdr__burger span::after{display:block;width:18px;height:2px;background:currentColor;position:relative}
.hdr__burger span::before,.hdr__burger span::after{content:"";position:absolute;left:0}
.hdr__burger span::before{top:-6px}.hdr__burger span::after{top:6px}

/* selector de idioma · variante PANEL (globo + código; panel con nombre nativo) */
.lang{position:relative}
.lang__trigger{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:8px 10px;border-radius:10px;
  background:transparent;border:1px solid transparent;cursor:pointer;font-weight:600;font-size:.85rem;
  transition:border-color var(--t) var(--ease-out),background-color var(--t) var(--ease-out)}
.hdr[data-tone="ink"] .lang__trigger{color:var(--on-ink)}
.hdr[data-tone="paper"] .lang__trigger{color:var(--text-2)}
.lang__flag{width:22px;height:16px;flex:none;border-radius:3px;object-fit:cover;box-shadow:0 0 0 1px rgba(35,26,41,.18)}
.hdr[data-tone="ink"] .lang__trigger .lang__flag{box-shadow:0 0 0 1px rgba(247,245,248,.35)}
.lang__trigger .chev{width:11px;height:11px;transition:transform var(--t) var(--ease-out)}
.lang[data-open="1"] .lang__trigger .chev{transform:rotate(180deg)}
.hdr[data-tone="ink"] .lang[data-open="1"] .lang__trigger{border-color:rgba(228,223,232,.3)}
.hdr[data-tone="paper"] .lang[data-open="1"] .lang__trigger{border-color:var(--line)}
@media (hover:hover) and (pointer:fine){
  .hdr[data-tone="ink"] .lang__trigger:hover{background:rgba(247,245,248,.1)}
  .hdr[data-tone="paper"] .lang__trigger:hover{background:rgba(255,255,255,.85)}
}
.lang__menu{position:absolute;right:0;top:calc(100% + 14px);min-width:260px;padding:8px;border-radius:14px;
  background:rgba(247,245,248,.96);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);color:var(--ink);
  box-shadow:var(--sh-2);border:1px solid rgba(255,255,255,.8);
  transform-origin:top right;opacity:0;transform:scale(.97) translateY(-4px);visibility:hidden;
  transition:opacity var(--t-pop) var(--ease-out),transform var(--t-pop) var(--ease-out),visibility 0s linear var(--t-pop)}
.lang[data-open="1"] .lang__menu{opacity:1;transform:none;visibility:visible;transition:opacity var(--t-pop) var(--ease-out),transform var(--t-pop) var(--ease-out),visibility 0s}
.lang__menu a{display:grid;grid-template-columns:30px minmax(0,1fr) 18px;align-items:center;gap:0 12px;padding:10px 12px;border-radius:10px;transition:background-color var(--t) var(--ease-out)}
.lang__menu .lang__flag{grid-row:1/3;grid-column:1;width:30px;height:22px;border-radius:4px}
.lang__native{grid-column:2;font-weight:600;color:var(--amethyst);line-height:1.3}
.lang__en{grid-column:2;font-size:.8rem;color:var(--text-3);line-height:1.35}
.lang__en:empty{display:none}
.lang__check{grid-row:1/3;grid-column:3;width:16px;height:16px;color:var(--bloom)}
.lang__menu a[aria-current="true"]{background:var(--platinum-100)}
@media (hover:hover) and (pointer:fine){.lang__menu a:hover{background:var(--platinum-100)}}

/* cajón móvil del 09: panel de vidrio a pantalla completa con 8 px de margen */
.drawer{position:fixed;inset:8px;z-index:160;border-radius:22px;padding:14px 14px 24px;display:flex;flex-direction:column;
  background:rgba(247,245,248,.985);-webkit-backdrop-filter:blur(22px) saturate(140%);backdrop-filter:blur(22px) saturate(140%);
  border:1px solid rgba(255,255,255,.8);box-shadow:var(--sh-2);color:var(--ink);overflow-y:auto;overscroll-behavior:contain;
  transform:scale(.96);opacity:0;visibility:hidden;transform-origin:top right;
  transition:transform var(--t-panel) var(--ease-out),opacity var(--t-panel) var(--ease-out),visibility 0s linear var(--t-panel)}
.drawer.open{transform:none;opacity:1;visibility:visible;transition:transform var(--t-panel) var(--ease-out),opacity var(--t-panel) var(--ease-out),visibility 0s}
.drawer__top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 4px 6px 8px}
.drawer__top img{height:36px;width:auto}
.drawer__close{width:44px;height:44px;border:0;border-radius:var(--r-btn);background:rgba(60,37,71,.07);color:var(--ink);cursor:pointer;display:grid;place-items:center}
.drawer__close svg{width:18px;height:18px}
.drawer nav{margin-top:18px;display:flex;flex-direction:column}
.drawer nav a{font-family:var(--f-display);font-weight:600;font-size:1.3rem;letter-spacing:-.01em;padding:13px 10px;border-radius:14px;color:var(--amethyst);
  transition:background-color var(--t) var(--ease-out)}
html:lang(zh) .drawer nav a{font-family:var(--f-cjk)}
.drawer nav a[aria-current="page"]{background:rgba(60,37,71,.07)}
.drawer__foot{margin-top:auto;padding:24px 10px 0;display:flex;flex-direction:column;gap:14px}
.drawer__foot .btn{justify-content:center}
.drawer__mail{font-weight:600;color:var(--amethyst);overflow-wrap:anywhere}
.drawer__langs{display:flex;flex-wrap:wrap;gap:6px}
.drawer__langs a{display:inline-flex;align-items:center;gap:8px;padding:7px 12px 7px 8px;border-radius:10px;border:1px solid var(--line);font-size:.9rem;font-weight:600;color:var(--text-2)}
.drawer__langs a[aria-current="true"]{border-color:var(--bloom);color:var(--amethyst)}

/* ── malla del 09 (hero, cabeceras sin foto, bandas, pie) ───────────────── */
.mesh{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.mesh i{position:absolute;border-radius:50%;filter:blur(70px);opacity:.5}
.hero .mesh i{animation:mesh-float 22s var(--ease-in-out) infinite}
.hero.is-paused .mesh i{animation-play-state:paused}
.mesh .m1{width:48vw;height:48vw;left:-10vw;top:-14vw;background:var(--bloom)}
.mesh .m2{width:40vw;height:40vw;right:-10vw;top:-8vw;background:var(--lilac);opacity:.28;animation-delay:-7s}
.mesh .m3{width:36vw;height:36vw;left:34vw;top:14vw;background:var(--amethyst);opacity:.7;animation-delay:-12s}
.mesh .m4{width:28vw;height:28vw;left:62vw;bottom:-12vw;background:var(--platinum);opacity:.16;animation-delay:-4s}
@keyframes mesh-float{50%{transform:translate(5vw,4vw) scale(1.1)}}

/* ── HERO del home: video a sangre bajo el velo de malla ────────────────── */
.hero{position:relative;isolation:isolate;overflow:hidden;min-height:max(640px,100svh);display:flex;flex-direction:column;justify-content:flex-end;
  background:var(--ink);color:var(--on-ink)}
.hero__media{position:absolute;inset:0;z-index:-3}
.hero__media img,.hero__media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero__media video{opacity:0;transition:opacity .9s var(--ease-out)}
.hero__media video.is-playing{opacity:1}
.hero .mesh{z-index:-2;mix-blend-mode:soft-light}
.hero__veil{position:absolute;inset:0;z-index:-1;
  background:linear-gradient(180deg,rgba(35,26,41,.72) 0%,rgba(35,26,41,.22) 26%,rgba(35,26,41,.28) 48%,rgba(35,26,41,.9) 100%),
             linear-gradient(90deg,rgba(35,26,41,.55) 0%,rgba(35,26,41,0) 62%)}
.hero__in{position:relative;width:100%;padding-top:calc(var(--hdr-h) + 40px);padding-bottom:clamp(196px,25vh,236px)}
.hero .d1{font-size:clamp(2.45rem,1.15rem + 4.3vw,5.3rem);line-height:1.02;letter-spacing:-.035em;max-width:14ch}
.hero .lede{margin-top:22px;font-size:clamp(1.06rem,.96rem + .45vw,1.32rem);color:var(--on-ink);max-width:40ch}
.hero .actions{margin-top:34px}
/* la línea de la marca: China → Brilliant → mercados globales */
.route{position:absolute;left:0;right:0;bottom:clamp(96px,12vh,112px);z-index:1}
.route ol{position:relative;display:flex;justify-content:space-between;align-items:flex-start}
.route ol::before{content:"";position:absolute;left:6px;right:6px;top:8px;height:2px;
  background:linear-gradient(90deg,var(--platinum),var(--lilac) 50%,var(--platinum));opacity:.7}
.route li{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:10px;font-size:.84rem;font-weight:500;color:var(--on-ink)}
.route li:nth-child(2){align-items:center}
.route li:last-child{align-items:flex-end}
.route .st{display:block;width:18px;height:18px;border-radius:50%;background:var(--ink);border:3px solid var(--paper)}
.route .ix{display:flex;align-items:center;justify-content:center;width:46px;height:18px;border-radius:9px;background:var(--paper);border:3px solid var(--lilac)}
.route .ix img{height:11px;width:auto}
.hero__pause{position:absolute;right:var(--gut);top:calc(var(--hdr-h) + 18px);z-index:2;display:none;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;border:1px solid rgba(228,223,232,.38);background:rgba(35,26,41,.45);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--white);cursor:pointer;transition:background-color var(--t) var(--ease-out),transform var(--t-tap) var(--ease-out)}
.js .hero__pause{display:inline-flex}
.hero__pause:active{transform:scale(.97)}
.hero__pause svg{width:14px;height:14px}
.hero__pause .i-play{display:none}
.hero.is-paused .hero__pause .i-play{display:block}
.hero.is-paused .hero__pause .i-pause{display:none}
@media (hover:hover) and (pointer:fine){.hero__pause:hover{background:rgba(35,26,41,.7)}}

/* ── cabecera de página interna: foto a sangre + velo ───────────────────── */
.phead{position:relative;isolation:isolate;overflow:hidden;min-height:clamp(470px,70svh,720px);display:flex;flex-direction:column;justify-content:flex-end;
  background:var(--ink);color:var(--on-ink)}
.phead__media{position:absolute;inset:0;z-index:-2}
.phead__media img{width:100%;height:100%;object-fit:cover}
.phead__veil{position:absolute;inset:0;z-index:-1;
  background:linear-gradient(180deg,rgba(35,26,41,.62) 0%,rgba(35,26,41,0) 26%),
             radial-gradient(130% 110% at 0% 100%,rgba(35,26,41,.95) 0%,rgba(35,26,41,.82) 38%,rgba(35,26,41,.28) 78%,rgba(35,26,41,.12) 100%)}
.phead__in{width:100%;padding-top:calc(var(--hdr-h) + 48px);padding-bottom:clamp(44px,6vw,72px)}
.phead .d1{max-width:18ch}
.phead .lede{margin-top:18px;color:var(--on-ink);max-width:54ch}
.phead .actions{margin-top:28px}
.phead--solo{min-height:0}
.phead--solo .mesh{z-index:-1}
.phead--solo .phead__in{padding-top:calc(var(--hdr-h) + 64px)}
.crumb{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;width:fit-content;max-width:100%;padding:6px 14px;border-radius:999px;background:rgba(35,26,41,.62);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(200,192,204,.18);font-size:.88rem;font-weight:500;color:var(--on-ink);margin-bottom:18px}
.crumb a{color:var(--on-ink);text-decoration:underline;text-decoration-color:rgba(228,223,232,.3);text-underline-offset:4px}
.crumb span[aria-hidden]{opacity:.6}
.phead+.sec{padding-top:clamp(64px,7vw,104px)}
.phead--solo+.sec{padding-top:clamp(28px,3vw,44px)}
.legal h2:first-child{margin-top:0}

/* ── split con foto ─────────────────────────────────────────────────────── */
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,5vw,84px);align-items:center}
.split--57{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}
.split--75{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}
.split__media{position:relative;border-radius:var(--r);overflow:hidden}
.split__media img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.split__media--tall img{aspect-ratio:4/5}
.split__copy{max-width:58ch}
.split__copy .lede,.split__copy .body-copy{margin-top:18px}
.split__copy .tlink{margin-top:26px}
/* rótulo anclado a lo que muestra la foto (no pie flotante) */
.tag{position:absolute;left:16px;bottom:16px;display:inline-flex;align-items:center;gap:8px;padding:6px 11px 6px 8px;border-radius:999px;
  background:rgba(35,26,41,.72);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--white);font-size:.8rem;font-weight:500;line-height:1.2}
.tag::before{content:"";width:10px;height:10px;border-radius:50%;background:var(--paper);box-shadow:0 0 0 2px var(--lilac)}

/* ── cifras sobre la línea ──────────────────────────────────────────────── */
.figs{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px clamp(18px,3vw,40px);margin-top:clamp(40px,5vw,64px)}
.figs::before{content:"";position:absolute;left:0;right:0;top:8px;height:2px;background:linear-gradient(90deg,var(--lilac),var(--platinum));opacity:.55}
.figs li{position:relative;padding-top:40px}
.figs li::before{content:"";position:absolute;left:0;top:0;width:18px;height:18px;border-radius:50%;background:var(--ink);border:3px solid var(--paper)}
.figs__v{display:block;font-family:var(--f-display);font-weight:800;font-size:clamp(3rem,1.9rem + 4.2vw,6rem);line-height:.95;letter-spacing:-.04em;color:var(--white);font-variant-numeric:tabular-nums}
.figs__u{display:block;margin-top:12px;font-family:var(--f-display);font-weight:600;font-size:1rem;color:var(--lilac);letter-spacing:-.005em}
html:lang(zh) .figs__u{font-family:var(--f-cjk)}
.figs__d{display:block;margin-top:6px;font-size:.93rem;color:var(--on-ink-2);max-width:26ch}

/* ── industrias: paneles de vidrio de distinto tamaño ───────────────────── */
.panes{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(10px,1.2vw,16px);margin-top:clamp(40px,5vw,60px)}
.pane{position:relative;isolation:isolate;overflow:hidden;border-radius:18px;display:flex;align-items:flex-end;min-height:clamp(280px,26vw,360px);
  grid-column:span 4;color:var(--white);background:var(--ink-2)}
.pane--8{grid-column:span 8}
.pane--12{grid-column:span 12;min-height:clamp(220px,20vw,280px)}
.pane img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .7s var(--ease-out)}
.pane::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(35,26,41,0) 35%,rgba(35,26,41,.88) 100%);
  transition:background-color var(--t-tone) var(--ease-out)}
.pane__in{position:relative;width:100%;padding:20px 22px 22px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 16px;align-items:end}
.pane h3{font-family:var(--f-display);font-weight:600;font-size:clamp(1.05rem,.95rem + .45vw,1.35rem);line-height:1.2;letter-spacing:-.01em;grid-column:1}
html:lang(zh) .pane h3{font-family:var(--f-cjk)}
.pane p{grid-column:1;font-size:.9rem;line-height:1.45;color:var(--on-ink);max-width:42ch}
.pane__go{grid-column:2;grid-row:1/3;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;border:1px solid rgba(247,245,248,.45);
  transition:background-color var(--t) var(--ease-out),border-color var(--t) var(--ease-out)}
.pane__go svg{width:16px;height:16px}
@media (hover:hover) and (pointer:fine){
  a.pane:hover img{transform:scale(1.035)}
  a.pane:hover::after{background-color:rgba(60,37,71,.38)}
  a.pane:hover .pane__go{background:var(--paper);border-color:var(--paper);color:var(--amethyst)}
}
.panes__more{margin-top:22px}

/* ── línea de capacidades (10 estaciones) ───────────────────────────────── */
.capline{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));row-gap:40px;margin-top:clamp(40px,5vw,60px)}
.capline li:nth-child(5)::before{right:auto;width:9px}
.capline li:nth-child(6)::before{left:9px}
.capline li{position:relative;padding-top:38px;padding-right:10px}
.capline li::before{content:"";position:absolute;left:0;right:0;top:8px;height:2px;background:var(--amethyst);opacity:.85}
.capline li:first-child::before{left:9px}
.capline li:last-child::before{right:auto;width:9px}
.capline li::after{content:"";position:absolute;left:0;top:0;width:18px;height:18px;border-radius:50%;background:var(--white);border:3px solid var(--amethyst);
  transition:background-color var(--t) var(--ease-out)}
.capline a{display:block}
.capline .num{display:block;font-size:.78rem;color:var(--bloom)}
.capline b{display:block;margin-top:4px;font-family:var(--f-display);font-weight:600;font-size:clamp(.9rem,.8rem + .3vw,1.05rem);line-height:1.25;color:var(--amethyst);letter-spacing:-.005em}
html:lang(zh) .capline b{font-family:var(--f-cjk)}
@media (hover:hover) and (pointer:fine){
  .capline li:hover::after{background:var(--bloom)}
  .capline a:hover b{color:var(--bloom)}
}

/* ── red en China: mapa esquemático + filtro por industria ──────────────── */
.net{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(24px,4vw,64px);align-items:stretch;margin-top:clamp(40px,5vw,60px)}
.net--full{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}
.net__media{position:relative;border-radius:var(--r);overflow:hidden;min-height:420px}
.net__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.net__map{display:flex;flex-direction:column;gap:18px}
.filter{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.filter__lab{font-size:.86rem;font-weight:600;color:var(--text-3);margin-right:4px}
.on-ink .filter__lab{color:var(--on-ink-2)}
.chip{min-height:40px;padding:8px 14px;border-radius:999px;border:1px solid var(--line);background:var(--white);color:var(--text-2);font-size:.86rem;font-weight:600;cursor:pointer;
  transition:background-color var(--t) var(--ease-out),border-color var(--t) var(--ease-out),color var(--t) var(--ease-out),transform var(--t-tap) var(--ease-out)}
.chip:active{transform:scale(.97)}
.chip[aria-pressed="true"]{background:var(--amethyst);border-color:var(--amethyst);color:var(--white)}
@media (hover:hover) and (pointer:fine){.chip:hover{border-color:var(--bloom)}}
.map{width:100%;height:auto;overflow:visible}
.map .ln{fill:none;stroke-width:6;stroke-linecap:round;stroke-linejoin:round}
.map .ln--a{stroke:var(--amethyst)}
.map .ln--b{stroke:var(--bloom)}
.map .ln--c{stroke:var(--bloom-400);stroke-dasharray:14 10}
.map .stn circle,.map .stn rect{fill:var(--white);stroke:var(--amethyst);stroke-width:4;transition:fill var(--t) var(--ease-out),opacity var(--t) var(--ease-out)}
.map .stn text{font-family:var(--f);font-size:22px;font-weight:600;fill:var(--ink);transition:opacity var(--t) var(--ease-out)}
html:lang(zh) .map .stn text{font-family:var(--f-cjk)}
.map .stn--prov text{font-family:var(--f-display);font-size:21px;font-weight:600;fill:var(--amethyst)}
.map .stn.is-on circle,.map .stn.is-on rect{fill:var(--bloom);stroke:var(--amethyst)}
.map .stn.is-dim{opacity:.22}
.map .compass{font-family:var(--f-mono);font-size:16px;fill:var(--text-3)}
.net__note{font-size:.82rem;color:var(--text-3)}
.regions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 28px;border-top:1px solid var(--amethyst);padding-top:24px}
.regions li{display:flex;flex-direction:column;gap:4px;transition:opacity var(--t) var(--ease-out)}
.regions b{font-family:var(--f-display);font-weight:600;font-size:.98rem;color:var(--amethyst)}
html:lang(zh) .regions b{font-family:var(--f-cjk)}
.regions span{font-size:.93rem;color:var(--text-2)}
.regions li.is-dim{opacity:.3}

/* ── presencia global: arcos del swoosh ─────────────────────────────────── */
.world{position:relative;isolation:isolate;overflow:hidden}
.world .mesh{z-index:-1;opacity:.55}
.world__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(28px,4vw,64px);align-items:center}
.world__map{width:100%;height:auto;overflow:visible}
.world__map .arc{fill:none;stroke:url(#arcg);stroke-width:3;stroke-linecap:round}
.world__map .reg circle{fill:var(--ink);stroke:var(--paper);stroke-width:4}
.world__map .reg text{font-family:var(--f);font-size:22px;font-weight:600;fill:var(--on-ink)}
html:lang(zh) .world__map .reg text{font-family:var(--f-cjk)}
.world__map .hub rect{fill:var(--paper);stroke:var(--lilac);stroke-width:4}
.world__map .hub text{font-family:var(--f-display);font-size:21px;font-weight:600;fill:var(--amethyst)}
.world__map .cn text{font-family:var(--f-display);font-size:22px;font-weight:600;fill:var(--white)}
.world__map .cn circle{fill:var(--lilac);stroke:var(--paper);stroke-width:4}
.world__list{display:flex;flex-wrap:wrap;gap:8px;margin-top:26px}
.world__list li{padding:7px 13px;border-radius:999px;border:1px solid var(--line-ink);font-size:.88rem;font-weight:500;color:var(--on-ink)}

/* ── por qué Brilliant: matriz de seis ──────────────────────────────────── */
.why{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 clamp(24px,3.4vw,48px);margin-top:clamp(40px,5vw,60px)}
.why li{padding:26px 0 30px;border-top:1px solid var(--amethyst)}
.why li:nth-child(n+4){border-top-color:var(--line)}
.why h3{font-family:var(--f-display);font-weight:600;font-size:1.12rem;line-height:1.3;color:var(--amethyst);letter-spacing:-.01em}
html:lang(zh) .why h3{font-family:var(--f-cjk)}
.why p{margin-top:10px;color:var(--text-2);font-size:.97rem;max-width:36ch}

/* ── impacto final a pantalla completa ──────────────────────────────────── */
.impact{position:relative;isolation:isolate;overflow:hidden;min-height:clamp(520px,82svh,820px);display:flex;align-items:center;background:var(--ink);color:var(--on-ink)}
.impact__media{position:absolute;inset:0;z-index:-2}
.impact__media img{width:100%;height:100%;object-fit:cover}
.impact::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(35,26,41,.88) 0%,rgba(35,26,41,.55) 55%,rgba(35,26,41,.25) 100%)}
.impact .d2{font-size:clamp(2.2rem,1.3rem + 3.6vw,4.6rem);max-width:14ch;line-height:1.04}
.impact p{margin-top:22px;font-size:clamp(1.05rem,.98rem + .35vw,1.25rem);color:var(--on-ink);max-width:40ch}
.impact .actions{margin-top:32px}

/* ── filas en zigzag (industrias, capacidades, marca propia) ────────────── */
.fzig{display:flex;flex-direction:column;gap:clamp(64px,8vw,112px)}
.fzig__row{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(28px,4.5vw,72px);align-items:center;scroll-margin-top:calc(var(--hdr-h) + 24px)}
.fzig__row:nth-child(even){grid-template-columns:minmax(0,5fr) minmax(0,7fr)}
.fzig__row:nth-child(even) .fzig__media{order:2}
.fzig__media{position:relative;border-radius:var(--r);overflow:hidden}
.fzig__media img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.fzig__copy{max-width:52ch}
.fzig__copy>p{margin-top:14px;color:var(--text-2)}
.fzig__num{font-family:var(--f-mono);font-size:.82rem;color:var(--bloom);font-variant-numeric:tabular-nums}
.fzig__copy .d3{margin-top:8px}
.fzig__copy .tlink{margin-top:20px}
.capgroup+.capgroup{background:var(--white)}
.capgroup .hdline{margin-bottom:clamp(40px,5vw,64px)}
.stations{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.stations__lab{width:100%;font-size:.82rem;font-weight:600;color:var(--text-3)}
.stations a,.stations span.stn{display:inline-flex;align-items:center;gap:8px;padding:6px 12px 6px 8px;border-radius:999px;border:1px solid var(--line);font-size:.86rem;font-weight:500;color:var(--text-2);background:var(--white);
  transition:border-color var(--t) var(--ease-out),color var(--t) var(--ease-out)}
.stations a::before,.stations span.stn::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--white);box-shadow:0 0 0 2px var(--amethyst)}
@media (hover:hover) and (pointer:fine){.stations a:hover{border-color:var(--bloom);color:var(--amethyst)}}
.gets{margin-top:20px;border-top:1px solid var(--line)}
.gets__lab{display:block;margin-top:22px;font-size:.84rem;font-weight:600;color:var(--text-3)}
.gets li{display:grid;grid-template-columns:18px 1fr;gap:10px;padding:10px 0;border-bottom:1px solid var(--line-2);font-size:.95rem;color:var(--text-2)}
.gets li::before{content:"";width:9px;height:9px;margin-top:8px;border:1.5px solid var(--bloom);border-radius:50%}
.on-ink .gets{border-color:var(--line-ink)}
.on-ink .gets li{border-color:var(--line-ink-2);color:var(--on-ink-2)}
.on-ink .gets li::before{border-color:var(--lilac)}

/* ── industrias sin página propia: grilla de 6 ───────────────────────────── */
.indgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(36px,4vw,56px) clamp(28px,4vw,56px)}
.indcard{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(18px,2vw,28px);align-items:start;scroll-margin-top:calc(var(--hdr-h) + 24px)}
.indcard__media{border-radius:var(--r);overflow:hidden}
.indcard__media img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.indcard__copy p{margin-top:10px;color:var(--text-2);font-size:.97rem}
.indcard__copy .stations{margin-top:14px}
.indcard__copy .tlink{margin-top:14px}

/* ── estaciones con foto (capacidades 6 a 10) ─────────────────────────────── */
.stationlist>li{position:relative;display:grid;grid-template-columns:34px minmax(0,4fr) minmax(0,6fr);gap:0 clamp(20px,3vw,40px);padding-bottom:clamp(40px,4vw,56px);align-items:start;scroll-margin-top:calc(var(--hdr-h) + 24px)}
.stationlist>li::before{content:"";position:absolute;left:8px;top:9px;bottom:0;width:2px;background:var(--amethyst);opacity:.85}
.stationlist>li:last-child::before{display:none}
.stationlist>li::after{content:"";position:absolute;left:0;top:0;width:18px;height:18px;border-radius:50%;background:var(--white);border:3px solid var(--amethyst)}
.stationlist figure{grid-column:2;border-radius:var(--r);overflow:hidden}
.stationlist figure img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.stationlist>li>div{grid-column:3;max-width:52ch}
.stationlist .d3{margin-top:6px}
.stationlist p{margin-top:12px;color:var(--text-2)}

/* ── marca propia: grilla de 5 (2 + 3) ─────────────────────────────────────── */
.plgrid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:clamp(36px,4vw,52px) clamp(20px,2.4vw,32px)}
.plcard{grid-column:span 2;scroll-margin-top:calc(var(--hdr-h) + 24px)}
.plcard:nth-child(-n+2){grid-column:span 3}
.plcard figure{border-radius:var(--r);overflow:hidden}
.plcard img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.plcard .d3{margin-top:18px}
.plcard p{margin-top:10px;color:var(--text-2);font-size:.97rem}
.imgband figcaption{padding:12px 2px 0;font-size:.9rem;color:var(--on-ink-2)}
.on-ink .imgband figure{background:transparent}

/* ── secuencia de desarrollo (6 estaciones) ─────────────────────────────── */
.seq{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;margin-top:clamp(40px,5vw,60px)}
.seq li{position:relative;padding:40px 16px 0 0}
.seq li::before{content:"";position:absolute;left:0;right:0;top:8px;height:2px;background:var(--lilac);opacity:.6}
.seq li:first-child::before{left:9px}
.seq li:last-child::before{right:auto;width:9px}
.seq li::after{content:"";position:absolute;left:0;top:0;width:18px;height:18px;border-radius:50%;background:var(--ink);border:3px solid var(--paper)}
.seq li:last-child::after{background:var(--lilac)}
.seq h3{font-family:var(--f-display);font-weight:600;font-size:1rem;line-height:1.25;color:var(--white)}
html:lang(zh) .seq h3{font-family:var(--f-cjk)}
.seq p{margin-top:8px;font-size:.9rem;line-height:1.5;color:var(--on-ink-2)}

/* ── bandas de imágenes ─────────────────────────────────────────────────── */
.imgband{display:grid;grid-template-columns:repeat(var(--n,2),minmax(0,1fr));gap:clamp(12px,1.6vw,20px)}
.imgband figure{position:relative;border-radius:var(--r);overflow:hidden;background:var(--white)}
.imgband img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}

/* ── familias de producto (muebles y fitness) ───────────────────────────── */
.dgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,1.8vw,24px)}
.dcard{position:relative;display:flex;flex-direction:column;background:var(--white);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.dcard__img{position:relative;background:var(--white);border-bottom:1px solid var(--line-2)}
.dcard__img img{width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;padding:18px}
.dcard__img--cover img{object-fit:cover;padding:0}
.dcard__body{display:flex;flex-direction:column;gap:8px;padding:18px 18px 20px;flex:1}
.dcard__t{font-family:var(--f-display);font-weight:600;font-size:1.02rem;line-height:1.28;color:var(--amethyst);letter-spacing:-.01em}
html:lang(zh) .dcard__t{font-family:var(--f-cjk)}
.dcard__d{font-size:.93rem;line-height:1.55;color:var(--text-2)}
.specs{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto;padding-top:10px}
.spec{display:inline-flex;align-items:baseline;gap:5px;padding:4px 9px;border:1px solid var(--line);border-radius:999px;font-size:.8rem;color:var(--text-2);background:var(--paper)}
.spec b{font-family:var(--f-mono);font-weight:500;font-size:.86rem;color:var(--amethyst);font-variant-numeric:tabular-nums}

/* ── filosofía y datos de la empresa ────────────────────────────────────── */
.phil{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 clamp(24px,3vw,40px);margin-top:clamp(36px,4vw,52px)}
.phil li{padding:22px 0;border-top:1px solid var(--line-ink);font-family:var(--f-display);font-weight:600;font-size:clamp(1.05rem,.95rem + .5vw,1.35rem);line-height:1.3;color:var(--white);letter-spacing:-.01em}
html:lang(zh) .phil li{font-family:var(--f-cjk)}
.facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(24px,4vw,56px);border-top:1px solid var(--amethyst);margin-top:clamp(28px,3vw,40px)}
.facts div{display:grid;grid-template-columns:minmax(0,10rem) minmax(0,1fr);gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}
.facts dt{font-size:.86rem;color:var(--text-3)}
.facts dd{color:var(--ink);font-weight:500;overflow-wrap:anywhere}

/* ── FAQ ────────────────────────────────────────────────────────────────── */
.qa{border-top:1px solid var(--amethyst);max-width:880px}
.qa details{border-bottom:1px solid var(--line)}
.qa summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;align-items:center;
  padding:20px 0;font-weight:600;font-size:1.04rem;color:var(--amethyst)}
.qa summary::-webkit-details-marker{display:none}
.qa summary::after{content:"";flex:none;width:12px;height:12px;border-right:2px solid var(--bloom);border-bottom:2px solid var(--bloom);
  transform:translateY(-3px) rotate(45deg);transition:transform var(--t) var(--ease-out)}
.qa details[open] summary::after{transform:translateY(3px) rotate(-135deg)}
.qa__a{padding:0 0 22px;color:var(--text-2);max-width:70ch}

/* ── banda de cierre ────────────────────────────────────────────────────── */
.band{position:relative;isolation:isolate;overflow:hidden;background:var(--ink);color:var(--on-ink);padding:clamp(84px,10vw,140px) 0}
.band .mesh{z-index:-1}
.band__in{max-width:44rem}
.band__in p{margin-top:16px;color:var(--on-ink);font-size:1.08rem;max-width:46ch}
.band__in .actions{margin-top:30px}

/* ── contacto ───────────────────────────────────────────────────────────── */
.cgrid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,5vw,80px);align-items:start}
.corp{border-top:1px solid var(--amethyst);margin-top:22px}
.corp li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 16px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}
.corp__k{grid-column:1/-1;font-size:.82rem;color:var(--text-3)}
.corp__v{font-weight:600;color:var(--amethyst);overflow-wrap:anywhere;min-width:0}
.corp__legal{font-family:var(--f-display);font-weight:600;font-size:1.05rem;color:var(--amethyst);line-height:1.3}
html:lang(zh) .corp__legal{font-family:var(--f-cjk)}
.corp__c{font-size:.8rem;font-weight:600;padding:6px 10px;border-radius:8px;border:1px solid var(--line);background:transparent;cursor:pointer;color:var(--amethyst);
  transition:border-color var(--t) var(--ease-out),transform var(--t-tap) var(--ease-out)}
.corp__c:active{transform:scale(.97)}
@media (hover:hover) and (pointer:fine){.corp__c:hover{border-color:var(--bloom)}}
.formcard{background:var(--white);border:1px solid var(--line);border-radius:18px;padding:clamp(22px,3vw,38px);box-shadow:var(--sh-1)}
.formcard h2{font-family:var(--f-display);font-weight:600;font-size:1.3rem;color:var(--amethyst);letter-spacing:-.01em}
html:lang(zh) .formcard h2{font-family:var(--f-cjk)}
.reqnote{margin-top:8px;font-size:.84rem;color:var(--text-3)}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
.field{display:flex;flex-direction:column;gap:6px;margin-top:16px}
.field label{font-size:.88rem;font-weight:600;color:var(--amethyst)}
.req{color:var(--bloom);margin-left:3px}
.field input,.field select,.field textarea{width:100%;min-height:48px;padding:11px 13px;border:1px solid rgba(60,37,71,.28);border-radius:10px;background:var(--white);
  font-size:1rem;color:var(--ink);transition:border-color var(--t) var(--ease-out),box-shadow var(--t) var(--ease-out)}
.field textarea{min-height:132px;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--bloom);box-shadow:0 0 0 3px rgba(107,74,126,.18)}
.fielderr{display:none;font-size:.84rem;color:var(--err)}
.field.bad input,.field.bad select{border-color:var(--err)}
.field.bad .fielderr{display:block}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.formcard .btn{margin-top:24px}
.formcard button[aria-disabled="true"]{opacity:.6;cursor:progress}
.formmsg{margin-top:14px;font-size:.93rem;min-height:1.4em}
.formmsg[data-s="ok"]{color:var(--ok)}.formmsg[data-s="err"]{color:var(--err)}
.nextsteps{counter-reset:s;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;border-top:1px solid var(--amethyst)}
.nextsteps li{counter-increment:s;padding:18px 0 0;color:var(--text-2);font-size:.95rem}
.nextsteps li::before{content:counter(s,decimal-leading-zero);display:block;font-family:var(--f-mono);font-size:.8rem;color:var(--bloom);margin-bottom:8px}

/* ── legales y 404 ──────────────────────────────────────────────────────── */
.measure{max-width:760px}
.legal h2{margin-top:clamp(32px,4vw,48px)}
.legal p{margin-top:12px;color:var(--text-2)}
.notfound{display:flex;flex-wrap:wrap;gap:14px 32px}
.phead .num{font-size:.9rem;color:var(--lilac);margin-bottom:8px}

/* ── FOOTER 09 · panel de vidrio sobre tinte de malla ───────────────────── */
.ft{position:relative;overflow:hidden;padding:clamp(56px,7vw,88px) clamp(16px,4vw,40px) 28px;
  background:
    radial-gradient(50% 70% at 8% 0%,color-mix(in srgb,var(--bloom) 26%,transparent),transparent 62%),
    radial-gradient(46% 64% at 92% 12%,color-mix(in srgb,var(--lilac) 34%,transparent),transparent 62%),
    radial-gradient(60% 80% at 56% 100%,color-mix(in srgb,var(--platinum) 40%,transparent),transparent 62%),
    var(--paper)}
.ft__panel{max-width:calc(var(--maxw) - 2 * var(--gut) + 64px);margin:0 auto;border-radius:var(--r-panel);
  background:rgba(255,255,255,.6);-webkit-backdrop-filter:blur(18px) saturate(150%);backdrop-filter:blur(18px) saturate(150%);
  border:1px solid rgba(255,255,255,.75);box-shadow:0 24px 60px -30px rgba(60,37,71,.45);
  padding:clamp(32px,5vw,56px) clamp(22px,4vw,48px) 0}
.ft__grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1.3fr);gap:34px}
.ft__logo{display:inline-flex}
.ft__logo img{height:48px;width:auto}
.ft__tag{margin-top:18px;font-family:var(--f-display);font-weight:600;font-size:1rem;color:var(--amethyst);letter-spacing:-.005em}
html:lang(zh) .ft__tag{font-family:var(--f-cjk)}
.ft__legal{margin-top:10px;font-size:.88rem;color:var(--text-2);max-width:36ch}
.ft__col h3{font-size:.86rem;font-weight:600;color:var(--bloom)}
.ft__col ul{margin-top:14px;display:flex;flex-direction:column;gap:10px}
.ft__col a{font-size:.94rem;color:var(--text-2);overflow-wrap:anywhere;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:5px;
  transition:color var(--t) var(--ease-out),text-decoration-color var(--t) var(--ease-out)}
@media (hover:hover) and (pointer:fine){.ft__col a:hover{color:var(--amethyst);text-decoration-color:var(--bloom)}}
.ft__talk p{margin-top:14px;font-size:.92rem;color:var(--text-2)}
.ft__talk .ft__mail{display:inline-block;margin-top:10px;font-weight:600;color:var(--amethyst);overflow-wrap:anywhere}
.ft__talk .btn{margin-top:16px;min-height:44px;padding:10px 16px;font-size:.92rem}
.ft__talk .btn--solid{color:var(--white);text-decoration:none}
.ft__bottom{margin-top:clamp(32px,5vw,48px);padding:20px 0 22px;border-top:1px solid rgba(60,37,71,.12);
  display:flex;flex-wrap:wrap;gap:10px 24px;justify-content:space-between;align-items:center;font-size:.86rem;color:var(--text-3)}
.ft__bottom nav{display:flex;flex-wrap:wrap;gap:6px 20px}
.ft__bottom a{color:var(--text-2)}
.ft__up{display:inline-flex;align-items:center;gap:8px}
.ft__up svg{width:14px;height:14px}

/* ── cookies ────────────────────────────────────────────────────────────── */
.cookie{position:fixed;left:16px;bottom:16px;z-index:150;width:min(460px,calc(100vw - 32px));
  display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 10px 10px 16px;border-radius:14px;
  background:rgba(35,26,41,.92);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:var(--on-ink);border:1px solid var(--line-ink);box-shadow:var(--sh-2);font-size:.82rem;line-height:1.45}
.cookie.hide{display:none}
.cookie .btn{min-height:40px;padding:8px 16px;white-space:nowrap;flex:none}

/* ── aparición (solo bajo el pliegue; lo que ya se ve, se ve) ───────────── */
.js .reveal.armed{opacity:0;transform:translateY(14px);transition:opacity .5s var(--ease-out),transform .5s var(--ease-out)}
.js .reveal.armed.in{opacity:1;transform:none}

/* ── responsive ─────────────────────────────────────────────────────────── */
@media (max-width:1180px){
  .hdr__nav a{padding:9px 9px;font-size:.88rem}
  .ft__grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .ft__grid>div:first-child{grid-column:1/-1}
}
@media (max-width:1040px){
  .hdr__nav{display:none}
  .hdr__burger{display:inline-flex}
  .hdr__end{margin-left:auto}
  .figs{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:44px}
  .figs::before{display:none}
  .figs li{border-top:2px solid rgba(200,192,204,.3);padding-top:30px}
  .figs li::before{top:-10px}
  .pane,.pane--8{grid-column:span 6}
  .pane--12{grid-column:span 12}
  .net,.net--full,.world__grid{grid-template-columns:minmax(0,1fr)}
  .net__media{min-height:0}
  .net__media img{position:static;aspect-ratio:3/2}
  .dgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .indgrid{grid-template-columns:minmax(0,1fr)}
  .plgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .plcard,.plcard:nth-child(-n+2){grid-column:span 1}
  .plcard:last-child{grid-column:span 2}
  .seq{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:34px}
  .seq li:nth-child(3)::before{right:auto;width:9px}
  .seq li:nth-child(4)::before{left:9px}
  .phil{grid-template-columns:repeat(2,minmax(0,1fr))}
  .why{grid-template-columns:repeat(2,minmax(0,1fr))}
  .why li:nth-child(n+3){border-top-color:var(--line)}
  .nextsteps{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:900px){
  .fzig__row,.fzig__row:nth-child(even),.split,.split--57,.split--75,.cgrid{grid-template-columns:minmax(0,1fr)}
  .fzig__row:nth-child(even) .fzig__media{order:0}
  .split__media--tall img{aspect-ratio:3/2}
}
@media (max-width:720px){
  body{font-size:16px}
  .hdr__logo img{height:34px}
  .hdr__logo .lg-pri{top:5px}
  .lang__trigger .lang__label{display:none}
  .lang__trigger .chev{display:none}
  .hero__in{padding-bottom:196px}
  .hero__veil{background:linear-gradient(180deg,rgba(35,26,41,.72) 0%,rgba(35,26,41,.4) 30%,rgba(35,26,41,.78) 55%,rgba(35,26,41,.94) 100%)}
  .phead__veil{background:linear-gradient(180deg,rgba(35,26,41,.74) 0%,rgba(35,26,41,.72) 35%,rgba(35,26,41,.95) 70%)}
  .route{bottom:104px}
  .route li{font-size:.76rem;max-width:30vw}
  .pane,.pane--8,.pane--12{grid-column:span 12;min-height:260px}
  .capline{grid-template-columns:minmax(0,1fr);row-gap:0}
  .capline li{padding:0 0 18px 34px}
  .capline li::before,.capline li:nth-child(n)::before{left:8px;right:auto;top:0;bottom:0;width:2px;height:auto}
  .capline li:first-child::before{top:9px}
  .capline li:last-child::before{bottom:auto;height:9px}
  .capline li::after{top:0}
  .capline b{margin-top:0}
  .seq{grid-template-columns:minmax(0,1fr);row-gap:0}
  .seq li{padding:0 0 22px 34px}
  .seq li::before,.seq li:nth-child(n)::before{left:8px;right:auto;top:0;bottom:0;width:2px;height:auto}
  .seq li:first-child::before{top:9px}
  .seq li:last-child::before{bottom:auto;height:9px}
  .imgband,.dgrid,.phil,.why,.facts,.frow,.nextsteps{grid-template-columns:minmax(0,1fr)}
  .why li:nth-child(n+2){border-top-color:var(--line)}
  .facts div{grid-template-columns:minmax(0,1fr)}
  .regions{grid-template-columns:minmax(0,1fr)}
  .indcard{grid-template-columns:minmax(0,1fr)}
  .plgrid{grid-template-columns:minmax(0,1fr)}
  .plcard:last-child{grid-column:span 1}
  .stationlist>li{grid-template-columns:34px minmax(0,1fr)}
  .stationlist figure,.stationlist>li>div{grid-column:2}
  .stationlist>li>div{margin-top:18px}
  .map .stn text,.map .stn--prov text{font-size:32px}
  .world__map .reg text,.world__map .cn text{font-size:32px}
  .world__map .hub text{font-size:26px}
  .map .ln{stroke-width:8}
  .ft__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ft__grid>.ft__talk{grid-column:1/-1}
  .cookie{left:8px;right:8px;bottom:8px;width:auto;font-size:.76rem;padding:8px 8px 8px 12px}
}
@media (max-width:420px){
  .hdr__logo img{height:30px}
  .figs{grid-template-columns:minmax(0,1fr)}
  .ft__grid{grid-template-columns:minmax(0,1fr)}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{transition-duration:.01ms !important;animation-duration:.01ms !important;animation-iteration-count:1 !important}
  .mesh i{animation:none}
  .hero__media video{display:none}
  .js .hero__pause{display:none}
  .js .reveal.armed{opacity:1;transform:none}
}
