:root {
  --black: #06111F;
  --panel: #0B1B2B;
  --panel2: #102A43;
  --paper: #F5F7FA;
  --white: #FFFFFF;
  --red: #1E88E5;
  --red2: #1565C0;
  --blue: #F97316;
  --ink: #111827;
  --muted: #5B6675;
  --line: rgba(255,255,255,.18);
  --container: 1280px;
  --shadow: 0 32px 90px rgba(0,0,0,.22);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: "Inter", "PingFang SC", "Microsoft YaHei", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  color: var(--ink);
  background: var(--paper);
  line-height: 1.58;
  overflow-x: hidden;
}
body.no-scroll { overflow: hidden; }
a { color: inherit; text-decoration: none; }
button, input, textarea { font: inherit; }
.container { width: min(var(--container), calc(100% - 56px)); margin: 0 auto; }

/* Header */
.top-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  height: 138px;
  background: var(--black);
  color: #fff;
  border-bottom: 1px solid rgba(255,255,255,.12);
  transition: box-shadow .25s ease;
}
.top-header.scrolled { box-shadow: 0 18px 44px rgba(0,0,0,.22); }
.header-inner {
  height: 138px;
  display: grid;
  grid-template-columns: auto 1fr auto;
  grid-template-rows: 68px 70px;
  align-items: center;
}
.brand {
  grid-column: 1;
  grid-row: 1;
  color: #fff;
  font-size: 25px;
  font-weight: 950;
  letter-spacing: .02em;
  white-space: nowrap;
}
.short-name { display: none; }
.desktop-nav {
  grid-column: 1 / 3;
  grid-row: 2;
  display: flex;
  align-self: end;
  gap: 36px;
  height: 70px;
  align-items: center;
}
.desktop-nav button {
  color: #fff;
  background: transparent;
  border: 0;
  padding: 0 0 18px;
  cursor: pointer;
  font-weight: 850;
  font-size: 16px;
  border-bottom: 3px solid transparent;
  transition: color .2s ease, border-color .2s ease;
}
.desktop-nav button:hover { color: var(--red); border-color: var(--red); }
.header-actions {
  grid-column: 3;
  grid-row: 1 / 3;
  display: flex;
  align-items: center;
  gap: 22px;
}
.search-trigger {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #fff;
  background: transparent;
  border: 0;
  cursor: pointer;
  font-weight: 850;
}
.search-icon {
  width: 18px;
  height: 18px;
  display: inline-block;
  border: 2px solid currentColor;
  border-radius: 50%;
  position: relative;
}
.search-icon::after {
  content: "";
  width: 8px;
  height: 2px;
  background: currentColor;
  position: absolute;
  right: -7px;
  bottom: -4px;
  transform: rotate(45deg);
}
.header-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0 18px;
  border: 1px solid var(--red);
  color: #fff;
  background: var(--red);
  font-weight: 900;
  transition: background .2s ease, transform .2s ease;
}
.header-cta:hover { background: var(--red2); transform: translateY(-2px); }
.mobile-menu-btn { display: none; width: 42px; height: 42px; padding: 0; background: transparent; border: 0; }
.mobile-menu-btn span { display: block; width: 24px; height: 2px; margin: 6px auto; background: #fff; }

/* Mega Menu */
.mega-panel {
  position: fixed;
  inset: 0;
  z-index: 2000;
  pointer-events: none;
  opacity: 0;
  transition: opacity .2s ease;
}
.mega-panel.active { pointer-events: auto; opacity: 1; }
.mega-backdrop { position: absolute; inset: 0; background: rgba(0,0,0,.18); }
.mega-content {
  position: absolute;
  top: 0; left: 0; right: 0;
  max-height: 100vh;
  overflow: auto;
  color: #fff;
  background: var(--panel);
  border-top: 1px solid rgba(255,255,255,.12);
  transform: translateY(-20px);
  transition: transform .24s ease;
}
.mega-panel.active .mega-content { transform: translateY(0); }
.mega-inner { padding: 54px 0 78px; }
.mega-top {
  display: flex;
  justify-content: space-between;
  align-items: start;
  gap: 28px;
  margin-bottom: 38px;
}
.mega-kicker {
  display: block;
  margin-bottom: 14px;
  color: var(--red);
  font-size: 13px;
  letter-spacing: .18em;
  font-weight: 950;
}
.mega-top h2 {
  margin: 0;
  font-size: 46px;
  line-height: 1;
  letter-spacing: -.04em;
}
.mega-close {
  color: #fff;
  background: transparent;
  border: 0;
  font-size: 56px;
  line-height: 1;
  cursor: pointer;
  opacity: .95;
}
.mega-columns {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 42px;
}
.mega-column h3 {
  margin: 0 0 8px;
  padding-bottom: 12px;
  color: #fff;
  font-size: 16px;
  border-bottom: 2px solid rgba(255,255,255,.9);
}
.mega-column a {
  display: block;
  padding: 13px 0;
  color: rgba(255,255,255,.88);
  font-weight: 750;
  border-bottom: 1px solid rgba(255,255,255,.16);
  transition: color .2s ease, padding-left .2s ease;
}
.mega-column a:hover { color: var(--red); padding-left: 8px; }

/* Mobile menu */
.mobile-panel {
  position: fixed;
  inset: 0;
  z-index: 2100;
  display: none;
  color: #fff;
  background: var(--black);
  overflow: auto;
}
.mobile-panel.active { display: block; }
.mobile-panel-head {
  height: 72px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 24px;
  border-bottom: 1px solid rgba(255,255,255,.16);
  font-weight: 900;
}
.mobile-panel-head button {
  color: #fff;
  background: transparent;
  border: 0;
  font-size: 38px;
}
.mobile-menu-groups { padding: 16px 24px 120px; }
.mobile-menu-groups details { border-bottom: 1px solid rgba(255,255,255,.15); }
.mobile-menu-groups summary { padding: 22px 0; font-size: 22px; font-weight: 900; cursor: pointer; }
.mobile-subgroup { padding-bottom: 18px; }
.mobile-subgroup h4 { margin: 0 0 8px; color: var(--red); }
.mobile-subgroup a { display: block; padding: 10px 0; color: rgba(255,255,255,.78); }
.mobile-submit {
  position: fixed;
  left: 24px; right: 24px; bottom: 24px;
  display: grid;
  place-items: center;
  height: 52px;
  color: #fff;
  background: var(--red);
  font-weight: 950;
}

/* Search */
.search-panel {
  position: fixed;
  inset: 0;
  z-index: 2200;
  display: none;
  align-items: start;
  justify-content: center;
  padding-top: 120px;
  background: rgba(6,17,31,.92);
  color: #fff;
}
.search-panel.active { display: flex; }
.search-box {
  position: relative;
  width: min(760px, calc(100% - 48px));
  padding: 42px;
  background: var(--panel);
  box-shadow: var(--shadow);
}
.search-close {
  position: absolute;
  right: 20px;
  top: 14px;
  color: #fff;
  background: transparent;
  border: 0;
  font-size: 40px;
  cursor: pointer;
}
.search-box h2 { margin: 0; font-size: 38px; }
.search-box p { color: rgba(255,255,255,.68); }
.search-box input {
  width: 100%;
  margin-top: 18px;
  height: 56px;
  padding: 0 18px;
  border: 1px solid rgba(255,255,255,.25);
  background: rgba(255,255,255,.08);
  color: #fff;
  outline: none;
}
.search-suggestions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 18px; }
.search-suggestions a { padding: 9px 12px; background: rgba(255,255,255,.08); }

/* Hero */
.hero-slider {
  position: relative;
  height: calc(100vh - 138px);
  min-height: 590px;
  color: #fff;
  overflow: hidden;
  background: var(--black);
}
.slides, .slide { position: absolute; inset: 0; }
.slide {
  opacity: 0;
  pointer-events: none;
  transition: opacity .55s ease;
  cursor: pointer;
  background: var(--panel);
}
.slide.active { opacity: 1; pointer-events: auto; }
.slide-overlay {
  position: absolute;
  inset: 0;
  z-index: 2;
  background:
    linear-gradient(90deg, rgba(6,8,13,.96) 0%, rgba(6,17,31,.82) 36%, rgba(6,17,31,.22) 72%, rgba(6,8,13,.08) 100%),
    linear-gradient(0deg, rgba(6,8,13,.34), rgba(6,17,31,.05));
}
.slide-art {
  position: absolute;
  inset: 0;
  overflow: hidden;
  background:
    radial-gradient(circle at 76% 42%, rgba(30,136,229,.28), transparent 28%),
    linear-gradient(135deg, #111827, var(--panel2));
}
.slide-2 .slide-art {
  background: radial-gradient(circle at 75% 40%, rgba(11,103,178,.28), transparent 28%), linear-gradient(135deg, #0B1B2B, #1C2634);
}
.slide-3 .slide-art {
  background: radial-gradient(circle at 75% 40%, rgba(30,136,229,.22), transparent 28%), linear-gradient(135deg, #06111F, #102A43);
}
.slide-4 .slide-art {
  background: radial-gradient(circle at 75% 40%, rgba(255,255,255,.12), transparent 28%), linear-gradient(135deg, #0B1B2B, #1B252B);
}
.art-grid {
  position: absolute;
  right: 7%;
  top: 12%;
  width: 58%;
  height: 76%;
  opacity: .25;
  background-image:
    linear-gradient(rgba(255,255,255,.15) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.15) 1px, transparent 1px);
  background-size: 56px 56px;
  transform: perspective(900px) rotateY(-12deg) rotateX(4deg);
}
.art-machine {
  position: absolute;
  right: 8%;
  bottom: 13%;
  width: 520px;
  height: 280px;
  border-radius: 24px;
  background: linear-gradient(135deg, rgba(255,255,255,.16), rgba(255,255,255,.04));
  border: 1px solid rgba(255,255,255,.20);
  box-shadow: 0 36px 90px rgba(0,0,0,.28);
}
.art-machine::before, .art-machine::after {
  content: "";
  position: absolute;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.10);
}
.art-machine::before { left: 34px; top: 34px; width: 180px; height: 120px; }
.art-machine::after { right: 38px; bottom: 42px; width: 180px; height: 70px; }
.art-line {
  position: absolute;
  right: 15%;
  height: 3px;
  border-radius: 999px;
  background: rgba(255,255,255,.38);
  transform-origin: right center;
}
.art-line.one { bottom: 28%; width: 520px; transform: rotate(-12deg); }
.art-line.two { bottom: 36%; width: 420px; transform: rotate(8deg); }
.slide-content {
  position: relative;
  z-index: 3;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-bottom: 34px;
}
.slide-content h1 {
  max-width: 820px;
  margin: 0 0 20px;
  font-size: clamp(34px, 4.5vw, 60px);
  line-height: 1.05;
  letter-spacing: -.05em;
}
.slide-content p {
  max-width: 760px;
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 18px;
  font-weight: 650;
}
.slide-actions { display: flex; gap: 16px; margin-top: 28px; }
.hero-primary, .hero-secondary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 132px;
  min-height: 56px;
  padding: 0 22px;
  font-weight: 950;
}
.hero-primary { color: #fff; background: var(--red); }
.hero-secondary { border: 2px solid rgba(255,255,255,.86); color: #fff; }
.slider-arrow {
  position: absolute;
  top: 50%;
  z-index: 5;
  width: 48px;
  height: 48px;
  border: 0;
  border-radius: 999px;
  color: #fff;
  background: rgba(255,255,255,.24);
  font-size: 42px;
  line-height: 1;
  cursor: pointer;
  transform: translateY(-50%);
}
.slider-arrow.prev { left: max(24px, calc((100vw - var(--container)) / 2)); }
.slider-arrow.next { right: max(24px, calc((100vw - var(--container)) / 2)); }
.slider-dots {
  position: absolute;
  left: 50%;
  bottom: 34px;
  z-index: 5;
  display: flex;
  gap: 14px;
  align-items: center;
  padding: 11px 18px;
  border-radius: 999px;
  background: rgba(255,255,255,.22);
  backdrop-filter: blur(12px);
}
.slider-dots button {
  width: 9px; height: 9px; padding: 0; border: 0; border-radius: 999px;
  background: rgba(255,255,255,.9);
  cursor: pointer;
  transition: width .2s ease;
}
.slider-dots button.active { width: 52px; background: #fff; }

/* Home sections */
.quick-strip { background: var(--paper); border-bottom: 1px solid rgba(0,0,0,.08); }
.quick-strip-inner {
  min-height: 86px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 52px;
}
.quick-strip p { margin: 0; font-size: 16px; font-weight: 750; }
.quick-strip a { padding: 13px 26px; border: 2px solid var(--black); font-weight: 950; }

.apple-section { padding: 76px 0 88px; background: var(--paper); }
.section-heading { margin-bottom: 32px; }
.section-heading.center { text-align: center; max-width: 920px; margin: 0 auto 34px; }
.section-heading span {
  display: inline-block;
  margin-bottom: 12px;
  color: var(--red);
  font-size: 13px;
  letter-spacing: .14em;
  font-weight: 950;
}
.section-heading h2 {
  margin: 0;
  font-size: clamp(36px, 4.4vw, 62px);
  line-height: 1.04;
  letter-spacing: -.055em;
}
.section-heading p {
  max-width: 820px;
  margin: 14px auto 0;
  color: #515b68;
  font-size: 18px;
}
.apple-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.apple-card {
  position: relative;
  min-height: 540px;
  overflow: hidden;
  background: #fff;
  color: var(--ink);
  transition: transform .25s ease, box-shadow .25s ease;
}
.apple-card:hover { transform: translateY(-4px); box-shadow: 0 20px 64px rgba(0,0,0,.08); }
.apple-copy {
  position: relative;
  z-index: 2;
  max-width: 620px;
  margin: 0 auto;
  padding: 56px 30px 0;
  text-align: center;
}
.apple-copy h3 {
  margin: 0;
  font-size: clamp(32px, 3.3vw, 48px);
  line-height: 1.06;
  letter-spacing: -.045em;
}
.apple-copy p { margin: 10px auto 14px; max-width: 520px; font-size: 18px; color: #333; }
.apple-copy span { display: inline-flex; color: var(--blue); font-weight: 780; }
.apple-visual {
  position: absolute;
  left: 50%;
  bottom: 50px;
  width: min(520px, 78%);
  height: 260px;
  transform: translateX(-50%);
  border-radius: 28px;
  background:
    radial-gradient(circle at 70% 20%, rgba(30,136,229,.16), transparent 30%),
    linear-gradient(135deg, #f9f9fa, #ffffff);
  border: 1px solid rgba(0,0,0,.06);
  box-shadow: 0 26px 70px rgba(0,0,0,.10);
}
.device-lines {
  position: absolute;
  inset: 34px;
  border-radius: 18px;
  background-image:
    linear-gradient(rgba(0,0,0,.09) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0,0,0,.09) 1px, transparent 1px);
  background-size: 34px 34px;
}
.device-lines::after {
  content: "";
  position: absolute;
  right: 24px;
  bottom: 24px;
  width: 160px;
  height: 70px;
  border-radius: 18px;
  background: rgba(0,0,0,.08);
}

/* Apple TV inspired theater */
.case-theater { padding: 78px 0 92px; background: #fff; overflow: hidden; }
.theater-wrap { position: relative; margin-top: 24px; }
.theater-stage {
  display: flex;
  gap: 16px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  padding: 0 0 18px;
  scrollbar-width: none;
}
.theater-stage::-webkit-scrollbar { display: none; }
.theater-card {
  position: relative;
  flex: 0 0 min(860px, 76vw);
  height: 520px;
  overflow: hidden;
  color: #fff;
  background: #111;
  scroll-snap-align: center;
}
.theater-bg {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 74% 40%, rgba(30,136,229,.34), transparent 32%),
    linear-gradient(135deg, #0B1B2B, #102A43);
  transition: transform .35s ease;
}
.theater-card:hover .theater-bg { transform: scale(1.04); }
.theater-bg::before {
  content: "";
  position: absolute;
  inset: 44px;
  border: 1px solid rgba(255,255,255,.18);
  background-image:
    linear-gradient(rgba(255,255,255,.12) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.12) 1px, transparent 1px);
  background-size: 42px 42px;
}
.theater-bg::after {
  content: "";
  position: absolute;
  right: 62px;
  bottom: 62px;
  width: 230px;
  height: 120px;
  border-radius: 24px;
  background: rgba(255,255,255,.13);
  border: 1px solid rgba(255,255,255,.16);
}
.theater-content {
  position: absolute;
  left: 52px;
  right: 52px;
  bottom: 48px;
  z-index: 2;
}
.theater-content span {
  display: block;
  margin-bottom: 12px;
  color: rgba(255,255,255,.75);
  font-size: 13px;
  letter-spacing: .18em;
  font-weight: 950;
}
.theater-content h3 {
  margin: 0;
  max-width: 660px;
  font-size: clamp(36px, 4.4vw, 58px);
  line-height: 1.03;
  letter-spacing: -.05em;
}
.theater-content p { margin: 12px 0 20px; font-weight: 850; }
.theater-content em {
  display: inline-flex;
  padding: 11px 18px;
  border-radius: 999px;
  color: #111;
  background: #fff;
  font-style: normal;
  font-weight: 900;
}
.theater-btn {
  position: absolute;
  top: 50%;
  z-index: 4;
  width: 52px;
  height: 52px;
  border: 0;
  border-radius: 999px;
  color: #fff;
  background: rgba(0,0,0,.42);
  font-size: 42px;
  line-height: 1;
  cursor: pointer;
  transform: translateY(-50%);
}
.theater-btn.left { left: 20px; }
.theater-btn.right { right: 20px; }
.mini-rail {
  display: flex;
  gap: 12px;
  overflow-x: auto;
  padding: 12px 0 4px;
  scrollbar-width: none;
}
.mini-rail::-webkit-scrollbar { display: none; }
.mini-case {
  flex: 0 0 300px;
  min-height: 154px;
  padding: 14px;
  color: #fff;
  background: var(--panel);
  position: relative;
  overflow: hidden;
}
.mini-case div {
  height: 70px;
  margin-bottom: 12px;
  background: radial-gradient(circle at 70% 40%, rgba(30,136,229,.28), transparent 30%), linear-gradient(135deg, #102A43, #0B1B2B);
}
.mini-case strong { display: block; font-size: 16px; }
.mini-case span { display: block; color: rgba(255,255,255,.7); font-size: 13px; margin-top: 4px; }

.center-action { text-align: center; margin-top: 34px; }
.pill-link {
  display: inline-flex;
  padding: 12px 24px;
  border-radius: 999px;
  color: #fff;
  background: var(--red);
  font-weight: 900;
}
.pill-link.dark { background: #111; }

/* Customer & cooperation */
.customer-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px;
}
.customer-grid a {
  min-height: 260px;
  padding: 36px;
  background: #fff;
  transition: transform .22s ease, box-shadow .22s ease;
}
.customer-grid a:hover { transform: translateY(-4px); box-shadow: 0 20px 64px rgba(0,0,0,.08); }
.customer-grid h3 { margin: 0 0 10px; font-size: 36px; line-height: 1.08; letter-spacing: -.04em; }
.customer-grid p { color: var(--muted); font-size: 18px; }

.cooperation-preview { padding: 92px 0; background: #fff; }
.cooperation-preview-inner { display: grid; grid-template-columns: .9fr 1.1fr; gap: 70px; align-items: center; }
.dark-link { display: inline-flex; margin-top: 20px; padding: 12px 24px; color: #fff; background: #111; font-weight: 900; }
.cooperation-mini-list { display: grid; gap: 12px; }
.cooperation-mini-list a {
  display: block;
  padding: 24px 28px;
  background: var(--paper);
  font-size: 22px;
  font-weight: 950;
  transition: transform .2s ease, background .2s ease;
}
.cooperation-mini-list a:hover { transform: translateX(8px); background: #EAF4FF; }

/* Final */
.final-contact { padding: 72px 0; color: #fff; background: var(--black); }
.final-contact-card { display: flex; justify-content: space-between; align-items: center; gap: 36px; padding: 44px 0; }
.final-contact-card h2 { margin: 0; font-size: clamp(34px, 4vw, 56px); line-height: 1.05; }
.final-contact-card p { max-width: 760px; color: rgba(255,255,255,.72); font-size: 18px; }
.final-contact-card a {
  min-width: 160px;
  min-height: 54px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  background: var(--red);
  font-weight: 950;
}

/* Sub pages */
.sub-hero, .detail-hero {
  padding: 100px 0 82px;
  color: #fff;
  background:
    radial-gradient(circle at 80% 35%, rgba(30,136,229,.18), transparent 30%),
    linear-gradient(135deg, var(--black), var(--panel2));
}
.sub-hero span, .detail-hero span, .about-page span, .contact-info span, .content-card span {
  display: inline-block;
  margin-bottom: 12px;
  color: var(--red);
  font-size: 13px;
  letter-spacing: .16em;
  font-weight: 950;
}
.sub-hero h1, .detail-hero h1 {
  max-width: 1040px;
  margin: 0;
  font-size: clamp(40px, 5vw, 70px);
  line-height: 1.04;
  letter-spacing: -.055em;
}
.sub-hero p, .detail-hero p { max-width: 860px; color: rgba(255,255,255,.72); font-size: 19px; }
.listing-page, .solution-page, .industry-page, .case-center-page, .cooperation-page, .about-page, .contact-page { padding: 86px 0; background: var(--paper); }
.listing-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.listing-card {
  min-height: 250px;
  display: block;
  padding: 28px;
  background: #fff;
  transition: transform .22s ease, box-shadow .22s ease;
}
.listing-card:hover { transform: translateY(-5px); box-shadow: 0 20px 64px rgba(0,0,0,.08); }
.listing-card span { color: var(--red); font-size: 13px; letter-spacing: .14em; font-weight: 950; }
.listing-card h3 { margin: 14px 0 10px; font-size: 28px; line-height: 1.12; letter-spacing: -.04em; }
.listing-card p { color: var(--muted); margin: 0 0 20px; }
.listing-card em { color: var(--blue); font-style: normal; font-weight: 900; }

/* Detail */
.detail-hero-grid, .detail-two-col, .contact-layout, .about-layout {
  display: grid;
  grid-template-columns: .95fr 1.05fr;
  gap: 72px;
  align-items: start;
}
.back-link { display: inline-flex; margin-bottom: 22px; color: rgba(255,255,255,.72); font-weight: 850; }
.detail-actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 28px; }
.primary-btn, .outline-btn {
  display: inline-flex;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 0 22px;
  font-weight: 950;
}
.primary-btn { color: #fff; background: var(--red); }
.outline-btn { color: #fff; border: 2px solid rgba(255,255,255,.82); }
.detail-image-card {
  min-height: 360px;
  padding: 28px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.16);
}
.tech-visual {
  min-height: 304px;
  display: grid;
  place-items: center;
  padding: 24px;
  text-align: center;
  color: rgba(255,255,255,.78);
  font-size: 22px;
  font-weight: 950;
  letter-spacing: .08em;
  background:
    linear-gradient(135deg, rgba(255,255,255,.12), rgba(255,255,255,.03)),
    repeating-linear-gradient(90deg, rgba(255,255,255,.10) 0 1px, transparent 1px 42px),
    repeating-linear-gradient(0deg, rgba(255,255,255,.10) 0 1px, transparent 1px 42px);
  border: 1px solid rgba(255,255,255,.13);
}
.detail-section { padding: 86px 0; background: #fff; }
.detail-section.pale, .pale { background: var(--paper); }
.content-card, .side-card, .deliver-grid article {
  padding: 30px;
  background: #fff;
  border: 1px solid rgba(0,0,0,.08);
}
.side-card { position: sticky; top: 164px; }
.side-card h3, .content-card h2 { margin-top: 0; font-size: 30px; line-height: 1.1; }
.side-card li { margin: 12px 0; }
.content-card p { color: var(--muted); font-size: 18px; }
.deliver-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.deliver-grid span, .cooperation-grid span {
  display: block;
  margin-bottom: 12px;
  color: var(--red);
  font-size: 13px;
  letter-spacing: .16em;
  font-weight: 950;
}
.deliver-grid article h3 { margin: 0 0 10px; font-size: 24px; line-height: 1.15; }
.deliver-grid article p { margin: 0; color: var(--muted); }
.case-tags { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 22px; }
.case-tags span {
  margin: 0;
  padding: 8px 12px;
  color: rgba(255,255,255,.78);
  background: rgba(255,255,255,.1);
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 999px;
  letter-spacing: 0;
}
.visual-gallery { padding: 86px 0; color: #fff; background: var(--panel); }
.light-text p { color: rgba(255,255,255,.68); }
.gallery-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.gallery-grid div {
  min-height: 220px;
  display: grid;
  place-items: center;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.14);
  font-weight: 900;
}

/* Cooperation/about/contact */
.cooperation-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; }
.cooperation-grid article { padding: 36px; background: #fff; min-height: 260px; }
.cooperation-grid h2 { margin: 0 0 10px; font-size: 34px; }
.cooperation-grid p { color: var(--muted); font-size: 17px; }
.cooperation-grid a { color: var(--blue); font-weight: 900; }
.about-layout article, .contact-info, .contact-form { background: #fff; padding: 38px; }
.about-layout h2, .contact-info h2 { margin: 0 0 14px; font-size: 40px; line-height: 1.08; }
.about-layout p, .contact-info li { color: var(--muted); font-size: 18px; }
.contact-note { margin-top: 26px; padding: 22px; background: var(--paper); }
.contact-form label { display: grid; gap: 8px; margin-bottom: 16px; font-weight: 900; }
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.contact-form input, .contact-form textarea {
  width: 100%;
  border: 1px solid rgba(0,0,0,.16);
  background: var(--paper);
  min-height: 48px;
  padding: 12px 14px;
  outline: none;
}
.contact-form input:focus, .contact-form textarea:focus { background: #fff; border-color: var(--blue); }
.contact-form button {
  width: 100%;
  height: 54px;
  border: 0;
  color: #fff;
  background: var(--red);
  font-weight: 950;
  cursor: pointer;
}
.contact-form > p { text-align: center; color: var(--muted); }

/* Footer */
.site-footer { color: #fff; background: var(--black); padding: 54px 0 28px; }
.footer-grid {
  display: flex;
  justify-content: space-between;
  gap: 42px;
  padding-bottom: 28px;
  border-bottom: 1px solid rgba(255,255,255,.14);
}
.footer-brand { display: inline-flex; align-items: center; font-size: 20px; font-weight: 950; }
.site-footer p { max-width: 560px; color: rgba(255,255,255,.62); }
.footer-links { display: flex; flex-wrap: wrap; gap: 18px; }
.footer-links a { font-weight: 850; }
.footer-bottom { display: flex; justify-content: space-between; gap: 24px; padding-top: 22px; color: rgba(255,255,255,.54); }
.toast {
  position: fixed;
  z-index: 3000;
  left: 50%;
  bottom: 26px;
  transform: translate(-50%, 28px);
  opacity: 0;
  pointer-events: none;
  padding: 14px 18px;
  border-radius: 999px;
  color: #fff;
  background: rgba(0,0,0,.82);
  transition: .24s ease;
}
.toast.show { opacity: 1; transform: translate(-50%, 0); }

/* Responsive */
@media (max-width: 1100px) {
  .top-header { height: 72px; }
  .header-inner { height: 72px; display: flex; }
  .desktop-nav, .search-trigger span, .header-cta, .full-name { display: none; }
  .short-name { display: inline-flex; font-size: 20px; }
  .mobile-menu-btn { display: block; }
  .header-actions { margin-left: auto; }
  .mega-panel { display: none; }
  .hero-slider { height: calc(100vh - 72px); min-height: 560px; }
  .quick-strip-inner, .final-contact-card, .footer-grid, .footer-bottom { flex-direction: column; align-items: flex-start; }
  .quick-strip-inner { padding: 22px 0; gap: 16px; }
  .apple-grid, .cooperation-preview-inner, .detail-hero-grid, .detail-two-col, .contact-layout, .about-layout { grid-template-columns: 1fr; }
  .deliver-grid, .gallery-grid, .listing-grid { grid-template-columns: repeat(2, 1fr); }
  .cooperation-grid, .customer-grid { grid-template-columns: 1fr; }
  .side-card { position: static; }
}
@media (max-width: 720px) {
  .container { width: min(100% - 32px, var(--container)); }
  .hero-slider { min-height: 620px; }
  .slide-content h1 { font-size: 36px; }
  .slide-content p { font-size: 16px; }
  .slide-actions { flex-direction: column; align-items: flex-start; }
  .art-machine { right: -120px; width: 390px; height: 210px; opacity: .68; }
  .slider-arrow { display: none; }
  .slider-dots { bottom: 22px; }
  .apple-section, .case-theater, .cooperation-preview, .detail-section, .listing-page, .cooperation-page, .about-page, .contact-page { padding: 56px 0; }
  .section-heading h2 { font-size: 34px; }
  .section-heading p { font-size: 16px; }
  .apple-card { min-height: 500px; }
  .apple-copy { padding-top: 42px; }
  .apple-copy h3 { font-size: 34px; }
  .apple-copy p { font-size: 17px; }
  .apple-visual { height: 230px; bottom: 44px; }
  .theater-card { flex-basis: 86vw; height: 430px; }
  .theater-content { left: 28px; right: 28px; bottom: 30px; }
  .theater-content h3 { font-size: 34px; }
  .theater-btn { display: none; }
  .mini-case { flex-basis: 250px; }
  .sub-hero h1, .detail-hero h1 { font-size: 36px; }
  .sub-hero, .detail-hero { padding: 66px 0 54px; }
  .deliver-grid, .gallery-grid, .listing-grid { grid-template-columns: 1fr; }
  .form-row { grid-template-columns: 1fr; gap: 0; }
  .about-layout article, .contact-info, .contact-form, .content-card, .side-card { padding: 26px; }
  .toast { width: calc(100% - 32px); text-align: center; border-radius: 16px; }
}
@media (max-width: 390px) {
  .slide-content h1 { font-size: 32px; }
  .short-name { font-size: 18px; }
}






/* V5.3 visible dual motion carousel */
.theater-stage {
  scroll-behavior: smooth;
  perspective: 1300px;
  padding-top: 14px;
  padding-bottom: 26px;
}

.theater-card {
  opacity: .46;
  transform: scale(.86) translateY(28px) rotateZ(.7deg);
  filter: grayscale(.26) brightness(.76);
  transition:
    opacity .62s ease,
    transform .62s cubic-bezier(.16,.84,.18,1),
    filter .62s ease;
}

.theater-card.is-near {
  opacity: .72;
  transform: scale(.93) translateY(14px) rotateZ(.35deg);
  filter: grayscale(.10) brightness(.88);
}

.theater-card.is-main {
  opacity: 1;
  transform: scale(1.04) translateY(-8px) rotateZ(0deg);
  filter: none;
  box-shadow: 0 30px 80px rgba(6,17,31,.26);
}

.theater-card.is-far {
  opacity: .38;
}

.theater-stage.motion-a .theater-card.is-main {
  transform: scale(1.04) translateY(-8px) rotateZ(0deg);
}

.theater-stage.motion-b .theater-card.is-main {
  transform: scale(1.055) translateY(-14px) rotateZ(-.45deg);
}

.theater-stage.motion-c .theater-card.is-main {
  transform: scale(1.055) translateY(-14px) rotateZ(.45deg);
}

.theater-card.is-main .theater-bg {
  filter: saturate(1.18) contrast(1.08);
}

.theater-card.is-main .theater-bg::before {
  animation: gridFloat 5s ease-in-out infinite alternate;
}

.theater-card.is-main .theater-content {
  animation: contentLift .62s cubic-bezier(.16,.84,.18,1);
}

@keyframes contentLift {
  from { transform: translateY(18px); opacity: .72; }
  to { transform: translateY(0); opacity: 1; }
}

@keyframes gridFloat {
  from { transform: translate3d(-10px, 0, 0) scale(1); }
  to { transform: translate3d(12px, -6px, 0) scale(1.015); }
}

.mini-rail {
  overflow: hidden;
  mask-image: linear-gradient(90deg, transparent 0%, #000 8%, #000 92%, transparent 100%);
}

.mini-track {
  display: flex;
  gap: 12px;
  width: max-content;
  animation: miniMarquee 28s linear infinite;
  will-change: transform;
}

@keyframes miniMarquee {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}

.mini-rail:hover .mini-track {
  animation-duration: 18s;
}

.mini-case {
  flex: 0 0 300px;
  transition: transform .25s ease, opacity .25s ease;
}

.mini-case:hover {
  transform: translateY(-6px) scale(1.025);
}

@media (prefers-reduced-motion: reduce) {
  .theater-card,
  .theater-card.is-main .theater-bg::before,
  .theater-card.is-main .theater-content,
  .mini-track {
    animation: none !important;
    transition: none !important;
  }
}



/* V5.4 brand header refinement */
.brand.brand-stack {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 4px;
  line-height: 1;
  white-space: nowrap;
}

.brand-en {
  color: var(--red);
  font-size: 12px;
  font-weight: 950;
  letter-spacing: .20em;
}

.brand-cn {
  color: #fff;
  font-size: 30px;
  font-weight: 950;
  letter-spacing: .02em;
}

.top-header .brand {
  font-size: initial;
}

.footer-brand {
  font-size: 20px;
}

@media (max-width: 1100px) {
  .brand-cn {
    font-size: 22px;
  }

  .brand-en {
    font-size: 10px;
    letter-spacing: .18em;
  }
}

@media (max-width: 390px) {
  .brand-cn {
    font-size: 20px;
  }

  .brand-en {
    font-size: 9px;
  }
}


/* V5.4 header spacing polish */
.header-inner {
  grid-template-rows: 74px 64px;
}

.desktop-nav {
  height: 64px;
}

@media (max-width: 1100px) {
  .header-inner {
    grid-template-rows: none;
  }
}


/* V5.5 final English brand header */
.brand.brand-word {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  color: #fff;
  font-size: 30px;
  font-weight: 950;
  letter-spacing: .08em;
  line-height: 1;
  white-space: nowrap;
}

.top-header .brand.brand-word {
  font-size: 30px;
}

@media (max-width: 1100px) {
  .brand.brand-word,
  .top-header .brand.brand-word {
    font-size: 22px;
    letter-spacing: .06em;
  }
}

@media (max-width: 390px) {
  .brand.brand-word,
  .top-header .brand.brand-word {
    font-size: 19px;
    letter-spacing: .045em;
  }
}



/* V5.6 live search results */
.search-results {
  margin-top: 22px;
  display: grid;
  gap: 10px;
  max-height: min(42vh, 430px);
  overflow: auto;
  padding-right: 4px;
}

.search-result-item {
  display: block;
  padding: 16px 18px;
  background: rgba(255,255,255,.075);
  border: 1px solid rgba(255,255,255,.10);
  transition: background .2s ease, border-color .2s ease, transform .2s ease;
}

.search-result-item:hover {
  background: rgba(255,255,255,.13);
  border-color: rgba(30,136,229,.55);
  transform: translateX(4px);
}

.search-result-item span {
  display: inline-block;
  margin-bottom: 7px;
  color: var(--red);
  font-size: 12px;
  font-weight: 950;
  letter-spacing: .12em;
}

.search-result-item strong {
  display: block;
  color: #fff;
  font-size: 18px;
  line-height: 1.25;
}

.search-result-item p {
  margin: 7px 0 0;
  color: rgba(255,255,255,.62);
  font-size: 14px;
}

.search-empty {
  padding: 18px;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.10);
}

.search-empty strong {
  color: #fff;
  font-size: 17px;
}

.search-empty p {
  margin: 8px 0 0;
  color: rgba(255,255,255,.62);
}

.search-empty a {
  display: inline-flex;
  margin-top: 12px;
  color: #fff;
  background: var(--red);
  padding: 9px 14px;
  font-weight: 900;
}

@media (max-width: 720px) {
  .search-panel {
    padding-top: 32px;
    align-items: flex-start;
  }

  .search-box {
    padding: 30px 22px;
  }

  .search-box h2 {
    font-size: 30px;
  }

  .search-results {
    max-height: 44vh;
  }
}



/* V5.7 larger case theater */
.case-theater {
  padding-top: 96px;
  padding-bottom: 108px;
}

.theater-wrap {
  margin-top: 34px;
}

.theater-card {
  flex-basis: min(980px, 78vw);
  height: 600px;
}

.theater-stage {
  gap: 22px;
  padding-top: 26px;
  padding-bottom: 36px;
}

.theater-content {
  left: 64px;
  right: 64px;
  bottom: 62px;
}

.theater-content h3 {
  max-width: 760px;
  font-size: clamp(42px, 4.8vw, 68px);
}

.theater-content p {
  font-size: 18px;
  margin-top: 14px;
  margin-bottom: 24px;
}

.theater-content em {
  padding: 13px 22px;
}

.theater-bg::before {
  inset: 52px;
  background-size: 48px 48px;
}

.theater-bg::after {
  right: 74px;
  bottom: 74px;
  width: 270px;
  height: 145px;
}

.theater-btn {
  width: 58px;
  height: 58px;
  font-size: 46px;
}

.mini-rail {
  margin-top: 12px;
  padding-top: 8px;
  padding-bottom: 12px;
}

.mini-track {
  gap: 16px;
}

.mini-case {
  flex-basis: 360px;
  min-height: 210px;
  padding: 18px;
}

.mini-case div {
  height: 110px;
  margin-bottom: 16px;
}

.mini-case strong {
  font-size: 18px;
  line-height: 1.2;
}

.mini-case span {
  margin-top: 8px;
  font-size: 14px;
}

.center-action {
  margin-top: 42px;
}

@media (max-width: 1100px) {
  .theater-card {
    flex-basis: 84vw;
    height: 540px;
  }

  .theater-content {
    left: 44px;
    right: 44px;
    bottom: 48px;
  }

  .mini-case {
    flex-basis: 320px;
    min-height: 190px;
  }

  .mini-case div {
    height: 96px;
  }
}

@media (max-width: 720px) {
  .case-theater {
    padding-top: 64px;
    padding-bottom: 72px;
  }

  .theater-card {
    flex-basis: 88vw;
    height: 470px;
  }

  .theater-stage {
    gap: 14px;
    padding-top: 14px;
    padding-bottom: 22px;
  }

  .theater-content {
    left: 28px;
    right: 28px;
    bottom: 34px;
  }

  .theater-content h3 {
    font-size: 34px;
  }

  .theater-content p {
    font-size: 15px;
  }

  .theater-bg::before {
    inset: 28px;
    background-size: 36px 36px;
  }

  .theater-bg::after {
    right: 34px;
    bottom: 92px;
    width: 160px;
    height: 82px;
  }

  .mini-case {
    flex-basis: 270px;
    min-height: 178px;
    padding: 14px;
  }

  .mini-case div {
    height: 86px;
  }

  .mini-case strong {
    font-size: 16px;
  }

  .mini-case span {
    font-size: 13px;
  }
}



/* V5.8 contact page upgrade */
.contact-hero-v2 {
  padding: 92px 0 72px;
  color: #fff;
  background:
    radial-gradient(circle at 78% 28%, rgba(30,136,229,.24), transparent 28%),
    linear-gradient(135deg, var(--black), var(--panel2));
}

.contact-hero-inner span {
  display: inline-block;
  margin-bottom: 14px;
  color: var(--red);
  font-size: 13px;
  letter-spacing: .18em;
  font-weight: 950;
}

.contact-hero-inner h1 {
  margin: 0;
  max-width: 920px;
  font-size: clamp(42px, 5vw, 72px);
  line-height: 1.02;
  letter-spacing: -.055em;
}

.contact-hero-inner p {
  max-width: 820px;
  margin: 18px 0 0;
  color: rgba(255,255,255,.72);
  font-size: 19px;
}

.contact-page-v2 {
  padding-top: 70px;
  background:
    linear-gradient(180deg, #fff 0%, var(--paper) 100%);
}

.contact-v2-layout {
  display: grid;
  grid-template-columns: .92fr 1.08fr;
  gap: 28px;
  align-items: start;
}

.contact-dark-card {
  position: sticky;
  top: 168px;
  color: #fff;
  background:
    radial-gradient(circle at 90% 10%, rgba(30,136,229,.25), transparent 26%),
    linear-gradient(135deg, var(--panel), #151C25);
  padding: 42px;
  min-height: 760px;
  box-shadow: 0 32px 90px rgba(0,0,0,.18);
}

.contact-kicker,
.form-title-row span {
  display: inline-block;
  margin-bottom: 12px;
  color: var(--red);
  font-size: 13px;
  letter-spacing: .16em;
  font-weight: 950;
}

.contact-dark-card h2,
.form-title-row h2 {
  margin: 0;
  font-size: clamp(34px, 3.4vw, 48px);
  line-height: 1.08;
  letter-spacing: -.04em;
}

.contact-dark-card > div > p {
  margin: 14px 0 0;
  color: rgba(255,255,255,.68);
  font-size: 17px;
}

.contact-check-list {
  display: grid;
  gap: 12px;
  margin-top: 34px;
}

.contact-check-list div {
  padding: 18px 0;
  border-bottom: 1px solid rgba(255,255,255,.13);
}

.contact-check-list b {
  display: block;
  font-size: 17px;
}

.contact-check-list p {
  margin: 6px 0 0;
  color: rgba(255,255,255,.58);
}

.contact-methods {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-top: 30px;
}

.contact-method {
  display: block;
  padding: 18px;
  color: #fff;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.12);
  transition: transform .2s ease, background .2s ease;
}

.contact-method:hover {
  transform: translateY(-3px);
  background: rgba(30,136,229,.24);
}

.contact-method span {
  display: block;
  color: rgba(255,255,255,.62);
  font-size: 13px;
}

.contact-method strong {
  display: block;
  margin-top: 6px;
  font-size: 16px;
}

.qr-card {
  display: grid;
  grid-template-columns: 112px 1fr;
  gap: 18px;
  align-items: center;
  margin-top: 22px;
  padding: 18px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.12);
}

.qr-placeholder {
  width: 112px;
  height: 112px;
  display: grid;
  place-items: center;
  text-align: center;
  color: rgba(255,255,255,.58);
  background:
    linear-gradient(45deg, rgba(255,255,255,.08) 25%, transparent 25%),
    linear-gradient(-45deg, rgba(255,255,255,.08) 25%, transparent 25%),
    linear-gradient(45deg, transparent 75%, rgba(255,255,255,.08) 75%),
    linear-gradient(-45deg, transparent 75%, rgba(255,255,255,.08) 75%);
  background-size: 18px 18px;
  background-position: 0 0, 0 9px, 9px -9px, -9px 0px;
  border: 1px solid rgba(255,255,255,.18);
  font-size: 13px;
  font-weight: 900;
}

.qr-card b {
  display: block;
  font-size: 18px;
}

.qr-card p {
  margin: 6px 0 0;
  color: rgba(255,255,255,.60);
}

.contact-form-panel {
  background: #fff;
  padding: 42px;
  box-shadow: 0 24px 70px rgba(0,0,0,.08);
}

.form-title-row {
  display: flex;
  justify-content: space-between;
  gap: 22px;
  align-items: start;
  margin-bottom: 28px;
}

.form-title-row p {
  margin: 8px 0 0;
  color: var(--muted);
  font-weight: 850;
}

.contact-form-v2 {
  padding: 0;
  background: transparent;
}

.contact-form-v2 label {
  margin-bottom: 18px;
}

.contact-form-v2 input,
.contact-form-v2 textarea,
.contact-form-v2 select {
  width: 100%;
  min-height: 54px;
  padding: 13px 15px;
  border: 1px solid rgba(17,24,39,.16);
  background: #F7F8FA;
  outline: none;
  color: var(--ink);
  transition: border-color .2s ease, background .2s ease, box-shadow .2s ease;
}

.contact-form-v2 textarea {
  resize: vertical;
}

.contact-form-v2 input:focus,
.contact-form-v2 textarea:focus,
.contact-form-v2 select:focus {
  background: #fff;
  border-color: var(--red);
  box-shadow: 0 0 0 4px rgba(30,136,229,.10);
}

.contact-form-v2 button {
  height: 58px;
  background: var(--red);
  font-size: 16px;
}

.contact-form-v2 button:hover {
  background: var(--red2);
}

.form-note {
  margin-top: 14px;
  color: var(--muted);
  text-align: center;
}

.contact-trust-row {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
  margin-top: 28px;
}

.contact-trust-row div {
  padding: 28px;
  background: #fff;
  border: 1px solid rgba(0,0,0,.06);
}

.contact-trust-row span {
  display: block;
  margin-bottom: 10px;
  color: var(--red);
  font-size: 13px;
  letter-spacing: .14em;
  font-weight: 950;
}

.contact-trust-row strong {
  display: block;
  font-size: 20px;
}

.contact-trust-row p {
  margin: 8px 0 0;
  color: var(--muted);
}

.floating-contact-bar {
  position: fixed;
  left: 50%;
  bottom: 22px;
  z-index: 900;
  display: flex;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(6,17,31,.92);
  box-shadow: 0 18px 50px rgba(0,0,0,.22);
  backdrop-filter: blur(12px);
  transform: translateX(-50%);
}

.floating-contact-bar a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 108px;
  height: 44px;
  padding: 0 16px;
  color: #fff;
  font-weight: 900;
  border-right: 1px solid rgba(255,255,255,.12);
}

.floating-contact-bar a:last-child {
  border-right: 0;
  background: var(--red);
}

@media (max-width: 1100px) {
  .contact-v2-layout {
    grid-template-columns: 1fr;
  }

  .contact-dark-card {
    position: static;
    min-height: auto;
  }

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

@media (max-width: 720px) {
  .contact-hero-v2 {
    padding: 62px 0 48px;
  }

  .contact-hero-inner h1 {
    font-size: 38px;
  }

  .contact-dark-card,
  .contact-form-panel {
    padding: 26px;
  }

  .contact-methods {
    grid-template-columns: 1fr;
  }

  .qr-card {
    grid-template-columns: 1fr;
  }

  .form-title-row {
    display: block;
  }

  .floating-contact-bar {
    left: 14px;
    right: 14px;
    transform: none;
  }

  .floating-contact-bar a {
    flex: 1;
    min-width: auto;
    font-size: 14px;
  }
}



/* V6 content completion styles */
.content-subtitle {
  margin: 28px 0 10px;
  font-size: 24px;
  line-height: 1.2;
}
.rich-list {
  margin: 0;
  padding-left: 20px;
  color: var(--muted);
  font-size: 18px;
}
.rich-list li {
  margin: 12px 0;
}
.detail-section .content-card ul.rich-list {
  list-style: square;
}
.detail-section .content-card ul.rich-list li::marker {
  color: var(--red);
}



/* V6.3 four professional sample subpages */
.pro-hero,
.cabinet-hero,
.industry-pro-hero,
.case-pro-hero {
  color:#fff;
  background:
    radial-gradient(circle at 82% 20%, rgba(30,136,229,.24), transparent 28%),
    linear-gradient(135deg, var(--black), #111827);
  padding: 96px 0 88px;
}

.pro-hero-grid,
.cabinet-hero-grid,
.industry-pro-grid,
.case-pro-hero-grid {
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:56px;
  align-items:center;
}

.pro-hero span,
.cabinet-hero span,
.industry-pro-hero span,
.case-pro-hero span,
.pro-intro-white span,
.problem-title span,
.pro-image-text span,
.pro-brand-section span,
.pro-deliver-section span,
.cabinet-overview span,
.cabinet-layout-section span,
.cabinet-test-section span,
.industry-lead-section span,
.industry-pain-photo span,
.industry-role-section span,
.case-background-section span,
.case-solution-section span,
.case-system-section span,
.case-result-section-pro span,
.pro-contact-copy span {
  display:inline-block;
  margin-bottom:14px;
  color: var(--red);
  font-size:13px;
  font-weight:950;
  letter-spacing:.16em;
}

.pro-hero h1,
.cabinet-hero h1,
.industry-pro-hero h1,
.case-pro-hero h1 {
  margin:0;
  font-size:clamp(48px,5.5vw,82px);
  line-height:1.02;
  letter-spacing:-.065em;
}

.pro-hero p,
.cabinet-hero p,
.industry-pro-hero p,
.case-pro-hero p {
  margin:22px 0 0;
  max-width:790px;
  color:rgba(255,255,255,.74);
  font-size:19px;
  line-height:1.8;
}

.pro-hero-actions {
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:30px;
}

.pro-hero-actions a {
  padding:15px 20px;
  color:#fff;
  background:var(--red);
  font-weight:950;
}

.pro-hero-actions a:nth-child(2) {
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.16);
}

.image-slot {
  min-height:240px;
  display:grid;
  place-items:center;
  text-align:center;
  padding:28px;
  border:1px solid rgba(0,0,0,.08);
  font-weight:900;
  position:relative;
  overflow:hidden;
}

.image-slot strong {
  display:block;
  margin-bottom:10px;
  font-size:28px;
  letter-spacing:-.04em;
}

.image-slot p {
  margin:0;
  font-size:15px;
  line-height:1.7;
  opacity:.7;
}

.dark-slot {
  color:#fff;
  background:
    linear-gradient(135deg, rgba(255,255,255,.08), rgba(255,255,255,.02)),
    repeating-linear-gradient(90deg, rgba(255,255,255,.10) 0 1px, transparent 1px 42px),
    repeating-linear-gradient(0deg, rgba(255,255,255,.08) 0 1px, transparent 1px 42px),
    #121923;
  border-color:rgba(255,255,255,.14);
}

.light-slot {
  color:var(--ink);
  background:
    linear-gradient(135deg, rgba(30,136,229,.08), rgba(11,103,178,.05)),
    repeating-linear-gradient(90deg, rgba(0,0,0,.04) 0 1px, transparent 1px 42px),
    repeating-linear-gradient(0deg, rgba(0,0,0,.035) 0 1px, transparent 1px 42px),
    #F5F7FA;
}

.pro-hero-media .image-slot,
.cabinet-hero-photo .image-slot,
.hero-industry-slot,
.case-pro-hero .image-slot {
  min-height:430px;
}

.tall-slot { min-height:520px; }

.pro-intro-white,
.cabinet-overview,
.industry-lead-section,
.case-background-section {
  padding:90px 0;
  background:#fff;
}

.intro-wide {
  max-width:1040px;
}

.intro-wide h2,
.cabinet-overview h2,
.industry-lead-section h2,
.case-background-section h2,
.pro-image-text h2,
.pro-brand-section h2,
.pro-deliver-section h2,
.cabinet-layout-section h2,
.cabinet-test-section h2,
.industry-pain-photo h2,
.industry-role-section h2,
.case-solution-section h2,
.case-system-section h2,
.case-result-section-pro h2,
.pro-contact-copy h2 {
  margin:0;
  color:var(--ink);
  font-size:clamp(34px,3.8vw,58px);
  line-height:1.08;
  letter-spacing:-.045em;
}

.intro-wide p,
.cabinet-overview p,
.industry-lead-section p,
.case-background-section p,
.pro-image-text p,
.pro-brand-section p,
.pro-deliver-section p,
.cabinet-test-section p,
.case-solution-section p,
.case-system-section p,
.case-result-section-pro p,
.pro-contact-copy p {
  margin-top:20px;
  color:var(--muted);
  font-size:18px;
  line-height:1.85;
}

.pro-problem-section,
.pro-flow-section,
.cabinet-quality-section,
.cabinet-process,
.industry-pain-photo,
.application-system-section,
.case-pain-section,
.case-solution-section,
.case-gallery-section {
  padding:90px 0;
  background:var(--paper);
}

.problem-layout,
.cabinet-overview-grid,
.cabinet-layout-grid,
.pain-photo-grid,
.role-grid,
.case-bg-grid,
.solution-detail-grid,
.system-grid,
.result-pro-grid {
  display:grid;
  grid-template-columns:.85fr 1.15fr;
  gap:50px;
  align-items:start;
}

.problem-title h2 {
  margin:0;
  font-size:clamp(34px,3.8vw,56px);
  line-height:1.08;
  letter-spacing:-.04em;
}

.problem-title p {
  color:var(--muted);
  font-size:18px;
  line-height:1.8;
}

.problem-cards,
.quality-grid,
.application-grid,
.case-pain-grid {
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:18px;
}

.problem-cards article,
.quality-grid article,
.application-grid article,
.case-pain-grid article {
  padding:30px;
  background:#fff;
  border:1px solid rgba(0,0,0,.06);
  box-shadow:0 18px 50px rgba(0,0,0,.05);
}

.problem-cards b,
.case-pain-grid b {
  display:block;
  color:var(--red);
  letter-spacing:.12em;
  margin-bottom:22px;
}

.problem-cards h3,
.quality-grid h3,
.application-grid h3,
.case-pain-grid h3 {
  margin:0;
  color:var(--ink);
  font-size:24px;
  line-height:1.18;
}

.problem-cards p,
.quality-grid p,
.application-grid p,
.case-pain-grid p {
  color:var(--muted);
  line-height:1.75;
}

.pro-image-text,
.cabinet-image-text,
.cabinet-test-section,
.industry-role-section,
.pro-related-section,
.industry-case-preview,
.related-service-strip-pro {
  padding:90px 0;
  background:#fff;
}

.image-text-grid,
.test-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:54px;
  align-items:center;
}

.pro-rich-list {
  margin:22px 0 0;
  padding-left:20px;
  color:var(--muted);
  font-size:17px;
  line-height:1.85;
}

.pro-rich-list li {
  margin:10px 0;
}

.pro-flow {
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:14px;
  margin-top:40px;
}

.pro-flow article {
  min-height:250px;
  padding:28px;
  color:#fff;
  background:linear-gradient(135deg,var(--panel),var(--black));
}

.pro-flow span,
.cabinet-process-list b,
.solution-steps span {
  display:block;
  color:var(--red);
  font-weight:950;
  letter-spacing:.12em;
  margin-bottom:24px;
}

.pro-flow h3,
.cabinet-process-list h3,
.solution-steps h3 {
  margin:0;
  font-size:24px;
  line-height:1.2;
}

.pro-flow p,
.cabinet-process-list p,
.solution-steps p {
  color:rgba(255,255,255,.66);
  line-height:1.7;
}

.pro-module-wall,
.pro-brand-section,
.pro-deliver-section,
.cabinet-layout-section,
.cabinet-test-section,
.industry-role-section,
.case-system-section,
.case-result-section-pro {
  padding:90px 0;
}

.pro-module-wall,
.pro-brand-section,
.case-system-section {
  background:#fff;
}

.module-wall-grid,
.brand-grid,
.deliver-layout {
  display:grid;
  grid-template-columns:.75fr 1.25fr;
  gap:48px;
  align-items:start;
}

.module-wall {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
}

.module-wall div,
.deliver-checks div,
.test-list div,
.system-chip-grid div {
  padding:20px;
  color:var(--ink);
  background:#F7F8FA;
  border-left:4px solid var(--red);
  font-weight:950;
  box-shadow:0 12px 28px rgba(0,0,0,.04);
}

.brand-list {
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:18px;
}

.brand-list article {
  padding:28px;
  background:#F7F8FA;
  border:1px solid rgba(0,0,0,.06);
}

.brand-list h3 {
  margin:0;
  font-size:22px;
}

.brand-list p {
  margin-top:12px;
}

.pro-deliver-section,
.cabinet-test-section,
.case-result-section-pro {
  color:#fff;
  background:linear-gradient(135deg,var(--black),var(--panel2));
}

.pro-deliver-section h2,
.cabinet-test-section h2,
.case-result-section-pro h2,
.pro-deliver-section p,
.cabinet-test-section p,
.case-result-section-pro p {
  color:#fff;
}

.pro-deliver-section p,
.cabinet-test-section p,
.case-result-section-pro p,
.case-result-section-pro li {
  color:rgba(255,255,255,.70);
}

.deliver-checks,
.test-list,
.system-chip-grid {
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:12px;
}

.deliver-checks div,
.test-list div {
  background:rgba(255,255,255,.08);
  color:#fff;
  border-color:var(--red);
}

.related-card-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
  margin-top:28px;
}

.related-card-grid a {
  display:block;
  color:var(--ink);
  background:#fff;
  border:1px solid rgba(0,0,0,.08);
  box-shadow:0 18px 50px rgba(0,0,0,.05);
}

.related-card-grid h3 {
  margin:20px 22px 10px;
  font-size:24px;
  line-height:1.2;
}

.related-card-grid p {
  margin:0 22px 24px;
  color:var(--muted);
}

.mini-slot {
  min-height:180px;
  box-shadow:none;
  border:0;
}

.cabinet-zone-map {
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:14px;
  margin-top:30px;
}

.cabinet-zone-map div {
  min-height:110px;
  display:grid;
  place-items:center;
  text-align:center;
  padding:18px;
  color:#fff;
  background:linear-gradient(135deg,var(--panel),var(--black));
  font-weight:950;
}

.cabinet-process-list {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
  margin-top:30px;
}

.cabinet-process-list article {
  padding:28px;
  color:#fff;
  background:linear-gradient(135deg,var(--panel),var(--black));
}

.cabinet-process-list p {
  color:rgba(255,255,255,.66);
}

.industry-alt-bg {
  background:var(--paper);
}

.vertical-points {
  display:grid;
  gap:16px;
  margin-top:28px;
}

.vertical-points article {
  padding:24px;
  background:#fff;
  border-left:4px solid var(--red);
}

.vertical-points b {
  color:var(--red);
}

.vertical-points h3 {
  margin:8px 0 0;
  font-size:24px;
}

.vertical-points p {
  color:var(--muted);
}

.application-grid {
  grid-template-columns:repeat(3,1fr);
  margin-top:34px;
}

.role-cards {
  display:grid;
  gap:18px;
}

.role-cards article {
  padding:30px;
  background:#F7F8FA;
  border:1px solid rgba(0,0,0,.06);
}

.role-cards h3 {
  margin:0;
  font-size:26px;
}

.role-cards p {
  color:var(--muted);
  line-height:1.75;
}

.case-tags {
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:24px;
}

.case-tags span {
  padding:9px 12px;
  color:#fff;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.12);
}

.case-overview-strip {
  background:#fff;
}

.case-overview-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  transform:translateY(-34px);
  box-shadow:0 24px 60px rgba(0,0,0,.12);
}

.case-overview-grid article {
  padding:30px;
  background:#fff;
  border-right:1px solid rgba(0,0,0,.08);
}

.case-overview-grid span {
  color:var(--red);
  font-size:12px;
  font-weight:950;
  letter-spacing:.14em;
}

.case-overview-grid h3 {
  margin:10px 0 0;
  font-size:24px;
}

.case-overview-grid p {
  color:var(--muted);
}

.solution-steps {
  display:grid;
  gap:14px;
}

.solution-steps article {
  padding:26px;
  color:#fff;
  background:linear-gradient(135deg,var(--panel),var(--black));
}

.system-chip-grid {
  margin-top:28px;
}

.case-result-section-pro ul {
  padding-left:20px;
  margin-top:22px;
}

.case-result-section-pro li {
  margin:14px 0;
  font-size:18px;
}

.case-photo-grid {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:16px;
  margin-top:28px;
}

.case-photo-grid .image-slot {
  min-height:220px;
}

.related-service-strip-pro {
  background:#fff;
}

.related-service-strip-pro .container {
  display:flex;
  justify-content:space-between;
  gap:32px;
  align-items:center;
}

.related-service-strip-pro h2 {
  margin:0;
  font-size:36px;
  letter-spacing:-.04em;
}

.related-service-strip-pro div div {
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  justify-content:flex-end;
}

.related-service-strip-pro a {
  padding:12px 14px;
  color:var(--ink);
  background:var(--paper);
  font-weight:900;
}

.pro-contact-final {
  padding:90px 0;
  background:var(--paper);
}

.pro-contact-grid {
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:32px;
  align-items:start;
}

.pro-contact-copy {
  padding:42px;
  color:#fff;
  background:
    radial-gradient(circle at 90% 18%, rgba(30,136,229,.24), transparent 28%),
    linear-gradient(135deg,var(--black),var(--panel2));
}

.pro-contact-copy h2 { color:#fff; }
.pro-contact-copy p { color:rgba(255,255,255,.72); }

.pro-contact-actions {
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:26px;
}

.pro-contact-actions a {
  padding:14px 16px;
  color:#fff;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.12);
  font-weight:900;
}

.pro-contact-actions a:first-child { background:var(--red); }

.pro-mini-form {
  padding:34px;
  background:#fff;
  box-shadow:0 24px 70px rgba(0,0,0,.08);
}

.pro-mini-form label {
  display:block;
  margin-bottom:16px;
  color:var(--ink);
  font-weight:900;
}

.pro-mini-form input,
.pro-mini-form textarea {
  width:100%;
  margin-top:8px;
  padding:14px;
  border:1px solid rgba(17,24,39,.14);
  background:#F7F8FA;
}

.pro-mini-form button {
  width:100%;
  height:56px;
  border:0;
  color:#fff;
  background:var(--red);
  font-weight:950;
  cursor:pointer;
}

@media (max-width:1100px){
  .pro-hero-grid,
  .cabinet-hero-grid,
  .industry-pro-grid,
  .case-pro-hero-grid,
  .problem-layout,
  .cabinet-overview-grid,
  .cabinet-layout-grid,
  .pain-photo-grid,
  .role-grid,
  .case-bg-grid,
  .solution-detail-grid,
  .system-grid,
  .result-pro-grid,
  .image-text-grid,
  .test-grid,
  .module-wall-grid,
  .brand-grid,
  .deliver-layout,
  .pro-contact-grid {
    grid-template-columns:1fr;
  }
  .pro-flow,
  .application-grid,
  .cabinet-process-list,
  .case-photo-grid {
    grid-template-columns:repeat(2,1fr);
  }
  .related-card-grid,
  .case-overview-grid {
    grid-template-columns:1fr;
    transform:none;
    box-shadow:none;
  }
  .related-service-strip-pro .container {
    display:block;
  }
  .related-service-strip-pro div div {
    justify-content:flex-start;
    margin-top:22px;
  }
}

@media (max-width:720px){
  .pro-hero,
  .cabinet-hero,
  .industry-pro-hero,
  .case-pro-hero {
    padding:62px 0;
  }
  .pro-hero h1,
  .cabinet-hero h1,
  .industry-pro-hero h1,
  .case-pro-hero h1 {
    font-size:38px;
  }
  .pro-hero-media .image-slot,
  .cabinet-hero-photo .image-slot,
  .hero-industry-slot,
  .case-pro-hero .image-slot,
  .tall-slot {
    min-height:300px;
  }
  .problem-cards,
  .quality-grid,
  .application-grid,
  .case-pain-grid,
  .pro-flow,
  .module-wall,
  .brand-list,
  .deliver-checks,
  .test-list,
  .system-chip-grid,
  .cabinet-zone-map,
  .cabinet-process-list,
  .case-photo-grid {
    grid-template-columns:1fr;
  }
  .pro-intro-white,
  .cabinet-overview,
  .industry-lead-section,
  .case-background-section,
  .pro-problem-section,
  .pro-flow-section,
  .cabinet-quality-section,
  .cabinet-process,
  .industry-pain-photo,
  .application-system-section,
  .case-pain-section,
  .case-solution-section,
  .case-gallery-section,
  .pro-image-text,
  .cabinet-image-text,
  .cabinet-test-section,
  .industry-role-section,
  .pro-related-section,
  .industry-case-preview,
  .related-service-strip-pro,
  .pro-module-wall,
  .pro-brand-section,
  .pro-deliver-section,
  .cabinet-layout-section,
  .case-system-section,
  .case-result-section-pro,
  .pro-contact-final {
    padding:58px 0;
  }
  .pro-contact-copy,
  .pro-mini-form {
    padding:26px;
  }
}


/* V6.4 FAQ accordion block */
.pro-faq-section {
  padding: 92px 0;
  background: #fff;
}

.pro-faq-heading {
  max-width: 820px;
  margin-bottom: 38px;
}

.pro-faq-heading span {
  display: inline-block;
  margin-bottom: 14px;
  color: var(--red);
  font-size: 13px;
  font-weight: 950;
  letter-spacing: .16em;
}

.pro-faq-heading h2 {
  margin: 0;
  color: var(--ink);
  font-size: clamp(34px, 3.8vw, 56px);
  line-height: 1.08;
  letter-spacing: -.045em;
}

.pro-faq-heading p {
  margin: 18px 0 0;
  color: var(--muted);
  font-size: 18px;
  line-height: 1.8;
}

.pro-faq-list {
  border-top: 2px solid var(--black);
}

.pro-faq-item {
  border-bottom: 1px solid rgba(17,24,39,.28);
}

.pro-faq-item summary {
  list-style: none;
  position: relative;
  padding: 26px 64px 26px 10px;
  color: var(--ink);
  font-size: clamp(22px, 2vw, 30px);
  line-height: 1.2;
  font-weight: 950;
  cursor: pointer;
  transition: background .2s ease, padding-left .2s ease;
}

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

.pro-faq-item summary::after {
  content: "+";
  position: absolute;
  right: 14px;
  top: 50%;
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  transform: translateY(-50%);
  color: var(--ink);
  font-size: 32px;
  line-height: 1;
  font-weight: 400;
}

.pro-faq-item[open] summary {
  padding-left: 22px;
  background: #EAF4FF;
  border-top: 3px solid var(--red);
}

.pro-faq-item[open] summary::after {
  content: "−";
}

.pro-faq-answer {
  max-width: 920px;
  padding: 22px 22px 30px;
}

.pro-faq-answer p {
  margin: 0;
  color: var(--ink);
  font-size: 17px;
  line-height: 1.85;
}

@media (max-width: 720px) {
  .pro-faq-section {
    padding: 58px 0;
  }

  .pro-faq-item summary {
    padding: 22px 54px 22px 8px;
    font-size: 21px;
  }

  .pro-faq-item[open] summary {
    padding-left: 16px;
  }
}


/* V6.5 FAQ refinement: smaller titles, richer answers */
.pro-faq-section {
  padding: 88px 0;
}

.pro-faq-heading {
  max-width: 900px;
  margin-bottom: 34px;
}

.pro-faq-heading h2 {
  font-size: clamp(30px, 3.2vw, 48px);
  line-height: 1.12;
  letter-spacing: -.04em;
}

.pro-faq-heading p {
  max-width: 860px;
  font-size: 16.5px;
  line-height: 1.9;
}

.pro-faq-item summary {
  padding: 22px 62px 22px 10px;
  font-size: clamp(19px, 1.65vw, 25px);
  line-height: 1.28;
  letter-spacing: -.02em;
}

.pro-faq-item summary::after {
  right: 12px;
  width: 30px;
  height: 30px;
  font-size: 26px;
}

.pro-faq-item[open] summary {
  padding-left: 18px;
  background: #EDF6FF;
  border-top: 2px solid var(--red);
}

.pro-faq-answer {
  max-width: 980px;
  padding: 18px 18px 30px;
}

.pro-faq-answer p {
  margin: 0 0 12px;
  color: #374151;
  font-size: 15.5px;
  line-height: 1.95;
}

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

@media (max-width: 720px) {
  .pro-faq-heading h2 {
    font-size: 30px;
  }
  .pro-faq-item summary {
    padding: 20px 52px 20px 8px;
    font-size: 19px;
  }
  .pro-faq-answer p {
    font-size: 15px;
  }
}


/* V6.6 service batch professional pages */
.hero-subtitle-line {
  margin-top: 18px !important;
  color: rgba(255,255,255,.9) !important;
  font-size: clamp(22px,2.3vw,34px) !important;
  line-height: 1.25 !important;
  font-weight: 850;
}

.service-ui-showcase,
.motion-core-section,
.data-architecture-section,
.drawing-document-section,
.site-stage-section,
.line-logic-section,
.diagnosis-section,
.retrofit-compare-section {
  padding: 90px 0;
  background: #fff;
}

.ui-showcase-grid,
.motion-core-grid,
.data-architecture-grid,
.drawing-doc-grid,
.diagnosis-grid,
.retrofit-compare-grid {
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 54px;
  align-items: start;
}

.ui-showcase-grid h2,
.motion-core-grid h2,
.data-architecture-grid h2,
.drawing-doc-grid h2,
.diagnosis-grid h2,
.retrofit-compare-grid h2 {
  margin: 0;
  color: var(--ink);
  font-size: clamp(34px,3.8vw,58px);
  line-height: 1.08;
  letter-spacing: -.045em;
}

.ui-showcase-grid p,
.motion-core-grid p,
.data-architecture-grid p,
.drawing-doc-grid p,
.diagnosis-grid p,
.retrofit-compare-grid p {
  margin-top: 20px;
  color: var(--muted);
  font-size: 18px;
  line-height: 1.85;
}

.ui-showcase-grid span,
.motion-core-grid span,
.data-architecture-grid span,
.drawing-doc-grid span,
.diagnosis-grid span,
.retrofit-compare-grid span,
.site-stage-section span,
.line-logic-section span {
  display: inline-block;
  margin-bottom: 14px;
  color: var(--red);
  font-size: 13px;
  font-weight: 950;
  letter-spacing: .16em;
}

.module-wall.compact {
  grid-template-columns: repeat(2,1fr);
  margin-top: 28px;
}

.motion-card-list,
.diagnosis-matrix {
  display: grid;
  gap: 16px;
}

.motion-card-list article {
  padding: 28px;
  color: #fff;
  background: linear-gradient(135deg,var(--black),var(--panel2));
}

.motion-card-list h3 {
  margin: 0;
  font-size: 26px;
}

.motion-card-list p {
  color: rgba(255,255,255,.7);
  line-height: 1.75;
}

.data-flow-map {
  display: grid;
  grid-template-columns: 1fr 34px 1fr;
  gap: 14px;
  align-items: center;
}

.data-flow-map div {
  min-height: 86px;
  display: grid;
  place-items: center;
  text-align: center;
  color: #fff;
  background: linear-gradient(135deg,var(--panel),var(--black));
  font-weight: 950;
  padding: 16px;
}

.data-flow-map span {
  height: 2px;
  background: var(--red);
  margin: 0;
}

.drawing-list-section {
  padding: 90px 0;
  background: var(--paper);
}

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

.diagnosis-matrix div {
  min-height: 120px;
  display: grid;
  place-items: center;
  padding: 18px;
  color: #fff;
  background: linear-gradient(135deg,var(--panel),var(--black));
  font-weight: 950;
  font-size: 22px;
}

@media (max-width: 1100px) {
  .ui-showcase-grid,
  .motion-core-grid,
  .data-architecture-grid,
  .drawing-doc-grid,
  .diagnosis-grid,
  .retrofit-compare-grid {
    grid-template-columns: 1fr;
  }
  .data-flow-map {
    grid-template-columns: 1fr;
  }
  .data-flow-map span {
    height: 24px;
    width: 2px;
    margin: 0 auto;
  }
}

@media (max-width: 720px) {
  .service-ui-showcase,
  .motion-core-section,
  .data-architecture-section,
  .drawing-document-section,
  .site-stage-section,
  .line-logic-section,
  .diagnosis-section,
  .retrofit-compare-section,
  .drawing-list-section {
    padding: 58px 0;
  }
  .module-wall.compact,
  .diagnosis-matrix {
    grid-template-columns: 1fr;
  }
}


/* V6.7 industry and solution professional batch */
.industry-batch-hero,
.solution-pro-hero {
  color:#fff;
  background:
    radial-gradient(circle at 82% 18%, rgba(30,136,229,.24), transparent 28%),
    linear-gradient(135deg, var(--black), #111827);
  padding: 96px 0 88px;
}

.solution-pro-grid,
.solution-problem-grid {
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:56px;
  align-items:start;
}

.solution-pro-grid h1,
.industry-batch-hero h1 {
  margin:0;
  color:#fff;
  font-size:clamp(48px,5.5vw,82px);
  line-height:1.02;
  letter-spacing:-.065em;
}

.solution-pro-grid p,
.industry-batch-hero p {
  margin:22px 0 0;
  color:rgba(255,255,255,.74);
  font-size:19px;
  line-height:1.8;
}

.solution-pro-grid span,
.solution-problem-grid span,
.solution-method-section span {
  display:inline-block;
  margin-bottom:14px;
  color:var(--red);
  font-size:13px;
  font-weight:950;
  letter-spacing:.16em;
}

.solution-client-card {
  min-height:420px;
  padding:36px;
  color:#fff;
  background:
    repeating-linear-gradient(90deg, rgba(255,255,255,.08) 0 1px, transparent 1px 44px),
    repeating-linear-gradient(0deg, rgba(255,255,255,.08) 0 1px, transparent 1px 44px),
    rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.12);
}

.solution-client-card h3 {
  margin:0 0 24px;
  font-size:32px;
}

.solution-client-card p {
  margin:12px 0;
  padding:15px 18px;
  color:rgba(255,255,255,.84);
  background:rgba(255,255,255,.10);
  font-weight:900;
}

.solution-problem-section,
.solution-method-section {
  padding:90px 0;
  background:#fff;
}

.solution-problem-grid h2 {
  margin:0;
  color:var(--ink);
  font-size:clamp(34px,3.8vw,58px);
  line-height:1.08;
  letter-spacing:-.045em;
}

.solution-problem-grid p {
  margin-top:20px;
  color:var(--muted);
  font-size:18px;
  line-height:1.85;
}

.solution-problem-cards {
  display:grid;
  gap:16px;
}

.solution-problem-cards article {
  padding:26px;
  color:#fff;
  background:linear-gradient(135deg,var(--panel),var(--black));
}

.solution-problem-cards h3 {
  margin:0;
  font-size:24px;
}

.solution-problem-cards p {
  color:rgba(255,255,255,.68);
}

.solution-method-section {
  background:var(--paper);
}

.solution-method-list article p {
  color:rgba(255,255,255,.68);
}

.industry-batch-points article {
  box-shadow:0 16px 45px rgba(0,0,0,.04);
}

.industry-dark-split {
  color:#fff;
  background:linear-gradient(135deg,var(--black),var(--panel2));
}

.industry-dark-split h2 {
  color:#fff;
}

.industry-dark-split p {
  color:rgba(255,255,255,.70);
}

.dark-role-cards article {
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
}

.dark-role-cards h3 {
  color:#fff;
}

.dark-role-cards p {
  color:rgba(255,255,255,.70);
}

@media (max-width:1100px){
  .solution-pro-grid,
  .solution-problem-grid {
    grid-template-columns:1fr;
  }
}

@media (max-width:720px){
  .industry-batch-hero,
  .solution-pro-hero,
  .solution-problem-section,
  .solution-method-section {
    padding:58px 0;
  }
  .solution-client-card {
    min-height:260px;
    padding:26px;
  }
}


/* V6.8 case and remaining solution enhancements */
.case-pro-hero .image-slot strong {
  font-size: 26px;
}

.case-gallery-section .case-photo-grid .image-slot {
  font-weight: 900;
  color: var(--ink);
}

.case-result-section-pro li {
  line-height: 1.65;
}

.solution-pro-hero .solution-client-card p {
  line-height: 1.6;
}


/* V6.9 remaining service pages */
.service-batch-hero .hero-subtitle-line {
  max-width: 780px;
}
.application-system-section .application-grid article p {
  min-height: 70px;
}


/* V7.0 final industry pages */
.industry-batch-hero .hero-industry-slot {
  min-height: 430px;
}
.industry-batch-points article p {
  line-height: 1.75;
}


/* V7.1 real image integration */
.image-real {
  padding: 0 !important;
  overflow: hidden;
  background: #0B1B2B !important;
}

.image-real img {
  width: 100%;
  height: 100%;
  min-height: inherit;
  display: block;
  object-fit: cover;
  object-position: center;
}

.image-real.light-slot,
.image-real.dark-slot {
  background: #0B1B2B !important;
}

.slide.has-slide-image .slide-art {
  background-image:
    radial-gradient(circle at 78% 42%, rgba(30,136,229,.14), transparent 30%),
    var(--slide-image);
  background-size: cover;
  background-position: center;
}

.slide.has-slide-image .art-grid,
.slide.has-slide-image .art-machine,
.slide.has-slide-image .art-line {
  display: none;
}

.listing-card.has-card-image {
  overflow: hidden;
}

.listing-card-media {
  height: 180px;
  margin: -26px -26px 22px;
  overflow: hidden;
  background: #111827;
}

.listing-card-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .35s ease;
}

.listing-card:hover .listing-card-media img {
  transform: scale(1.045);
}

.apple-visual.has-visual-image {
  padding: 0;
  overflow: hidden;
  background: #111827;
}

.apple-visual.has-visual-image img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.theater-bg.has-theater-image {
  background-image:
    linear-gradient(180deg, rgba(6,17,31,.05), rgba(6,17,31,.62)),
    var(--theater-image);
  background-size: cover;
  background-position: center;
}

.theater-bg.has-theater-image::before,
.theater-bg.has-theater-image::after {
  display: none;
}

.mini-case div.has-mini-image {
  background-image:
    linear-gradient(180deg, rgba(6,17,31,.05), rgba(6,8,13,.45)),
    var(--mini-image);
  background-size: cover;
  background-position: center;
}

.contact-hero-image {
  position: relative;
  overflow: hidden;
  background:
    linear-gradient(90deg, rgba(6,8,13,.94), rgba(6,8,13,.70), rgba(6,8,13,.35)),
    url("../assets/images/site/contact_qr_background.jpg") center/cover no-repeat !important;
}

@media (max-width: 720px) {
  .listing-card-media {
    height: 150px;
  }
}


/* V7.2 cooperation + about pages and rich mega menus */
.mega-body-v72 {
  display: grid;
  gap: 34px;
}

.mega-rich-head-v72 {
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: 34px;
  padding-bottom: 24px;
  border-bottom: 1px solid rgba(255,255,255,.16);
}

.mega-rich-head-v72 p {
  max-width: 760px;
  margin: 0;
  color: rgba(255,255,255,.72);
  font-size: 18px;
  line-height: 1.75;
}

.mega-cta-v72 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0 22px;
  color: #fff !important;
  background: var(--red);
  font-weight: 950;
  white-space: nowrap;
}

.mega-feature-grid-v72 {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.mega-feature-card-v72 {
  display: block;
  min-height: 150px;
  padding: 22px;
  color: #fff;
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.12);
}

.mega-feature-card-v72 b {
  display: block;
  margin-bottom: 12px;
  font-size: 21px;
  line-height: 1.25;
}

.mega-feature-card-v72 p {
  margin: 0;
  color: rgba(255,255,255,.66);
  font-size: 14.5px;
  line-height: 1.65;
}

.mega-columns-v72 {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 42px;
}

.mega-column a strong {
  display: block;
  color: inherit;
}

.mega-column a small {
  display: block;
  margin-top: 5px;
  color: rgba(255,255,255,.48);
  font-size: 12.5px;
  line-height: 1.55;
  font-weight: 500;
}

.coop-hero-v72,
.about-hero-v72 {
  padding: 108px 0 92px;
  color: #fff;
  background:
    radial-gradient(circle at 82% 18%, rgba(30,136,229,.26), transparent 28%),
    linear-gradient(135deg, var(--black), #111827);
}

.coop-hero-grid-v72,
.about-hero-grid-v72 {
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  gap: 58px;
  align-items: center;
}

.coop-hero-v72 span,
.about-hero-v72 span,
.coop-flow-v72 span,
.coop-prepare-v72 span,
.coop-boundary-v72 span,
.coop-final-cta-v72 span,
.about-position-v72 span,
.about-clients-v72 span,
.about-standard-v72 span,
.about-region-v72 span,
.about-final-cta-v72 span {
  display: inline-block;
  margin-bottom: 16px;
  color: var(--red);
  font-size: 13px;
  font-weight: 950;
  letter-spacing: .16em;
}

.coop-hero-v72 h1,
.about-hero-v72 h1 {
  margin: 0;
  font-size: clamp(46px,5.6vw,86px);
  line-height: 1.02;
  letter-spacing: -.065em;
}

.coop-hero-v72 p,
.about-hero-v72 p {
  max-width: 780px;
  margin: 24px 0 0;
  color: rgba(255,255,255,.72);
  font-size: 19px;
  line-height: 1.85;
}

.coop-hero-actions-v72,
.about-hero-actions-v72 {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 34px;
}

.coop-hero-actions-v72 a,
.about-hero-actions-v72 a,
.coop-final-cta-v72 a,
.about-final-cta-v72 a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 24px;
  color: #fff;
  background: var(--red);
  font-weight: 950;
}

.coop-hero-actions-v72 a:nth-child(2),
.about-hero-actions-v72 a:nth-child(2) {
  background: transparent;
  border: 1px solid rgba(255,255,255,.34);
}

.coop-hero-card-v72,
.about-hero-image-v72,
.about-standard-image-v72 {
  position: relative;
  min-height: 460px;
  overflow: hidden;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.12);
}

.coop-hero-card-v72 img,
.about-hero-image-v72 img,
.about-standard-image-v72 img {
  width: 100%;
  height: 100%;
  min-height: inherit;
  display: block;
  object-fit: cover;
}

.coop-hero-card-v72 > div {
  position: absolute;
  left: 24px;
  right: 24px;
  bottom: 24px;
  padding: 20px;
  color: #fff;
  background: rgba(6,16,42,.78);
  backdrop-filter: blur(8px);
}

.coop-hero-card-v72 b {
  display: block;
  margin-bottom: 8px;
  color: var(--red);
  letter-spacing: .14em;
}

.coop-hero-card-v72 p {
  margin: 0;
  font-size: 15px;
  line-height: 1.6;
}

.coop-models-v72,
.coop-flow-v72,
.coop-prepare-v72,
.coop-boundary-v72,
.about-position-v72,
.about-capability-v72,
.about-clients-v72,
.about-standard-v72,
.about-region-v72 {
  padding: 92px 0;
  background: #fff;
}

.coop-model-grid-v72 {
  display: grid;
  grid-template-columns: repeat(5, minmax(0,1fr));
  gap: 14px;
  margin-top: 36px;
}

.coop-model-grid-v72 article {
  padding: 26px 22px;
  color: #fff;
  background: linear-gradient(135deg,var(--panel),var(--black));
  min-height: 420px;
  display: flex;
  flex-direction: column;
}

.coop-model-grid-v72 article span {
  color: var(--red);
  font-size: 13px;
  font-weight: 950;
  letter-spacing: .14em;
}

.coop-model-grid-v72 h3 {
  margin: 24px 0 14px;
  font-size: 26px;
  line-height: 1.15;
}

.coop-model-grid-v72 p {
  color: rgba(255,255,255,.68);
  line-height: 1.75;
}

.coop-model-grid-v72 ul {
  margin: 18px 0 24px;
  padding-left: 18px;
  color: rgba(255,255,255,.78);
  line-height: 1.9;
}

.coop-model-grid-v72 a {
  margin-top: auto;
  color: #fff;
  font-weight: 950;
  border-top: 1px solid rgba(255,255,255,.18);
  padding-top: 18px;
}

.coop-flow-v72,
.about-capability-v72,
.about-standard-v72 {
  background: var(--paper);
}

.coop-flow-grid-v72,
.coop-prepare-grid-v72,
.boundary-grid-v72,
.about-position-grid-v72,
.about-clients-grid-v72,
.about-standard-grid-v72 {
  display: grid;
  grid-template-columns: .85fr 1.15fr;
  gap: 56px;
  align-items: start;
}

.coop-flow-grid-v72 h2,
.coop-prepare-grid-v72 h2,
.boundary-grid-v72 h2,
.about-position-grid-v72 h2,
.about-clients-grid-v72 h2,
.about-standard-grid-v72 h2,
.about-region-v72 h2,
.coop-final-cta-v72 h2,
.about-final-cta-v72 h2 {
  margin: 0;
  color: var(--ink);
  font-size: clamp(34px,3.8vw,58px);
  line-height: 1.08;
  letter-spacing: -.045em;
}

.coop-flow-grid-v72 p,
.coop-prepare-grid-v72 p,
.boundary-grid-v72 p,
.about-position-grid-v72 p,
.about-clients-grid-v72 p,
.about-standard-grid-v72 p,
.about-region-v72 p,
.coop-final-cta-v72 p,
.about-final-cta-v72 p {
  margin-top: 20px;
  color: var(--muted);
  font-size: 18px;
  line-height: 1.85;
}

.coop-flow-list-v72,
.about-position-points-v72,
.boundary-cards-v72,
.client-type-list-v72 {
  display: grid;
  gap: 16px;
}

.coop-flow-list-v72 article,
.about-position-points-v72 article,
.boundary-cards-v72 article,
.client-type-list-v72 article {
  padding: 26px;
  background: #fff;
  border: 1px solid rgba(17,24,39,.10);
  box-shadow: 0 18px 50px rgba(17,24,39,.06);
}

.coop-flow-list-v72 b,
.about-position-points-v72 b {
  color: var(--red);
  font-size: 13px;
  letter-spacing: .14em;
}

.coop-flow-list-v72 h3,
.about-position-points-v72 h3,
.boundary-cards-v72 h3,
.client-type-list-v72 h3 {
  margin: 12px 0 8px;
  color: var(--ink);
  font-size: 24px;
}

.coop-flow-list-v72 p,
.about-position-points-v72 p,
.boundary-cards-v72 p,
.client-type-list-v72 p {
  margin: 0;
  font-size: 15.5px;
  line-height: 1.75;
}

.prep-list-v72 {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 14px;
}

.prep-list-v72 div {
  min-height: 86px;
  display: flex;
  align-items: center;
  padding: 20px;
  color: #fff;
  background: linear-gradient(135deg,var(--panel),var(--black));
  font-size: 18px;
  font-weight: 950;
}

.coop-boundary-v72 {
  background: #fff;
}

.boundary-cards-v72 article {
  background: var(--paper);
}

.coop-final-cta-v72,
.about-final-cta-v72 {
  padding: 92px 0;
  color: #fff;
  background: linear-gradient(135deg,var(--black),#111827);
}

.coop-final-cta-v72 h2,
.about-final-cta-v72 h2 {
  max-width: 980px;
  color: #fff;
}

.coop-final-cta-v72 p,
.about-final-cta-v72 p {
  max-width: 860px;
  color: rgba(255,255,255,.70);
}

.about-cap-grid-v72 {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 18px;
  margin-top: 36px;
}

.about-cap-grid-v72 article {
  min-height: 220px;
  padding: 28px;
  color: #fff;
  background: linear-gradient(135deg,var(--panel),var(--black));
}

.about-cap-grid-v72 h3 {
  margin: 0 0 14px;
  font-size: 25px;
}

.about-cap-grid-v72 p {
  margin: 0;
  color: rgba(255,255,255,.68);
  line-height: 1.75;
}

.about-standard-grid-v72 ul {
  margin: 24px 0 0;
  padding-left: 18px;
  color: var(--ink);
  line-height: 2;
  font-weight: 750;
}

.about-region-v72 {
  background: #fff;
}

.about-region-v72 .container {
  max-width: 980px;
}

@media (max-width: 1180px) {
  .coop-model-grid-v72,
  .mega-feature-grid-v72 {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
  .coop-model-grid-v72 article {
    min-height: auto;
  }
}

@media (max-width: 980px) {
  .coop-hero-grid-v72,
  .about-hero-grid-v72,
  .coop-flow-grid-v72,
  .coop-prepare-grid-v72,
  .boundary-grid-v72,
  .about-position-grid-v72,
  .about-clients-grid-v72,
  .about-standard-grid-v72,
  .mega-columns-v72,
  .mega-rich-head-v72 {
    grid-template-columns: 1fr;
    display: grid;
  }
  .about-cap-grid-v72 {
    grid-template-columns: 1fr;
  }
  .mega-rich-head-v72 {
    align-items: start;
  }
}

@media (max-width: 720px) {
  .coop-hero-v72,
  .about-hero-v72,
  .coop-models-v72,
  .coop-flow-v72,
  .coop-prepare-v72,
  .coop-boundary-v72,
  .about-position-v72,
  .about-capability-v72,
  .about-clients-v72,
  .about-standard-v72,
  .about-region-v72,
  .coop-final-cta-v72,
  .about-final-cta-v72 {
    padding: 58px 0;
  }
  .coop-hero-card-v72,
  .about-hero-image-v72,
  .about-standard-image-v72 {
    min-height: 300px;
  }
  .coop-model-grid-v72,
  .mega-feature-grid-v72,
  .prep-list-v72 {
    grid-template-columns: 1fr;
  }
  .mega-feature-card-v72 {
    min-height: auto;
  }
}


/* V7.3 minimal premium cooperation + about */
.minimal-hero-v73 { min-height: 640px; display:flex; align-items:center; color:#fff; background: radial-gradient(circle at 80% 20%, rgba(30,136,229,.18), transparent 30%), linear-gradient(135deg,#06111F,#111827 70%,#0D2033); }
.minimal-hero-inner-v73 { max-width:1160px; }
.minimal-hero-v73 span,.minimal-section-title-v73 span,.minimal-two-col-v73 span,.minimal-note-inner-v73 span,.minimal-final-v73 span,.big-image-placeholder-v73 span{display:inline-block;margin-bottom:16px;color:var(--red);font-size:13px;font-weight:950;letter-spacing:.16em;}
.minimal-hero-v73 h1{max-width:980px;margin:0;font-size:clamp(54px,7vw,112px);line-height:.96;letter-spacing:-.075em;}
.minimal-hero-v73 p{max-width:790px;margin:30px 0 0;color:rgba(255,255,255,.72);font-size:20px;line-height:1.85;}
.minimal-actions-v73{display:flex;flex-wrap:wrap;gap:14px;margin-top:38px;}
.minimal-actions-v73 a,.minimal-final-v73 a{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 26px;color:#fff;background:var(--red);font-weight:950;}
.minimal-actions-v73 a:nth-child(2){background:transparent;border:1px solid rgba(255,255,255,.34);}
.minimal-types-v73,.minimal-prepare-v73,.minimal-note-v73,.minimal-big-image-v73,.about-simple-position-v73,.about-simple-clients-v73,.about-simple-standard-v73{padding:92px 0;background:#fff;}
.about-simple-position-v73,.about-simple-standard-v73,.minimal-prepare-v73{background:var(--paper);}
.minimal-section-title-v73{max-width:820px;margin-bottom:36px;}
.minimal-section-title-v73 h2,.minimal-two-col-v73 h2,.minimal-note-inner-v73 h2,.minimal-final-v73 h2{margin:0;color:var(--ink);font-size:clamp(36px,4.2vw,68px);line-height:1.04;letter-spacing:-.055em;}
.minimal-section-title-v73 p,.minimal-two-col-v73 p,.minimal-note-inner-v73 p{margin-top:20px;color:var(--muted);font-size:18px;line-height:1.85;}
.minimal-card-grid-v73{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;}
.minimal-card-grid-v73 article{min-height:320px;padding:28px;color:#fff;background:linear-gradient(135deg,var(--panel),var(--black));display:flex;flex-direction:column;}
.minimal-card-grid-v73 b{color:var(--red);font-size:13px;letter-spacing:.14em;}
.minimal-card-grid-v73 h3{margin:42px 0 14px;font-size:28px;line-height:1.12;}
.minimal-card-grid-v73 p{color:rgba(255,255,255,.68);line-height:1.78;}
.minimal-card-grid-v73 a{margin-top:auto;padding-top:18px;color:#fff;border-top:1px solid rgba(255,255,255,.18);font-weight:950;}
.minimal-two-col-v73{display:grid;grid-template-columns:.9fr 1.1fr;gap:64px;align-items:start;}
.minimal-info-list-v73{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.minimal-info-list-v73 div{min-height:76px;display:flex;align-items:center;padding:18px 20px;color:var(--ink);background:#fff;border:1px solid rgba(17,24,39,.10);font-size:18px;font-weight:900;}
.minimal-note-v73{background:#fff;}.minimal-note-inner-v73{max-width:900px;}.minimal-faq-v73{background:var(--paper);}.minimal-big-image-v73{background:#fff;}
.big-image-placeholder-v73{min-height:460px;display:flex;flex-direction:column;justify-content:flex-end;padding:48px;color:#fff;background:linear-gradient(180deg,rgba(6,16,42,.08),rgba(6,16,42,.88)),repeating-linear-gradient(90deg,rgba(255,255,255,.08) 0 1px,transparent 1px 72px),repeating-linear-gradient(0deg,rgba(255,255,255,.08) 0 1px,transparent 1px 72px),linear-gradient(135deg,#111827,#1F2937);border:1px solid rgba(17,24,39,.12);}
.big-image-placeholder-v73 h2{max-width:920px;margin:0;color:#fff;font-size:clamp(34px,4vw,64px);line-height:1.05;letter-spacing:-.045em;}
.big-image-placeholder-v73 p{max-width:680px;margin:18px 0 0;color:rgba(255,255,255,.70);font-size:17px;line-height:1.7;}
.minimal-final-v73{padding:92px 0;color:#fff;background:linear-gradient(135deg,#06111F,#111827);}.minimal-final-v73 h2{max-width:980px;color:#fff;}.minimal-final-v73 a{margin-top:30px;}
@media(max-width:1080px){.minimal-card-grid-v73{grid-template-columns:repeat(2,minmax(0,1fr));}.minimal-two-col-v73{grid-template-columns:1fr;gap:32px;}}
@media(max-width:720px){.minimal-hero-v73{min-height:560px;}.minimal-types-v73,.minimal-prepare-v73,.minimal-note-v73,.minimal-big-image-v73,.about-simple-position-v73,.about-simple-clients-v73,.about-simple-standard-v73,.minimal-final-v73{padding:58px 0;}.minimal-card-grid-v73,.minimal-info-list-v73{grid-template-columns:1fr;}.minimal-card-grid-v73 article{min-height:auto;}.big-image-placeholder-v73{min-height:320px;padding:28px;}}


/* V7.4 clean mega menu without repeated top cards */
.mega-columns {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 52px;
  align-items: start;
}

.mega-column a strong {
  display: block;
  color: inherit;
}

.mega-column a small {
  display: block;
  margin-top: 6px;
  color: rgba(255,255,255,.50);
  font-size: 13px;
  line-height: 1.55;
  font-weight: 500;
}

@media (max-width: 980px) {
  .mega-columns {
    grid-template-columns: 1fr;
    gap: 28px;
  }
}


/* V7.5 logo color + lighter mega menu refinement */
.brand.brand-word,
.top-header .brand.brand-word {
  display: inline-flex;
  align-items: baseline;
  gap: .28em;
  color: #fff;
  font-size: 29px;
  font-weight: 950;
  letter-spacing: .075em;
  line-height: 1;
  white-space: nowrap;
}

.brand-word .brand-main,
.brand-word .brand-accent {
  display: inline-block;
  transition: color .22s ease, opacity .22s ease;
}

.brand-word .brand-main {
  color: #fff;
}

.brand-word .brand-accent {
  color: #fff;
}

body.inner-page .brand-word .brand-accent {
  color: var(--red);
}

body.inner-page .brand-word .brand-main {
  color: #fff;
}

.brand-word:hover .brand-accent {
  color: var(--red);
}

.mega-content {
  background: rgba(7, 13, 22, .94);
  backdrop-filter: blur(18px);
}

.mega-columns {
  gap: 36px;
}

.mega-column {
  padding: 22px 24px 20px;
  background: rgba(255,255,255,.035);
  border: 1px solid rgba(255,255,255,.08);
}

.mega-column h3 {
  margin-bottom: 13px;
  font-size: 15.5px;
  line-height: 1.2;
  font-weight: 900;
  color: rgba(255,255,255,.96);
}

.mega-column a {
  padding: 14px 0;
  min-height: auto;
  border-bottom-color: rgba(255,255,255,.10);
}

.mega-column a strong {
  font-size: 15px;
  line-height: 1.35;
  font-weight: 850;
}

.mega-column a small {
  margin-top: 4px;
  font-size: 12px;
  line-height: 1.5;
  color: rgba(255,255,255,.42);
}

.mega-column a:hover {
  background: rgba(255,255,255,.035);
  padding-left: 8px;
}

.mega-feature-card-v72 {
  background: rgba(255,255,255,.045);
  border-color: rgba(255,255,255,.10);
}

.mega-feature-card-v72 b {
  font-size: 17px;
}

.mega-feature-card-v72 p {
  font-size: 12.5px;
}

@media (max-width: 1100px) {
  .brand.brand-word,
  .top-header .brand.brand-word {
    font-size: 22px;
    letter-spacing: .055em;
  }
}

@media (max-width: 390px) {
  .brand.brand-word,
  .top-header .brand.brand-word {
    font-size: 18px;
    letter-spacing: .04em;
    gap: .2em;
  }
}

/* V7.6 premium light mega menu refinement */
.mega-content {
  background: rgba(7, 13, 22, .88);
  backdrop-filter: blur(22px) saturate(115%);
  -webkit-backdrop-filter: blur(22px) saturate(115%);
  border-top-color: rgba(255,255,255,.07);
}

.mega-backdrop {
  background: rgba(0,0,0,.08);
}

.mega-inner {
  padding: 46px 0 64px;
  max-width: 1280px;
}

.mega-top {
  margin-bottom: 30px;
  padding-bottom: 22px;
  border-bottom: 1px solid rgba(255,255,255,.08);
}

.mega-kicker {
  margin-bottom: 10px;
  font-size: 11px;
  letter-spacing: .22em;
  opacity: .92;
}

.mega-top h2 {
  font-size: clamp(34px, 3.1vw, 42px);
  letter-spacing: -.035em;
}

.mega-close {
  font-size: 46px;
  opacity: .82;
  transition: opacity .2s ease, transform .2s ease;
}

.mega-close:hover {
  opacity: 1;
  transform: rotate(4deg);
}

.mega-columns {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 58px;
  align-items: start;
}

.mega-column {
  padding: 0;
  background: transparent;
  border: 0;
}

.mega-column h3 {
  margin: 0 0 18px;
  padding-bottom: 12px;
  font-size: 14px;
  line-height: 1.2;
  font-weight: 900;
  letter-spacing: .02em;
  color: rgba(255,255,255,.92);
  border-bottom: 1px solid rgba(255,255,255,.70);
}

.mega-column a {
  position: relative;
  padding: 13px 0 14px;
  color: rgba(255,255,255,.82);
  border-bottom: 1px solid rgba(255,255,255,.075);
  transition: color .2s ease, padding-left .2s ease, opacity .2s ease;
}

.mega-column a strong {
  font-size: 14px;
  line-height: 1.35;
  font-weight: 800;
  letter-spacing: -.01em;
}

.mega-column a small {
  margin-top: 4px;
  font-size: 11.5px;
  line-height: 1.55;
  color: rgba(255,255,255,.36);
  font-weight: 500;
}

.mega-column a:hover {
  color: #fff;
  padding-left: 10px;
  background: transparent;
}

.mega-column a:hover::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 4px;
  height: 4px;
  transform: translateY(-50%);
  border-radius: 999px;
  background: var(--red);
}

.mega-feature-card-v72,
.mega-rich-head-v72,
.mega-cta-v72 {
  background: rgba(255,255,255,.028);
  border-color: rgba(255,255,255,.06);
}

@media (max-width: 980px) {
  .mega-inner {
    padding: 34px 0 48px;
  }

  .mega-columns {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .mega-column h3 {
    margin-bottom: 10px;
  }
}


/* V7.7 homepage image preview refinements */
.hero-slide img,
.card-image img,
.theater-image img,
.mini-case img,
.image-real img {
  image-rendering: auto;
}
.hero-slide img {
  object-position: center center;
}


/* V7.8 homepage hero real image fix */
.slide-photo-v78 {
  position: absolute;
  inset: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center center;
  opacity: .92;
  transform: scale(1.01);
}

.slide.has-slide-image .slide-art {
  display: none !important;
}

.slide.has-slide-image .slide-overlay {
  z-index: 2;
  background:
    linear-gradient(90deg, rgba(6,17,31,.92) 0%, rgba(6,8,13,.76) 34%, rgba(6,17,31,.36) 62%, rgba(6,8,13,.16) 100%),
    linear-gradient(0deg, rgba(6,17,31,.36), rgba(6,8,13,.04));
}

.slide.has-slide-image .slide-content {
  z-index: 3;
}

@media (max-width: 760px) {
  .slide.has-slide-image .slide-overlay {
    background:
      linear-gradient(90deg, rgba(6,8,13,.90), rgba(6,17,31,.62)),
      linear-gradient(0deg, rgba(6,8,13,.42), rgba(6,8,13,.12));
  }
  .slide-photo-v78 {
    object-position: center center;
  }
}


/* V7.8.4 case detail hero full background */
.case-hero-full-bg-v784 {
  position: relative;
  min-height: min(760px, calc(100vh - 88px));
  padding: 150px 0 148px;
  display: flex;
  align-items: center;
  overflow: hidden;
  color: #fff;
  background: #06111F;
}

.case-hero-full-bg-v784::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background-image: var(--case-hero-image);
  background-size: cover;
  background-position: center right;
  background-repeat: no-repeat;
  transform: scale(1.015);
}

.case-hero-full-bg-v784::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(90deg, rgba(7,13,22,.95) 0%, rgba(7,13,22,.86) 34%, rgba(7,13,22,.48) 62%, rgba(7,13,22,.18) 100%),
    linear-gradient(0deg, rgba(7,13,22,.42), rgba(7,13,22,.06));
}

.case-hero-full-inner-v784 {
  position: relative;
  z-index: 2;
  display: block !important;
}

.case-hero-full-inner-v784 > div:first-child {
  max-width: 780px;
}

.case-hero-full-bg-v784 .back-link {
  color: rgba(255,255,255,.78);
}

.case-hero-full-bg-v784 .back-link:hover {
  color: #fff;
}

.case-hero-full-bg-v784 h1 {
  color: #fff;
  text-shadow: 0 18px 56px rgba(0,0,0,.38);
}

.case-hero-full-bg-v784 p {
  color: rgba(255,255,255,.78);
}

.case-hero-full-bg-v784 .case-tags span {
  color: #fff;
  background: rgba(255,255,255,.12);
  border-color: rgba(255,255,255,.20);
  backdrop-filter: blur(6px);
}

.case-hero-full-bg-v784 + .case-overview-strip {
  position: relative;
  z-index: 3;
  margin-top: -64px;
}

@media (max-width: 980px) {
  .case-hero-full-bg-v784 {
    min-height: 620px;
    padding: 110px 0 120px;
  }

  .case-hero-full-bg-v784::before {
    background-position: center center;
  }

  .case-hero-full-bg-v784::after {
    background:
      linear-gradient(90deg, rgba(7,13,22,.94), rgba(7,13,22,.68)),
      linear-gradient(0deg, rgba(7,13,22,.48), rgba(7,13,22,.18));
  }
}

@media (max-width: 720px) {
  .case-hero-full-bg-v784 {
    min-height: 560px;
    padding: 92px 0 104px;
  }

  .case-hero-full-bg-v784 + .case-overview-strip {
    margin-top: -38px;
  }
}


/* V7.8.6 case detail project photo wall */
.case-gallery-wall-v786 {
  padding: 96px 0 108px;
  background: #fff;
}

.case-gallery-head-v786 {
  max-width: 920px;
  margin-bottom: 34px;
}

.case-gallery-head-v786 span {
  display: inline-block;
  margin-bottom: 14px;
  color: var(--red);
  font-size: 13px;
  font-weight: 950;
  letter-spacing: .16em;
}

.case-gallery-head-v786 h2 {
  margin: 0;
  color: var(--ink);
  font-size: clamp(38px, 5vw, 72px);
  line-height: 1.02;
  letter-spacing: -.055em;
}

.case-gallery-head-v786 p {
  max-width: 720px;
  margin: 18px 0 0;
  color: var(--muted);
  font-size: 18px;
  line-height: 1.75;
}

.photo-wall-grid-v786 {
  display: grid;
  grid-template-columns: 1.35fr .9fr;
  grid-template-rows: repeat(3, 190px);
  gap: 0;
  min-height: 570px;
  background: #0B1B2B;
  overflow: hidden;
}

.photo-wall-item-v786 {
  position: relative;
  margin: 0;
  min-height: 0;
  overflow: hidden;
  background: #0B1B2B;
  cursor: pointer;
}

.photo-wall-item-v786.is-large {
  grid-row: 1 / span 3;
}

.photo-wall-item-v786 img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transform: scale(1.01);
  transition: transform .55s ease, filter .55s ease;
}

.photo-wall-item-v786::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(6,8,13,.03) 0%, rgba(6,8,13,.18) 48%, rgba(6,17,31,.78) 100%);
  transition: background .35s ease;
  z-index: 1;
}

.photo-wall-item-v786 figcaption {
  position: absolute;
  left: 28px;
  bottom: 26px;
  z-index: 2;
  color: #fff;
  transform: translateY(0);
  transition: transform .35s ease;
}

.photo-wall-item-v786 figcaption span {
  display: block;
  margin-bottom: 8px;
  color: rgba(255,255,255,.70);
  font-size: 12px;
  font-weight: 950;
  letter-spacing: .16em;
}

.photo-wall-item-v786 figcaption strong {
  display: block;
  color: #fff;
  font-size: 24px;
  line-height: 1.1;
  letter-spacing: -.02em;
}

.photo-wall-item-v786 em {
  position: absolute;
  right: 24px;
  bottom: 24px;
  z-index: 2;
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  color: #111827;
  background: #fff;
  border-radius: 999px;
  font-style: normal;
  font-weight: 950;
  opacity: 0;
  transform: translate(8px, 8px);
  transition: opacity .35s ease, transform .35s ease;
}

.photo-wall-item-v786:hover img {
  transform: scale(1.065);
  filter: saturate(1.04) contrast(1.03);
}

.photo-wall-item-v786:hover::after {
  background:
    linear-gradient(180deg, rgba(6,17,31,.00) 0%, rgba(6,17,31,.26) 45%, rgba(6,8,13,.88) 100%);
}

.photo-wall-item-v786:hover figcaption {
  transform: translateY(-8px);
}

.photo-wall-item-v786:hover em {
  opacity: 1;
  transform: translate(0, 0);
}

@media (max-width: 980px) {
  .photo-wall-grid-v786 {
    grid-template-columns: 1fr;
    grid-template-rows: none;
    min-height: 0;
  }

  .photo-wall-item-v786,
  .photo-wall-item-v786.is-large {
    grid-row: auto;
    min-height: 330px;
  }
}

@media (max-width: 720px) {
  .case-gallery-wall-v786 {
    padding: 64px 0 72px;
  }

  .case-gallery-head-v786 {
    margin-bottom: 24px;
  }

  .case-gallery-head-v786 p {
    font-size: 15px;
  }

  .photo-wall-item-v786,
  .photo-wall-item-v786.is-large {
    min-height: 260px;
  }

  .photo-wall-item-v786 figcaption {
    left: 20px;
    bottom: 20px;
  }

  .photo-wall-item-v786 figcaption strong {
    font-size: 21px;
  }

  .photo-wall-item-v786 em {
    opacity: 1;
    transform: none;
    width: 36px;
    height: 36px;
    right: 18px;
    bottom: 18px;
  }
}


/* V7.8.7 unified fixes: nav links, full-width photo wall, visible case carousel images */

/* Desktop nav: anchor links with hover mega menu */
.desktop-nav a {
  color: #fff;
  background: transparent;
  border: 0;
  padding: 0 0 18px;
  cursor: pointer;
  font-weight: 850;
  font-size: 16px;
  border-bottom: 3px solid transparent;
  transition: color .2s ease, border-color .2s ease;
  text-decoration: none;
}

.desktop-nav a:hover,
.desktop-nav a:focus-visible {
  color: var(--red);
  border-color: var(--red);
  outline: none;
}

/* Mobile overview entrance */
.mobile-overview-link-v787 {
  display: block;
  margin: 12px 20px 10px;
  padding: 13px 16px;
  color: #fff;
  background: var(--red);
  font-weight: 950;
  text-align: center;
}

/* Case detail photo wall: title normal width, image wall full viewport width */
.case-gallery-wall-v786 .photo-wall-grid-v786 {
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  grid-template-columns: 60fr 40fr;
  grid-template-rows: repeat(3, 220px);
  min-height: 660px;
}

.case-gallery-wall-v786 .photo-wall-item-v786 figcaption {
  left: clamp(22px, 2.2vw, 42px);
  bottom: clamp(22px, 2.2vw, 38px);
}

.case-gallery-wall-v786 .photo-wall-item-v786.is-large figcaption strong {
  font-size: clamp(28px, 3vw, 46px);
}

.case-gallery-wall-v786 .photo-wall-item-v786.is-large figcaption span {
  font-size: 13px;
}

/* Homepage case theater: use real image layer, then overlay for readability */
.theater-card {
  isolation: isolate;
}

.theater-img-v787 {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center center;
  transform: scale(1.01);
  transition: transform .55s ease, filter .55s ease;
}

.theater-bg.has-theater-image.theater-overlay-v787 {
  z-index: 1;
  background:
    linear-gradient(90deg, rgba(6,17,31,.78) 0%, rgba(6,8,13,.58) 38%, rgba(6,17,31,.22) 70%, rgba(6,8,13,.10) 100%),
    linear-gradient(0deg, rgba(6,8,13,.32), rgba(6,17,31,.05)) !important;
}

.theater-bg.has-theater-image.theater-overlay-v787::before,
.theater-bg.has-theater-image.theater-overlay-v787::after {
  display: none !important;
}

.theater-content {
  z-index: 3;
}

.theater-card:hover .theater-img-v787 {
  transform: scale(1.055);
}

.theater-card.is-main .theater-img-v787 {
  filter: saturate(1.04) contrast(1.02) brightness(1);
}

.theater-card.is-near .theater-img-v787 {
  filter: saturate(.86) brightness(.82);
}

.theater-card.is-far .theater-img-v787 {
  filter: saturate(.72) brightness(.68);
}

/* Mini case cards: make every card show corresponding image as full background */
.mini-case {
  position: relative;
  padding: 0 !important;
  min-height: 220px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  background: #0B1B2B;
}

.mini-case div.has-mini-image {
  position: absolute;
  inset: 0;
  height: auto !important;
  margin: 0 !important;
  background-image:
    linear-gradient(180deg, rgba(6,17,31,.05) 0%, rgba(6,17,31,.28) 48%, rgba(6,17,31,.82) 100%),
    var(--mini-image) !important;
  background-size: cover;
  background-position: center;
  transform: scale(1.01);
  transition: transform .45s ease, filter .45s ease;
}

.mini-case strong,
.mini-case span {
  position: relative;
  z-index: 2;
  padding-left: 20px;
  padding-right: 20px;
}

.mini-case strong {
  padding-top: 86px;
  color: #fff;
  font-size: 18px;
}

.mini-case span {
  padding-bottom: 20px;
  color: rgba(255,255,255,.78);
}

.mini-case:hover div.has-mini-image {
  transform: scale(1.06);
  filter: saturate(1.05) contrast(1.03);
}

@media (max-width: 980px) {
  .case-gallery-wall-v786 .photo-wall-grid-v786 {
    width: auto;
    margin-left: 0;
    margin-right: 0;
    grid-template-columns: 1fr;
    grid-template-rows: none;
    min-height: 0;
  }
}

@media (max-width: 720px) {
  .desktop-nav a {
    font-size: 15px;
  }

  .case-gallery-wall-v786 .photo-wall-item-v786,
  .case-gallery-wall-v786 .photo-wall-item-v786.is-large {
    min-height: 270px;
  }

  .mini-case {
    min-height: 210px;
  }
}


/* V7.8.8 restore desktop nav click menu */
.desktop-nav button {
  color: #fff;
  background: transparent;
  border: 0;
  padding: 0 0 18px;
  cursor: pointer;
  font-weight: 850;
  font-size: 16px;
  border-bottom: 3px solid transparent;
  transition: color .2s ease, border-color .2s ease;
}

.desktop-nav button:hover,
.desktop-nav button:focus-visible {
  color: var(--red);
  border-color: var(--red);
  outline: none;
}


/* V7.8.9 mega menu title overview link */
.mega-title-link-v789 {
  color: inherit;
  text-decoration: none;
  display: inline-block;
}

.mega-title-link-v789:hover,
.mega-title-link-v789:focus-visible {
  color: var(--red);
  outline: none;
}


/* V7.8.10 home case carousel seamless image wall */

/* Big theater: visually seamless carousel */
.case-theater .theater-stage {
  gap: 0 !important;
  padding-left: 0;
  padding-right: 0;
}

.case-theater .theater-card {
  margin: 0;
  border-radius: 0;
  box-shadow: none;
}

.case-theater .theater-card + .theater-card {
  border-left: 1px solid rgba(255,255,255,.04);
}

.case-theater .theater-img-v787 {
  transform: scale(1.012);
}

.case-theater .theater-card:hover .theater-img-v787 {
  transform: scale(1.055);
}

.case-theater .theater-card:hover .theater-content {
  transform: translateY(-8px);
}

.case-theater .theater-content {
  transition: transform .38s ease;
}

.case-theater .theater-content em {
  transition: background .25s ease, color .25s ease, transform .25s ease;
}

.case-theater .theater-card:hover .theater-content em {
  transform: translateY(-2px);
}

/* Mini rail: real image cards, no visible gaps */
.case-theater .mini-rail {
  gap: 0 !important;
  padding: 0 !important;
  margin-top: 0 !important;
  background: #06111F;
}

.case-theater .mini-track,
.case-theater .mini-track-v7810 {
  display: flex;
  gap: 0 !important;
  animation: miniMarquee 34s linear infinite;
}

.case-theater .mini-case,
.case-theater .mini-case-v7810 {
  position: relative;
  flex: 0 0 360px;
  min-height: 230px;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden;
  color: #fff;
  background: #0B1B2B;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  border-radius: 0;
  text-decoration: none;
  isolation: isolate;
}

.case-theater .mini-case + .mini-case {
  border-left: 1px solid rgba(255,255,255,.045);
}

.mini-case-img-v7810 {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
  transform: scale(1.01);
  transition: transform .48s ease, filter .48s ease;
}

.mini-case-shade-v7810 {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  height: auto !important;
  margin: 0 !important;
  background:
    linear-gradient(180deg, rgba(6,8,13,.02) 0%, rgba(6,17,31,.28) 46%, rgba(6,8,13,.88) 100%) !important;
  transition: background .35s ease;
}

.case-theater .mini-case-v7810 strong,
.case-theater .mini-case-v7810 span,
.case-theater .mini-case-v7810 em {
  position: relative;
  z-index: 2;
  padding-left: 26px;
  padding-right: 26px;
}

.case-theater .mini-case-v7810 strong {
  display: block;
  padding-top: 110px;
  color: #fff;
  font-size: 19px;
  line-height: 1.18;
  letter-spacing: -.02em;
  transform: translateY(0);
  transition: transform .35s ease;
}

.case-theater .mini-case-v7810 span {
  display: block;
  padding-top: 8px;
  padding-bottom: 24px;
  color: rgba(255,255,255,.74);
  font-size: 13px;
  line-height: 1.55;
  transform: translateY(0);
  transition: transform .35s ease, color .35s ease;
}

.case-theater .mini-case-v7810 em {
  position: absolute;
  right: 22px;
  bottom: 22px;
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  padding: 0;
  color: #111827;
  background: #fff;
  border-radius: 999px;
  font-style: normal;
  font-size: 0;
  font-weight: 950;
  opacity: 0;
  transform: translate(8px, 8px);
  transition: opacity .35s ease, transform .35s ease;
}

.case-theater .mini-case-v7810 em::before {
  content: "↗";
  font-size: 16px;
}

.case-theater .mini-case-v7810:hover .mini-case-img-v7810 {
  transform: scale(1.065);
  filter: saturate(1.05) contrast(1.04);
}

.case-theater .mini-case-v7810:hover .mini-case-shade-v7810 {
  background:
    linear-gradient(180deg, rgba(6,17,31,.00) 0%, rgba(6,8,13,.20) 42%, rgba(6,8,13,.80) 100%) !important;
}

.case-theater .mini-case-v7810:hover strong,
.case-theater .mini-case-v7810:hover span {
  transform: translateY(-10px);
}

.case-theater .mini-case-v7810:hover span {
  color: rgba(255,255,255,.88);
}

.case-theater .mini-case-v7810:hover em {
  opacity: 1;
  transform: translate(0, 0);
}

.case-theater .mini-track-v7810:hover {
  animation-play-state: paused;
}

/* Side cards should show image clearly, but remain secondary */
.case-theater .theater-card.is-near .theater-img-v787 {
  filter: saturate(.82) brightness(.75);
}

.case-theater .theater-card.is-far .theater-img-v787 {
  filter: saturate(.62) brightness(.56);
}

@media (max-width: 980px) {
  .case-theater .mini-case,
  .case-theater .mini-case-v7810 {
    flex-basis: 310px;
    min-height: 210px;
  }
}

@media (max-width: 720px) {
  .case-theater .theater-stage {
    gap: 0 !important;
  }

  .case-theater .mini-case,
  .case-theater .mini-case-v7810 {
    flex-basis: 275px;
    min-height: 190px;
  }

  .case-theater .mini-case-v7810 strong,
  .case-theater .mini-case-v7810 span {
    padding-left: 20px;
    padding-right: 20px;
  }

  .case-theater .mini-case-v7810 strong {
    font-size: 16px;
  }

  .case-theater .mini-case-v7810 span {
    font-size: 12.5px;
  }

  .case-theater .mini-case-v7810 em {
    opacity: 1;
    transform: none;
    right: 18px;
    bottom: 18px;
  }
}


/* V7.8.11 clean lightweight mega menu layout */
.mega-columns:has(.mega-column:nth-child(2):last-child) {
  grid-template-columns: repeat(2, minmax(0, 420px));
  gap: 72px;
  justify-content: start;
}

/* V7.8.12 poster listing + full background heroes */
.poster-card-v7812 {
  position: relative;
  display: block;
  min-height: 440px;
  overflow: hidden;
  background: #0b1220;
  color: #fff;
}

.poster-card-image-v7812,
.poster-card-fallback-v7812 {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.poster-card-image-v7812 {
  object-fit: cover;
  transition: transform .55s ease;
}

.poster-card-fallback-v7812 {
  background:
    radial-gradient(circle at 82% 18%, rgba(30,136,229,.24), transparent 26%),
    linear-gradient(135deg, #09111e, #172133);
}

.poster-card-overlay-v7812 {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(4,8,14,.06) 0%, rgba(6,17,31,.34) 42%, rgba(4,8,14,.88) 100%),
    linear-gradient(90deg, rgba(4,8,14,.42) 0%, rgba(4,8,14,.12) 58%, rgba(6,17,31,.34) 100%);
}

.poster-card-copy-v7812 {
  position: relative;
  z-index: 2;
  min-height: 440px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 30px;
}

.poster-card-copy-v7812 span {
  color: rgba(255,255,255,.82);
  font-size: 13px;
  letter-spacing: .16em;
  font-weight: 900;
}

.poster-card-copy-v7812 h3 {
  margin: 12px 0 10px;
  color: #fff;
  font-size: clamp(30px, 2.6vw, 46px);
  line-height: 1.04;
  letter-spacing: -.05em;
}

.poster-card-copy-v7812 p {
  margin: 0;
  max-width: 92%;
  color: rgba(255,255,255,.76);
  font-size: 16px;
  line-height: 1.8;
}

.poster-card-copy-v7812 em {
  margin-top: 18px;
  color: #fff;
  font-style: normal;
  font-weight: 900;
}

.poster-card-v7812:hover .poster-card-image-v7812 {
  transform: scale(1.06);
}

.poster-card-v7812:hover .poster-card-copy-v7812 em {
  transform: translateX(6px);
}

.poster-card-copy-v7812 em {
  transition: transform .22s ease;
}

#servicesListing,
#industriesListing,
#casesListing {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0;
}

.pro-hero,
.industry-pro-hero {
  position: relative;
  overflow: hidden;
  padding: 0;
  background: #06111F;
}

.pro-hero::before,
.industry-pro-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  background:
    linear-gradient(90deg, rgba(6,17,31,.96) 0%, rgba(6,17,31,.88) 38%, rgba(6,17,31,.56) 70%, rgba(6,17,31,.72) 100%),
    radial-gradient(circle at 82% 18%, rgba(30,136,229,.22), transparent 24%);
}

.pro-hero-grid,
.industry-pro-grid {
  position: relative;
  z-index: 3;
  display: flex;
  align-items: flex-end;
  min-height: 700px;
  padding: 150px 0 92px;
}

.pro-hero-grid > div:first-child,
.industry-pro-grid > div:first-child {
  max-width: 760px;
}

.pro-hero-media,
.industry-pro-grid > .hero-industry-slot {
  position: absolute;
  inset: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
}

.pro-hero-media .image-slot,
.industry-pro-grid > .hero-industry-slot {
  width: 100%;
  height: 100%;
  min-height: 100%;
  padding: 0;
  border: 0;
  background: transparent;
}

.pro-hero-media .image-slot img,
.industry-pro-grid > .hero-industry-slot img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.pro-hero .back-link,
.industry-pro-hero .back-link {
  color: rgba(255,255,255,.84);
}

.pro-hero p,
.industry-pro-hero p {
  max-width: 760px;
}

@media (max-width: 1120px) {
  #servicesListing,
  #industriesListing,
  #casesListing {
    grid-template-columns: 1fr;
  }

  .pro-hero-grid,
  .industry-pro-grid {
    min-height: 620px;
  }
}

@media (max-width: 768px) {
  .poster-card-v7812,
  .poster-card-copy-v7812 {
    min-height: 360px;
  }

  .poster-card-copy-v7812 {
    padding: 24px 20px;
  }

  .poster-card-copy-v7812 h3 {
    font-size: 34px;
  }

  .poster-card-copy-v7812 p {
    max-width: 100%;
    font-size: 15px;
  }

  .pro-hero-grid,
  .industry-pro-grid {
    min-height: 560px;
    padding: 130px 0 72px;
  }
}

/* V7.8.13 fix service/industry detail hero to full background poster */
.pro-hero,
.industry-pro-hero {
  position: relative !important;
  overflow: hidden !important;
  min-height: 680px;
  padding: 0 !important;
  display: flex;
  align-items: center;
  color: #fff;
  background: #06111F !important;
}

.pro-hero::before,
.industry-pro-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(6,17,31,.96) 0%, rgba(6,17,31,.88) 32%, rgba(5,8,14,.54) 62%, rgba(5,8,14,.28) 100%),
    linear-gradient(0deg, rgba(5,8,14,.36), rgba(5,8,14,.05)),
    radial-gradient(circle at 82% 20%, rgba(30,136,229,.20), transparent 28%);
}

.pro-hero-grid,
.industry-pro-grid {
  position: static !important;
  z-index: auto !important;
  display: block !important;
  min-height: 680px !important;
  padding-top: 155px !important;
  padding-bottom: 110px !important;
}

.pro-hero-grid > div:first-child,
.industry-pro-grid > div:first-child {
  position: relative !important;
  z-index: 3 !important;
  max-width: 790px !important;
}

.pro-hero-media,
.industry-pro-grid > .hero-industry-slot {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  width: 100vw !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: #06111F !important;
  overflow: hidden !important;
}

.pro-hero-media .image-slot,
.industry-pro-grid > .hero-industry-slot {
  min-height: 100% !important;
}

.pro-hero-media .image-slot img,
.industry-pro-grid > .hero-industry-slot img {
  width: 100% !important;
  height: 100% !important;
  min-height: 680px !important;
  object-fit: cover !important;
  object-position: center right !important;
  display: block !important;
}

.pro-hero span,
.industry-pro-hero span {
  color: var(--red) !important;
}

.pro-hero h1,
.industry-pro-hero h1 {
  color: #fff !important;
  max-width: 860px;
  text-shadow: 0 18px 56px rgba(0,0,0,.36);
}

.pro-hero p,
.industry-pro-hero p {
  color: rgba(255,255,255,.78) !important;
  max-width: 780px !important;
}

.pro-hero .back-link,
.industry-pro-hero .back-link {
  color: rgba(255,255,255,.82) !important;
}

@media (max-width: 980px) {
  .pro-hero,
  .industry-pro-hero,
  .pro-hero-grid,
  .industry-pro-grid {
    min-height: 600px !important;
  }
  .pro-hero-grid,
  .industry-pro-grid {
    padding-top: 130px !important;
    padding-bottom: 86px !important;
  }
  .pro-hero-media .image-slot img,
  .industry-pro-grid > .hero-industry-slot img {
    min-height: 600px !important;
    object-position: center center !important;
  }
}

@media (max-width: 720px) {
  .pro-hero,
  .industry-pro-hero,
  .pro-hero-grid,
  .industry-pro-grid {
    min-height: 540px !important;
  }
  .pro-hero-grid,
  .industry-pro-grid {
    padding-top: 110px !important;
    padding-bottom: 70px !important;
  }
  .pro-hero-media .image-slot img,
  .industry-pro-grid > .hero-industry-slot img {
    min-height: 540px !important;
  }
}


/* V7.8.14 cabinet detail hero poster fix */
.cabinet-hero {
  position: relative;
  overflow: hidden;
  padding: 0;
  color: #fff;
  background: #06111F;
}

.cabinet-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  background:
    linear-gradient(90deg, rgba(6,17,31,.96) 0%, rgba(6,17,31,.88) 38%, rgba(6,17,31,.56) 70%, rgba(6,17,31,.72) 100%),
    radial-gradient(circle at 82% 18%, rgba(30,136,229,.22), transparent 24%);
}

.cabinet-hero-grid {
  position: relative;
  z-index: 3;
  display: flex;
  align-items: flex-end;
  min-height: 700px;
  padding: 150px 0 92px;
}

.cabinet-hero-grid > div:first-child {
  max-width: 760px;
}

.cabinet-hero-photo {
  position: absolute;
  inset: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
}

.cabinet-hero-photo .image-slot {
  width: 100%;
  height: 100%;
  min-height: 100%;
  padding: 0;
  border: 0;
  background: transparent;
}

.cabinet-hero-photo .image-slot img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center right;
  display: block;
}

.cabinet-hero .back-link {
  color: rgba(255,255,255,.84);
}

.cabinet-hero p {
  max-width: 760px;
}

@media (max-width: 1120px) {
  .cabinet-hero-grid {
    min-height: 620px;
  }
}

@media (max-width: 768px) {
  .cabinet-hero-grid {
    min-height: 560px;
    padding: 130px 0 72px;
  }
}

/* V7.8.17 restore service and industry listing cards */
#servicesListing,
#industriesListing {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 14px !important;
}

#servicesListing .listing-card,
#industriesListing .listing-card {
  min-height: 250px;
  display: block;
  padding: 28px;
  background: #fff;
  color: var(--ink);
  overflow: hidden;
  transition: transform .22s ease, box-shadow .22s ease;
}

#servicesListing .listing-card:hover,
#industriesListing .listing-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 20px 64px rgba(0,0,0,.08);
}

#servicesListing .listing-card-media,
#industriesListing .listing-card-media {
  height: 180px;
  margin: -26px -26px 22px;
  overflow: hidden;
  background: #111827;
}

#servicesListing .listing-card-media img,
#industriesListing .listing-card-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .35s ease;
}

#servicesListing .listing-card:hover .listing-card-media img,
#industriesListing .listing-card:hover .listing-card-media img {
  transform: scale(1.045);
}

#servicesListing .listing-card span,
#industriesListing .listing-card span {
  color: var(--red);
  font-size: 13px;
  letter-spacing: .14em;
  font-weight: 950;
}

#servicesListing .listing-card h3,
#industriesListing .listing-card h3 {
  margin: 14px 0 10px;
  color: var(--ink);
  font-size: 28px;
  line-height: 1.12;
  letter-spacing: -.04em;
}

#servicesListing .listing-card p,
#industriesListing .listing-card p {
  color: var(--muted);
  margin: 0 0 20px;
}

#servicesListing .listing-card em,
#industriesListing .listing-card em {
  color: var(--blue);
  font-style: normal;
  font-weight: 900;
}

@media (max-width: 980px) {
  #servicesListing,
  #industriesListing {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 720px) {
  #servicesListing,
  #industriesListing {
    grid-template-columns: 1fr !important;
  }

  #servicesListing .listing-card-media,
  #industriesListing .listing-card-media {
    height: 150px;
  }
}


/* V7.8.18 服务能力：小栏目文案与执行流程排版优化（仅服务详情页生效） */
.service-batch-hero ~ .case-solution-section {
  padding: 72px 0;
  background: #f5f6f8;
}

.service-batch-hero ~ .case-solution-section .solution-detail-grid {
  grid-template-columns: .62fr 1.38fr;
  gap: 38px;
  align-items: start;
}

.service-batch-hero ~ .case-solution-section .solution-detail-grid > div:first-child {
  position: sticky;
  top: 110px;
  padding: 4px 0 0;
}

.service-batch-hero ~ .case-solution-section .solution-detail-grid > div:first-child h2 {
  font-size: clamp(30px,3vw,44px);
}

.service-batch-hero ~ .case-solution-section .solution-detail-grid > div:first-child p {
  max-width: 520px;
  color: var(--muted);
}

.service-batch-hero ~ .case-solution-section .solution-steps {
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 14px;
}

.service-batch-hero ~ .case-solution-section .solution-steps article {
  min-height: 148px;
  display: grid;
  grid-template-columns: 58px 1fr;
  column-gap: 18px;
  align-items: start;
  padding: 22px 24px;
  color: var(--ink);
  background: #fff;
  border: 1px solid rgba(12,18,28,.08);
  box-shadow: 0 14px 36px rgba(12,18,28,.06);
}

.service-batch-hero ~ .case-solution-section .solution-steps span {
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  margin: 0;
  color: var(--red);
  background: rgba(30,136,229,.08);
  border: 1px solid rgba(30,136,229,.22);
  font-size: 13px;
  font-weight: 950;
  letter-spacing: .08em;
}

.service-batch-hero ~ .case-solution-section .solution-steps h3 {
  margin: 0;
  color: var(--ink);
  font-size: 21px;
  line-height: 1.25;
}

.service-batch-hero ~ .case-solution-section .solution-steps p {
  margin: 10px 0 0;
  color: var(--muted);
  font-size: 15px;
  line-height: 1.72;
}

.pro-flow-section,
.service-batch-hero ~ .site-stage-section {
  padding: 74px 0;
  background: #f5f6f8;
}

.pro-flow-section .pro-flow,
.service-batch-hero ~ .site-stage-section .pro-flow {
  grid-template-columns: repeat(5,minmax(0,1fr));
  gap: 12px;
  margin-top: 30px;
}

.pro-flow-section .pro-flow article,
.service-batch-hero ~ .site-stage-section .pro-flow article {
  min-height: 168px;
  padding: 22px;
  color: var(--ink);
  background: #fff;
  border: 1px solid rgba(12,18,28,.08);
  box-shadow: 0 14px 36px rgba(12,18,28,.06);
}

.pro-flow-section .pro-flow span,
.service-batch-hero ~ .site-stage-section .pro-flow span {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  margin-bottom: 18px;
  color: var(--red);
  background: rgba(30,136,229,.08);
  border: 1px solid rgba(30,136,229,.22);
  font-size: 13px;
}

.pro-flow-section .pro-flow h3,
.service-batch-hero ~ .site-stage-section .pro-flow h3 {
  color: var(--ink);
  font-size: 20px;
}

.pro-flow-section .pro-flow p,
.service-batch-hero ~ .site-stage-section .pro-flow p {
  color: var(--muted);
  font-size: 15px;
  line-height: 1.68;
}

.pro-hero-cabinet ~ .cabinet-process,
.service-batch-hero ~ .cabinet-process {
  padding: 74px 0;
  background: #f5f6f8;
}

.pro-hero-cabinet ~ .cabinet-process .cabinet-process-list,
.service-batch-hero ~ .cabinet-process .cabinet-process-list {
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 14px;
}

.pro-hero-cabinet ~ .cabinet-process .cabinet-process-list article,
.service-batch-hero ~ .cabinet-process .cabinet-process-list article {
  min-height: 158px;
  padding: 22px 24px;
  color: var(--ink);
  background: #fff;
  border: 1px solid rgba(12,18,28,.08);
  box-shadow: 0 14px 36px rgba(12,18,28,.06);
}

.pro-hero-cabinet ~ .cabinet-process .cabinet-process-list b,
.service-batch-hero ~ .cabinet-process .cabinet-process-list b {
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  margin-bottom: 18px;
  color: var(--red);
  background: rgba(30,136,229,.08);
  border: 1px solid rgba(30,136,229,.22);
  font-size: 13px;
}

.pro-hero-cabinet ~ .cabinet-process .cabinet-process-list h3,
.service-batch-hero ~ .cabinet-process .cabinet-process-list h3 {
  color: var(--ink);
  font-size: 21px;
}

.pro-hero-cabinet ~ .cabinet-process .cabinet-process-list p,
.service-batch-hero ~ .cabinet-process .cabinet-process-list p {
  color: var(--muted);
  font-size: 15px;
  line-height: 1.7;
}

@media (max-width: 1100px) {
  .service-batch-hero ~ .case-solution-section .solution-detail-grid,
  .service-batch-hero ~ .case-solution-section .solution-steps,
  .pro-flow-section .pro-flow,
  .service-batch-hero ~ .site-stage-section .pro-flow,
  .pro-hero-cabinet ~ .cabinet-process .cabinet-process-list,
  .service-batch-hero ~ .cabinet-process .cabinet-process-list {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
  .service-batch-hero ~ .case-solution-section .solution-detail-grid > div:first-child {
    position: static;
  }
}

@media (max-width: 720px) {
  .service-batch-hero ~ .case-solution-section,
  .pro-flow-section,
  .service-batch-hero ~ .site-stage-section,
  .pro-hero-cabinet ~ .cabinet-process,
  .service-batch-hero ~ .cabinet-process {
    padding: 54px 0;
  }
  .service-batch-hero ~ .case-solution-section .solution-detail-grid,
  .service-batch-hero ~ .case-solution-section .solution-steps,
  .pro-flow-section .pro-flow,
  .service-batch-hero ~ .site-stage-section .pro-flow,
  .pro-hero-cabinet ~ .cabinet-process .cabinet-process-list,
  .service-batch-hero ~ .cabinet-process .cabinet-process-list {
    grid-template-columns: 1fr;
  }
  .service-batch-hero ~ .case-solution-section .solution-steps article {
    grid-template-columns: 52px 1fr;
    min-height: auto;
  }
}


/* V7.8.20 solution structure rebuild: one-column solution entry and professional detail pages */
.mega-columns:has(.mega-column:only-child) {
  grid-template-columns: minmax(0, 760px);
  gap: 0;
}

.mega-columns:has(.mega-column:only-child) .mega-column a {
  padding: 15px 0;
}

.mega-columns:has(.mega-column:only-child) .mega-column a small {
  display: block;
  margin-top: 5px;
  color: rgba(255,255,255,.56);
  font-size: 13px;
  line-height: 1.55;
  font-weight: 600;
}

.solution-index-section-v7820 {
  padding: 92px 0;
  background: var(--paper);
}

.solution-index-layout-v7820 {
  display: grid;
  grid-template-columns: .78fr 1.22fr;
  gap: 56px;
  align-items: start;
}

.solution-index-lead-v7820 {
  position: sticky;
  top: 110px;
}

.solution-index-lead-v7820 span,
.solution-difference-v7820 span {
  display: inline-block;
  margin-bottom: 14px;
  color: var(--red);
  font-size: 13px;
  font-weight: 950;
  letter-spacing: .16em;
}

.solution-index-lead-v7820 h2,
.solution-difference-v7820 h2 {
  margin: 0;
  color: var(--ink);
  font-size: clamp(34px, 3.7vw, 56px);
  line-height: 1.08;
  letter-spacing: -.045em;
}

.solution-index-lead-v7820 p,
.solution-difference-v7820 p {
  margin: 20px 0 0;
  color: var(--muted);
  font-size: 18px;
  line-height: 1.85;
}

.solution-row-list-v7820 {
  display: grid;
  gap: 16px;
}

.solution-row-card-v7820 {
  position: relative;
  display: grid;
  grid-template-columns: 86px 1fr auto;
  gap: 24px;
  align-items: center;
  min-height: 188px;
  padding: 30px;
  background: #fff;
  color: var(--ink);
  border: 1px solid rgba(17,24,39,.08);
  box-shadow: 0 16px 50px rgba(0,0,0,.035);
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.solution-row-card-v7820:hover {
  transform: translateY(-4px);
  border-color: rgba(30,136,229,.24);
  box-shadow: 0 24px 70px rgba(0,0,0,.07);
}

.solution-row-index-v7820 {
  width: 68px;
  height: 68px;
  display: grid;
  place-items: center;
  color: #fff;
  background: linear-gradient(135deg, var(--red), #1565C0);
  font-size: 24px;
  font-weight: 950;
  letter-spacing: -.04em;
}

.solution-row-copy-v7820 span {
  display: inline-block;
  margin-bottom: 10px;
  color: var(--red);
  font-size: 13px;
  font-weight: 950;
  letter-spacing: .16em;
}

.solution-row-copy-v7820 h2 {
  margin: 0;
  color: var(--ink);
  font-size: clamp(28px, 2.6vw, 42px);
  line-height: 1.08;
  letter-spacing: -.045em;
}

.solution-row-copy-v7820 p {
  max-width: 720px;
  margin: 12px 0 0;
  color: var(--muted);
  font-size: 17px;
  line-height: 1.75;
}

.solution-row-tags-v7820 {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 16px;
}

.solution-row-tags-v7820 i {
  padding: 7px 10px;
  color: #155FAE;
  background: #EAF4FF;
  font-style: normal;
  font-size: 13px;
  font-weight: 900;
}

.solution-row-card-v7820 em {
  color: var(--blue);
  font-style: normal;
  font-weight: 950;
  white-space: nowrap;
}

.solution-difference-v7820 {
  padding: 86px 0;
  color: #fff;
  background:
    radial-gradient(circle at 80% 14%, rgba(30,136,229,.20), transparent 28%),
    linear-gradient(135deg, var(--black), #111827);
}

.solution-difference-grid-v7820 {
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 56px;
  align-items: start;
}

.solution-difference-v7820 h2 {
  color: #fff;
}

.solution-difference-v7820 p {
  color: rgba(255,255,255,.72);
}

.solution-v7820-hero .solution-client-card {
  min-height: 380px;
}

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

.solution-method-list-v7820 article {
  min-height: 220px;
}

@media (max-width: 1100px) {
  .solution-index-layout-v7820,
  .solution-difference-grid-v7820 {
    grid-template-columns: 1fr;
  }

  .solution-index-lead-v7820 {
    position: static;
  }

  .solution-row-card-v7820 {
    grid-template-columns: 68px 1fr;
  }

  .solution-row-card-v7820 em {
    grid-column: 2;
  }

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

@media (max-width: 720px) {
  .solution-index-section-v7820,
  .solution-difference-v7820 {
    padding: 58px 0;
  }

  .solution-row-card-v7820 {
    grid-template-columns: 1fr;
    gap: 18px;
    min-height: auto;
    padding: 24px;
  }

  .solution-row-card-v7820 em {
    grid-column: auto;
  }

  .solution-row-index-v7820 {
    width: 56px;
    height: 56px;
    font-size: 20px;
  }

  .solution-method-list-v7820 {
    grid-template-columns: 1fr;
  }
}

/* V7.8.21 solution detail context section refinement */
.solution-problem-section {
  padding: 76px 0;
  background: #f6f7f9;
}

.solution-problem-grid {
  grid-template-columns: .82fr 1.18fr;
  gap: 60px;
  align-items: start;
}

.solution-problem-grid > div:first-child {
  padding-top: 8px;
}

.solution-problem-grid h2 {
  max-width: 620px;
  font-size: clamp(34px, 3.4vw, 54px);
  line-height: 1.08;
}

.solution-problem-grid > div:first-child p {
  max-width: 660px;
  margin-top: 22px;
  font-size: 17px;
  line-height: 1.9;
}

.solution-problem-cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.solution-problem-cards article {
  min-height: 188px;
  padding: 26px 26px 24px;
  color: var(--ink);
  background:
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,255,255,.92));
  border: 1px solid rgba(17,24,39,.08);
  box-shadow: 0 18px 48px rgba(15,23,42,.055);
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.solution-problem-cards article:hover {
  transform: translateY(-3px);
  border-color: rgba(30,136,229,.22);
  box-shadow: 0 26px 68px rgba(15,23,42,.085);
}

.solution-problem-cards article > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  margin-bottom: 22px;
  color: var(--red);
  background: #EAF4FF;
  border: 1px solid rgba(30,136,229,.18);
  font-size: 13px;
  font-weight: 950;
  letter-spacing: -.02em;
}

.solution-problem-cards h3 {
  margin: 0;
  color: var(--ink);
  font-size: 22px;
  line-height: 1.22;
  letter-spacing: -.02em;
}

.solution-problem-cards p {
  margin: 14px 0 0;
  color: var(--muted);
  font-size: 15.5px;
  line-height: 1.75;
}

@media (max-width: 1100px) {
  .solution-problem-grid {
    grid-template-columns: 1fr;
    gap: 34px;
  }
}

@media (max-width: 720px) {
  .solution-problem-section {
    padding: 58px 0;
  }

  .solution-problem-cards {
    grid-template-columns: 1fr;
  }

  .solution-problem-cards article {
    min-height: auto;
    padding: 22px;
  }
}


/* V7.8.22 解决方案总页：恢复为图片卡片式展示 */
.solution-card-listing-v7822 {
  background: var(--paper);
}

#solutionsListing {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 14px !important;
}

#solutionsListing .listing-card {
  min-height: 250px;
  display: block;
  padding: 28px;
  background: #fff;
  color: var(--ink);
  overflow: hidden;
  border: 1px solid rgba(17, 24, 39, .06);
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

#solutionsListing .listing-card:hover {
  transform: translateY(-5px);
  border-color: rgba(30,136,229,.18);
  box-shadow: 0 20px 64px rgba(0,0,0,.08);
}

#solutionsListing .listing-card-media {
  height: 180px;
  margin: -26px -26px 22px;
  overflow: hidden;
  background: #111827;
}

#solutionsListing .listing-card-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .35s ease;
}

#solutionsListing .listing-card:hover .listing-card-media img {
  transform: scale(1.045);
}

#solutionsListing .listing-card span {
  color: var(--red);
  font-size: 13px;
  letter-spacing: .14em;
  font-weight: 950;
}

#solutionsListing .listing-card h3 {
  margin: 14px 0 10px;
  color: var(--ink);
  font-size: 28px;
  line-height: 1.12;
  letter-spacing: -.04em;
}

#solutionsListing .listing-card p {
  color: var(--muted);
  margin: 0 0 20px;
  line-height: 1.72;
}

#solutionsListing .listing-card em {
  color: var(--blue);
  font-style: normal;
  font-weight: 900;
}

@media (max-width: 980px) {
  #solutionsListing {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 720px) {
  #solutionsListing {
    grid-template-columns: 1fr !important;
  }

  #solutionsListing .listing-card-media {
    height: 150px;
  }
}


/* V7.8.23 行业方向结构重构：设备类型 + 应用行业 */
.industry-v7823-hero .hero-industry-slot img,
.industry-v7823-context .image-real img,
.industry-case-preview .image-real img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.industry-v7823-points article {
  border-left: 3px solid rgba(190, 58, 63, .75);
}
.industry-risk-grid-v7823 article {
  min-height: 150px;
}
@media (max-width: 900px) {
  .industry-risk-grid-v7823 article { min-height: auto; }
}


/* V7.8.24 行业详情页内容与排版优化 */
.industry-detail-v7824{
  background:#f4f5f7;
}
.industry-hero-poster-v7824{
  padding:86px 0 76px;
  background:linear-gradient(180deg,#f4f5f7 0%,#ffffff 100%);
}
.industry-hero-poster-grid-v7824{
  display:grid;
  grid-template-columns:minmax(0,0.9fr) minmax(520px,1.1fr);
  gap:56px;
  align-items:center;
}
.industry-hero-copy-v7824 > span,
.industry-section-title-v7824 > span,
.industry-support-grid-v7824 > div:first-child > span{
  display:inline-block;
  color:#1E88E5;
  font-size:13px;
  letter-spacing:.22em;
  font-weight:800;
  text-transform:uppercase;
  margin-bottom:18px;
}
.industry-hero-copy-v7824 h1{
  font-size:clamp(46px,5vw,78px);
  line-height:.98;
  letter-spacing:-.06em;
  margin:14px 0 24px;
  color:#111827;
}
.industry-hero-copy-v7824 p{
  color:#4b5563;
  font-size:17px;
  line-height:1.95;
  max-width:680px;
}
.industry-hero-tags-v7824{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin:26px 0 30px;
}
.industry-hero-tags-v7824 span{
  background:#fff1f1;
  color:#8f2f35;
  border:1px solid rgba(30,136,229,.16);
  font-size:13px;
  font-weight:800;
  padding:8px 12px;
}
.industry-hero-image-v7824{
  height:430px;
  background:#10151d;
  box-shadow:0 24px 70px rgba(15,23,42,.14);
  overflow:hidden;
}
.industry-hero-image-v7824 img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.industry-text-section-v7824,
.industry-risk-section-v7824,
.industry-case-preview-v7824{
  padding:72px 0;
  background:#fff;
}
.industry-focus-section-v7824{
  padding:78px 0;
  background:#f4f5f7;
}
.industry-text-grid-v7824,
.industry-risk-grid-v7824,
.industry-support-grid-v7824{
  display:grid;
  grid-template-columns:0.75fr 1.25fr;
  gap:62px;
  align-items:start;
}
.industry-section-title-v7824 h2,
.industry-support-grid-v7824 h2{
  font-size:clamp(34px,4vw,56px);
  line-height:1.05;
  letter-spacing:-.05em;
  margin:0 0 20px;
  color:#111827;
}
.industry-section-title-v7824 p,
.industry-support-grid-v7824 p{
  color:#667085;
  font-size:16px;
  line-height:1.9;
}
.industry-prose-v7824{
  background:#f8f9fb;
  border:1px solid #e5e7eb;
  padding:38px 42px;
}
.industry-prose-v7824 p{
  margin:0 0 18px;
  color:#374151;
  font-size:16px;
  line-height:2;
}
.industry-prose-v7824 ul{
  margin:26px 0 0;
  padding:0;
  list-style:none;
  display:grid;
  gap:12px;
}
.industry-prose-v7824 li{
  position:relative;
  padding-left:20px;
  color:#4b5563;
  line-height:1.8;
}
.industry-prose-v7824 li::before{
  content:"";
  position:absolute;
  left:0;
  top:.75em;
  width:6px;
  height:6px;
  background:#1E88E5;
}
.industry-focus-grid-v7824{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
  margin-top:42px;
}
.industry-focus-grid-v7824 article{
  background:#fff;
  border:1px solid #e5e7eb;
  padding:30px 28px;
  min-height:210px;
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.industry-focus-grid-v7824 article:hover{
  transform:translateY(-4px);
  box-shadow:0 18px 48px rgba(15,23,42,.08);
  border-color:rgba(30,136,229,.24);
}
.industry-focus-grid-v7824 h3{
  margin:0 0 14px;
  font-size:22px;
  color:#111827;
  letter-spacing:-.03em;
}
.industry-focus-grid-v7824 p{
  margin:0;
  color:#667085;
  line-height:1.85;
  font-size:15px;
}
.industry-risk-list-v7824{
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  gap:14px;
}
.industry-risk-list-v7824 li{
  background:#f8f9fb;
  border-left:4px solid #1E88E5;
  padding:22px 26px;
}
.industry-risk-list-v7824 strong{
  display:block;
  font-size:19px;
  color:#111827;
  margin-bottom:8px;
}
.industry-risk-list-v7824 span{
  display:block;
  color:#667085;
  line-height:1.85;
}
.industry-support-section-v7824{
  padding:78px 0;
  background:#f4f5f7;
}
.industry-support-cards-v7824{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:16px;
}
.industry-support-cards-v7824 article{
  background:#0b0f16;
  color:#fff;
  padding:28px;
  min-height:168px;
}
.industry-support-cards-v7824 h3{
  margin:0 0 12px;
  font-size:21px;
  color:#fff;
}
.industry-support-cards-v7824 p{
  margin:0;
  color:rgba(255,255,255,.68);
  line-height:1.8;
  font-size:15px;
}
.industry-support-grid-v7824 .pro-rich-list{
  margin-top:28px;
}
.industry-entry-grid-v7824{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
  margin-top:32px;
}
.industry-entry-grid-v7824 a{
  display:block;
  background:#f8f9fb;
  border:1px solid #e5e7eb;
  padding:28px;
  text-decoration:none;
  color:#111827;
}
.industry-entry-grid-v7824 strong{
  display:block;
  font-size:22px;
  margin-bottom:10px;
}
.industry-entry-grid-v7824 span{
  color:#667085;
  line-height:1.75;
}
@media (max-width: 980px){
  .industry-hero-poster-grid-v7824,
  .industry-text-grid-v7824,
  .industry-risk-grid-v7824,
  .industry-support-grid-v7824{
    grid-template-columns:1fr;
    gap:34px;
  }
  .industry-hero-image-v7824{height:300px;}
  .industry-focus-grid-v7824,
  .industry-support-cards-v7824,
  .industry-entry-grid-v7824{grid-template-columns:1fr;}
  .industry-hero-poster-v7824{padding:58px 0;}
  .industry-text-section-v7824,
  .industry-risk-section-v7824,
  .industry-support-section-v7824,
  .industry-focus-section-v7824,
  .industry-case-preview-v7824{padding:54px 0;}
  .industry-prose-v7824{padding:28px 24px;}
}

/* V7.8.25 行业详情页文字化专业版 */
.industry-detail-v7824{
  background:#fff;
}
.industry-hero-full-v7825{
  position:relative;
  min-height:620px;
  padding:0;
  background-size:cover;
  background-position:center;
  display:flex;
  align-items:center;
  overflow:hidden;
}
.industry-hero-full-v7825::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(5,8,14,.18),rgba(5,8,14,.62));
  pointer-events:none;
}
.industry-hero-full-inner-v7825{
  position:relative;
  z-index:1;
  width:100%;
}
.industry-hero-copy-full-v7825{
  max-width:760px;
  padding:120px 0 95px;
}
.industry-hero-copy-full-v7825 .back-link{
  color:rgba(255,255,255,.86);
}
.industry-hero-copy-full-v7825 > span{
  color:#d75b61;
  letter-spacing:.24em;
}
.industry-hero-copy-full-v7825 h1{
  color:#fff;
  text-shadow:0 16px 44px rgba(0,0,0,.38);
}
.industry-hero-copy-full-v7825 p{
  color:rgba(255,255,255,.82);
  max-width:720px;
}
.industry-hero-copy-full-v7825 .industry-hero-tags-v7824 span{
  background:rgba(255,255,255,.10);
  border-color:rgba(255,255,255,.16);
  color:rgba(255,255,255,.88);
  backdrop-filter:blur(8px);
}
.industry-hero-copy-full-v7825 .pro-hero-actions a:first-child{
  background:#1E88E5;
  color:#fff;
  border-color:#1E88E5;
}
.industry-hero-copy-full-v7825 .pro-hero-actions a:last-child{
  background:rgba(255,255,255,.08);
  color:#fff;
  border-color:rgba(255,255,255,.28);
}
.industry-risk-text-v7825{
  background:#fff;
  padding:78px 0;
}
.industry-risk-prose-list-v7825{
  display:grid;
  gap:0;
  background:#fff;
  border-top:1px solid #e5e7eb;
}
.industry-risk-prose-list-v7825 article{
  position:relative;
  padding:28px 0 28px 74px;
  border-bottom:1px solid #e5e7eb;
}
.industry-risk-prose-list-v7825 .risk-index-v7825{
  position:absolute;
  left:0;
  top:31px;
  color:#1E88E5;
  font-size:13px;
  font-weight:900;
  letter-spacing:.16em;
}
.industry-risk-prose-list-v7825 h3{
  margin:0 0 10px;
  color:#111827;
  font-size:23px;
  letter-spacing:-.025em;
}
.industry-risk-prose-list-v7825 p{
  margin:0;
  color:#5B6675;
  font-size:16px;
  line-height:1.95;
}
.industry-support-text-v7825{
  background:#f4f5f7;
  padding:84px 0;
}
.industry-stage-table-v7825{
  background:#fff;
  border:1px solid #e5e7eb;
}
.stage-row-v7825{
  display:grid;
  grid-template-columns:86px 1fr;
  gap:0;
  border-bottom:1px solid #e5e7eb;
}
.stage-row-v7825:last-child{
  border-bottom:0;
}
.stage-index-v7825{
  display:flex;
  align-items:flex-start;
  justify-content:center;
  padding-top:31px;
  color:#1E88E5;
  font-size:13px;
  font-weight:900;
  letter-spacing:.18em;
  border-right:1px solid #e5e7eb;
}
.stage-row-v7825 > div{
  padding:28px 30px 30px;
}
.stage-row-v7825 h3{
  margin:0 0 10px;
  color:#111827;
  font-size:23px;
  letter-spacing:-.03em;
}
.stage-row-v7825 p{
  margin:0;
  color:#5B6675;
  font-size:16px;
  line-height:1.9;
}
.industry-support-text-v7825 .pro-rich-list li{
  color:#4b5563;
}
@media (max-width: 980px){
  .industry-hero-full-v7825{
    min-height:560px;
  }
  .industry-hero-copy-full-v7825{
    padding:92px 0 70px;
  }
  .industry-risk-prose-list-v7825 article{
    padding:24px 0 24px 54px;
  }
  .stage-row-v7825{
    grid-template-columns:64px 1fr;
  }
  .stage-row-v7825 > div{
    padding:24px 22px;
  }
}
@media (max-width: 640px){
  .industry-hero-full-v7825{
    min-height:520px;
  }
  .industry-hero-copy-full-v7825 h1{
    font-size:44px;
  }
  .industry-hero-copy-full-v7825 p{
    font-size:15px;
    line-height:1.85;
  }
  .industry-risk-prose-list-v7825 article{
    padding-left:0;
  }
  .industry-risk-prose-list-v7825 .risk-index-v7825{
    position:static;
    display:block;
    margin-bottom:10px;
  }
  .stage-row-v7825{
    grid-template-columns:1fr;
  }
  .stage-index-v7825{
    justify-content:flex-start;
    border-right:0;
    border-bottom:1px solid #e5e7eb;
    padding:18px 22px;
  }
}


/* V7.8.26 行业详情页海报对齐与纯文字内容版 */
.industry-hero-full-inner-v7825.container{
  width:min(var(--container), calc(100% - 56px)) !important;
  max-width:var(--container);
  margin:0 auto !important;
}
.industry-hero-copy-full-v7825{
  margin:0;
  max-width:820px;
  padding:120px 0 96px;
}
.industry-hero-copy-full-v7825 h1{
  max-width:900px;
  overflow-wrap:break-word;
}
.industry-hero-copy-full-v7825 p{
  max-width:820px;
}

/* 风险与介入环节改为正文型排版，弱化卡片感 */
.industry-risk-text-v7825,
.industry-support-text-v7825{
  background:#fff;
  padding:86px 0;
}
.industry-risk-text-v7825 .industry-risk-grid-v7824,
.industry-support-text-v7825 .industry-support-grid-v7824{
  display:block;
  max-width:1120px;
  margin:0 auto;
}
.industry-risk-text-v7825 .industry-section-title-v7824,
.industry-support-text-v7825 .industry-support-grid-v7824 > div:first-child{
  max-width:780px;
  margin:0 0 44px;
}
.industry-risk-text-v7825 .industry-section-title-v7824 h2,
.industry-support-text-v7825 .industry-support-grid-v7824 h2{
  font-size:clamp(40px,4.6vw,70px);
  line-height:1.02;
  letter-spacing:-.055em;
}
.industry-risk-text-v7825 .industry-section-title-v7824 p,
.industry-support-text-v7825 .industry-support-grid-v7824 > div:first-child > p{
  font-size:17px;
  line-height:2;
  max-width:720px;
}
.industry-risk-prose-list-v7825{
  display:block;
  max-width:980px;
  background:transparent;
  border-top:1px solid #e4e7ec;
}
.industry-risk-prose-list-v7825 article{
  position:relative;
  padding:30px 0 32px;
  border-bottom:1px solid #e4e7ec;
}
.industry-risk-prose-list-v7825 .risk-index-v7825{
  position:static;
  display:block;
  margin-bottom:12px;
  color:#1E88E5;
  font-size:12px;
  font-weight:900;
  letter-spacing:.18em;
}
.industry-risk-prose-list-v7825 h3{
  margin:0 0 12px;
  color:#111827;
  font-size:25px;
  line-height:1.35;
  letter-spacing:-.035em;
}
.industry-risk-prose-list-v7825 p{
  margin:0;
  color:#5b6675;
  max-width:900px;
  font-size:16px;
  line-height:2.05;
}

/* 介入环节从表格式卡片改成文字段落列表 */
.industry-support-text-v7825 .pro-rich-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px 28px;
  max-width:720px;
  margin:26px 0 42px;
}
.industry-stage-table-v7825{
  display:block;
  max-width:980px;
  background:transparent;
  border:0;
  border-top:1px solid #e4e7ec;
}
.stage-row-v7825{
  display:block;
  border-bottom:1px solid #e4e7ec;
  padding:30px 0 32px;
}
.stage-index-v7825{
  display:block;
  padding:0;
  margin:0 0 12px;
  border:0;
  color:#1E88E5;
  font-size:12px;
  font-weight:900;
  letter-spacing:.18em;
}
.stage-row-v7825 > div{
  padding:0;
}
.stage-row-v7825 h3{
  margin:0 0 12px;
  color:#111827;
  font-size:25px;
  line-height:1.35;
  letter-spacing:-.035em;
}
.stage-row-v7825 p{
  margin:0;
  color:#5b6675;
  max-width:900px;
  font-size:16px;
  line-height:2.05;
}

@media (max-width:980px){
  .industry-hero-full-inner-v7825.container{
    width:min(var(--container), calc(100% - 36px)) !important;
  }
  .industry-hero-copy-full-v7825{
    padding:94px 0 74px;
  }
  .industry-risk-text-v7825,
  .industry-support-text-v7825{
    padding:64px 0;
  }
}
@media (max-width:640px){
  .industry-hero-copy-full-v7825{
    padding:82px 0 62px;
  }
  .industry-hero-copy-full-v7825 h1{
    font-size:40px;
    line-height:1.05;
  }
  .industry-risk-text-v7825 .industry-section-title-v7824 h2,
  .industry-support-text-v7825 .industry-support-grid-v7824 h2{
    font-size:38px;
  }
  .industry-risk-prose-list-v7825 h3,
  .stage-row-v7825 h3{
    font-size:22px;
  }
  .industry-support-text-v7825 .pro-rich-list{
    grid-template-columns:1fr;
  }
}


/* V7.8.27 行业详情页文字密度优化版 */
.industry-risk-text-v7825,
.industry-support-text-v7825{
  padding:72px 0;
}
.industry-risk-text-v7825 .industry-risk-grid-v7824,
.industry-support-text-v7825 .industry-support-grid-v7824{
  max-width:1080px;
}
.industry-risk-text-v7825 .industry-section-title-v7824,
.industry-support-text-v7825 .industry-support-grid-v7824 > div:first-child{
  max-width:720px;
  margin-bottom:34px;
}
.industry-risk-text-v7825 .industry-section-title-v7824 h2,
.industry-support-text-v7825 .industry-support-grid-v7824 h2{
  font-size:clamp(34px,3.25vw,52px);
  line-height:1.08;
  letter-spacing:-.045em;
  margin-bottom:18px;
}
.industry-risk-text-v7825 .industry-section-title-v7824 p,
.industry-support-text-v7825 .industry-support-grid-v7824 > div:first-child > p{
  font-size:15px;
  line-height:1.9;
  color:#596575;
}
.industry-risk-prose-list-v7825,
.industry-stage-table-v7825{
  max-width:1040px;
}
.industry-risk-prose-list-v7825 article,
.stage-row-v7825{
  padding:24px 0 26px;
}
.industry-risk-prose-list-v7825 .risk-index-v7825,
.stage-index-v7825{
  font-size:11px;
  margin-bottom:9px;
  letter-spacing:.17em;
}
.industry-risk-prose-list-v7825 h3,
.stage-row-v7825 h3{
  font-size:20px;
  line-height:1.38;
  margin-bottom:9px;
  letter-spacing:-.025em;
}
.industry-risk-prose-list-v7825 p,
.stage-row-v7825 p{
  font-size:15px;
  line-height:1.95;
  max-width:960px;
  color:#5d6877;
}
.industry-support-text-v7825 .pro-rich-list{
  font-size:15px;
  margin:18px 0 34px;
  gap:6px 24px;
}
@media (max-width:980px){
  .industry-risk-text-v7825,
  .industry-support-text-v7825{
    padding:58px 0;
  }
  .industry-risk-prose-list-v7825 article,
  .stage-row-v7825{
    padding:22px 0 24px;
  }
}
@media (max-width:640px){
  .industry-risk-text-v7825 .industry-section-title-v7824 h2,
  .industry-support-text-v7825 .industry-support-grid-v7824 h2{
    font-size:32px;
  }
  .industry-risk-prose-list-v7825 h3,
  .stage-row-v7825 h3{
    font-size:19px;
  }
  .industry-risk-prose-list-v7825 p,
  .stage-row-v7825 p{
    font-size:14.5px;
    line-height:1.9;
  }
}


/* V7.8.28 案例中心卡片展示与详情页文字化 */
.case-listing-page-v7828{
  padding-top:78px;
}
#casesListing.case-card-grid-v7828{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:18px !important;
}
#casesListing.case-card-grid-v7828 .poster-card-v7812{
  min-height:0;
  background:#fff;
  color:#111827;
  border:1px solid #e5e7eb;
  box-shadow:none;
  overflow:hidden;
}
#casesListing.case-card-grid-v7828 .poster-card-image-v7812,
#casesListing.case-card-grid-v7828 .poster-card-fallback-v7812{
  position:relative;
  inset:auto;
  display:block;
  width:100%;
  height:220px;
}
#casesListing.case-card-grid-v7828 .poster-card-image-v7812{
  object-fit:cover;
}
#casesListing.case-card-grid-v7828 .poster-card-fallback-v7812{
  background:linear-gradient(135deg,#f3f4f6,#fff);
}
#casesListing.case-card-grid-v7828 .poster-card-overlay-v7812{
  display:none;
}
#casesListing.case-card-grid-v7828 .poster-card-copy-v7812{
  min-height:260px;
  display:block;
  padding:28px 28px 30px;
  color:#111827;
  background:#fff;
}
#casesListing.case-card-grid-v7828 .poster-card-copy-v7812 span{
  color:#1E88E5;
  font-size:12px;
  letter-spacing:.14em;
  font-weight:950;
}
#casesListing.case-card-grid-v7828 .poster-card-copy-v7812 h3{
  margin:14px 0 12px;
  color:#111827;
  font-size:28px;
  line-height:1.12;
  letter-spacing:-.04em;
}
#casesListing.case-card-grid-v7828 .poster-card-copy-v7812 p{
  max-width:100%;
  margin:0;
  color:#5B6675;
  font-size:15px;
  line-height:1.82;
}
#casesListing.case-card-grid-v7828 .poster-card-copy-v7812 em{
  display:inline-flex;
  margin-top:20px;
  color:#F97316;
  font-size:15px;
  font-style:normal;
  font-weight:900;
}
#casesListing.case-card-grid-v7828 .poster-card-v7812:hover{
  transform:translateY(-4px);
  box-shadow:0 20px 60px rgba(15,23,42,.08);
}
#casesListing.case-card-grid-v7828 .poster-card-v7812:hover .poster-card-image-v7812{
  transform:scale(1.04);
}
.case-solution-text-v7828{
  background:#fff;
  padding:82px 0;
}
.case-thinking-layout-v7828{
  max-width:1120px;
}
.case-thinking-head-v7828{
  max-width:760px;
  margin-bottom:36px;
}
.case-thinking-head-v7828 span{
  display:inline-block;
  margin-bottom:12px;
  color:#1E88E5;
  font-size:12px;
  letter-spacing:.18em;
  font-weight:950;
}
.case-thinking-head-v7828 h2{
  margin:0 0 18px;
  color:#111827;
  font-size:clamp(36px,3.6vw,58px);
  line-height:1.06;
  letter-spacing:-.05em;
}
.case-thinking-head-v7828 p{
  margin:0;
  max-width:760px;
  color:#5B6675;
  font-size:15.5px;
  line-height:1.95;
}
.case-thinking-list-v7828{
  max-width:980px;
  border-top:1px solid #e5e7eb;
}
.case-thinking-list-v7828 article{
  position:relative;
  padding:26px 0 28px 70px;
  border-bottom:1px solid #e5e7eb;
}
.case-thinking-list-v7828 article span{
  position:absolute;
  left:0;
  top:30px;
  color:#1E88E5;
  font-size:11px;
  font-weight:950;
  letter-spacing:.18em;
}
.case-thinking-list-v7828 h3{
  margin:0 0 10px;
  color:#111827;
  font-size:21px;
  line-height:1.36;
  letter-spacing:-.025em;
}
.case-thinking-list-v7828 p{
  margin:0;
  max-width:860px;
  color:#5B6675;
  font-size:15px;
  line-height:1.95;
}
@media (max-width:1120px){
  #casesListing.case-card-grid-v7828{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}
@media (max-width:760px){
  #casesListing.case-card-grid-v7828{
    grid-template-columns:1fr !important;
  }
  #casesListing.case-card-grid-v7828 .poster-card-image-v7812,
  #casesListing.case-card-grid-v7828 .poster-card-fallback-v7812{
    height:200px;
  }
  #casesListing.case-card-grid-v7828 .poster-card-copy-v7812{
    min-height:0;
  }
  .case-solution-text-v7828{
    padding:62px 0;
  }
  .case-thinking-list-v7828 article{
    padding-left:0;
  }
  .case-thinking-list-v7828 article span{
    position:static;
    display:block;
    margin-bottom:9px;
  }
}


/* V7.8.30 案例中心菜单单列显示优化 */
.mega-panel.active .mega-columns:has(.mega-column:only-child){
  grid-template-columns:minmax(0, 520px);
  justify-content:start;
}


/* V7.8.32 合作方式内容结构重构版 */
.cooperation-page-v7832{
  background:#fff;
}
.coop-hero-v7832{
  min-height:620px;
  display:flex;
  align-items:center;
  color:#fff;
  background:
    radial-gradient(circle at 84% 18%, rgba(30,136,229,.20), transparent 28%),
    linear-gradient(135deg,#06111F 0%,#0B1B2B 55%,#1b1219 100%);
}
.coop-hero-inner-v7832{
  padding:116px 0 96px;
}
.coop-hero-v7832 span,
.coop-section-head-v7832 span,
.coop-text-layout-v7832 span,
.coop-final-inner-v7832 span{
  display:inline-block;
  margin-bottom:14px;
  color:#1E88E5;
  font-size:12px;
  font-weight:950;
  letter-spacing:.18em;
}
.coop-hero-v7832 h1{
  max-width:980px;
  margin:0;
  font-size:clamp(48px,6.4vw,96px);
  line-height:.98;
  letter-spacing:-.07em;
}
.coop-hero-v7832 p{
  max-width:830px;
  margin:28px 0 0;
  color:rgba(255,255,255,.74);
  font-size:18px;
  line-height:1.9;
}
.coop-hero-actions-v7832{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin-top:36px;
}
.coop-hero-actions-v7832 a,
.coop-final-inner-v7832 a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:52px;
  padding:0 26px;
  color:#fff;
  background:#1E88E5;
  font-weight:950;
}
.coop-hero-actions-v7832 a:nth-child(2){
  background:transparent;
  border:1px solid rgba(255,255,255,.32);
}
.coop-section-v7832,
.coop-process-v7832,
.coop-prepare-v7832,
.coop-text-section-v7832,
.coop-final-v7832{
  padding:82px 0;
}
.coop-section-v7832,
.coop-text-section-v7832{
  background:#fff;
}
.coop-process-v7832,
.coop-prepare-v7832,
.coop-delivery-v7832{
  background:#f4f5f7;
}
.coop-section-head-v7832{
  max-width:820px;
  margin-bottom:36px;
}
.coop-section-head-v7832 h2,
.coop-text-layout-v7832 h2,
.coop-final-inner-v7832 h2{
  margin:0;
  color:#111827;
  font-size:clamp(34px,4vw,62px);
  line-height:1.06;
  letter-spacing:-.05em;
}
.coop-section-head-v7832 p,
.coop-final-inner-v7832 p{
  margin:18px 0 0;
  max-width:760px;
  color:#5B6675;
  font-size:16px;
  line-height:1.9;
}
.coop-model-grid-v7832{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.coop-model-grid-v7832 article{
  min-height:280px;
  padding:28px;
  background:#0B1B2B;
  color:#fff;
  display:flex;
  flex-direction:column;
}
.coop-model-grid-v7832 b{
  color:#1E88E5;
  font-size:12px;
  letter-spacing:.16em;
}
.coop-model-grid-v7832 h3{
  margin:34px 0 12px;
  font-size:25px;
  line-height:1.18;
  letter-spacing:-.03em;
}
.coop-model-grid-v7832 p{
  margin:0;
  color:rgba(255,255,255,.72);
  font-size:15px;
  line-height:1.9;
}
.coop-process-layout-v7832{
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:72px;
  align-items:start;
}
.coop-process-list-v7832,
.coop-rich-text-v7832{
  border-top:1px solid #e1e5eb;
}
.coop-process-list-v7832 article{
  position:relative;
  padding:25px 0 26px 68px;
  border-bottom:1px solid #e1e5eb;
}
.coop-process-list-v7832 span{
  position:absolute;
  left:0;
  top:29px;
  color:#1E88E5;
  font-size:11px;
  font-weight:950;
  letter-spacing:.16em;
}
.coop-process-list-v7832 h3{
  margin:0 0 8px;
  color:#111827;
  font-size:21px;
  line-height:1.36;
  letter-spacing:-.025em;
}
.coop-process-list-v7832 p{
  margin:0;
  color:#5B6675;
  font-size:15px;
  line-height:1.88;
}
.coop-prepare-layout-v7832{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:64px;
  align-items:start;
}
.coop-prepare-grid-v7832{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.coop-prepare-grid-v7832 div{
  min-height:76px;
  display:flex;
  align-items:center;
  padding:18px 20px;
  color:#111827;
  background:#fff;
  border:1px solid #e5e7eb;
  font-size:16px;
  font-weight:900;
}
.coop-text-layout-v7832{
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:72px;
  align-items:start;
}
.coop-rich-text-v7832{
  padding-top:25px;
}
.coop-rich-text-v7832 p{
  margin:0 0 18px;
  color:#5B6675;
  font-size:16px;
  line-height:2;
}
.coop-rich-text-v7832 ul{
  margin:16px 0 0;
  padding-left:20px;
  color:#4b5563;
  font-size:15px;
  line-height:2;
}
.coop-rich-text-v7832 li{
  margin:8px 0;
}
.coop-final-v7832{
  color:#fff;
  background:
    radial-gradient(circle at 76% 20%, rgba(30,136,229,.18), transparent 28%),
    linear-gradient(135deg,#06111F,#111827);
}
.coop-final-inner-v7832{
  max-width:920px;
}
.coop-final-inner-v7832 h2{
  color:#fff;
}
.coop-final-inner-v7832 p{
  color:rgba(255,255,255,.72);
}
.coop-final-inner-v7832 a{
  margin-top:30px;
}
@media (max-width:1100px){
  .coop-model-grid-v7832{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .coop-process-layout-v7832,
  .coop-prepare-layout-v7832,
  .coop-text-layout-v7832{
    grid-template-columns:1fr;
    gap:34px;
  }
}
@media (max-width:720px){
  .coop-hero-v7832{
    min-height:560px;
  }
  .coop-hero-inner-v7832{
    padding:92px 0 72px;
  }
  .coop-section-v7832,
  .coop-process-v7832,
  .coop-prepare-v7832,
  .coop-text-section-v7832,
  .coop-final-v7832{
    padding:58px 0;
  }
  .coop-model-grid-v7832,
  .coop-prepare-grid-v7832{
    grid-template-columns:1fr;
  }
  .coop-model-grid-v7832 article{
    min-height:auto;
  }
  .coop-process-list-v7832 article{
    padding-left:0;
  }
  .coop-process-list-v7832 span{
    position:static;
    display:block;
    margin-bottom:8px;
  }
}


/* V7.8.34 关于我们内容结构重构版 */
.about-page-v7834{
  background:#fff;
}
.about-hero-v7834{
  min-height:620px;
  display:flex;
  align-items:center;
  color:#fff;
  background:
    radial-gradient(circle at 82% 18%, rgba(30,136,229,.18), transparent 28%),
    linear-gradient(135deg,#06111F 0%,#0B1B2B 56%,#17131c 100%);
}
.about-hero-inner-v7834{
  padding:116px 0 96px;
}
.about-hero-v7834 span,
.about-text-layout-v7834 span,
.about-section-head-v7834 span,
.about-contact-inner-v7834 span{
  display:inline-block;
  margin-bottom:14px;
  color:#1E88E5;
  font-size:12px;
  font-weight:950;
  letter-spacing:.18em;
}
.about-hero-v7834 h1{
  max-width:980px;
  margin:0;
  font-size:clamp(48px,6.4vw,96px);
  line-height:.98;
  letter-spacing:-.07em;
}
.about-hero-v7834 p{
  max-width:840px;
  margin:28px 0 0;
  color:rgba(255,255,255,.74);
  font-size:18px;
  line-height:1.9;
}
.about-hero-actions-v7834{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin-top:36px;
}
.about-hero-actions-v7834 a,
.about-contact-inner-v7834 a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:52px;
  padding:0 26px;
  color:#fff;
  background:#1E88E5;
  font-weight:950;
}
.about-hero-actions-v7834 a:nth-child(2){
  background:transparent;
  border:1px solid rgba(255,255,255,.32);
}
.about-intro-v7834,
.about-position-v7834,
.about-capability-v7834,
.about-clients-v7834,
.about-region-v7834,
.about-contact-v7834{
  padding:82px 0;
}
.about-position-v7834,
.about-clients-v7834{
  background:#f4f5f7;
}
.about-text-layout-v7834{
  display:grid;
  grid-template-columns:.78fr 1.22fr;
  gap:72px;
  align-items:start;
}
.about-text-layout-v7834 h2,
.about-section-head-v7834 h2,
.about-contact-inner-v7834 h2{
  margin:0;
  color:#111827;
  font-size:clamp(34px,4vw,62px);
  line-height:1.06;
  letter-spacing:-.05em;
}
.about-rich-text-v7834{
  border-top:1px solid #e1e5eb;
  padding-top:25px;
}
.about-rich-text-v7834 p{
  margin:0 0 18px;
  color:#5B6675;
  font-size:16px;
  line-height:2;
}
.about-section-head-v7834{
  max-width:840px;
  margin-bottom:36px;
}
.about-section-head-v7834 p{
  margin:18px 0 0;
  color:#5B6675;
  font-size:16px;
  line-height:1.9;
}
.about-cap-grid-v7834{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.about-cap-grid-v7834 article{
  min-height:250px;
  padding:28px;
  background:#0B1B2B;
  color:#fff;
}
.about-cap-grid-v7834 b{
  color:#1E88E5;
  font-size:12px;
  letter-spacing:.16em;
}
.about-cap-grid-v7834 h3{
  margin:34px 0 12px;
  font-size:25px;
  line-height:1.18;
  letter-spacing:-.03em;
}
.about-cap-grid-v7834 p{
  margin:0;
  color:rgba(255,255,255,.72);
  font-size:15px;
  line-height:1.9;
}
.about-client-list-v7834{
  border-top:1px solid #e1e5eb;
}
.about-client-list-v7834 article{
  padding:24px 0 26px;
  border-bottom:1px solid #e1e5eb;
}
.about-client-list-v7834 h3{
  margin:0 0 9px;
  color:#111827;
  font-size:21px;
  line-height:1.36;
  letter-spacing:-.025em;
}
.about-client-list-v7834 p{
  margin:0;
  color:#5B6675;
  font-size:15px;
  line-height:1.9;
}
.about-contact-v7834{
  color:#fff;
  background:
    radial-gradient(circle at 76% 20%, rgba(30,136,229,.18), transparent 28%),
    linear-gradient(135deg,#06111F,#111827);
}
.about-contact-inner-v7834{
  max-width:940px;
}
.about-contact-inner-v7834 h2{
  color:#fff;
}
.about-contact-inner-v7834 p{
  margin:20px 0 0;
  max-width:780px;
  color:rgba(255,255,255,.72);
  font-size:16px;
  line-height:1.9;
}
.about-contact-inner-v7834 a{
  margin-top:30px;
}
@media (max-width:1100px){
  .about-text-layout-v7834{
    grid-template-columns:1fr;
    gap:34px;
  }
  .about-cap-grid-v7834{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width:720px){
  .about-hero-v7834{
    min-height:560px;
  }
  .about-hero-inner-v7834{
    padding:92px 0 72px;
  }
  .about-intro-v7834,
  .about-position-v7834,
  .about-capability-v7834,
  .about-clients-v7834,
  .about-region-v7834,
  .about-contact-v7834{
    padding:58px 0;
  }
  .about-cap-grid-v7834{
    grid-template-columns:1fr;
  }
  .about-cap-grid-v7834 article{
    min-height:auto;
  }
}


/* V7.8.43 服务能力正文图片简化版：正文辅助图片区改为文字卡片 */
.pro-text-card-section{
  padding:92px 0;
  background:#fff;
}
.pro-text-card-section.industry-alt-bg{
  background:#f4f5f7;
}
.pro-text-card-wrap{
  display:grid;
  grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);
  gap:70px;
  align-items:start;
}
.pro-text-card-heading span,
.pro-text-card-body span{
  display:block;
  color:var(--red);
  font-size:13px;
  font-weight:950;
  letter-spacing:.24em;
  text-transform:uppercase;
  margin-bottom:18px;
}
.pro-text-card-heading h2{
  margin:0;
  color:var(--ink);
  font-size:clamp(38px,4.4vw,72px);
  line-height:.96;
  letter-spacing:-.08em;
}
.pro-text-card-body > p{
  margin:0;
  color:var(--muted);
  font-size:18px;
  line-height:1.95;
  max-width:860px;
}
.pro-text-card-section .pro-rich-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  margin:34px 0 0;
  padding:0;
  list-style:none;
  counter-reset:value-card;
}
.pro-text-card-section .pro-rich-list li{
  counter-increment:value-card;
  position:relative;
  min-height:124px;
  padding:26px 28px 24px 76px;
  background:#fff;
  border:1px solid rgba(15,23,42,.08);
  color:#4b5563;
  font-size:16px;
  line-height:1.75;
  box-shadow:0 18px 45px rgba(15,23,42,.05);
}
.pro-text-card-section .pro-rich-list li::before{
  content:counter(value-card, decimal-leading-zero);
  position:absolute;
  left:28px;
  top:28px;
  color:var(--red);
  font-size:13px;
  font-weight:950;
  letter-spacing:.12em;
}
.pro-text-card-section.industry-alt-bg .pro-rich-list li{
  background:#fff;
}
@media (max-width:900px){
  .pro-text-card-wrap{
    grid-template-columns:1fr;
    gap:34px;
  }
  .pro-text-card-section .pro-rich-list{
    grid-template-columns:1fr;
  }
  .pro-text-card-heading h2{
    font-size:42px;
  }
}


/* V7.8.44 服务能力正文信息板块排版优化：上标题 + 下方信息卡片 */
.pro-text-card-section{
  padding:84px 0;
  background:#fff;
}
.pro-text-card-section.industry-alt-bg{
  background:#f4f5f7;
}
.pro-text-card-wrap{
  display:block;
  max-width:1240px;
}
.pro-text-card-heading{
  max-width:980px;
  margin:0 0 24px;
}
.pro-text-card-heading span{
  display:block;
  color:var(--red);
  font-size:13px;
  font-weight:950;
  letter-spacing:.24em;
  text-transform:uppercase;
  margin-bottom:14px;
}
.pro-text-card-heading h2{
  margin:0;
  color:var(--ink);
  max-width:920px;
  font-size:clamp(34px,4.1vw,58px);
  line-height:1.05;
  letter-spacing:-.065em;
}
.pro-text-card-body{
  max-width:1240px;
}
.pro-text-card-body > span{
  display:none;
}
.pro-text-card-body > p{
  max-width:960px;
  margin:0;
  color:var(--muted);
  font-size:17px;
  line-height:1.92;
}
.pro-text-card-section .pro-rich-list{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:18px;
  margin:34px 0 0;
  padding:0;
  list-style:none;
  counter-reset:value-card;
}
.pro-text-card-section .pro-rich-list li{
  counter-increment:value-card;
  position:relative;
  min-height:108px;
  padding:26px 26px 24px 70px;
  background:#fff;
  border:1px solid rgba(15,23,42,.08);
  color:#4b5563;
  font-size:16px;
  line-height:1.75;
  box-shadow:0 14px 34px rgba(15,23,42,.045);
}
.pro-text-card-section .pro-rich-list li::before{
  content:counter(value-card, decimal-leading-zero);
  position:absolute;
  left:26px;
  top:28px;
  color:var(--red);
  font-size:13px;
  font-weight:950;
  letter-spacing:.12em;
}
@media (max-width:900px){
  .pro-text-card-section{
    padding:64px 0;
  }
  .pro-text-card-heading h2{
    font-size:38px;
    letter-spacing:-.06em;
  }
  .pro-text-card-body > p{
    font-size:16px;
  }
  .pro-text-card-section .pro-rich-list{
    grid-template-columns:1fr;
  }
}


/* V7.8.51 real company information + rich footer */
.footer-grid-rich {
  display: grid;
  grid-template-columns: minmax(280px, 1.65fr) minmax(130px, .7fr) minmax(190px, .9fr) minmax(250px, 1.15fr);
  align-items: start;
  gap: 52px;
  padding-bottom: 38px;
}

.footer-company p {
  max-width: 520px;
  line-height: 1.85;
}

.footer-service-area {
  margin-top: 14px;
  color: rgba(255,255,255,.52) !important;
}

.footer-column h3,
.footer-contact h3 {
  margin: 0 0 18px;
  color: #fff;
  font-size: 16px;
  font-weight: 950;
}

.footer-column.footer-links {
  display: grid;
  gap: 13px;
}

.footer-column.footer-links a {
  color: rgba(255,255,255,.68);
  font-size: 15px;
  font-weight: 650;
}

.footer-column.footer-links a:hover,
.footer-contact a:hover {
  color: #fff;
}

.footer-contact p {
  margin: 0 0 12px;
  color: rgba(255,255,255,.76);
  font-size: 15px;
  line-height: 1.7;
}

.footer-contact a {
  color: rgba(255,255,255,.9);
}

.footer-consult-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 96px;
  height: 42px;
  margin-top: 12px;
  padding: 0 18px;
  border: 1px solid rgba(255,255,255,.58);
  border-radius: 6px;
  color: #fff !important;
  font-weight: 950;
}

.footer-consult-btn:hover {
  background: rgba(255,255,255,.12);
}

.footer-bottom-rich {
  display: grid;
  grid-template-columns: 1.1fr 1fr auto;
  align-items: center;
  gap: 24px;
  padding-top: 24px;
}

.footer-bottom-rich span:nth-child(2) {
  text-align: center;
}

.footer-bottom-rich span:nth-child(3) {
  text-align: right;
}

.contact-real-list {
  display: grid;
  gap: 22px;
  margin-top: 34px;
}

.contact-real-list div {
  position: relative;
  display: grid;
  grid-template-columns: 30px 1fr;
  column-gap: 16px;
  padding-bottom: 20px;
  border-bottom: 1px solid rgba(255,255,255,.12);
}

.contact-real-list i {
  grid-row: 1 / span 2;
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  font-style: normal;
  color: var(--red);
}

.contact-real-list span {
  color: rgba(255,255,255,.62);
  font-size: 14px;
}

.contact-real-list strong {
  display: block;
  margin-top: 6px;
  color: #fff;
  font-size: 17px;
  line-height: 1.8;
}

.contact-real-list a {
  color: #fff;
}

.contact-work-note {
  display: flex;
  gap: 12px;
  align-items: center;
  margin-top: 28px;
  padding: 17px 20px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 6px;
}

.contact-work-note span {
  color: var(--red);
  font-size: 18px;
}

.contact-work-note p {
  margin: 0;
  color: rgba(255,255,255,.78);
  line-height: 1.7;
}

@media (max-width: 1100px) {
  .footer-grid-rich {
    grid-template-columns: 1fr 1fr;
  }

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

  .footer-bottom-rich span,
  .footer-bottom-rich span:nth-child(2),
  .footer-bottom-rich span:nth-child(3) {
    text-align: left;
  }
}

@media (max-width: 720px) {
  .footer-grid-rich {
    grid-template-columns: 1fr;
    gap: 30px;
  }

  .contact-real-list strong {
    font-size: 15px;
  }
}

/* V7.8.52 footer layout simplification + remove bottom floating buttons */
.footer-grid-clean {
  grid-template-columns: minmax(300px, 1.45fr) minmax(120px, .6fr) minmax(170px, .75fr) minmax(360px, 1.25fr);
  gap: 44px;
  padding-bottom: 34px;
}

.footer-grid-clean .footer-company p {
  max-width: 480px;
  margin: 18px 0 0;
  color: rgba(255,255,255,.64);
  line-height: 1.75;
}

.footer-grid-clean .footer-service-area {
  margin-top: 16px;
  color: rgba(255,255,255,.5) !important;
}

.footer-grid-clean .footer-column h3,
.footer-grid-clean .footer-contact h3 {
  margin-bottom: 18px;
  letter-spacing: .02em;
}

.footer-grid-clean .footer-links {
  gap: 12px;
}

.footer-grid-clean .footer-links a {
  color: rgba(255,255,255,.66);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.35;
}

.footer-contact-clean p {
  display: grid;
  gap: 6px;
  margin: 0 0 15px;
  color: rgba(255,255,255,.76);
  font-size: 14px;
  line-height: 1.65;
}

.footer-contact-clean p span {
  color: rgba(255,255,255,.46);
  font-size: 13px;
  font-weight: 700;
}

.footer-contact-clean p a {
  display: block;
  color: rgba(255,255,255,.86);
}

.footer-contact-clean .footer-consult-btn {
  height: 40px;
  margin-top: 8px;
  border-radius: 8px;
  background: transparent;
}

.footer-bottom-clean {
  grid-template-columns: 1.05fr 1fr auto;
  gap: 28px;
  padding-top: 24px;
  font-size: 13px;
  color: rgba(255,255,255,.48);
}

.floating-contact-bar {
  display: none !important;
}

@media (max-width: 1100px) {
  .footer-grid-clean {
    grid-template-columns: 1.2fr 1fr;
    gap: 34px;
  }
}

@media (max-width: 720px) {
  .footer-grid-clean {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .footer-bottom-clean {
    grid-template-columns: 1fr;
    gap: 10px;
  }
}

/* V7.8.53 footer contact icon list + centered bottom tagline */
.footer-contact-icon-list {
  min-width: 360px;
}

.footer-contact-icon-list h3 {
  margin-bottom: 20px;
}

.footer-contact-icon-list .footer-contact-item {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr);
  align-items: start;
  column-gap: 10px;
  margin: 0 0 12px;
  color: rgba(255,255,255,.82);
  font-size: 14px;
  line-height: 1.6;
}

.footer-contact-icon-list .footer-contact-item i {
  width: 22px;
  line-height: 1.6;
  color: var(--red);
  font-style: normal;
  text-align: center;
  opacity: .95;
}

.footer-contact-icon-list .footer-contact-item span {
  color: rgba(255,255,255,.82);
  font-size: 14px;
  font-weight: 700;
  word-break: normal;
  overflow-wrap: anywhere;
}

.footer-contact-icon-list a.footer-contact-item:hover span {
  color: #fff;
}

.footer-contact-icon-list p.footer-contact-item span {
  white-space: nowrap;
  word-break: keep-all;
  overflow-wrap: normal;
}

.footer-contact-icon-list .footer-consult-btn {
  margin-top: 16px;
}

.footer-bottom-clean {
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
}

.footer-bottom-clean span:nth-child(2) {
  justify-self: center;
  text-align: center;
  white-space: nowrap;
}

.footer-bottom-clean span:nth-child(3) {
  justify-self: end;
  text-align: right;
}

@media (max-width: 1100px) {
  .footer-bottom-clean {
    grid-template-columns: 1fr;
    justify-items: center;
    text-align: center;
  }

  .footer-bottom-clean span,
  .footer-bottom-clean span:nth-child(2),
  .footer-bottom-clean span:nth-child(3) {
    justify-self: center;
    text-align: center;
    white-space: normal;
  }
}

@media (max-width: 720px) {
  .footer-contact-icon-list {
    min-width: 0;
  }

  .footer-contact-icon-list p.footer-contact-item span {
    white-space: normal;
    overflow-wrap: anywhere;
  }

  .footer-contact-icon-list .footer-contact-item {
    grid-template-columns: 22px 1fr;
    font-size: 13px;
  }

  .footer-contact-icon-list .footer-contact-item span {
    font-size: 13px;
  }
}


/* V7.8.56 mobile viewing optimization - desktop styles unchanged */
@media (max-width: 720px) {
  html {
    scroll-padding-top: 64px;
  }

  body {
    font-size: 15px;
    line-height: 1.62;
  }

  .container {
    width: min(100% - 28px, var(--container));
  }

  .top-header,
  .header-inner,
  .mobile-panel-head {
    height: 64px;
  }

  .brand {
    font-size: 19px;
    letter-spacing: 0;
  }

  .mobile-menu-btn {
    width: 40px;
    height: 40px;
  }

  .mobile-menu-groups {
    padding: 10px 22px 104px;
  }

  .mobile-menu-groups summary {
    padding: 17px 0;
    font-size: 19px;
  }

  .mobile-subgroup a {
    padding: 9px 0;
    font-size: 15px;
  }

  .mobile-submit {
    left: 16px;
    right: 16px;
    bottom: 16px;
    height: 48px;
    border-radius: 8px;
  }

  .search-panel {
    padding-top: 84px;
  }

  .search-box {
    width: calc(100% - 28px);
    padding: 28px 20px 24px;
    border-radius: 14px;
  }

  .search-box h2 {
    font-size: 28px;
  }

  .search-box input {
    height: 52px;
  }

  .hero-slider {
    height: 520px;
    min-height: 520px;
  }

  .slide-content {
    justify-content: center;
    padding: 28px 0 54px;
  }

  .slide-content h1 {
    max-width: 92%;
    margin-bottom: 14px;
    font-size: 31px;
    line-height: 1.12;
    letter-spacing: -.035em;
  }

  .slide-content p {
    max-width: 92%;
    font-size: 15px;
    line-height: 1.75;
  }

  .slide-actions {
    width: min(100%, 320px);
    margin-top: 22px;
    gap: 10px;
    align-items: stretch;
  }

  .hero-primary,
  .hero-secondary,
  .primary-btn,
  .outline-btn {
    width: 100%;
    min-height: 46px;
    padding: 0 18px;
    border-radius: 8px;
    font-size: 15px;
  }

  .art-grid {
    right: -18%;
    top: 18%;
    width: 86%;
    height: 66%;
    opacity: .16;
  }

  .art-machine {
    right: -170px;
    bottom: 48px;
    width: 330px;
    height: 178px;
    opacity: .42;
  }

  .art-line {
    opacity: .48;
  }

  .slider-dots {
    bottom: 16px;
    padding: 8px 13px;
    gap: 10px;
  }

  .slider-dots button {
    width: 7px;
    height: 7px;
  }

  .slider-dots button.active {
    width: 36px;
  }

  .quick-strip-inner {
    min-height: auto;
    padding: 18px 0;
    gap: 12px;
    align-items: stretch;
  }

  .quick-strip p {
    font-size: 14px;
    line-height: 1.65;
  }

  .quick-strip a {
    display: inline-flex;
    justify-content: center;
    padding: 10px 18px;
    border-radius: 8px;
    font-size: 14px;
  }

  .apple-section,
  .case-theater,
  .cooperation-preview,
  .detail-section,
  .visual-gallery,
  .listing-page,
  .solution-page,
  .industry-page,
  .case-center-page,
  .cooperation-page,
  .about-page,
  .contact-page,
  .final-contact {
    padding: 44px 0;
  }

  .section-heading,
  .section-heading.center {
    margin-bottom: 24px;
  }

  .section-heading span,
  .sub-hero span,
  .detail-hero span,
  .about-page span,
  .contact-info span,
  .content-card span {
    margin-bottom: 8px;
    font-size: 11px;
    letter-spacing: .12em;
  }

  .section-heading h2,
  .sub-hero h1,
  .detail-hero h1 {
    font-size: 30px;
    line-height: 1.16;
    letter-spacing: -.035em;
  }

  .section-heading p,
  .sub-hero p,
  .detail-hero p,
  .content-card p,
  .cooperation-grid p,
  .about-layout p,
  .contact-info li,
  .customer-grid p {
    font-size: 15px;
    line-height: 1.72;
  }

  .apple-grid,
  .customer-grid,
  .cooperation-grid,
  .deliver-grid,
  .gallery-grid,
  .listing-grid {
    gap: 12px;
  }

  .apple-card {
    min-height: 370px;
    border-radius: 14px;
  }

  .apple-copy {
    padding: 28px 20px 0;
  }

  .apple-copy h3 {
    font-size: 25px;
    line-height: 1.18;
  }

  .apple-copy p {
    margin-top: 8px;
    font-size: 14px;
    line-height: 1.68;
  }

  .apple-visual {
    width: min(86%, 340px);
    height: 145px;
    bottom: 24px;
    border-radius: 20px;
  }

  .device-lines {
    inset: 20px;
    background-size: 24px 24px;
  }

  .device-lines::after {
    right: 16px;
    bottom: 16px;
    width: 96px;
    height: 44px;
    border-radius: 12px;
  }

  .theater-wrap {
    margin-top: 16px;
  }

  .theater-stage {
    gap: 12px;
    padding-bottom: 8px;
  }

  .theater-card {
    flex-basis: 88vw;
    height: 340px;
    border-radius: 16px;
  }

  .theater-bg::before {
    inset: 24px;
    background-size: 32px 32px;
  }

  .theater-bg::after {
    right: 28px;
    bottom: 30px;
    width: 132px;
    height: 70px;
    border-radius: 16px;
  }

  .theater-content {
    left: 22px;
    right: 22px;
    bottom: 24px;
  }

  .theater-content span {
    margin-bottom: 8px;
    font-size: 11px;
  }

  .theater-content h3 {
    font-size: 27px;
    line-height: 1.12;
  }

  .theater-content p {
    margin: 9px 0 14px;
    font-size: 14px;
    line-height: 1.6;
  }

  .theater-content em {
    padding: 9px 14px;
    font-size: 13px;
  }

  .mini-rail {
    padding-top: 10px;
  }

  .mini-case {
    flex-basis: 220px;
    min-height: 124px;
    padding: 12px;
    border-radius: 12px;
  }

  .mini-case div {
    height: 54px;
    margin-bottom: 10px;
  }

  .customer-grid a,
  .cooperation-grid article,
  .listing-card,
  .content-card,
  .side-card,
  .deliver-grid article,
  .about-layout article,
  .contact-info,
  .contact-form {
    min-height: auto;
    padding: 22px;
    border-radius: 14px;
  }

  .customer-grid h3,
  .listing-card h3,
  .deliver-grid article h3 {
    font-size: 23px;
    line-height: 1.18;
  }

  .cooperation-preview-inner {
    gap: 24px;
  }

  .cooperation-mini-list {
    gap: 10px;
  }

  .cooperation-mini-list a {
    padding: 16px 18px;
    border-radius: 12px;
    font-size: 17px;
  }

  .dark-link,
  .pill-link {
    padding: 10px 18px;
    font-size: 14px;
  }

  .center-action {
    margin-top: 24px;
  }

  .final-contact-card {
    padding: 22px 0;
    gap: 18px;
    align-items: stretch;
  }

  .final-contact-card h2 {
    font-size: 29px;
  }

  .final-contact-card p {
    margin-bottom: 0;
    font-size: 15px;
    line-height: 1.7;
  }

  .final-contact-card a {
    width: 100%;
    min-height: 48px;
    border-radius: 8px;
  }

  .sub-hero,
  .detail-hero {
    padding: 46px 0 40px;
  }

  .back-link {
    margin-bottom: 16px;
    font-size: 14px;
  }

  .detail-actions {
    gap: 10px;
    margin-top: 22px;
  }

  .detail-image-card {
    min-height: 220px;
    padding: 16px;
    border-radius: 16px;
  }

  .tech-visual {
    min-height: 188px;
    padding: 18px;
    font-size: 17px;
    border-radius: 12px;
    background-size: auto;
  }

  .detail-two-col,
  .detail-hero-grid,
  .contact-layout,
  .about-layout {
    gap: 24px;
  }

  .side-card h3,
  .content-card h2,
  .about-layout h2,
  .contact-info h2 {
    font-size: 26px;
    line-height: 1.18;
  }

  .gallery-grid div {
    min-height: 150px;
    border-radius: 12px;
  }

  .contact-real-list {
    gap: 16px;
    margin-top: 24px;
  }

  .contact-real-list div {
    grid-template-columns: 26px 1fr;
    column-gap: 12px;
    padding-bottom: 16px;
  }

  .contact-real-list strong {
    font-size: 15px;
    line-height: 1.65;
  }

  .contact-work-note {
    align-items: flex-start;
    padding: 14px 16px;
    border-radius: 12px;
  }

  .contact-form label {
    margin-bottom: 14px;
    font-size: 14px;
  }

  .contact-form input,
  .contact-form textarea {
    min-height: 52px;
    padding: 13px 14px;
    border-radius: 10px;
    font-size: 16px;
  }

  .contact-form button {
    height: 52px;
    border-radius: 10px;
  }

  .site-footer {
    padding: 40px 0 24px;
  }

  .footer-grid-clean,
  .footer-grid-rich {
    gap: 24px;
    padding-bottom: 26px;
  }

  .footer-brand {
    font-size: 18px;
    line-height: 1.35;
  }

  .footer-grid-clean .footer-company p,
  .footer-company p,
  .footer-service-area {
    max-width: none;
    margin-top: 12px;
    font-size: 14px;
    line-height: 1.72;
  }

  .footer-column h3,
  .footer-contact h3,
  .footer-grid-clean .footer-column h3,
  .footer-grid-clean .footer-contact h3 {
    margin-bottom: 12px;
    font-size: 15px;
  }

  .footer-column.footer-links {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px 16px;
  }

  .footer-grid-clean .footer-links a,
  .footer-column.footer-links a {
    font-size: 13px;
    line-height: 1.45;
  }

  .footer-contact-icon-list .footer-contact-item {
    grid-template-columns: 20px minmax(0, 1fr);
    column-gap: 9px;
    margin-bottom: 10px;
    font-size: 13px;
    line-height: 1.55;
  }

  .footer-contact-icon-list .footer-contact-item i {
    width: 20px;
  }

  .footer-contact-icon-list .footer-contact-item span {
    font-size: 13px;
    line-height: 1.65;
  }

  .footer-contact-icon-list .footer-consult-btn {
    width: 100%;
    height: 42px;
    margin-top: 12px;
  }

  .footer-bottom-clean,
  .footer-bottom-rich,
  .footer-bottom {
    gap: 8px;
    padding-top: 18px;
    font-size: 12px;
    line-height: 1.7;
    justify-items: center;
    text-align: center;
  }

  .toast {
    bottom: 18px;
    width: calc(100% - 28px);
    padding: 12px 14px;
    font-size: 14px;
  }
}

@media (max-width: 480px) {
  .hero-slider {
    height: 500px;
    min-height: 500px;
  }

  .slide-content h1 {
    font-size: 29px;
  }

  .slide-content p {
    font-size: 14px;
    line-height: 1.72;
  }

  .section-heading h2,
  .sub-hero h1,
  .detail-hero h1 {
    font-size: 28px;
  }

  .apple-card {
    min-height: 350px;
  }

  .apple-visual {
    height: 128px;
    bottom: 22px;
  }

  .theater-card {
    height: 318px;
  }

  .theater-content h3 {
    font-size: 25px;
  }

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

@media (max-width: 390px) {
  .container {
    width: min(100% - 24px, var(--container));
  }

  .brand,
  .short-name {
    font-size: 17px;
  }

  .hero-slider {
    height: 480px;
    min-height: 480px;
  }

  .slide-content h1 {
    font-size: 27px;
  }

  .slide-actions {
    width: 100%;
  }

  .section-heading h2,
  .sub-hero h1,
  .detail-hero h1 {
    font-size: 26px;
  }

  .apple-section,
  .case-theater,
  .cooperation-preview,
  .detail-section,
  .visual-gallery,
  .listing-page,
  .solution-page,
  .industry-page,
  .case-center-page,
  .cooperation-page,
  .about-page,
  .contact-page,
  .final-contact {
    padding: 38px 0;
  }

  .apple-card {
    min-height: 340px;
  }

  .customer-grid a,
  .cooperation-grid article,
  .listing-card,
  .content-card,
  .side-card,
  .deliver-grid article,
  .about-layout article,
  .contact-info,
  .contact-form {
    padding: 20px;
  }
}

/* V7.8.57 mobile touch polish - desktop styles unchanged */
@media (max-width: 1100px) {
  .header-actions {
    gap: 12px;
  }

  .search-trigger {
    width: 40px;
    height: 40px;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  .search-trigger span:not(.search-icon) {
    display: none;
  }

  .search-trigger .search-icon {
    display: inline-block;
    width: 18px;
    height: 18px;
  }
}

@media (max-width: 720px) {
  .theater-content p,
  .mini-case span {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  .theater-content p {
    -webkit-line-clamp: 3;
  }

  .mini-case span {
    -webkit-line-clamp: 2;
  }

  .footer-grid-clean .footer-links a,
  .footer-column.footer-links a,
  .footer-contact-icon-list .footer-contact-item {
    min-height: 40px;
    display: flex;
    align-items: center;
  }

  .footer-contact-icon-list .footer-contact-item {
    padding: 4px 0;
  }

  .footer-contact-icon-list p.footer-contact-item {
    align-items: flex-start;
  }

  .contact-real-list strong {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 18px;
  }

  .contact-real-list a {
    min-height: 40px;
    display: inline-flex;
    align-items: center;
  }

  .coop-hero-v7832 h1,
  .about-hero-v7834 h1 {
    font-size: clamp(34px, 10.5vw, 42px);
    line-height: 1.06;
  }
}
