/* ==========================================================================
   XCTEXPRO — B2B Static Site Stylesheet
   Design tokens → base → layout → components → pages → responsive
   ========================================================================== */

/* ---------- 1. Design tokens ---------- */
:root {
  --navy: #0c2d48;
  --navy-700: #12395c;
  --navy-600: #1b4a72;
  --blue: #1b6ca8;
  --blue-soft: #e8f1f8;
  --accent: #e8761b;
  --accent-dark: #c55d0c;
  --accent-soft: #fdf1e6;
  --ink: #16202b;
  --ink-2: #33445a;
  --muted: #62748a;
  --line: #e2e8ef;
  --line-2: #eef2f7;
  --bg: #ffffff;
  --bg-soft: #f5f7fa;
  --bg-alt: #eef3f8;
  --ok: #1f9254;
  --err: #d64545;

  --radius: 10px;
  --radius-lg: 16px;
  --shadow-sm: 0 1px 2px rgba(12, 45, 72, .06), 0 1px 3px rgba(12, 45, 72, .05);
  --shadow: 0 4px 14px rgba(12, 45, 72, .08);
  --shadow-lg: 0 14px 40px rgba(12, 45, 72, .14);

  --container: 1200px;
  --header-h: 68px;
  --font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
    "Helvetica Neue", Arial, "Noto Sans", sans-serif;
}

/* ---------- 2. Base ---------- */
*, *::before, *::after { box-sizing: border-box; }

html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }

body {
  margin: 0;
  font-family: var(--font);
  font-size: 16px;
  line-height: 1.65;
  color: var(--ink);
  background: var(--bg);
  -webkit-font-smoothing: antialiased;
}

img, svg { max-width: 100%; display: block; }
a { color: var(--blue); text-decoration: none; }
a:hover { color: var(--navy-600); }
ul, ol { margin: 0; padding: 0; list-style: none; }
p { margin: 0 0 1em; }
p:last-child { margin-bottom: 0; }

h1, h2, h3, h4, h5 {
  margin: 0 0 .6em;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: -.01em;
  color: var(--navy);
}
/* keep anchor jumps clear of the sticky header */
h1, h2, h3, h4, section[id], div[id] { scroll-margin-top: 92px; }
h1 { font-size: clamp(30px, 4.4vw, 48px); }
h2 { font-size: clamp(24px, 3vw, 34px); }
h3 { font-size: clamp(19px, 2vw, 23px); }
h4 { font-size: 17px; }
strong { font-weight: 700; }

::selection { background: var(--navy); color: #fff; }

:focus-visible {
  outline: 3px solid var(--blue);
  outline-offset: 2px;
  border-radius: 4px;
}

.skip-link {
  position: absolute; left: -9999px; top: 0; z-index: 200;
  background: var(--navy); color: #fff; padding: 10px 18px; border-radius: 0 0 8px 0;
}
.skip-link:focus { left: 0; }

/* ---------- 3. Layout ---------- */
.container {
  width: 100%;
  max-width: var(--container);
  margin: 0 auto;
  padding: 0 22px;
}
.container-sm { max-width: 860px; }

.section { padding: 72px 0; }
.section-sm { padding: 48px 0; }
.section-alt { background: var(--bg-soft); }
.section-navy { background: var(--navy); color: #cfe0ee; }
.section-navy h2, .section-navy h3 { color: #fff; }
.section-navy p { color: #b9cee0; }

.section-head { max-width: 680px; margin: 0 auto 44px; text-align: center; }
.section-head .eyebrow { margin-bottom: 10px; }
.section-head p { color: var(--muted); font-size: 17px; }
.section-head--left { margin-left: 0; text-align: left; }

.eyebrow {
  display: inline-block;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--accent);
}

.grid { display: grid; gap: 24px; }
.grid-2 { grid-template-columns: repeat(2, 1fr); }
.grid-3 { grid-template-columns: repeat(3, 1fr); }
.grid-4 { grid-template-columns: repeat(4, 1fr); }
.grid-6 { grid-template-columns: repeat(6, 1fr); }

.mt-0 { margin-top: 0; } .mt-1 { margin-top: 8px; } .mt-2 { margin-top: 16px; }
.mt-3 { margin-top: 24px; } .mt-4 { margin-top: 32px; } .mt-5 { margin-top: 48px; }
.mb-0 { margin-bottom: 0; }
.text-center { text-align: center; }
.text-muted { color: var(--muted); }
.lead { font-size: 18px; color: var(--ink-2); }

/* ---------- 4. Buttons ---------- */
.btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  padding: 13px 24px;
  font-size: 15px; font-weight: 600; font-family: inherit;
  border: 1px solid transparent; border-radius: var(--radius);
  cursor: pointer; text-decoration: none; white-space: nowrap;
  transition: background .18s ease, color .18s ease, border-color .18s ease, transform .18s ease;
}
.btn svg { width: 18px; height: 18px; flex: none; }
.btn-primary { background: var(--accent); color: #fff; }
.btn-primary:hover { background: var(--accent-dark); color: #fff; transform: translateY(-1px); }
.btn-navy { background: var(--navy); color: #fff; }
.btn-navy:hover { background: var(--navy-700); color: #fff; }
.btn-outline { border-color: rgba(255,255,255,.5); color: #fff; }
.btn-outline:hover { background: rgba(255,255,255,.12); color: #fff; }
.btn-ghost { border-color: var(--line); color: var(--navy); background: #fff; }
.btn-ghost:hover { border-color: var(--navy); color: var(--navy); }
.btn-block { width: 100%; }
.btn-lg { padding: 16px 32px; font-size: 16px; }
.btn-sm { padding: 9px 16px; font-size: 14px; }

.btn-row { display: flex; flex-wrap: wrap; gap: 14px; }
.btn-row--center { justify-content: center; }

/* ---------- 5. Top bar ---------- */
.topbar {
  background: var(--navy); color: #b9cee0; font-size: 13px;
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.topbar .container {
  display: flex; align-items: center; justify-content: space-between;
  gap: 16px; min-height: 40px; flex-wrap: wrap;
}
.topbar ul { display: flex; gap: 20px; flex-wrap: wrap; }
.topbar a { color: #cfe0ee; display: inline-flex; align-items: center; gap: 6px; }
.topbar a:hover { color: #fff; }
.topbar svg { width: 14px; height: 14px; }

/* ---------- 6. Header / nav ---------- */
.header {
  position: sticky; top: 0; z-index: 90;
  background: #fff; border-bottom: 1px solid var(--line);
  box-shadow: 0 1px 0 rgba(12,45,72,.03);
}
.header .container {
  display: flex; align-items: center; gap: 24px;
  min-height: var(--header-h);
}
.brand { display: flex; align-items: center; gap: 11px; flex: none; }
.brand-mark {
  width: 40px; height: 40px; border-radius: 9px;
  background: linear-gradient(135deg, var(--navy) 0%, var(--blue) 100%);
  display: grid; place-items: center; color: #fff; flex: none;
}
.brand-mark svg { width: 24px; height: 24px; }
.brand-name { display: block; font-size: 19px; font-weight: 800; letter-spacing: -.02em; color: var(--navy); line-height: 1.1; }
.brand-sub { display: block; margin-top: 3px; font-size: 10.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--muted); font-weight: 600; }

.nav { margin-left: auto; }
.nav ul { display: flex; align-items: center; gap: 4px; }
.nav a {
  display: block; padding: 9px 13px; border-radius: 7px;
  font-size: 15px; font-weight: 600; color: var(--ink-2);
}
.nav a:hover { background: var(--bg-soft); color: var(--navy); }
.nav a[aria-current="page"] { color: var(--navy); background: var(--blue-soft); }

.header-cta { display: flex; align-items: center; gap: 10px; flex: none; }

.nav-toggle {
  display: none; width: 42px; height: 42px; padding: 0;
  background: #fff; border: 1px solid var(--line); border-radius: 8px;
  cursor: pointer; place-items: center;
}
.nav-toggle span {
  display: block; width: 20px; height: 2px; background: var(--navy);
  margin: 3px auto; transition: transform .2s ease, opacity .2s ease;
}
.nav-toggle[aria-expanded="true"] span:nth-child(1) { transform: translateY(5px) rotate(45deg); }
.nav-toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
.nav-toggle[aria-expanded="true"] span:nth-child(3) { transform: translateY(-5px) rotate(-45deg); }

/* ---------- 7. Hero ---------- */
.hero {
  position: relative; overflow: hidden;
  background: linear-gradient(115deg, #0b2740 0%, #12395c 55%, #1b5c8a 100%);
  color: #fff; padding: 84px 0 76px;
}
.hero::after {
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background:
    radial-gradient(700px 320px at 88% 8%, rgba(232,118,27,.22), transparent 65%),
    radial-gradient(520px 300px at 4% 96%, rgba(27,108,168,.4), transparent 70%);
}
.hero .container { position: relative; z-index: 2; }
.hero-grid { display: grid; grid-template-columns: 1.08fr .92fr; gap: 48px; align-items: center; }
.hero h1 { color: #fff; font-size: clamp(32px, 4.6vw, 52px); }
.hero .lead { color: #c8dcec; font-size: 18px; max-width: 560px; }
.hero-badges { display: flex; flex-wrap: wrap; gap: 10px; margin: 26px 0 32px; }
.hero-badge {
  display: inline-flex; align-items: center; gap: 8px;
  background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.18);
  border-radius: 999px; padding: 7px 15px; font-size: 13.5px; font-weight: 600; color: #e6f0f8;
}
.hero-badge svg { width: 16px; height: 16px; color: #ffb27a; }
.hero-note { margin-top: 22px; font-size: 14px; color: #9fb8cd; }

.hero-visual {
  position: relative; border-radius: var(--radius-lg);
  background: rgba(255,255,255,.07); border: 1px solid rgba(255,255,255,.16);
  padding: 22px; box-shadow: var(--shadow-lg);
}
.hero-visual .hv-title {
  font-size: 12px; letter-spacing: .14em; text-transform: uppercase;
  color: #8fb4d2; font-weight: 700; margin-bottom: 14px;
}
.hero-mock { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
.hero-mock-item {
  background: rgba(255,255,255,.94); border-radius: 10px; padding: 14px;
  color: var(--navy);
}
.hero-mock-item .hm-ico { color: var(--blue); margin-bottom: 8px; }
.hero-mock-item .hm-ico svg { width: 26px; height: 26px; }
.hero-mock-item strong { display: block; font-size: 13.5px; }
.hero-mock-item span { font-size: 12px; color: var(--muted); }

/* ---------- 8. Cards ---------- */
.card {
  background: #fff; border: 1px solid var(--line); border-radius: var(--radius);
  padding: 28px; box-shadow: var(--shadow-sm); height: 100%;
  transition: box-shadow .2s ease, transform .2s ease, border-color .2s ease;
}
.card:hover { box-shadow: var(--shadow); transform: translateY(-2px); border-color: #cfdae6; }
.card-ico {
  width: 50px; height: 50px; border-radius: 12px; display: grid; place-items: center;
  background: var(--blue-soft); color: var(--navy-600); margin-bottom: 16px;
}
.card-ico svg { width: 26px; height: 26px; }
.card h3 { font-size: 19px; margin-bottom: 6px; }
.card p { color: var(--muted); font-size: 15px; }
.card-accent .card-ico { background: var(--accent-soft); color: var(--accent-dark); }

/* ---------- 9. Stats ---------- */
.stats { display: grid; grid-template-columns: repeat(5, 1fr); gap: 20px; }
.stats-3 { grid-template-columns: repeat(3, 1fr); gap: 30px 18px; }
.stat { text-align: center; }
.stat-num {
  font-size: clamp(28px, 3.4vw, 40px); font-weight: 800; color: var(--navy);
  line-height: 1.1; letter-spacing: -.02em;
}
.stat-label { font-size: 13.5px; color: var(--muted); margin-top: 6px; }
.section-navy .stat-num { color: #fff; }
.section-navy .stat-label { color: #9fb8cd; }

/* ---------- 10. Product card ---------- */
.product-card {
  background: #fff; border: 1px solid var(--line); border-radius: var(--radius);
  overflow: hidden; display: flex; flex-direction: column;
  transition: box-shadow .2s ease, transform .2s ease, border-color .2s ease;
}
.product-card:hover { box-shadow: var(--shadow); transform: translateY(-3px); border-color: #cfdae6; }
.pc-media {
  position: relative; aspect-ratio: 16 / 10;
  background: linear-gradient(160deg, #eef3f8 0%, #dde8f2 100%);
  display: grid; place-items: center; border-bottom: 1px solid var(--line-2);
}
.pc-media svg { width: 74%; color: var(--navy-600); opacity: .9; }
.pc-media img { width: 100%; height: 100%; object-fit: cover; }
.pc-tag {
  position: absolute; top: 12px; left: 12px;
  background: var(--navy); color: #fff; font-size: 11.5px; font-weight: 700;
  letter-spacing: .06em; text-transform: uppercase; padding: 5px 10px; border-radius: 5px;
}
.pc-tag--accent { background: var(--accent); }
.pc-body { padding: 18px 20px 22px; display: flex; flex-direction: column; flex: 1; }
.pc-body h3 { font-size: 16.5px; margin-bottom: 8px; line-height: 1.35; }
.pc-body h3 a { color: var(--navy); }
.pc-sku { font-size: 12.5px; color: var(--muted); font-weight: 600; letter-spacing: .04em; }
.pc-meta { font-size: 13.5px; color: var(--muted); display: grid; gap: 4px; margin: 10px 0 16px; }
.pc-meta b { color: var(--ink-2); font-weight: 600; }
.pc-foot {
  margin-top: auto; display: flex; align-items: center; justify-content: space-between; gap: 10px;
  padding-top: 14px; border-top: 1px solid var(--line-2);
}
.pc-moq { font-size: 12.5px; color: var(--muted); }

/* ---------- 11. Steps ---------- */
.steps { display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px; counter-reset: step; }
.step { position: relative; padding-top: 12px; }
.step::before {
  counter-increment: step; content: counter(step, decimal-leading-zero);
  display: block; font-size: 13px; font-weight: 800; color: var(--accent);
  letter-spacing: .1em; margin-bottom: 8px;
}
.step h4 { margin-bottom: 4px; }
.step p { font-size: 14.5px; color: var(--muted); }
.step-line {
  position: absolute; top: 22px; left: 0; right: 0; height: 1px;
  background: repeating-linear-gradient(90deg, var(--line) 0 6px, transparent 6px 12px);
  z-index: -1;
}

/* ---------- 12. Testimonials ---------- */
.quote-card {
  background: #fff; border: 1px solid var(--line); border-radius: var(--radius);
  padding: 26px; height: 100%; display: flex; flex-direction: column;
}
.quote-stars { color: #f0a500; font-size: 15px; letter-spacing: 2px; margin-bottom: 12px; }
.quote-card blockquote { margin: 0 0 18px; font-size: 15.5px; color: var(--ink-2); }
.quote-author { margin-top: auto; display: flex; align-items: center; gap: 12px; }
.quote-avatar {
  width: 42px; height: 42px; border-radius: 50%; background: var(--blue-soft); color: var(--navy-600);
  display: grid; place-items: center; font-weight: 800; font-size: 15px; flex: none;
}
.quote-author strong { display: block; font-size: 14.5px; }
.quote-author span { font-size: 13px; color: var(--muted); }

/* ---------- 13. CTA band ---------- */
.cta-band {
  background: linear-gradient(115deg, var(--navy) 0%, var(--navy-700) 60%, var(--blue) 100%);
  color: #fff; border-radius: var(--radius-lg); padding: 46px 40px;
  display: flex; align-items: center; justify-content: space-between; gap: 32px; flex-wrap: wrap;
}
.cta-band h2 { color: #fff; margin-bottom: 6px; }
.cta-band p { color: #c8dcec; margin: 0; }

/* ---------- 14. Filters ---------- */
.filters {
  background: #fff; border: 1px solid var(--line); border-radius: var(--radius);
  padding: 22px; position: sticky; top: calc(var(--header-h) + 16px);
}
.filter-group { padding: 16px 0; border-bottom: 1px solid var(--line-2); }
.filter-group:first-child { padding-top: 0; }
.filter-group:last-child { border-bottom: 0; padding-bottom: 0; }
.filter-group h4 { font-size: 13px; text-transform: uppercase; letter-spacing: .08em; color: var(--muted); margin-bottom: 10px; }
.filter-group label {
  display: flex; align-items: center; gap: 9px; padding: 5px 0;
  font-size: 14.5px; color: var(--ink-2); cursor: pointer;
}
.filter-group input { accent-color: var(--navy-600); width: 16px; height: 16px; }
.filter-count { margin-left: auto; font-size: 12px; color: var(--muted); }
.filter-reset {
  width: 100%; margin-top: 18px; background: #fff; border: 1px solid var(--line);
  border-radius: 8px; padding: 10px; font-size: 14px; font-weight: 600;
  color: var(--navy); cursor: pointer;
}
.filter-reset:hover { border-color: var(--navy); }

.filters-toggle {
  display: none; align-items: center; justify-content: center; gap: 9px;
  width: 100%; padding: 12px; font-family: inherit; font-size: 15px; font-weight: 600;
  color: var(--navy); background: #fff; border: 1px solid var(--line);
  border-radius: 8px; cursor: pointer;
}
.filters-toggle svg { width: 18px; height: 18px; }
.filters-toggle[aria-expanded="true"] { background: var(--blue-soft); border-color: #b9cfe2; }

.toolbar {
  display: flex; align-items: center; justify-content: space-between; gap: 16px;
  flex-wrap: wrap; margin-bottom: 24px;
}
.tabs { display: flex; gap: 8px; flex-wrap: wrap; }
.tab {
  padding: 9px 18px; border-radius: 999px; border: 1px solid var(--line);
  background: #fff; font-size: 14.5px; font-weight: 600; color: var(--ink-2); cursor: pointer;
  font-family: inherit;
}
.tab:hover { border-color: var(--navy); color: var(--navy); }
.tab.is-active { background: var(--navy); border-color: var(--navy); color: #fff; }
.result-count { font-size: 14.5px; color: var(--muted); }
.empty-state {
  grid-column: 1 / -1; text-align: center; padding: 56px 20px;
  border: 1px dashed var(--line); border-radius: var(--radius); color: var(--muted);
}

/* ---------- 15. Product detail ---------- */
.breadcrumb { font-size: 13.5px; color: var(--muted); padding: 16px 0; }
.breadcrumb ol { display: flex; flex-wrap: wrap; gap: 8px; }
.breadcrumb li::after { content: "/"; margin-left: 8px; color: #c3cfdb; }
.breadcrumb li:last-child::after { content: ""; }
.breadcrumb a { color: var(--muted); }
.breadcrumb a:hover { color: var(--navy); }

.detail-grid { display: grid; grid-template-columns: 1.05fr .95fr; gap: 44px; align-items: start; }
.gallery-main {
  border: 1px solid var(--line); border-radius: var(--radius); overflow: hidden;
  background: linear-gradient(160deg, #eef3f8, #dde8f2);
}
.gallery-main .gm-stage {
  aspect-ratio: 4 / 3; display: grid; place-items: center; padding: 34px;
}
.gallery-main .gm-stage svg { width: 100%; color: var(--navy-600); }
.gallery-main .gm-stage img { width: 100%; height: 100%; object-fit: cover; border-radius: 8px; }
.gallery-thumbs { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; margin-top: 12px; }
.thumb {
  border: 1px solid var(--line); border-radius: 8px; background: var(--bg-soft);
  aspect-ratio: 1 / 1; display: grid; place-items: center; padding: 12px; cursor: pointer;
}
.thumb.is-active { border-color: var(--navy); box-shadow: 0 0 0 2px rgba(12,45,72,.12); }
.thumb svg { width: 100%; color: var(--navy-600); }

.detail h1 { font-size: clamp(26px, 3.2vw, 36px); margin-bottom: 8px; }
.detail-sku { font-size: 13.5px; color: var(--muted); font-weight: 600; letter-spacing: .05em; }
.detail-tags { display: flex; flex-wrap: wrap; gap: 8px; margin: 16px 0 20px; }
.tag {
  font-size: 12.5px; font-weight: 600; padding: 5px 11px; border-radius: 5px;
  background: var(--blue-soft); color: var(--navy-600);
}
.tag--accent { background: var(--accent-soft); color: var(--accent-dark); }

.spec-list { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1px; background: var(--line); border: 1px solid var(--line); border-radius: var(--radius); overflow: hidden; margin: 22px 0; }
.spec-list div { background: #fff; padding: 14px 16px; }
.spec-list dt { font-size: 12px; text-transform: uppercase; letter-spacing: .06em; color: var(--muted); font-weight: 700; }
.spec-list dd { margin: 3px 0 0; font-size: 15px; font-weight: 600; color: var(--navy); }

/* ---------- 16. Tables ---------- */
.table-wrap { overflow-x: auto; border: 1px solid var(--line); border-radius: var(--radius); }
table.data { width: 100%; border-collapse: collapse; font-size: 14.5px; min-width: 520px; }
table.data caption { text-align: left; padding: 14px 18px; font-size: 13px; color: var(--muted); background: var(--bg-soft); border-bottom: 1px solid var(--line); }
table.data th, table.data td { padding: 12px 18px; text-align: left; border-bottom: 1px solid var(--line-2); }
table.data thead th { background: var(--navy); color: #fff; font-size: 13px; letter-spacing: .04em; text-transform: uppercase; }
table.data tbody tr:nth-child(even) { background: #fafbfd; }
table.data tbody tr:last-child td { border-bottom: 0; }
table.data td.num { font-variant-numeric: tabular-nums; }

/* ---------- 17. Color swatches ---------- */
.swatches { display: flex; flex-wrap: wrap; gap: 14px; }
.swatch { display: grid; gap: 6px; justify-items: center; }
.swatch i {
  width: 42px; height: 42px; border-radius: 8px; border: 1px solid var(--line); display: block;
}
.swatch span { font-size: 12.5px; color: var(--muted); }

/* ---------- 18. Checklist ---------- */
.checklist { display: grid; gap: 10px; }
.checklist li { display: flex; gap: 10px; font-size: 15.5px; color: var(--ink-2); }
.checklist svg { width: 20px; height: 20px; flex: none; color: var(--ok); margin-top: 3px; }

.feat-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px 32px; }

/* ---------- 19. Forms ---------- */
.form-card {
  background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg);
  padding: 34px; box-shadow: var(--shadow);
}
.field { margin-bottom: 18px; }
.field label { display: block; font-size: 14px; font-weight: 600; color: var(--ink-2); margin-bottom: 6px; }
.field label .req { color: var(--accent); margin-left: 3px; }
.field input, .field select, .field textarea {
  width: 100%; padding: 12px 14px; font-size: 15px; font-family: inherit; color: var(--ink);
  background: #fff; border: 1px solid var(--line); border-radius: 8px;
  transition: border-color .15s ease, box-shadow .15s ease;
}
.field textarea { min-height: 130px; resize: vertical; }
.field input:focus, .field select:focus, .field textarea:focus {
  outline: none; border-color: var(--blue); box-shadow: 0 0 0 3px rgba(27,108,168,.14);
}
.field.has-error input, .field.has-error select, .field.has-error textarea { border-color: var(--err); }
.field.has-error input:focus, .field.has-error textarea:focus { box-shadow: 0 0 0 3px rgba(214,69,69,.14); }
.error-msg { display: none; font-size: 13px; color: var(--err); margin-top: 6px; }
.field.has-error .error-msg { display: block; }
.field-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.form-note { font-size: 13px; color: var(--muted); margin-top: 14px; }

.form-success {
  display: none; background: #eef8f2; border: 1px solid #b9e3c9; border-radius: var(--radius);
  padding: 22px 24px; color: #10603a;
}
.form-success.is-visible { display: block; }
.form-success h3 { color: #10603a; margin-bottom: 4px; }
.form-success p { margin: 0; font-size: 15px; }

/* ---------- 20. Contact cards ---------- */
.contact-card {
  display: flex; gap: 14px; padding: 20px; border: 1px solid var(--line);
  border-radius: var(--radius); background: #fff; height: 100%;
}
.contact-ico {
  width: 44px; height: 44px; border-radius: 10px; flex: none; display: grid; place-items: center;
  background: var(--blue-soft); color: var(--navy-600);
}
.contact-ico svg { width: 22px; height: 22px; }
.contact-card h4 { margin-bottom: 2px; font-size: 15.5px; }
.contact-card p, .contact-card a { font-size: 14.5px; color: var(--ink-2); }
.contact-card .muted { color: var(--muted); font-size: 13px; }
.contact-card--wa .contact-ico { background: #e7f6ec; color: #128c4a; }

.map-frame {
  border: 1px solid var(--line); border-radius: var(--radius); overflow: hidden; background: var(--bg-soft);
}
.map-frame img, .map-frame svg { width: 100%; display: block; }
.map-note { font-size: 13px; color: var(--muted); margin-top: 10px; }

/* ---------- 21. Accordion (FAQ) ---------- */
.accordion { border: 1px solid var(--line); border-radius: var(--radius); overflow: hidden; background: #fff; }
.acc-item { border-bottom: 1px solid var(--line-2); }
.acc-item:last-child { border-bottom: 0; }
.acc-btn {
  width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 16px;
  padding: 18px 22px; background: #fff; border: 0; text-align: left; cursor: pointer;
  font-family: inherit; font-size: 16.5px; font-weight: 600; color: var(--navy);
}
.acc-btn:hover { background: var(--bg-soft); }
.acc-btn .acc-ico { flex: none; width: 24px; height: 24px; color: var(--blue); transition: transform .2s ease; }
.acc-btn[aria-expanded="true"] .acc-ico { transform: rotate(45deg); }
.acc-panel { display: none; padding: 0 22px 20px; }
.acc-panel.is-open { display: block; }
.acc-panel p, .acc-panel ul { color: var(--ink-2); font-size: 15.5px; }
.acc-panel ul { display: grid; gap: 7px; }
.acc-panel li { display: flex; gap: 9px; }
.acc-panel li::before { content: "•"; color: var(--accent); font-weight: 700; }

/* ---------- 22. Blog ---------- */
.post-card {
  background: #fff; border: 1px solid var(--line); border-radius: var(--radius);
  overflow: hidden; display: flex; flex-direction: column;
  transition: box-shadow .2s ease, transform .2s ease;
}
.post-card:hover { box-shadow: var(--shadow); transform: translateY(-2px); }
.post-media { aspect-ratio: 16 / 9; background: linear-gradient(150deg, var(--navy-700), var(--blue)); position: relative; }
.post-media span {
  position: absolute; left: 14px; bottom: 14px; background: rgba(255,255,255,.94);
  color: var(--navy); font-size: 12px; font-weight: 700; padding: 5px 10px; border-radius: 5px;
  letter-spacing: .04em; text-transform: uppercase;
}
.post-body { padding: 20px 22px 24px; display: flex; flex-direction: column; flex: 1; }
.post-meta { font-size: 12.5px; color: var(--muted); margin-bottom: 8px; }
.post-body h3 { font-size: 18px; margin-bottom: 8px; }
.post-body p { font-size: 14.5px; color: var(--muted); }
.post-link { margin-top: auto; font-weight: 600; font-size: 14.5px; }

.post-featured { display: grid; grid-template-columns: 1.1fr .9fr; gap: 0; border: 1px solid var(--line); border-radius: var(--radius-lg); overflow: hidden; background: #fff; }
.post-featured .post-media { aspect-ratio: auto; min-height: 300px; }
.post-featured .post-body { padding: 38px 40px; justify-content: center; }
.post-featured h2 { font-size: clamp(22px, 2.6vw, 30px); }

.side-card { background: #fff; border: 1px solid var(--line); border-radius: var(--radius); padding: 24px; }
.side-card h4 { font-size: 15px; text-transform: uppercase; letter-spacing: .08em; color: var(--muted); margin-bottom: 14px; }
.side-list li { padding: 11px 0; border-bottom: 1px solid var(--line-2); font-size: 14.5px; }
.side-list li:last-child { border-bottom: 0; }
.side-list a { color: var(--ink-2); font-weight: 500; }
.side-list a:hover { color: var(--accent-dark); }

.article-body { font-size: 17px; color: var(--ink-2); }
.article-body h2 { margin-top: 40px; }
.article-body h3 { margin-top: 28px; }
.article-body ul { display: grid; gap: 9px; margin: 0 0 1.2em; }
.article-body li { display: flex; gap: 10px; }
.article-body li::before { content: "—"; color: var(--accent); }
.article-body blockquote {
  margin: 28px 0; padding: 18px 24px; background: var(--bg-soft);
  border-left: 4px solid var(--accent); border-radius: 0 8px 8px 0; font-size: 16.5px;
}

/* ---------- 23. About / process ---------- */
.process-row { display: grid; gap: 18px; }
.process-item { display: grid; grid-template-columns: 56px 1fr; gap: 18px; align-items: start; }
.process-num {
  width: 46px; height: 46px; border-radius: 50%; background: var(--navy); color: #fff;
  display: grid; place-items: center; font-weight: 800; font-size: 16px;
}
.process-item h4 { margin-bottom: 3px; }
.process-item p { color: var(--muted); font-size: 15px; }

.cert-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.cert {
  border: 1px solid var(--line); border-radius: var(--radius); padding: 22px; text-align: center; background: #fff;
}
.cert svg { width: 40px; height: 40px; margin: 0 auto 12px; color: var(--navy-600); }
.cert strong { display: block; font-size: 15px; color: var(--navy); }
.cert span { font-size: 13px; color: var(--muted); }

.case-row { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.case {
  background: #fff; border: 1px solid var(--line); border-radius: var(--radius); padding: 24px;
}
.case .case-region { font-size: 12.5px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--accent); }
.case h4 { margin: 8px 0 6px; }
.case p { font-size: 14.5px; color: var(--muted); margin-bottom: 12px; }
.case-result { font-size: 14px; font-weight: 600; color: var(--ok); }

.gallery-strip { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.shot {
  aspect-ratio: 4 / 3; border-radius: var(--radius); border: 1px solid var(--line);
  background: linear-gradient(150deg, #dde8f2, #eef3f8);
  display: grid; place-items: center; color: var(--navy-600);
}
.shot svg { width: 46px; height: 46px; opacity: .55; }
.shot span { font-size: 12px; margin-top: 8px; color: var(--muted); }
.shot > div { text-align: center; }

/* ---------- 24. Footer ---------- */
.footer { background: var(--navy); color: #b9cee0; padding: 60px 0 0; margin-top: 0; }
.footer h4 { color: #fff; font-size: 15px; text-transform: uppercase; letter-spacing: .08em; margin-bottom: 16px; }
.footer-grid { display: grid; grid-template-columns: 1.4fr 1fr 1fr 1.2fr; gap: 40px; }
.footer p { font-size: 14.5px; }
.footer ul { display: grid; gap: 9px; }
.footer ul a { color: #b9cee0; font-size: 14.5px; }
.footer ul a:hover { color: #fff; }
.footer .brand-name { color: #fff; }
.footer .brand-sub { color: #7fa0bd; }
.footer-contact li { display: flex; gap: 9px; font-size: 14.5px; }
.footer-contact svg { width: 16px; height: 16px; flex: none; margin-top: 3px; color: #7fa0bd; }
.footer-bottom {
  margin-top: 46px; border-top: 1px solid rgba(255,255,255,.1);
  padding: 20px 0; font-size: 13.5px; color: #8fb0cb;
}
.footer-bottom .container { display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap; }

/* ---------- 25. Floating WhatsApp ---------- */
.wa-float {
  position: fixed; right: 20px; bottom: 20px; z-index: 95;
  width: 54px; height: 54px; border-radius: 50%;
  background: #1fa855; color: #fff; display: grid; place-items: center;
  box-shadow: 0 8px 24px rgba(31,168,85,.4); transition: transform .2s ease;
}
.wa-float:hover { transform: scale(1.06); color: #fff; }
.wa-float svg { width: 28px; height: 28px; }

/* ---------- 26. Toast ---------- */
.toast {
  position: fixed; left: 50%; bottom: 28px; transform: translate(-50%, 130%);
  z-index: 120; background: var(--navy); color: #fff; padding: 14px 22px;
  border-radius: 999px; font-size: 15px; font-weight: 600; box-shadow: var(--shadow-lg);
  opacity: 0; transition: transform .28s ease, opacity .28s ease; pointer-events: none;
}
.toast.is-visible { transform: translate(-50%, 0); opacity: 1; }

/* ---------- 27. Page hero (inner pages) ---------- */
.page-hero {
  background: linear-gradient(120deg, var(--navy) 0%, var(--navy-700) 70%, var(--blue) 100%);
  color: #fff; padding: 52px 0 48px;
}
.page-hero h1 { color: #fff; margin-bottom: 8px; }
.page-hero p { color: #c8dcec; font-size: 17px; max-width: 640px; margin: 0; }

/* ---------- 28. Responsive ---------- */
@media (max-width: 1080px) {
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 32px; }
  .stats { grid-template-columns: repeat(3, 1fr); }
  .grid-4 { grid-template-columns: repeat(2, 1fr); }
  .cert-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 960px) {
  .hero-grid { grid-template-columns: 1fr; gap: 36px; }
  .detail-grid { grid-template-columns: 1fr; gap: 32px; }
  .filters-wrap { grid-template-columns: 1fr !important; }
  .filters { position: static; }
  .filters-toggle { display: flex; }
  .filter-body { display: none; }
  .filter-body.is-open { display: block; padding-top: 18px; }
  .post-featured { grid-template-columns: 1fr; }
  .blog-layout { grid-template-columns: 1fr !important; }
  #contact-grid { grid-template-columns: 1fr !important; }
  .steps { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 860px) {
  .nav {
    position: absolute; top: 100%; left: 0; right: 0; max-height: 0; overflow: hidden;
    background: #fff; border-bottom: 1px solid var(--line);
    transition: max-height .28s ease;
  }
  .nav.is-open { max-height: 460px; overflow-y: auto; box-shadow: var(--shadow); }
  .nav ul { flex-direction: column; align-items: stretch; gap: 0; padding: 8px 22px 18px; }
  .nav a { padding: 13px 0; border-bottom: 1px solid var(--line-2); border-radius: 0; }
  .nav li:last-child a { border-bottom: 0; }
  .nav-toggle { display: grid; margin-left: auto; }
  .header-cta { display: none; }
  .grid-3 { grid-template-columns: repeat(2, 1fr); }
  .case-row { grid-template-columns: 1fr; }
  .gallery-strip { grid-template-columns: repeat(2, 1fr); }
  .spec-list { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
  .section { padding: 52px 0; }
  .hero { padding: 56px 0 52px; }
  .grid-2, .grid-3, .grid-4, .grid-6 { grid-template-columns: 1fr; }
  .stats, .stats-3 { grid-template-columns: repeat(2, 1fr); gap: 26px 14px; }
  .steps { grid-template-columns: 1fr; }
  .field-row { grid-template-columns: 1fr; }
  .cta-band { padding: 32px 24px; }
  .cta-band .btn { width: 100%; }
  .footer-grid { grid-template-columns: 1fr; gap: 28px; }
  .form-card { padding: 24px 20px; }
  .cert-grid { grid-template-columns: repeat(2, 1fr); }
  .topbar .container { justify-content: center; text-align: center; }
  .detail-tags { gap: 6px; }
  .gallery-thumbs { grid-template-columns: repeat(4, 1fr); gap: 8px; }
}

@media (prefers-reduced-motion: reduce) {
  * { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}

@media print {
  .header, .footer, .wa-float, .cta-band, .topbar { display: none !important; }
  body { color: #000; }
}
/* ============================================================
   XCTEXPRO 品牌标识替换（追加到 assets/css/style.css 文件末尾）
   作用：把头部/页脚那个渐变方块盾牌图标，换成车形 logo 图片
   ============================================================ */

.header .brand-mark,
.footer .brand-mark {
  width: 110px;
  height: 44px;
  border-radius: 0;
  background-color: transparent;
  background-image: none;
  display: block;
}

.header .brand-mark svg,
.footer .brand-mark svg { display: none; }

.header .brand-mark::before,
.footer .brand-mark::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: url(../img/texpro-logo-480.png) no-repeat left center / contain;
}

/* 页脚是深色底，换成白色版，不然深蓝logo看不见 */
.footer .brand-mark::before {
  background-image: url(../img/texpro-logo-white.png);
}

@media (max-width: 640px) {
  .header .brand-mark,
  .footer .brand-mark { width: 88px; height: 35px; }
}

/* ============================================================
   XCTEXPRO logo（图片已内嵌，不需要另外上传图片文件）
   追加到 assets/css/style.css 最末尾即可
   ============================================================ */
.header .brand-mark,
.footer .brand-mark {
  width: 110px;
  height: 44px;
  border-radius: 0;
  background-color: transparent;
  background-image: none;
  display: block;
}

.header .brand-mark svg,
.footer .brand-mark svg { display: none; }

.header .brand-mark::before,
.footer .brand-mark::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-position: left center;
  background-size: contain;
}

.header .brand-mark::before {
  background-image: url("data:image/webp;base64,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");
}

.footer .brand-mark::before {
  background-image: url("data:image/webp;base64,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");
}

@media (max-width: 640px) {
  .header .brand-mark,
  .footer .brand-mark { width: 88px; height: 35px; }
}
