/*
Theme Name: Vigilory X Autonomous Defense Command
Theme URI: https://www.vigiloryx.com/
Author: Launch Support R&D
Description: Aerospace-defense styled WordPress block theme for Vigilory X™, an autonomous cyber defense command platform built around verified identity, signed evidence, governed authority, and bounded response.
Version: 3.3.3
Requires at least: 6.6
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: vigiloryx-command
Tags: full-site-editing, block-patterns, dark, custom-colors, custom-logo, featured-images
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/

:root {
	--vx-black: #060910;
	--vx-black-2: #0a0f18;
	--vx-blue: #0d3b66;
	--vx-blue-bright: #2ca9ff;
	--vx-stealth: #8f9cad;
	--vx-red: #e01e37;
	--vx-white: #f5f7fa;
	--vx-muted: #a3afbf;
	--vx-line: rgba(164,184,206,.16);
	--vx-panel: rgba(13,20,31,.84);
	--vx-shadow: 0 28px 90px rgba(0,0,0,.42);
	--vx-radius: 18px;
}

html { scroll-behavior: smooth; }

body {
	margin: 0;
	background:
		radial-gradient(circle at 50% -10%, rgba(44,169,255,.11), transparent 34rem),
		linear-gradient(180deg,#050810 0%,#070c14 55%,#050810 100%);
	color: var(--vx-white);
	font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	overflow-x: hidden;
}

body::before {
	content: "";
	position: fixed;
	inset: 0;
	pointer-events: none;
	z-index: 0;
	opacity: .17;
	background-image:
		linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
	background-size: 54px 54px;
	mask-image: linear-gradient(to bottom,#000 0%,transparent 82%);
}

a { text-underline-offset: .22em; }
::selection { background: rgba(224,30,55,.35); color: #fff; }

.vigiloryx-shell { position: relative; z-index: 1; }

.vigiloryx-header {
	position: sticky;
	top: 0;
	z-index: 60;
	backdrop-filter: blur(20px);
	-webkit-backdrop-filter: blur(20px);
	background: rgba(5,8,16,.88);
	border-bottom: 1px solid rgba(255,255,255,.08);
}

.vx-brand {
	display: inline-flex;
	align-items: center;
	gap: 13px;
	text-decoration: none;
	color: #fff;
}

.vx-mark {
	width: 38px;
	height: 38px;
	display: inline-grid;
	place-items: center;
	position: relative;
	filter: drop-shadow(0 0 18px rgba(44,169,255,.24));
}
.vx-mark svg { width: 38px; height: 38px; display:block; }

.vx-wordmark {
	font-family: "Arial Narrow", "Roboto Condensed", Inter, sans-serif;
	font-weight: 800;
	letter-spacing: .22em;
	font-size: 15px;
}
.vx-wordmark small {
	display:block;
	margin-top: 3px;
	font: 600 8px/1 ui-monospace, SFMono-Regular, Menlo, monospace;
	letter-spacing: .34em;
	color: var(--vx-muted);
}

.vigiloryx-kicker {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	font: 700 11px/1 ui-monospace, SFMono-Regular, Menlo, monospace;
	text-transform: uppercase;
	letter-spacing: .18em;
	color: #c8d7e7;
}
.vigiloryx-kicker::before {
	content:"";
	width: 24px;
	height: 2px;
	background: var(--vx-red);
	box-shadow: 0 0 10px rgba(224,30,55,.45);
}

.vigiloryx-hero {
	position: relative;
	overflow: hidden;
	min-height: 780px;
	display:flex;
	align-items:center;
	padding-top: clamp(90px,9vw,150px)!important;
	padding-bottom: clamp(90px,10vw,155px)!important;
	background:
		linear-gradient(180deg,rgba(5,8,16,.30),rgba(5,8,16,.94)),
		radial-gradient(circle at 55% 72%, rgba(44,169,255,.18), transparent 26rem);
}

.vigiloryx-hero::before {
	content:"";
	position:absolute;
	width:1100px;
	height:420px;
	left:50%;
	bottom:-250px;
	transform:translateX(-50%);
	border-radius:50%;
	border:1px solid rgba(118,193,255,.48);
	box-shadow:
		0 -14px 42px rgba(44,169,255,.16),
		0 0 0 1px rgba(255,255,255,.03),
		0 0 100px rgba(44,169,255,.10);
}

.vigiloryx-hero::after {
	content:"";
	position:absolute;
	inset:auto 0 0 0;
	height:310px;
	opacity:.35;
	pointer-events:none;
	background:
		radial-gradient(circle at 8% 58%,#45baff 0 2px,transparent 3px),
		radial-gradient(circle at 24% 35%,#e01e37 0 2px,transparent 3px),
		radial-gradient(circle at 45% 62%,#45baff 0 2px,transparent 3px),
		radial-gradient(circle at 67% 41%,#e01e37 0 2px,transparent 3px),
		radial-gradient(circle at 86% 56%,#45baff 0 2px,transparent 3px);
	mask-image:linear-gradient(to top,#000,transparent);
}

.vx-hero-grid {
	display:grid;
	grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);
	gap:clamp(38px,7vw,96px);
	align-items:center;
}

.vx-hero-title {
	margin:24px 0 22px;
	font-family:"Arial Narrow","Roboto Condensed",Inter,sans-serif;
	font-size:clamp(3.7rem,8.6vw,7.9rem);
	line-height:.9;
	font-weight:900;
	letter-spacing:-.055em;
	text-transform:uppercase;
}
.vx-hero-title .vx-outline {
	display:block;
	color:transparent;
	-webkit-text-stroke:1px rgba(232,240,248,.58);
	text-stroke:1px rgba(232,240,248,.58);
}

.vx-hero-copy {
	max-width:780px;
	font-size:clamp(18px,2vw,24px);
	line-height:1.55;
	color:#bac7d4;
}

.vx-mission-row {
	display:flex;
	flex-wrap:wrap;
	gap:12px 20px;
	margin-top:30px;
	font:700 11px/1 ui-monospace, SFMono-Regular, Menlo, monospace;
	letter-spacing:.16em;
	text-transform:uppercase;
	color:#c6d5e2;
}
.vx-mission-row span::after {
	content:"";
	display:inline-block;
	width:4px;height:4px;
	border-radius:50%;
	background:var(--vx-red);
	margin-left:20px;
	vertical-align:2px;
}
.vx-mission-row span:last-child::after{display:none;}

.vx-command-card {
	border:1px solid rgba(150,180,210,.20);
	background:linear-gradient(180deg,rgba(14,22,34,.94),rgba(8,13,21,.90));
	box-shadow:var(--vx-shadow);
	border-radius:16px;
	padding:30px;
	position:relative;
	overflow:hidden;
}
.vx-command-card::before {
	content:"COMMAND STATUS";
	position:absolute;
	top:0;left:0;
	padding:8px 12px;
	background:rgba(224,30,55,.12);
	border-right:1px solid rgba(224,30,55,.25);
	border-bottom:1px solid rgba(224,30,55,.25);
	color:#ff6073;
	font:700 9px ui-monospace,monospace;
	letter-spacing:.17em;
}
.vx-command-card h3 {
	margin-top:38px;
	font-size:1.45rem;
}
.vx-command-list {
	list-style:none;
	padding:0;margin:22px 0 0;
}
.vx-command-list li {
	position:relative;
	padding:12px 0 12px 26px;
	border-bottom:1px solid rgba(255,255,255,.06);
	color:#b8c6d4;
	font-size:14px;
}
.vx-command-list li::before {
	content:"";
	position:absolute;
	left:0;top:17px;
	width:10px;height:2px;
	background:var(--vx-red);
	transform:skewX(-35deg);
}

.vigiloryx-button .wp-block-button__link {
	background:linear-gradient(180deg,#f7f8fa,#dfe6ee)!important;
	color:#08101a!important;
	border:0!important;
	border-radius:4px!important;
	font-weight:800;
	letter-spacing:.08em;
	text-transform:uppercase;
	font-size:12px;
	box-shadow:0 14px 32px rgba(0,0,0,.2);
}
.vigiloryx-button-secondary .wp-block-button__link {
	background:transparent!important;
	color:#dce8f2!important;
	border:1px solid rgba(172,196,218,.24)!important;
}

.vigiloryx-statbar {
	margin-top:54px;
	border-top:1px solid rgba(255,255,255,.10);
	border-bottom:1px solid rgba(255,255,255,.10);
	background:rgba(8,14,23,.54);
}
.vigiloryx-stat {
	padding:25px 25px;
	border-right:1px solid rgba(255,255,255,.08);
}
.vigiloryx-stat:last-child{border-right:0;}
.vigiloryx-stat strong {
	display:block;
	font-family:"Arial Narrow","Roboto Condensed",Inter,sans-serif;
	font-size:42px;
	letter-spacing:-.04em;
}
.vigiloryx-stat span {
	display:block;
	margin-top:7px;
	font:600 10px/1.4 ui-monospace,monospace;
	letter-spacing:.12em;
	text-transform:uppercase;
	color:#8f9cad;
}

.vigiloryx-section {
	position:relative;
	padding-top:clamp(80px,9vw,128px)!important;
	padding-bottom:clamp(80px,9vw,128px)!important;
}
.vigiloryx-section-head {
	max-width:850px;
	margin-bottom:48px!important;
}
.vigiloryx-section-head h2 {
	font-family:"Arial Narrow","Roboto Condensed",Inter,sans-serif;
	text-transform:uppercase;
	letter-spacing:-.04em;
}
.vigiloryx-section-head p { color:var(--vx-muted);font-size:18px; }

.vigiloryx-card {
	height:100%;
	padding:30px;
	border:1px solid var(--vx-line);
	border-radius:10px;
	background:
		linear-gradient(180deg,rgba(16,24,36,.88),rgba(9,14,22,.90));
	position:relative;
	overflow:hidden;
	transition:.25s ease;
}
.vigiloryx-card::before {
	content:"";
	position:absolute;
	top:0;left:0;
	width:54px;height:2px;
	background:var(--vx-red);
}
.vigiloryx-card:hover {
	transform:translateY(-4px);
	border-color:rgba(44,169,255,.28);
	background:linear-gradient(180deg,rgba(17,28,43,.94),rgba(9,14,22,.90));
}
.vigiloryx-card h3 {
	font-family:"Arial Narrow","Roboto Condensed",Inter,sans-serif;
	text-transform:uppercase;
	letter-spacing:.02em;
	margin-top:18px;
}
.vigiloryx-card p { color:var(--vx-muted); }
.vigiloryx-icon {
	width:42px;height:42px;
	display:grid;place-items:center;
	border:1px solid rgba(44,169,255,.22);
	color:#69c2ff;
	font:800 11px ui-monospace,monospace;
	background:rgba(13,59,102,.18);
	clip-path:polygon(12% 0,100% 0,100% 88%,88% 100%,0 100%,0 12%);
}

.vigiloryx-trust-chain {
	display:grid;
	grid-template-columns:repeat(5,minmax(0,1fr));
	gap:10px;
}
.vigiloryx-trust-card {
	position:relative;
	padding:26px 20px;
	border:1px solid var(--vx-line);
	background:rgba(8,14,22,.72);
	min-height:200px;
}
.vigiloryx-trust-card::after {
	content:"";
	position:absolute;
	right:-10px;top:50%;
	width:20px;height:1px;
	background:var(--vx-red);
	z-index:3;
}
.vigiloryx-trust-card:last-child::after{display:none;}
.vigiloryx-step {
	color:#62bdff;
	font:700 10px ui-monospace,monospace;
	letter-spacing:.16em;
}
.vigiloryx-trust-card h3 {
	margin-top:34px;
	text-transform:uppercase;
	font-family:"Arial Narrow","Roboto Condensed",Inter,sans-serif;
}
.vigiloryx-trust-card p{color:#93a2b3;font-size:14px;}

.vigiloryx-console {
	border:1px solid var(--vx-line);
	background:#070c13;
	border-radius:10px;
	box-shadow:var(--vx-shadow);
	overflow:hidden;
}
.vigiloryx-console-bar {
	padding:12px 16px;
	border-bottom:1px solid rgba(255,255,255,.08);
	font:700 9px ui-monospace,monospace;
	letter-spacing:.15em;
	color:#7f8f9e;
}
.vigiloryx-console-body {
	padding:28px;
	font:13px/1.9 ui-monospace,SFMono-Regular,Menlo,monospace;
	color:#a3b3c1;
}
.vigiloryx-console-body .ok{color:#8effb3}
.vigiloryx-console-body .cyan{color:#65c3ff}
.vigiloryx-console-body .amber{color:#ffbd68}
.vigiloryx-console-body .red{color:#ff6276}

.vigiloryx-pill {
	display:inline-flex;
	align-items:center;
	padding:9px 13px;
	border:1px solid var(--vx-line);
	color:#b3c1ce;
	background:rgba(255,255,255,.018);
	font-size:12px;
	letter-spacing:.03em;
}
.vigiloryx-integration-cloud {display:flex;flex-wrap:wrap;gap:8px;}

.vigiloryx-comparison {
	border:1px solid var(--vx-line);
	background:#080d15;
	overflow:auto;
}
.vigiloryx-table {
	width:100%;
	min-width:920px;
	border-collapse:collapse;
	font-size:14px;
}
.vigiloryx-table th,
.vigiloryx-table td {
	padding:18px 18px;
	border-bottom:1px solid rgba(255,255,255,.07);
	text-align:left;
	vertical-align:top;
}
.vigiloryx-table th {
	background:#0b121d;
	font:700 10px ui-monospace,monospace;
	letter-spacing:.14em;
	text-transform:uppercase;
	color:#d5e0ea;
}
.vigiloryx-table td{color:#9dabb9;}
.vigiloryx-table td:nth-child(2){
	background:rgba(13,59,102,.11);
	color:#d9e7f2;
}
.vigiloryx-table .strength{color:#8effb3;font-weight:700;}
.vigiloryx-table .developing{color:#ffbd68;font-weight:700;}

.vigiloryx-note {
	border-left:2px solid var(--vx-red);
	padding:14px 17px;
	background:rgba(224,30,55,.045);
	color:#9eabb8;
	font-size:12px;
}

.vigiloryx-footer {
	border-top:1px solid rgba(255,255,255,.08);
	background:#05080f;
}

@media (max-width: 980px) {
	.vx-hero-grid{grid-template-columns:1fr}
	.vigiloryx-trust-chain{grid-template-columns:1fr 1fr}
	.vigiloryx-trust-card::after{display:none}
}
@media (max-width: 720px) {
	.vx-hero-title{font-size:clamp(3rem,17vw,5.6rem)}
	.vigiloryx-trust-chain{grid-template-columns:1fr}
	.vigiloryx-stat{border-right:0;border-bottom:1px solid rgba(255,255,255,.08)}
}

/* =========================================================
   Mobile hardening — iPhone / narrow viewport corrections
   ========================================================= */

html,
body {
	max-width: 100%;
	overflow-x: hidden;
}

img,
svg {
	max-width: 100%;
	height: auto;
}

.vx-mark svg {
	display: block;
	width: 38px;
	height: 38px;
	max-width: none;
}

.vigiloryx-header .alignwide,
.vigiloryx-hero .alignwide,
.vigiloryx-section .alignwide,
.vigiloryx-footer .alignwide {
	box-sizing: border-box;
}

@media (max-width: 980px) {
	.vx-hero-grid {
		grid-template-columns: minmax(0, 1fr);
		gap: 34px;
	}
	.vx-command-card {
		width: 100%;
		box-sizing: border-box;
	}
	.vigiloryx-trust-chain {
		grid-template-columns: 1fr 1fr;
	}
	.vigiloryx-trust-card::after {
		display: none;
	}
}

@media (max-width: 782px) {
	.vigiloryx-header .alignwide {
		width: min(100% - 28px, 1240px);
	}

	.vx-brand {
		min-width: 0;
		gap: 10px;
	}

	.vx-mark,
	.vx-mark svg {
		width: 34px;
		height: 34px;
		flex: 0 0 34px;
	}

	.vx-wordmark {
		font-size: 13px;
		letter-spacing: .16em;
		white-space: nowrap;
	}

	.vx-wordmark small {
		font-size: 7px;
		letter-spacing: .22em;
		white-space: nowrap;
	}

	.vigiloryx-hero {
		min-height: auto;
		padding-top: 58px !important;
		padding-bottom: 72px !important;
	}

	.vigiloryx-hero .alignwide {
		width: min(100% - 28px, 1240px);
	}

	.vx-hero-grid {
		grid-template-columns: minmax(0,1fr);
		gap: 28px;
	}

	.vigiloryx-kicker {
		font-size: 10px;
		letter-spacing: .12em;
		gap: 8px;
	}

	.vigiloryx-kicker::before {
		width: 18px;
	}

	.vx-hero-title {
		font-size: clamp(3rem, 15vw, 5.2rem);
		line-height: .92;
		letter-spacing: -.045em;
		overflow-wrap: anywhere;
		word-break: normal;
	}

	.vx-hero-title .vx-outline {
		-webkit-text-stroke: 1px rgba(232,240,248,.46);
	}

	.vx-hero-copy {
		font-size: 18px;
		line-height: 1.5;
		max-width: none;
	}

	.vx-mission-row {
		gap: 10px 12px;
		font-size: 10px;
		letter-spacing: .12em;
	}

	.vx-mission-row span::after {
		margin-left: 12px;
	}

	.wp-block-buttons {
		display: grid !important;
		grid-template-columns: 1fr;
		gap: 10px !important;
		width: 100%;
	}

	.wp-block-button,
	.wp-block-button__link {
		width: 100%;
		box-sizing: border-box;
		text-align: center;
	}

	.vx-command-card {
		padding: 26px 20px 20px;
		border-radius: 12px;
	}

	.vx-command-card h3 {
		font-size: 1.25rem;
		margin-top: 32px;
	}

	.vx-command-list li {
		padding: 10px 0 10px 22px;
		font-size: 13px;
	}

	.vigiloryx-statbar.wp-block-columns {
		display: grid !important;
		grid-template-columns: 1fr 1fr !important;
		gap: 0 !important;
		width: 100%;
		margin-top: 34px;
	}

	.vigiloryx-stat {
		padding: 20px 16px;
		border-right: 1px solid rgba(255,255,255,.08);
		border-bottom: 1px solid rgba(255,255,255,.08);
	}

	.vigiloryx-stat:nth-child(2n) {
		border-right: 0;
	}

	.vigiloryx-stat:nth-last-child(-n+2) {
		border-bottom: 0;
	}

	.vigiloryx-stat strong {
		font-size: 32px;
	}

	.vigiloryx-stat span {
		font-size: 9px;
		letter-spacing: .08em;
	}

	.vigiloryx-section {
		padding-top: 64px !important;
		padding-bottom: 64px !important;
	}

	.vigiloryx-section .alignwide,
	.vigiloryx-footer .alignwide {
		width: min(100% - 28px, 1240px);
	}

	.wp-block-columns:not(.vigiloryx-statbar) {
		flex-direction: column;
	}

	.vigiloryx-card {
		padding: 24px 20px;
	}

	.vigiloryx-trust-chain {
		grid-template-columns: 1fr;
	}

	.vigiloryx-comparison {
		margin-left: 0;
		margin-right: 0;
		-webkit-overflow-scrolling: touch;
	}

	.vigiloryx-table {
		min-width: 760px;
	}

	.vigiloryx-console-body {
		padding: 20px;
		font-size: 12px;
		overflow-wrap: anywhere;
	}

	.vigiloryx-footer .wp-block-columns {
		gap: 24px;
	}

	.vigiloryx-footer .has-text-align-right {
		text-align: left !important;
	}
}

@media (max-width: 480px) {
	.vigiloryx-header .alignwide,
	.vigiloryx-hero .alignwide,
	.vigiloryx-section .alignwide,
	.vigiloryx-footer .alignwide {
		width: calc(100% - 24px);
	}

	.vx-mark,
	.vx-mark svg {
		width: 30px;
		height: 30px;
		flex-basis: 30px;
	}

	.vx-wordmark {
		font-size: 12px;
		letter-spacing: .13em;
	}

	.vx-wordmark small {
		font-size: 6px;
		letter-spacing: .17em;
	}

	.vx-hero-title {
		font-size: clamp(2.65rem, 14.5vw, 4.25rem);
	}

	.vx-hero-copy {
		font-size: 17px;
	}

	.vigiloryx-statbar.wp-block-columns {
		grid-template-columns: 1fr !important;
	}

	.vigiloryx-stat {
		border-right: 0 !important;
		border-bottom: 1px solid rgba(255,255,255,.08) !important;
	}

	.vigiloryx-stat:last-child {
		border-bottom: 0 !important;
	}

	.vigiloryx-stat strong {
		font-size: 30px;
	}

	.vigiloryx-section-head h2 {
		font-size: clamp(2rem, 11vw, 3rem);
	}

	.vigiloryx-table {
		min-width: 690px;
	}
}

/* =========================================================
   Expanded Vigilory X Brand / Identity System
   ========================================================= */

.vx-mission-ribbon {
	border-top: 1px solid rgba(255,255,255,.08);
	border-bottom: 1px solid rgba(255,255,255,.08);
	background: linear-gradient(90deg,rgba(13,59,102,.14),rgba(6,9,16,.95),rgba(224,30,55,.08));
}

.vx-mission-ribbon-inner {
	display: grid;
	grid-template-columns: repeat(5,minmax(0,1fr));
}

.vx-mission-ribbon-inner span {
	position: relative;
	padding: 18px 18px 18px 28px;
	border-right: 1px solid rgba(255,255,255,.07);
	color: #aab9c7;
	font: 700 9px/1.45 ui-monospace,SFMono-Regular,Menlo,monospace;
	letter-spacing: .11em;
	text-transform: uppercase;
}

.vx-mission-ribbon-inner span::before {
	content: "";
	position: absolute;
	left: 12px;
	top: 50%;
	width: 8px;
	height: 2px;
	background: var(--vx-red);
	transform: translateY(-50%) skewX(-35deg);
}

.vx-brand-system {
	border-top: 1px solid rgba(255,255,255,.07);
	border-bottom: 1px solid rgba(255,255,255,.07);
}

.vx-brand-grid {
	display: grid;
	grid-template-columns: minmax(0,1.35fr) minmax(0,1fr) minmax(260px,.78fr);
	gap: 12px;
}

.vx-brand-panel,
.vx-clearance-panel,
.vx-design-panel {
	border: 1px solid rgba(156,178,202,.14);
	background:
		linear-gradient(180deg,rgba(16,24,36,.92),rgba(8,13,21,.92));
	min-width: 0;
}

.vx-brand-panel {
	padding: 24px;
}

.vx-clearance-panel {
	padding: 24px;
	background:
		linear-gradient(180deg,rgba(11,27,29,.92),rgba(8,14,20,.96));
}

.vx-panel-label {
	margin-bottom: 20px;
	color: #9eafc0;
	font: 800 9px/1 ui-monospace,SFMono-Regular,Menlo,monospace;
	letter-spacing: .17em;
	text-transform: uppercase;
}

.vx-logo-lockup {
	display: flex;
	align-items: center;
	gap: 20px;
	padding: 20px 0 26px;
	border-bottom: 1px solid rgba(255,255,255,.07);
}

.vx-mark-lg,
.vx-mark-lg svg {
	width: 86px;
	height: 86px;
	flex: 0 0 86px;
}

.vx-brand-title {
	font-family: "Arial Narrow","Roboto Condensed",Inter,sans-serif;
	font-size: clamp(32px,4vw,58px);
	font-weight: 900;
	letter-spacing: .06em;
	line-height: .95;
}

.vx-brand-subtitle {
	margin-top: 8px;
	color: #a8b6c4;
	font: 700 9px ui-monospace,monospace;
	letter-spacing: .28em;
}

.vx-logo-variants {
	display: grid;
	grid-template-columns: repeat(4,1fr);
	gap: 8px;
	padding-top: 18px;
}

.vx-logo-variant {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 6px;
	padding: 10px 6px;
	background: rgba(255,255,255,.018);
}

.vx-logo-variant b {
	font-size: 10px;
	text-transform: uppercase;
}

.vx-logo-variant small {
	color: #748596;
	font-size: 9px;
}

.vx-mini-mark {
	width: 54px;
	height: 54px;
	display: grid;
	place-items: center;
	font-family: "Arial Narrow",sans-serif;
	font-weight: 900;
	font-size: 30px;
	clip-path: polygon(50% 0,100% 20%,82% 100%,50% 82%,18% 100%,0 20%);
}

.vx-fullcolor {
	color: #f5f7fa;
	background: linear-gradient(145deg,#0d3b66,#07101a 64%);
	border: 1px solid #2ca9ff;
}

.vx-white {
	color: #0a0f18;
	background: #f5f7fa;
}

.vx-stealth {
	color: #d0d7df;
	background: #38424d;
}

.vx-icononly {
	color: #f5f7fa;
	background: #07101a;
	border: 2px solid #0d3b66;
}

.vx-story-panel p {
	color: #9aa9b7;
	font-size: 14px;
}

.vx-story-row {
	display: grid;
	grid-template-columns: 1fr auto 1fr auto 1fr;
	gap: 10px;
	align-items: center;
	margin-top: 28px;
}

.vx-story-row > div:not(.vx-story-plus) {
	text-align: center;
}

.vx-story-glyph {
	display: grid;
	place-items: center;
	width: 58px;
	height: 58px;
	margin: 0 auto 10px;
	font-size: 30px;
	color: #dbe4ed;
	border: 1px solid rgba(255,255,255,.12);
	background: rgba(255,255,255,.025);
}

.vx-story-row b {
	display: block;
	font-size: 10px;
	letter-spacing: .1em;
}

.vx-story-row small {
	display: block;
	margin-top: 5px;
	color: #718293;
	font-size: 9px;
	line-height: 1.25;
}

.vx-story-plus {
	color: var(--vx-red);
	font-weight: 900;
}

.vx-mission-tag {
	margin-top: 32px;
	padding-top: 18px;
	border-top: 1px solid rgba(255,255,255,.08);
	color: #c5d4e2;
	font: 700 14px ui-monospace,monospace;
	letter-spacing: .24em;
	text-align: center;
}

.vx-clearance-state {
	margin-bottom: 20px;
	padding: 12px 14px;
	border: 1px solid rgba(78,222,145,.44);
	background: rgba(78,222,145,.06);
	color: #72efa8;
	font: 800 11px ui-monospace,monospace;
	letter-spacing: .09em;
}

.vx-clearance-state span {
	font-size: 18px;
	margin-right: 8px;
}

.vx-clearance-panel ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.vx-clearance-panel li {
	position: relative;
	padding: 9px 0 9px 22px;
	color: #9dacb9;
	font-size: 12px;
	border-bottom: 1px solid rgba(255,255,255,.05);
}

.vx-clearance-panel li::before {
	content: "✓";
	position: absolute;
	left: 0;
	color: #62e99d;
}

.vx-research-note {
	margin-top: 18px;
	color: #687886;
	font-size: 10px;
	line-height: 1.5;
}

.vx-design-system {
	display: grid;
	grid-template-columns: 1fr 1.1fr;
	gap: 12px;
	margin-top: 12px;
}

.vx-design-panel {
	padding: 22px 24px;
}

.vx-swatches {
	display: grid;
	grid-template-columns: repeat(5,1fr);
	gap: 12px;
}

.vx-swatches > div {
	text-align: center;
	min-width: 0;
}

.vx-swatches span {
	display: block;
	height: 52px;
	margin-bottom: 8px;
	border: 1px solid rgba(255,255,255,.12);
	box-shadow: inset 0 0 0 1px rgba(0,0,0,.15);
}

.vx-swatches b,
.vx-swatches small {
	display: block;
	font-size: 9px;
}

.vx-swatches small {
	margin-top: 4px;
	color: #6f8091;
	font-family: ui-monospace,monospace;
}

.vx-type-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 28px;
}

.vx-type-grid small {
	color: #77899a;
	font: 700 8px ui-monospace,monospace;
	letter-spacing: .15em;
}

.vx-type-primary {
	margin: 7px 0;
	font-family: "Arial Narrow","Roboto Condensed",Inter,sans-serif;
	font-weight: 900;
	font-size: 28px;
	letter-spacing: .08em;
}

.vx-type-secondary {
	margin: 7px 0;
	font-size: 22px;
	font-weight: 650;
}

.vx-type-grid p {
	color: #778696;
	font-size: 11px;
	line-height: 1.45;
}

.vx-application-grid {
	display: grid;
	grid-template-columns: repeat(3,1fr);
	gap: 12px;
}

.vx-application-tile {
	position: relative;
	min-height: 270px;
	overflow: hidden;
	border: 1px solid rgba(255,255,255,.10);
	background: #0a1019;
}

.vx-application-tile > span {
	position: absolute;
	left: 14px;
	bottom: 12px;
	z-index: 5;
	color: #a9b7c4;
	font: 700 9px ui-monospace,monospace;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.vx-facility {
	background:
		linear-gradient(160deg,transparent 0 50%,rgba(255,255,255,.025) 50% 51%,transparent 51%),
		linear-gradient(180deg,#151e29,#080d14);
}

.vx-facility::before {
	content: "";
	position: absolute;
	left: -6%;
	top: 27%;
	width: 115%;
	height: 36%;
	background:
		linear-gradient(180deg,#202b38,#111923);
	transform: perspective(600px) rotateX(4deg) skewY(-3deg);
	border-top: 1px solid rgba(255,255,255,.10);
	border-bottom: 1px solid rgba(0,0,0,.8);
}

.vx-application-overlay {
	position: absolute;
	left: 50%;
	top: 44%;
	transform: translate(-50%,-50%);
	z-index: 3;
	display: flex;
	align-items: center;
	gap: 14px;
	white-space: nowrap;
}

.vx-application-mark {
	width: 48px;
	height: 48px;
	display: grid;
	place-items: center;
	color: #f5f7fa;
	font-family: "Arial Narrow",sans-serif;
	font-size: 28px;
	font-weight: 900;
	background: #0d3b66;
	clip-path: polygon(50% 0,100% 25%,78% 100%,50% 82%,22% 100%,0 25%);
}

.vx-application-overlay b {
	display: block;
	font-size: 22px;
	letter-spacing: .1em;
}

.vx-application-overlay small {
	display: block;
	color: #8fa0b0;
	font: 700 7px ui-monospace,monospace;
	letter-spacing: .28em;
}

.vx-field {
	background:
		radial-gradient(circle at 55% 20%,rgba(255,255,255,.06),transparent 30%),
		repeating-linear-gradient(25deg,#14191f 0 7px,#10151a 7px 14px);
}

.vx-patch {
	position: absolute;
	left: 50%;
	top: 46%;
	transform: translate(-50%,-50%);
	width: 160px;
	height: 116px;
	border: 2px solid #525d68;
	border-radius: 12px;
	background: #171d24;
	box-shadow: 0 16px 38px rgba(0,0,0,.5), inset 0 0 0 3px #0b1015;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.vx-patch .vx-application-mark {
	width: 42px;
	height: 42px;
	font-size: 24px;
	margin-bottom: 8px;
	background: #28333f;
}

.vx-patch strong {
	font-size: 15px;
	letter-spacing: .1em;
}

.vx-patch small {
	color: #7f8d9a;
	font: 700 6px ui-monospace,monospace;
	letter-spacing: .2em;
}

.vx-aerospace {
	background:
		radial-gradient(circle at 50% 35%,rgba(44,169,255,.13),transparent 25%),
		linear-gradient(180deg,#0c1520,#101a26 58%,#30291f 100%);
}

.vx-aerospace::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 28%;
	height: 1px;
	background: rgba(255,185,108,.28);
	box-shadow: 0 -10px 40px rgba(255,171,95,.08);
}

.vx-airframe {
	position: absolute;
	left: 50%;
	top: 47%;
	transform: translate(-50%,-50%) rotate(-6deg);
	width: 240px;
	height: 80px;
}

.vx-airframe-body {
	position: absolute;
	left: 28px;
	top: 28px;
	width: 190px;
	height: 28px;
	background: linear-gradient(180deg,#26323d,#10161c);
	border-radius: 70% 35% 40% 60%;
	box-shadow: 0 16px 28px rgba(0,0,0,.42);
}

.vx-airframe-wing {
	position: absolute;
	left: 72px;
	top: 8px;
	width: 128px;
	height: 64px;
	background: linear-gradient(145deg,#1b252f,#0c1117);
	clip-path: polygon(0 45%,100% 0,70% 50%,100% 100%);
}

.vx-airframe-label {
	position: absolute;
	left: 105px;
	top: 34px;
	z-index: 4;
	font: 800 10px "Arial Narrow",sans-serif;
	letter-spacing: .08em;
}

@media (max-width: 980px) {
	.vx-brand-grid {
		grid-template-columns: 1fr 1fr;
	}
	.vx-clearance-panel {
		grid-column: 1 / -1;
	}
	.vx-design-system {
		grid-template-columns: 1fr;
	}
	.vx-application-grid {
		grid-template-columns: 1fr;
	}
	.vx-mission-ribbon-inner {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 782px) {
	.vx-brand-grid {
		grid-template-columns: 1fr;
	}
	.vx-logo-lockup {
		align-items: flex-start;
	}
	.vx-brand-title {
		font-size: 34px;
	}
	.vx-brand-subtitle {
		letter-spacing: .18em;
	}
	.vx-logo-variants {
		grid-template-columns: 1fr 1fr;
	}
	.vx-story-row {
		grid-template-columns: 1fr;
	}
	.vx-story-plus {
		text-align: center;
	}
	.vx-swatches {
		grid-template-columns: repeat(2,1fr);
	}
	.vx-type-grid {
		grid-template-columns: 1fr;
	}
	.vx-mission-ribbon-inner {
		grid-template-columns: 1fr;
	}
	.vx-mission-ribbon-inner span {
		border-right: 0;
		border-bottom: 1px solid rgba(255,255,255,.06);
	}
}


/* =========================================================
   Animated Global Threat Response Visualization
   ========================================================= */

.vx-global-response {
	position: relative;
	overflow: hidden;
	background:
		linear-gradient(180deg,rgba(3,8,15,.96),rgba(7,14,24,.98));
	border-top: 1px solid rgba(255,255,255,.07);
	border-bottom: 1px solid rgba(255,255,255,.07);
	padding: 0 !important;
}

.vx-global-response-inner {
	display: grid;
	grid-template-columns: minmax(0,1.65fr) minmax(330px,.75fr);
	min-height: 430px;
}

.vx-globe-stage {
	position: relative;
	min-height: 430px;
	overflow: hidden;
	background:
		radial-gradient(circle at 50% 82%,rgba(44,169,255,.21),transparent 28%),
		linear-gradient(180deg,#050a12,#07111e);
}

.vx-globe-stage::after {
	content: "";
	position: absolute;
	inset: 0;
	pointer-events: none;
	background: linear-gradient(90deg,transparent 70%,rgba(5,9,15,.45));
}

.vx-globe-horizon {
	position: absolute;
	left: 50%;
	bottom: -235px;
	transform: translateX(-50%);
	width: 1050px;
	height: 500px;
	border-radius: 50%;
	border: 1px solid rgba(103,190,255,.75);
	background:
		radial-gradient(circle at 48% 0%,rgba(84,181,255,.08),transparent 30%),
		linear-gradient(180deg,rgba(10,34,58,.42),rgba(6,17,31,.95));
	box-shadow:
		0 -6px 26px rgba(44,169,255,.25),
		0 -28px 80px rgba(44,169,255,.08);
}

.vx-globe-grid {
	position: absolute;
	left: 50%;
	bottom: -222px;
	transform: translateX(-50%);
	width: 1000px;
	height: 470px;
	border-radius: 50%;
	opacity: .30;
	background:
		repeating-radial-gradient(ellipse at center,transparent 0 40px,rgba(84,184,255,.22) 41px 42px),
		repeating-linear-gradient(75deg,transparent 0 88px,rgba(84,184,255,.16) 89px 90px);
	mask-image: radial-gradient(ellipse at center,#000 0 61%,transparent 63%);
}

.vx-threat-node {
	position: absolute;
	z-index: 6;
	width: 10px;
	height: 10px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	cursor: pointer;
	background: #77efaa;
	color: #77efaa;
	box-shadow: 0 0 0 3px rgba(119,239,170,.12),0 0 18px currentColor;
	transition: background .35s ease,color .35s ease,transform .35s ease,box-shadow .35s ease;
}

.vx-threat-node::before {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	width: 28px;
	height: 28px;
	border: 1px solid currentColor;
	border-radius: 50%;
	transform: translate(-50%,-50%);
	opacity: .25;
	animation: vx-node-pulse 2.3s ease-out infinite;
}

.vx-threat-node.is-threat {
	background: #ff3855;
	color: #ff3855;
	transform: scale(1.28);
	box-shadow: 0 0 0 4px rgba(255,56,85,.12),0 0 28px #ff3855;
}

.vx-threat-node.is-threat::before {
	animation-duration: .75s;
	opacity: .7;
}

.vx-threat-node.is-remediating {
	background: #ffbd68;
	color: #ffbd68;
	box-shadow: 0 0 0 4px rgba(255,189,104,.12),0 0 25px #ffbd68;
}

.vx-threat-node.is-safe {
	background: #77efaa;
	color: #77efaa;
}

@keyframes vx-node-pulse {
	0% { transform:translate(-50%,-50%) scale(.3);opacity:.65; }
	100% { transform:translate(-50%,-50%) scale(1.8);opacity:0; }
}

.vx-node-1 { left: 21%; bottom: 123px; }
.vx-node-2 { left: 38%; bottom: 150px; }
.vx-node-3 { left: 53%; bottom: 125px; }
.vx-node-4 { left: 70%; bottom: 162px; }
.vx-node-5 { left: 83%; bottom: 111px; }
.vx-node-6 { left: 12%; bottom: 177px; }

.vx-link {
	position: absolute;
	z-index: 3;
	height: 1px;
	transform-origin: left center;
	background: linear-gradient(90deg,rgba(59,177,255,.08),rgba(59,177,255,.6),rgba(59,177,255,.08));
	box-shadow: 0 0 8px rgba(44,169,255,.15);
}

.vx-link-1 { left:21%;bottom:128px;width:185px;transform:rotate(-8deg); }
.vx-link-2 { left:38%;bottom:153px;width:175px;transform:rotate(9deg); }
.vx-link-3 { left:53%;bottom:130px;width:190px;transform:rotate(-10deg); }
.vx-link-4 { left:70%;bottom:166px;width:150px;transform:rotate(17deg); }
.vx-link-5 { left:12%;bottom:180px;width:225px;transform:rotate(14deg); }

.vx-globe-caption {
	position: absolute;
	z-index: 8;
	left: 28px;
	top: 28px;
}

.vx-globe-caption span {
	display: block;
	color: #8395a8;
	font: 700 9px ui-monospace,SFMono-Regular,Menlo,monospace;
	letter-spacing: .18em;
}

.vx-globe-caption strong {
	display: block;
	margin-top: 8px;
	color: #7cefab;
	font: 800 14px ui-monospace,SFMono-Regular,Menlo,monospace;
	letter-spacing: .09em;
}

.vx-threat-console {
	position: relative;
	z-index: 10;
	padding: 24px;
	background: rgba(7,12,20,.96);
	border-left: 1px solid rgba(255,255,255,.08);
	min-width: 0;
}

.vx-console-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding-bottom: 16px;
	border-bottom: 1px solid rgba(255,255,255,.08);
	color: #91a1b0;
	font: 700 9px ui-monospace,SFMono-Regular,Menlo,monospace;
	letter-spacing: .14em;
}

.vx-console-live {
	color: #6ceaa2;
	font-size: 8px;
}

.vx-console-live i {
	display: inline-block;
	width: 6px;
	height: 6px;
	margin-right: 6px;
	border-radius: 50%;
	background: #6ceaa2;
	box-shadow: 0 0 10px #6ceaa2;
	animation: vx-live-blink 1.4s ease-in-out infinite;
}

@keyframes vx-live-blink {
	50% { opacity:.3; }
}

.vx-console-summary {
	display: grid;
	grid-template-columns: repeat(3,1fr);
	gap: 8px;
	margin: 16px 0;
}

.vx-console-summary > div {
	padding: 12px;
	border: 1px solid rgba(255,255,255,.06);
	background: rgba(255,255,255,.018);
}

.vx-console-summary small {
	display: block;
	color: #6d7d8b;
	font: 700 7px ui-monospace,monospace;
	letter-spacing: .12em;
}

.vx-console-summary strong {
	display: block;
	margin-top: 6px;
	color: #e7eef5;
	font: 800 18px "Arial Narrow",Inter,sans-serif;
}

.vx-console-log {
	height: 238px;
	overflow: hidden;
	padding: 14px 0;
	border-top: 1px solid rgba(255,255,255,.06);
	border-bottom: 1px solid rgba(255,255,255,.06);
	font: 11px/1.65 ui-monospace,SFMono-Regular,Menlo,monospace;
}

.vx-log-line {
	margin-bottom: 5px;
	color: #91a2b2;
	animation: vx-log-enter .28s ease-out;
}

@keyframes vx-log-enter {
	from { opacity:0; transform:translateY(4px); }
	to { opacity:1; transform:none; }
}

.vx-log-threat { color:#ff6177; }
.vx-log-remediate { color:#ffc879; }
.vx-log-safe { color:#7cefab; }
.vx-log-authority { color:#6ac5ff; }
.vx-log-muted { color:#687786; }

.vx-state-legend {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	margin-top: 16px;
	color: #687786;
	font: 700 8px ui-monospace,monospace;
	letter-spacing: .1em;
}

.vx-state-legend i {
	display: inline-block;
	width: 7px;
	height: 7px;
	margin-right: 5px;
	border-radius: 50%;
	vertical-align: -1px;
}

.vx-dot-safe { background:#77efaa; }
.vx-dot-threat { background:#ff3855; }
.vx-dot-remediate { background:#ffbd68; }

@media (max-width: 980px) {
	.vx-global-response-inner {
		grid-template-columns: 1fr;
	}
	.vx-threat-console {
		border-left: 0;
		border-top: 1px solid rgba(255,255,255,.08);
	}
}

@media (max-width: 782px) {
	.vx-globe-stage {
		min-height: 340px;
	}
	.vx-globe-horizon {
		width: 780px;
		height: 380px;
		bottom: -190px;
	}
	.vx-globe-grid {
		width: 760px;
		height: 360px;
		bottom: -180px;
	}
	.vx-node-1 { left:20%;bottom:95px; }
	.vx-node-2 { left:36%;bottom:118px; }
	.vx-node-3 { left:52%;bottom:98px; }
	.vx-node-4 { left:69%;bottom:125px; }
	.vx-node-5 { left:84%;bottom:88px; }
	.vx-node-6 { left:12%;bottom:137px; }
	.vx-link { display:none; }
	.vx-console-summary {
		grid-template-columns: 1fr 1fr 1fr;
	}
}

@media (max-width: 480px) {
	.vx-globe-stage {
		min-height: 300px;
	}
	.vx-globe-caption {
		left: 16px;
		top: 18px;
	}
	.vx-threat-console {
		padding: 18px 14px;
	}
	.vx-console-header {
		align-items: flex-start;
		gap: 10px;
	}
	.vx-console-summary {
		grid-template-columns: 1fr;
	}
	.vx-console-log {
		height: 225px;
		font-size: 10px;
	}
}


/* =========================================================
   Vigilory X Command Dashboard — concept-matched presentation
   ========================================================= */

.vx-command-hero {
	min-height: auto !important;
	padding: 34px 0 0 !important;
	background:
		radial-gradient(circle at 50% 50%,rgba(10,80,160,.10),transparent 34rem),
		linear-gradient(180deg,#02050b 0%,#040914 100%) !important;
}

.vx-command-hero::before,
.vx-command-hero::after { display:none !important; }

.vx-command-hero-grid {
	display:grid;
	grid-template-columns: 270px minmax(0,1fr) 350px;
	gap: 28px;
	align-items:center;
	position:relative;
	z-index:5;
}

.vx-command-identity {
	align-self:start;
	display:flex;
	flex-direction:column;
	align-items:center;
	padding-top:4px;
}

.vx-command-emblem,
.vx-command-emblem svg {
	width:230px;
	height:230px;
	filter: drop-shadow(0 20px 36px rgba(0,0,0,.6));
}

.vx-command-wordmark {
	text-align:center;
	margin-top:-10px;
}
.vx-command-wordmark strong {
	display:block;
	font-family:"Arial Narrow","Roboto Condensed",Inter,sans-serif;
	font-size:34px;
	line-height:1;
	letter-spacing:.03em;
	font-weight:900;
	background:linear-gradient(180deg,#fff 15%,#9aa5b4 55%,#f7f9fb 100%);
	-webkit-background-clip:text;
	color:transparent;
}
.vx-command-wordmark sup { font-size:10px; color:#fff; -webkit-text-fill-color:#fff; }
.vx-command-wordmark span {
	display:block;
	margin-top:10px;
	font:700 8px ui-monospace,monospace;
	letter-spacing:.30em;
	color:#c6ced7;
}

.vx-command-copy h1 {
	margin:0;
	font-family:"Arial Narrow","Roboto Condensed",Impact,sans-serif;
	text-transform:uppercase;
	line-height:.95;
	letter-spacing:-.035em;
}
.vx-command-copy h1 span,
.vx-command-copy h1 em {
	display:block;
	font-style:normal;
	font-size:clamp(3.1rem,5.1vw,6rem);
}
.vx-command-copy h1 span {
	background:linear-gradient(180deg,#fff 10%,#a8b1bf 57%,#f2f4f7 100%);
	-webkit-background-clip:text;
	color:transparent;
	text-shadow:0 4px 16px rgba(255,255,255,.04);
}
.vx-command-copy h1 em {
	margin-top:12px;
	color:#d8172d;
	text-shadow:0 0 28px rgba(224,30,55,.24);
}

.vx-command-divider {
	position:relative;
	height:18px;
	margin:18px 0 8px;
}
.vx-command-divider::before {
	content:"";
	position:absolute;
	left:0;right:0;top:8px;
	height:1px;
	background:linear-gradient(90deg,transparent,#e01e37 16%,#e01e37 84%,transparent);
}
.vx-command-divider i {
	position:absolute;
	left:50%;top:3px;
	width:10px;height:10px;
	border-radius:50%;
	transform:translateX(-50%);
	background:#fff;
	box-shadow:0 0 8px #fff,0 0 18px #ff2842,0 0 42px #ff2842;
}

.vx-command-cycle,
.vx-command-principles {
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:12px;
	white-space:nowrap;
}
.vx-command-cycle {
	margin-top:8px;
	font:700 clamp(11px,1.45vw,20px) ui-monospace,monospace;
	letter-spacing:.30em;
	color:#f0f3f6;
}
.vx-command-cycle b,
.vx-command-principles b { color:#e01e37; }
.vx-command-principles {
	justify-content:center;
	margin-top:18px;
	font:600 9px ui-monospace,monospace;
	letter-spacing:.20em;
	color:#91a6bd;
}

.vx-command-rail {
	border-left:1px solid rgba(145,167,191,.35);
	padding-left:28px;
}
.vx-command-rail-title {
	margin-bottom:18px;
	color:#2ca9ff;
	font:700 11px ui-monospace,monospace;
	letter-spacing:.09em;
}
.vx-command-rail ul { list-style:none;padding:0;margin:0; }
.vx-command-rail li {
	position:relative;
	padding:8px 0 8px 28px;
	color:#b1becb;
	font-size:14px;
}
.vx-command-rail li::before {
	content:"";
	position:absolute;
	left:2px;top:11px;
	width:14px;height:4px;
	background:#e01e37;
	transform:skewX(-38deg) rotate(-38deg);
	box-shadow:0 0 9px rgba(224,30,55,.28);
}

.vx-earth-network {
	position:relative;
	height:270px;
	margin-top:8px!important;
	background:
		linear-gradient(180deg,rgba(3,7,13,.05),rgba(3,7,13,.18)),
		url("assets/vigiloryx-earth-command.jpg") center 60%/cover no-repeat;
	overflow:hidden;
	border-bottom:1px solid rgba(52,158,255,.20);
}
.vx-earth-network::after {
	content:"";
	position:absolute;inset:0;
	background:linear-gradient(180deg,transparent 0 68%,rgba(3,7,13,.82));
	pointer-events:none;
}
.vx-earth-glow {
	position:absolute;
	left:50%;bottom:-75px;
	width:850px;height:160px;
	transform:translateX(-50%);
	border-radius:50%;
	border-top:1px solid #59b9ff;
	box-shadow:0 -8px 38px rgba(44,169,255,.25);
}
.vx-earth-node {
	position:absolute;
	z-index:4;
	width:8px;height:8px;border-radius:50%;
	background:#28aaff;
	box-shadow:0 0 5px #fff,0 0 16px #2ca9ff;
	animation:vx-earth-node-pulse 2.3s ease-in-out infinite;
}
.vx-earth-node:nth-child(3n) {
	background:#ff334d;
	box-shadow:0 0 5px #fff,0 0 18px #ff334d;
}
@keyframes vx-earth-node-pulse { 50%{transform:scale(1.5);filter:brightness(1.4)}}
.vx-earth-node.n1{left:15%;top:51%}.vx-earth-node.n2{left:31%;top:69%}.vx-earth-node.n3{left:44%;top:49%}
.vx-earth-node.n4{left:60%;top:73%}.vx-earth-node.n5{left:74%;top:45%}.vx-earth-node.n6{left:88%;top:65%}

.vx-mission-deck,
.vx-command-dashboard {
	background:#030812!important;
	padding:0!important;
}
.vx-mission-deck-inner {
	display:grid;
	grid-template-columns:minmax(0,1fr) 285px;
	border:1px solid rgba(73,113,153,.55);
	border-radius:7px;
	background:linear-gradient(180deg,#06101d,#040a12);
	box-shadow:0 10px 40px rgba(0,0,0,.35);
}
.vx-mission-capabilities { padding:16px 18px; }
.vx-authority-deck {
	padding:16px 18px;
	border-left:1px solid rgba(73,113,153,.35);
}
.vx-deck-title {
	color:#1ca7ff;
	font:800 11px ui-monospace,monospace;
	letter-spacing:.06em;
	margin-bottom:14px;
}
.vx-capability-row {
	display:grid;
	grid-template-columns:repeat(6,1fr);
}
.vx-capability {
	display:flex;
	align-items:center;
	gap:11px;
	padding:2px 14px;
	border-right:1px solid rgba(255,255,255,.10);
}
.vx-capability:last-child { border-right:0; }
.vx-capability i {
	width:44px;
	flex:0 0 44px;
	color:#16a9ff;
	font-style:normal;
	font-size:37px;
	text-align:center;
}
.vx-capability b {
	display:block;
	font-size:11px;
	letter-spacing:.06em;
}
.vx-capability small {
	display:block;
	margin-top:5px;
	color:#a1adba;
	font-size:9px;
	line-height:1.3;
}
.vx-authority-deck dl{margin:0}
.vx-authority-deck dl>div{
	display:grid;
	grid-template-columns:30px 1fr;
	gap:7px;
	margin:5px 0;
	font:700 10px ui-monospace,monospace;
	letter-spacing:.08em;
}
.vx-authority-deck dt { color:#1ca7ff; }
.vx-authority-deck dd { margin:0;color:#a8b7c6; }

.vx-command-dashboard { padding:14px 0 0!important; }
.vx-dashboard-grid {
	display:grid;
	grid-template-columns:1.05fr .7fr 1.03fr;
	gap:12px;
}
.vx-dashboard-panel {
	border:1px solid rgba(73,113,153,.55);
	border-radius:7px;
	background:linear-gradient(180deg,#06101d,#040a12);
	overflow:hidden;
	min-width:0;
}
.vx-dashboard-panel>header {
	display:flex;
	justify-content:space-between;
	padding:13px 16px 9px;
	color:#16a9ff;
	font:800 11px ui-monospace,monospace;
	letter-spacing:.06em;
}
.vx-dashboard-panel>header b { color:#ff2741; }

.vx-world-map {
	position:relative;
	height:180px;
	margin:0 12px;
	background:
		radial-gradient(circle at 48% 48%,rgba(24,116,210,.13),transparent 40%),
		linear-gradient(180deg,#06111e,#04101c);
	overflow:hidden;
}
.vx-world-map::before {
	content:"";
	position:absolute;inset:20px 14px 25px;
	opacity:.55;
	background:
		radial-gradient(ellipse at 17% 46%,transparent 0 24px,#0f416a 25px 26px,transparent 27px),
		radial-gradient(ellipse at 42% 39%,transparent 0 30px,#0f416a 31px 32px,transparent 33px),
		radial-gradient(ellipse at 67% 46%,transparent 0 44px,#0f416a 45px 46px,transparent 47px),
		radial-gradient(ellipse at 83% 60%,transparent 0 20px,#0f416a 21px 22px,transparent 23px);
}
.vx-map-grid {
	position:absolute;inset:0;
	background-image:
		linear-gradient(rgba(25,130,220,.08) 1px,transparent 1px),
		linear-gradient(90deg,rgba(25,130,220,.08) 1px,transparent 1px);
	background-size:26px 26px;
}
.vx-map-node {
	position:absolute;width:7px;height:7px;border-radius:50%;z-index:5;
	background:#1ba7ff;box-shadow:0 0 10px currentColor;
}
.vx-map-node.safe{color:#1ba7ff}.vx-map-node.threat{background:#ff334d;color:#ff334d}.vx-map-node.warning{background:#baff58;color:#baff58}
.vx-map-node.m1{left:15%;top:40%}.vx-map-node.m2{left:27%;top:49%}.vx-map-node.m3{left:48%;top:37%}
.vx-map-node.m4{left:63%;top:52%}.vx-map-node.m5{left:74%;top:40%}.vx-map-node.m6{left:87%;top:58%}
.vx-map-arc {
	position:absolute;height:60px;border-top:1px solid #1ba7ff;border-radius:50%;opacity:.7;
}
.vx-map-arc.a1{left:14%;top:44%;width:180px;transform:rotate(-5deg)}
.vx-map-arc.a2{left:42%;top:42%;width:170px;transform:rotate(7deg)}
.vx-map-arc.a3{left:62%;top:48%;width:135px;transform:rotate(-8deg)}
.vx-map-metrics {
	display:grid;
	grid-template-columns:repeat(4,1fr);
	gap:4px;
	padding:8px 10px 10px;
}
.vx-map-metrics>div {
	border:1px solid rgba(74,115,157,.42);
	background:#071322;
	padding:8px;
	text-align:center;
}
.vx-map-metrics strong { display:block;font-size:22px; }
.vx-map-metrics small { display:block;color:#8797a8;font-size:8px;margin-top:3px; }
.vx-map-metrics .danger strong { color:#ff334d; }
.vx-map-metrics .good strong { color:#9df7ba; }

.vx-live-status-list { padding:0 14px; }
.vx-live-status-list>div {
	display:flex;
	justify-content:space-between;
	gap:12px;
	padding:11px 10px;
	border:1px solid rgba(255,255,255,.06);
	border-bottom:0;
	color:#aeb9c5;
	font-size:11px;
}
.vx-live-status-list>div:last-child { border-bottom:1px solid rgba(255,255,255,.06); }
.vx-live-status-list strong { color:#e7eef5;font-weight:600; }
.vx-live-status-list .good { color:#22ff72; }
.vx-console-button {
	display:block;
	margin:14px;
	padding:11px;
	text-align:center;
	text-decoration:none;
	color:#16a9ff;
	border:1px solid #118ee8;
	font:800 10px ui-monospace,monospace;
	letter-spacing:.06em;
}

.vx-event-stream { padding:0 14px 6px; }
.vx-event-stream>div {
	display:grid;
	grid-template-columns:72px 75px 1fr;
	gap:8px;
	align-items:center;
	padding:7px 0;
	border-bottom:1px solid rgba(255,255,255,.07);
	font-size:9px;
}
.vx-event-stream time { color:#65788b; }
.vx-event-stream span { font:800 9px ui-monospace,monospace; }
.vx-event-stream p { margin:0;color:#a7b3c0;font-size:9px;line-height:1.25; }
.vx-event-stream .observe,.vx-event-stream .verify{color:#17aaff}
.vx-event-stream .auth{color:#ffd000}.vx-event-stream .action{color:#ff334d}
.vx-event-stream .check{color:#a7c7e4}.vx-event-stream .safe{color:#19ff70}.vx-event-stream .close{color:#cbd5df}
.vx-event-log-link {
	display:block;text-align:center;text-decoration:none;color:#16a9ff;
	font:800 9px ui-monospace,monospace;letter-spacing:.08em;padding:7px 0 10px;
}

.vx-mission-ready {
	display:grid;
	grid-template-columns:1fr auto 1fr;
	align-items:center;
	gap:24px;
	margin-top:12px!important;
	padding:13px 22px;
	border-top:1px solid rgba(79,116,151,.28);
	background:linear-gradient(90deg,#06101c,#050a12,#06101c);
	color:#c7d1dc;
	font:700 10px ui-monospace,monospace;
	letter-spacing:.18em;
}
.vx-mission-ready>div { display:flex;gap:22px;white-space:nowrap;color:#8b9bac; }
.vx-mission-ready>div b { color:#e01e37; }
.vx-mission-ready>strong { justify-self:end;color:#e7ddd8;font-size:13px; }
.vx-built { white-space:nowrap; }

@media(max-width:1100px){
	.vx-command-hero-grid{grid-template-columns:210px minmax(0,1fr)}
	.vx-command-rail{grid-column:1/-1;border-left:0;border-top:1px solid rgba(145,167,191,.25);padding:18px 0 0}
	.vx-command-rail ul{display:grid;grid-template-columns:repeat(2,1fr)}
	.vx-command-emblem,.vx-command-emblem svg{width:190px;height:190px}
	.vx-dashboard-grid{grid-template-columns:1fr 1fr}
	.vx-event-stream-panel{grid-column:1/-1}
}
@media(max-width:850px){
	.vx-command-hero-grid{grid-template-columns:1fr}
	.vx-command-identity{flex-direction:row;justify-content:center;gap:18px}
	.vx-command-emblem,.vx-command-emblem svg{width:110px;height:110px}
	.vx-command-wordmark{text-align:left}
	.vx-command-copy{text-align:center}
	.vx-command-cycle,.vx-command-principles{justify-content:center;flex-wrap:wrap;white-space:normal}
	.vx-command-rail ul{grid-template-columns:1fr}
	.vx-earth-network{height:220px}
	.vx-mission-deck-inner{grid-template-columns:1fr}
	.vx-authority-deck{border-left:0;border-top:1px solid rgba(73,113,153,.35)}
	.vx-capability-row{grid-template-columns:repeat(3,1fr);gap:16px 0}
	.vx-dashboard-grid{grid-template-columns:1fr}
	.vx-event-stream-panel{grid-column:auto}
	.vx-mission-ready{grid-template-columns:1fr;text-align:center}
	.vx-mission-ready>div{justify-content:center;flex-wrap:wrap}
	.vx-mission-ready>strong{justify-self:center}
}
@media(max-width:520px){
	.vx-command-hero{padding-top:20px!important}
	.vx-command-identity{justify-content:flex-start}
	.vx-command-emblem,.vx-command-emblem svg{width:82px;height:82px}
	.vx-command-wordmark strong{font-size:24px}
	.vx-command-wordmark span{font-size:6px;letter-spacing:.20em}
	.vx-command-copy h1 span,.vx-command-copy h1 em{font-size:clamp(2.4rem,12vw,3.6rem)}
	.vx-command-cycle{font-size:10px;letter-spacing:.16em}
	.vx-command-principles{font-size:8px;letter-spacing:.12em}
	.vx-command-rail li{font-size:12px}
	.vx-earth-network{height:165px}
	.vx-capability-row{grid-template-columns:1fr 1fr}
	.vx-capability{border-right:0}
	.vx-map-metrics{grid-template-columns:1fr 1fr}
	.vx-event-stream>div{grid-template-columns:58px 66px 1fr}
}


/* Vigilory X — final 3D banner */
.vx-final-brand-banner{
	position:relative;width:100%;aspect-ratio:3/2;min-height:520px;max-height:820px;
	background:linear-gradient(180deg,rgba(1,4,9,.02),rgba(1,4,9,.12)),
	url("assets/vigilory-x-command-banner.jpg") center center/cover no-repeat;
	border-bottom:1px solid rgba(44,169,255,.22);overflow:hidden;
}
.vx-final-brand-banner::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 0 72%,rgba(3,8,18,.52) 100%)}
.vx-final-banner-actions{position:absolute;z-index:4;right:clamp(18px,4vw,64px);bottom:clamp(18px,4vw,48px);display:flex;gap:10px}
.vx-final-banner-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;text-decoration:none;text-transform:uppercase;font:800 10px ui-monospace,monospace;letter-spacing:.11em;border-radius:4px}
.vx-final-banner-actions .primary{background:linear-gradient(180deg,#f8fafc,#d8e0e9);color:#07101a}
.vx-final-banner-actions .secondary{border:1px solid rgba(44,169,255,.48);background:rgba(3,9,18,.72);color:#5bc2ff;backdrop-filter:blur(12px)}
@media(max-width:782px){
	.vx-final-brand-banner{min-height:0;aspect-ratio:16/11}
	.vx-final-banner-actions{left:12px;right:12px;bottom:12px;display:grid;grid-template-columns:1fr 1fr}
}
@media(max-width:480px){
	.vx-final-brand-banner{aspect-ratio:4/3;background-position:42% center}
	.vx-final-banner-actions{grid-template-columns:1fr}
}



/* Vigilory X banner asset hardening */
.vx-final-brand-banner{
	position:relative;
	width:100%;
	aspect-ratio:3/2;
	min-height:520px;
	max-height:820px;
	background:#02060d !important;
	overflow:hidden;
	border-bottom:1px solid rgba(44,169,255,.22);
}
.vx-final-banner-media{
	position:absolute;
	inset:0;
	z-index:0;
}
.vx-final-banner-media img{
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
	object-position:center center;
	max-width:none;
}
.vx-final-brand-banner::after{
	z-index:1;
}
.vx-final-banner-actions{
	z-index:4;
}
@media(max-width:782px){
	.vx-final-brand-banner{min-height:0;aspect-ratio:16/11}
	.vx-final-banner-media img{object-position:center center}
}
@media(max-width:480px){
	.vx-final-brand-banner{aspect-ratio:4/3}
	.vx-final-banner-media img{object-position:42% center}
}


/* Product-facing operational architecture */
.vx-ops-grid{
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:12px;
}
.vx-ops-card{
	position:relative;
	padding:28px 24px;
	border:1px solid rgba(118,151,183,.16);
	background:linear-gradient(180deg,rgba(15,24,36,.92),rgba(8,13,21,.94));
	min-height:190px;
}
.vx-ops-card::before{
	content:"";
	position:absolute;
	left:0;top:0;
	width:48px;height:2px;
	background:#e01e37;
}
.vx-ops-card>span{
	color:#2ca9ff;
	font:800 10px ui-monospace,SFMono-Regular,Menlo,monospace;
	letter-spacing:.14em;
}
.vx-ops-card h3{
	margin:28px 0 10px;
	font-family:"Arial Narrow","Roboto Condensed",Inter,sans-serif;
	text-transform:uppercase;
	letter-spacing:.02em;
}
.vx-ops-card p{
	color:#8fa0b1;
	font-size:14px;
}
@media(max-width:900px){
	.vx-ops-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
	.vx-ops-grid{grid-template-columns:1fr}
}


/* =========================================================
   v3.0.3 — Stable document flow
   Header → Hero/Main → Footer. No absolute-position template
   parts and no CSS order manipulation.
   ========================================================= */
html, body {
    margin: 0;
    padding: 0;
}

body {
    display: block !important;
}

header,
main,
footer,
.vigiloryx-header,
.vigiloryx-shell,
.vigiloryx-footer {
    position: relative;
    inset: auto;
    order: initial !important;
    transform: none;
}

.vigiloryx-header {
    z-index: 50;
    width: 100%;
    background: rgba(3, 8, 18, .98);
    border-bottom: 1px solid rgba(82, 133, 180, .22);
}

.vigiloryx-header .alignwide {
    min-height: 72px;
}

.vigiloryx-header .vx-brand {
    display: inline-flex;
}

.vigiloryx-header .wp-block-navigation {
    margin-left: auto;
}

.vx-final-brand-banner {
    margin-top: 0 !important;
}

.vigiloryx-footer {
    clear: both;
    width: 100%;
}

@media (max-width: 782px) {
    .vigiloryx-header .alignwide {
        min-height: 60px;
    }
}


/* =========================================================
   v3.0.5 — Verified homepage flow parity
   Mirrors the tested standalone interactive preview.
   ========================================================= */
body.home {
    display: block !important;
}

body.home > header,
body.home > main,
body.home > footer,
body.home .vigiloryx-header,
body.home .vigiloryx-shell,
body.home .vigiloryx-footer {
    position: relative !important;
    inset: auto !important;
    order: initial !important;
    transform: none !important;
}

body.home .vigiloryx-header {
    z-index: 50;
}

body.home .vx-final-brand-banner {
    margin-top: 0 !important;
}

body.home .vigiloryx-footer {
    clear: both;
}


/* =========================================================
   v3.1.0 — P0 SEO landing pages + Trust Center
   ========================================================= */
.vx-seo-page {
	background:
		radial-gradient(circle at 72% 12%,rgba(30,116,183,.10),transparent 28rem),
		#050a12;
	color:#e8eef5;
	padding:76px 0 32px;
	min-height:70vh;
}
.vx-seo-hero {
	padding:52px 0 46px;
	border-bottom:1px solid rgba(82,133,180,.25);
}
.vx-seo-kicker {
	color:#2ca9ff;
	font:800 11px ui-monospace,SFMono-Regular,Menlo,monospace;
	letter-spacing:.18em;
	margin-bottom:18px;
}
.vx-seo-hero h1 {
	max-width:980px;
	margin:0;
	font-family:"Arial Narrow","Roboto Condensed",Inter,sans-serif;
	font-size:clamp(42px,6vw,78px);
	line-height:.96;
	letter-spacing:-.035em;
	text-transform:uppercase;
	color:#f5f7fa;
}
.vx-seo-hero>p {
	max-width:890px;
	margin:28px 0 0;
	color:#a9b6c4;
	font-size:18px;
	line-height:1.7;
}
.vx-seo-proof {
	display:inline-flex;
	margin-top:28px;
	padding:10px 14px;
	border:1px solid rgba(44,169,255,.35);
	background:rgba(6,18,32,.72);
	color:#9fd8ff;
	font:700 10px ui-monospace,SFMono-Regular,Menlo,monospace;
	letter-spacing:.08em;
	text-transform:uppercase;
}
.vx-seo-grid,.vx-trust-grid {
	display:grid;
	grid-template-columns:repeat(2,minmax(0,1fr));
	gap:14px;
	padding:32px 0;
}
.vx-seo-card,.vx-trust-grid article {
	position:relative;
	min-height:230px;
	padding:30px 28px;
	border:1px solid rgba(97,135,172,.20);
	background:linear-gradient(180deg,rgba(12,23,36,.96),rgba(7,13,22,.96));
}
.vx-seo-card::before,.vx-trust-grid article::before {
	content:"";
	position:absolute;
	left:0;top:0;width:62px;height:2px;
	background:#e01e37;
}
.vx-seo-card>span {
	color:#2ca9ff;
	font:800 10px ui-monospace,monospace;
}
.vx-seo-card h2,.vx-trust-grid h2 {
	margin:30px 0 12px;
	text-transform:uppercase;
	font-family:"Arial Narrow","Roboto Condensed",Inter,sans-serif;
	font-size:22px;
	letter-spacing:.02em;
}
.vx-seo-card p,.vx-trust-grid p {
	margin:0;
	color:#91a2b4;
	line-height:1.65;
}
.vx-seo-next {
	margin-top:12px!important;
	padding:34px 30px;
	border:1px solid rgba(82,133,180,.22);
	background:#07111f;
}
.vx-seo-next h2 { margin-top:0;text-transform:uppercase; }
.vx-seo-next p { color:#9cabb9;max-width:820px; }
.vx-seo-links { display:flex;gap:12px;flex-wrap:wrap;margin-top:22px; }
.vx-seo-link {
	display:inline-block;
	padding:11px 14px;
	border:1px solid rgba(44,169,255,.44);
	color:#5bc2ff;
	text-decoration:none;
	font:800 10px ui-monospace,monospace;
	letter-spacing:.06em;
	text-transform:uppercase;
}
.vx-seo-link:hover { background:#0c2135; }
.vx-trust-warning {
	margin-top:28px;
	padding:15px 18px;
	max-width:900px;
	border-left:3px solid #e0a728;
	background:rgba(224,167,40,.08);
	color:#c8d0d8;
	line-height:1.55;
}
.vx-status {
	display:inline-flex;
	padding:5px 8px;
	border-radius:3px;
	font:800 9px ui-monospace,monospace;
	letter-spacing:.08em;
}
.vx-status-active { color:#79f0a8;background:rgba(34,180,100,.12);border:1px solid rgba(34,180,100,.3); }
.vx-status-roadmap { color:#79caff;background:rgba(44,169,255,.10);border:1px solid rgba(44,169,255,.3); }
.vx-status-scope { color:#ffd979;background:rgba(224,167,40,.10);border:1px solid rgba(224,167,40,.3); }
.vx-status-evaluate { color:#c6b3ff;background:rgba(134,104,220,.10);border:1px solid rgba(134,104,220,.3); }
.vx-footer-nav {
	display:grid;
	grid-template-columns:repeat(2,minmax(0,1fr));
	gap:8px 18px;
}
.vx-footer-nav a {
	color:#9eb0c1;
	text-decoration:none;
	font-size:12px;
}
.vx-footer-nav a:hover { color:#2ca9ff; }
@media(max-width:782px){
	.vx-seo-page{padding-top:40px}
	.vx-seo-hero{padding:34px 0}
	.vx-seo-grid,.vx-trust-grid{grid-template-columns:1fr}
	.vx-seo-card,.vx-trust-grid article{min-height:auto}
	.vx-footer-nav{grid-template-columns:1fr}
}


/* v3.2.0 — authority content layer */
.vx-authority-toc{display:flex;gap:10px 18px;flex-wrap:wrap;align-items:center;padding:22px 0;border-bottom:1px solid rgba(82,133,180,.2)}
.vx-authority-toc strong{width:100%;font:800 10px ui-monospace,monospace;color:#73879a;letter-spacing:.1em;text-transform:uppercase}
.vx-authority-toc a{font-size:12px;color:#8dcfff;text-decoration:none}
.vx-authority-section{display:grid;grid-template-columns:70px minmax(0,1fr);gap:22px;padding:46px 0;border-bottom:1px solid rgba(82,133,180,.17)}
.vx-section-number{font:800 12px ui-monospace,monospace;color:#2ca9ff;padding-top:8px}
.vx-authority-section h2{margin:0 0 18px;font-family:"Arial Narrow","Roboto Condensed",Inter,sans-serif;text-transform:uppercase;font-size:clamp(25px,3vw,38px)}
.vx-authority-section p{max-width:920px;color:#a8b5c3;line-height:1.78;font-size:16px}
.vx-eval{padding:48px 0}.vx-eval h2{font-size:32px;text-transform:uppercase}
.vx-eval-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.vx-eval-grid p{margin:0;padding:22px;border:1px solid rgba(82,133,180,.2);background:#08111d;color:#95a6b7;line-height:1.55}
.vx-eval-grid strong{color:#eef5fb;text-transform:uppercase;font-size:12px}
.vx-sources{margin-top:24px!important;padding:28px;border:1px solid rgba(82,133,180,.2);background:#07101b}
.vx-sources h2{margin-top:0;text-transform:uppercase}.vx-sources p,.vx-sources li{color:#91a2b4;line-height:1.65}.vx-sources a{color:#64c3ff}
.vx-resource-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:34px 0}
.vx-resource-grid>a{display:block;min-height:210px;padding:28px;border:1px solid rgba(82,133,180,.2);background:#08111d;text-decoration:none}
.vx-resource-grid>a:hover{border-color:rgba(44,169,255,.55);background:#0a1725}
.vx-resource-grid span{font:800 9px ui-monospace,monospace;color:#2ca9ff;letter-spacing:.1em}
.vx-resource-grid h2{color:#f1f5f9;text-transform:uppercase}.vx-resource-grid p{color:#91a2b4;line-height:1.6}
@media(max-width:782px){.vx-authority-section{grid-template-columns:1fr;gap:4px}.vx-eval-grid,.vx-resource-grid{grid-template-columns:1fr}}


/* =========================================================
   v3.2.2 — Request Demo conversion flow
   ========================================================= */
.vx-demo-page {
	background:
		radial-gradient(circle at 78% 12%, rgba(44,169,255,.11), transparent 28rem),
		#050a12;
	color:#e8eef5;
	padding:72px 0 54px;
}
.vx-demo-shell {
	display:grid;
	grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);
	gap:30px;
	align-items:start;
}
.vx-demo-copy,
.vx-demo-form {
	border:1px solid rgba(82,133,180,.22);
	background:linear-gradient(180deg,rgba(12,23,36,.97),rgba(6,12,20,.97));
	padding:32px;
}
.vx-demo-copy h1 {
	font-family:"Arial Narrow","Roboto Condensed",Inter,sans-serif;
	text-transform:uppercase;
	font-size:clamp(42px,5vw,68px);
	line-height:.98;
	margin:8px 0 24px;
}
.vx-demo-copy p,
.vx-demo-form p { color:#9eafbf;line-height:1.65; }
.vx-demo-points { display:grid;gap:10px;margin:28px 0 0;padding:0;list-style:none; }
.vx-demo-points li {
	padding:13px 14px;
	border-left:2px solid #2ca9ff;
	background:rgba(44,169,255,.05);
	color:#c4cfda;
}
.vx-demo-form label {
	display:block;
	margin:0 0 7px;
	color:#dbe5ed;
	font:800 10px ui-monospace,monospace;
	letter-spacing:.08em;
	text-transform:uppercase;
}
.vx-demo-form input,
.vx-demo-form select,
.vx-demo-form textarea {
	width:100%;
	padding:12px 13px;
	border:1px solid rgba(117,147,177,.34);
	background:#040a12;
	color:#eef5fb;
	border-radius:4px;
	outline:none;
}
.vx-demo-form input:focus,
.vx-demo-form select:focus,
.vx-demo-form textarea:focus { border-color:#2ca9ff;box-shadow:0 0 0 2px rgba(44,169,255,.08); }
.vx-demo-row { display:grid;grid-template-columns:1fr 1fr;gap:14px; }
.vx-demo-field { margin-bottom:16px; }
.vx-demo-submit {
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:44px;
	padding:0 20px;
	border:1px solid #2ca9ff;
	background:#0c2135;
	color:#eef7ff;
	font-weight:800;
	text-transform:uppercase;
	letter-spacing:.05em;
	cursor:pointer;
}
.vx-demo-submit:hover { background:#11304d; }
.vx-demo-note { font-size:12px!important;color:#72869a!important; }
.vx-demo-status {
	margin-bottom:18px;
	padding:14px 16px;
	border:1px solid rgba(82,133,180,.25);
	background:#07111f;
}
.vx-demo-status.success { border-left:3px solid #4cdb89; }
.vx-demo-status.error { border-left:3px solid #e01e37; }
.vx-hp { position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important; }
@media(max-width:900px){
	.vx-demo-shell{grid-template-columns:1fr}
}
@media(max-width:600px){
	.vx-demo-row{grid-template-columns:1fr}
	.vx-demo-copy,.vx-demo-form{padding:22px}
}


/* =========================================================
   v3.2.3 — Secure Demo / Lead Assurance
   ========================================================= */
.vx-turnstile-wrap { margin: 4px 0 18px; min-height: 65px; }
.vx-demo-security {
	margin: 18px 0;
	padding: 13px 15px;
	border: 1px solid rgba(82,133,180,.24);
	background: rgba(44,169,255,.045);
	color: #9eb0c0;
	font-size: 12px;
	line-height: 1.55;
}
.vx-demo-security strong { color:#dce9f4; }
.vx-security-admin-grid {
	display:grid;
	grid-template-columns:repeat(2,minmax(0,1fr));
	gap:12px;
	margin:14px 0;
}
.vx-security-admin-card {
	padding:13px;
	border:1px solid #ccd0d4;
	background:#fff;
}
@media(max-width:782px){.vx-security-admin-grid{grid-template-columns:1fr}}


/* =========================================================
   v3.3.0 — Integrated Customer Demo Experience
   ========================================================= */
.vx-demo-lab {
	background:
		radial-gradient(circle at 68% 7%, rgba(44,169,255,.11), transparent 30rem),
		#030812;
	color:#e7eef5;
	padding:68px 0 54px;
}
.vx-demo-lab-intro {
	max-width:980px;
	margin:0 auto 28px;
}
.vx-demo-lab-intro h1 {
	margin:10px 0 22px;
	font-family:"Arial Narrow","Roboto Condensed",Inter,sans-serif;
	text-transform:uppercase;
	font-size:clamp(42px,6vw,76px);
	line-height:.96;
}
.vx-demo-lab-intro p { color:#9babb9;line-height:1.7;font-size:17px; }
.vx-demo-safety {
	margin:22px 0;
	padding:13px 16px;
	border-left:3px solid #e0a728;
	background:rgba(224,167,40,.07);
	color:#bcc8d3;
	font-size:13px;
	line-height:1.6;
}
.vx-terminal-wrap {
	border:1px solid rgba(80,132,174,.34);
	background:#02060c;
	box-shadow:0 24px 70px rgba(0,0,0,.45);
	overflow:hidden;
}
.vx-terminal-bar {
	display:flex;
	align-items:center;
	gap:7px;
	padding:10px 13px;
	border-bottom:1px solid rgba(80,132,174,.24);
	background:#07111d;
}
.vx-terminal-dot{width:9px;height:9px;border-radius:50%;display:inline-block}
.vx-terminal-dot.red{background:#e34b59}
.vx-terminal-dot.amber{background:#d8a332}
.vx-terminal-dot.green{background:#43cf83}
.vx-terminal-title {
	margin-left:8px;
	color:#7e93a6;
	font:700 10px ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
	letter-spacing:.08em;
}
.vx-terminal {
	min-height:510px;
	max-height:640px;
	overflow:auto;
	padding:18px;
	font:13px/1.55 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
	color:#cbd6df;
	white-space:pre-wrap;
	word-break:break-word;
}
.vx-terminal .vx-line { display:block; margin:0 0 4px; }
.vx-terminal .vx-info { color:#98aabc; }
.vx-terminal .vx-ok { color:#72e6a2; }
.vx-terminal .vx-warn { color:#f0c45b; }
.vx-terminal .vx-danger { color:#ff6073; }
.vx-terminal .vx-blue { color:#55bcff; }
.vx-terminal .vx-muted { color:#667b8d; }
.vx-terminal-controls {
	display:grid;
	grid-template-columns:repeat(2,minmax(0,1fr));
	gap:14px;
	margin:20px 0;
}
.vx-demo-panel {
	padding:22px;
	border:1px solid rgba(80,132,174,.22);
	background:#07111d;
}
.vx-demo-panel h2 {
	margin:0 0 16px;
	font-size:16px;
	text-transform:uppercase;
}
.vx-demo-field label {
	display:block;
	margin:0 0 6px;
	color:#8296a8;
	font:800 9px ui-monospace,monospace;
	letter-spacing:.08em;
	text-transform:uppercase;
}
.vx-demo-field input,
.vx-demo-field select {
	width:100%;
	margin:0 0 12px;
	padding:10px 11px;
	border:1px solid rgba(80,132,174,.3);
	background:#02070d;
	color:#eaf2f8;
	border-radius:3px;
}
.vx-demo-actions {
	display:flex;
	gap:10px;
	flex-wrap:wrap;
	margin-top:12px;
}
.vx-demo-btn {
	padding:10px 14px;
	border:1px solid #2ca9ff;
	background:#0b2033;
	color:#e9f6ff;
	cursor:pointer;
	font:800 10px ui-monospace,monospace;
	text-transform:uppercase;
	letter-spacing:.06em;
}
.vx-demo-btn:hover { background:#123553; }
.vx-demo-btn.secondary { border-color:#65798b;color:#b7c4cf;background:#09111a; }
.vx-demo-btn.approve { border-color:#39c77b;color:#8df1b6; }
.vx-demo-btn.deny { border-color:#e14a5d;color:#ff93a0; }
.vx-demo-approval {
	display:none;
	margin-top:14px;
	padding:15px;
	border:1px solid rgba(224,167,40,.35);
	background:rgba(224,167,40,.06);
}
.vx-demo-approval.active { display:block; }
.vx-demo-downloads {
	display:flex;
	gap:12px;
	flex-wrap:wrap;
	margin-top:24px;
}
.vx-demo-downloads a {
	text-decoration:none;
}
.vx-demo-progress {
	height:4px;
	background:#08131f;
	border-top:1px solid rgba(80,132,174,.15);
}
.vx-demo-progress span {
	display:block;
	width:0%;
	height:100%;
	background:linear-gradient(90deg,#2ca9ff,#68d8ff);
	transition:width .3s ease;
}
@media(max-width:800px){
	.vx-terminal-controls{grid-template-columns:1fr}
	.vx-terminal{min-height:440px}
}

.vx-demo-inline-link{
	display:inline-flex;
	align-items:center;
	margin:10px 14px 10px 0;
	color:#69c8ff;
	font:800 10px ui-monospace,monospace;
	text-transform:uppercase;
	letter-spacing:.06em;
	text-decoration:none;
}
.vx-demo-inline-link:hover{color:#b9e7ff}


/* =========================================================
   v3.3.1 — Lead Security Checklist UI
   ========================================================= */
.vx-sec-checklist {
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:14px;
	margin:18px 0 24px;
}
.vx-sec-check {
	padding:16px;
	border:1px solid #dcdcde;
	background:#fff;
	border-radius:4px;
}
.vx-sec-check strong {
	display:block;
	margin-bottom:6px;
	font-size:13px;
}
.vx-sec-state {
	display:inline-block;
	margin-top:6px;
	padding:4px 8px;
	border-radius:999px;
	font-size:11px;
	font-weight:700;
}
.vx-sec-state.ok {
	background:#eaf7ef;
	color:#0a6b2d;
}
.vx-sec-state.todo {
	background:#fff7df;
	color:#7a5600;
}
.vx-sec-state.info {
	background:#edf4ff;
	color:#185a9d;
}
@media(max-width:900px){
	.vx-sec-checklist{grid-template-columns:1fr}
}


/* =========================================================
   v3.3.2 — Responsive Homepage Layout Correction
   Desktop-first hero/header/dashboard stabilization.
   ========================================================= */

/* ---------- Global page flow ---------- */
html, body {
	width: 100%;
	max-width: 100%;
	overflow-x: hidden;
}

body.home {
	display: block !important;
	background: #030812;
}

body.home > header,
body.home > main,
body.home > footer,
body.home .vigiloryx-header,
body.home .vigiloryx-shell,
body.home .vigiloryx-footer {
	position: relative !important;
	inset: auto !important;
	order: initial !important;
	transform: none !important;
	width: 100%;
	max-width: 100%;
}

/* ---------- Header / navigation ---------- */
body.home .vigiloryx-header {
	position: relative !important;
	z-index: 50;
	min-height: 78px;
	background: rgba(3, 8, 18, .985);
	border-bottom: 1px solid rgba(72, 122, 165, .28);
}

body.home .vigiloryx-header .alignwide {
	width: min(1520px, calc(100% - 56px)) !important;
	max-width: 1520px !important;
	min-height: 78px;
	margin: 0 auto !important;
	padding: 14px 0 !important;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 28px;
}

body.home .vigiloryx-header .vx-brand {
	display: inline-flex;
	align-items: center;
	gap: 13px;
	flex: 0 0 auto;
	text-decoration: none;
}

body.home .vigiloryx-header .vx-mark {
	width: 46px !important;
	height: 46px !important;
	min-width: 46px;
	display: inline-flex;
}

body.home .vigiloryx-header .vx-mark svg {
	display: block;
	width: 100%;
	height: 100%;
}

body.home .vigiloryx-header .vx-wordmark {
	font-size: 20px !important;
	line-height: 1.05;
	letter-spacing: .07em;
	white-space: nowrap;
}

body.home .vigiloryx-header .vx-wordmark small {
	display: block;
	margin-top: 5px;
	font-size: 8px !important;
	letter-spacing: .22em;
}

body.home .vigiloryx-header .wp-block-navigation {
	margin-left: auto !important;
	font-size: 12px !important;
}

body.home .vigiloryx-header .wp-block-navigation ul {
	gap: clamp(14px, 1.4vw, 24px) !important;
}

body.home .vigiloryx-header .wp-block-navigation a {
	font-size: 11px !important;
	line-height: 1.2;
	white-space: nowrap;
}

/* ---------- Hero: show complete artwork ---------- */
body.home .vx-final-brand-banner {
	position: relative !important;
	margin: 0 !important;
	padding: 0 !important;
	width: 100% !important;
	max-width: none !important;
	min-height: 0 !important;
	overflow: hidden !important;
	background: #030812 !important;
}

body.home .vx-final-brand-banner::before,
body.home .vx-final-brand-banner::after {
	pointer-events: none;
}

body.home .vx-final-brand-banner img,
body.home .vx-final-brand-banner .wp-block-image img {
	display: block !important;
	width: 100% !important;
	height: auto !important;
	max-width: none !important;
	min-height: 0 !important;
	object-fit: contain !important;
	object-position: center top !important;
	margin: 0 !important;
}

body.home .vx-final-brand-banner .wp-block-cover,
body.home .vx-final-brand-banner .wp-block-cover__background,
body.home .vx-final-brand-banner .wp-block-cover__image-background {
	min-height: 0 !important;
	height: auto !important;
}

body.home .vx-final-brand-banner .wp-block-cover__image-background {
	position: relative !important;
	inset: auto !important;
	width: 100% !important;
	height: auto !important;
	object-fit: contain !important;
	object-position: center top !important;
}

/* If the hero uses a CSS background instead of an <img>, preserve full artwork. */
body.home .vx-final-brand-banner[style*="background-image"],
body.home .vx-final-brand-banner .has-background-dim {
	background-size: 100% auto !important;
	background-position: center top !important;
	background-repeat: no-repeat !important;
}

/* ---------- Hero CTA placement ---------- */
body.home .vx-final-brand-banner .wp-block-buttons,
body.home .vx-final-brand-banner .vx-hero-actions,
body.home .vx-final-brand-banner .vx-final-actions {
	position: absolute !important;
	right: clamp(28px, 5vw, 86px) !important;
	bottom: clamp(22px, 4vw, 60px) !important;
	left: auto !important;
	top: auto !important;
	z-index: 10;
	display: flex !important;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 12px !important;
	max-width: 560px;
}

body.home .vx-final-brand-banner .wp-block-button__link,
body.home .vx-final-brand-banner .vx-hero-actions a,
body.home .vx-final-brand-banner .vx-final-actions a {
	min-height: 44px;
	padding: 12px 18px !important;
	font-size: 10px !important;
	letter-spacing: .08em;
	white-space: nowrap;
}

/* ---------- Command/dashboard section ---------- */
body.home .vx-command-dashboard,
body.home .vx-global-threat-response,
body.home .vx-dashboard-shell {
	width: min(1500px, calc(100% - 64px)) !important;
	max-width: 1500px !important;
	margin: 0 auto !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

body.home .vx-command-dashboard {
	padding-top: 30px !important;
	padding-bottom: 34px !important;
}

body.home .vx-command-dashboard .wp-block-columns,
body.home .vx-command-dashboard .vx-dashboard-grid {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: 18px !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
}

body.home .vx-command-dashboard .wp-block-column,
body.home .vx-command-dashboard .vx-panel,
body.home .vx-command-dashboard .vx-command-card {
	min-width: 0 !important;
	width: 100% !important;
	max-width: none !important;
}

body.home .vx-command-dashboard .vx-panel,
body.home .vx-command-dashboard .vx-command-card {
	min-height: 280px;
}

body.home .vx-command-dashboard h2,
body.home .vx-command-dashboard h3 {
	font-size: clamp(17px, 1.35vw, 23px) !important;
}

body.home .vx-command-dashboard p,
body.home .vx-command-dashboard li,
body.home .vx-command-dashboard td,
body.home .vx-command-dashboard th {
	font-size: clamp(11px, .8vw, 14px) !important;
}

/* Prevent legacy scaled-down transforms from shrinking homepage internals. */
body.home .vigiloryx-shell,
body.home .vigiloryx-shell > *,
body.home .vx-final-brand-banner,
body.home .vx-command-dashboard {
	zoom: 1 !important;
	transform: none !important;
}

/* ---------- Very large desktop (1920+) ---------- */
@media (min-width: 1680px) {
	body.home .vigiloryx-header .alignwide {
		width: min(1640px, calc(100% - 80px)) !important;
		max-width: 1640px !important;
	}
	body.home .vigiloryx-header .vx-mark {
		width: 52px !important;
		height: 52px !important;
		min-width: 52px;
	}
	body.home .vigiloryx-header .vx-wordmark {
		font-size: 22px !important;
	}
	body.home .vigiloryx-header .wp-block-navigation a {
		font-size: 12px !important;
	}
	body.home .vx-command-dashboard,
	body.home .vx-global-threat-response,
	body.home .vx-dashboard-shell {
		width: min(1640px, calc(100% - 80px)) !important;
		max-width: 1640px !important;
	}
}

/* ---------- Standard desktop (1366–1679) ---------- */
@media (min-width: 1366px) and (max-width: 1679px) {
	body.home .vigiloryx-header .alignwide {
		width: calc(100% - 52px) !important;
	}
	body.home .vx-command-dashboard,
	body.home .vx-global-threat-response,
	body.home .vx-dashboard-shell {
		width: calc(100% - 56px) !important;
	}
}

/* ---------- Small desktop / landscape tablet (1024–1365) ---------- */
@media (min-width: 1024px) and (max-width: 1365px) {
	body.home .vigiloryx-header {
		min-height: 70px;
	}
	body.home .vigiloryx-header .alignwide {
		width: calc(100% - 36px) !important;
		min-height: 70px;
		gap: 18px;
	}
	body.home .vigiloryx-header .vx-mark {
		width: 40px !important;
		height: 40px !important;
		min-width: 40px;
	}
	body.home .vigiloryx-header .vx-wordmark {
		font-size: 17px !important;
	}
	body.home .vigiloryx-header .vx-wordmark small {
		font-size: 7px !important;
	}
	body.home .vigiloryx-header .wp-block-navigation ul {
		gap: 12px !important;
	}
	body.home .vigiloryx-header .wp-block-navigation a {
		font-size: 9px !important;
	}
	body.home .vx-final-brand-banner .wp-block-buttons,
	body.home .vx-final-brand-banner .vx-hero-actions,
	body.home .vx-final-brand-banner .vx-final-actions {
		right: 28px !important;
		bottom: 24px !important;
	}
	body.home .vx-command-dashboard,
	body.home .vx-global-threat-response,
	body.home .vx-dashboard-shell {
		width: calc(100% - 36px) !important;
	}
	body.home .vx-command-dashboard .wp-block-columns,
	body.home .vx-command-dashboard .vx-dashboard-grid {
		gap: 12px !important;
	}
}

/* ---------- Tablet (768–1023) ---------- */
@media (min-width: 768px) and (max-width: 1023px) {
	body.home .vigiloryx-header {
		min-height: 64px;
	}
	body.home .vigiloryx-header .alignwide {
		width: calc(100% - 28px) !important;
		min-height: 64px;
		padding: 10px 0 !important;
	}
	body.home .vigiloryx-header .vx-mark {
		width: 38px !important;
		height: 38px !important;
		min-width: 38px;
	}
	body.home .vigiloryx-header .vx-wordmark {
		font-size: 16px !important;
	}
	body.home .vigiloryx-header .wp-block-navigation {
		font-size: 10px !important;
	}

	body.home .vx-final-brand-banner .wp-block-buttons,
	body.home .vx-final-brand-banner .vx-hero-actions,
	body.home .vx-final-brand-banner .vx-final-actions {
		position: relative !important;
		right: auto !important;
		bottom: auto !important;
		justify-content: center;
		max-width: none;
		padding: 14px 18px 18px;
		background: #030812;
	}

	body.home .vx-command-dashboard,
	body.home .vx-global-threat-response,
	body.home .vx-dashboard-shell {
		width: calc(100% - 28px) !important;
	}

	body.home .vx-command-dashboard .wp-block-columns,
	body.home .vx-command-dashboard .vx-dashboard-grid {
		grid-template-columns: 1fr 1fr !important;
	}
}

/* ---------- Mobile ---------- */
@media (max-width: 767px) {
	body.home .vigiloryx-header {
		min-height: 60px;
	}
	body.home .vigiloryx-header .alignwide {
		width: calc(100% - 24px) !important;
		min-height: 60px;
		padding: 9px 0 !important;
	}
	body.home .vigiloryx-header .vx-mark {
		width: 36px !important;
		height: 36px !important;
		min-width: 36px;
	}
	body.home .vigiloryx-header .vx-wordmark {
		font-size: 15px !important;
	}
	body.home .vigiloryx-header .vx-wordmark small {
		font-size: 6px !important;
		letter-spacing: .15em;
	}

	body.home .vx-final-brand-banner img,
	body.home .vx-final-brand-banner .wp-block-image img,
	body.home .vx-final-brand-banner .wp-block-cover__image-background {
		width: 100% !important;
		height: auto !important;
		object-fit: contain !important;
		object-position: center top !important;
	}

	body.home .vx-final-brand-banner .wp-block-buttons,
	body.home .vx-final-brand-banner .vx-hero-actions,
	body.home .vx-final-brand-banner .vx-final-actions {
		position: relative !important;
		right: auto !important;
		bottom: auto !important;
		left: auto !important;
		top: auto !important;
		display: grid !important;
		grid-template-columns: 1fr !important;
		padding: 14px 12px 18px;
		background: #030812;
		max-width: none;
	}

	body.home .vx-final-brand-banner .wp-block-button,
	body.home .vx-final-brand-banner .wp-block-button__link,
	body.home .vx-final-brand-banner .vx-hero-actions a,
	body.home .vx-final-brand-banner .vx-final-actions a {
		width: 100% !important;
		text-align: center;
	}

	body.home .vx-command-dashboard,
	body.home .vx-global-threat-response,
	body.home .vx-dashboard-shell {
		width: calc(100% - 24px) !important;
		padding-top: 18px !important;
	}

	body.home .vx-command-dashboard .wp-block-columns,
	body.home .vx-command-dashboard .vx-dashboard-grid {
		grid-template-columns: 1fr !important;
		gap: 12px !important;
	}

	body.home .vx-command-dashboard .vx-panel,
	body.home .vx-command-dashboard .vx-command-card {
		min-height: 0;
	}
}
