/* Only the secondary-page content surface owns these tokens and rules. */
#main [data-inner-v3] {
  --inner-v3-green: var(--brand-green);
  --inner-v3-ink: #171b1a;
  --inner-v3-muted: #505955;
  --inner-v3-line: #dedfdf;
  --inner-v3-soft: #f3f5f4;
  --inner-v3-radius: 10px;
  --inner-v3-font: 'Noto Sans SC', 'PingFang SC', 'Microsoft YaHei', sans-serif;
  color: var(--inner-v3-ink);
  background: #fff;
  font-family: var(--inner-v3-font);
  font-size: 18px;
  line-height: 1.8;
  font-weight: 400;
  overflow-wrap: break-word;
  padding-bottom: 1px;
}
#main [data-inner-v3] :where(h1,h2,h3,h4,p,span,a,li,dt,dd,th,td,button,summary) { letter-spacing: 0; }
#main [data-inner-v3] :where(h1,h2,h3,h4) { color: var(--inner-v3-ink); font-weight: 500; text-wrap: pretty; }
#main [data-inner-v3] h1 { font-size: clamp(44px,3.6vw,56px); line-height: 1.35; max-width: 1100px; overflow-wrap: normal; }
#main [data-inner-v3] h2 { font-size: 32px; line-height: 1.45; margin: 0 0 24px; }
#main [data-inner-v3] h3 { font-size: 22px; line-height: 1.5; margin: 0 0 16px; }
#main [data-inner-v3] :where(p,li,td,dd) { font-size: 18px; line-height: 1.8; }
#main [data-inner-v3] :where(p,li) { color: var(--inner-v3-ink); }
#main [data-inner-v3] p { margin: 0 0 20px; }
#main [data-inner-v3] :where(img,video) { border-radius: var(--inner-v3-radius); }
#main [data-inner-v3] button { font-family: inherit; cursor: pointer; }
#main [data-inner-v3] :where(a,button,summary,input):focus-visible { outline: 3px solid var(--brand-green); outline-offset: 5px; }
#main [data-inner-v3] .reveal { opacity: 1; transform: none; transition: none; }
#main [data-inner-v3] :where(.content-shell,.next-page) { width: min(1320px,calc(100% - 96px)); margin-inline: auto; }
#main [data-inner-v3] .page-hero { background: #fff; padding: 148px 0 42px; min-height: 0; }
#main [data-inner-v3] .page-hero h1 { margin: 0; }
#main [data-inner-v3] .secondary-intro { display: block; padding: 48px 0 56px; border-bottom: 1px solid var(--inner-v3-line); }
#main [data-inner-v3] .secondary-intro > p { max-width: 800px; font-size: 20px; line-height: 1.8; letter-spacing: 0; }
#main [data-inner-v3] .secondary-intro :where(.text-link,.service-back) { display: inline-block; margin-top: 8px; font-size: 17px; color: inherit; }
#main [data-inner-v3] .v3-caption { font-size: 15px; color: var(--inner-v3-muted); line-height: 1.7; margin: 16px 0 0; }
#main [data-inner-v3] :where(figcaption,small) { font-size: 15px; line-height: 1.7; color: var(--inner-v3-muted); }
#main [data-inner-v3] figure { margin: 0; }
#main [data-inner-v3] figcaption { padding-top: 14px; }
#main [data-inner-v3] .eyebrow { color: var(--brand-green); font-size: 17px; text-transform: none; margin-bottom: 20px; font-weight: 400; }
#main [data-inner-v3] .v3-section { margin-top: 76px; margin-bottom: 76px; }
#main [data-inner-v3] .v3-section > h2 { margin-bottom: 32px; }
#main [data-inner-v3] .v3-main-stage { margin-bottom: 0; }
#main [data-inner-v3] .v3-tabs { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 34px; border-bottom: 1px solid var(--inner-v3-line); }
#main [data-inner-v3] .v3-tabs button { position: relative; display: inline-flex; align-items: center; gap: 10px; min-height: 62px; border: 0; border-bottom: 3px solid transparent; background: transparent; padding: 16px 2px; font-size: 18px; font-weight: 500; color: var(--inner-v3-muted); transition: color .25s, border-color .25s; }
#main [data-inner-v3] .v3-tabs button[aria-selected="true"] { color: var(--inner-v3-ink); border-bottom-color: var(--inner-v3-green); }
#main [data-inner-v3] .v3-tabs button[aria-selected="true"]::before { content: ''; width: 12px; height: 12px; background: var(--inner-v3-green); clip-path: polygon(50% 0,61% 36%,100% 50%,61% 64%,50% 100%,39% 64%,0 50%,39% 36%); }
#main [data-inner-v3] .v3-tabs button:hover { color: var(--inner-v3-ink); }
#main [data-inner-v3] .v3-switch.is-ready > .v3-panels { display: grid; }
#main [data-inner-v3] .v3-switch.is-ready > .v3-panels > [role="tabpanel"] { grid-area: 1 / 1; min-width: 0; align-self: stretch; }
#main [data-inner-v3] .v3-switch.is-ready > .v3-panels > [aria-hidden="true"] { visibility: hidden; pointer-events: none; }
#main [data-inner-v3] .v3-panels > [role="tabpanel"] { border-radius: var(--inner-v3-radius); overflow: hidden; }
#main [data-inner-v3] .v3-panels p { max-width: 740px; }
#main [data-inner-v3] .v3-table-scroll { overflow: auto; border-top: 1px solid var(--inner-v3-line); }
#main [data-inner-v3] table { width: 100%; border-collapse: collapse; text-align: left; }
#main [data-inner-v3] th { padding: 15px 18px; font-size: 16px; color: var(--inner-v3-muted); font-weight: 400; background: var(--inner-v3-soft); }
#main [data-inner-v3] td { padding: 20px 18px; border-bottom: 1px solid var(--inner-v3-line); vertical-align: top; }
#main [data-inner-v3] th:first-child,#main [data-inner-v3] td:first-child { padding-left: 0; }
#main [data-inner-v3] th:first-child { padding-left: 18px; }
#main [data-inner-v3] td:first-child { width: 34%; font-weight: 500; }
#main [data-inner-v3] .v3-web-header { height: 64px; padding: 0 34px; display: flex; justify-content: space-between; gap: 24px; align-items: center; background: #fff; border: 1px solid var(--inner-v3-line); border-bottom: 0; font-size: 16px; }
#main [data-inner-v3] .v3-web-header strong { font-size: 23px; font-weight: 600; }
#main [data-inner-v3] .v3-web-home { position: relative; height: 465px; background: #103658; overflow: hidden; }
#main [data-inner-v3] .v3-web-home img { width: 70%; height: 100%; object-fit: cover; position: absolute; right: 0; top: 0; border-radius: 0; }
#main [data-inner-v3] .v3-web-home::after { content:''; position:absolute; inset:0; background:linear-gradient(90deg,#082344 0%,#082344 20%,transparent 64%); }
#main [data-inner-v3] .v3-web-home > div { position: relative; z-index: 1; padding: 94px 54px; }
#main [data-inner-v3] .v3-web-home h2 { font-size: 40px; color: #fff; line-height: 1.5; }
#main [data-inner-v3] .v3-web-home p { color: #fff; font-size: 18px; }
#main [data-inner-v3] .v3-web-footer { display: flex; justify-content: space-between; align-items: center; gap: 30px; background: #f0f3f5; padding: 26px 34px; font-size: 16px; }
#main [data-inner-v3] .v3-web-footer strong { font-weight: 500; font-size: 22px; }
#main [data-inner-v3] .v3-web-product { display: grid; grid-template-columns: 1.03fr 1fr; min-height: 548px; background: #f4f6f7; gap: 36px; padding: 32px; }
#main [data-inner-v3] .v3-web-product > img { width: 100%; height: 480px; object-fit: cover; }
#main [data-inner-v3] .v3-web-product h2 { margin: 12px 0; }
#main [data-inner-v3] .v3-web-product p { margin-bottom: 18px; }
#main [data-inner-v3] .v3-web-product :where(td,th) { padding: 10px; font-size: 16px; }
#main [data-inner-v3] .v3-web-contact { background: #eef2f6; display: grid; grid-template-columns: 1fr 1fr; min-height: 548px; padding: 68px 56px; gap: 70px; align-items: center; }
#main [data-inner-v3] .v3-form-preview { padding: 30px; background: #fff; border-radius: 10px; }
#main [data-inner-v3] .v3-form-preview > div { padding: 14px 0; border-bottom: 1px solid var(--inner-v3-line); display: grid; }
#main [data-inner-v3] .v3-form-preview strong { font-weight: 400; }
#main [data-inner-v3] .v3-form-preview > p { font-size: 16px; margin: 20px 0 0; }
#main [data-inner-v3] .v3-brand .v3-panels { background: #f2f3f3; border-radius: 10px; overflow: hidden; }
#main [data-inner-v3] .v3-brand-canvas { height: 552px; }
#main [data-inner-v3] .v3-brand-canvas img { width: 100%; height: 100%; object-fit: cover; }
#main [data-inner-v3] .v3-brand-colors { display: grid; grid-template-columns: 1.2fr 1fr; height: 552px; gap: 0; }
#main [data-inner-v3] .v3-brand-crop { overflow: hidden; }
#main [data-inner-v3] .v3-brand-crop img { width: 100%; height: 100%; object-fit: cover; border-radius: 0; }
#main [data-inner-v3] .v3-swatches { display: grid; grid-template-rows: repeat(3,1fr); }
#main [data-inner-v3] .v3-swatches > div { background: var(--swatch); padding: 26px 42px; display: flex; align-items: center; justify-content: space-between; color: #fff; }
#main [data-inner-v3] .v3-swatches > div:last-child { color: #171b1a; }
#main [data-inner-v3] .v3-swatches strong { font-size: 32px; font-weight: 500; }
#main [data-inner-v3] .v3-brand-application { min-height: 552px; display: grid; grid-template-columns: 1.4fr .85fr; gap: 60px; padding: 38px 48px; background: #eceeec; align-items: center; }
#main [data-inner-v3] .v3-print-sheet { display: grid; grid-template-columns: 1.1fr 1fr; background: #fff; min-height: 430px; box-shadow: 0 10px 25px #171b1a0a; }
#main [data-inner-v3] .v3-print-sheet img { height: 100%; object-fit: cover; border-radius: 0; }
#main [data-inner-v3] .v3-print-sheet > div { display: flex; flex-direction: column; justify-content: space-between; padding: 28px; }
#main [data-inner-v3] .v3-print-sheet h2 { font-size: 30px; }
#main [data-inner-v3] .v3-print-sheet span { font-size: 15px; }
#main [data-inner-v3] .v3-book { min-height: 552px; padding: 42px; display: grid; grid-template-columns: 1fr 1fr; background: #f0f2f0; }
#main [data-inner-v3] .v3-book > div { background: #fff; padding: 32px; border-right: 1px solid #ddd; }
#main [data-inner-v3] .v3-book img { height: 300px; object-fit: cover; }
#main [data-inner-v3] .v3-book p { margin-top: 18px; }
#main [data-inner-v3] .v3-erp { border-radius: 10px; padding: 0 28px 24px; background: #f1f4f3; border: 1px solid var(--inner-v3-line); }
#main [data-inner-v3] .v3-erp-head { display: flex; align-items: center; justify-content: space-between; gap: 30px; padding: 28px 0 20px; }
#main [data-inner-v3] .v3-erp-head h2 { margin: 4px 0 0; }
#main [data-inner-v3] .v3-erp-head > div > span { font-size: 16px; color: var(--inner-v3-muted); }
#main [data-inner-v3] .v3-status { display: inline-flex; align-items: center; min-height: 32px; padding: 4px 12px; background: #f5f6f5; color: inherit; border-radius: 5px; font-size: 16px; }
#main [data-inner-v3] .v3-erp-body { display: grid; grid-template-columns: 180px 1fr; background: #fff; border: 1px solid #e0e4e1; border-radius: 8px; min-height: 390px; }
#main [data-inner-v3] .v3-erp-body aside { border-right: 1px solid #e0e4e1; padding: 24px 16px; display: flex; flex-direction: column; gap: 12px; }
#main [data-inner-v3] .v3-erp-body aside :where(span,strong) { padding: 8px 10px; font-size: 16px; }
#main [data-inner-v3] .v3-erp-body aside .is-current { background: rgba(var(--accent-rgb),.08); border-radius: 5px; color: var(--brand-green); }
#main [data-inner-v3] .v3-erp-body > div { padding: 22px 28px; min-width: 0; }
#main [data-inner-v3] .v3-record-head { display: flex; justify-content: space-between; gap: 20px; align-items: center; }
#main [data-inner-v3] .v3-record-head span { font-size: 16px; }
#main [data-inner-v3] .v3-record-head h3 { margin-bottom: 18px; }
#main [data-inner-v3] .v3-order-link { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 24px 0; }
#main [data-inner-v3] .v3-order-link span { padding: 8px 14px; background: #f2f4f3; font-size: 16px; border-radius: 5px; }
#main [data-inner-v3] .v3-order-link span.is-current { background: #ddf2e5; }
#main [data-inner-v3] .v3-order-link i { font-style: normal; color: #7a827e; }
#main [data-inner-v3] .v3-work-note { border-top: 1px solid var(--inner-v3-line); padding-top: 22px; }
#main [data-inner-v3] .v3-work-note h3 { font-size: 20px; margin-bottom: 10px; }
#main [data-inner-v3] .v3-work-note p { margin: 0; font-size: 17px; }
#main [data-inner-v3] .v3-crm > .v3-tabs { justify-content: space-between; gap: 10px; margin-bottom: 30px; }
#main [data-inner-v3] .v3-crm > .v3-tabs button { padding: 18px 16px; flex: 1; border-top: 1px solid var(--inner-v3-line); min-height: 75px; justify-content: center; }
#main [data-inner-v3] .v3-crm-detail { display: grid; grid-template-columns: .8fr 1.5fr; gap: 64px; padding: 44px 48px; min-height: 458px; background: #f3f4f5; border-radius: 10px; }
#main [data-inner-v3] .v3-crm-detail aside { padding: 20px 44px 12px 0; border-right: 1px solid #d9dcdf; }
#main [data-inner-v3] .v3-crm-detail aside h2 { margin-top: 20px; }
#main [data-inner-v3] .v3-crm-detail aside p { font-size: 17px; }
#main [data-inner-v3] dl { display: grid; grid-template-columns: max-content 1fr; gap: 14px 24px; margin: 24px 0; }
#main [data-inner-v3] dt { color: var(--inner-v3-muted); font-size: 17px; }
#main [data-inner-v3] dd { margin: 0; }
#main [data-inner-v3] .v3-record-type { display: block; font-size: 16px; margin-bottom: 16px; }
#main [data-inner-v3] .v3-next-action { padding: 22px 26px; margin-top: 26px; background: #fff; border-left: 3px solid var(--brand-green); }
#main [data-inner-v3] .v3-next-action h3 { margin: 6px 0; }
#main [data-inner-v3] .v3-next-action p { margin: 0; font-size: 17px; }
#main [data-inner-v3] .v3-next-action > span { font-size: 15px; }
#main [data-inner-v3] .v3-record-position { display: flex; gap: 8px; align-items: center; margin-top: 24px; }
#main [data-inner-v3] .v3-record-position i { width: 32px; height: 3px; background: #d6dcda; }
#main [data-inner-v3] .v3-record-position i.is-current { background: var(--inner-v3-green); }
#main [data-inner-v3] .v3-record-position span { margin-left: 12px; font-size: 15px; }
#main [data-inner-v3] .v3-commerce-display { display: grid; grid-template-columns: minmax(0,1fr) 302px; gap: 24px; height: 537px; margin-bottom: 24px; }
#main [data-inner-v3] .v3-commerce-display > figure { height: 100%; overflow: hidden; }
#main [data-inner-v3] .v3-commerce-display img { width: 100%; height: 100%; object-fit: cover; }
#main [data-inner-v3] .v3-film { overflow: hidden; border-radius: 10px; background: #f0f2f0; }
#main [data-inner-v3] .v3-film video { display: block; width: 100%; height: 100%; object-fit: contain; aspect-ratio: 3/2; }
#main [data-inner-v3] .v3-portrait video { aspect-ratio: 9/16; }
#main [data-inner-v3] .v3-commerce-path { display: grid; grid-template-columns: .7fr 1.6fr; gap: 44px; padding: 40px; min-height: 375px; background: #f4f5f4; }
#main [data-inner-v3] .v3-path-mark { align-self: start; padding-top: 14px; border-top: 2px solid #171b1a; max-width: 160px; font-size: 22px; }
#main [data-inner-v3] .v3-specs p { display: grid; grid-template-columns: 110px 1fr; padding: 10px 0; border-bottom: 1px solid var(--inner-v3-line); margin: 0; }
#main [data-inner-v3] .v3-specs strong { font-weight: 500; }
#main [data-inner-v3] .v3-spec-label { display: block; margin-top: 32px; font-size: 16px; }
#main [data-inner-v3] .v3-task-stage { background: #edf1ee; display: grid; grid-template-columns: .95fr 1.05fr; gap: 60px; align-items: center; min-height: 580px; padding: 36px 70px; }
#main [data-inner-v3] .v3-device { width: 292px; min-height: 506px; justify-self: center; background: #fff; border: 1px solid #ced5d0; border-radius: 18px; overflow: hidden; display: flex; flex-direction: column; box-shadow: 0 12px 35px #20352908; }
#main [data-inner-v3] .v3-device-top { display: flex; justify-content: space-between; padding: 16px 20px; border-bottom: 1px solid #e3e7e4; font-size: 15px; }
#main [data-inner-v3] .v3-device-body { padding: 24px 22px; flex: 1; }
#main [data-inner-v3] .v3-device-body h3 { font-size: 21px; margin: 16px 0 10px; }
#main [data-inner-v3] .v3-device-body p { font-size: 16px; line-height: 1.75; }
#main [data-inner-v3] .v3-device-bottom { padding: 12px; margin: 0 22px 20px; text-align: center; background: #f5f6f5; color: inherit; border-radius: 7px; font-size: 16px; }
#main [data-inner-v3] .v3-event-art { height: 130px; background: #303a35; overflow: hidden; position: relative; }
#main [data-inner-v3] .v3-event-art i { display: block; position: absolute; width: 110px; height: 120px; border: 18px solid #a8d3bc; transform: rotate(-30deg); left: 30px; top: 40px; }
#main [data-inner-v3] .v3-event-art i:nth-child(2) { left: 100px; top: -42px; border-color: #e6d482; }
#main [data-inner-v3] .v3-event-art i:nth-child(3) { left: 160px; top: 72px; border-color: #d47751; }
#main [data-inner-v3] .v3-doc-file { display: grid; gap: 8px; padding: 16px 0; border-bottom: 1px solid var(--inner-v3-line); }
#main [data-inner-v3] .v3-doc-file strong { font-size: 17px; font-weight: 500; }
#main [data-inner-v3] .v3-doc-file span { font-size: 15px; color: var(--inner-v3-muted); }
#main [data-inner-v3] .v3-task-copy { max-width: 460px; }
#main [data-inner-v3] .v3-task-copy h2 { margin-top: 24px; }
#main [data-inner-v3] .v3-task-progress { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
#main [data-inner-v3] .v3-task-progress span { padding-top: 12px; border-top: 2px solid #cad6cf; font-size: 16px; }
#main [data-inner-v3] .v3-task-progress span.is-current { border-color: var(--inner-v3-green); }
#main [data-inner-v3] .v3-confirm-symbol { font-size: 30px; display: inline-grid; place-items: center; width: 58px; height: 58px; border-radius: 50%; background: #f5f6f5; color: inherit; margin-bottom: 22px; }
#main [data-inner-v3] .v3-ticket { padding: 20px; border: 1px dashed #a9c3b5; display: grid; gap: 12px; margin-bottom: 20px; }
#main [data-inner-v3] .v3-ticket p { margin: 0; }
#main [data-inner-v3] .v3-support-stage { background: #f3f5f4; padding: 40px; display: grid; grid-template-columns: .8fr 1.5fr; gap: 60px; min-height: 490px; }
#main [data-inner-v3] .v3-support-rail { display: grid; align-content: center; gap: 20px; }
#main [data-inner-v3] .v3-support-rail > div { display: flex; justify-content: space-between; padding: 16px 20px; border-left: 2px solid #cbd3ce; color: #52625a; }
#main [data-inner-v3] .v3-support-rail > .is-current { border-color: var(--inner-v3-green); background: rgba(var(--accent-rgb),.12); color: #172e21; }
#main [data-inner-v3] .v3-support-rail i { font-style: normal; }
#main [data-inner-v3] .v3-support-document { padding: 28px; background: #fff; border-radius: 6px; }
#main [data-inner-v3] .v3-support-document h2 { margin-top: 18px; }
#main [data-inner-v3] .v3-support-document :where(td,th) { padding: 10px; font-size: 16px; }
#main [data-inner-v3] .v3-support-document > p:last-child { font-size: 16px; margin: 16px 0 0; }
#main [data-inner-v3] .v3-content-study { min-height: 520px; display: grid; grid-template-columns: 1fr 1fr; background: #f2f4f3; padding: 44px; gap: 60px; align-items: center; }
#main [data-inner-v3] .v3-content-map { display: flex; flex-direction: column; gap: 20px; align-items: center; }
#main [data-inner-v3] .v3-content-map > div { display: flex; gap: 16px; }
#main [data-inner-v3] .v3-content-map span { display: inline-block; padding: 12px 18px; border: 1px solid #becbc2; background: #fff; }
#main [data-inner-v3] .v3-content-map .is-current { background: rgba(var(--accent-rgb),.15); border-color: var(--brand-green); }
#main [data-inner-v3] .v3-content-map i { font-style: normal; font-size: 28px; }
#main [data-inner-v3] .v3-content-study article h2 { margin-top: 20px; }
#main [data-inner-v3] .v3-content-source { border-top: 1px solid var(--inner-v3-line); padding-top: 20px; margin-top: 28px; }
#main [data-inner-v3] .v3-content-source strong { font-size: 17px; font-weight: 500; }
#main [data-inner-v3] .v3-content-source p { font-size: 17px; margin: 10px 0 0; }
#main [data-inner-v3] .v3-software-pair { display: grid; grid-template-columns: 1fr 1fr; gap: 36px; padding: 38px; background: #f3f5f4; min-height: 520px; }
#main [data-inner-v3] .v3-software-pair > article { padding: 30px; background: #fff; }
#main [data-inner-v3] .v3-software-pair h2 { margin-top: 20px; }
#main [data-inner-v3] .v3-software-pair img { height: 100%; max-height: 460px; object-fit: cover; }
#main [data-inner-v3] .v3-software-pair :where(td,th) { font-size: 16px; padding: 12px 10px; }
#main [data-inner-v3] .v3-publish { min-height: 560px; padding: 100px 80px; background: #f3f5f4; }
#main [data-inner-v3] :where(.v3-video-study,.v3-product-study) { display: grid; grid-template-columns: 1.2fr .8fr; align-items: center; gap: 48px; background: #f3f5f4; padding: 32px; min-height: 530px; }
#main [data-inner-v3] .v3-product-study > img { height: 460px; object-fit: cover; }
#main [data-inner-v3] .v3-study-line { padding-top: 12px; border-top: 1px solid var(--inner-v3-line); font-size: 17px; }
#main [data-inner-v3] .v3-video-study .v3-film { aspect-ratio: 3/2; }
#main [data-inner-v3] .v3-editorial-list { border-top: 1px solid var(--inner-v3-line); }
#main [data-inner-v3] .v3-editorial-list article { display: grid; grid-template-columns: .9fr 1.3fr; gap: 60px; padding: 30px 0; border-bottom: 1px solid var(--inner-v3-line); }
#main [data-inner-v3] .v3-editorial-list h3 { max-width: 420px; }
#main [data-inner-v3] .v3-editorial-list p { margin: 0; max-width: 740px; }
#main [data-inner-v3] :where(.v3-two-notes,.v3-boundary) { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; }
#main [data-inner-v3] .v3-boundary { background: var(--inner-v3-soft); padding: 36px; border-radius: 10px; }
#main [data-inner-v3] .v3-boundary li { margin: 10px 0; }
#main [data-inner-v3] .v3-project-links { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 40px; }
#main [data-inner-v3] .v3-project-links a { padding: 30px 0; border-top: 1px solid var(--inner-v3-line); }
#main [data-inner-v3] .v3-project-links a > span { font-size: 16px; }
#main [data-inner-v3] .v3-project-links h3 { margin: 16px 0; }
#main [data-inner-v3] .v3-project-links p { margin-bottom: 20px; }
#main [data-inner-v3] .v3-interface { margin-bottom: 32px; }
#main [data-inner-v3] .v3-interface img { max-height: 680px; object-fit: contain; background: var(--inner-v3-soft); }
#main [data-inner-v3] .v3-image-button { display: block; width: 100%; padding: 0; border: 0; background: transparent; cursor: zoom-in; }
#main [data-inner-v3] .v3-image-button img { transition: filter .25s; }
#main [data-inner-v3] .v3-image-button:hover img { filter: brightness(.96); }
#main [data-inner-v3] .v3-delivery-work { display: grid; grid-template-columns: 1fr 1fr; gap: 66px; padding: 44px; background: var(--inner-v3-soft); min-height: 500px; }
#main [data-inner-v3] .v3-deliverable { padding: 38px; background: #fff; box-shadow: 0 5px 18px #27332808; }
#main [data-inner-v3] .v3-deliverable > span { font-size: 15px; }
#main [data-inner-v3] .v3-deliverable h2 { margin-top: 24px; }
#main [data-inner-v3] .v3-deliverable p { padding: 16px 0; border-bottom: 1px solid var(--inner-v3-line); margin: 0; display: flex; gap: 12px; font-size: 17px; }
#main [data-inner-v3] .v3-deliverable i { font-style: normal; color: inherit; }
#main [data-inner-v3] details summary { cursor: pointer; }
#main [data-inner-v3] .v3-delivery-work details p { padding-top: 16px; }
#main [data-inner-v3] .v3-history-year { min-height: 550px; display: grid; grid-template-columns: 1.1fr 1fr; gap: 60px; align-items: center; padding: 36px; background: var(--inner-v3-soft); }
#main [data-inner-v3] .v3-history-year img { height: 450px; object-fit: contain; }
#main [data-inner-v3] .v3-history-year > div > span { font-size: 44px; display: block; margin-bottom: 22px; }
#main [data-inner-v3] .v3-office-location { padding-top: 32px; }
#main [data-inner-v3] .v3-office-pictures { display: grid; grid-template-columns: 1.4fr 1fr; gap: 28px; }
#main [data-inner-v3] .v3-office-pictures img { height: 480px; object-fit: cover; }
#main [data-inner-v3] .v3-team-work { display: grid; grid-template-columns: 1.2fr .8fr; gap: 64px; align-items: center; }
#main [data-inner-v3] .v3-team-work img { height: 510px; object-fit: cover; }
#main [data-inner-v3] .v3-team-work h2 { font-size: 36px; }
#main [data-inner-v3] .about-main-image { margin-inline: auto; }
#main [data-inner-v3] .about-main-image img { height: 550px; aspect-ratio: auto; object-fit: cover; object-position: center 52%; }
#main [data-inner-v3] .about-office-grid img { height: 390px; object-fit: cover; }
#main [data-inner-v3] :where(.about-position,.about-numbers,.about-office-grid,.about-method,.about-notes,.about-credit,.refined-about-links) { margin-block: 70px; }
#main [data-inner-v3] .about-numbers strong { font-size: 48px; font-weight: 500; letter-spacing: 0; }
#main [data-inner-v3] :where(.about-method,.about-notes,.about-credit) { padding: 32px 0; background: #fff; }
#main [data-inner-v3] :where(.team-principle,.product-scenarios,.case-system) { background: var(--inner-v3-soft); padding-block: 60px; color: var(--inner-v3-ink); }
#main [data-inner-v3] .team-principle h2 { max-width: 900px; font-size: 28px; }
#main [data-inner-v3] :where(.v3-capability-software,.v3-capability-content,.v3-capability-support,.v3-category-software,.v3-category-support) { padding: 46px; background: var(--inner-v3-soft); min-height: 480px; }
#main [data-inner-v3] .v3-directory .v3-panels > div { min-height: 500px; }
#main [data-inner-v3] .v3-directory .v3-brand-canvas { height: 610px; }
#main [data-inner-v3] .v3-capability-content > div { display: flex; justify-content: space-between; gap: 14px; margin: 65px 0; }
#main [data-inner-v3] .v3-capability-content > div > span { background: #fff; padding: 22px; }
#main [data-inner-v3] .v3-capability-content i { font-style: normal; align-self: center; }
#main [data-inner-v3] .v3-category-content { display: grid; grid-template-columns: 1.1fr 1fr; align-items: center; gap: 48px; }
#main [data-inner-v3] .v3-category-content img { height: 450px; object-fit: cover; }
#main [data-inner-v3] .v3-category-content > div > p { font-size: 15px; margin-top: 12px; }
#main [data-inner-v3] .business-directory-group header { display: block; }
#main [data-inner-v3] .business-directory-group header p { max-width: 800px; }
#main [data-inner-v3] .business-directory-list { display: grid; grid-template-columns: 1fr 1fr; gap: 0 50px; }
#main [data-inner-v3] .business-directory-list a { padding-block: 24px; }
#main [data-inner-v3] .business-directory-list p { font-size: 17px; }
#main [data-inner-v3] .service-catalog { margin-block: 72px; }
#main [data-inner-v3] .plain-section-heading { display: block; }
#main [data-inner-v3] .plain-section-heading p { max-width: 760px; }
#main [data-inner-v3] :where(.service-category-fit,.secondary-delivery) { padding-block: 44px; margin-block: 44px; }
#main [data-inner-v3] .service-catalog-item { padding: 24px 0; min-height: 0; }
#main [data-inner-v3] .service-catalog-item h2 { font-size: 24px; margin-bottom: 12px; }
#main [data-inner-v3] .service-catalog-item p { margin: 0; font-size: 17px; }
#main [data-inner-v3] .service-catalog-item > span { font-size: 16px; }
#main [data-inner-v3] .next-page { padding: 28px 0; margin-block: 70px 0; border-top: 1px solid var(--inner-v3-line); min-height: 0; background: #fff; }
#main [data-inner-v3] .next-page strong { font-size: 28px; font-weight: 500; }
#main [data-inner-v3] :where(.big-cta,.refined-cta) { width: min(1320px,calc(100% - 96px)); margin: 72px auto 80px; min-height: 0; padding: 40px 0; background: #fff; border-top: 1px solid var(--inner-v3-line); display: flex; align-items: center; justify-content: space-between; gap: 48px; color: var(--inner-v3-ink); }
#main [data-inner-v3] :where(.big-cta,.refined-cta) h2 { font-size: 36px; margin-bottom: 14px; }
#main [data-inner-v3] :where(.big-cta,.refined-cta) p { font-size: 18px; color: var(--inner-v3-muted); max-width: 720px; margin: 0; }
#main [data-inner-v3] :where(.big-cta,.refined-cta) .pill { background: var(--inner-v3-green); color: #102417; font-size: 17px; flex-shrink: 0; border-radius: 10px; padding: 15px 25px; }
#main [data-inner-v3] .careers-photo { margin-block: 0 48px; align-items: center; }
#main [data-inner-v3] .careers-photo figure img { height: 400px; object-fit: cover; }
#main [data-inner-v3] .careers-photo h2 { font-size: 28px; }
#main [data-inner-v3] .job-card { display: block; padding: 28px 0; border-bottom: 1px solid var(--inner-v3-line); }
#main [data-inner-v3] .job-card summary { display: flex; justify-content: space-between; align-items: center; gap: 40px; }
#main [data-inner-v3] .job-card summary h2 { margin: 0; font-size: 26px; flex: 1; }
#main [data-inner-v3] .job-card summary span { font-size: 17px; }
#main [data-inner-v3] .job-card > section { padding: 28px 0 0; }
#main [data-inner-v3] .job-card li { padding: 7px 0; }
#main [data-inner-v3] .contact-routes { margin-block: 40px 70px; grid-template-columns: 1fr 1fr; }
#main [data-inner-v3] .contact-routes a { background: var(--inner-v3-soft); border-radius: 10px; padding: 32px; }
#main [data-inner-v3] .contact-routes p { overflow-wrap: anywhere; }
#main [data-inner-v3] .contact-offices h2 { font-size: 24px; }
#main [data-inner-v3] .v3-legal-toc { display: flex; flex-wrap: wrap; gap: 12px 28px; padding-block: 36px; border-bottom: 1px solid var(--inner-v3-line); }
#main [data-inner-v3] .v3-legal-toc a { font-size: 16px; text-decoration: underline; text-underline-offset: 5px; }
#main [data-inner-v3] .legal-content { width: min(880px,calc(100% - 96px)); padding-top: 48px; }
#main [data-inner-v3] .legal-content :where(p,li) { max-width: 850px; font-size: 18px; line-height: 1.85; }
#main [data-inner-v3] .legal-content h2 { font-size: 28px; }
#main [data-inner-v3] .legal-content section { margin: 44px 0; scroll-margin-top: 110px; }
#main [data-inner-v3] .v3-article-header { display: grid; grid-template-columns: minmax(0,1fr) 340px; align-items: center; gap: 64px; padding-block: 44px 56px; }
#main [data-inner-v3] .v3-article-header h1 { font-size: clamp(30px,3.2vw,46px); line-height: 1.4; margin: 0 0 24px; }
#main [data-inner-v3] .v3-article-header p { font-size: 18px; line-height: 1.85; margin: 0; max-width: 780px; }
#main [data-inner-v3] .v3-article-cover { display: block; width: 100%; max-width: 340px; height: auto; border-radius: 10px; }
#main [data-inner-v3] .article-layout { grid-template-columns: 250px minmax(0,780px); justify-content: space-between; gap: 70px; margin-top: 0; padding-top: 40px; }
@media (max-width: 820px) {
  #main [data-inner-v3] .v3-article-header { grid-template-columns: 1fr; gap: 28px; padding-block: 24px 32px; }
  #main [data-inner-v3] .article-layout { grid-template-columns: 1fr; gap: 32px; }
}
#main [data-inner-v3] .article-body :where(p,li) { font-size: 18px; line-height: 1.9; }
#main [data-inner-v3] .article-body h2 { font-size: 28px; margin-bottom: 24px; }
#main [data-inner-v3] .article-body section { scroll-margin-top: 110px; }
#main [data-inner-v3] .article-layout aside a { font-size: 16px; }
#main [data-inner-v3] .article-meta { margin-top: 26px; display: flex; gap: 28px; }
#main [data-inner-v3] .article-meta span { font-size: 16px; }
#main [data-inner-v3] .faq-item summary h2 { font-size: 23px; }
#main [data-inner-v3] .faq-item p { font-size: 18px; line-height: 1.8; }
#main [data-inner-v3] .faq-item[hidden] { display: none; }
#main [data-inner-v3] .not-found { padding-top: 150px; min-height: 600px; }
#main [data-inner-v3] .not-found h1 { font-size: 44px; }
#main [data-inner-v3] .not-found-number { font-size: 100px; }
#main [data-inner-v3] .v3-gallery-dialog { width: min(1360px,94vw); max-height: 92vh; padding: 24px; border: 0; border-radius: 10px; background: #fff; color: var(--inner-v3-ink); }
#main [data-inner-v3] .v3-gallery-dialog::backdrop { background: #0b151ee0; }
#main [data-inner-v3] .v3-gallery-toolbar { display: flex; justify-content: space-between; align-items: center; gap: 20px; margin-bottom: 20px; }
#main [data-inner-v3] .v3-gallery-toolbar button { border: 1px solid #ccd3cf; border-radius: 6px; background: #fff; font-size: 17px; padding: 8px 15px; }
#main [data-inner-v3] .v3-gallery-dialog img { max-height: 74vh; object-fit: contain; width: 100%; }
#main [data-inner-v3] .v3-gallery-toolbar p { margin: 0; font-size: 17px; }
@media (prefers-reduced-motion: reduce) {
  #main [data-inner-v3] *, #main [data-inner-v3] *::before, #main [data-inner-v3] *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
#main [data-inner-v3] .v3-filter-bar { display: flex; flex-wrap: wrap; gap: 24px; margin-bottom: 32px; border-bottom: 1px solid var(--inner-v3-line); }
#main [data-inner-v3] .v3-filter-bar button { border: 0; background: #fff; font-size: 18px; padding: 12px 3px; border-bottom: 3px solid transparent; }
#main [data-inner-v3] .v3-filter-bar button[aria-pressed="true"] { border-color: var(--inner-v3-green); }
#main [data-inner-v3] .v3-work-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 50px 36px; }
#main [data-inner-v3] .v3-work-card { display: block; }
#main [data-inner-v3] .v3-work-card img { height: 380px; object-fit: cover; }
#main [data-inner-v3] .v3-work-card > div { padding-top: 24px; }
#main [data-inner-v3] .v3-work-card span { font-size: 16px; }
#main [data-inner-v3] .v3-work-card h2 { font-size: 27px; margin: 12px 0; }
#main [data-inner-v3] .v3-work-card p { font-size: 17px; }
#main [data-inner-v3] .v3-internal-work figure { background: #f4f5f4; display: grid; place-items: center; }
#main [data-inner-v3] .v3-internal-work img { width: 270px; height: 380px; object-fit: contain; }
#main [data-inner-v3] [data-filter-category][hidden] { display: none; }
#main [data-inner-v3] .v3-case-opening { display: grid; grid-template-columns: 1.1fr 1fr; gap: 58px; align-items: start; }
#main [data-inner-v3] .v3-case-opening img { height: 510px; object-fit: cover; }
#main [data-inner-v3] .v3-case-opening h2 { margin-top: 22px; font-size: 30px; }
#main [data-inner-v3] .v3-case-opening > div > span { font-size: 17px; }
#main [data-inner-v3] .v3-case-opening dl { padding-top: 22px; border-top: 1px solid var(--inner-v3-line); }
#main [data-inner-v3] .v3-case-opening dd { font-size: 17px; }
#main [data-inner-v3] .v3-reading-copy { max-width: 810px; }
#main [data-inner-v3] .v3-case-findings { display: grid; grid-template-columns: repeat(3,1fr); gap: 40px; margin-top: 36px; }
#main [data-inner-v3] .v3-case-findings p { border-top: 2px solid #e3e5e4; padding-top: 22px; }
#main [data-inner-v3] .v3-case-quote { margin: 0 0 30px; padding-left: 30px; border-left: 3px solid var(--brand-green); font-size: 24px; line-height: 1.8; max-width: 1050px; }
#main [data-inner-v3] .v3-product-index { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 44px 38px; }
#main [data-inner-v3] .v3-product-card figure { height: 350px; background: #f3f5f4; display: grid; place-items: center; border-radius: 10px; overflow: hidden; }
#main [data-inner-v3] .v3-product-card img { object-fit: contain; height: 100%; }
#main [data-inner-v3] .v3-product-app img { width: 240px; }
#main [data-inner-v3] .v3-product-business img { width: 100%; }
#main [data-inner-v3] .v3-product-card > div { padding-top: 24px; }
#main [data-inner-v3] .v3-product-card h2 { font-size: 28px; margin: 12px 0; }
#main [data-inner-v3] .v3-product-card span { font-size: 16px; }
#main [data-inner-v3] .v3-product-detail { background: #f3f5f4; border-radius: 10px; padding: 44px; display: grid; align-items: center; grid-template-columns: .85fr 1fr; gap: 68px; min-height: 475px; }
#main [data-inner-v3] .v3-product-detail h2 { font-size: 29px; margin-top: 24px; }
#main [data-inner-v3] .v3-app-detail figure img { width: 310px; height: 310px; margin: auto; object-fit: contain; }
#main [data-inner-v3] .v3-business-detail { display: flex; flex-direction: column; align-items: stretch; gap: 32px; }
#main [data-inner-v3] .v3-business-detail img { max-height: 620px; object-fit: contain; }
#main [data-inner-v3] .v3-business-detail > div { max-width: 820px; }
#main [data-inner-v3] .v3-product-platforms { font-size: 16px; }
#main [data-inner-v3] .v3-feature-ledger { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 70px; }
#main [data-inner-v3] .v3-feature-ledger article { padding: 26px 0; border-top: 1px solid var(--inner-v3-line); }
#main [data-inner-v3] .v3-feature-ledger p { margin: 0; }
#main [data-inner-v3] .v3-product-scenarios { display: flex; flex-wrap: wrap; gap: 36px; }
#main [data-inner-v3] .v3-product-scenarios p { padding-top: 16px; border-top: 2px solid #e3e5e4; }
#main [data-inner-v3] .v3-inline-links { display: flex; gap: 35px; flex-wrap: wrap; margin-top: 30px; }
#main [data-inner-v3] .v3-insight { display: grid; grid-template-columns: .8fr 1.5fr; gap: 54px; padding-bottom: 44px; margin-bottom: 44px; align-items: center; }
#main [data-inner-v3] .v3-insight h2 { font-size: 29px; margin: 16px 0; }
#main [data-inner-v3] .v3-insight span { font-size: 16px; }
#main [data-inner-v3] .v3-insight :is(h2,p,span) { color: var(--inner-v3-ink); transition: color .35s ease-in-out; }
#main [data-inner-v3] .v3-insight:is(:hover,:focus-visible) :is(h2,p,span) { color: var(--inner-v3-green); }
#main [data-inner-v3] .v3-article-graphic { aspect-ratio: 1584 / 1000; overflow: hidden; background: #edeae3; border-radius: 10px; }
#main [data-inner-v3] .v3-article-graphic img { display: block; width: 100%; height: 100%; object-fit: cover; }
#main [data-inner-v3] .v3-app .v3-task-stage, #main [data-inner-v3] .v3-process .v3-delivery-work, #main [data-inner-v3] .v3-support .v3-support-stage, #main [data-inner-v3] .v3-growth .v3-content-study { height: 100%; }
#main [data-inner-v3] .v3-website .v3-panels > [role="tabpanel"] { display: flex; flex-direction: column; }
#main [data-inner-v3] .v3-website .v3-web-header { flex-shrink: 0; }
#main [data-inner-v3] .v3-website .v3-web-home { flex: 1; min-height: 465px; }
#main [data-inner-v3] .v3-website .v3-web-footer { flex-shrink: 0; }
#main [data-inner-v3] :where(.v3-language-stage,.v3-identity-stage) { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:60px; padding:48px; background:var(--inner-v3-soft); min-height:530px; height:100%; }
#main [data-inner-v3] .v3-language-stage img { height:270px; object-fit:cover; }
#main [data-inner-v3] .v3-redesign-stage { background:var(--inner-v3-soft); padding:48px; min-height:530px; height:100%; }
#main [data-inner-v3] .v3-premium-stage { position:relative; height:610px; }
#main [data-inner-v3] .v3-premium-stage img { height:100%; width:100%; object-fit:cover; }
#main [data-inner-v3] .v3-premium-stage > div { position:absolute; bottom:0; left:0; right:0; padding:30px 40px; background:#102e64ee; }
#main [data-inner-v3] .v3-premium-stage h2 { color:#fff; }
#main [data-inner-v3] .v3-premium-stage p { color:#fff; margin:0; }
#main [data-inner-v3] .v3-symbol-study { position:relative; width:330px; height:320px; justify-self:center; }
#main [data-inner-v3] .v3-symbol-study i { position:absolute; width:140px; height:200px; border:38px solid #c72c25; border-bottom:0; top:40px; left:24px; transform:skewY(-22deg); }
#main [data-inner-v3] .v3-symbol-study i:nth-child(2) { left:161px; top:80px; transform:skewY(22deg) rotate(180deg); border-color:#123d82; }
#main [data-inner-v3] .v3-symbol-guide { background:repeating-linear-gradient(0deg,transparent 0 39px,#a4b3ab60 39px 40px),repeating-linear-gradient(90deg,transparent 0 39px,#a4b3ab60 39px 40px); border:1px solid #afbbb4; }
#main [data-inner-v3] .v3-identity-card { padding:24px; background:#fff; text-align:center; }
#main [data-inner-v3] .v3-identity-card .v3-symbol-study { transform:scale(.65); margin:auto; height:270px; }
#main [data-inner-v3] .v3-short-study { display:grid; grid-template-columns:310px 1fr; gap:70px; padding:32px 70px; background:var(--inner-v3-soft); align-items:center; }
#main [data-inner-v3] .v3-short-study .v3-film { aspect-ratio:9/16; }
#main [data-inner-v3] .v3-short-study :where(td,th) { padding:10px; font-size:17px; }
#main [data-inner-v3] .v3-brand-notes { display:grid; grid-template-columns:1.1fr 1fr; gap:60px; align-items:start; }
#main [data-inner-v3] .v3-brand-notes img { height:350px; object-fit:cover; }
#main [data-inner-v3] .v3-brand-notes details { border-top:1px solid var(--inner-v3-line); padding:20px 0; }
#main [data-inner-v3] .v3-brand-notes details p { padding-top:20px; }
#main [data-inner-v3] .v3-work-disclosure summary { padding:20px 0; border-block:1px solid var(--inner-v3-line); }
#main [data-inner-v3] .careers-photo figure { height:auto; aspect-ratio:auto; }
#main [data-inner-v3] .contact-routes { background:transparent; gap:24px; padding:0; }
#main [data-inner-v3] .contact-routes h2 { margin:16px 0 12px; font-size:28px; }
#main [data-inner-v3] .contact-routes :where(small,span) { color:inherit; }
#main [data-inner-v3] .about-numbers { padding-block:30px; }
#main [data-inner-v3] .about-office-grid figure:last-child { width:100%; padding-top:0; }
#main [data-inner-v3] .about-method p, #main [data-inner-v3] .about-notes p { font-size:18px; }
#main [data-inner-v3] .job-card li { padding-left:20px; }
#main [data-inner-v3] .job-card > a { display:inline-block; margin-top:24px; color:inherit; font-size:17px; }
#main [data-inner-v3] .v3-problem-list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:36px; margin-bottom:30px; }
#main [data-inner-v3] .v3-problem-list p { padding:24px 0; border-top:1px solid var(--inner-v3-line); font-size:21px; margin:0; }
