/* Shared controls; public sites only. Each branch retains its own night palette. */
html{--night-bg:#08141f;--night-surface:#102333;--night-raised:#162f41;--night-line:#294558;--night-text:#edf4f8;--night-muted:#b2c6d3;--night-accent:#7dc9f2;--night-warm:#ffab79;--night-header:#0b1d2b;--night-brand:#126caa}
html[data-site=om]{--night-bg:#0b1915;--night-surface:#122a23;--night-raised:#1b382e;--night-line:#355347;--night-text:#f0f4ec;--night-muted:#bdcdbd;--night-accent:#c4dfa8;--night-warm:#e7bb90;--night-header:#10241d;--night-brand:#245b48}
#header .theme-toggle{display:inline-grid;place-items:center;flex:0 0 42px;width:42px;height:42px;padding:0;border:1px solid #d3dfe5;border-radius:50%;background:#edf4f8;color:#163c54;cursor:pointer;transition:background .2s,color .2s,border-color .2s,transform .2s;overflow:visible}
html[data-site=om] #header .theme-toggle{background:#edf1e7;border-color:#ccd8c2;color:#31523b}
#header .theme-toggle:hover{transform:translateY(-2px);border-color:currentColor}
#header .theme-toggle:focus-visible{outline:3px solid #dd8652;outline-offset:3px}
#header .theme-toggle svg{pointer-events:none}
html[data-theme=dark]{color-scheme:dark;--paper:var(--night-bg);--white:var(--night-surface);--surface:var(--night-raised);--line:var(--night-line);--muted:var(--night-muted);--sp-border:var(--night-line);--ui-border:var(--night-line)}
html[data-theme=light]{color-scheme:light}
html[data-theme=dark] body{background:var(--night-bg);color:var(--night-text)}
html[data-theme=dark] ::selection{background:#659fbb;color:#071d2b}
html[data-theme=dark] :is(h1,h2,h3,h4){color:var(--night-text)}
html[data-theme=dark] :is(button,a,input,textarea,select):focus-visible{outline-color:var(--night-warm)}
html[data-theme=dark] #header{background:var(--night-header)!important;border-color:var(--night-line);box-shadow:0 5px 28px #0003}
html[data-theme=dark] #header:before{background:var(--night-line)}
html[data-theme=dark] #header .theme-toggle{background:var(--night-raised);color:var(--night-warm);border-color:var(--night-line)}
html[data-theme=dark] #header :is(.brand-wordmark>strong,.om-brand b,.nav-link,.nav-trigger,.nav-item,.language-button,.language-toggle){color:var(--night-text)!important}
html[data-theme=dark] #header :is(.brand-wordmark>span,.om-brand small){color:var(--night-muted)!important}
html[data-theme=dark] :is(.nav-shell,.main-nav.flagship-nav,.nav-row nav){background:var(--night-header)!important;color:var(--night-text);border-color:var(--night-line)!important}
html[data-theme=dark] #header :is(.nav-link,.nav-trigger,.nav-item):is(:hover,[aria-current],.active,.is-active,[aria-expanded=true],.is-work-hover){background:var(--night-raised)!important;color:var(--night-accent)!important}
html[data-theme=dark] :is(.nav-link,.nav-trigger):before{background:var(--night-line)!important}
html[data-theme=dark] #header :is(.nav-mobile-arrow,.nav-symbol){color:var(--night-accent)!important}
html[data-theme=dark][data-site=ye] .skip-link{color:#071d2b}
html[data-theme=dark] :is(.menu-toggle,.om-brand i,.mobile-contact){background:var(--night-raised)!important;border-color:var(--night-line)!important;color:var(--night-text)!important}
html[data-theme=dark] :is(.mega-panel,.main-nav .mega-panel){background:var(--night-surface)!important;border-color:var(--night-line)!important;color:var(--night-text)!important;box-shadow:0 24px 60px #0006}
html[data-theme=dark] :is(.mega-sector-card,.mega-destination,.mega-links>a,.mega-sectors>a){background:var(--night-raised)!important;border-color:var(--night-line)!important;color:var(--night-text)!important}
html[data-theme=dark] :is(.mega-sector-card,.mega-destination,.mega-links>a,.mega-sectors>a):is(:hover,:focus-visible){border-color:var(--night-accent)!important}
html[data-theme=dark] :is(.mega-topbar h2,.mega-sector-copy h3,.mega-destination h3,.mega-links strong,.mega-sectors b){color:var(--night-text)!important}
html[data-theme=dark] :is(.mega-sector-copy p,.mega-destination p,.mega-links small,.mega-num){color:var(--night-muted)!important}
html[data-theme=dark] :is(.mega-kicker,.mega-card-value,.mega-card-bottom,.mega-sector-copy>span,.mega-links>a>svg,.mega-sectors>a>span>svg){color:var(--night-accent)!important}
html[data-theme=dark] :is(.mega-close,.mega-card-symbol,.mega-links>a>svg){background:var(--night-surface)!important;border-color:var(--night-line)!important;color:var(--night-accent)!important}
html[data-theme=dark] .mega-intro{color:var(--night-text)}
/* Home sections, project cards, and navigation details. Photographs are untouched. */
html[data-theme=dark] :is(.stats-section,.home-work,.origin-chapter,.page-intro,.soft-section,.heritage-section){background:var(--night-bg)!important;color:var(--night-text)}
html[data-theme=dark] :is(.stats-section>h2,.mini-wordmark,.authority-strip>a>b,.origin-countries p){color:var(--night-text)!important}
html[data-theme=dark] :is(.work-case,.scene-console,.presence-destination,.project-card,.credential-card,.office-card,.project-facts,.project-filters,.contact-form,.organization-grid>a,.contact-info>a){background:var(--night-surface)!important;border-color:var(--night-line)!important;color:var(--night-text)}
html[data-theme=dark][data-site=om] .sector-card{background:var(--night-surface)!important;border-color:var(--night-line)!important}
html[data-theme=dark] :is(.work-case-facts,.work-location small,.work-case h3,.project-info h3,.contact-info b,.form-submit>p,.footer-main h3){color:var(--night-text)!important}
html[data-theme=dark] :is(.work-case-badges>span,.work-case-badges time,.work-case-facts>.work-location,.project-org,.project-info .text-link,.btn.outline,.filter-reset,.public-pagination button,.project-open,.country-marker,.console-explore,.console-explore>.link-arrow){background:var(--night-raised)!important;color:var(--night-accent)!important;border-color:var(--night-line)!important}
html[data-theme=dark] :is(.project-card,.sector-card):is(:hover,:focus-visible) .text-link{background:var(--night-brand)!important;color:#fff!important}
html[data-theme=dark] .public-pagination button[aria-current=page]{background:var(--night-brand)!important;color:#fff!important}
html[data-theme=dark] .signature-projects>.project-card:first-child .project-info{color:#fff}
html[data-theme=dark] :is(.console-sector.selected,.console-sector:hover,.authority-strip>a:hover,.capability-list>div:hover,.contact-info>a:hover,.organization-grid>a:hover){background:var(--night-raised)!important}
html[data-theme=dark] :is(.console-copy>b,.console-sector.selected .console-copy>b,.console-sector:not(.selected),.console-symbol){color:var(--night-text)!important}
html[data-theme=dark] :is(.console-copy small,.console-number,.authority-strip>a>span:not(.link-arrow),.section-description,.sector-editorial>p:not(.eyebrow),.origin-copy>p:not(.eyebrow),.origin-countries small,.page-intro p:not(.eyebrow),.story-grid p,.large-copy,.legal-copy p,.project-location,.signature-projects .project-location,.presence-destination>p,.breadcrumb,.credential-card p,.credential-card small,.credential-card .credential-date,.organization-grid>a>span){color:var(--night-muted)!important}
html[data-theme=dark] :is(.eyebrow,.project-meta,.project-info .project-meta,.page-intro .eyebrow,.destination-tag,.organization-grid>a>b,.project-location>svg){color:var(--night-warm)!important}
html[data-theme=dark] :is(.console-progress,.console-symbol,.console-sector,.authority-strip>a,.origin-art,.page-intro-image,.project-facts,.office-card,.project-gallery>button){border-color:var(--night-line)!important}
html[data-theme=dark] .console-progress{background:var(--night-line)}
html[data-theme=dark] :is(.presence-band,.service-cta,.oman-office,.hero-sectors,.hero-caption){color:var(--night-text)}
html[data-theme=dark] .text-link{color:var(--night-accent)}
html[data-theme=dark] :is(.credential-card>button,.certificate-image,.project-gallery>button){background:var(--night-raised)!important}
html[data-theme=dark] .btn.light{background:var(--night-raised);color:var(--night-text)}
/* Yemen inner pages: surfaces and text need explicit overrides for the editorial layouts. */
html[data-theme=dark] #main.subpage{background:var(--night-bg);color:var(--night-text);--sp-border:var(--night-line);--sp-accent:var(--night-accent)}
html[data-theme=dark] #main.subpage [style*="--sp-accent"]{--sp-accent:var(--night-accent)!important}
html[data-theme=dark] .subpage [data-tone=contracting]{--sp-accent:#ffab79}
html[data-theme=dark] .subpage [data-tone=trading]{--sp-accent:#7dc9f2}
html[data-theme=dark] .subpage [data-tone=energy]{--sp-accent:#6cd6bb}
html[data-theme=dark] #reset-filters{color:var(--night-muted)}
html[data-theme=dark] :is(.sp-hero,.sp-work-section,.sp-next,.sp-record-sheet,.sp-reach-visual){background:linear-gradient(120deg,var(--night-raised),var(--night-bg))!important;border-color:var(--night-line)!important}
html[data-theme=dark] :is(.sp-metrics,.sp-sector-overview,.sp-capability,.subpage #filters,.sp-project-card,.sp-detail-facts,.sp-project-facts,.sp-project-sheet,.sp-org-visual,.sp-search,.sp-org-card,.sp-empty,.sp-map-records .record-row,.subpage .map-board,.subpage .contact-channel,.subpage #contact-form,.recognition-grid article,.sp-photo-card,.sp-related-docs button){background:var(--night-surface)!important;border-color:var(--night-line)!important;color:var(--night-text)!important}
html[data-theme=dark] :is(.sp-project-facts>div:first-child,.sp-project-facts>div>i,.sp-jump,.sp-project-badges>span,.sp-project-year,.sp-project-location,.sp-active-filters button,.subpage .filter-tabs button,.sp-gallery-controls>button,.sp-gallery-controls>a){background:var(--night-raised)!important;border-color:var(--night-line)!important;color:var(--night-accent)!important}
html[data-theme=dark] .subpage .filter-tabs button[aria-pressed=true]{background:#14577b!important;color:#fff!important}
html[data-theme=dark] :is(.sp-crumbs,.sp-hero-copy>p,.sp-section-head p,.sp-story p,.sp-sector-copy p,.sp-card-tail small,.sp-next p,.sp-sector-intro p,.sp-cap-num,.results-bar,.subpage .project-meta>b,.sp-detail-facts span,.sp-detail-body article>p,.sp-record-sheet>span:not(.sp-kicker),.sp-map-toolbar>label,.sp-org-visual>a span,.sp-org-total,.sp-directory-count,.sp-org-card-bottom strong small,.subpage .prose p,.sp-project-facts small,.sp-project-overview>p,.sp-project-budget>span,.sp-project-identifier>span,.sp-photo-card-copy>small,.sp-photo-counter){color:var(--night-muted)!important}
html[data-theme=dark] :is(.sp-crumbs>[aria-current],.sp-metric strong,.sp-metric span,.sp-lead,.sp-sector-intro h1,.subpage .project-place,.subpage .project-place>span,.sp-project-title h1,.sp-project-facts strong,.sp-project-facts>div:first-child strong,.sp-project-budget>strong,.sp-project-identifier>b,.sp-photo-card-copy,.sp-org-visual>a b,.sp-org-card-bottom>span,.sp-reach-visual>strong,.sp-reach-visual>span,.sp-search input){color:var(--night-text)!important}
html[data-theme=dark] :is(.sp-org-monogram>span,.sp-document-grid summary,.sp-doc-number,.sp-project-inquiry .text-link,.sp-project-location small,.map-pan-hint){color:var(--night-accent)!important}
html[data-theme=dark] :is(.sp-project-facts>div,.sp-project-sheet>.sp-kicker,.sp-project-identifier,.sp-project-inquiry,.sp-project-gallery,.sp-project-documents,.sp-map-records .record-row,.sp-gallery-controls>button,.sp-gallery-controls>a){border-color:var(--night-line)!important}
html[data-theme=dark] :is(.sp-document-grid .certificate-image,.sp-photo-frame,.sp-gallery-lightbox>img){background:var(--night-raised)!important}
/* Forms, search and viewer surfaces across both sites. */
html[data-theme=dark] :is(#main input,#main select,#main textarea,.search-field,.select-field){background:var(--night-raised)!important;border-color:var(--night-line)!important;color:var(--night-text)!important}
html[data-theme=dark] :is(#main input,#main textarea)::placeholder{color:var(--night-muted)!important;opacity:1}
html[data-theme=dark] :is(#media-dialog,#image-viewer){background:var(--night-surface)!important;color:var(--night-text)}
/* Compact footer. */
html[data-theme=dark] #footer{background:var(--night-header)!important;color:var(--night-text)!important}
html[data-theme=dark] #footer:after{background:linear-gradient(transparent,var(--night-header))}
html[data-theme=dark] .footer-architecture{opacity:.12}
html[data-theme=dark] :is(.footer-invitation,.mega-topbar,.mega-card-bottom){border-color:var(--night-line)!important}
html[data-theme=dark] :is(.footer-pavilion,.footer-channel){background:var(--night-surface)!important;border-color:var(--night-line)!important}
html[data-theme=dark] :is(.footer-sectors>a,.footer-channel-open,.footer-meta>button>span){background:var(--night-raised)!important;border-color:var(--night-line)!important;color:var(--night-accent)!important}
html[data-theme=dark] :is(.footer-invitation h2,.footer-channel-copy bdi,.footer-meta>button,#footer .brand-wordmark>strong){color:var(--night-text)!important}
html[data-theme=dark] :is(.footer-channel-copy small,.footer-meta,.footer-main>div>p,.footer-links>a,.footer-contact span,.footer-bottom,#footer .brand-wordmark>span){color:var(--night-muted)!important;border-color:var(--night-line)!important}
html[data-theme=dark] #footer .om-brand small{color:var(--night-muted)!important}
html[data-theme=dark] :is(.footer-invitation h2 em,.footer-channel-head){color:var(--night-accent)!important}
/* The assistant uses the same readable surfaces as the page, with branch-colored actions. */
html[data-theme=dark] #agc-chat :is(.chat-panel,.chat-body,.chat-editor,.chat-alternatives){background:var(--night-surface)!important;border-color:var(--night-line)!important;color:var(--night-text)!important}
html[data-theme=dark] #agc-chat .chat-compose-actions{background:transparent!important}
html[data-theme=dark] #agc-chat :is(.chat-intro,.chat-welcome,.chat-compose label){color:var(--night-text)!important}
html[data-theme=dark] #agc-chat :is(.chat-intro-note,.chat-status){color:var(--night-muted)!important}
html[data-theme=dark] #agc-chat :is(.chat-topic,.chat-source-card,.chat-handoff,.chat-alternatives a){background:var(--night-raised)!important;border-color:var(--night-line)!important;color:var(--night-accent)!important}
html[data-theme=dark] #agc-chat :is(input,textarea){background:var(--night-bg)!important;border-color:var(--night-line)!important;color:var(--night-text)!important;scrollbar-color:var(--night-line) transparent}
html[data-theme=dark] #agc-chat :is(input,textarea)::placeholder{color:var(--night-muted)!important;opacity:1}
html[data-theme=dark] #agc-chat .chat-message{background:var(--night-raised)!important;color:var(--night-text)!important;border-color:var(--night-line)!important}
html[data-theme=dark] #agc-chat .chat-message.from-visitor{background:var(--night-brand)!important;color:#fff!important}
html[data-theme=dark] #agc-chat .chat-message p{color:inherit!important}
html[data-theme=dark] #agc-chat .chat-message :is(small,time){color:var(--night-muted)!important}
html[data-theme=dark] #agc-chat .chat-message.from-visitor :is(small,time){color:#e1edf1!important}
@media(max-width:700px){
 #header .theme-toggle{width:40px;height:40px;flex-basis:40px}
 html[data-site=ye] #header .header-actions{gap:5px}
 html[data-site=ye] #header .brand.brand-signature{max-width:calc(100% - 133px);min-width:0;gap:8px}
 html[data-site=ye] #header .brand-wordmark>strong{font-size:clamp(14px,3.9vw,18px)}
 html[data-site=ye] #header .brand-wordmark>span{font-size:10px}
 html[data-site=ye] #header .brand .brand-emblem{width:48px;flex-basis:48px}
 html[data-site=om] #header .nav-row{gap:6px}
 html[data-site=om] #header .nav-actions{gap:2px}
 html[data-site=om] #header .om-brand{min-width:0;gap:6px}
 html[data-site=om] #header .om-brand b{font-size:12px}
 html[data-site=om] #header .om-brand small{font-size:10px}
}
@media(max-width:380px){
 html[data-site=ye] #header .brand.brand-signature{max-width:calc(100% - 115px);gap:6px}
 html[data-site=ye] #header .brand .brand-emblem{width:36px;flex-basis:36px}
 html[data-site=ye] #header .brand-wordmark>strong{display:block;max-width:100%;white-space:normal;font-size:14px;line-height:1.45}
 html[data-site=ye] #header .brand-wordmark>span{white-space:normal;font-size:9px}
 html[data-site=om] #header .om-emblem{width:30px;height:30px}
 html[data-site=om] #header .om-brand b{font-size:10px}
 html[data-site=om] #header .om-brand small{font-size:9px}
}
@media(prefers-reduced-motion:reduce){#header .theme-toggle{transition:none}#header .theme-toggle:hover{transform:none}}
