/* CONSAI public visual system v1. Presentation only; preserve routes, content, layouts and brand marks. */
html[data-consai-theme]{
 --consai-paper:#faf7ef;--consai-surface:#fffdf8;--consai-ink:#102c23;
 --consai-muted:#526158;--consai-green:#163f2d;--consai-brand:#073f2a;
 --consai-gold:#f1d36d;--consai-sage:#edf1e6;--consai-line:#dedfd3;
 --consai-font-display:Georgia,'Times New Roman',serif;
 --consai-font-body:Arial,Helvetica,sans-serif;--consai-font-ui:Arial,Helvetica,sans-serif;
 --intel-ink:var(--consai-ink);--intel-muted:var(--consai-muted);
 --intel-green:var(--consai-green);--intel-wash:var(--consai-paper);
 --intel-line:var(--consai-line);--intel-card:var(--consai-surface);
}
html[data-consai-theme] body{font-family:var(--font-body);color:var(--consai-ink);background:var(--consai-paper);letter-spacing:0}
html[data-consai-theme] :is(h1,h2,h3,h4){font-family:var(--font-display)!important;font-weight:400;letter-spacing:-.025em;text-transform:none}
html[data-consai-theme] main :is(h1,h2,h3){font-weight:400!important}
html[data-consai-theme] :is(h1,h2){line-height:1.15}
html[data-consai-theme] h3{line-height:1.25}
html[data-consai-theme] :is(button,input,select,textarea){font-family:var(--font-ui)}
html[data-consai-theme] :is(.site-header,.site-footer,.mobile-panel,.global-search-shell,.consent-banner,.filters,.filter-panel) :is(h2,h3,h4){font-family:var(--font-ui)!important;letter-spacing:.015em;font-weight:600}
html[data-consai-theme] :is(.site-header,.site-footer,.mobile-panel) :is(a,button,summary){font-family:var(--font-ui)}
html[data-consai-theme] .site-header{background:var(--consai-paper);border-bottom-color:var(--consai-line)}
html[data-consai-theme] .header-shell :is(.mega-menu,.compact-menu,.search-toggle){background:var(--consai-surface);border-color:var(--consai-line)}
html[data-consai-theme] .header-shell .nav-group>a{color:var(--consai-ink);font-weight:500}
html[data-consai-theme] .header-shell :is(.mega-menu,.compact-menu) a{color:var(--consai-ink)}
html[data-consai-theme] .header-shell :is(.mega-menu,.compact-menu) a:hover{color:var(--consai-brand)}
html[data-consai-theme] .utility{background:var(--consai-brand);color:#fff}
html[data-consai-theme] .site-footer{background:#062e22}
html[data-consai-theme] :is(.page-hero,.solutions-intro){background-color:var(--consai-paper)}
html[data-consai-theme] .page-hero{border-bottom-color:var(--consai-line)}
html[data-consai-theme] .page-hero:not(.theme-energy):not(.theme-climate):not(.theme-institution):not(.theme-trade){background:var(--consai-paper)}
html[data-consai-theme] .page-hero.theme-energy{background:linear-gradient(120deg,#faf7ef,#f3ead7)}
html[data-consai-theme] .page-hero.theme-climate{background:linear-gradient(120deg,#faf7ef,#e9f1e6)}
html[data-consai-theme] .page-hero.theme-institution{background:linear-gradient(120deg,#faf7ef,#edf1e8)}
html[data-consai-theme] .page-hero.theme-trade{background:linear-gradient(120deg,#faf7ef,#f2efdf)}
html[data-consai-theme] :is(.page-hero h1,.section-heading h2,.content-grid h2,.contact-grid h2,.carbon-heading h2,.carbon-stages h3,.configurator-heading h2,.config-step-heading h2,.legal-document-copy h2){color:var(--consai-ink)}
html[data-consai-theme] :is(.page-hero-copy>p,.page-hero .hero-grid>div:first-child>p,.article-body>section p,.article-body>section li,.listing-body p){color:var(--consai-muted)}
html[data-consai-theme] .carbon-gateway{background:linear-gradient(110deg,#eef1e3,#faf7ef 65%,#f0f3eb)}
html[data-consai-theme] :is(.role-card,.feature-grid>article,.insight-card,.resource-card,.contact-review){border-color:var(--consai-line)}
html[data-consai-theme] main .button:not(.secondary):not(.gold):not(.ghost-light),
html[data-consai-theme] .header-shell .button{background:var(--consai-green);border-color:var(--consai-green);color:#fffdf8}
html[data-consai-theme] main .button:not(.secondary):not(.gold):not(.ghost-light):hover,
html[data-consai-theme] .header-shell .button:hover{background:#23523b;border-color:#23523b}
html[data-consai-theme] .button{font-family:var(--font-ui);font-weight:500}
html[data-consai-theme] .button.gold{background:var(--consai-gold);border-color:var(--consai-gold);color:var(--consai-ink)}
html[data-consai-theme] :is(.kicker,.eyebrow,.hero-kicker,.tag){font-family:var(--font-ui)}
/* Keep small operational headings, labels and numerical readouts easy to scan. */
html[data-consai-theme] :is(.scheduler,.registration-card,.filters,.filter-panel,.global-search-shell,.config-live-summary,.checkout-sidebar) :is(h3,h4){font-family:var(--font-ui)!important;font-weight:600!important;letter-spacing:0}
html[data-consai-theme] :is(.price,.price-value,.plan-price,.stat-value,.hero-stat-value){font-variant-numeric:tabular-nums}
html[data-consai-theme] :is(.page-hero h1,.intel-hero h1){text-wrap:pretty}
html[data-consai-theme] :is(a,button,input,textarea,select,summary):focus-visible{outline:3px solid #967128;outline-offset:3px}
/* Preserve the separately approved, fully fitted home illustration and its exact text scale. */
html[data-consai-theme] #hybrid-home :is(h1,h2,h3){letter-spacing:inherit}
html[data-consai-theme] #hybrid-home .hx-copy h1{letter-spacing:-.055em}
html[data-consai-theme] #hybrid-home .hx-pathways h2{letter-spacing:-.035em}
html[data-consai-theme] #hybrid-home .hx-card h3{letter-spacing:-.03em}
/* Script-aware local fallback stacks: no new external font calls or blocking downloads. */
html[data-consai-theme]:is([lang=ar],[lang=ur]){
 --consai-font-display:'Noto Naskh Arabic','Traditional Arabic','Noto Sans Arabic',Tahoma,serif;
 --consai-font-body:'Noto Sans Arabic',Tahoma,Arial,sans-serif;--consai-font-ui:var(--consai-font-body);
}
html[data-consai-theme][lang=hi]{
 --consai-font-display:'Noto Serif Devanagari','Kokila','Nirmala UI',serif;
 --consai-font-body:'Noto Sans Devanagari','Nirmala UI',Arial,sans-serif;--consai-font-ui:var(--consai-font-body);
}
html[data-consai-theme][lang=zh]{
 --consai-font-display:'Noto Serif CJK SC','Source Han Serif SC','Songti SC',SimSun,serif;
 --consai-font-body:'Noto Sans CJK SC','Microsoft YaHei','PingFang SC',Arial,sans-serif;--consai-font-ui:var(--consai-font-body);
}
html[data-consai-theme][lang=ja]{
 --consai-font-display:'Noto Serif CJK JP','Yu Mincho','Hiragino Mincho ProN',serif;
 --consai-font-body:'Noto Sans CJK JP','Yu Gothic','Hiragino Kaku Gothic ProN',Arial,sans-serif;--consai-font-ui:var(--consai-font-body);
}
html[data-consai-theme][lang=ko]{
 --consai-font-display:'Noto Serif CJK KR','Batang',serif;
 --consai-font-body:'Noto Sans CJK KR','Malgun Gothic',Arial,sans-serif;--consai-font-ui:var(--consai-font-body);
}
html[data-consai-theme]:is([lang=ar],[lang=ur],[lang=hi],[lang=zh],[lang=ja],[lang=ko]) :is(h1,h2,h3,h4){
 letter-spacing:0!important;line-height:1.4!important;word-break:normal
}
html[data-consai-theme]:is([lang=ar],[lang=ur]) :is(p,li,input,textarea,select){line-height:1.75}
html[data-consai-theme]:is([lang=ar],[lang=ur]) :is(h1,h2){line-height:1.5!important}
html[data-consai-theme]:is([lang=zh],[lang=ja],[lang=ko]) :is(p,li){line-height:1.75;letter-spacing:0}
@media(max-width:760px){
 html[data-consai-theme] main :is(h1,h2,h3){overflow-wrap:anywhere}
 html[data-consai-theme] .page-hero h1{line-height:1.16!important}
 html[data-consai-theme] :is(input,textarea,select){font-size:max(16px,1em)}
 html[data-consai-theme]:is([lang=ar],[lang=ur],[lang=hi],[lang=zh],[lang=ja],[lang=ko]) .page-hero h1{line-height:1.4!important;letter-spacing:0!important}
}
/* Expo keeps its dark corporate treatment; never darken white-on-dark copy. */
html[data-consai-palette=dark] body{background:#071b14;color:#fff}
html[data-consai-palette=dark] .sec:not(.dark){background:var(--consai-paper);color:var(--consai-ink)}
html[data-consai-palette=dark] .dark{background:#09271d;color:#fff}
html[data-consai-palette=dark] .lead{color:var(--consai-muted)}
html[data-consai-palette=dark] .dark .lead{color:#c0d2c9}
html[data-consai-palette=dark] .btn:not(.ghost){background:var(--consai-gold);color:var(--consai-ink)}
html[data-consai-palette=dark] :is(.tag,.k){color:#c6d98d}
html[data-consai-palette=dark] .sec:not(.dark) :is(.tag,.k){color:#47613a}

/* Replace legacy :lang variables declared on every descendant, not only the root. */
html[data-consai-theme],html[data-consai-theme] :where(*){--font-display:var(--consai-font-display);--font-body:var(--consai-font-body);--font-ui:var(--consai-font-ui)}
