/*
Theme Name: FIRSTA Việt Nam
Author: FIRSTA
Version: 1.0
Text Domain: firsta
*/
:root {
  color-scheme: light;
  /* Brand */
  --color-primary: #0c4da2;
  --color-primary-dark: #093a7c;
  --color-primary-ink: #072a55;
  --color-accent: #2d9cdb;
  --color-cta: #d71920;
  --color-cta-ink: #ffffff;
  /* Neutral */
  --color-background: #f5f7fa;
  --color-surface: #ffffff;
  --color-text: #141a22;
  --color-muted-text: #5b6675;
  --color-border: #dfe5ec;
  --color-focus: #0b66ff;
  /* Type */
  --font-body: "Segoe UI", "Helvetica Neue", Arial, ui-sans-serif, system-ui, sans-serif;
  --font-display: "Segoe UI", "Helvetica Neue", Arial, ui-sans-serif, system-ui, sans-serif;
  /* Shape & rhythm */
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 14px;
  --space-unit: 0.25rem;
  --content-width: 72rem;
  --shadow-card: 0 1px 2px rgba(9, 42, 79, 0.06), 0 6px 18px rgba(9, 42, 79, 0.08);
  --shadow-lift: 0 2px 4px rgba(9, 42, 79, 0.08), 0 12px 28px rgba(9, 42, 79, 0.14);
}

* {
  box-sizing: border-box;
}

html {
  background: var(--color-background);
  color: var(--color-text);
  font-family: var(--font-body);
  scroll-behavior: smooth;
}

body {
  margin: 0;
  min-height: 100dvh;
  font-size: 1rem;
  line-height: 1.6;
}

button,
input,
select,
textarea {
  font: inherit;
}

img {
  max-width: 100%;
  display: block;
}

a {
  color: var(--color-primary);
}

h1,
h2,
h3,
h4 {
  font-family: var(--font-display);
  line-height: 1.2;
  margin: 0 0 0.75rem;
  letter-spacing: -0.01em;
}

h1 {
  font-size: clamp(1.9rem, 4.2vw, 3rem);
  font-weight: 800;
}

h2 {
  font-size: clamp(1.5rem, 3vw, 2.1rem);
  font-weight: 800;
}

h3 {
  font-size: 1.15rem;
  font-weight: 700;
}

:focus-visible {
  outline: 3px solid var(--color-focus);
  outline-offset: 3px;
}

.skip-link {
  left: 1rem;
  position: fixed;
  top: 1rem;
  transform: translateY(-200%);
  z-index: 100;
  background: var(--color-surface);
  padding: 0.5rem 1rem;
  border-radius: var(--radius-sm);
}

.skip-link:focus {
  transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }
}

/* ---------- Layout primitives ---------- */

.container {
  width: min(100% - 2.5rem, var(--content-width));
  margin-inline: auto;
}

.section {
  padding-block: clamp(3rem, 6vw, 4.75rem);
}

.section-alt {
  background: linear-gradient(180deg, #ffffff 0%, var(--color-background) 100%);
  border-block: 1px solid var(--color-border);
}

.section-head {
  max-width: 46rem;
  margin-bottom: clamp(1.75rem, 3vw, 2.5rem);
}

.section-head p {
  color: var(--color-muted-text);
  margin: 0;
}

.eyebrow {
  align-items: center;
  color: var(--color-primary);
  display: flex;
  font-size: 0.8rem;
  font-weight: 700;
  gap: 0.6rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  margin-bottom: 0.6rem;
}

/* Signature motif: angled tape strip */
.tape-strip {
  background: linear-gradient(90deg, var(--color-primary) 0%, var(--color-accent) 100%);
  border-radius: 2px;
  display: inline-block;
  height: 7px;
  transform: skewX(-24deg);
  width: 38px;
}

/* ---------- Top utility bar ---------- */

.topbar {
  background: var(--color-primary-ink);
  color: #cfe0f5;
  font-size: 0.82rem;
}

.topbar .container {
  align-items: center;
  display: flex;
  gap: 1.25rem;
  justify-content: space-between;
  min-height: 2.4rem;
}

.topbar a {
  color: #ffffff;
  text-decoration: none;
}

.topbar a:hover {
  text-decoration: underline;
}

.topbar-meta {
  align-items: center;
  display: flex;
  gap: 1.25rem;
  flex-wrap: wrap;
}

.topbar .member-link {
  border-left: 1px solid rgba(255, 255, 255, 0.25);
  padding-left: 1.25rem;
  white-space: nowrap;
}

/* ---------- Header ---------- */

.site-header {
  background: var(--color-surface);
  border-bottom: 1px solid var(--color-border);
  position: sticky;
  top: 0;
  z-index: 50;
}

.site-header .container {
  align-items: center;
  display: flex;
  gap: 1.5rem;
  justify-content: space-between;
  min-height: 4.25rem;
}

.brand {
  align-items: center;
  color: var(--color-text);
  display: flex;
  gap: 0.7rem;
  text-decoration: none;
}

.brand-mark {
  flex: none;
}

.brand-name {
  display: flex;
  flex-direction: column;
  line-height: 1.15;
}

.brand-name strong {
  font-size: 1.12rem;
  font-weight: 800;
  letter-spacing: 0.02em;
}

.brand-name span {
  color: var(--color-muted-text);
  font-size: 0.68rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.site-nav ul {
  display: flex;
  gap: 0.25rem;
  list-style: none;
  margin: 0;
  padding: 0;
}

.site-nav a {
  border-radius: var(--radius-sm);
  color: var(--color-text);
  display: block;
  font-weight: 600;
  padding: 0.55rem 0.8rem;
  text-decoration: none;
}

.site-nav a:hover {
  background: #eef3fa;
  color: var(--color-primary);
}

.site-nav a[aria-current="page"] {
  background: #e8f1fb;
  color: var(--color-primary);
}

.nav-toggle {
  background: none;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  cursor: pointer;
  display: none;
  height: 2.6rem;
  width: 2.6rem;
  position: relative;
}

.nav-toggle span,
.nav-toggle span::before,
.nav-toggle span::after {
  background: var(--color-text);
  border-radius: 2px;
  content: "";
  height: 2px;
  left: 50%;
  margin-left: -10px;
  position: absolute;
  top: 50%;
  width: 20px;
}

.nav-toggle span::before {
  top: -6px;
}

.nav-toggle span::after {
  top: 6px;
}

/* ---------- Buttons ---------- */

.btn {
  align-items: center;
  border: 1px solid transparent;
  border-radius: var(--radius-sm);
  cursor: pointer;
  display: inline-flex;
  font-weight: 700;
  gap: 0.5rem;
  justify-content: center;
  min-height: 2.75rem;
  padding: 0.6rem 1.4rem;
  text-decoration: none;
  transition: background 0.15s ease, border-color 0.15s ease, transform 0.15s ease;
}

.btn:active {
  transform: translateY(1px);
}

.btn-primary {
  background: var(--color-primary);
  color: #ffffff;
}

.btn-primary:hover {
  background: var(--color-primary-dark);
}

.btn-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--color-cta);
  color: #ffffff;
  padding: .72rem 1.6rem;
  border-radius: 99rem;
  font-weight: 700;
  font-size: .95rem;
  line-height: 1.2;
  white-space: nowrap;
  transition: .2s;
}

.btn-cta:hover {
  background: #b71717;
}

.btn-ghost {
  background: transparent;
  border-color: rgba(255, 255, 255, 0.55);
  color: #ffffff;
}

.btn-ghost:hover {
  background: rgba(255, 255, 255, 0.12);
}

.btn-outline {
  background: var(--color-surface);
  border-color: var(--color-primary);
  color: var(--color-primary);
}

.btn-outline:hover {
  background: #e8f1fb;
}

/* ---------- Hero (home) ---------- */

.hero {
  background: radial-gradient(1200px 520px at 78% -10%, rgba(45, 156, 219, 0.35), transparent 60%), var(--color-primary-ink);
  color: #ffffff;
  overflow: hidden;
  position: relative;
}

.hero::after {
  /* signature diagonal tape band */
  background: linear-gradient(90deg, rgba(45, 156, 219, 0.16), rgba(245, 166, 35, 0.16));
  content: "";
  height: 56px;
  position: absolute;
  right: -80px;
  top: 84px;
  transform: rotate(-6deg);
  width: 340px;
  border-radius: 4px;
}

.hero .container {
  align-items: center;
  display: grid;
  gap: clamp(2rem, 4vw, 3.5rem);
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
  padding-block: clamp(3rem, 6vw, 5rem);
  position: relative;
  z-index: 1;
}

.hero .eyebrow {
  color: #9cc7f0;
}

.hero .eyebrow .tape-strip {
  background: linear-gradient(90deg, var(--color-cta), var(--color-accent));
}

.hero h1 {
  max-width: 34rem;
}

.hero .lead {
  color: #d7e5f6;
  font-size: 1.06rem;
  max-width: 33rem;
}

.hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.9rem;
  margin-top: 1.6rem;
}

.hero-media {
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-lift);
  overflow: hidden;
  position: relative;
}

.hero-media img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.hero-media figcaption {
  background: rgba(7, 42, 85, 0.82);
  color: #cfe0f5;
  font-size: 0.78rem;
  padding: 0.45rem 0.9rem;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}

/* ---------- Stats band ---------- */

.stats-band {
  background: var(--color-primary);
  color: #ffffff;
}

.stats-band .container {
  display: grid;
  gap: 1.5rem;
  grid-template-columns: repeat(4, 1fr);
  padding-block: 1.6rem;
}

.stat strong {
  display: block;
  font-size: clamp(1.5rem, 2.6vw, 2rem);
  font-weight: 800;
  line-height: 1.1;
}

.stat span {
  color: #cfe0f5;
  font-size: 0.88rem;
}

/* ---------- Quick contact strip ---------- */

.quickbar {
  background: var(--color-surface);
  border-bottom: 1px solid var(--color-border);
}

.quickbar .container {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(3, 1fr);
  padding-block: 1.1rem;
}

.quick-item {
  align-items: center;
  color: var(--color-text);
  display: flex;
  gap: 0.8rem;
  text-decoration: none;
}

.quick-item:hover .quick-label {
  color: var(--color-primary);
}

.quick-item svg {
  color: var(--color-primary);
  flex: none;
}

.quick-label {
  color: var(--color-muted-text);
  display: block;
  font-size: 0.75rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.quick-value {
  font-weight: 700;
}

/* ---------- Grids & cards ---------- */

.grid {
  display: grid;
  gap: 1.4rem;
}

.grid-2 {
  grid-template-columns: repeat(2, 1fr);
}

.grid-3 {
  grid-template-columns: repeat(3, 1fr);
}

.grid-4 {
  grid-template-columns: repeat(4, 1fr);
}

.card {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-card);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  transition: box-shadow 0.15s ease, transform 0.15s ease;
}

.card:hover {
  box-shadow: var(--shadow-lift);
  transform: translateY(-2px);
}

.card-body {
  display: flex;
  flex-direction: column;
  flex: 1;
  gap: 0.6rem;
  padding: 1.2rem 1.3rem 1.35rem;
}

.card-link {
  font-weight: 700;
  margin-top: auto;
  text-decoration: none;
}

.card-link:hover {
  text-decoration: underline;
}

/* Category cards (product platforms) */

.cat-card {
  text-decoration: none;
}

.cat-media {
  aspect-ratio: 4 / 3;
  background: #e8eef6;
  overflow: hidden;
  position: relative;
}

.cat-media img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.cat-count {
  background: var(--color-primary-ink);
  border-radius: 999px;
  color: #ffffff;
  font-size: 0.75rem;
  font-weight: 700;
  padding: 0.2rem 0.7rem;
  position: absolute;
  right: 0.8rem;
  top: 0.8rem;
}

.cat-card h3 {
  color: var(--color-primary);
  margin-bottom: 0.2rem;
}

.cat-card p {
  color: var(--color-muted-text);
  font-size: 0.92rem;
  margin: 0 0 0.4rem;
}

/* Product cards */

.product-thumb {
  align-items: center;
  aspect-ratio: 5 / 2;
  display: flex;
  justify-content: center;
  position: relative;
}

.thumb-foam {
  background: linear-gradient(135deg, #dce7f5, #b8cfe9);
}

.thumb-tissue {
  background: linear-gradient(135deg, #f3efe8, #ded6c8);
}

.thumb-pet {
  background: linear-gradient(135deg, #cfe3f7, #9fc4ec);
}

.thumb-specialty {
  background: linear-gradient(135deg, #2c3644, #141a22);
}

.thumb-paper-bopp {
  background: linear-gradient(135deg, #ead9c2, #d2b48c);
}

.product-thumb::after {
  /* signature tape strip across each product thumbnail */
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.96), rgba(255, 255, 255, 0.7));
  border-radius: 3px;
  box-shadow: 0 3px 8px rgba(9, 42, 79, 0.3);
  content: "";
  height: 13px;
  left: 12%;
  position: absolute;
  right: 12%;
  top: 50%;
  transform: translateY(-50%) rotate(-4deg);
}

.product-card p {
  color: var(--color-muted-text);
  font-size: 0.9rem;
  margin: 0;
}

a.chip {
  text-decoration: none;
}

a.chip:hover {
  border-color: var(--color-primary);
  color: var(--color-primary);
}

.card-accent {
  background: linear-gradient(160deg, #e8f1fb, #ffffff 70%);
  border-color: #c9dcf3;
}

.cn-tag {
  color: var(--color-muted-text);
  font-size: 0.78rem;
  letter-spacing: 0.04em;
}

.chip-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
}

.chip {
  background: #eef3fa;
  border: 1px solid #d7e2f0;
  border-radius: 999px;
  color: #2a4a74;
  font-size: 0.75rem;
  font-weight: 600;
  padding: 0.14rem 0.6rem;
}

.product-card p {
  color: var(--color-muted-text);
  font-size: 0.9rem;
  margin: 0;
}

/* Application cards */

.app-card {
  scroll-margin-top: 7.5rem;
}

.app-card svg {
  color: var(--color-primary);
  margin-bottom: 0.4rem;
}

.app-card p {
  color: var(--color-muted-text);
  font-size: 0.92rem;
  margin: 0 0 0.5rem;
}

/* Advantage cards */

.adv-card {
  padding: 1.4rem 1.4rem 1.5rem;
}

.adv-card svg {
  color: var(--color-primary);
  margin-bottom: 0.6rem;
}

.adv-card p {
  color: var(--color-muted-text);
  font-size: 0.92rem;
  margin: 0;
}

/* Certification chips */

.cert-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
}

.cert-chip {
  align-items: center;
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  color: var(--color-text);
  display: flex;
  font-size: 0.85rem;
  font-weight: 700;
  gap: 0.5rem;
  padding: 0.55rem 1rem;
}

.cert-chip svg {
  color: var(--color-primary);
}

/* ---------- Split sections (media + text) ---------- */

.split {
  align-items: center;
  display: grid;
  gap: clamp(1.8rem, 4vw, 3.2rem);
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.split-media {
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-card);
  overflow: hidden;
}

.split-media img {
  aspect-ratio: 4 / 3;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.check-list {
  list-style: none;
  margin: 0.9rem 0 1.4rem;
  padding: 0;
}

.check-list li {
  padding-left: 1.7rem;
  position: relative;
  margin-bottom: 0.55rem;
}

.check-list li::before {
  background: linear-gradient(90deg, var(--color-primary), var(--color-accent));
  border-radius: 2px;
  content: "";
  height: 6px;
  left: 0;
  position: absolute;
  top: 0.55em;
  transform: skewX(-24deg) rotate(-90deg);
  width: 12px;
}

/* ---------- Page hero (inner pages) ---------- */

.page-hero {
  background: radial-gradient(900px 380px at 85% -20%, rgba(45, 156, 219, 0.4), transparent 65%), var(--color-primary-ink);
  color: #ffffff;
}

.page-hero .container {
  padding-block: clamp(2.2rem, 4.5vw, 3.6rem);
}

.page-hero h1 {
  font-size: clamp(1.7rem, 3.4vw, 2.5rem);
  margin-bottom: 0.4rem;
}

.page-hero p {
  color: #d7e5f6;
  margin: 0;
  max-width: 44rem;
}

.crumbs {
  color: #9cc7f0;
  font-size: 0.85rem;
  margin-bottom: 1rem;
}

.crumbs a {
  color: #ffffff;
  text-decoration: none;
}

.crumbs a:hover {
  text-decoration: underline;
}

.crumbs [aria-current="page"] {
  color: #cfe0f5;
}

/* ---------- Filter tabs (products) ---------- */

.filter-bar {
  background: var(--color-surface);
  border-bottom: 1px solid var(--color-border);
  position: sticky;
  top: 4.25rem;
  z-index: 40;
}

.filter-bar .container {
  display: flex;
  gap: 0.5rem;
  overflow-x: auto;
  padding-block: 0.75rem;
}

.filter-tab {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: 999px;
  color: var(--color-text);
  cursor: pointer;
  flex: none;
  font-weight: 600;
  padding: 0.45rem 1rem;
}

.filter-tab:hover {
  border-color: var(--color-primary);
  color: var(--color-primary);
}

.filter-tab[aria-pressed="true"] {
  background: var(--color-primary);
  border-color: var(--color-primary);
  color: #ffffff;
}

.cat-section {
  scroll-margin-top: 8rem;
}

.cat-note {
  color: var(--color-muted-text);
  margin: -1.4rem 0 1.4rem;
  max-width: 44rem;
}

/* ---------- Timeline (about) ---------- */

.timeline {
  border-left: 2px solid #cfdcec;
  list-style: none;
  margin: 0;
  padding: 0 0 0 1.6rem;
}

.timeline li {
  margin-bottom: 1.4rem;
  position: relative;
}

.timeline li::before {
  background: var(--color-primary);
  border: 3px solid #ffffff;
  border-radius: 50%;
  box-shadow: 0 0 0 2px #cfdcec;
  content: "";
  height: 10px;
  left: -2.05rem;
  position: absolute;
  top: 0.35rem;
  width: 10px;
}

.timeline strong {
  color: var(--color-primary);
}

/* ---------- News cards ---------- */

.news-card time {
  color: var(--color-muted-text);
  font-size: 0.82rem;
  font-weight: 600;
}

.news-tag {
  background: #eef3fa;
  border-radius: 999px;
  color: #2a4a74;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  padding: 0.15rem 0.6rem;
  text-transform: uppercase;
}

/* ---------- Contact ---------- */

.contact-grid {
  align-items: start;
  display: grid;
  gap: 2rem;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
}

.form-grid {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(2, 1fr);
}

.field {
  display: flex;
  flex-direction: column;
  gap: 0.3rem;
}

.field-full {
  grid-column: 1 / -1;
}

.field label {
  font-size: 0.88rem;
  font-weight: 700;
}

.field input,
.field select,
.field textarea {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  min-height: 2.7rem;
  padding: 0.55rem 0.8rem;
}

.field textarea {
  min-height: 7.5rem;
  resize: vertical;
}

.field .hint {
  color: var(--color-muted-text);
  font-size: 0.78rem;
}

.contact-card {
  padding: 1.5rem;
}

.contact-card h3 {
  margin-top: 0;
}

.contact-list {
  list-style: none;
  margin: 0 0 1.2rem;
  padding: 0;
}

.contact-list li {
  display: flex;
  gap: 0.8rem;
  margin-bottom: 0.9rem;
}

.contact-list svg {
  color: var(--color-primary);
  flex: none;
  margin-top: 0.15rem;
}

.contact-list .quick-label {
  font-size: 0.7rem;
}

.map-placeholder {
  align-items: center;
  background: repeating-linear-gradient(45deg, #e8eef6 0 14px, #eef3fa 14px 28px);
  border: 1px dashed #b9c8dc;
  border-radius: var(--radius-md);
  color: var(--color-muted-text);
  display: flex;
  flex-direction: column;
  font-size: 0.85rem;
  gap: 0.4rem;
  justify-content: center;
  min-height: 200px;
  padding: 1rem;
  text-align: center;
}

.form-status {
  background: #e8f1fb;
  border: 1px solid #cfe0f5;
  border-radius: var(--radius-sm);
  color: #0c4da2;
  display: none;
  padding: 0.8rem 1rem;
}

[data-state="complete"] .form-status {
  display: block;
}

/* ---------- CTA banner ---------- */

.cta-banner {
  background: radial-gradient(700px 300px at 15% 120%, rgba(45, 156, 219, 0.5), transparent 60%), var(--color-primary);
  color: #ffffff;
}

.cta-banner .container {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
  justify-content: space-between;
  padding-block: clamp(2.2rem, 4vw, 3rem);
}

.cta-banner h2 {
  margin-bottom: 0.2rem;
}

.cta-banner p {
  color: #d7e5f6;
  margin: 0;
}

.cta-actions {
  display: flex;
  gap: 0.9rem;
  flex-wrap: wrap;
}

/* ---------- Footer ---------- */

.site-footer {
  background: var(--color-primary-ink);
  color: #c3d5ec;
  font-size: 0.92rem;
}

.footer-grid {
  display: grid;
  gap: 2rem;
  grid-template-columns: 1.4fr 1fr 1fr 1.2fr;
  padding-block: 2.8rem 2.2rem;
}

.site-footer h4 {
  color: #ffffff;
  font-size: 0.95rem;
  letter-spacing: 0.05em;
  margin-bottom: 0.9rem;
  text-transform: uppercase;
}

.site-footer ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.site-footer li {
  margin-bottom: 0.5rem;
}

.site-footer a {
  color: #c3d5ec;
  text-decoration: none;
}

.site-footer a:hover {
  color: #ffffff;
  text-decoration: underline;
}

.footer-brand {
  align-items: center;
  display: flex;
  gap: 0.7rem;
  margin-bottom: 0.9rem;
}

.footer-brand strong {
  color: #ffffff;
  font-size: 1.1rem;
  letter-spacing: 0.02em;
}

.footer-note {
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  font-size: 0.8rem;
}

.footer-note .container {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem 1.5rem;
  justify-content: space-between;
  padding-block: 1rem;
}

.footer-note p {
  margin: 0;
}

/* ---------- Responsive ---------- */

@media (max-width: 1024px) {
  .grid-4 {
    grid-template-columns: repeat(2, 1fr);
  }

  .grid-3 {
    grid-template-columns: repeat(2, 1fr);
  }

  .footer-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .hero .container {
    grid-template-columns: 1fr;
  }

  .hero-media {
    max-width: 34rem;
  }
}

@media (max-width: 860px) {
  .nav-toggle {
    display: block;
  }

  .site-nav {
    background: var(--color-surface);
    border-top: 1px solid var(--color-border);
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 1rem;
    position: absolute;
    right: 0;
    top: 100%;
  }

  .site-nav.open {
    display: block;
  }

  .site-nav ul {
    flex-direction: column;
    gap: 0.1rem;
  }

  .header-cta {
    display: none;
  }

  .split,
  .contact-grid,
  .grid-2 {
    grid-template-columns: 1fr;
  }

  .quickbar .container {
    grid-template-columns: 1fr;
  }

  .topbar .member-link {
    display: none;
  }

  .form-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 560px) {
  .grid-3,
  .grid-4 {
    grid-template-columns: 1fr;
  }

  .stats-band .container {
    grid-template-columns: repeat(2, 1fr);
  }

  .footer-grid {
    grid-template-columns: 1fr;
  }

  .topbar-meta span.tz {
    display: none;
  }
}

/* ---------- Enterprise registration card (ĐKKD) ---------- */

.dk-card {
  padding: clamp(1.2rem, 3vw, 1.8rem);
}

.dk-row {
  border-bottom: 1px dashed var(--color-border);
  display: grid;
  gap: 0.1rem 1.2rem;
  grid-template-columns: minmax(190px, 300px) 1fr;
  padding: 0.7rem 0;
}

.dk-row:last-child {
  border-bottom: 0;
}

.dk-row dt {
  color: var(--color-muted-text);
  font-weight: 600;
}

.dk-row dd {
  font-weight: 600;
  margin: 0;
}

/* ---------- Mobile refinement ---------- */

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

.filter-bar .container {
  -webkit-overflow-scrolling: touch;
  scrollbar-width: thin;
}

.filter-tab {
  min-height: 2.5rem;
}

.quick-value {
  overflow-wrap: anywhere;
}

.nav-cta {
  display: none;
}

@media (max-width: 860px) {
  .hero::after {
    display: none;
  }

  .site-nav {
    box-shadow: 0 18px 32px rgba(9, 42, 79, 0.18);
    max-height: calc(100dvh - 8rem);
    overflow-y: auto;
  }

  .nav-cta {
    display: inline-flex;
    margin: 0.5rem 0.25rem 0.3rem;
    width: calc(100% - 0.5rem);
  }

  .dk-row {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 560px) {
  .hero-actions {
    flex-direction: column;
  }

  .hero-actions .btn {
    width: 100%;
  }

  .hero .container {
    padding-block: 2.4rem;
  }

  .quick-item {
    align-items: flex-start;
  }

  .quick-value {
    font-size: 0.95rem;
  }

  .section {
    padding-block: 2.6rem;
  }

  .card-body {
    padding: 1.05rem 1.05rem 1.2rem;
  }

  .cta-banner .container {
    flex-direction: column;
    align-items: flex-start;
  }

  .cta-actions {
    width: 100%;
  }

  .cta-actions .btn {
    flex: 1;
  }
}

@media (max-width: 400px) {
  .brand-name span {
    display: none;
  }

  .brand-name strong {
    font-size: 1rem;
  }
}

/* ---------- v2: official logo, group divisions, factory, quality, FAQ ---------- */

.logo-img {
  display: block;
  height: 2.2rem;
  width: auto;
}

.brand-name strong {
  letter-spacing: 0.02em;
}

.footer-brand img {
  background: #ffffff;
  border-radius: 8px;
  height: 2.6rem;
  padding: 0.35rem 0.6rem;
  width: auto;
}

/* Industry chain flow (group.html) */
.flow-steps {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(4, 1fr);
}

.flow-step {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-card);
  padding: 1.15rem 1.1rem 1.25rem;
}

.flow-step strong {
  color: var(--color-primary);
  display: block;
  font-size: 0.8rem;
  letter-spacing: 0.1em;
}

.flow-step h3 {
  font-size: 1.02rem;
  margin: 0.3rem 0;
}

.flow-step p {
  color: var(--color-muted-text);
  font-size: 0.92rem;
  margin: 0;
}

.division-num {
  color: var(--color-accent);
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.series-card h3 {
  border-left: 4px solid var(--color-cta);
  padding-left: 0.6rem;
}

/* FAQ accordion (native details/summary) */
.faq-list {
  display: grid;
  gap: 0.8rem;
}

.faq-list details {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-card);
}

.faq-list summary {
  align-items: center;
  cursor: pointer;
  display: flex;
  font-weight: 700;
  gap: 0.75rem;
  justify-content: space-between;
  list-style: none;
  padding: 1rem 1.2rem;
}

.faq-list summary::-webkit-details-marker {
  display: none;
}

.faq-list summary::after {
  color: var(--color-primary);
  content: "+";
  font-size: 1.5rem;
  line-height: 1;
}

.faq-list details[open] summary::after {
  content: "\2013";
}

.faq-list .faq-body {
  border-top: 1px solid var(--color-border);
  color: var(--color-muted-text);
  padding: 1rem 1.2rem 1.15rem;
}

.faq-body p:last-child {
  margin-bottom: 0;
}

.faq-body .faq-note {
  color: var(--color-cta-ink);
  font-size: 0.85rem;
  margin-top: 0.5rem;
}

@media (max-width: 860px) {
  .flow-steps {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 560px) {
  .flow-steps {
    grid-template-columns: 1fr;
  }

  .logo-img {
    height: 1.9rem;
  }
}

/* ===== v3 · 首页全新设计（仅 data-page-id="home"） ===== */

/* logo 放大，首页更显眼 */
body[data-page-id="home"] .logo-img {
  height: 3rem;
}
@media (max-width: 560px) {
  body[data-page-id="home"] .logo-img {
    height: 2.5rem;
  }
}

/* —— Hero 深蓝全幅 —— */
.hero-v3 {
  background:
    radial-gradient(1200px 500px at 85% -10%, rgba(45, 156, 219, 0.35), transparent 60%),
    linear-gradient(135deg, var(--color-primary-ink) 0%, var(--color-primary) 55%, #1559b8 100%);
  color: #fff;
  padding: 4.2rem 0 0;
  overflow: hidden;
}
.hero-v3-grid {
  display: grid;
  grid-template-columns: 1.05fr 0.95fr;
  gap: 3rem;
  align-items: center;
}
.hero-v3 .eyebrow {
  color: var(--color-cta);
  font-weight: 600;
  letter-spacing: 0.04em;
}
.hero-v3 h1 {
  color: #fff;
  font-size: clamp(1.9rem, 4.2vw, 3rem);
  line-height: 1.14;
  margin: 0.9rem 0 1rem;
}
.hero-v3-sub {
  color: rgba(255, 255, 255, 0.85);
  font-size: 1.02rem;
  line-height: 1.7;
  max-width: 34rem;
  margin: 0;
}
.hero-v3-actions {
  display: flex;
  gap: 0.8rem;
  flex-wrap: wrap;
  margin-top: 1.7rem;
}
.hero-v3 .btn-ghost {
  border-color: rgba(255, 255, 255, 0.45);
  color: #fff;
}
.hero-v3 .btn-ghost:hover {
  background: rgba(255, 255, 255, 0.12);
}
.hero-v3-media {
  position: relative;
}
.hero-v3-media img {
  width: 100%;
  border-radius: 16px;
  box-shadow: 0 28px 64px rgba(3, 20, 45, 0.45);
  display: block;
}
.hero-v3-badge {
  position: absolute;
  left: -0.9rem;
  bottom: -1rem;
  background: #fff;
  color: var(--color-primary-ink);
  border-radius: 12px;
  padding: 0.65rem 1rem;
  font-weight: 700;
  font-size: 0.88rem;
  box-shadow: 0 14px 34px rgba(3, 20, 45, 0.28);
}
.hero-v3-badge small {
  display: block;
  font-weight: 500;
  color: var(--color-muted-text);
  font-size: 0.74rem;
}

/* —— Hero 底部数据带 —— */
.stat-ribbon {
  margin-top: 3.6rem;
  background: rgba(255, 255, 255, 0.07);
  border-top: 1px solid rgba(255, 255, 255, 0.14);
}
.stat-ribbon-row {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1rem;
  padding: 1.5rem 0;
}
.stat-ribbon .stat {
  text-align: left;
  border-left: 3px solid var(--color-cta);
  padding-left: 0.9rem;
}
.stat-ribbon .stat strong {
  display: block;
  color: #fff;
  font-size: 1.55rem;
  line-height: 1.2;
}
.stat-ribbon .stat span {
  color: rgba(255, 255, 255, 0.72);
  font-size: 0.83rem;
}

/* —— 5 平台横向简洁卡 —— */
.platform-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 1rem;
}
.platform-item {
  display: flex;
  flex-direction: column;
  gap: 0.55rem;
  padding: 1.2rem 1.1rem;
  background: #fff;
  border: 1px solid var(--color-line, #e3e9f2);
  border-top: 4px solid var(--color-primary);
  border-radius: 12px;
  text-decoration: none;
  color: inherit;
  transition: transform 0.18s ease, box-shadow 0.18s ease;
}
.platform-item:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 36px rgba(12, 77, 162, 0.14);
}
.platform-item .p-count {
  font-size: 0.78rem;
  font-weight: 700;
  color: var(--color-accent);
  text-transform: uppercase;
  letter-spacing: 0.06em;
}
.platform-item h3 {
  margin: 0;
  font-size: 1.02rem;
}
.platform-item p {
  margin: 0;
  font-size: 0.86rem;
  color: var(--color-muted-text);
  line-height: 1.55;
  flex: 1;
}
.platform-item .card-link {
  font-size: 0.85rem;
}
.platform-item:nth-child(1) { border-top-color: #2d9cdb; }
.platform-item:nth-child(2) { border-top-color: #1273c4; }
.platform-item:nth-child(3) { border-top-color: #0c4da2; }
.platform-item:nth-child(4) { border-top-color: #1060b0; }
.platform-item:nth-child(5) { border-top-color: #d71920; }

/* —— 首页产业链横排 —— */
.chain-band {
  background: var(--color-primary-ink);
  color: #fff;
}
.chain-band .section-head h2,
.chain-band .section-head p {
  color: #fff;
}
.chain-band .section-head p {
  color: rgba(255, 255, 255, 0.78);
}
.chain-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.1rem;
  counter-reset: chain;
}
.chain-step {
  position: relative;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 12px;
  padding: 1.3rem 1.2rem 1.2rem;
}
.chain-step .division-num {
  color: var(--color-cta);
}
.chain-step h3 {
  color: #fff;
  font-size: 1.02rem;
  margin: 0.45rem 0 0.5rem;
}
.chain-step p {
  color: rgba(255, 255, 255, 0.75);
  font-size: 0.87rem;
  line-height: 1.6;
  margin: 0;
}
.chain-more {
  margin-top: 1.8rem;
}

/* —— 响应式 —— */
@media (max-width: 1024px) {
  .hero-v3-grid {
    grid-template-columns: 1fr;
  }
  .platform-grid {
    grid-template-columns: repeat(3, 1fr);
  }
  .chain-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 860px) {
  .stat-ribbon-row {
    grid-template-columns: repeat(2, 1fr);
    row-gap: 1.4rem;
  }
}
@media (max-width: 560px) {
  .hero-v3 {
    padding: 3rem 0 0;
  }
  .platform-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .chain-grid {
    grid-template-columns: 1fr;
  }
  .stat-ribbon .stat strong {
    font-size: 1.3rem;
  }
}
@media (max-width: 400px) {
  .platform-grid {
    grid-template-columns: 1fr;
  }
}

/* ===== v3.1 · 首页宽屏导航 + 下拉二级导航 ===== */

/* 页头通栏（宽屏） */
body[data-page-id="home"] .site-header .container {
  max-width: 100%;
  padding-left: clamp(1.2rem, 3vw, 2.6rem);
  padding-right: clamp(1.2rem, 3vw, 2.6rem);
}

/* logo 再放大 */
body[data-page-id="home"] .logo-img {
  height: 3.5rem;
}
@media (max-width: 560px) {
  body[data-page-id="home"] .logo-img {
    height: 2.7rem;
  }
}

/* 无 CTA 按钮后导航靠右铺开 */
body[data-page-id="home"] .site-nav {
  margin-left: auto;
}
body[data-page-id="home"] .site-nav > ul {
  gap: clamp(0.8rem, 1.5vw, 1.6rem);
}
body[data-page-id="home"] .site-nav > ul > li > a,
body[data-page-id="home"] .site-nav > ul > li > .drop-toggle {
  font-size: 1rem;
  white-space: nowrap;
}

/* —— 下拉二级导航 —— */
.has-dropdown {
  position: relative;
}
.drop-toggle {
  display: inline-flex;
  align-items: center;
  gap: 0.32rem;
  background: none;
  border: 0;
  padding: 0.35rem 0;
  cursor: pointer;
  font: inherit;
  font-weight: 500;
  color: var(--color-text);
}
.drop-toggle .chev {
  transition: transform 0.2s ease;
  color: var(--color-muted-text, #5b6b80);
}
.has-dropdown.open .drop-toggle .chev,
.has-dropdown:hover .chev {
  transform: rotate(180deg);
}
.dropdown {
  position: absolute;
  top: calc(100% + 0.5rem);
  left: 50%;
  transform: translateX(-50%) translateY(6px);
  min-width: 16.5rem;
  margin: 0;
  padding: 0.45rem;
  list-style: none;
  background: #fff;
  border: 1px solid #e3e9f2;
  border-radius: 12px;
  box-shadow: 0 18px 44px rgba(7, 42, 85, 0.16);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.18s ease, transform 0.18s ease, visibility 0.18s;
  z-index: 80;
}
.dropdown a {
  display: block;
  padding: 0.55rem 0.85rem;
  border-radius: 8px;
  font-size: 0.92rem;
  color: var(--color-text);
  text-decoration: none;
}
.dropdown a:hover {
  background: #eef4fb;
  color: var(--color-primary);
}
@media (hover: hover) and (min-width: 1025px) {
  .has-dropdown:hover .dropdown,
  .has-dropdown:focus-within .dropdown {
    opacity: 1;
    visibility: visible;
    transform: translateX(-50%) translateY(0);
  }
}
.has-dropdown.open .dropdown {
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%) translateY(0);
}

/* 移动端菜单内：下拉改为手风琴式 */
@media (max-width: 1024px) {
  .has-dropdown .dropdown {
    position: static;
    transform: none;
    min-width: 0;
    margin: 0;
    padding: 0 0 0 1rem;
    border: 0;
    box-shadow: none;
    background: transparent;
    display: none;
    opacity: 1;
    visibility: visible;
  }
  .has-dropdown.open .dropdown {
    display: block;
    transform: none;
  }
  .drop-toggle {
    width: 100%;
    justify-content: space-between;
    font-size: 1rem;
    padding: 0.55rem 0;
  }
}

/* ===== v3.2 · 首页导航修正：防压缩断行 ===== */

/* 品牌文字永远单行，不被 flex 压扁竖排 */
.brand-name {
  white-space: nowrap;
}
.brand {
  flex: none;
}
.logo-img {
  flex: none;
}

/* 首页：logo 3rem、导航整体不收缩 */
body[data-page-id="home"] .logo-img {
  height: 3rem;
}
body[data-page-id="home"] .site-nav {
  flex: none;
}

/* 首页导航链接：收紧内边距，保证 8 项 + 下拉一行放下 */
body[data-page-id="home"] .site-nav > ul > li > a,
body[data-page-id="home"] .site-nav > ul > li > .drop-toggle {
  padding: 0.55rem 0.5rem;
  font-size: 0.98rem;
}
body[data-page-id="home"] .site-nav > ul {
  gap: 0.15rem;
}

/* 中等宽度屏：字号再收一档 */
@media (max-width: 1280px) {
  body[data-page-id="home"] .site-nav > ul > li > a,
  body[data-page-id="home"] .site-nav > ul > li > .drop-toggle {
    padding: 0.55rem 0.35rem;
    font-size: 0.92rem;
  }
}

/* ===== v3.3 · 图文式二级导航 + logo 再放大 ===== */

body[data-page-id="home"] .logo-img {
  height: 3.4rem;
}

/* 下拉改纵向列表（覆盖继承自 .site-nav ul 的横向 flex） */
.dropdown {
  display: flex;
  flex-direction: column;
  gap: 0.12rem;
  padding: 0.5rem;
}
.dd-cards {
  min-width: 21rem;
}
/* Sản phẩm：两列图文 mega 面板 */
.dd-mega {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.3rem;
  min-width: 36rem;
  padding: 0.6rem;
}

/* 图文卡片条目 */
.dd-card {
  display: flex;
  align-items: flex-start;
  gap: 0.7rem;
  padding: 0.6rem 0.7rem;
  border-radius: 10px;
  text-decoration: none;
}
.dropdown a.dd-card {
  padding: 0.6rem 0.7rem;
  border-radius: 10px;
}
.dd-card:hover {
  background: #eef4fb;
}
.dd-ico {
  flex: none;
  width: 34px;
  height: 34px;
  border-radius: 9px;
  display: grid;
  place-items: center;
  background: #e8f1fb;
  color: var(--color-primary);
}
.dd-text {
  display: flex;
  flex-direction: column;
  gap: 0.12rem;
  min-width: 0;
}
.dd-text strong {
  font-size: 0.93rem;
  font-weight: 700;
  color: var(--color-text);
  white-space: nowrap;
}
.dd-text small {
  font-size: 0.78rem;
  line-height: 1.45;
  color: var(--color-muted-text);
  white-space: normal;
}

@media (max-width: 1280px) {
  .dd-mega {
    min-width: 0;
    width: 23rem;
    grid-template-columns: 1fr;
  }
}

/* 移动端手风琴内：图文卡保持可读 */
@media (max-width: 1024px) {
  .dd-mega {
    width: auto;
    grid-template-columns: 1fr;
    padding: 0;
  }
  .dd-cards {
    min-width: 0;
  }
  .dd-card,
  .dropdown a.dd-card {
    padding: 0.5rem 0.4rem;
  }
  .dd-text strong {
    white-space: normal;
  }
}

/* ===== v3.4 · logo 4rem + 两端分布导航 + 站内搜索 ===== */

/* logo 加大，页头增高 */
body[data-page-id="home"] .logo-img {
  height: 4rem;
}
body[data-page-id="home"] .brand-name strong {
  font-size: 1.2rem;
}

/* 桌面端：logo 贴左 · 导航居中撑开 · 搜索贴右 */
@media (min-width: 1025px) {
  body[data-page-id="home"] .site-header .container {
    min-height: 5.2rem;
    gap: 1.2rem;
  }
  body[data-page-id="home"] .site-nav {
    margin-left: 0;
    flex: 1 1 auto;
    display: flex;
    justify-content: center;
  }
  body[data-page-id="home"] .site-nav > ul {
    gap: clamp(0.4rem, 0.9vw, 1rem);
  }
  body[data-page-id="home"] .site-nav > ul > li > a,
  body[data-page-id="home"] .site-nav > ul > li > .drop-toggle {
    padding: 0.55rem 0.65rem;
    font-size: 0.98rem;
  }
  @media (max-width: 1280px) {
    body[data-page-id="home"] .site-nav > ul > li > a,
    body[data-page-id="home"] .site-nav > ul > li > .drop-toggle {
      padding: 0.55rem 0.35rem;
      font-size: 0.92rem;
    }
  }
}

/* —— 站内搜索框 —— */
.nav-search {
  position: relative;
  flex: none;
}
.nav-search input {
  width: clamp(11rem, 15vw, 15rem);
  padding: 0.55rem 2.4rem 0.55rem 0.95rem;
  border: 1.5px solid var(--color-border);
  border-radius: 999px;
  background: #f4f7fb;
  font: inherit;
  font-size: 0.9rem;
  color: var(--color-text);
  transition: border-color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease;
}
.nav-search input::placeholder {
  color: var(--color-muted-text);
}
.nav-search input:focus {
  outline: none;
  border-color: var(--color-primary);
  background: #fff;
  box-shadow: 0 0 0 3px rgba(12, 77, 162, 0.1);
}
.nav-search button {
  position: absolute;
  right: 0.45rem;
  top: 50%;
  transform: translateY(-50%);
  display: grid;
  place-items: center;
  width: 1.9rem;
  height: 1.9rem;
  border: 0;
  border-radius: 50%;
  background: transparent;
  color: var(--color-muted-text);
  cursor: pointer;
}
.nav-search button:hover {
  background: #e8f1fb;
  color: var(--color-primary);
}
.search-results {
  position: absolute;
  top: calc(100% + 0.5rem);
  right: 0;
  width: 22rem;
  max-height: 24rem;
  overflow: auto;
  background: #fff;
  border: 1px solid #e3e9f2;
  border-radius: 12px;
  box-shadow: 0 18px 44px rgba(7, 42, 85, 0.16);
  padding: 0.4rem;
  z-index: 90;
}
.search-item {
  display: block;
  padding: 0.55rem 0.7rem;
  border-radius: 8px;
  text-decoration: none;
}
.search-item:hover {
  background: #eef4fb;
}
.search-item strong {
  display: block;
  font-size: 0.9rem;
  color: var(--color-text);
}
.search-item small {
  display: block;
  font-size: 0.78rem;
  color: var(--color-muted-text);
  margin-top: 0.1rem;
}
.search-empty {
  padding: 0.9rem;
  font-size: 0.85rem;
  color: var(--color-muted-text);
  text-align: center;
  margin: 0;
}

/* 移动端：logo 收敛、搜索框移到汉堡左侧 */
@media (max-width: 1024px) {
  body[data-page-id="home"] .site-header .container {
    min-height: 4.6rem;
    gap: 0.7rem;
  }
  body[data-page-id="home"] .logo-img {
    height: 3rem;
  }
  .nav-search {
    order: 2;
    margin-left: auto;
  }
  .nav-toggle {
    order: 3;
  }
  .nav-search input {
    width: clamp(8rem, 32vw, 12rem);
  }
  .search-results {
    width: min(22rem, calc(100vw - 2rem));
  }
}
@media (max-width: 560px) {
  body[data-page-id="home"] .logo-img {
    height: 2.7rem;
  }
  .nav-search input {
    width: clamp(6.5rem, 30vw, 9rem);
    font-size: 0.85rem;
    padding: 0.45rem 2.2rem 0.45rem 0.8rem;
  }
}

/* ===== v3.5 · logo 裁边后重定尺寸：贴左 + 尽量大 ===== */

/* 桌面：logo 按视口自适应，宽屏顶到 4.6rem；裁剪后比例 4.25:1，字样宽度大幅增加 */
@media (min-width: 1025px) {
  body[data-page-id="home"] .logo-img {
    height: clamp(3rem, 3.4vw + 1rem, 4.6rem);
  }
  body[data-page-id="home"] .site-header .container {
    min-height: 5.4rem;
  }
  /* 导航与搜索收紧一档，给大 logo 让出宽度 */
  body[data-page-id="home"] .site-nav > ul {
    gap: clamp(0.3rem, 0.6vw, 0.8rem);
  }
  body[data-page-id="home"] .site-nav > ul > li > a,
  body[data-page-id="home"] .site-nav > ul > li > .drop-toggle {
    padding: 0.55rem 0.5rem;
    font-size: 0.95rem;
  }
  body[data-page-id="home"] .nav-search input {
    width: clamp(10rem, 12.5vw, 14rem);
  }
}

/* 中窄桌面：隐藏品牌旁注文字，保证大 logo + 8 栏导航一行放下 */
@media (min-width: 1025px) and (max-width: 1599px) {
  body[data-page-id="home"] .brand-name {
    display: none;
  }
}
@media (min-width: 1025px) and (max-width: 1280px) {
  body[data-page-id="home"] .site-nav > ul > li > a,
  body[data-page-id="home"] .site-nav > ul > li > .drop-toggle {
    padding: 0.55rem 0.3rem;
    font-size: 0.9rem;
  }
}

/* 移动端 */
@media (max-width: 1024px) {
  body[data-page-id="home"] .logo-img {
    height: 3rem;
  }
}
@media (max-width: 560px) {
  body[data-page-id="home"] .logo-img {
    height: 2.6rem;
  }
}

/* ===== v3.6 · 页头强制修正 + 视频背景 banner（bangying360 式）+ 红色替换黄 ===== */

/* —— 页头：通栏、logo 贴左、导航居中、搜索贴右（平铺规则，消除旧规则干扰）—— */
@media (min-width: 1025px) {
  body[data-page-id="home"] .site-header .container {
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: flex-start !important;
    align-items: center !important;
    gap: 1.4rem !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: clamp(1.2rem, 2.5vw, 2.2rem) !important;
    padding-right: clamp(1.2rem, 2.5vw, 2.2rem) !important;
    min-height: 4.9rem !important;
  }
  body[data-page-id="home"] .logo-img {
    height: 3.6rem !important;
  }
  body[data-page-id="home"] .site-nav {
    margin-left: auto !important;
    margin-right: auto !important;
    flex: 1 1 auto !important;
    display: flex !important;
    justify-content: center !important;
  }
  body[data-page-id="home"] .site-nav > ul {
    gap: clamp(0.3rem, 0.6vw, 0.8rem) !important;
  }
  body[data-page-id="home"] .site-nav > ul > li > a,
  body[data-page-id="home"] .site-nav > ul > li > .drop-toggle {
    padding: 0.55rem 0.5rem !important;
    font-size: 0.95rem !important;
  }
  body[data-page-id="home"] .nav-search {
    margin-left: 0 !important;
    order: 0 !important;
  }
  body[data-page-id="home"] .nav-search input {
    width: clamp(9.5rem, 12vw, 13.5rem) !important;
  }
}
@media (min-width: 1025px) and (max-width: 1599px) {
  body[data-page-id="home"] .brand-name {
    display: none !important;
  }
}
@media (min-width: 1025px) and (max-width: 1360px) {
  body[data-page-id="home"] .logo-img {
    height: 2.9rem !important;
  }
  body[data-page-id="home"] .site-nav > ul > li > a,
  body[data-page-id="home"] .site-nav > ul > li > .drop-toggle {
    padding: 0.55rem 0.3rem !important;
    font-size: 0.88rem !important;
  }
}

/* —— Hero v4：全幅视频背景 + 文案主体 —— */
.hero-v4 {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 34rem;
  background: var(--color-primary-ink);
  color: #fff;
  overflow: hidden;
}
.hero-v4-video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.hero-v4-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(95deg, rgba(6, 33, 66, 0.95) 0%, rgba(8, 45, 92, 0.85) 45%, rgba(10, 62, 126, 0.4) 100%);
}
.hero-v4-inner {
  position: relative;
  z-index: 2;
  padding-top: 5.2rem;
  padding-bottom: 3.4rem;
}
.hero-v4-eyebrow {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  margin: 0;
  font-weight: 700;
  font-size: 0.86rem;
  letter-spacing: 0.05em;
  color: #e8432a;
  text-transform: uppercase;
}
.hero-v4-eyebrow .tape-strip {
  background: linear-gradient(90deg, #e8432a, #c81e1e) !important;
}
.hero-v4 h1 {
  color: #fff;
  font-size: clamp(2rem, 4vw, 3.2rem);
  line-height: 1.12;
  margin: 1rem 0 1.1rem;
  max-width: 46rem;
}
.hero-v4-sub {
  color: rgba(255, 255, 255, 0.88);
  font-size: 1.02rem;
  line-height: 1.75;
  max-width: 37rem;
  margin: 0;
}
.hero-v4-actions {
  display: flex;
  gap: 0.8rem;
  flex-wrap: wrap;
  margin-top: 1.9rem;
}
.hero-v4 .btn-ghost {
  border-color: rgba(255, 255, 255, 0.5);
  color: #fff;
}
.hero-v4 .btn-ghost:hover {
  background: rgba(255, 255, 255, 0.12);
}

/* 数据带贴底、毛玻璃深蓝底 */
.hero-v4 .stat-ribbon {
  position: relative;
  z-index: 2;
  margin-top: auto;
  background: rgba(5, 28, 56, 0.6);
  backdrop-filter: blur(8px);
  border-top: 1px solid rgba(255, 255, 255, 0.14);
}
.hero-v4 .stat-ribbon-row {
  padding: 1.35rem 0;
}
.stat-ribbon .stat {
  border-left-color: #e8432a !important;
}

/* —— 首页黄色全部换 logo 红 —— */
body[data-page-id="home"] .btn-cta {
  background: linear-gradient(135deg, #e8432a 0%, #c81e1e 100%) !important;
  border-color: transparent !important;
}
body[data-page-id="home"] .btn-cta:hover {
  background: #b71717 !important;
}
body[data-page-id="home"] .platform-item:nth-child(5) {
  border-top-color: #d71920;
}
body[data-page-id="home"] .chain-step .division-num {
  color: #e8432a;
}

/* 移动端 hero v4：遮罩加深保证可读 */
@media (max-width: 1024px) {
  .hero-v4 {
    min-height: 30rem;
  }
  .hero-v4-overlay {
    background: linear-gradient(180deg, rgba(6, 33, 66, 0.88) 0%, rgba(6, 33, 66, 0.82) 100%);
  }
  .hero-v4-inner {
    padding-top: 3.6rem;
    padding-bottom: 2.6rem;
  }
}
@media (max-width: 560px) {
  .hero-v4 {
    min-height: 26rem;
  }
  .stat-ribbon .stat strong {
    font-size: 1.25rem;
  }
}

/* ===== v3.7 · logo 再小 2rem + 页头电话 + 满屏 banner + 数据带透明化 ===== */

@media (min-width: 1025px) {
  body[data-page-id="home"] .site-header .container {
    min-height: 3.8rem !important;
  }
  body[data-page-id="home"] .logo-img {
    height: 1.6rem !important;
  }
}
@media (min-width: 1025px) and (max-width: 1360px) {
  body[data-page-id="home"] .logo-img {
    height: 1.4rem !important;
  }
}

/* 页头电话胶囊（搜索框右侧） */
.header-phone {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  flex: none;
  padding: 0.5rem 0.9rem;
  border: 1px solid rgba(12, 77, 162, 0.25);
  border-radius: 99rem;
  background: #eef4fb;
  color: var(--color-primary-ink);
  font-weight: 700;
  font-size: 0.92rem;
  line-height: 1;
  white-space: nowrap;
  text-decoration: none;
  transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}
.header-phone svg {
  color: #d71920;
}
.header-phone:hover {
  background: #d71920;
  border-color: #d71920;
  color: #fff;
}
.header-phone:hover svg {
  color: #fff;
}
@media (max-width: 1024px) {
  .header-phone {
    margin-left: 0.4rem;
    padding: 0.45rem 0.7rem;
    font-size: 0.85rem;
  }
}
@media (max-width: 560px) {
  .header-phone span {
    display: none;
  }
  .header-phone {
    padding: 0.5rem 0.6rem;
  }
}

/* 满屏 banner：第一屏全部给视频背景 */
.hero-v4 {
  min-height: calc(100vh - 6rem);
}
.hero-v4-inner {
  padding-top: 6.5rem;
  padding-bottom: 2rem;
}
@supports (height: 100svh) {
  .hero-v4 {
    min-height: calc(100svh - 6rem);
  }
}
@media (max-width: 1024px) {
  .hero-v4 {
    min-height: calc(100vh - 4.8rem);
  }
  @supports (height: 100svh) {
    .hero-v4 {
      min-height: calc(100svh - 4.8rem);
    }
  }
}

/* 数据带透明化：无底色、无边框，融入 banner */
.hero-v4 .stat-ribbon {
  background: transparent !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  border-top: none !important;
}
.hero-v4 .stat-ribbon-row {
  padding-top: 1.6rem;
  padding-bottom: 2.4rem;
}
.hero-v4 .stat strong {
  font-size: 1.6rem;
}

/* ===== v3.8 · 导航组靠右拉开与 logo 间距 + banner 高度回收 ===== */
@media (min-width: 1025px) {
  body[data-page-id="home"] .site-nav {
    margin-left: auto !important;
    margin-right: 0 !important;
  }
}

/* banner 高度稍微缩回：不再顶满整屏 */
.hero-v4 {
  min-height: calc(100vh - 8.5rem);
}
@supports (height: 100svh) {
  .hero-v4 {
    min-height: calc(100svh - 8.5rem);
  }
}
@media (max-width: 1024px) {
  .hero-v4 {
    min-height: calc(100vh - 6.5rem);
  }
  @supports (height: 100svh) {
    .hero-v4 {
      min-height: calc(100svh - 6.5rem);
    }
  }
}

/* ===== v3.9 · 菜单组贴右与 logo 拉开距离 + hero 文案垂直居中 ===== */
@media (min-width: 1025px) {
  body[data-page-id="home"] .site-nav {
    flex: 0 1 auto !important;
    margin-left: auto !important;
    margin-right: 0 !important;
    justify-content: flex-end !important;
  }
}

/* 文案区在数据带以上空间垂直居中，上下均衡 */
.hero-v4-inner {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-top: 2.5rem;
  padding-bottom: 1.5rem;
}

/* ===== v4.0 · 右侧组 wrapper（导航+搜索+电话）物理贴右 ===== */
.header-right {
  display: flex;
  align-items: center;
  gap: 1rem;
  flex: 0 1 auto;
  min-width: 0;
  margin-left: auto;
}
@media (min-width: 1025px) {
  body[data-page-id="home"] .header-right {
    display: flex !important;
    align-items: center !important;
    gap: 1.1rem !important;
    margin-left: auto !important;
    margin-right: 0 !important;
    flex: 0 1 auto !important;
  }
  body[data-page-id="home"] .header-right .site-nav,
  body[data-page-id="home"] .header-right .nav-search,
  body[data-page-id="home"] .header-right .header-phone {
    margin-left: 0 !important;
    margin-right: 0 !important;
    order: 0 !important;
  }
  body[data-page-id="home"] .site-nav {
    flex: 0 1 auto !important;
    display: flex !important;
    justify-content: flex-start !important;
  }
}
@media (max-width: 1024px) {
  .header-right {
    display: contents;
  }
}

/* ===== v4.1 · 根因修复：页头容器 width 显式 72rem，max-width 覃盖无效 → 强制全宽 ===== */
@media (min-width: 1025px) {
  body[data-page-id="home"] .site-header .container {
    width: 100% !important;
  }
}

/* ===== v4.2 · 首页内容区改版（对齐设计稿）===== */

/* 区块标题统一居中 */
body[data-page-id="home"] .section-head {
  text-align: center;
  max-width: 46rem;
  margin-left: auto;
  margin-right: auto;
}
body[data-page-id="home"] .section-head .eyebrow {
  justify-content: center;
}

/* 流程区（白底流程卡 + 箭头） */
.flow-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.4rem;
}
.flow-card {
  position: relative;
  background: #fff;
  border: 1px solid #e8eef6;
  border-radius: 14px;
  padding: 1.9rem 1.4rem 1.7rem;
  text-align: center;
  box-shadow: 0 10px 26px rgba(13, 59, 102, 0.07);
}
.flow-card > svg {
  color: #1060b0;
}
.flow-card .f-step {
  display: inline-block;
  margin-bottom: 0.5rem;
  font-size: 0.74rem;
  font-weight: 800;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  color: #1060b0;
}
.flow-card h3 {
  font-size: 1.05rem;
  margin: 0.7rem 0 0.5rem;
}
.flow-card p {
  font-size: 0.9rem;
  line-height: 1.65;
  color: var(--color-muted-text);
}
.flow-arrow {
  position: absolute;
  right: -1.25rem;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
  width: 2.1rem;
  height: 2.1rem;
  display: grid;
  place-items: center;
  background: #fff;
  border-radius: 50%;
  color: #1060b0;
  font-weight: 800;
  box-shadow: 0 4px 14px rgba(13, 59, 102, 0.14);
}
.chain-more {
  text-align: center;
  margin-top: 2.2rem;
}
@media (max-width: 1024px) {
  .flow-grid { grid-template-columns: repeat(2, 1fr); }
  .flow-arrow { display: none; }
}
@media (max-width: 560px) {
  .flow-grid { grid-template-columns: 1fr; }
}

/* 全球供应区（蓝色渐变 + 点阵纹理） */
.global-band {
  position: relative;
  overflow: hidden;
  padding: 4.6rem 0;
  background: linear-gradient(115deg, #0a2f60 0%, #0d4a96 55%, #1273c4 100%);
  color: #fff;
}
.global-band::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(255, 255, 255, 0.16) 1.3px, transparent 1.4px);
  background-size: 26px 26px;
  -webkit-mask-image: linear-gradient(95deg, rgba(0,0,0,0.9) 5%, rgba(0,0,0,0.12) 75%);
  mask-image: linear-gradient(95deg, rgba(0,0,0,0.9) 5%, rgba(0,0,0,0.12) 75%);
}
.global-band .container { position: relative; }
.global-head { text-align: center; margin-bottom: 2.6rem; }
.global-head h2 {
  color: #fff;
  font-size: clamp(1.7rem, 2.6vw, 2.3rem);
  margin: 0;
}
.g-underline {
  width: 64px;
  height: 4px;
  border-radius: 2px;
  background: #e8432a;
  margin: 1.1rem auto 0;
}
.global-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.6rem;
  text-align: center;
}
.global-num strong {
  display: block;
  font-size: clamp(2.1rem, 3vw, 2.8rem);
  font-weight: 800;
  letter-spacing: -0.01em;
}
.global-num span {
  display: block;
  margin-top: 0.4rem;
  font-size: 0.95rem;
  color: rgba(255, 255, 255, 0.85);
}
.global-icons {
  display: flex;
  gap: 2.4rem;
  justify-content: center;
  flex-wrap: wrap;
  margin-top: 2.7rem;
}
.global-icons .gi {
  display: inline-flex;
  align-items: center;
  gap: 0.65rem;
  font-size: 0.92rem;
  color: rgba(255, 255, 255, 0.92);
}
.global-icons .gi svg { color: #e8432a; }
@media (max-width: 1024px) {
  .global-grid { grid-template-columns: repeat(2, 1fr); gap: 1.8rem 1rem; }
}
@media (max-width: 560px) {
  .global-grid { grid-template-columns: 1fr; }
}

/* 平台卡（居中图标 + 红色小按钮） */
body[data-page-id="home"] .platform-grid {
  grid-template-columns: repeat(5, 1fr);
  gap: 1.3rem;
}
body[data-page-id="home"] .platform-item {
  text-align: center;
  align-items: center;
  border: 1px solid #e8eef6;
  border-top: 1px solid #e8eef6 !important;
  border-radius: 14px;
  padding: 2rem 1.3rem 1.8rem;
  box-shadow: 0 10px 26px rgba(13, 59, 102, 0.06);
}
body[data-page-id="home"] .platform-item .p-icon {
  width: 62px;
  height: 62px;
  margin: 0 auto 0.9rem;
  border-radius: 50%;
  background: #eaf4fc;
  display: grid;
  place-items: center;
  color: #1273c4;
}
body[data-page-id="home"] .platform-item .p-count {
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  color: var(--color-muted-text);
  text-transform: uppercase;
}
body[data-page-id="home"] .platform-item h3 {
  margin: 0.35rem 0 0.5rem;
}
body[data-page-id="home"] .platform-item .card-link {
  display: none;
}
body[data-page-id="home"] .platform-item .mini-btn {
  display: inline-flex;
  margin-top: 1.05rem;
  padding: 0.5rem 1.15rem;
  border-radius: 99rem;
  background: linear-gradient(135deg, #e8432a 0%, #c81e1e 100%);
  color: #fff;
  font-size: 0.85rem;
  font-weight: 700;
  line-height: 1.2;
}
body[data-page-id="home"] .platform-item:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 40px rgba(13, 59, 102, 0.13);
}
body[data-page-id="home"] .platform-item:hover .mini-btn {
  background: #b71717;
}
@media (max-width: 1280px) {
  body[data-page-id="home"] .platform-grid { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 760px) {
  body[data-page-id="home"] .platform-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 560px) {
  body[data-page-id="home"] .platform-grid { grid-template-columns: 1fr; }
}

/* 产品 3 卡 + 查看全部 */
.sp-more { text-align: center; margin-top: 2.2rem; }
body[data-page-id="home"] .product-card {
  border: 1px solid #e8eef6;
  border-radius: 14px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 10px 26px rgba(13, 59, 102, 0.06);
  transition: transform 0.18s ease, box-shadow 0.18s ease;
}
body[data-page-id="home"] .product-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 40px rgba(13, 59, 102, 0.13);
}

/* 信任理由卡（居中圆图标） */
body[data-page-id="home"] .adv-card {
  text-align: center;
  border: 1px solid #e8eef6;
  border-radius: 14px;
  padding: 2.2rem 1.5rem;
  box-shadow: 0 10px 26px rgba(13, 59, 102, 0.06);
}
body[data-page-id="home"] .adv-card svg {
  display: block;
  width: 46px;
  height: 46px;
  margin: 0 auto 1rem;
  padding: 12px;
  border: 1.5px solid rgba(18, 115, 196, 0.4);
  border-radius: 50%;
  color: #1273c4;
}
body[data-page-id="home"] .adv-card h3 {
  font-size: 1.08rem;
}
body[data-page-id="home"] .adv-card p {
  font-size: 0.92rem;
  color: var(--color-muted-text);
}

/* 报价表单条 */
.cta-banner {
  background: linear-gradient(120deg, #0a2f60 0%, #0d4a96 100%);
}
body[data-page-id="home"] .cta-banner .container {
  text-align: center;
}
body[data-page-id="home"] .cta-banner h2 {
  margin-bottom: 0.6rem;
}
.quote-note {
  color: rgba(255, 255, 255, 0.82);
  margin: 0 auto;
  max-width: 34rem;
}
.quote-form {
  display: flex;
  gap: 0.8rem;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: 1.9rem;
}
.quote-form select,
.quote-form input {
  flex: 1 1 190px;
  max-width: 250px;
  padding: 0.85rem 1rem;
  border: 1px solid rgba(255, 255, 255, 0.28);
  border-radius: 10px;
  background: #fff;
  font: inherit;
  font-size: 0.95rem;
  color: #123;
}
.quote-form select:focus,
.quote-form input:focus {
  outline: none;
  border-color: #e8432a;
}
.quote-form .btn {
  flex: 0 0 auto;
  padding: 0.85rem 1.9rem;
  border-radius: 10px;
  border: none;
  cursor: pointer;
}
@media (max-width: 560px) {
  .quote-form select,
  .quote-form input,
  .quote-form .btn {
    flex: 1 1 100%;
    max-width: none;
  }
}

    /* ============ v4.3 — AI 设计稿复刻系统 ============ */
    .d-h2{ text-align:center; font-size:clamp(1.55rem,2.6vw,2.05rem); color:#101828; margin:0 0 2.2rem; font-weight:800; letter-spacing:-.01em }
    .d-h2.light{ color:#fff }
    .d-underline{ display:block; width:56px; height:4px; border-radius:99rem; background:#e8432a; margin:-1.3rem auto 2.6rem }
    /* 内页 Hero */
    .d-hero{ position:relative; overflow:hidden; background:linear-gradient(112deg,#08213f 0%,#0b3a72 55%,#0d4a96 100%); min-height:430px; display:flex; align-items:center }
    .d-hero::after{ content:""; position:absolute; top:0; right:0; width:36%; height:56%; background:linear-gradient(135deg,#2d9cdb,#1060b0); clip-path:polygon(100% 0,100% 100%,20% 0); opacity:.92; z-index:2 }
    .d-hero::before{ content:""; position:absolute; left:4%; bottom:9%; width:220px; height:105px; border:1px solid rgba(64,196,208,.4); border-right:none; border-bottom:none; transform:skewX(-18deg); z-index:1 }
    .d-hero-img{ position:absolute; top:0; right:0; bottom:0; width:47%; height:100%; object-fit:cover; z-index:2 }
    .d-hero-inner{ position:relative; z-index:3 }
    .d-hero-copy{ max-width:50%; padding:3.2rem 0 3.4rem }
    .d-hero-copy h1{ color:#fff; font-size:clamp(1.9rem,3.4vw,2.7rem); line-height:1.16; margin:0 0 1rem; font-weight:800 }
    .d-hero-copy p{ color:rgba(230,240,250,.85); font-size:1.02rem; line-height:1.7; margin:0 0 1.8rem; max-width:29rem }
    .d-hero-btns{ display:flex; gap:.9rem; flex-wrap:wrap }
    .btn-ghost2{ display:inline-flex; align-items:center; padding:.72rem 1.6rem; border-radius:99rem; border:1.5px solid rgba(255,255,255,.75); color:#fff; font-weight:600; font-size:.95rem; transition:.2s }
    .btn-ghost2:hover{ background:#fff; color:#0b3a72 }
    .d-hero-dots{ position:absolute; z-index:4; left:50%; transform:translateX(-50%); bottom:14px; display:flex; gap:.45rem }
    .d-hero-dots span{ width:8px; height:8px; border-radius:50%; background:rgba(255,255,255,.35) }
    .d-hero-dots .on{ background:#fff }
    /* 首页：流程两卡 + 越南地图 */
    .d-flow{ background:#fff; padding:4.2rem 0 4.6rem }
    .d-flow-row{ display:flex; align-items:stretch; gap:1.3rem }
    .d-flow-card{ flex:1 1 0; background:#fff; border:1px solid #e8eef6; border-radius:16px; box-shadow:0 10px 28px rgba(16,42,86,.08); padding:2rem 1.6rem; text-align:center }
    .d-flow-ico{ display:inline-flex; width:64px; height:64px; border-radius:50%; border:2px solid #1060b0; color:#1060b0; align-items:center; justify-content:center; margin-bottom:1rem }
    .d-flow-ico svg{ width:30px; height:30px }
    .d-flow-card h3{ font-size:1.12rem; margin:.2rem 0 .6rem; color:#101828 }
    .d-flow-card p{ font-size:.92rem; color:#5b6b81; line-height:1.65; margin:0 }
    .d-flow-arr{ align-self:center; color:#1060b0; font-size:1.45rem; font-weight:800; letter-spacing:-.18em; flex:0 0 auto }
    .d-flow-arr.single{ letter-spacing:0 }
    .d-flow-map{ flex:0 0 29%; text-align:center; display:flex; flex-direction:column; justify-content:center }
    .d-flow-map img{ max-height:300px; width:auto; max-width:100%; object-fit:contain; margin:0 auto }
    .d-flow-map p{ font-size:.85rem; color:#5b6b81; margin-top:.7rem }
    /* 全球供应蓝色区 */
    .d-global{ background:linear-gradient(115deg,#0a2f60 0%,#0d4a96 55%,#1273c4 100%); padding:4.2rem 0 4.8rem }
    .d-global-row{ display:flex; align-items:center; gap:2rem }
    .d-global-map{ flex:1 1 58%; min-width:0; border-radius:8px; opacity:.95; display:block }
    .d-global-panel{ flex:0 1 400px; background:rgba(255,255,255,.09); border:1px solid rgba(255,255,255,.16); border-radius:16px; padding:1.9rem 1.7rem; backdrop-filter:blur(3px) }
    .d-global-nums{ display:flex; gap:2.2rem; flex-wrap:wrap }
    .d-num strong{ display:block; font-size:clamp(2.2rem,3.4vw,3rem); color:#fff; font-weight:800; line-height:1 }
    .d-num span{ font-size:.92rem; color:rgba(230,240,250,.85); display:block; margin-top:.45rem }
    .d-gicons{ margin-top:1.5rem; display:grid; gap:.9rem }
    .d-gi{ display:flex; gap:.7rem; align-items:center; color:rgba(235,244,252,.92); font-size:.9rem; line-height:1.45 }
    .d-gi svg{ width:22px; height:22px; flex:0 0 auto; color:#e8432a }
    /* 平台 4 卡 */
    .d-plat{ background:#fff; padding:4.2rem 0 }
    .d-plat-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:1.3rem }
    .d-plat-card{ background:linear-gradient(180deg,#f2f7fd,#dcebfa); border-radius:14px; padding:1.9rem 1.4rem; text-align:center; transition:.25s }
    .d-plat-card:hover{ transform:translateY(-4px); box-shadow:0 14px 30px rgba(12,77,162,.14) }
    .d-pi{ display:inline-flex; color:#0c4da2; margin-bottom:.9rem }
    .d-pi svg{ width:44px; height:44px }
    .d-plat-card h3{ font-size:1.05rem; color:#101828; margin:0 0 .55rem }
    .d-plat-card p{ font-size:.88rem; color:#5b6b81; line-height:1.6; margin:0 0 1.15rem }
    .d-btn-red{ display:inline-block; padding:.5rem 1.3rem; border-radius:99rem; background:linear-gradient(135deg,#e8432a,#c81e1e); color:#fff; font-size:.85rem; font-weight:600 }
    .d-btn-red:hover{ filter:brightness(1.1) }
    /* 产品 3 卡 */
    .d-prod3{ background:#fff; padding:4.2rem 0 }
    .d-prod3-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:1.3rem }
    .d-prod-card{ position:relative; background:#fff; border:1px solid #e8eef6; border-radius:14px; box-shadow:0 8px 22px rgba(16,42,86,.07); padding:1.5rem; transition:.25s; display:block }
    .d-prod-card:hover{ transform:translateY(-4px); box-shadow:0 14px 30px rgba(16,42,86,.12) }
    .d-prod-head{ display:flex; align-items:center; gap:1rem; margin-bottom:1rem; padding-right:1.6rem }
    .d-prod-head img{ width:62px; height:62px; border-radius:50%; object-fit:cover; border:1px solid #e3ecf7; flex:0 0 auto }
    .d-prod-head em{ display:block; font-style:normal; color:#1060b0; font-size:.82rem; font-weight:700 }
    .d-prod-head small{ color:#8a97a8; font-size:.78rem }
    .d-prod-card h3{ font-size:1.08rem; color:#101828; margin:.1rem 0 .5rem }
    .d-prod-card p{ font-size:.9rem; color:#5b6b81; line-height:1.65; margin:0 }
    .d-prod-arrow{ position:absolute; top:1.2rem; right:1.2rem; color:#9db1c9; font-size:1.15rem; transition:.2s }
    .d-prod-card:hover .d-prod-arrow{ color:#0c4da2 }
    /* 信任问句 */
    .d-trust{ background:#f7fafd; padding:4.2rem 0 }
    .d-trust-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:1.3rem }
    .d-trust-card{ background:#fff; border:1px solid #e8eef6; border-radius:14px; padding:1.8rem 1.3rem; text-align:center }
    .d-ico{ display:inline-flex; width:52px; height:52px; border-radius:50%; background:#e8f1fb; color:#1060b0; align-items:center; justify-content:center; margin-bottom:.9rem }
    .d-ico svg{ width:24px; height:24px }
    .d-trust-card p{ font-size:.95rem; font-weight:600; color:#101828; line-height:1.55; margin:0 }
    /* 报价表单条 */
    .d-quote{ background:linear-gradient(115deg,rgba(10,47,96,.93) 0%,rgba(13,74,150,.88) 60%,rgba(16,96,176,.84) 100%),url(assets/img/bg-cta.jpg) center/cover no-repeat; background-color:#0d4a96; padding:3.8rem 0 4.2rem }
    .d-quote-sub{ text-align:center; color:rgba(225,238,250,.85); margin:-1.2rem 0 1.9rem; font-size:.98rem }
    .d-quote-form{ display:flex; gap:.9rem; flex-wrap:wrap; justify-content:center }
    .d-quote-form select,.d-quote-form input{ flex:1 1 200px; max-width:250px; height:50px; border:none; border-radius:10px; padding:0 1rem; font-size:.95rem; color:#101828; background:#fff }
    .d-quote-form .btn-cta{ padding:.8rem 2rem; border:none; cursor:pointer; border-radius:99rem }
    /* v4.3 响应式 */
    @media(max-width:1024px){
      .d-flow-row{ flex-wrap:wrap } .d-flow-card{ flex:1 1 40% } .d-flow-arr{ display:none }
      .d-flow-map{ flex:1 1 100% }
      .d-global-row{ flex-direction:column } .d-global-map{ width:100%; flex:none } .d-global-panel{ flex:none; width:100% }
      .d-plat-grid,.d-trust-grid{ grid-template-columns:repeat(2,1fr) } .d-prod3-grid{ grid-template-columns:1fr }
      .d-hero{ min-height:0; display:block } .d-hero-copy{ max-width:100%; padding:2.6rem 0 1.8rem }
      .d-hero-img{ position:relative; display:block; width:100%; height:270px } .d-hero::after,.d-hero::before{ display:none }
    }
    @media(max-width:560px){ .d-plat-grid,.d-trust-grid{ grid-template-columns:1fr } .d-quote-form select,.d-quote-form input{ max-width:100%; flex:1 1 100% } }

    /* ============ v4.3 — about ============ */
    .d-about{ background:#fff; padding:4.4rem 0 }
    .d-about-row{ display:flex; gap:3rem; align-items:center }
    .d-about-copy{ flex:1 1 52% }
    .d-about-copy h2{ font-size:clamp(1.5rem,2.4vw,1.9rem); color:#101828; margin:0 0 1.3rem; font-weight:800 }
    .d-about-copy p{ color:#5b6b81; line-height:1.8; margin:0 0 1.1rem; font-size:.98rem }
    .d-about-img{ flex:1 1 44%; border-radius:16px; box-shadow:0 16px 40px rgba(16,42,86,.14); object-fit:cover; max-height:380px; width:100% }
    .d-stat2{ background:linear-gradient(115deg,#0a2f60,#0d4a96 60%,#1273c4); padding:4.4rem 0 }
    .d-stat2-row{ display:flex; gap:2.6rem; align-items:center }
    .d-stat2-left{ flex:1 1 56% }
    .d-stat2-img{ flex:1 1 40%; border-radius:14px; width:100%; object-fit:cover; max-height:380px }
    .d-stat-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:1.5rem 1.2rem }
    .d-stat2 .d-desc{ color:rgba(225,238,250,.85); line-height:1.75; margin:1.5rem 0; font-size:.95rem }
    /* ============ v4.3 — about 核心区/团队 ============ */
    .d-core4{ background:#0a2547; padding:4.4rem 0 }
    .d-core4-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:1.3rem }
    .d-core-card{ background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.12); border-radius:14px; padding:2rem 1.5rem; text-align:center }
    .d-core-card .d-pi{ color:#fff; margin-bottom:.9rem }
    .d-core-card h3{ color:#fff; font-size:1.02rem; margin:.2rem 0 .5rem }
    .d-core-card p{ color:rgba(225,238,250,.78); font-size:.88rem; line-height:1.6; margin:0 0 1.1rem }
    .d-core-card .d-big{ display:block; font-size:clamp(1.8rem,2.6vw,2.2rem); color:#fff; font-weight:800; margin-bottom:.5rem; line-height:1.1 }
    .d-value3{ background:#fff; padding:4.4rem 0 }
    .d-value3-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:1.5rem }
    .d-value-card{ background:#fff; border:1px solid #e8eef6; border-radius:16px; box-shadow:0 10px 26px rgba(16,42,86,.08); padding:1.8rem }
    .d-value-head{ display:flex; gap:1rem; align-items:center; margin-bottom:1.1rem }
    .d-value-head img{ width:58px; height:58px; border-radius:50%; object-fit:cover; flex:0 0 auto }
    .d-value-head strong{ display:block; color:#1060b0; font-size:1rem }
    .d-value-head small{ color:#8a97a8; font-size:.8rem }
    .d-value-card h3{ font-size:1.08rem; color:#101828; margin:0 0 .5rem }
    .d-value-card p{ font-size:.9rem; color:#5b6b81; line-height:1.65; margin:0 }
    .d-team4{ background:#f7fafd; padding:4.4rem 0 }
    .d-team4-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:1.3rem }
    .d-team-card{ background:#fff; border:1px solid #e8eef6; border-radius:14px; overflow:hidden; text-align:center; padding-bottom:1.3rem }
    .d-team-card img{ width:100%; aspect-ratio:1/.92; object-fit:cover }
    .d-team-card h3{ font-size:1rem; color:#101828; margin:1rem 0 .3rem }
    .d-team-card p{ font-size:.85rem; color:#8a97a8; margin:0; padding:0 1rem }
    .d-redband{ background:linear-gradient(115deg,#d71920,#b31217); padding:2.8rem 0; text-align:center }
    .d-redband h2{ color:#fff; font-size:clamp(1.5rem,2.4vw,2rem); margin:0 0 .6rem; font-weight:800 }
    .d-redband p{ color:rgba(255,235,232,.92); margin:0 }
    .d-ctarow{ background:#0a2547; padding:2.6rem 0 }
    .d-ctarow-row{ display:flex; align-items:center; justify-content:space-between; gap:2rem }
    .d-ctarow h3{ color:#fff; font-size:1.35rem; margin:0; max-width:36rem; line-height:1.45; font-weight:700 }
    /* ============ v4.3 — products ============ */
    .d-tabs{ background:#fff; padding:3.8rem 0 0 }
    .d-tabs-row{ display:flex; flex-wrap:wrap; gap:.7rem; justify-content:center }
    .d-tab{ padding:.62rem 1.3rem; border-radius:10px; border:1.5px solid #dbe5f1; background:#fff; color:#3c4c63; font-size:.9rem; font-weight:600; cursor:pointer; transition:.2s; font-family:inherit }
    .d-tab:hover{ border-color:#0c4da2; color:#0c4da2 }
    .d-tab.on{ background:#d71920; border-color:#d71920; color:#fff }
    .d-grid9{ background:#fff; padding:2.6rem 0 4.4rem }
    .d-grid9-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:1.3rem }
    .d-pcard{ background:#fff; border:1px solid #e8eef6; border-radius:14px; overflow:hidden; display:flex; flex-direction:column; transition:.25s; box-shadow:0 8px 22px rgba(16,42,86,.06) }
    .d-pcard:hover{ transform:translateY(-4px); box-shadow:0 14px 30px rgba(16,42,86,.12) }
    .d-pcard-img{ background:linear-gradient(180deg,#eef5fc,#dcebfa); display:flex; align-items:center; justify-content:center; padding:1.1rem }
    .d-pcard-img img{ max-height:150px; object-fit:contain; mix-blend-mode:multiply }
    .d-pcard-ico{ color:#0c4da2; padding:1.9rem 0; display:flex; justify-content:center; background:linear-gradient(180deg,#eef5fc,#dcebfa) }
    .d-pcard-ico svg{ width:56px; height:56px }
    .d-pcard-body{ padding:1.15rem 1.25rem 1.4rem; display:flex; flex-direction:column; gap:.45rem; flex:1 }
    .d-pcard-body h3{ font-size:1.02rem; color:#101828; margin:0 }
    .d-pcard-body small{ color:#8a97a8; font-size:.78rem }
    .d-pcard-body p{ font-size:.87rem; color:#5b6b81; line-height:1.6; margin:0 }
    .d-pcard .d-btn-red{ align-self:flex-start; margin-top:auto }
    .d-more{ background:#fff; text-align:center; padding:2.4rem 0 0 }
    .d-blue3{ background:#0a2547; padding:4.4rem 0 }
    .d-blue3-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:1.4rem }
    .d-blue3-card{ background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.12); border-radius:14px; padding:2rem 1.6rem; text-align:center }
    .d-blue3-card .d-ico{ background:rgba(45,156,219,.18); color:#2d9cdb }
    .d-blue3-card h3{ color:#fff; font-size:1.08rem; margin:.2rem 0 .55rem }
    .d-blue3-card p{ color:rgba(225,238,250,.8); font-size:.9rem; line-height:1.65; margin:0 }
    /* ============ v4.3 — applications ============ */
    .d-ind6{ background:#fff; padding:4.4rem 0 }
    .d-ind6-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:1.4rem }
    .d-ind6-card{ background:#fff; border:1px solid #e8eef6; border-radius:14px; box-shadow:0 8px 22px rgba(16,42,86,.06); padding:2.1rem 1.6rem; text-align:center }
    .d-ind6-card h3{ font-size:1.06rem; color:#101828; margin:.15rem 0 .55rem }
    .d-ind6-card p{ font-size:.9rem; color:#5b6b81; line-height:1.65; margin:0 }
    .d-sup3{ background:#0a2547; padding:4.4rem 0 }
    .d-sup3-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:1.4rem }
    .d-sup3-card{ background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.12); border-radius:14px; overflow:hidden }
    .d-sup3-card img{ width:100%; aspect-ratio:16/10; object-fit:cover; display:block }
    .d-sup3-body{ padding:1.4rem 1.5rem 1.7rem }
    .d-sup3-body h3{ color:#fff; font-size:1.08rem; margin:0 0 .55rem }
    .d-sup3-body p{ color:rgba(225,238,250,.8); font-size:.9rem; line-height:1.65; margin:0 }
    .d-mini4{ background:#fff; padding:4.4rem 0 }
    .d-mini4-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:1.3rem }
    .d-mini-card{ background:#fff; border:1px solid #e8eef6; border-radius:14px; padding:1.6rem 1.2rem; text-align:center }
    .d-mini-card h3{ font-size:.98rem; color:#101828; margin:.35rem 0 0 }
    /* ============ v4.3 — factory ============ */
    .d-sk4{ background:#fff; padding:4.4rem 0 }
    .d-sk4-row{ display:flex; align-items:stretch; gap:1rem }
    .d-sk-card{ flex:1; background:#fff; border:1px solid #e8eef6; border-radius:14px; box-shadow:0 8px 22px rgba(16,42,86,.07); padding:1.5rem 1.3rem; text-align:center; display:flex; flex-direction:column }
    .d-sk-card img{ height:130px; object-fit:contain; mix-blend-mode:multiply; margin:0 auto 1rem }
    .d-sk-card h3{ font-size:1.05rem; color:#101828; margin:0 0 .5rem }
    .d-sk-card p{ font-size:.88rem; color:#5b6b81; line-height:1.6; margin:0 0 1rem; flex:1 }
    .d-proc{ background:linear-gradient(115deg,rgba(10,47,96,.90) 0%,rgba(13,74,150,.86) 60%,rgba(18,115,196,.82) 100%),url(assets/img/bg-proc.jpg) center/cover no-repeat; background-color:#0d4a96; padding:4.4rem 0 }
    .d-proc-row{ display:flex; flex-wrap:wrap; gap:.7rem; justify-content:center; margin-bottom:1.2rem; align-items:center }
    .d-proc-row:last-child{ margin-bottom:0 }
    .d-step{ padding:.6rem 1.25rem; border:1.5px solid rgba(255,255,255,.65); border-radius:99rem; color:#fff; font-size:.9rem; font-weight:600 }
    .d-step-arr{ color:rgba(255,255,255,.75); font-weight:800 }
    .d-res3{ background:#fff; padding:4.4rem 0 }
    .d-res3b{ background:#f2f7fd; padding:4.4rem 0 }
    .d-res-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:1.4rem }
    .d-res-card{ background:#fff; border:1px solid #e8eef6; border-radius:14px; box-shadow:0 8px 22px rgba(16,42,86,.07); padding:1.8rem 1.5rem; text-align:center }
    .d-res3 .d-res-card{ background:#fff } .d-res3b .d-res-card{ background:#fff }
    .d-res-card img{ height:120px; object-fit:contain; mix-blend-mode:multiply; margin:0 auto 1rem }
    .d-res-card h3{ font-size:1.08rem; color:#101828; margin:.15rem 0 .5rem }
    .d-res-card p{ font-size:.9rem; color:#5b6b81; line-height:1.65; margin:0 0 .9rem }
    .d-res-card .d-btn-red{ margin-top:.2rem }
    .d-res-big{ font-size:2.2rem; color:#e8432a; font-weight:800; margin:.35rem 0; line-height:1.15 }
    /* ============ v4.3 — contact ============ */
    .d-cinfo4{ background:#fff; padding:4.4rem 0 }
    .d-cinfo-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:1.3rem }
    .d-cinfo-card{ text-align:center; border:1px solid #e8eef6; border-radius:14px; padding:1.9rem 1.3rem; box-shadow:0 8px 22px rgba(16,42,86,.05) }
    .d-cinfo-card h3{ font-size:1rem; color:#101828; margin:.15rem 0 .55rem }
    .d-cinfo-card strong{ display:block; font-size:1.02rem; color:#101828; margin-bottom:.4rem }
    .d-cinfo-card strong a{ color:inherit }
    .d-cinfo-card p{ font-size:.85rem; color:#8a97a8; margin:0; line-height:1.55 }
    .d-ico.red{ background:#fdeaec; color:#d71920 }
    .d-cinfo-cta{ text-align:center; margin-top:2rem }
    .d-cinfo-note{ color:#d71920; font-size:.85rem; margin-top:.8rem; font-weight:600 }
    .d-cserve{ background:linear-gradient(112deg,rgba(8,30,58,.90) 0%,rgba(11,50,96,.86) 52%,rgba(13,70,140,.80) 100%),url(assets/img/bg-serve.jpg) center/cover no-repeat; background-color:#0a2547; padding:4.4rem 0 }
    .d-cserve-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:1.3rem }
    .d-cserve-card{ background:#fff; border-radius:14px; padding:1.8rem 1.3rem; text-align:center }
    .d-cserve-card h3{ font-size:1.02rem; color:#101828; margin:.15rem 0 .5rem }
    .d-cserve-card p{ font-size:.88rem; color:#5b6b81; line-height:1.6; margin:0 0 1rem }
    .d-cserve-mini{ display:grid; grid-template-columns:repeat(4,1fr); gap:1.2rem; margin-top:1.2rem }
    .d-cserve-mini .m{ background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.14); border-radius:12px; padding:1.1rem .8rem; display:flex; gap:.6rem; align-items:center; justify-content:center; color:#fff; font-size:.88rem; font-weight:600 }
    .d-cserve-mini svg{ width:20px; height:20px; color:#2d9cdb; flex:0 0 auto }
    .d-cserve-cta{ text-align:center; margin-top:2rem }
    .d-cserve-note{ color:rgba(225,238,250,.85); font-size:.9rem; margin-top:.7rem }
    .d-quote2{ background:#fff; padding:4.4rem 0 }
    .d-quote2-row{ display:flex; gap:3rem; align-items:flex-start }
    .d-quote2-copy{ flex:0 0 33% }
    .d-quote2-copy h2{ font-size:clamp(1.5rem,2.4vw,1.9rem); color:#101828; margin:0 0 1.2rem; font-weight:800 }
    .d-quote2-copy p{ color:#5b6b81; line-height:1.75; margin:0 0 1rem; font-size:.96rem }
    .d-quote2-tip{ color:#8a97a8 !important; font-size:.88rem !important }
    .d-quote2-form{ flex:1 }
    .q-grid{ display:grid; grid-template-columns:1fr 1fr; gap:1rem }
    .field label{ font-size:.85rem; font-weight:600; color:#3c4c63; display:block; margin-bottom:.35rem }
    .field input,.field select,.field textarea{ width:100%; border:1.5px solid #dbe5f1; border-radius:10px; padding:.7rem .9rem; font-size:.95rem; font-family:inherit; background:#fbfdff; color:#101828 }
    .field textarea{ min-height:110px; resize:vertical }
    .field-full{ grid-column:1/-1 }
    .d-quote2 .btn-cta{ border:none; cursor:pointer; border-radius:99rem }
    .d-guide{ background:#f7fafd; padding:4.4rem 0 }
    .d-guide-row{ display:flex; gap:2.6rem; align-items:center }
    .d-guide-img{ flex:0 0 42%; border-radius:16px; mix-blend-mode:multiply; max-width:420px }
    .d-guide-cards{ flex:1; display:grid; gap:1.2rem }
    .d-guide-card{ background:#fff; border:1px solid #e8eef6; border-radius:14px; padding:1.5rem; display:flex; gap:1rem; align-items:flex-start }
    .d-guide-card .d-ico{ flex:0 0 auto; width:48px; height:48px }
    .d-guide-card h3{ margin:0 0 .4rem; font-size:1.05rem; color:#101828 }
    .d-guide-card p{ margin:0; font-size:.9rem; color:#5b6b81; line-height:1.65 }
    .d-redcta{ background:linear-gradient(115deg,#d71920,#a50f14); padding:3.2rem 0; text-align:center }
    .d-redcta h2{ color:#fff; font-size:clamp(1.5rem,2.4vw,2rem); margin:0 0 .7rem; font-weight:800 }
    .d-redcta p{ color:rgba(255,235,232,.92); margin:0 }
    .btn-white{ display:inline-block; margin-top:1.5rem; padding:.85rem 2.2rem; border-radius:99rem; background:#fff; color:#c81e1e; font-weight:700 }
    .btn-white:hover{ transform:translateY(-2px); box-shadow:0 10px 24px rgba(0,0,0,.18) }
    /* ============ v4.3 内页响应式 ============ */
    @media(max-width:1024px){
      .d-about-row,.d-stat2-row,.d-guide-row{ flex-direction:column } .d-about-copy,.d-stat2-left{ width:100% }
      .d-core4-grid,.d-team4-grid,.d-cinfo-grid,.d-cserve-grid,.d-mini4-grid{ grid-template-columns:repeat(2,1fr) }
      .d-value3-grid,.d-blue3-grid,.d-ind6-grid,.d-sup3-grid,.d-res-grid{ grid-template-columns:repeat(2,1fr) }
      .d-grid9-grid{ grid-template-columns:repeat(2,1fr) }
      .d-sk4-row{ flex-wrap:wrap } .d-sk-card{ flex:1 1 40% } .d-sk4-row .d-flow-arr{ display:none }
      .d-quote2-row{ flex-direction:column } .d-quote2-copy{ flex:none; width:100% }
      .d-ctarow-row{ flex-direction:column; text-align:center }
    }
    @media(max-width:560px){
      .d-core4-grid,.d-team4-grid,.d-value3-grid,.d-blue3-grid,.d-ind6-grid,.d-sup3-grid,.d-mini4-grid,.d-res-grid,.d-cinfo-grid,.d-cserve-grid,.d-cserve-mini,.d-grid9-grid,.d-stat-grid{ grid-template-columns:1fr }
      .d-sk-card{ flex:1 1 100% }
      .q-grid{ grid-template-columns:1fr }
    }

    /* ============ v4.3.2 导航修复 ============ */
    .site-header .container{ width:min(100% - 2rem, 84rem); gap:1rem }
    .site-nav ul{ gap:0 }
    .site-nav a, .site-nav .drop-toggle{ white-space:nowrap; padding:.55rem .6rem }
    .site-nav .drop-toggle{ padding-right:.4rem }
    .nav-search input{ width:clamp(9.5rem,12vw,11.5rem) }
    @media(max-width:1360px){
      .header-phone span{ display:none }
      .header-phone{ padding:.5rem .75rem }
    }
    @media(max-width:1240px){
      .nav-search{ display:none }
    }

    /* ============ v4.4 首页新排版 ============ */
    .d-cat{ background:#fff; padding:4.2rem 0 4.4rem }
    .d-cat-row{ display:flex; align-items:stretch; gap:.9rem }
    .d-cat-row .d-flow-card{ flex:1 1 0; padding:1.6rem 1.1rem }
    .d-cat-row .d-flow-card .d-flow-ico{ width:56px; height:56px; margin-bottom:.8rem }
    .d-cat-row .d-flow-card .d-flow-ico svg{ width:26px; height:26px }
    .d-cat-row .d-flow-card h3{ font-size:1rem; margin:.15rem 0 .45rem }
    .d-cat-row .d-flow-card p{ font-size:.84rem }
    .d-cat-row .d-flow-arr{ font-size:1.2rem }
    .d-cat-row .d-flow-map{ flex:0 0 23% }
    .d-cat-row .d-flow-map img{ max-height:240px }
    .d-cat-row .d-flow-map p{ font-size:.78rem }
    .d-prod4{ background:#fff; padding:4.2rem 0 }
    .d-prod4-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:1.3rem }
    .d-prod4 .d-pcard-img img{ max-height:125px }
    .d-chip{ display:inline-block; padding:.25rem .75rem; border-radius:99rem; background:#e8f1fb; color:#0c4da2; font-size:.74rem; font-weight:700; align-self:flex-start }
    .d-pcard-body small.en{ color:#8a97a8; font-size:.76rem }
    .d-strength4{ background:linear-gradient(112deg,rgba(8,30,58,.90) 0%,rgba(11,50,96,.86) 52%,rgba(13,70,140,.80) 100%),url(assets/img/bg-strength.jpg) center/cover no-repeat; background-color:#0a2547; padding:4.4rem 0 }
    .d-strength-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:1.3rem }
    .d-strength-card{ background:#fff; border-radius:14px; padding:1.9rem 1.4rem; text-align:center }
    .d-strength-card h3{ font-size:1.02rem; color:#101828; margin:.15rem 0 .5rem }
    .d-strength-card p{ font-size:.88rem; color:#5b6b81; line-height:1.6; margin:0 }
    .d-review{ background:#fff; padding:4.2rem 0 }
    .d-review-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:1.5rem }
    .d-review-card{ background:#fff; border:1px solid #e8eef6; border-radius:16px; box-shadow:0 10px 26px rgba(16,42,86,.08); padding:1.8rem }
    .d-review-card .d-value-head{ margin-bottom:.4rem }
    .d-quote-txt{ font-size:.93rem; color:#3c4c63; line-height:1.7; margin:.7rem 0 0 }
    .d-faq4{ background:#f7fafd; padding:4.2rem 0 }
    .d-faq4-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:1.3rem }
    .d-faq-card{ background:#fff; border:1px solid #e8eef6; border-radius:14px; padding:1.6rem 1.3rem }
    .d-faq-card h3{ font-size:.98rem; color:#101828; margin:0 0 .55rem; line-height:1.45 }
    .d-faq-card p{ font-size:.85rem; color:#5b6b81; line-height:1.6; margin:0 }
    .d-cta-teal{ background:linear-gradient(115deg,rgba(10,47,96,.93) 0%,rgba(13,74,150,.88) 60%,rgba(16,96,176,.84) 100%),url(assets/img/bg-cta.jpg) center/cover no-repeat; background-color:#0d4a96; padding:3.8rem 0 4.2rem }
    /* v4.4 响应式 */
    @media(max-width:1024px){
      .d-cat-row{ flex-wrap:wrap } .d-cat-row .d-flow-card{ flex:1 1 40% } .d-cat-row .d-flow-arr{ display:none }
      .d-cat-row .d-flow-map{ flex:1 1 100% }
      .d-prod4-grid,.d-strength-grid,.d-faq4-grid{ grid-template-columns:repeat(2,1fr) }
      .d-review-grid{ grid-template-columns:1fr }
    }
    @media(max-width:560px){ .d-prod4-grid,.d-strength-grid,.d-faq4-grid{ grid-template-columns:1fr } }

    /* ============ v4.5.1 factory 整齐性 ============ */
    .d-res-card{ display:flex; flex-direction:column; align-items:center }
    .d-res-media{ height:136px; display:flex; align-items:center; justify-content:center; margin-bottom:1rem }
    .d-res-media img{ height:120px; margin:0 }
    .d-res-badge{ display:inline-flex; width:82px; height:82px; border-radius:50%; background:#fff; border:2px solid #9cc7f0; color:#0c4da2; align-items:center; justify-content:center }
    .d-res-badge svg{ width:38px; height:38px }
    .d-res-card h3,.d-res-big{ min-height:2.6rem; display:flex; align-items:center; justify-content:center; text-align:center }
    .d-res-big{ margin:0 }
    .d-res-card p{ flex:1; margin-bottom:.9rem }

    /* ============ v4.6 quality 设计图排版 ============ */
    .d-std{ background:#fff; padding:4.5rem 0 }
    .d-std .wrap{ display:grid; grid-template-columns:1.05fr 1fr; gap:3.5rem; align-items:center }
    .d-std-item{ display:flex; align-items:center; gap:.85rem; padding:1.05rem .4rem; border-bottom:1px solid #e3ecf7; font-weight:600; color:#12325c; font-size:.98rem }
    .d-std-item:first-child{ border-top:1px solid #e3ecf7 }
    .d-std-item i{ width:10px; height:10px; border-radius:50%; background:#0c4da2; flex:none }
    .d-linecheck{ background:linear-gradient(rgba(219,232,251,.87),rgba(219,232,251,.87)),url(assets/img/bg-linecheck.jpg) center/cover no-repeat; background-color:#dbe8fb; padding:4.5rem 0 }
    .d-linecheck .d-sk-head2{ text-align:center; margin-bottom:2.4rem }
    .d-lc-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:1.2rem }
    .d-lc-card{ position:relative; background:#fff; border-radius:14px; padding:1.6rem 1.4rem 1.2rem; box-shadow:0 10px 26px rgba(13,52,105,.08); display:flex; flex-direction:column }
    .d-lc-num{ color:#d71920; font-size:2.2rem; font-weight:800; line-height:1; margin-bottom:.7rem }
    .d-lc-badge{ position:absolute; top:0; right:1.1rem; width:32px; height:38px; background:#d71920; color:#fff; border-radius:0 0 8px 8px; display:flex; align-items:flex-end; justify-content:center; padding-bottom:4px; font-weight:700; font-size:.8rem }
    .d-lc-card h3{ font-size:1.02rem; color:#0a2547; margin-bottom:.5rem }
    .d-lc-card p{ font-size:.85rem; color:#54677f; flex:1 }
    .d-lc-ico{ margin-top:1rem; height:60px; display:flex; align-items:flex-end; justify-content:center }
    .d-lc-ico svg{ width:72px; height:54px; stroke:#2d6cb5; fill:none; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round }
    .d-lab{ background:#fff; padding:4.5rem 0 }
    .d-lab .d-sk-head2{ text-align:center; margin-bottom:2.6rem }
    .d-lab .d-lab-grid{ display:grid; grid-template-columns:1fr 1.1fr; gap:3.5rem; align-items:center }
    .d-lab-block{ padding:1.15rem 0; border-bottom:1px solid #e3ecf7 }
    .d-lab-block:first-of-type{ padding-top:0 }
    .d-lab-block h3{ font-size:1.12rem; color:#0a2547; margin-bottom:.4rem }
    .d-lab-block p{ font-size:.92rem; color:#54677f }
    .d-cap3{ background:#dbe8fb; padding:2.1rem 0 }
    .d-cap3 .wrap{ display:grid; grid-template-columns:repeat(3,1fr); gap:1.5rem }
    .d-cap3-item{ display:flex; align-items:center; gap:.9rem; justify-content:center }
    .d-cap3-ico{ width:52px; height:52px; border-radius:50%; background:#fff; border:2px solid #9cc7f0; display:flex; align-items:center; justify-content:center; flex:none }
    .d-cap3-ico svg{ width:26px; height:26px; stroke:#0c4da2; fill:none; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round }
    .d-cap3-item strong{ display:block; color:#0a2547; font-size:.98rem }
    .d-cap3-item span{ display:block; font-size:.8rem; color:#5b7292 }
    .d-honor{ background:linear-gradient(135deg,rgba(10,37,71,.90),rgba(12,77,162,.86)),url(assets/img/bg-honor.jpg) center/cover no-repeat; background-color:#0a2547; padding:4.5rem 0; color:#fff }
    .d-honor .wrap{ display:grid; grid-template-columns:1.15fr 1fr; gap:3rem; align-items:center }
    .d-honor p{ color:#cfe0f5 }
    .d-cert{ background:#fff; padding:4.5rem 0 }
    .d-cert .d-sk-head2{ text-align:center; margin-bottom:0 }
    .d-cert-badges{ display:flex; flex-wrap:wrap; justify-content:center; gap:.9rem; margin:2rem 0 2.6rem }
    .d-cert-badge{ background:#fff; border:1px solid #d8e4f4; border-radius:10px; padding:.75rem 1.25rem; font-weight:800; color:#0c4da2; font-size:.95rem; box-shadow:0 6px 16px rgba(13,52,105,.06) }
    .d-cert-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:1.2rem }
    .d-cert-num{ background:#f6f9fe; border:1px solid #e3ecf7; border-radius:14px; text-align:center; padding:2rem 1rem }
    .d-cert-num strong{ display:block; color:#d71920; font-size:2.4rem; font-weight:800; line-height:1.1 }
    .d-cert-num span{ display:block; margin-top:.5rem; font-size:.85rem; color:#54677f }
    @media(max-width:920px){
      .d-std .wrap,.d-lab .d-lab-grid,.d-honor .wrap{ grid-template-columns:1fr }
      .d-lc-grid{ grid-template-columns:repeat(2,1fr) }
      .d-cert-grid{ grid-template-columns:repeat(2,1fr) }
      .d-cap3 .wrap{ grid-template-columns:1fr }
    }
    .btn-blue{ display:inline-flex; align-items:center; justify-content:center; background:#0c4da2; color:#fff; padding:.72rem 1.6rem; border-radius:99rem; font-weight:700; font-size:.95rem; line-height:1.2; white-space:nowrap; transition:.2s }
    .btn-blue:hover{ background:#0a3f8a; color:#fff }
    .d-sk-head2 h2{ margin-bottom:.4rem }
    .d-std .d-std-wrap{ display:grid; grid-template-columns:1.05fr 1fr; gap:3.5rem; align-items:center }
    .d-cap3 .d-cap3-row{ display:grid; grid-template-columns:repeat(3,1fr); gap:1.5rem }
    .d-honor .d-honor-grid{ display:grid; grid-template-columns:1.15fr 1fr; gap:3rem; align-items:center }
    .d-lab-img,.d-honor-img{ width:100%; border-radius:14px; box-shadow:0 18px 40px rgba(10,37,71,.18) }

    /* ============ v5.0 WordPress 模板补充 ============ */
    .d-hero-sm{ padding:5.5rem 0 }
    .d-hero-sm .d-hero-copy h1{ font-size:2.1rem }
    .d-group{ margin:2.2rem 0 }
    .d-group .d-h2{ margin-bottom:1.2rem }
    .d-grid9-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:1.4rem }
    .d-pcard{ background:#fff; border:1px solid #e3ecf7; border-radius:14px; overflow:hidden; display:flex; flex-direction:column; transition:.2s }
    .d-pcard:hover{ transform:translateY(-3px); box-shadow:0 14px 30px rgba(13,52,105,.12) }
    .d-pcard-img{ height:190px; overflow:hidden; background:#f2f7fd }
    .d-pcard-img img{ width:100%; height:100%; object-fit:cover }
    .d-pcard-body{ padding:1.1rem 1.2rem 1.3rem }
    .d-pcard-body h3{ font-size:1.02rem; color:#0a2547; margin-bottom:.45rem }
    .d-pcard-body h3 a{ color:#0a2547 }
    .d-pcard-body h3 a:hover{ color:#0c4da2 }
    .d-pcard-body p{ font-size:.85rem; color:#54677f; margin:0 }
    .d-single-img img{ width:100%; border-radius:14px; box-shadow:0 18px 40px rgba(10,37,71,.15) }
    .d-single-img{ margin-bottom:1.5rem }
    .d-article{ max-width:820px; padding:3.5rem 0 4.5rem }
    .d-article h2{ color:#0a2547; margin:1.6rem 0 .8rem }
    .d-article p{ line-height:1.85; color:#33475f; margin-bottom:1rem }
    .d-article ul{ padding-left:1.3rem; margin-bottom:1rem }
    .d-article li{ line-height:1.8; color:#33475f }
    .d-article-thumb{ margin-bottom:2rem }
    .d-article-thumb img{ width:100%; border-radius:14px }
    .d-news-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:1.4rem }
    .d-news-card{ background:#fff; border:1px solid #e3ecf7; border-radius:14px; overflow:hidden; transition:.2s }
    .d-news-card:hover{ transform:translateY(-3px); box-shadow:0 14px 30px rgba(13,52,105,.12) }
    .d-news-thumb{ display:block; height:180px; background:#f2f7fd; overflow:hidden }
    .d-news-thumb img{ width:100%; height:100%; object-fit:cover }
    .d-news-body{ padding:1.1rem 1.2rem 1.3rem }
    .d-news-date{ display:inline-block; font-size:.78rem; font-weight:700; color:#d71920; margin-bottom:.4rem }
    .d-news-body h3{ font-size:1rem; line-height:1.45; margin-bottom:.4rem }
    .d-news-body h3 a{ color:#0a2547 }
    .d-news-body h3 a:hover{ color:#0c4da2 }
    .d-news-body p{ font-size:.85rem; color:#54677f; margin:0 }
    .d-news-list{ padding:4rem 0 }
    .d-news-pager{ margin-top:2.2rem; text-align:center }
    .d-news-pager .page-numbers{ display:inline-block; padding:.4rem .85rem; margin:0 .2rem; border:1px solid #d8e4f4; border-radius:8px; color:#0c4da2; font-weight:600 }
    .d-news-pager .page-numbers.current{ background:#0c4da2; color:#fff; border-color:#0c4da2 }
    .firsta-sent-ok{ position:fixed; left:50%; transform:translateX(-50%); bottom:2rem; background:#0a2547; color:#fff; padding:.9rem 1.6rem; border-radius:12px; font-weight:600; z-index:9999; box-shadow:0 14px 34px rgba(10,37,71,.35) }
    @media(max-width:920px){
      .d-grid9-grid{ grid-template-columns:repeat(2,1fr) }
      .d-news-grid{ grid-template-columns:1fr }
    }

/* ===== v5.1 single product spec layout ===== */
.d-sg-head{background:linear-gradient(135deg,#f4f7fb 0%,#e8eef6 100%);padding:60px 0 56px}
.d-sg-grid{display:grid;grid-template-columns:480px 1fr;gap:48px;align-items:center}
.d-sg-media{background:#fff;border:1px solid #e2e8f0;border-radius:18px;padding:26px;box-shadow:0 18px 40px rgba(11,42,74,.10)}
.d-sg-img{width:100%;height:auto;border-radius:10px;display:block}
.d-sg-bc{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:13.5px;color:#64748b;margin-bottom:14px}
.d-sg-bc a{color:#64748b;text-decoration:none}
.d-sg-bc a:hover{color:#d62828}
.d-sg-bc span{color:#cbd5e1}
.d-sg-title{font-size:38px;line-height:1.15;color:#0b2a4a;margin:0 0 14px;font-weight:800}
.d-sg-excerpt{font-size:16.5px;line-height:1.65;color:#475569;margin:0 0 18px}
.d-sg-points{list-style:none;margin:0 0 24px;padding:0}
.d-sg-points li{display:flex;gap:10px;align-items:flex-start;font-size:15px;color:#334155;padding:7px 0;border-bottom:1px dashed #e2e8f0}
.d-sg-points li:last-child{border-bottom:0}
.d-sg-ico{color:#d62828;font-weight:800}
.d-sg-btns{display:flex;flex-wrap:wrap;gap:14px}
.d-sg-body{padding:56px 0 10px;background:#fff}
.d-sg-article{max-width:960px}
.d-sg-article h3{font-size:23px;color:#0b2a4a;margin:38px 0 16px;padding-left:14px;border-left:4px solid #d62828;line-height:1.3}
.d-sg-article h3:first-child{margin-top:0}
.d-sg-article ul{margin:0 0 8px;padding:0;list-style:none}
.d-sg-article ul li{position:relative;padding:8px 0 8px 26px;font-size:15.5px;line-height:1.7;color:#334155;border-bottom:1px solid #f1f5f9}
.d-sg-article ul li:before{content:"";position:absolute;left:6px;top:17px;width:7px;height:7px;border-radius:50%;background:#d62828}
table.d-spec{width:100%;border-collapse:collapse;margin:18px 0 10px;border:1px solid #e2e8f0;border-radius:10px;overflow:hidden}
.d-spec th{background:#0b2a4a;color:#fff;text-align:left;padding:12px 16px;font-size:14.5px;letter-spacing:.02em}
.d-spec td{padding:11px 16px;font-size:15px;color:#334155;border-bottom:1px solid #e8edf3}
.d-spec tr:nth-child(even) td{background:#f8fafc}
.d-spec tr:last-child td{border-bottom:0}
.d-spec td+td{color:#0b2a4a;font-weight:600}
.d-spec td+td+td{color:#64748b;font-weight:400}
.d-sg-note{background:#f1f5f9;border-radius:12px;padding:18px 22px;font-size:14.5px;line-height:1.75;color:#475569;margin:18px 0 6px}
.d-sg-cta{background:linear-gradient(120deg,#0b2a4a,#123a63);padding:46px 0}
.d-sg-cta-in{display:flex;align-items:center;justify-content:space-between;gap:28px;flex-wrap:wrap}
.d-sg-cta .d-h2{margin:0 0 8px}
.d-sg-cta p{color:#c7d4e4;margin:0;font-size:15px;max-width:620px}
.d-sg-rel{background:#f1f5f9;padding:56px 0}
.d-sg-more{margin:30px 0 0;text-align:center}
@media(max-width:920px){.d-sg-grid{grid-template-columns:1fr;gap:28px}.d-sg-title{font-size:30px}.d-sg-media{padding:18px}}

/* ===== v5.2 product detail (catalog layout) ===== */
.spb-crumb{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:13.5px;color:#64748b;padding:18px 0 0}
.spb-crumb a{color:#64748b;text-decoration:none}
.spb-crumb a:hover{color:#d62828}
.spb-crumb .sep{color:#cbd5e1}
.spb-crumb .current{color:#0b2a4a;font-weight:600}
.spb-hero-w{background:linear-gradient(135deg,#f6f8fb 0%,#edf2f8 100%);margin-top:18px;border-radius:20px;padding:52px 0}
.spb-hero{display:grid;grid-template-columns:420px 1fr;gap:56px;align-items:start}
.spb-media-box{width:100%;max-width:420px;height:400px;margin:0 auto;border-radius:14px;overflow:hidden;background:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 14px 36px rgba(11,42,74,.10)}
.spb-img{width:100%;height:100%;object-fit:cover;display:block}
.spb-hotline{display:flex;align-items:center;justify-content:center;gap:10px;max-width:420px;margin:16px auto 0;padding:13px 20px;background:#d62828;color:#fff;border-radius:8px;text-decoration:none;font-weight:600;font-size:15px;transition:background .15s}
.spb-hotline:hover{background:#b31f1f}
.spb-badge{display:inline-block;padding:5px 12px;background:#fbeaec;color:#d62828;font-size:12px;font-weight:700;border-radius:5px;margin-bottom:14px;text-transform:uppercase;letter-spacing:.6px}
.spb-h1{font-size:36px;font-weight:800;color:#0b2a4a;line-height:1.2;margin:0 0 10px}
.spb-meta{color:#64748b;margin:0 0 20px;font-size:15px}
.spb-meta-label{font-weight:600;color:#334155}
.spb-desc{color:#3f4c5e;line-height:1.75;margin:0 0 26px;font-size:15.5px}
.spb-specs{display:grid;grid-template-columns:repeat(2,1fr);gap:14px 22px;margin:0 0 30px;padding:22px;background:#fff;border-radius:12px;box-shadow:inset 0 0 0 1px #e5eaf1}
.spb-spec-k{font-size:13px;color:#64748b;display:block;margin-bottom:4px}
.spb-spec-v{font-weight:600;color:#0b2a4a;font-size:15px}
.spb-cta{display:flex;gap:12px;flex-wrap:wrap}
.spb-btn-red{display:inline-flex;align-items:center;gap:8px;padding:13px 28px;background:#d62828;color:#fff;border-radius:8px;text-decoration:none;font-weight:600;font-size:15px;transition:background .15s}
.spb-btn-red:hover{background:#b31f1f}
.spb-btn-ghost{display:inline-flex;align-items:center;gap:8px;padding:13px 24px;background:#fff;color:#0b2a4a;border:1px solid #c9d3df;border-radius:8px;text-decoration:none;font-weight:600;font-size:15px;transition:all .15s}
.spb-btn-ghost:hover{border-color:#d62828;color:#d62828}
.spb-body{padding:52px 0 6px;background:#fff}
.spb-article{max-width:960px}
.spb-section{padding:56px 0;background:#fff}
.spb-section-alt{background:#f4f7fb}
.spb-h2{font-size:26px;font-weight:800;color:#0b2a4a;margin:0 0 10px}
.spb-sub{color:#64748b;margin:0 0 24px;font-size:14.5px}
.spb-docs{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.spb-doc{padding:20px 18px;background:#fff;border:1px solid #e5eaf1;border-radius:12px;text-decoration:none;transition:all .15s;display:block}
.spb-doc:hover{border-color:#d62828;transform:translateY(-3px);box-shadow:0 10px 24px rgba(11,42,74,.08)}
.spb-doc-ico{display:block;font-size:26px;margin-bottom:10px}
.spb-doc strong{display:block;color:#0b2a4a;font-size:14.5px;margin-bottom:4px}
.spb-doc small{color:#64748b;font-size:12.5px;line-height:1.5}
.spb-faq{display:flex;flex-direction:column;gap:10px;max-width:920px}
.spb-faq details{padding:16px 22px;border:1px solid #e5eaf1;border-radius:12px;background:#fff}
.spb-faq details[open]{border-color:#d62828}
.spb-faq summary{cursor:pointer;font-weight:600;color:#0b2a4a;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:15.5px}
.spb-faq summary::-webkit-details-marker{display:none}
.spb-plus{color:#d62828;font-size:20px;font-weight:700;line-height:1}
.spb-faq details[open] .spb-plus{transform:rotate(45deg)}
.spb-faq p{margin:12px 0 0;color:#3f4c5e;line-height:1.7;font-size:15px}
.spb-rel-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:22px}
.spb-rel-card{background:#fff;border:1px solid #e5eaf1;border-radius:14px;overflow:hidden;text-decoration:none;display:block;transition:all .15s}
.spb-rel-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(11,42,74,.10)}
.spb-rel-thumb{display:block;height:170px;overflow:hidden;background:#f4f7fb}
.spb-rel-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.spb-rel-card small{display:block;color:#64748b;font-size:12px;padding:14px 16px 2px}
.spb-rel-card strong{display:block;color:#0b2a4a;font-size:15px;padding:0 16px 16px;line-height:1.45}
.spb-more{margin:30px 0 0;text-align:center}

/* ===== v5.2 news center & single ===== */
.nws-head{padding:34px 0 6px}
.nws-sub{color:#5b6b7f;max-width:760px;margin:0;font-size:15.5px;line-height:1.75}
.nws-list{padding:38px 0 64px}
.nws-feature{display:grid;grid-template-columns:1.15fr 1fr;gap:0;background:#fff;border:1px solid #e5eaf1;border-radius:18px;overflow:hidden;margin-bottom:34px;transition:all .15s}
.nws-feature:hover{box-shadow:0 16px 40px rgba(11,42,74,.10)}
.nws-feature-thumb{display:block;min-height:320px;overflow:hidden}
.nws-feature-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.nws-feature-body{padding:38px 40px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:14px}
.nws-feature-title{margin:0;font-size:26px;line-height:1.35}
.nws-feature-title a{color:#0b2a4a;text-decoration:none}
.nws-feature-title a:hover{color:#d62828}
.nws-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.nws-card{background:#fff;border:1px solid #e5eaf1;border-radius:16px;overflow:hidden;display:flex;flex-direction:column;transition:all .15s}
.nws-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(11,42,74,.10)}
.nws-thumb{display:block;height:190px;overflow:hidden;background:#f4f7fb}
.nws-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.nws-card-body{padding:20px 22px 22px;display:flex;flex-direction:column;align-items:flex-start;gap:10px;flex:1}
.nws-date-badge{display:inline-block;padding:3px 10px;background:#eef2f7;color:#0b2a4a;font-size:12.5px;font-weight:600;border-radius:5px}
.nws-card-title{margin:0;font-size:17.5px;line-height:1.45}
.nws-card-title a{color:#0b2a4a;text-decoration:none}
.nws-card-title a:hover{color:#d62828}
.nws-excerpt{margin:0;color:#5b6b7f;font-size:14px;line-height:1.7;flex:1}
.nws-more-link{color:#d62828;font-weight:600;font-size:14px;text-decoration:none}
.nws-more-link:hover{text-decoration:underline}
.nws-pager{margin-top:36px;display:flex;justify-content:center;gap:8px}
.nws-pager .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:38px;padding:0 10px;border:1px solid #e5eaf1;border-radius:8px;color:#0b2a4a;font-weight:600;text-decoration:none;background:#fff}
.nws-pager .page-numbers.current{background:#0b2a4a;color:#fff;border-color:#0b2a4a}
.nws-empty{color:#64748b;padding:40px 0;text-align:center}
.nws-single-head{padding-bottom:4px}
.nws-meta-row{display:flex;align-items:center;gap:12px;color:#64748b;font-size:14px;margin:2px 0 0}
.nws-meta-sep{color:#cbd5e1}
.nws-single{padding:26px 0 64px}
.nws-single-wrap{max-width:900px}
.nws-single-thumb{border-radius:18px;overflow:hidden;margin-bottom:30px;box-shadow:0 14px 36px rgba(11,42,74,.10)}
.nws-single-thumb img{width:100%;height:auto;display:block}
.nws-article{background:#fff}
.nws-article p{font-size:16px;line-height:1.85;color:#3f4c5e}
.nws-single-share{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px;padding-top:26px;border-top:1px solid #e5eaf1}
@media(max-width:920px){
.spb-hero{grid-template-columns:1fr;gap:28px}
.spb-h1{font-size:29px}
.spb-docs{grid-template-columns:repeat(2,1fr)}
.spb-rel-grid{grid-template-columns:repeat(2,1fr)}
.nws-grid{grid-template-columns:1fr 1fr}
.nws-feature{grid-template-columns:1fr}
.nws-feature-thumb{min-height:220px}
}
@media(max-width:560px){.nws-grid{grid-template-columns:1fr}.spb-specs{grid-template-columns:1fr}.spb-docs{grid-template-columns:1fr}}

/* ===== v5.3 CTA band (news pages) ===== */
.spb-band{background:linear-gradient(120deg,#0b2a4a,#123a63);padding:46px 0}
.spb-band-in{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.spb-band .d-h2{color:#fff;margin:0 0 10px}
.spb-band p{color:#c7d5e8;margin:0;max-width:640px}
.spb-band .btn-cta{white-space:nowrap}
@media(max-width:920px){.spb-band-in{flex-direction:column;align-items:flex-start}}
.d-honor .d-h2{color:#fff}

/* ===== v6 News center — corporate redesign ===== */
.nws2-hero{background:linear-gradient(120deg,#0b2a4a 0%,#123a63 55%,#1a4a7d 100%);padding:30px 0 52px;color:#fff}
.nws2-crumb{display:flex;gap:9px;align-items:center;flex-wrap:wrap;font-size:13px;margin-bottom:30px}
.nws2-crumb a,.nws2-crumb .current{color:#a9bfdc;text-decoration:none;font-weight:500}
.nws2-crumb a:hover{color:#fff}
.nws2-crumb .sep{color:#4d6a92}
.nws2-crumb .current{color:#eef4fb;max-width:640px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nws2-badge{display:inline-block;background:#d63031;color:#fff;font-size:12px;font-weight:700;letter-spacing:1.6px;padding:6px 12px;border-radius:4px;margin-bottom:16px}
.nws2-h1{color:#fff;font-size:38px;line-height:1.2;margin:0 0 12px;font-weight:800}
.nws2-h1-article{max-width:880px}
.nws2-sub{color:#c3d3e8;font-size:16px;line-height:1.7;max-width:760px;margin:0}
.nws2-meta-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;color:#a9bfdc;font-size:14px;margin:4px 0 0}
.nws2-dot{color:#4d6a92}
.nws2-list{padding:52px 0 72px}
.nws2-feature{display:grid;grid-template-columns:1.12fr 1fr;background:#fff;border:1px solid #e3eaf3;border-radius:14px;overflow:hidden;box-shadow:0 8px 28px rgba(11,42,74,.07)}
.nws2-feature-media{display:block;aspect-ratio:16/10;overflow:hidden}
.nws2-feature-media img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.nws2-feature:hover .nws2-feature-media img{transform:scale(1.04)}
.nws2-feature-body{padding:38px 42px;display:flex;flex-direction:column;justify-content:center}
.nws2-meta{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:13px;color:#6b7c93;margin-bottom:14px}
.nws2-chip{background:#eef3f9;color:#0b2a4a;font-weight:700;font-size:12px;padding:4px 10px;border-radius:4px}
.nws2-date{font-weight:600}
.nws2-feature-title{font-size:26px;line-height:1.35;margin:0 0 14px}
.nws2-feature-title a{color:#0a2547;text-decoration:none}
.nws2-feature-title a:hover{color:#d63031}
.nws2-excerpt{color:#4b5e77;font-size:15px;line-height:1.75;margin:0 0 18px}
.nws2-more{color:#d63031;font-weight:700;font-size:14px;text-decoration:none;display:inline-flex;gap:6px;align-items:center}
.nws2-more span{transition:transform .25s ease}
.nws2-more:hover span{transform:translateX(4px)}
.nws2-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:30px}
.nws2-grid-related{margin-top:26px}
.nws2-card{background:#fff;border:1px solid #e3eaf3;border-radius:12px;overflow:hidden;display:flex;flex-direction:column;transition:transform .3s ease,box-shadow .3s ease}
.nws2-card:hover{transform:translateY(-4px);box-shadow:0 14px 34px rgba(11,42,74,.13)}
.nws2-card-media{display:block;aspect-ratio:16/9;overflow:hidden}
.nws2-card-media img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.nws2-card:hover .nws2-card-media img{transform:scale(1.05)}
.nws2-card-body{padding:20px 22px 24px;display:flex;flex-direction:column;flex:1}
.nws2-card-body .nws2-meta{margin-bottom:10px}
.nws2-card-title{font-size:17px;line-height:1.45;margin:0 0 10px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.nws2-card-title a{color:#0a2547;text-decoration:none}
.nws2-card-title a:hover{color:#d63031}
.nws2-card-body .nws2-excerpt{font-size:14px;margin:0 0 16px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.nws2-card-body .nws2-more{margin-top:auto}
.nws2-pager{margin-top:44px;display:flex;justify-content:center;gap:8px}
.nws2-pager .page-numbers{display:inline-flex;min-width:42px;height:42px;align-items:center;justify-content:center;border-radius:50%;background:#fff;border:1px solid #dbe4f0;color:#33475f;font-weight:600;text-decoration:none;transition:all .25s ease}
.nws2-pager .page-numbers:hover{border-color:#0b2a4a;color:#0b2a4a}
.nws2-pager .page-numbers.current{background:#d63031;border-color:#d63031;color:#fff}
.nws2-empty{color:#6b7c93;font-size:15px}
.nws2-single-wrap{max-width:920px}
.nws2-cover{margin:0 0 26px;aspect-ratio:16/7;border-radius:14px;overflow:hidden;background:#eef3f9}
.nws2-cover img{width:100%;height:100%;object-fit:cover;display:block}
.nws2-article-card{background:#fff;border:1px solid #e3eaf3;border-radius:14px;padding:44px 54px;box-shadow:0 8px 28px rgba(11,42,74,.06)}
.nws2-article{max-width:none;padding:0}
.nws2-article h2{font-size:24px;line-height:1.4}
.nws2-article h3{font-size:19px;color:#0a2547;margin:1.4rem 0 .6rem}
.nws2-article img{max-width:100%;height:auto;border-radius:10px}
.nws2-article blockquote{border-left:3px solid #d63031;background:#fafbfe;margin:1.2rem 0;padding:14px 20px;color:#33475f;border-radius:0 8px 8px 0}
.nws2-article a{color:#1a5cad}
.nws2-single-share{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px;padding-top:28px;border-top:1px solid #e9eef6}
@media (max-width:900px){
  .nws2-feature{grid-template-columns:1fr}
  .nws2-feature-body{padding:26px 24px}
  .nws2-grid{grid-template-columns:1fr 1fr}
  .nws2-h1{font-size:30px}
  .nws2-article-card{padding:26px 22px}
  .nws2-cover{aspect-ratio:16/9}
}
@media (max-width:560px){
  .nws2-grid{grid-template-columns:1fr}
  .nws2-hero{padding:24px 0 40px}
}

/* ===== v7 Applications — by product platform ===== */
.app-nav{background:#fff;border-bottom:1px solid #e3eaf3}
.app-nav-in{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;padding:14px 0}
.app-nav a{font-size:13.5px;font-weight:700;color:#0b2a4a;background:#eef3f9;padding:8px 16px;border-radius:999px;text-decoration:none;transition:all .25s ease}
.app-nav a:hover{background:#0b2a4a;color:#fff}
.app-line{padding:58px 0;border-bottom:1px solid #edf2f8}
.app-line:last-of-type{border-bottom:0}
.app-line-alt{background:#f6f9fc}
.app-line-grid{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center}
.app-line-media{aspect-ratio:16/11;border-radius:14px;overflow:hidden;box-shadow:0 12px 32px rgba(11,42,74,.10);background:#eef3f9}
.app-line-media img{width:100%;height:100%;object-fit:cover;display:block}
.app-num{display:inline-block;font-size:12px;font-weight:800;color:#d63031;letter-spacing:2px;margin-bottom:8px}
.app-line h2{font-size:28px;line-height:1.3;color:#0a2547;margin:0 0 10px}
.app-line-lead{color:#4b5e77;font-size:16px;line-height:1.7;margin:0 0 18px}
.app-chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.app-chips span{background:#eef3f9;color:#0b2a4a;font-size:12.5px;font-weight:700;padding:5px 12px;border-radius:4px}
.app-uses{list-style:none;margin:0 0 22px;padding:0}
.app-uses li{position:relative;padding:8px 0 8px 26px;color:#33475f;font-size:15px;line-height:1.6;border-bottom:1px dashed #e3eaf3}
.app-uses li:last-child{border-bottom:0}
.app-uses li::before{content:"\2713";position:absolute;left:0;top:8px;color:#d63031;font-weight:800}
.app-uses li b{color:#0a2547}
.app-ind{border-bottom:0}
@media (max-width:900px){
  .app-line{padding:40px 0}
  .app-line-grid{grid-template-columns:1fr;gap:26px}
  .app-line-media{order:-1}
  .app-line h2{font-size:24px}
}

/* ===== v8: News — FIRSTA Group layout, FIRSTA VN colors ===== */
.fnews-banner{background:linear-gradient(120deg,#0b2a4a,#123a63,#1a4a7d);padding:30px 16px}
.fnews-crumb{text-align:center;color:rgba(255,255,255,.85);font-size:14px}
.fnews-crumb a{color:rgba(255,255,255,.75);text-decoration:none}
.fnews-crumb a:hover{color:#fff}
.fnews-crumb span{margin:0 8px;opacity:.6}
.fnews-crumb em{font-style:normal;color:#fff;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:62%;display:inline-block;vertical-align:bottom}
.fnews-top{max-width:1200px;margin:0 auto;padding:44px 20px 8px}
.fnews-slide{display:none}
.fnews-slide.on{display:block;animation:fnewsFade .45s ease}
@keyframes fnewsFade{from{opacity:0}to{opacity:1}}
.fnews-item{display:grid;grid-template-columns:1.08fr 1fr;min-height:400px}
.fnews-item-pic{display:block;overflow:hidden;background:#e8eef4}
.fnews-item-pic img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}
.fnews-item:hover .fnews-item-pic img{transform:scale(1.04)}
.fnews-item-body{background:#f6f9fc;padding:44px 46px;display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.fnews-date{display:inline-flex;align-items:center;gap:7px;color:#7b8a99;font-size:13px}
.fnews-date svg{opacity:.8;flex:none}
.fnews-title{margin:0;font-size:24px;line-height:1.4;color:#0b2a4a}
.fnews-title a{color:inherit;text-decoration:none;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.fnews-title a:hover{color:#d63031}
.fnews-desc{margin:0;color:#5a6b7d;font-size:15px;line-height:1.75;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.fnews-btn{display:inline-flex;align-items:center;gap:10px;background:#0b2a4a;color:#fff;font-size:14px;font-weight:600;padding:13px 28px;border-radius:6px;text-decoration:none;margin-top:auto;transition:background .25s ease}
.fnews-btn:hover{background:#123a63;color:#fff}
.fnews-btn i{width:0;height:0;border-left:7px solid currentColor;border-top:5px solid transparent;border-bottom:5px solid transparent}
.fnews-nav{display:flex;align-items:center;justify-content:center;gap:22px;padding:22px 0 6px}
.fnews-arrow{width:44px;height:44px;border-radius:50%;border:1px solid #c8d4de;background:#fff;color:#0b2a4a;font-size:18px;cursor:pointer;transition:all .25s ease}
.fnews-arrow:hover{background:#0b2a4a;color:#fff;border-color:#0b2a4a}
.fnews-dots{display:flex;gap:9px}
.fnews-dots span{width:9px;height:9px;border-radius:50%;background:#c8d4de;cursor:pointer;transition:background .25s ease}
.fnews-dots span.on{background:#0b2a4a}
.fnews-wrap{max-width:1200px;margin:26px auto 70px;padding:0 20px}
.fnews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.fnews-card{display:flex;flex-direction:column;background:#fff;transition:transform .3s ease,box-shadow .3s ease}
.fnews-card:hover{transform:translateY(-4px);box-shadow:0 14px 34px rgba(11,42,74,.12)}
.fnews-card-pic{display:block;aspect-ratio:4/3;overflow:hidden;background:#e8eef4}
.fnews-card-pic img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}
.fnews-card:hover .fnews-card-pic img{transform:scale(1.05)}
.fnews-card-body{background:#f6f9fc;padding:24px 24px 26px;display:flex;flex-direction:column;align-items:flex-start;gap:11px;flex:1}
.fnews-card-title{margin:0;font-size:17px;line-height:1.45;color:#0b2a4a}
.fnews-card-title a{color:inherit;text-decoration:none;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.fnews-card-title a:hover{color:#d63031}
.fnews-card-desc{margin:0;color:#5a6b7d;font-size:14px;line-height:1.7;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.fnews-more{display:inline-flex;align-items:center;gap:8px;color:#0b2a4a;font-size:14px;font-weight:600;text-decoration:none;margin-top:auto}
.fnews-more:hover{color:#d63031}
.fnews-more i{width:0;height:0;border-left:6px solid currentColor;border-top:4px solid transparent;border-bottom:4px solid transparent}
.fnews-empty{color:#7b8a99;padding:40px 0}
.fsingle-wrap{max-width:1100px;margin:0 auto;padding:48px 20px 30px}
.fsingle-title{text-align:center;font-size:30px;line-height:1.45;color:#0b2a4a;margin:0 0 18px}
.fsingle-meta{display:flex;justify-content:center;align-items:center;gap:18px;flex-wrap:wrap}
.fsingle-share{display:inline-flex;align-items:center;gap:8px;color:#7b8a99;font-size:13px}
.fsingle-sbtn{width:26px;height:26px;border-radius:50%;background:#0b2a4a;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;text-decoration:none;transition:all .25s ease}
.fsingle-sbtn:hover{background:#d63031;color:#fff}
.fsingle-hr{border:none;border-top:1px solid #e3eaf1;margin:26px 0 34px}
.fsingle-body{max-width:860px;margin:0 auto}
.fsingle-body p{color:#3c4a58;font-size:16px;line-height:1.95;margin:0 0 18px}
.fsingle-body h3{color:#0b2a4a;font-size:20px;margin:30px 0 14px}
.fsingle-body ul{color:#3c4a58;font-size:16px;line-height:1.9;padding-left:22px;margin:0 0 18px}
.fsingle-body ul li{margin-bottom:8px}
.fsingle-body a{color:#123a63;font-weight:600}
.fsingle-body .news-img{margin:6px auto 26px;text-align:center}
.fsingle-body .news-img img{max-width:100%;height:auto;border-radius:4px}
.fsingle-pn{max-width:860px;margin:34px auto 0;display:grid;grid-template-columns:1fr 1fr;gap:18px}
.fsingle-pnl,.fsingle-pnr{background:#f6f9fc;padding:16px 20px;text-decoration:none;border-radius:6px}
.fsingle-pnr{text-align:right}
.fsingle-pnl span,.fsingle-pnr span{display:block;font-size:12px;color:#7b8a99;margin-bottom:4px}
.fsingle-pnl strong,.fsingle-pnr strong{color:#0b2a4a;font-size:14px;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.fsingle-pnl:hover,.fsingle-pnr:hover{background:#eef4f9}
.fnews-related{max-width:1200px;margin:0 auto 70px;padding:0 20px}
.fnews-related-h{font-size:22px;color:#0b2a4a;margin:0 0 22px;position:relative;padding-left:14px}
.fnews-related-h:before{content:'';position:absolute;left:0;top:6px;bottom:6px;width:4px;background:#d63031;border-radius:2px}
@media(max-width:900px){
	.fnews-item{grid-template-columns:1fr;min-height:0}
	.fnews-item-pic{aspect-ratio:4/3}
	.fnews-item-body{padding:28px 24px 32px}
	.fnews-title{font-size:20px}
	.fnews-grid{grid-template-columns:1fr;gap:20px}
	.fsingle-title{font-size:24px}
	.fsingle-pn{grid-template-columns:1fr}
	.fsingle-pnr{text-align:left}
}


/* ==== v9: news banner image (tin-tuc + single) ==== */
.fnews-banner{position:relative;overflow:hidden;padding:66px 16px 58px;background:linear-gradient(112deg,rgba(8,30,58,.90) 0%,rgba(11,50,96,.84) 52%,rgba(13,70,140,.80) 100%),url(assets/img/design-news-hero.png) center 38%/cover no-repeat}
.fnews-banner::after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:linear-gradient(90deg,#d71920,#0c4da2);opacity:.9}
.fnews-banner-title{position:relative;z-index:2;color:#fff;font-size:34px;line-height:1.2;font-weight:800;letter-spacing:.5px;text-align:center;margin:0 0 12px;text-shadow:0 2px 16px rgba(3,18,40,.5)}
.fnews-crumb{position:relative;z-index:2;text-shadow:0 1px 8px rgba(3,18,40,.5)}
@media (max-width:900px){.fnews-banner{padding:44px 16px 40px}.fnews-banner-title{font-size:26px}}


/* ==== v10: news hero (d-hero unified) ==== */
.d-hero-crumb{color:rgba(255,255,255,.75);font-size:13.5px;text-align:left;margin:0 0 14px}
.d-hero-crumb a{color:rgba(255,255,255,.72);text-decoration:none}
.d-hero-crumb a:hover{color:#fff}
.d-hero-crumb span{margin:0 8px;opacity:.5}
.d-hero-crumb em{font-style:normal;color:#fff}
@media (max-width:900px){.d-hero-crumb{margin-bottom:10px}}


/* ==== v11: contact page 6-card grid ==== */
.d-cinfo-grid{grid-template-columns:repeat(3,1fr)}
@media (max-width:900px){.d-cinfo-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.d-cinfo-grid{grid-template-columns:1fr}}


/* ==== v12: product archive — cat tree + grid + pager ==== */
.d-catwrap{background:#fff;padding:2.4rem 0 4.2rem}
.d-catlay{display:grid;grid-template-columns:252px minmax(0,1fr);gap:1.6rem;align-items:start}
.d-cattree{background:#f4f8fc;border:1px solid #e2eaf4;border-radius:14px;padding:1.15rem .85rem 1.2rem;position:sticky;top:86px}
.d-cattree-t{font-size:.95rem;font-weight:700;color:#101828;margin:0 .5rem .7rem;letter-spacing:.2px}
.d-cattree ul{list-style:none;margin:0;padding:0}
.d-cattree li{margin:2px 0}
.d-cattree a{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.6rem .8rem;border-radius:9px;color:#2b3b52;font-size:.92rem;font-weight:500;text-decoration:none;transition:.18s}
.d-cattree a:hover{background:#e6eff9;color:#0c4da2}
.d-cattree li.on>a{background:var(--color-cta,#0c4da2);color:#fff}
.d-cattree li.on>a:hover{color:#fff}
.d-cattree .cnt{font-size:.76rem;color:#8a97a8;background:#fff;border:1px solid #dfe8f2;border-radius:99px;padding:.05rem .5rem;line-height:1.4}
.d-cattree li.on .cnt{color:#fff;background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.35)}
.d-cattree .sub{margin:.15rem 0 .2rem}
.d-cattree .sub a{padding-left:1.7rem;font-size:.87rem;font-weight:400}
.d-catmain{min-width:0}
.d-phd{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin:0 0 1.2rem;border-bottom:1px solid #e8eef6;padding-bottom:.9rem}
.d-phd-t{font-size:1.5rem;font-weight:800;color:#101828;margin:0;letter-spacing:.2px}
.d-phd-n{color:#8a97a8;font-size:.88rem;white-space:nowrap}
.d-pgrid2{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}
.d-pcard2{background:#fff;border:1px solid #e8eef6;border-radius:14px;overflow:hidden;display:flex;flex-direction:column;transition:.25s;box-shadow:0 8px 22px rgba(16,42,86,.06)}
.d-pcard2:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(16,42,86,.12)}
.d-pcard2-img{display:block;aspect-ratio:1/1;background:#fff;border-bottom:1px solid #eef3f9;padding:.9rem;overflow:hidden}
.d-pcard2-img img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;transition:.3s}
.d-pcard2:hover .d-pcard2-img img{transform:scale(1.05)}
.d-pcard2-body{padding:1rem 1.1rem 1.15rem;display:flex;flex-direction:column;gap:.42rem;flex:1}
.d-pcard2-body h3{font-size:.98rem;line-height:1.45;margin:0;color:#101828;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.d-pcard2-body h3 a{color:inherit;text-decoration:none}
.d-pcard2-body h3 a:hover{color:#0c4da2}
.d-pcard2-body p{font-size:.85rem;color:#5b6b81;line-height:1.55;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.d-pcard2-act{display:flex;gap:.55rem;margin-top:auto;padding-top:.6rem}
.btn-mini{flex:1;text-align:center;font-size:.82rem;font-weight:600;padding:.55rem .4rem;border-radius:9px;text-decoration:none;transition:.2s;line-height:1.2}
.btn-mini.ghost{border:1px solid #c9d6e6;color:#0c4da2;background:#fff}
.btn-mini.ghost:hover{background:#eaf2fb;border-color:#0c4da2}
.btn-mini.cta{background:var(--color-cta);color:#fff}
.btn-mini.cta:hover{background:#b71717;color:#fff}
.d-pempty{background:#f4f8fc;border:1px dashed #c9d6e6;border-radius:14px;padding:2.2rem;text-align:center;color:#5b6b81}
.d-pempty a{color:#0c4da2;font-weight:600}
.d-pager{display:flex;flex-wrap:wrap;gap:.45rem;justify-content:center;margin-top:2.3rem}
.d-pager .page-numbers{min-width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #d7e2ee;border-radius:9px;color:#2b3b52;font-size:.9rem;text-decoration:none;padding:0 .5rem;transition:.18s;background:#fff}
.d-pager a.page-numbers:hover{background:#eaf2fb;border-color:#0c4da2;color:#0c4da2}
.d-pager .current{background:var(--color-cta);border-color:var(--color-cta);color:#fff}
.d-pager .dots{border:none;background:none}
@media (max-width:1080px){.d-pgrid2{grid-template-columns:repeat(2,1fr)}}
@media (max-width:940px){
  .d-catlay{grid-template-columns:1fr;gap:1.1rem}
  .d-cattree{position:static}
  .d-cattree ul{display:flex;flex-wrap:wrap;gap:.35rem}
  .d-cattree li{margin:0}
  .d-cattree .sub{display:none}
  .d-cattree .cnt{display:none}
  .d-cattree a{padding:.42rem .75rem;background:#fff;border:1px solid #dfe8f2}
  .d-cattree li.on>a{border-color:var(--color-cta)}
  .d-phd-t{font-size:1.25rem}
}
@media (max-width:620px){.d-pgrid2{grid-template-columns:repeat(2,1fr);gap:.8rem}.d-pcard2-body{padding:.8rem .85rem .9rem}.d-pcard2-body p{display:none}}


/* ==== v13: nha-may results — full-bleed image cards + hover interaction ==== */
.d-rese{background:#f6f9fd;padding:3.2rem 0 4.2rem}
.d-rese .d-h2{margin:0 0 2rem}
.d-rese-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem}
.d-rese-card{position:relative;border-radius:16px;overflow:hidden;aspect-ratio:4/3;box-shadow:0 10px 26px rgba(16,42,86,.10);background:#0b2440;transform:translateZ(0)}
.d-rese-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .65s cubic-bezier(.22,.61,.36,1),filter .4s}
.d-rese-card:hover img{transform:scale(1.09);filter:brightness(1.04)}
.d-rese-ov{position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,30,58,.10) 0%,rgba(8,30,58,.34) 52%,rgba(6,22,44,.88) 100%);transition:background .4s}
.d-rese-card:hover .d-rese-ov{background:linear-gradient(180deg,rgba(8,30,58,.06) 0%,rgba(8,30,58,.44) 48%,rgba(6,22,44,.94) 100%)}
.d-rese-body{position:absolute;left:0;right:0;bottom:0;padding:1.5rem 1.5rem 1.4rem;color:#fff}
.d-rese-body h3{margin:0;font-size:1.18rem;font-weight:800;color:#fff;letter-spacing:.2px;transition:transform .4s}
.d-rese-card:hover .d-rese-body h3{transform:translateY(-3px)}
.d-rese-body p{margin:.5rem 0 0;font-size:.9rem;line-height:1.6;color:rgba(255,255,255,.86);opacity:0;transform:translateY(12px);max-height:0;overflow:hidden;transition:opacity .45s .06s,transform .45s .06s,max-height .45s .06s}
.d-rese-card:hover .d-rese-body p{opacity:1;transform:none;max-height:130px}
.d-rese-big{display:block;font-size:2.35rem;font-weight:900;line-height:1.05;margin:0 0 .25rem;color:#fff;text-shadow:0 2px 14px rgba(6,22,44,.5);transition:transform .4s}
.d-rese-card:hover .d-rese-big{transform:translateY(-3px)}
@media (max-width:940px){
  .d-rese-grid{grid-template-columns:1fr;gap:1.1rem}
  .d-rese-card{aspect-ratio:16/9}
  .d-rese-body p{opacity:1;transform:none;max-height:none}
}


/* ==== v14: nha-may hero — background image ==== */
.nws2-hero{position:relative;overflow:hidden;background:linear-gradient(112deg,rgba(8,30,58,.92) 0%,rgba(11,50,96,.86) 52%,rgba(13,70,140,.80) 100%),url(assets/img/design-fac-shop.jpg) center 42%/cover no-repeat}
.nws2-hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:linear-gradient(90deg,#d63031 0%,#1a4a7d 45%,rgba(26,74,125,0) 100%)}

    /* ============ v4.5 导航搜索位置修正 ============ */
    @media (min-width:1025px){
      body[data-page-id="home"] .site-nav{
        flex:1 1 auto !important;
        display:flex !important;
        justify-content:center !important;
        margin-left:0 !important;
        margin-right:0 !important;
      }
      body[data-page-id="home"] .header-right{
        margin-left:0 !important;
        gap:.9rem !important;
      }
      .nav-search input{ width:clamp(10rem,12vw,13rem) }
    }

    /* ============ v4.6 · giới thiệu 重设计 ============ */
    /* Hero：全幅背景图 + 深蓝遮罩 + 大字 */
    .ga-hero{ position:relative; min-height:clamp(26rem,72vh,34rem); display:flex; align-items:center; overflow:hidden; background:#0a2547 url(assets/img/design-about-hero2.jpg) center 38%/cover no-repeat }
    .ga-hero::before{ content:""; position:absolute; inset:0; z-index:1; background:linear-gradient(100deg,rgba(8,30,58,.93) 0%,rgba(10,46,92,.78) 48%,rgba(12,77,162,.55) 100%) }
    .ga-hero-video{ position:absolute; inset:0; z-index:0; width:100%; height:100%; object-fit:cover }
    .ga-hero-inner{ position:relative; z-index:2; padding:4.5rem 0 5rem }
    .ga-eyebrow{ display:inline-block; padding:.32rem .9rem; border:1px solid rgba(255,255,255,.4); border-radius:99rem; color:#fff; font-size:.74rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; margin-bottom:1.1rem }
    .ga-eyebrow.dark{ border-color:rgba(12,77,162,.35); color:#0c4da2; background:#e8f1fb }
    .ga-hero h1{ color:#fff; font-size:clamp(2rem,4.6vw,3.2rem); line-height:1.16; letter-spacing:-.01em; margin:0 0 1rem; max-width:22ch }
    .ga-hero-sub{ color:rgba(235,242,250,.92); font-size:1.05rem; line-height:1.75; max-width:40rem; margin:0 0 1.8rem }
    .ga-hero-btns{ display:flex; gap:.8rem; flex-wrap:wrap }
    .ga-hero-btns.center{ justify-content:center }
    .ga-btn-ghost{ display:inline-flex; align-items:center; padding:.72rem 1.6rem; border:1.5px solid rgba(255,255,255,.55); border-radius:99rem; color:#fff; font-weight:700; font-size:.95rem; text-decoration:none; transition:background .15s ease, border-color .15s ease }
    .ga-btn-ghost:hover{ background:rgba(255,255,255,.12); border-color:#fff }
    .ga-hero-scroll{ position:absolute; left:50%; bottom:1.4rem; z-index:2; width:1px; height:2.6rem; background:linear-gradient(rgba(255,255,255,0),rgba(255,255,255,.75)); display:block }
    /* H2 通用 */
    .ga-h2{ font-size:clamp(1.55rem,2.8vw,2.1rem); line-height:1.3; color:#101828; margin:.2rem 0 1.2rem; letter-spacing:-.01em }
    .ga-h2.light{ color:#fff }
    .ga-head{ text-align:center; max-width:44rem; margin:0 auto 2.6rem }
    /* About：左文右图 + 装饰角框 */
    .ga-about{ background:#fff; padding:5rem 0 }
    .ga-about-row{ display:grid; grid-template-columns:1.05fr .95fr; gap:3.4rem; align-items:center }
    .ga-about-copy p{ color:#41506b; line-height:1.85; margin:0 0 1rem }
    .ga-chips{ display:flex; flex-wrap:wrap; gap:.6rem; margin-top:1.4rem }
    .ga-chip{ display:inline-flex; align-items:center; padding:.42rem .95rem; border:1px solid #dbe6f2; border-radius:99rem; background:#f4f8fc; color:#0c4da2; font-size:.82rem; font-weight:600 }
    .ga-about-media{ position:relative; margin:0 }
    .ga-about-media::before{ content:""; position:absolute; top:-1.1rem; right:-1.1rem; width:6.5rem; height:6.5rem; border-top:3px solid #d71920; border-right:3px solid #d71920; border-radius:0 18px 0 0 }
    .ga-about-media::after{ content:""; position:absolute; bottom:-1.1rem; left:-1.1rem; width:6.5rem; height:6.5rem; border-bottom:3px solid #0c4da2; border-left:3px solid #0c4da2; border-radius:0 0 0 18px }
    .ga-about-media img,.ga-about-media video{ position:relative; z-index:1; display:block; width:100%; border-radius:18px; box-shadow:0 22px 48px rgba(13,59,102,.16); object-fit:cover }
    /* Power：深蓝图底 + 玻璃数字卡 */
    .ga-power{ position:relative; overflow:hidden; background:#0a2547 url(assets/img/design-fac-plant.jpg) center 45%/cover no-repeat; padding:5rem 0 }
    .ga-power::before{ content:""; position:absolute; inset:0; background:linear-gradient(112deg,rgba(8,30,58,.94) 0%,rgba(11,50,96,.88) 52%,rgba(13,70,140,.84) 100%) }
    .ga-power-row{ position:relative; z-index:1; display:grid; grid-template-columns:1.05fr .95fr; gap:3.2rem; align-items:center }
    .ga-power-copy p{ color:rgba(230,240,250,.9); line-height:1.85; margin:0 0 1.6rem }
    .ga-badges{ list-style:none; margin:0; padding:0; display:grid; gap:.75rem }
    .ga-badges li{ display:flex; align-items:center; gap:.7rem; color:#fff; font-size:.94rem; font-weight:600 }
    .ga-badges svg{ width:1.5rem; height:1.5rem; flex:none; color:#7fc0f0 }
    .ga-power-grid{ display:grid; grid-template-columns:1fr 1fr; gap:1rem }
    .ga-num{ background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.14); border-radius:16px; padding:1.6rem 1.4rem; backdrop-filter:blur(4px) }
    .ga-num strong{ display:block; color:#fff; font-size:clamp(1.35rem,2.2vw,1.7rem); letter-spacing:-.01em; margin-bottom:.35rem }
    .ga-num span{ color:rgba(220,234,248,.85); font-size:.86rem }
    /* Why：白底 4 卡 */
    .ga-why{ background:#f5f7fa; padding:5rem 0 }
    .ga-why-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:1.3rem }
    .ga-why-card{ display:block; background:#fff; border:1px solid #e8eef6; border-radius:16px; padding:1.9rem 1.4rem 1.5rem; text-decoration:none; box-shadow:0 8px 22px rgba(16,42,86,.06); transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease }
    .ga-why-card:hover{ transform:translateY(-4px); box-shadow:0 16px 34px rgba(16,42,86,.12); border-color:#c9dcf2 }
    .ga-ico{ display:inline-grid; place-items:center; width:3rem; height:3rem; border-radius:12px; background:#e8f1fb; color:#0c4da2; margin-bottom:1rem }
    .ga-ico svg{ width:1.55rem; height:1.55rem }
    .ga-ico.lg{ width:3.6rem; height:3.6rem; border-radius:99rem }
    .ga-ico.lg svg{ width:1.8rem; height:1.8rem }
    .ga-why-card h3{ color:#101828; font-size:1.05rem; margin:0 0 .5rem }
    .ga-why-card p{ color:#5b6b81; font-size:.88rem; line-height:1.65; margin:0 0 1rem }
    .ga-link{ color:#d71920; font-size:.86rem; font-weight:700 }
    .ga-link i{ font-style:normal; transition:margin-left .15s ease; display:inline-block }
    .ga-why-card:hover .ga-link i{ margin-left:.3rem }
    /* Value：白底 3 卡 */
    .ga-value{ background:#fff; padding:5rem 0 }
    .ga-value-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:1.5rem; max-width:62rem; margin:0 auto }
    .ga-value-card{ text-align:center; background:#fff; border:1px solid #e8eef6; border-radius:18px; padding:2.4rem 1.8rem; box-shadow:0 10px 26px rgba(16,42,86,.07) }
    .ga-value-card .ga-ico.lg{ margin:0 auto 1.2rem }
    .ga-value-card h3{ color:#101828; font-size:1.1rem; margin:0 0 .6rem }
    .ga-value-card p{ color:#5b6b81; font-size:.92rem; line-height:1.7; margin:0 }
    /* Team：浅灰底 4 卡 */
    .ga-team{ background:#f5f7fa; padding:5rem 0 }
    .ga-team-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:1.3rem }
    .ga-team-card{ background:#fff; border:1px solid #e8eef6; border-radius:16px; padding:1.8rem 1.4rem; text-align:center; box-shadow:0 8px 22px rgba(16,42,86,.06); transition:transform .18s ease, box-shadow .18s ease }
    .ga-team-card:hover{ transform:translateY(-3px); box-shadow:0 14px 30px rgba(16,42,86,.1) }
    .ga-team-card .ga-ico{ margin:0 auto 1rem }
    .ga-team-card h3{ color:#101828; font-size:1rem; margin:0 0 .45rem }
    .ga-team-card p{ color:#5b6b81; font-size:.86rem; line-height:1.65; margin:0 }
    /* CTA：深蓝图底居中 */
    .ga-cta{ position:relative; overflow:hidden; background:#0d4a96 url(assets/img/bg-cta.jpg) center/cover no-repeat; padding:4.6rem 0 5rem; text-align:center }
    .ga-cta::before{ content:""; position:absolute; inset:0; background:linear-gradient(115deg,rgba(10,47,96,.94) 0%,rgba(13,74,150,.88) 60%,rgba(16,96,176,.84) 100%) }
    .ga-cta-inner{ position:relative; z-index:1 }
    .ga-cta h2{ color:#fff; font-size:clamp(1.6rem,3vw,2.2rem); margin:0 0 .7rem }
    .ga-cta p{ color:rgba(235,243,252,.92); margin:0 0 1.7rem }
    /* 响应式 */
    @media(max-width:1024px){
      .ga-about-row,.ga-power-row{ grid-template-columns:1fr; gap:2.4rem }
      .ga-why-grid,.ga-team-grid{ grid-template-columns:repeat(2,1fr) }
      .ga-value-grid{ grid-template-columns:1fr; max-width:26rem }
    }
    @media(max-width:560px){
      .ga-why-grid,.ga-team-grid,.ga-power-grid{ grid-template-columns:1fr }
      .ga-hero-inner{ padding:3.6rem 0 4rem }
      .ga-about,.ga-power,.ga-why,.ga-value,.ga-team{ padding:3.6rem 0 }
      .ga-cta{ padding:3.6rem 0 4rem }
      .ga-about-media::before,.ga-about-media::after{ width:4rem; height:4rem }
    }

    /* ============ v4.7 · tập đoàn 重设计 ============ */
    /* Hero：厂区全景 + 统计条 */
    .gt-hero{ position:relative; display:flex; align-items:center; overflow:hidden; background:#0a2547 url(assets/img/design-fac-plant.jpg) center 42%/cover no-repeat }
    .gt-hero::before{ content:""; position:absolute; inset:0; background:linear-gradient(100deg,rgba(8,30,58,.94) 0%,rgba(10,46,92,.80) 48%,rgba(12,77,162,.58) 100%) }
    .gt-hero-inner{ position:relative; z-index:2; padding:4.6rem 0 3rem }
    .gt-hero h1{ color:#fff; font-size:clamp(2rem,4.6vw,3.2rem); line-height:1.16; letter-spacing:-.01em; margin:0 0 1rem; max-width:22ch }
    .gt-stats{ display:grid; grid-template-columns:repeat(4,1fr); gap:1rem; margin-top:3rem }
    .gt-stat{ background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.15); border-radius:14px; padding:1.3rem 1.2rem; backdrop-filter:blur(4px) }
    .gt-stat strong{ display:block; color:#fff; font-size:clamp(1.25rem,2vw,1.55rem); letter-spacing:-.01em; margin-bottom:.3rem }
    .gt-stat span{ color:rgba(220,234,248,.85); font-size:.82rem }
    /* 头部段落 */
    .ga-head-p{ color:#5b6b81; line-height:1.8; margin:.8rem auto 0; max-width:44rem }
    /* 产业链 4 步流程条 */
    .gt-chain{ background:#fff; padding:5rem 0 }
    .gt-steps{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(4,1fr); gap:1.3rem; counter-reset:gtstep }
    .gt-step{ position:relative; background:#f7fafd; border:1px solid #e8eef6; border-radius:16px; padding:2.6rem 1.5rem 1.7rem; overflow:hidden; transition:transform .18s ease, box-shadow .18s ease }
    .gt-step:hover{ transform:translateY(-4px); box-shadow:0 16px 34px rgba(16,42,86,.12) }
    .gt-step:not(:last-child)::after{ content:""; position:absolute; top:50%; right:-.85rem; width:.9rem; height:.9rem; border-top:2.5px solid #b9cfe8; border-right:2.5px solid #b9cfe8; transform:translateY(-50%) rotate(45deg); z-index:3 }
    .gt-step-num{ position:absolute; top:.4rem; right:.9rem; font-size:2.9rem; font-weight:800; color:#e2ecf8; line-height:1; letter-spacing:-.02em }
    .gt-step .ga-ico{ margin-bottom:.9rem }
    .gt-step h3{ color:#101828; font-size:1.02rem; margin:0 0 .5rem }
    .gt-step p{ color:#5b6b81; font-size:.86rem; line-height:1.65; margin:0 }
    /* 六业务单位卡 */
    .gt-units{ background:#f5f7fa; padding:5rem 0 }
    .gt-unit-grid{ display:grid; grid-template-columns:1fr 1fr; gap:1.4rem }
    .gt-unit{ position:relative; background:#fff; border:1px solid #e8eef6; border-radius:16px; padding:1.9rem 1.7rem 1.6rem; overflow:hidden; box-shadow:0 8px 22px rgba(16,42,86,.05); transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease }
    .gt-unit:hover{ transform:translateY(-3px); box-shadow:0 14px 32px rgba(16,42,86,.1); border-color:#c9dcf2 }
    .gt-unit::before{ content:""; position:absolute; left:0; top:0; bottom:0; width:4px; background:linear-gradient(#0c4da2,#2d9cdb); border-radius:4px 0 0 4px }
    .gt-unit-num{ position:absolute; top:.7rem; right:1.1rem; font-size:2.2rem; font-weight:800; color:#e7eff8; line-height:1 }
    .gt-unit h3{ color:#101828; font-size:1.08rem; margin:0 2.6rem .6rem 0 }
    .gt-unit p{ color:#5b6b81; font-size:.9rem; line-height:1.75; margin:0 0 1rem }
    .gt-chip{ display:inline-flex; align-items:center; padding:.4rem .9rem; border-radius:99rem; background:#fdecec; color:#c8102e; font-size:.8rem; font-weight:700 }
    /* 深蓝产品系列 */
    .gt-series{ position:relative; overflow:hidden; background:#0a2547 url(assets/img/bg-strength.jpg) center/cover no-repeat; padding:5rem 0 }
    .gt-series::before{ content:""; position:absolute; inset:0; background:linear-gradient(112deg,rgba(8,30,58,.93) 0%,rgba(11,50,96,.88) 52%,rgba(13,70,140,.84) 100%) }
    .gt-series .container{ position:relative; z-index:1 }
    .gt-series-grid{ display:grid; grid-template-columns:1fr 1fr; gap:1.4rem }
    .gt-series-card{ background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.14); border-radius:16px; padding:1.9rem 1.7rem; backdrop-filter:blur(4px) }
    .gt-series-card h3{ color:#fff; font-size:1.12rem; margin:0 0 1.1rem; padding-bottom:.9rem; border-bottom:1px solid rgba(255,255,255,.16) }
    .gt-series-card h3 small{ display:block; color:#7fc0f0; font-size:.78rem; font-weight:600; letter-spacing:.05em; margin-top:.35rem }
    .gt-check{ list-style:none; margin:0; padding:0; display:grid; gap:.6rem }
    .gt-check li{ position:relative; padding-left:1.55rem; color:rgba(230,240,250,.92); font-size:.9rem; line-height:1.6 }
    .gt-check li::before{ content:""; position:absolute; left:0; top:.22rem; width:1.02rem; height:1.02rem; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237fc0f0' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E") center/contain no-repeat }
    /* 响应式 */
    @media(max-width:1024px){
      .gt-stats{ grid-template-columns:repeat(2,1fr); margin-top:2.2rem }
      .gt-steps{ grid-template-columns:repeat(2,1fr) }
      .gt-step:not(:last-child)::after{ display:none }
    }
    @media(max-width:768px){
      .gt-unit-grid,.gt-series-grid{ grid-template-columns:1fr }
    }
    @media(max-width:560px){
      .gt-stats,.gt-steps{ grid-template-columns:1fr }
      .gt-hero-inner{ padding:3.6rem 0 2.6rem }
      .gt-chain,.gt-units,.gt-series{ padding:3.6rem 0 }
    }

    /* ============ v4.8 · tập đoàn 设计稿版式 ============ */
    /* Hero：左文右图斜切（全宽，左文对齐 container） */
    .gt2-hero{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.15fr); background:linear-gradient(115deg,#0a2547 0%,#0d3c7e 60%,#1060b0 100%); overflow:hidden }
    .gt2-hero-copy{ padding:4.2rem 3rem 8.5rem max(1.25rem,calc((100vw - var(--content-width))/2)); display:flex; flex-direction:column; justify-content:center }
    .gt2-hero-copy h1{ font-size:clamp(1.9rem,4.2vw,3rem); line-height:1.18; letter-spacing:-.01em; color:#fff; margin:.2rem 0 1.1rem }
    .gt2-hero-copy p{ color:rgba(230,240,250,.92); line-height:1.85; margin:0 0 1.8rem; max-width:34rem }
    .gt2-hero-media{ position:relative; min-height:24rem }
    .gt2-hero-media img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; clip-path:polygon(7% 0,100% 0,100% 100%,0 100%) }
    /* 深蓝实心按钮 */
    .gt2-btn-blue{ display:inline-flex; align-items:center; padding:.72rem 1.6rem; border-radius:99rem; background:#0a2547; color:#fff; font-weight:700; font-size:.95rem; text-decoration:none; transition:background .15s ease }
    .gt2-btn-blue:hover{ background:#0d4a96 }
    /* 产业链：箭头流程卡（悬浮重叠 hero） */
    .gt2-flow{ position:relative; z-index:5; margin-top:-5.2rem; padding-bottom:1rem }
    .gt2-flow-row{ list-style:none; margin:0; padding:0; display:flex }
    .gt2-arrow{ flex:1 1 0; min-width:0; background:#1060b0; color:#fff; text-align:center; padding:1.5rem 2.2rem 1.5rem 2.9rem; clip-path:polygon(0 0,calc(100% - 1.6rem) 0,100% 50%,calc(100% - 1.6rem) 100%,0 100%,1.6rem 50%); margin-left:-1.55rem; box-shadow:0 14px 30px rgba(8,30,58,.18); transition:transform .18s ease }
    .gt2-arrow:first-child{ clip-path:polygon(0 0,calc(100% - 1.6rem) 0,100% 50%,calc(100% - 1.6rem) 100%,0 100%); margin-left:0; padding-left:2.2rem; border-radius:14px 0 0 14px }
    .gt2-arrow:last-child{ border-radius:0 14px 14px 0 }
    .gt2-arrow.dark{ background:#0a2547 }
    .gt2-arrow:hover{ transform:translateY(-4px) }
    .gt2-arrow strong{ display:block; font-size:.82rem; letter-spacing:.1em; opacity:.85; margin-bottom:.35rem }
    .gt2-arrow span{ display:block; font-size:1rem; font-weight:700; line-height:1.35 }
    /* 区头：左标题 + 右链接/按钮 */
    .gt2-sechead{ display:flex; align-items:center; justify-content:space-between; gap:1.2rem; margin-bottom:2.4rem; flex-wrap:wrap }
    .gt2-sechead .ga-h2{ margin:0 }
    .gt2-more{ color:#0c4da2; font-weight:700; font-size:.92rem; text-decoration:none; white-space:nowrap }
    .gt2-more i{ font-style:normal; display:inline-block; transition:margin-left .15s ease }
    .gt2-more:hover i{ margin-left:.3rem }
    /* 六业务单位：图标卡 */
    .gt2-units{ background:#fff; padding:4.6rem 0 5rem }
    .gt2-unit-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:1.4rem }
    .gt2-unit{ background:#fff; border:1.5px solid #d9e6f5; border-radius:16px; padding:2rem 1.5rem 1.7rem; text-align:center; transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease }
    .gt2-unit:hover{ transform:translateY(-4px); box-shadow:0 16px 34px rgba(16,42,86,.1); border-color:#0c4da2 }
    .gt2-unit .ga-ico{ margin:0 auto 1rem }
    .gt2-unit h3{ color:#101828; font-size:1.02rem; margin:0 0 .55rem }
    .gt2-unit p{ color:#5b6b81; font-size:.86rem; line-height:1.7; margin:0 }
    .gt2-unit-btns{ display:flex; justify-content:center; gap:.9rem; margin-top:2.6rem; flex-wrap:wrap }
    /* 四产品系列：浅蓝底左图右文 */
    .gt2-series{ position:relative; overflow:hidden; background:url(assets/img/bg-linecheck.jpg) center/cover no-repeat; background-color:#e9f2fb; padding:5rem 0 }
    .gt2-series::before{ content:""; position:absolute; inset:0; background:linear-gradient(rgba(233,242,251,.92),rgba(233,242,251,.9)) }
    .gt2-series .container{ position:relative; z-index:1 }
    .gt2-series-grid{ display:grid; grid-template-columns:1fr 1fr; gap:1.4rem }
    .gt2-series-card{ display:grid; grid-template-columns:11.5rem 1fr; background:#fff; border:1.5px solid #d9e6f5; border-radius:16px; overflow:hidden; transition:transform .18s ease, box-shadow .18s ease }
    .gt2-series-card:hover{ transform:translateY(-3px); box-shadow:0 14px 32px rgba(16,42,86,.12) }
    .gt2-series-card img{ width:100%; height:100%; object-fit:cover; display:block }
    .gt2-series-body{ padding:1.5rem 1.5rem 1.4rem }
    .gt2-series-body h3{ color:#101828; font-size:1.05rem; margin:0 0 .9rem }
    .gt2-series-body h3 small{ display:block; color:#0c4da2; font-size:.76rem; font-weight:600; letter-spacing:.04em; margin-top:.3rem }
    .gt2-dots{ list-style:none; margin:0; padding:0; display:grid; gap:.45rem }
    .gt2-dots li{ position:relative; padding-left:1rem; color:#41506b; font-size:.86rem; line-height:1.55 }
    .gt2-dots li::before{ content:""; position:absolute; left:0; top:.48em; width:.42rem; height:.42rem; border-radius:50%; background:#1060b0 }
    /* 价值 4 小卡 */
    .gt2-value{ background:#fff; padding:5rem 0 }
    .gt2-value-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:1.3rem }
    .gt2-value-card{ background:#fff; border:1.5px solid #d9e6f5; border-radius:16px; padding:1.9rem 1.4rem; text-align:center; transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease }
    .gt2-value-card:hover{ transform:translateY(-3px); box-shadow:0 14px 30px rgba(16,42,86,.1); border-color:#0c4da2 }
    .gt2-value-card .ga-ico{ margin:0 auto .9rem }
    .gt2-value-card h3{ color:#101828; font-size:.98rem; margin:0 0 .4rem }
    .gt2-value-card p{ color:#5b6b81; font-size:.84rem; line-height:1.6; margin:0 }
    /* CTA：深蓝左文右钮 */
    .gt2-cta{ position:relative; overflow:hidden; background:linear-gradient(115deg,rgba(10,37,71,.93) 0%,rgba(13,60,126,.89) 55%,rgba(16,96,176,.85) 100%),url(assets/img/bg-strength.jpg) center/cover no-repeat; background-color:#0a2547; padding:4rem 0 4.4rem }
    .gt2-cta-row{ display:flex; align-items:center; justify-content:space-between; gap:2rem; flex-wrap:wrap }
    .gt2-cta-copy h2{ color:#fff; font-size:clamp(1.45rem,2.6vw,1.9rem); margin:0 0 .6rem; max-width:34rem }
    .gt2-cta-copy p{ color:rgba(230,240,250,.9); margin:0; max-width:34rem }
    .gt2-cta-btns{ display:flex; gap:.8rem; flex-wrap:wrap; flex:none }
    /* 响应式 */
    @media(max-width:1024px){
      .gt2-hero{ grid-template-columns:1fr }
      .gt2-hero-copy{ padding:3.4rem 1.25rem 3rem }
      .gt2-hero-media{ min-height:15rem; order:2 }
      .gt2-hero-media img{ clip-path:none }
      .gt2-flow{ margin-top:0; padding-top:0 }
      .gt2-flow-row{ display:grid; grid-template-columns:1fr 1fr; gap:.9rem; padding-top:2.2rem }
      .gt2-arrow,.gt2-arrow:first-child,.gt2-arrow:last-child{ clip-path:none; margin-left:0; border-radius:14px; padding:1.3rem 1.2rem }
      .gt2-unit-grid{ grid-template-columns:1fr 1fr }
      .gt2-series-grid{ grid-template-columns:1fr }
      .gt2-value-grid{ grid-template-columns:1fr 1fr }
    }
    @media(max-width:560px){
      .gt2-flow-row,.gt2-unit-grid,.gt2-value-grid{ grid-template-columns:1fr }
      .gt2-series-card{ grid-template-columns:1fr }
      .gt2-series-card img{ height:10rem }
      .gt2-units,.gt2-series,.gt2-value{ padding:3.6rem 0 }
      .gt2-cta{ padding:3.2rem 0 3.6rem }
    }


    /* ============ v4.9 · 首页产品中心 tab 交互 ============ */
    .hpc{ background:linear-gradient(180deg,#f2f7fd 0%,#e3eefb 55%,#dbe8fb 100%); padding:4.2rem 0 4.6rem }
    .hpc-sub{ text-align:center; color:#5a7089; margin:-.6rem 0 0 }
    .hpc-tabs{ display:flex; flex-wrap:wrap; justify-content:center; align-items:stretch; gap:1.5rem; margin:2.1rem 0 2.7rem }
    .hpc-tab{ position:relative; display:inline-flex; align-items:center; gap:.55rem; background:#fff; border:1px solid #d9e6f5; border-radius:10px; padding:.85rem 1.2rem; font-weight:600; font-size:.93rem; color:#0a2547; box-shadow:0 6px 16px rgba(13,59,102,.08); transition:all .25s ease; white-space:nowrap }
    .hpc-tab:hover{ transform:translateY(-2px); box-shadow:0 12px 26px rgba(13,59,102,.14); border-color:#9db8d8 }
    .hpc-tab .hpc-cnt{ min-width:1.5rem; height:1.5rem; padding:0 .3rem; border-radius:999px; background:#e3eefb; color:#0c4da2; font-size:.75rem; font-weight:700; display:inline-flex; align-items:center; justify-content:center }
    .hpc-tab:not(:last-child)::after{ content:""; position:absolute; right:-1.06rem; top:50%; width:.5rem; height:.5rem; border-top:2px solid #9db8d8; border-right:2px solid #9db8d8; transform:translateY(-50%) rotate(45deg); pointer-events:none }
    .hpc-tab.is-active{ background:linear-gradient(135deg,#0c4da2,#1060b0); border-color:transparent; color:#fff; box-shadow:0 12px 26px rgba(12,77,162,.30); transform:translateY(-2px) }
    .hpc-tab.is-active .hpc-cnt{ background:rgba(255,255,255,.22); color:#fff }
    .hpc-panel{ display:none }
    .hpc-panel.is-show{ display:grid; grid-template-columns:1.05fr .95fr; gap:3.2rem; align-items:center; animation:hpcFade .38s ease both }
    @keyframes hpcFade{ from{ opacity:0; transform:translateY(14px) } to{ opacity:1; transform:none } }
    .hpc-list{ list-style:none; margin:0; padding:0 }
    .hpc-list li{ position:relative; padding-left:2.2rem; margin-bottom:1.05rem; font-size:1rem; line-height:1.55; color:#33475b }
    .hpc-list li::before{ content:"\2713"; position:absolute; left:0; top:-.05rem; width:1.4rem; height:1.4rem; border-radius:50%; background:rgba(31,169,113,.13); color:#1fa971; font-weight:700; font-size:.78rem; display:flex; align-items:center; justify-content:center }
    .hpc-btn{ display:inline-flex; align-items:center; gap:.4rem; margin-top:.7rem; background:linear-gradient(135deg,#0c4da2,#1060b0); color:#fff; font-weight:700; font-size:.95rem; padding:.8rem 1.55rem; border-radius:999px; box-shadow:0 10px 22px rgba(12,77,162,.26); transition:all .25s ease }
    .hpc-btn:hover{ transform:translateY(-2px); box-shadow:0 14px 30px rgba(12,77,162,.34); filter:brightness(1.06) }
    .hpc-fig{ display:block; border-radius:18px; overflow:hidden; background:#fff; box-shadow:0 20px 44px rgba(13,59,102,.15); border:1px solid #e8eef6 }
    .hpc-fig img{ display:block; width:100%; aspect-ratio:16/10; object-fit:cover; transition:transform .5s ease }
    .hpc-fig:hover img{ transform:scale(1.045) }
    @media (max-width:900px){
      .hpc-panel.is-show{ grid-template-columns:1fr; gap:2rem }
      .hpc-fig{ order:2 }
    }
    @media (max-width:640px){
      .hpc-tabs{ flex-direction:column; align-items:stretch; gap:.8rem }
      .hpc-tab{ justify-content:center; width:100% }
      .hpc-tab:not(:last-child)::after{ display:none }
      .hpc-list li{ font-size:.95rem }
    }

    /* ============ v4.10 · 首页新闻模块 + 客户评价迁移 ============ */
    .d-hnews{ background:#fff; padding:4.4rem 0 4.8rem }
    .d-hnews .fnews-top{ max-width:none; padding:1.4rem 0 0; margin:0 }
    .d-hnews .fnews-wrap{ max-width:none; margin:2.4rem 0 0; padding:0 }
    .d-hnews-head{ display:flex; align-items:flex-end; justify-content:space-between; gap:1.5rem }
    .d-hnews-sub{ color:#5a7089; margin:-.6rem 0 0 }
    .d-hnews-more{ flex:none; display:inline-flex; align-items:center; gap:.4rem; background:linear-gradient(135deg,#0c4da2,#1060b0); color:#fff; font-weight:700; font-size:.93rem; padding:.75rem 1.45rem; border-radius:999px; box-shadow:0 10px 22px rgba(12,77,162,.24); transition:all .25s ease; margin-bottom:.3rem }
    .d-hnews-more:hover{ transform:translateY(-2px); box-shadow:0 14px 28px rgba(12,77,162,.32); filter:brightness(1.06) }
    @media (max-width:760px){
      .d-hnews-head{ flex-direction:column; align-items:flex-start; gap:1rem }
    }

    /* ============ v4.11 · 首页新闻模块紧凑版 ============ */
    .d-hnews{ background:#fff; padding:3.4rem 0 3.9rem }
    .d-hnews .d-hnews-head{ margin-bottom:0 }
    .d-hnews-row{ display:grid; grid-template-columns:repeat(3,1fr); gap:1.4rem; margin-top:1.7rem }
    .d-hnews-item{ display:flex; align-items:center; gap:1rem; background:#fff; border:1px solid #d9e6f5; border-radius:14px; padding:.8rem; box-shadow:0 6px 16px rgba(13,59,102,.07); transition:all .25s ease }
    .d-hnews-item:hover{ transform:translateY(-3px); box-shadow:0 14px 30px rgba(13,59,102,.14); border-color:#9db8d8 }
    .d-hnews-pic{ flex:none; width:5.7rem; height:5.7rem; border-radius:10px; overflow:hidden; background:#e3eefb }
    .d-hnews-pic img{ width:100%; height:100%; object-fit:cover; display:block }
    .d-hnews-body{ min-width:0 }
    .d-hnews-date{ display:flex; align-items:center; gap:.35rem; color:#0c4da2; font-size:.78rem; font-weight:700 }
    .d-hnews-tt{ display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; font-size:.95rem; line-height:1.45; color:#0a2547; margin-top:.3rem; font-weight:600 }
    @media (max-width:900px){
      .d-hnews-row{ grid-template-columns:1fr }
    }

    /* ============ v4.12 · 首页新闻标题居中 ============ */
    .d-hnews-head{ display:block; text-align:center }
    .d-hnews-foot{ text-align:center; margin-top:2.1rem }
    .d-hnews-foot .d-hnews-more{ margin-bottom:0 }

    /* ============ v4.13 · 产品中心移动端全部展开 ============ */
    .hpc-panel-title{ display:none }
    @media (max-width:640px){
      .hpc-tabs{ display:none }
      .hpc-panel{ display:grid; grid-template-columns:1fr; gap:1.5rem; margin-bottom:2.6rem }
      .hpc-panel:last-child{ margin-bottom:0 }
      .hpc-panel-title{ display:block; text-align:center; font-size:1.18rem; font-weight:700; color:#0a2547; margin:0 }
      .hpc-panel-title::after{ content:""; display:block; width:2.6rem; height:.2rem; border-radius:99px; background:linear-gradient(90deg,#0c4da2,#1060b0); margin:.55rem auto 0 }
    }

    /* ============ v4.14 导航搜索框与电话中心对齐 ============ */
    .header-right{ align-items:center }
    .nav-search, .nav-search input, .header-phone{ margin-top:0; margin-bottom:0; align-self:center }

/* ============ v4.15 · taxonomy hero 透明产品图适配 ============ */
.d-hero-img.is-contain{ object-fit:contain; object-position:right center; width:46%; padding:1.4rem 1.2rem 1.4rem 0; }
@media (max-width:768px){ .d-hero-img.is-contain{ width:100%; height:300px; padding:1rem 1.2rem 1.4rem; object-position:center; } }


/* ============ v4.16 · 首页三流程卡移动端竖排 ============ */
@media (max-width:900px){ .d-flow .d-flow-row .d-flow-card{ flex:1 1 100%; max-width:100% } }
