/* Brand palette: warm porcelain, marine ink, restrained champagne accents. */
:root{--bg:#faf9f6;--panel:#f0efeb;--line:#192d431a;--text:#192d43;--muted:#6a706f;--mint:#253f58;--gold:#a48759}
body,.discovery,.model-band,footer{background:var(--bg)}
header{background:#faf9f6f2;border-color:var(--line);box-shadow:none}
nav,.model-list b{color:#344655}header nav a:after{background:var(--gold)}
.nav-contact,.ghost{background:transparent;border-color:#c9c9c1;color:var(--text)}
.nav-contact:hover,.ghost:hover{border-color:var(--gold);background:#eeebe3;color:var(--text)}
.menu,.hero h1 em,.hero .eyebrow,.platform-copy li b,.service-body b,.contact-info a{color:var(--mint)}
.primary{background:#20384f;color:#fff;box-shadow:none}.primary:hover{background:#304d65;color:#fff}
.hero{background:#f1f0eb}.hero-shade{background:linear-gradient(90deg,#f1f0eb 0%,#f1f0eb 35%,#f1f0ebd9 45%,transparent 67%)}
.hero-bg{filter:saturate(.78)}#flow{opacity:.12}
.hero-content>p,.hero-note,.hero-bottom,.stats p,.service p,.service-body p,.contact p,.contact-info,.news-tile p{color:#616c72}
.hero-bottom,.stats,.news-stream,.news-list article,.steps>div{border-color:#d8d8d0}
.hero-bottom small,.model-band>small,.footer-bottom{color:#737b7c}
.eyebrow,.service-body>span{color:#7e7566}.eyebrow i,.pulse{background:var(--gold);box-shadow:none}
.stats strong,.person-phone,.person-heading h3,.dash-summary strong,.dash-top{color:#20384f}
.platform,.industries,.future{background:#f0efeb;border-color:#deded5}
.pill,.demo-tag{color:#66563b;background:#eee8db;border-color:#d8cbb4}
.dashboard{background:#fdfcf9;border-color:#dadbd5;box-shadow:0 12px 32px #192d4306}
.score-ring{background:conic-gradient(#a48759 63%,#e8e6df 0)}.score-ring>span{background:#fdfcf9;color:#20384f}
.bar-track{background:#e9e8e2}.bar-fill{background:#526b7b}.bar-row,.bar-row small{color:#52636d}
.dash-source,.dash-foot,.subtle{color:#707979}
.visual-services .illustrated-service,.visual-services .illustrated-service:nth-child(n+4){background:#fdfcf9;border-color:#deded6}
.visual-services .illustrated-service:hover{background:#fdfcf9;border-color:#bbaa8d;box-shadow:0 10px 26px #192d4308}
.service-photo,.illustrated-service:nth-child(n+4) .service-photo,.flow-card.product-flow,.flow-card:nth-child(-n+2){background:#eeede7}
.industry-tabs button,.industry-tools button,.news-motion-toggle,.flow-toggle{background:#faf9f6;border-color:#d7d7cf;color:#5d6970}
.industry-tabs button[aria-selected=true]{background:#20384f;border-color:#20384f;color:#fff}
.industry-tabs button:hover,.industry-tools button:hover,.news-motion-toggle:hover{border-color:#a48759}
.industry-tools{color:#6a7476}.industry-overlay>span,.industry-overlay .text-link,.industry-overlay .sector-tags{color:#e5d8bf}
.industry-panel>img,.about-image>img,.news-photo img,.flow-card:not(.product-flow)>img{filter:saturate(.78)}
.flow-card:hover img,.flow-card:focus-visible img{filter:saturate(.78) brightness(.94)}
.flow-caption small{color:#e5d8bf}.flow-caption p{color:#e5e8e8}
.steps span{color:#8b724c}.about-copy blockquote{border-color:#a48759}
.news-photo>span{background:#20384fe8;color:#fff}.news-tile{background:#f5f4ef;border-color:#deded5}.news-tile:hover{background:#eeece4}
.contact{background:#eeede7;border-color:#deded5}.person-card{background:#fdfcf9;border-color:#d6d5ca;box-shadow:none;border-top:2px solid #b39a72}
.person-card:hover{box-shadow:0 10px 28px #192d4308}.person-monogram{background:#eee8db;color:#716044}.person-arrow{color:#a48759}.person-heading small{color:#6a7476}
.discovery .flow-window:focus-visible,.flow-card:focus-visible{outline-color:#a48759}
@media(max-width:700px){nav{background:#faf9f6;border-color:#deded5}.hero-shade{background:linear-gradient(180deg,#f1f0eb 0%,#f1f0eb 53%,transparent 74%)}}
/* Photographic service scenes replace the previous interface illustrations. */
.service-photo img{object-fit:cover;width:100%;height:100%;filter:saturate(.9)}
.visual-services .illustrated-service:first-child .service-photo{height:100%;min-height:340px}
.flow-card.product-flow>img[src$="-photo.webp"]{height:100%;object-fit:cover}
.flow-card.product-flow:has(>img[src$="-photo.webp"]):after{background:linear-gradient(0deg,#122638ed,transparent 85%)}
.industry-panel:after{background:linear-gradient(90deg,#152c43ed 0%,#152c43ce 35%,#152c4360 65%,#152c4310 100%)}
.industry-panel>img{object-position:center;filter:saturate(.9)}
@media(max-width:700px){.visual-services .illustrated-service:first-child .service-photo{min-height:0;height:auto;aspect-ratio:8/5}.industry-panel:after{background:linear-gradient(90deg,#152c43e8,#152c4390)}.industry-panel>img{object-position:65% center}}
/* Every industry has its own permanently visible scene. */
.industry-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.industry-card{display:flex;flex-direction:column;background:#faf9f6;border:1px solid #deded5;border-radius:12px;overflow:hidden;transition:transform .3s,border-color .3s,box-shadow .3s}
.industry-card:hover{transform:translateY(-5px);border-color:#b39a72;box-shadow:0 14px 32px #192d430b}
.industry-card-photo{position:relative;aspect-ratio:16/10;overflow:hidden;background:#e4e5df}
.industry-card-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:65% center;transition:transform .6s}
.industry-card:hover img{transform:scale(1.045)}
.industry-card-index{position:absolute;top:14px;left:14px;background:#20384fe6;color:#fff;font-size:11px;letter-spacing:1px;padding:4px 10px;border-radius:4px}
.industry-card-copy{padding:24px;display:flex;flex-direction:column;flex:1}
.industry-card-en{font-size:9px;letter-spacing:1.5px;color:#7e7566}
.industry-card h3{display:flex;justify-content:space-between;align-items:center;font-size:23px;font-weight:500;margin:9px 0 14px;color:#20384f}
.industry-card h3 span{font-size:22px;color:#a48759}
.industry-card p{font-size:13px;line-height:1.85;color:#616c72;margin-bottom:20px}
.industry-card small{display:block;margin-top:auto;padding-top:16px;border-top:1px solid #deded5;font-size:10px;color:#7e7566}
@media(max-width:1000px){.industry-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}}
@media(max-width:600px){.industry-card-grid{grid-template-columns:1fr;gap:22px}.industry-card-copy{padding:22px}.industry-card-photo{aspect-ratio:16/9}}
@media(prefers-reduced-motion:reduce){.industry-card,.industry-card img{transition:none}.industry-card:hover,.industry-card:hover img{transform:none}}
.structured-links{display:flex;gap:20px;flex-wrap:wrap;padding:20px 0;border-top:1px solid #deded5;font-size:12px;color:#616c72}


/* Mobile navigation and integrated brand — 20261113 */
:root {color-scheme:only light}
header .company-brand,.detail-header>a:first-child {background:transparent;display:flex;align-items:center}
.company-brand img,.detail-header img {mix-blend-mode:multiply;display:block;border:0;box-shadow:none;border-radius:0}
header .company-brand {width:200px;padding:8px 0}
header .company-brand img {max-height:60px;object-fit:contain}
footer nav.structured-links {position:static;display:flex;flex-direction:row;flex-wrap:wrap;gap:12px 24px;padding:22px 0;margin:0;border:0;border-top:1px solid #deded5;background:transparent;color:#52616b;font-size:13px;width:auto}
@media(max-width:1000px){
 body>header {height:72px;padding:0 5%;position:sticky;top:0;background:#faf9f6;isolation:isolate}
 body>header .company-brand {width:170px;max-width:65%;padding:6px 0}
 body>header .company-brand img {max-height:56px}
 body>header .nav-contact {display:none}
 body>header .menu {display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid #deded5;border-radius:8px;background:transparent;color:#20384f;font-size:23px;cursor:pointer}
 body>header nav#nav {display:none;position:absolute;top:100%;left:0;right:0;width:auto;margin:0;padding:12px 5% 20px;background:#faf9f6;border-bottom:1px solid #deded5;box-shadow:0 12px 20px #20384f10;max-height:calc(100dvh - 72px);overflow-y:auto;flex-direction:column;gap:0}
 body>header nav#nav.open {display:flex}
 body>header nav#nav a {display:block;padding:13px 6px;font-size:16px;line-height:1.5;border-bottom:1px solid #e9e7df}
 body>header nav#nav a:after {display:none}
 footer nav.structured-links {position:static;display:flex;flex-direction:row;gap:12px 20px;background:transparent;padding:20px 0}
}
@media(max-width:700px){
 .detail-header {gap:16px;padding:12px 6% 18px}
 .detail-header img {width:170px}
 .detail-header nav {gap:10px 18px}
 .hero h1 {font-size:clamp(28px,7.6vw,38px);overflow-wrap:break-word}
 .hero-content .actions {display:flex;flex-wrap:wrap;gap:12px}
 .hero-content .actions .button {padding:12px 16px;font-size:13px;min-height:46px}
 .section-heading>div,.intro-grid>*,.platform-grid>*,.contact-pair>* {min-width:0}
 .footer-main .company-brand {width:220px;max-width:100%}
 .person-phone,.contact-pair a {font-size:clamp(20px,6vw,28px);overflow-wrap:anywhere}
 .detail-main {overflow-wrap:break-word}
}
