/* Corporate pages: all content rules are scoped to avoid changing service landings. */
body.corporate { margin:0; overflow-x:visible; font-family:'SUITE','Noto Sans KR',sans-serif; font-size:16px; color:var(--site-ink); background:var(--site-paper); -webkit-font-smoothing:antialiased; }
.corporate *, .corporate *::before, .corporate *::after { box-sizing:border-box; }
.corporate main { min-width:0; }
.corporate main :is(h1,h2,h3,h4,p,figure,ul,ol,dl,dd) { margin:0; }
.corporate main :is(ul,ol) { padding:0; list-style:none; }
.corporate main a { color:inherit; text-decoration:none; }
.corporate main button { font:inherit; cursor:pointer; }
.corporate main img { display:block; max-width:100%; height:auto; }
.corporate main section { padding:120px 0; scroll-margin-top:110px; }
.corporate main article { transform:none; opacity:1; }
.corporate main :focus-visible { outline:3px solid var(--site-accent); outline-offset:5px; }
.corporate main [hidden] { display:none!important; }
.co-wrap { width:min(1320px,calc(100% - 80px)); margin:0 auto; }
.co-eyebrow { display:flex; align-items:center; gap:12px; margin-bottom:24px!important; color:#65727b; font-size:12px; line-height:1.5; letter-spacing:.12em; font-weight:700; }
.co-eyebrow::before { content:''; display:block; width:21px; height:1px; background:currentColor; }
.co-eyebrow.co-purple { color:var(--site-accent); }
.corporate main h1 { font-size:clamp(40px,4.6vw,66px); font-weight:600; line-height:1.26; letter-spacing:-.065em; word-break:keep-all; overflow-wrap:anywhere; }
.corporate main h2 { font-size:clamp(36px,4vw,56px); font-weight:700; line-height:1.35; letter-spacing:-.055em; word-break:keep-all; overflow-wrap:anywhere; }
.corporate main h3 { font-size:28px; line-height:1.5; font-weight:700; letter-spacing:-.035em; word-break:keep-all; }
.co-lead { margin-top:24px!important; color:#56616a; font-size:18px; line-height:1.85; word-break:keep-all; overflow-wrap:anywhere; }
.co-actions { display:flex; align-items:center; flex-wrap:wrap; gap:12px 24px; margin-top:32px; }
.corporate a.co-button { display:inline-flex; align-items:center; justify-content:center; gap:25px; min-height:56px; padding:15px 24px; border:1px solid var(--site-slate); border-radius:5px; background:var(--site-slate); color:#fff; font-size:16px; font-weight:600; line-height:1.6; transition:background .2s; }
.corporate a.co-button:hover { background:var(--site-slate-hover); }
.corporate a.co-button.co-button-purple { background:var(--site-accent); border-color:var(--site-accent); }
.corporate a.co-button.co-button-light { background:white; border-color:var(--site-line); color:var(--site-ink); }
.corporate a.co-text-link { display:inline-flex; align-items:center; gap:20px; min-height:44px; font-size:16px; font-weight:600; border-bottom:1px solid #bdc8ce; }
.co-arrow { font-size:18px; line-height:1; }
.corporate main .co-hero { padding:80px 0 64px; background:var(--site-surface); }
.co-hero-grid { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:60px; }
.co-hero-copy { padding-bottom:12px; }
.co-hero-copy h1 { font-size:clamp(36px,3.65vw,52px)!important; }
.co-hero-copy .co-lead { max-width:510px; font-size:15px; }
.co-hero-visual { position:relative; padding:35px 0 55px; }
.co-visual-label { margin-bottom:13px!important; font-size:11px; letter-spacing:.12em; color:#67727b; }
.co-product-frame { padding:9px; border:1px solid var(--site-line); border-radius:10px; background:#fff; box-shadow:0 20px 44px -28px #303c4633; }
.co-product-frame img { width:100%; border-radius:4px; }
.co-hero-note { display:flex; justify-content:space-between; gap:12px; margin-top:18px!important; font-size:12px; color:#6d7479; }
.co-hero-data { position:relative; margin:-10px -15px 0 70px; padding:22px 26px; border:1px solid var(--site-line); border-radius:7px; background:var(--site-sage-wash); box-shadow:0 12px 25px -20px #32434a55; }
.co-hero-data strong { display:block; margin-bottom:12px; color:var(--site-sage-ink); font-size:20px; font-weight:600; }
.co-hero-data p { display:flex; align-items:center; justify-content:space-between; gap:8px; color:#536c69; font-size:12px; }
.co-hero-baseline { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-top:58px; padding-top:23px; border-top:1px solid var(--site-line); color:#6d7479; font-size:11px; letter-spacing:.1em; }
.co-hero-baseline span:last-child { letter-spacing:0; }
.co-section-head { display:flex; justify-content:space-between; align-items:flex-end; gap:32px; margin-bottom:45px; }
.co-section-head .co-lead { max-width:390px; margin-top:0!important; font-size:18px; }
.co-platform-grid { display:grid; grid-template-columns:1fr 1fr; border-top:1px solid var(--site-line); }
.co-platform { position:relative; padding:38px 55px 14px 0; }
.co-platform + .co-platform { padding-left:55px; padding-right:0; border-left:1px solid var(--site-line); }
.co-brand { display:flex; align-items:flex-start; flex-direction:column; gap:10px; margin-bottom:30px!important; }
.co-brand strong { color:var(--site-accent); font-size:48px; letter-spacing:-.035em; font-weight:700; }
.co-brand span { color:#56616a; font-size:20px; line-height:1.5; }
.co-brand small { display:block; margin-top:3px; color:#6d7479; font-size:14px; letter-spacing:.01em; }
.co-platform:last-child .co-brand strong { color:var(--site-sage-ink); }
.co-platform h3 { font-size:30px!important; }
.co-platform .co-lead { margin-top:17px!important; font-size:18px; }
.co-platform-tags { margin-top:23px!important; font-size:14px; color:var(--site-accent); word-spacing:9px; letter-spacing:.015em; }
.co-platform .co-text-link { margin-top:25px; }
.corporate main .co-showcase { background:var(--site-accent-wash); }
.co-showcase-layout { display:grid; grid-template-columns:300px minmax(0,1fr); gap:64px; align-items:start; margin-top:45px; }
.co-tabs { display:flex; flex-direction:column; gap:0; }
.co-tabs button { display:flex; align-items:center; gap:18px; width:100%; padding:22px 15px; text-align:left; background:transparent; border:0; border-bottom:1px solid #dad5df; color:#797682; }
.co-tabs button:first-child { border-top:1px solid #dad5df; }
.co-tabs button span:first-child { font-size:11px; color:#aaa4b6; }
.co-tabs button strong { display:block; font-size:28px; font-weight:600; }
.co-tabs button small { display:block; margin-top:6px; font-size:15px; }
.co-tabs button[aria-selected='true'] { color:var(--site-accent); background:var(--site-accent-selected); border-radius:5px; }
.co-tabs button[aria-selected='true'] span:first-child { color:var(--site-accent); }
.co-product-panel { min-width:0; }
.co-product-panel .co-image-window { width:100%; aspect-ratio:1.85; border:1px solid #dad5df; padding:7px; background:white; border-radius:8px; overflow:hidden; box-shadow:0 18px 36px -28px #42395766; }
.co-product-panel .co-image-window img { width:100%; height:100%; object-fit:contain; }
.co-product-panel .co-image-window.co-phone-window { background:var(--site-accent-selected); }
.co-product-panel .co-phone-window img { object-fit:contain; }
.co-image-caption { display:flex; justify-content:space-between; align-items:center; gap:16px; margin-top:14px; font-size:12px; color:#6d7479; }
.co-image-caption a { display:inline-flex; align-items:center; min-height:44px; text-decoration:underline!important; }
.co-product-panel h3 { margin-top:18px!important; font-size:30px!important; }
.co-product-panel .co-lead { font-size:18px; margin-top:10px!important; }
.co-showcase-bottom { margin-top:32px; display:flex; justify-content:flex-end; }
.co-data-layout { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; }
.co-data-flow { padding:36px; background:var(--site-sage-wash); border:1px solid #d6dfd8; border-radius:8px; }
.co-data-sources { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }
.co-data-sources span { padding:20px 5px; text-align:center; border:1px solid #d6dfd8; border-radius:4px; background:#fff; font-size:11px; font-weight:500; letter-spacing:.03em; }
.co-flow-connector { text-align:center; color:#76958a; padding:18px 0; font-size:24px; }
.co-data-question { text-align:center; padding:25px 20px; background:var(--site-sage); color:#fff; border-radius:4px; }
.co-data-question span { display:block; margin-bottom:8px; font-size:10px; letter-spacing:.13em; color:#dce5de; }
.co-data-question strong { font-size:19px; font-weight:500; }
.co-data-results { display:flex; flex-wrap:wrap; justify-content:center; gap:12px 22px; color:var(--site-sage-ink); font-size:12px; }
.co-data-footnote { margin-top:22px!important; color:#72877d; font-size:11px; text-align:center; }
.corporate main .co-si { background:var(--site-slate); color:#fff; }
.co-si .co-eyebrow { color:#aec0c9; }
.co-si .co-lead { color:#bccad1; max-width:560px; }
.co-si .co-data-layout { grid-template-columns:1.1fr 1fr; }
.co-si-capabilities { border-top:1px solid #ffffff28; }
.co-si-capabilities li { display:flex; justify-content:space-between; align-items:center; gap:15px; padding:20px 0; border-bottom:1px solid #ffffff28; color:#e1e8ed; font-size:22px; }
.co-si-capabilities span { color:#748c99; font-size:11px; }
.co-si .co-text-link { color:#fff; border-color:#68818d; margin-top:28px; }
.co-cases .case-wrap { display:grid; grid-template-columns:1fr 1fr; gap:0 48px; }
.co-cases .case-wrap article { padding:28px 0; border-top:1px solid var(--site-line); }
.co-cases .case-wrap .row { display:block; }
.co-cases .case-wrap .order-company { display:flex; justify-content:space-between; align-items:center; gap:20px; color:#6d7479; font-size:13px; }
.co-cases .case-wrap .device { display:flex; gap:8px; font-size:10px; color:#6d7479; }
.co-cases .case-wrap dt { margin:19px 0 10px; color:var(--site-ink); font-size:26px; font-weight:500; }
.co-cases .case-wrap dd { color:#56616a; font-size:16px; line-height:1.8; }
.corporate main .co-clients { padding:40px 0 90px; }
.co-clients-title { display:flex; justify-content:space-between; align-items:center; gap:16px; padding-top:35px; border-top:1px solid var(--site-line); }
.co-clients-title h2 { font-size:28px!important; }
.co-client-logos { display:grid; grid-template-columns:repeat(6,1fr); gap:15px 26px; margin-top:30px!important; align-items:center; }
.co-client-logos li { display:flex; align-items:center; justify-content:center; min-width:0; min-height:80px; }
.co-client-logos img { width:140px; max-height:60px; object-fit:contain; }
.corporate main .co-contact-band { background:var(--site-surface); padding:64px 0; }
.co-contact-band .co-wrap { display:flex; justify-content:space-between; align-items:center; gap:35px; }
.co-contact-band h2 { font-size:48px!important; }
.co-contact-band .co-actions { margin-top:0; }
.co-detail-hero .co-hero-grid { gap:70px; }
.co-detail-hero h1 { font-size:clamp(40px,4.4vw,64px)!important; font-weight:700; }
.co-brand-title { color:var(--site-accent); font-size:36px; margin-bottom:25px!important; font-weight:500; }
.co-subnav { position:sticky; top:88px; z-index:20; background:rgba(255,255,255,.97); border-bottom:1px solid var(--site-line); }
.corporate .co-subnav ~ section { scroll-margin-top:calc(var(--site-header-height,89px) + 76px); }
.co-subnav .co-wrap { display:flex; justify-content:center; gap:60px; }
.co-subnav a { display:flex; align-items:center; min-height:58px; font-size:16px; color:#596671!important; }
.co-four-services { display:grid; grid-template-columns:repeat(4,1fr); gap:25px; margin-top:45px; }
.co-service-summary { border-top:2px solid #dad5df; padding-top:24px; }
.co-service-summary b { color:var(--site-accent); font-size:28px; font-weight:500; }
.co-service-summary h3 { margin-top:16px!important; font-size:21px!important; }
.co-service-summary p { font-size:16px; line-height:1.9; color:#56616a; margin-top:10px!important; }
.co-soft { background:var(--site-paper); }
.co-purple-bg { background:var(--site-accent-wash); }
.co-workflow { display:grid; grid-template-columns:repeat(var(--steps,7),1fr); gap:1px; margin-top:42px!important; border:1px solid var(--site-line); border-radius:5px; background:var(--site-line); overflow:hidden; }
.co-workflow li { position:relative; padding:26px 10px; text-align:center; background:white; font-size:16px; line-height:1.7; color:#445963; }
.co-workflow li span { display:block; font-size:10px; color:#929ea5; margin-bottom:7px; }
.co-workflow li:not(:last-child)::after { content:'→'; position:absolute; right:-7px; top:50%; transform:translateY(-50%); z-index:1; color:#9eabb5; background:white; }
.co-feature-list { display:grid; grid-template-columns:1fr 1fr; gap:0 50px; margin-top:38px!important; }
.co-feature-list li { display:grid; grid-template-columns:110px 1fr; gap:20px; padding:23px 0; border-bottom:1px solid var(--site-line); }
.co-feature-list strong { font-size:17px; font-weight:500; }
.co-feature-list p { font-size:16px; line-height:1.85; color:#56616a; word-break:keep-all; }
.co-detail-screen { margin-top:45px!important; }
.co-detail-screen .co-image-window { max-width:1000px; margin:0 auto; padding:10px; background:#fff; border:1px solid var(--site-line); border-radius:7px; }
.co-detail-screen img { width:100%; }
.co-detail-screen figcaption { margin-top:15px; text-align:center; font-size:12px; color:#6d7479; }
.co-split { display:grid; grid-template-columns:1fr 1fr; gap:65px; align-items:center; }
.co-rows { margin-top:32px!important; }
.co-rows li { padding:24px 0; border-bottom:1px solid var(--site-line); }
.co-rows li:first-child { border-top:1px solid var(--site-line); }
.co-rows h3 { font-size:24px!important; }
.co-rows p { color:#56616a; font-size:17px; line-height:1.9; margin-top:10px!important; }
.co-tag-list { display:flex; flex-wrap:wrap; gap:10px; margin-top:26px!important; }
.co-tag-list li { padding:9px 14px; background:#edf1f3; border:1px solid var(--site-line); border-radius:4px; font-size:12px; color:#526672; }
.co-audience { display:grid; grid-template-columns:1fr 1fr; gap:50px; margin-top:45px; }
.co-audience article { padding-top:25px; border-top:1px solid var(--site-line); }
.co-audience h3 { margin:14px 0!important; }
.co-audience p { font-size:17px; color:#56616a; line-height:1.9; }
.co-mobile-screens { display:flex; gap:20px; justify-content:center; padding:30px; border-radius:8px; background:var(--site-paper); }
.co-mobile-screens img { width:45%; object-fit:contain; max-height:390px; }
.co-statement { text-align:center; }
.co-statement .co-actions { justify-content:center; }
.co-statement .co-eyebrow { justify-content:center; }
.co-question-list { margin-top:32px!important; }
.co-question-list li { padding:23px 0; border-bottom:1px solid #d6dfd8; font-size:18px; color:var(--site-sage-ink); line-height:1.7; word-break:keep-all; }
.co-question-list li::before { content:'Q.'; padding-right:18px; color:#7e9a8e; font-size:14px; }
.co-data-types { display:grid; grid-template-columns:repeat(3,1fr); gap:36px; margin-top:42px; }
.co-data-types article { border-top:2px solid #b9cfc4; padding-top:26px; }
.co-data-types h3 { color:var(--site-sage-ink); font-size:22px!important; }
.co-data-types p { margin-top:15px!important; color:#6c8076; font-size:17px; line-height:1.9; }
.co-number-list { counter-reset:item; }
.co-number-list li { display:flex; align-items:center; gap:24px; padding:24px 0; border-bottom:1px solid #d6dfd8; font-size:18px; color:var(--site-sage-ink); }
.co-number-list li::before { counter-increment:item; content:'0' counter(item); font-size:12px; color:#8daca0; }
@media(max-width:1100px) {
.co-wrap { width:calc(100% - 56px); }
.co-hero-grid { gap:32px; }
.corporate main h1 { font-size:44px; }
.co-showcase-layout { grid-template-columns:220px minmax(0,1fr); gap:35px; }
.co-data-layout, .co-split { gap:36px; }
.co-subnav { top:72px; }
.co-four-services { grid-template-columns:repeat(2,1fr); gap:32px; }
}
@media(max-width:800px) {
.corporate main section { padding:64px 0; }
.co-wrap { width:calc(100% - 40px); }
.co-hero-grid, .co-detail-hero .co-hero-grid, .co-data-layout, .co-si .co-data-layout, .co-split { grid-template-columns:1fr; gap:36px; }
.corporate main .co-hero { padding:50px 0 32px; }
.co-hero-copy .co-lead { max-width:560px; }
.co-hero-visual { padding:0 0 15px; max-width:640px; width:100%; margin:auto; }
.co-hero-data { margin:-3px 0 0 50px; }
.co-hero-baseline { margin-top:25px; }
.co-section-head { display:block; margin-bottom:32px; }
.co-section-head .co-lead { margin-top:18px!important; max-width:520px; }
.co-section-head > .co-text-link { margin-top:16px; }
.co-showcase-layout { grid-template-columns:1fr; gap:25px; margin-top:30px; }
.co-tabs { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:5px; }
.co-tabs button { padding:13px 7px; display:block; text-align:center; border:1px solid #dad5df; border-radius:5px; }
.co-tabs button span:first-child, .co-tabs button small { display:none; }
.co-tabs button strong { font-size:16px; }
.co-showcase-bottom { justify-content:flex-start; }
.co-client-logos { grid-template-columns:repeat(4,1fr); }
.co-platform { padding-right:25px; }
.co-platform + .co-platform { padding-left:25px; }
.co-workflow { grid-template-columns:1fr; }
.co-workflow li { padding:17px 24px; text-align:left; display:flex; gap:18px; align-items:center; }
.co-workflow li span { margin:0; }
.co-workflow li:not(:last-child)::after { content:'↓'; top:auto; right:22px; bottom:-12px; transform:none; }
.co-feature-list { grid-template-columns:1fr; gap:0; }
.co-data-types { gap:24px; }
.co-contact-band .co-wrap { align-items:flex-start; flex-direction:column; gap:24px; }
.co-contact-band h2 { font-size:30px!important; }
}
@media(max-width:600px) {
.corporate main h1 { font-size:38px; }
.corporate main h2 { font-size:36px; }
.co-eyebrow { font-size:10px; margin-bottom:19px!important; }
.co-lead, .co-hero-copy .co-lead { font-size:16px; line-height:1.85; }
.co-lead br { display:none; }
.co-actions { gap:10px 20px; margin-top:25px; }
.corporate a.co-button { font-size:15px; min-height:52px; padding:12px 18px; gap:20px; }
.co-hero-grid { gap:38px; }
.co-hero-data { padding:18px 20px; margin-left:30px; }
.co-hero-data p { font-size:10px; }
.co-hero-note { font-size:10px; }
.co-hero-baseline { align-items:flex-start; font-size:9px; gap:15px; }
.co-hero-baseline span:last-child { max-width:135px; text-align:right; line-height:1.6; }
.co-platform-grid { grid-template-columns:1fr; }
.co-platform, .co-platform + .co-platform { padding:28px 0; border-left:0; }
.co-platform + .co-platform { border-top:1px solid var(--site-line); }
.co-brand { margin-bottom:20px!important; }
.co-brand strong { font-size:40px; }
.co-platform h3 { font-size:27px!important; }
.co-tabs button strong { font-size:16px; }
.co-product-panel .co-image-window:not(.co-phone-window) { aspect-ratio:1.35; padding:5px; }
.co-product-panel .co-image-window:not(.co-phone-window) img { width:100%; height:100%; object-fit:cover; object-position:24% top; }
.co-product-panel .co-image-window.co-phone-window { aspect-ratio:1.4; }
.co-product-panel h3 { font-size:23px!important; }
.co-image-caption { font-size:11px; gap:10px; }
.co-data-flow { padding:25px 18px; }
.co-data-sources { gap:7px; }
.co-data-sources span { padding:16px 2px; font-size:10px; }
.co-data-question strong { font-size:18px; }
.co-cases .case-wrap { grid-template-columns:1fr; gap:0; }
.co-client-logos { grid-template-columns:repeat(3,1fr); gap:10px 15px; }
.co-client-logos li { min-height:60px; }
.co-client-logos img { max-height:46px; }
.co-clients-title { align-items:flex-start; flex-direction:column; gap:8px; }
.co-subnav { top:68px; }
.co-subnav .co-wrap { justify-content:space-between; gap:6px; }
.co-subnav a { min-height:52px; font-size:14px; }
.co-four-services { gap:30px 20px; }
.co-service-summary b { font-size:23px; }
.co-service-summary h3 { font-size:19px!important; }
.co-service-summary p { font-size:15px; }
.co-feature-list li { grid-template-columns:82px 1fr; gap:14px; }
.co-audience { grid-template-columns:1fr; gap:30px; }
.co-data-types { grid-template-columns:1fr; gap:32px; }
.co-detail-screen .co-image-window { overflow:hidden; padding:5px; height:280px; }
.co-detail-screen img { max-width:none!important; width:auto!important; height:100%!important; object-fit:cover; object-position:left; }
.co-detail-screen figcaption a { min-height:44px; display:inline-flex; align-items:center; text-decoration:underline; }
.co-mobile-screens { padding:20px; gap:12px; }
.co-question-list li { font-size:16px; }
}
@media(max-width:360px) { .corporate main h1 { font-size:34px; } .corporate main h2 { font-size:32px; } .co-wrap { width:calc(100% - 36px); } }

.co-brand-title span { display:block; margin-top:8px; font-size:22px; }
@media(prefers-reduced-motion:reduce) { .corporate { scroll-behavior:auto; } .corporate * { transition:none!important; animation:none!important; scroll-behavior:auto!important; } }

/* Reuse the original Triphos blue palette, brand visuals, and reveal motion. */
.corporate main .co-brand-hero { padding:20px 24px 0; background:#fff; }
.co-brand-stage { position:relative; isolation:isolate; min-height:680px; height:min(760px,calc(100svh - 115px)); overflow:hidden; border-radius:28px; background:#112d55; }
.co-brand-slider { position:absolute; inset:0; height:100%; width:100%; z-index:-2; }
.co-brand-slider .swiper-slide img { width:100%; height:100%; object-fit:cover; object-position:center; }
.co-brand-shade { position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,rgba(8,28,59,.88),rgba(8,28,59,.46) 53%,rgba(8,28,59,.08)); }
.co-brand-copy { padding-top:clamp(90px,10vh,140px); padding-bottom:130px; }
.co-brand-copy .co-eyebrow { color:#c5daef; font-size:12px; }
.corporate .co-brand-copy h1 { color:#fff; font-size:clamp(44px,4.6vw,68px); line-height:1.28; font-weight:700; letter-spacing:-.05em; }
.co-brand-copy h1 span { color:#a8d7ff; }
.co-brand-copy .co-lead { color:#e0eaf6; font-size:18px; line-height:1.85; margin-top:28px!important; }
.co-brand-copy .co-actions { margin-top:32px; }
.corporate .co-brand-copy .co-button { background:#fff; border-color:#fff; color:#00519b; border-radius:28px; padding:15px 26px; }
.corporate .co-brand-copy .co-button:hover { background:#e6f3ff; }
.corporate .co-brand-copy .co-text-link { color:#fff; border-color:#ffffff70; }
.co-brand-bottom { position:absolute; bottom:32px; left:50%; transform:translateX(-50%); display:flex; justify-content:space-between; align-items:center; gap:20px; color:white; }
.co-scroll-cue { display:flex; align-items:center; gap:20px; font-size:10px; letter-spacing:.15em; }
.co-scroll-cue span { font-size:24px; }
.co-slider-controls { display:flex; align-items:center; gap:8px; }
.co-slide-count { margin-right:14px; font-size:13px; letter-spacing:.1em; font-variant-numeric:tabular-nums; }
.co-slider-controls button { width:44px; height:44px; display:grid; place-items:center; border:1px solid #ffffff70; border-radius:50%; color:white; background:#112d5540; font-size:20px; }
.co-slider-controls button:hover { background:#ffffff22; }
.co-slider-controls button:disabled { opacity:.5; cursor:default; }
.co-hero-platforms { display:grid; grid-template-columns:1fr 1fr; padding:36px 0; }
.co-hero-platforms > a { display:flex; align-items:center; gap:22px; padding:8px 36px; }
.co-hero-platforms > a:first-child { padding-left:0; border-right:1px solid var(--site-line); }
.co-hero-platforms > a:last-child { padding-right:0; }
.co-platform-number { align-self:flex-start; padding-top:7px; font-size:12px; color:#8294ab; }
.co-hero-platforms strong { font-size:30px; font-weight:700; line-height:1.3; letter-spacing:-.03em; }
.co-hero-platforms > a:first-child strong { color:var(--site-accent); }
.co-hero-platforms > a:last-child strong { color:var(--color-second); }
.co-hero-platforms p { margin-top:8px!important; font-size:16px; color:#50637b; }
.co-hero-platforms p span { display:block; margin-top:3px; font-size:12px; color:#697d96; }
.co-platform-arrow { margin-left:auto; font-size:30px; color:var(--color-second); }
.co-platform { border-top:3px solid transparent; transition:border-color .3s,background .3s; }
.co-platform:hover { border-top-color:var(--site-accent); }
.co-platform:last-child:hover { border-top-color:var(--color-point); }
.corporate main .co-si { background:#103774 url('/images/solution_bg.jpg') center / cover; }
.co-si .co-eyebrow, .co-si .co-lead { color:#dce8fc; }
.co-si-capabilities li { color:#fff; }
.co-si-capabilities span { color:#c1d3f4; }
.corporate main .co-contact-band { background:#e9eff8 url('/images/bann_contact.jpg') center / cover; }
.co-data-sources span { border-color:#d4e2f4; }
.co-data-flow { border-color:#d4e2f4; }
.co-data-results, .co-data-footnote { color:#41668c; }
.co-flow-connector { color:#5981b3; }
.co-data-question span { color:#d0e7ff; }
.co-data-types article { border-color:#8bb8e9; }
.co-data-types p { color:#5f728a; }
.co-question-list li, .co-number-list li { border-color:#d8e4f1; }
.co-number-list li::before, .co-question-list li::before { color:#497eae; }
.co-client-ribbon { overflow:hidden; margin-top:32px; mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent); }
.co-client-track { display:flex; width:max-content; }
.co-client-track .co-client-logos { display:flex; gap:36px; margin:0!important; padding-right:36px; }
.co-client-track .co-client-logos li { width:150px; min-height:88px; flex-shrink:0; }
.co-client-ribbon[data-running='true'] .co-client-track { animation:co-client-drift 48s linear infinite; }
.co-client-ribbon[data-onscreen='false'] .co-client-track { animation-play-state:paused; }
@keyframes co-client-drift { to { transform:translateX(-50%); } }
@media(hover:hover) and (prefers-reduced-motion:no-preference) {
.corporate .co-button { transition:background .25s,box-shadow .25s,transform .25s; }
.corporate .co-button:hover { transform:translateY(-3px); box-shadow:0 10px 24px #00519b20; }
.co-text-link span, .co-platform-arrow { transition:transform .3s; }
.co-text-link:hover span, .co-hero-platforms a:hover .co-platform-arrow { transform:translate(4px,-3px); }
}
@media(max-width:1100px) {
.co-brand-stage { min-height:650px; height:auto; }
.co-brand-copy { padding-top:95px; }
}
@media(max-width:600px) {
.corporate main .co-brand-hero { padding:12px 12px 0; }
.co-brand-stage { min-height:620px; border-radius:20px; }
.co-brand-copy { padding-top:64px; padding-bottom:110px; }
.corporate .co-brand-copy h1 { font-size:clamp(34px,9vw,44px); line-height:1.35; }
.co-brand-copy .co-eyebrow { font-size:9px; letter-spacing:.09em; }
.co-brand-copy .co-lead { font-size:16px; margin-top:24px!important; }
.co-brand-copy .co-lead br { display:none; }
.co-brand-slider .swiper-slide img { object-position:62% center; }
.co-brand-shade { background:linear-gradient(90deg,#081c3bed,#081c3b55); }
.co-brand-bottom { bottom:24px; gap:10px; }
.co-scroll-cue { letter-spacing:.08em; font-size:8px; gap:8px; }
.co-scroll-cue span { font-size:18px; }
.co-slider-controls { gap:5px; }
.co-slide-count { font-size:11px; margin-right:4px; }
.co-slider-controls button { width:40px; height:44px; font-size:17px; }
.co-hero-platforms { grid-template-columns:1fr; padding:18px 0; }
.co-hero-platforms > a, .co-hero-platforms > a:first-child, .co-hero-platforms > a:last-child { padding:20px 0; border-right:0; }
.co-hero-platforms > a + a { border-top:1px solid var(--site-line); }
.co-hero-platforms strong { font-size:27px; }
.co-hero-platforms p { font-size:15px; }
.co-platform-number { padding-top:4px; }
.co-brand-title span { font-size:22px; }
.co-detail-hero h1 { font-size:40px!important; }
.co-feature-list li { grid-template-columns:1fr; gap:8px; }
.co-platform .co-lead, .co-product-panel .co-lead, .co-section-head .co-lead { font-size:16px; }
.co-client-track .co-client-logos { gap:22px; padding-right:22px; }
.co-client-track .co-client-logos li { width:125px; }
}
@media(max-width:360px) {
.co-scroll-cue { display:none; }
.co-brand-bottom { justify-content:flex-end; }
}
@media(prefers-reduced-motion:reduce) {
.co-client-ribbon { mask-image:none; }
.co-client-track { width:100%; transform:none!important; animation:none!important; }
.co-client-track .co-client-logos { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); width:100%; gap:20px; padding:0; }
.co-client-track .co-client-logos li { width:auto; }
.co-client-track [aria-hidden='true'] { display:none; }
.co-brand-slider .swiper-wrapper { transition-duration:0ms!important; }
}

.co-client-ribbon:not([data-running]) .co-client-track { width:100%; }
.co-client-ribbon:not([data-running]) .co-client-logos { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); width:100%; padding:0; }
.co-client-ribbon:not([data-running]) .co-client-logos li { width:auto; }

/* DataLens is a conceptual flow, not an invented product screenshot. */
.co-data-visual { padding:32px; background:#fff; border:1px solid #d9e5f4; border-radius:24px; box-shadow:0 22px 55px -40px #00519b66; }
.co-data-visual .co-flow-step { display:flex; align-items:center; gap:10px; margin-bottom:18px!important; color:#3d5877; font-size:16px; font-weight:600; }
.co-data-visual .co-flow-step > span { color:#00519b; font-size:15px; font-weight:700; }
.co-data-visual .co-data-sources { gap:12px; }
.co-data-visual .co-data-sources > div { min-width:0; display:flex; flex-direction:column; align-items:center; padding:20px 8px; background:#f3f7fd; border-radius:14px; text-align:center; }
.co-data-visual svg { width:42px; height:42px; flex-shrink:0; color:#3978b7; }
.co-data-visual .co-data-sources strong { margin-top:12px; font-size:18px; color:#193d66; font-weight:600; word-break:keep-all; }
.co-data-visual .co-data-sources small { margin-top:6px; font-size:14px; color:#61758e; word-break:keep-all; }
.co-data-visual .co-flow-connector { padding:12px 0; font-size:26px; color:#79a1cd; }
.co-data-visual .co-data-question { padding:24px; border-radius:16px; background:#00519b; }
.co-data-engine { display:flex; align-items:center; justify-content:center; gap:12px; }
.co-data-visual .co-data-engine svg { width:36px; height:36px; color:#cbe7ff; }
.co-data-visual .co-data-engine strong { font-size:32px; font-weight:700; color:#fff; line-height:1.3; }
.co-data-visual .co-data-question p { margin-top:10px!important; color:#e2f1ff; font-size:18px; line-height:1.6; word-break:keep-all; }
.co-data-example { margin-top:12px!important; padding:18px 22px; border:1px solid #d5e3f4; border-radius:14px; background:#f7faff; }
.co-data-example > span { font-size:14px; color:#526f91; }
.co-data-example p { margin-top:8px!important; font-size:21px; line-height:1.6; color:#21466f; font-weight:500; word-break:keep-all; }
.co-data-visual .co-data-results { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.co-data-visual .co-data-results > div { display:flex; align-items:center; flex-direction:column; gap:10px; padding:12px 0; border:1px solid #e0e9f5; border-radius:12px; }
.co-data-visual .co-data-results svg { width:30px; height:30px; }
.co-data-visual .co-data-results strong { font-size:17px; font-weight:600; color:#254c76; }
.co-data-visual .co-data-footnote { margin-top:20px!important; font-size:14px; line-height:1.7; color:#60738b; }
.corporate main h2 { text-wrap:balance; }
.co-detail-hero .co-eyebrow { font-size:14px; letter-spacing:.06em; }
.co-detail-screen figcaption { font-size:15px; line-height:1.7; }
.co-erp-workflow li { font-size:18px; font-weight:600; }
.co-erp-workflow img { width:52px; height:52px; margin:0 auto 14px; object-fit:contain; }
.co-erp-workflow li span { font-size:13px; }
.co-feature-list strong { font-size:19px; }
.co-feature-list p, .co-rows p, .co-audience p, .co-data-types p { font-size:18px; }
.co-question-list li { font-size:21px; }
.co-product-detail .co-lead { font-size:20px; }
@media(max-width:800px) {
.co-erp-workflow img { width:44px; height:44px; margin:0; }
}
@media(max-width:600px) {
.co-data-visual { padding:22px 18px; }
.co-data-visual .co-flow-step { font-size:15px; gap:8px; }
.co-data-visual .co-data-sources { gap:8px; }
.co-data-visual .co-data-sources > div { padding:16px 4px; }
.co-data-visual svg { width:34px; height:34px; }
.co-data-visual .co-data-sources strong { font-size:16px; }
.co-data-visual .co-data-sources small { font-size:13px; }
.co-data-visual .co-data-engine strong { font-size:29px; }
.co-data-visual .co-data-question { padding:22px 14px; }
.co-data-visual .co-data-question p { font-size:17px; }
.co-data-example { padding:16px; }
.co-data-example p { font-size:18px; }
.co-data-visual .co-data-results { gap:8px; }
.co-data-visual .co-data-results strong { font-size:16px; }
.co-detail-hero .co-eyebrow { font-size:12px; }
.co-feature-list p, .co-rows p, .co-audience p, .co-data-types p { font-size:17px; }
.co-question-list li { font-size:19px; }
.co-product-detail .co-lead { font-size:18px; }
.co-subnav a { font-size:16px; }
}
