/* ============================================================================
   RUMBO · Base — reset, chrome (tapa/pie tipo pasaporte), conmutador de
   idioma con soporte RTL, y los primeros componentes. Todo lee de tokens.css.
   ============================================================================ */
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{background:var(--rmb-bg);color:var(--rmb-ink);font-family:var(--rmb-sans);
  font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;
  /* papel de seguridad: microtrama diagonal muy tenue */
  background-image:
    repeating-linear-gradient(45deg,rgba(120,100,70,.028) 0 2px,transparent 2px 8px),
    radial-gradient(140% 100% at 100% 0,rgba(24,74,50,.04),transparent 55%),
    radial-gradient(120% 90% at 0 100%,rgba(110,27,40,.04),transparent 55%)}
a{color:var(--rmb-granate);text-decoration:none}
img{max-width:100%;height:auto}
:focus-visible{outline:2px solid var(--rmb-oro-d);outline-offset:3px;border-radius:2px}
.rmb-wrap{max-width:var(--rmb-wrap);margin:0 auto;padding:0 26px}
/* Salto al contenido: oculto sin crear desbordamiento (el viejo left:-9999px
   rompía el ancho en RTL). Aparece al enfocarlo con el teclado. */
.rmb-skip{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);
  clip-path:inset(50%);white-space:nowrap;z-index:100;background:var(--rmb-granate);
  color:var(--rmb-oro-hi);padding:0;font-weight:600}
.rmb-skip:focus{width:auto;height:auto;clip:auto;clip-path:none;inset-block-start:0;
  inset-inline-start:0;padding:12px 18px}

/* etiquetas mono tipo campo de documento */
.rmb-label{font-family:var(--rmb-mrz);font-size:10px;letter-spacing:.18em;text-transform:uppercase;
  color:var(--rmb-ink-3)}
.rmb-rtl .rmb-label{letter-spacing:.02em}

/* ── LOGOTIPO (imagen) ── */
.rmb-logo{display:block;width:auto;height:36px;max-width:100%;object-fit:contain}
.rmb-logo--mh{height:42px}
.rmb-logo--ft{height:48px}

/* ── MARCA compacta (imagen; contenida en su caja, nunca se deforma) ── */
.rmb-emblem{display:block;object-fit:contain;max-width:100%}

/* ══════════ TAPA / TOPBAR (granate como la portada del pasaporte) ══════════ */
.rmb-top{background:linear-gradient(180deg,var(--rmb-granate-l),var(--rmb-granate) 70%,var(--rmb-granate-d));
  color:var(--rmb-oro-hi);position:relative}
.rmb-top::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;
  background:linear-gradient(90deg,transparent,var(--rmb-oro) 20%,var(--rmb-oro-hi) 50%,var(--rmb-oro) 80%,transparent)}
.rmb-top__in{display:flex;align-items:center;justify-content:space-between;gap:18px;
  min-height:66px;padding-top:8px;padding-bottom:8px}
.rmb-top__brand{display:flex;align-items:center;gap:12px;color:var(--rmb-oro-hi)}
.rmb-top__brand .rmb-emblem{width:34px;height:34px;flex:none}
.rmb-top__tag{font-family:var(--rmb-mrz);font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;
  color:var(--rmb-oro);opacity:.75;margin-top:2px}
.rmb-rtl .rmb-top__tag{letter-spacing:.04em}
.rmb-top__r{display:flex;align-items:center;gap:14px}

/* NAV principal · grupos con submenú (mega-menú premium) */
.rmb-nav__list{display:flex;gap:2px;list-style:none;margin:0;padding:0}
.rmb-nav__grp{position:relative}
.rmb-nav__top{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;
  color:rgba(235,215,154,.85);font-size:14px;font-weight:500;padding:9px 14px;border-radius:var(--rmb-radius);
  transition:color .15s,background .15s;cursor:pointer}
.rmb-nav__top:hover,.rmb-nav__grp:hover .rmb-nav__top,.rmb-nav__grp:focus-within .rmb-nav__top{color:#fff;background:rgba(235,215,154,.12)}
.rmb-nav__top--solo:hover{background:rgba(235,215,154,.12)}
.rmb-nav__car{width:6px;height:6px;border-inline-end:1.5px solid currentColor;border-block-end:1.5px solid currentColor;
  transform:rotate(45deg);margin-block-start:-3px;transition:transform .2s,margin .2s;opacity:.85}
.rmb-nav__grp:hover .rmb-nav__car,.rmb-nav__grp:focus-within .rmb-nav__car{transform:rotate(-135deg);margin-block-start:1px}
/* panel del submenú */
.rmb-mega{position:absolute;inset-inline-start:0;top:100%;margin-block-start:14px;min-width:290px;
  background:var(--rmb-surface);border:1px solid var(--rmb-crema-3);border-radius:var(--rmb-radius-lg);
  box-shadow:var(--rmb-shadow);padding:8px;opacity:0;visibility:hidden;transform:translateY(-8px);
  transition:opacity .18s ease,transform .18s ease,visibility .18s;z-index:60}
.rmb-mega::before{content:"";position:absolute;top:-6px;inset-inline-start:24px;width:11px;height:11px;
  background:var(--rmb-surface);border-inline-start:1px solid var(--rmb-crema-3);border-block-start:1px solid var(--rmb-crema-3);transform:rotate(45deg)}
.rmb-mega::after{content:"";position:absolute;top:-16px;inset-inline:0;height:16px} /* puente de hover sobre el hueco */
.rmb-nav__grp:hover .rmb-mega,.rmb-nav__grp:focus-within .rmb-mega{opacity:1;visibility:visible;transform:translateY(0)}
.rmb-mega__i{display:block;padding:11px 14px;border-radius:var(--rmb-radius);transition:background .15s;position:relative}
.rmb-mega__i:hover{background:var(--rmb-crema)}
.rmb-mega__i::after{content:"→";position:absolute;inset-inline-end:14px;top:50%;transform:translateY(-50%) translateX(-4px);
  color:var(--rmb-oro-d);opacity:0;transition:opacity .15s,transform .15s}
.rmb-mega__i:hover::after{opacity:1;transform:translateY(-50%) translateX(0)}
.rmb-rtl .rmb-mega__i::after{content:"←"}
.rmb-mega__t{display:block;font-family:var(--rmb-serif);font-size:15.5px;color:var(--rmb-ink);font-weight:600}
.rmb-mega__d{display:block;font-size:12.5px;color:var(--rmb-ink-3);margin-block-start:2px}
@media(max-width:900px){.rmb-nav{display:none}}

/* botón "entrar" (oro sobre granate) */
.rmb-btn{display:inline-flex;align-items:center;gap:8px;font-family:var(--rmb-sans);font-weight:600;
  font-size:14px;border-radius:var(--rmb-radius);padding:10px 18px;cursor:pointer;border:1px solid transparent;
  transition:transform .15s,box-shadow .15s,background .15s,color .15s;text-decoration:none}
.rmb-btn--gold{background:linear-gradient(180deg,var(--rmb-oro-hi),var(--rmb-oro));color:var(--rmb-granate-d);
  box-shadow:0 2px 0 var(--rmb-oro-d)}
.rmb-btn--gold:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(154,122,46,.4)}
.rmb-btn--ghost{border-color:rgba(235,215,154,.4);color:var(--rmb-oro-hi)}
.rmb-btn--ghost:hover{background:rgba(235,215,154,.1);color:#fff}
.rmb-btn--lg{padding:15px 28px;font-size:16px}
.rmb-btn--granate{background:var(--rmb-granate);color:var(--rmb-oro-hi);box-shadow:0 2px 0 var(--rmb-granate-d)}
.rmb-btn--granate:hover{transform:translateY(-1px);background:var(--rmb-granate-l)}

/* ── CONMUTADOR DE IDIOMA ── */
.rmb-lang{display:inline-flex;border:1px solid rgba(235,215,154,.35);border-radius:100px;padding:3px;background:rgba(84,18,28,.35)}
.rmb-lang__b{font-family:var(--rmb-mrz);font-size:11px;letter-spacing:.06em;color:rgba(235,215,154,.75);
  padding:7px 13px;border-radius:100px;transition:.15s;line-height:1}
.rmb-lang__b:hover{color:#fff}
.rmb-lang__b.is-on{background:var(--rmb-oro);color:var(--rmb-granate-d);font-weight:600}
.rmb-lang .rmb-lang__b[hreflang="ar"]{font-family:var(--rmb-ar);font-size:13px}
/* variante sobre papel (dentro de páginas claras) */
.rmb-lang--paper{border-color:var(--rmb-line-2);background:var(--rmb-surface)}
.rmb-lang--paper .rmb-lang__b{color:var(--rmb-ink-2)}
.rmb-lang--paper .rmb-lang__b.is-on{background:var(--rmb-granate);color:var(--rmb-oro-hi)}

/* ══════════ HERO (marcador F0: la landing entera es F1) ══════════ */
.rmb-hero{position:relative;padding:74px 0 60px;overflow:hidden}
.rmb-hero__kick{font-family:var(--rmb-mrz);font-size:12px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--rmb-granate);display:inline-flex;align-items:center;gap:12px}
.rmb-hero__kick::before{content:"";width:26px;height:1px;background:var(--rmb-oro-d)}
.rmb-rtl .rmb-hero__kick{letter-spacing:.03em}
.rmb-hero__h{font-family:var(--rmb-serif);font-weight:800;font-size:clamp(34px,6vw,64px);line-height:1.02;
  letter-spacing:-.03em;color:var(--rmb-ink);margin:20px 0;max-width:16ch;text-wrap:balance}
.rmb-rtl .rmb-hero__h{font-family:var(--rmb-ar);line-height:1.3}
.rmb-hero__sub{font-size:18px;color:var(--rmb-ink-2);max-width:58ch;line-height:1.6}
.rmb-hero__cta{display:flex;gap:14px;margin-top:30px;flex-wrap:wrap}

/* dos orillas */
.rmb-oris{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:56px}
.rmb-ori{background:var(--rmb-surface);border:1px solid var(--rmb-line);border-radius:var(--rmb-radius-lg);
  padding:26px 24px;position:relative;box-shadow:var(--rmb-shadow-sm)}
.rmb-ori__seal{position:absolute;top:16px;inset-inline-end:16px;font-family:var(--rmb-mrz);font-size:9px;
  letter-spacing:.1em;text-transform:uppercase;border:2px solid var(--c);color:var(--c);padding:5px 8px;
  border-radius:4px;transform:rotate(6deg);opacity:.8}
.rmb-ori--sur{--c:var(--rmb-sello-verde)} .rmb-ori--norte{--c:var(--rmb-sello-azul)}
.rmb-ori__tag{font-family:var(--rmb-mrz);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--c)}
.rmb-rtl .rmb-ori__tag,.rmb-rtl .rmb-ori__seal{letter-spacing:.02em}
.rmb-ori h3{font-family:var(--rmb-serif);font-size:22px;color:var(--rmb-ink);margin:8px 60px 8px 0}
.rmb-rtl .rmb-ori h3{margin:8px 0 8px 60px}
.rmb-ori p{color:var(--rmb-ink-2);font-size:14.5px}

/* precio */
.rmb-price{margin-top:56px;background:var(--rmb-surface);border:2px solid var(--rmb-ink);border-radius:var(--rmb-radius-lg);
  padding:30px 28px;text-align:center;position:relative;max-width:420px;margin-inline:auto}
.rmb-price__t{font-family:var(--rmb-serif);font-size:20px;color:var(--rmb-ink)}
.rmb-price__amt{font-family:var(--rmb-serif);font-size:58px;color:var(--rmb-granate);line-height:1;margin:10px 0 4px}
.rmb-price__amt small{font-size:18px;color:var(--rmb-ink-2)}
.rmb-price__nota{font-size:13px;color:var(--rmb-ink-3);margin-top:8px}

/* ══════════ PIE (contratapa granate) ══════════ */
.rmb-foot{background:var(--rmb-granate-d);color:rgba(235,215,154,.8);margin-top:70px;padding:40px 0 34px;position:relative}
.rmb-foot::before{content:"";position:absolute;left:0;right:0;top:0;height:2px;
  background:linear-gradient(90deg,transparent,var(--rmb-oro) 50%,transparent)}
.rmb-foot__in{display:flex;flex-wrap:wrap;gap:22px;justify-content:space-between;align-items:center}
.rmb-foot__brand{display:flex;align-items:center;gap:12px;color:var(--rmb-oro-hi)}
.rmb-foot__nav{display:flex;gap:18px;flex-wrap:wrap}
.rmb-foot__nav a{color:rgba(235,215,154,.75);font-size:13px}
.rmb-foot__nav a:hover{color:#fff}
.rmb-foot__aviso{margin-top:22px;padding-top:18px;border-top:1px solid rgba(235,215,154,.15);
  font-size:12px;line-height:1.5;color:rgba(235,215,154,.55);max-width:70ch}
.rmb-foot__mrz{margin-top:16px;font-family:var(--rmb-mrz);font-size:11px;letter-spacing:.1em;
  color:rgba(235,215,154,.35);overflow-x:auto;white-space:nowrap}

@media(max-width:760px){
  .rmb-oris{grid-template-columns:1fr}
  .rmb-top__in{min-height:58px}
  .rmb-top__tag{display:none}
}

/* ══════════════ IMPRESIÓN · base común (documentos oficiales) ══════════════ */
@media print{
  @page{size:A4;margin:16mm}
  html{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  body{background:#fff!important}
  .rmb-top,.rmb-foot,.rmb-nav,.rmb-skip,.rmb-chat,.rmb-wa,.rmb-pwa,.rmb-btn{display:none!important}
  .rmb-main{padding:0!important}
}
