/* ════════════════════════════════════════════════════
   LimaQI Brochure · per-product, per-language, 5-slide
   1920 × 1080 landscape · MiSans + JetBrains Mono
   Industrial B2B blue + Roctez gold accents
   ════════════════════════════════════════════════════ */

@import url("colors_and_type.css");
@import url("https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600&display=swap");

:root{
  --ink:#0A0E1A;
  --ink-2:#1A2238;
  --paper:#FFFFFF;
  --paper-2:#F5F7FA;
  --paper-3:#EBEFF5;
  --rule:#C8D2E0;
  --rule-2:#E0E6EE;
  --blue:#0038A8;
  --blue-dk:#002D7A;
  --blue-tint:#E3F2FD;
  --blue-soft:#F0F6FE;
  --gold:#D4A64A;
  --gold-dk:#A88438;
  --gold-soft:#F5E9C8;
  --red-cn:#DE2910;
  --green-sa:#4FB069;
  --muted:#5A6478;
  --muted-2:#8A93A6;
  --night:#0F1422;
  --night-2:#0A0E1A;
}

*{box-sizing:border-box;margin:0;padding:0}
html,body{
  font-family:var(--font-sans);
  color:var(--ink);
  background:#0A0E1A;
  -webkit-font-smoothing:antialiased;
  font-feature-settings:"ss01","ss02";
}
deck-stage > section{
  width:1920px; height:1080px;
  background:var(--paper);
  color:var(--ink);
  position:relative;
  overflow:hidden;
  font-family:var(--font-sans);
}

/* Lang families — CN slides use cjk for headings; others use latin */
.font-zh{font-family:var(--font-cjk)}
.font-lat{font-family:var(--font-sans)}
.mono{font-family:"JetBrains Mono",monospace;font-variant-numeric:tabular-nums}

/* ── Page chrome ────────────────────────── */
.page{
  position:absolute;inset:0;
  display:flex;flex-direction:column;
  padding:0;
}
.head{
  display:flex;align-items:center;justify-content:space-between;
  padding:36px 80px 24px;
  border-bottom:1px solid var(--rule-2);
  flex-shrink:0;
}
.foot{
  display:flex;align-items:center;justify-content:space-between;
  padding:20px 80px 32px;
  border-top:1px solid var(--rule-2);
  flex-shrink:0;
  font-family:"JetBrains Mono",monospace;
  font-size:11px;letter-spacing:.18em;
  text-transform:uppercase;color:var(--muted-2);
}
.body{
  flex:1;padding:48px 80px;
  display:flex;flex-direction:column;
  min-height:0;overflow:hidden;
}

.brand{
  display:flex;align-items:center;gap:14px;
  font-weight:700;font-size:16px;letter-spacing:.04em;color:var(--ink);
}
.brand .sq{
  width:32px;height:32px;background:var(--blue);
  display:grid;place-items:center;
  color:#fff;font-weight:700;font-size:15px;
}
.brand .cn{font-family:var(--font-cjk);font-weight:500;color:var(--muted);font-size:14px}
.brand .meta{font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:.18em;color:var(--muted-2);text-transform:uppercase;margin-left:24px;padding-left:24px;border-left:1px solid var(--rule)}

.pgnum{
  font-family:"JetBrains Mono",monospace;
  font-size:13px;letter-spacing:.18em;
  color:var(--ink);font-weight:500;
}

/* ── Backgrounds ───────────────────────── */
.bg-gray{background:var(--paper-2)}
.bg-blue{background:var(--blue) !important;color:#fff !important}
.bg-blue .pgnum,.bg-blue .brand{color:#fff}
.bg-blue .brand .sq{background:#fff;color:var(--blue)}
.bg-blue .brand .cn{color:rgba(255,255,255,.65)}
.bg-blue .brand .meta{color:rgba(255,255,255,.55);border-color:rgba(255,255,255,.2)}
.bg-blue .head{border-bottom-color:rgba(255,255,255,.18)}
.bg-blue .foot{border-top-color:rgba(255,255,255,.18);color:rgba(255,255,255,.55)}
.bg-dark{
  background:linear-gradient(180deg,#0F1422 0%,#050810 100%) !important;
  color:#F2F4F8 !important;
}
.bg-dark .pgnum,.bg-dark .brand{color:#fff}
.bg-dark .brand .sq{background:var(--gold);color:var(--ink)}
.bg-dark .brand .cn{color:rgba(255,255,255,.55)}
.bg-dark .brand .meta{color:rgba(255,255,255,.45);border-color:rgba(255,255,255,.15)}
.bg-dark .head{border-bottom-color:rgba(255,255,255,.12)}
.bg-dark .foot{border-top-color:rgba(255,255,255,.12);color:rgba(255,255,255,.45)}

.grid-bg{
  position:absolute;inset:0;
  background-image:
    linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);
  background-size:64px 64px;pointer-events:none;
}

/* ── Type ─────────────────────────────── */
.eb{
  font-family:"JetBrains Mono",monospace;
  font-size:13px;font-weight:500;
  letter-spacing:.22em;text-transform:uppercase;
  color:var(--gold-dk);
}
.bg-dark .eb,.bg-blue .eb{color:var(--gold)}

.lead-zh{font-family:var(--font-cjk);font-weight:300;font-size:30px;line-height:1.5;color:var(--ink-2);letter-spacing:0}
.lead{font-size:26px;line-height:1.45;color:var(--ink-2);font-weight:300;letter-spacing:-.005em}
.bg-dark .lead, .bg-dark .lead-zh{color:rgba(255,255,255,.85)}
.bg-blue .lead, .bg-blue .lead-zh{color:rgba(255,255,255,.9)}

.body-cn{font-family:var(--font-cjk);font-size:16px;line-height:1.75;color:var(--ink-2)}
.body-lat{font-size:15px;line-height:1.65;color:var(--ink-2)}
.bg-dark .body-cn, .bg-dark .body-lat{color:rgba(255,255,255,.78)}
.bg-blue .body-cn, .bg-blue .body-lat{color:rgba(255,255,255,.85)}

.h-display-zh{
  font-family:var(--font-cjk);font-weight:300;
  font-size:120px;line-height:.98;letter-spacing:.01em;
}
.h-display{
  font-family:var(--font-sans);font-weight:300;
  font-size:140px;line-height:.95;letter-spacing:-.025em;
}
.h-display .em, .h-display-zh .em{color:var(--gold);font-weight:500}
.bg-dark .h-display, .bg-dark .h-display-zh{color:#fff}

.h-title-zh{font-family:var(--font-cjk);font-weight:500;font-size:56px;line-height:1.1;letter-spacing:0}
.h-title{font-family:var(--font-sans);font-weight:600;font-size:60px;line-height:1.05;letter-spacing:-.015em}
.bg-dark .h-title, .bg-dark .h-title-zh{color:#fff}

.h-card-zh{font-family:var(--font-cjk);font-weight:600;font-size:26px;line-height:1.2}
.h-card{font-family:var(--font-sans);font-weight:600;font-size:24px;line-height:1.15;letter-spacing:-.005em}

/* ── Slide head row ─────────────────────── */
.shead{display:flex;align-items:flex-end;justify-content:space-between;gap:48px;margin-bottom:40px}
.shead .left{flex:1;min-width:0}
.shead .right{
  text-align:right;color:var(--muted);
  font-family:"JetBrains Mono",monospace;
  font-size:12px;letter-spacing:.18em;flex-shrink:0;
}
.shead .right .big{
  display:block;font-size:56px;font-weight:300;color:var(--blue);
  letter-spacing:-.025em;line-height:1;margin-bottom:6px;
  font-family:var(--font-sans);
}
.shead .right .big .u{font-size:20px;font-weight:400;color:var(--ink);margin-left:4px}
.bg-dark .shead .right{color:rgba(255,255,255,.55)}
.bg-dark .shead .right .big{color:var(--gold)}
.bg-dark .shead .right .big .u{color:#fff}
.bg-blue .shead .right{color:rgba(255,255,255,.65)}
.bg-blue .shead .right .big{color:#fff}
.bg-blue .shead .right .big .u{color:#fff}

/* ── KPI strip ─────────────────────────── */
.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--rule-2);border-bottom:1px solid var(--rule-2)}
.kpis .k{padding:24px 24px;border-right:1px solid var(--rule-2)}
.kpis .k:last-child{border-right:0}
.kpis .k .v{font-family:var(--font-sans);font-weight:300;font-size:54px;letter-spacing:-.03em;line-height:1;color:var(--blue)}
.kpis .k .v .u{font-size:18px;font-weight:400;color:var(--ink);margin-left:4px}
.kpis .k .l{margin-top:8px;font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:.16em;color:var(--muted);text-transform:uppercase}
.kpis .k .d{font-size:13px;color:var(--ink-2);margin-top:4px}
.bg-dark .kpis{border-color:rgba(255,255,255,.15)}
.bg-dark .kpis .k{border-right-color:rgba(255,255,255,.15)}
.bg-dark .kpis .k .v{color:var(--gold)}
.bg-dark .kpis .k .v .u{color:#fff}
.bg-dark .kpis .k .l{color:rgba(255,255,255,.55)}
.bg-dark .kpis .k .d{color:rgba(255,255,255,.8)}

/* ── Tile ──────────────────────────────── */
.tile{background:#fff;border:1px solid var(--rule-2);padding:28px;display:flex;flex-direction:column;gap:14px}
.tile .ix{font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:.2em;color:var(--gold-dk);text-transform:uppercase}
.tile p{font-size:14.5px;line-height:1.6;color:var(--ink-2)}
.tile p b{color:var(--blue);font-weight:600}
.tile ul{list-style:none;display:flex;flex-direction:column;gap:8px}
.tile ul li{font-size:14px;line-height:1.5;color:var(--ink-2);padding-left:18px;position:relative}
.tile ul li::before{content:"";position:absolute;left:0;top:9px;width:8px;height:1px;background:var(--gold)}
.tile.dark{background:var(--night);color:#fff;border-color:rgba(255,255,255,.1)}
.tile.dark p,.tile.dark ul li{color:rgba(255,255,255,.78)}
.tile.dark .h-card-zh,.tile.dark .h-card{color:#fff}
.tile.gold-top{border-top:3px solid var(--gold)}
.tile.blue-top{border-top:3px solid var(--blue)}

/* ── Table ─────────────────────────────── */
table.tbl{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--rule-2)}
table.tbl thead{background:var(--night)}
table.tbl thead th{
  padding:14px 18px;text-align:left;font-weight:500;color:#fff;
  font-family:"JetBrains Mono",monospace;
  font-size:11px;letter-spacing:.14em;text-transform:uppercase;
  border-right:1px solid rgba(255,255,255,.1);
}
table.tbl thead th:last-child{border-right:0}
table.tbl tbody td{padding:14px 18px;border-bottom:1px solid var(--rule-2);border-right:1px solid var(--rule-2);vertical-align:middle;font-size:14px}
table.tbl tbody td:last-child{border-right:0}
table.tbl tbody tr:last-child td{border-bottom:0}
table.tbl tbody tr:nth-child(even){background:var(--paper-2)}
table.tbl tbody tr.hl td{background:rgba(212,166,74,.08);font-weight:500}
table.tbl tbody tr.hl td:first-child{border-left:3px solid var(--gold);padding-left:15px}
table.tbl .n{font-family:"JetBrains Mono",monospace;color:var(--blue);font-weight:500}
table.tbl .ng{font-family:"JetBrains Mono",monospace;color:var(--gold-dk);font-weight:500}

/* ── Flow ─────────────────────────────── */
.flow{display:grid;gap:0;border:1px solid var(--rule-2);background:#fff}
.flow.c5{grid-template-columns:repeat(5,1fr)}
.flow.c6{grid-template-columns:repeat(6,1fr)}
.flow.c7{grid-template-columns:repeat(7,1fr)}
.flow .step{padding:22px 20px;border-right:1px solid var(--rule-2);display:flex;flex-direction:column;gap:8px}
.flow .step:last-child{border-right:0}
.flow .step .day{font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:.16em;color:var(--gold-dk);font-weight:500}
.flow .step h4{font-size:16px;font-weight:600;line-height:1.2}
.flow .step h4.zh{font-family:var(--font-cjk)}
.flow .step .es{font-size:11px;color:var(--muted);font-style:italic;margin-top:-4px}
.flow .step .d{font-size:12.5px;line-height:1.5;color:var(--ink-2);margin-top:auto;padding-top:4px}
.flow .step.emph{background:var(--blue);color:#fff}
.flow .step.emph h4{color:#fff}
.flow .step.emph .d{color:rgba(255,255,255,.85)}
.flow .step.emph .day{color:var(--gold)}
.flow .step.emph .es{color:rgba(255,255,255,.55)}
.bg-dark .flow{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.15)}
.bg-dark .flow .step{border-right-color:rgba(255,255,255,.15)}
.bg-dark .flow .step h4{color:#fff}
.bg-dark .flow .step .d{color:rgba(255,255,255,.7)}
.bg-dark .flow .step .es{color:rgba(255,255,255,.4)}

/* ── Contact card ──────────────────────── */
.contact{background:var(--night);color:#fff;padding:36px;border-top:3px solid var(--gold)}
.contact.light{background:#fff;color:var(--ink);border-top-color:var(--blue);border:1px solid var(--rule-2);border-top:3px solid var(--blue)}
.contact .eb{color:var(--gold);margin-bottom:12px}
.contact.light .eb{color:var(--blue)}
.contact h3{font-size:26px;font-weight:500;margin-bottom:4px}
.contact h3.zh{font-family:var(--font-cjk);font-weight:500}
.contact .role{font-size:13px;color:rgba(255,255,255,.6);font-style:italic;margin-bottom:24px}
.contact.light .role{color:var(--muted)}
.contact .row{display:flex;align-items:baseline;gap:14px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.12)}
.contact.light .row{border-bottom-color:var(--rule-2)}
.contact .row:last-child{border-bottom:0}
.contact .row .l{font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:.2em;color:rgba(255,255,255,.45);text-transform:uppercase;min-width:100px}
.contact.light .row .l{color:var(--muted)}
.contact .row .v{font-size:14px;color:#fff;font-family:var(--font-cjk);line-height:1.45}
.contact.light .row .v{color:var(--ink)}
.contact .row .v.mono{font-family:"JetBrains Mono",monospace;font-size:13.5px}

/* ── Cover-specific (uses flexbox flow, not absolute) ── */
.cover-flex{
  flex:1;display:flex;flex-direction:column;justify-content:space-between;
  padding:48px 80px 60px;
}
.cover-pre{
  font-family:"JetBrains Mono",monospace;font-size:13px;
  letter-spacing:.22em;color:var(--gold);
}
.cover-title{
  font-family:var(--font-cjk);font-weight:300;
  font-size:170px;line-height:.95;letter-spacing:.01em;color:#fff;
  margin:32px 0 28px;
}
.cover-title.lat{font-family:var(--font-sans);font-size:180px;letter-spacing:-.03em}
.cover-title .em{color:var(--gold);font-weight:500}
.cover-sub{
  font-size:32px;font-weight:300;line-height:1.3;color:rgba(255,255,255,.85);
  letter-spacing:-.005em;max-width:1200px;
}
.cover-sub.zh{font-family:var(--font-cjk);font-weight:300;letter-spacing:0}
.cover-sub .em{color:var(--gold);font-weight:500}
.cover-meta-row{
  display:flex;align-items:flex-end;justify-content:space-between;gap:48px;
  padding-top:32px;border-top:1px solid rgba(255,255,255,.18);
}
.cover-meta-row .meta-col{display:flex;flex-direction:column;gap:14px;flex:1}
.cover-meta-row .meta-row{
  display:flex;align-items:baseline;gap:14px;
  font-family:"JetBrains Mono",monospace;font-size:12px;letter-spacing:.14em;
  color:rgba(255,255,255,.55);text-transform:uppercase;
}
.cover-meta-row .meta-row b{color:#fff;font-weight:500;font-size:13px}
.cover-meta-row .meta-row .gold{color:var(--gold);font-weight:500}
.cover-stats{
  display:flex;border:1px solid rgba(255,255,255,.15);
}
.cover-stats .cs{
  padding:14px 22px;border-right:1px solid rgba(255,255,255,.12);
  font-family:"JetBrains Mono",monospace;
  font-size:11px;letter-spacing:.18em;color:rgba(255,255,255,.7);
}
.cover-stats .cs:last-child{border-right:0}
.cover-stats .cs b{color:var(--gold);font-weight:500}

/* ── Misc utilities ────────────────────── */
.gold-rule{height:1px;background:var(--gold);width:64px}
.blue-rule{height:1px;background:var(--blue);width:64px}
