:root {
  --ink: #16211f;
  --ink-soft: #344744;
  --muted: #6f7d7a;
  --paper: #f4f5f0;
  --surface: #fff;
  --line: #d9dfd9;
  --green: #0f6f57;
  --green-dark: #0b2f2d;
  --green-soft: #e3f0e9;
  --orange: #ef5b2a;
  --orange-soft: #fbe7df;
  --blue: #28708f;
  --blue-soft: #e3eff4;
  --gold: #c49332;
  --shadow: 0 22px 58px rgba(15, 38, 34, .13);
  font-family: "Microsoft YaHei", "PingFang SC", "Segoe UI", sans-serif;
  color: var(--ink);
  background: var(--paper);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 76px; min-width: 320px; }
body { min-width: 320px; margin: 0; background: var(--paper); letter-spacing: 0; }
body.modal-open { overflow: hidden; }
button, input, textarea { font: inherit; }
button { cursor: pointer; }
a { color: inherit; }
img { display: block; max-width: 100%; }
[hidden] { display: none !important; }
.visually-hidden { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0, 0, 0, 0) !important; white-space: nowrap !important; border: 0 !important; }
.container { width: min(1180px, calc(100% - 48px)); margin: 0 auto; }
.section { padding: 104px 0; }
.eyebrow { margin: 0 0 17px; color: var(--green); font-size: 12px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.eyebrow-light { color: #9ae0c2; }
.section-intro { max-width: 760px; margin-bottom: 48px; }
.section-intro h2, .workbench-copy h2, .governance-copy h2, .contact-copy h2 { margin: 0; font-size: clamp(34px, 4.1vw, 58px); line-height: 1.15; font-weight: 650; }
.section-intro h2 em, .workbench-copy h2 em, .governance-copy h2 em, .contact-copy h2 em { color: var(--orange); font-style: normal; }
.section-lede { margin: 20px 0 0; color: var(--muted); font-size: 16px; line-height: 1.9; }
.split-intro { max-width: none; display: grid; grid-template-columns: 1.15fr .85fr; align-items: end; gap: 90px; }
.split-intro .section-lede { margin: 0 0 4px; }

.site-header { position: fixed; z-index: 50; inset: 0 0 auto; height: 74px; display: grid; grid-template-columns: 270px 1fr 270px; align-items: center; gap: 18px; padding: 0 34px; color: #fff; background: rgba(10, 34, 32, .88); border-bottom: 1px solid rgba(255,255,255,.12); backdrop-filter: blur(14px); transition: background .2s; }
.site-header.scrolled { background: rgba(10, 34, 32, .97); }
.brand { display: inline-flex; align-items: center; gap: 10px; width: fit-content; color: inherit; text-decoration: none; }
.brand > img { width: 92px; max-height: 34px; object-fit: contain; object-position: left center; }
.site-header .brand > img { filter: brightness(0) invert(1); opacity: .96; }
.brand-copy { padding-left: 10px; border-left: 1px solid rgba(255,255,255,.25); }
.brand-copy strong, .brand-copy small { display: block; white-space: nowrap; }
.brand-copy strong { font-size: 13px; }
.brand-copy small { margin-top: 3px; color: #9fb3ae; font-size: 9px; }
.site-nav { justify-self: center; display: flex; align-items: center; gap: 30px; }
.site-nav a { color: #c7d4d1; text-decoration: none; font-size: 15px; font-weight: 500; }
.text-link { color: #c7d4d1; text-decoration: none; font-size: 13px; }
.site-nav a:hover, .text-link:hover { color: #fff; }
.site-nav a.active { color: #fff; font-weight: 700; }
.header-actions { justify-self: end; display: flex; align-items: center; gap: 10px; }
.header-login { display: inline-flex; align-items: center; gap: 6px; min-height: 38px; padding: 7px 11px; color: #d4e0dc; background: rgba(255,255,255,.035); border: 1px solid rgba(255,255,255,.26); border-radius: 4px; }
.header-login:hover { color: #fff; background: rgba(255,255,255,.1); border-color: rgba(255,255,255,.46); }
.header-login svg { width: 14px; height: 14px; }
.button { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; padding: 10px 18px; border: 1px solid transparent; border-radius: 4px; text-decoration: none; font-size: 14px; font-weight: 700; transition: transform .18s, background .18s, border-color .18s; }
.button:hover { transform: translateY(-2px); }
.button svg { width: 16px; }
.button-compact { min-height: 38px; padding: 7px 12px; font-size: 12px; }
.button-dark { color: #14332c; background: #fff; }
.button-primary { color: #fff; background: var(--orange); border-color: var(--orange); }
.button-primary:hover { background: #df4d1e; border-color: #df4d1e; }
.button-ghost { color: #fff; background: rgba(255,255,255,.04); border-color: rgba(255,255,255,.38); }
.button-ghost:hover { background: rgba(255,255,255,.12); }
.button-outline { color: var(--green); background: transparent; border-color: #a9c4b8; }
.button-outline:hover { color: var(--green-dark); background: var(--green-soft); border-color: var(--green); }
.button-light { color: var(--green-dark); background: #fff; border-color: #fff; }
.button-full { width: 100%; }
.icon-button { display: grid; place-items: center; width: 39px; height: 39px; padding: 0; color: inherit; background: transparent; border: 1px solid currentColor; border-radius: 4px; }
.icon-button svg { width: 17px; }
.menu-button { display: none; color: #fff; border-color: rgba(255,255,255,.3); }

.hero { position: relative; min-height: 790px; overflow: hidden; padding-top: 74px; color: #fff; background: #0a2928; }
.hero-media { position: absolute; inset: 0; background: url("assets/hero-bg.png") center / cover no-repeat; transform: scale(1.015); }
.hero-overlay { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(7,30,29,.98) 0%, rgba(7,30,29,.9) 43%, rgba(7,30,29,.52) 73%, rgba(7,30,29,.4) 100%); }
.hero-grid { position: relative; min-height: 610px; display: grid; grid-template-columns: minmax(0, 1.02fr) minmax(480px, .98fr); align-items: center; gap: 68px; padding-top: 52px; padding-bottom: 38px; }
.hero-copy { max-width: 650px; }
.hero-copy h1 { max-width: 640px; margin: 0; font-size: clamp(46px, 5.5vw, 76px); line-height: 1.09; font-weight: 650; }
.hero-copy h1 em { display: block; color: #ff7a4f; font-style: normal; }
.hero-lede { max-width: 610px; margin: 25px 0 0; color: #c9d8d4; font-size: 17px; line-height: 1.85; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 11px; margin-top: 30px; }
.hero-note { display: flex; align-items: flex-start; gap: 9px; max-width: 570px; margin-top: 20px; color: #9bb1ac; font-size: 12px; line-height: 1.6; }
.hero-note svg { width: 16px; flex: none; color: #72d0aa; }
.hero-stage { align-self: center; min-height: 430px; padding: 25px; color: var(--ink); background: rgba(248,250,246,.96); border: 1px solid rgba(255,255,255,.3); border-radius: 6px; box-shadow: 0 30px 70px rgba(0,0,0,.28); }
.stage-topline { display: flex; align-items: center; justify-content: space-between; color: #87938f; font-size: 9px; letter-spacing: .12em; }
.stage-topline b { display: flex; align-items: center; gap: 6px; color: var(--green); letter-spacing: 0; font-size: 10px; }
.stage-topline b i { width: 7px; height: 7px; background: #34b77c; border-radius: 50%; box-shadow: 0 0 0 4px rgba(52,183,124,.12); }
.stage-title { display: flex; align-items: flex-end; justify-content: space-between; margin-top: 25px; padding-bottom: 17px; border-bottom: 1px solid var(--line); }
.stage-title span { font-size: 19px; font-weight: 700; }
.stage-title strong { color: #d6ddd8; font-size: 42px; line-height: .8; }
.stage-flow { display: grid; grid-template-columns: 1fr 36px 1fr 36px 1fr; align-items: center; margin: 28px 0; }
.flow-node { min-width: 0; text-align: center; }
.node-icon { display: grid; place-items: center; width: 46px; height: 46px; margin: 0 auto 10px; border-radius: 50%; }
.node-icon svg { width: 19px; }
.node-blue { color: var(--blue); background: var(--blue-soft); }
.node-orange { color: var(--orange); background: var(--orange-soft); }
.node-green { color: var(--green); background: var(--green-soft); }
.flow-node small, .flow-node b { display: block; }
.flow-node small { color: var(--muted); font-size: 9px; }
.flow-node b { margin-top: 4px; font-size: 11px; }
.flow-line { height: 1px; color: #9aa6a1; background: #cfd7d2; }
.flow-line svg { display: block; width: 13px; margin: -6px auto 0; background: #f8faf6; }
.stage-task { padding: 18px; background: #fff; border: 1px solid var(--line); border-left: 3px solid var(--orange); }
.stage-task > div:first-child { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.task-label { color: var(--muted); font-size: 9px; }
.stage-task strong { display: block; margin-top: 3px; font-size: 14px; }
.task-status { padding: 4px 7px; color: #9b5319; background: #fff0de; font-size: 9px; font-weight: 700; }
.stage-task p { margin: 15px 0; color: var(--ink-soft); font-size: 11px; line-height: 1.7; }
.task-meta { display: flex; flex-wrap: wrap; gap: 15px; color: var(--muted); font-size: 9px; }
.task-meta span { display: inline-flex; align-items: center; gap: 4px; }
.task-meta svg { width: 11px; }
.hero-bottom { position: relative; display: grid; grid-template-columns: 160px 160px 160px 1fr; min-height: 116px; border-top: 1px solid rgba(255,255,255,.2); }
.hero-stat { display: flex; flex-direction: column; justify-content: center; padding: 0 28px; border-right: 1px solid rgba(255,255,255,.18); }
.hero-stat:first-child { padding-left: 0; }
.hero-stat strong { color: #fff; font-size: 33px; line-height: 1; }
.hero-stat span { margin-top: 7px; color: #a9bbb7; font-size: 11px; }
.hero-stat-copy { padding-left: 34px; border-right: 0; }
.hero-stat-copy span { max-width: 380px; margin: 0; font-size: 13px; line-height: 1.7; }

.answer-band { background: #fff; border-bottom: 1px solid var(--line); }
.answer-grid { min-height: 114px; display: grid; grid-template-columns: 170px 1fr auto; align-items: center; gap: 42px; }
.answer-label { color: var(--green); font-size: 11px; font-weight: 800; }
.answer-grid p { margin: 0; color: var(--ink-soft); font-size: 15px; line-height: 1.75; }
.answer-grid p strong { color: var(--ink); }
.inline-arrow { display: inline-flex; align-items: center; gap: 7px; color: var(--green); text-decoration: none; font-size: 12px; font-weight: 700; white-space: nowrap; }
.inline-arrow svg { width: 14px; }

.problem-section { background: var(--paper); }
.problem-grid { display: grid; grid-template-columns: repeat(4, 1fr); background: var(--line); border: 1px solid var(--line); gap: 1px; }
.problem-card { position: relative; min-height: 265px; display: flex; flex-direction: column; justify-content: space-between; padding: 30px 27px 25px; background: #fff; overflow: hidden; }
.problem-icon { display: grid; place-items: center; width: 43px; height: 43px; border-radius: 4px; }
.problem-icon svg { width: 19px; }
.icon-blue { color: var(--blue); background: var(--blue-soft); }
.icon-orange { color: #a95e19; background: #f7ead7; }
.icon-green { color: var(--green); background: var(--green-soft); }
.icon-coral { color: var(--orange); background: var(--orange-soft); }
.problem-card h3 { margin: 30px 0 10px; font-size: 18px; }
.problem-card p { margin: 0; color: var(--muted); font-size: 12.5px; line-height: 1.75; }
.problem-index { position: absolute; top: 22px; right: 20px; color: #e2e7e2; font-size: 36px; font-weight: 800; }

.services-section { background: #fff; }
.service-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); background: var(--line); border: 1px solid var(--line); gap: 1px; }
.service-card { position: relative; min-height: 390px; padding: 28px 25px; background: #fff; }
.service-card > svg { width: 26px; height: 26px; color: var(--green); }
.service-number { position: absolute; top: 25px; right: 23px; color: #dce3de; font-size: 34px; font-weight: 800; }
.service-card h3 { margin: 62px 0 14px; font-size: 18px; line-height: 1.45; }
.service-card > p { min-height: 78px; margin: 0; color: var(--muted); font-size: 12px; line-height: 1.8; }
.service-card ul { display: grid; gap: 10px; margin: 25px 0 0; padding: 20px 0 0; border-top: 1px solid var(--line); list-style: none; }
.service-card li { position: relative; padding-left: 15px; color: var(--ink-soft); font-size: 10.5px; line-height: 1.55; }
.service-card li::before { content: ""; position: absolute; top: .55em; left: 0; width: 5px; height: 5px; background: var(--orange); }
.service-principle { min-height: 70px; display: grid; grid-template-columns: 24px auto 1fr; align-items: center; gap: 12px; padding: 14px 20px; color: #d8e6e1; background: var(--green-dark); }
.service-principle svg { width: 19px; color: #8bdbb7; }
.service-principle strong { color: #fff; font-size: 12px; }
.service-principle span { padding-left: 16px; border-left: 1px solid rgba(255,255,255,.18); font-size: 11px; line-height: 1.65; }

.workbench-section { color: #fff; background: #e9efeb; }
.workbench-grid { display: grid; grid-template-columns: .88fr 1.12fr; align-items: center; gap: 84px; }
.workbench-copy { color: var(--ink); }
.workbench-copy > p:not(.eyebrow) { max-width: 560px; margin: 23px 0; color: var(--muted); font-size: 14px; line-height: 1.9; }
.workbench-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 26px; }
.workbench-access-note { display: flex; align-items: flex-start; gap: 8px; max-width: 530px; margin-top: 22px; color: #5f706b; font-size: 11px; line-height: 1.65; }
.workbench-access-note svg { width: 16px; flex: none; color: var(--green); }
.workbench-board { min-height: 400px; padding: 27px; color: var(--ink); background: #fff; border: 1px solid #d0dbd4; border-radius: 5px; box-shadow: 0 22px 52px rgba(15, 38, 34, .13); }
.board-topline { display: flex; align-items: center; justify-content: space-between; color: var(--muted); font-size: 9px; letter-spacing: .12em; }
.board-topline b { display: flex; align-items: center; gap: 6px; color: var(--green); letter-spacing: 0; font-size: 10px; }
.board-topline b i { width: 7px; height: 7px; background: #34b77c; border-radius: 50%; box-shadow: 0 0 0 4px rgba(52,183,124,.12); }
.workbench-board-title { display: flex; align-items: flex-end; justify-content: space-between; margin-top: 25px; padding-bottom: 17px; border-bottom: 1px solid var(--line); }
.workbench-board-title span { font-size: 19px; font-weight: 700; }
.workbench-board-title strong { color: #d6ddd8; font-size: 42px; line-height: .8; }
.workbench-capability-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 22px; }
.workbench-capability-grid article { min-height: 128px; padding: 16px; background: #f8faf6; border: 1px solid #e2e8e2; }
.capability-icon { display: grid; place-items: center; width: 34px; height: 34px; margin-bottom: 12px; border-radius: 4px; }
.capability-icon svg { width: 17px; }
.cap-blue { color: var(--blue); background: var(--blue-soft); }
.cap-orange { color: var(--orange); background: var(--orange-soft); }
.cap-green { color: var(--green); background: var(--green-soft); }
.cap-coral { color: #bd5b40; background: #f8e9e2; }
.workbench-capability-grid strong, .workbench-capability-grid small { display: block; }
.workbench-capability-grid strong { font-size: 13px; }
.workbench-capability-grid small { margin-top: 7px; color: var(--muted); font-size: 10px; line-height: 1.6; }
.workbench-board-footer { display: flex; align-items: center; justify-content: space-between; gap: 15px; margin-top: 22px; padding-top: 15px; color: var(--muted); border-top: 1px solid var(--line); font-size: 9px; }
.workbench-board-footer span { display: inline-flex; align-items: center; gap: 6px; }
.workbench-board-footer svg { width: 13px; color: var(--green); }

.solution-section { background: #fff; }
.industry-grid { display: grid; grid-template-columns: 1.2fr 1fr 1fr .72fr; gap: 14px; }
.industry-card { position: relative; min-width: 0; height: 420px; padding: 0; overflow: hidden; color: #fff; text-align: left; background: #173b37; border: 0; border-radius: 4px; }
.industry-image { position: absolute; inset: 0; background-size: cover; background-position: center; transition: transform .4s; }
.industry-card:hover .industry-image { transform: scale(1.04); }
.industry-image::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(9,31,29,.12), rgba(9,31,29,.9)); }
.image-retail { background-image: url("assets/genai-retail-space.jpg"); }
.image-dining { background-image: url("assets/genai-business-scene.jpg"); background-position: 58% center; }
.image-crossborder { background-image: url("assets/hero-bg.png"); background-position: 72% center; }
.industry-number { position: absolute; z-index: 2; top: 22px; left: 22px; display: grid; place-items: center; width: 35px; height: 35px; color: #fff; border: 1px solid rgba(255,255,255,.55); font-size: 10px; }
.industry-copy { position: absolute; z-index: 2; inset: auto 0 0; min-height: 130px; padding: 25px 55px 23px 23px; }
.industry-copy strong, .industry-copy small { display: block; }
.industry-copy strong { font-size: 18px; }
.industry-copy small { margin-top: 11px; color: #cad8d4; font-size: 11px; line-height: 1.6; }
.industry-copy svg { position: absolute; right: 22px; bottom: 25px; width: 18px; }
.industry-text { color: var(--ink); background: #e9eee9; }
.industry-text .industry-number { color: var(--green); border-color: rgba(15,111,87,.38); }
.industry-text .industry-copy small { color: var(--muted); }

.scenario-section { background: #eef1ec; }
.scenario-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 16px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.filter-group { display: flex; align-items: center; gap: 5px; }
.filter-button { min-height: 36px; padding: 7px 12px; color: var(--muted); background: transparent; border: 0; border-radius: 3px; font-size: 12px; }
.filter-button:hover { color: var(--ink); background: rgba(255,255,255,.6); }
.filter-button.active { color: #fff; background: var(--green); }
.search-box { display: flex; align-items: center; width: min(310px, 100%); height: 38px; padding: 0 11px; background: #fff; border: 1px solid var(--line); border-radius: 3px; }
.search-box svg { width: 15px; color: var(--muted); }
.search-box input { min-width: 0; width: 100%; height: 100%; padding: 0 8px; color: var(--ink); background: transparent; border: 0; outline: 0; font-size: 12px; }
.scenario-layout { display: grid; grid-template-columns: 210px minmax(0, 1fr); margin-top: 26px; background: #fff; border: 1px solid var(--line); }
.domain-list { padding: 12px; background: #f8f9f6; border-right: 1px solid var(--line); }
.domain-button { width: 100%; min-height: 46px; display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 8px 11px; color: var(--muted); text-align: left; background: transparent; border: 0; border-radius: 3px; font-size: 11px; }
.domain-button span { flex: 1; }
.domain-button b { color: #a3ada8; font-size: 9px; }
.domain-button:hover { color: var(--ink); background: #fff; }
.domain-button.active { color: var(--green); background: var(--green-soft); font-weight: 700; }
.domain-button.active b { color: var(--green); }
.scenario-results { min-width: 0; padding: 22px; }
.results-head { min-height: 35px; display: flex; align-items: center; justify-content: space-between; gap: 15px; margin-bottom: 13px; }
.results-head > span { color: var(--muted); font-size: 11px; }
.text-button { display: inline-flex; align-items: center; gap: 6px; padding: 6px 0; color: var(--green); background: transparent; border: 0; font-size: 11px; font-weight: 700; }
.text-button svg { width: 13px; }
.scenario-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 11px; }
.scenario-card { min-width: 0; min-height: 320px; display: flex; flex-direction: column; padding: 19px; text-align: left; color: var(--ink); background: #fff; border: 1px solid var(--line); border-radius: 3px; transition: transform .18s, border-color .18s, box-shadow .18s; }
.scenario-card:hover { transform: translateY(-3px); border-color: #9db8ad; box-shadow: 0 14px 32px rgba(20,54,47,.09); }
.scenario-card-top { display: flex; align-items: center; justify-content: space-between; gap: 9px; }
.scenario-domain { color: var(--green); font-size: 9px; font-weight: 800; }
.scenario-type { padding: 4px 6px; color: #8c5a1e; background: #fbf0de; font-size: 8px; }
.scenario-card h3 { margin: 18px 0 12px; font-size: 18px; line-height: 1.4; }
.scenario-value { min-height: 66px; display: grid; align-content: center; gap: 5px; padding: 11px 12px; background: #f3f7f3; border-left: 3px solid var(--orange); }
.scenario-value small { color: var(--muted); font-size: 8px; font-weight: 700; }
.scenario-value strong { color: var(--orange); font-size: 14px; line-height: 1.45; }
.scenario-pain { display: -webkit-box; margin: 13px 0 0; overflow: hidden; color: var(--muted); font-size: 10.5px; line-height: 1.7; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.scenario-card-meta { margin-top: auto; padding-top: 18px; border-top: 1px solid #edf0ec; }
.scenario-card-meta span { display: block; color: var(--ink-soft); font-size: 9.5px; line-height: 1.5; }
.scenario-card-meta b { display: flex; align-items: center; justify-content: space-between; margin-top: 10px; color: var(--green); font-size: 10px; }
.scenario-card-meta svg { width: 13px; }
.empty-state { grid-column: 1 / -1; min-height: 220px; display: grid; place-items: center; color: var(--muted); text-align: center; border: 1px dashed #bdc7c1; }
.empty-state svg { width: 30px; margin: 0 auto 10px; }
.scenario-footer { display: flex; align-items: center; justify-content: space-between; gap: 20px; min-height: 52px; padding-top: 10px; color: var(--muted); font-size: 11px; }
.scenario-footer span, .scenario-footer a { display: inline-flex; align-items: center; gap: 7px; }
.scenario-footer svg { width: 14px; }
.scenario-footer a { color: var(--green); text-decoration: none; font-weight: 700; }

.governance-section { color: #fff; background: #0b302d; }
.governance-grid { display: grid; grid-template-columns: .85fr 1.15fr; align-items: center; gap: 100px; }
.governance-copy > p:not(.eyebrow) { margin: 24px 0 28px; color: #aec2bd; font-size: 14px; line-height: 1.9; }
.governance-board { padding: 28px; color: var(--ink); background: #f8faf6; border-radius: 5px; box-shadow: 0 26px 65px rgba(0,0,0,.24); }
.board-head { display: flex; align-items: center; justify-content: space-between; padding-bottom: 18px; border-bottom: 1px solid var(--line); }
.board-head span { color: var(--muted); font-size: 9px; letter-spacing: .12em; }
.board-head b { font-size: 13px; }
.responsibility-row { display: grid; grid-template-columns: 43px 1fr auto; align-items: center; gap: 14px; min-height: 86px; border-bottom: 1px solid var(--line); }
.responsibility-mark { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; }
.responsibility-mark svg { width: 17px; }
.mark-ai { color: var(--orange); background: var(--orange-soft); }
.mark-supervise { color: var(--blue); background: var(--blue-soft); }
.mark-approve { color: var(--green); background: var(--green-soft); }
.responsibility-row strong, .responsibility-row small { display: block; }
.responsibility-row strong { font-size: 13px; }
.responsibility-row small { margin-top: 5px; color: var(--muted); font-size: 10px; }
.responsibility-row em { padding: 5px 7px; color: var(--muted); background: #edf0ec; font-size: 9px; font-style: normal; }
.board-note { display: flex; gap: 9px; margin-top: 20px; padding: 12px; color: #3f655a; background: var(--green-soft); font-size: 10px; line-height: 1.6; }
.board-note svg { width: 16px; flex: none; }

.cases-section { background: #fff; }
.case-outcome-grid { display: grid; grid-template-columns: repeat(4, 1fr); margin: 0; border: 1px solid var(--line); background: var(--line); gap: 1px; }
.case-outcome-grid div { min-height: 146px; display: flex; flex-direction: column; justify-content: center; padding: 24px 28px; background: #0b302d; }
.case-outcome-grid span { color: #78aa9b; font-size: 10px; font-weight: 800; }
.case-outcome-grid strong { margin-top: 8px; color: #ff8b68; font-size: 34px; line-height: 1; }
.case-outcome-grid small { margin-top: 12px; color: #c1d2cd; font-size: 11px; }
.case-value-banner { min-height: 175px; display: flex; align-items: center; margin: 0 0 28px; padding: 40px 46px; color: #fff; background: #16463f; border-top: 1px solid rgba(255,255,255,.12); }
.case-value-banner h2 { max-width: none; margin: 0; font-size: 48px; line-height: 1.2; font-weight: 650; }
.case-value-banner h2 em { color: #ff8057; font-style: normal; }
.case-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.case-card { background: #fff; border: 1px solid var(--line); border-radius: 4px; overflow: hidden; }
.case-image { position: relative; height: 235px; background-position: center; background-size: cover; }
.case-image::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(7,31,30,.06), rgba(7,31,30,.74)); }
.case-image > span { position: absolute; z-index: 1; left: 22px; bottom: 19px; padding: 6px 8px; color: #fff; background: rgba(8,39,37,.74); border-left: 3px solid var(--orange); font-size: 10px; font-weight: 800; }
.case-image-loss { background-image: url("assets/case-tea.svg"); background-position: center; }
.case-image-people { background-image: url("assets/case-baozi.svg"); background-position: center; }
.case-image-product { background-image: url("assets/case-hakka.svg"); background-position: center; }
.case-image-risk { background-image: url("assets/case-chinese.svg"); background-position: center; }
.case-body { min-height: 330px; padding: 25px; }
.case-body > span { color: var(--green); font-size: 10px; font-weight: 800; }
.case-metric { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin: 17px 0 15px; padding-bottom: 16px; border-bottom: 1px solid var(--line); }
.case-metric strong { color: var(--orange); font-size: clamp(22px, 2.5vw, 32px); line-height: 1.15; }
.case-metric em { flex: none; padding: 5px 7px; color: #8c5a1e; background: #fbf0de; font-size: 9px; font-style: normal; font-weight: 700; }
.case-body h3 { margin: 0 0 12px; font-size: 19px; line-height: 1.5; }
.case-body p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.8; }
.case-tags { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 20px; }
.case-tags em { padding: 5px 7px; color: var(--ink-soft); background: var(--paper); font-size: 9px; font-style: normal; }
.case-disclaimer { display: flex; align-items: flex-start; gap: 10px; margin-top: 18px; padding: 15px 17px; color: #6b5b3d; background: #fff6e8; border: 1px solid #ead9ba; font-size: 10.5px; line-height: 1.7; }
.case-disclaimer svg { width: 16px; flex: none; margin-top: 1px; color: #a56b1d; }

.method-section { background: var(--paper); }
.method-grid { display: grid; grid-template-columns: repeat(4, 1fr); background: var(--line); border: 1px solid var(--line); gap: 1px; }
.method-card { position: relative; min-height: 275px; padding: 26px; background: #fff; }
.method-card > span { position: absolute; top: 22px; right: 22px; color: #dfe5df; font-size: 34px; font-weight: 800; }
.method-card > svg { width: 25px; color: var(--green); }
.method-card h3 { margin: 65px 0 13px; font-size: 17px; }
.method-card p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.75; }
.metric-strip { min-height: 72px; display: flex; align-items: center; flex-wrap: wrap; gap: 10px; padding: 14px 20px; color: #d9e6e2; background: var(--green-dark); }
.metric-strip strong { margin-right: auto; color: #fff; font-size: 12px; }
.metric-strip span { padding: 5px 8px; background: rgba(255,255,255,.08); font-size: 9px; }

.about-section { color: #fff; background: #123834; }
.about-grid { display: grid; grid-template-columns: .78fr 1.22fr; align-items: start; gap: 90px; }
.about-intro { position: sticky; top: 110px; }
.about-intro h2 { margin: 0; font-size: clamp(34px, 4vw, 55px); line-height: 1.18; font-weight: 650; }
.about-intro h2 em { color: #ff7a4f; font-style: normal; }
.about-intro > p:not(.eyebrow) { margin: 24px 0 0; color: #b3c5c0; font-size: 14px; line-height: 1.9; }
.about-position { margin-top: 36px; padding: 18px 20px; background: rgba(255,255,255,.06); border-left: 3px solid var(--orange); }
.about-position span, .about-position strong { display: block; }
.about-position span { color: #85a29b; font-size: 10px; }
.about-position strong { margin-top: 8px; font-size: 14px; line-height: 1.6; }
.values-list { border-top: 1px solid rgba(255,255,255,.17); }
.value-item { display: grid; grid-template-columns: 55px 1fr; gap: 18px; min-height: 130px; padding: 26px 10px 24px 0; border-bottom: 1px solid rgba(255,255,255,.17); }
.value-item > span { color: #75918b; font-size: 11px; font-weight: 800; }
.value-item h3 { margin: 0; font-size: 20px; }
.value-item p { margin: 11px 0 0; color: #b7c7c3; font-size: 13px; line-height: 1.8; }
.value-boundary h3 { color: #ff9a78; }

.faq-section { background: #fff; }
.faq-grid { display: grid; grid-template-columns: .72fr 1.28fr; gap: 100px; }
.faq-list { border-top: 1px solid var(--line); }
.faq-list details { border-bottom: 1px solid var(--line); }
.faq-list summary { min-height: 74px; display: flex; align-items: center; justify-content: space-between; gap: 20px; list-style: none; cursor: pointer; font-size: 15px; font-weight: 700; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary svg { width: 17px; color: var(--muted); transition: transform .2s; }
.faq-list details[open] summary svg { transform: rotate(180deg); }
.faq-list details p { margin: 0; padding: 0 35px 24px 0; color: var(--muted); font-size: 12px; line-height: 1.85; }

.contact-section { padding: 96px 0; color: #fff; background: #0b2f2d; }
.contact-grid { display: grid; grid-template-columns: 1fr 460px 222px; align-items: start; gap: 55px; }
.contact-grid.contact-grid-minimal { grid-template-columns: minmax(0, 1fr) 222px; align-items: center; gap: 72px; }
.contact-grid-minimal .contact-panel { width: min(100%, 760px); }
.contact-grid-minimal .qr-grid { justify-self: start; margin-bottom: 0; }
.contact-page-section { min-height: calc(100vh - 76px); display: flex; align-items: center; }
.contact-copy > p:not(.eyebrow) { max-width: 610px; margin: 23px 0; color: #aec1bc; font-size: 14px; line-height: 1.85; }
.contact-points { display: flex; flex-wrap: wrap; gap: 10px 18px; color: #d4e1dd; font-size: 10px; }
.contact-points span { display: inline-flex; align-items: center; gap: 6px; }
.contact-points svg { width: 13px; color: #7ad0aa; }
.contact-panel { padding: 25px; color: var(--ink); background: #fff; border-radius: 5px; }
.contact-panel-head { display: flex; align-items: center; justify-content: space-between; padding-bottom: 16px; border-bottom: 1px solid var(--line); font-weight: 700; }
.contact-panel-head svg { width: 18px; color: var(--green); }
.contact-panel form { display: grid; gap: 12px; margin-top: 18px; }
.contact-panel label { color: var(--muted); font-size: 10px; }
.contact-panel input, .contact-panel textarea { width: 100%; margin-top: 6px; padding: 10px 11px; color: var(--ink); background: #f7f8f5; border: 1px solid #ccd4ce; border-radius: 3px; outline: 0; font-size: 12px; }
.contact-panel input { height: 40px; }
.contact-panel input:focus, .contact-panel textarea:focus { background: #fff; border-color: var(--green); box-shadow: 0 0 0 3px rgba(15,111,87,.1); }
.contact-panel form > small { color: #9aa4a0; font-size: 9px; text-align: center; }
.contact-qr { display: grid; gap: 9px; align-self: end; margin-bottom: 12px; text-align: center; }
.contact-qr img { width: 105px; padding: 6px; background: #fff; }
.contact-qr span { color: #8ca09b; font-size: 9px; }
.form-success { min-height: 355px; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; }
.form-success > svg { width: 42px; color: var(--green); }
.form-success strong { margin-top: 14px; font-size: 19px; }
.form-success p { max-width: 280px; margin: 10px 0 20px; color: var(--muted); font-size: 11px; line-height: 1.7; }

.site-footer { color: #b6c4c0; background: #071f1e; border-top: 1px solid rgba(255,255,255,.1); }
.footer-grid { min-height: 180px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 40px; }
.footer-brand > img { filter: brightness(0) invert(1); }
.footer-grid > div:first-child > p { margin: 15px 0 0; color: #758c87; font-size: 10px; }
.footer-links { display: flex; gap: 24px; }
.footer-links a { text-decoration: none; font-size: 11px; }
.footer-meta { justify-self: end; display: grid; gap: 7px; color: #6f8580; text-align: right; font-size: 9px; }
.footer-meta a { color: inherit; text-decoration: none; }
.footer-meta a:hover { color: #a8c3bb; text-decoration: underline; text-underline-offset: 3px; }

.modal-backdrop { position: fixed; z-index: 90; inset: 0; background: rgba(5,20,19,.68); backdrop-filter: blur(3px); }
.scenario-modal { position: fixed; z-index: 91; top: 2.5vh; left: 50%; width: min(1120px, calc(100% - 32px)); max-height: 95vh; overflow-y: auto; padding: 0; transform: translateX(-50%); color: var(--ink); background: #edf1ed; border-radius: 6px; box-shadow: 0 28px 80px rgba(0,0,0,.32); }
.modal-head { position: sticky; z-index: 3; top: 0; display: flex; align-items: flex-start; justify-content: space-between; gap: 25px; padding: 22px 28px; color: #fff; background: #0c3031; border-bottom: 1px solid rgba(255,255,255,.14); }
.modal-head h2 { margin: 7px 0 0; font-size: 30px; line-height: 1.3; }
.modal-head p { margin: 7px 0 0; color: #a9c0ba; font-size: 10px; }
.modal-head .icon-button { color: #fff; border-color: rgba(255,255,255,.28); }
.modal-brand { color: #84cfb0; font-size: 8px; font-weight: 800; letter-spacing: .08em; }
.scenario-detail { padding: 22px 28px 8px; }
.detail-agent-name { display: grid; grid-template-columns: 180px 1fr; align-items: center; min-height: 116px; padding: 22px 25px; color: #fff; background: #16463f; }
.detail-agent-name > span { color: #8fceba; font-size: 9px; font-weight: 800; }
.detail-agent-name div { padding-left: 25px; border-left: 1px solid rgba(255,255,255,.18); }
.detail-agent-name small, .detail-agent-name strong { display: block; }
.detail-agent-name small { color: #a9c7be; font-size: 9px; }
.detail-agent-name strong { margin-top: 7px; font-size: 28px; line-height: 1.25; }
.detail-section { margin-top: 14px; padding: 23px 25px; background: #fff; border: 1px solid var(--line); }
.detail-section > header { display: block; margin-bottom: 20px; padding-bottom: 15px; border-bottom: 1px solid var(--line); }
.detail-section > header span { color: var(--green); font-size: 8px; font-weight: 800; }
.detail-section > header h3 { margin: 6px 0 0; font-size: 20px; }
.detail-current-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; margin: 0; padding: 0; background: var(--line); border: 1px solid var(--line); list-style: none; counter-reset: current-sop; }
.detail-current-list li { counter-increment: current-sop; position: relative; min-height: 74px; padding: 17px 17px 17px 52px; background: #f8faf7; font-size: 11px; line-height: 1.7; }
.detail-current-list li::before { content: counter(current-sop, decimal-leading-zero); position: absolute; top: 18px; left: 17px; color: var(--orange); font-size: 9px; font-weight: 800; }
.detail-breakpoint-section { display: grid; grid-template-columns: 220px 1fr; align-items: center; gap: 30px; border-left: 4px solid var(--orange); }
.detail-breakpoint-section > header { margin: 0; padding: 0; border: 0; }
.detail-breakpoint-section > p { margin: 0; color: var(--ink-soft); font-size: 14px; line-height: 1.9; }
.detail-outcome-section { color: #fff; background: #0c3031; border-color: #0c3031; }
.detail-outcome-section > header { border-bottom-color: rgba(255,255,255,.14); }
.detail-outcome-section > header span { color: #86d2b5; }
.detail-outcome-section > header h3 { color: #fff; }
.detail-outcome-section > strong { display: block; color: #ff8057; font-size: 26px; line-height: 1.35; }
.detail-outcome-section > p { margin: 14px 0 0; color: #c6d8d3; font-size: 12px; line-height: 1.85; }
.detail-outcome-section > small { display: block; margin-top: 13px; color: #89a49d; font-size: 9px; }
.detail-flow-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.detail-flow-grid article { position: relative; min-height: 100px; display: flex; align-items: center; padding: 18px; background: #f8faf7; border: 1px solid var(--line); border-top: 3px solid var(--green); }
.detail-flow-grid article > span { width: 100%; display: grid; grid-template-columns: 27px 1fr; align-items: start; gap: 10px; }
.detail-flow-grid article b { color: var(--orange); font-size: 10px; line-height: 1.65; }
.detail-flow-grid article strong { color: var(--ink); font-size: 12px; line-height: 1.65; }
.modal-footer { position: sticky; z-index: 3; bottom: 0; display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 14px; padding: 16px 28px; background: rgba(248,250,246,.97); border-top: 1px solid var(--line); backdrop-filter: blur(10px); }
.scroll-top-button { position: fixed; z-index: 105; right: 22px; bottom: 22px; width: 44px; height: 44px; display: grid; place-items: center; color: #fff; background: var(--green); border: 1px solid rgba(255,255,255,.72); border-radius: 4px; box-shadow: 0 12px 28px rgba(7, 41, 35, .2); opacity: 0; pointer-events: none; transform: translateY(10px); transition: opacity .2s, transform .2s, background .2s; }
.scroll-top-button:not([hidden]) { opacity: 1; pointer-events: auto; transform: translateY(0); }
.scroll-top-button:hover { background: var(--orange); }
.scroll-top-button:focus-visible { outline: 3px solid rgba(239,91,42,.38); outline-offset: 2px; }
.scroll-top-button svg { width: 18px; }
.toast { position: fixed; z-index: 120; right: 22px; bottom: 82px; max-width: 320px; padding: 12px 15px; color: #fff; background: var(--ink); border-left: 3px solid var(--orange); border-radius: 3px; box-shadow: var(--shadow); opacity: 0; pointer-events: none; transform: translateY(12px); transition: opacity .2s, transform .2s; font-size: 11px; }
.toast.show { opacity: 1; transform: translateY(0); }

/* Theme pages keep each topic self-contained while sharing the same system. */
.page-hero { padding: 148px 0 88px; border-bottom: 1px solid var(--line); }
.page-hero-light { background: #edf2ee; }
.page-hero-dark { color: #fff; background: #0b2f2d; }
.page-hero-grid { display: grid; grid-template-columns: minmax(0, 1fr) 360px; align-items: center; gap: 90px; }
.page-hero h1 { max-width: 780px; margin: 0; font-size: clamp(42px, 5.5vw, 76px); line-height: 1.08; font-weight: 650; }
.page-hero h1 em { color: var(--orange); font-style: normal; }
.page-hero > .container > p:last-child, .page-hero-grid > div:first-child > p:last-child { max-width: 700px; margin: 25px 0 0; color: var(--muted); font-size: 17px; line-height: 1.85; }
.page-hero-dark .page-hero-grid > div:first-child > p:last-child { color: #b8cbc5; }
.page-hero-stamp { min-height: 260px; display: flex; flex-direction: column; justify-content: space-between; padding: 27px; color: #fff; background: rgba(255,255,255,.07); border: 1px solid rgba(255,255,255,.2); border-radius: 5px; }
.page-hero-stamp span { color: #9ae0c2; font-size: 9px; letter-spacing: .12em; }
.page-hero-stamp strong { font-size: 33px; line-height: 1.2; }
.page-hero-stamp small { color: #9eb6af; font-size: 11px; }
.page-section { padding: 104px 0; background: #fff; }
.page-section:nth-of-type(even) { background: #f0f3ef; }
.architecture-section { background: #f0f3ef; }
.architecture-grid, .architecture-detail-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; background: var(--line); border: 1px solid var(--line); }
.architecture-card, .architecture-detail-grid article { min-height: 300px; padding: 28px; color: var(--ink); background: #fff; text-decoration: none; }
.architecture-card > span, .architecture-detail-grid article > span { color: var(--green); font-size: 10px; font-weight: 800; }
.architecture-card > svg, .architecture-detail-grid article > svg { display: block; width: 27px; margin-top: 34px; color: var(--green); }
.architecture-card h3, .architecture-detail-grid article h3 { margin: 21px 0 11px; font-size: 20px; }
.architecture-card p, .architecture-detail-grid article p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.8; }
.architecture-card b { display: block; margin-top: 24px; color: var(--orange); font-size: 11px; }
.architecture-detail-grid article ul { display: grid; gap: 8px; margin: 22px 0 0; padding: 16px 0 0; border-top: 1px solid var(--line); list-style: none; }
.architecture-detail-grid article li { position: relative; padding-left: 14px; color: var(--ink-soft); font-size: 10px; }
.architecture-detail-grid article li::before { content: ""; position: absolute; top: .55em; left: 0; width: 5px; height: 5px; background: var(--orange); }
.industry-teaser { background: #fff; }
.industry-teaser-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.industry-teaser-card { position: relative; min-height: 360px; display: flex; align-items: flex-end; overflow: hidden; color: #fff; text-decoration: none; background: #173b37; border-radius: 4px; }
.teaser-image { position: absolute; inset: 0; background-size: cover; background-position: center; }
.teaser-image::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(8,29,27,.12), rgba(8,29,27,.93)); }
.teaser-dining { background-image: url("assets/case-risk.png"); }
.teaser-retail { background-image: url("assets/genai-retail-space.jpg"); }
.teaser-crossborder { background-image: url("assets/hero-bg.png"); }
.industry-teaser-card > div { position: relative; z-index: 1; width: 100%; padding: 24px; }
.industry-teaser-card strong, .industry-teaser-card small { display: block; }
.industry-teaser-card strong { font-size: 22px; }
.industry-teaser-card small { max-width: 220px; margin-top: 10px; color: #cedbd7; font-size: 11px; line-height: 1.6; }
.industry-teaser-card svg { position: absolute; right: 24px; bottom: 24px; width: 18px; }
.section-cta { display: flex; justify-content: center; margin-top: 30px; }
.evidence-section { color: #fff; background: #0b302d !important; }
.evidence-grid { display: grid; grid-template-columns: .7fr 1.3fr; align-items: center; gap: 80px; }
.evidence-grid h2 { margin: 0; font-size: clamp(34px, 4vw, 54px); line-height: 1.16; }
.evidence-grid h2 em { color: var(--orange); font-style: normal; }
.evidence-items { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1px; background: rgba(255,255,255,.18); }
.evidence-items div { min-height: 135px; display: flex; flex-direction: column; justify-content: center; padding: 22px; background: #123834; }
.evidence-items strong { color: #ff9a78; font-size: 28px; }
.evidence-items span { margin-top: 8px; color: #b4c8c1; font-size: 11px; }
.narrative-grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: 100px; }
.narrative-grid h2 { margin: 0; font-size: clamp(34px, 4vw, 56px); line-height: 1.16; }
.narrative-grid h2 em { color: var(--orange); font-style: normal; }
.narrative-copy { color: var(--muted); font-size: 15px; line-height: 1.9; }
.narrative-copy p { margin: 0 0 18px; }
.quote-line { display: flex; align-items: flex-start; gap: 10px; margin-top: 28px; padding: 19px; color: var(--ink); background: var(--green-soft); border-left: 3px solid var(--green); font-size: 14px; line-height: 1.6; }
.quote-line svg { width: 18px; flex: none; color: var(--green); }
.values-section { color: #fff; background: #123834 !important; }
.values-section .section-intro h2 { color: #fff; }
.values-section .section-intro h2 em { color: var(--orange); }
.values-section .section-lede { color: #b4c8c1; }
.values-list-light { border-top-color: rgba(255,255,255,.17); }
.question-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: var(--line); border: 1px solid var(--line); }
.question-grid article { min-height: 210px; padding: 25px; background: #fff; }
.question-grid article > svg { width: 23px; color: var(--green); }
.question-grid h3 { margin: 35px 0 10px; font-size: 16px; }
.question-grid p { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.75; }
.scenario-page-section { padding: 36px 0 44px; }
.page-section.scenario-cases-section { padding: 52px 0 88px; }
.scenario-value-hero { padding: 84px 0 28px; color: #fff; background: #0c3031; }
.scenario-value-grid { gap: 10px; border: 0; background: transparent; }
.scenario-value-grid div { position: relative; min-height: 114px; display: grid; grid-template-columns: 46px 1fr; grid-template-rows: auto auto; align-content: center; justify-content: initial; column-gap: 15px; padding: 20px 24px; overflow: hidden; background: rgba(255,255,255,.045); border: 1px solid rgba(255,255,255,.16); border-radius: 4px; }
.scenario-value-grid div::before { content: ""; position: absolute; inset: 0 0 auto; height: 3px; background: #ef5b2a; opacity: .92; }
.scenario-value-grid div:nth-child(2)::before { background: #d2a052; }
.scenario-value-grid div:nth-child(3)::before { background: #73c8a7; }
.scenario-value-grid div:nth-child(4)::before { background: #7db3c7; }
.scenario-value-grid svg { grid-row: 1 / 3; align-self: center; width: 42px; height: 42px; padding: 9px; color: #ff9b79; stroke-width: 1.7; background: rgba(255,139,104,.1); border: 1px solid rgba(255,139,104,.34); border-radius: 50%; }
.scenario-value-grid div:nth-child(2) svg { color: #e8bd72; background: rgba(232,189,114,.1); border-color: rgba(232,189,114,.34); }
.scenario-value-grid div:nth-child(3) svg { color: #8ed1b8; background: rgba(142,209,184,.1); border-color: rgba(142,209,184,.34); }
.scenario-value-grid div:nth-child(4) svg { color: #8ebed1; background: rgba(142,190,209,.1); border-color: rgba(142,190,209,.34); }
.scenario-value-grid strong { grid-column: 2; margin: 0; color: #ff8b68; font-size: 30px; line-height: 1.1; }
.scenario-value-grid div:nth-child(2) strong { color: #f0bd72; }
.scenario-value-grid div:nth-child(3) strong { color: #8ed1b8; }
.scenario-value-grid div:nth-child(4) strong { color: #8ebed1; }
.scenario-value-grid small { grid-column: 2; margin-top: 8px; color: #c1d2cd; font-size: 11px; line-height: 1.4; }
.scenario-banner { padding: 124px 0 52px; color: #fff; background: #0c3031; border-bottom: 0; }
.scenario-banner .container { min-height: 56px; display: flex; align-items: flex-end; }
.scenario-banner h1 { width: 100%; max-width: none; margin: 0; color: #fff; font-size: 46px; line-height: 1.2; font-weight: 650; white-space: nowrap; }
.scenario-banner h1 em { color: #ff784c; font-style: normal; }
.scenario-explainer { background: #fff; }
.flow-explain-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: var(--line); border: 1px solid var(--line); }
.flow-explain-grid article { min-height: 190px; padding: 23px; background: #fff; }
.flow-explain-grid span { color: var(--orange); font-size: 11px; font-weight: 800; }
.flow-explain-grid h3 { margin: 36px 0 9px; font-size: 16px; }
.flow-explain-grid p { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.7; }
.industry-detail { background: #fff; }
.industry-detail-alt { background: #f0f3ef; }
.industry-detail-grid { display: grid; grid-template-columns: .9fr 1.1fr; align-items: center; gap: 86px; }
.industry-detail-alt .industry-detail-grid { grid-template-columns: 1.1fr .9fr; }
.industry-detail-visual { min-height: 420px; display: flex; flex-direction: column; justify-content: flex-end; padding: 28px; color: #fff; background: #163c37; background-size: cover; background-position: center; border-radius: 5px; }
.industry-detail-visual span { color: #9ae0c2; font-size: 11px; font-weight: 800; }
.industry-detail-visual strong { margin-top: 90px; font-size: 30px; }
.industry-detail-visual small { margin-top: 8px; color: #c8dad5; font-size: 11px; }
.visual-dining { background-image: linear-gradient(180deg, rgba(7,33,29,.1), rgba(7,33,29,.92)), url("assets/case-tea.svg"); }
.visual-retail { background-image: linear-gradient(180deg, rgba(7,33,29,.1), rgba(7,33,29,.92)), url("assets/genai-retail-space.jpg"); }
.visual-crossborder { background-image: linear-gradient(180deg, rgba(7,33,29,.1), rgba(7,33,29,.92)), url("assets/hero-bg.png"); }
.industry-detail h2 { margin: 0; font-size: clamp(33px, 4vw, 55px); line-height: 1.16; }
.industry-detail h2 em { color: var(--orange); font-style: normal; }
.detail-lede { margin: 22px 0; color: var(--muted); font-size: 14px; line-height: 1.9; }
.detail-list { display: grid; gap: 0; border-top: 1px solid var(--line); }
.detail-list > div { display: flex; gap: 13px; padding: 15px 0; border-bottom: 1px solid var(--line); }
.detail-list svg { width: 18px; flex: none; color: var(--green); }
.detail-list strong, .detail-list small { display: block; }
.detail-list strong { font-size: 13px; }
.detail-list small { margin-top: 4px; color: var(--muted); font-size: 10px; line-height: 1.6; }
.industry-faq { background: #f0f3ef; }
.method-grid-large .method-card { min-height: 300px; }
.method-card b { display: block; margin-top: 25px; color: var(--green); font-size: 10px; }
.metric-strip-light { color: #d8e6e1; }
.article-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: var(--line); border: 1px solid var(--line); }
.insight-card { min-height: 315px; padding: 24px; background: #fff; }
.insight-label { color: var(--green); font-size: 10px; font-weight: 800; }
.insight-card > svg { display: block; width: 25px; margin-top: 31px; color: var(--green); }
.insight-card h3 { margin: 22px 0 11px; font-size: 17px; line-height: 1.45; }
.insight-card p { min-height: 62px; margin: 0; color: var(--muted); font-size: 11px; line-height: 1.75; }
.insight-card a { display: inline-flex; align-items: center; gap: 5px; margin-top: 22px; color: var(--green); text-decoration: none; font-size: 10px; font-weight: 700; }
.insight-card a svg { width: 13px; }
.glossary-section { background: #f0f3ef; }
.glossary-list { margin: 0; border-top: 1px solid var(--line); }
.glossary-list div { display: grid; grid-template-columns: 230px 1fr; gap: 26px; padding: 20px 0; border-bottom: 1px solid var(--line); }
.glossary-list dt { color: var(--green); font-size: 14px; font-weight: 800; }
.glossary-list dd { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.8; }
.insights-page .page-hero { padding: 116px 0 54px; }
.insights-page .page-section { padding: 64px 0; }
.insights-page .page-section + .page-section { padding-top: 44px; }
.insights-page .section-intro { margin-bottom: 28px; }
.insights-page .article-grid { margin-top: 0; }
.insights-page .insight-card { min-height: 265px; padding: 22px; }
.insights-page .insight-card > svg { margin-top: 22px; }
.insights-page .insight-card h3 { margin: 17px 0 9px; }
.insights-page .insight-card p { min-height: 56px; }
.insights-page .insight-card a { margin-top: 17px; }
.insights-page .glossary-list div { padding: 14px 0; }
.insights-page .faq-grid { gap: 56px; }
.insights-page .faq-list details p { padding-bottom: 18px; }
.knowledge-hero { padding: 142px 0 48px; color: #fff; background: #0b2f2d; }
.knowledge-hero-inner { display: grid; grid-template-columns: minmax(0, 1fr) minmax(360px, .72fr); align-items: end; gap: 70px; }
.knowledge-kicker { display: block; margin-bottom: 16px; color: #7ad0aa; font-size: 10px; font-weight: 800; letter-spacing: 0; }
.knowledge-hero h1 { margin: 0; font-size: 62px; line-height: 1; font-weight: 720; letter-spacing: 0; }
.knowledge-hero p { margin: 0 0 5px; color: #d3dfdc; font-size: 20px; line-height: 1.6; }
.knowledge-section { padding: 46px 0 82px; background: #f4f6f3; }
.knowledge-toolbar { min-height: 54px; display: flex; align-items: flex-start; justify-content: space-between; gap: 30px; }
.knowledge-toolbar > div { display: flex; align-items: baseline; gap: 14px; }
.knowledge-toolbar strong { color: var(--ink); font-size: 18px; }
.knowledge-toolbar span { color: var(--muted); font-size: 10px; }
.knowledge-count { padding: 7px 10px; color: var(--green) !important; border: 1px solid #9ab9ae; }
.knowledge-feed { border-top: 2px solid #132422; border-bottom: 1px solid #bfc9c5; }
.knowledge-entry { display: grid; grid-template-columns: 128px minmax(0, 1fr) 240px; gap: 36px; padding: 34px 0 36px; border-bottom: 1px solid #c6ceca; }
.knowledge-entry:last-child { border-bottom: 0; }
.knowledge-date { display: grid; align-content: start; gap: 9px; }
.knowledge-date time { color: var(--ink); font-size: 14px; font-weight: 800; }
.knowledge-date span { color: var(--green); font-size: 10px; font-weight: 750; }
.knowledge-tags { display: flex; flex-wrap: wrap; gap: 6px; }
.knowledge-tags span { padding: 5px 7px; color: #2e6658; background: #e1ebe6; font-size: 9px; font-weight: 700; }
.knowledge-content h2 { margin: 16px 0 12px; color: var(--ink); font-size: 25px; line-height: 1.35; letter-spacing: 0; }
.knowledge-content > p { margin: 0; color: var(--ink-soft); font-size: 13px; line-height: 1.85; }
.knowledge-take { display: grid; grid-template-columns: 90px 1fr; gap: 16px; margin-top: 20px; padding-top: 17px; border-top: 1px solid #d2d8d5; }
.knowledge-take b { color: var(--orange); font-size: 10px; }
.knowledge-take span { color: var(--ink); font-size: 11px; line-height: 1.7; }
.knowledge-source { display: grid; align-content: start; gap: 13px; padding-left: 26px; border-left: 1px solid #c6ceca; }
.knowledge-source > span { color: var(--muted); font-size: 9px; }
.knowledge-source strong { color: var(--ink); font-size: 12px; line-height: 1.55; }
.knowledge-source a { display: inline-flex; align-items: center; gap: 6px; width: fit-content; margin-top: 7px; color: var(--green); font-size: 10px; font-weight: 750; text-decoration: none; }
.knowledge-source a:hover { color: var(--orange); }
.knowledge-source svg { width: 13px; }
.knowledge-note { margin: 20px 0 0; color: #77837f; font-size: 9px; line-height: 1.7; }
.qr-grid { display: grid; grid-template-columns: repeat(2, 105px); gap: 12px; align-self: end; margin-bottom: 12px; }
.qr-card { display: grid; gap: 7px; align-content: start; color: #d9e6e2; text-align: center; font-size: 9px; }
.qr-card img { width: 105px; height: 105px; padding: 5px; background: #fff; object-fit: contain; }
.qr-card strong { color: #fff; font-size: 9px; line-height: 1.4; }
.qr-card span { color: #8ca09b; line-height: 1.4; }
.qr-placeholder { min-height: 157px; padding: 8px 5px; align-content: center; background: rgba(255,255,255,.07); border: 1px dashed rgba(255,255,255,.35); }
.qr-placeholder-mark { display: grid; place-items: center; width: 105px; height: 105px; color: #9ae0c2; background: rgba(255,255,255,.08); }
.qr-placeholder-mark svg { width: 38px; height: 38px; }
.contact-team-section { padding: 100px 0; color: #fff; background: #123834; }
.contact-section-heading { max-width: 790px; margin-bottom: 42px; }
.contact-section-heading > span { display: block; margin-bottom: 14px; color: #7ad0aa; font-size: 11px; font-weight: 800; }
.contact-section-heading h1, .contact-section-heading h2 { margin: 0; font-size: 46px; line-height: 1.2; font-weight: 650; }
.contact-section-heading h1 em, .contact-section-heading h2 em { color: var(--orange); font-style: normal; }
.contact-section-heading > p { margin: 16px 0 0; color: #b8cbc5; font-size: 15px; line-height: 1.7; }
.team-profile { display: grid; grid-template-columns: 310px minmax(0, 1fr); gap: 46px; padding: 38px; background: rgba(255,255,255,.045); border: 1px solid rgba(255,255,255,.16); border-radius: 7px; }
.team-profile-photo { min-width: 0; }
.team-profile-photo img { display: block; width: 100%; aspect-ratio: .785; object-fit: cover; border-radius: 14px; }
.team-profile-content { min-width: 0; }
.team-profile-content header h2 { margin: 0; font-size: 38px; line-height: 1.15; }
.team-profile-content header strong { display: block; margin-top: 8px; color: var(--orange); font-size: 19px; }
.team-profile-content header p { margin: 20px 0 0; color: #c3d4ce; font-size: 15px; line-height: 1.75; }
.team-profile blockquote { margin: 25px 0 31px; padding: 20px 22px; color: #d0dfda; background: rgba(255,255,255,.09); border-left: 3px solid var(--orange); font-size: 14px; line-height: 1.85; }
.team-detail-grid { display: grid; grid-template-columns: 1.15fr .85fr; gap: 33px 46px; }
.team-detail-grid h3 { margin: 0 0 12px; color: #fff; font-size: 17px; }
.team-detail-grid p, .team-detail-grid ul { margin: 0; color: #b8cbc5; font-size: 13px; line-height: 1.8; }
.team-detail-grid ul { padding-left: 18px; }
.team-detail-grid li + li { margin-top: 7px; }
.contact-values-section { padding: 100px 0; color: #fff; background: #0b2f2d; }
.contact-values-section .contact-section-heading { max-width: 900px; }
.team-values { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 16px; }
.team-values article { min-height: 225px; padding: 28px 24px; border: 1px solid rgba(255,255,255,.16); border-radius: 5px; background: rgba(255,255,255,.045); }
.team-values article:last-child { border-color: rgba(255,128,87,.6); }
.team-values b { color: var(--orange); font-size: 25px; }
.team-values h3 { margin: 25px 0 12px; font-size: 19px; }
.team-values p { margin: 0; color: #b8cbc5; font-size: 13px; line-height: 1.85; }
.contact-qr-section { padding: 100px 0 112px; color: #fff; background: #123834; }
.contact-qr-section .contact-section-heading { margin-right: auto; margin-left: auto; text-align: center; }
.contact-qr-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 180px)); justify-content: center; gap: 34px; }
.contact-qr-grid .qr-card { width: 180px; gap: 10px; }
.contact-qr-grid .qr-card img { width: 180px; height: 180px; padding: 8px; }
.contact-qr-grid .qr-card strong { font-size: 12px; }
.contact-qr-grid .qr-card span { font-size: 10px; }

/* Enterprise introduction: one continuous business loop from signal to verified result. */
.about-page-hero { padding-bottom: 100px; }
.about-page-hero .page-hero-grid { grid-template-columns: minmax(0, 1fr) 470px; gap: 72px; }
.about-page-hero h1 { max-width: 820px; font-size: 66px; }
.about-hero-visual { position: relative; padding: 24px; overflow: hidden; background: #123d39; border: 1px solid rgba(255,255,255,.2); border-radius: 5px; box-shadow: 0 24px 65px rgba(0,0,0,.18); }
.about-hero-visual::before { content: ""; position: absolute; top: -70px; right: -65px; width: 190px; height: 190px; border: 1px solid rgba(153,224,194,.18); border-radius: 50%; }
.hero-visual-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 13px; padding-bottom: 15px; border-bottom: 1px solid rgba(255,255,255,.14); }
.hero-visual-head span { color: #91d9bc; font-size: 9px; font-weight: 800; }
.hero-visual-head strong { font-size: 15px; }
.hero-loop-row { position: relative; min-height: 69px; display: grid; grid-template-columns: 34px 1fr 24px; align-items: center; gap: 12px; border-bottom: 1px solid rgba(255,255,255,.12); }
.hero-loop-row > svg { width: 20px; color: #9ae0c2; }
.hero-loop-row div small, .hero-loop-row div b { display: block; }
.hero-loop-row div small { color: #91aaa3; font-size: 9px; }
.hero-loop-row div b { margin-top: 5px; color: #fff; font-size: 11px; line-height: 1.5; }
.hero-loop-row > span { color: rgba(255,255,255,.3); font-size: 9px; font-weight: 800; text-align: right; }
.hero-loop-row.hero-loop-ai { margin: 0 -24px; padding: 0 24px; background: rgba(242,107,65,.12); }
.hero-loop-ai > svg, .hero-loop-ai div small { color: #ff9b78; }
.hero-loop-return { display: flex; align-items: center; gap: 9px; margin-top: 15px; color: #a9c2bb; font-size: 9px; line-height: 1.5; }
.hero-loop-return svg { width: 15px; color: #ff8b65; }

.value-path-section { background: #f6f7f3 !important; }
.value-path { display: grid; grid-template-columns: 1fr 58px 1fr 58px 1fr; align-items: stretch; }
.value-path article { position: relative; min-height: 205px; display: grid; grid-template-columns: 44px 1fr; align-content: start; gap: 18px; padding: 26px; background: #fff; border: 1px solid var(--line); }
.value-path article > span { position: absolute; top: 16px; right: 18px; color: #a5b1ac; font-size: 9px; font-weight: 800; }
.value-path article > svg { width: 31px; color: var(--green); }
.value-path article small, .value-path article strong { display: block; }
.value-path article small { color: var(--green); font-size: 10px; font-weight: 800; }
.value-path article strong { margin-top: 9px; font-size: 18px; line-height: 1.4; }
.value-path article p { grid-column: 2; margin: 15px 0 0; color: var(--muted); font-size: 11px; line-height: 1.7; }
.value-path article.value-path-result { color: #fff; background: #173d38; border-color: #173d38; }
.value-path-result > svg, .value-path-result small { color: #ff9a78 !important; }
.value-path-result p { color: #b9ccc6 !important; }
.value-path-arrow { display: grid; place-items: center; color: #7f918b; }
.value-path-arrow svg { width: 19px; }

.operating-loop-section { color: #fff; background: #0f3733 !important; }
.operating-loop-section .section-intro h2 { color: #fff; }
.operating-loop-section .section-intro h2 em { color: var(--orange); }
.operating-loop-section .section-lede { color: #b6c9c3; }
.operating-loop-board { position: relative; min-height: 760px; padding: 0; overflow: hidden; background: #092925; border: 1px solid rgba(255,255,255,.14); border-radius: 5px; }
.loop-route-svg { position: absolute; z-index: 0; inset: 0; width: 100%; height: 100%; }
.loop-route-base, .loop-route-flow { fill: none; vector-effect: non-scaling-stroke; }
.loop-route-base { stroke: rgba(151,205,188,.2); stroke-width: 2; }
.loop-route-flow { stroke: #ff8a61; stroke-width: 3; stroke-linecap: round; stroke-dasharray: 10 18; animation: operatingLoopFlow 1.25s linear infinite; filter: drop-shadow(0 0 5px rgba(255,138,97,.45)); }
.loop-route-pulse { fill: #ffb197; filter: drop-shadow(0 0 7px rgba(255,138,97,.9)); }
@keyframes operatingLoopFlow { to { stroke-dashoffset: -28; } }
.loop-center { position: absolute; z-index: 1; top: 50%; left: 50%; width: 310px; height: 220px; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 28px; transform: translate(-50%, -50%); text-align: center; background: #123d38; border: 1px solid rgba(154,224,194,.3); border-radius: 50%; box-shadow: 0 0 0 16px rgba(18,61,56,.38); }
.loop-center > span { color: #8fd8bb; font-size: 9px; font-weight: 800; }
.loop-center > svg { width: 26px; margin: 16px 0 10px; color: #ff9a78; }
.loop-center > strong { font-size: 28px; }
.loop-center > p { margin: 8px 0 17px; color: #fff; font-size: 14px; font-weight: 700; }
.loop-center > small { display: inline-flex; align-items: center; gap: 7px; color: #a9c2bb; font-size: 9px; }
.loop-center > small svg { width: 14px; color: #ff9a78; }
.loop-steps { position: absolute; z-index: 2; inset: 0; }
.loop-steps article { position: absolute; width: 205px; min-height: 138px; padding: 15px 15px 14px 56px; transform: translate(-50%, -50%); color: var(--ink); background: #f8faf6; border-top: 4px solid #4b8ea0; box-shadow: 0 12px 30px rgba(0,0,0,.2); }
.loop-steps article:nth-child(1) { top: 12%; left: 50%; }
.loop-steps article:nth-child(2) { top: 26.2%; left: 78%; }
.loop-steps article:nth-child(3) { top: 58.5%; left: 84.9%; }
.loop-steps article:nth-child(4) { top: 84.4%; left: 65.5%; }
.loop-steps article:nth-child(5) { top: 84.4%; left: 34.5%; }
.loop-steps article:nth-child(6) { top: 58.5%; left: 15.1%; }
.loop-steps article:nth-child(7) { top: 26.2%; left: 22%; }
.loop-steps article:nth-child(2), .loop-steps article:nth-child(3) { border-top-color: #7b67a6; }
.loop-steps article.loop-human { background: #fff3ed; border-top-color: #f26b41; }
.loop-steps article.loop-feedback { background: #e8f4ee; border-top-color: #27856f; }
.loop-steps article::before { content: attr(data-loop-step); position: absolute; top: 14px; right: 13px; color: #9ca9a4; font-size: 8px; font-weight: 800; }
.loop-icon { position: absolute; top: 16px; left: 13px; width: 32px; height: 32px; display: grid; place-items: center; margin: 0; color: var(--green); background: #e8f0ec; border-radius: 50%; }
.loop-icon svg { width: 18px; }
.loop-steps article > small { color: #73847e; font-size: 8px; font-weight: 800; }
.loop-steps h3 { margin: 6px 0 7px; font-size: 14px; }
.loop-steps p { margin: 0; color: var(--muted); font-size: 9px; line-height: 1.55; }
.loop-return-line { display: none; }
.loop-return-line svg { width: 19px; color: #ff906b; }
.loop-return-line strong { color: #fff; font-size: 13px; }
.loop-return-line span { font-size: 11px; line-height: 1.7; }
@media (prefers-reduced-motion: reduce) {
  .loop-route-flow { animation: none; }
  .loop-route-pulse { display: none; }
}

.about-main { display: flex; flex-direction: column; }
.about-main .about-page-hero { order: 0; }
.about-main .value-path-section { order: 1; }
.about-main .capability-section { order: 2; }
.about-main .operating-loop-section { order: 3; }
.about-main .dining-loop-section { order: 4; }
.about-main .enterprise-outcome-section { order: 5; }
.about-main .ceo-question-section { order: 6; }
.capability-section { padding: 78px 0 52px; background: #edf2ee !important; }
.capability-section .section-intro { grid-template-columns: minmax(0, 1.55fr) minmax(330px, .65fr); gap: 56px; margin-bottom: 38px; }
.capability-section .section-intro h2 { max-width: 820px; font-size: clamp(38px, 3.45vw, 50px); }
.architecture-lede { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; border-top: 1px solid #bdc9c4; border-bottom: 1px solid #bdc9c4; }
.architecture-lede strong, .architecture-lede span { position: relative; min-height: 68px; display: flex; align-items: center; padding: 12px 18px 12px 31px; color: var(--ink); border-right: 1px solid #bdc9c4; font-size: 10px; font-weight: 700; line-height: 1.5; }
.architecture-lede span:last-child { border-right: 0; }
.architecture-lede strong::before, .architecture-lede span::before { content: ""; position: absolute; top: calc(50% - 4px); left: 12px; width: 8px; height: 8px; background: #07867f; }
.architecture-lede span:nth-child(2)::before { background: #d36526; }
.architecture-lede span:nth-child(3)::before { background: #66519b; }
.capability-bands { position: relative; display: grid; gap: 0; padding-left: 74px; }
.capability-bands::before { content: ""; position: absolute; top: 54px; bottom: 54px; left: 27px; width: 2px; background: #aebdb7; }
.capability-band { position: relative; min-height: 0; display: grid; grid-template-columns: 180px 270px minmax(260px, 1fr) 245px; align-items: start; gap: 26px; overflow: visible; padding: 30px 0; background: transparent; border: 0; border-bottom: 1px solid #bdc9c4; box-shadow: none; }
.capability-band::before { content: ""; position: absolute; top: 41px; left: -52px; width: 12px; height: 12px; background: #07867f; border: 5px solid #edf2ee; border-radius: 50%; box-shadow: 0 0 0 2px #07867f; }
.capability-band > div { min-width: 0; padding: 0; border: 0; }
.capability-band-title { display: grid; grid-template-columns: 30px 1fr; align-content: start; align-items: center; gap: 10px; background: transparent; }
.capability-band-title > span { display: none; }
.capability-band-title > svg { width: 25px; color: #07867f; }
.capability-band-title > div { grid-column: 2; margin-top: 0; }
.capability-band-title strong, .capability-band-title small, .capability-band-title em { display: block; }
.capability-band-title strong { font-size: 23px; }
.capability-band-title small { width: fit-content; margin-top: 9px; padding: 6px 12px; color: #077b76; background: #dcece7; font-size: 10px; font-weight: 800; border-radius: 20px; }
.capability-band-title em { margin-top: 7px; color: var(--muted); font-size: 9px; font-style: normal; }
.capability-value small, .capability-features small, .capability-forms > small, .capability-platform-core > small { display: block; margin-bottom: 16px; color: var(--ink); font-size: 10px; font-weight: 800; }
.capability-value small::before, .capability-features small::before, .capability-forms > small::before, .capability-platform-core > small::before { content: ""; display: inline-block; width: 6px; height: 18px; margin-right: 10px; vertical-align: middle; background: #07867f; border-radius: 4px; }
.capability-value strong { display: block; font-size: 17px; line-height: 1.55; }
.capability-value p { margin: 14px 0 0; color: var(--muted); font-size: 10px; line-height: 1.65; }
.capability-features ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 11px 20px; margin: 0; padding: 0; list-style: none; }
.capability-features li { position: relative; padding-left: 16px; color: var(--ink-soft); font-size: 10px; line-height: 1.6; }
.capability-features li::before { content: ""; position: absolute; top: .6em; left: 0; width: 6px; height: 6px; background: #07867f; border-radius: 50%; }
.capability-forms { display: grid; align-content: start; gap: 7px; }
.capability-forms > small { margin-bottom: 8px; }
.capability-forms > div { padding: 9px 13px; background: #dfece8; border-left: 2px solid #07867f; }
.capability-forms strong, .capability-forms span { display: block; }
.capability-forms strong { color: #077b76; font-size: 11px; }
.capability-forms span { margin-top: 5px; color: var(--ink-soft); font-size: 9px; line-height: 1.55; }
.capability-process::before { background: #d36526; box-shadow: 0 0 0 2px #d36526; }
.capability-process .capability-band-title > span { background: #d36526; }
.capability-process .capability-band-title > svg { color: #d36526; }
.capability-process .capability-band-title small, .capability-process .capability-forms > div { color: #bf541c; background: #f5e7dd; }
.capability-process .capability-forms > div { border-left-color: #d36526; }
.capability-process .capability-value small::before, .capability-process .capability-features small::before, .capability-process .capability-forms > small::before, .capability-process .capability-features li::before { background: #d36526; }
.capability-process .capability-forms strong { color: #c85a20; }
.capability-platform { grid-template-columns: 180px 320px 1fr; }
.capability-platform::before { background: #66519b; box-shadow: 0 0 0 2px #66519b; }
.capability-platform .capability-band-title > span { background: #66519b; }
.capability-platform .capability-band-title > svg { color: #66519b; }
.capability-platform .capability-band-title small { color: #5e4a95; background: #e6e1f2; }
.capability-platform .capability-value small::before, .capability-platform-core > small::before { background: #66519b; }
.platform-core-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.platform-core-grid > div { min-height: 64px; padding: 11px 14px; background: #e8e4f2; border-left: 2px solid #66519b; }
.platform-core-grid strong, .platform-core-grid span { display: block; }
.platform-core-grid strong { color: #5d4994; font-size: 11px; }
.platform-core-grid span { margin-top: 6px; color: var(--ink-soft); font-size: 9px; line-height: 1.6; }
.architecture-conclusion { margin: 19px 0 0; padding: 16px 22px; color: #d3e1dc; background: #173d38; border-left: 3px solid var(--orange); font-size: 10px; line-height: 1.65; }

.dining-loop-section { color: #fff; background: #173d38 !important; }
.dining-loop-grid { display: grid; grid-template-columns: .78fr 1.22fr; gap: 82px; }
.dining-loop-intro h2 { margin: 0; color: #fff; font-size: 48px; line-height: 1.16; }
.dining-loop-intro h2 em { color: var(--orange); font-style: normal; }
.dining-loop-intro > p:not(.eyebrow) { margin: 23px 0 0; color: #b7c9c4; font-size: 13px; line-height: 1.85; }
.dining-loop-image { width: 100%; height: 145px; display: block; margin-top: 24px; object-fit: cover; object-position: center 55%; border: 1px solid rgba(255,255,255,.14); border-radius: 4px; opacity: .86; }
.dining-value { display: grid; grid-template-columns: 43px 1fr; gap: 13px; margin-top: 20px; padding: 18px; background: rgba(255,255,255,.07); border-left: 3px solid var(--orange); }
.dining-value > svg { width: 25px; color: #ff9a78; }
.dining-value small, .dining-value strong, .dining-value span { display: block; }
.dining-value small { color: #90aaa2; font-size: 8px; }
.dining-value strong { margin-top: 3px; color: #fff; font-size: 24px; }
.dining-value span { margin-top: 7px; color: #b7c9c4; font-size: 10px; line-height: 1.65; }
.dining-loop-timeline { border-top: 1px solid rgba(255,255,255,.18); }
.dining-loop-timeline article { position: relative; min-height: 105px; display: grid; grid-template-columns: 32px 36px 1fr; align-items: center; gap: 14px; border-bottom: 1px solid rgba(255,255,255,.18); }
.dining-loop-timeline article::after { content: ""; position: absolute; left: 48px; bottom: -11px; width: 1px; height: 20px; background: #ff906b; }
.dining-loop-timeline article:last-child::after { display: none; }
.dining-loop-timeline article > span { color: #ff9a78; font-size: 9px; font-weight: 800; }
.dining-loop-timeline article > svg { width: 21px; color: #95dcc0; }
.dining-loop-timeline article:nth-child(-n+5) > span { color: #95dcc0; }
.dining-loop-timeline article:nth-child(6) > span, .dining-loop-timeline article:nth-child(6) > svg { color: #ff9a78; }
.dining-loop-timeline article:nth-child(7) > span, .dining-loop-timeline article:nth-child(7) > svg { color: #b8a5e0; }
.dining-loop-timeline strong { font-size: 14px; }
.dining-loop-timeline p { margin: 7px 0 0; color: #adc1bb; font-size: 10px; line-height: 1.65; }

.enterprise-outcome-section { background: #f6f7f3 !important; }
.enterprise-outcome-section .section-intro { margin-bottom: 48px; }
.enterprise-outcome-section .section-intro h2 { max-width: 760px; }
.leadership-future-layout { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(320px, .75fr); align-items: end; gap: 44px; }
.enterprise-outcomes { min-height: 360px; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); align-items: end; gap: 12px; padding-bottom: 12px; border-bottom: 4px solid #17201f; }
.enterprise-outcomes article { position: relative; display: flex; flex-direction: column; justify-content: flex-start; padding: 26px 23px; border: 1px solid; border-top-width: 8px; border-radius: 0 0 6px 6px; }
.enterprise-outcomes article:nth-child(1) { min-height: 210px; color: #d94f34; background: #f7ded8; border-color: #df5537; }
.enterprise-outcomes article:nth-child(2) { min-height: 250px; color: #c36b20; background: #f6eadc; border-color: #c87527; }
.enterprise-outcomes article:nth-child(3) { min-height: 290px; color: #347d99; background: #e2f0f5; border-color: #3d829d; }
.enterprise-outcomes article:nth-child(4) { min-height: 330px; color: #70559a; background: #eee9f5; border-color: #765da0; }
.enterprise-outcomes span { font-size: 13px; font-weight: 800; }
.enterprise-outcomes h3 { margin: 24px 0 18px; color: var(--ink); font-size: 24px; line-height: 1.35; }
.enterprise-outcomes p { margin: 0; color: var(--ink-soft); font-size: 11px; line-height: 1.7; }
.future-capability-panel { min-height: 330px; display: grid; align-content: center; gap: 0; padding: 34px 40px; color: #fff; background: #172120; border-radius: 6px; }
.future-capability-panel span { margin-bottom: 22px; color: #82d7c8; font-size: 11px; font-weight: 800; }
.future-capability-panel strong { padding: 20px 0; font-size: 29px; border-bottom: 1px solid #455755; }
.future-capability-panel strong:nth-of-type(2) { color: #f4c457; }
.future-capability-panel strong:nth-of-type(3) { color: #83d7c8; border-bottom: 0; }
.enterprise-outcome-statement { display: grid; grid-template-columns: 110px 1fr; align-items: center; gap: 28px; margin-top: 30px; padding: 22px 28px; color: var(--ink); background: #fff; border: 1px solid #cbd5d1; border-radius: 6px; }
.enterprise-outcome-statement span { color: var(--orange); font-size: 11px; font-weight: 800; }
.enterprise-outcome-statement strong { font-size: 20px; line-height: 1.55; }

/* AI-native digitalization service */
.digital-main { background: #f1f3ee; }
.digital-hero { padding-top: 74px; color: #fff; background: #082d2b; }
.digital-hero-grid { min-height: 650px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(540px, 1fr); align-items: center; gap: 56px; padding-top: 54px; padding-bottom: 46px; }
.digital-hero-copy { max-width: 570px; }
.digital-kicker { display: block; margin-bottom: 20px; color: #87d7b6; font-size: 11px; font-weight: 800; }
.digital-hero-copy h1 { margin: 0; font-size: 52px; line-height: 1.13; font-weight: 650; }
.digital-hero-copy h1 em { display: block; margin-top: 8px; color: #ff7a4f; font-style: normal; }
.digital-hero-copy > p { margin: 26px 0 0; color: #c5d5d0; font-size: 16px; line-height: 1.9; }
.digital-hero-actions { display: flex; flex-wrap: wrap; gap: 11px; margin-top: 31px; }
.foundation-board { padding: 26px; color: var(--ink); background: #f7f8f4; border: 1px solid rgba(255,255,255,.28); border-radius: 6px; box-shadow: 0 30px 70px rgba(0,0,0,.27); }
.foundation-board-head { display: flex; align-items: center; justify-content: space-between; padding-bottom: 17px; color: #778681; border-bottom: 1px solid #d7ddd8; font-size: 9px; letter-spacing: .12em; }
.foundation-board-head b { display: flex; align-items: center; gap: 7px; color: var(--green); font-size: 10px; letter-spacing: 0; }
.foundation-board-head b i { width: 7px; height: 7px; background: #2fad76; border-radius: 50%; box-shadow: 0 0 0 4px rgba(47,173,118,.12); }
.foundation-stage { display: grid; grid-template-columns: minmax(150px, 1.15fr) 30px minmax(120px, .82fr) 30px minmax(120px, .82fr); align-items: stretch; gap: 8px; margin-top: 24px; }
.foundation-source, .foundation-ai, .foundation-output { min-width: 0; padding: 17px; border: 1px solid #d8dfda; }
.foundation-source { background: #fff; }
.foundation-source > small, .foundation-ai small, .foundation-output > small { display: block; margin-bottom: 13px; color: var(--muted); font-size: 9px; font-weight: 800; }
.foundation-source > div { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.foundation-source span { min-width: 0; display: grid; grid-template-columns: 24px 1fr; align-items: center; gap: 6px; padding: 8px; color: var(--ink-soft); background: #f0f3ef; font-size: 9px; font-weight: 700; }
.foundation-source svg { width: 15px; color: var(--blue); }
.foundation-ai { display: flex; flex-direction: column; justify-content: center; background: #fbe7df; border-color: #efc4b5; }
.foundation-ai > svg { width: 25px; margin-bottom: 18px; color: var(--orange); }
.foundation-ai strong { font-size: 13px; line-height: 1.65; }
.foundation-output { display: grid; align-content: center; gap: 8px; background: #e2f0e9; border-color: #b9d8ca; }
.foundation-output > small { margin-bottom: 5px; }
.foundation-output strong { padding: 7px 8px; color: #0d634f; background: rgba(255,255,255,.7); font-size: 10px; }
.foundation-arrow { display: grid; place-items: center; color: #83918c; }
.foundation-arrow svg { width: 18px; }
.foundation-agent { display: grid; grid-template-columns: 1fr; gap: 8px; margin-top: 18px; padding: 17px 19px; color: #d4e2dd; background: #123d39; border-left: 3px solid var(--orange); }
.foundation-agent span { display: flex; align-items: center; gap: 7px; font-size: 9px; }
.foundation-agent span svg { width: 14px; color: #83d6b4; }
.foundation-agent strong { color: #fff; font-size: 14px; line-height: 1.55; }
.digital-principles { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid rgba(255,255,255,.18); }
.digital-principles > div { min-height: 112px; display: grid; grid-template-columns: 36px 1fr; align-content: center; column-gap: 13px; padding: 20px 34px; border-right: 1px solid rgba(255,255,255,.16); }
.digital-principles > div:first-child { padding-left: 0; }
.digital-principles > div:last-child { border-right: 0; }
.digital-principles svg { grid-row: 1 / 3; width: 27px; color: #ff8a64; }
.digital-principles strong { font-size: 14px; }
.digital-principles span { margin-top: 5px; color: #9fb6b0; font-size: 10px; line-height: 1.5; }
.digital-comparison-section, .digital-deliverables-section, .digital-cases-section, .digital-tech-section, .digital-deployment-section, .digital-path-section { padding: 96px 0; }
.digital-comparison-section { background: #f1f3ee; }
.digital-section-heading { max-width: 780px; margin-bottom: 46px; }
.digital-section-heading > span, .digital-heading-inline > div > span { display: block; margin-bottom: 14px; color: var(--green); font-size: 11px; font-weight: 800; }
.digital-section-heading h2 { margin: 0; font-size: 48px; line-height: 1.18; font-weight: 650; }
.digital-section-heading h2 em { color: var(--orange); font-style: normal; }
.digital-section-heading > p, .digital-heading-inline > p { margin: 20px 0 0; color: var(--muted); font-size: 14px; line-height: 1.85; }
.digital-heading-inline { max-width: none; display: grid; grid-template-columns: 1.05fr .95fr; align-items: end; gap: 90px; }
.digital-heading-inline > p { margin: 0 0 4px; }
.digital-comparison { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border: 1px solid #cfd7d2; background: #cfd7d2; gap: 1px; }
.digital-comparison article { min-width: 0; padding: 30px; background: #fff; }
.digital-comparison header span, .digital-comparison header strong { display: block; }
.digital-comparison header span { color: var(--muted); font-size: 10px; font-weight: 800; }
.digital-comparison header strong { margin-top: 7px; font-size: 21px; }
.comparison-native { border-top: 4px solid var(--green); }
.comparison-traditional { border-top: 4px solid #8b9792; }
.comparison-native header span { color: var(--green); }
.comparison-track { display: grid; grid-template-columns: 1fr 18px 1fr 18px 1fr 18px 1fr 18px 1fr; align-items: center; margin: 31px 0; }
.comparison-track span { min-width: 0; padding: 13px 5px; color: var(--ink-soft); text-align: center; background: #f1f3ef; font-size: 9px; font-weight: 700; }
.comparison-native .comparison-track span { color: #0c624f; background: #e4f0ea; }
.comparison-track i { height: 1px; background: #aeb9b4; }
.digital-comparison footer { display: grid; grid-template-columns: 22px 1fr; align-items: start; gap: 9px; padding-top: 18px; color: var(--muted); border-top: 1px solid #dfe4df; font-size: 10px; line-height: 1.65; }
.digital-comparison footer svg { width: 17px; color: #8e9995; }
.comparison-native footer svg { color: var(--green); }
.digital-deliverables-section { background: #fff; }
.digital-deliverables { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); background: #d8dfda; border: 1px solid #d8dfda; gap: 1px; }
.digital-deliverables article { position: relative; min-height: 310px; padding: 28px 25px; background: #fff; }
.digital-deliverables article > span { position: absolute; top: 24px; right: 22px; color: #d8e0db; font-size: 32px; font-weight: 800; }
.digital-deliverables article > svg { width: 28px; color: var(--green); }
.digital-deliverables h3 { margin: 56px 0 13px; font-size: 18px; }
.digital-deliverables p { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.8; }
.digital-deliverables strong { position: absolute; right: 25px; bottom: 27px; left: 25px; padding-top: 17px; color: var(--green); border-top: 1px solid #dce3de; font-size: 10px; line-height: 1.6; }
.digital-system-group { height: 390px; min-height: 390px !important; display: grid; grid-template-rows: 28px 66px minmax(0, 1fr) 60px; align-items: start; }
.digital-system-group > svg, .digital-system-group > i { grid-row: 1; display: block; width: 28px; height: 28px; }
.digital-system-group h3 { grid-row: 2; align-self: end; min-height: 28px; margin: 0 0 13px; }
.digital-system-group ul { grid-row: 3; align-content: start; display: grid; gap: 9px; min-height: 150px; margin: 0; padding: 17px 0 0; border-top: 1px solid #e0e5e1; list-style: none; }
.digital-system-group li { position: relative; padding-left: 13px; color: var(--ink-soft); font-size: 9px; line-height: 1.55; }
.digital-system-group li::before { content: ""; position: absolute; top: .58em; left: 0; width: 5px; height: 5px; background: var(--orange); }
.digital-system-group > strong { position: static; grid-row: 4; align-self: end; min-height: 60px; padding-top: 17px; }
.digital-cases-section { background: #e8ede9; }
.digital-case-list { display: grid; gap: 28px; }
.digital-case { display: grid; grid-template-columns: .8fr 1.2fr; min-height: 460px; background: #fff; border: 1px solid #d0d8d3; }
.digital-case-reverse { grid-template-columns: 1.2fr .8fr; }
.digital-case-reverse .digital-case-visual { order: 2; }
.digital-case-visual { position: relative; min-height: 100%; overflow: hidden; background-position: center; background-size: cover; }
.digital-case-visual::before { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(7,29,27,.12), rgba(7,29,27,.92)); }
.digital-case-visual > div { position: absolute; z-index: 1; inset: auto 30px 30px; }
.digital-case-visual span, .digital-case-visual strong, .digital-case-visual small { display: block; }
.digital-case-visual span { color: #8cdbba; font-size: 10px; font-weight: 800; }
.digital-case-visual strong { margin-top: 9px; color: #fff; font-size: 29px; line-height: 1.25; }
.digital-case-visual small { margin-top: 12px; color: #cad8d4; font-size: 11px; line-height: 1.65; }
.digital-case-dining { background-image: url("assets/digital-mini-crm.svg"); background-position: center; }
.digital-case-retail { background-image: url("assets/digital-website-crm.svg"); background-position: center; }
.digital-case-crossborder { background-image: url("assets/digital-wms.svg"); background-position: center; }
.digital-case-body { display: grid; grid-template-columns: minmax(0, 1fr) 190px; grid-template-rows: auto 1fr; gap: 24px 30px; padding: 34px; }
.digital-case-head { grid-column: 1 / -1; display: grid; grid-template-columns: 145px 1fr; gap: 25px; padding-bottom: 22px; border-bottom: 1px solid #dce2de; }
.digital-case-head span { color: var(--orange); font-size: 10px; font-weight: 800; }
.digital-case-head p { margin: 0; color: var(--ink-soft); font-size: 11px; line-height: 1.75; }
.digital-case-flow { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; }
.digital-case-flow li { position: relative; display: grid; grid-template-columns: 35px 1fr; align-items: center; gap: 12px; min-height: 82px; padding: 13px 0; border-bottom: 1px solid #e1e6e2; }
.digital-case-flow li:last-child { border-bottom: 0; }
.digital-case-flow li > b { display: grid; place-items: center; width: 32px; height: 32px; color: #fff; background: var(--green); border-radius: 50%; font-size: 9px; }
.digital-case-flow small, .digital-case-flow strong { display: block; }
.digital-case-flow small { color: var(--muted); font-size: 8px; }
.digital-case-flow strong { margin-top: 5px; font-size: 11px; line-height: 1.55; }
.digital-case-result { align-self: stretch; display: flex; flex-direction: column; justify-content: center; padding: 22px; color: #d4e3de; background: #123d39; border-left: 3px solid var(--orange); }
.digital-case-result svg { width: 24px; color: #83d6b4; }
.digital-case-result span { margin-top: 28px; color: #a9c0b9; font-size: 9px; }
.digital-case-result strong { margin-top: 9px; color: #fff; font-size: 17px; line-height: 1.45; }
.digital-tech-section { color: #fff; background: #112f2d; }
.digital-tech-layout { display: grid; grid-template-columns: .82fr 1.18fr; align-items: start; gap: 78px; }
.digital-tech-section .digital-section-heading { margin: 0; }
.digital-tech-section .digital-section-heading > span { color: #87d7b6; }
.digital-tech-section .digital-section-heading h2 { color: #fff; }
.digital-tech-section .digital-section-heading > p { color: #a8bdb7; }
.digital-tech-matrix { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); background: rgba(255,255,255,.16); border: 1px solid rgba(255,255,255,.16); gap: 1px; }
.digital-tech-matrix article { min-height: 200px; padding: 25px; background: #173b38; }
.digital-tech-matrix svg { width: 25px; color: #ff8b65; }
.digital-tech-matrix span, .digital-tech-matrix strong, .digital-tech-matrix small { display: block; }
.digital-tech-matrix span { margin-top: 26px; color: #8ed8bb; font-size: 9px; font-weight: 800; }
.digital-tech-matrix strong { margin-top: 8px; font-size: 14px; line-height: 1.55; }
.digital-tech-matrix small { margin-top: 11px; color: #9fb5af; font-size: 9px; line-height: 1.6; }
.digital-deployment-section { background: #e8ede9; }
.digital-deployment-layout { display: grid; grid-template-columns: .72fr 1.28fr; align-items: start; gap: 70px; }
.digital-deployment-layout .digital-section-heading { margin: 0; }
.deployment-boundary { border: 1px solid #aebcb5; background: #fff; box-shadow: 0 18px 45px rgba(18,61,57,.08); }
.deployment-boundary > header { min-height: 78px; display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 18px 22px; color: #fff; background: #123d39; }
.deployment-boundary header span, .deployment-boundary header strong { display: block; }
.deployment-boundary header span { color: #87d7b6; font-size: 8px; font-weight: 800; }
.deployment-boundary header strong { margin-top: 5px; font-size: 14px; }
.deployment-boundary header b { display: inline-flex; align-items: center; gap: 7px; padding: 9px 11px; color: #0c624f; background: #dff2e9; font-size: 9px; white-space: nowrap; }
.deployment-boundary header b svg { width: 15px; }
.deployment-flow { display: grid; grid-template-columns: 1fr 28px 1fr 28px 1.38fr; align-items: center; gap: 10px; padding: 25px 22px 18px; }
.deployment-node { min-height: 112px; display: flex; flex-direction: column; justify-content: center; padding: 15px; border: 1px solid #d5ded9; background: #f5f7f4; }
.deployment-node-primary { color: #fff; border-color: #0f6b57; background: #0f6b57; }
.deployment-node svg { width: 21px; color: var(--orange); }
.deployment-node small, .deployment-node strong { display: block; }
.deployment-node small { margin-top: 13px; color: var(--muted); font-size: 8px; }
.deployment-node-primary small { color: #a9d9c6; }
.deployment-node strong { margin-top: 5px; font-size: 11px; line-height: 1.45; }
.deployment-arrow { width: 18px; color: #8da099; }
.deployment-data-stack { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.deployment-data-stack .deployment-node { min-height: 112px; }
.deployment-model { display: grid; grid-template-columns: 25px 130px 1fr; align-items: center; gap: 13px; margin: 0 22px 22px; padding: 14px 16px; color: #cfe1da; background: #173b38; border-left: 3px solid var(--orange); }
.deployment-model > svg { width: 22px; color: #83d6b4; }
.deployment-model span small, .deployment-model span strong { display: block; }
.deployment-model span small { color: #8fb5a9; font-size: 8px; }
.deployment-model span strong { margin-top: 3px; color: #fff; font-size: 11px; }
.deployment-model > b { font-size: 9px; line-height: 1.6; font-weight: 500; }
.deployment-handover { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin-top: 28px; border-top: 1px solid #bcc8c2; border-bottom: 1px solid #bcc8c2; }
.deployment-handover article { min-height: 150px; padding: 22px; border-right: 1px solid #bcc8c2; }
.deployment-handover article:last-child { border-right: 0; }
.deployment-handover span, .deployment-handover strong, .deployment-handover small { display: block; }
.deployment-handover span { color: var(--orange); font-size: 10px; font-weight: 800; }
.deployment-handover strong { margin-top: 27px; font-size: 14px; }
.deployment-handover small { margin-top: 9px; color: var(--muted); font-size: 9px; line-height: 1.65; }
.digital-path-section { background: #fff; }
.digital-path { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-top: 1px solid #cfd8d3; border-bottom: 1px solid #cfd8d3; }
.digital-path article { position: relative; min-height: 220px; padding: 28px 25px; border-right: 1px solid #cfd8d3; }
.digital-path article:last-child { border-right: 0; }
.digital-path article::after { content: ""; position: absolute; z-index: 2; top: 42px; right: -5px; width: 8px; height: 8px; background: var(--orange); transform: rotate(45deg); }
.digital-path article:last-child::after { display: none; }
.digital-path article > span { color: #cbd5d0; font-size: 28px; font-weight: 800; }
.digital-path article > svg { position: absolute; top: 31px; right: 23px; width: 24px; color: var(--green); }
.digital-path strong, .digital-path small { display: block; }
.digital-path strong { margin-top: 48px; font-size: 16px; }
.digital-path small { margin-top: 12px; color: var(--muted); font-size: 10px; line-height: 1.7; }
.digital-cta-section { padding: 0 0 96px; background: #fff; }
.digital-cta { min-height: 230px; display: flex; align-items: center; justify-content: space-between; gap: 50px; padding: 48px 54px; color: #fff; background: #0b302e; border-left: 5px solid var(--orange); }
.digital-cta span { color: #8bd7b9; font-size: 10px; font-weight: 800; }
.digital-cta h2 { margin: 13px 0 0; font-size: 31px; line-height: 1.4; }
.digital-cta .button { flex: none; }

@media (max-width: 1050px) {
  .digital-deliverables { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .digital-hero-grid { grid-template-columns: .9fr 1.1fr; gap: 38px; }
  .digital-hero-copy h1 { font-size: 48px; }
  .foundation-stage { grid-template-columns: 1fr; }
  .foundation-arrow { min-height: 18px; }
  .foundation-arrow svg { transform: rotate(90deg); }
  .foundation-source > div { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .foundation-source span { grid-template-columns: 1fr; justify-items: center; text-align: center; }
  .digital-case { grid-template-columns: .72fr 1.28fr; }
  .digital-case-reverse { grid-template-columns: 1.28fr .72fr; }
  .digital-case-body { grid-template-columns: 1fr; }
  .digital-case-result { min-height: 140px; }
  .digital-case-result span { margin-top: 17px; }
  .digital-deployment-layout { grid-template-columns: 1fr; gap: 40px; }
  .team-profile { grid-template-columns: 240px minmax(0, 1fr); gap: 30px; padding: 30px; }
  .team-values { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .scenario-banner h1 { font-size: 40px; }
  .site-header { grid-template-columns: 230px 1fr auto; padding: 0 22px; }
  .site-nav { gap: 19px; }
  .header-actions .text-link { display: none; }
  .hero-grid { grid-template-columns: 1fr 430px; gap: 40px; }
  .hero-copy h1 { font-size: 52px; }
  .problem-grid, .method-grid, .service-grid { grid-template-columns: repeat(2, 1fr); }
  .industry-grid { grid-template-columns: repeat(2, 1fr); }
  .industry-card { height: 360px; }
  .scenario-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .workbench-grid { gap: 46px; }
  .governance-grid { gap: 60px; }
  .contact-grid { grid-template-columns: 1fr 420px; }
  .contact-grid.contact-grid-minimal { grid-template-columns: minmax(0, 1fr) 222px; }
  .qr-grid { grid-column: 1 / -1; justify-self: end; }
  .page-hero-grid { gap: 45px; }
  .article-grid, .question-grid { grid-template-columns: repeat(2, 1fr); }
  .about-page-hero .page-hero-grid { grid-template-columns: minmax(0, 1fr) 390px; gap: 42px; }
  .about-page-hero h1 { font-size: 54px; }
  .operating-loop-board { min-height: 0; padding: 26px; }
  .loop-route-svg, .loop-center { display: none; }
  .loop-steps { position: relative; inset: auto; display: grid; grid-template-columns: 1fr; gap: 12px; }
  .loop-steps::before { content: ""; position: absolute; z-index: 1; top: 34px; bottom: 34px; left: 31px; width: 2px; background: repeating-linear-gradient(180deg, #ff8a61 0 8px, transparent 8px 16px); animation: mobileLoopFlow 1s linear infinite; }
  .loop-steps article { position: relative; inset: auto !important; width: auto; min-height: 0; padding: 18px 70px 18px 72px; transform: none; border-top: 0; border-left: 4px solid #4b8ea0; box-shadow: none; }
  .loop-steps article:nth-child(2), .loop-steps article:nth-child(3) { border-left-color: #7b67a6; }
  .loop-steps article.loop-human { border-left-color: #f26b41; }
  .loop-steps article.loop-feedback { border-left-color: #27856f; }
  .loop-steps article::after { display: none; }
  .loop-icon { position: absolute; top: 17px; left: 17px; margin: 0; }
  .loop-steps h3 { margin-top: 5px; }
  .loop-return-line { min-height: 72px; display: grid; grid-template-columns: 28px 130px 1fr; align-items: center; gap: 12px; margin-top: 16px; padding: 14px 18px; color: #c2d3ce; background: #123d38; border-left: 3px solid var(--orange); }
  @keyframes mobileLoopFlow { to { background-position-y: 16px; } }
  .capability-band { grid-template-columns: 190px 260px 1fr; }
  .capability-band > div { padding: 22px; }
  .capability-forms { grid-column: 2 / -1; border-top: 1px solid var(--line); border-right: 0 !important; }
  .capability-platform { grid-template-columns: 190px 290px 1fr; }
  .dining-loop-grid { gap: 50px; }
  .knowledge-entry { grid-template-columns: 108px minmax(0, 1fr) 205px; gap: 25px; }
  .leadership-future-layout { grid-template-columns: 1fr; align-items: stretch; }
  .future-capability-panel { min-height: 0; }
}

@media (max-width: 820px) {
  .digital-hero { padding-top: 66px; }
  .digital-hero-grid { min-height: 0; grid-template-columns: 1fr; gap: 45px; padding-top: 68px; padding-bottom: 52px; }
  .digital-hero-copy { max-width: none; }
  .digital-hero-copy h1 { font-size: 50px; }
  .foundation-board { max-width: 680px; }
  .digital-principles > div { padding: 20px; }
  .digital-principles > div:first-child { padding-left: 20px; }
  .digital-comparison-section, .digital-deliverables-section, .digital-cases-section, .digital-tech-section, .digital-deployment-section, .digital-path-section { padding: 76px 0; }
  .digital-section-heading h2 { font-size: 40px; }
  .digital-heading-inline { grid-template-columns: 1fr; gap: 22px; }
  .digital-heading-inline > p { margin: 0; }
  .digital-comparison { grid-template-columns: 1fr; }
  .digital-deliverables { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .digital-case, .digital-case-reverse { grid-template-columns: 1fr; }
  .digital-case-reverse .digital-case-visual { order: 0; }
  .digital-case-visual { min-height: 300px; }
  .digital-case-body { grid-template-columns: 1fr 185px; }
  .digital-tech-layout { grid-template-columns: 1fr; gap: 45px; }
  .deployment-handover { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .deployment-handover article:nth-child(2) { border-right: 0; }
  .deployment-handover article:nth-child(-n+2) { border-bottom: 1px solid #bcc8c2; }
  .digital-path { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .digital-path article:nth-child(2) { border-right: 0; }
  .digital-path article:nth-child(-n+2) { border-bottom: 1px solid #cfd8d3; }
  .digital-path article:nth-child(2)::after { display: none; }
  .digital-cta-section { padding-bottom: 76px; }
  .digital-cta { padding: 40px; }
  .digital-cta h2 { font-size: 27px; }
  .container { width: min(100% - 34px, 680px); }
  .section { padding: 76px 0; }
  .site-header { height: 66px; grid-template-columns: 1fr auto; padding: 0 17px; }
  .site-header .brand > img { width: 78px; }
  .site-header .brand-copy { display: none; }
  .site-nav { position: fixed; top: 66px; right: 0; left: 0; display: none; padding: 10px 17px 18px; background: #0a2220; border-top: 1px solid rgba(255,255,255,.1); box-shadow: 0 16px 32px rgba(0,0,0,.25); }
  .site-nav.open { display: grid; }
  .site-nav a { min-height: 44px; display: flex; align-items: center; padding: 0 10px; border-bottom: 1px solid rgba(255,255,255,.09); }
  .header-actions .button { display: none; }
  .menu-button { display: grid; }
  .hero { min-height: 0; padding-top: 66px; }
  .hero-overlay { background: linear-gradient(180deg, rgba(7,30,29,.97), rgba(7,30,29,.85)); }
  .hero-grid { min-height: 0; display: block; padding-top: 65px; padding-bottom: 54px; }
  .hero-copy h1 { font-size: clamp(38px, 11vw, 56px); }
  .hero-lede { font-size: 15px; }
  .hero-stage { min-height: 400px; margin-top: 48px; }
  .hero-bottom { grid-template-columns: repeat(3, 1fr); min-height: 105px; }
  .hero-stat { padding: 0 13px; }
  .hero-stat strong { font-size: 27px; }
  .hero-stat-copy { display: none; }
  .answer-grid { grid-template-columns: 1fr; gap: 10px; padding: 24px 0; }
  .answer-grid .inline-arrow { margin-top: 5px; }
  .split-intro { grid-template-columns: 1fr; gap: 22px; }
  .split-intro .section-lede { margin: 0; }
  .scenario-toolbar { align-items: stretch; flex-direction: column; }
  .filter-group { overflow-x: auto; padding-bottom: 2px; }
  .filter-button { flex: none; }
  .search-box { width: 100%; }
  .scenario-layout { grid-template-columns: 1fr; }
  .workbench-grid { grid-template-columns: 1fr; gap: 40px; }
  .page-hero { padding: 112px 0 64px; }
  .knowledge-hero { padding: 116px 0 42px; }
  .knowledge-hero-inner { grid-template-columns: 1fr; gap: 22px; }
  .knowledge-hero h1 { font-size: 52px; }
  .knowledge-hero p { font-size: 17px; }
  .knowledge-entry { grid-template-columns: 100px minmax(0, 1fr); gap: 24px; }
  .knowledge-source { grid-column: 2; padding: 17px 0 0; border-top: 1px solid #c6ceca; border-left: 0; }
  .scenario-banner { padding: 108px 0 46px; }
  .scenario-banner .container { min-height: 86px; }
  .scenario-banner h1 { font-size: 38px; white-space: normal; }
  .page-hero-grid, .narrative-grid, .evidence-grid, .industry-detail-grid, .industry-detail-alt .industry-detail-grid { grid-template-columns: 1fr; gap: 42px; }
  .page-hero-stamp { min-height: 190px; }
  .architecture-grid, .architecture-detail-grid, .industry-teaser-grid, .flow-explain-grid, .article-grid, .question-grid { grid-template-columns: repeat(2, 1fr); }
  .about-page-hero .page-hero-grid { grid-template-columns: 1fr; }
  .about-page-hero h1 { font-size: 50px; }
  .about-hero-visual { max-width: 560px; }
  .capability-section .section-intro { grid-template-columns: 1fr; gap: 22px; margin-bottom: 30px; }
  .value-path { grid-template-columns: 1fr; gap: 12px; }
  .value-path-arrow { min-height: 25px; }
  .value-path-arrow svg { transform: rotate(90deg); }
  .capability-band, .capability-platform { grid-template-columns: 1fr; }
  .capability-bands { gap: 16px; padding-left: 0; }
  .capability-bands::before, .capability-band::before { display: none; }
  .capability-band, .capability-platform { gap: 0; padding: 0; overflow: hidden; background: rgba(255,255,255,.42); border: 1px solid #c5d0cc; }
  .capability-section { padding: 58px 0 46px; }
  .capability-band > div, .capability-forms { grid-column: auto; padding: 18px; border-right: 0; border-bottom: 1px solid var(--line); }
  .capability-band > div:last-child { border-bottom: 0; }
  .capability-band-title { grid-template-columns: 34px 1fr; }
  .capability-band-title > div { grid-column: 2; margin-top: 0; }
  .capability-band-title small { margin-top: 8px; }
  .capability-band-title em { margin-top: 8px; }
  .capability-value small, .capability-features small, .capability-forms > small, .capability-platform-core > small { margin-bottom: 13px; }
  .architecture-conclusion { margin-left: 0; }
  .dining-loop-grid { grid-template-columns: 1fr; gap: 46px; }
  .enterprise-outcomes { min-height: 0; grid-template-columns: 1fr; gap: 10px; padding-bottom: 0; border-bottom: 0; }
  .enterprise-outcomes article,
  .enterprise-outcomes article:nth-child(1),
  .enterprise-outcomes article:nth-child(2),
  .enterprise-outcomes article:nth-child(3),
  .enterprise-outcomes article:nth-child(4) { min-height: 0; padding: 22px; }
  .enterprise-outcomes h3 { margin: 12px 0 8px; font-size: 20px; }
  .future-capability-panel { padding: 28px; }
  .enterprise-outcome-statement { grid-template-columns: 1fr; gap: 10px; }
  .glossary-list div { grid-template-columns: 170px 1fr; }
  .qr-grid { grid-column: auto; justify-self: start; }
  .domain-list { display: flex; gap: 5px; overflow-x: auto; border-right: 0; border-bottom: 1px solid var(--line); }
  .domain-button { flex: none; width: auto; white-space: nowrap; }
  .governance-grid, .faq-grid, .contact-grid { grid-template-columns: 1fr; gap: 44px; }
  .contact-grid.contact-grid-minimal { grid-template-columns: 1fr; gap: 28px; }
  .contact-grid-minimal .qr-grid { justify-self: start; }
  .contact-page-section { min-height: 0; }
  .case-grid { grid-template-columns: 1fr; }
  .case-card { display: grid; grid-template-columns: .72fr 1.28fr; }
  .case-image { height: 100%; min-height: 260px; }
  .case-body { min-height: 0; }
  .about-grid { grid-template-columns: 1fr; gap: 48px; }
  .about-intro { position: static; }
  .contact-panel { width: min(100%, 520px); }
  .contact-team-section, .contact-values-section { padding: 76px 0; }
  .contact-qr-section { padding: 76px 0 88px; }
  .team-profile { grid-template-columns: 1fr; }
  .team-profile-photo { width: min(100%, 270px); }
  .team-detail-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .footer-grid { grid-template-columns: 1fr; gap: 25px; padding: 40px 0; }
  .footer-links { flex-wrap: wrap; }
  .footer-meta { justify-self: start; text-align: left; }
}

@media (max-width: 560px) {
  .digital-hero-grid { gap: 38px; padding-top: 50px; padding-bottom: 42px; }
  .digital-hero-copy h1 { font-size: 40px; }
  .digital-hero-copy > p { font-size: 14px; }
  .digital-hero-actions { display: grid; }
  .digital-hero-actions .button { width: 100%; }
  .foundation-board { padding: 17px; }
  .foundation-source > div { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .digital-principles { grid-template-columns: 1fr; }
  .digital-principles > div { min-height: 88px; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.14); }
  .digital-principles > div:last-child { border-bottom: 0; }
  .digital-comparison-section, .digital-deliverables-section, .digital-cases-section, .digital-tech-section, .digital-deployment-section, .digital-path-section { padding: 64px 0; }
  .digital-section-heading { margin-bottom: 34px; }
  .digital-section-heading h2 { font-size: 34px; }
  .digital-comparison article { padding: 22px; }
  .comparison-track { grid-template-columns: 1fr; gap: 7px; margin: 24px 0; }
  .comparison-track i { display: none; }
  .comparison-track span { padding: 11px; text-align: left; }
  .digital-deliverables { grid-template-columns: 1fr; }
  .digital-deliverables article { min-height: 260px; }
  .digital-system-group { height: auto; min-height: 340px !important; grid-template-rows: 28px 66px auto 60px; }
  .digital-case-visual { min-height: 245px; }
  .digital-case-visual > div { inset: auto 21px 22px; }
  .digital-case-visual strong { font-size: 24px; }
  .digital-case-body { grid-template-columns: 1fr; gap: 20px; padding: 22px 20px; }
  .digital-case-head { grid-template-columns: 1fr; gap: 9px; }
  .digital-case-result { min-height: 140px; }
  .digital-tech-matrix { grid-template-columns: 1fr; }
  .digital-tech-matrix article { min-height: 176px; }
  .deployment-boundary > header { align-items: flex-start; flex-direction: column; gap: 13px; }
  .deployment-flow { grid-template-columns: 1fr; }
  .deployment-arrow { justify-self: center; transform: rotate(90deg); }
  .deployment-data-stack { grid-template-columns: repeat(2, minmax(0, 1fr)); width: 100%; }
  .deployment-model { grid-template-columns: 24px 1fr; }
  .deployment-model > b { grid-column: 1 / -1; }
  .deployment-handover { grid-template-columns: 1fr; }
  .deployment-handover article, .deployment-handover article:nth-child(2) { min-height: 130px; border-right: 0; border-bottom: 1px solid #bcc8c2; }
  .deployment-handover article:last-child { border-bottom: 0; }
  .digital-path { grid-template-columns: 1fr; }
  .digital-path article, .digital-path article:nth-child(2) { min-height: 185px; border-right: 0; border-bottom: 1px solid #cfd8d3; }
  .digital-path article:last-child { border-bottom: 0; }
  .digital-path article::after { display: none; }
  .digital-path strong { margin-top: 35px; }
  .digital-cta-section { padding-bottom: 64px; }
  .digital-cta { min-height: 0; align-items: flex-start; flex-direction: column; gap: 28px; padding: 30px 24px; }
  .digital-cta h2 { font-size: 24px; }
  .digital-cta .button { width: 100%; }
  .container { width: calc(100% - 28px); }
  .section { padding: 64px 0; }
  .scenario-page-section { padding: 28px 0 32px; }
  .page-section.scenario-cases-section { padding: 38px 0 64px; }
  .scenario-value-hero { padding: 72px 0 20px; }
  .section-intro { margin-bottom: 34px; }
  .section-intro h2, .workbench-copy h2, .governance-copy h2, .contact-copy h2 { font-size: 34px; }
  .page-hero h1 { font-size: 42px; }
  .scenario-banner { padding: 102px 0 36px; }
  .scenario-banner .container { min-height: 112px; }
  .scenario-banner h1 { font-size: 32px; line-height: 1.3; }
  .about-page-hero h1 { font-size: 42px; }
  .page-hero > .container > p:last-child, .page-hero-grid > div:first-child > p:last-child { font-size: 15px; }
  .hero-grid { padding-top: 53px; }
  .hero-actions { display: grid; }
  .hero-actions .button { width: 100%; }
  .hero-stage { min-height: 0; padding: 18px; }
  .stage-title span { font-size: 15px; }
  .stage-title strong { font-size: 32px; }
  .stage-flow { grid-template-columns: 1fr 20px 1fr 20px 1fr; }
  .node-icon { width: 39px; height: 39px; }
  .flow-node b { font-size: 9px; }
  .task-meta { gap: 9px; }
  .hero-bottom { width: 100%; padding: 0 14px; }
  .hero-stat:first-child { padding-left: 10px; }
  .hero-stat span { font-size: 9px; }
  .problem-grid, .method-grid, .service-grid { grid-template-columns: 1fr; }
  .problem-card { min-height: 220px; }
  .service-card { min-height: 350px; }
  .service-principle { grid-template-columns: 22px 1fr; }
  .service-principle span { grid-column: 1 / -1; padding: 11px 0 0; border-top: 1px solid rgba(255,255,255,.16); border-left: 0; }
  .industry-grid { grid-template-columns: 1fr; }
  .architecture-grid, .architecture-detail-grid, .industry-teaser-grid, .flow-explain-grid, .article-grid, .question-grid { grid-template-columns: 1fr; }
  .about-hero-visual { padding: 18px; }
  .hero-loop-row.hero-loop-ai { margin: 0 -18px; padding: 0 18px; }
  .value-path article { grid-template-columns: 38px 1fr; padding: 22px; }
  .operating-loop-board { padding: 14px; }
  .loop-steps article { padding-right: 40px; }
  .loop-return-line { grid-template-columns: 24px 1fr; }
  .loop-return-line span { grid-column: 2; }
  .architecture-lede { margin-top: 4px !important; }
  .capability-section .section-intro h2 { font-size: 33px; }
  .capability-band-title { grid-template-columns: 28px 1fr; padding: 20px !important; }
  .capability-band-title > svg { width: 22px; }
  .capability-band-title strong { font-size: 20px; }
  .capability-value strong { font-size: 16px; }
  .capability-features ul, .platform-core-grid { grid-template-columns: 1fr; }
  .capability-band > div { padding: 18px; }
  .dining-loop-intro h2 { font-size: 36px; }
  .dining-loop-image { height: 120px; }
  .enterprise-outcomes article,
  .enterprise-outcomes article:first-child,
  .enterprise-outcomes article:nth-child(2),
  .enterprise-outcomes article:nth-child(3),
  .enterprise-outcomes article:nth-child(4) { min-height: 0; }
  .page-section { padding: 70px 0; }
  .knowledge-hero { padding: 104px 0 34px; }
  .knowledge-hero h1 { font-size: 44px; }
  .knowledge-hero p { font-size: 15px; }
  .knowledge-section { padding: 32px 0 62px; }
  .knowledge-toolbar { min-height: 66px; align-items: flex-start; }
  .knowledge-toolbar > div { display: grid; gap: 4px; }
  .knowledge-entry { grid-template-columns: 1fr; gap: 16px; padding: 28px 0 30px; }
  .knowledge-date { display: flex; align-items: center; justify-content: space-between; }
  .knowledge-content h2 { margin-top: 14px; font-size: 23px; }
  .knowledge-content > p { font-size: 12px; }
  .knowledge-take { grid-template-columns: 1fr; gap: 7px; }
  .knowledge-source { grid-column: 1; }
  .industry-detail-visual { min-height: 300px; }
  .industry-detail-visual strong { margin-top: 50px; }
  .glossary-list div { grid-template-columns: 1fr; gap: 8px; }
  .industry-card { height: 310px; }
  .industry-text { height: 220px; }
  .scenario-results { padding: 14px; }
  .scenario-grid { grid-template-columns: 1fr; }
  .scenario-footer { align-items: flex-start; flex-direction: column; min-height: 0; padding: 16px 0 0; }
  .responsibility-row { grid-template-columns: 39px 1fr; }
  .responsibility-row em { display: none; }
  .case-outcome-grid { grid-template-columns: repeat(2, 1fr); margin: 0; }
  .case-outcome-grid div { min-height: 116px; padding: 20px; }
  .case-outcome-grid strong { font-size: 29px; }
  .scenario-value-grid { gap: 8px; }
  .scenario-value-grid div { min-height: 100px; grid-template-columns: 35px 1fr; column-gap: 10px; padding: 15px 13px; border-radius: 3px; }
  .scenario-value-grid svg { width: 33px; height: 33px; padding: 7px; }
  .scenario-value-grid strong { font-size: 25px; }
  .scenario-value-grid small { margin-top: 5px; font-size: 9px; }
  .case-value-banner { min-height: 150px; margin: 0 0 24px; padding: 28px 20px; }
  .case-value-banner h2 { font-size: 32px; line-height: 1.3; }
  .case-card { display: block; }
  .case-image { height: 210px; min-height: 0; }
  .case-body { min-height: 0; }
  .case-metric { align-items: flex-start; flex-direction: column; }
  .case-metric strong { font-size: 27px; }
  .method-card { min-height: 235px; }
  .workbench-board { padding: 18px; }
  .workbench-board-title span { font-size: 15px; }
  .workbench-board-title strong { font-size: 32px; }
  .workbench-capability-grid { gap: 8px; }
  .workbench-capability-grid article { min-height: 145px; padding: 13px; }
  .workbench-board-footer { align-items: flex-start; flex-direction: column; }
  .metric-strip { align-items: flex-start; }
  .metric-strip strong { width: 100%; }
  .contact-section { padding: 70px 0; }
  .contact-section-heading { margin-bottom: 30px; }
  .contact-section-heading h1, .contact-section-heading h2 { font-size: 34px; }
  .contact-section-heading > p { font-size: 14px; }
  .team-profile { gap: 24px; padding: 20px; }
  .team-profile-content header h2 { font-size: 31px; }
  .team-profile-content header strong { font-size: 16px; }
  .team-profile-content header p, .team-profile blockquote { font-size: 13px; }
  .team-profile blockquote { padding: 16px; }
  .team-detail-grid { grid-template-columns: 1fr; gap: 25px; }
  .team-values { grid-template-columns: 1fr; gap: 10px; }
  .team-values article { min-height: 0; padding: 22px 20px; }
  .team-values h3 { margin-top: 15px; }
  .contact-qr-grid { grid-template-columns: repeat(2, minmax(0, 140px)); gap: 14px; }
  .contact-qr-grid .qr-card { width: 140px; }
  .contact-qr-grid .qr-card img { width: 140px; height: 140px; padding: 6px; }
  .qr-grid { grid-template-columns: repeat(2, minmax(0, 105px)); justify-self: start; }
  .contact-panel { padding: 19px; }
  .scenario-modal { top: 1vh; width: calc(100% - 12px); max-height: 98vh; padding: 0; }
  .modal-head { padding: 17px 15px; }
  .modal-head h2 { font-size: 24px; }
  .modal-head-copy { min-width: 0; }
  .scenario-detail { padding: 12px 12px 4px; }
  .detail-agent-name { grid-template-columns: 1fr; gap: 13px; min-height: 0; padding: 18px; }
  .detail-agent-name div { padding: 13px 0 0; border-top: 1px solid rgba(255,255,255,.18); border-left: 0; }
  .detail-agent-name strong { font-size: 23px; }
  .detail-section { padding: 18px 16px; }
  .detail-section > header { align-items: flex-start; flex-direction: column; gap: 0; }
  .detail-section > header h3 { font-size: 18px; }
  .detail-current-list, .detail-flow-grid { grid-template-columns: 1fr; }
  .detail-current-list li, .detail-flow-grid article { min-height: 0; }
  .detail-breakpoint-section { grid-template-columns: 1fr; gap: 14px; }
  .detail-breakpoint-section > header { padding-bottom: 13px; border-bottom: 1px solid var(--line); }
  .detail-outcome-section > strong { font-size: 22px; }
  .modal-footer { align-items: stretch; flex-direction: column; padding: 13px 12px; }
  .modal-footer .button { width: 100%; }
  .scroll-top-button { right: 14px; bottom: 18px; width: 42px; height: 42px; }
  .toast { right: 14px; bottom: 72px; left: 14px; max-width: none; }
}

@media (max-width: 420px) {
  .scenario-banner .container { min-height: 86px; }
  .scenario-banner h1 { font-size: 28px; line-height: 1.35; }
  .scenario-banner h1 span, .scenario-banner h1 em { display: block; white-space: nowrap; }
}
