/* ==========================================================================
   Sovereign – Dark mode (Customize → Fonts & Colours → Colour mode)
   Deep evergreen (never flat black), shaded with the logo's lime, amber and orange.
   ========================================================================== */

:root.theme-dark {
	--bg: #0f1d18;
	--bg-2: #14251f;
	--surface: #1a2f28;
	--surface-2: #213a31;
	--fg-rgb: 238 243 236;
	--fg: #eef3ec;
	--fg-2: rgba(238, 243, 236, 0.7);
	--fg-3: rgba(238, 243, 236, 0.48);
	--line: rgba(255, 255, 255, 0.08);
	--line-2: rgba(255, 255, 255, 0.15);
	--paper-line: rgba(255, 255, 255, 0.1);
	--shadow-soft: inset 0 1px 0 rgba(255, 255, 255, 0.06), 0 30px 60px -32px rgba(0, 0, 0, 0.8);
	--accent-ink: var(--lime);
	--grad: linear-gradient(100deg, var(--lime) 0%, var(--amber) 55%, var(--coral) 100%);
	color-scheme: dark;
}

/* ---------- shading: every band gets depth instead of flat black ---------- */
.theme-dark body { background: #0d1915; }
.theme-dark .section,
.theme-dark .cta {
	background:
		radial-gradient(70% 60% at 100% 0%, rgba(143, 239, 10, 0.11), transparent 60%),
		radial-gradient(60% 60% at 0% 100%, rgba(255, 122, 31, 0.08), transparent 60%),
		linear-gradient(180deg, #14251f 0%, #0f1d18 100%);
}
.theme-dark .section:nth-of-type(even) {
	background:
		radial-gradient(70% 60% at 0% 0%, rgba(143, 239, 10, 0.1), transparent 60%),
		radial-gradient(60% 70% at 100% 100%, rgba(255, 122, 31, 0.08), transparent 60%),
		linear-gradient(180deg, #0f1d18 0%, #16281f 100%);
}
.theme-dark .section::after { content: ""; position: absolute; left: 8%; right: 8%; top: 0; height: 1px; background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.09), transparent); pointer-events: none; }
.theme-dark .hero, .theme-dark .page-hero { background: radial-gradient(60% 70% at 85% 10%, rgba(255, 122, 31, 0.14), transparent 60%), radial-gradient(70% 80% at 10% 20%, rgba(143, 239, 10, 0.14), transparent 60%), radial-gradient(120% 85% at 50% 0%, #1d3429 0%, #11211b 55%, #0d1915 100%); }
.theme-dark .caps { background: linear-gradient(180deg, #101d19, #11201b); }
.theme-dark .site-footer { background: radial-gradient(60% 80% at 50% 0%, rgba(143, 239, 10, 0.12), transparent 60%), radial-gradient(50% 70% at 100% 100%, rgba(255, 122, 31, 0.08), transparent 60%), linear-gradient(180deg, #11201b 0%, #0c1813 100%); }
.theme-dark .is-paper { background: linear-gradient(180deg, #172a23, #11201b); color: var(--fg-2); }
.theme-dark .is-paper h1, .theme-dark .is-paper h2, .theme-dark .is-paper h3, .theme-dark .is-paper h4 { color: var(--fg); }
.theme-dark .is-paper .kicker { color: var(--lime); }
.theme-dark .is-paper .grad-text { background: var(--grad); -webkit-background-clip: text; background-clip: text; }
.theme-dark .is-paper [data-split] .grad-text .sw > span { background: var(--grad); -webkit-background-clip: text; background-clip: text; }

/* ---------- cards: lit glass ---------- */
.theme-dark .spot-card, .theme-dark .value-card, .theme-dark .why-card, .theme-dark .mv-card, .theme-dark .story-stat,
.theme-dark .contact-card, .theme-dark .office-card, .theme-dark .job-card, .theme-dark .svc-panel, .theme-dark .hire-steps li,
.theme-dark .ring-card, .theme-dark .is-paper .value-card, .theme-dark .is-paper .office-card, .theme-dark .is-paper .contact-card {
	background: linear-gradient(165deg, rgba(255, 255, 255, 0.075) 0%, rgba(255, 255, 255, 0.02) 55%, rgba(255, 255, 255, 0.01) 100%), #172a23;
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.08), inset 0 1px 0 rgba(255, 255, 255, 0.08), 0 30px 60px -32px rgba(0, 0, 0, 0.85);
}
.theme-dark .card3d:hover, .theme-dark .ring-card:hover { box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--lime) 40%, transparent), inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 40px 80px -30px rgba(0, 0, 0, 0.9), 0 0 60px -30px color-mix(in srgb, var(--lime) 50%, transparent); }
.theme-dark .is-paper .why-icon, .theme-dark .is-paper .office-pin { color: var(--ink); }
.theme-dark .show-tab.is-active { background: linear-gradient(160deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.02)), #182c25; box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--lime) 40%, transparent), 0 30px 60px -30px rgba(0, 0, 0, 0.85); }
.theme-dark .cta-panel { background: radial-gradient(70% 100% at 100% 100%, rgba(143, 239, 10, 0.14), transparent 60%), radial-gradient(60% 80% at 0% 0%, rgba(255, 122, 31, 0.08), transparent 60%), linear-gradient(160deg, #20372d, #152720 60%, #10201a); }
.theme-dark .badge-chip { background: linear-gradient(155deg, #fff, #ecf2e8); color: var(--ink); box-shadow: 0 30px 60px -25px rgba(0, 0, 0, 0.8); }
.theme-dark .badge-chip strong { background: linear-gradient(100deg, var(--green), var(--orange)); -webkit-background-clip: text; background-clip: text; }
.theme-dark .badge-chip span { color: #5a6868; }

/* ---------- header, logos ---------- */
.theme-dark .brand-light { display: block; }
.theme-dark .brand-dark { display: none; }
.theme-dark .footer-logo-dark { display: none; }
.theme-dark .footer-logo-light { display: block; }
.theme-dark .site-header.is-scrolled .header-inner { background: rgba(16, 32, 26, 0.72); border-color: rgba(255, 255, 255, 0.08); box-shadow: 0 20px 50px -20px rgba(0, 0, 0, 0.7); }

/* ---------- forms ---------- */
.theme-dark .sov-form { background: linear-gradient(165deg, rgba(255, 255, 255, 0.07), rgba(255, 255, 255, 0.015)), #152720; box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.08), 0 50px 100px -60px rgba(0, 0, 0, 0.9); }
.theme-dark .field input, .theme-dark .field select, .theme-dark .field textarea { background-color: rgba(0, 0, 0, 0.25); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.1); }
.theme-dark .field input:focus, .theme-dark .field select:focus, .theme-dark .field textarea:focus { background-color: rgba(0, 0, 0, 0.32); }
.theme-dark .field select { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none' stroke='%23eef3ec' stroke-width='1.6'%3E%3Cpath d='m1 1 5 5 5-5'/%3E%3C/svg%3E"); }
.theme-dark .field select option { background: #1a2f28; color: #eef3ec; }
.theme-dark .file-drop { background: rgba(0, 0, 0, 0.2); }
.theme-dark .form-notice.ok { color: var(--lime-2); }
.theme-dark .form-notice.err { color: #ff9c88; }

/* ---------- illustrations: dark glass, white badges ---------- */
.theme-dark .illo::after { background: radial-gradient(closest-side, rgba(0, 0, 0, 0.5), transparent); }
.theme-dark .ui-glass {
	background: linear-gradient(155deg, rgba(255, 255, 255, 0.13) 0%, rgba(255, 255, 255, 0.04) 45%, rgba(255, 255, 255, 0.02) 100%), rgba(20, 38, 31, 0.78);
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.14), inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 4cqw 8cqw -3cqw rgba(0, 0, 0, 0.8);
}
.theme-dark .ui-chip { background: linear-gradient(155deg, rgba(255, 255, 255, 0.97), rgba(236, 242, 232, 0.93)); color: var(--ink); box-shadow: 0 3cqw 7cqw -2cqw rgba(0, 0, 0, 0.65), inset 0 1px 0 #fff; }
.theme-dark .ui-chip small { color: #5a6868; }
.theme-dark .ui-chip-ico { background: var(--ink); color: var(--lime); }
.theme-dark .ui-stack .ui-avatar { box-shadow: 0 0 0 0.5cqw #f3f6ef; }
.theme-dark .v-t2 .ui-stack .ui-avatar { box-shadow: 0 0 0 0.5cqw #1a2f28; }
.theme-dark .ui-meter { background: rgba(255, 255, 255, 0.1); }
.theme-dark .n-links path, .theme-dark .t-links path { stroke: color-mix(in srgb, var(--lime) 60%, transparent); }
.theme-dark .n-ico { color: var(--lime); background: color-mix(in srgb, var(--lime) 14%, transparent); }
.theme-dark .i-verified, .theme-dark .ui-live, .theme-dark .cr-dept, .theme-dark .ct-card .icon { color: var(--lime); }
.theme-dark .ui-live, .theme-dark .cr-dept { background: color-mix(in srgb, var(--lime) 14%, transparent); }
.theme-dark .st-dot { background: #14251f; box-shadow: inset 0 0 0 0.6cqw var(--lime); }
.theme-dark .st-grid { background-color: rgba(0, 0, 0, 0.22); }
.theme-dark .c-steps li span { background: #14251f; }
.theme-dark .t-core { box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--lime) 45%, transparent), 0 0 8cqw -2cqw color-mix(in srgb, var(--lime) 60%, transparent), 0 4cqw 8cqw -3cqw rgba(0, 0, 0, 0.8); }
.theme-dark .s-editor { background: linear-gradient(160deg, #1d2a29, #0d1413); }
