/* ═══════════════════════════════════════════════════════════
   TEMA: MANIFIESTO DE CARGA
   Mundo visual: la carta porte / documento fiscal timbrado.
   Papel, tinta, filetes finos, campos rotulados, folios y sellos.
   Esquinas rectas (un documento no tiene esquinas redondeadas).
   Rige TODO el sitio, no solo el hero.
   ═══════════════════════════════════════════════════════════ */

html[data-theme="manifiesto"] {
  /* Superficies: papel */
  --bg:        #f4f2ec;
  --bg-2:      #eae7dd;
  --surface:   #faf9f5;
  --surface-2: #eae7dd;
  --line:        rgba(22, 25, 29, 0.18);
  --line-strong: rgba(22, 25, 29, 0.34);

  /* Tinta oficial */
  --blue:        #14487f;
  --blue-deep:   #0d3159;
  --blue-bright: #14487f;
  --blue-soft:   rgba(20, 72, 127, 0.07);
  --green:       #1d6b4a;
  --green-bright:#1d6b4a;

  /* Texto */
  --ink:    #16191d;
  --body:   #3a4048;
  --muted:  #5d646d;

  /* "Consola" ya no es consola: es el reverso del documento */
  --console:    #e6e2d7;
  --console-2:  #eae7dd;
  --console-3:  #f0ede4;
  --con-ink:    #16191d;
  --con-body:   rgba(22, 25, 29, 0.86);
  --con-muted:  rgba(22, 25, 29, 0.58);
  --con-line:   rgba(22, 25, 29, 0.16);
  --con-line-2: rgba(22, 25, 29, 0.30);

  /* Sombras: casi nulas, el papel no flota */
  --shadow-sm: 0 1px 0 rgba(22, 25, 29, 0.06);
  --shadow-md: 0 1px 0 rgba(22, 25, 29, 0.08);
  --shadow-console: 0 2px 0 rgba(22, 25, 29, 0.10);

  /* Tipografía del documento */
  --font-sans: 'Archivo', system-ui, sans-serif;
  --font-mono: 'Courier Prime', ui-monospace, monospace;

  /* Esquinas rectas */
  --r-btn:   2px;
  --r-card:  0px;
  --r-panel: 0px;
  --r-pill:  2px;
}

/* ── Sello de agua: el papel completo ── */
html[data-theme="manifiesto"] body { background: var(--bg); }

/* ── NAV: cabecera de expediente ── */
html[data-theme="manifiesto"] #header {
  background: rgba(244, 242, 236, 0.92);
  border-bottom: 1px solid var(--line);
}
html[data-theme="manifiesto"] #header.scrolled {
  background: rgba(244, 242, 236, 0.98);
  box-shadow: none;
  border-bottom-color: var(--line-strong);
}
html[data-theme="manifiesto"] .nav-logo-name { letter-spacing: 0.10em; }
html[data-theme="manifiesto"] .nav-links li a { border-radius: 0; }
html[data-theme="manifiesto"] .nav-links li a::after { border-radius: 0; height: 2px; bottom: 0; }
html[data-theme="manifiesto"] .btn-nav {
  border-radius: 0;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  font-size: 12.5px !important;
}
html[data-theme="manifiesto"] .btn-nav-platform {
  border-radius: 0 !important;
  border-width: 1px !important;
}

/* ── HERO: la carátula del documento ── */
html[data-theme="manifiesto"] .hero { background: var(--bg); }
html[data-theme="manifiesto"] .hero-bg {
  background:
    linear-gradient(160deg, rgba(244, 242, 236, 0.94) 0%, rgba(244, 242, 236, 0.90) 55%, rgba(234, 231, 221, 0.94) 100%),
    url('../images/TransporteFondo.webp') center 30%/cover no-repeat;
  filter: saturate(0.20) contrast(0.92);
}
html[data-theme="manifiesto"] .hero-glow { display: none; }
html[data-theme="manifiesto"] .hero-scan { display: none; }
/* Retícula de campos del formulario, no retícula de radar */
html[data-theme="manifiesto"] .hero::before {
  background-image:
    linear-gradient(rgba(22, 25, 29, 0.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(22, 25, 29, 0.055) 1px, transparent 1px);
  background-size: 88px 40px;
  mask-image: none;
  -webkit-mask-image: none;
}

html[data-theme="manifiesto"] .hero-statusbar {
  border-top: 2px solid var(--ink);
  border-bottom: 1px solid var(--line-strong);
  color: var(--muted);
  letter-spacing: 0.14em;
  text-transform: uppercase;
}
html[data-theme="manifiesto"] .hsb-coord,
html[data-theme="manifiesto"] .hsb-right { color: var(--ink); }
html[data-theme="manifiesto"] .hsb-sep { background: var(--line-strong); }

html[data-theme="manifiesto"] .hero-badge {
  background: transparent;
  border: 1px solid var(--ink);
  border-radius: 0;
  color: var(--ink);
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-size: 10.5px;
}
html[data-theme="manifiesto"] .hero-copy h1 {
  color: var(--ink);
  letter-spacing: -0.02em;
  font-weight: 700;
}
html[data-theme="manifiesto"] .hero-copy h1 em { color: var(--blue); }
html[data-theme="manifiesto"] .hero-sub { color: var(--body); }

/* Stats del hero: renglones de campo, no cifras flotantes */
html[data-theme="manifiesto"] .hero-stats {
  border-top: 1px solid var(--line-strong);
  padding-top: 18px;
  gap: 0;
}
html[data-theme="manifiesto"] .hero-stats .stat {
  padding-right: 30px;
  margin-right: 30px;
  border-right: 1px solid var(--line);
}
html[data-theme="manifiesto"] .hero-stats .stat:last-child { border-right: none; }
html[data-theme="manifiesto"] .hero-stats .stat strong { color: var(--ink); }
html[data-theme="manifiesto"] .hero-stats .stat span { color: var(--muted); }
html[data-theme="manifiesto"] .hero-stats .stat-sep { display: none; }

/* ── Botones: sellos rectangulares ── */
html[data-theme="manifiesto"] .btn-primary,
html[data-theme="manifiesto"] .btn-submit {
  border-radius: 0;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-size: 13px;
  box-shadow: none;
}
html[data-theme="manifiesto"] .btn-outline {
  border-radius: 0;
  border: 1px solid var(--ink);
  color: var(--ink);
  background: transparent;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-size: 13px;
}
html[data-theme="manifiesto"] .btn-outline:hover { background: var(--ink); color: var(--bg); }

/* ── SECCIONES: bloques del expediente separados por filete ── */
html[data-theme="manifiesto"] .section {
  border-top: 1px solid var(--line);
}
html[data-theme="manifiesto"] .section-raised { background: var(--bg-2); }
html[data-theme="manifiesto"] .section-header h2 {
  letter-spacing: -0.015em;
  font-weight: 700;
}
/* Rótulo de campo antes de cada encabezado de sección */
html[data-theme="manifiesto"] .section-header::before {
  content: '';
  display: block;
  width: 46px;
  height: 3px;
  background: var(--ink);
  margin-bottom: 18px;
}

/* ── BENTO → campos rotulados del manifiesto ── */
html[data-theme="manifiesto"] .bento-card {
  border-radius: 0;
  border: 1px solid var(--line-strong);
  background: var(--surface);
  box-shadow: none;
}
html[data-theme="manifiesto"] .bento-card:hover {
  border-color: var(--ink);
  transform: none;
  box-shadow: none;
}
html[data-theme="manifiesto"] .bento-tag,
html[data-theme="manifiesto"] .bento-ch {
  border-radius: 0;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-size: 9.5px;
  color: var(--muted);
  background: transparent;
  border: none;
  border-bottom: 1px solid var(--line);
  padding: 0 0 7px;
  display: block;
  width: 100%;
}
html[data-theme="manifiesto"] .bento-icon {
  border-radius: 0;
  background: transparent;
  border: 1px solid var(--line-strong);
  color: var(--ink);
}

/* ── SOFTWARE: la sección oscura se vuelve pliego de papel ── */
html[data-theme="manifiesto"] .section-software {
  background: var(--bg-2);
  border-top: 2px solid var(--ink);
  border-bottom: 2px solid var(--ink);
  color: var(--ink);
}
html[data-theme="manifiesto"] .software-bg,
html[data-theme="manifiesto"] .software-gridlines { display: none; }
html[data-theme="manifiesto"] .section-software h2,
html[data-theme="manifiesto"] .section-software h3,
html[data-theme="manifiesto"] .software-intro h2 { color: var(--ink); }
html[data-theme="manifiesto"] .section-software p,
html[data-theme="manifiesto"] .software-intro p { color: var(--body); }
html[data-theme="manifiesto"] .software-fact {
  border-top: 1px solid var(--line-strong);
  border-left: none;
  padding-top: 14px;
}
html[data-theme="manifiesto"] .soft-module {
  background: var(--surface);
  border: 1px solid var(--line-strong);
  border-radius: 0;
  box-shadow: none;
}
html[data-theme="manifiesto"] .soft-module:hover {
  border-color: var(--ink);
  transform: none;
  box-shadow: none;
}
html[data-theme="manifiesto"] .soft-module-ch,
html[data-theme="manifiesto"] .soft-spec,
html[data-theme="manifiesto"] .section-tag {
  border-radius: 0;
  background: transparent;
  border: 1px solid var(--line);
  color: var(--muted);
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-size: 9.5px;
}
html[data-theme="manifiesto"] .soft-preview,
html[data-theme="manifiesto"] .soft-preview-shot { border-radius: 0; }
html[data-theme="manifiesto"] .btn-soft,
html[data-theme="manifiesto"] .soft-link {
  border-radius: 0;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-size: 12px;
}

/* ── PRODUCTOS: renglones de partida ── */
html[data-theme="manifiesto"] .product-card {
  border-radius: 0;
  border: 1px solid var(--line-strong);
  background: var(--surface);
  box-shadow: none;
}
html[data-theme="manifiesto"] .product-card:hover {
  border-color: var(--ink);
  transform: none;
  box-shadow: none;
}
html[data-theme="manifiesto"] .product-img { border-radius: 0; background: var(--bg-2); }
html[data-theme="manifiesto"] .product-cat,
html[data-theme="manifiesto"] .product-badge {
  border-radius: 0;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-size: 9.5px;
}
html[data-theme="manifiesto"] .product-badge {
  background: var(--ink);
  color: var(--bg);
}
html[data-theme="manifiesto"] .product-features li { border-bottom: 1px dotted var(--line); padding-bottom: 6px; }
html[data-theme="manifiesto"] .btn-product {
  border-radius: 0;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

/* ── BANDA DE IMAGEN: sello de agua sobre el papel ── */
html[data-theme="manifiesto"] .img-band-overlay {
  background: linear-gradient(100deg, rgba(244, 242, 236, 0.95) 0%, rgba(244, 242, 236, 0.80) 60%, rgba(234, 231, 221, 0.70) 100%);
}
html[data-theme="manifiesto"] .img-band-content h3 { color: var(--ink); }
html[data-theme="manifiesto"] .img-band-content p  { color: var(--body); }
html[data-theme="manifiesto"] .img-band-coord      { color: var(--muted); }

/* ── CARRUSEL / VIDEOS ── */
html[data-theme="manifiesto"] .carousel-track-container,
html[data-theme="manifiesto"] .video-card,
html[data-theme="manifiesto"] .video-embed,
html[data-theme="manifiesto"] .map-container {
  border-radius: 0;
  border: 1px solid var(--line-strong);
  box-shadow: none;
}
html[data-theme="manifiesto"] .carousel-btn { border-radius: 0; }
html[data-theme="manifiesto"] .carousel-dot { border-radius: 0; }

/* ── NOSOTROS ── */
html[data-theme="manifiesto"] .nosotros-img-wrap,
html[data-theme="manifiesto"] .stat-card {
  border-radius: 0;
  border: 1px solid var(--line-strong);
  box-shadow: none;
}
html[data-theme="manifiesto"] .valor-key {
  border-radius: 0;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-size: 9.5px;
}

/* ── CONTACTO: formato de solicitud ── */
html[data-theme="manifiesto"] .contact-form-wrap {
  border-radius: 0;
  border: 1px solid var(--line-strong);
  background: var(--surface);
  box-shadow: none;
}
html[data-theme="manifiesto"] .form-group input,
html[data-theme="manifiesto"] .form-group select,
html[data-theme="manifiesto"] .form-group textarea {
  border-radius: 0;
  border: 1px solid var(--line-strong);
  background: var(--bg);
}
html[data-theme="manifiesto"] .form-group label {
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-size: 10px;
  font-family: var(--font-mono);
  color: var(--muted);
}
html[data-theme="manifiesto"] .contact-item {
  border-radius: 0;
  border: 1px solid var(--line);
}
html[data-theme="manifiesto"] .contact-icon {
  border-radius: 0;
  border: 1px solid var(--line-strong);
  background: transparent;
}

/* ── FOOTER: pie de documento ── */
html[data-theme="manifiesto"] .footer {
  background: var(--bg-2);
  border-top: 2px solid var(--ink);
  color: var(--body);
}
html[data-theme="manifiesto"] .footer h4 {
  color: var(--ink);
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-size: 10.5px;
}
html[data-theme="manifiesto"] .footer-logo-name { color: var(--ink); }
html[data-theme="manifiesto"] .footer-links li a,
html[data-theme="manifiesto"] .footer-contact p,
html[data-theme="manifiesto"] .footer-brand p { color: var(--body); }
html[data-theme="manifiesto"] .footer-links li a:hover { color: var(--blue); }
html[data-theme="manifiesto"] .footer-bottom {
  border-top: 1px solid var(--line);
  color: var(--muted);
}

/* ── Chat: ficha adjunta ── */
html[data-theme="manifiesto"] .chat-toggle { border-radius: 0; }
html[data-theme="manifiesto"] .chat-box {
  border-radius: 0;
  border: 1px solid var(--line-strong);
}
html[data-theme="manifiesto"] .chat-bubble { border-radius: 2px; }
html[data-theme="manifiesto"] .scroll-top { border-radius: 0; }
