@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Sans+SC:wght@400;500;600;700&display=swap');

:root {
  --ink: #152620;
  --ink-2: #33463f;
  --muted: #6e7e78;
  --paper: #f7f8f3;
  --white: #ffffff;
  --line: #dfe5dc;
  --lime: #d8f06b;
  --lime-strong: #bdda37;
  --green: #1e5947;
  --green-deep: #103c30;
  --mint: #e8f3eb;
  --orange: #f2a85d;
  --radius-lg: 28px;
  --radius-md: 18px;
  --shadow: 0 24px 70px rgba(25, 57, 46, .1);
  --max: 1180px;

  /* FDE Section */
  --fde-section-bg: #f7faf7;
  --fde-section-glow-mint: rgba(111, 217, 191, .16);
  --fde-section-glow-blue: rgba(120, 168, 255, .13);
  --fde-section-glow-lime: rgba(216, 235, 99, .14);
  --fde-text-primary: #123e32;
  --fde-text-secondary: #71847e;
  --fde-text-muted: #93a29d;
  --fde-before-bg-start: #eef4f5;
  --fde-before-bg-end: #f0f2fa;
  --fde-before-card: rgba(255, 255, 255, .82);
  --fde-before-border: rgba(68, 150, 135, .14);
  --fde-before-mint: #42b9a0;
  --fde-before-blue: #6d8fef;
  --fde-before-purple: #9b7de5;
  --fde-before-issue-bg: #f2f5c9;
  --fde-before-issue-border: #dde78c;
  --fde-before-issue-dot: #aacd2a;
  --fde-core-main: #d8eb63;
  --fde-core-light: #ebf69e;
  --fde-core-text: #103e34;
  --fde-core-ring-1: rgba(216, 235, 99, .24);
  --fde-core-ring-2: rgba(82, 201, 176, .14);
  --fde-core-glow: rgba(216, 235, 99, .26);
  --fde-core-pill-bg: rgba(255, 255, 255, .86);
  --fde-core-pill-border: rgba(24, 83, 68, .08);
  --fde-after-bg-start: #e9f8f6;
  --fde-after-bg-end: #efedff;
  --fde-after-card: rgba(255, 255, 255, .84);
  --fde-after-border: rgba(86, 120, 214, .13);
  --fde-after-main-start: #347a66;
  --fde-after-main-end: #245f50;
  --fde-after-cyan: #3bc7c4;
  --fde-after-blue: #5c8ef2;
  --fde-after-purple: #9270e7;
  --fde-after-soft-cyan: #e1f6f3;
  --fde-after-soft-blue: #e8f0ff;
  --fde-after-soft-purple: #efebff;
  --fde-line-normal: rgba(67, 132, 116, .26);
  --fde-line-active: rgba(96, 174, 150, .56);
  --fde-shadow: 0 18px 45px rgba(31, 72, 59, .08);
  --fde-card-radius: 28px;
  --fde-module-radius: 16px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--paper);
  color: var(--ink);
  font-family: "DM Sans", "Noto Sans SC", system-ui, sans-serif;
  -webkit-font-smoothing: antialiased;
}
body.menu-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; }
button, input, textarea, select { font: inherit; }

.container { width: min(var(--max), calc(100% - 48px)); margin-inline: auto; }
.section { padding: 112px 0; position: relative; }
.section-sm { padding: 76px 0; }
.section-white { background: var(--white); }
.section-dark { background: var(--green-deep); color: var(--white); overflow: hidden; }
.section-mint { background: #edf3ec; }
.eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin: 0 0 20px;
  color: var(--green);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.eyebrow::before { content: ""; width: 22px; height: 2px; background: currentColor; }
.section-dark .eyebrow { color: var(--lime); }
.home-label { min-height: 32px; max-width: none; margin: 0 0 24px; padding: 0 13px; display: inline-flex; align-items: center; gap: 7px; border-radius: 999px; background: #edf4eb; color: var(--green); letter-spacing: 0; line-height: 1; text-transform: none; white-space: nowrap; }
.home-label::before { display: none; }
.home-label__zh { color: var(--green); font-size: 14px; font-weight: 600; letter-spacing: .01em; }
.home-label__divider { color: rgba(30,89,71,.24); font-size: 11px; font-weight: 500; }
.home-label__en { color: #7d8b86; font-size: 12px; font-weight: 500; letter-spacing: .01em; }
.home-label--hero::before { content: ""; width: 6px; height: 6px; display: block; flex: 0 0 6px; border-radius: 50%; background: var(--lime-strong); }
.home-label--dark { background: var(--lime); color: var(--green-deep); }
.home-label--dark .home-label__zh { color: var(--green-deep); }
.home-label--dark .home-label__divider { color: rgba(16,60,48,.28); }
.home-label--dark .home-label__en { color: rgba(16,60,48,.66); }
.section-head__copy > .home-label, .hero-copy > .home-label, .trust-copy > .home-label { margin-bottom: 24px; font-size: inherit; }
.section-head__copy > .home-label + h2, .trust-copy > .home-label + h2 { margin-bottom: 24px; }
.hero-copy > .home-label + h1 { margin-bottom: 24px; }
.section-head:has(.home-label) { margin-bottom: 54px; }
.section-head:has(.home-label) + .timeline, .section-head:has(.home-label) + .fde-grid { margin-top: 0; }
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { letter-spacing: -.035em; }
h1 { font-size: clamp(46px, 6vw, 82px); line-height: 1.04; margin-bottom: 28px; }
h2 { font-size: clamp(34px, 4.2vw, 56px); line-height: 1.12; margin-bottom: 22px; }
h3 { font-size: 23px; line-height: 1.25; margin-bottom: 12px; }
p { color: var(--muted); line-height: 1.82; }
.cn-title { word-break: keep-all; overflow-wrap: normal; }
.section-dark p { color: #b9c9c3; }
.section-head { display: flex; justify-content: space-between; gap: 40px; align-items: end; margin-bottom: 54px; }
.section-head__copy { max-width: 660px; }
.section-head__copy p { max-width: 620px; margin-bottom: 0; font-size: 17px; }
.text-link { display: inline-flex; align-items: center; gap: 8px; color: var(--green); font-weight: 700; transition: gap .2s ease; }
.text-link:hover { gap: 13px; }
.section-dark .text-link { color: var(--lime); }

.site-header {
  position: fixed;
  z-index: 100;
  inset: 0 0 auto;
  height: 72px;
  transition: background .2s, box-shadow .2s;
}
.site-header--solid { background: #f7f8f3; box-shadow: 0 1px 0 rgba(21, 38, 32, .08); }
.site-header.is-scrolled { background: rgba(247, 248, 243, .92); backdrop-filter: blur(18px); box-shadow: 0 1px 0 rgba(21, 38, 32, .08); }
.site-header--solid.is-scrolled { background: #f7f8f3; backdrop-filter: none; }
.header-inner { height: 100%; display: flex; align-items: center; gap: 36px; }
.brand { display: flex; align-items: center; gap: 11px; font-weight: 800; white-space: nowrap; }
.brand-mark { width: 34px; height: 34px; border-radius: 11px; background: var(--green); position: relative; transform: rotate(-4deg); }
.brand-mark::before, .brand-mark::after { content: ""; position: absolute; border-radius: 999px; background: var(--lime); }
.brand-mark::before { width: 17px; height: 8px; left: 8px; top: 8px; transform: rotate(-24deg); }
.brand-mark::after { width: 11px; height: 6px; left: 12px; top: 19px; transform: rotate(22deg); }
.site-header .brand { gap: 10px; font-size: 15px; }
.site-header .brand-mark { width: 31px; height: 31px; border-radius: 10px; }
.site-header .brand-mark::before { width: 16px; height: 7px; left: 7px; top: 7px; }
.site-header .brand-mark::after { width: 10px; height: 6px; left: 11px; top: 17px; }
.site-nav { display: flex; align-items: center; justify-content: center; gap: 44px; flex: 1; }
.site-nav a { color: var(--ink-2); font-size: 14px; font-weight: 600; position: relative; padding: 25px 0; }
.site-nav a::after { content: ""; position: absolute; height: 2px; left: 50%; right: 50%; bottom: 16px; background: var(--green); transition: left .2s, right .2s; }
.site-nav a:hover::after, .site-nav a.is-active::after { left: 0; right: 0; }
.header-cta, .button {
  border: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 48px;
  padding: 0 23px;
  border-radius: 999px;
  background: var(--green);
  color: var(--white);
  font-weight: 700;
  transition: transform .18s, background .18s;
}
.header-cta:hover, .button:hover { transform: translateY(-2px); background: var(--green-deep); }
.header-cta { min-height: 44px; padding-inline: 20px; font-size: 14px; }
.button-light { background: var(--lime); color: var(--green-deep); }
.button-light:hover { background: #e5f789; }
.button-ghost { background: transparent; color: var(--ink); box-shadow: inset 0 0 0 1px var(--line); }
.button-ghost:hover { background: var(--white); }
.menu-toggle { display: none; margin-left: auto; border: 0; background: none; width: 44px; height: 44px; padding: 10px; }
.menu-toggle span { display: block; height: 2px; margin: 6px 0; background: var(--ink); transition: transform .2s; }

.hero { min-height: 720px; padding: 150px 0 78px; display: flex; align-items: center; overflow: hidden; }
.hero::before { content: ""; position: absolute; width: 620px; height: 620px; right: -230px; top: 20px; border: 1px solid rgba(30,89,71,.08); border-radius: 50%; }
.hero-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(360px, .43fr); gap: 32px; align-items: center; }
.hero-copy { max-width: none; }
.hero-title-line { display: block; white-space: nowrap; }
.hero-copy h1 em { font-style: normal; color: var(--green); position: relative; white-space: nowrap; }
.hero-copy h1 em::after { content: ""; position: absolute; left: 0; right: 0; bottom: 2px; height: 10px; border-radius: 9px; background: var(--lime); z-index: -1; }
.hero-copy p { max-width: 600px; font-size: 17px; line-height: 1.8; margin-bottom: 12px; }
.hero-copy p + p { color: var(--ink-2); }
.hero-actions { display: flex; gap: 14px; margin-top: 32px; flex-wrap: wrap; }
.ecosystem-bridge { position: relative; z-index: 12; height: 0; }
.ecosystem-band { --ecosystem-left: max(118px, calc((100% - 1392px) / 2 + 94px)); width: min(1120px, calc(100% - var(--ecosystem-left) - 24px)); min-height: 88px; margin-left: var(--ecosystem-left); padding: 12px 18px; transform: translateY(-50%); display: grid; grid-template-columns: 145px minmax(0, 1fr); align-items: center; gap: 0; background: rgba(255,255,255,.98); border: 1px solid rgba(30,89,71,.075); border-radius: 18px; box-shadow: 0 20px 56px rgba(25,57,46,.07); }
.ecosystem-band__title { min-height: 38px; margin: 0; padding: 0 18px 0 8px; display: flex; align-items: center; border-right: 1px solid rgba(30,89,71,.06); color: #7b8984; font-size: 13px; font-weight: 500; letter-spacing: .04em; line-height: 1.5; }
.ecosystem-band__list { display: grid; grid-template-columns: repeat(8, auto); }
.ecosystem-band__item { min-width: 0; min-height: 42px; padding: 5px 8px; display: flex; align-items: center; justify-content: center; gap: 6px; position: relative; color: var(--ink-2); font-size: 13.5px; font-weight: 700; white-space: nowrap; }
.ecosystem-band__item + .ecosystem-band__item::before { content: ""; position: absolute; left: 0; top: 50%; width: 1px; height: 20px; transform: translateY(-50%); background: rgba(30,89,71,.055); }
.ecosystem-band__item:last-child::before { height: 26px; background: rgba(30,89,71,.13); }
.ecosystem-band__logo { width: 26px; height: 26px; flex: 0 0 26px; object-fit: contain; }
.ecosystem-band__logo--app { border-radius: 7px; }
.ecosystem-band__logo--apaas { color: #7086c3; }
.hero-visual { min-height: 480px; position: relative; }
.orbit { position: absolute; inset: 15px; border: 1px solid rgba(30,89,71,.14); border-radius: 50%; animation: spin 30s linear infinite; }
.orbit:nth-child(2) { inset: 72px; animation-direction: reverse; animation-duration: 24s; }
.orbit-dot { position: absolute; width: 14px; height: 14px; border-radius: 50%; top: 18%; left: 2%; background: var(--orange); box-shadow: 0 0 0 8px rgba(242,168,93,.18); }
.orbit:nth-child(2) .orbit-dot { top: 65%; left: 90%; background: var(--lime-strong); }
@keyframes spin { to { transform: rotate(360deg); } }
.hero-hub { position: absolute; width: 210px; height: 210px; left: 50%; top: 50%; transform: translate(-50%, -50%); border-radius: 50%; background: var(--green); color: white; display: grid; place-content: center; text-align: center; box-shadow: var(--shadow); }
.hero-hub strong { display: block; font-size: 26px; }
.hero-hub span { color: #c8d9d2; font-size: 13px; margin-top: 7px; }
.float-chip { position: absolute; padding: 14px 18px; background: var(--white); border: 1px solid var(--line); border-radius: 14px; box-shadow: 0 12px 40px rgba(27, 66, 52, .09); font-weight: 700; font-size: 14px; }
.float-chip i { display: inline-block; width: 8px; height: 8px; margin-right: 8px; border-radius: 50%; background: var(--lime-strong); }
.float-chip--1 { left: 0; top: 18%; }
.float-chip--2 { right: 0; top: 30%; }
.float-chip--3 { left: 5%; bottom: 15%; }
.float-chip--4 { right: 4%; bottom: 12%; }

.business-status { background: radial-gradient(circle at 88% 18%, rgba(58,153,139,.045), transparent 32%), radial-gradient(circle at 8% 84%, rgba(183,210,78,.035), transparent 30%), linear-gradient(180deg, #fff 0%, #fafcf8 100%); }
.business-status .section-head__copy { max-width: 880px; }
.business-status__head { margin-bottom: 54px; }
.status-layout { display: grid; grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr); gap: 24px; align-items: start; }
.status-conclusion { min-height: 390px; padding: 38px 38px 34px; display: flex; flex-direction: column; position: relative; overflow: hidden; border: 1px solid rgba(30,89,71,.1); border-radius: var(--radius-lg); background: radial-gradient(circle at 90% 14%, rgba(77,195,176,.125), transparent 40%), radial-gradient(circle at 16% 92%, rgba(168,218,201,.045), transparent 40%), linear-gradient(145deg, #f5f7ef 0%, #ebf4ed 54%, #e3f2ee 100%); }
.status-conclusion::before { content: ""; position: absolute; width: 280px; height: 280px; right: -125px; top: -130px; border: 1px solid rgba(31,132,116,.085); border-radius: 50%; }
.status-conclusion::after { content: ""; position: absolute; width: 170px; height: 170px; right: -60px; top: -73px; border: 1px dashed rgba(38,145,124,.09); border-radius: 50%; }
.status-connector { display: flex; align-items: center; width: min(100%, 310px); margin-bottom: 44px; position: relative; z-index: 1; color: var(--green); }
.status-connector__end { min-width: 54px; padding: 7px 10px; border: 1px solid rgba(30,89,71,.12); border-radius: 999px; background: rgba(255,255,255,.55); text-align: center; font-size: 12px; font-weight: 700; }
.status-connector__line { height: 1px; flex: 1; border-top: 1px dashed rgba(30,89,71,.25); }
.status-connector__person { min-width: 72px; height: 39px; flex: 0 0 72px; padding-inline: 10px; display: grid; place-items: center; border-radius: 999px; background: var(--green); color: var(--white); font-size: 12px; font-weight: 800; white-space: nowrap; box-shadow: 0 0 0 6px rgba(197,231,72,.13), 0 0 18px rgba(166,207,49,.13); }
.status-conclusion__label { margin: 0 0 12px; color: var(--green); font-size: 12px; font-weight: 700; letter-spacing: .12em; }
.status-conclusion h3 { max-width: 390px; margin: 0; color: var(--green-deep); font-size: clamp(34px, 3vw, 45px); line-height: 1.16; }
.status-tool-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: auto; padding-top: 30px; position: relative; z-index: 1; }
.status-tool-tags span { display: inline-flex; align-items: center; gap: 6px; padding: 6px 10px 6px 6px; border: 1px solid rgba(30,89,71,.1); border-radius: 999px; background: rgba(255,255,255,.48); color: var(--ink-2); font-size: 12px; font-weight: 600; }
.status-tool-tags .tool-icon { width: 16px; height: 16px; flex: 0 0 16px; display: block; position: relative; border-radius: 0; background: none; color: var(--green); font-size: 0; font-style: normal; }
.status-tool-tags .tool-icon--table { color: #079b78; }
.status-tool-tags .tool-icon--system { color: #347fc2; }
.status-tool-tags .tool-icon--approval { color: #df7a22; }
.status-tool-tags .tool-icon--chat { color: #148ca5; }
.status-tool-tags .tool-icon--apps { color: #7961b6; }
.tool-icon::before, .tool-icon::after { content: ""; position: absolute; display: block; }
.tool-icon--table { border: 1.5px solid currentColor; border-radius: 3px; }
.tool-icon--table::before { left: 4px; top: 0; bottom: 0; width: 1px; background: currentColor; box-shadow: 5px 0 0 currentColor; opacity: .7; }
.tool-icon--table::after { left: 0; right: 0; top: 4px; height: 1px; background: currentColor; box-shadow: 0 5px 0 currentColor; opacity: .7; }
.tool-icon--system::before { width: 5px; height: 5px; left: 1px; top: 5px; border: 1.5px solid currentColor; border-radius: 50%; box-shadow: 8px -4px 0 -1px #e7f0e8, 8px -4px 0 0 currentColor, 8px 4px 0 -1px #e7f0e8, 8px 4px 0 0 currentColor; }
.tool-icon--system::after { width: 7px; height: 8px; left: 5px; top: 4px; border-top: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; opacity: .72; }
.tool-icon--approval { border: 1.5px solid currentColor; border-radius: 4px; }
.tool-icon--approval::before { width: 7px; height: 4px; left: 3px; top: 4px; border-left: 1.7px solid currentColor; border-bottom: 1.7px solid currentColor; transform: rotate(-45deg); }
.tool-icon--approval::after { width: 6px; height: 1px; left: 5px; bottom: 3px; background: currentColor; opacity: .55; }
.tool-icon--chat { width: 15px; height: 12px; top: 1px; border: 1.5px solid currentColor; border-radius: 5px; }
.tool-icon--chat::before { width: 5px; height: 5px; left: 2px; bottom: -4px; border-left: 1.5px solid currentColor; transform: skewY(-35deg); }
.tool-icon--chat::after { width: 7px; height: 1px; left: 3px; top: 4px; background: currentColor; box-shadow: 0 3px 0 currentColor; opacity: .6; }
.tool-icon--apps::before { width: 5px; height: 5px; left: 1px; top: 1px; border: 1.5px solid currentColor; border-radius: 2px; box-shadow: 8px 0 0 -1px #e7f0e8, 8px 0 0 0 currentColor, 0 8px 0 -1px #e7f0e8, 0 8px 0 0 currentColor, 8px 8px 0 -1px #e7f0e8, 8px 8px 0 0 currentColor; }
.status-pain-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); overflow: hidden; border: 1px solid rgba(30,89,71,.1); border-radius: var(--radius-lg); background: radial-gradient(circle at 88% 16%, rgba(71,170,160,.055), transparent 40%), radial-gradient(circle at 12% 92%, rgba(111,194,183,.035), transparent 38%), linear-gradient(135deg, #fdfefd 0%, #f2f8f7 100%); }
.status-pain { min-height: 185px; padding: 24px 28px 22px; border-right: 1px solid rgba(30,89,71,.09); border-bottom: 1px solid rgba(30,89,71,.09); background: rgba(255,255,255,.84); transition: background-color 250ms ease-out, transform 250ms ease-out, box-shadow 250ms ease-out, border-color 250ms ease-out; }
.status-pain:nth-child(1) { --pain-accent: #079b78; --pain-hover-bg: rgba(7,155,120,.055); --pain-icon-hover-bg: rgba(7,155,120,.15); }
.status-pain:nth-child(2) { --pain-accent: #e87818; --pain-hover-bg: rgba(232,120,24,.055); --pain-icon-hover-bg: rgba(232,120,24,.15); }
.status-pain:nth-child(3) { --pain-accent: #287fab; --pain-hover-bg: rgba(40,127,171,.055); --pain-icon-hover-bg: rgba(40,127,171,.15); }
.status-pain:nth-child(4) { --pain-accent: #78a300; --pain-hover-bg: rgba(190,222,47,.075); --pain-icon-hover-bg: rgba(190,222,47,.22); }
.status-pain:nth-child(2n) { border-right: 0; }
.status-pain:nth-child(n+3) { border-bottom: 0; }
.status-pain__meta { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 19px; }
.status-pain__num { color: var(--green); font-size: 11px; font-weight: 800; letter-spacing: .12em; }
.pain-symbol { --symbol-color: #267963; --symbol-bg: rgba(38,121,99,.08); width: 39px; height: 39px; display: block; position: relative; border: 1px solid color-mix(in srgb, var(--symbol-color) 22%, transparent); border-radius: 12px; background: var(--symbol-bg); transition: background-color 250ms ease-out, border-color 250ms ease-out, filter 250ms ease-out; }
.pain-symbol--data { --symbol-color: #079b78; --symbol-bg: rgba(7,155,120,.105); }
.pain-symbol--flow { --symbol-color: #e87818; --symbol-bg: rgba(232,120,24,.105); }
.pain-symbol--system { --symbol-color: #287fab; --symbol-bg: rgba(40,127,171,.105); }
.pain-symbol--ai { --symbol-color: #78a300; --symbol-bg: rgba(190,222,47,.17); }
.pain-symbol i { position: absolute; display: block; background: var(--symbol-color); }
.pain-symbol--data i { width: 9px; height: 7px; border: 1.75px solid var(--symbol-color); border-radius: 2px; background: transparent; }
.pain-symbol--data i:nth-child(1) { left: 9px; top: 10px; }
.pain-symbol--data i:nth-child(2) { right: 9px; top: 10px; }
.pain-symbol--data i:nth-child(3) { left: 9px; bottom: 10px; }
.pain-symbol--data i:nth-child(4) { right: 9px; bottom: 10px; }
.pain-symbol--flow i:nth-child(1), .pain-symbol--flow i:nth-child(2) { width: 10px; height: 2.25px; top: 18px; }
.pain-symbol--flow i:nth-child(1) { left: 7px; }
.pain-symbol--flow i:nth-child(2) { right: 7px; }
.pain-symbol--flow i:nth-child(3), .pain-symbol--flow i:nth-child(4) { width: 5px; height: 5px; top: 17px; border-radius: 50%; }
.pain-symbol--flow i:nth-child(3) { left: 5px; }
.pain-symbol--flow i:nth-child(4) { right: 5px; }
.pain-symbol--system i:nth-child(1), .pain-symbol--system i:nth-child(2) { width: 11px; height: 15px; top: 11px; border: 1.75px solid var(--symbol-color); border-radius: 3px; background: transparent; }
.pain-symbol--system i:nth-child(1) { left: 6px; }
.pain-symbol--system i:nth-child(2) { right: 6px; }
.pain-symbol--system i:nth-child(3), .pain-symbol--system i:nth-child(4) { display: none; }
.pain-symbol--ai::before { content: ""; position: absolute; width: 6px; height: 6px; left: 15px; top: 15px; border: 1.75px solid var(--symbol-color); border-radius: 50%; background: #f4f8e9; z-index: 1; }
.pain-symbol--ai i { width: 17px; height: 1.75px; left: 10px; top: 18px; transform-origin: center; }
.pain-symbol--ai i:nth-child(2) { transform: rotate(45deg); }
.pain-symbol--ai i:nth-child(3) { transform: rotate(90deg); }
.pain-symbol--ai i:nth-child(4) { transform: rotate(135deg); }
.status-pain h3 { margin-bottom: 13px; font-size: 21px; }
.status-pain p { margin: 0; font-size: 14px; line-height: 1.65; }
.status-pain p strong, .status-pain p span { display: block; }
.status-pain p strong { color: var(--ink-2); font-weight: 600; }
.status-pain p span { color: var(--muted); }

@media (hover: hover) and (pointer: fine) {
  .status-pain:hover { position: relative; z-index: 1; background-color: var(--pain-hover-bg); border-color: color-mix(in srgb, var(--pain-accent) 18%, transparent); transform: translateY(-3px); box-shadow: 0 12px 26px rgba(24,74,58,.075), inset 0 0 0 1px color-mix(in srgb, var(--pain-accent) 12%, transparent); }
  .status-pain:hover .pain-symbol { background-color: var(--pain-icon-hover-bg); border-color: color-mix(in srgb, var(--pain-accent) 34%, transparent); filter: saturate(1.18); }
}

.solution-section { background: linear-gradient(180deg, rgba(247,248,244,1) 0%, rgba(247,248,244,0) 14%, rgba(247,248,244,0) 86%, rgba(247,248,244,1) 100%), radial-gradient(ellipse 58% 46% at 15% 22%, rgba(168,216,236,.15), transparent 70%), radial-gradient(ellipse 54% 48% at 86% 44%, rgba(188,229,205,.16), transparent 70%), radial-gradient(ellipse 48% 38% at 42% 84%, rgba(216,206,244,.09), transparent 72%), #f7f8f4; }
.solution-grid { display: grid; grid-template-columns: repeat(12, 1fr); gap: 18px; }
.solution-card { --solution-accent: #148c84; --solution-soft: rgba(20,140,132,.12); min-height: 390px; border-radius: var(--radius-lg); padding: 28px; position: relative; overflow: hidden; isolation: isolate; display: flex; flex-direction: column; border: 1px solid var(--line); background: var(--white); transition: transform 250ms ease-out, box-shadow 250ms ease-out, border-color 250ms ease-out; }
.solution-card:focus-visible { outline: 3px solid color-mix(in srgb, var(--solution-accent) 52%, white); outline-offset: 3px; }
.solution-card::before { content: ""; position: absolute; z-index: -1; inset: 0; pointer-events: none; opacity: .9; }
.solution-card > * { position: relative; z-index: 1; }
.solution-card:nth-child(1), .solution-card:nth-child(4) { grid-column: span 7; }
.solution-card:nth-child(2), .solution-card:nth-child(3) { grid-column: span 5; }
.solution-card:nth-child(1) { --solution-accent: #d8f06b; --solution-soft: rgba(216,240,107,.16); background: var(--green); color: white; border-color: var(--green); }
.solution-card:nth-child(1)::before { background: radial-gradient(circle at 88% 80%, rgba(216,240,107,.15), transparent 35%), linear-gradient(115deg, transparent 54%, rgba(55,169,142,.09)); }
.solution-card:nth-child(2) { --solution-accent: #138d86; --solution-soft: rgba(19,141,134,.12); background: var(--mint); }
.solution-card:nth-child(2)::before { background: radial-gradient(circle at 94% 76%, rgba(38,174,155,.12), transparent 38%); }
.solution-card:nth-child(3) { --solution-accent: #3789b5; --solution-soft: rgba(55,137,181,.12); background: #fff7e9; }
.solution-card:nth-child(3)::before { background: radial-gradient(circle at 84% 68%, rgba(69,161,207,.13), transparent 42%); }
.solution-card:nth-child(4) { --solution-accent: #7867ba; --solution-soft: rgba(120,103,186,.12); background: #e4ecd8; }
.solution-card:nth-child(4)::before { background: radial-gradient(circle at 82% 68%, rgba(126,105,200,.13), transparent 38%), radial-gradient(circle at 96% 16%, rgba(185,223,85,.09), transparent 24%); }
.solution-icon { width: 48px; height: 48px; flex: 0 0 48px; display: grid; place-items: center; border: 1px solid color-mix(in srgb, var(--solution-accent) 24%, transparent); border-radius: 15px; margin-bottom: 15px; background: color-mix(in srgb, var(--solution-soft) 86%, rgba(255,255,255,.42)); color: var(--solution-accent); box-shadow: 0 8px 18px color-mix(in srgb, var(--solution-accent) 10%, transparent); transition: filter 250ms ease-out, transform 250ms ease-out; }
.solution-icon svg { width: 26px; height: 26px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.solution-card:first-child .solution-icon { border-color: rgba(216,240,107,.34); background: var(--lime); color: var(--green-deep); box-shadow: 0 8px 20px rgba(216,240,107,.12); }
.solution-card h3 { margin-bottom: 7px; }
.solution-card > p { max-width: 560px; margin-bottom: 0; font-size: 14px; line-height: 1.62; }
.solution-card:first-child > p { color: #c5d5cf; }
.solution-card .text-link { margin-top: auto; transition: gap .2s ease, transform 250ms ease-out; }
.solution-card:first-child .text-link { color: var(--lime); }
.solution-visual { min-height: 158px; margin: 16px 0 18px; position: relative; color: var(--green-deep); font-size: 11px; overflow: hidden; }
.business-dashboard { position: absolute; inset: 5px 0; padding: 13px 14px; display: grid; grid-template-rows: auto auto minmax(0, 1fr) auto; gap: 8px; border: 1px solid rgba(216,240,107,.16); border-radius: 22px; background: linear-gradient(145deg, rgba(255,255,255,.085), rgba(35,112,91,.13)); box-shadow: 0 20px 42px rgba(8,33,25,.18), inset 0 1px 0 rgba(255,255,255,.05); backdrop-filter: blur(8px); transition: transform 250ms ease-out, border-color 250ms ease-out, box-shadow 250ms ease-out; }
.business-dashboard__head { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.business-dashboard__head strong { color: #edf8f3; font-size: 10px; }
.business-dashboard__head span { display: inline-flex; align-items: center; gap: 5px; color: #a9c5bb; font-size: 8px; }
.business-dashboard__head i { width: 5px; height: 5px; border-radius: 50%; background: #6ed8bd; box-shadow: 0 0 0 3px rgba(110,216,189,.1); }
.dashboard-kpis { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; }
.dashboard-kpis span { min-width: 0; padding: 9px 10px; border: 1px solid rgba(255,255,255,.09); border-radius: 12px; background: rgba(255,255,255,.055); }
.dashboard-kpis small, .dashboard-kpis b, .dashboard-kpis em { display: block; }
.dashboard-kpis small { color: #abc5bb; font-size: 8px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.dashboard-kpis b { margin-top: 4px; color: var(--lime); font-size: 18px; line-height: 1; letter-spacing: -.03em; }
.dashboard-kpis em { margin-top: 4px; color: #91b2a6; font-size: 7px; font-style: normal; white-space: nowrap; }
.dashboard-main { min-height: 0; display: grid; grid-template-columns: minmax(0, 1fr) 76px; gap: 9px; align-items: stretch; }
.dashboard-trend { min-width: 0; padding: 8px 10px 6px; overflow: hidden; display: grid; grid-template-rows: auto minmax(0, 1fr) auto; border: 1px solid rgba(255,255,255,.08); border-radius: 14px; background: rgba(9,49,38,.12); }
.dashboard-trend__head { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.dashboard-trend__head small { color: #b6cbc3; font-size: 8px; }
.dashboard-trend__head strong { color: #8be0cd; font-size: 7px; font-weight: 700; white-space: nowrap; }
.dashboard-trend svg { width: 100%; height: 100%; min-height: 68px; overflow: visible; }
.dashboard-grid path { fill: none; stroke: rgba(255,255,255,.075); stroke-width: 1; stroke-dasharray: 3 4; }
.dashboard-trend .dashboard-area { fill: url(#dashboardArea); }
.dashboard-trend polyline { fill: none; stroke: var(--lime); stroke-width: 2.5; stroke-linecap: round; stroke-linejoin: round; filter: drop-shadow(0 4px 7px rgba(216,240,107,.16)); transition: stroke-width 250ms ease-out, filter 250ms ease-out; }
.dashboard-trend circle { fill: #70d8c2; stroke: #205f4f; stroke-width: 1.5; }
.dashboard-ticks { display: flex; justify-content: space-between; color: #7f9f94; font-size: 6px; }
.dashboard-progress { display: grid; align-content: center; justify-items: center; gap: 5px; padding: 7px 4px; border: 1px solid rgba(255,255,255,.08); border-radius: 14px; background: rgba(255,255,255,.045); }
.dashboard-progress__ring { width: 57px; height: 57px; display: grid; place-items: center; position: relative; border-radius: 50%; background: conic-gradient(var(--lime) 0 92%, rgba(255,255,255,.1) 92% 100%); }
.dashboard-progress__ring::after { content: ""; position: absolute; inset: 6px; border-radius: inherit; background: #246954; }
.dashboard-progress__ring b { position: relative; z-index: 1; color: white; font-size: 13px; }
.dashboard-progress > strong { color: #c2d5ce; font-size: 8px; }
.dashboard-progress > span { max-width: 66px; color: #86a79b; font-size: 6px; line-height: 1.35; text-align: center; }
.dashboard-legend { display: flex; align-items: center; gap: 14px; padding-left: 3px; color: #9ab6ac; font-size: 7px; }
.dashboard-legend span { display: inline-flex; align-items: center; gap: 5px; }
.dashboard-legend i { width: 5px; height: 5px; border-radius: 50%; background: #6ed8bd; }
.dashboard-legend span:nth-child(2) i { background: var(--lime); }
.dashboard-legend span:nth-child(3) i { background: #f0a14b; }
.solution-visual--workflow { min-height: 162px; display: flex; align-items: center; overflow: visible; }
.workflow-track { width: 100%; min-width: 0; padding: 22px 0 47px; display: flex; align-items: flex-start; }
.workflow-node { min-width: 38px; flex: 0 0 auto; display: grid; justify-items: center; gap: 7px; position: relative; color: #41655d; }
.workflow-node > i { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 11px; background: rgba(255,255,255,.7); color: #4b8177; border: 1px solid rgba(19,141,134,.16); box-shadow: 0 8px 18px rgba(27,95,77,.075); font-style: normal; font-size: 11px; font-weight: 800; transition: transform 250ms ease-out, box-shadow 250ms ease-out, background-color 250ms ease-out; }
.workflow-node b { max-width: 48px; font-size: 8px; line-height: 1.2; font-weight: 700; text-align: center; white-space: nowrap; }
.workflow-node--done > i { background: linear-gradient(145deg, rgba(255,255,255,.9), rgba(209,242,233,.72)); color: #118c83; }
.workflow-node--active { min-width: 48px; margin-top: -5px; }
.workflow-node--active > i { width: 44px; height: 44px; border-color: transparent; border-radius: 14px; background: linear-gradient(145deg, #0f9a8c, #347fb1); color: white; font-size: 17px; box-shadow: 0 12px 26px rgba(31,130,136,.22), 0 0 0 7px rgba(19,141,134,.075); }
.workflow-node--active b { color: #175f58; }
.workflow-node--complete > i { background: linear-gradient(145deg, #f0a14b, #ef8e3d); color: white; border-color: rgba(234,145,52,.2); box-shadow: 0 9px 20px rgba(224,134,52,.16); }
.workflow-line { height: 1px; min-width: 5px; flex: 1; margin: 17px -1px 0; position: relative; background: linear-gradient(90deg, rgba(19,141,134,.22), rgba(43,139,163,.62)); transition: filter 250ms ease-out, opacity 250ms ease-out; }
.workflow-line::after { content: ""; position: absolute; right: 1px; top: -2px; width: 5px; height: 5px; border-top: 1px solid #268d98; border-right: 1px solid #268d98; transform: rotate(45deg); }
.workflow-running { position: absolute; right: 2px; bottom: 0; padding: 6px 9px; display: inline-flex; align-items: center; gap: 6px; border: 1px solid rgba(19,141,134,.1); border-radius: 999px; background: rgba(255,255,255,.44); color: #4d756c; font-size: 8px; }
.workflow-running i { width: 6px; height: 6px; border-radius: 50%; background: var(--solution-accent); box-shadow: 0 0 0 4px var(--solution-soft); }
.workflow-running b { font-size: 8px; }
.workflow-running em { padding-left: 6px; border-left: 1px solid rgba(19,141,134,.12); color: #66857d; font-style: normal; white-space: nowrap; }
/* One shared canvas: layered product modules, without connection paths or orbit decoration. */
.solution-card.solution-card--integration {
  --solution-accent: #377ec2;
  --solution-soft: rgba(55,126,194,.12);
  background: radial-gradient(ellipse at 93% 86%, rgba(173,151,233,.26), transparent 48%), radial-gradient(ellipse at 70% 43%, rgba(124,216,183,.26), transparent 46%), linear-gradient(112deg, #f8f7f2 0%, #f5f7f3 30%, #deedfc 64%, #e3f4ec 80%, #eee6fb 100%);
  border-color: rgba(73,115,141,.14);
}
.solution-card.solution-card--integration::before { background: radial-gradient(ellipse at 77% 20%, rgba(255,255,255,.55), transparent 56%); }
.solution-card--integration > .solution-icon { width: 26px; height: 26px; flex-basis: 26px; margin-bottom: 16px; border: 0; border-radius: 0; background: none; color: #357568; box-shadow: none; }
.solution-card--integration > .solution-icon svg { width: 22px; height: 22px; }
.solution-card--integration > h3 { margin-bottom: 16px; color: #123e32; font-size: clamp(28px, 2.3vw, 34px); line-height: 1.15; letter-spacing: -.035em; }
.solution-card--integration > p { color: #526c66; font-size: 14px; line-height: 1.8; text-wrap: pretty; }
.solution-visual--integration { min-height: 318px; margin: 0; padding: 0; display: grid; place-items: center; overflow: visible; isolation: isolate; border: 0; border-radius: 0; background: none; box-shadow: none; }
.integration-cluster { width: min(100%, 340px); height: 318px; position: relative; isolation: isolate; }
.integration-cluster::before { content: ""; position: absolute; width: 180px; height: 180px; left: 52%; top: 44%; z-index: 0; transform: translate(-50%,-50%); background: radial-gradient(circle, rgba(166,224,195,.44), transparent 70%); pointer-events: none; }
.integration-hub, .integration-app { position: absolute; display: grid; transform: translate(-50%,-50%) rotate(var(--module-tilt, 0deg)); transition: transform 250ms ease-out, box-shadow 250ms ease-out; }
.integration-hub { width: 106px; height: 44px; left: 52%; top: 44%; z-index: 4; grid-template-columns: 18px auto; align-items: center; justify-content: center; gap: 7px; border: 1px solid rgba(255,255,255,.58); border-radius: 15px; background: linear-gradient(145deg, #367e6b, #205c4d); color: white; box-shadow: 0 6px 15px rgba(35,103,86,.13), inset 0 1px 0 rgba(255,255,255,.16); }
.integration-hub > svg { width: 18px; height: 18px; fill: none; stroke: #d1f2e8; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.integration-hub > b { font-size: 12px; line-height: 1.2; white-space: nowrap; }
.integration-app { width: 46%; padding: 14px 16px; z-index: 2; grid-template-columns: minmax(0,1fr); align-content: center; justify-items: start; gap: 9px; border: 1px solid var(--node-border); border-radius: 18px; background: linear-gradient(145deg, var(--node-surface), var(--node-tint)); color: var(--node-ink); box-shadow: 0 7px 18px rgba(63,85,108,.055), inset 0 1px 0 rgba(255,255,255,.65); }
.integration-app > i { width: 24px; height: 24px; display: grid; place-items: center; }
.integration-app > span { min-width: 0; display: grid; gap: 5px; }
.integration-app svg { width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.integration-app b { color: currentColor; font-size: 14px; line-height: 1.2; white-space: nowrap; }
.integration-app small { display: inline-flex; align-items: center; gap: 5px; color: #49685f; font-size: 10px; line-height: 1.3; white-space: nowrap; }
.integration-app small::before { content: ""; width: 5px; height: 5px; flex: 0 0 5px; border-radius: 50%; background: #369966; }
.integration-app--erp { --node-ink: #2866a0; --node-border: rgba(66,131,200,.20); --node-surface: #dceeff; --node-tint: #bfdcf9; --module-tilt: -3deg; min-height: 108px; left: 27%; top: 24%; }
.integration-app--crm { --node-ink: #1d7b63; --node-border: rgba(36,155,128,.21); --node-surface: #ddf8ef; --node-tint: #b9ebd9; --module-tilt: 3deg; min-height: 102px; left: 74%; top: 20%; }
.integration-app--wecom { --node-ink: #287ca4; --node-border: rgba(51,145,190,.20); --node-surface: #d9f1ff; --node-tint: #bfe4f7; --module-tilt: -2deg; min-height: 102px; left: 26%; top: 62%; }
.integration-app--sheet { --node-ink: #4d7c43; --node-border: rgba(91,155,94,.20); --node-surface: #e6f5da; --node-tint: #cce8b9; --module-tilt: 3deg; min-height: 100px; left: 74%; top: 64%; }
.integration-app--finance { --node-ink: #7353aa; --node-border: rgba(123,96,193,.21); --node-surface: #eee5ff; --node-tint: #dbcef7; --module-tilt: -1deg; width: clamp(124px, 57%, 174px); min-height: 62px; left: 55%; top: 88%; z-index: 3; grid-template-columns: 24px minmax(0,1fr); gap: 10px; padding: 12px 16px; }
.solution-visual--ai { min-height: 300px; display: grid; grid-template-columns: minmax(120px, 1fr) 92px minmax(144px, 1.08fr); gap: 9px; align-items: center; overflow: visible; isolation: isolate; }
.solution-visual--ai::before { content: ""; position: absolute; width: 176px; height: 210px; left: 49%; top: 50%; z-index: 0; transform: translate(-50%, -50%); border-radius: 50%; background: radial-gradient(circle, rgba(120,103,186,.16), rgba(86,123,188,.065) 43%, transparent 72%); opacity: .88; pointer-events: none; transition: opacity 250ms ease-out, transform 250ms ease-out; }
.ai-stage { min-width: 0; min-height: 246px; padding: 14px; position: relative; z-index: 2; display: grid; align-content: start; gap: 11px; border-radius: 22px; transition: transform 250ms ease-out, filter 250ms ease-out, box-shadow 250ms ease-out; }
.ai-stage--data { transform: translateY(-4px); border: 1px solid rgba(57,127,182,.13); background: linear-gradient(155deg, rgba(237,247,253,.92), rgba(247,250,251,.75)); box-shadow: 0 15px 32px rgba(55,126,173,.085); }
.ai-stage--ability { transform: translateY(4px); border: 1px solid rgba(30,145,130,.13); background: linear-gradient(155deg, rgba(235,249,246,.92), rgba(247,251,247,.76)); box-shadow: 0 15px 32px rgba(30,135,120,.085); }
.ai-stage__head { display: grid; gap: 3px; }
.ai-stage__head > b { color: #315f70; font-size: 11px; }
.ai-stage--ability .ai-stage__head > b { color: #246d64; }
.ai-stage__head > small { display: inline-flex; align-items: center; gap: 5px; color: #78929b; font-size: 7px; white-space: nowrap; }
.ai-stage__head > small i { width: 5px; height: 5px; border-radius: 50%; background: #a9d844; box-shadow: 0 0 0 2px rgba(169,216,68,.14); }
.ai-stage__list { display: grid; gap: 7px; }
.ai-stage__list > span { min-height: 48px; padding: 8px 9px; display: grid; grid-template-columns: 27px minmax(0,1fr); align-items: center; gap: 7px; border: 1px solid rgba(57,127,182,.09); border-radius: 13px; background: rgba(255,255,255,.66); color: #3f718c; }
.ai-stage__list > span:nth-child(2) { background: rgba(241,244,253,.7); color: #6570a3; }
.ai-stage__list > span:nth-child(3) { background: rgba(237,248,247,.72); color: #397f78; }
.ai-stage__list i, .ai-ability-list i { width: 27px; height: 27px; display: grid; place-items: center; border-radius: 9px; background: rgba(57,127,182,.12); font-size: 12px; font-style: normal; }
.ai-stage__list b { font-size: 9px; white-space: nowrap; }
.ai-engine-wrap { min-width: 0; height: 215px; position: relative; z-index: 3; display: grid; place-items: center; }
.ai-engine { width: 88px; height: 88px; position: relative; z-index: 2; display: grid; place-items: center; align-content: center; gap: 5px; border-radius: 50%; background: radial-gradient(circle at 70% 24%, rgba(216,240,107,.33), transparent 18%), linear-gradient(145deg, #58449f, #7562c4 56%, #5269b9); color: white; box-shadow: 0 20px 42px rgba(90,66,160,.25), 0 0 0 9px rgba(120,103,186,.06), 0 0 37px rgba(120,103,186,.17); transition: box-shadow 250ms ease-out, transform 250ms ease-out; }
.ai-engine::before, .ai-engine::after { content: ""; position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); border: 1px solid rgba(120,103,186,.12); border-radius: 50%; pointer-events: none; }
.ai-engine::before { width: 118px; height: 118px; }
.ai-engine::after { width: 150px; height: 150px; border-color: rgba(94,122,184,.075); }
.ai-engine > span { position: absolute; right: 11px; top: 8px; color: var(--lime); font-size: 15px; transition: filter 250ms ease-out; }
.ai-engine > b { font-size: 24px; line-height: 1; }
.ai-engine > small { color: #e5e0f5; font-size: 8px; }
.ai-flow { width: 16px; height: 1px; position: absolute; top: 50%; z-index: 1; background: linear-gradient(90deg, rgba(75,137,159,.16), rgba(108,91,178,.35)); }
.ai-flow::after { content: ""; position: absolute; right: 0; top: -2px; width: 5px; height: 5px; border-top: 1px solid rgba(108,91,178,.4); border-right: 1px solid rgba(108,91,178,.4); transform: rotate(45deg); }
.ai-flow--left { left: -9px; }
.ai-flow--right { right: -9px; background: linear-gradient(90deg, rgba(108,91,178,.35), rgba(45,145,132,.16)); }
.ai-ability-list { display: grid; gap: 6px; }
.ai-ability-list > span { min-height: 40px; padding: 7px 8px; display: grid; grid-template-columns: 27px minmax(0,1fr); grid-template-rows: auto auto; align-items: center; column-gap: 8px; border: 1px solid rgba(30,145,130,.085); border-radius: 12px; background: rgba(255,255,255,.64); color: #347b72; }
.ai-ability-list i { grid-row: 1 / 3; color: #2c887b; background: rgba(30,145,130,.12); }
.ai-ability-list b { align-self: end; font-size: 9px; white-space: nowrap; }
.ai-ability-list small { align-self: start; overflow: hidden; color: #708e87; font-size: 7px; text-overflow: ellipsis; white-space: nowrap; }
.ai-result { padding: 9px 10px; display: grid; gap: 4px; border: 1px solid rgba(120,103,186,.12); border-radius: 13px; background: linear-gradient(145deg, rgba(242,237,252,.9), rgba(242,247,252,.72)); box-shadow: 0 9px 20px rgba(96,79,143,.075); transition: transform 250ms ease-out, border-color 250ms ease-out, box-shadow 250ms ease-out; }
.ai-result small { color: #7667a1; font-size: 7px; font-weight: 700; letter-spacing: .035em; }
.ai-result strong { color: #51447d; font-size: 9px; line-height: 1.35; white-space: nowrap; }
@media (hover: hover) and (pointer: fine) {
  .solution-card[data-reveal]:hover { transform: translateY(-4px); border-color: rgba(30,89,71,.14); box-shadow: 0 18px 42px rgba(29,77,60,.09); }
  .solution-card:hover .solution-icon { filter: saturate(1.15); transform: translateY(-1px); }
  .solution-card:hover .text-link { transform: translateX(4px); }
  .solution-card--business-systems:hover .business-dashboard { transform: translateY(-2px); border-color: rgba(216,240,107,.22); box-shadow: 0 22px 46px rgba(8,33,25,.21), inset 0 1px 0 rgba(255,255,255,.06); }
  .solution-card--business-systems:hover .dashboard-trend polyline { stroke-width: 2.8; filter: drop-shadow(0 5px 9px rgba(216,240,107,.22)); }
  .solution-card--automation:hover .workflow-line { opacity: 1; filter: saturate(1.3) brightness(1.04); }
  .solution-card--automation:hover .workflow-node--active > i { transform: translateY(-2px); box-shadow: 0 14px 29px rgba(31,130,136,.25), 0 0 0 8px rgba(19,141,134,.08); }
  .solution-card--integration[data-reveal]:hover { transform: translateY(-3px); }
  .solution-card--integration:hover .integration-hub { transform: translate(-50%, -50%) scale(1.025); }
  .solution-card--integration:hover .integration-app { transform: translate(-50%, calc(-50% - 1px)) rotate(var(--module-tilt, 0deg)); box-shadow: 0 9px 20px rgba(63,85,108,.075); }
  .solution-card--business-ai:hover .solution-visual--ai::before { opacity: 1; transform: translate(-50%, -50%) scale(1.03); }
  .solution-card--business-ai:hover .ai-engine { transform: translateY(-1px); box-shadow: 0 20px 42px rgba(90,66,160,.28), 0 0 0 9px rgba(120,103,186,.07), 0 0 38px rgba(120,103,186,.2); }
  .solution-card--business-ai:hover .ai-engine > span { filter: brightness(1.1); }
  .solution-card--business-ai:hover .ai-stage { filter: saturate(1.06); }
  .solution-card--business-ai:hover .ai-result { transform: translateY(-2px); border-color: rgba(120,103,186,.17); box-shadow: 0 11px 23px rgba(96,79,143,.095); }
}

.industry-section { position: relative; isolation: isolate; overflow: hidden; padding-top: 126px; padding-bottom: 126px; background-color: #f5faf6; background-image: radial-gradient(ellipse 54% 24% at 14% 8%, rgba(165,223,194,.13), transparent 74%), radial-gradient(ellipse 43% 30% at 92% 88%, rgba(153,210,211,.1), transparent 76%); transition: background-color 380ms ease-out; }
.industry-section::after { content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none; background: linear-gradient(180deg, rgba(255,255,252,.72), rgba(250,251,247,.66) 42%, rgba(255,255,252,.7)); }
.industry-section > .container { position: relative; z-index: 2; }
.industry-section[data-industry-theme="manufacturing"] { background-color: #f5faf6; }
.industry-section[data-industry-theme="trade"] { background-color: #f2f9f9; }
.industry-section[data-industry-theme="retail-consumer"] { background-color: #faf9f0; }
.industry-section[data-industry-theme="professional-services"] { background-color: #f3f7fa; }
.industry-section[data-industry-theme="project-based"] { background-color: #f7f8f1; }
.industry-tabs { margin: -18px 0 22px; display: flex; align-items: center; justify-content: center; gap: 14px; overflow-x: auto; padding: 4px 3px 8px; scrollbar-width: none; }
.industry-tabs::-webkit-scrollbar { display: none; }
.industry-tab { min-height: 54px; padding: 8px 24px 8px 9px; display: inline-flex; align-items: center; gap: 11px; flex: 0 0 auto; border: 1px solid rgba(30,89,71,.12); border-radius: 999px; background: rgba(255,255,255,.88); box-shadow: 0 6px 18px rgba(27,74,60,.035); color: var(--green-deep); font: inherit; font-size: 16px; font-weight: 700; cursor: pointer; transition: transform 200ms ease-out, background-color 200ms ease-out, border-color 200ms ease-out, color 200ms ease-out, box-shadow 200ms ease-out; }
.industry-tab__icon { width: 36px; height: 36px; display: grid; place-items: center; border-radius: 50%; background: #edf5ee; color: var(--green); font-size: 12px; font-weight: 800; transition: transform 200ms ease-out, background-color 200ms ease-out, color 200ms ease-out; }
.industry-tab > span:last-child { white-space: nowrap; }
.industry-tab.is-active { transform: translateY(-1px); border-color: var(--green-deep); background: var(--green-deep); color: white; box-shadow: 0 11px 25px rgba(20,73,57,.15); }
.industry-tab.is-active .industry-tab__icon { background: rgba(216,240,107,.16); color: var(--lime); }
.industry-tab.is-active { transition-duration: 320ms; }
#industry-tab-manufacturing.is-active { border-color: #123f32; background-color: #123f32; box-shadow: 0 11px 25px rgba(18,63,50,.18); }
#industry-tab-manufacturing.is-active .industry-tab__icon { background: rgba(216,240,107,.16); color: #d8f06b; }
#industry-tab-trade.is-active { border-color: #123f47; background-color: #123f47; box-shadow: 0 11px 25px rgba(18,63,71,.18); }
#industry-tab-trade.is-active .industry-tab__icon { background: rgba(102,205,207,.16); color: #8bd9d9; }
#industry-tab-retail-consumer.is-active { border-color: #394b32; background-color: #394b32; box-shadow: 0 11px 25px rgba(57,75,50,.18); }
#industry-tab-retail-consumer.is-active .industry-tab__icon { background: rgba(199,213,106,.17); color: #d9df7d; }
#industry-tab-professional-services.is-active { border-color: #233f4a; background-color: #233f4a; box-shadow: 0 11px 25px rgba(35,63,74,.18); }
#industry-tab-professional-services.is-active .industry-tab__icon { background: rgba(105,181,211,.17); color: #9ad4e5; }
#industry-tab-project-based.is-active { border-color: #283f35; background-color: #283f35; box-shadow: 0 11px 25px rgba(40,63,53,.18); }
#industry-tab-project-based.is-active .industry-tab__icon { background: rgba(180,190,101,.17); color: #d1d783; }
.industry-tab:focus-visible { outline: 3px solid rgba(30,89,71,.18); outline-offset: 2px; }
.industry-feature { min-height: 610px; position: relative; overflow: hidden; border-radius: var(--radius-lg); background: var(--green-deep); color: white; box-shadow: 0 24px 56px rgba(18,61,49,.1); }
.industry-panel { position: absolute; inset: 0; padding: 48px; display: grid; grid-template-columns: minmax(0, .76fr) minmax(420px, 1.24fr); gap: 42px; align-items: center; overflow: hidden; opacity: 0; transform: translateY(8px); transition: opacity 250ms ease-out, transform 250ms ease-out; }
.industry-panel::before { content: ""; position: absolute; z-index: 0; width: 520px; height: 520px; right: -120px; bottom: -250px; border-radius: 50%; background: radial-gradient(circle, rgba(120,214,186,.17), transparent 68%); pointer-events: none; }
.industry-panel--manufacturing { background: radial-gradient(circle at 10% 8%, rgba(75,160,132,.15), transparent 35%), linear-gradient(135deg, #0d4537, #11513f); }
.industry-panel--trade { background: radial-gradient(circle at 88% 12%, rgba(82,196,191,.16), transparent 36%), linear-gradient(135deg, #0d4448, #155b57); }
.industry-panel--retail-consumer { background: radial-gradient(circle at 88% 10%, rgba(214,240,107,.12), transparent 34%), linear-gradient(135deg, #18483e, #2a5b50); }
.industry-panel--professional-services { background: radial-gradient(circle at 84% 10%, rgba(171,152,225,.15), transparent 34%), linear-gradient(135deg, #294b4b, #465066); }
.industry-panel--project-based { background: radial-gradient(circle at 90% 12%, rgba(111,205,180,.14), transparent 36%), linear-gradient(135deg, #10454a, #155447); }
.industry-scene { position: absolute; z-index: 0; top: -10px; right: -10px; bottom: -10px; width: 64%; overflow: hidden; background-image: var(--industry-scene); background-position: center; background-size: cover; opacity: 0; filter: blur(6px) saturate(.7) contrast(.84); transform: scale(1.07); transform-origin: center; -webkit-mask-image: linear-gradient(90deg, transparent 0%, rgba(0,0,0,.68) 19%, #000 45%); mask-image: linear-gradient(90deg, transparent 0%, rgba(0,0,0,.68) 19%, #000 45%); pointer-events: none; transition: opacity 360ms ease-out, transform 360ms ease-out; }
.industry-scene::before, .industry-scene::after { content: ""; position: absolute; inset: 0; }
.industry-scene::before { background: rgba(8,54,41,.55); mix-blend-mode: multiply; }
.industry-scene::after { background: linear-gradient(90deg, rgba(8,48,37,.96) 0%, rgba(8,48,37,.54) 42%, rgba(8,48,37,.16) 100%), radial-gradient(circle at 58% 48%, rgba(119,220,190,.1), transparent 55%); }
.industry-panel--trade .industry-scene::before { background: rgba(8,58,62,.54); }
.industry-panel--trade .industry-scene::after { background: linear-gradient(90deg, rgba(8,48,51,.96), rgba(8,62,63,.5) 44%, rgba(8,62,63,.14)), radial-gradient(circle at 58% 48%, rgba(100,211,205,.11), transparent 56%); }
.industry-panel--retail-consumer .industry-scene::before { background: rgba(25,69,57,.5); }
.industry-panel--retail-consumer .industry-scene::after { background: linear-gradient(90deg, rgba(20,62,51,.96), rgba(32,82,67,.48) 44%, rgba(32,82,67,.13)), radial-gradient(circle at 60% 48%, rgba(216,240,107,.09), transparent 54%); }
.industry-panel--professional-services .industry-scene::before { background: rgba(45,61,69,.5); }
.industry-panel--professional-services .industry-scene::after { background: linear-gradient(90deg, rgba(39,65,65,.96), rgba(67,70,94,.5) 44%, rgba(67,70,94,.14)), radial-gradient(circle at 62% 46%, rgba(181,166,228,.11), transparent 56%); }
.industry-panel--project-based .industry-scene::before { background: rgba(12,61,60,.52); }
.industry-panel--project-based .industry-scene::after { background: linear-gradient(90deg, rgba(10,54,56,.96), rgba(18,76,68,.5) 44%, rgba(18,76,68,.14)), radial-gradient(circle at 60% 48%, rgba(112,213,183,.1), transparent 56%); }
.industry-panel.is-active { opacity: 1; transform: none; }
.industry-panel.is-active .industry-scene.is-loaded { opacity: .27; transform: scale(1.03); }
/* Manufacturing scene fusion: the photo and the color veil are controlled independently. */
.industry-panel--manufacturing .industry-scene { left: -10px; width: auto; background-image: none; opacity: 0; filter: none; -webkit-mask-image: none; mask-image: none; }
.industry-panel--manufacturing .industry-scene::before { inset: -3px; display: block; background-image: var(--industry-scene); background-position: center 50%; background-size: cover; opacity: .79; filter: blur(.8px) saturate(.78) contrast(.93) brightness(.86); mix-blend-mode: normal; transform: scale(1.02); transition: transform 360ms ease-out; }
.industry-panel--manufacturing .industry-scene::after { display: block; background: linear-gradient(90deg, rgba(13,69,55,.95) 0%, rgba(13,69,55,.93) 20%, rgba(13,69,55,.84) 34%, rgba(13,69,55,.63) 47%, rgba(13,69,55,.35) 59%, rgba(13,69,55,.16) 72%, rgba(13,69,55,.05) 100%), radial-gradient(ellipse at 76% 46%, rgba(112,202,175,.075), transparent 48%), radial-gradient(ellipse at 74% 50%, transparent 36%, rgba(5,42,33,.13) 100%); }
.industry-panel--manufacturing.is-active .industry-scene.is-loaded { opacity: 1; }
.industry-panel--trade .industry-scene { left: -10px; width: auto; background-image: none; opacity: 0; filter: none; -webkit-mask-image: none; mask-image: none; }
.industry-panel--trade .industry-scene::before { inset: -3px; display: block; background-image: var(--industry-scene); background-position: center 62%; background-size: cover; opacity: .87; filter: blur(.25px) saturate(.94) contrast(1) brightness(.96); mix-blend-mode: normal; transform: scale(1.02); transition: transform 360ms ease-out; }
.industry-panel--trade .industry-scene::after { display: block; background: linear-gradient(90deg, rgba(13,68,72,.96) 0%, rgba(13,68,72,.93) 22%, rgba(13,68,72,.82) 35%, rgba(13,68,72,.59) 48%, rgba(13,68,72,.28) 62%, rgba(13,68,72,.1) 76%, rgba(13,68,72,.02) 100%), radial-gradient(ellipse at 78% 54%, rgba(100,211,205,.06), transparent 50%), radial-gradient(ellipse at 74% 54%, transparent 38%, rgba(5,40,42,.11) 100%); }
.industry-panel--trade.is-active .industry-scene.is-loaded { opacity: 1; }
.industry-panel--retail-consumer .industry-scene { left: -10px; width: auto; background-image: none; opacity: 0; filter: none; -webkit-mask-image: none; mask-image: none; }
.industry-panel--retail-consumer .industry-scene::before { inset: -3px; display: block; background-image: var(--industry-scene); background-position: center 52%; background-size: cover; opacity: .87; filter: blur(.2px) saturate(.9) contrast(.98) brightness(.94); mix-blend-mode: normal; transform: scale(1.02); transition: transform 360ms ease-out; }
.industry-panel--retail-consumer .industry-scene::after { display: block; background: linear-gradient(90deg, rgba(24,72,62,.95) 0%, rgba(24,72,62,.92) 23%, rgba(24,72,62,.8) 36%, rgba(24,72,62,.55) 49%, rgba(24,72,62,.25) 63%, rgba(24,72,62,.07) 78%, rgba(24,72,62,.015) 100%), radial-gradient(ellipse at 84% 30%, rgba(220,241,148,.09), transparent 43%), radial-gradient(ellipse at 75% 52%, transparent 40%, rgba(10,47,39,.1) 100%); }
.industry-panel--retail-consumer.is-active .industry-scene.is-loaded { opacity: 1; }
.industry-panel--professional-services .industry-scene { left: -10px; width: auto; background-image: none; opacity: 0; filter: none; -webkit-mask-image: none; mask-image: none; }
.industry-panel--professional-services .industry-scene::before { inset: -3px; display: block; background-image: var(--industry-scene); background-position: center 50%; background-size: cover; opacity: .76; filter: blur(.5px) saturate(.68) sepia(.08) contrast(.95) brightness(.86); mix-blend-mode: normal; transform: scale(1.02); transition: transform 360ms ease-out; }
.industry-panel--professional-services .industry-scene::after { display: block; background: linear-gradient(90deg, rgba(35,74,66,.96) 0%, rgba(35,74,66,.93) 24%, rgba(35,74,66,.82) 37%, rgba(35,74,66,.59) 50%, rgba(35,74,66,.28) 65%, rgba(35,74,66,.08) 80%, rgba(35,74,66,.02) 100%), radial-gradient(ellipse at 82% 32%, rgba(219,206,172,.075), transparent 44%), radial-gradient(ellipse at 76% 52%, transparent 40%, rgba(13,40,35,.13) 100%); }
.industry-panel--professional-services.is-active .industry-scene.is-loaded { opacity: 1; }
.industry-panel--project-based .industry-scene { left: -10px; width: auto; background-image: none; opacity: 0; filter: none; -webkit-mask-image: none; mask-image: none; }
.industry-panel--project-based .industry-scene::before { inset: -3px; display: block; background-image: var(--industry-scene); background-position: center 50%; background-size: cover; opacity: .76; filter: blur(.55px) saturate(.8) contrast(.95) brightness(.86); mix-blend-mode: normal; transform: scale(1.02); transition: transform 360ms ease-out; }
.industry-panel--project-based .industry-scene::after { display: block; background: linear-gradient(90deg, rgba(16,69,74,.96) 0%, rgba(16,69,74,.93) 24%, rgba(16,69,74,.82) 37%, rgba(16,69,74,.58) 50%, rgba(16,69,74,.28) 65%, rgba(16,69,74,.08) 80%, rgba(16,69,74,.02) 100%), radial-gradient(ellipse at 82% 35%, rgba(214,229,156,.065), transparent 45%), radial-gradient(ellipse at 76% 52%, transparent 40%, rgba(7,40,40,.13) 100%); }
.industry-panel--project-based.is-active .industry-scene.is-loaded { opacity: 1; }
.industry-panel[hidden] { display: none; }
.industry-panel__copy, .industry-visual { position: relative; z-index: 1; opacity: 0; transform: translateY(8px); transition: opacity 250ms ease-out, transform 250ms ease-out; }
.industry-panel.is-active .industry-panel__copy, .industry-panel.is-active .industry-visual { opacity: 1; transform: none; }
.industry-panel.is-active .industry-visual { transition-delay: 50ms; }
.industry-panel__copy { min-width: 0; align-self: stretch; display: flex; flex-direction: column; }
.industry-panel__eyebrow { margin: 0 0 17px; color: var(--lime); font-size: 11px; font-weight: 700; letter-spacing: .08em; }
.industry-panel__copy h3 { margin: 0 0 15px; color: white; font-size: clamp(34px, 3vw, 44px); line-height: 1.08; }
.industry-positioning { margin: -2px 0 15px; display: flex; flex-wrap: wrap; gap: 6px; }
.industry-positioning span { padding: 4px 8px; border: 1px solid rgba(216,240,107,.18); border-radius: 999px; background: rgba(216,240,107,.075); color: #dceca2; font-size: 8px; line-height: 1; }
.industry-panel__copy > p:not(.industry-panel__eyebrow):not(.industry-subtitle) { max-width: 470px; margin: 0; color: #bfd1ca; font-size: 14px; line-height: 1.75; }
.industry-chain { margin-top: 24px; display: flex; flex-wrap: wrap; align-items: center; gap: 7px; color: #d8e7e1; font-size: 10px; }
.industry-chain span { padding: 6px 8px; border: 1px solid rgba(255,255,255,.1); border-radius: 8px; background: rgba(255,255,255,.055); white-space: nowrap; }
.industry-chain i { color: rgba(216,240,107,.64); font-style: normal; }
.industry-subtitle { margin: 22px 0 9px; color: #8fb3a7; font-size: 9px; font-weight: 700; letter-spacing: .08em; }
.industry-tags { width: min(100%, 330px); display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px 8px; margin: 0 0 26px; }
.industry-tags span { min-height: 30px; padding: 7px 11px; display: inline-flex; align-items: center; justify-content: center; gap: 6px; border: 1px solid rgba(133,202,181,.18); border-radius: 999px; background: rgba(83,181,151,.065); color: #c9ddd6; font-size: 10px; line-height: 1; white-space: nowrap; transition: transform 200ms ease-out, border-color 200ms ease-out, background-color 200ms ease-out, box-shadow 200ms ease-out; }
.industry-tags span.is-featured { border-color: rgba(175,225,175,.34); background: linear-gradient(145deg, rgba(109,202,157,.18), rgba(116,183,148,.1)); color: #edf7e8; box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 7px 18px rgba(2,30,22,.08); }
.industry-tags span.is-featured::before { content: ""; width: 5px; height: 5px; border-radius: 50%; background: var(--lime); box-shadow: 0 0 0 3px rgba(216,240,107,.09), 0 0 7px rgba(216,240,107,.18); }
.industry-panel--manufacturing .industry-tags { width: min(100%, 360px); gap: 12px 10px; }
.industry-panel--manufacturing .industry-tags span { min-height: 39px; padding: 10px 15px; border-color: rgba(148,215,194,.3); background: linear-gradient(145deg, rgba(72,162,134,.21), rgba(63,139,116,.14)); color: #e0eee9; font-size: 11px; font-weight: 600; box-shadow: inset 0 1px 0 rgba(255,255,255,.055); }
.industry-panel--manufacturing .industry-tags span.is-featured { border-color: rgba(222,243,129,.76); background: linear-gradient(145deg, rgba(216,240,107,.94), rgba(173,218,113,.84)); color: #174b3b; box-shadow: inset 0 1px 0 rgba(255,255,255,.38), 0 8px 20px rgba(8,39,30,.16), 0 0 18px rgba(216,240,107,.08); }
.industry-panel--manufacturing .industry-tags span.is-featured::before { width: 6px; height: 6px; background: #174b3b; box-shadow: 0 0 0 3px rgba(23,75,59,.1); }
.industry-panel--manufacturing .industry-panel__copy h3 { font-size: clamp(40px, 3.35vw, 50px); line-height: 1.06; }
.industry-panel--manufacturing .industry-panel__copy > p:not(.industry-panel__eyebrow):not(.industry-subtitle) { font-size: 15.5px; line-height: 1.8; }
.industry-panel--manufacturing .industry-chain { gap: 8px; font-size: 11px; }
.industry-panel--manufacturing .industry-chain span { padding: 7px 9px; }
.industry-panel--manufacturing .industry-subtitle { font-size: 10px; }
.industry-panel--trade .industry-tags { width: min(100%, 360px); gap: 11px 9px; }
.industry-panel--trade .industry-tags span { min-height: 36px; padding: 9px 13px; border-color: rgba(139,218,216,.3); background: linear-gradient(145deg, rgba(52,157,159,.2), rgba(42,132,137,.13)); color: #def0ee; font-size: 10.5px; font-weight: 600; box-shadow: inset 0 1px 0 rgba(255,255,255,.055); }
.industry-panel--trade .industry-tags span.is-featured { border-color: rgba(137,229,220,.66); background: linear-gradient(145deg, rgba(123,220,209,.84), rgba(84,188,184,.72)); color: #0c4649; box-shadow: inset 0 1px 0 rgba(255,255,255,.28), 0 8px 20px rgba(4,38,40,.14); }
.industry-panel--trade .industry-tags span.is-featured::before { width: 6px; height: 6px; background: #0c4649; box-shadow: 0 0 0 3px rgba(12,70,73,.1); }
.industry-panel--trade .industry-panel__copy h3 { font-size: clamp(38px, 3.1vw, 46px); line-height: 1.06; }
.industry-panel--trade .industry-panel__copy > p:not(.industry-panel__eyebrow):not(.industry-subtitle) { font-size: 15px; line-height: 1.8; }
.industry-panel--trade .industry-chain { gap: 7px; font-size: 10.5px; }
.industry-panel--trade .industry-chain span { padding: 7px 9px; border-color: rgba(145,220,215,.18); background: rgba(58,155,154,.105); }
.industry-panel--trade .industry-subtitle { color: #9cc5c0; font-size: 10px; }
.industry-panel--retail-consumer .industry-panel__eyebrow { margin-bottom: 18px; font-size: 12px; }
.industry-panel--retail-consumer .industry-panel__copy h3 { margin-bottom: 18px; font-size: clamp(42px, 3.35vw, 50px); line-height: 1.05; }
.industry-panel--retail-consumer .industry-panel__copy > p:not(.industry-panel__eyebrow):not(.industry-subtitle) { width: min(100%, 425px); max-width: 425px; color: #cfdfda; font-size: 15.5px; line-height: 1.68; }
.industry-panel--retail-consumer .industry-chain { width: 425px; max-width: none; margin-top: 22px; flex-wrap: nowrap; gap: 3px; font-size: 11px; }
.industry-panel--retail-consumer .industry-chain span { padding: 7px; border-color: rgba(180,220,202,.16); background: rgba(79,157,128,.11); }
.industry-panel--retail-consumer .industry-chain i { font-size: 11px; }
.industry-panel--retail-consumer .industry-subtitle { margin: 20px 0 11px; color: #a8c5ba; font-size: 10px; }
.industry-panel--retail-consumer .industry-tags { width: min(100%, 360px); gap: 12px 10px; margin-bottom: 22px; }
.industry-panel--retail-consumer .industry-tags span { min-height: 38px; padding: 10px 14px; border-color: rgba(151,211,190,.27); background: rgba(73,157,127,.15); color: #e0eee9; font-size: 11px; font-weight: 600; }
.industry-panel--retail-consumer .industry-tags span.is-featured { border-color: rgba(190,226,143,.48); background: linear-gradient(145deg, rgba(147,200,124,.38), rgba(102,174,134,.24)); color: #f1f7e9; box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 7px 18px rgba(5,36,27,.1); }
.industry-panel--retail-consumer .industry-panel__copy .text-link { font-size: 15px; font-weight: 700; }
.industry-panel--professional-services .industry-panel__eyebrow { margin-bottom: 18px; font-size: 12px; }
.industry-panel--professional-services .industry-panel__copy h3 { margin-bottom: 18px; font-size: clamp(40px, 3.3vw, 49px); line-height: 1.05; }
.industry-panel--professional-services .industry-panel__copy > p:not(.industry-panel__eyebrow):not(.industry-subtitle) { width: min(100%, 425px); max-width: 425px; color: #cfdfda; font-size: 15.5px; line-height: 1.65; }
.industry-panel--professional-services .industry-chain { width: 410px; max-width: none; margin-top: 22px; flex-wrap: nowrap; gap: 4px; font-size: 11px; }
.industry-panel--professional-services .industry-chain span { padding: 7px 9px; border-color: rgba(170,213,197,.17); background: rgba(72,145,122,.11); }
.industry-panel--professional-services .industry-chain i { font-size: 11px; }
.industry-panel--professional-services .industry-subtitle { margin: 20px 0 11px; color: #a7c4ba; font-size: 10px; }
.industry-panel--professional-services .industry-tags { width: min(100%, 360px); gap: 12px 10px; margin-bottom: 22px; }
.industry-panel--professional-services .industry-tags span { min-height: 38px; padding: 10px 14px; border-color: rgba(151,211,190,.27); background: rgba(71,151,125,.15); color: #e0eee9; font-size: 11px; font-weight: 600; }
.industry-panel--professional-services .industry-tags span.is-featured { border-color: rgba(215,239,128,.68); background: linear-gradient(145deg, rgba(207,232,111,.88), rgba(143,202,124,.74)); color: #194b3d; box-shadow: inset 0 1px 0 rgba(255,255,255,.3), 0 8px 20px rgba(6,35,28,.14); }
.industry-panel--professional-services .industry-tags span.is-featured::before { width: 6px; height: 6px; background: #194b3d; box-shadow: 0 0 0 3px rgba(25,75,61,.1); }
.industry-panel--professional-services .industry-panel__copy .text-link { font-size: 15px; font-weight: 700; }
.industry-panel--project-based .industry-panel__eyebrow { margin-bottom: 18px; font-size: 12px; }
.industry-panel--project-based .industry-panel__copy h3 { margin-bottom: 18px; font-size: clamp(40px, 3.3vw, 49px); line-height: 1.05; }
.industry-panel--project-based .industry-panel__copy > p:not(.industry-panel__eyebrow):not(.industry-subtitle) { width: min(100%, 425px); max-width: 425px; color: #cfdfda; font-size: 15.5px; line-height: 1.68; }
.industry-panel--project-based .industry-chain { width: 410px; max-width: none; margin-top: 22px; flex-wrap: nowrap; gap: 4px; font-size: 11px; }
.industry-panel--project-based .industry-chain span { padding: 7px 9px; border-color: rgba(166,215,200,.18); background: rgba(61,149,128,.11); }
.industry-panel--project-based .industry-chain i { color: rgba(216,240,107,.76); font-size: 11px; }
.industry-panel--project-based .industry-subtitle { margin: 20px 0 11px; color: #a6c5ba; font-size: 10px; }
.industry-panel--project-based .industry-tags { width: min(100%, 360px); gap: 12px 10px; margin-bottom: 22px; }
.industry-panel--project-based .industry-tags span { min-height: 38px; padding: 10px 14px; border-color: rgba(151,211,190,.28); background: rgba(67,158,130,.15); color: #e1efea; font-size: 11px; font-weight: 600; }
.industry-panel--project-based .industry-tags span.is-featured { border-color: rgba(218,240,127,.7); background: linear-gradient(145deg, rgba(211,235,112,.9), rgba(146,204,123,.76)); color: #184a3c; box-shadow: inset 0 1px 0 rgba(255,255,255,.3), 0 8px 20px rgba(5,35,28,.14); }
.industry-panel--project-based .industry-tags span.is-featured::before { width: 6px; height: 6px; background: #184a3c; box-shadow: 0 0 0 3px rgba(24,74,60,.1); }
.industry-panel--project-based .industry-panel__copy .text-link { font-size: 15px; font-weight: 700; }

/* One shared layout system for all five industry solution panels. */
.industry-panel__eyebrow {
  margin: 0 0 18px;
  color: var(--lime);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .08em;
}
.industry-panel__copy h3 {
  margin: 0 0 18px;
  color: white;
  font-size: clamp(40px, 3.3vw, 49px);
  font-weight: 800;
  line-height: 1.05;
}
.industry-panel--trade .industry-panel__copy h3,
.industry-panel--retail-consumer .industry-panel__copy h3 {
  font-size: clamp(38px, 3.15vw, 47px);
}
.industry-panel__copy > p:not(.industry-panel__eyebrow):not(.industry-subtitle) {
  width: min(100%, 425px);
  max-width: 425px;
  margin: 0;
  color: #cfdfda;
  font-size: 15.5px;
  font-weight: 400;
  line-height: 1.68;
}
.industry-chain {
  width: 425px;
  max-width: none;
  margin-top: 22px;
  flex-wrap: nowrap;
  gap: 3px;
  color: #dce9e4;
  font-size: 11px;
}
.industry-chain span {
  min-height: 29px;
  padding: 7px 8px;
  border: 1px solid rgba(174,218,202,.18);
  border-radius: 9px;
  background: rgba(72,151,125,.12);
  white-space: nowrap;
}
.industry-chain i {
  color: rgba(216,240,107,.76);
  font-size: 11px;
}
.industry-subtitle {
  margin: 20px 0 11px;
  color: #a7c5ba;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .08em;
}
.industry-tags {
  width: min(100%, 360px);
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px 10px;
  margin: 0 0 22px;
}
.industry-tags span {
  min-height: 38px;
  padding: 10px 14px;
  border: 1px solid rgba(151,211,190,.28);
  border-radius: 999px;
  background: rgba(67,151,125,.15);
  color: #e1efea;
  font-size: 11px;
  font-weight: 600;
}
.industry-tags span.is-featured {
  border-color: rgba(218,240,127,.7);
  background: linear-gradient(145deg, rgba(211,235,112,.9), rgba(146,204,123,.76));
  color: #184a3c;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.3), 0 8px 20px rgba(5,35,28,.14);
}
.industry-tags span.is-featured::before {
  width: 6px;
  height: 6px;
  background: #184a3c;
  box-shadow: 0 0 0 3px rgba(24,74,60,.1);
}
.industry-panel__copy .text-link { margin-top: auto; color: var(--lime); }
.industry-panel__copy .text-link { font-size: 15px; font-weight: 700; transition: color 280ms ease-out; }
.industry-panel__copy .text-link span { display: inline-block; transition: transform 280ms ease-out; }
.industry-visual { min-width: 0; min-height: 460px; display: grid; place-items: center; }
.industry-mini { width: 100%; min-height: 420px; padding: 20px; display: grid; grid-template-rows: auto auto 1fr auto; gap: 14px; border: 1px solid rgba(255,255,255,.12); border-radius: 24px; background: linear-gradient(145deg, rgba(255,255,255,.105), rgba(45,128,105,.09)); box-shadow: 0 22px 48px rgba(5,30,23,.22), inset 0 1px 0 rgba(255,255,255,.05); backdrop-filter: blur(8px); }
.industry-mini--manufacturing { border-color: rgba(223,242,233,.3); background: linear-gradient(145deg, rgba(18,78,63,.82), rgba(9,56,45,.76)); box-shadow: 0 26px 52px rgba(3,27,21,.3), 0 0 42px rgba(74,160,132,.1), inset 0 1px 0 rgba(255,255,255,.13); -webkit-backdrop-filter: blur(1px); backdrop-filter: blur(1px); transition: transform 360ms ease-out, box-shadow 360ms ease-out; }
.industry-mini--manufacturing .industry-mini__kpis > span { border-color: rgba(230,245,238,.19); background: rgba(34,99,80,.72); box-shadow: inset 0 1px 0 rgba(255,255,255,.08); }
.industry-mini--manufacturing .industry-mini__kpis small { color: #b7cec5; font-size: 9px; }
.industry-mini--manufacturing .industry-mini__kpis b { color: #d4ea7d; font-size: 20px; line-height: 1; text-shadow: 0 0 14px rgba(216,240,107,.08); }
.industry-mini--manufacturing .industry-mini__progress { border-color: rgba(255,255,255,.14); background: linear-gradient(145deg, rgba(7,48,38,.72), rgba(12,66,52,.65)); }
.industry-mini--manufacturing .industry-mini__progress > span > i { position: relative; overflow: visible; background: linear-gradient(90deg, rgba(255,255,255,.1), rgba(255,255,255,.055)); }
.industry-mini--manufacturing .industry-mini__progress em { position: relative; box-shadow: 0 0 12px rgba(135,218,161,.09); }
.industry-mini--manufacturing .industry-mini__progress > span > i::before, .industry-mini--manufacturing .industry-mini__progress em::after { content: ""; position: absolute; top: 50%; width: 4px; height: 4px; border-radius: 50%; transform: translateY(-50%); }
.industry-mini--manufacturing .industry-mini__progress > span > i::before { left: 2px; background: rgba(230,246,239,.7); }
.industry-mini--manufacturing .industry-mini__progress em::after { right: 2px; background: #d4ea7d; box-shadow: 0 0 0 3px rgba(216,240,107,.08); }
.industry-mini--manufacturing .industry-mini__status { border-color: rgba(255,255,255,.15); background: rgba(9,54,42,.66); }
.industry-mini--trade { border-color: rgba(215,242,239,.28); background: linear-gradient(145deg, rgba(12,75,77,.84), rgba(7,53,57,.78)); box-shadow: 0 26px 52px rgba(3,27,29,.3), 0 0 40px rgba(64,167,164,.09), inset 0 1px 0 rgba(255,255,255,.12); -webkit-backdrop-filter: blur(1px); backdrop-filter: blur(1px); }
.industry-mini--trade .industry-mini__kpis > span { border-color: rgba(222,244,241,.18); background: rgba(35,103,103,.72); box-shadow: inset 0 1px 0 rgba(255,255,255,.075); }
.industry-mini--trade .industry-mini__kpis small { color: #b8d1ce; font-size: 9px; }
.industry-mini--trade .industry-mini__kpis b { color: #d4ea7d; font-size: 20px; line-height: 1; }
.industry-mini--trade .trade-orders { border-color: rgba(222,244,241,.15); background: rgba(5,48,51,.7); }
.industry-mini--trade .trade-orders > span { border-color: rgba(224,245,242,.12); background: rgba(39,105,105,.56); }
.industry-mini--trade .trade-orders i { background: rgba(103,216,207,.18); color: #a9e4dc; }
.industry-mini--trade .trade-orders b { color: #e0ece9; }
.industry-mini--trade .trade-orders small { color: #acd0ca; }
.industry-mini--trade .industry-mini__status { border-color: rgba(222,244,241,.14); background: rgba(5,48,51,.66); color: #bed6d1; }
.industry-mini--retail { border-color: rgba(226,242,234,.24); background: linear-gradient(145deg, rgba(24,78,65,.74), rgba(15,61,52,.65)); box-shadow: 0 24px 50px rgba(5,31,24,.25), 0 0 38px rgba(160,202,142,.08), inset 0 1px 0 rgba(255,255,255,.1); -webkit-backdrop-filter: blur(1px); backdrop-filter: blur(1px); }
.industry-mini--retail .retail-kpis > span { border-color: rgba(232,245,238,.17); background: rgba(42,101,83,.64); box-shadow: inset 0 1px 0 rgba(255,255,255,.06); }
.industry-mini--retail .retail-kpis small { color: #c0d1ca; }
.industry-mini--retail .retail-kpis b { color: #d5e982; }
.industry-mini--retail .retail-trend, .industry-mini--retail .retail-ranking { border-color: rgba(232,245,238,.14); background: rgba(12,52,44,.6); }
.industry-mini--retail .industry-mini__status { border-color: rgba(232,245,238,.13); background: rgba(12,52,44,.58); color: #bfd1ca; }
.industry-mini--projects { border-color: rgba(220,241,235,.27); background: linear-gradient(145deg, rgba(14,72,72,.82), rgba(8,53,55,.75)); box-shadow: 0 26px 52px rgba(3,27,27,.29), 0 0 40px rgba(66,158,139,.09), inset 0 1px 0 rgba(255,255,255,.11); -webkit-backdrop-filter: blur(1px); backdrop-filter: blur(1px); }
.industry-mini--projects .industry-mini__kpis > span { border-color: rgba(226,244,239,.18); background: rgba(34,99,91,.7); box-shadow: inset 0 1px 0 rgba(255,255,255,.07); }
.industry-mini--projects .industry-mini__kpis small { color: #bad0ca; font-size: 9px; }
.industry-mini--projects .industry-mini__kpis b { color: #d5ea7e; font-size: 20px; line-height: 1; }
.project-stage-flow { min-height: 0; padding: 14px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-content: center; gap: 10px; border: 1px solid rgba(226,244,239,.14); border-radius: 17px; background: rgba(6,48,48,.66); }
.project-stage-flow span { position: relative; min-width: 0; min-height: 70px; padding: 10px; display: grid; grid-template-columns: 25px 1fr; grid-template-rows: auto auto; align-content: center; gap: 4px 8px; border: 1px solid rgba(226,244,239,.1); border-radius: 12px; background: rgba(35,96,88,.48); }
.project-stage-flow span::after { content: "→"; position: absolute; top: 50%; right: -9px; z-index: 1; color: rgba(216,240,107,.52); font-size: 9px; transform: translateY(-50%); }
.project-stage-flow span:nth-child(3n)::after, .project-stage-flow span:last-child::after { display: none; }
.project-stage-flow span > i { grid-row: 1 / span 2; width: 25px; height: 25px; display: grid; place-items: center; align-self: center; border-radius: 8px; background: rgba(119,189,171,.14); color: #9ccdc2; font-size: 7px; font-style: normal; }
.project-stage-flow span > b { overflow: hidden; color: #dceae5; font-size: 8px; text-overflow: ellipsis; white-space: nowrap; }
.project-stage-flow span > small { color: #92b5ad; font-size: 7px; }
.project-stage-flow span.is-complete { border-color: rgba(139,211,188,.17); background: rgba(51,122,105,.5); }
.project-stage-flow span.is-complete > i { background: rgba(116,201,169,.2); color: #c4ead9; }
.project-stage-flow span.is-active { border-color: rgba(216,240,107,.24); background: rgba(87,135,85,.38); }
.project-stage-flow span.is-active > i { background: rgba(216,240,107,.16); color: #dcef95; }
.industry-mini--projects .industry-mini__status { border-color: rgba(226,244,239,.14); background: rgba(6,48,48,.65); color: #bdd3cd; }

/* Shared workbench shell: industry differences stay in the data and inner visual. */
.industry-mini--manufacturing,
.industry-mini--trade,
.industry-mini--retail,
.industry-mini--services,
.industry-mini--projects {
  padding: 20px;
  gap: 14px;
  border: 1px solid rgba(223,242,235,.28);
  border-radius: 24px;
  background: linear-gradient(145deg, rgba(17,76,66,.82), rgba(8,55,50,.75));
  box-shadow: 0 26px 52px rgba(3,27,24,.29), 0 0 40px rgba(70,162,142,.09), inset 0 1px 0 rgba(255,255,255,.11);
  -webkit-backdrop-filter: blur(1px);
  backdrop-filter: blur(1px);
}
.industry-mini--manufacturing .industry-mini__kpis > span,
.industry-mini--trade .industry-mini__kpis > span,
.industry-mini--projects .industry-mini__kpis > span,
.industry-mini--retail .retail-kpis > span {
  border-color: rgba(230,245,238,.18);
  background: rgba(35,99,83,.7);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.075);
}
.industry-mini--manufacturing .industry-mini__kpis small,
.industry-mini--trade .industry-mini__kpis small,
.industry-mini--projects .industry-mini__kpis small,
.industry-mini--retail .retail-kpis small {
  color: #bad0c8;
  font-size: 9px;
}
.industry-mini--manufacturing .industry-mini__kpis b,
.industry-mini--trade .industry-mini__kpis b,
.industry-mini--projects .industry-mini__kpis b {
  color: #d5ea7e;
  font-size: 20px;
  line-height: 1;
}
.industry-mini--retail .retail-kpis b {
  color: #d5ea7e;
  font-size: 17px;
  line-height: 1;
}
.industry-mini--manufacturing .industry-mini__status,
.industry-mini--trade .industry-mini__status,
.industry-mini--retail .industry-mini__status,
.industry-mini--services .industry-mini__status,
.industry-mini--projects .industry-mini__status {
  border-color: rgba(226,244,239,.14);
  background: rgba(7,49,45,.65);
  color: #bdd3cd;
}
.industry-mini--services .service-calendar span {
  border: 1px solid rgba(226,244,239,.1);
  background: rgba(39,100,86,.48);
  color: #afc9c0;
}
.industry-mini--services .service-calendar .is-today {
  border-color: rgba(216,240,107,.25);
  background: rgba(216,240,107,.16);
  color: #dcef95;
}
.industry-mini--services .service-tasks {
  border-color: rgba(226,244,239,.14);
  background: rgba(7,49,45,.66);
}
.industry-mini--services .service-tasks > span {
  border-color: rgba(226,244,239,.11);
  background: rgba(39,100,86,.52);
}
.industry-mini--services .service-tasks i {
  background: rgba(109,202,178,.18);
  color: #b9e3d8;
}
.industry-mini--services .service-tasks b { color: #e0ece8; }
.industry-mini--services .service-tasks small { color: #a9c8bf; }
.industry-mini__aux { margin-left: 4px; padding-left: 9px; border-left: 1px solid rgba(255,255,255,.13); color: #c6d8d1; }
.industry-mini__aux b { color: #d4ea7d; font-size: inherit; }
.industry-mini__head { display: flex; justify-content: space-between; align-items: center; gap: 10px; }
.industry-mini__head b { color: #edf7f3; font-size: 11px; }
.industry-mini__head span { display: inline-flex; align-items: center; gap: 5px; color: #9dbbb0; font-size: 7px; }
.industry-mini__head span i, .industry-mini__status > i { width: 5px; height: 5px; border-radius: 50%; background: var(--lime); box-shadow: 0 0 0 3px rgba(216,240,107,.1); }
.industry-mini__kpis { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.industry-mini__kpis > span { min-width: 0; padding: 11px; border: 1px solid rgba(255,255,255,.085); border-radius: 13px; background: rgba(255,255,255,.06); }
.industry-mini__kpis small, .industry-mini__kpis b { display: block; }
.industry-mini__kpis small { overflow: hidden; color: #9fb9b0; font-size: 7px; text-overflow: ellipsis; white-space: nowrap; }
.industry-mini__kpis b { margin-top: 5px; color: var(--lime); font-size: 18px; }
.industry-mini__status { padding: 8px 10px; display: inline-flex; align-items: center; gap: 7px; justify-self: start; border: 1px solid rgba(255,255,255,.08); border-radius: 999px; background: rgba(255,255,255,.055); color: #acc4bb; font-size: 7px; }
.industry-mini__progress { padding: 15px; display: grid; align-content: center; gap: 18px; border: 1px solid rgba(255,255,255,.075); border-radius: 17px; background: rgba(8,49,38,.13); }
.industry-mini__progress > span { display: grid; grid-template-columns: 58px 1fr 28px; align-items: center; gap: 9px; }
.industry-mini__progress b { color: #c8d9d2; font-size: 8px; }
.industry-mini__progress > span > i { height: 6px; overflow: hidden; border-radius: 999px; background: rgba(255,255,255,.08); }
.industry-mini__progress em { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #4ec1aa, var(--lime)); }
.industry-mini__progress small { color: #91ada3; font-size: 7px; text-align: right; }
.trade-orders, .service-tasks { padding: 12px; display: grid; align-content: center; gap: 8px; border: 1px solid rgba(255,255,255,.075); border-radius: 17px; background: rgba(8,49,38,.12); }
.trade-orders > span, .service-tasks > span { min-height: 42px; padding: 7px 9px; display: grid; grid-template-columns: 27px 1fr auto; align-items: center; gap: 8px; border: 1px solid rgba(255,255,255,.065); border-radius: 11px; background: rgba(255,255,255,.05); }
.trade-orders i, .service-tasks i { width: 27px; height: 27px; display: grid; place-items: center; border-radius: 8px; background: rgba(78,193,170,.13); color: #91d8ca; font-size: 7px; font-style: normal; }
.trade-orders b, .service-tasks b { color: #c9d9d3; font-size: 8px; }
.trade-orders small, .service-tasks small { color: #90b1a5; font-size: 7px; }
.retail-kpis { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 7px; }
.retail-kpis > span { min-width: 0; padding: 10px; border: 1px solid rgba(255,255,255,.085); border-radius: 12px; background: rgba(255,255,255,.06); }
.retail-kpis small, .retail-kpis b { display: block; }
.retail-kpis small { overflow: hidden; color: #a8c0b5; font-size: 7px; text-overflow: ellipsis; white-space: nowrap; }
.retail-kpis b { margin-top: 5px; color: var(--lime); font-size: 15px; }
.retail-overview { min-height: 0; display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(125px, .7fr); gap: 10px; }
.retail-trend, .retail-ranking { min-width: 0; padding: 13px; border: 1px solid rgba(255,255,255,.075); border-radius: 16px; background: rgba(8,49,38,.12); }
.retail-trend { display: grid; grid-template-rows: auto 1fr; gap: 12px; }
.retail-trend > div { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.retail-trend b, .retail-ranking > b { color: #d1e0da; font-size: 8px; }
.retail-trend small { color: var(--lime); font-size: 7px; }
.retail-trend > span { min-height: 92px; display: flex; align-items: end; justify-content: space-around; gap: 7px; border-bottom: 1px solid rgba(255,255,255,.07); }
.retail-trend > span i { width: 14px; border-radius: 5px 5px 2px 2px; background: linear-gradient(180deg, #82d9c0, rgba(216,240,107,.64)); }
.retail-ranking { display: grid; align-content: center; gap: 9px; }
.retail-ranking > span { display: grid; grid-template-columns: 20px minmax(0, 1fr) auto; align-items: center; gap: 6px; }
.retail-ranking i { width: 20px; height: 20px; display: grid; place-items: center; border-radius: 7px; background: rgba(216,240,107,.1); color: var(--lime); font-size: 6px; font-style: normal; }
.retail-ranking em { overflow: hidden; color: #b9cdc5; font-size: 7px; font-style: normal; text-overflow: ellipsis; white-space: nowrap; }
.retail-ranking small { color: #91b7aa; font-size: 6px; white-space: nowrap; }
.service-calendar { display: grid; grid-template-columns: repeat(5, 1fr); gap: 6px; }
.service-calendar span { padding: 8px 0; border-radius: 9px; background: rgba(255,255,255,.055); color: #8fab9f; font-size: 7px; text-align: center; }
.service-calendar .is-today { background: rgba(216,240,107,.15); color: var(--lime); }
.project-chart { padding: 15px; display: grid; grid-template-rows: 1fr auto; gap: 11px; border: 1px solid rgba(255,255,255,.075); border-radius: 17px; background: rgba(8,49,38,.13); }
.project-chart > div { min-height: 104px; display: flex; align-items: end; justify-content: space-around; gap: 8px; border-bottom: 1px solid rgba(255,255,255,.08); }
.project-chart > div span { width: 18px; border-radius: 6px 6px 2px 2px; background: linear-gradient(180deg, var(--lime), rgba(78,193,170,.62)); }
.project-chart > small { display: flex; gap: 15px; color: #8da99f; font-size: 7px; }
.project-chart > small i { font-style: normal; }

/* Industry color temperatures: one brand system, five restrained accents. */
.industry-panel--manufacturing {
  --industry-accent: #d5e97b;
  --industry-accent-rgb: 213, 233, 123;
  --industry-accent-ink: #174b3b;
  --industry-workbench-start: rgba(18,78,63,.91);
  --industry-workbench-end: rgba(9,56,45,.86);
  --industry-glow: rgba(128,190,112,.12);
}
.industry-panel--trade {
  --industry-accent: #83d7d4;
  --industry-accent-rgb: 131, 215, 212;
  --industry-accent-ink: #0c4649;
  --industry-workbench-start: rgba(12,75,77,.91);
  --industry-workbench-end: rgba(7,53,57,.86);
  --industry-glow: rgba(95,190,197,.13);
}
.industry-panel--retail-consumer {
  --industry-accent: #d4da78;
  --industry-accent-rgb: 212, 218, 120;
  --industry-accent-ink: #34452d;
  --industry-workbench-start: rgba(47,82,61,.91);
  --industry-workbench-end: rgba(27,59,48,.85);
  --industry-glow: rgba(190,196,101,.13);
}
.industry-panel--professional-services {
  --industry-accent: #8fc9df;
  --industry-accent-rgb: 143, 201, 223;
  --industry-accent-ink: #234754;
  --industry-workbench-start: rgba(29,70,77,.91);
  --industry-workbench-end: rgba(20,52,62,.86);
  --industry-glow: rgba(104,169,198,.13);
}
.industry-panel--project-based {
  --industry-accent: #c7ce78;
  --industry-accent-rgb: 199, 206, 120;
  --industry-accent-ink: #30472f;
  --industry-workbench-start: rgba(25,70,57,.91);
  --industry-workbench-end: rgba(12,52,45,.86);
  --industry-glow: rgba(171,179,93,.12);
}
.industry-panel::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background: radial-gradient(ellipse 48% 72% at 82% 52%, var(--industry-glow), transparent 72%);
  pointer-events: none;
  transition: opacity 320ms ease-out;
}
.industry-panel .industry-chain i { color: var(--industry-accent); }
.industry-panel .industry-tags span { border-color: rgba(var(--industry-accent-rgb), .24); }
.industry-panel .industry-tags span.is-featured {
  border-color: rgba(var(--industry-accent-rgb), .72);
  background: linear-gradient(145deg, rgba(var(--industry-accent-rgb), .92), rgba(var(--industry-accent-rgb), .7));
  color: var(--industry-accent-ink);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.28), 0 8px 20px rgba(5,35,28,.14);
}
.industry-panel .industry-tags span.is-featured::before {
  background: var(--industry-accent-ink);
  box-shadow: 0 0 0 3px rgba(var(--industry-accent-rgb), .14);
}
.industry-panel .industry-mini {
  border-color: rgba(var(--industry-accent-rgb), .34);
  background: linear-gradient(145deg, var(--industry-workbench-start), var(--industry-workbench-end));
  box-shadow: 0 28px 58px rgba(3,27,24,.36), 0 0 42px rgba(var(--industry-accent-rgb), .1), inset 0 1px 0 rgba(255,255,255,.15);
  transition: transform 340ms ease-out, border-color 340ms ease-out, box-shadow 340ms ease-out, background-color 340ms ease-out;
}
.industry-panel .industry-mini__head span i,
.industry-panel .industry-mini__status > i { background: var(--industry-accent); box-shadow: 0 0 0 3px rgba(var(--industry-accent-rgb), .1); }
.industry-panel .industry-mini__kpis b,
.industry-panel .retail-kpis b { color: var(--industry-accent); }
.industry-panel .industry-mini__kpis > span,
.industry-panel .retail-kpis > span { border-color: rgba(var(--industry-accent-rgb), .24); background: rgba(34,91,78,.78); box-shadow: inset 0 1px 0 rgba(255,255,255,.09); }
.industry-panel--manufacturing .industry-mini__progress em { background: linear-gradient(90deg, #4ec1aa, var(--industry-accent)); }
.industry-panel--manufacturing .industry-mini__progress em::after { background: var(--industry-accent); box-shadow: 0 0 0 3px rgba(var(--industry-accent-rgb), .09); }
.industry-panel--trade .trade-orders i { background: rgba(var(--industry-accent-rgb), .17); color: var(--industry-accent); }
.industry-panel--retail-consumer .retail-trend small { color: var(--industry-accent); }
.industry-panel--retail-consumer .retail-trend > span i { background: linear-gradient(180deg, #75cbb4, rgba(var(--industry-accent-rgb), .72)); }
.industry-panel--retail-consumer .retail-ranking i { background: rgba(var(--industry-accent-rgb), .12); color: var(--industry-accent); }
.industry-panel--professional-services .service-calendar .is-today { border-color: rgba(var(--industry-accent-rgb), .28); background: rgba(var(--industry-accent-rgb), .16); color: var(--industry-accent); }
.industry-panel--professional-services .service-tasks i { background: rgba(var(--industry-accent-rgb), .16); color: var(--industry-accent); }
.industry-panel--project-based .project-stage-flow span::after { color: rgba(var(--industry-accent-rgb), .58); }
.industry-panel--project-based .project-stage-flow span.is-active { border-color: rgba(var(--industry-accent-rgb), .28); background: rgba(var(--industry-accent-rgb), .13); }
.industry-panel--project-based .project-stage-flow span.is-active > i { background: rgba(var(--industry-accent-rgb), .17); color: var(--industry-accent); }

/* Readable, industry-specific mini BI dashboards. */
.industry-bi-grid {
  min-width: 0;
  min-height: 0;
  display: grid;
  grid-template-columns: minmax(0, 1.34fr) minmax(150px, .66fr);
  gap: 10px;
}
.industry-bi-grid--projects { grid-template-columns: minmax(0, 1.42fr) minmax(150px, .58fr); }
.industry-bi-panel {
  min-width: 0;
  min-height: 0;
  padding: 12px;
  border: 1px solid rgba(var(--industry-accent-rgb), .2);
  border-radius: 17px;
  background: rgba(6,48,44,.74);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06);
}
.industry-bi-panel--trend,
.industry-bi-panel--schedule { display: grid; grid-template-rows: auto minmax(0, 1fr) auto; gap: 7px; }
.industry-bi-panel--summary { display: grid; align-content: center; gap: 8px; }
.industry-bi-panel__head { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.industry-bi-panel__head b { overflow: hidden; color: #dceae5; font-size: 8px; text-overflow: ellipsis; white-space: nowrap; }
.industry-bi-panel__head small { flex: 0 0 auto; color: var(--industry-accent); font-size: 7px; }
.industry-trend-chart { width: 100%; height: 112px; overflow: visible; }
.industry-chart-grid path { fill: none; stroke: rgba(225,241,235,.09); stroke-width: 1; }
.industry-trend-chart polyline { fill: none; stroke: var(--industry-accent); stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; vector-effect: non-scaling-stroke; }
.industry-trend-chart circle { fill: var(--industry-accent); stroke: rgba(8,50,44,.9); stroke-width: 1.5; vector-effect: non-scaling-stroke; }
.industry-chart-area { fill-opacity: .2; }
.industry-chart-stop { stop-color: var(--industry-accent); stop-opacity: .34; }
.industry-trend-chart .industry-chart-line--secondary { stroke: var(--lime); stroke-width: 1.7; opacity: .72; }
.industry-trend-chart .industry-chart-point--secondary { fill: var(--lime); }
.industry-chart-axis { display: grid; grid-template-columns: repeat(7, 1fr); color: #86a79d; font-size: 6px; text-align: center; }
.industry-chart-legend { display: flex; align-items: center; justify-content: flex-end; gap: 10px; color: #9ebbb1; font-size: 6px; }
.industry-chart-legend span { display: inline-flex; align-items: center; gap: 4px; }
.industry-chart-legend i { width: 10px; height: 2px; border-radius: 999px; background: var(--industry-accent); }
.industry-chart-legend span:last-child i { background: var(--lime); opacity: .78; }
.industry-bi-subtitle { color: #cfdfd9; font-size: 7px; font-weight: 700; letter-spacing: .025em; }
.industry-bi-subtitle--spaced { margin-top: 3px; padding-top: 8px; border-top: 1px solid rgba(226,244,239,.1); }
.industry-mini-bars,
.industry-rank-bars,
.service-load-chart,
.project-compare__bars { display: grid; gap: 7px; }
.industry-mini-bars > span,
.industry-rank-bars > span,
.service-load-chart > span,
.project-compare__bars > span {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(38px, auto) minmax(34px, 1fr) 25px;
  align-items: center;
  gap: 6px;
}
.industry-mini-bars b,
.industry-rank-bars b,
.service-load-chart b,
.project-compare__bars b { overflow: hidden; color: #bcd0c8; font-size: 6px; font-weight: 600; text-overflow: ellipsis; white-space: nowrap; }
.industry-mini-bars i,
.industry-rank-bars i,
.service-load-chart i,
.project-compare__bars i { height: 5px; overflow: hidden; border-radius: 999px; background: rgba(255,255,255,.08); }
.industry-mini-bars em,
.industry-rank-bars em,
.service-load-chart em,
.project-compare__bars em { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, rgba(var(--industry-accent-rgb), .48), var(--industry-accent)); }
.industry-mini-bars small,
.industry-rank-bars small,
.service-load-chart small,
.project-compare__bars small { color: #91afa5; font-size: 6px; text-align: right; white-space: nowrap; }
.industry-segment { height: 8px; display: flex; gap: 2px; overflow: hidden; border-radius: 999px; background: rgba(255,255,255,.05); }
.industry-segment i { height: 100%; background: var(--industry-accent); }
.industry-segment i:nth-child(2) { background: rgba(var(--industry-accent-rgb), .56); }
.industry-segment i:nth-child(3) { background: rgba(216,240,107,.72); }
.industry-segment i:nth-child(4) { background: rgba(112,178,156,.46); }
.industry-segment-legend { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 3px; color: #89a89e; font-size: 5.5px; white-space: nowrap; }
.industry-segment-legend--four { grid-template-columns: repeat(4, minmax(0, 1fr)); font-size: 5px; }
.industry-mini__status { max-width: 100%; flex-wrap: wrap; row-gap: 5px; }
.industry-mini__alert { margin-left: 2px; padding-left: 8px; border-left: 1px solid rgba(var(--industry-accent-rgb), .2); color: #c8d9d3; }
.industry-mini--retail .industry-mini__kpis b { font-size: 17px; }
.service-load-chart { align-content: center; gap: 12px; }
.service-load-chart > span { grid-template-columns: 36px 1fr 27px; }
.service-week-axis { margin-left: 42px; display: grid; grid-template-columns: repeat(5, 1fr); color: #829f96; font-size: 6px; text-align: center; }
.project-compare { align-content: center; }
.project-compare__bars > span { grid-template-columns: 42px 1fr 25px; }
.project-compare__bars > span:nth-child(2) em { background: linear-gradient(90deg, rgba(216,240,107,.42), var(--lime)); }
.project-compare__metrics { padding-top: 9px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; border-top: 1px solid rgba(226,244,239,.1); }
.project-compare__metrics > span { min-width: 0; padding: 7px; border: 1px solid rgba(var(--industry-accent-rgb), .11); border-radius: 10px; background: rgba(var(--industry-accent-rgb), .07); }
.project-compare__metrics small,
.project-compare__metrics b { display: block; }
.project-compare__metrics small { overflow: hidden; color: #91afa5; font-size: 5.5px; text-overflow: ellipsis; white-space: nowrap; }
.project-compare__metrics b { margin-top: 3px; color: var(--industry-accent); font-size: 13px; }
@media (hover: hover) and (pointer: fine) {
  .industry-tab:not(.is-active):hover { transform: translateY(-1px); border-color: rgba(30,89,71,.18); background: #f0f7f1; box-shadow: 0 9px 22px rgba(27,74,60,.07); }
  .industry-tab:hover .industry-tab__icon { transform: translateX(2px); }
  .industry-tags span:hover { transform: translateY(-2px); border-color: rgba(162,216,199,.3); background-color: rgba(83,181,151,.1); box-shadow: 0 8px 18px rgba(2,30,22,.08); }
  .industry-panel__copy .text-link:hover span { transform: translateX(4px); }
  .industry-panel--manufacturing:hover .industry-scene::before { transform: scale(1.035); }
  .industry-panel--manufacturing:hover .industry-mini--manufacturing { transform: translateY(-2px); box-shadow: 0 30px 58px rgba(3,27,21,.34), 0 0 46px rgba(74,160,132,.12), inset 0 1px 0 rgba(255,255,255,.14); }
  .industry-panel--manufacturing:hover .industry-panel__copy .text-link { color: #e3f58c; }
}

.case-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 24px; }
.case-card { background: var(--white); border-radius: var(--radius-lg); overflow: hidden; border: 1px solid var(--line); }
.case-visual { aspect-ratio: 16 / 9; padding: 26px; display: grid; place-items: center; position: relative; overflow: hidden; background: #dce9de; }
.case-card:nth-child(2) .case-visual { background: #f2e6d7; }
.case-card:nth-child(3) .case-visual { background: #dee5ee; }
.case-card:nth-child(4) .case-visual { background: #e8e1ed; }
.case-placeholder { width: 82%; height: 76%; background: rgba(255,255,255,.72); border-radius: 12px; box-shadow: 0 20px 40px rgba(24, 50, 42, .12); padding: 15px; display: grid; grid-template-columns: 22% 1fr; gap: 13px; transform: perspective(800px) rotateX(3deg) rotateY(-5deg); }
.placeholder-side { border-radius: 7px; background: rgba(30,89,71,.12); }
.placeholder-main { display: grid; grid-template-rows: 18% 1fr; gap: 10px; }
.placeholder-main::before, .placeholder-main::after { content: ""; border-radius: 6px; background: rgba(30,89,71,.1); }
.case-watermark { position: absolute; right: 18px; bottom: 14px; font-size: 11px; color: rgba(21,38,32,.5); }
.case-body { padding: 30px 32px 34px; }
.case-type { color: var(--green); font-size: 12px; font-weight: 700; letter-spacing: .1em; margin-bottom: 12px; }
.case-body p { margin-bottom: 22px; }
.home-cases .section-head__copy > h2 + p { max-width: 32em; text-wrap: pretty; }
.home-cases .case-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: 22px; row-gap: 20px; }
.home-case-card { min-width: 0; height: 400px; border-color: rgba(30,89,71,.085); border-radius: 18px; box-shadow: 0 9px 25px rgba(25,66,53,.05); transition: transform 270ms ease-out, border-color 270ms ease-out, box-shadow 270ms ease-out; }
.home-case-card__link { height: 100%; display: flex; flex-direction: column; color: inherit; }
.home-case-card .case-visual { flex: 0 0 auto; width: 100%; height: 174px; aspect-ratio: auto; padding: 0; }
.home-case-card .case-visual > img { width: 100%; height: 100%; display: block; object-fit: cover; transition: transform 270ms ease-out; }
.case-image-empty { width: 100%; height: 100%; display: grid; place-items: center; background: radial-gradient(circle at 78% 22%, rgba(216,240,107,.2), transparent 32%), linear-gradient(145deg, #eaf1ea, #dbe8e2); color: #71877d; font-size: 12px; font-weight: 650; letter-spacing: .04em; }
.case-image-empty span { padding: 9px 13px; border: 1px solid rgba(30,89,71,.1); border-radius: 999px; background: rgba(255,255,255,.52); }
.home-case-card:nth-child(5) .case-visual { background: #e6ebdf; }
.home-case-card:nth-child(6) .case-visual { background: #e2ebe8; }
.home-case-card .case-body { min-height: 0; flex: 1; padding: 14px 20px; display: flex; flex-direction: column; }
.case-industry { align-self: flex-start; margin-bottom: 14px; padding: 4px 8px; border: 1px solid rgba(30,89,71,.07); border-radius: 7px; background: #edf4ed; color: var(--green); font-size: 10px; font-weight: 700; line-height: 1; }
.home-case-card h3 { height: 2.5em; min-height: 2.5em; margin: 0; overflow: hidden; display: -webkit-box; color: var(--ink); font-size: 18px; font-weight: 700; line-height: 1.25; -webkit-box-orient: vertical; -webkit-line-clamp: 2; transition: color 270ms ease-out; }
.home-case-card .case-body > p { height: 4.05em; min-height: 4.05em; margin: 8px 0 0; overflow: hidden; display: -webkit-box; color: var(--ink-2); font-size: 12.5px; line-height: 1.35; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.case-logo { height: 52px; min-height: 52px; margin-top: auto; padding-top: 9px; display: flex; align-items: center; border-top: 1px solid rgba(30,89,71,.045); }
.case-logo__image { width: auto; max-width: 150px; max-height: 32px; height: auto; object-fit: contain; object-position: left center; }
.case-logo__image--nankai { width: 132px; max-width: 100%; height: auto; }
.case-logo__image--sunline { width: 132px; max-width: 100%; height: auto; }
.case-logo__image--meanew { width: 160px; max-width: 100%; height: auto; }
.case-logo-lockup { display: inline-flex; align-items: center; gap: 9px; color: #182b75; }
.case-logo-lockup__mark { position: relative; width: 53px; height: 42px; flex: 0 0 53px; overflow: hidden; }
.case-logo-lockup__mark img { position: absolute; top: -11px; left: -29px; width: 235px; max-width: none; height: auto; }
.case-logo-lockup strong { font-family: "Microsoft YaHei UI", "PingFang SC", "Noto Sans SC", sans-serif; font-size: 21px; font-weight: 700; line-height: 1; letter-spacing: .055em; white-space: nowrap; }
.case-logo-crop { position: relative; display: inline-block; overflow: hidden; }
.case-logo-crop--omnivision { width: 160px; height: 30px; }
.case-logo-crop--omnivision img { position: absolute; top: -27px; left: -14px; width: 210px; max-width: none; height: auto; }
.case-logo-placeholder { display: inline-flex; align-items: center; gap: 10px; color: #82938b; }
.case-logo-placeholder i { min-width: 48px; height: 28px; padding: 0 8px; display: inline-grid; place-items: center; border: 1px dashed rgba(30,89,71,.2); border-radius: 6px; background: #f5f7f3; color: #698177; font-size: 9px; font-style: normal; font-weight: 800; letter-spacing: .08em; }
.case-logo-placeholder small { font-size: 11px; line-height: 1.3; }
.home-case-card.is-placeholder { border-style: dashed; }
.home-case-card.is-placeholder .case-industry { color: #71877d; }
.home-case-card.is-sample { border-color: rgba(30,89,71,.14); box-shadow: 0 13px 32px rgba(25,66,53,.07); }
.home-case-card.is-sample .case-logo__image { width: auto; max-width: 143px; height: 31px; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; filter: none; opacity: 1; mix-blend-mode: normal; }
.home-case-card.is-sample .case-logo-placeholder small { display: none; }
.home-case-card__link:focus-visible { outline: 3px solid rgba(30,89,71,.16); outline-offset: -3px; border-radius: inherit; }
@media (hover: hover) and (pointer: fine) {
  .home-case-card:hover { transform: translateY(-3px); border-color: rgba(30,89,71,.15); box-shadow: 0 17px 38px rgba(25,66,53,.1); }
  .home-case-card:hover h3 { color: var(--green-deep); }
  .home-case-card:hover .case-visual > img { transform: scale(1.02); }
}

.cases-page { background: #fff; }
.cases-page .container { max-width: 1240px; }
.cases-hero { position: relative; min-height: 470px; padding: 150px 0 92px; display: grid; align-items: center; overflow: hidden; background: radial-gradient(circle at 80% 18%, rgba(128,207,187,.18), transparent 30%), radial-gradient(circle at 18% 82%, rgba(212,237,111,.12), transparent 26%), linear-gradient(145deg, #f2f8f5, #f8fbfa 56%, #f4f8f7); }
.cases-hero::after { content: ""; position: absolute; width: 340px; height: 340px; right: -100px; bottom: -190px; border-radius: 50%; border: 1px solid rgba(31,112,88,.07); box-shadow: 0 0 0 42px rgba(255,255,255,.22), 0 0 0 86px rgba(93,171,149,.025); pointer-events: none; }
.cases-hero__inner { position: relative; z-index: 1; text-align: center; }
.cases-hero__eyebrow { margin: 0 0 20px; color: #2b7b66; font-size: 12px; font-weight: 760; line-height: 1.5; letter-spacing: .14em; text-transform: uppercase; }
.cases-hero__eyebrow span { color: #8aa098; font-weight: 620; }
.cases-hero h1 { max-width: 980px; margin: 0 auto; color: #073c31; font-size: clamp(52px, 5vw, 72px); font-weight: 780; line-height: 1.08; letter-spacing: -.045em; }
.cases-hero__inner > p:last-child { max-width: 760px; margin: 26px auto 0; color: #5c7169; font-size: 17px; line-height: 1.8; }
.cases-library { padding: 92px 0 122px; background: linear-gradient(180deg, #fff, #fbfaf7); }
.cases-library__head h2 { margin: 0; color: #173f34; font-size: 19px; font-weight: 760; line-height: 1.4; letter-spacing: -.01em; }
.cases-filter { margin-top: 24px; display: flex; align-items: center; gap: 10px; overflow-x: auto; scrollbar-width: none; }
.cases-filter::-webkit-scrollbar { display: none; }
.case-filter { min-height: 42px; padding: 0 18px; flex: 0 0 auto; border: 1px solid rgba(30,89,71,.11); border-radius: 999px; color: #526c63; background: rgba(255,255,255,.86); font: inherit; font-size: 13px; font-weight: 680; cursor: pointer; transition: color .22s ease-out, background-color .22s ease-out, border-color .22s ease-out, transform .22s ease-out; }
.case-filter:hover { color: #174f40; border-color: rgba(30,89,71,.22); background: #f1f7f3; }
.case-filter:focus-visible { outline: 3px solid rgba(183,213,48,.25); outline-offset: 2px; }
.case-filter.is-active { color: #fff; border-color: #155b48; background: #155b48; box-shadow: 0 8px 18px rgba(21,91,72,.12); }
.cases-grid { margin-top: 34px; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px 20px; }
.case-library-card { height: 448px; border-radius: 20px; background: #fff; }
.case-library-card[hidden] { display: none; }
.case-library-card .case-visual { height: 184px; }
.case-library-card .case-body { padding: 16px 20px 15px; }
.case-library-card .case-industry { min-height: 20px; margin-bottom: 12px; display: inline-flex; align-items: center; }
.case-library-card h3 { font-size: 18px; }
.case-library-card .case-body > p { height: 5.4em; min-height: 5.4em; margin-top: 9px; font-size: 12.5px; line-height: 1.35; -webkit-line-clamp: 4; }
.case-library-card .case-logo { height: 55px; min-height: 55px; padding-top: 10px; }
.case-catalog-logo { display: inline-flex; align-items: center; white-space: nowrap; }
.case-catalog-logo--lingxing { gap: 9px; color: #162a72; }
.case-catalog-logo--lingxing img { width: 43px; height: 34px; object-fit: contain; }
.case-catalog-logo--lingxing strong { font-family: "Microsoft YaHei UI", "PingFang SC", "Noto Sans SC", sans-serif; font-size: 18px; font-weight: 720; letter-spacing: .045em; }
.case-catalog-logo--omnivision { gap: 8px; color: #222; }
.case-catalog-logo--omnivision img { width: 126px; height: 25px; object-fit: contain; }
.case-catalog-logo--omnivision i { width: 1px; height: 20px; background: rgba(23,40,35,.22); }
.case-catalog-logo--omnivision strong { font-family: "Microsoft YaHei UI", "PingFang SC", "Noto Sans SC", sans-serif; font-size: 14px; font-weight: 650; letter-spacing: .02em; }
.cases-empty { margin: 58px 0 0; padding: 44px 24px; border: 1px dashed rgba(30,89,71,.14); border-radius: 20px; color: #70847c; background: #f7faf7; text-align: center; }

.method-timeline { margin: 58px 0 30px; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); position: relative; }
.method-step { min-width: 0; position: relative; padding: 0 28px 0 0; display: grid; justify-items: start; border: 0; background: transparent; color: inherit; font: inherit; text-align: left; cursor: pointer; }
.method-step::after { content: ""; position: absolute; top: 22px; left: 47px; right: 2px; height: 2px; border-radius: 999px; background: #c5d0c7; transition: background-color 260ms ease-out, box-shadow 260ms ease-out; }
.method-step:last-child::after { display: none; }
.method-step > * { position: relative; z-index: 1; }
.step-num { width: 45px; height: 45px; display: grid; place-items: center; border: 1px solid #bfcabf; border-radius: 50%; background: var(--paper); color: var(--green); font-size: 12px; font-weight: 800; transition: transform 240ms ease-out, border-color 240ms ease-out, background-color 240ms ease-out, color 240ms ease-out, box-shadow 240ms ease-out; }
.method-step__title { margin-top: 22px; color: var(--ink); font-size: 18px; font-weight: 700; line-height: 1.3; transition: color 240ms ease-out, font-weight 240ms ease-out; }
.method-step__summary { max-width: 180px; margin-top: 8px; color: var(--ink-2); font-size: 13px; line-height: 1.65; }
.method-step.is-complete::after { background: var(--green); box-shadow: 0 0 0 1px rgba(30,89,71,.04); }
.method-step.is-complete .step-num { border-color: rgba(30,89,71,.28); background: #e7f1e9; color: var(--green-deep); }
.method-step.is-active .step-num { border-color: var(--green-deep); background: var(--green-deep); color: var(--lime); box-shadow: 0 8px 20px rgba(20,73,57,.17), 0 0 0 5px rgba(30,89,71,.06); }
.method-step.is-active .method-step__title { color: var(--green-deep); font-weight: 800; }
.method-step:focus-visible { outline: 3px solid rgba(30,89,71,.16); outline-offset: 6px; border-radius: 12px; }
.method-detail-shell { min-height: 584px; padding: 0; overflow: hidden; border: 0; background: transparent; }
.method-detail { opacity: 0; transform: translateY(6px); transition: opacity 250ms ease-out, transform 250ms ease-out; }
.method-detail.is-active { opacity: 1; transform: none; }
.method-detail[hidden] { display: none; }
.method-detail--01 { --method-accent: #3f9f87; --method-accent-rgb: 63,159,135; }
.method-detail--02 { --method-accent: #318f91; --method-accent-rgb: 49,143,145; }
.method-detail--03 { --method-accent: #468fb3; --method-accent-rgb: 70,143,179; }
.method-detail--04 { --method-accent: #93a943; --method-accent-rgb: 147,169,67; }
.method-detail--05 { --method-accent: #7185a4; --method-accent-rgb: 113,133,164; }
.method-card-shell { padding: 0; overflow: visible; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.method-card-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: 1fr; gap: 26px; }
.method-text-card { min-width: 0; min-height: 276px; padding: 38px 40px 34px; border: 1px solid #d8dfdc; border-radius: 24px; background: #fff; box-shadow: 0 4px 14px rgba(27,52,44,.025); cursor: default; transition: border-color 240ms ease-out, box-shadow 240ms ease-out; }
.method-text-card h3 { margin: 0; color: #14211d; font-size: 23px; font-weight: 780; line-height: 1.35; }
.method-text-card ul,
.method-text-card ol { margin: 27px 0 0; padding: 0; display: grid; gap: 14px; list-style: none; }
.method-text-card li { position: relative; color: #42534d; font-size: 15px; line-height: 1.62; }
.method-text-card ul li { padding-left: 27px; }
.method-text-card ul li::before { content: ""; position: absolute; left: 2px; top: .69em; width: 7px; height: 7px; border-radius: 50%; background: #17ad5c; }
.method-text-card--blue ul li::before { background: #168fe2; }
.method-text-card--orange ul li::before { background: #ee9a00; }
.method-text-card--steps ol { counter-reset: method-step-list; gap: 12px; }
.method-text-card--steps li { min-height: 30px; padding-left: 48px; counter-increment: method-step-list; }
.method-text-card--steps li::before { content: counter(method-step-list); position: absolute; left: 0; top: -.08em; width: 30px; height: 30px; display: grid; place-items: center; border-radius: 50%; background: #e1f5e8; color: #157845; font-size: 13px; font-weight: 750; line-height: 1; }
@media (hover: hover) and (pointer: fine) {
  .method-text-card:hover { border-color: #d0d8d4; box-shadow: 0 7px 18px rgba(25,60,49,.035); }
}
.method-workbench { min-height: 276px; display: grid; grid-template-columns: minmax(300px, 40%) minmax(0, 60%); overflow: hidden; border: 1px solid rgba(var(--method-accent-rgb), .16); border-radius: 26px; background: radial-gradient(circle at 88% 15%, rgba(var(--method-accent-rgb), .12), transparent 40%), linear-gradient(145deg, #fafaf5, #eff5ef); box-shadow: 0 19px 42px rgba(25,73,58,.075), inset 0 1px 0 rgba(255,255,255,.82); transition: border-color 250ms ease-out, background-color 250ms ease-out; }
.method-workbench__copy { min-width: 0; position: relative; z-index: 1; padding: 27px 30px; overflow: hidden; background: linear-gradient(145deg, rgba(255,255,255,.82), rgba(var(--method-accent-rgb), .055)); }
.method-workbench__copy::after { content: ""; position: absolute; right: -90px; bottom: -125px; width: 240px; height: 240px; border-radius: 50%; background: radial-gradient(circle, rgba(var(--method-accent-rgb), .1), transparent 68%); pointer-events: none; }
.method-workbench__heading { position: relative; display: flex; align-items: baseline; gap: 11px; }
.method-workbench__heading > span { color: var(--method-accent); font-size: 15px; font-weight: 850; line-height: 1; letter-spacing: .04em; }
.method-workbench__copy h3 { position: relative; margin: 0; color: var(--green-deep); font-size: 28px; line-height: 1.15; }
.method-workbench__goal { max-width: 350px; margin: 12px 0 0; color: var(--ink-2); font-size: 13px; line-height: 1.62; }
.method-workbench__modules { position: relative; margin-top: 17px; display: grid; gap: 9px; }
.method-info-module { min-width: 0; padding: 10px 11px; display: grid; grid-template-columns: 34px minmax(0, 1fr); align-items: center; gap: 10px; border: 1px solid rgba(var(--method-accent-rgb), .12); border-radius: 14px; background: rgba(255,255,255,.54); }
.method-info-module__icon { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 10px; background: rgba(var(--method-accent-rgb), .12); color: var(--method-accent); font-style: normal; }
.method-info-module__icon svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.method-info-module small { display: block; color: var(--method-accent); font-size: 9px; font-weight: 800; letter-spacing: .06em; }
.method-info-module p { margin: 4px 0 0; color: #39564d; font-size: 11px; font-weight: 650; line-height: 1.45; }
.method-output-tags { margin-top: 5px; display: flex; flex-wrap: wrap; gap: 5px; }
.method-output-tags span { padding: 4px 7px; border-radius: 999px; background: rgba(var(--method-accent-rgb), .09); color: #49665d; font-size: 8px; font-weight: 700; }
.method-stage-visual { min-width: 0; min-height: 250px; position: relative; z-index: 1; margin: 12px; overflow: hidden; border: 1px solid rgba(var(--method-accent-rgb), .15); border-radius: 21px; background: radial-gradient(circle at 82% 18%, rgba(var(--method-accent-rgb), .16), transparent 42%), linear-gradient(145deg, rgba(255,255,255,.7), rgba(var(--method-accent-rgb), .075)); color: var(--green-deep); box-shadow: 0 14px 30px rgba(24,73,58,.065), inset 0 1px 0 rgba(255,255,255,.78); opacity: 0; transform: translateY(8px); transition: opacity 280ms ease-out, transform 280ms ease-out; }
.method-detail.is-active .method-stage-visual { opacity: 1; transform: none; }
.method-stage-visual::before { content: ""; position: absolute; inset: 0; background-image: linear-gradient(rgba(var(--method-accent-rgb), .026) 1px, transparent 1px), linear-gradient(90deg, rgba(var(--method-accent-rgb), .026) 1px, transparent 1px); background-size: 30px 30px; pointer-events: none; }
.method-stage-visual::after { content: ""; position: absolute; right: -110px; top: -130px; width: 330px; height: 330px; border-radius: 50%; background: radial-gradient(circle, rgba(var(--method-accent-rgb), .16), transparent 68%); pointer-events: none; }
.method-stage-visual > * { position: relative; z-index: 1; }
.method-stage-visual--path { padding: 30px 27px; display: grid; align-content: center; gap: 22px; }
.method-path { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); align-items: center; gap: 24px; }
.method-path__item { min-width: 0; min-height: 82px; position: relative; display: grid; place-items: center; align-content: center; gap: 9px; border: 1px solid rgba(var(--method-accent-rgb), .1); border-radius: 16px; background: rgba(var(--method-accent-rgb), .045); }
.method-path__item:not(:last-child)::after { content: ""; position: absolute; right: -24px; top: 50%; width: 24px; height: 1px; background: rgba(var(--method-accent-rgb), .34); }
.method-path__item:not(:last-child)::before { content: ""; position: absolute; right: -24px; top: calc(50% - 3px); width: 6px; height: 6px; border-top: 1px solid rgba(var(--method-accent-rgb), .5); border-right: 1px solid rgba(var(--method-accent-rgb), .5); transform: rotate(45deg); }
.method-path__item > i { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 11px; background: rgba(var(--method-accent-rgb), .12); color: var(--method-accent); font-style: normal; }
.method-path__item > i svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.method-path__item b { color: #35584d; font-size: 11px; font-weight: 750; white-space: nowrap; }
.method-path__item.is-complete { border-color: rgba(var(--method-accent-rgb), .22); background: rgba(var(--method-accent-rgb), .1); }
.method-path__item.is-complete > i { background: var(--method-accent); color: white; box-shadow: 0 6px 15px rgba(var(--method-accent-rgb), .16); }
.method-stage-result { justify-self: center; padding: 8px 12px; display: inline-flex; align-items: center; gap: 7px; border: 1px solid rgba(var(--method-accent-rgb), .16); border-radius: 999px; background: rgba(255,255,255,.58); color: #46645a; font-size: 10px; font-weight: 750; }
.method-stage-result svg { width: 15px; height: 15px; fill: none; stroke: var(--method-accent); stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.method-visual-status { position: absolute; left: 22px; bottom: 17px; padding: 8px 11px; display: inline-flex; align-items: center; gap: 7px; border: 1px solid rgba(30,89,71,.12); border-radius: 999px; background: rgba(255,255,255,.78); color: #587269; font-size: 8px; box-shadow: 0 7px 18px rgba(30,89,71,.07); }
.method-visual-status i { width: 5px; height: 5px; border-radius: 50%; background: #63a94f; box-shadow: 0 0 0 3px rgba(99,169,79,.11); }

.method-stage-visual--mapping { padding: 25px 24px 58px; display: grid; grid-template-rows: auto 1fr; align-items: center; }
.method-map-roles { display: flex; justify-content: flex-end; gap: 7px; }
.method-map-roles span { padding: 7px 10px; border: 1px solid rgba(30,89,71,.12); border-radius: 999px; background: rgba(255,255,255,.72); color: #547267; font-size: 8px; box-shadow: 0 5px 13px rgba(30,89,71,.05); }
.method-map-flow { display: grid; grid-template-columns: repeat(9, auto); align-items: center; justify-content: center; gap: 8px; }
.method-map-flow > span { width: 68px; height: 76px; display: grid; place-items: center; align-content: center; gap: 7px; border: 1px solid rgba(30,89,71,.12); border-radius: 18px; background: linear-gradient(145deg, rgba(255,255,255,.94), rgba(229,241,234,.86)); box-shadow: 0 11px 24px rgba(30,89,71,.08); }
.method-map-flow > span i { width: 24px; height: 24px; display: grid; place-items: center; border-radius: 8px; background: rgba(95,165,91,.13); color: #39775f; font-size: 7px; font-style: normal; }
.method-map-flow > span b { font-size: 10px; }
.method-map-flow > em { color: rgba(30,89,71,.42); font-size: 12px; font-style: normal; }

.method-stage-visual--prototype { min-height: 328px; }
.prototype-screen { position: absolute; padding: 12px; overflow: hidden; border: 1px solid rgba(224,242,235,.16); border-radius: 16px; background: linear-gradient(145deg, rgba(245,250,247,.92), rgba(214,235,226,.78)); color: var(--green-deep); box-shadow: 0 17px 35px rgba(2,29,22,.22); }
.prototype-screen__head { display: flex; align-items: center; gap: 6px; }
.prototype-screen__head > i { width: 7px; height: 7px; border-radius: 50%; background: #62bda0; }
.prototype-screen__head b { font-size: 8px; }
.prototype-screen__head small { margin-left: auto; color: #77988d; font-size: 6px; }
.prototype-screen--table { left: 7%; top: 45px; width: 39%; height: 142px; display: grid; gap: 7px; transform: rotate(-2deg); }
.prototype-screen--table > span { height: 14px; border-radius: 5px; background: linear-gradient(90deg, rgba(41,114,91,.14) 29%, transparent 29% 32%, rgba(41,114,91,.08) 32% 67%, transparent 67% 70%, rgba(41,114,91,.1) 70%); }
.prototype-screen--workspace { left: 28%; top: 78px; z-index: 2; width: 43%; height: 165px; display: grid; grid-template-columns: 26px 1fr; grid-template-rows: auto 1fr; gap: 10px; }
.prototype-screen--workspace .prototype-screen__head { grid-column: 1 / -1; }
.prototype-sidebar { border-radius: 7px; background: rgba(28,96,75,.13); }
.prototype-modules { display: grid; grid-template-columns: repeat(2, 1fr); gap: 7px; }
.prototype-modules span { border-radius: 7px; background: rgba(30,112,86,.1); }
.prototype-modules span:first-child { grid-column: 1 / -1; background: rgba(164,201,104,.17); }
.prototype-screen--flow { right: 6%; top: 40px; width: 36%; height: 150px; transform: rotate(2deg); }
.prototype-flow { height: 88px; margin-top: 13px; padding: 10px; display: flex; align-items: center; justify-content: center; gap: 7px; border: 1px dashed rgba(30,89,71,.16); border-radius: 11px; background: rgba(255,255,255,.45); }
.prototype-flow span { padding: 8px 7px; border: 1px solid rgba(30,89,71,.12); border-radius: 8px; background: #f8fbf8; color: #44675b; font-size: 7px; font-weight: 700; }
.prototype-flow i { color: #75a492; font-size: 8px; font-style: normal; }

.method-stage-visual--integration { padding: 24px 22px 58px; display: grid; grid-template-columns: minmax(130px, 1fr) 112px minmax(115px, .9fr); align-items: center; gap: 20px; }
.method-integration-lines { position: absolute; inset: 0; width: 100%; height: 100%; }
.method-integration-lines path { fill: none; stroke: rgba(47,132,105,.28); stroke-width: 1.4; stroke-linecap: round; vector-effect: non-scaling-stroke; }
.method-integration-lines circle { fill: #61a96f; filter: drop-shadow(0 0 4px rgba(75,156,116,.3)); }
.method-integration-apps { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
.method-integration-apps > span { min-width: 0; min-height: 67px; padding: 9px; display: grid; grid-template-columns: 25px minmax(0,1fr); grid-template-rows: auto auto; align-content: center; gap: 2px 7px; border: 1px solid rgba(30,89,71,.12); border-radius: 14px; background: rgba(255,255,255,.76); box-shadow: 0 8px 18px rgba(30,89,71,.06); }
.method-integration-apps i { grid-row: 1 / 3; width: 25px; height: 25px; display: grid; place-items: center; border-radius: 8px; background: rgba(86,173,143,.13); color: #38795f; font-size: 6px; font-style: normal; }
.method-integration-apps b { overflow: hidden; align-self: end; font-size: 8px; text-overflow: ellipsis; white-space: nowrap; }
.method-integration-apps small { align-self: start; color: #709186; font-size: 6px; }
.method-integration-hub { width: 112px; height: 112px; display: grid; place-items: center; align-content: center; gap: 7px; border: 1px solid rgba(216,240,107,.24); border-radius: 28px; background: linear-gradient(145deg, #226f59, #124a3e); color: white; box-shadow: 0 18px 38px rgba(2,27,20,.2), 0 0 0 9px rgba(108,193,163,.07); }
.method-integration-hub i { width: 30px; height: 30px; display: grid; place-items: center; border-radius: 10px; background: rgba(216,240,107,.14); color: var(--lime); font-size: 14px; font-style: normal; }
.method-integration-hub b { font-size: 11px; }
.method-integration-hub small { color: #9fc8bc; font-size: 6px; }
.method-integration-hub > span { padding: 4px 7px; border-radius: 999px; background: rgba(216,240,107,.13); color: var(--lime); font-size: 6px; font-weight: 700; }
.method-integration-system { min-height: 100px; padding: 16px; display: grid; place-items: center; align-content: center; gap: 7px; border: 1px solid rgba(30,89,71,.14); border-radius: 21px; background: rgba(223,239,226,.9); box-shadow: 0 10px 24px rgba(30,89,71,.07); }
.method-integration-system i { width: 31px; height: 31px; display: grid; place-items: center; border-radius: 10px; background: rgba(71,153,112,.13); color: #347459; font-size: 9px; font-style: normal; }
.method-integration-system b { font-size: 11px; }
.method-integration-system small { color: #708f84; font-size: 7px; }

.method-stage-visual--launch { padding: 24px 25px 58px; }
.method-launch-head { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.method-launch-users { display: flex; align-items: center; }
.method-launch-users span { width: 34px; height: 34px; margin-right: -7px; display: grid; place-items: center; border: 2px solid #f1f7f2; border-radius: 50%; background: #4f9f85; color: white; font-size: 8px; box-shadow: 0 4px 11px rgba(30,89,71,.1); }
.method-launch-users span:nth-child(2) { background: #75aebe; }
.method-launch-users span:nth-child(3) { background: #9aad72; }
.method-launch-users i { margin-left: 13px; color: #69887d; font-size: 8px; font-style: normal; }
.method-launch-head > div:last-child { display: flex; align-items: baseline; gap: 9px; }
.method-launch-head b { color: var(--green-deep); font-size: 10px; }
.method-launch-head small { color: #769085; font-size: 7px; }
.method-launch-checklist { margin-top: 16px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
.method-launch-checklist > span { min-height: 57px; padding: 9px 11px; display: grid; grid-template-columns: 28px minmax(0,1fr); grid-template-rows: auto auto; align-content: center; gap: 3px 9px; border: 1px solid rgba(30,89,71,.11); border-radius: 15px; background: rgba(255,255,255,.72); box-shadow: 0 7px 17px rgba(30,89,71,.05); }
.method-launch-checklist i { grid-row: 1 / 3; width: 28px; height: 28px; display: grid; place-items: center; border-radius: 9px; background: rgba(30,89,71,.06); color: #789287; font-size: 8px; font-style: normal; }
.method-launch-checklist b { align-self: end; font-size: 9px; }
.method-launch-checklist small { align-self: start; color: #789287; font-size: 6px; }
.method-launch-checklist .is-done i { background: rgba(82,161,118,.13); color: #337a5b; }
.method-launch-checklist .is-active { border-color: rgba(129,156,56,.24); background: rgba(225,239,187,.46); }
.method-launch-checklist .is-active i { background: rgba(178,202,84,.19); color: #56751f; }
.method-feedback-note { margin-top: 9px; padding: 9px 12px; display: flex; align-items: center; gap: 10px; border: 1px dashed rgba(30,89,71,.15); border-radius: 12px; background: rgba(236,244,226,.72); }
.method-feedback-note small { color: #718a7f; font-size: 7px; }
.method-feedback-note b { color: #416558; font-size: 8px; }

.method-stage-visual--iteration { padding: 22px 22px 58px; display: grid; grid-template-columns: minmax(245px, 1.08fr) minmax(180px, .92fr); align-items: center; gap: 20px; }
.method-iteration-loop { width: 245px; height: 225px; position: relative; justify-self: center; }
.method-iteration-loop::before { content: ""; position: absolute; inset: 34px 36px; border: 1px solid rgba(45,124,97,.18); border-radius: 50%; box-shadow: inset 0 0 34px rgba(91,181,150,.08); }
.method-iteration-loop::after { content: "↻"; position: absolute; right: 30px; top: 100px; color: rgba(45,124,97,.48); font-size: 15px; }
.method-loop-node { width: 88px; min-height: 50px; position: absolute; padding: 8px 9px; display: grid; grid-template-columns: 20px 1fr; align-items: center; gap: 6px; border: 1px solid rgba(30,89,71,.12); border-radius: 14px; background: rgba(255,255,255,.78); box-shadow: 0 8px 18px rgba(30,89,71,.06); }
.method-loop-node i { width: 20px; height: 20px; display: grid; place-items: center; border-radius: 7px; background: rgba(79,155,116,.13); color: #39775f; font-size: 6px; font-style: normal; }
.method-loop-node b { font-size: 8px; }
.method-loop-node--1 { left: 79px; top: 0; }
.method-loop-node--2 { right: 0; top: 84px; }
.method-loop-node--3 { left: 79px; bottom: 0; }
.method-loop-node--4 { left: 0; top: 84px; }
.method-loop-core { width: 82px; height: 82px; position: absolute; left: 82px; top: 72px; display: grid; place-items: center; align-content: center; gap: 5px; border-radius: 50%; background: linear-gradient(145deg, #2b8066, #175442); box-shadow: 0 14px 30px rgba(2,29,22,.24), 0 0 0 8px rgba(108,193,163,.05); }
.method-loop-core b { color: var(--lime); font-size: 17px; }
.method-loop-core small { color: #aad0c2; font-size: 7px; }
.method-iteration-records { min-width: 0; padding: 14px; display: grid; gap: 8px; border: 1px solid rgba(30,89,71,.12); border-radius: 17px; background: rgba(255,255,255,.72); box-shadow: 0 10px 24px rgba(30,89,71,.06); }
.method-iteration-records > div { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding-bottom: 8px; border-bottom: 1px solid rgba(30,89,71,.08); }
.method-iteration-records > div b { color: var(--green-deep); font-size: 9px; }
.method-iteration-records > div small { color: #769086; font-size: 6px; }
.method-iteration-records > span { min-height: 38px; padding: 7px 9px; display: grid; grid-template-columns: 22px minmax(0,1fr); align-items: center; gap: 8px; border-radius: 10px; background: rgba(232,242,235,.78); }
.method-iteration-records > span i { width: 22px; height: 22px; display: grid; place-items: center; border-radius: 7px; background: rgba(74,151,111,.13); color: #39775f; font-size: 6px; font-style: normal; }
.method-iteration-records > span b { color: #426359; font-size: 7px; }
.method-principles { margin-top: 14px; padding-top: 13px; display: flex; align-items: center; gap: 5px; border-top: 1px solid rgba(30,89,71,.07); color: #8a9690; font-size: 10px; line-height: 1.5; }
.method-principles b { flex: 0 0 auto; color: #6c7c75; font-size: 10px; font-weight: 700; }
.method-principles span { min-width: 0; }
@media (hover: hover) and (pointer: fine) {
  .method-step:not(.is-active):hover .step-num { transform: scale(1.06); border-color: rgba(30,89,71,.38); background: #edf5ee; color: var(--green-deep); }
  .method-step:not(.is-active):hover .method-step__title { color: var(--green); }
}

.fde-section { padding-top: 98px; padding-bottom: 86px; background: radial-gradient(circle at 52% 45%, var(--fde-section-glow-lime), transparent 28%), radial-gradient(circle at 12% 35%, var(--fde-section-glow-mint), transparent 30%), radial-gradient(circle at 88% 28%, var(--fde-section-glow-blue), transparent 32%), var(--fde-section-bg); color: var(--fde-text-primary); }
.fde-section::before { content: ""; position: absolute; inset: -18px; z-index: 0; background: url('/images/industries/25.jpg') center 56% / cover no-repeat; opacity: .055; filter: blur(14px) saturate(.34) brightness(1.08) contrast(.82); transform: scale(1.055); pointer-events: none; }
.fde-section::after { content: ""; position: absolute; inset: 0; z-index: 0; background: linear-gradient(180deg, color-mix(in srgb, var(--fde-section-bg) 82%, transparent), color-mix(in srgb, var(--fde-section-bg) 18%, transparent) 20%, color-mix(in srgb, var(--fde-section-bg) 12%, transparent) 80%, color-mix(in srgb, var(--fde-section-bg) 78%, transparent)); pointer-events: none; }
.fde-wrap { position: relative; z-index: 1; }
.fde-section .section-head h2 { color: var(--fde-text-primary); }
.fde-section .section-head p { color: var(--fde-text-secondary); }
.fde-section .section-head .eyebrow { color: var(--fde-text-primary); }
.fde-grid { display: grid; grid-template-columns: minmax(0, 1fr) 190px minmax(0, 1fr); gap: 38px; align-items: center; margin-top: 48px; }
.fde-panel { min-width: 0; min-height: 326px; position: relative; overflow: hidden; border-radius: var(--fde-card-radius); padding: 30px; box-shadow: var(--fde-shadow), inset 0 1px 0 rgba(255,255,255,.92); backdrop-filter: blur(3px); }
.fde-panel--field { border: 1px solid var(--fde-before-border); background: linear-gradient(145deg, var(--fde-before-bg-start), var(--fde-before-bg-end)); }
.fde-panel--system { border: 1px solid var(--fde-after-border); background: linear-gradient(145deg, var(--fde-after-bg-start), var(--fde-after-bg-end)); }
.fde-panel::after { content: ""; position: absolute; width: 190px; height: 190px; right: -115px; bottom: -120px; border-radius: 50%; background: radial-gradient(circle, var(--fde-section-glow-mint), transparent 68%); pointer-events: none; }
.fde-panel__head { position: relative; z-index: 2; display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.fde-panel__head h3 { margin: 0; color: var(--fde-text-primary); font-size: 21px; letter-spacing: -.015em; }
.fde-panel__head p { margin: 7px 0 0; color: var(--fde-text-secondary); font-size: 10px; line-height: 1.4; }
.fde-panel__head > span { padding: 5px 9px; border: 1px solid var(--fde-core-pill-border); border-radius: 999px; background: var(--fde-core-pill-bg); color: var(--fde-text-secondary); font-size: 8px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.fde-field-map { position: relative; z-index: 1; margin-top: 27px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.fde-field-node { --fde-node-accent: var(--fde-before-mint); min-height: 58px; padding: 12px 14px; display: inline-flex; align-items: center; justify-content: flex-start; gap: 9px; border: 1px solid color-mix(in srgb, var(--fde-node-accent) 27%, transparent); border-radius: var(--fde-module-radius); background: color-mix(in srgb, var(--fde-before-card) 88%, var(--fde-node-accent)); color: var(--fde-text-secondary); font-size: 11px; font-weight: 680; box-shadow: 0 5px 15px rgba(39,71,60,.035), inset 0 1px 0 rgba(255,255,255,.9); transition: transform 220ms ease-out, border-color 220ms ease-out, background 220ms ease-out, color 220ms ease-out; }
.fde-field-node--2 { --fde-node-accent: var(--fde-before-blue); }
.fde-field-node--4 { --fde-node-accent: var(--fde-before-purple); }
.fde-field-node.is-alert { --fde-node-accent: var(--fde-before-issue-dot); border-color: color-mix(in srgb, var(--fde-before-issue-border) 86%, var(--fde-before-issue-dot)); background: color-mix(in srgb, var(--fde-before-issue-bg) 90%, var(--fde-before-issue-dot)); color: var(--fde-core-text); }
.fde-node-icon { width: 18px; height: 18px; flex: 0 0 18px; display: grid; place-items: center; color: var(--fde-node-accent, var(--fde-system-accent)); font-style: normal; }
.fde-node-icon svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.fde-core { min-width: 0; align-self: center; position: relative; display: grid; place-items: center; text-align: center; }
.fde-core-network { width: 190px; height: 292px; position: relative; }
.fde-core-center { width: 120px; height: 120px; position: absolute; left: 50%; top: 50%; z-index: 2; display: grid; place-items: center; align-content: center; gap: 7px; transform: translate(-50%, -50%); border: 1px solid var(--fde-core-ring-1); border-radius: 50%; background: linear-gradient(145deg, var(--fde-core-light), var(--fde-core-main)); color: var(--fde-core-text); box-shadow: 0 0 0 10px color-mix(in srgb, var(--fde-core-glow) 30%, transparent), 0 13px 30px color-mix(in srgb, var(--fde-core-text) 10%, transparent); transition: box-shadow 240ms ease-out, transform 240ms ease-out; }
.fde-core-center::before, .fde-core-center::after { content: ""; position: absolute; border: 1px solid var(--fde-core-ring-1); border-radius: 50%; }
.fde-core-center::before { inset: -15px; }
.fde-core-center::after { inset: -26px; border-color: var(--fde-core-ring-2); }
.fde-core-center strong { font-size: 37px; line-height: 1; }
.fde-core-center small { max-width: 94px; color: var(--fde-core-text); font-size: 8px; font-weight: 750; line-height: 1.35; }
.fde-core-satellite { min-width: 80px; padding: 8px 10px; position: absolute; z-index: 3; border: 1px solid var(--fde-core-pill-border); border-radius: 999px; background: var(--fde-core-pill-bg); color: var(--fde-text-primary); font-size: 8px; font-weight: 700; text-align: center; box-shadow: 0 6px 15px color-mix(in srgb, var(--fde-core-text) 5%, transparent); transition: color 220ms ease-out, border-color 220ms ease-out, background 220ms ease-out; }
.fde-core-satellite--1 { left: 50%; top: 0; transform: translateX(-50%); }
.fde-core-satellite--2 { left: -2px; bottom: 2px; }
.fde-core-satellite--3 { right: -2px; bottom: 2px; }
.fde-stream { width: 68px; height: 2px; position: absolute; top: 50%; z-index: 3; overflow: visible; background: linear-gradient(90deg, transparent, var(--fde-line-active), transparent); }
.fde-stream::before { content: ""; position: absolute; inset: -4px 0; border-top: 1px solid var(--fde-line-normal); }
.fde-stream > i { width: 4px; height: 4px; position: absolute; top: -2px; border-radius: 50%; background: var(--fde-core-main); box-shadow: 0 0 6px var(--fde-core-glow); animation: fde-flow 3.2s ease-in-out infinite; }
.fde-stream--in { left: -54px; }
.fde-stream--out { right: -54px; }
.fde-stream--out > i { animation-delay: -1.4s; }
@keyframes fde-flow { 0% { left: 0; opacity: 0; } 18% { opacity: 1; } 82% { opacity: 1; } 100% { left: calc(100% - 5px); opacity: 0; } }
.fde-system-network { position: relative; z-index: 1; margin-top: 25px; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 12px; }
.fde-system-hub { min-height: 68px; grid-column: 2 / 6; display: grid; place-items: center; align-content: center; gap: 5px; border: 1px solid color-mix(in srgb, var(--fde-after-main-start) 26%, transparent); border-radius: calc(var(--fde-module-radius) + 2px); background: linear-gradient(145deg, var(--fde-after-main-start), var(--fde-after-main-end)); box-shadow: 0 9px 20px color-mix(in srgb, var(--fde-after-main-end) 14%, transparent), inset 0 1px 0 rgba(255,255,255,.13); }
.fde-system-hub b { color: white; font-size: 13px; }
.fde-system-hub small { color: var(--fde-core-main); font-size: 8px; }
.fde-system-node { --fde-system-accent: var(--fde-after-cyan); --fde-system-soft: var(--fde-after-soft-cyan); min-height: 56px; grid-column: span 2; padding: 9px 8px; display: flex; align-items: center; justify-content: center; gap: 7px; border: 1px solid color-mix(in srgb, var(--fde-system-accent) 29%, transparent); border-radius: var(--fde-module-radius); background: color-mix(in srgb, var(--fde-after-card) 25%, var(--fde-system-soft)); color: color-mix(in srgb, var(--fde-system-accent) 62%, var(--fde-text-primary)); font-size: 10px; font-weight: 680; text-align: center; box-shadow: 0 5px 15px color-mix(in srgb, var(--fde-system-accent) 6%, transparent), inset 0 1px 0 rgba(255,255,255,.8); transition: transform 220ms ease-out, border-color 220ms ease-out, background 220ms ease-out, color 220ms ease-out; }
.fde-system-node--2 { --fde-system-accent: var(--fde-after-blue); --fde-system-soft: var(--fde-after-soft-blue); }
.fde-system-node--3 { --fde-system-accent: color-mix(in srgb, var(--fde-after-cyan) 46%, var(--fde-after-blue)); --fde-system-soft: var(--fde-after-soft-blue); }
.fde-system-node--4, .fde-system-node--5 { --fde-system-accent: var(--fde-after-purple); --fde-system-soft: var(--fde-after-soft-purple); }
.fde-system-node--4 { grid-column: 2 / 4; }
.fde-system-node--5 { grid-column: 4 / 6; }
@media (hover: hover) and (pointer: fine) {
  .fde-field-node:hover { transform: translateY(-2px); border-color: color-mix(in srgb, var(--fde-node-accent) 42%, transparent); background: color-mix(in srgb, var(--fde-before-card) 84%, var(--fde-node-accent)); color: var(--fde-text-primary); }
  .fde-core:hover .fde-core-center { transform: translate(-50%, -50%) scale(1.018); box-shadow: 0 0 0 10px var(--fde-core-ring-1), 0 18px 38px color-mix(in srgb, var(--fde-core-text) 18%, transparent); }
  .fde-core:hover .fde-core-satellite { border-color: var(--fde-line-active); background: white; color: var(--fde-core-text); }
  .fde-system-node:hover { transform: translateY(-2px); border-color: color-mix(in srgb, var(--fde-system-accent) 42%, transparent); background: color-mix(in srgb, var(--fde-after-card) 18%, var(--fde-system-soft)); color: var(--fde-text-primary); }
}

.trust-grid { display: grid; grid-template-columns: 1.1fr .9fr; gap: 90px; align-items: center; }
.trust-copy p { font-size: 17px; }
.trust-points { display: grid; gap: 12px; }
.trust-point { padding: 24px 26px; background: var(--white); border: 1px solid var(--line); border-radius: var(--radius-md); }
.trust-point strong { display: block; font-size: 18px; margin-bottom: 5px; }
.trust-point span { color: var(--muted); font-size: 14px; }

/* Shared closing CTA, reusing the established homepage design. */
.home-cta {
  position: relative;
  padding: 94px 0 100px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.76), rgba(255,255,255,0) 32%),
    radial-gradient(ellipse at 48% 100%, rgba(207,237,205,.38), transparent 63%),
    radial-gradient(ellipse at 100% 80%, rgba(192,234,240,.5), transparent 60%),
    linear-gradient(115deg, #f8f9f6 4%, #f0f8f1 52%, #ecf7fa 100%);
}
.home-cta__inner { text-align: center; }
.home-cta__eyebrow {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  margin: 0 0 20px;
  color: #527368;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: .09em;
}
.home-cta__eyebrow > [aria-hidden] { color: #8fa69b; }
.home-cta h2 {
  margin: 0 0 22px;
  color: var(--green-deep);
  font-size: clamp(30px, 3.5vw, 48px);
  font-weight: 600;
  line-height: 1.25;
  letter-spacing: -.025em;
  text-wrap: balance;
}
.home-cta__description {
  max-width: 760px;
  margin: 0 auto;
  color: #60796e;
  font-size: 16px;
  line-height: 1.85;
  text-wrap: pretty;
}
.home-cta__description > span { display: block; }
.home-cta__actions { display: flex; justify-content: center; flex-wrap: wrap; gap: 16px; margin-top: 32px; }
.home-cta .home-cta__button {
  min-width: 178px;
  min-height: 54px;
  padding: 0 24px;
  gap: 9px;
  border: 1px solid transparent;
  border-radius: 999px;
  font-size: 15px;
  font-weight: 600;
  white-space: nowrap;
  transform: none;
  transition: transform .25s ease, background-position .25s ease, background-color .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.home-cta .home-cta__button--primary {
  min-width: 194px;
  padding-inline: 28px;
  color: var(--green-deep);
  background: linear-gradient(110deg, #65d1b2 0%, #a5e38f 50%, var(--lime) 100%) 35% 50% / 160% 100%;
  border-color: rgba(255,255,255,.38);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.5), 0 0 0 4px rgba(91,195,155,.12), 0 5px 16px rgba(66,135,105,.09);
}
.home-cta .home-cta__button--secondary { color: var(--green-deep); background: rgba(255,255,255,.72); border-color: #bed8ca; }
.home-cta__arrow { display: inline-block; flex: 0 0 16px; width: 16px; font-size: 16px; line-height: 1; font-weight: 500; text-align: center; transition: transform .25s ease; }
@media (hover: hover) and (pointer: fine) {
  .home-cta .home-cta__button--primary:hover {
    transform: translateY(-2px);
    background-position: 85% 50%;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.64), 0 0 0 4px rgba(91,195,155,.19), 0 7px 20px rgba(66,135,105,.13);
  }
  .home-cta__button--primary:hover .home-cta__arrow { transform: translate(2px, -2px); }
  .home-cta .home-cta__button--secondary:hover { background: #edf7f0; border-color: #97bfa9; }
  .home-cta__button--secondary:hover .home-cta__arrow { transform: translateX(3px); }
}
.home-cta__button:focus-visible { outline: 2px solid var(--green); outline-offset: 4px; }
@media (prefers-reduced-motion: reduce) {
  .home-cta .home-cta__button:hover, .home-cta .home-cta__button:hover .home-cta__arrow { transform: none; }
}
@media (max-width: 640px) {
  .home-cta { padding: 70px 0 76px; }
  .home-cta__eyebrow { margin-bottom: 18px; font-size: 11px; gap: 8px; }
  .home-cta h2 { margin-bottom: 20px; }
  .home-cta__description { max-width: 440px; font-size: 15px; line-height: 1.85; }
  .home-cta__actions { margin-top: 28px; }
  .home-cta .home-cta__button { min-width: 160px; padding-inline: 20px; font-size: 14px; }
  .home-cta .home-cta__button--primary { min-width: 168px; }
}

.site-footer { padding: 72px 0 30px; background: #10261f; color: white; }
.footer-grid { display: grid; grid-template-columns: 1.5fr 1fr 1fr; gap: 50px; padding-bottom: 58px; }
.footer-brand p { max-width: 520px; color: #a8bbb4; margin: 22px 0 8px; }
.footer-brand p + p { color: var(--lime); margin-top: 0; }
.footer-nav h3, .footer-contact h3 { font-size: 15px; letter-spacing: 0; margin-bottom: 20px; }
.footer-nav { display: grid; grid-template-columns: repeat(2, 1fr); gap: 30px; }
.footer-nav a { color: #a8bbb4; display: block; margin: 11px 0; font-size: 14px; }
.qr-row { display: flex; gap: 14px; }
.qr-box { width: 110px; }
.qr-image { width: 96px; height: 96px; display: block; object-fit: contain; background: white; border: 6px solid white; }
.qr-placeholder { width: 82px; aspect-ratio: 1; background: repeating-conic-gradient(#183b30 0 25%, #eef4ec 0 50%) 50% / 14px 14px; border: 6px solid white; }
.qr-box span { color: #a8bbb4; font-size: 12px; display: block; margin-top: 8px; }
.footer-bottom { display: flex; justify-content: space-between; gap: 20px; padding-top: 25px; border-top: 1px solid rgba(255,255,255,.1); color: #718b81; font-size: 14px; }
.footer-legal { min-width: 0; display: flex; align-items: center; flex-wrap: wrap; gap: 7px 18px; }
.footer-legal a { color: inherit; text-decoration: none; }
.footer-legal a:hover { color: #a4b8b0; text-decoration: underline; text-underline-offset: 3px; }
.footer-legal i { font-style: normal; }
.footer-policy-links { display: inline-flex; align-items: center; flex-wrap: wrap; gap: 7px; }

.legal-hero { padding: 154px 0 76px; background: linear-gradient(145deg, #f7f8f3, #f1f5ef); }
.legal-hero__inner { max-width: 900px; }
.legal-hero .home-label { margin-bottom: 28px; }
.legal-hero h1 { margin-bottom: 16px; color: var(--green-deep); font-size: clamp(44px, 5vw, 66px); line-height: 1.08; }
.legal-updated { margin: 0; color: var(--green); font-size: 14px; font-weight: 700; }
.legal-intro { max-width: 820px; margin-top: 28px; }
.legal-intro p { margin: 0 0 10px; color: var(--ink-2); font-size: 17px; line-height: 1.82; }
.legal-intro p:last-child { margin-bottom: 0; }
.legal-content { padding: 78px 0 112px; background: #fafaf7; }
.legal-layout { display: grid; grid-template-columns: 248px minmax(0, 1fr); gap: 58px; align-items: start; }
.legal-toc { position: sticky; top: 112px; align-self: start; }
.legal-toc details { border: 0; }
.legal-toc summary { display: none; }
.legal-toc nav { padding: 12px; display: grid; gap: 4px; border-left: 1px solid #dce4dd; }
.legal-toc a { position: relative; padding: 10px 12px; border-radius: 10px; color: #788a83; font-size: 13px; line-height: 1.45; transition: color 200ms ease, background-color 200ms ease; }
.legal-toc a::before { content: ""; position: absolute; left: -13px; top: 50%; width: 3px; height: 0; border-radius: 999px; background: var(--green); transform: translateY(-50%); transition: height 200ms ease; }
.legal-toc a:hover { color: var(--green); background: rgba(232,243,235,.55); }
.legal-toc a.is-active { color: var(--green-deep); background: #edf4ed; font-weight: 700; }
.legal-toc a.is-active::before { height: 22px; }
.legal-article { min-width: 0; max-width: 870px; }
.legal-article-section { padding: 0 0 58px; scroll-margin-top: 110px; }
.legal-article-section + .legal-article-section { padding-top: 8px; border-top: 1px solid #e3e8e2; }
.legal-article-section h2 { margin: 0 0 25px; padding-top: 48px; color: var(--green-deep); font-size: 29px; line-height: 1.3; }
.legal-article-section:first-child h2 { padding-top: 0; }
.legal-article-section h3 { margin: 34px 0 14px; color: var(--ink); font-size: 21px; line-height: 1.35; }
.legal-article-section p { margin: 0 0 18px; color: #40524b; font-size: 16px; line-height: 1.85; }
.legal-article-section strong { color: var(--green-deep); }
.legal-article-section ul { margin: -2px 0 22px; padding: 0; display: grid; gap: 10px; list-style: none; }
.legal-article-section li { position: relative; padding-left: 24px; color: #40524b; font-size: 16px; line-height: 1.75; }
.legal-article-section li::before { content: ""; position: absolute; left: 3px; top: .72em; width: 6px; height: 6px; border-radius: 50%; background: #75a78f; }
.legal-notice { margin: 22px 0 24px; padding: 18px 20px; border: 1px solid #d8e7dc; border-radius: 16px; background: #f0f7f1; color: #365c4e; font-size: 16px; font-style: normal; line-height: 1.75; }
.legal-notice--strong { color: var(--green-deep); font-weight: 750; }
.legal-flow-line { padding: 15px 18px; border-radius: 14px; background: #edf4ed; color: var(--green-deep) !important; font-weight: 700; }
.legal-table-wrap { margin: 20px 0 26px; overflow-x: auto; border: 1px solid #dce4dd; border-radius: 14px; background: white; }
.legal-table-wrap table { width: 100%; border-collapse: collapse; font-size: 15px; }
.legal-table-wrap th, .legal-table-wrap td { padding: 15px 18px; border-bottom: 1px solid #e6ebe6; color: #40524b; text-align: left; }
.legal-table-wrap th { background: #f0f5ef; color: var(--green-deep); font-weight: 750; }
.legal-table-wrap tr:last-child td { border-bottom: 0; }

.page-hero { padding: 168px 0 90px; min-height: 520px; background: #eaf1e7; display: flex; align-items: end; }
.page-hero__inner { max-width: 860px; }
.page-hero h1 { font-size: clamp(44px, 5vw, 72px); }
.page-hero p { font-size: 19px; max-width: 760px; }
.page-breadcrumb { display: flex; gap: 8px; font-size: 13px; color: var(--muted); margin-bottom: 44px; }
.page-breadcrumb a:hover { color: var(--green); }
.listing-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 22px; }
.listing-card { min-height: 290px; padding: 36px; background: var(--white); border: 1px solid var(--line); border-radius: var(--radius-lg); display: flex; flex-direction: column; }
.listing-card .index { color: var(--green); font-size: 12px; font-weight: 800; }
.listing-card h3 { margin-top: 56px; }
.listing-card .text-link { margin-top: auto; }
.detail-intro { display: grid; grid-template-columns: .8fr 1.2fr; gap: 80px; }
.detail-intro h2 { font-size: clamp(32px, 3.5vw, 48px); }
.detail-intro__content p { font-size: 17px; }
.feature-list { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; margin-top: 30px; }
.feature-item { padding: 20px; background: var(--white); border: 1px solid var(--line); border-radius: 14px; }
.feature-item strong { display: block; margin-bottom: 7px; }
.feature-item span { color: var(--muted); font-size: 14px; line-height: 1.55; }
.detail-flow { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; margin-top: 42px; }
.flow-card { padding: 28px 24px; border-radius: 16px; background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.12); }
.flow-card b { display: block; color: var(--lime); font-size: 12px; margin-bottom: 22px; }
.flow-card span { font-weight: 700; }
.skeleton-note { padding: 18px 20px; background: #fff8e6; border: 1px solid #eedda8; border-radius: 14px; color: #7b6224; font-size: 14px; margin-top: 30px; }

.case-detail-hero { min-height: 620px; }
.case-summary { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; }
.case-summary > div { padding: 34px; background: white; border: 1px solid var(--line); border-radius: var(--radius-md); }
.case-summary h3 { font-size: 15px; color: var(--green); }
.contact-page { overflow: hidden; color: var(--green-deep); background: #fff; }
.contact-page .container { max-width: 1240px; }
.contact-hero { position: relative; isolation: isolate; min-height: 470px; padding: 126px 0 76px; display: grid; align-items: center; overflow: hidden; background: #f3f8f5; }
.contact-hero::before, .contact-hero::after { content: ""; position: absolute; pointer-events: none; }
.contact-hero::before { z-index: -2; inset: 0; background: linear-gradient(130deg, rgba(71,145,123,.035) 0 16%, transparent 16% 100%), repeating-linear-gradient(44deg, rgba(61,139,116,.035) 0 38px, transparent 38px 82px), radial-gradient(circle at 76% 24%, rgba(120,199,181,.13), transparent 28%), linear-gradient(180deg, #f2f7f4, #fbfcfa); }
.contact-hero::after { z-index: -1; width: 210px; height: 142px; right: 7%; top: 132px; border: 1px solid rgba(48,124,101,.08); border-radius: 32px 32px 48px 32px; background: linear-gradient(145deg, rgba(255,255,255,.26), rgba(129,203,184,.08)); transform: rotate(10deg); box-shadow: -88px -68px 0 -56px rgba(199,226,105,.16); }
.contact-hero__inner { max-width: 900px; text-align: center; }
.contact-eyebrow { margin: 0 0 20px; color: #2b7b66; font-size: 12px; font-weight: 760; line-height: 1.5; letter-spacing: .14em; text-transform: uppercase; }
.contact-eyebrow span { color: #8aa098; font-weight: 620; }
.contact-hero h1 { margin: 0 auto; color: #073c31; font-size: clamp(54px, 5vw, 70px); font-weight: 780; line-height: 1.08; letter-spacing: -.045em; }
.contact-hero__inner > p:last-child { max-width: 820px; margin: 27px auto 0; color: #5b7068; font-size: 17px; line-height: 1.8; }
.contact-methods { padding: 74px 0 84px; background: #fff; }
.contact-method-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.contact-method-card { min-height: 224px; padding: 22px 24px; display: grid; grid-template-columns: 62px minmax(0, 1fr); grid-template-rows: auto 1fr; column-gap: 17px; border: 1px solid rgba(30,82,65,.08); border-radius: 24px; background: #fff; box-shadow: 0 16px 42px rgba(31,72,59,.055); transition: transform .22s ease-out, box-shadow .22s ease-out, border-color .22s ease-out; }
.contact-method-card__icon { grid-column: 1; grid-row: 1 / span 2; width: 58px; height: 58px; display: grid; place-items: center; border-radius: 50%; color: #26745f; background: linear-gradient(145deg, #e6f4ee, #f1f8f4); }
.contact-method-card__icon svg { width: 27px; height: 27px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.contact-method-card__head { grid-column: 2; }
.contact-method-card__head h2 { margin: 2px 0 0; color: #123f33; font-size: 25px; line-height: 1.25; letter-spacing: -.02em; }
.contact-method-card__head p { margin: 9px 0 0; color: #708079; font-size: 14px; line-height: 1.65; }
.contact-method-card__wechat-id, .contact-method-card__detail, .contact-method-card__list { grid-column: 2; align-self: start; }
.contact-method-card__wechat-id { position: relative; margin-top: 14px; }
.contact-method-card__wechat-id button { width: 100%; min-height: 48px; padding: 10px 13px; display: flex; align-items: center; gap: 2px; overflow: hidden; border: 1px solid rgba(43,123,102,.1); border-radius: 13px; color: #0b493b; background: linear-gradient(135deg, rgba(228,246,238,.9), rgba(244,250,247,.96)); cursor: pointer; transition: border-color .2s ease-out, background-color .2s ease-out, transform .2s ease-out; }
.contact-method-card__wechat-id button span { flex: 0 0 auto; color: #5f786f; font-size: 12px; }
.contact-method-card__wechat-id button strong { min-width: 0; color: #0a493a; font-size: 17px; font-weight: 760; letter-spacing: .01em; white-space: nowrap; }
.contact-method-card__wechat-id button:hover { border-color: rgba(43,123,102,.22); background: #eaf8f1; }
.contact-method-card__wechat-id button:focus-visible { outline: 3px solid rgba(183,213,48,.28); outline-offset: 2px; }
.contact-method-card__wechat-id > p { margin: 9px 0 0; color: #667b73; font-size: 13px; line-height: 1.55; }
.contact-copy-status { position: absolute; left: 0; top: calc(100% + 5px); color: #278068; font-size: 12px; font-weight: 650; opacity: 0; transform: translateY(-2px); transition: opacity .18s ease-out, transform .18s ease-out; }
.contact-copy-status.is-visible { opacity: 1; transform: translateY(0); }
.contact-method-card__detail { margin-top: 19px; display: grid; gap: 8px; }
.contact-method-card__detail span { color: #7c8d86; font-size: 13px; }
.contact-method-card__detail a { color: #17654f; font-size: 18px; font-weight: 760; overflow-wrap: anywhere; }
.contact-method-card__detail a:hover { color: #0b4437; }
.contact-method-card__list { margin: 18px 0 0; padding: 0; display: grid; gap: 9px; list-style: none; }
.contact-method-card__list li { position: relative; padding-left: 17px; color: #526a61; font-size: 14px; line-height: 1.55; }
.contact-method-card__list li::before { content: ""; position: absolute; left: 0; top: .65em; width: 6px; height: 6px; border-radius: 50%; background: #b7d530; }
@media (hover: hover) and (pointer: fine) {
  .contact-method-card:hover { transform: translateY(-3px); border-color: rgba(37,112,89,.14); box-shadow: 0 21px 48px rgba(31,72,59,.085); }
}
.contact-info { padding: 88px 0 96px; background: #fbfaf7; }
.contact-info-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.contact-info-column { position: relative; min-height: 290px; padding: 0 42px; }
.contact-info-column:first-child { padding-left: 0; }
.contact-info-column:last-child { padding-right: 0; }
.contact-info-column + .contact-info-column { border-left: 1px solid rgba(33,83,66,.09); }
.contact-info-column h2 { margin: 0; color: #153f34; font-size: 25px; line-height: 1.3; letter-spacing: -.02em; }
.contact-info-column ul { margin: 28px 0 0; padding: 0; display: grid; gap: 14px; list-style: none; }
.contact-info-column li { position: relative; padding-left: 17px; color: #5e736b; font-size: 15px; line-height: 1.65; }
.contact-info-column li::before { content: ""; position: absolute; left: 0; top: .72em; width: 5px; height: 5px; border-radius: 50%; background: #61a991; }
.contact-info__privacy { margin: 62px 0 0; padding-top: 22px; border-top: 1px solid rgba(33,83,66,.08); color: #7a8b84; font-size: 12px; line-height: 1.7; }
.contact-info__privacy a { margin-left: 5px; color: #2d6956; font-weight: 700; }

[data-reveal] { opacity: 0; transform: translateY(20px); transition: opacity .65s ease, transform .65s ease; }
[data-reveal].is-visible { opacity: 1; transform: none; }

@media (min-width: 961px) {
  .hero > .container { width: min(1392px, calc(100% - 48px)); }
  .solution-card--business-systems { display: grid; grid-template-columns: minmax(190px, .82fr) minmax(250px, 1.18fr); grid-template-rows: auto auto 1fr auto; column-gap: 22px; }
  .solution-card--business-ai { display: grid; grid-template-columns: minmax(170px, .68fr) minmax(300px, 1.32fr); grid-template-rows: auto auto 1fr auto; column-gap: 14px; }
  .solution-card--integration { display: grid; grid-template-columns: minmax(0, .35fr) minmax(0, .65fr); grid-template-rows: auto auto 1fr auto; column-gap: 8px; }
  .solution-card--business-systems > .solution-icon, .solution-card--business-ai > .solution-icon, .solution-card--integration > .solution-icon { grid-column: 1; grid-row: 1; }
  .solution-card--business-systems > h3, .solution-card--business-ai > h3, .solution-card--integration > h3 { grid-column: 1; grid-row: 2; }
  .solution-card--business-systems > p, .solution-card--business-ai > p, .solution-card--integration > p { grid-column: 1; grid-row: 3; }
  .solution-card--business-systems > .text-link, .solution-card--business-ai > .text-link, .solution-card--integration > .text-link { grid-column: 1; grid-row: 4; align-self: end; }
  .solution-card--business-systems > .solution-visual, .solution-card--business-ai > .solution-visual, .solution-card--integration > .solution-visual { min-height: 100%; margin: 0; grid-column: 2; grid-row: 1 / 5; }
  .solution-card--business-ai > .solution-visual { width: calc(100% + 4px); transform: translateX(-4px); }
  .solution-card--integration > .solution-visual { min-height: 318px; }
}

@media (min-width: 961px) and (max-width: 1100px) {
  .solution-card--integration > h3 { font-size: 25px; }
  .solution-card--integration .integration-app { padding-inline: 12px; }
  .solution-card--integration .integration-app b { font-size: 12px; }
}

@media (min-width: 1200px) {
  .hero-grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(48px, 4vw, 56px); }
  .hero-copy h1 { max-width: 720px; font-size: clamp(52px, 3.85vw, 60px); line-height: 1.08; letter-spacing: -.035em; }
  .hero-visual { width: min(100%, 420px); justify-self: center; transform-origin: center; }
  .hero-visual[data-reveal] { transform: translate(-24px, 20px) scale(1.2); }
  .hero-visual[data-reveal].is-visible { transform: translateX(-24px) scale(1.2); }
}

@media (max-width: 1100px) {
  .status-layout { grid-template-columns: 1fr; gap: 18px; }
  .status-conclusion { min-height: 320px; }
}

@media (max-width: 960px) {
  .container { width: min(100% - 36px, var(--max)); }
  .section { padding: 88px 0; }
  .site-header { height: 70px; }
  .header-cta { display: none; }
  .menu-toggle { display: block; }
  .site-nav { position: fixed; inset: 70px 0 0; background: var(--paper); padding: 30px 24px; display: flex; flex-direction: column; justify-content: flex-start; align-items: stretch; gap: 0; transform: translateX(100%); transition: transform .25s; }
  .site-nav.is-open { transform: translateX(0); }
  .site-nav a { font-size: 22px; padding: 18px 0; border-bottom: 1px solid var(--line); }
  .site-nav a::after { display: none; }
  .hero { min-height: auto; padding-top: 132px; }
  .hero-grid { grid-template-columns: 1fr; gap: 20px; }
  .hero-visual { min-height: 430px; max-width: 540px; width: 100%; margin: 0 auto; }
  .ecosystem-band { --ecosystem-left: 18px; width: min(100% - 36px, 760px); min-height: 154px; margin-left: var(--ecosystem-left); padding: 14px 18px; grid-template-columns: 1fr; gap: 9px; }
  .ecosystem-band__title { min-height: auto; padding: 0 0 9px 2px; border-right: 0; border-bottom: 1px solid rgba(30,89,71,.08); }
  .ecosystem-band__list { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .ecosystem-band__item { padding-inline: 7px; gap: 7px; font-size: 13px; }
  .ecosystem-band__item:nth-child(4n + 1)::before { display: none; }
  .ecosystem-band__logo { width: 25px; height: 25px; flex-basis: 25px; }
  .solution-card:nth-child(n) { grid-column: span 6; }
  .solution-card { min-height: 480px; padding: 26px; }
  .solution-visual { min-height: 168px; }
  .solution-visual--dashboard, .solution-visual--integration, .solution-visual--ai { min-height: 260px; }
  .solution-card--integration > .solution-visual { min-height: 318px; margin: 18px auto 0; width: 100%; max-width: 420px; }
  .home-cases .case-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-case-card { height: auto; }
  .home-case-card__link { height: auto; }
  .home-case-card .case-visual { height: auto; flex-basis: auto; aspect-ratio: 16 / 9; }
  .home-case-card .case-body { min-height: 226px; }
  .cases-hero { min-height: 440px; padding: 132px 0 78px; }
  .cases-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .case-library-card { height: auto; }
  .case-library-card .case-body { min-height: 252px; }
  .solution-section { background: linear-gradient(180deg, rgba(247,248,244,1) 0%, rgba(247,248,244,0) 16%, rgba(247,248,244,0) 84%, rgba(247,248,244,1) 100%), radial-gradient(ellipse 62% 38% at 12% 20%, rgba(168,216,236,.12), transparent 72%), radial-gradient(ellipse 58% 42% at 88% 52%, rgba(188,229,205,.13), transparent 72%), radial-gradient(ellipse 52% 30% at 38% 88%, rgba(216,206,244,.07), transparent 74%), #f7f8f4; }
  .industry-section { padding-top: 98px; padding-bottom: 98px; }
  .industry-tabs { margin-top: -10px; justify-content: flex-start; }
  .industry-feature { min-height: 610px; }
  .industry-panel { padding: 38px; grid-template-columns: minmax(0, .86fr) minmax(0, 1.14fr); gap: 28px; }
  .industry-chain { width: 100%; display: grid; grid-template-columns: repeat(7, max-content); justify-content: start; gap: 6px; }
  .industry-chain i:nth-of-type(4) { display: none; }
  .method-timeline { margin: 44px 0 26px; grid-template-columns: 1fr; gap: 8px; }
  .method-step { min-height: 82px; padding: 4px 0 16px; grid-template-columns: 48px minmax(0, 1fr); grid-template-rows: auto auto; column-gap: 16px; }
  .method-step::after { top: 50px; bottom: -9px; left: 22px; right: auto; width: 2px; height: auto; }
  .method-step .step-num { grid-row: 1 / 3; }
  .method-step__title { margin-top: 2px; }
  .method-step__summary { max-width: 520px; margin-top: 5px; }
  .fde-grid { grid-template-columns: 1fr; gap: 12px; }
  .fde-core { width: 200px; justify-self: center; margin: 4px auto; }
  .fde-stream { display: none; }
  .fde-panel { min-height: 340px; }
  .trust-grid { grid-template-columns: 1fr; gap: 45px; }
  .contact-hero { min-height: 440px; padding: 118px 0 66px; }
  .contact-hero h1 { font-size: clamp(50px, 7vw, 60px); }
  .contact-methods { padding: 72px 0 78px; }
  .contact-method-grid { max-width: 760px; margin: 0 auto; grid-template-columns: 1fr; gap: 16px; }
  .contact-method-card { min-height: 220px; }
  .contact-info { padding: 76px 0 82px; }
  .contact-info-column { padding-inline: 24px; }
  .footer-grid { grid-template-columns: 1fr 1fr; }
  .footer-brand { grid-column: 1 / -1; }
  .detail-intro { grid-template-columns: 1fr; gap: 25px; }
}

@media (min-width: 961px) and (max-width: 1100px) {
  .hero-title-line { display: contents; white-space: normal; }
  .ecosystem-band { grid-template-columns: 132px minmax(0, 1fr); }
  .ecosystem-band__item { padding-inline: 3px; gap: 4px; }
}

@media (max-width: 640px) {
  .container { width: min(100% - 28px, var(--max)); }
  .section { padding: 72px 0; }
  h1 { font-size: 45px; }
  h2 { font-size: 34px; }
  .section-head { display: block; margin-bottom: 36px; }
  .section-head > .text-link { margin-top: 18px; }
  .home-label { min-height: 30px; padding-inline: 10px; gap: 6px; }
  .home-label__zh { font-size: 13px; }
  .home-label__divider { font-size: 10px; }
  .home-label__en { font-size: 11px; }
  .contact-hero { min-height: 414px; padding: 108px 0 56px; }
  .contact-hero::after { width: 136px; height: 92px; right: -26px; top: 112px; border-radius: 24px; opacity: .7; }
  .contact-hero h1 { font-size: 48px; line-height: 1.1; }
  .contact-hero__inner > p:last-child { margin-top: 23px; font-size: 15px; line-height: 1.78; }
  .contact-eyebrow { margin-bottom: 17px; font-size: 11px; }
  .cases-hero { min-height: 410px; padding: 112px 0 64px; }
  .cases-hero h1 { font-size: 46px; line-height: 1.12; }
  .cases-hero__eyebrow { margin-bottom: 17px; font-size: 11px; }
  .cases-hero__inner > p:last-child { margin-top: 22px; font-size: 15px; line-height: 1.72; }
  .cases-library { padding: 68px 0 82px; }
  .cases-filter { width: 100%; margin-top: 20px; padding-right: 0; gap: 8px; }
  .case-filter { min-height: 39px; padding-inline: 15px; font-size: 12px; }
  .cases-grid { margin-top: 28px; grid-template-columns: 1fr; row-gap: 18px; }
  .case-library-card .case-visual { aspect-ratio: 16 / 9; height: auto; }
  .case-library-card .case-body { min-height: 248px; padding: 15px 18px; }
  .case-library-card .case-body > p { height: auto; min-height: 5.4em; }
  .case-catalog-logo--omnivision { gap: 6px; }
  .case-catalog-logo--omnivision img { width: 118px; }
  .case-catalog-logo--omnivision strong { font-size: 13px; }
  .contact-methods { padding: 58px 0 64px; }
  .contact-method-grid { gap: 14px; }
  .contact-method-card { min-height: 0; padding: 24px 21px; grid-template-columns: 50px minmax(0, 1fr); column-gap: 14px; border-radius: 20px; }
  .contact-method-card__icon { width: 48px; height: 48px; }
  .contact-method-card__icon svg { width: 23px; height: 23px; }
  .contact-method-card__head h2 { font-size: 22px; }
  .contact-method-card__head p { margin-top: 7px; font-size: 13px; }
  .contact-method-card__wechat-id { margin-top: 13px; }
  .contact-method-card__wechat-id button { min-height: 46px; padding-inline: 11px; }
  .contact-method-card__wechat-id button strong { font-size: 16px; }
  .contact-method-card__detail { margin-top: 16px; }
  .contact-method-card__detail a { font-size: 16px; }
  .contact-method-card__list { margin-top: 16px; }
  .contact-info { padding: 64px 0 70px; }
  .contact-info-grid { grid-template-columns: 1fr; }
  .contact-info-column { min-height: 0; padding: 0 0 30px; }
  .contact-info-column + .contact-info-column { padding-top: 30px; border-left: 0; border-top: 1px solid rgba(33,83,66,.09); }
  .contact-info-column:last-child { padding-bottom: 0; }
  .contact-info-column h2 { font-size: 22px; }
  .contact-info-column ul { margin-top: 20px; gap: 11px; }
  .contact-info-column li { font-size: 14px; }
  .contact-info__privacy { margin-top: 42px; }
  .method-timeline { margin-top: 38px; }
  .method-detail-shell { min-height: 0; padding: 0; }
  .method-card-shell { padding: 0; border-radius: 0; }
  .method-card-grid { grid-template-columns: 1fr; gap: 10px; }
  .method-text-card { min-height: 0; padding: 25px 22px 23px; border-radius: 18px; }
  .method-text-card h3 { font-size: 19px; }
  .method-text-card ul,
  .method-text-card ol { margin-top: 19px; gap: 10px; }
  .method-text-card li { font-size: 13px; }
  .method-workbench { min-height: 0; grid-template-columns: 1fr; grid-template-rows: auto 1fr; border-radius: 22px; }
  .method-workbench__copy { padding: 23px 21px 20px; }
  .method-workbench__copy h3 { font-size: 27px; }
  .method-workbench__goal { max-width: 300px; }
  .method-workbench__modules { margin-top: 15px; gap: 8px; }
  .method-info-module { padding: 9px 10px; grid-template-columns: 31px minmax(0, 1fr); gap: 9px; border-radius: 12px; }
  .method-info-module__icon { width: 31px; height: 31px; border-radius: 9px; }
  .method-info-module__icon svg { width: 17px; height: 17px; }
  .method-stage-visual { min-height: 238px; margin: 11px; border-radius: 18px; }
  .method-stage-visual--path { padding: 23px 17px; gap: 15px; }
  .method-path { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
  .method-path__item { min-height: 68px; gap: 6px; border-radius: 13px; }
  .method-path__item::before,
  .method-path__item::after { display: none; }
  .method-path__item > i { width: 29px; height: 29px; border-radius: 9px; }
  .method-path__item > i svg { width: 16px; height: 16px; }
  .method-path__item b { font-size: 10px; }
  .method-stage-result { padding: 7px 10px; font-size: 9px; }
  .method-stage-visual--simple { min-height: 260px; padding: 28px 18px; gap: 17px; }
  .method-simple-flow { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .method-simple-step { min-height: 68px; gap: 6px; border-radius: 13px; }
  .method-simple-step::after { display: none; }
  .method-simple-step i { width: 21px; height: 21px; border-radius: 7px; font-size: 7px; }
  .method-simple-step b { font-size: 10px; }
  .method-visual-status { left: 14px; bottom: 13px; }
  .method-stage-visual--mapping { padding: 18px 12px 52px; }
  .method-map-roles { justify-content: center; gap: 5px; }
  .method-map-roles span { padding: 6px 7px; font-size: 7px; }
  .method-map-flow { gap: 3px; }
  .method-map-flow > span { width: 45px; height: 59px; gap: 4px; border-radius: 12px; }
  .method-map-flow > span i { width: 19px; height: 19px; border-radius: 6px; font-size: 5px; }
  .method-map-flow > span b { font-size: 8px; }
  .method-map-flow > em { font-size: 8px; }
  .prototype-screen { padding: 9px; border-radius: 12px; }
  .prototype-screen--table { left: 4%; top: 54px; width: 43%; height: 130px; }
  .prototype-screen--workspace { left: 25%; top: 88px; width: 49%; height: 154px; }
  .prototype-screen--flow { right: 4%; top: 47px; width: 39%; height: 136px; }
  .prototype-flow { height: 76px; margin-top: 10px; padding: 7px; gap: 4px; }
  .prototype-flow span { padding: 6px 4px; font-size: 5px; }
  .prototype-flow i { font-size: 6px; }
  .method-stage-visual--integration { padding: 18px 12px 52px; grid-template-columns: minmax(90px, 1fr) 76px minmax(72px, .85fr); gap: 6px; }
  .method-integration-apps { gap: 5px; }
  .method-integration-apps > span { min-height: 54px; padding: 6px; grid-template-columns: 19px minmax(0,1fr); gap: 1px 4px; border-radius: 10px; }
  .method-integration-apps i { width: 19px; height: 19px; border-radius: 6px; font-size: 4px; }
  .method-integration-apps b { font-size: 6px; }
  .method-integration-apps small { font-size: 4.5px; }
  .method-integration-hub { width: 76px; height: 76px; gap: 4px; border-radius: 19px; }
  .method-integration-hub i { width: 23px; height: 23px; border-radius: 7px; font-size: 10px; }
  .method-integration-hub b { font-size: 8px; }
  .method-integration-hub small { font-size: 4px; }
  .method-integration-hub > span { padding: 3px 5px; font-size: 4px; }
  .method-integration-system { min-height: 76px; padding: 8px; gap: 4px; border-radius: 14px; }
  .method-integration-system i { width: 24px; height: 24px; font-size: 7px; }
  .method-integration-system b { font-size: 8px; }
  .method-integration-system small { font-size: 5px; }
  .method-stage-visual--launch { padding: 20px 14px 52px; }
  .method-launch-checklist { gap: 7px; }
  .method-launch-checklist > span { min-height: 61px; padding: 8px; grid-template-columns: 23px minmax(0,1fr); gap: 2px 6px; border-radius: 11px; }
  .method-launch-checklist i { width: 23px; height: 23px; border-radius: 7px; }
  .method-feedback-note { padding: 7px 9px; gap: 6px; }
  .method-feedback-note small { font-size: 5px; }
  .method-feedback-note b { font-size: 6px; }
  .method-stage-visual--iteration { padding: 16px 10px 52px; grid-template-columns: 168px minmax(0,1fr); gap: 6px; }
  .method-iteration-loop { width: 168px; height: 180px; }
  .method-iteration-loop::before { inset: 28px 25px; }
  .method-iteration-loop::after { right: 17px; top: 81px; font-size: 11px; }
  .method-loop-node { width: 66px; min-height: 42px; padding: 6px; grid-template-columns: 16px 1fr; gap: 4px; border-radius: 10px; }
  .method-loop-node i { width: 16px; height: 16px; border-radius: 5px; font-size: 4px; }
  .method-loop-node b { font-size: 6px; }
  .method-loop-node--1 { left: 51px; }
  .method-loop-node--2 { top: 69px; }
  .method-loop-node--3 { left: 51px; }
  .method-loop-node--4 { top: 69px; }
  .method-loop-core { width: 60px; height: 60px; left: 54px; top: 60px; }
  .method-loop-core b { font-size: 13px; }
  .method-loop-core small { font-size: 5px; }
  .method-iteration-records { padding: 8px; gap: 5px; border-radius: 12px; }
  .method-iteration-records > div { display: grid; gap: 2px; padding-bottom: 5px; }
  .method-iteration-records > div b { font-size: 6px; }
  .method-iteration-records > div small { font-size: 4.5px; }
  .method-iteration-records > span { min-height: 29px; padding: 5px; grid-template-columns: 17px minmax(0,1fr); gap: 4px; border-radius: 8px; }
  .method-iteration-records > span i { width: 17px; height: 17px; border-radius: 5px; font-size: 4px; }
  .method-iteration-records > span b { font-size: 5px; }
  .method-principles { flex-wrap: wrap; gap: 4px; }
  .hero { padding-top: 118px; }
  .hero-copy h1 { font-size: clamp(38px, 11vw, 48px); line-height: 1.08; }
  .hero-title-line { display: contents; white-space: normal; }
  .hero-copy p { font-size: 16px; }
  .hero-visual { min-height: 350px; }
  .ecosystem-bridge { height: 80px; }
  .ecosystem-band { --ecosystem-left: 14px; width: calc(100% - 28px); min-height: 154px; margin-left: var(--ecosystem-left); padding: 14px 16px; transform: translateY(calc(-50% + 40px)); grid-template-columns: 1fr; gap: 9px; border-radius: 16px; }
  .ecosystem-band__title { min-height: auto; padding: 0 0 9px 2px; border-right: 0; border-bottom: 1px solid rgba(30,89,71,.08); font-size: 12px; }
  .ecosystem-band__list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ecosystem-band__item { min-height: 42px; padding: 5px 6px; gap: 6px; font-size: 12px; }
  .ecosystem-band__item:nth-child(2n + 1)::before { display: none; }
  .ecosystem-band__logo { width: 23px; height: 23px; flex-basis: 23px; }
  .business-status { padding-top: 112px; }
  .hero-hub { width: 150px; height: 150px; }
  .hero-hub strong { font-size: 20px; }
  .float-chip { padding: 10px 12px; font-size: 12px; }
  .business-status__head { margin-bottom: 32px; }
  .status-conclusion { min-height: 350px; padding: 28px 25px 26px; }
  .status-connector { margin-bottom: 36px; }
  .status-conclusion h3 { font-size: 34px; }
  .status-tool-tags { padding-top: 26px; }
  .status-pain-grid { grid-template-columns: 1fr; border-radius: 20px; }
  .status-pain:nth-child(n) { min-height: auto; padding: 24px 23px 22px; border-right: 0; border-bottom: 1px solid rgba(30,89,71,.09); }
  .status-pain:last-child { border-bottom: 0; }
  .status-pain__meta { margin-bottom: 17px; }
  .solution-grid, .case-grid, .listing-grid { grid-template-columns: 1fr; }
  .home-cases .case-grid { grid-template-columns: 1fr; row-gap: 18px; }
  .home-case-card .case-body { min-height: 226px; padding: 14px 18px; }
  .solution-section { background: linear-gradient(180deg, rgba(247,248,244,1) 0%, rgba(247,248,244,0) 18%, rgba(247,248,244,0) 82%, rgba(247,248,244,1) 100%), radial-gradient(ellipse 86% 30% at 10% 18%, rgba(168,216,236,.1), transparent 74%), radial-gradient(ellipse 82% 34% at 92% 68%, rgba(188,229,205,.11), transparent 76%), #f7f8f4; }
  .solution-card:nth-child(n) { grid-column: 1; min-height: 430px; padding: 24px; }
  .solution-card--business-systems, .solution-card--integration, .solution-card--business-ai { min-height: 550px; }
  .solution-icon { margin-bottom: 14px; }
  .solution-visual { min-height: 170px; margin-top: 12px; }
  .solution-visual--dashboard, .solution-visual--integration, .solution-visual--ai { min-height: 280px; }
  .solution-visual--integration { min-height: 318px; }
  .business-dashboard { padding: 12px; gap: 8px; }
  .dashboard-kpis span { padding: 8px; }
  .dashboard-main { grid-template-columns: minmax(0, 1fr) 68px; gap: 7px; }
  .dashboard-progress__ring { width: 52px; height: 52px; }
  .workflow-node { min-width: 36px; }
  .workflow-node--active { min-width: 44px; }
  .workflow-node--active > i { width: 42px; height: 42px; }
  .solution-visual--ai { grid-template-columns: 94px 66px minmax(106px, 1fr); gap: 6px; }
  .ai-stage { min-height: 226px; padding: 9px; }
  .ai-engine-wrap { height: 180px; }
  .ai-engine { width: 68px; height: 68px; }
  .ai-engine::before { width: 90px; height: 90px; }
  .ai-engine::after { width: 112px; height: 112px; }
  .industry-section { padding-top: 80px; padding-bottom: 80px; }
  .industry-tabs { margin: -4px -20px 16px; padding: 4px 20px 9px; gap: 9px; scroll-snap-type: x proximity; }
  .industry-tab { min-height: 48px; padding: 7px 16px 7px 7px; gap: 8px; font-size: 13px; scroll-snap-align: center; }
  .industry-tab__icon { width: 32px; height: 32px; }
  .industry-feature { min-height: 790px; }
  .industry-panel { padding: 26px; grid-template-columns: 1fr; grid-template-rows: auto 1fr; gap: 22px; align-items: start; }
  .industry-scene { top: 42%; left: -10px; right: -10px; bottom: -10px; width: auto; filter: blur(8px) saturate(.64) contrast(.8); -webkit-mask-image: linear-gradient(180deg, transparent 0%, rgba(0,0,0,.72) 22%, #000 46%); mask-image: linear-gradient(180deg, transparent 0%, rgba(0,0,0,.72) 22%, #000 46%); }
  .industry-scene::after { background: linear-gradient(180deg, rgba(8,48,37,.94), rgba(8,48,37,.48) 38%, rgba(8,48,37,.15)); }
  .industry-panel.is-active .industry-scene.is-loaded { opacity: .15; transform: scale(1.025); }
  .industry-panel--manufacturing .industry-scene { left: -10px; right: -10px; width: auto; }
  .industry-panel--manufacturing .industry-scene::before { opacity: .71; filter: blur(.8px) saturate(.74) contrast(.92) brightness(.84); }
  .industry-panel--manufacturing .industry-scene::after { background: linear-gradient(180deg, rgba(13,69,55,.91) 0%, rgba(13,69,55,.7) 18%, rgba(13,69,55,.27) 48%, rgba(13,69,55,.07) 78%), linear-gradient(90deg, rgba(13,69,55,.34), transparent 58%); }
  .industry-panel--trade .industry-scene { left: -10px; right: -10px; width: auto; }
  .industry-panel--trade .industry-scene::before { opacity: .77; filter: blur(.3px) saturate(.88) contrast(.97) brightness(.93); }
  .industry-panel--trade .industry-scene::after { background: linear-gradient(180deg, rgba(13,68,72,.91) 0%, rgba(13,68,72,.7) 18%, rgba(13,68,72,.26) 48%, rgba(13,68,72,.07) 78%), linear-gradient(90deg, rgba(13,68,72,.34), transparent 58%); }
  .industry-panel--retail-consumer .industry-scene { left: -10px; right: -10px; width: auto; }
  .industry-panel--retail-consumer .industry-scene::before { opacity: .78; filter: blur(.2px) saturate(.86) contrast(.97) brightness(.92); }
  .industry-panel--retail-consumer .industry-scene::after { background: linear-gradient(180deg, rgba(24,72,62,.9) 0%, rgba(24,72,62,.66) 17%, rgba(24,72,62,.22) 47%, rgba(24,72,62,.05) 76%), linear-gradient(90deg, rgba(24,72,62,.3), transparent 60%); }
  .industry-panel--retail-consumer .industry-chain { width: 100%; display: grid; grid-template-columns: repeat(7, max-content); justify-content: start; gap: 6px; }
  .industry-panel--retail-consumer .industry-chain i:nth-of-type(4) { display: none; }
  .industry-panel--professional-services .industry-scene { left: -10px; right: -10px; width: auto; }
  .industry-panel--professional-services .industry-scene::before { opacity: .68; filter: blur(.5px) saturate(.66) sepia(.08) contrast(.93) brightness(.83); }
  .industry-panel--professional-services .industry-scene::after { background: linear-gradient(180deg, rgba(35,74,66,.91) 0%, rgba(35,74,66,.68) 18%, rgba(35,74,66,.25) 48%, rgba(35,74,66,.06) 77%), linear-gradient(90deg, rgba(35,74,66,.31), transparent 60%); }
  .industry-panel--professional-services .industry-chain { width: 100%; display: grid; grid-template-columns: repeat(7, max-content); justify-content: start; gap: 6px; }
  .industry-panel--professional-services .industry-chain i:nth-of-type(4) { display: none; }
  .industry-panel--project-based .industry-scene { left: -10px; right: -10px; width: auto; }
  .industry-panel--project-based .industry-scene::before { opacity: .68; filter: blur(.6px) saturate(.76) contrast(.93) brightness(.83); }
  .industry-panel--project-based .industry-scene::after { background: linear-gradient(180deg, rgba(16,69,74,.91) 0%, rgba(16,69,74,.68) 18%, rgba(16,69,74,.25) 48%, rgba(16,69,74,.06) 77%), linear-gradient(90deg, rgba(16,69,74,.31), transparent 60%); }
  .industry-panel--project-based .industry-chain { width: 100%; display: grid; grid-template-columns: repeat(7, max-content); justify-content: start; gap: 6px; }
  .industry-panel--project-based .industry-chain i:nth-of-type(4) { display: none; }
  .industry-panel__copy h3 { font-size: 34px; }
  .industry-panel__copy .text-link { margin-top: 0; }
  .industry-chain { margin-top: 18px; }
  .industry-subtitle { margin-top: 18px; }
  .industry-tags { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px; margin: 0 0 20px; }
  .industry-tags span { text-align: center; }
  .industry-visual { min-height: 292px; }
  .industry-mini { min-height: 292px; padding: 13px; gap: 8px; border-radius: 19px; }
  .industry-mini__head b { font-size: 9px; }
  .industry-mini__head span { font-size: 6px; }
  .industry-mini__kpis { gap: 5px; }
  .industry-panel .industry-mini__kpis > span { padding: 7px; border-radius: 10px; }
  .industry-panel .industry-mini__kpis small { font-size: 6px; }
  .industry-panel .industry-mini__kpis b { margin-top: 3px; font-size: 15px; }
  .industry-mini--retail .industry-mini__kpis b { font-size: 13px; }
  .industry-bi-grid,
  .industry-bi-grid--projects { grid-template-columns: minmax(0, 1fr) minmax(102px, .72fr); gap: 6px; }
  .industry-bi-panel { padding: 7px; border-radius: 12px; }
  .industry-bi-panel--trend,
  .industry-bi-panel--schedule { gap: 4px; }
  .industry-bi-panel--summary { gap: 5px; }
  .industry-bi-panel__head { gap: 4px; }
  .industry-bi-panel__head b { font-size: 6.5px; }
  .industry-bi-panel__head small { font-size: 5.5px; }
  .industry-trend-chart { height: 70px; }
  .industry-chart-axis { font-size: 4.5px; }
  .industry-chart-legend { gap: 6px; font-size: 5px; }
  .industry-bi-subtitle { font-size: 6px; }
  .industry-bi-subtitle--spaced { margin-top: 1px; padding-top: 5px; }
  .industry-mini-bars,
  .industry-rank-bars,
  .service-load-chart,
  .project-compare__bars { gap: 4px; }
  .industry-mini-bars > span,
  .industry-rank-bars > span,
  .service-load-chart > span,
  .project-compare__bars > span { grid-template-columns: minmax(28px, auto) minmax(22px, 1fr) 20px; gap: 3px; }
  .industry-mini-bars b,
  .industry-rank-bars b,
  .service-load-chart b,
  .project-compare__bars b,
  .industry-mini-bars small,
  .industry-rank-bars small,
  .service-load-chart small,
  .project-compare__bars small { font-size: 5px; }
  .industry-segment { height: 6px; }
  .industry-segment-legend { font-size: 4.5px; }
  .industry-segment-legend--four { font-size: 4px; }
  .service-load-chart { gap: 8px; }
  .service-week-axis { margin-left: 31px; font-size: 4.5px; }
  .project-stage-flow { padding: 6px; gap: 4px; border-radius: 12px; }
  .project-stage-flow span { min-height: 43px; padding: 5px; grid-template-columns: 18px 1fr; gap: 2px 4px; border-radius: 8px; }
  .project-stage-flow span::after { right: -5px; font-size: 6px; }
  .project-stage-flow span > i { width: 18px; height: 18px; border-radius: 6px; font-size: 5px; }
  .project-stage-flow span > b { font-size: 5.5px; }
  .project-stage-flow span > small { font-size: 5px; }
  .project-compare__metrics { padding-top: 5px; gap: 4px; }
  .project-compare__metrics > span { padding: 5px; border-radius: 7px; }
  .project-compare__metrics small { font-size: 4.5px; }
  .project-compare__metrics b { font-size: 10px; }
  .industry-mini__status { padding: 6px 8px; gap: 5px; font-size: 6px; }
  .industry-mini__alert { padding-left: 6px; }
  .case-body { padding: 25px; }
  .fde-grid { margin-top: 40px; }
  .fde-section { padding-bottom: 52px; }
  .fde-panel { min-height: 326px; padding: 20px 18px; border-radius: 22px; }
  .fde-panel__head { align-items: flex-start; }
  .fde-panel__head h3 { font-size: 18px; }
  .fde-panel__head > span { max-width: 118px; text-align: right; line-height: 1.4; }
  .fde-field-map, .fde-system-network { height: auto; }
  .fde-field-node { width: auto; min-width: 0; padding: 10px 7px; font-size: 10px; }
  .fde-core { width: 190px; }
  .fde-core-network { width: 190px; height: 228px; }
  .fde-core-center { width: 98px; height: 98px; }
  .fde-core-center strong { font-size: 29px; }
  .fde-core-satellite { min-width: 69px; padding: 6px 7px; font-size: 7px; }
  .fde-system-hub { width: auto; min-height: 61px; }
  .fde-system-node { width: auto; min-width: 0; padding: 9px 5px; font-size: 9px; }
  .footer-grid, .footer-nav { grid-template-columns: 1fr; }
  .footer-brand { grid-column: auto; }
  .footer-bottom { display: block; }
  .footer-bottom > span { display: block; margin-top: 8px; }
  .page-hero { padding-top: 130px; min-height: 470px; }
  .page-breadcrumb { margin-bottom: 30px; }
  .feature-list, .detail-flow, .case-summary { grid-template-columns: 1fr; }
  .brief-form { padding: 25px; }
}

@media (max-width: 768px) {
  .legal-hero { padding: 126px 0 58px; }
  .legal-hero h1 { font-size: 42px; }
  .legal-intro { margin-top: 23px; }
  .legal-intro p { font-size: 16px; }
  .legal-content { padding: 38px 0 78px; }
  .legal-layout { grid-template-columns: 1fr; gap: 34px; }
  .legal-toc { position: static; }
  .legal-toc details { overflow: hidden; border: 1px solid #dce5dd; border-radius: 16px; background: #f8faf7; }
  .legal-toc summary { padding: 17px 19px; display: flex; align-items: center; justify-content: space-between; gap: 14px; color: var(--green-deep); font-size: 15px; font-weight: 750; cursor: pointer; list-style: none; }
  .legal-toc summary::-webkit-details-marker { display: none; }
  .legal-toc summary::after { content: "+"; color: var(--green); font-size: 20px; font-weight: 500; line-height: 1; }
  .legal-toc details[open] summary::after { content: "−"; }
  .legal-toc nav { padding: 4px 12px 13px; border-top: 1px solid #e3e9e3; border-left: 0; }
  .legal-toc a { padding: 10px 8px; }
  .legal-toc a::before { display: none; }
  .legal-article-section { padding-bottom: 45px; scroll-margin-top: 88px; }
  .legal-article-section h2 { padding-top: 38px; font-size: 25px; }
  .legal-article-section h3 { font-size: 20px; }
  .legal-article-section p, .legal-article-section li, .legal-notice { font-size: 15px; }
  .legal-flow-line { overflow-wrap: anywhere; }
  .footer-legal { align-items: flex-start; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  [data-reveal] { opacity: 1; transform: none; }
}

/* About page */
.about-page { overflow: hidden; color: var(--green-deep); background: #fbfaf6; }
.about-page .container { max-width: 1240px; }
.about-hero { position: relative; isolation: isolate; min-height: 570px; display: grid; align-items: center; padding: 124px 0 68px; overflow: hidden; background: #f8faf6; }
.about-hero::before, .about-hero::after { content: ""; position: absolute; pointer-events: none; }
.about-hero::before { z-index: 0; inset: -4px; background: url('/images/about/about-hero-teamwork.jpg') center 48% / cover no-repeat; opacity: 1; filter: blur(1.25px) saturate(.98) brightness(1) contrast(1.08); transform: scale(1.012); transform-origin: center; }
.about-hero::after { z-index: 1; inset: 0; background: radial-gradient(ellipse at 50% 48%, rgba(249,252,248,.42) 0%, rgba(248,251,247,.24) 43%, transparent 72%), radial-gradient(circle at 67% 44%, rgba(210,235,109,.055), transparent 32%), radial-gradient(circle at 91% 40%, rgba(112,205,189,.045), transparent 36%), linear-gradient(112deg, rgba(253,252,248,.3) 0%, rgba(247,251,247,.24) 52%, rgba(239,249,247,.3) 100%); }
.about-hero__inner { position: relative; z-index: 2; text-align: center; }
.about-eyebrow, .about-kicker { margin: 0 0 22px; color: #2b7b66; font-size: 13px; font-weight: 760; letter-spacing: .15em; text-transform: uppercase; }
.about-eyebrow span { color: #89a098; font-weight: 650; }
.about-hero h1 { max-width: 1200px; margin: 0 auto; color: #073c31; font-size: clamp(64px, 5vw, 76px); font-weight: 780; line-height: 1.1; letter-spacing: -.05em; text-shadow: 0 2px 12px rgba(255,255,255,.35); white-space: nowrap; }
.about-hero__inner > p:last-child { max-width: 1180px; margin: 30px auto 0; color: #506a61; font-size: 19px; line-height: 1.9; text-align: center; text-shadow: 0 1px 10px rgba(255,255,255,.56); white-space: nowrap; }
.about-section { padding: 126px 0; }
.about-section-head { max-width: 820px; margin-bottom: 54px; }
.about-section-head h2, .about-story__copy h2 { margin: 0; font-size: clamp(38px, 4vw, 54px); line-height: 1.18; letter-spacing: -.035em; }
.about-section-head > p:last-child { margin: 20px 0 0; color: #708079; font-size: 18px; line-height: 1.8; }
.about-story { background: #fff; }
.about-story__grid { display: grid; grid-template-columns: minmax(0, .94fr) minmax(430px, .72fr); gap: clamp(72px, 9vw, 136px); align-items: center; }
.about-story__copy { max-width: 750px; }
.about-story__copy > p:not(.about-kicker) { margin: 24px 0 0; color: #536760; font-size: 17px; line-height: 1.95; }
.about-logic { position: relative; display: grid; gap: 0; padding: 20px 26px; border-radius: 28px; background: linear-gradient(150deg, rgba(247,251,247,.72), rgba(235,248,244,.55)); }
.about-logic::before { content: ""; position: absolute; left: 45px; top: 53px; bottom: 53px; width: 1px; background: linear-gradient(rgba(75,139,119,.08), rgba(75,139,119,.28), rgba(75,139,119,.08)); pointer-events: none; }
.about-logic__item { position: relative; min-height: 60px; display: grid; grid-template-columns: 40px 1fr; align-items: center; gap: 16px; padding: 9px 8px; background: transparent; }
.about-logic__item span { position: relative; z-index: 1; width: 24px; height: 24px; display: grid; place-items: center; border: 1px solid rgba(56,123,102,.13); border-radius: 50%; color: #82968f; background: #f7fbf8; font-size: 10px; font-weight: 800; letter-spacing: .04em; }
.about-logic__item strong { color: #44635a; font-size: 16px; font-weight: 680; }
.about-logic__item i { display: none; }
.about-logic__item.is-focus span { border-color: rgba(158,188,43,.34); color: #59770b; background: #eff7c8; }
.about-logic__item.is-focus strong { color: #254f42; font-weight: 780; }
.about-stats-section { padding-top: 0; background: #fff; }
.about-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); padding: 56px 42px; border: 1px solid rgba(44,118,95,.08); border-radius: 28px; background: linear-gradient(130deg, #edf8f1, #e9f7f2 55%, #f2f8e7); }
.about-stat { position: relative; display: grid; justify-items: center; gap: 12px; text-align: center; }
.about-stat + .about-stat::before { content: ""; position: absolute; left: 0; top: 8px; bottom: 8px; width: 1px; background: rgba(41,100,81,.1); }
.about-stat strong { color: #7aa514; font-size: clamp(48px, 5vw, 66px); line-height: 1; letter-spacing: -.045em; }
.about-stat__value { display: inline-flex; align-items: baseline; justify-content: center; white-space: nowrap; }
.about-stat__number { color: inherit; font: inherit; letter-spacing: inherit; }
.about-stat__unit { margin-left: .04em; color: inherit; font-size: .6em; font-weight: 580; line-height: 1; letter-spacing: -.01em; transform: translateY(-.24em); }
.about-stat__plus { margin-left: .03em; color: inherit; font-size: .6em; font-weight: 580; line-height: 1; letter-spacing: -.02em; transform: translateY(-.28em); }
.about-stat > span { color: #214d40; font-size: 17px; font-weight: 720; }
.about-capabilities { background: #f2f6f2; }
.about-capabilities__layout { display: grid; grid-template-columns: minmax(0, .76fr) minmax(0, 1.14fr); gap: clamp(52px, 6vw, 84px); align-items: start; }
.about-capabilities .about-section-head { max-width: none; margin: 0; }
.about-capabilities .about-kicker { margin-bottom: 24px; font-weight: 680; letter-spacing: .09em; }
.about-capabilities .about-section-head h2 { max-width: 560px; font-size: clamp(29px, 2.35vw, 31px); line-height: 1.3; letter-spacing: -.04em; }
.about-capabilities .about-section-head h2 span { display: block; white-space: nowrap; }
.about-capabilities__intro { max-width: 550px; margin-top: 30px; }
.about-capabilities__intro p { margin: 0; color: #5f746c; font-size: 16px; line-height: 1.82; }
.about-capabilities__intro p + p { margin-top: 17px; }
.about-capabilities__emphasis { margin: 28px 0 0; display: flex; align-items: center; gap: 8px; color: #214f41; font-size: 15px; font-weight: 760; white-space: nowrap; }
.about-capabilities__emphasis::before { content: ""; width: 8px; height: 8px; flex: 0 0 auto; border-radius: 50%; background: #bfd73f; box-shadow: 0 0 0 5px rgba(191,215,63,.13); }
.about-capability-grid { display: grid; grid-template-columns: 1fr; grid-auto-rows: 1fr; gap: 12px; }
.about-capability-card { min-height: 110px; height: 100%; display: grid; grid-template-columns: 30px minmax(0, 1fr) auto; grid-template-rows: auto auto auto; align-content: center; align-items: center; column-gap: 13px; padding: 10px 18px; border: 1px solid rgba(30,77,62,.09); border-radius: 21px; background: radial-gradient(circle at 100% 100%, rgba(47,159,131,.055), transparent 45%), rgba(255,255,255,.94); box-shadow: 0 8px 26px rgba(32,73,60,.025); transition: transform .24s ease-out, border-color .24s ease-out, box-shadow .24s ease-out; }
.about-capability-card:nth-child(2) { background: radial-gradient(circle at 100% 100%, rgba(85,127,210,.05), transparent 45%), rgba(255,255,255,.94); }
.about-capability-card:nth-child(3) { background: radial-gradient(circle at 100% 100%, rgba(128,102,203,.05), transparent 45%), rgba(255,255,255,.94); }
.about-capability-card:nth-child(4) { background: radial-gradient(circle at 100% 100%, rgba(160,194,65,.055), transparent 45%), rgba(255,255,255,.94); }
.about-capability-card:hover { transform: translateY(-3px); border-color: rgba(35,111,86,.17); box-shadow: 0 14px 32px rgba(32,73,60,.065); }
.about-card-icon { width: 48px; height: 48px; display: grid; place-items: center; margin-bottom: 40px; border-radius: 15px; color: #30947c; background: rgba(255,255,255,.78); border: 1px solid currentColor; border-color: color-mix(in srgb, currentColor 17%, transparent); }
.about-card-icon svg { width: 23px; height: 23px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.about-capability-card .about-card-icon { grid-column: 1; grid-row: 1 / span 2; align-self: start; width: 30px; height: 30px; margin: 1px 0 0; border-radius: 9px; }
.about-capability-card .about-card-icon svg { width: 15px; height: 15px; }
.about-capability-card:nth-child(1) .about-card-icon { color: #2f9f83; background: #e2f5ee; }
.about-capability-card:nth-child(2) .about-card-icon { color: #557fd2; background: #e8effc; }
.about-capability-card:nth-child(3) .about-card-icon { color: #8066cb; background: #eeeafb; }
.about-capability-card:nth-child(4) .about-card-icon { color: #54a886; background: linear-gradient(145deg, #eef7c8, #dcf4ee); }
.about-capability-card h3, .about-industry-card h3, .about-principle-card h3 { margin: 0; font-size: 24px; line-height: 1.3; }
.about-capability-card p, .about-industry-card p, .about-principle-card p { margin: 15px 0 0; color: #60736d; font-size: 16px; line-height: 1.78; }
.about-capability-card h3 { grid-column: 2; grid-row: 1; margin: 0; color: #153f33; font-size: 20px; }
.about-capability-card p { grid-column: 2; grid-row: 2; max-width: 450px; margin: 4px 0 0; color: #657770; font-size: 14px; line-height: 1.48; }
.about-capability-card__tags { grid-column: 2; grid-row: 3; display: flex; flex-wrap: wrap; gap: 6px; margin-top: 6px; }
.about-capability-card__tags > span { padding: 2.5px 6px; border: 1px solid rgba(48,91,77,.1); border-radius: 999px; color: #71867f; background: rgba(232,243,238,.92); font-size: 9.5px; font-weight: 620; line-height: 1.2; white-space: nowrap; }
.about-capability-card__link { grid-column: 3; grid-row: 1 / span 3; align-self: center; justify-self: end; margin: 0; padding-left: 12px; display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; color: #748a82; font-size: 12px; font-weight: 650; transition: color .22s ease; }
.about-capability-card__link i { font-style: normal; transition: transform .22s ease; }
.about-capability-card:hover .about-capability-card__link { color: #285f4e; }
.about-capability-card:hover .about-capability-card__link i { transform: translateX(3px); }
.about-method { background: radial-gradient(circle at 84% 18%, rgba(119,193,177,.11), transparent 31%), linear-gradient(118deg, #eff8f3 0%, #edf8f6 52%, #f5faf6 100%); }
.about-method .about-section-head { max-width: 840px; }
.about-method__grid { position: relative; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 20px; padding: 14px 0 4px; }
.about-method__grid::before { content: ""; position: absolute; left: 10%; right: 10%; top: 38px; height: 1px; background: linear-gradient(90deg, rgba(46,116,95,.18), rgba(46,116,95,.44) 48%, rgba(46,116,95,.2)); }
.about-method-step { position: relative; z-index: 1; min-width: 0; padding: 0 10px; text-align: center; }
.about-method-step > span { width: 49px; height: 49px; display: grid; place-items: center; margin: 0 auto; border: 5px solid #eff8f4; border-radius: 50%; color: #fff; background: #2f745f; box-shadow: 0 0 0 1px rgba(36,95,76,.09); font-size: 12px; font-weight: 820; letter-spacing: .05em; }
.about-method-step:nth-child(2) > span { background: #377f69; }
.about-method-step:nth-child(3) > span { color: #214c3e; background: #d8eb63; }
.about-method-step:nth-child(4) > span { background: #2e7666; }
.about-method-step:nth-child(5) > span { background: #275f51; }
.about-method-step h3 { margin: 19px 0 0; color: #173f34; font-size: 19px; }
.about-method-step p { max-width: 188px; margin: 8px auto 0; color: #647970; font-size: 14px; line-height: 1.62; }
.about-method__statement { width: fit-content; max-width: 900px; margin: 34px auto 0; display: flex; align-items: center; gap: 11px; color: #244f42; font-size: 18px; font-weight: 760; line-height: 1.7; text-align: center; }
.about-method__statement::before { content: ""; flex: 0 0 auto; width: 9px; height: 9px; border-radius: 50%; background: #bfd73f; box-shadow: 0 0 0 5px rgba(191,215,63,.13); }
.about-clients { padding-top: 72px; padding-bottom: 88px; background: #fff; text-align: center; }
.about-clients .about-section-head { margin-right: auto; margin-bottom: 42px; margin-left: auto; }
.about-client-logos { width: 100%; }
.about-client-logo-grid { display: grid; grid-template-columns: repeat(8, minmax(0, 1fr)); align-items: center; justify-items: center; gap: 32px 16px; }
.about-client-logo { position: relative; z-index: 0; min-width: 0; height: 62px; grid-column: span 2; display: flex; align-items: center; justify-content: center; transition: transform .23s ease-out, filter .23s ease-out; transform-origin: center; }
.about-client-logo:nth-child(5) { grid-column: 2 / span 2; }
.about-client-logo img { display: block; max-height: 48px; width: auto; height: auto; object-fit: contain; object-position: center; }
.about-client-logo--standard img { max-width: 154px; }
.about-client-logo__omnivision { display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; }
.about-client-logo__omnivision img { width: 137px; max-width: none; max-height: none; }
.about-client-logo__omnivision i { width: 1px; height: 15px; overflow: hidden; color: transparent; background: #a8b1ad; font-size: 0; font-style: normal; font-weight: 300; line-height: 1; }
.about-client-logo__omnivision strong { color: #252a28; font-family: "DM Sans", "Noto Sans SC", system-ui, sans-serif; font-size: 17.5px; font-weight: 650; line-height: 1; letter-spacing: .015em; }
.about-client-logo--hetian { width: 150px; height: 48px; overflow: hidden; }
.about-client-logo--hetian img { width: 100%; height: 100%; max-width: none; max-height: none; object-fit: cover; object-position: center 24%; }
.about-client-logo__lingxing { display: inline-flex; align-items: center; gap: 9px; white-space: nowrap; transform: translateY(1px); }
.about-client-logo__lingxing img { width: 54px; max-width: none; max-height: 45px; }
.about-client-logo__lingxing strong { color: #1f3e8a; font-family: "Arial Narrow", "Bahnschrift SemiCondensed", "Microsoft YaHei", sans-serif; font-size: 21px; font-style: italic; font-weight: 800; line-height: 1; letter-spacing: .015em; transform: skewX(-8deg) scaleX(.96); transform-origin: left center; }
@media (hover: hover) and (pointer: fine) {
  .about-client-logo:hover { z-index: 1; transform: translateY(-2px) scale(1.1); filter: drop-shadow(0 7px 9px rgba(23,58,47,.11)); }
}
.about-industries { padding-top: 112px; background: #fff; }
.about-industries .about-section-head { max-width: 900px; margin-bottom: 58px; }
.about-industries__intro { max-width: 880px; margin-top: 30px; }
.about-industries__intro p { margin: 0; color: #5f746c; font-size: 16px; line-height: 1.85; }
.about-industries__intro p + p { margin-top: 17px; }
.about-industry-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 16px; }
.about-industry-card { position: relative; isolation: isolate; min-height: 224px; padding: 25px 22px; overflow: hidden; border: 1px solid rgba(255,255,255,.3); border-radius: 22px; background: #234e41; box-shadow: 0 14px 34px rgba(23,58,47,.08); transition: transform .28s ease, box-shadow .28s ease; }
.about-industry-card::before, .about-industry-card::after { content: ""; position: absolute; inset: 0; pointer-events: none; }
.about-industry-card::before { z-index: -2; background-image: var(--about-industry-image); background-position: var(--about-industry-position, center); background-size: cover; filter: saturate(.78) contrast(.92) brightness(.88); transform: scale(1.015); transition: transform .35s ease, filter .35s ease; }
.about-industry-card::after { z-index: -1; background: linear-gradient(180deg, rgba(17,55,44,.34) 0%, rgba(15,53,42,.48) 42%, rgba(12,45,36,.72) 100%); }
.about-industry-card:nth-child(2)::after { background: linear-gradient(180deg, rgba(16,54,59,.32), rgba(13,50,55,.49) 44%, rgba(10,40,45,.72)); }
.about-industry-card:nth-child(3)::after { background: linear-gradient(180deg, rgba(48,65,37,.3), rgba(36,58,38,.48) 44%, rgba(25,48,34,.7)); }
.about-industry-card:nth-child(4)::after { background: linear-gradient(180deg, rgba(29,53,59,.32), rgba(27,50,57,.5) 44%, rgba(23,42,50,.72)); }
.about-industry-card:nth-child(5)::after { background: linear-gradient(180deg, rgba(31,46,58,.32), rgba(28,45,56,.5) 44%, rgba(23,38,50,.72)); }
.about-industry-card:hover { transform: translateY(-2px); box-shadow: 0 18px 40px rgba(23,58,47,.14); }
.about-industry-card:hover::before { transform: scale(1.035); filter: saturate(.82) contrast(.94) brightness(.9); }
.about-industry-card .about-card-icon { width: 39px; height: 39px; margin-bottom: 29px; border: 1px solid rgba(255,255,255,.2); border-radius: 50%; color: rgba(255,255,255,.88); background: rgba(255,255,255,.12); backdrop-filter: blur(4px); }
.about-industry-card .about-card-icon svg { width: 19px; height: 19px; stroke-width: 1.55; }
.about-industry-card h3 { color: #fff; font-size: 20px; text-shadow: 0 1px 10px rgba(5,29,22,.18); }
.about-industry-card p { color: rgba(239,247,243,.88); font-size: 14px; text-shadow: 0 1px 8px rgba(5,29,22,.2); }
.about-principles { padding: 112px 0 118px; border-top: 1px solid rgba(7,60,49,.08); background: #f3f8f5; }
.about-principles .about-section-head { margin-bottom: 46px; }
.about-principle-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; align-items: stretch; }
.about-principle-card {
  --principle-copy-bg: rgba(251,250,255,.9);
  --principle-ink: #6550bb;
  min-width: 0;
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(43,72,62,.045);
  border-radius: 34px;
  background: var(--principle-copy-bg);
  box-shadow: 0 8px 30px rgba(28,65,53,.038);
  transition: transform .25s ease, background-color .25s ease;
}
.about-principle-card--lavender { --principle-copy-bg: rgba(248,246,255,.94); --principle-ink: #6a52c4; }
.about-principle-card--mint { --principle-copy-bg: rgba(244,252,248,.94); --principle-ink: #188563; }
.about-principle-card--lime { --principle-copy-bg: rgba(248,251,235,.94); --principle-ink: #5b7d29; }
.about-principle-visual { aspect-ratio: 3 / 2; position: relative; overflow: hidden; background: #eef2ed; }
.about-principle-visual::after { content: ""; position: absolute; inset: 0; border-bottom: 1px solid rgba(255,255,255,.44); box-shadow: inset 0 -1px 0 rgba(28,65,53,.025); pointer-events: none; }
.about-principle-visual img { width: 100%; height: 100%; display: block; object-fit: cover; transform: none; transition: transform .28s ease, filter .28s ease; }
.about-principle-card__copy { min-height: 132px; padding: 22px 27px 25px; position: relative; z-index: 1; }
.about-principle-card__index { display: block; margin-bottom: 8px; color: color-mix(in srgb, var(--principle-ink) 48%, transparent); font-size: 10px; font-weight: 760; line-height: 1; letter-spacing: .14em; }
.about-principle-card h3 { max-width: 100%; margin: 0; color: #153e33; font-size: 25px; font-weight: 700; line-height: 1.24; letter-spacing: -.018em; }
.about-principle-card p { max-width: 100%; margin: 9px 0 0; color: #5a6f67; font-size: 14.5px; line-height: 1.58; }
.about-principle-card[data-reveal]:hover { transform: translateY(-2px); }
.about-principle-card[data-reveal]:hover .about-principle-visual img { transform: scale(1.018); filter: saturate(1.025); }

@media (min-width: 961px) and (max-width: 1100px) {
  .about-capabilities__layout { grid-template-columns: minmax(0, .9fr) minmax(0, 1fr); gap: 44px; }
}

@media (max-width: 960px) {
  .about-hero { min-height: 520px; padding: 116px 0 62px; }
  .about-hero h1 { font-size: clamp(46px, 6.4vw, 62px); }
  .about-hero__inner > p:last-child { max-width: 780px; white-space: normal; }
  .about-section { padding: 96px 0; }
  .about-story__grid { grid-template-columns: 1fr; gap: 54px; }
  .about-story__copy { max-width: 850px; }
  .about-logic { grid-template-columns: repeat(5, minmax(0, 1fr)); padding: 18px; }
  .about-logic::before { left: 10%; right: 10%; top: 47px; bottom: auto; width: auto; height: 1px; }
  .about-logic__item { min-height: 96px; grid-template-columns: 1fr; align-content: center; justify-items: center; gap: 10px; text-align: center; }
  .about-capabilities__layout { grid-template-columns: 1fr; gap: 48px; }
  .about-capabilities .about-section-head { max-width: 820px; }
  .about-capabilities .about-section-head h2 { max-width: 720px; }
  .about-capabilities__intro { max-width: 760px; }
  .about-industries { padding-top: 88px; }
  .about-method__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .about-method-step:nth-child(3) > i { display: none; }
  .about-clients { padding-top: 62px; padding-bottom: 66px; }
  .about-clients .about-section-head { margin-bottom: 38px; }
  .about-client-logo-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px 28px; }
  .about-client-logo, .about-client-logo:nth-child(5) { grid-column: auto; }
  .about-industry-grid { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .about-industry-card { grid-column: span 2; }
  .about-industry-card:nth-child(4), .about-industry-card:nth-child(5) { grid-column: span 3; }
}

@media (max-width: 640px) {
  .about-page .container { width: min(100% - 36px, 1240px); }
  .about-hero { min-height: 458px; padding: 106px 0 54px; }
  .about-hero::before { inset: -4px; background-position: center 48%; opacity: 1; filter: blur(1.5px) saturate(.96) brightness(1) contrast(1.06); transform: scale(1.018); }
  .about-hero::after { background: radial-gradient(ellipse at 50% 47%, rgba(249,252,248,.28), transparent 62%), radial-gradient(circle at 64% 46%, rgba(210,235,109,.045), transparent 36%), radial-gradient(circle at 92% 40%, rgba(112,205,189,.04), transparent 40%), linear-gradient(112deg, rgba(253,252,248,.38), rgba(247,251,248,.32) 54%, rgba(241,250,248,.36)); }
  .about-hero h1 { max-width: 340px; font-size: 45px; line-height: 1.12; white-space: normal; }
  .about-hero__inner > p:last-child { margin-top: 26px; font-size: 17px; line-height: 1.8; }
  .about-eyebrow, .about-kicker { margin-bottom: 17px; font-size: 11px; }
  .about-section { padding: 72px 0; }
  .about-section-head { margin-bottom: 34px; }
  .about-section-head h2, .about-story__copy h2 { font-size: 35px; }
  .about-section-head > p:last-child { margin-top: 16px; font-size: 16px; }
  .about-story__grid { gap: 38px; }
  .about-story__copy > p:not(.about-kicker) { margin-top: 18px; font-size: 16px; line-height: 1.85; }
  .about-logic { grid-template-columns: 1fr; gap: 0; padding: 13px 16px; border-radius: 22px; }
  .about-logic::before { left: 35px; right: auto; top: 40px; bottom: 40px; width: 1px; height: auto; }
  .about-logic__item { min-height: 52px; grid-template-columns: 32px 1fr; justify-items: stretch; text-align: left; }
  .about-stats-section { padding-top: 0; }
  .about-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0; padding: 16px; border-radius: 22px; }
  .about-stat { min-width: 0; padding: 26px 8px; }
  .about-stat + .about-stat::before { display: none; }
  .about-stat:nth-child(2n) { border-left: 1px solid rgba(41,100,81,.1); }
  .about-stat:nth-child(n+3) { border-top: 1px solid rgba(41,100,81,.1); }
  .about-stat strong { font-size: 44px; }
  .about-stat > span { font-size: 14px; line-height: 1.55; }
  .about-principle-grid { grid-template-columns: 1fr; gap: 16px; }
  .about-capabilities__layout { gap: 34px; }
  .about-capabilities .about-section-head h2 { font-size: 32px; line-height: 1.2; }
  .about-capabilities__intro { margin-top: 24px; }
  .about-capabilities__intro p { font-size: 15px; line-height: 1.78; }
  .about-capabilities__intro p + p { margin-top: 14px; }
  .about-capabilities__emphasis { margin-top: 22px; font-size: 15px; white-space: normal; }
  .about-capabilities .about-section-head h2 span { white-space: normal; }
  .about-industries { padding-top: 68px; }
  .about-industries .about-section-head { margin-bottom: 38px; }
  .about-industries__intro { margin-top: 24px; }
  .about-industries__intro p { font-size: 15px; line-height: 1.78; }
  .about-industries__intro p + p { margin-top: 14px; }
  .about-capability-grid { grid-auto-rows: auto; gap: 10px; }
  .about-capability-card { min-height: 118px; grid-template-columns: 28px minmax(0, 1fr); grid-template-rows: auto auto auto auto; column-gap: 11px; padding: 14px 16px; border-radius: 21px; }
  .about-capability-card .about-card-icon { grid-column: 1; grid-row: 1 / span 2; width: 28px; height: 28px; }
  .about-capability-card h3 { grid-column: 2; grid-row: 1; font-size: 20px; }
  .about-capability-card p { grid-column: 2; grid-row: 2; max-width: none; margin-top: 4px; font-size: 14px; line-height: 1.48; }
  .about-capability-card__tags { grid-column: 2; grid-row: 3; margin-top: 5px; }
  .about-capability-card__link { grid-column: 2; grid-row: 4; justify-self: start; margin-top: 6px; padding-left: 0; }
  .about-card-icon { margin-bottom: 30px; }
  .about-method__grid { grid-template-columns: 1fr; gap: 0; padding: 2px 0 0 4px; }
  .about-method__grid::before { left: 28px; right: auto; top: 26px; bottom: 26px; width: 1px; height: auto; }
  .about-method-step { min-height: 0; display: grid; grid-template-columns: 50px minmax(0, 1fr); column-gap: 17px; padding: 0 0 28px; text-align: left; }
  .about-method-step:last-child { padding-bottom: 0; }
  .about-method-step > span { grid-column: 1; grid-row: 1 / span 2; width: 45px; height: 45px; margin: 0; border-width: 4px; }
  .about-method-step h3 { grid-column: 2; margin: 2px 0 0; }
  .about-method-step p { grid-column: 2; max-width: none; margin: 5px 0 0; }
  .about-method__statement { margin-top: 28px; align-items: flex-start; font-size: 16px; text-align: left; }
  .about-clients { padding-top: 50px; padding-bottom: 52px; }
  .about-clients .about-section-head { margin-bottom: 31px; }
  .about-client-logo-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px 24px; }
  .about-client-logo { height: 54px; }
  .about-client-logo img { max-height: 40px; }
  .about-client-logo__omnivision { gap: 3px; }
  .about-client-logo__omnivision img { width: 82px; max-height: none; }
  .about-client-logo__omnivision i { width: 1px; height: 12px; font-size: 0; }
  .about-client-logo__omnivision strong { font-size: 12px; letter-spacing: .008em; }
  .about-client-logo--hetian { width: 132px; height: 42px; }
  .about-client-logo--hetian img { max-height: none; }
  .about-client-logo__lingxing { gap: 7px; }
  .about-client-logo__lingxing img { width: 48px; }
  .about-client-logo__lingxing strong { font-size: 19px; letter-spacing: .012em; }
  .about-industry-grid { grid-template-columns: 1fr; gap: 14px; }
  .about-industry-card, .about-industry-card:nth-child(4), .about-industry-card:nth-child(5) { grid-column: auto; min-height: 188px; padding: 25px; }
  .about-principle-card { min-height: 0; padding: 0; border-radius: 28px; }
  .about-principle-card__copy { min-height: 124px; padding: 21px 23px 23px; }
  .about-principle-card h3 { font-size: 23px; }
  .about-principle-card p { font-size: 14px; }
  .about-principles { padding: 72px 0; }
}

/* Solutions overview */
.solutions-overview { overflow: hidden; background: #fff; }
.solutions-overview .container { max-width: 1240px; }
.solutions-kicker { margin: 0 0 18px; color: #31705e; font-size: 12px; font-weight: 750; letter-spacing: .14em; text-transform: uppercase; }
.solutions-kicker span { color: #799188; font-weight: 650; }
.solutions-overview-hero { position: relative; overflow: hidden; padding: 104px 0 92px; background: radial-gradient(circle at 82% 30%, rgba(115,204,195,.18), transparent 32%), radial-gradient(circle at 92% 82%, rgba(216,240,107,.18), transparent 27%), linear-gradient(125deg, #f8f9f4 0%, #edf7f1 54%, #eef7f8 100%); }
.solutions-overview-hero::before { content: ""; position: absolute; inset: 0; opacity: .36; pointer-events: none; background-image: linear-gradient(rgba(27,93,73,.055) 1px, transparent 1px), linear-gradient(90deg, rgba(27,93,73,.055) 1px, transparent 1px); background-size: 48px 48px; mask-image: linear-gradient(90deg, transparent 42%, #000); }
.solutions-overview-hero__grid { position: relative; display: grid; grid-template-columns: minmax(0, 1.04fr) minmax(410px, .96fr); gap: 68px; align-items: center; }
.solutions-overview-hero__copy, .solutions-overview-hero__visual { min-width: 0; }
.solutions-overview-hero__copy h1 { max-width: 760px; margin: 0; color: var(--green-deep); font-size: clamp(48px, 5vw, 70px); line-height: 1.12; letter-spacing: -.055em; }
.solutions-overview-hero__copy > p:not(.solutions-kicker) { max-width: 720px; margin: 27px 0 0; color: #526861; font-size: 18px; line-height: 1.8; }
.solutions-overview-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 34px; }
.solutions-overview-hero__actions .button { min-height: 50px; }
.solutions-overview-hero__visual { position: relative; min-height: 430px; border: 1px solid rgba(35,91,74,.08); border-radius: 36px; background: linear-gradient(145deg, rgba(255,255,255,.76), rgba(244,250,248,.6)); box-shadow: 0 24px 70px rgba(40,91,74,.09), inset 0 1px 0 rgba(255,255,255,.7); }
.solutions-overview-hero__visual::before { content: ""; position: absolute; inset: 10% 14%; border: 1px solid rgba(43,117,96,.1); border-radius: 50%; }
.solutions-overview-hero__visual::after { content: ""; position: absolute; inset: 23% 27%; border: 1px solid rgba(43,117,96,.1); border-radius: 50%; }
.solutions-hero-hub { position: absolute; z-index: 2; left: 50%; top: 50%; width: 132px; height: 132px; display: grid; place-content: center; text-align: center; transform: translate(-50%, -50%); border: 1px solid rgba(27,90,70,.13); border-radius: 36px; color: #fff; background: linear-gradient(145deg, #2c765f, #174d3d); box-shadow: 0 20px 44px rgba(24,77,61,.22), 0 0 0 12px rgba(216,240,107,.1); }
.solutions-hero-hub strong { font-size: 19px; }
.solutions-hero-hub span { margin-top: 5px; color: rgba(255,255,255,.7); font-size: 11px; letter-spacing: .08em; }
.solutions-hero-capability { position: absolute; z-index: 3; min-width: 146px; display: flex; align-items: center; gap: 10px; padding: 13px 15px; border: 1px solid rgba(31,84,68,.09); border-radius: 16px; color: #214f41; background: rgba(255,255,255,.9); box-shadow: 0 12px 30px rgba(39,83,69,.09); }
.solutions-hero-capability i { width: 33px; height: 33px; display: grid; place-items: center; flex: 0 0 33px; border-radius: 10px; background: #edf6f1; }
.solutions-hero-capability svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.solutions-hero-capability b { font-size: 13px; white-space: nowrap; }
.solutions-hero-capability--lime { left: 6%; top: 13%; }
.solutions-hero-capability--mint { right: 5%; top: 16%; }
.solutions-hero-capability--blue { left: 7%; bottom: 13%; }
.solutions-hero-capability--violet { right: 5%; bottom: 15%; }
.solutions-hero-capability--lime i { color: #527226; background: #eff8ca; }
.solutions-hero-capability--mint i { color: #177c70; background: #dcf4ec; }
.solutions-hero-capability--blue i { color: #347ca5; background: #e3f2f8; }
.solutions-hero-capability--violet i { color: #6f5bab; background: #eeeafd; }

.solutions-section { position: relative; padding: 112px 0; }
.solutions-section__head { max-width: 880px; margin-bottom: 48px; }
.solutions-section__head h2, .solution-start-copy h2, .solutions-cases-head h2 { margin: 0; color: var(--green-deep); font-size: clamp(36px, 4vw, 52px); line-height: 1.16; letter-spacing: -.045em; }
.solutions-section__head > p:last-child { max-width: 830px; margin: 20px 0 0; color: #61736d; font-size: 17px; line-height: 1.8; }
.solutions-section--problems { background: #fffdfa; }
.solution-problem-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.solution-problem { min-height: 154px; display: grid; grid-template-columns: 38px minmax(0, 1fr) 150px; gap: 18px; align-items: center; padding: 24px 26px; border: 1px solid rgba(31,87,69,.08); border-radius: 22px; background: #fff; box-shadow: 0 10px 28px rgba(28,68,54,.035); }
.solution-problem > span { align-self: start; color: #779086; font-size: 12px; font-weight: 800; letter-spacing: .1em; }
.solution-problem h3 { margin: 0 0 8px; color: #173f33; font-size: 21px; }
.solution-problem p { margin: 0; color: #667771; font-size: 14px; line-height: 1.65; }
.solution-problem > strong { min-height: 72px; display: grid; align-content: center; justify-items: start; padding: 12px 14px; border-radius: 14px; color: #184b3b; font-size: 14px; background: #eff6f2; }
.solution-problem > strong small { margin-bottom: 4px; color: #82948d; font-size: 10px; font-weight: 650; }
.solution-problem > strong i { margin-left: 4px; font-style: normal; }
.solution-problem--lime > strong { background: #f2f7d8; }
.solution-problem--blue > strong { background: #eaf4f8; }
.solution-problem--violet > strong { background: #f0edfa; }

.solutions-section--core { background: linear-gradient(180deg, #edf6f0, #f2f7f7); }
.solution-overview-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }
.solution-overview-card { --overview-accent: #3d806b; --overview-soft: #eaf4ef; min-width: 0; overflow: hidden; padding: 30px; border: 1px solid rgba(30,83,67,.09); border-radius: 28px; background: rgba(255,255,255,.9); box-shadow: 0 14px 38px rgba(32,72,59,.055); transition: transform 240ms ease-out, box-shadow 240ms ease-out, border-color 240ms ease-out; }
.solution-overview-card--lime { --overview-accent: #56732a; --overview-soft: #f0f7d3; background: linear-gradient(145deg, #fff 44%, #f5f9e7); }
.solution-overview-card--mint { --overview-accent: #188477; --overview-soft: #def3ec; background: linear-gradient(145deg, #fff 44%, #eaf7f2); }
.solution-overview-card--blue { --overview-accent: #347ea5; --overview-soft: #e4f1f7; background: linear-gradient(145deg, #fff 44%, #edf6fa); }
.solution-overview-card--violet { --overview-accent: #6e5aab; --overview-soft: #eeeafa; background: linear-gradient(145deg, #fff 44%, #f1effa); }
.solution-overview-card__head { display: flex; gap: 14px; align-items: center; }
.solution-overview-card__icon { width: 43px; height: 43px; display: grid; place-items: center; flex: 0 0 43px; border-radius: 13px; color: var(--overview-accent); background: var(--overview-soft); }
.solution-overview-card__icon svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.solution-overview-card__head p { margin: 0 0 3px; color: #879790; font-size: 10px; font-weight: 750; letter-spacing: .1em; text-transform: uppercase; }
.solution-overview-card__head h3 { margin: 0; color: #173f33; font-size: 26px; }
.solution-overview-card__description { min-height: 3.6em; margin: 18px 0 0; color: #5a6f67; font-size: 15px; line-height: 1.7; }
.solution-overview-card__visual { height: 260px; margin: 22px 0; overflow: hidden; border: 1px solid rgba(31,82,66,.07); border-radius: 20px; background: rgba(255,255,255,.55); }
.solution-overview-card__visual .solution-visual { height: 100%; min-height: 0; margin: 0; padding: 15px; overflow: hidden; }
.solution-overview-card__visual .solution-visual--dashboard { padding: 16px; }
.solution-overview-card__visual .business-dashboard { transform: scale(.92); transform-origin: center; }
.solution-overview-card__visual .solution-visual--workflow { overflow: hidden; }
.solution-overview-card__visual .solution-visual--integration { min-height: 0; transform: scale(.84); }
.solution-overview-card__visual .solution-visual--ai { min-height: 0; padding: 13px; grid-template-columns: minmax(105px, 1fr) 72px minmax(120px, 1.08fr); }
.solution-overview-card__content { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: 24px; padding-top: 2px; }
.solution-overview-card__content h4 { margin: 0 0 12px; color: #74877f; font-size: 11px; font-weight: 750; letter-spacing: .12em; }
.solution-overview-card__content ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px 14px; margin: 0; padding: 0; list-style: none; }
.solution-overview-card__content li { position: relative; padding-left: 12px; color: #314d44; font-size: 13px; line-height: 1.45; }
.solution-overview-card__content li::before { content: ""; position: absolute; left: 0; top: .62em; width: 4px; height: 4px; border-radius: 50%; background: var(--overview-accent); }
.solution-overview-tags { display: flex; flex-wrap: wrap; gap: 7px; }
.solution-overview-tags span { padding: 6px 9px; border: 1px solid rgba(30,83,67,.07); border-radius: 999px; color: #516b62; font-size: 11px; background: rgba(255,255,255,.74); }
.solution-overview-card__link { display: inline-flex; align-items: center; gap: 8px; margin-top: 24px; color: var(--overview-accent); font-size: 14px; font-weight: 750; }
.solution-overview-card__link span { transition: transform 220ms ease-out; }
@media (hover:hover) and (pointer:fine) {
  .solution-overview-card:hover { transform: translateY(-3px); border-color: rgba(30,83,67,.15); box-shadow: 0 20px 48px rgba(32,72,59,.09); }
  .solution-overview-card:hover .solution-overview-card__link span { transform: translateX(4px); }
}

.solutions-section--combinations { background: #fff; }
.solution-combination-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.solution-combination { min-height: 290px; padding: 28px; border: 1px solid rgba(29,82,65,.08); border-radius: 24px; background: radial-gradient(circle at 100% 100%, rgba(82,192,160,.13), transparent 52%), #fff; box-shadow: 0 11px 30px rgba(31,70,57,.04); }
.solution-combination:nth-child(2) { background: radial-gradient(circle at 100% 100%, rgba(83,161,208,.13), transparent 52%), #fff; }
.solution-combination:nth-child(3) { background: radial-gradient(circle at 100% 100%, rgba(126,100,191,.12), transparent 52%), #fff; }
.solution-combination > span { color: #779087; font-size: 12px; font-weight: 800; letter-spacing: .12em; }
.solution-combination h3 { margin: 32px 0 9px; color: #173f33; font-size: 23px; }
.solution-combination > strong { color: #35836d; font-size: 13px; }
.solution-combination > p { margin: 18px 0 22px; color: #61736d; font-size: 14px; line-height: 1.7; }
.solution-combination > div { display: flex; flex-wrap: wrap; gap: 7px; }
.solution-combination em { padding: 6px 10px; border-radius: 999px; color: #4f6960; font-size: 11px; font-style: normal; background: #eff5f2; }

.solutions-section--start { background: #f8f7f2; }
.solution-start-grid { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 72px 82px; align-items: start; }
.solution-start-copy h2 { max-width: 560px; }
.solution-start-copy > p:not(.solutions-kicker) { max-width: 580px; margin: 22px 0 0; color: #5f726b; font-size: 16px; line-height: 1.82; }
.solution-start-list { display: grid; gap: 10px; }
.solution-start-list > div { min-height: 76px; display: grid; grid-template-columns: 30px minmax(0, 1fr) 22px minmax(150px, .9fr); gap: 13px; align-items: center; padding: 14px 18px; border: 1px solid rgba(31,83,67,.08); border-radius: 16px; background: rgba(255,255,255,.82); }
.solution-start-list span { color: #8a9b95; font-size: 11px; font-weight: 800; }
.solution-start-list p { margin: 0; color: #405950; font-size: 14px; }
.solution-start-list i { color: #9aaa9f; font-style: normal; }
.solution-start-list strong { color: #1d5b48; font-size: 14px; }
.solution-start-emphasis { grid-column: 1 / -1; margin: -22px 0 0; padding: 18px 22px; border-left: 4px solid var(--lime-strong); color: #164a3a; font-size: 18px; font-weight: 750; background: rgba(235,244,205,.72); }

.solutions-section--principles { background: #fff; }
.solution-principle-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid rgba(28,79,63,.1); border-bottom: 1px solid rgba(28,79,63,.1); }
.solution-principle-grid article { min-height: 206px; padding: 32px 36px; }
.solution-principle-grid article + article { border-left: 1px solid rgba(28,79,63,.1); }
.solution-principle-grid span { color: #82a096; font-size: 11px; font-weight: 800; letter-spacing: .12em; }
.solution-principle-grid h3 { margin: 27px 0 10px; color: #173f33; font-size: 22px; }
.solution-principle-grid p { margin: 0; color: #65766f; font-size: 14px; line-height: 1.7; }
.solution-principle-emphasis { margin: 28px 0 0; color: #1d5d49; font-size: 17px; font-weight: 750; }

.solutions-section--cases { background: #edf4ee; }
.solutions-cases-head { display: flex; align-items: end; justify-content: space-between; gap: 36px; margin-bottom: 42px; }
.solutions-cases-head .solutions-kicker { margin-bottom: 17px; }
.solutions-case-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.solutions-case-card { background: #fff; }

@media (max-width: 1080px) {
  .solutions-overview-hero__grid { grid-template-columns: minmax(0, 1fr) 390px; gap: 38px; }
  .solutions-overview-hero__copy h1 { font-size: clamp(46px, 5.2vw, 60px); }
  .solution-overview-card__visual { height: 240px; }
  .solution-overview-card__content { grid-template-columns: 1fr; gap: 20px; }
}

@media (max-width: 960px) {
  .solutions-overview-hero { padding: 88px 0 74px; }
  .solutions-overview-hero__grid { grid-template-columns: 1fr; }
  .solutions-overview-hero__copy { max-width: 820px; }
  .solutions-overview-hero__visual { width: min(100%, 600px); min-height: 400px; }
  .solutions-section { padding: 90px 0; }
  .solution-problem { grid-template-columns: 32px minmax(0, 1fr); }
  .solution-problem > strong { grid-column: 2; width: fit-content; min-height: auto; display: flex; align-items: center; gap: 5px; padding: 8px 11px; }
  .solution-problem > strong small { margin: 0 4px 0 0; }
  .solution-overview-grid { gap: 16px; }
  .solution-overview-card { padding: 24px; }
  .solution-overview-card__visual { height: 220px; }
  .solution-overview-card__visual .solution-visual--ai { grid-template-columns: 94px 62px minmax(105px, 1fr); }
  .solution-combination-grid { grid-template-columns: 1fr; }
  .solution-combination { min-height: 0; }
  .solution-start-grid { grid-template-columns: 1fr; gap: 42px; }
  .solution-start-copy { max-width: 760px; }
  .solution-start-emphasis { margin-top: -6px; }
  .solutions-case-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
  .solution-problem-grid, .solution-overview-grid { grid-template-columns: 1fr; }
  .solution-overview-card__description { min-height: 0; }
  .solution-overview-card__visual { height: 260px; }
  .solution-principle-grid { grid-template-columns: 1fr; }
  .solution-principle-grid article { min-height: 0; padding: 28px 8px; }
  .solution-principle-grid article + article { border-left: 0; border-top: 1px solid rgba(28,79,63,.1); }
  .solution-principle-grid h3 { margin-top: 18px; }
  .solutions-case-grid { grid-template-columns: 1fr; }
  .solutions-cases-head { align-items: flex-start; flex-direction: column; }
}

@media (max-width: 640px) {
  .solutions-overview .container { width: min(100% - 36px, 1240px); }
  .solutions-overview-hero { padding: 76px 0 62px; }
  .solutions-overview-hero__copy h1 { font-size: 42px; line-height: 1.15; }
  .solutions-overview-hero__copy > p:not(.solutions-kicker) { margin-top: 22px; font-size: 16px; line-height: 1.75; }
  .solutions-overview-hero__actions { align-items: stretch; flex-direction: column; }
  .solutions-overview-hero__actions .button { width: 100%; justify-content: center; }
  .solutions-overview-hero__visual { min-height: 338px; border-radius: 26px; }
  .solutions-hero-hub { width: 105px; height: 105px; border-radius: 29px; }
  .solutions-hero-hub strong { font-size: 16px; }
  .solutions-hero-capability { min-width: 122px; gap: 7px; padding: 10px 11px; }
  .solutions-hero-capability i { width: 28px; height: 28px; flex-basis: 28px; }
  .solutions-hero-capability b { font-size: 11px; }
  .solutions-hero-capability--lime, .solutions-hero-capability--blue { left: 3%; }
  .solutions-hero-capability--mint, .solutions-hero-capability--violet { right: 3%; }
  .solutions-section { padding: 72px 0; }
  .solutions-section__head { margin-bottom: 34px; }
  .solutions-section__head h2, .solution-start-copy h2, .solutions-cases-head h2 { font-size: 34px; }
  .solutions-section__head > p:last-child { margin-top: 16px; font-size: 15px; line-height: 1.75; }
  .solution-problem { min-height: 0; grid-template-columns: 28px minmax(0, 1fr); gap: 12px; padding: 20px; }
  .solution-problem h3 { font-size: 20px; }
  .solution-overview-card { padding: 20px; border-radius: 23px; }
  .solution-overview-card__head h3 { font-size: 23px; }
  .solution-overview-card__description { font-size: 14px; }
  .solution-overview-card__visual { height: 225px; margin: 18px 0; }
  .solution-overview-card__visual .solution-visual--integration { transform: scale(.72); }
  .solution-overview-card__visual .solution-visual--ai { grid-template-columns: 82px 54px minmax(90px, 1fr); gap: 4px; }
  .solution-overview-card__content ul { grid-template-columns: 1fr; }
  .solution-combination { min-height: 0; padding: 24px; }
  .solution-combination h3 { margin-top: 24px; }
  .solution-start-list > div { grid-template-columns: 26px minmax(0, 1fr); gap: 8px 12px; }
  .solution-start-list i { display: none; }
  .solution-start-list strong { grid-column: 2; }
  .solution-start-emphasis { padding: 16px 17px; font-size: 16px; }
  .solutions-cases-head { gap: 19px; margin-bottom: 30px; }
}

/* Solutions overview V2 */
.solutions-v2 { overflow: hidden; background: #fff; }
.solutions-v2 .container { max-width: 1240px; }
.solutions-v2-kicker { margin: 0 0 20px; color: #2f735e; font-size: 12px; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.solutions-v2-kicker span { color: #81938c; font-weight: 650; }
.solutions-v2-hero { position: relative; overflow: hidden; padding: 88px 0 84px; background: radial-gradient(circle at 82% 15%, rgba(94,205,194,.16), transparent 31%), radial-gradient(circle at 90% 88%, rgba(124,181,229,.11), transparent 30%), linear-gradient(122deg, #fbfaf6 0%, #f0f8f2 55%, #edf8fa 100%); }
.solutions-v2-hero__grid { display: grid; grid-template-columns: minmax(0, 45fr) minmax(0, 55fr); gap: 40px; align-items: center; }
.solutions-v2-hero__copy, .solutions-v2-hero__visual { min-width: 0; }
.solutions-v2-hero__copy { position: relative; z-index: 2; }
.solutions-v2-hero h1 { width: auto; max-width: 640px; margin: 0; color: #0a4436; font-size: clamp(44px, 3.35vw, 48px); font-weight: 780; line-height: 1.08; letter-spacing: -.062em; }
.solutions-v2-hero h1 span { display: inline; white-space: normal; }
.solutions-v2-hero__copy > p:not(.solutions-v2-kicker) { max-width: 520px; margin: 27px 0 0; color: #536a62; font-size: 17px; line-height: 1.75; }
.solutions-v2-hero__description { max-width: 600px; margin-top: 27px; color: #536a62; font-size: 17px; line-height: 1.75; }
.solutions-v2-hero__description p { margin: 0; }
.solutions-v2-hero__description p + p { margin-top: 14px; }
.solutions-v2-hero__actions { display: flex; flex-wrap: wrap; gap: 13px; margin-top: 32px; }
.solutions-v2-hero__actions .button { min-height: 50px; }
.solutions-v2-hero__visual { --hero-green: #0b4a3c; --hero-mint: #dff5ed; --hero-cyan: #daf4f4; --hero-blue: #e4efff; --hero-purple: #eee8ff; --hero-lime: #d7f45a; --hero-text: #123f36; --hero-muted: #71847e; display: grid; place-items: center; padding-left: 18px; }
.solution-hero-product { position: relative; width: min(100%,670px); aspect-ratio: 1.34; overflow: visible; isolation: isolate; border: 1px solid transparent; border-radius: 34px; background: radial-gradient(ellipse at 23% 19%,rgba(128,218,192,.15) 0%,rgba(177,231,215,.07) 39%,transparent 72%),radial-gradient(ellipse at 79% 69%,rgba(177,162,229,.12) 0%,rgba(203,195,238,.055) 43%,transparent 76%),radial-gradient(ellipse at 56% 47%,rgba(214,236,239,.14) 0%,transparent 70%); box-shadow: none; }
.solution-hero-product::before { content: ""; position: absolute; inset: -5%; z-index: -1; border-radius: 42%; opacity: .15; background-image: linear-gradient(rgba(65,101,91,.026) 1px,transparent 1px),linear-gradient(90deg,rgba(65,101,91,.026) 1px,transparent 1px); background-size: 34px 34px; filter: blur(.2px); mask-image: radial-gradient(ellipse at 51% 45%,#000 15%,rgba(0,0,0,.56) 55%,transparent 84%); }
.solution-hero-product::after { content: ""; position: absolute; inset: -10% -7% -12%; z-index: 0; pointer-events: none; border-radius: 46%; opacity: .72; background: radial-gradient(ellipse at 22% 25%,rgba(111,207,181,.12),transparent 51%),radial-gradient(ellipse at 64% 64%,rgba(98,180,204,.075),transparent 55%),radial-gradient(ellipse at 84% 54%,rgba(160,139,218,.085),transparent 50%); filter: blur(38px); }
.solution-hero-product__surface-shell,.solution-hero-product__surface-card { box-sizing: border-box; }
.solution-hero-product__dashboard-shell { position: absolute; top: 5.1%; right: .9%; width: 89%; height: 81%; z-index: 2; padding: 8px; border: 1px solid rgba(255,255,255,.32); border-radius: 29px; background: linear-gradient(135deg,rgba(204,239,229,.43),rgba(223,232,248,.35)); box-shadow: 0 24px 58px rgba(45,95,80,.045),0 18px 54px rgba(138,129,184,.035),inset 0 1px 0 rgba(255,255,255,.42); transition: box-shadow .45s ease,transform .45s ease; animation: solution-product-rise .62s cubic-bezier(.2,.75,.25,1) both; }
.solution-hero-product__dashboard { position: relative; width: 100%; height: 100%; padding: 17px; border: 1px solid rgba(255,255,255,.68); border-radius: 22px; background: linear-gradient(145deg,rgba(240,248,245,.79),rgba(240,245,252,.75)); box-shadow: inset 0 1px 0 rgba(255,255,255,.56),0 3px 12px rgba(45,82,72,.025); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); }
.solution-hero-product:hover .solution-hero-product__dashboard-shell { transform: translateY(-2px); box-shadow: 0 27px 64px rgba(45,95,80,.052),0 20px 58px rgba(138,129,184,.042),inset 0 1px 0 rgba(255,255,255,.46); }
.solution-hero-product__topbar { height: 26px; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 0 2px 10px; border-bottom: 1px solid rgba(49,91,79,.08); }
.solution-hero-product__topbar strong { color: var(--hero-text); font-size: 15px; }
.solution-hero-product__topbar span { display: inline-flex; align-items: center; gap: 6px; color: var(--hero-muted); font-size: 9px; }
.solution-hero-product__topbar span i { width: 6px; height: 6px; border-radius: 50%; background: #47c997; box-shadow: 0 0 0 4px rgba(71,201,151,.12); }
.solution-hero-product__content { height: calc(100% - 36px); display: grid; grid-template-columns: minmax(0,1.18fr) minmax(0,.82fr) minmax(0,.68fr); grid-template-rows: minmax(0,1.18fr) minmax(0,.82fr); gap: 10px; padding-top: 10px; }
.solution-hero-product__table,.solution-hero-product__trend,.solution-hero-product__completion,.solution-hero-product__metric { min-width: 0; overflow: hidden; border: 1px solid rgba(62,94,84,.075); border-radius: 14px; background: rgba(251,253,252,.83); }
.solution-hero-product__table { grid-column: 1; grid-row: 1 / 3; padding: 13px; }
.solution-hero-product__table header,.solution-hero-product__trend header { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 12px; }
.solution-hero-product__table header strong,.solution-hero-product__trend header strong { color: var(--hero-text); font-size: 12px; }
.solution-hero-product__table header span,.solution-hero-product__trend header span { padding: 3px 6px; border-radius: 999px; color: #7463c7; font-size: 7px; background: #f0ecff; }
.solution-hero-product__table-head,.solution-hero-product__table-row { display: grid; grid-template-columns: .92fr 1fr .72fr; align-items: center; min-height: 34px; border-top: 1px solid rgba(54,91,81,.08); }
.solution-hero-product__table-head { min-height: 25px; color: #8b9a95; font-size: 8px; background: rgba(239,246,243,.52); }
.solution-hero-product__table-head span,.solution-hero-product__table-row > span { padding: 0 7px; }
.solution-hero-product__table-head span + span,.solution-hero-product__table-row > span + span { border-left: 1px solid rgba(54,91,81,.075); }
.solution-hero-product__table-row { color: #536a62; font-size: 9px; }
.solution-hero-product__table-row > span:nth-child(2) { display: flex; align-items: center; gap: 6px; color: #273f38; font-weight: 650; }
.solution-hero-product__table-row > span:last-child { display: flex; justify-content: center; }
.solution-hero-product__table-row > span:last-child b { display: inline-flex; align-items: center; justify-content: center; min-width: 36px; padding: 4px 5px; border-radius: 999px; font-size: 7px; font-weight: 750; white-space: nowrap; }
.solution-hero-product__table-row > span:last-child b.is-done { color: #2f8f6d; background: #e6f6ef; }
.solution-hero-product__table-row > span:last-child b.is-working { color: #6e5dcc; background: #eeeaff; }
.solution-hero-product__table-row > span:last-child b.is-synced { color: #3f7eaa; background: #e8f3fb; }
.solution-hero-product__table-row i,.solution-hero-product__ai div i { width: 7px; height: 7px; flex: 0 0 7px; border-radius: 3px; }
.solution-hero-product__table-row i.is-mint,.solution-hero-product__ai div i.is-mint { background: #59cca0; }
.solution-hero-product__table-row i.is-blue,.solution-hero-product__ai div i.is-blue { background: #6aa5ef; }
.solution-hero-product__table-row i.is-purple,.solution-hero-product__ai div i.is-purple { background: #a17ae9; }
.solution-hero-product__table-row i.is-cyan,.solution-hero-product__ai div i.is-cyan { background: #44c7c8; }
.solution-hero-product__ai div i.is-lime { background: #b1cf3f; }
.solution-hero-product__trend { grid-column: 2 / 4; grid-row: 1; padding: 12px 12px 9px; background: linear-gradient(145deg,rgba(249,251,255,.9),rgba(239,244,255,.84)); }
.solution-hero-product__bars { height: calc(100% - 28px); display: flex; align-items: flex-end; justify-content: space-between; gap: 7px; padding: 14px 4px 0; border-top: 1px solid rgba(74,104,126,.07); background: repeating-linear-gradient(to top,transparent 0,transparent 29%,rgba(77,99,116,.055) 30%); }
.solution-hero-product__bars i { position: relative; width: 12%; height: var(--bar); overflow: hidden; border-radius: 5px 5px 2px 2px; background: linear-gradient(to top,#6b8ee8 0 55%,#b879df 55% 100%); transform-origin: bottom; animation: solution-bar-grow .65s cubic-bezier(.2,.75,.25,1) both; animation-delay: calc(220ms + var(--delay)); }
.solution-hero-product__bars i b { position: absolute; inset: 0; background: linear-gradient(90deg,rgba(255,255,255,.2),transparent); }
.solution-hero-product__completion { grid-column: 2; grid-row: 2; display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 8px; padding: 10px 11px; background: linear-gradient(145deg,rgba(255,255,255,.9),rgba(247,243,255,.88)); }
.solution-hero-product__completion > strong,.solution-hero-product__metric > strong { color: #5f6e69; font-size: 9px; line-height: 1.35; }
.solution-hero-product__donut { position: relative; width: 72px; aspect-ratio: 1; display: grid; place-items: center; border-radius: 50%; background: conic-gradient(#8069ec 0 58%,#c07de1 58% 84%,#edf0f5 84% 100%); box-shadow: 0 8px 20px rgba(120,94,207,.15); }
.solution-hero-product__donut::before { content: ""; position: absolute; width: 48px; aspect-ratio: 1; border-radius: 50%; background: rgba(255,255,255,.94); }
.solution-hero-product__donut span { position: relative; z-index: 1; display: grid; text-align: center; }
.solution-hero-product__donut b { color: #4f446a; font-size: 15px; line-height: 1; }
.solution-hero-product__donut small { margin-top: 3px; color: #9a93ab; font-size: 6px; }
.solution-hero-product__metric { grid-column: 3; grid-row: 2; display: flex; flex-direction: column; justify-content: center; padding: 11px 13px; background: linear-gradient(145deg,rgba(255,255,255,.92),rgba(238,247,255,.86)); }
.solution-hero-product__metric > b { margin: 6px 0 2px; color: #6f5fe8; font-size: 30px; line-height: 1; letter-spacing: -.04em; }
.solution-hero-product__metric span { color: #85958f; font-size: 7px; }
.solution-hero-product__metric em { color: #3aaa7f; font-style: normal; font-weight: 750; }
.solution-hero-product__ai-shell { position: absolute; left: -1.2%; bottom: -3%; width: 249px; z-index: 4; padding: 7px; border: 1px solid rgba(255,255,255,.3); border-radius: 25px; background: linear-gradient(145deg,rgba(232,222,252,.43),rgba(223,235,248,.3)); box-shadow: 0 22px 48px rgba(79,61,126,.05),0 12px 38px rgba(153,132,211,.045),inset 0 1px 0 rgba(255,255,255,.42); transition: transform .3s ease,box-shadow .3s ease; animation: solution-ai-rise .62s .15s cubic-bezier(.2,.75,.25,1) both; }
.solution-hero-product__ai { width: 100%; height: 100%; padding: 15px; border: 1px solid rgba(255,255,255,.69); border-radius: 18px; background: linear-gradient(145deg,rgba(248,245,253,.82),rgba(241,235,250,.74)); box-shadow: inset 0 1px 0 rgba(255,255,255,.57),0 3px 11px rgba(76,60,112,.025); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); }
.solution-hero-product:hover .solution-hero-product__ai-shell { transform: translateY(-3px); box-shadow: 0 25px 54px rgba(79,61,126,.057),0 14px 42px rgba(153,132,211,.052),inset 0 1px 0 rgba(255,255,255,.46); }
.solution-hero-product__ai header { display: flex; align-items: center; gap: 8px; margin-bottom: 10px; }
.solution-hero-product__ai header > i { width: 25px; height: 25px; display: grid; place-items: center; color: #765be2; border-radius: 8px; background: #eee8ff; }
.solution-hero-product__ai header svg { width: 15px; height: 15px; }
.solution-hero-product__ai header strong { color: #554174; font-size: 14px; }
.solution-hero-product__ai header span { margin-left: auto; color: #a095b0; font-size: 7px; }
.solution-hero-product__ai > div { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; }
.solution-hero-product__ai > div span { min-width: 0; display: flex; align-items: center; gap: 7px; padding: 7px 8px; color: #53645f; font-size: 9px; border-radius: 9px; background: rgba(246,247,250,.86); }
.solution-hero-product__workflow-shell { position: absolute; right: .8%; bottom: -4.6%; width: 60%; z-index: 3; padding: 6px; border: 1px solid rgba(255,255,255,.28); border-radius: 20px; background: linear-gradient(145deg,rgba(215,238,232,.42),rgba(222,239,240,.31)); box-shadow: 0 19px 44px rgba(34,79,65,.043),0 11px 36px rgba(100,176,160,.035),inset 0 1px 0 rgba(255,255,255,.4); animation: solution-product-rise .62s .25s cubic-bezier(.2,.75,.25,1) both; }
.solution-hero-product__workflow { width: 100%; height: 100%; padding: 10px 13px; border: 1px solid rgba(255,255,255,.66); border-radius: 14px; background: linear-gradient(145deg,rgba(241,248,246,.81),rgba(232,243,239,.75)); box-shadow: inset 0 1px 0 rgba(255,255,255,.55),0 3px 10px rgba(40,76,66,.022); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); }
.solution-hero-product__workflow > strong { display: block; margin-bottom: 7px; color: #557068; font-size: 8px; }
.solution-hero-product__workflow > div { display: flex; align-items: center; gap: 5px; }
.solution-hero-product__workflow span { flex: 1; padding: 5px 4px; color: #60736d; font-size: 7px; font-weight: 700; text-align: center; white-space: nowrap; border-radius: 999px; background: #eff6f3; }
.solution-hero-product__workflow span.is-active { color: #644fbe; background: #eee8ff; }
.solution-hero-product__workflow i { width: 10px; height: 1px; flex: 0 0 10px; background: rgba(83,109,101,.24); }

@keyframes solution-product-rise { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: translateY(0); } }
@keyframes solution-ai-rise { from { opacity: 0; transform: translate(-10px,12px); } to { opacity: 1; transform: translate(0,0); } }
@keyframes solution-bar-grow { from { opacity: .35; transform: scaleY(0); } to { opacity: 1; transform: scaleY(1); } }

@media (prefers-reduced-motion: reduce) {
  .solution-hero-product__dashboard-shell,.solution-hero-product__ai-shell,.solution-hero-product__workflow-shell,.solution-hero-product__bars i { animation: none; transition: none; }
  .solution-hero-product:hover .solution-hero-product__dashboard-shell,.solution-hero-product:hover .solution-hero-product__ai-shell { transform: none; }
}

.solution-challenge-band { padding: 72px 0 68px; background: #fbfcfa; }
.solution-challenge-band__head { max-width: 820px; margin: 0 0 34px; text-align: left; }
.solution-challenge-band__head .solutions-v2-kicker { margin-bottom: 14px; }
.solution-challenge-band__head h2 { margin: 0; color: #103f32; font-size: clamp(34px,3.35vw,44px); line-height: 1.15; letter-spacing: -.045em; }
.solution-challenge-band__intro { max-width: 720px; margin: 14px 0 0; color: #60736b; font-size: 16px; line-height: 1.7; }
.solution-challenge-band__grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 18px; }
.solution-challenge-card { min-width: 0; min-height: 164px; display: flex; flex-direction: column; align-items: flex-start; padding: 23px 24px; border: 1px solid rgba(35,82,68,.075); border-radius: 24px; box-shadow: 0 10px 26px rgba(16,40,28,.045); transition: transform 220ms ease,border-color 220ms ease,box-shadow 220ms ease; }
.solution-challenge-card--mint { background: #f0f8f4; }
.solution-challenge-card--blue { background: #f2f7fb; }
.solution-challenge-card--violet { background: #f6f3fb; }
.solution-challenge-card--lime { background: #f8f8ef; }
.solution-challenge-card > span { display: inline-flex; align-items: center; justify-content: center; min-width: 34px; padding: 5px 8px; color: #66887b; border-radius: 999px; background: rgba(255,255,255,.58); font-size: 10px; font-weight: 800; letter-spacing: .08em; }
.solution-challenge-card--blue > span { color: #66809a; }
.solution-challenge-card--violet > span { color: #7b7098; }
.solution-challenge-card--lime > span { color: #7a8058; }
.solution-challenge-card h3 { margin: 15px 0 0; color: #164a3a; font-size: 23px; line-height: 1.25; letter-spacing: -.025em; }
.solution-challenge-card p { margin: 9px 0 0; color: #60746c; font-size: 15px; line-height: 1.62; }
@media (hover:hover) and (pointer:fine) {
  .solution-challenge-card:hover { transform: translateY(-3px); border-color: rgba(35,82,68,.15); box-shadow: 0 15px 32px rgba(16,40,28,.07); }
}

.solutions-v2-section { padding: 116px 0; }
.solutions-v2-head { max-width: 860px; margin-bottom: 48px; }
.solutions-v2-head--center { margin-inline: auto; text-align: center; }
.solutions-v2-head h2 { margin: 0; color: #103f32; font-size: clamp(40px, 4.4vw, 58px); line-height: 1.13; letter-spacing: -.05em; }
.solutions-v2-head > p:last-child { max-width: 830px; margin: 21px 0 0; color: #60736b; font-size: 17px; line-height: 1.8; }
.solutions-v2-head--center > p:last-child { margin-inline: auto; }

.solutions-v2-scenes { background: #fff; }
.solution-scene-tabs { width: fit-content; max-width: 100%; display: flex; gap: 8px; margin: 0 auto 38px; padding: 6px; overflow-x: auto; scrollbar-width: none; border: 1px solid rgba(31,83,67,.08); border-radius: 999px; background: #f3f6f2; }
.solution-scene-tabs::-webkit-scrollbar { display: none; }
.solution-scene-tab { flex: 0 0 auto; min-height: 44px; padding: 0 21px; border: 0; border-radius: 999px; color: #50675f; background: transparent; cursor: pointer; transition: color 180ms ease, background 180ms ease, box-shadow 180ms ease; }
.solution-scene-tab.is-active { color: #fff; background: #174f3e; box-shadow: 0 9px 22px rgba(23,79,62,.18); }
.solution-scene-tab:focus-visible { outline: 3px solid rgba(75,151,126,.22); outline-offset: 2px; }
.solution-scene-stage { position: relative; min-height: 580px; }
.solution-scene-panel { min-height: 580px; display: grid; grid-template-columns: minmax(0, .78fr) minmax(480px, 1.22fr); gap: 62px; align-items: center; padding: 50px 52px; overflow: hidden; border: 1px solid rgba(31,85,68,.08); border-radius: 34px; background: radial-gradient(circle at 100% 100%, rgba(87,203,168,.15), transparent 43%), #f7faf7; opacity: 0; transform: translateY(8px); transition: opacity 220ms ease, transform 220ms ease; }
.solution-scene-panel[hidden] { display: none !important; }
.solution-scene-panel[data-solution-scene-panel="repeat"] { background: radial-gradient(circle at 100% 100%, rgba(59,188,180,.16), transparent 45%), #f3faf8; }
.solution-scene-panel[data-solution-scene-panel="disconnected"] { background: radial-gradient(circle at 100% 100%, rgba(77,158,205,.17), transparent 45%), #f3f8fb; }
.solution-scene-panel[data-solution-scene-panel="ai"] { background: radial-gradient(circle at 100% 100%, rgba(125,99,192,.16), transparent 45%), #f7f5fb; }
.solution-scene-panel.is-active { opacity: 1; transform: none; }
.solution-scene-panel__copy { min-width: 0; }
.solution-scene-panel__index { margin: 0 0 30px; color: #7b9389; font-size: 12px; font-weight: 800; letter-spacing: .14em; }
.solution-scene-panel__copy h3 { margin: 0; color: #153f33; font-size: clamp(31px, 3.2vw, 44px); line-height: 1.18; letter-spacing: -.04em; }
.solution-scene-panel__copy > p:not(.solution-scene-panel__index) { margin: 20px 0 0; color: #5b6f67; font-size: 16px; line-height: 1.82; }
.solution-scene-panel__benefits { display: flex; flex-wrap: wrap; gap: 9px 15px; margin-top: 26px; }
.solution-scene-panel__benefits span { display: inline-flex; align-items: center; gap: 7px; color: #496159; font-size: 13px; }
.solution-scene-panel__benefits i { width: 17px; height: 17px; display: inline-grid; place-items: center; border-radius: 50%; background: #dff0e8; }
.solution-scene-panel__benefits i::after { content: ""; width: 5px; height: 3px; border-left: 1.5px solid #27745c; border-bottom: 1.5px solid #27745c; transform: rotate(-45deg) translateY(-1px); }
.solution-scene-panel__copy > strong { display: block; margin-top: 27px; color: #215d49; font-size: 15px; }
.solution-scene-panel__copy > a { display: inline-flex; align-items: center; gap: 7px; margin-top: 20px; color: #1b664e; font-size: 14px; font-weight: 760; }
.solution-scene-panel__copy > a span { transition: transform 180ms ease; }
.solution-scene-panel__copy > a:hover span { transform: translateX(4px); }
.solution-scene-panel__visual { min-width: 0; }
.solution-scene-visual { position: relative; min-height: 430px; overflow: hidden; border: 1px solid rgba(30,84,67,.08); border-radius: 28px; background: rgba(255,255,255,.8); box-shadow: 0 18px 46px rgba(30,76,61,.075); }
.scene-workbench__top { height: 58px; display: flex; align-items: center; justify-content: space-between; padding: 0 22px; border-bottom: 1px solid rgba(31,82,66,.07); }
.scene-workbench__top strong { color: #214d40; font-size: 14px; }
.scene-workbench__top span { display: flex; align-items: center; gap: 6px; color: #71867e; font-size: 10px; }
.scene-workbench__top span i { width: 6px; height: 6px; border-radius: 50%; background: #4dc19c; }
.scene-workbench__flow { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; padding: 34px 22px 27px; }
.scene-workbench__flow span { min-width: 0; min-height: 128px; display: grid; align-content: space-between; padding: 15px 12px; border: 1px solid rgba(29,81,64,.08); border-radius: 15px; background: #f7f9f7; }
.scene-workbench__flow span.is-done { background: #eff8f4; }
.scene-workbench__flow span.is-active { border-color: rgba(155,184,48,.28); background: #f2f7d8; box-shadow: 0 10px 25px rgba(119,147,34,.08); }
.scene-workbench__flow i { color: #91a19b; font-size: 9px; font-style: normal; }
.scene-workbench__flow b { color: #234b3f; font-size: 13px; }
.scene-workbench__flow small { color: #7b8d86; font-size: 9px; }
.scene-workbench__summary { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 9px; padding: 0 22px 22px; }
.scene-workbench__summary span { padding: 13px 14px; border-radius: 13px; background: #f3f6f4; }
.scene-workbench__summary small, .scene-workbench__summary b { display: block; }
.scene-workbench__summary small { color: #8a9a94; font-size: 9px; }
.scene-workbench__summary b { margin-top: 5px; color: #33594d; font-size: 11px; }
.scene-automation__status { height: 70px; display: flex; align-items: center; justify-content: space-between; padding: 0 26px; border-bottom: 1px solid rgba(31,82,66,.07); }
.scene-automation__status span { display: flex; align-items: center; gap: 8px; color: #245c4a; font-size: 13px; font-weight: 700; }
.scene-automation__status span i { width: 8px; height: 8px; border-radius: 50%; background: #35b596; box-shadow: 0 0 0 5px rgba(53,181,150,.1); }
.scene-automation__status small { color: #84958f; font-size: 10px; }
.scene-automation__flow { min-height: 250px; display: flex; align-items: center; justify-content: center; gap: 8px; padding: 20px; }
.scene-automation__flow > span { width: 112px; min-height: 132px; display: grid; align-content: center; justify-items: center; padding: 14px 8px; border: 1px solid rgba(27,88,69,.08); border-radius: 18px; text-align: center; background: #f7faf9; }
.scene-automation__flow > span.is-active { color: #fff; background: #248476; box-shadow: 0 14px 28px rgba(36,132,118,.2); }
.scene-automation__flow > span i { width: 36px; height: 36px; display: grid; place-items: center; border-radius: 11px; color: #288773; background: #e4f4ee; }
.scene-automation__flow > span.is-active i { color: #fff; background: rgba(255,255,255,.16); }
.scene-automation__flow svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 1.7; }
.scene-automation__flow b { margin-top: 11px; font-size: 12px; }
.scene-automation__flow small { margin-top: 4px; color: #82938d; font-size: 8px; }
.scene-automation__flow > span.is-active small { color: rgba(255,255,255,.68); }
.scene-automation__flow em { color: #91a59d; font-size: 13px; font-style: normal; }
.scene-automation__log { height: 61px; display: grid; grid-template-columns: 48px 1fr auto; align-items: center; gap: 12px; margin: 0 24px 23px; padding: 0 17px; border-radius: 13px; background: #f1f7f4; }
.scene-automation__log span, .scene-automation__log small { color: #84958f; font-size: 9px; }
.scene-automation__log b { color: #31584c; font-size: 11px; }
.solution-scene-visual--integration { background: linear-gradient(135deg, #f3f8fb, #eff9f5 58%, #f4f0fa); }
.scene-integration__glow { position: absolute; left: 50%; top: 50%; width: 240px; height: 210px; transform: translate(-50%,-50%); border-radius: 50%; background: radial-gradient(circle, rgba(89,183,162,.18), transparent 67%); }
.scene-integration__hub { position: absolute; z-index: 2; left: 50%; top: 50%; width: 112px; height: 112px; display: grid; place-content: center; justify-items: center; transform: translate(-50%,-50%); border-radius: 31px; color: #fff; background: linear-gradient(145deg,#347d69,#1c5948); box-shadow: 0 17px 36px rgba(27,83,66,.2); }
.scene-integration__hub svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.6; }
.scene-integration__hub b { margin-top: 7px; font-size: 13px; }
.scene-integration__hub small { margin-top: 3px; color: rgba(255,255,255,.66); font-size: 8px; }
.scene-integration__app { position: absolute; width: 132px; display: flex; align-items: center; gap: 10px; padding: 11px 12px; border: 1px solid rgba(37,80,67,.07); border-radius: 15px; background: rgba(255,255,255,.9); box-shadow: 0 10px 23px rgba(43,75,67,.07); }
.scene-integration__app > i { width: 30px; height: 30px; display: grid; place-items: center; flex: 0 0 30px; border-radius: 9px; color: #34735f; font-size: 11px; font-style: normal; font-weight: 800; background: #eaf5ef; }
.scene-integration__app b, .scene-integration__app small { display: block; }
.scene-integration__app b { color: #36584e; font-size: 11px; }
.scene-integration__app small { margin-top: 3px; color: #84968f; font-size: 8px; }
.scene-integration__app small em { width: 5px; height: 5px; display: inline-block; margin-right: 4px; border-radius: 50%; background: #48ba96; }
.scene-integration__app--erp { left: 7%; top: 11%; }
.scene-integration__app--crm { right: 7%; top: 12%; }
.scene-integration__app--finance { left: 4%; top: 43%; }
.scene-integration__app--wecom { right: 4%; top: 43%; }
.scene-integration__app--feishu { left: 13%; bottom: 10%; }
.scene-integration__app--sheet { right: 12%; bottom: 10%; }
.scene-integration__app--crm > i, .scene-integration__app--feishu > i { color: #347ca3; background: #e7f2f8; }
.scene-integration__app--finance > i { color: #6d59a6; background: #eeebf8; }
.scene-integration__app--wecom > i, .scene-integration__app--sheet > i { color: #19857a; background: #def3ed; }
.solution-scene-visual--ai { display: grid; grid-template-columns: 1fr 130px 1fr; gap: 22px; align-items: center; padding: 36px; background: linear-gradient(135deg,#f2f8f5,#f5f1fb); }
.scene-ai__column { min-width: 0; display: grid; gap: 9px; }
.scene-ai__column > small { margin-bottom: 6px; color: #82948d; font-size: 10px; font-weight: 750; letter-spacing: .1em; }
.scene-ai__column span { padding: 12px 13px; border: 1px solid rgba(40,82,69,.07); border-radius: 12px; color: #405d54; font-size: 11px; background: rgba(255,255,255,.76); }
.scene-ai__column--result span { color: #5d4e8b; background: rgba(244,241,252,.88); }
.scene-ai__engine { min-height: 196px; display: flex; align-content: center; align-items: center; justify-content: center; flex-wrap: wrap; gap: 6px; padding: 19px 12px; border-radius: 28px; color: #fff; text-align: center; background: linear-gradient(150deg,#6f5db0,#417f92); box-shadow: 0 18px 35px rgba(92,72,155,.2); }
.scene-ai__engine i, .scene-ai__engine strong { width: 100%; }
.scene-ai__engine i { display: grid; place-items: center; }
.scene-ai__engine svg { width: 26px; height: 26px; fill: none; stroke: currentColor; stroke-width: 1.6; }
.scene-ai__engine strong { font-size: 14px; }
.scene-ai__engine span { padding: 5px 7px; border-radius: 999px; color: rgba(255,255,255,.82); font-size: 8px; background: rgba(255,255,255,.12); }

.solutions-v2-feishu { overflow: hidden; background: radial-gradient(circle at 87% 20%,rgba(125,184,227,.1),transparent 27%),linear-gradient(135deg,#f1f8f5 0%,#eef7f7 58%,#f4f6fa 100%); }
.solutions-feishu-layout { display: grid; grid-template-columns: minmax(0,.66fr) minmax(640px,1fr); gap: 64px; align-items: start; }
.solutions-feishu-copy { align-self: start; }
.solutions-feishu-copy h2 { max-width: 510px; margin: 18px 0 22px; color: #123f32; font-size: clamp(36px,3.5vw,50px); line-height: 1.14; letter-spacing: -.055em; }
.solutions-feishu-copy p { margin: 0; color: #5c7068; font-size: 16px; line-height: 1.86; }
.solutions-feishu-copy p + p { margin-top: 14px; }
.solutions-feishu-copy strong { display: flex; gap: 10px; align-items: flex-start; margin-top: 22px; color: #1b5d48; font-size: 15px; line-height: 1.65; }
.solutions-feishu-copy strong::before { content: ""; width: 9px; height: 9px; flex: 0 0 9px; margin-top: .48em; border-radius: 50%; background: var(--lime-strong); box-shadow: 0 0 0 6px rgba(216,240,107,.2); }
.solutions-feishu-switcher { min-width: 0; overflow-anchor: none; }
.solutions-feishu-tabs { display: flex; gap: 5px; margin-bottom: 24px; padding: 5px; overflow-x: auto; border: 1px solid rgba(255,255,255,.82); border-radius: 16px; background: rgba(255,255,255,.46); scrollbar-width: none; }
.solutions-feishu-tabs::-webkit-scrollbar { display: none; }
.solutions-feishu-tab { min-width: max-content; flex: 1 0 auto; padding: 10px 12px; border: 0; border-radius: 11px; color: #61766f; font: inherit; font-size: 11px; font-weight: 650; white-space: nowrap; background: transparent; cursor: pointer; transition: color 220ms ease,background 220ms ease,box-shadow 220ms ease; }
.solutions-feishu-tab:hover { color: #174f40; background: rgba(255,255,255,.58); }
.solutions-feishu-tab.is-active { color: #fff; background: #1c604c; box-shadow: 0 8px 18px rgba(21,82,63,.14); }
.solutions-feishu-stage { position: relative; min-height: 530px; padding: 8px; overflow: visible; border-radius: 32px; background: transparent; box-shadow: none; isolation: isolate; }
.solutions-feishu-stage::before { content: ""; position: absolute; z-index: 0; inset: -18px -24px -48px; border: 1px solid rgba(255,255,255,.88); border-radius: 34px; background: radial-gradient(circle at 14% 18%,rgba(188,239,222,.42),transparent 40%),radial-gradient(circle at 86% 78%,rgba(220,211,255,.4),transparent 42%),linear-gradient(135deg,rgba(244,251,248,.94),rgba(241,246,255,.94)); box-shadow: 0 28px 70px rgba(32,78,66,.07),0 8px 24px rgba(120,115,175,.05); }
.solutions-feishu-scene { position: relative; z-index: 1; min-height: 514px; padding: 27px; border: 1.5px solid rgba(255,255,255,.96); border-radius: 25px; background: linear-gradient(145deg,rgba(247,251,249,.93),rgba(242,248,251,.91) 60%,rgba(248,245,251,.88)); box-shadow: inset 0 1px 0 rgba(255,255,255,.65); opacity: 0; transform: translateY(6px); }
.solutions-feishu-scene.is-active { opacity: 1; transform: translateY(0); transition: opacity 300ms ease,transform 300ms ease; }
.solutions-feishu-scene > header { min-height: 80px; }
.solutions-feishu-scene > header h3 { margin: 0; color: #174a3d; font-size: 25px; line-height: 1.25; letter-spacing: -.035em; }
.solutions-feishu-scene > header p { margin: 10px 0 0; color: #71847e; font-size: 12px; line-height: 1.6; }
.feishu-dashboard-scene,.feishu-automation-scene,.feishu-apaas-scene,.feishu-open-scene { min-height: 342px; margin-top: 20px; border: 1px solid rgba(255,255,255,.92); border-radius: 19px; background: rgba(255,255,255,.62); box-shadow: 0 13px 30px rgba(38,76,65,.04); }
.solutions-feishu-stage:has(#feishu-scene-table.is-active) { min-height: 0; padding: 0; background: transparent; box-shadow: none; }
.solutions-feishu-stage:has(#feishu-scene-table.is-active)::before { content: none; }
#feishu-scene-table { min-height: 0; padding: 18px 0 0; overflow: visible; border-color: transparent; background: transparent; box-shadow: none; }
#feishu-scene-table > header { min-height: 64px; padding: 0 2px; }
#feishu-scene-table > header p { margin-top: 7px; }
.table-visual-stage { position: relative; margin-top: 30px; padding-bottom: 58px; overflow: visible; }
.table-screenshot-frame { position: relative; width: calc(100% - 40px); margin: 0 auto; padding: 16px; border: 1px solid rgba(255,255,255,.96); border-radius: 30px; background: linear-gradient(135deg,rgba(213,243,234,.72),rgba(229,222,252,.68)); box-shadow: 0 24px 58px rgba(28,73,61,.08),0 6px 18px rgba(113,101,169,.05); }
.table-screenshot-viewport { position: relative; margin: 0; overflow: hidden; aspect-ratio: 1.72; border-radius: 22px; background: #f7f8fa; box-shadow: inset 0 1px 0 rgba(255,255,255,.62); }
.table-screenshot { position: absolute; left: 0; top: 0; width: 142.9%; max-width: none; height: auto; display: block; transform: translate(-24.4%,-9%); filter: saturate(.99) contrast(1.018); }
.field-shortcut-panel { position: absolute; z-index: 3; left: -8px; bottom: 16px; width: 143px; margin: 0; overflow: hidden; aspect-ratio: .782; border: 1px solid rgba(255,255,255,.94); border-radius: 25px; background: rgba(249,249,252,.94); box-shadow: 0 18px 40px rgba(47,52,75,.11),0 5px 16px rgba(85,72,128,.07),inset 0 1px 0 rgba(255,255,255,.72); }
.field-shortcut-panel img { position: absolute; left: 0; top: 0; width: 510.3%; max-width: none; height: auto; display: block; transform: translate(-4.36%,-50.3%); }
.solutions-feishu-stage:has(#feishu-scene-dashboard.is-active) { min-height: 0; padding: 0; background: transparent; box-shadow: none; }
.solutions-feishu-stage:has(#feishu-scene-dashboard.is-active)::before { content: none; }
#feishu-scene-dashboard { min-height: 0; padding: 18px 0 0; border-color: transparent; background: transparent; box-shadow: none; }
#feishu-scene-dashboard > header { min-height: 64px; padding: 0 2px; }
#feishu-scene-dashboard > header p { margin-top: 7px; }
.dashboard-visual-shell { position: relative; margin: 7px -14px 0; padding: 48px 0 48px; overflow: visible; background: radial-gradient(circle at 15% 17%,rgba(202,239,228,.62),transparent 36%),radial-gradient(circle at 84% 78%,rgba(224,215,249,.56),transparent 40%),radial-gradient(circle at 50% 48%,rgba(232,242,249,.58),transparent 58%); isolation: isolate; }
.dashboard-visual-shell::before { content: none; }
.dashboard-visual-main { position: relative; z-index: 1; width: 94%; margin: 0 auto; padding: 11px; border: 1px solid rgba(255,255,255,.94); border-radius: 29px; background: linear-gradient(135deg,rgba(214,243,234,.78),rgba(229,234,251,.72) 55%,rgba(235,226,250,.68)); box-shadow: 0 24px 58px rgba(28,73,61,.09),0 7px 20px rgba(93,80,145,.07); }
.dashboard-visual-frame { position: relative; overflow: hidden; margin: 0; aspect-ratio: 2048 / 909; border: 1px solid rgba(255,255,255,.2); border-radius: 20px; background: #15161a; box-shadow: inset 0 1px 0 rgba(255,255,255,.18); }
.dashboard-visual-frame::after { content: ""; position: absolute; inset: 0; border-radius: inherit; box-shadow: inset 0 1px 0 rgba(255,255,255,.28); pointer-events: none; }
.dashboard-visual-image { width: 100%; height: 100%; display: block; object-fit: cover; filter: contrast(1.025) saturate(1.02); }
.dashboard-visual-addons { position: absolute; z-index: 3; inset: 0; pointer-events: none; }
.dashboard-addon { position: absolute; width: 25%; min-width: 0; min-height: 108px; padding: 12px 13px; overflow: hidden; border: 1px solid rgba(255,255,255,.78); border-radius: 25px; color: #f2f3f8; background: linear-gradient(145deg,#1c1e25,#171920); box-shadow: 0 18px 42px rgba(25,30,42,.15),0 6px 18px rgba(95,80,145,.08),0 0 24px rgba(222,232,255,.08),inset 0 1px 0 rgba(255,255,255,.06); pointer-events: auto; }
.dashboard-addon--donut { left: -4%; bottom: 0; }
.dashboard-addon--scatter { right: -4%; top: -32px; }
.dashboard-addon > header { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.dashboard-addon > header strong { font-size: 10px; letter-spacing: .01em; }
.dashboard-addon > header small { color: #818590; font-size: 7px; }
.dashboard-addon__donut-body { display: flex; align-items: center; gap: 13px; margin-top: 8px; }
.dashboard-addon__donut { position: relative; width: 64px; height: 64px; flex: 0 0 64px; display: grid; place-items: center; border-radius: 50%; background: conic-gradient(#655fe8 0 53%,#7e3fc7 53% 82%,#43a8cc 82% 100%); }
.dashboard-addon__donut::after { content: ""; position: absolute; inset: 11px; border-radius: 50%; background: #1b1d24; }
.dashboard-addon__donut span { position: relative; z-index: 1; text-align: center; }
.dashboard-addon__donut b,.dashboard-addon__donut small { display: block; }
.dashboard-addon__donut b { font-size: 17px; line-height: 1; }
.dashboard-addon__donut small { margin-top: 3px; color: #838895; font-size: 6px; }
.dashboard-addon__legend { min-width: 0; display: grid; gap: 6px; }
.dashboard-addon__legend span { color: #a4a8b2; font-size: 7px; white-space: nowrap; }
.dashboard-addon__legend i { width: 5px; height: 5px; display: inline-block; margin-right: 5px; border-radius: 50%; background: #655fe8; }
.dashboard-addon__legend span:nth-child(2) i { background: #7e3fc7; }
.dashboard-addon__legend span:nth-child(3) i { background: #43a8cc; }
.dashboard-addon--scatter svg { width: 100%; height: 78px; display: block; margin-top: 2px; overflow: visible; }
.dashboard-scatter__grid path { fill: none; stroke: rgba(149,156,173,.13); stroke-width: 1; }
.dashboard-scatter__dots circle { fill: #736af1; opacity: .88; stroke: rgba(174,223,235,.56); stroke-width: 1; }
.dashboard-scatter__dots circle:nth-child(2n) { fill: #4bb5d4; }
.dashboard-scatter__dots circle:nth-child(3n) { fill: #925ad5; }
.dashboard-addon--scatter text { fill: #6f7480; font-size: 6px; }
.dashboard-visual-status { position: absolute; z-index: 4; left: 50%; top: 14px; display: inline-flex; align-items: center; gap: 6px; padding: 5px 9px; border: 1px solid rgba(255,255,255,.88); border-radius: 999px; color: #547069; font-size: 8px; font-weight: 700; background: rgba(249,252,251,.78); box-shadow: 0 7px 18px rgba(33,71,61,.05); backdrop-filter: blur(9px); transform: translateX(-50%); }
.dashboard-visual-status i { width: 6px; height: 6px; border-radius: 50%; background: #65c7a5; box-shadow: 0 0 0 4px rgba(101,199,165,.14); }
.solutions-feishu-stage:has(#feishu-scene-apaas.is-active) { min-height: 0; padding: 0; background: transparent; box-shadow: none; }
.solutions-feishu-stage:has(#feishu-scene-apaas.is-active)::before { content: none; }
#feishu-scene-apaas { min-height: 0; padding: 18px 0 0; overflow: visible; border-color: transparent; background: transparent; box-shadow: none; }
#feishu-scene-apaas > header { min-height: 64px; padding: 0 2px; }
#feishu-scene-apaas > header p { margin-top: 7px; }
.apaas-visual-shell { position: relative; margin: 7px -44px 0; padding: 22px 0 24px; overflow: visible; background: radial-gradient(circle at 15% 19%,rgba(199,239,227,.61),transparent 36%),radial-gradient(circle at 84% 76%,rgba(225,216,249,.56),transparent 40%),radial-gradient(circle at 50% 49%,rgba(231,241,250,.6),transparent 58%); isolation: isolate; }
.apaas-visual-composition { position: relative; width: 94%; margin: 0 auto; }
.apaas-screenshot-card { position: relative; z-index: 1; margin: 0; padding: 7px; overflow: hidden; border: 1px solid rgba(255,255,255,.96); border-radius: 30px; background: linear-gradient(135deg,rgba(215,243,235,.78),rgba(229,234,251,.72) 55%,rgba(236,227,250,.68)); box-shadow: 0 25px 60px rgba(28,73,61,.09),0 7px 21px rgba(93,80,145,.07); }
.apaas-screenshot-card img { width: 100%; aspect-ratio: 2.12 / 1; display: block; object-fit: cover; object-position: center top; border-radius: 22px; filter: contrast(1.012) saturate(.99); }
.feishu-dashboard-scene { display: grid; grid-template-columns: .8fr 1.15fr .9fr; gap: 9px; padding: 10px; }
.feishu-dashboard-scene > section { min-width: 0; padding: 15px; border-radius: 14px; background: rgba(247,250,249,.86); }
.feishu-dashboard-scene > section > strong { color: #345f52; font-size: 11px; }
.feishu-dashboard-scene > section > span { position: relative; display: block; margin-top: 12px; padding-left: 13px; color: #536f66; font-size: 9px; }
.feishu-dashboard-scene > section > span i { position: absolute; left: 0; top: 3px; width: 6px; height: 6px; border-radius: 50%; background: #77c9ad; }
.feishu-dashboard-scene > section > span small { display: block; margin-top: 3px; color: #96a59f; font-size: 7px; }
.feishu-dashboard-scene__metrics { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; margin-top: 13px; }
.feishu-dashboard-scene__metrics span { padding: 11px 9px; border-radius: 10px; background: linear-gradient(145deg,#edf6f2,#eef3fa); }
.feishu-dashboard-scene__metrics small,.feishu-dashboard-scene__metrics b { display: block; }
.feishu-dashboard-scene__metrics small { color: #7a8d86; font-size: 7px; }
.feishu-dashboard-scene__metrics b { margin-top: 5px; color: #27594b; font-size: 18px; }
.feishu-dashboard-scene__trend > div { height: 170px; display: flex; align-items: flex-end; gap: 8px; margin-top: 17px; padding: 12px 8px 0; border-bottom: 1px solid rgba(49,89,77,.08); }
.feishu-dashboard-scene__trend i { height: var(--height); flex: 1; border-radius: 6px 6px 1px 1px; background: linear-gradient(180deg,#9f8be1,#70b9c9); animation: feishu-bar-in 520ms var(--delay) both; transform-origin: bottom; }
.feishu-dashboard-scene__trend > small { display: block; margin-top: 9px; color: #8c9b96; font-size: 7px; text-align: center; }
.solutions-feishu-stage:has(#feishu-scene-automation.is-active) { min-height: 0; padding: 0; background: transparent; box-shadow: none; }
.solutions-feishu-stage:has(#feishu-scene-automation.is-active)::before { content: none; }
#feishu-scene-automation { min-height: 0; padding: 18px 0 0; border-color: transparent; background: transparent; box-shadow: none; }
#feishu-scene-automation > header { min-height: 64px; padding: 0 2px; }
#feishu-scene-automation > header p { margin-top: 7px; }
.feishu-workflow-canvas { position: relative; height: 286px; margin: 7px -14px 0; overflow: hidden; border: 1px solid rgba(255,255,255,.9); border-radius: 28px; background: radial-gradient(circle at 11% 15%,rgba(201,241,227,.66),transparent 34%),radial-gradient(circle at 83% 84%,rgba(224,215,250,.52),transparent 40%),linear-gradient(135deg,rgba(240,249,246,.94),rgba(237,245,251,.91)); box-shadow: 0 19px 46px rgba(31,74,62,.055),inset 0 1px 0 rgba(255,255,255,.7); }
.feishu-workflow-canvas__status { position: absolute; z-index: 3; top: 13px; right: 16px; display: flex; align-items: center; gap: 8px; padding: 5px 8px; border: 1px solid rgba(255,255,255,.9); border-radius: 999px; color: #668078; font-size: 6px; background: rgba(255,255,255,.58); }
.feishu-workflow-canvas__status span { display: flex; align-items: center; gap: 5px; color: #356d5d; font-weight: 700; }
.feishu-workflow-canvas__status i { width: 5px; height: 5px; border-radius: 50%; background: #58b995; box-shadow: 0 0 0 3px rgba(88,185,149,.12); }
.feishu-workflow-canvas__status small { color: #8b9c96; font-size: inherit; }
.feishu-workflow-connectors { position: absolute; z-index: 1; inset: 0; width: 100%; height: 100%; overflow: visible; pointer-events: none; }
.feishu-workflow-connectors > path { fill: none; stroke: rgba(72,126,111,.43); stroke-width: 1.25; stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: 7 8; marker-end: url(#workflow-arrow); animation: feishu-workflow-flow 8s linear infinite; vector-effect: non-scaling-stroke; }
.feishu-workflow-connectors marker path { fill: #6b9b8e; }
.feishu-workflow-branch { position: absolute; z-index: 3; padding: 3px 6px; border: 1px solid rgba(255,255,255,.9); border-radius: 999px; color: #778b85; font-size: 5.5px; line-height: 1; background: rgba(250,252,251,.82); box-shadow: 0 4px 10px rgba(38,75,65,.045); }
.feishu-workflow-branch--yes { left: 73.2%; top: 72px; }
.feishu-workflow-branch--no { left: 61.7%; top: 145px; transform: translateX(-50%); }
.feishu-workflow-node { position: absolute; z-index: 2; width: 21.5%; min-height: 80px; padding: 9px 11px; border: 1px solid rgba(255,255,255,.98); border-radius: 17px; background: rgba(255,255,255,.72); box-shadow: 0 9px 22px rgba(35,77,65,.05),inset 0 1px 0 rgba(255,255,255,.78); transition: transform 180ms ease,box-shadow 180ms ease,border-color 180ms ease; }
.feishu-workflow-node:hover { border-color: rgba(255,255,255,1); box-shadow: 0 12px 28px rgba(35,77,65,.075),inset 0 1px 0 #fff; transform: translateY(-2px); }
.feishu-workflow-node > header { display: flex; align-items: center; justify-content: space-between; gap: 6px; }
.feishu-workflow-node > header span { color: #77928a; font-size: 5.5px; font-weight: 800; letter-spacing: .08em; }
.feishu-workflow-node > header small { position: relative; padding-left: 7px; color: #81938d; font-size: 5.5px; }
.feishu-workflow-node > header small::before { content: ""; position: absolute; left: 0; top: 50%; width: 4px; height: 4px; border-radius: 50%; background: #72bea5; transform: translateY(-50%); }
.feishu-workflow-node strong,.feishu-workflow-node p { display: block; }
.feishu-workflow-node strong { margin-top: 8px; overflow: hidden; color: #315f53; font-size: 10px; line-height: 1.2; text-overflow: ellipsis; white-space: nowrap; }
.feishu-workflow-node p { margin: 4px 0 0; overflow: hidden; color: #82948e; font-size: 6.5px; line-height: 1.25; text-overflow: ellipsis; white-space: nowrap; }
.feishu-workflow-node--source { left: 2.5%; top: 50px; background: linear-gradient(145deg,rgba(237,249,244,.93),rgba(247,251,249,.78)); }
.feishu-workflow-node--trigger { left: 27%; top: 50px; background: linear-gradient(145deg,rgba(238,247,253,.94),rgba(247,250,252,.78)); }
.feishu-workflow-node--condition { left: 51.5%; top: 50px; background: linear-gradient(145deg,rgba(245,241,253,.95),rgba(249,248,252,.78)); }
.feishu-workflow-node--approval { right: 2.5%; top: 50px; background: linear-gradient(145deg,rgba(248,250,226,.95),rgba(250,251,244,.8)); }
.feishu-workflow-node--sync { left: 2.5%; top: 180px; background: linear-gradient(145deg,rgba(239,241,253,.94),rgba(247,248,252,.8)); }
.feishu-workflow-node--message { left: 27%; top: 180px; background: linear-gradient(145deg,rgba(236,249,247,.94),rgba(247,251,250,.8)); }
.feishu-workflow-node--update { left: 51.5%; top: 180px; background: linear-gradient(145deg,rgba(234,249,248,.94),rgba(246,251,250,.8)); }
@keyframes feishu-workflow-flow { to { stroke-dashoffset: -60; } }
.feishu-apaas-scene { display: grid; grid-template-columns: .68fr 1.3fr .9fr; overflow: hidden; }
.feishu-apaas-scene nav { padding: 18px 12px; background: rgba(225,239,246,.62); }
.feishu-apaas-scene nav strong,.feishu-apaas-scene nav span { display: block; }
.feishu-apaas-scene nav strong { margin: 0 8px 15px; color: #365c51; font-size: 11px; }
.feishu-apaas-scene nav span { margin-top: 5px; padding: 9px 8px; border-radius: 8px; color: #70827c; font-size: 8px; }
.feishu-apaas-scene nav span.is-active { color: #285c4d; background: rgba(255,255,255,.76); }
.feishu-apaas-scene > section { padding: 18px 14px; }
.feishu-apaas-scene > section > header { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.feishu-apaas-scene > section > header strong { color: #385e53; font-size: 11px; }
.feishu-apaas-scene > section > header span { padding: 6px 8px; border-radius: 7px; color: #fff; font-size: 7px; background: #2a725d; }
.feishu-apaas-scene__list { margin-top: 15px; }
.feishu-apaas-scene__list span { display: block; padding: 12px; border: 1px solid rgba(46,88,75,.055); border-radius: 10px; background: rgba(248,250,249,.8); }
.feishu-apaas-scene__list span + span { margin-top: 7px; }
.feishu-apaas-scene__list b,.feishu-apaas-scene__list small { display: block; }
.feishu-apaas-scene__list b { color: #4a675f; font-size: 9px; }
.feishu-apaas-scene__list small { margin-top: 5px; color: #8d9a96; font-size: 7px; }
.feishu-apaas-scene aside { padding: 18px 14px; border-left: 1px solid rgba(49,89,77,.06); background: rgba(242,239,249,.48); }
.feishu-apaas-scene aside > small,.feishu-apaas-scene aside > strong,.feishu-apaas-scene aside > span { display: block; }
.feishu-apaas-scene aside > small { color: #899792; font-size: 7px; }
.feishu-apaas-scene aside > strong { margin-top: 7px; color: #3f6258; font-size: 11px; }
.feishu-apaas-scene dl { margin: 17px 0; }
.feishu-apaas-scene dl div { display: flex; justify-content: space-between; gap: 8px; padding: 8px 0; border-bottom: 1px solid rgba(56,92,81,.06); }
.feishu-apaas-scene dt,.feishu-apaas-scene dd { color: #768883; font-size: 7px; }
.feishu-apaas-scene dd { margin: 0; color: #506b63; }
.feishu-apaas-scene aside > span { color: #336c5c; font-size: 8px; }
.solutions-feishu-stage:has(#feishu-scene-open.is-active) { min-height: 0; padding: 0; background: transparent; box-shadow: none; }
.solutions-feishu-stage:has(#feishu-scene-open.is-active)::before { content: none; }
#feishu-scene-open { min-height: 0; padding: 18px 0 10px; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
#feishu-scene-open > header { min-height: 0; padding: 0 2px; }
#feishu-scene-open > header p { margin-top: 7px; }
.feishu-open-scene { display: grid; grid-template-columns: minmax(0,1.62fr) 36px minmax(132px,.82fr) 36px minmax(112px,.68fr); align-items: center; gap: 10px; min-height: 272px; margin-top: 28px; padding: 24px 28px; border: 1px solid rgba(255,255,255,.65); border-radius: 28px; background: radial-gradient(ellipse at 6% 10%,rgba(160,226,206,.52),transparent 46%),radial-gradient(circle at 50% 38%,rgba(183,224,240,.3),transparent 48%),radial-gradient(ellipse at 94% 88%,rgba(204,190,244,.48),transparent 47%),linear-gradient(135deg,rgba(231,247,241,.94) 0%,rgba(230,242,249,.92) 52%,rgba(239,233,248,.92) 100%); box-shadow: inset 0 1px 0 rgba(255,255,255,.38); }
.feishu-open-scene__sources > header { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 8px; }
.feishu-open-scene__sources > header strong { color: #315f52; font-size: 10px; }
.feishu-open-scene__sources > header small { color: #899a94; font-size: 7px; }
.feishu-open-scene__sources > div { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 6px; }
.feishu-open-node { display: grid; grid-template-columns: 27px minmax(0,1fr); grid-template-rows: auto auto; align-items: center; column-gap: 7px; min-height: 42px; padding: 6px 8px; border: 1px solid rgba(255,255,255,.98); border-radius: 15px; background: rgba(255,255,255,.7); box-shadow: 0 7px 18px rgba(33,79,66,.045),inset 0 1px 0 rgba(255,255,255,.82); }
.feishu-open-node--wide { grid-column: 1 / -1; }
.feishu-open-node > i { grid-row: 1 / 3; display: grid; width: 27px; height: 27px; place-items: center; overflow: hidden; border-radius: 9px; background: rgba(240,247,245,.9); }
.feishu-open-node img { display: block; width: 21px; height: 21px; object-fit: contain; }
.feishu-open-node--yonyou img { width: 25px; height: 17px; }
.feishu-open-node b { align-self: end; color: #365f54; font-size: 9px; line-height: 1.15; }
.feishu-open-node small { align-self: start; margin-top: 2px; color: #8b9a95; font-size: 6px; line-height: 1.2; }
.feishu-open-node__glyph { color: #47776a; font-size: 11px; font-style: normal; font-weight: 750; background: linear-gradient(145deg,#e7f5ef,#edf1fb) !important; }
.feishu-open-connector { position: relative; display: block; height: 1px; background: linear-gradient(90deg,rgba(90,151,132,.16),rgba(97,143,150,.55),rgba(116,117,169,.18)); }
.feishu-open-connector i { position: absolute; top: 50%; right: -1px; display: grid; width: 18px; height: 18px; place-items: center; border: 1px solid rgba(255,255,255,.95); border-radius: 50%; color: #638b80; font-size: 15px; font-style: normal; line-height: 1; background: rgba(247,251,250,.9); box-shadow: 0 4px 12px rgba(41,79,68,.06); transform: translate(50%,-50%); }
.feishu-open-scene__bridge,.feishu-open-scene__feishu { padding: 17px 10px; border: 1px solid rgba(255,255,255,.98); border-radius: 18px; text-align: center; background: rgba(255,255,255,.68); box-shadow: 0 10px 25px rgba(42,74,66,.05),inset 0 1px 0 rgba(255,255,255,.85); }
.feishu-open-scene__bridge > small,.feishu-open-scene__bridge > strong,.feishu-open-scene__bridge span,.feishu-open-scene__feishu strong,.feishu-open-scene__feishu small,.feishu-open-scene__feishu span { display: block; }
.feishu-open-scene__bridge > small { color: #879891; font-size: 6px; }
.feishu-open-scene__bridge > strong { margin-top: 5px; color: #62588f; font-size: 10px; }
.feishu-open-scene__bridge > div { display: grid; gap: 4px; margin-top: 10px; }
.feishu-open-scene__bridge span { padding: 5px 4px; border-radius: 999px; color: #667d76; font-size: 6px; background: rgba(235,242,247,.76); }
.feishu-open-scene__feishu img { width: 39px; height: 39px; border-radius: 11px; }
.feishu-open-scene__feishu strong { margin-top: 8px; color: #315f52; font-size: 12px; }
.feishu-open-scene__feishu small { margin-top: 3px; color: #697e77; font-size: 7px; }
.feishu-open-scene__feishu span { margin-top: 10px; padding-top: 8px; border-top: 1px solid rgba(55,94,81,.07); color: #91a09b; font-size: 6px; }
@keyframes feishu-bar-in { from { transform: scaleY(0); opacity: .2; } to { transform: scaleY(1); opacity: 1; } }

.solutions-v2-tech { background: #fbfaf6; }
.solution-tech-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); grid-auto-rows: 284px; gap: 22px; }
.solution-tech-card { --tech-accent: #258a70; --tech-accent-rgb: 37,138,112; position: relative; min-width: 0; overflow: hidden; padding: 26px 28px; border: 1px solid rgba(20,45,35,.065); border-radius: 28px; box-shadow: 0 10px 30px rgba(20,45,35,.03); isolation: isolate; transition: transform 200ms ease-out,box-shadow 200ms ease-out,border-color 200ms ease-out; }
.solution-tech-card::after { content: ""; position: absolute; width: 180px; height: 180px; right: -96px; top: -102px; z-index: 0; border-radius: 50%; background: rgba(255,255,255,.32); pointer-events: none; }
.solution-tech-card--mint { background: radial-gradient(circle at 88% 90%,rgba(107,199,166,.2),transparent 44%),#f2f9f6; }
.solution-tech-card--cyan { --tech-accent: #168b91; --tech-accent-rgb: 22,139,145; background: radial-gradient(circle at 88% 90%,rgba(100,198,205,.2),transparent 44%),#f0f9fa; }
.solution-tech-card--blue { --tech-accent: #3e77a8; --tech-accent-rgb: 62,119,168; background: radial-gradient(circle at 88% 90%,rgba(128,178,226,.21),transparent 44%),#f2f7fc; }
.solution-tech-card--purple { --tech-accent: #7258a9; --tech-accent-rgb: 114,88,169; background: radial-gradient(circle at 88% 90%,rgba(171,145,224,.2),transparent 44%),#f7f4fc; }
.solution-tech-card--lime { --tech-accent: #647f2f; --tech-accent-rgb: 100,127,47; background: radial-gradient(circle at 88% 90%,rgba(179,206,96,.2),transparent 44%),#f6faef; }
.solution-tech-card--warm { --tech-accent: #557b6d; --tech-accent-rgb: 85,123,109; background: radial-gradient(circle at 88% 90%,rgba(132,179,155,.18),transparent 44%),#f8f6f1; }
.solution-tech-card__copy { position: relative; z-index: 2; }
.solution-tech-card__title { display: flex; align-items: center; gap: 12px; }
.solution-tech-card__icon { width: 46px; height: 46px; flex: 0 0 46px; display: grid; place-items: center; color: var(--tech-accent); border: 1px solid rgba(var(--tech-accent-rgb),.11); border-radius: 14px; background: rgba(255,255,255,.42); box-shadow: inset 0 1px 0 rgba(255,255,255,.66); }
.solution-tech-card__icon svg { width: 24px; height: 24px; display: block; }
.solution-tech-card__copy h3 { margin: 0; color: #173f33; font-size: 25px; font-weight: 700; line-height: 1.2; letter-spacing: -.025em; }
.solution-tech-card__copy > p { max-width: 100%; margin: 12px 0 0; color: #587068; font-size: 15px; line-height: 1.65; }
.solution-tech-card__tags { max-width: 100%; display: flex; flex-wrap: wrap; gap: 6px; margin-top: 10px; }
.solution-tech-card__tags span { padding: 5px 9px; border: 1px solid rgba(44,82,70,.06); border-radius: 999px; color: #667b73; font-size: 9px; line-height: 1; background: rgba(255,255,255,.34); }
.tech-visual { position: absolute; z-index: 1; right: 28px; bottom: 18px; left: 28px; height: 84px; padding: 0; overflow: visible; border: 0; background: transparent; }
.tech-model__node,.tech-workflow__steps span,.tech-connect__map span,.tech-knowledge__pipeline span,.tech-agent__map span { min-width: 0; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.8); border-radius: 11px; color: #526b62; font-size: 9px; font-weight: 700; text-align: center; background: rgba(255,255,255,.7); box-shadow: 0 6px 16px rgba(35,76,63,.025); }
.tech-model__links { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; }
.tech-model__links path { fill: none; stroke: rgba(var(--tech-accent-rgb),.24); stroke-width: 1.2; vector-effect: non-scaling-stroke; }
.tech-model__node { position: absolute; min-width: 60px; min-height: 32px; padding-inline: 9px; }
.tech-model__node--customer { left: 2%; top: 4px; }
.tech-model__node--order { right: 2%; top: 4px; }
.tech-model__node--project { left: 50%; bottom: 0; transform: translateX(-50%); }
.tech-model__node--rule { left: 50%; top: 0; transform: translateX(-50%); }
.tech-model__node.is-active,.tech-workflow__steps span.is-active { color: #fff; border-color: transparent; background: var(--tech-accent); box-shadow: 0 8px 20px rgba(var(--tech-accent-rgb),.12); }
.tech-workflow__steps { height: 100%; display: flex; align-items: center; }
.tech-workflow__steps span { min-height: 34px; flex: 1; padding-inline: 7px; }
.tech-workflow__steps > i,.tech-connect__map > i,.tech-knowledge__pipeline > i,.tech-agent__map i { height: 1px; flex: 0 0 22px; background: rgba(var(--tech-accent-rgb),.25); }
.tech-connect__map,.tech-knowledge__pipeline { height: 100%; display: grid; grid-template-columns: minmax(0,.7fr) 34px 70px 34px minmax(74px,.48fr); align-items: center; gap: 5px; }
.tech-connect__map > div,.tech-knowledge__pipeline > div { display: grid; gap: 5px; }
.tech-connect__map span,.tech-knowledge__pipeline span { min-height: 23px; padding: 4px 7px; font-size: 8px; }
.tech-connect__map > strong,.tech-knowledge__pipeline > strong { min-height: 56px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.72); border-radius: 14px; color: #fff; font-size: 11px; text-align: center; background: var(--tech-accent); box-shadow: 0 8px 20px rgba(var(--tech-accent-rgb),.1); }
.tech-connect__map > .tech-connect__sync { min-height: 38px; color: #42698d; font-size: 10px; }
.tech-knowledge__pipeline { grid-template-columns: minmax(0,.68fr) 32px 70px 32px minmax(70px,.5fr); }
.tech-knowledge__pipeline > span { min-height: 38px; color: #675c8e; font-size: 10px; }
.tech-agent__map { position: relative; height: 84px; display: flex; align-items: flex-end; justify-content: center; }
.tech-agent__map > .tech-agent__skill { position: absolute; left: 50%; top: 0; min-width: 64px; min-height: 27px; transform: translateX(-50%); color: #617444; }
.tech-agent__map > .tech-agent__skill::after { content: ""; position: absolute; left: 50%; top: 100%; width: 1px; height: 13px; background: rgba(var(--tech-accent-rgb),.25); }
.tech-agent__map > div { display: flex; align-items: center; justify-content: center; }
.tech-agent__map > div span { width: 72px; min-height: 31px; }
.tech-agent__map strong { width: 82px; min-height: 43px; display: grid; place-items: center; border-radius: 14px; color: #fff; font-size: 10px; background: var(--tech-accent); box-shadow: 0 8px 20px rgba(var(--tech-accent-rgb),.12); }
.tech-dashboard__kpis { position: absolute; left: 0; top: 10px; width: 34%; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 7px; }
.tech-dashboard__kpis span { min-height: 48px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.78); border-radius: 12px; background: rgba(255,255,255,.66); }
.tech-dashboard__kpis b { color: #3d6156; font-size: 15px; }
.tech-dashboard__chart { position: absolute; top: 2px; right: 0; bottom: 0; width: 59%; }
.tech-dashboard__chart > div { position: absolute; inset: 7px 8px 5px; display: flex; align-items: end; gap: 11px; border-bottom: 1px solid rgba(55,88,78,.09); }
.tech-dashboard__chart > div i { height: var(--height); flex: 1; border-radius: 4px 4px 1px 1px; background: rgba(var(--tech-accent-rgb),.35); }
.tech-dashboard__chart svg { position: absolute; inset: 2px 6px 0; width: calc(100% - 12px); height: calc(100% - 2px); overflow: visible; }
.tech-dashboard__chart polyline { fill: none; stroke: rgba(var(--tech-accent-rgb),.7); stroke-width: 1.6; vector-effect: non-scaling-stroke; }
@media (hover:hover) and (pointer:fine) { .solution-tech-card:hover { box-shadow: 0 16px 38px rgba(20,45,35,.05); transform: translateY(-2px); } }

.solutions-v2-cases { background: #edf5ef; }
.solutions-v2-cases__head { display: flex; align-items: end; justify-content: space-between; gap: 32px; margin-bottom: 43px; }
.solutions-v2-cases__head .solutions-v2-head { margin-bottom: 0; }
.solutions-v2-case-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.solutions-v2-case-card { height: 445px; background: #fff; }
.solutions-v2-case-card .case-body { padding-bottom: 13px; }
.solutions-v2-case-card .case-body > p { height: 2.9em; min-height: 2.9em; -webkit-line-clamp: 2; }
.solutions-v2-case-tags { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 10px; }
.solutions-v2-case-tags span { padding: 4px 7px; border-radius: 999px; color: #587067; font-size: 8px; background: #edf4f0; }

.solution-guide { padding: 92px 0 104px; background: #f7f8f5; }
.solution-guide__intro { max-width: 980px; margin-bottom: 42px; }
.solution-guide__intro .solutions-v2-kicker { margin-bottom: 12px; }
.solution-guide__intro h2 { margin: 0; color: #101613; font-size: clamp(44px,4.4vw,60px); line-height: 1.08; letter-spacing: -.055em; }
.solution-guide__intro > p:last-child { max-width: 840px; margin: 18px 0 0; color: #65736e; font-size: 18px; line-height: 1.75; }
.solution-guide__grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; }
.solution-guide-card { min-height: 0; padding: 34px 38px; border: 1px solid #e7eae5; border-radius: 24px; background: #fff; box-shadow: 0 12px 34px rgba(32,55,47,.035); }
.solution-guide-card h3 { margin: 0 0 20px; color: #111713; font-size: 24px; line-height: 1.25; letter-spacing: -.035em; }
.solution-guide-card ol { display: grid; gap: 13px; margin: 0; padding: 0; list-style: none; }
.solution-guide-card li { display: grid; grid-template-columns: 25px minmax(0,1fr); align-items: start; gap: 12px; }
.solution-guide-card li > span { width: 25px; height: 25px; display: grid; place-items: center; margin-top: 1px; border-radius: 50%; color: #167c54; font-size: 11px; font-weight: 750; line-height: 1; background: #e6f6ed; }
.solution-guide-card--dots li > span { width: 7px; height: 7px; margin: 9px 9px 0; background: #1fb96e; }
.solution-guide-card--3 li > span { background: #dceefe; }
.solution-guide-card--4 li > span { background: #f4dfaa; }
.solution-guide-card li p { margin: 0; color: #55655f; font-size: 15px; line-height: 1.68; }
.solution-guide__warning,.solution-guide__result { margin-top: 28px; padding: 45px 48px 47px; border-radius: 25px; }
.solution-guide__warning { color: #fff; background: #101412; box-shadow: 0 18px 40px rgba(16,20,18,.1); }
.solution-guide__warning h3,.solution-guide__result h3 { margin: 0; font-size: 28px; line-height: 1.25; letter-spacing: -.035em; }
.solution-guide__warning p { max-width: 1040px; margin: 18px 0 0; color: #d4dcd8; font-size: 16px; line-height: 1.82; }
.solution-guide__result { border: 1px solid #d9eadf; background: #eef8f1; }
.solution-guide__result h3 { color: #14271f; }
.solution-guide__result p { max-width: 1020px; margin: 18px 0 0; color: #53675f; font-size: 16px; line-height: 1.82; }
.solution-guide__result a { display: inline-flex; align-items: center; gap: 7px; margin-top: 25px; color: #16834f; font-size: 15px; font-weight: 750; border-bottom: 1px solid currentColor; }
.solution-guide__result a span { transition: transform 180ms ease; }
.solution-guide__result a:hover span { transform: translateX(4px); }
.solution-guide-faq { padding: 72px 0 58px; }
.solution-guide-faq > header { margin-bottom: 22px; }
.solution-guide-faq > header .solutions-v2-kicker { margin-bottom: 10px; }
.solution-guide-faq h2 { margin: 0; color: #101613; font-size: clamp(40px,4.6vw,58px); line-height: 1.08; letter-spacing: -.05em; }
.solution-guide-faq__item { border-top: 1px solid #dfe4df; }
.solution-guide-faq__item:last-child { border-bottom: 1px solid #dfe4df; }
.solution-guide-faq__item summary { min-height: 70px; display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 0 4px; color: #18211d; cursor: pointer; list-style: none; font-size: 18px; font-weight: 680; }
.solution-guide-faq__item summary::-webkit-details-marker { display: none; }
.solution-guide-faq__item summary > span { display: flex; align-items: center; gap: 18px; }
.solution-guide-faq__item summary b { color: #829089; font-size: 10px; letter-spacing: .08em; }
.solution-guide-faq__item summary i { position: relative; width: 24px; height: 24px; flex: 0 0 24px; border-radius: 50%; background: #e7f4ea; }
.solution-guide-faq__item summary i::before,.solution-guide-faq__item summary i::after { content: ""; position: absolute; left: 50%; top: 50%; width: 10px; height: 1.5px; border-radius: 2px; background: #16834f; transform: translate(-50%,-50%); transition: transform 180ms ease; }
.solution-guide-faq__item summary i::after { transform: translate(-50%,-50%) rotate(90deg); }
.solution-guide-faq__item[open] summary i::after { transform: translate(-50%,-50%) rotate(0); }
.solution-guide-faq__item > p { max-width: 880px; margin: -2px 0 22px 36px; color: #61706a; font-size: 15px; line-height: 1.75; }
.solution-guide-cta { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: end; gap: 44px; padding: 28px 42px; border: 1px solid #e4e8e3; border-radius: 28px; background: #fff; box-shadow: 0 18px 44px rgba(33,58,49,.045); }
.solution-guide-cta > div { max-width: 760px; }
.solution-guide-cta .solutions-v2-kicker { margin-bottom: 12px; }
.solution-guide-cta h2 { margin: 0; color: #11241d; font-size: clamp(34px,3.8vw,48px); line-height: 1.14; letter-spacing: -.05em; }
.solution-guide-cta > div > p:last-child { max-width: 690px; margin: 12px 0 0; color: #61716b; font-size: 16px; line-height: 1.75; }
.solution-guide-cta nav { display: flex; align-items: center; justify-content: flex-end; gap: 12px; }
.solution-guide-cta .button { white-space: nowrap; }

@media (max-width: 1080px) {
  .solutions-v2-hero__grid { grid-template-columns: minmax(0,.9fr) minmax(480px,1.1fr); gap: 32px; }
  .solutions-v2-hero h1 { font-size: clamp(44px,4.55vw,50px); }
  .solutions-v2-hero__visual { padding-left: 0; }
  .solution-scene-panel { grid-template-columns: minmax(0,.85fr) minmax(420px,1.15fr); gap: 38px; padding: 42px; }
  .solutions-feishu-layout { grid-template-columns: minmax(0,.76fr) minmax(520px,1.24fr); gap: 44px; }
}

@media (max-width: 960px) {
  .solutions-v2-hero { padding: 88px 0 80px; }
  .solutions-v2-hero__grid { grid-template-columns: 1fr; }
  .solutions-v2-hero__copy { max-width: 820px; }
  .solutions-v2-hero h1 { width: auto; max-width: 760px; }
  .solutions-v2-hero__visual { padding-left: 0; }
  .solution-hero-product { width: min(100%,720px); justify-self: start; }
  .solutions-v2-section { padding: 92px 0; }
  .solution-scene-panel { grid-template-columns: 1fr; gap: 36px; }
  .solution-scene-panel__copy { max-width: 760px; }
  .solutions-feishu-layout { grid-template-columns: 1fr; }
  .solutions-feishu-copy { max-width: 760px; }
  .solutions-feishu-switcher { width: min(100%,760px); }
  .solution-tech-card--model, .solution-tech-card--knowledge, .solution-tech-card--agent, .solution-tech-card--workflow, .solution-tech-card--connect, .solution-tech-card--dashboard { grid-column: auto; }
  .solutions-v2-case-card { height: auto; }
}

@media (max-width: 760px) {
  .solution-tech-grid { grid-template-columns: 1fr; grid-auto-rows: auto; }
  .solution-tech-card--model, .solution-tech-card--knowledge, .solution-tech-card--agent, .solution-tech-card--workflow, .solution-tech-card--connect, .solution-tech-card--dashboard { grid-column: auto; min-height: 320px; }
  .solutions-v2-case-grid { grid-template-columns: 1fr; }
  .solutions-v2-cases__head { align-items: flex-start; flex-direction: column; }
  .solution-challenge-band__grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
  .solution-challenge-card { min-height: 156px; padding: 21px 22px; }
}

@media (max-width: 640px) {
  .solutions-v2 .container { width: min(100% - 36px,1240px); }
  .solutions-v2-hero { padding: 64px 0 58px; }
  .solutions-v2-hero h1 { width: auto; max-width: none; font-size: 40px; line-height: 1.12; }
  .solutions-v2-hero h1 span { white-space: normal; }
  .solutions-v2-hero__copy > p:not(.solutions-v2-kicker) { margin-top: 22px; font-size: 16px; }
  .solutions-v2-hero__description { margin-top: 22px; font-size: 16px; }
  .solutions-v2-hero__description p + p { margin-top: 13px; }
  .solutions-v2-hero__actions { align-items: stretch; flex-direction: column; }
  .solutions-v2-hero__actions .button { width: 100%; justify-content: center; }
  .solutions-v2-hero__visual { padding-left: 0; }
  .solution-challenge-band { padding: 52px 0 48px; }
  .solution-challenge-band__head { margin-bottom: 24px; text-align: left; }
  .solution-challenge-band__head h2 { font-size: 31px; }
  .solution-challenge-card { min-height: 158px; padding: 20px; border-radius: 21px; }
  .solution-challenge-card h3 { margin-top: 13px; font-size: 20px; }
  .solution-challenge-card p { margin-top: 8px; font-size: 14px; line-height: 1.55; }
  .solution-hero-product { width: 100%; height: 520px; aspect-ratio: auto; overflow: hidden; border-radius: 26px; }
  .solution-hero-product__dashboard-shell { top: 12px; right: 6px; width: calc(100% - 12px); height: 354px; padding: 6px; border-radius: 23px; }
  .solution-hero-product__dashboard { padding: 12px; border-width: 1px; border-radius: 17px; }
  .solution-hero-product__topbar { height: 24px; padding-bottom: 8px; }
  .solution-hero-product__topbar strong { font-size: 13px; }
  .solution-hero-product__content { height: calc(100% - 30px); grid-template-columns: minmax(0,1.05fr) minmax(0,.8fr) minmax(0,.65fr); grid-template-rows: minmax(0,1.15fr) minmax(0,.85fr); gap: 7px; padding-top: 7px; }
  .solution-hero-product__table { padding: 8px; }
  .solution-hero-product__table { grid-column: 1 / 4; grid-row: 1; }
  .solution-hero-product__trend { grid-column: 1; grid-row: 2; }
  .solution-hero-product__completion { grid-column: 2; grid-row: 2; }
  .solution-hero-product__metric { grid-column: 3; grid-row: 2; }
  .solution-hero-product__table header,.solution-hero-product__trend header { margin-bottom: 8px; }
  .solution-hero-product__table header strong,.solution-hero-product__trend header strong { font-size: 10px; }
  .solution-hero-product__table header span,.solution-hero-product__trend header span { font-size: 6px; }
  .solution-hero-product__table-head { min-height: 21px; }
  .solution-hero-product__table-row { min-height: 24px; font-size: 7.5px; }
  .solution-hero-product__table-head { font-size: 7px; }
  .solution-hero-product__table-head span,.solution-hero-product__table-row > span { padding: 0 4px; }
  .solution-hero-product__table-row > span:last-child b { min-width: 30px; padding: 3px 4px; font-size: 5.5px; }
  .solution-hero-product__trend { padding: 8px 8px 6px; }
  .solution-hero-product__bars { gap: 4px; padding-inline: 2px; }
  .solution-hero-product__completion { grid-template-columns: 1fr; justify-items: center; gap: 5px; padding: 7px; text-align: center; }
  .solution-hero-product__completion > strong,.solution-hero-product__metric > strong { font-size: 7px; }
  .solution-hero-product__donut { width: 54px; }
  .solution-hero-product__donut::before { width: 36px; }
  .solution-hero-product__donut b { font-size: 12px; }
  .solution-hero-product__metric { padding: 8px; }
  .solution-hero-product__metric > b { font-size: 24px; }
  .solution-hero-product__ai-shell { left: 6px; bottom: 75px; width: 209px; padding: 6px; border-radius: 21px; }
  .solution-hero-product__ai { padding: 11px; border-width: 1px; border-radius: 15px; }
  .solution-hero-product__ai header { margin-bottom: 7px; }
  .solution-hero-product__ai header > i { width: 22px; height: 22px; }
  .solution-hero-product__ai header strong { font-size: 12px; }
  .solution-hero-product__ai > div { gap: 4px; }
  .solution-hero-product__ai > div span { gap: 5px; padding: 5px 6px; font-size: 7px; }
  .solution-hero-product__ai > div span:last-child { grid-column: 1 / 3; }
  .solution-hero-product__workflow-shell { display: block; left: 6px; right: 6px; bottom: 6px; width: auto; padding: 5px; border-radius: 18px; }
  .solution-hero-product__workflow { padding: 9px 10px; border-width: 1px; border-radius: 13px; }
  .solution-hero-product__workflow > strong { margin-bottom: 6px; }
  .solution-hero-product__workflow > div { gap: 4px; }
  .solution-hero-product__workflow span { padding: 5px 3px; font-size: 6px; }
  .solution-hero-product__workflow i { width: 7px; flex-basis: 7px; }
  .solutions-v2-section { padding: 72px 0; }
  .solutions-v2-head { margin-bottom: 34px; }
  .solutions-v2-head h2 { font-size: 35px; }
  .solutions-v2-head > p:last-child { margin-top: 17px; font-size: 15px; }
  .solution-scene-tabs { width: calc(100% + 18px); margin-left: 0; justify-content: flex-start; border-radius: 17px 0 0 17px; }
  .solution-scene-tab { padding: 0 17px; }
  .solution-scene-stage { min-height: 0; }
  .solution-scene-panel { min-height: 0; gap: 28px; padding: 25px 20px 20px; border-radius: 25px; }
  .solution-scene-panel__index { margin-bottom: 18px; }
  .solution-scene-panel__copy h3 { font-size: 31px; }
  .solution-scene-panel__copy > p:not(.solution-scene-panel__index) { font-size: 15px; }
  .solution-scene-panel__benefits { margin-top: 20px; }
  .solution-scene-visual { min-height: 360px; border-radius: 21px; }
  .scene-workbench__flow { grid-template-columns: repeat(5,90px); overflow: hidden; padding-inline: 15px; }
  .scene-workbench__summary { grid-template-columns: 1fr; padding-inline: 15px; }
  .solution-scene-visual--workbench { min-height: 470px; }
  .scene-automation__flow { min-height: 255px; justify-content: flex-start; gap: 6px; overflow: hidden; padding-inline: 13px; }
  .scene-automation__flow > span { width: 84px; min-height: 120px; flex: 0 0 84px; }
  .scene-automation__flow em { font-size: 10px; }
  .scene-automation__status { padding-inline: 16px; }
  .scene-automation__status small { display: none; }
  .scene-integration__app { width: 108px; gap: 6px; padding: 8px; }
  .scene-integration__app > i { width: 25px; height: 25px; flex-basis: 25px; }
  .scene-integration__hub { width: 90px; height: 90px; border-radius: 25px; }
  .scene-integration__app--erp, .scene-integration__app--finance { left: 3%; }
  .scene-integration__app--crm, .scene-integration__app--wecom { right: 3%; }
  .scene-integration__app--feishu { left: 5%; }
  .scene-integration__app--sheet { right: 5%; }
  .solution-scene-visual--ai { grid-template-columns: 1fr 82px 1fr; gap: 8px; padding: 18px 12px; }
  .scene-ai__engine { min-height: 170px; padding-inline: 6px; border-radius: 23px; }
  .scene-ai__column span { padding: 9px 8px; font-size: 9px; }
  .solutions-feishu-copy h2 { margin-top: 15px; font-size: 36px; }
  .solutions-feishu-tabs { width: calc(100% + 18px); margin-right: -18px; border-radius: 15px 0 0 15px; }
  .solutions-feishu-tab { flex: 0 0 auto; padding: 10px 15px; }
  .solutions-feishu-stage { min-height: 535px; padding: 5px; border-radius: 25px; }
  .solutions-feishu-stage::before { inset: -11px -8px -30px; border-radius: 25px; }
  .solutions-feishu-scene { min-height: 525px; padding: 18px; border-radius: 20px; }
  .solutions-feishu-scene > header { min-height: 96px; }
  .solutions-feishu-scene > header h3 { font-size: 23px; }
  .solutions-feishu-scene > header p { font-size: 11px; }
  .feishu-dashboard-scene,.feishu-automation-scene,.feishu-apaas-scene,.feishu-open-scene { min-height: 335px; margin-top: 14px; }
  .solutions-feishu-stage:has(#feishu-scene-table.is-active) { min-height: 0; }
  .solutions-feishu-stage:has(#feishu-scene-dashboard.is-active) { min-height: 0; padding: 0; }
  .solutions-feishu-stage:has(#feishu-scene-automation.is-active) { min-height: 0; padding: 0; }
  .solutions-feishu-stage:has(#feishu-scene-apaas.is-active) { min-height: 0; padding: 0; }
  .solutions-feishu-stage:has(#feishu-scene-open.is-active) { min-height: 0; }
  #feishu-scene-table { min-height: 0; padding-top: 14px; }
  #feishu-scene-table > header { min-height: 80px; padding-inline: 1px; }
  .table-visual-stage { margin-top: 24px; padding-bottom: 42px; }
  .table-screenshot-frame { width: calc(100% - 12px); padding: 7px; border-radius: 20px; }
  .table-screenshot-viewport { border-radius: 15px; }
  .table-screenshot { width: 142.9%; transform: translate(-24.4%,-9%); }
  .field-shortcut-panel { left: -2px; bottom: 9px; width: 82px; border-radius: 15px; box-shadow: 0 10px 24px rgba(47,52,75,.1),0 3px 10px rgba(85,72,128,.06); }
  #feishu-scene-dashboard { padding-top: 14px; }
  #feishu-scene-dashboard > header { min-height: 80px; padding-inline: 1px; }
  .dashboard-visual-shell { margin: 4px 0 0; padding: 17px 0 0; }
  .dashboard-visual-main { width: 100%; padding: 5px; border-radius: 19px; }
  .dashboard-visual-frame { border-radius: 14px; }
  .dashboard-visual-addons { position: relative; inset: auto; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 7px; margin-top: 10px; }
  .dashboard-addon { position: relative; inset: auto; width: auto; min-height: 92px; padding: 8px; border-radius: 13px; }
  .dashboard-addon > header strong { font-size: 8px; }
  .dashboard-addon > header small { font-size: 6px; }
  .dashboard-addon__donut-body { gap: 7px; margin-top: 7px; }
  .dashboard-addon__donut { width: 47px; height: 47px; flex-basis: 47px; }
  .dashboard-addon__donut::after { inset: 8px; }
  .dashboard-addon__donut b { font-size: 12px; }
  .dashboard-addon__legend { gap: 4px; }
  .dashboard-addon__legend span { font-size: 5px; }
  .dashboard-addon--scatter svg { height: 59px; }
  .dashboard-visual-status { top: -1px; padding: 5px 8px; font-size: 7px; }
  #feishu-scene-apaas { min-height: 0; padding-top: 14px; }
  #feishu-scene-apaas > header { min-height: 80px; padding-inline: 1px; }
  .apaas-visual-shell { margin: 4px 0 0; padding: 13px 0 15px; }
  .apaas-visual-composition { width: 100%; }
  .apaas-screenshot-card { padding: 5px; border-radius: 19px; }
  .apaas-screenshot-card img { aspect-ratio: 1.82 / 1; border-radius: 14px; }
  .feishu-dashboard-scene { grid-template-columns: .75fr 1.12fr .85fr; gap: 5px; padding: 6px; }
  .feishu-dashboard-scene > section { padding: 9px 6px; }
  .feishu-dashboard-scene > section > strong { font-size: 8px; }
  .feishu-dashboard-scene > section > span { margin-top: 10px; font-size: 7px; }
  .feishu-dashboard-scene__metrics { gap: 4px; }
  .feishu-dashboard-scene__metrics span { padding: 8px 5px; }
  .feishu-dashboard-scene__metrics b { font-size: 14px; }
  .feishu-dashboard-scene__trend > div { height: 160px; gap: 4px; padding-inline: 2px; }
  #feishu-scene-automation { min-height: 0; padding: 14px 0 0; }
  #feishu-scene-automation > header { min-height: 80px; padding-inline: 1px; }
  .feishu-workflow-canvas { display: grid; height: auto; min-height: 0; gap: 14px; margin: 4px 0 0; padding: 43px 12px 14px; overflow: hidden; border-radius: 20px; }
  .feishu-workflow-connectors,.feishu-workflow-branch { display: none; }
  .feishu-workflow-canvas__status { top: 11px; right: 12px; }
  .feishu-workflow-node,.feishu-workflow-node--source,.feishu-workflow-node--trigger,.feishu-workflow-node--condition,.feishu-workflow-node--approval,.feishu-workflow-node--sync,.feishu-workflow-node--message,.feishu-workflow-node--update { position: relative; inset: auto; width: auto; min-height: 68px; padding: 9px 11px; border-radius: 15px; }
  .feishu-workflow-node:not(.feishu-workflow-node--sync)::after { content: "↓"; position: absolute; left: 50%; bottom: -14px; color: #7f9c93; font-size: 9px; transform: translateX(-50%); }
  .feishu-workflow-node strong { font-size: 9px; }
  .feishu-workflow-node p { font-size: 6px; }
  .feishu-apaas-scene { grid-template-columns: .62fr 1.18fr .84fr; }
  .feishu-apaas-scene nav,.feishu-apaas-scene > section,.feishu-apaas-scene aside { padding: 12px 7px; }
  .feishu-apaas-scene nav strong { margin-inline: 3px; font-size: 8px; }
  .feishu-apaas-scene nav span { padding-inline: 4px; font-size: 6px; }
  .feishu-apaas-scene > section > header strong { font-size: 8px; }
  .feishu-apaas-scene > section > header span { display: none; }
  .feishu-apaas-scene__list span { padding: 9px 6px; }
  .feishu-apaas-scene__list b { font-size: 7px; }
  .feishu-apaas-scene aside > strong { font-size: 8px; }
  #feishu-scene-open { min-height: 0; padding: 14px 0 8px; }
  #feishu-scene-open > header { min-height: 0; padding-inline: 1px; }
  .feishu-open-scene { grid-template-columns: 1fr; gap: 10px; min-height: 0; margin-top: 22px; padding: 14px; border-radius: 22px; }
  .feishu-open-scene__sources > header { margin-bottom: 7px; }
  .feishu-open-scene__sources > div { gap: 5px; }
  .feishu-open-node { min-height: 40px; padding: 5px 7px; border-radius: 13px; }
  .feishu-open-node b { font-size: 8px; }
  .feishu-open-node small { font-size: 5.5px; }
  .feishu-open-connector { width: 1px; height: 14px; margin: -2px auto; background: linear-gradient(180deg,rgba(90,151,132,.14),rgba(97,143,150,.48),rgba(116,117,169,.14)); }
  .feishu-open-connector i { right: auto; top: auto; bottom: -2px; left: 50%; width: 16px; height: 16px; font-size: 13px; transform: translate(-50%,50%) rotate(90deg); }
  .feishu-open-scene__bridge,.feishu-open-scene__feishu { padding: 13px 10px; border-radius: 15px; }
  .feishu-open-scene__bridge > div { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 4px; margin-top: 8px; }
  .feishu-open-scene__bridge > strong { font-size: 9px; }
  .feishu-open-scene__feishu { display: grid; grid-template-columns: 34px 1fr; grid-template-rows: auto auto auto; column-gap: 9px; text-align: left; }
  .feishu-open-scene__feishu img { grid-row: 1 / 4; width: 34px; height: 34px; }
  .feishu-open-scene__feishu strong { margin-top: 0; font-size: 10px; }
  .feishu-open-scene__feishu small { margin-top: 1px; }
  .feishu-open-scene__feishu span { margin-top: 5px; padding-top: 5px; }
  .solution-tech-card { min-height: 320px; padding: 24px; border-radius: 26px; }
  .solution-tech-card__copy { max-width: 100%; }
  .solution-tech-card__title { gap: 10px; }
  .solution-tech-card__icon { width: 40px; height: 40px; flex-basis: 40px; border-radius: 12px; }
  .solution-tech-card__icon svg { width: 22px; height: 22px; }
  .solution-tech-card__copy h3 { font-size: 22px; }
  .solution-tech-card__copy > p,.solution-tech-card__tags { max-width: 100%; }
  .tech-visual,.solution-tech-card--model .tech-visual,.solution-tech-card--knowledge .tech-visual,.solution-tech-card--agent .tech-visual { right: 24px; bottom: 20px; left: 24px; width: auto; max-width: none; height: 100px; opacity: 1; }
  .solutions-v2-cases__head { gap: 18px; margin-bottom: 30px; }
  .solutions-v2-case-card .case-body > p { height: auto; min-height: 0; -webkit-line-clamp: 3; }
}

@media (max-width: 360px) {
  .solution-challenge-band__grid { grid-template-columns: 1fr; }
  .solution-challenge-card { min-height: 150px; }
  .dashboard-visual-addons { grid-template-columns: 1fr; }
}

@media (max-width: 960px) {
  .solution-guide { padding: 76px 0 86px; }
  .solution-guide__intro { margin-bottom: 36px; }
  .solution-guide-card { min-height: 0; padding: 32px; }
  .solution-guide-cta { grid-template-columns: 1fr; align-items: start; gap: 28px; padding: 30px; }
  .solution-guide-cta nav { justify-content: flex-start; }
}

@media (max-width: 760px) {
  .solution-guide__grid { grid-template-columns: 1fr; gap: 16px; }
  .solution-guide-card { min-height: 0; }
}

@media (max-width: 640px) {
  .solution-guide { padding: 58px 0 70px; }
  .solution-guide__intro { margin-bottom: 28px; }
  .solution-guide__intro h2 { font-size: 36px; line-height: 1.1; }
  .solution-guide__intro > p:last-child { margin-top: 16px; font-size: 15px; }
  .solution-guide-card { padding: 27px 24px 29px; border-radius: 21px; }
  .solution-guide-card h3 { margin-bottom: 23px; font-size: 22px; }
  .solution-guide-card ol { gap: 15px; }
  .solution-guide-card li { grid-template-columns: 23px minmax(0,1fr); gap: 10px; }
  .solution-guide-card li > span { width: 23px; height: 23px; }
  .solution-guide-card--dots li > span { width: 7px; height: 7px; margin-inline: 8px; }
  .solution-guide-card li p { font-size: 14px; }
  .solution-guide__warning,.solution-guide__result { margin-top: 18px; padding: 30px 25px 32px; border-radius: 22px; }
  .solution-guide__warning h3,.solution-guide__result h3 { font-size: 24px; }
  .solution-guide__warning p,.solution-guide__result p { margin-top: 15px; font-size: 14px; line-height: 1.75; }
  .solution-guide-faq { padding: 56px 0 42px; }
  .solution-guide-faq h2 { font-size: 39px; }
  .solution-guide-faq__item summary { min-height: 64px; gap: 14px; font-size: 16px; line-height: 1.4; }
  .solution-guide-faq__item summary > span { gap: 10px; }
  .solution-guide-faq__item summary b { display: none; }
  .solution-guide-faq__item summary i { width: 24px; height: 24px; flex-basis: 24px; }
  .solution-guide-faq__item > p { margin: -1px 32px 20px 0; font-size: 14px; }
  .solution-guide-cta { gap: 24px; padding: 26px 22px; border-radius: 23px; }
  .solution-guide-cta h2 { font-size: 32px; }
  .solution-guide-cta > div > p:last-child { margin-top: 13px; font-size: 14px; }
  .solution-guide-cta nav { align-items: stretch; flex-direction: column; width: 100%; }
  .solution-guide-cta .button { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  .solutions-feishu-scene,.solutions-feishu-tab,.feishu-dashboard-scene__trend i,.feishu-workflow-connectors > path { animation: none !important; transition: none !important; }
}

/* Homepage rhythm: keep the existing layouts and visuals, while reducing only
   vertical space in the four long-form showcase sections. */
.solution-section,
.home-cases,
.delivery-method { padding-block: 80px; }
.solution-section { padding-block: 75px; }
.home-cases { padding-block: 78px; }
.industry-section { padding-block: 90px; }
.solution-section .section-head,
.industry-section .section-head,
.home-cases .section-head,
.delivery-method .section-head { margin-bottom: 36px; }
.solution-section .section-head__copy > .home-label,
.industry-section .section-head__copy > .home-label,
.home-cases .section-head__copy > .home-label,
.delivery-method .section-head__copy > .home-label { margin-bottom: 16px; }
.solution-section .section-head__copy > .home-label + h2,
.industry-section .section-head__copy > .home-label + h2,
.home-cases .section-head__copy > .home-label + h2,
.delivery-method .section-head__copy > .home-label + h2 { margin-bottom: 16px; }

.solution-section .solution-grid { gap: 14px; }
.solution-section .solution-card { min-height: 340px; padding-block: 23px; }
.industry-section .industry-tabs { margin-bottom: 14px; }
.industry-section .industry-feature { min-height: 520px; }
.industry-section .industry-panel { padding-block: 38px; }

.home-cases .case-grid { align-items: stretch; grid-auto-rows: 1fr; row-gap: 14px; }
.home-cases .home-case-card { height: 356px; }
.home-cases .home-case-card__link { height: 100%; }
.home-cases .home-case-card .case-visual { height: 165px; aspect-ratio: auto; }
.home-cases .home-case-card .case-body { min-height: 0; padding: 10px 22px 14px; display: flex; flex-direction: column; }
.home-cases .home-case-card .case-industry { margin-bottom: 8px; }
.home-cases .home-case-card h3 { height: auto; min-height: 0; line-height: 1.2; -webkit-line-clamp: 2; }
.home-cases .home-case-card .case-body > p { height: 3.9em; min-height: 3.9em; margin: 16px 0 0; line-height: 1.3; -webkit-line-clamp: 3; }
.home-cases .home-case-card .case-logo { height: 54px; min-height: 54px; margin-top: auto; padding-top: 20px; display: flex; align-items: flex-end; flex: 0 0 54px; overflow: visible; }
.home-cases .home-case-card .case-logo__image { max-height: 30px; }
.home-cases .home-case-card .case-logo__image--nankai { width: 122px; }
.home-cases .home-case-card .case-logo__image--sunline { width: 128px; }
.home-cases .home-case-card .case-logo__image--meanew { width: 145px; }
.home-cases .home-case-card .case-logo-lockup { transform: scale(.78); transform-origin: left bottom; }

.delivery-method .method-timeline { margin: 40px 0 22px; }
.delivery-method .method-detail-shell { min-height: 510px; }
.delivery-method .method-card-grid { gap: 18px; }
.delivery-method .method-text-card { min-height: 240px; padding: 26px 32px 24px; }
.delivery-method .method-text-card ul,
.delivery-method .method-text-card ol { margin-top: 18px; gap: 9px; }
.delivery-method .method-principles { margin-top: 10px; padding-top: 10px; }

@media (min-width: 961px) {
  .solution-section .solution-card--integration > .solution-visual { min-height: 276px; }
  .solution-section .integration-cluster { height: 276px; }
  .solution-section .solution-visual--ai { min-height: 270px; }
}

@media (max-width: 960px) {
  .solution-section,
  .home-cases,
  .delivery-method { padding-block: 70px; }
  .industry-section { padding-block: 76px; }
  .solution-section .section-head,
  .industry-section .section-head,
  .home-cases .section-head,
  .delivery-method .section-head { margin-bottom: 38px; }
  .solution-section .section-head__copy > .home-label,
  .industry-section .section-head__copy > .home-label,
  .home-cases .section-head__copy > .home-label,
  .delivery-method .section-head__copy > .home-label,
  .solution-section .section-head__copy > .home-label + h2,
  .industry-section .section-head__copy > .home-label + h2,
  .home-cases .section-head__copy > .home-label + h2,
  .delivery-method .section-head__copy > .home-label + h2 { margin-bottom: 18px; }
  .solution-section .solution-card { min-height: 440px; padding-block: 24px; }
  .solution-section .solution-card--integration > .solution-visual { min-height: 300px; }
  .industry-section .industry-feature { min-height: 560px; }
  .industry-section .industry-panel { padding-block: 32px; }
  .home-cases .home-case-card { height: auto; }
  .home-cases .home-case-card .case-visual { height: auto; aspect-ratio: 16 / 7.2; }
  .home-cases .home-case-card .case-body { min-height: 190px; }
  .delivery-method .method-timeline { margin: 34px 0 22px; }
  .delivery-method .method-step { min-height: 72px; padding-bottom: 12px; }
  .delivery-method .method-detail-shell { min-height: 480px; }
  .delivery-method .method-text-card { min-height: 230px; padding: 28px 30px 26px; }
}

@media (max-width: 640px) {
  .solution-section,
  .home-cases,
  .delivery-method { padding-block: 56px; }
  .industry-section { padding-block: 60px; }
  .solution-section .section-head,
  .industry-section .section-head,
  .home-cases .section-head,
  .delivery-method .section-head { margin-bottom: 28px; }
  .solution-section .section-head__copy > .home-label,
  .industry-section .section-head__copy > .home-label,
  .home-cases .section-head__copy > .home-label,
  .delivery-method .section-head__copy > .home-label,
  .solution-section .section-head__copy > .home-label + h2,
  .industry-section .section-head__copy > .home-label + h2,
  .home-cases .section-head__copy > .home-label + h2,
  .delivery-method .section-head__copy > .home-label + h2 { margin-bottom: 16px; }
  .solution-section .solution-grid,
  .home-cases .case-grid { row-gap: 14px; }
  .solution-section .solution-card:nth-child(n) { min-height: 400px; padding-block: 22px; }
  .solution-section .solution-card--business-systems,
  .solution-section .solution-card--integration,
  .solution-section .solution-card--business-ai { min-height: 510px; }
  .solution-section .solution-card--integration > .solution-visual { min-height: 300px; }
  .industry-section .industry-tabs { margin-bottom: 12px; }
  .industry-section .industry-feature { min-height: 730px; }
  .industry-section .industry-panel { padding-block: 22px; gap: 18px; }
  .home-cases .home-case-card .case-body { min-height: 190px; }
  .delivery-method .method-timeline { margin: 28px 0 18px; }
  .delivery-method .method-step { min-height: 70px; }
  .delivery-method .method-detail-shell { min-height: 0; }
  .delivery-method .method-card-grid { gap: 9px; }
  .delivery-method .method-text-card { min-height: 0; padding: 22px 20px 20px; }
  .delivery-method .method-text-card ul,
  .delivery-method .method-text-card ol { margin-top: 16px; gap: 9px; }
}

/* Homepage solutions: restrained product cards with lightweight, native visuals. */
.solution-section .home-solution-card {
  --home-solution-accent: #167d67;
  --home-solution-accent-2: #38b58e;
  --home-solution-node: rgba(255,255,255,.68);
  min-height: 350px;
  padding: 30px 32px;
  border: 1px solid rgba(20,45,35,.075);
  border-radius: 30px;
  background: linear-gradient(145deg, #edf9f4 0%, #e0f3eb 100%);
  color: #123e32;
  box-shadow: 0 12px 34px rgba(20,45,35,.035);
  text-decoration: none;
  isolation: isolate;
  overflow: hidden;
}
.solution-section .home-solution-card::before {
  inset: 0;
  z-index: 0;
  opacity: 1;
  background: radial-gradient(circle at 92% 86%, color-mix(in srgb, var(--home-solution-accent-2) 18%, transparent) 0%, transparent 46%);
}
.solution-section .home-solution-card::after {
  content: "";
  position: absolute;
  width: 220px;
  height: 220px;
  right: -112px;
  top: -118px;
  z-index: 0;
  border-radius: 50%;
  background: rgba(255,255,255,.3);
  pointer-events: none;
}
.solution-section .home-solution-card.solution-card--business-systems {
  --home-solution-accent: #137c66;
  --home-solution-accent-2: #31bd90;
  background: linear-gradient(145deg, #effaf5 0%, #dff3e9 100%);
  border-color: rgba(23,112,87,.09);
}
.solution-section .home-solution-card.solution-card--automation {
  --home-solution-accent: #167f90;
  --home-solution-accent-2: #32c8c1;
  background: linear-gradient(145deg, #effbfa 0%, #dceff1 100%);
  border-color: rgba(24,125,142,.09);
}
.solution-section .home-solution-card.solution-card--integration {
  --home-solution-accent: #3b70b6;
  --home-solution-accent-2: #70bde8;
  background: linear-gradient(145deg, #f2f8fd 0%, #dfeafb 100%);
  border-color: rgba(58,106,171,.09);
}
.solution-section .home-solution-card.solution-card--business-ai {
  --home-solution-accent: #6957b8;
  --home-solution-accent-2: #a08ae7;
  background: linear-gradient(145deg, #f7f4fd 0%, #e8e3f7 100%);
  border-color: rgba(102,81,176,.09);
}
.solution-section .home-solution-card.solution-card--business-ai::before {
  background: radial-gradient(circle at 89% 82%, rgba(147,121,222,.2) 0%, transparent 47%), radial-gradient(circle at 65% 13%, rgba(189,240,100,.1) 0%, transparent 26%);
}
.home-solution-copy,
.home-solution-visual { position: relative; z-index: 1; }
.home-solution-copy { display: flex; min-width: 0; flex-direction: column; align-items: flex-start; }
.home-solution-icon {
  width: 52px;
  height: 52px;
  flex: 0 0 52px;
  display: grid;
  place-items: center;
  margin-bottom: 17px;
  border: 1px solid rgba(255,255,255,.5);
  border-radius: 16px;
  background: rgba(255,255,255,.28);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.56);
  transition: transform 250ms ease-out, filter 250ms ease-out;
}
.home-solution-icon svg { width: 44px; height: 44px; display: block; }
.solution-section .home-solution-card .home-solution-copy h3 {
  margin: 0 0 11px;
  color: #123e32;
  font-size: clamp(24px,2vw,27px);
  font-weight: 700;
  line-height: 1.22;
  letter-spacing: -.025em;
}
.solution-section .home-solution-card .home-solution-copy p {
  max-width: 370px;
  margin: 0;
  color: rgba(24,55,47,.72);
  font-size: 15px;
  line-height: 1.68;
  text-wrap: pretty;
}
.home-solution-tags { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 16px; }
.home-solution-tags span {
  min-height: 27px;
  display: inline-flex;
  align-items: center;
  padding: 4px 10px;
  border: 1px solid color-mix(in srgb, var(--home-solution-accent) 13%, transparent);
  border-radius: 999px;
  background: rgba(255,255,255,.37);
  color: color-mix(in srgb, var(--home-solution-accent) 84%, #18372f);
  font-size: 11px;
  font-weight: 650;
  letter-spacing: .015em;
  white-space: nowrap;
}
.home-solution-visual {
  min-width: 0;
  min-height: 118px;
  margin-top: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #1a493d;
}
.home-solution-visual em { color: color-mix(in srgb, var(--home-solution-accent) 48%, #638078); font-style: normal; font-size: 14px; }
.home-solution-object-flow,
.home-solution-flow { width: 100%; display: flex; align-items: center; justify-content: center; gap: 5px; }
.home-solution-object-flow > span,
.home-solution-flow > span {
  min-width: 52px;
  min-height: 50px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 5px;
  padding: 8px 9px;
  border: 1px solid rgba(255,255,255,.68);
  border-radius: 13px;
  background: var(--home-solution-node);
  box-shadow: 0 7px 18px rgba(30,81,65,.035), inset 0 1px 0 rgba(255,255,255,.55);
}
.home-solution-object-flow span i,
.home-solution-flow span i { width: 7px; height: 7px; border-radius: 50%; background: color-mix(in srgb, var(--home-solution-accent) 44%, white); }
.home-solution-object-flow b,
.home-solution-flow b { color: #244f44; font-size: 11px; line-height: 1.15; white-space: nowrap; }
.home-solution-object-flow small { color: rgba(31,70,60,.56); font-size: 8px; white-space: nowrap; }
.home-solution-object-flow > span.is-active,
.home-solution-flow > span.is-active {
  border-color: color-mix(in srgb, var(--home-solution-accent) 18%, transparent);
  background: color-mix(in srgb, var(--home-solution-accent) 84%, white);
  box-shadow: 0 10px 24px color-mix(in srgb, var(--home-solution-accent) 12%, transparent);
}
.home-solution-object-flow > span.is-active b,
.home-solution-object-flow > span.is-active small,
.home-solution-flow > span.is-active b { color: #fff; }
.home-solution-flow > span.is-active i { width: auto; height: auto; background: transparent; color: #fff; font-size: 14px; line-height: 1; }
.home-solution-mini-bars { position: absolute; right: 7%; bottom: 8px; left: 7%; height: 25px; display: flex; align-items: flex-end; justify-content: center; gap: 7px; opacity: .42; }
.home-solution-mini-bars i { width: 15%; max-width: 28px; border-radius: 5px 5px 2px 2px; background: var(--home-solution-accent); }
.home-solution-mini-bars i:nth-child(1) { height: 34%; }
.home-solution-mini-bars i:nth-child(2) { height: 60%; }
.home-solution-mini-bars i:nth-child(3) { height: 46%; }
.home-solution-mini-bars i:nth-child(4) { height: 78%; }
.home-solution-mini-bars i:nth-child(5) { height: 100%; }
.home-solution-status { position: absolute; right: 6px; bottom: 4px; display: flex; align-items: center; gap: 6px; color: rgba(25,82,78,.6); font-size: 9px; font-weight: 650; }
.home-solution-status i { width: 6px; height: 6px; border-radius: 50%; background: #28aa8d; box-shadow: 0 0 0 4px rgba(40,170,141,.09); }
.home-solution-visual--integration { justify-content: space-between; gap: 6px; }
.home-solution-sources { display: grid; gap: 5px; }
.home-solution-sources span {
  min-width: 49px;
  padding: 5px 8px;
  border-radius: 9px;
  background: rgba(255,255,255,.6);
  color: #3a5f88;
  font-size: 9px;
  font-weight: 750;
  text-align: center;
  box-shadow: 0 5px 13px rgba(53,91,134,.035);
}
.home-solution-join { width: 24px; display: grid; gap: 7px; }
.home-solution-join i { display: block; height: 1px; background: rgba(65,115,170,.25); transform-origin: right center; }
.home-solution-join i:first-child { transform: rotate(22deg); }
.home-solution-join i:last-child { transform: rotate(-22deg); }
.home-solution-api,
.home-solution-workspace,
.home-solution-knowledge,
.home-solution-rag,
.home-solution-agent,
.home-solution-action {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 9px 11px;
  border: 1px solid rgba(255,255,255,.66);
  border-radius: 13px;
  background: var(--home-solution-node);
  box-shadow: 0 8px 20px rgba(48,76,126,.04);
}
.home-solution-api { min-width: 66px; color: #376ba8; }
.home-solution-api small,
.home-solution-workspace small,
.home-solution-knowledge small,
.home-solution-action small,
.home-solution-rag small { color: rgba(51,76,104,.56); font-size: 8px; white-space: nowrap; }
.home-solution-api b { font-size: 18px; line-height: 1.1; }
.home-solution-api span { margin-top: 3px; color: #55779b; font-size: 8px; }
.home-solution-workspace { min-width: 86px; align-items: flex-start; }
.home-solution-workspace i { width: 24px; height: 5px; margin-bottom: 7px; border-radius: 999px; background: linear-gradient(90deg,#5fb9e8,#7974d2); }
.home-solution-workspace b { color: #315a82; font-size: 10px; white-space: nowrap; }
.home-solution-visual--ai { justify-content: center; gap: 6px; }
.home-solution-knowledge { min-width: 66px; }
.home-solution-knowledge i { width: 19px; height: 15px; margin-bottom: 5px; border: 2px solid #8c78d3; border-radius: 3px 7px 7px 3px; }
.home-solution-knowledge b,
.home-solution-action b { color: #554d79; font-size: 10px; white-space: nowrap; }
.home-solution-rag { min-width: 54px; background: rgba(255,255,255,.48); }
.home-solution-rag b { color: #725fc3; font-size: 15px; }
.home-solution-agent { min-width: 58px; border-color: rgba(119,95,195,.14); background: linear-gradient(145deg,#8d77dc,#6755bc); color: #fff; }
.home-solution-agent i { color: #d8f06b; font-style: normal; line-height: 1; }
.home-solution-agent b { font-size: 10px; }
.home-solution-action { min-width: 82px; align-items: flex-start; }

@media (min-width: 961px) {
  .solution-section .home-solution-card:nth-child(1),
  .solution-section .home-solution-card:nth-child(4) {
    display: grid;
    grid-template-columns: minmax(0,.82fr) minmax(280px,1.18fr);
    grid-template-rows: 1fr;
    align-items: stretch;
    column-gap: 28px;
  }
  .solution-section .home-solution-card:nth-child(1) .home-solution-copy,
  .solution-section .home-solution-card:nth-child(4) .home-solution-copy { align-self: start; }
  .solution-section .home-solution-card:nth-child(1) .home-solution-visual,
  .solution-section .home-solution-card:nth-child(4) .home-solution-visual { min-height: 100%; margin-top: 0; }
}

@media (hover: hover) and (pointer: fine) {
  .solution-section .home-solution-card[data-reveal]:hover {
    transform: translateY(-3px);
    border-color: color-mix(in srgb, var(--home-solution-accent) 16%, transparent);
    box-shadow: 0 18px 40px rgba(20,45,35,.065);
  }
  .solution-section .home-solution-card:hover .home-solution-icon { transform: translateY(-1px); filter: saturate(1.08); }
  .solution-section .home-solution-card:hover::before { filter: saturate(1.1); }
  .solution-section .home-solution-card:hover .is-active { transform: translateY(-1px); }
}

@media (max-width: 960px) {
  .solution-section .home-solution-card:nth-child(n) {
    min-height: 360px;
    padding: 28px;
    display: flex;
  }
  .home-solution-visual { min-height: 126px; margin-top: 24px; }
}

@media (max-width: 640px) {
  .solution-section .home-solution-card:nth-child(n),
  .solution-section .home-solution-card.solution-card--business-systems,
  .solution-section .home-solution-card.solution-card--integration,
  .solution-section .home-solution-card.solution-card--business-ai {
    min-height: 350px;
    padding: 24px;
  }
  .home-solution-icon { width: 48px; height: 48px; flex-basis: 48px; margin-bottom: 15px; border-radius: 15px; }
  .home-solution-icon svg { width: 41px; height: 41px; }
  .solution-section .home-solution-card .home-solution-copy h3 { font-size: 23px; }
  .solution-section .home-solution-card .home-solution-copy p { font-size: 14px; line-height: 1.65; }
  .home-solution-tags { margin-top: 14px; }
  .home-solution-visual { min-height: 116px; margin-top: 20px; }
  .home-solution-object-flow,
  .home-solution-flow { gap: 3px; }
  .home-solution-object-flow > span,
  .home-solution-flow > span { min-width: 47px; padding-inline: 6px; }
  .home-solution-visual--integration,
  .home-solution-visual--ai { gap: 4px; }
  .home-solution-join { width: 16px; }
}

@media (max-width: 390px) {
  .home-solution-object-flow b,
  .home-solution-flow b { font-size: 10px; }
  .home-solution-object-flow > span,
  .home-solution-flow > span { min-width: 43px; }
  .home-solution-visual em { font-size: 11px; }
  .home-solution-sources span { min-width: 42px; padding-inline: 5px; }
  .home-solution-api { min-width: 54px; padding-inline: 7px; }
  .home-solution-workspace { min-width: 72px; padding-inline: 8px; }
  .home-solution-knowledge,
  .home-solution-rag,
  .home-solution-agent,
  .home-solution-action { min-width: 0; padding-inline: 7px; }
}

/* Solutions overview rhythm: preserve every component and visual treatment,
   while removing the oversized vertical gaps between them. */
.solutions-v2 .solutions-v2-hero { padding-block: 56px 52px; }
.solutions-v2 .solutions-v2-hero__description { margin-top: 22px; }
.solutions-v2 .solutions-v2-hero__description p + p { margin-top: 12px; }
.solutions-v2 .solutions-v2-hero__actions { margin-top: 26px; }

.solutions-v2 .solution-challenge-band { padding-block: 54px 50px; }
.solutions-v2 .solution-challenge-band__head { margin-bottom: 26px; }
.solutions-v2 .solution-challenge-card { min-height: 154px; padding-block: 20px; }

.solutions-v2 .solutions-v2-feishu { padding-block: 80px; }

.solutions-v2 .solutions-v2-tech { padding-block: 72px 76px; }
.solutions-v2 .solutions-v2-tech .solutions-v2-head { margin-bottom: 34px; }
@media (min-width: 961px) {
  .solutions-v2 .solutions-v2-tech .solutions-v2-head .solutions-v2-kicker { margin-bottom: 16px; }
  .solutions-v2 .solutions-v2-tech .solutions-v2-head h2 { font-size: clamp(48px,3.2vw,52px); line-height: 1.08; letter-spacing: -.02em; }
  .solutions-v2 .solutions-v2-tech .solutions-v2-head > p:last-child { margin-top: 17px; }
}
.solutions-v2 .solution-tech-grid { grid-auto-rows: 284px; gap: 22px; }
.solutions-v2 .solution-tech-card { padding: 26px 28px; }
.solutions-v2 .solution-tech-card__copy > p { margin-top: 12px; }
.solutions-v2 .solution-tech-card__tags { margin-top: 10px; }
.solutions-v2 .tech-visual { right: 28px; bottom: 18px; left: 28px; height: 84px; }

.solutions-v2 .solution-guide { padding-block: 64px 72px; background: #f7f8f6; }
.solutions-v2 .solution-guide > .container { width: min(1100px, calc(100% - 48px)); }
.solutions-v2 .solution-guide__intro { max-width: 1000px; margin-bottom: 46px; }
.solutions-v2 .solution-guide__intro .solutions-v2-kicker { margin-bottom: 19px; font-size: 15px; font-weight: 600; }
.solutions-v2 .solution-guide__intro h2 { font-size: clamp(46px,3.2vw,56px); line-height: 1.08; font-weight: 700; letter-spacing: -.025em; }
.solutions-v2 .solution-guide__intro > p:last-child { margin-top: 22px; font-size: 18px; line-height: 1.7; }
.solutions-v2 .solution-guide__grid { align-items: stretch; grid-auto-rows: 1fr; gap: 28px; }
.solutions-v2 .solution-guide-card { min-height: 278px; padding: 34px 38px 36px; border: 1px solid rgba(20,45,35,.1); border-radius: 21px; box-shadow: 0 8px 24px rgba(20,45,35,.025); }
.solutions-v2 .solution-guide-card h3 { margin-bottom: 23px; font-size: 26px; line-height: 1.25; font-weight: 700; letter-spacing: -.025em; }
.solutions-v2 .solution-guide-card ol { gap: 15px; }
.solutions-v2 .solution-guide-card li { grid-template-columns: 26px minmax(0,1fr); gap: 12px; }
.solutions-v2 .solution-guide-card li > span { width: 26px; height: 26px; font-size: 11px; color: #14804f; background: #e2f5e9; }
.solutions-v2 .solution-guide-card--dots li > span { width: 7px; height: 7px; margin: 10px 9px 0; background: #13b967; }
.solutions-v2 .solution-guide-card--3 li > span { background: #1697e8; }
.solutions-v2 .solution-guide-card--4 li > span { background: #ed9813; }
.solutions-v2 .solution-guide-card li p { font-size: 17px; line-height: 1.68; }
.solutions-v2 .solution-guide__warning,
.solutions-v2 .solution-guide__result { margin-top: 28px; padding: 34px 40px 36px; border-radius: 20px; }
.solutions-v2 .solution-guide__warning { color: #fff; background: #050605; box-shadow: 0 8px 24px rgba(5,6,5,.05); }
.solutions-v2 .solution-guide__warning h3,
.solutions-v2 .solution-guide__result h3 { font-size: 27px; line-height: 1.25; font-weight: 700; letter-spacing: -.025em; }
.solutions-v2 .solution-guide__warning p,
.solutions-v2 .solution-guide__result p { max-width: 1000px; margin-top: 17px; font-size: 17px; line-height: 1.7; }
.solutions-v2 .solution-guide__result { border-color: rgba(35,111,78,.14); }
.solutions-v2 .solution-guide__result a { margin-top: 24px; }
.solutions-v2 .solution-guide-faq { padding-block: 32px 22px; }
.solutions-v2 .solution-guide-faq > header,
.solutions-v2 .solution-guide-faq > div { width: 100%; margin-inline: 0; }
.solutions-v2 .solution-guide-faq > header { margin-bottom: 26px; }
.solutions-v2 .solution-guide-faq > header .solutions-v2-kicker { margin-bottom: 15px; }
.solutions-v2 .solution-guide-faq h2 { font-size: clamp(38px,3.1vw,46px); line-height: 1.08; letter-spacing: -.02em; }
.solutions-v2 .solution-guide-faq__item { border-color: rgba(42,76,65,.105); }
.solutions-v2 .solution-guide-faq__item summary { min-height: 52px; gap: 20px; padding: 0 2px 0 0; font-size: 17px; font-weight: 650; line-height: 1.4; transition: color 180ms ease; }
.solutions-v2 .solution-guide-faq__item summary > span { gap: 14px; }
.solutions-v2 .solution-guide-faq__item summary b { color: #9aa8a2; font-size: 9px; font-weight: 650; letter-spacing: .07em; }
.solutions-v2 .solution-guide-faq__item summary i { width: 22px; height: 22px; flex-basis: 22px; border: 1px solid rgba(28,131,79,.07); background: #eaf6ed; transition: background-color 180ms ease, transform 180ms ease; }
.solutions-v2 .solution-guide-faq__item summary i::before,
.solutions-v2 .solution-guide-faq__item summary i::after { width: 8px; height: 1.25px; }
.solutions-v2 .solution-guide-faq__item > p { margin: 0 32px 17px 29px; font-size: 14px; line-height: 1.7; }
.solutions-v2 .solution-guide-cta { align-items: center; gap: 36px; padding: 26px 32px; border-color: rgba(41,74,63,.1); border-radius: 26px; box-shadow: 0 16px 38px rgba(33,58,49,.04); }
.solutions-v2 .solution-guide-cta .solutions-v2-kicker { margin-bottom: 8px; }
.solutions-v2 .solution-guide-cta h2 { font-size: clamp(28px,2.7vw,36px); line-height: 1.15; letter-spacing: -.035em; }
.solutions-v2 .solution-guide-cta > div > p:last-child { margin-top: 8px; font-size: 15px; line-height: 1.7; }
.solutions-v2 .solution-guide-cta nav { gap: 10px; }
.solutions-v2 .solution-guide-cta .button { min-width: 154px; min-height: 50px; padding-inline: 24px; border: 1px solid transparent; font-size: 14px; font-weight: 700; box-shadow: none; transition: transform 180ms ease, background-color 180ms ease, border-color 180ms ease, box-shadow 180ms ease; }
.solutions-v2 .solution-guide-cta .button:first-child { background: #1f6b55; box-shadow: 0 8px 20px rgba(31,107,85,.13); }
.solutions-v2 .solution-guide-cta .button-ghost { color: #173f33; border-color: #d8e1dc; background: rgba(255,255,255,.86); box-shadow: none; }
.solutions-v2 .solution-guide-cta .button span { transition: transform 180ms ease; }

@media (hover:hover) and (pointer:fine) {
  .solutions-v2 .solution-guide-faq__item summary:hover { color: #174f3e; }
  .solutions-v2 .solution-guide-faq__item summary:hover i { background: #dff1e5; transform: rotate(8deg); }
  .solutions-v2 .solution-guide-cta .button:first-child:hover { background: #27785f; box-shadow: 0 11px 24px rgba(31,107,85,.16); }
  .solutions-v2 .solution-guide-cta .button-ghost:hover { border-color: #b9ccc2; background: #f8fbf9; }
  .solutions-v2 .solution-guide-cta .button:hover span { transform: translateX(2px); }
}

.solutions-v2 .solutions-v2-cases { padding-block: 80px 84px; }
.solutions-v2 .solutions-v2-cases__head { margin-bottom: 34px; }
.solutions-v2 .solutions-v2-case-card { height: 420px; }
.solutions-v2 .solutions-v2-case-card .case-body { padding-block: 12px 10px; }
.solutions-v2 .solutions-v2-case-tags { margin-top: 8px; }

.solutions-v2 + .home-cta { padding-block: 75px 78px; }
.solutions-v2 + .home-cta .home-cta__eyebrow { margin-bottom: 16px; }
.solutions-v2 + .home-cta h2 { margin-bottom: 18px; }
.solutions-v2 + .home-cta .home-cta__actions { margin-top: 26px; }

@media (max-width: 960px) {
  .solutions-v2 .solutions-v2-hero { padding-block: 68px 62px; }
  .solutions-v2 .solutions-v2-feishu { padding-block: 68px; }
  .solutions-v2 .solutions-v2-tech,
  .solutions-v2 .solutions-v2-cases { padding-block: 66px 70px; }
  .solutions-v2 .solution-guide { padding-block: 58px 64px; }
  .solutions-v2 .solution-guide-card { min-height: 0; }
  .solutions-v2 .solution-guide-cta { gap: 24px; padding: 24px 28px; }
}

@media (min-width: 761px) and (max-width: 960px) {
  .solutions-v2 .solution-tech-grid { grid-auto-rows: 310px; }
  .solutions-v2 .solution-tech-card { padding: 26px; }
  .solutions-v2 .tech-visual { right: 26px; bottom: 18px; left: 26px; height: 90px; }
}

@media (max-width: 640px) {
  .solutions-v2 .solutions-v2-hero { padding-block: 50px 46px; }
  .solutions-v2 .solutions-v2-hero__description { margin-top: 18px; }
  .solutions-v2 .solutions-v2-hero__actions { margin-top: 22px; }
  .solutions-v2 .solution-challenge-band { padding-block: 42px 40px; }
  .solutions-v2 .solution-challenge-band__head { margin-bottom: 20px; }
  .solutions-v2 .solution-challenge-card { min-height: 146px; padding-block: 18px; }
  .solutions-v2 .solutions-v2-feishu { padding-block: 56px; }
  .solutions-v2 .solutions-v2-tech,
  .solutions-v2 .solutions-v2-cases { padding-block: 54px 58px; }
  .solutions-v2 .solutions-v2-tech .solutions-v2-head,
  .solutions-v2 .solutions-v2-cases__head { margin-bottom: 26px; }
  .solutions-v2 .solution-tech-grid { grid-auto-rows: auto; gap: 16px; }
  .solutions-v2 .solution-tech-card { min-height: 320px; padding: 24px; }
  .solutions-v2 .tech-visual,
  .solutions-v2 .solution-tech-card--model .tech-visual,
  .solutions-v2 .solution-tech-card--knowledge .tech-visual,
  .solutions-v2 .solution-tech-card--agent .tech-visual { right: 24px; bottom: 20px; left: 24px; height: 100px; }
  .solutions-v2 .solution-guide { padding-block: 48px 54px; }
  .solutions-v2 .solution-guide__intro { margin-bottom: 22px; }
  .solutions-v2 .solution-guide__intro h2 { font-size: 34px; line-height: 1.1; letter-spacing: -.02em; }
  .solutions-v2 .solution-guide__intro > p:last-child { margin-top: 11px; font-size: 15px; line-height: 1.65; }
  .solutions-v2 .solution-guide__grid { gap: 14px; }
  .solutions-v2 .solution-guide-card { padding: 19px 20px 20px; }
  .solutions-v2 .solution-guide-card h3 { margin-bottom: 13px; font-size: 21px; }
  .solutions-v2 .solution-guide-card ol { gap: 9px; }
  .solutions-v2 .solution-guide-card li p { font-size: 14px; line-height: 1.62; }
  .solutions-v2 .solution-guide__warning,
  .solutions-v2 .solution-guide__result { margin-top: 16px; padding: 25px 22px 27px; }
  .solutions-v2 .solution-guide__warning { padding-block: 23px 25px; }
  .solutions-v2 .solution-guide__warning h3 { font-size: 22px; }
  .solutions-v2 .solution-guide__warning p,
  .solutions-v2 .solution-guide__result p { margin-top: 13px; }
  .solutions-v2 .solution-guide__warning p { margin-top: 10px; font-size: 14px; line-height: 1.65; }
  .solutions-v2 .solution-guide__result a { margin-top: 16px; }
  .solutions-v2 .solution-guide-faq { padding-block: 34px 24px; }
  .solutions-v2 .solution-guide-faq > header { margin-bottom: 22px; }
  .solutions-v2 .solution-guide-faq > header .solutions-v2-kicker { margin-bottom: 12px; }
  .solutions-v2 .solution-guide-faq h2 { font-size: 32px; }
  .solutions-v2 .solution-guide-faq__item summary { min-height: 54px; gap: 12px; font-size: 15px; }
  .solutions-v2 .solution-guide-faq__item summary > span { gap: 10px; }
  .solutions-v2 .solution-guide-faq__item summary i { width: 21px; height: 21px; flex-basis: 21px; }
  .solutions-v2 .solution-guide-faq__item > p { margin: 0 28px 16px 0; font-size: 13px; }
  .solutions-v2 .solution-guide-cta { gap: 18px; padding: 22px 20px; }
  .solutions-v2 .solution-guide-cta h2 { font-size: 30px; }
  .solutions-v2 .solution-guide-cta > div > p:last-child { font-size: 14px; }
  .solutions-v2 .solution-guide-cta .button { min-width: 0; min-height: 48px; }
  .solutions-v2 .solutions-v2-case-card { height: auto; }
  .solutions-v2 + .home-cta { padding-block: 56px 60px; }
}

@media (prefers-reduced-motion: reduce) {
  .solutions-v2 .solution-guide-faq__item summary,
  .solutions-v2 .solution-guide-faq__item summary i,
  .solutions-v2 .solution-guide-cta .button,
  .solutions-v2 .solution-guide-cta .button span { transition: none !important; }
}

/* Industries overview — scoped to keep the rest of the site unchanged. */
.industries-overview {
  --industries-ink: #103c30;
  --industries-copy: #536c63;
  --industries-line: rgba(20, 65, 51, .09);
  overflow: clip;
  background: #f7f8f3;
}
.industries-overview .industries-page-kicker {
  margin: 0 0 17px;
  color: #24705a;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .08em;
  line-height: 1.5;
}
.industries-overview .industries-page-kicker span { color: #83938d; font-size: 11px; font-weight: 600; letter-spacing: .1em; }
.industries-overview .industries-page-kicker--dark { color: #d8f06b; }
.industries-page-icon {
  width: 40px;
  height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 40px;
  border-radius: 13px;
  color: #226c58;
  background: rgba(255,255,255,.7);
  border: 1px solid rgba(255,255,255,.86);
  box-shadow: 0 6px 18px rgba(26,74,59,.045);
}
.industries-page-icon svg { width: 21px; height: 21px; fill: none; stroke: currentColor; stroke-width: 1.65; stroke-linecap: round; stroke-linejoin: round; }
.industries-page-icon--link,
.industries-page-icon--flow { color: #5578bd; }
.industries-page-icon--package { color: #3f806f; }
.industries-page-icon--users { color: #8066b0; }
.industries-page-icon--automation { color: #6c7a25; }

.industries-hero {
  position: relative;
  padding: 142px 0 84px;
  background:
    radial-gradient(circle at 85% 24%, rgba(208,222,255,.34), transparent 27%),
    radial-gradient(circle at 70% 82%, rgba(218,207,250,.28), transparent 24%),
    radial-gradient(circle at 54% 28%, rgba(201,239,224,.3), transparent 24%),
    #f7f8f3;
}
.industries-hero__grid { display: grid; grid-template-columns: minmax(500px, .84fr) minmax(0, 1.16fr); gap: 46px; align-items: center; }
.industries-hero__copy { max-width: 540px; }
.industries-hero__copy h1 { margin: 0; color: var(--industries-ink); font-size: clamp(48px, 3.75vw, 56px); line-height: 1.06; letter-spacing: -.045em; white-space: nowrap; }
.industries-hero__description { margin-top: 28px; }
.industries-hero__description p { margin: 0; color: var(--industries-copy); font-size: 16px; line-height: 1.85; }
.industries-hero__description p + p { margin-top: 10px; }
.industries-hero__actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 32px; }
.industries-hero-visual { position: relative; min-width: 0; min-height: 424px; display: grid; place-items: center; isolation: isolate; }
.industries-hero-product__glow {
  position: absolute;
  inset: 6% -7% 1%;
  z-index: -2;
  border-radius: 46%;
  background:
    radial-gradient(circle at 12% 24%, rgba(140,219,194,.3), transparent 43%),
    radial-gradient(circle at 54% 10%, rgba(166,207,238,.24), transparent 46%),
    radial-gradient(circle at 87% 78%, rgba(193,170,229,.24), transparent 46%);
  filter: blur(42px);
}
.industries-hero-product__shell {
  position: relative;
  width: calc(100% + 18px);
  margin-right: -18px;
  padding: 14px;
  overflow: hidden;
  border: 1px solid transparent;
  border-radius: 34px;
  background:
    linear-gradient(138deg, rgba(255,255,255,.88), rgba(247,251,251,.79) 55%, rgba(250,248,254,.8)) padding-box,
    linear-gradient(135deg, rgba(201,238,226,.74), rgba(255,255,255,.96) 42%, rgba(221,226,247,.78) 72%, rgba(229,214,246,.72)) border-box;
  box-shadow:
    0 34px 82px rgba(31,76,62,.085),
    0 12px 32px rgba(103,96,151,.052),
    inset 0 1px 0 rgba(255,255,255,.98),
    inset 0 -1px 0 rgba(100,131,121,.035);
  backdrop-filter: blur(18px);
}
.industries-hero-product__shell::before {
  content: '';
  position: absolute;
  top: -44%;
  left: -10%;
  width: 58%;
  height: 76%;
  pointer-events: none;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(214,245,235,.46), transparent 69%);
  filter: blur(10px);
}
.industries-hero-product__shell::after {
  content: '';
  position: absolute;
  inset: 1px;
  pointer-events: none;
  border-radius: 32px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.88), inset 1px 0 0 rgba(255,255,255,.35);
}
.industries-hero-product__bar {
  position: relative;
  z-index: 1;
  min-height: 43px;
  padding: 0 10px 9px;
  display: grid;
  grid-template-columns: 64px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  color: #46655b;
  font-size: 11px;
}
.industries-hero-product__bar strong { overflow: hidden; color: #264d40; font-size: 12px; font-weight: 700; letter-spacing: .015em; text-overflow: ellipsis; white-space: nowrap; }
.industries-hero-product__bar small { display: inline-flex; align-items: center; gap: 6px; color: #779087; font-size: 10px; white-space: nowrap; }
.industries-hero-product__bar small i { width: 6px; height: 6px; border-radius: 50%; background: #54b98f; box-shadow: 0 0 0 4px rgba(84,185,143,.11); }
.industries-hero-product__dots { display: flex; align-items: center; gap: 6px; }
.industries-hero-product__dots i { width: 7px; height: 7px; border: 1px solid rgba(255,255,255,.65); border-radius: 50%; background: #cfe1da; box-shadow: 0 2px 5px rgba(45,80,68,.055); }
.industries-hero-product__dots i:nth-child(2) { background: #dce9f5; }
.industries-hero-product__dots i:nth-child(3) { background: #e7ddf1; }
.industries-hero-product__frame {
  position: relative;
  z-index: 1;
  padding: 9px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.9);
  border-radius: 23px;
  background:
    radial-gradient(circle at 8% 12%, rgba(217,243,235,.42), transparent 38%),
    radial-gradient(circle at 92% 88%, rgba(226,218,246,.34), transparent 42%),
    linear-gradient(145deg, rgba(255,255,255,.84), rgba(241,247,249,.7));
  box-shadow:
    inset 0 0 0 1px rgba(43,78,97,.04),
    inset 0 1px 0 rgba(255,255,255,.96),
    0 14px 32px rgba(28,63,82,.048);
}
.industries-hero-product__frame::after { content: ''; position: absolute; inset: 9px; pointer-events: none; border: 1px solid rgba(255,255,255,.22); border-radius: 16px; box-shadow: inset 0 1px 0 rgba(255,255,255,.28); }
.industries-hero-product__frame img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 2857 / 1477;
  object-fit: contain;
  object-position: center top;
  border-radius: 16px;
  box-shadow: 0 7px 18px rgba(13,40,59,.13);
}

.industries-section { padding: 92px 0; position: relative; }
.industries-section-head { max-width: 760px; margin-bottom: 44px; }
.industries-section-head h2 { margin: 0; color: var(--industries-ink); font-size: clamp(38px, 4.1vw, 56px); line-height: 1.1; letter-spacing: -.04em; text-wrap: balance; }
.industries-section-head > p:last-child { max-width: 720px; margin: 20px 0 0; color: var(--industries-copy); font-size: 16px; line-height: 1.8; }

.industries-focus { background: #f0f5f1; scroll-margin-top: 70px; }
.industries-focus-switcher { display: grid; grid-template-columns: 245px minmax(0, 1fr); gap: 28px; align-items: stretch; }
.industries-focus-tabs { display: flex; flex-direction: column; gap: 8px; }
.industries-focus-tab {
  width: 100%;
  min-height: 68px;
  padding: 10px 15px 10px 13px;
  display: grid;
  grid-template-columns: 28px 38px 1fr 18px;
  gap: 9px;
  align-items: center;
  text-align: left;
  color: #557068;
  border: 1px solid transparent;
  border-radius: 18px;
  background: transparent;
  cursor: pointer;
  transition: background .22s ease, border-color .22s ease, color .22s ease, transform .22s ease;
}
.industries-focus-tab > span { color: #91a29c; font-size: 11px; font-weight: 700; }
.industries-focus-tab .industries-page-icon { width: 38px; height: 38px; flex-basis: 38px; box-shadow: none; }
.industries-focus-tab b { font-size: 14px; line-height: 1.4; }
.industries-focus-tab > i { color: #9baaa5; font-style: normal; }
.industries-focus-tab.is-active { color: #174b3c; border-color: rgba(31,99,78,.08); background: rgba(255,255,255,.75); box-shadow: 0 9px 25px rgba(31,75,61,.045); }
.industries-focus-tab.is-active > span,
.industries-focus-tab.is-active > i { color: #2f8067; }
.industries-focus-panel {
  min-height: 518px;
  padding: 38px;
  display: grid;
  grid-template-columns: minmax(0, .92fr) minmax(330px, 1.08fr);
  gap: 34px;
  align-items: center;
  border: 1px solid rgba(255,255,255,.88);
  border-radius: 30px;
  background:
    radial-gradient(circle at 12% 12%, rgba(186,233,216,.47), transparent 35%),
    radial-gradient(circle at 88% 82%, rgba(213,203,246,.38), transparent 39%),
    linear-gradient(135deg, rgba(244,250,247,.96), rgba(237,245,250,.94));
  box-shadow: 0 22px 60px rgba(36,78,65,.065);
}
.industries-focus-panel--trade { background: radial-gradient(circle at 12% 12%, rgba(195,229,222,.45), transparent 35%), radial-gradient(circle at 88% 82%, rgba(196,213,248,.42), transparent 39%), linear-gradient(135deg, #f5faf7, #eff4fb); }
.industries-focus-panel--retail { background: radial-gradient(circle at 13% 14%, rgba(214,239,205,.48), transparent 36%), radial-gradient(circle at 88% 82%, rgba(210,222,242,.4), transparent 40%), linear-gradient(135deg, #f7faf4, #f0f6f7); }
.industries-focus-panel--professional { background: radial-gradient(circle at 12% 12%, rgba(220,207,245,.43), transparent 35%), radial-gradient(circle at 86% 82%, rgba(190,229,224,.38), transparent 40%), linear-gradient(135deg, #f8f6fb, #eef7f5); }
.industries-focus-panel--project { background: radial-gradient(circle at 12% 12%, rgba(199,223,243,.46), transparent 35%), radial-gradient(circle at 86% 82%, rgba(225,212,246,.42), transparent 40%), linear-gradient(135deg, #f4f8fa, #f4f1fa); }
.industries-focus-panel[hidden] { display: none; }
.industries-focus-panel.is-active { animation: industries-panel-in .42s ease both; }
@keyframes industries-panel-in { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
.industries-focus-copy__index { margin: 0 0 11px; color: #709087; font-size: 11px; font-weight: 700; letter-spacing: .08em; }
.industries-focus-copy h3 { margin: 0; color: var(--industries-ink); font-size: 36px; line-height: 1.12; }
.industries-focus-copy > p:not(.industries-focus-copy__index) { margin: 18px 0 0; color: #536c63; font-size: 15px; line-height: 1.76; }
.industries-focus-tags { margin-top: 22px; display: flex; flex-wrap: wrap; gap: 7px; }
.industries-focus-tags span { min-height: 28px; padding: 0 10px; display: inline-flex; align-items: center; border: 1px solid rgba(39,99,79,.08); border-radius: 999px; background: rgba(255,255,255,.58); color: #49675e; font-size: 11px; font-weight: 600; }
.industries-focus-chain { margin-top: 25px; display: flex; flex-wrap: wrap; align-items: center; gap: 7px; }
.industries-focus-chain span { color: #274f42; font-size: 11px; font-weight: 700; }
.industries-focus-chain i { color: #92aaa2; font-style: normal; font-size: 10px; }
.industries-focus-copy .text-link { margin-top: 28px; font-size: 14px; }
.industry-focus-visual {
  min-height: 356px;
  padding: 24px;
  border: 1px solid rgba(255,255,255,.84);
  border-radius: 24px;
  background: rgba(255,255,255,.55);
  box-shadow: 0 18px 45px rgba(43,79,67,.06), inset 0 1px 0 rgba(255,255,255,.84);
}
.industry-focus-visual__top { display: flex; justify-content: space-between; gap: 18px; align-items: center; }
.industry-focus-visual__top span { display: inline-flex; align-items: center; gap: 7px; color: #758c84; font-size: 10px; font-weight: 600; }
.industry-focus-visual__top span i { width: 6px; height: 6px; border-radius: 50%; background: #46b991; box-shadow: 0 0 0 4px rgba(70,185,145,.1); }
.industry-focus-visual__top strong { color: #36584d; font-size: 12px; }
.industry-focus-metrics { margin-top: 24px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 9px; }
.industry-focus-metrics span { min-height: 78px; padding: 14px; display: flex; flex-direction: column; justify-content: space-between; border: 1px solid rgba(30,89,71,.055); border-radius: 15px; background: rgba(255,255,255,.7); }
.industry-focus-metrics span.is-accent { background: rgba(218,242,232,.78); }
.industry-focus-metrics small { color: #758b83; font-size: 9px; }
.industry-focus-metrics b { color: #1e5645; font-size: 22px; line-height: 1; }
.industry-focus-progress { height: 96px; margin-top: 13px; padding: 18px 15px 13px; display: flex; align-items: end; gap: 9px; position: relative; border-radius: 16px; background: rgba(255,255,255,.52); overflow: hidden; }
.industry-focus-progress::before,
.industry-focus-progress::after { content: ""; position: absolute; right: 15px; left: 15px; border-top: 1px solid rgba(45,93,77,.06); }
.industry-focus-progress::before { top: 30px; }
.industry-focus-progress::after { top: 55px; }
.industry-focus-progress > span { flex: 1; position: relative; z-index: 1; border-radius: 6px 6px 2px 2px; background: linear-gradient(180deg, #79c9b0, #abdac9); }
.industry-focus-progress > span:nth-child(1) { height: 31%; }
.industry-focus-progress > span:nth-child(2) { height: 52%; }
.industry-focus-progress > span:nth-child(3) { height: 42%; }
.industry-focus-progress > span:nth-child(4) { height: 74%; }
.industry-focus-progress > span:nth-child(5) { height: 61%; }
.industry-focus-progress > i { position: absolute; z-index: 2; left: 15px; right: 15px; top: 39px; height: 24px; border-top: 2px solid #708fe1; border-radius: 50%; transform: rotate(-4deg); }
.industry-focus-status { margin-top: 13px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.industry-focus-status > span { min-width: 0; padding: 10px; display: grid; grid-template-columns: 7px 1fr; gap: 2px 7px; border-radius: 13px; background: rgba(255,255,255,.55); }
.industry-focus-status i { grid-row: 1 / span 2; align-self: center; width: 7px; height: 7px; border-radius: 50%; background: #56bd94; }
.industry-focus-status i.is-2 { background: #7797e5; }
.industry-focus-status i.is-3 { background: #a88ad7; }
.industry-focus-status small { overflow: hidden; color: #7c8f89; font-size: 8px; text-overflow: ellipsis; white-space: nowrap; }
.industry-focus-status b { color: #315348; font-size: 9px; }

.industries-problems { background: #f8f9f6; }
.industries-problems .industries-section-head { max-width: 920px; }
.industries-problems .industries-section-head > p:last-child { max-width: 900px; }
.industries-problem-showcase { display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(420px, .88fr); gap: 24px; align-items: stretch; }
.industries-problem-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); grid-template-rows: repeat(2, 1fr); gap: 18px; }
.industries-problem {
  --problem-accent: #527fc9;
  --problem-accent-2: #176fe8;
  --problem-surface-a: #dfeeff;
  --problem-surface-b: #f2f7ff;
  --problem-shape-a: rgba(91,153,235,.26);
  --problem-shape-b: rgba(255,255,255,.56);
  position: relative;
  min-width: 0;
  min-height: 188px;
  padding: 24px 18px 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border: 0;
  border-radius: 30px;
  background: linear-gradient(145deg, var(--problem-surface-a), var(--problem-surface-b));
  box-shadow: none;
  color: #183e33;
  font: inherit;
  text-align: center;
  cursor: pointer;
  isolation: isolate;
  transition: transform .22s ease, box-shadow .22s ease, filter .22s ease;
}
.industries-problem::before {
  content: '';
  position: absolute;
  top: -54%;
  left: -35%;
  width: 130%;
  height: 132%;
  pointer-events: none;
  border-radius: 42% 58% 52% 48%;
  background: var(--problem-shape-a);
  transform: rotate(24deg);
  z-index: -1;
}
.industries-problem::after {
  content: '';
  position: absolute;
  right: -42%;
  bottom: -60%;
  width: 128%;
  height: 138%;
  pointer-events: none;
  border: 1px solid rgba(255,255,255,.58);
  border-radius: 50%;
  background: var(--problem-shape-b);
  transform: rotate(-22deg);
  z-index: -1;
}
.industries-problem--apricot { --problem-accent: #ff6b4e; --problem-accent-2: #f7a64c; --problem-surface-a: #ffe8df; --problem-surface-b: #fff5ed; --problem-shape-a: rgba(255,132,99,.23); --problem-shape-b: rgba(255,255,255,.6); }
.industries-problem--cyan { --problem-accent: #1fc9cc; --problem-accent-2: #078de7; --problem-surface-a: #d9f5f9; --problem-surface-b: #eefaff; --problem-shape-a: rgba(53,193,222,.24); --problem-shape-b: rgba(255,255,255,.58); }
.industries-problem--purple { --problem-accent: #876be4; --problem-accent-2: #5e7cea; --problem-surface-a: #e8e5ff; --problem-surface-b: #f6f3ff; --problem-shape-a: rgba(139,109,225,.22); --problem-shape-b: rgba(255,255,255,.6); }
.industries-problem--mint { --problem-accent: #22a984; --problem-accent-2: #3fbfd0; --problem-surface-a: #dff5ee; --problem-surface-b: #effaf8; --problem-shape-a: rgba(69,190,160,.23); --problem-shape-b: rgba(218,245,248,.58); }
.industries-problem--lime { --problem-accent: #8abb24; --problem-accent-2: #59ae36; --problem-surface-a: #e7f4cf; --problem-surface-b: #f4fae9; --problem-shape-a: rgba(159,199,64,.23); --problem-shape-b: rgba(255,255,255,.6); }
.industries-problem__visual,
.industries-problem > b { position: relative; z-index: 1; }
.industries-problem__visual { width: 64px; height: 64px; display: grid; place-items: center; margin-bottom: 16px; }
.industries-problem-icon { width: 60px; height: 60px; display: grid; place-items: center; color: var(--problem-accent); filter: drop-shadow(0 8px 10px rgba(41,74,64,.1)); transition: transform .22s ease; }
.industries-problem-icon svg { width: 100%; height: 100%; overflow: visible; }
.industries-problem > b { display: block; overflow: hidden; color: #173f33; font-size: 17px; line-height: 1.3; text-overflow: ellipsis; white-space: nowrap; }
.industries-problem.is-active { box-shadow: inset 0 0 0 2px rgba(255,255,255,.78), 0 12px 30px rgba(37,75,63,.065); filter: saturate(1.05); }
.industries-problem:focus-visible { outline: 3px solid rgba(30,89,71,.18); outline-offset: 3px; }

.industries-problem-panels { min-width: 0; }
.industries-problem-panel[hidden] { display: none; }
.industries-problem-panel {
  --detail-accent: #3d7bd7;
  --detail-soft: rgba(102,154,229,.16);
  min-height: 394px;
  height: 100%;
  padding: 36px 38px 26px;
  position: relative;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  overflow: hidden;
  border-radius: 36px;
  background:
    radial-gradient(circle at 92% 8%, var(--detail-soft), transparent 28%),
    linear-gradient(145deg, #f2f4fb 0%, #eef2fa 54%, #f5f4fb 100%);
  animation: industries-problem-panel-in .28s ease both;
}
.industries-problem-panel--apricot { --detail-accent: #df7658; --detail-soft: rgba(239,148,104,.16); }
.industries-problem-panel--cyan { --detail-accent: #168eac; --detail-soft: rgba(63,187,208,.16); }
.industries-problem-panel--purple { --detail-accent: #7b61c9; --detail-soft: rgba(144,117,216,.16); }
.industries-problem-panel--mint { --detail-accent: #238f75; --detail-soft: rgba(68,184,153,.16); }
.industries-problem-panel--lime { --detail-accent: #6f9421; --detail-soft: rgba(155,195,69,.17); }
.industries-problem-panel__head { position: relative; z-index: 2; display: grid; grid-template-columns: minmax(0, 1fr) 48px; gap: 24px; align-items: start; }
.industries-problem-panel__head h3 { margin: 0; color: #153d32; font-size: 38px; line-height: 1.08; letter-spacing: -.025em; }
.industries-problem-panel__head p { max-width: 440px; margin: 14px 0 0; color: #61736d; font-size: 13px; line-height: 1.72; }
.industries-problem-tags { margin-top: 17px; display: flex; flex-wrap: wrap; gap: 7px; }
.industries-problem-tags span { min-height: 25px; padding: 0 10px; display: inline-flex; align-items: center; border: 1px solid rgba(51,86,74,.07); border-radius: 999px; background: rgba(255,255,255,.56); color: #597067; font-size: 10px; font-weight: 700; }
.industries-problem-next { width: 48px; height: 48px; padding: 0; display: grid; place-items: center; border: 0; border-radius: 50%; background: #173e33; box-shadow: 0 10px 22px rgba(27,65,54,.14); color: #fff; cursor: pointer; transition: transform .2s ease, background .2s ease; }
.industries-problem-next span { transform: translateX(1px); font-size: 22px; line-height: 1; }
.industries-problem-next:focus-visible { outline: 3px solid rgba(30,89,71,.18); outline-offset: 3px; }
.industries-problem-panel__scene { min-height: 0; margin-top: 23px; position: relative; z-index: 1; display: flex; align-items: end; }
.pain-scene { width: 100%; min-height: 174px; position: relative; overflow: hidden; border: 1px solid rgba(255,255,255,.7); border-radius: 25px; background: rgba(255,255,255,.55); box-shadow: 0 14px 34px rgba(46,69,91,.045), inset 0 1px 0 rgba(255,255,255,.8); }
.pain-scene small { color: #83918c; font-size: 8px; font-weight: 600; }
.pain-scene b,
.pain-scene strong { color: #315148; }
.pain-scene-flow { color: var(--detail-accent); font-size: 18px; font-weight: 800; }

.pain-scene--data { padding: 20px; display: grid; grid-template-columns: 126px 28px minmax(130px, 1fr); grid-template-rows: repeat(3, 1fr); gap: 7px 10px; align-items: center; }
.pain-data-source { min-width: 0; padding: 8px 10px; display: flex; align-items: center; justify-content: space-between; gap: 8px; border-radius: 10px; background: rgba(255,255,255,.74); box-shadow: 0 4px 12px rgba(50,76,98,.04); }
.pain-data-source b { overflow: hidden; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.pain-scene--data > .pain-scene-flow { grid-column: 2; grid-row: 1 / span 3; text-align: center; }
.pain-data-target { grid-column: 3; grid-row: 1 / span 3; min-height: 105px; padding: 17px; display: flex; flex-direction: column; justify-content: center; border-radius: 17px; background: linear-gradient(145deg, rgba(225,239,255,.92), rgba(255,255,255,.82)); }
.pain-data-target strong { margin-top: 5px; font-size: 16px; }
.pain-data-target i { height: 35px; margin-top: 14px; position: relative; border-bottom: 1px solid rgba(69,111,162,.12); }
.pain-data-target i span { position: absolute; inset: 4px 4px 3px; border-radius: 50% 40% 0 0; border-top: 2px solid var(--detail-accent); transform: rotate(-5deg); }

.pain-scene--repeat { padding: 25px 22px; display: grid; grid-template-columns: minmax(120px, .82fr) 28px minmax(145px, 1fr); gap: 12px; align-items: center; }
.pain-source-record { min-height: 114px; padding: 20px 16px; border-radius: 18px; background: linear-gradient(145deg, #fff, rgba(255,238,231,.88)); box-shadow: 0 9px 22px rgba(117,74,54,.055); }
.pain-source-record b { margin-top: 5px; display: block; font-size: 15px; }
.pain-source-record i { height: 6px; margin-top: 16px; display: block; border-radius: 999px; background: rgba(224,118,88,.14); }
.pain-source-record i:last-child { width: 68%; margin-top: 7px; }
.pain-repeat-targets { display: grid; gap: 7px; }
.pain-repeat-targets span { min-height: 32px; padding: 7px 10px; display: flex; justify-content: space-between; align-items: center; border-radius: 10px; background: rgba(255,255,255,.72); color: #6e7b76; font-size: 9px; }
.pain-repeat-targets b { color: var(--detail-accent); font-size: 8px; }

.pain-scene--manual { padding: 24px 18px 17px; display: flex; flex-direction: column; justify-content: center; }
.pain-workflow { display: flex; align-items: center; justify-content: center; gap: 7px; }
.pain-workflow > span { min-width: 60px; min-height: 58px; padding: 9px 8px; display: flex; flex-direction: column; align-items: center; justify-content: center; position: relative; border-radius: 14px; background: rgba(255,255,255,.76); }
.pain-workflow > span i { width: 20px; height: 20px; margin-bottom: 7px; border: 5px solid rgba(43,170,194,.22); border-radius: 50%; }
.pain-workflow > span b { font-size: 9px; }
.pain-workflow > em { color: #8baca5; font-style: normal; font-size: 11px; }
.pain-workflow > span.is-manual { background: linear-gradient(145deg, rgba(207,244,246,.95), rgba(255,255,255,.82)); box-shadow: inset 0 0 0 1px rgba(45,174,193,.12); }
.pain-workflow > span.is-manual small { padding: 3px 6px; position: absolute; top: -11px; border-radius: 999px; background: #fff; color: var(--detail-accent); white-space: nowrap; }
.pain-scene--manual > p,
.pain-scene--ai > p { margin: 17px 0 0; color: #71837d; font-size: 9px; text-align: center; }
.pain-scene--manual > p i,
.pain-scene--ai > p i { width: 6px; height: 6px; margin-right: 6px; display: inline-block; border-radius: 50%; background: var(--detail-accent); }

.pain-scene--status { padding: 17px 20px; display: grid; grid-template-columns: 1fr 126px; grid-template-rows: auto 1fr; gap: 10px 15px; }
.pain-status-head { grid-column: 1; display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px; }
.pain-status-head span { min-height: 48px; padding: 10px 12px; border-radius: 12px; background: rgba(255,255,255,.72); }
.pain-status-head small,
.pain-status-head b { display: block; }
.pain-status-head b { margin-top: 4px; font-size: 15px; }
.pain-status-head .is-risk b { color: var(--detail-accent); }
.pain-status-chart { grid-column: 1; min-height: 72px; padding: 10px 8px 0; display: flex; align-items: end; gap: 8px; position: relative; border-radius: 13px; background: rgba(255,255,255,.44); }
.pain-status-chart > i { width: 13%; height: 28%; border-radius: 5px 5px 0 0; background: rgba(123,97,201,.14); }
.pain-status-chart > i:nth-child(2) { height: 44%; }
.pain-status-chart > i:nth-child(3) { height: 36%; }
.pain-status-chart > i:nth-child(4) { height: 61%; }
.pain-status-chart > i:nth-child(5) { height: 76%; }
.pain-status-chart svg { position: absolute; inset: 8px; width: calc(100% - 16px); height: calc(100% - 16px); overflow: visible; }
.pain-status-chart path { fill: none; stroke: var(--detail-accent); stroke-width: 2.5; stroke-linecap: round; }
.pain-status-alert { grid-column: 2; grid-row: 1 / span 2; padding: 18px 13px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; border-radius: 16px; background: rgba(255,255,255,.67); text-align: center; }
.pain-status-alert > i { width: 34px; height: 34px; position: relative; border: 7px solid rgba(123,97,201,.17); border-radius: 50%; }
.pain-status-alert > i::after { content: ''; position: absolute; width: 5px; height: 5px; right: -5px; top: -4px; border-radius: 50%; background: var(--detail-accent); }
.pain-status-alert b,
.pain-status-alert small { display: block; }
.pain-status-alert b { font-size: 9px; }
.pain-status-alert small { margin-top: 4px; }

.pain-scene--breakpoint { padding: 22px; display: grid; grid-template-columns: 112px minmax(54px, 1fr) 130px; gap: 12px; align-items: center; }
.pain-systems { display: grid; grid-template-columns: repeat(2, 1fr); gap: 7px; }
.pain-systems span { min-height: 38px; display: grid; place-items: center; border-radius: 10px; background: rgba(255,255,255,.76); color: #45645a; font-size: 9px; font-weight: 800; }
.pain-broken-line { display: grid; grid-template-columns: 1fr; gap: 6px; place-items: center; }
.pain-broken-line i { width: 100%; border-top: 1px dashed rgba(35,143,117,.3); }
.pain-broken-line b { padding: 3px 7px; border-radius: 999px; background: rgba(255,255,255,.72); color: var(--detail-accent); font-size: 8px; white-space: nowrap; }
.pain-workbench { min-height: 108px; padding: 18px 15px; display: flex; flex-direction: column; justify-content: center; border-radius: 17px; background: linear-gradient(145deg, rgba(223,247,240,.92), rgba(255,255,255,.82)); }
.pain-workbench strong { margin-top: 5px; font-size: 15px; }
.pain-workbench span { height: 7px; margin-top: 17px; border-radius: 999px; background: linear-gradient(90deg, rgba(35,143,117,.35) 38%, rgba(35,143,117,.08) 38%); }

.pain-scene--ai { padding: 18px; display: grid; grid-template-columns: 105px 20px minmax(170px, 1fr); grid-template-rows: 1fr auto; align-items: center; justify-content: center; }
.pain-ai-core { min-height: 112px; padding: 17px; position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; border-radius: 24px; background: linear-gradient(145deg, rgba(229,244,199,.95), rgba(255,255,255,.82)); }
.pain-ai-core i { position: absolute; inset: 14px; border: 1px solid rgba(111,148,33,.12); border-radius: 18px; }
.pain-ai-core strong { font-size: 25px; color: var(--detail-accent); }
.pain-ai-core small { margin-top: 5px; }
.pain-ai-connector { color: var(--detail-accent); font-weight: 900; text-align: center; transform: rotate(-90deg); }
.pain-ai-flow { display: flex; align-items: center; justify-content: center; gap: 7px; }
.pain-ai-flow span { min-width: 49px; min-height: 39px; display: grid; place-items: center; border-radius: 11px; background: rgba(255,255,255,.74); color: #466159; font-size: 9px; font-weight: 800; }
.pain-ai-flow i { color: #91a09b; font-style: normal; font-size: 9px; }
.pain-scene--ai > p { grid-column: 1 / -1; }

@keyframes industries-problem-panel-in { from { opacity: 0; transform: translateY(7px); } to { opacity: 1; transform: translateY(0); } }
.industries-problem-note {
  margin: 22px 0 0;
  padding: 15px 20px;
  border: 1px solid rgba(54,126,99,.075);
  border-radius: 17px;
  background: linear-gradient(115deg, rgba(229,244,235,.9), rgba(238,248,243,.82));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.64);
  color: #245844;
  font-size: 14px;
  font-weight: 600;
  text-align: center;
}

.industries-business-chains { background: #f1f5f1; }
.industries-business-chains .industries-section-head { max-width: 900px; margin-bottom: 38px; }
.industries-business-chains .industries-section-head h2 { font-size: clamp(38px, 3.65vw, 52px); }
.industries-business-chains .industries-section-head > p:last-child { max-width: 780px; }
.business-chain-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.business-chain-card {
  --chain-bg-start: #f4f7f5;
  --chain-bg-end: #eef4f1;
  --chain-atmosphere: rgba(112,190,163,.16);
  --chain-icon-start: #5fb99d;
  --chain-icon-end: #597ec9;
  --chain-icon-soft: #b9e6d8;
  --chain-icon-ink: #2c6b59;
  --chain-active-bg: rgba(220,240,232,.88);
  --chain-active-text: #185541;
  --chain-node-border: rgba(29,73,60,.07);
  min-height: 276px;
  padding: 28px 30px;
  position: relative;
  isolation: isolate;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid rgba(24,61,50,.07);
  border-radius: 28px;
  background:
    radial-gradient(circle at 92% 8%, var(--chain-atmosphere), transparent 32%),
    linear-gradient(145deg, var(--chain-bg-start), var(--chain-bg-end));
  box-shadow: 0 10px 28px rgba(24,61,50,.028), inset 0 1px 0 rgba(255,255,255,.74);
  transition: transform .22s ease, box-shadow .22s ease, filter .22s ease;
}
.business-chain-card--sales { --chain-bg-start: #f2f3fd; --chain-bg-end: #eceffc; --chain-atmosphere: rgba(129,113,216,.17); --chain-icon-start: #8f79dc; --chain-icon-end: #5476d0; --chain-icon-soft: #ced4f4; --chain-icon-ink: #6051a8; --chain-active-bg: rgba(220,219,247,.92); --chain-active-text: #574797; }
.business-chain-card--procurement { --chain-bg-start: #eef9fa; --chain-bg-end: #e7f5f7; --chain-atmosphere: rgba(50,178,199,.16); --chain-icon-start: #46bac4; --chain-icon-end: #2b89b4; --chain-icon-soft: #bce8eb; --chain-icon-ink: #28778c; --chain-active-bg: rgba(201,237,240,.94); --chain-active-text: #236b76; }
.business-chain-card--project { --chain-bg-start: #f0f4fe; --chain-bg-end: #e9effc; --chain-atmosphere: rgba(89,121,210,.17); --chain-icon-start: #668ae1; --chain-icon-end: #665bc8; --chain-icon-soft: #c7d3f3; --chain-icon-ink: #4d60a5; --chain-active-bg: rgba(211,222,248,.94); --chain-active-text: #3f579d; }
.business-chain-card--inventory { --chain-bg-start: #f4f9ea; --chain-bg-end: #edf5e1; --chain-atmosphere: rgba(133,177,70,.16); --chain-icon-start: #8eba46; --chain-icon-end: #5f9c68; --chain-icon-soft: #d7e9ac; --chain-icon-ink: #50783a; --chain-active-bg: rgba(221,237,184,.94); --chain-active-text: #486b30; }
.business-chain-card--finance { --chain-bg-start: #faf5eb; --chain-bg-end: #f5edde; --chain-atmosphere: rgba(184,143,78,.14); --chain-icon-start: #c99d58; --chain-icon-end: #6e9576; --chain-icon-soft: #e8d8b3; --chain-icon-ink: #526f59; --chain-active-bg: rgba(233,230,207,.94); --chain-active-text: #49644e; }
.business-chain-card--automation { --chain-bg-start: #f6f1fd; --chain-bg-end: #efe8fa; --chain-atmosphere: rgba(139,101,205,.17); --chain-icon-start: #a274dc; --chain-icon-end: #675bc8; --chain-icon-soft: #dac6ee; --chain-icon-ink: #624aa5; --chain-active-bg: rgba(225,212,246,.94); --chain-active-text: #60459f; }
.business-chain-card__head { position: relative; z-index: 1; display: grid; grid-template-columns: 46px minmax(0, 1fr); gap: 16px; align-items: start; }
.business-chain-icon { width: 44px; height: 44px; display: inline-flex; align-items: center; justify-content: center; border: 1px solid rgba(255,255,255,.7); border-radius: 13px; background: rgba(255,255,255,.52); box-shadow: inset 0 1px 0 rgba(255,255,255,.7), 0 6px 15px rgba(42,72,63,.035); }
.business-chain-icon svg { width: 31px; height: 31px; overflow: visible; }
.business-chain-card__head h3 { margin: 0 0 8px; color: #173f33; font-size: 22px; font-weight: 700; line-height: 1.25; letter-spacing: -.018em; }
.business-chain-card__head p { min-height: 3.36em; max-width: 285px; margin: 0; display: -webkit-box; overflow: hidden; color: #596e67; font-size: 14px; line-height: 1.68; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.business-chain-flow { min-height: 72px; margin-top: auto; padding-top: 19px; position: relative; z-index: 1; display: flex; align-items: center; justify-content: center; gap: 6px; }
.business-chain-flow span { min-width: 0; min-height: 36px; padding: 0 9px; flex: 1 1 0; display: inline-flex; align-items: center; justify-content: center; border: 1px solid var(--chain-node-border); border-radius: 11px; background: rgba(255,255,255,.76); box-shadow: 0 4px 12px rgba(33,67,57,.025), inset 0 1px 0 rgba(255,255,255,.76); color: #456158; font-size: 10px; font-weight: 700; white-space: nowrap; }
.business-chain-flow span.is-active { border-color: rgba(30,89,71,.04); color: var(--chain-active-text); background: var(--chain-active-bg); box-shadow: 0 4px 12px rgba(33,67,57,.03), inset 0 1px 0 rgba(255,255,255,.62); }
.business-chain-flow i { color: rgba(70,101,91,.48); font-style: normal; font-size: 9px; }
.business-chain-stock { margin-top: auto; padding-top: 19px; position: relative; z-index: 1; display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.business-chain-stock span { min-height: 69px; padding: 12px 13px; display: flex; flex-direction: column; justify-content: space-between; border: 1px solid var(--chain-node-border); border-radius: 13px; background: rgba(255,255,255,.74); box-shadow: 0 4px 12px rgba(33,67,57,.025), inset 0 1px 0 rgba(255,255,255,.7); }
.business-chain-stock small { color: #71837a; font-size: 10px; }
.business-chain-stock b { color: var(--chain-active-text); font-size: 19px; line-height: 1; }
.business-chain-chart { min-height: 91px; margin-top: auto; padding-top: 15px; position: relative; z-index: 1; }
.business-chain-chart > div { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.business-chain-chart span { min-height: 47px; padding: 8px 10px; display: flex; flex-direction: column; gap: 2px; border: 1px solid var(--chain-node-border); border-radius: 11px; background: rgba(255,255,255,.72); box-shadow: 0 4px 12px rgba(33,67,57,.022), inset 0 1px 0 rgba(255,255,255,.68); }
.business-chain-chart b { color: #284d40; font-size: 18px; line-height: 1.1; }
.business-chain-chart small { color: #768a80; font-size: 9px; }
.business-chain-chart svg { position: absolute; inset: 60px 0 0; width: 100%; height: 31px; overflow: visible; }
.business-chain-chart path { fill: none; stroke: var(--chain-icon-end); stroke-width: 2.2; stroke-linecap: round; }
.business-chain-chart circle { fill: var(--chain-icon-end); stroke: rgba(255,255,255,.84); stroke-width: 2; vector-effect: non-scaling-stroke; }

.industries-method { padding: 70px 0 58px; color: #fff; background: radial-gradient(circle at 88% 16%, rgba(113,164,144,.16), transparent 34%), #0d2e25; }
.industries-method .container { width: min(var(--max), calc(100% - 48px)); }
.industries-method__grid { display: grid; grid-template-columns: minmax(0, 1.24fr) minmax(0, 1fr); column-gap: 44px; align-items: start; }
.industries-method h2 { max-width: none; margin: 0; color: #fff; font-size: clamp(42px, 3vw, 44px); line-height: 1.08; letter-spacing: -.025em; white-space: nowrap; }
.industries-method__copy { max-width: 650px; margin-top: 35px; margin-bottom: -35px; }
.industries-method__copy p { margin: 0; color: #bdccc7; font-size: 16px; line-height: 1.7; }
.industries-method__copy p + p { margin-top: 20px; }
.industries-method__steps { grid-column: 1 / -1; margin-top: 48px; display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid rgba(255,255,255,.08); }
.industries-method__steps > span { min-height: 84px; padding: 26px 20px 0; display: grid; grid-template-columns: 42px 1fr; grid-template-rows: 16px auto; gap: 3px 14px; border-right: 1px solid rgba(255,255,255,.08); }
.industries-method__steps > span:last-child { border-right: 0; }
.industries-method__steps > span > i { grid-column: 2; grid-row: 1; align-self: end; color: rgba(200,218,211,.6); font-size: 9px; font-weight: 700; font-style: normal; letter-spacing: .08em; }
.industries-method__steps .industries-page-icon { width: 42px; height: 42px; grid-column: 1; grid-row: 1 / span 2; color: #d8f06b; background: rgba(255,255,255,.065); border-color: rgba(255,255,255,.09); box-shadow: none; transition: color .22s ease, background-color .22s ease, border-color .22s ease; }
.industries-method__steps b { grid-column: 2; grid-row: 2; align-self: start; color: #edf4f1; font-size: 16px; line-height: 1.25; transition: color .22s ease, transform .22s ease; }
@media (hover: hover) and (pointer: fine) {
  .industries-method__steps > span:hover .industries-page-icon { color: #e4f979; background: rgba(255,255,255,.095); border-color: rgba(255,255,255,.13); }
  .industries-method__steps > span:hover b { color: #fff; transform: translateY(-1px); }
}

@media (max-width: 1180px) {
  .industries-method__grid { grid-template-columns: 1fr; row-gap: 24px; }
  .industries-method__copy { max-width: 900px; margin: 0; }
  .industries-method__steps { margin-top: 6px; }
  .industries-method { padding-block: 64px 58px; }
}

.industries-scale { background: #f8f9f6; }
.industries-scale .industries-section-head { max-width: 860px; }
.industries-scale-path { display: grid; grid-template-columns: 1fr 36px 1fr 36px 1fr; align-items: center; }
.industries-scale-path > article { min-height: 150px; padding: 27px; display: grid; grid-template-columns: 44px 1fr; gap: 15px; border-top: 2px solid #a6d5c4; background: rgba(255,255,255,.6); }
.industries-scale-path > article:first-child { border-radius: 20px 0 0 20px; }
.industries-scale-path > article:last-child { border-radius: 0 20px 20px 0; border-top-color: #a89bd2; }
.industries-scale-path > article > span { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 50%; color: #1e614d; background: #dff2e9; font-size: 11px; font-weight: 800; }
.industries-scale-path h3 { margin: 3px 0 9px; color: #173e32; font-size: 20px; }
.industries-scale-path p { margin: 0; color: #657871; font-size: 13px; line-height: 1.7; }
.industries-scale-path > i { color: #8fa49c; font-style: normal; text-align: center; }

.industries-cases { background: #edf3ed; }
.industries-cases__head { margin-bottom: 42px; display: flex; justify-content: space-between; gap: 32px; align-items: end; }
.industries-cases__head .industries-section-head { margin-bottom: 0; }
.industries-case-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; align-items: stretch; }
.industries-case-card { height: 390px; }
.industries-case-card .case-body { padding: 14px 20px; }
.industries-case-card .case-body > p { margin-top: 12px; }
.industries-case-card .case-logo { margin-top: auto; padding-top: 16px; }
.industries-final-cta { padding-block: 80px 88px; }

@media (hover: hover) and (pointer: fine) {
  .industries-focus-tab:hover { transform: translateX(2px); color: #174b3c; background: rgba(255,255,255,.48); }
  .business-chain-card:hover { transform: translateY(-3px); filter: saturate(1.035); box-shadow: 0 16px 36px rgba(24,61,50,.045), inset 0 1px 0 rgba(255,255,255,.76); }
  .industries-problem:not(.is-active):hover { transform: translateY(-2px); box-shadow: 0 12px 28px rgba(27,70,56,.045); filter: saturate(1.04); }
  .industries-problem:hover .industries-problem-icon { transform: translateY(-2px) scale(1.025); }
  .industries-problem-next:hover { transform: translateY(-2px); background: #205746; }
}

@media (max-width: 1080px) {
  .industries-hero__grid { grid-template-columns: minmax(450px, .94fr) minmax(0, 1.06fr); gap: 30px; }
  .industries-hero__copy h1 { font-size: clamp(45px, 4.6vw, 52px); }
  .industries-hero-product__shell { width: 100%; margin-right: 0; }
  .industries-focus-switcher { grid-template-columns: 210px minmax(0, 1fr); gap: 22px; }
  .industries-focus-panel { padding: 30px; grid-template-columns: minmax(0, .88fr) minmax(310px, 1.12fr); gap: 25px; }
  .industries-problem-showcase { grid-template-columns: minmax(0, 1.08fr) minmax(390px, .92fr); gap: 20px; }
  .industries-problem-grid { gap: 15px; }
  .industries-problem { min-height: 174px; border-radius: 27px; }
  .industries-problem-panel { padding-inline: 30px; }
  .business-chain-flow { gap: 4px; }
  .business-chain-flow span { min-width: 46px; padding-inline: 7px; }
}

@media (max-width: 960px) {
  .industries-hero { padding-block: 118px 72px; }
  .industries-hero__grid { grid-template-columns: 1fr; gap: 42px; }
  .industries-hero__copy { max-width: 680px; }
  .industries-hero__copy h1 { white-space: normal; }
  .industries-hero-visual { width: min(720px, 100%); min-height: 0; margin-inline: auto; }
  .industries-section { padding-block: 76px; }
  .industries-section-head { margin-bottom: 36px; }
  .industries-focus-switcher { display: block; }
  .industries-focus-tabs { margin-bottom: 18px; padding-bottom: 5px; flex-direction: row; gap: 8px; overflow-x: auto; scrollbar-width: none; }
  .industries-focus-tabs::-webkit-scrollbar { display: none; }
  .industries-focus-tab { width: auto; min-width: 138px; min-height: 52px; flex: 0 0 auto; grid-template-columns: 30px auto; padding: 7px 14px 7px 8px; border-radius: 15px; }
  .industries-focus-tab > span,
  .industries-focus-tab > i { display: none; }
  .industries-focus-tab .industries-page-icon { width: 34px; height: 34px; }
  .industries-focus-tab b { white-space: nowrap; }
  .industries-focus-panel { min-height: 500px; }
  .industries-problem-showcase { display: block; }
  .industries-problem-grid { margin: 0 -20px 18px; padding: 2px 20px 8px; grid-template-columns: repeat(6, 166px); grid-template-rows: 1fr; gap: 13px; overflow-x: auto; scroll-snap-type: x proximity; scrollbar-width: none; }
  .industries-problem-grid::-webkit-scrollbar { display: none; }
  .industries-problem { min-height: 160px; padding: 20px 15px 17px; border-radius: 25px; scroll-snap-align: center; }
  .industries-problem__visual { width: 56px; height: 56px; margin-bottom: 12px; }
  .industries-problem-icon { width: 52px; height: 52px; }
  .industries-problem-panel { min-height: 388px; }
  .business-chain-grid { grid-template-columns: repeat(2, 1fr); }
  .industries-method__grid { grid-template-columns: 1fr; gap: 24px; }
  .industries-method__copy { max-width: 820px; margin: 0; }
  .industries-method__steps { margin-top: 6px; }
  .industries-method { padding-block: 68px; }
  .industries-scale-path { grid-template-columns: 1fr; gap: 12px; }
  .industries-scale-path > i { transform: rotate(90deg); }
  .industries-scale-path > article:first-child,
  .industries-scale-path > article:last-child { border-radius: 20px; }
  .industries-scale-path > article { min-height: 128px; border-radius: 20px; }
  .industries-case-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 720px) {
  .industries-overview { overflow: hidden; }
  .industries-hero { padding-block: 104px 58px; }
  .industries-hero__copy h1 { font-size: clamp(42px, 12vw, 56px); }
  .industries-hero__description { margin-top: 22px; }
  .industries-hero__description p { font-size: 15px; }
  .industries-hero__actions .button { width: 100%; }
  .industries-hero-visual { min-height: 0; transform: none; }
  .industries-hero-product__glow { inset: 2% -8% -6%; filter: blur(24px); }
  .industries-hero-product__shell { padding: 8px; border-radius: 24px; }
  .industries-hero-product__shell::after { border-radius: 22px; }
  .industries-hero-product__bar { min-height: 34px; padding: 0 6px 6px; grid-template-columns: 45px minmax(0, 1fr); }
  .industries-hero-product__bar small { display: none; }
  .industries-hero-product__dots { gap: 4px; }
  .industries-hero-product__dots i { width: 6px; height: 6px; }
  .industries-hero-product__frame { padding: 3px; border-radius: 17px; }
  .industries-hero-product__frame img { border-radius: 13px; }
  .industries-hero-product__frame::after { inset: 3px; border-radius: 13px; }
  .industries-section { padding-block: 62px; }
  .industries-section-head { margin-bottom: 28px; }
  .industries-section-head h2 { font-size: 36px; }
  .industries-section-head > p:last-child { margin-top: 15px; font-size: 15px; }
  .industries-focus-panel { min-height: 0; padding: 24px; grid-template-columns: 1fr; gap: 28px; border-radius: 24px; }
  .industries-focus-copy h3 { font-size: 30px; }
  .industries-focus-copy > p:not(.industries-focus-copy__index) { font-size: 14px; }
  .industries-focus-chain { gap: 5px; }
  .industries-focus-chain span { font-size: 9px; }
  .industry-focus-visual { min-height: 320px; padding: 18px; }
  .industry-focus-metrics span { min-height: 68px; padding: 11px; }
  .industry-focus-metrics b { font-size: 18px; }
  .business-chain-grid,
  .industries-case-grid { grid-template-columns: 1fr; gap: 16px; }
  .industries-problem-grid { margin-inline: 0; padding: 0; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: repeat(3, 1fr); gap: 12px; overflow: visible; }
  .industries-problem { min-height: 148px; padding: 18px 12px 16px; border-radius: 23px; }
  .industries-problem__visual { width: 50px; height: 50px; margin-bottom: 10px; }
  .industries-problem-icon { width: 47px; height: 47px; }
  .industries-problem > b { font-size: 15px; }
  .industries-problem-panel { min-height: 434px; margin-top: 16px; padding: 27px 22px 20px; border-radius: 27px; }
  .industries-problem-panel__head { grid-template-columns: minmax(0, 1fr) 42px; gap: 15px; }
  .industries-problem-panel__head h3 { font-size: 31px; }
  .industries-problem-panel__head p { font-size: 12px; }
  .industries-problem-next { width: 42px; height: 42px; }
  .industries-problem-tags { margin-top: 13px; }
  .industries-problem-panel__scene { margin-top: 18px; }
  .pain-scene { min-height: 180px; border-radius: 20px; }
  .pain-scene--data { padding: 14px; grid-template-columns: 87px 16px minmax(0, 1fr); gap: 6px; }
  .pain-data-source { padding-inline: 7px; }
  .pain-data-source small { display: none; }
  .pain-data-target { min-height: 112px; padding: 13px; }
  .pain-data-target strong { font-size: 13px; }
  .pain-scene--repeat { padding: 18px 14px; grid-template-columns: 88px 17px minmax(0, 1fr); gap: 7px; }
  .pain-source-record { min-height: 105px; padding: 16px 11px; }
  .pain-source-record b { font-size: 12px; }
  .pain-repeat-targets span { padding-inline: 8px; }
  .pain-workflow { gap: 3px; }
  .pain-workflow > span { min-width: 47px; min-height: 54px; padding-inline: 4px; }
  .pain-workflow > em { font-size: 8px; }
  .pain-scene--status { padding: 14px; grid-template-columns: minmax(0, 1fr) 88px; gap: 8px; }
  .pain-status-head span { padding: 8px; }
  .pain-status-head b { font-size: 13px; }
  .pain-status-alert { padding-inline: 8px; }
  .pain-scene--breakpoint { padding: 15px; grid-template-columns: 78px minmax(42px, 1fr) 96px; gap: 7px; }
  .pain-systems { gap: 5px; }
  .pain-systems span { min-height: 34px; font-size: 8px; }
  .pain-workbench { min-height: 103px; padding: 13px 10px; }
  .pain-workbench strong { font-size: 12px; }
  .pain-scene--ai { padding: 14px; grid-template-columns: 74px 15px minmax(0, 1fr); }
  .pain-ai-core { min-height: 100px; padding: 11px; border-radius: 19px; }
  .pain-ai-core strong { font-size: 21px; }
  .pain-ai-flow { gap: 4px; }
  .pain-ai-flow span { min-width: 38px; min-height: 36px; font-size: 8px; }
  .business-chain-card { min-height: 258px; padding: 24px; border-radius: 27px; }
  .business-chain-card__head { grid-template-columns: 44px minmax(0, 1fr); gap: 14px; }
  .business-chain-icon { width: 42px; height: 42px; }
  .business-chain-icon svg { width: 30px; height: 30px; }
  .business-chain-card__head h3 { font-size: 20px; }
  .business-chain-card__head p { font-size: 13.5px; }
  .industries-method { padding-block: 56px; }
  .industries-method .container { width: min(1280px, calc(100% - 32px)); }
  .industries-method__grid { gap: 22px; }
  .industries-method h2 { font-size: 37px; white-space: normal; }
  .industries-method__copy p { font-size: 14px; line-height: 1.72; }
  .industries-method__copy p + p { margin-top: 16px; }
  .industries-method__steps { grid-template-columns: repeat(2, 1fr); }
  .industries-method__steps > span { min-height: 78px; padding: 22px 12px 0; grid-template-columns: 38px 1fr; gap: 3px 10px; }
  .industries-method__steps .industries-page-icon { width: 38px; height: 38px; }
  .industries-method__steps b { font-size: 14px; }
  .industries-method__steps > span:nth-child(2) { border-right: 0; }
  .industries-method__steps > span:nth-child(-n+2) { border-bottom: 1px solid rgba(255,255,255,.08); }
  .industries-scale-path > article { padding: 23px; grid-template-columns: 40px 1fr; }
  .industries-cases__head { margin-bottom: 28px; display: block; }
  .industries-cases__head .text-link { margin-top: 18px; }
  .industries-case-card { height: auto; }
  .industries-case-card .case-visual { height: auto; aspect-ratio: 16 / 7.2; }
  .industries-case-card .case-body { min-height: 210px; }
  .industries-final-cta { padding-block: 64px 70px; }
}

@media (prefers-reduced-motion: reduce) {
  .industries-focus-panel.is-active { animation: none; }
  .industries-focus-tab { transition: none; }
  .industries-problem-panel.is-active { animation: none; }
  .industries-problem,
  .industries-problem-icon,
  .industries-problem-next,
  .business-chain-card { transition: none; }
}

/* Homepage business challenges: compact product-entry showcase */
.business-status {
  padding-block: 94px 98px;
  background:
    radial-gradient(circle at 90% 16%, rgba(92,158,222,.045), transparent 31%),
    radial-gradient(circle at 8% 88%, rgba(82,187,157,.04), transparent 30%),
    linear-gradient(180deg, #fff 0%, #fafcf9 100%);
}
.business-status .section-head__copy { max-width: 850px; }
.business-status .business-status__head { margin-bottom: 38px; }
.business-status .business-status__head h2 {
  margin-bottom: 18px;
  color: var(--green-deep);
  font-size: clamp(38px, 3.65vw, 50px);
  line-height: 1.1;
}
.business-status .business-status__head p { max-width: 780px; }

.home-pain-showcase {
  display: grid;
  grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
  gap: 22px;
  align-items: stretch;
}
.home-pain-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-rows: repeat(2, 1fr);
  gap: 16px;
}
.home-pain-card {
  --problem-accent: #527fc9;
  --problem-accent-2: #176fe8;
  --problem-surface-a: #dfeeff;
  --problem-surface-b: #f2f7ff;
  --problem-shape-a: rgba(91,153,235,.26);
  --problem-shape-b: rgba(255,255,255,.58);
  min-width: 0;
  min-height: 174px;
  padding: 20px 16px 17px;
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border: 0;
  border-radius: 28px;
  background: linear-gradient(145deg, var(--problem-surface-a), var(--problem-surface-b));
  box-shadow: none;
  color: #173f33;
  cursor: pointer;
  isolation: isolate;
  text-align: center;
  transition: transform .22s ease, box-shadow .22s ease, filter .22s ease;
}
.home-pain-card::before,
.home-pain-card::after {
  content: '';
  position: absolute;
  pointer-events: none;
  z-index: -1;
}
.home-pain-card::before {
  top: -58%;
  left: -38%;
  width: 136%;
  height: 142%;
  border-radius: 42% 58% 52% 48%;
  background: var(--problem-shape-a);
  transform: rotate(24deg);
}
.home-pain-card::after {
  right: -46%;
  bottom: -66%;
  width: 136%;
  height: 148%;
  border: 1px solid rgba(255,255,255,.62);
  border-radius: 50%;
  background: var(--problem-shape-b);
  transform: rotate(-22deg);
}
.home-pain-card--apricot { --problem-accent: #ff6b4e; --problem-accent-2: #f4a044; --problem-surface-a: #ffe8df; --problem-surface-b: #fff5ed; --problem-shape-a: rgba(255,132,99,.24); }
.home-pain-card--cyan { --problem-accent: #1fc9cc; --problem-accent-2: #078de7; --problem-surface-a: #d9f5f9; --problem-surface-b: #eefaff; --problem-shape-a: rgba(53,193,222,.25); }
.home-pain-card--purple { --problem-accent: #876be4; --problem-accent-2: #5e7cea; --problem-surface-a: #e8e5ff; --problem-surface-b: #f6f3ff; --problem-shape-a: rgba(139,109,225,.23); }
.home-pain-card--mint { --problem-accent: #2aad88; --problem-accent-2: #26a8c1; --problem-surface-a: #dff5ea; --problem-surface-b: #f2fbf6; --problem-shape-a: rgba(72,190,153,.23); }
.home-pain-card__visual,
.home-pain-card > b { position: relative; z-index: 1; }
.home-pain-card__visual { width: 58px; height: 58px; margin-bottom: 12px; display: grid; place-items: center; }
.home-pain-card .industries-problem-icon { width: 55px; height: 55px; color: var(--problem-accent); filter: drop-shadow(0 7px 9px rgba(41,74,64,.09)); }
.home-pain-card > b { font-size: 16px; line-height: 1.3; letter-spacing: -.01em; }
.home-pain-card.is-active { box-shadow: inset 0 0 0 2px rgba(255,255,255,.82), 0 10px 26px rgba(37,75,63,.055); filter: saturate(1.06); }
.home-pain-card:focus-visible { outline: 3px solid rgba(30,89,71,.18); outline-offset: 3px; }

.home-pain-panels { min-width: 0; }
.home-pain-panel[hidden] { display: none; }
.home-pain-panel {
  --home-detail-accent: #3d7bd7;
  --home-detail-soft: rgba(102,154,229,.17);
  min-height: 364px;
  height: 100%;
  padding: 31px 33px 23px;
  position: relative;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  overflow: hidden;
  border-radius: 34px;
  background:
    radial-gradient(circle at 94% 6%, var(--home-detail-soft), transparent 31%),
    linear-gradient(145deg, #f2f4fb 0%, #eef2fa 54%, #f6f4fb 100%);
  animation: home-pain-panel-in .26s cubic-bezier(.22,.72,.28,1) both;
}
.home-pain-panel::after {
  content: '';
  position: absolute;
  right: -105px;
  bottom: -150px;
  width: 310px;
  height: 310px;
  border: 1px solid rgba(255,255,255,.58);
  border-radius: 50%;
  background: rgba(255,255,255,.14);
  pointer-events: none;
}
.home-pain-panel--apricot { --home-detail-accent: #df7658; --home-detail-soft: rgba(239,148,104,.18); }
.home-pain-panel--cyan { --home-detail-accent: #168eac; --home-detail-soft: rgba(63,187,208,.18); }
.home-pain-panel--purple { --home-detail-accent: #7b61c9; --home-detail-soft: rgba(144,117,216,.18); }
.home-pain-panel--mint { --home-detail-accent: #258f73; --home-detail-soft: rgba(70,186,151,.18); }
.home-pain-panel__head {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 44px;
  gap: 22px;
  align-items: start;
}
.home-pain-panel__head h3 { margin: 0; color: #153d32; font-size: 34px; line-height: 1.08; letter-spacing: -.025em; }
.home-pain-panel__head p { max-width: 470px; margin: 11px 0 0; color: #61736d; font-size: 13px; line-height: 1.68; }
.home-pain-tags { margin-top: 13px; display: flex; flex-wrap: wrap; gap: 6px; }
.home-pain-tags span { min-height: 24px; padding: 0 9px; display: inline-flex; align-items: center; border: 1px solid rgba(51,86,74,.065); border-radius: 999px; background: rgba(255,255,255,.55); color: #597067; font-size: 10px; font-weight: 700; }
.home-pain-next { width: 44px; height: 44px; padding: 0; display: grid; place-items: center; border: 0; border-radius: 50%; background: #173e33; box-shadow: 0 9px 20px rgba(27,65,54,.12); color: #fff; cursor: pointer; transition: transform .2s ease, background-color .2s ease; }
.home-pain-next span { transform: translateX(1px); font-size: 20px; line-height: 1; }
.home-pain-next:focus-visible { outline: 3px solid rgba(30,89,71,.18); outline-offset: 3px; }
.home-pain-panel__scene { min-height: 0; margin-top: 17px; position: relative; z-index: 1; display: flex; align-items: center; }
.home-pain-scene { width: 100%; min-height: 142px; position: relative; color: #315148; }
.home-pain-scene small { color: #83918c; font-size: 8px; font-weight: 600; }
.home-pain-scene b,
.home-pain-scene strong { color: #315148; }
.home-pain-arrow { min-width: 28px; display: flex; align-items: center; color: var(--home-detail-accent); }
.home-pain-arrow span { flex: 1; border-top: 1px dashed color-mix(in srgb, var(--home-detail-accent) 28%, transparent); }
.home-pain-arrow i { font-size: 15px; font-style: normal; font-weight: 800; }

.home-pain-scene--data,
.home-pain-scene--repeat,
.home-pain-scene--status { display: grid; grid-template-columns: minmax(0, 1.15fr) 38px minmax(150px, .85fr); gap: 9px; align-items: center; }
.home-pain-sources,
.home-pain-repeat-targets { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px; }
.home-pain-sources > span,
.home-pain-repeat-targets > span { min-width: 0; min-height: 47px; padding: 8px 9px; display: grid; grid-template-columns: 24px 1fr; grid-template-rows: auto auto; column-gap: 7px; align-items: center; border-radius: 12px; background: rgba(255,255,255,.62); }
.home-pain-sources > span > i,
.home-pain-repeat-targets > span > i { grid-row: 1 / span 2; width: 24px; height: 24px; display: grid; place-items: center; border-radius: 8px; background: rgba(83,133,207,.12); color: var(--home-detail-accent); font-size: 8px; font-style: normal; font-weight: 800; }
.home-pain-sources b,
.home-pain-repeat-targets b { overflow: hidden; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.home-pain-sources small,
.home-pain-repeat-targets small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.home-pain-unified,
.home-pain-record,
.home-pain-live-view { min-height: 118px; padding: 16px; position: relative; border-radius: 20px; background: rgba(255,255,255,.58); box-shadow: inset 0 0 0 1px rgba(255,255,255,.64); }
.home-pain-unified > div { display: flex; align-items: center; gap: 7px; }
.home-pain-unified > div > i { width: 8px; height: 8px; border-radius: 50%; background: var(--home-detail-accent); box-shadow: 0 0 0 5px color-mix(in srgb, var(--home-detail-accent) 11%, transparent); }
.home-pain-unified > div b { font-size: 9px; }
.home-pain-unified > strong { margin-top: 10px; display: block; font-size: 14px; }
.home-pain-bars { height: 37px; margin-top: 10px; display: flex; align-items: end; gap: 5px; border-bottom: 1px solid rgba(58,96,84,.08); }
.home-pain-bars i { width: 14%; border-radius: 4px 4px 0 0; background: color-mix(in srgb, var(--home-detail-accent) 34%, white); }
.home-pain-bars i:nth-child(1) { height: 28%; }
.home-pain-bars i:nth-child(2) { height: 54%; }
.home-pain-bars i:nth-child(3) { height: 43%; }
.home-pain-bars i:nth-child(4) { height: 78%; }

.home-pain-record { display: flex; flex-direction: column; justify-content: center; }
.home-pain-record strong { margin-top: 4px; font-size: 15px; }
.home-pain-record > span { height: 6px; margin-top: 14px; display: block; border-radius: 999px; background: color-mix(in srgb, var(--home-detail-accent) 15%, white); }
.home-pain-record > span:last-child { width: 68%; margin-top: 7px; }
.home-pain-repeat-targets > span > i { background: rgba(232,120,85,.12); }

.home-pain-scene--manual { min-height: 132px; display: flex; flex-direction: column; justify-content: center; }
.home-pain-workflow { display: flex; align-items: center; justify-content: center; gap: 6px; }
.home-pain-workflow > span { min-width: 68px; min-height: 62px; padding: 10px 8px; position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; border-radius: 15px; background: rgba(255,255,255,.62); }
.home-pain-workflow > span > i { width: 20px; height: 20px; margin-bottom: 7px; border: 5px solid rgba(43,170,194,.2); border-radius: 50%; }
.home-pain-workflow > span b { font-size: 9px; }
.home-pain-workflow > em { color: #8baca5; font-size: 10px; font-style: normal; }
.home-pain-workflow > span.needs-human { background: rgba(223,247,248,.82); box-shadow: inset 0 0 0 1px rgba(45,174,193,.1); }
.home-pain-workflow > span.needs-human small { padding: 3px 6px; position: absolute; top: -10px; border-radius: 999px; background: rgba(255,255,255,.9); color: var(--home-detail-accent); white-space: nowrap; }
.home-pain-scene--manual > p { margin: 16px 0 0; color: #71837d; font-size: 9px; text-align: center; }
.home-pain-scene--manual > p i { width: 6px; height: 6px; margin-right: 6px; display: inline-block; border-radius: 50%; background: var(--home-detail-accent); }

.home-pain-status-track { display: flex; align-items: center; justify-content: center; gap: 5px; }
.home-pain-status-track > span { min-width: 58px; min-height: 64px; padding: 9px 7px; display: flex; flex-direction: column; align-items: center; justify-content: center; border-radius: 14px; background: rgba(255,255,255,.6); }
.home-pain-status-track > span > i { width: 8px; height: 8px; margin-bottom: 6px; border-radius: 50%; background: #5abd94; }
.home-pain-status-track > span.is-delay > i { background: #8b93d8; }
.home-pain-status-track > span.is-risk > i { background: var(--home-detail-accent); }
.home-pain-status-track b { font-size: 9px; }
.home-pain-status-track small { margin-top: 3px; }
.home-pain-status-track em { color: #9aa9a4; font-size: 9px; font-style: normal; }
.home-pain-live-view { display: flex; flex-direction: column; justify-content: center; }
.home-pain-live-view strong { margin-top: 5px; font-size: 14px; }
.home-pain-live-view > div { height: 32px; margin-top: 10px; display: flex; align-items: end; gap: 5px; }
.home-pain-live-view > div i { width: 16%; border-radius: 4px 4px 0 0; background: color-mix(in srgb, var(--home-detail-accent) 27%, white); }
.home-pain-live-view > div i:nth-child(1) { height: 26%; }
.home-pain-live-view > div i:nth-child(2) { height: 43%; }
.home-pain-live-view > div i:nth-child(3) { height: 35%; }
.home-pain-live-view > div i:nth-child(4) { height: 72%; }
.home-pain-live-view > span { margin-top: 8px; color: #70827b; font-size: 8px; }
.home-pain-live-view > span > i { width: 6px; height: 6px; margin-right: 5px; display: inline-block; border-radius: 50%; background: var(--home-detail-accent); }

.home-pain-scene--system {
  display: grid;
  grid-template-columns: minmax(150px, 1fr) 26px 104px 26px minmax(144px, .9fr);
  gap: 7px;
  align-items: center;
}
.home-pain-system-sources { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px; }
.home-pain-system-sources > span {
  min-height: 47px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  background: rgba(255,255,255,.62);
  color: #3e5f55;
}
.home-pain-system-sources b { font-size: 10px; }
.home-pain-system-sync,
.home-pain-system-view {
  min-height: 118px;
  padding: 13px 10px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border-radius: 20px;
  background: rgba(255,255,255,.6);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.66);
  text-align: center;
}
.home-pain-system-sync strong { margin: 5px 0; color: var(--home-detail-accent); font-size: 21px; line-height: 1; }
.home-pain-system-sync span { color: #6d8179; font-size: 8px; font-weight: 700; }
.home-pain-system-view strong { max-width: 110px; margin-top: 6px; font-size: 13px; line-height: 1.35; }
.home-pain-system-view > div { width: 100%; height: 24px; margin-top: 11px; display: flex; align-items: end; justify-content: center; gap: 5px; }
.home-pain-system-view > div i { width: 17%; border-radius: 4px 4px 0 0; background: color-mix(in srgb, var(--home-detail-accent) 28%, white); }
.home-pain-system-view > div i:nth-child(1) { height: 40%; }
.home-pain-system-view > div i:nth-child(2) { height: 72%; }
.home-pain-system-view > div i:nth-child(3) { height: 55%; }

@keyframes home-pain-panel-in { from { opacity: 0; transform: translateY(7px) scale(.992); } to { opacity: 1; transform: translateY(0) scale(1); } }
@keyframes home-pain-card-return { from { opacity: .2; transform: translateY(5px) scale(.985); } to { opacity: 1; transform: translateY(0) scale(1); } }
.home-pain-card.is-returning { animation: home-pain-card-return .25s cubic-bezier(.22,.72,.28,1) both; }

@media (hover: hover) and (pointer: fine) {
  .home-pain-card:hover { transform: translateY(-2px); filter: saturate(1.08); box-shadow: 0 12px 26px rgba(37,75,63,.06); }
  .home-pain-card:hover .industries-problem-icon { transform: translateY(-2px); }
  .home-pain-next:hover { transform: translateY(-2px); background: #215846; }
}

@media (max-width: 960px) {
  .business-status { padding-block: 82px 86px; }
  .business-status .business-status__head { margin-bottom: 32px; }
  .home-pain-showcase { grid-template-columns: 1fr; gap: 18px; }
  .home-pain-card { min-height: 158px; }
  .home-pain-panel { min-height: 350px; }
}

@media (max-width: 640px) {
  .business-status { padding-top: 112px; padding-bottom: 72px; }
  .business-status .business-status__head h2 { font-size: 37px; }
  .business-status .business-status__head p { font-size: 15px; line-height: 1.72; }
  .home-pain-grid { gap: 11px; }
  .home-pain-card { min-height: 137px; padding: 16px 10px 14px; border-radius: 23px; }
  .home-pain-card__visual { width: 50px; height: 50px; margin-bottom: 9px; }
  .home-pain-card .industries-problem-icon { width: 47px; height: 47px; }
  .home-pain-card > b { font-size: 14px; }
  .home-pain-panel { min-height: 392px; padding: 25px 20px 20px; border-radius: 27px; }
  .home-pain-panel__head { grid-template-columns: minmax(0, 1fr) 40px; gap: 13px; }
  .home-pain-panel__head h3 { font-size: 29px; }
  .home-pain-panel__head p { font-size: 12px; }
  .home-pain-next { width: 40px; height: 40px; }
  .home-pain-panel__scene { margin-top: 17px; align-items: center; }
  .home-pain-scene { min-height: 174px; }
  .home-pain-scene--data,
  .home-pain-scene--repeat,
  .home-pain-scene--status { grid-template-columns: minmax(0, 1fr) 22px minmax(108px, .82fr); gap: 5px; }
  .home-pain-scene--system { grid-template-columns: minmax(82px, 1fr) 18px 62px 18px minmax(86px, .9fr); gap: 4px; }
  .home-pain-sources,
  .home-pain-repeat-targets { gap: 5px; }
  .home-pain-sources > span,
  .home-pain-repeat-targets > span { min-height: 43px; padding: 7px 6px; grid-template-columns: 20px 1fr; gap: 5px; }
  .home-pain-sources > span > i,
  .home-pain-repeat-targets > span > i { width: 20px; height: 20px; border-radius: 6px; }
  .home-pain-sources small,
  .home-pain-repeat-targets small { display: none; }
  .home-pain-unified,
  .home-pain-record,
  .home-pain-live-view { min-height: 112px; padding: 12px 10px; border-radius: 16px; }
  .home-pain-unified > strong,
  .home-pain-record strong,
  .home-pain-live-view strong { font-size: 12px; }
  .home-pain-workflow { gap: 3px; }
  .home-pain-workflow > span { min-width: 50px; min-height: 57px; padding-inline: 4px; }
  .home-pain-workflow > em { font-size: 8px; }
  .home-pain-status-track { gap: 3px; }
  .home-pain-status-track > span { min-width: 42px; min-height: 58px; padding-inline: 4px; }
  .home-pain-system-sources { gap: 5px; }
  .home-pain-system-sources > span { min-height: 43px; }
  .home-pain-system-sync,
  .home-pain-system-view { min-height: 112px; padding: 10px 6px; border-radius: 16px; }
  .home-pain-system-sync strong { font-size: 17px; }
  .home-pain-system-view strong { font-size: 11px; }
}

@media (prefers-reduced-motion: reduce) {
  .home-pain-panel { animation: none; }
  .home-pain-card.is-returning { animation: none; }
  .home-pain-card,
  .home-pain-card .industries-problem-icon,
  .home-pain-next { transition: none; }
}

/* Shared case-card editorial rhythm: home, case library and industries. */
.home-cases .home-case-card,
.industries-case-card {
  height: 408px;
}

.industries-case-card { height: 416px; }
.case-library-card { height: 456px; }

.home-cases .home-case-card .case-body,
.case-library-card .case-body,
.industries-case-card .case-body {
  min-height: 0;
  padding: 12px 22px 14px;
  display: flex;
  flex-direction: column;
}

.home-cases .home-case-card .case-industry,
.case-library-card .case-industry,
.industries-case-card .case-industry {
  min-height: 27px;
  margin-bottom: 12px;
  padding: 0 10px;
  display: inline-flex;
  align-items: center;
  border-color: rgba(30,89,71,.06);
  border-radius: 999px;
  background: rgba(225,242,232,.76);
  color: #246b55;
  font-size: 11px;
  font-weight: 650;
  line-height: 1;
}

.home-cases .home-case-card h3,
.case-library-card h3,
.industries-case-card h3 {
  height: auto;
  min-height: 2.64em;
  margin: 0;
  display: -webkit-box;
  overflow: hidden;
  color: #14231f;
  font-size: 21px;
  font-weight: 700;
  line-height: 1.32;
  letter-spacing: -.015em;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.home-cases .home-case-card .case-body > p,
.industries-case-card .case-body > p {
  height: 3.1em;
  min-height: 3.1em;
  margin: 17px 0 0;
  display: -webkit-box;
  overflow: hidden;
  color: rgba(20,32,28,.72);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.55;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.case-library-card .case-body > p {
  height: 4.65em;
  min-height: 4.65em;
  margin: 17px 0 0;
  display: -webkit-box;
  overflow: hidden;
  color: rgba(20,32,28,.72);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.55;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

.home-cases .home-case-card .case-logo,
.case-library-card .case-logo,
.industries-case-card .case-logo {
  margin-top: auto;
  padding-top: 20px;
  align-items: flex-end;
  border-top: 0;
  overflow: visible;
}

@media (max-width: 960px) {
  .home-cases .home-case-card,
  .case-library-card,
  .industries-case-card {
    height: auto;
  }

  .home-cases .home-case-card .case-body,
  .case-library-card .case-body,
  .industries-case-card .case-body {
    min-height: 250px;
  }

  .home-cases .home-case-card .case-body > p,
  .case-library-card .case-body > p,
  .industries-case-card .case-body > p {
    height: 4.65em;
    min-height: 4.65em;
    -webkit-line-clamp: 3;
  }
}

@media (max-width: 640px) {
  .home-cases .home-case-card .case-body,
  .case-library-card .case-body,
  .industries-case-card .case-body {
    min-height: 236px;
    padding: 15px 18px 16px;
  }

  .home-cases .home-case-card h3,
  .case-library-card h3,
  .industries-case-card h3 {
    min-height: 0;
    font-size: 19px;
    line-height: 1.32;
  }

  .home-cases .home-case-card .case-body > p,
  .case-library-card .case-body > p,
  .industries-case-card .case-body > p {
    margin-top: 16px;
    font-size: 16px;
  }
}
