/**
 * 8530Cloud — Homepage V2
 *
 * Scope:
 * .c8530-home-v2
 *
 * Loaded on:
 * - Front page
 * - 8530Cloud DEV Home template
 *
 * Live status states:
 * - operational
 * - outage
 * - unknown
 *
 * Keep homepage-specific styling in this file.
 */


/* =========================================================
   01. HOMEPAGE FOUNDATION
   ========================================================= */

.c8530-home-v2 {
	--c8530-home-blue: #159fdd;
	--c8530-home-blue-light: #25afe3;
	--c8530-home-link: #087eb8;
	--c8530-home-link-hover: #065e8b;
	--c8530-home-text: #14233b;
	--c8530-home-soft: #64748b;
	--c8530-home-navy: #132746;
	--c8530-home-dark: #07172b;
	--c8530-home-surface: #f5f7fa;
	--c8530-home-white: #ffffff;

	--c8530-home-green: #22c55e;
	--c8530-home-green-dark: #16884a;
	--c8530-home-red: #ef4444;
	--c8530-home-red-dark: #b91c1c;
	--c8530-home-amber: #f59e0b;
	--c8530-home-amber-dark: #92400e;

	--c8530-home-border: rgba(20, 35, 59, 0.09);
	--c8530-home-border-strong: rgba(20, 35, 59, 0.14);

	--c8530-home-shadow:
		0 24px 70px rgba(7, 23, 43, 0.08);

	--c8530-home-shadow-soft:
		0 14px 40px rgba(7, 23, 43, 0.06);

	--c8530-home-radius-small: 12px;
	--c8530-home-radius-medium: 18px;
	--c8530-home-radius-large: 26px;
	--c8530-home-radius-xl: 32px;

	--c8530-home-width: 1180px;

	position: relative;
	width: 100%;
	margin: 0;
	padding: 0;
	overflow: hidden;
	color: var(--c8530-home-text);
	background: var(--c8530-home-white);
}

.c8530-home-v2 *,
.c8530-home-v2 *::before,
.c8530-home-v2 *::after {
	box-sizing: border-box;
}

.c8530-home-v2 > * {
	position: relative;
}

.c8530-home-v2 .alignwide {
	width: min(
		calc(100% - 48px),
		var(--c8530-home-width)
	);
	max-width: var(--c8530-home-width);
	margin-left: auto;
	margin-right: auto;
}

.c8530-home-v2 h1,
.c8530-home-v2 h2,
.c8530-home-v2 h3,
.c8530-home-v2 p {
	margin-top: 0;
}

.c8530-home-v2 h1,
.c8530-home-v2 h2,
.c8530-home-v2 h3 {
	color: var(--c8530-home-text);
}

.c8530-home-v2 a {
	transition:
		color 180ms ease,
		background-color 180ms ease,
		border-color 180ms ease,
		box-shadow 180ms ease,
		transform 180ms ease;
}

.c8530-home-v2 a:focus-visible,
.c8530-home-v2 button:focus-visible,
.c8530-home-v2 input:focus-visible {
	outline: 3px solid rgba(21, 159, 221, 0.28);
	outline-offset: 3px;
}


/* =========================================================
   02. SHARED HOMEPAGE TYPOGRAPHY
   ========================================================= */

.c8530-home-v2 .c8530-home-eyebrow {
	margin: 0 0 14px;
	color: var(--c8530-home-link);
	font-size: 12px;
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: 0.11em;
	text-transform: uppercase;
}

.c8530-home-v2 section > h2,
.c8530-home-v2 .c8530-home-section-intro h2,
.c8530-home-v2 .c8530-home-info-card h2 {
	margin: 0;
	font-size: clamp(34px, 4.5vw, 56px);
	font-weight: 600;
	line-height: 1.04;
	letter-spacing: -0.045em;
}

.c8530-home-v2 section > h2 + p,
.c8530-home-v2 .c8530-home-info-card h2 + p {
	margin-top: 20px;
}


/* =========================================================
   03. HERO
   ========================================================= */

.c8530-home-v2 .c8530-home-hero {
	position: relative;
	isolation: isolate;
	min-height: 720px;
	padding: 128px 24px 104px;
	background:
		radial-gradient(
			circle at 73% 26%,
			rgba(37, 175, 227, 0.18),
			transparent 31%
		),
		radial-gradient(
			circle at 39% 84%,
			rgba(21, 159, 221, 0.12),
			transparent 28%
		),
		linear-gradient(
			135deg,
			#ffffff 0%,
			#f8fcff 48%,
			#edf8fd 100%
		);
}

.c8530-home-v2 .c8530-home-hero::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	pointer-events: none;
	opacity: 0.28;
	background-image:
		linear-gradient(
			rgba(20, 35, 59, 0.035) 1px,
			transparent 1px
		),
		linear-gradient(
			90deg,
			rgba(20, 35, 59, 0.035) 1px,
			transparent 1px
		);
	background-size: 64px 64px;
	mask-image:
		linear-gradient(
			to bottom,
			black,
			transparent 90%
		);
}

.c8530-home-v2 .c8530-home-hero-grid {
	display: grid;
	grid-template-columns:
		minmax(0, 1.03fr)
		minmax(360px, 0.97fr);
	gap: clamp(58px, 8vw, 112px);
	align-items: center;
}

.c8530-home-v2 .c8530-home-hero-copy {
	max-width: 650px;
}

.c8530-home-v2 .c8530-home-hero-title {
	max-width: 640px;
	margin: 0;
	color: var(--c8530-home-text);
	font-size: clamp(58px, 6.1vw, 86px);
	font-weight: 600;
	line-height: 0.98;
	letter-spacing: -0.058em;
}

.c8530-home-v2 .c8530-home-hero-intro {
	max-width: 600px;
	margin: 28px 0 0;
	color: var(--c8530-home-soft);
	font-size: clamp(18px, 1.7vw, 22px);
	line-height: 1.65;
}

.c8530-home-v2 .c8530-home-hero-buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 34px;
}

.c8530-home-v2 .c8530-home-hero-buttons .wp-block-button {
	margin: 0;
}

.c8530-home-v2
	.c8530-home-hero-buttons
	.wp-block-button__link {
	min-height: 50px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0 22px;
	border-radius: 999px;
	font-size: 14px;
	font-weight: 600;
	line-height: 1;
	text-decoration: none;
}

.c8530-home-v2
	.c8530-home-hero-buttons
	.c8530-button-primary
	.wp-block-button__link {
	border: 1px solid var(--c8530-home-blue);
	color: #ffffff;
	background:
		linear-gradient(
			135deg,
			var(--c8530-home-blue),
			var(--c8530-home-blue-light)
		);
	box-shadow:
		0 10px 26px rgba(21, 159, 221, 0.22);
}

.c8530-home-v2
	.c8530-home-hero-buttons
	.c8530-button-primary
	.wp-block-button__link:hover {
	transform: translateY(-2px);
	box-shadow:
		0 14px 32px rgba(21, 159, 221, 0.28);
}

.c8530-home-v2
	.c8530-home-hero-buttons
	.c8530-button-secondary
	.wp-block-button__link {
	border: 1px solid rgba(20, 35, 59, 0.22);
	color: var(--c8530-home-text);
	background: rgba(255, 255, 255, 0.66);
	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);
}

.c8530-home-v2
	.c8530-home-hero-buttons
	.c8530-button-secondary
	.wp-block-button__link:hover {
	border-color: rgba(21, 159, 221, 0.48);
	color: var(--c8530-home-link);
	background: rgba(255, 255, 255, 0.92);
	transform: translateY(-2px);
}


/* =========================================================
   HERO TRUST / GLOBAL STATUS
   ========================================================= */

.c8530-home-v2 .c8530-home-trust {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px 22px;
	margin-top: 28px;
}

.c8530-home-v2 .c8530-home-trust p {
	margin: 0;
	color: var(--c8530-home-soft);
	font-size: 12px;
	font-weight: 500;
	line-height: 1.4;
}

.c8530-home-v2 .c8530-hero-live-status {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin: 0;
	font-size: 12px;
	font-weight: 600;
	line-height: 1.4;
}

.c8530-home-v2 .c8530-hero-live-dot {
	position: relative;
	display: inline-block;
	flex: 0 0 auto;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #94a3b8;
}

.c8530-home-v2
	.c8530-hero-live-status--operational {
	color: var(--c8530-home-green-dark);
}

.c8530-home-v2
	.c8530-hero-live-status--operational
	.c8530-hero-live-dot {
	background: var(--c8530-home-green);
	box-shadow:
		0 0 0 3px rgba(34, 197, 94, 0.10),
		0 0 12px rgba(34, 197, 94, 0.28);
}

.c8530-home-v2
	.c8530-hero-live-status--operational
	.c8530-hero-live-dot::after {
	content: "";
	position: absolute;
	inset: -4px;
	border: 1px solid rgba(34, 197, 94, 0.46);
	border-radius: 50%;
	animation: c8530-home-status-pulse 2.4s ease-out infinite;
}

.c8530-home-v2
	.c8530-hero-live-status--outage {
	color: var(--c8530-home-red-dark);
}

.c8530-home-v2
	.c8530-hero-live-status--outage
	.c8530-hero-live-dot {
	background: var(--c8530-home-red);
	box-shadow:
		0 0 0 3px rgba(239, 68, 68, 0.10),
		0 0 12px rgba(239, 68, 68, 0.28);
}

.c8530-home-v2
	.c8530-hero-live-status--outage
	.c8530-hero-live-dot::after {
	content: "";
	position: absolute;
	inset: -4px;
	border: 1px solid rgba(239, 68, 68, 0.48);
	border-radius: 50%;
	animation: c8530-home-status-pulse 2.4s ease-out infinite;
}

.c8530-home-v2
	.c8530-hero-live-status--unknown {
	color: var(--c8530-home-amber-dark);
}

.c8530-home-v2
	.c8530-hero-live-status--unknown
	.c8530-hero-live-dot {
	background: var(--c8530-home-amber);
	box-shadow:
		0 0 0 3px rgba(245, 158, 11, 0.10),
		0 0 12px rgba(245, 158, 11, 0.24);
}


/* =========================================================
   04. HERO INFRASTRUCTURE CARD
   ========================================================= */

.c8530-home-v2 .c8530-home-hero-visual {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	min-width: 0;
}

.c8530-home-v2 .c8530-home-hero-visual::before {
	content: "";
	position: absolute;
	width: min(520px, 100%);
	aspect-ratio: 1;
	border-radius: 50%;
	background:
		radial-gradient(
			circle,
			rgba(37, 175, 227, 0.17),
			rgba(21, 159, 221, 0.05) 45%,
			transparent 70%
		);
	filter: blur(8px);
	pointer-events: none;
}

.c8530-home-v2 .c8530-home-server-card {
	position: relative;
	z-index: 1;
	width: min(100%, 500px);
	padding: 34px;
	border: 1px solid rgba(255, 255, 255, 0.76);
	border-radius: var(--c8530-home-radius-xl);
	background:
		linear-gradient(
			145deg,
			rgba(255, 255, 255, 0.82),
			rgba(255, 255, 255, 0.55)
		);
	box-shadow:
		0 30px 80px rgba(7, 23, 43, 0.10),
		inset 0 1px 0 rgba(255, 255, 255, 0.9);
	backdrop-filter: blur(24px);
	-webkit-backdrop-filter: blur(24px);
}

.c8530-home-v2 .c8530-home-card-label {
	margin: 0 0 22px;
	color: var(--c8530-home-text);
	font-size: 14px;
	font-weight: 600;
}

.c8530-home-v2 .c8530-home-status-list {
	overflow: hidden;
	border: 1px solid rgba(20, 35, 59, 0.08);
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.68);
}

.c8530-home-v2 .c8530-home-status-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	min-height: 64px;
	padding: 0 18px;
	border-bottom: 1px solid rgba(20, 35, 59, 0.07);
}

.c8530-home-v2 .c8530-home-status-row:last-child {
	border-bottom: 0;
}

.c8530-home-v2 .c8530-home-status-row > span {
	color: var(--c8530-home-soft);
	font-size: 13px;
}

.c8530-home-v2 .c8530-home-status-row strong {
	display: inline-flex;
	align-items: center;
	justify-content: flex-end;
	gap: 8px;
	font-size: 12px;
	font-weight: 600;
	white-space: nowrap;
}

.c8530-home-v2
	.c8530-home-status-row
	strong
	> span:last-child {
	color: inherit;
	font-size: inherit;
}

.c8530-home-v2 .c8530-home-status-dot {
	position: relative;
	display: inline-block;
	flex: 0 0 auto;
	width: 7px;
	height: 7px;
	margin: 0;
	border-radius: 50%;
	background: #94a3b8;
}


/* HERO STATUS — OPERATIONAL */

.c8530-home-v2
	.c8530-home-status-row--operational
	strong {
	color: var(--c8530-home-green-dark);
}

.c8530-home-v2
	.c8530-home-status-row--operational
	.c8530-home-status-dot {
	background: var(--c8530-home-green);
	box-shadow:
		0 0 0 4px rgba(34, 197, 94, 0.10),
		0 0 12px rgba(34, 197, 94, 0.28);
}

.c8530-home-v2
	.c8530-home-status-row--operational
	.c8530-home-status-dot::after {
	content: "";
	position: absolute;
	inset: -4px;
	border: 1px solid rgba(34, 197, 94, 0.48);
	border-radius: 50%;
	animation: c8530-home-status-pulse 2.4s ease-out infinite;
}


/* HERO STATUS — OUTAGE */

.c8530-home-v2
	.c8530-home-status-row--outage
	strong {
	color: var(--c8530-home-red-dark);
}

.c8530-home-v2
	.c8530-home-status-row--outage
	.c8530-home-status-dot {
	background: var(--c8530-home-red);
	box-shadow:
		0 0 0 4px rgba(239, 68, 68, 0.10),
		0 0 12px rgba(239, 68, 68, 0.30);
}

.c8530-home-v2
	.c8530-home-status-row--outage
	.c8530-home-status-dot::after {
	content: "";
	position: absolute;
	inset: -4px;
	border: 1px solid rgba(239, 68, 68, 0.50);
	border-radius: 50%;
	animation: c8530-home-status-pulse 2.4s ease-out infinite;
}


/* HERO STATUS — UNKNOWN */

.c8530-home-v2
	.c8530-home-status-row--unknown
	strong {
	color: var(--c8530-home-amber-dark);
}

.c8530-home-v2
	.c8530-home-status-row--unknown
	.c8530-home-status-dot {
	background: var(--c8530-home-amber);
	box-shadow:
		0 0 0 4px rgba(245, 158, 11, 0.10),
		0 0 12px rgba(245, 158, 11, 0.24);
}

.c8530-home-v2 .c8530-home-eu-label {
	margin: 22px 0 0;
	color: var(--c8530-home-soft);
	font-size: 10px;
	font-weight: 600;
	letter-spacing: 0.10em;
	text-transform: uppercase;
}


/* =========================================================
   05. DOMAIN SEARCH
   ========================================================= */

.c8530-home-v2 .c8530-home-domain {
	margin-top: -46px;
	padding: 48px;
	z-index: 3;
	border: 1px solid var(--c8530-home-border);
	border-radius: var(--c8530-home-radius-large);
	background: rgba(255, 255, 255, 0.94);
	box-shadow: var(--c8530-home-shadow);
}

.c8530-home-v2 .c8530-home-domain h2 {
	max-width: 720px;
	font-size: clamp(34px, 4vw, 52px);
}

.c8530-home-v2 .c8530-domain-search {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 10px;
	max-width: 760px;
	margin-top: 30px;
	padding: 8px;
	border: 1px solid var(--c8530-home-border-strong);
	border-radius: 999px;
	background: #ffffff;
	box-shadow:
		0 10px 30px rgba(7, 23, 43, 0.05);
}

.c8530-home-v2 .c8530-domain-search input {
	width: 100%;
	min-width: 0;
	height: 52px;
	padding: 0 20px;
	border: 0;
	outline: 0;
	color: var(--c8530-home-text);
	background: transparent;
	font: inherit;
	font-size: 15px;
}

.c8530-home-v2 .c8530-domain-search input::placeholder {
	color: #94a3b8;
}

.c8530-home-v2 .c8530-domain-search button {
	min-width: 132px;
	height: 52px;
	padding: 0 22px;
	border: 0;
	border-radius: 999px;
	color: #ffffff;
	background:
		linear-gradient(
			135deg,
			var(--c8530-home-blue),
			var(--c8530-home-blue-light)
		);
	font: inherit;
	font-size: 14px;
	font-weight: 600;
	cursor: pointer;
	box-shadow:
		0 8px 22px rgba(21, 159, 221, 0.20);
	transition:
		transform 180ms ease,
		box-shadow 180ms ease;
}

.c8530-home-v2 .c8530-domain-search button:hover {
	transform: translateY(-1px);
	box-shadow:
		0 12px 28px rgba(21, 159, 221, 0.27);
}

.c8530-home-v2 .c8530-domain-extensions {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 18px;
}

.c8530-home-v2 .c8530-domain-extensions span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 52px;
	min-height: 34px;
	padding: 6px 12px;
	border: 1px solid var(--c8530-home-border);
	border-radius: 999px;
	color: var(--c8530-home-soft);
	background: var(--c8530-home-surface);
	font-size: 12px;
	font-weight: 600;
}


/* =========================================================
   06. SERVICES
   ========================================================= */

.c8530-home-v2 .c8530-home-services {
	padding: 128px 24px;
	background: #ffffff;
}

.c8530-home-v2 .c8530-home-section-intro {
	margin-bottom: 48px;
}

.c8530-home-v2 .c8530-home-section-intro h2 {
	max-width: 720px;
}

.c8530-home-v2 .c8530-service-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 18px;
}

.c8530-home-v2 .c8530-service-card {
	position: relative;
	display: flex;
	flex-direction: column;
	min-height: 330px;
	padding: 30px;
	overflow: hidden;
	border: 1px solid var(--c8530-home-border);
	border-radius: var(--c8530-home-radius-large);
	background:
		linear-gradient(
			160deg,
			#ffffff,
			#f8fbfd
		);
	box-shadow: var(--c8530-home-shadow-soft);
	transition:
		transform 200ms ease,
		border-color 200ms ease,
		box-shadow 200ms ease;
}

.c8530-home-v2 .c8530-service-card::before {
	content: "";
	position: absolute;
	top: -90px;
	right: -90px;
	width: 190px;
	height: 190px;
	border-radius: 50%;
	background:
		radial-gradient(
			circle,
			rgba(37, 175, 227, 0.12),
			transparent 68%
		);
	pointer-events: none;
}

.c8530-home-v2 .c8530-service-card:hover {
	transform: translateY(-5px);
	border-color: rgba(21, 159, 221, 0.20);
	box-shadow:
		0 24px 60px rgba(7, 23, 43, 0.09);
}

.c8530-home-v2 .c8530-service-card-number {
	position: relative;
	z-index: 1;
	color: var(--c8530-home-blue);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.08em;
}

.c8530-home-v2 .c8530-service-card h3 {
	position: relative;
	z-index: 1;
	margin: 46px 0 14px;
	font-size: 24px;
	font-weight: 600;
	letter-spacing: -0.035em;
}

.c8530-home-v2 .c8530-service-card p {
	position: relative;
	z-index: 1;
	margin: 0 0 28px;
	color: var(--c8530-home-soft);
	font-size: 15px;
	line-height: 1.65;
}

.c8530-home-v2 .c8530-service-card a {
	position: relative;
	z-index: 1;
	margin-top: auto;
	color: var(--c8530-home-link);
	font-size: 14px;
	font-weight: 600;
	text-decoration: none;
}

.c8530-home-v2 .c8530-service-card a:hover {
	color: var(--c8530-home-link-hover);
}


/* =========================================================
   07. INFRASTRUCTURE
   ========================================================= */

.c8530-home-v2 .c8530-home-infrastructure {
	position: relative;
	overflow: hidden;
	padding: clamp(54px, 7vw, 84px);
	border-radius: var(--c8530-home-radius-xl);
	color: rgba(255, 255, 255, 0.78);
	background:
		radial-gradient(
			circle at 82% 12%,
			rgba(37, 175, 227, 0.20),
			transparent 30%
		),
		linear-gradient(
			135deg,
			#0b2743,
			#07172b 68%
		);
	box-shadow:
		0 30px 80px rgba(7, 23, 43, 0.14);
}

.c8530-home-v2 .c8530-home-infrastructure::before {
	content: "";
	position: absolute;
	inset: 0;
	pointer-events: none;
	opacity: 0.15;
	background-image:
		linear-gradient(
			rgba(255, 255, 255, 0.10) 1px,
			transparent 1px
		),
		linear-gradient(
			90deg,
			rgba(255, 255, 255, 0.10) 1px,
			transparent 1px
		);
	background-size: 54px 54px;
}

.c8530-home-v2 .c8530-home-infrastructure > * {
	position: relative;
	z-index: 1;
}

.c8530-home-v2
	.c8530-home-infrastructure
	.c8530-home-eyebrow {
	color: #70d4fa;
}

.c8530-home-v2 .c8530-home-infrastructure h2 {
	max-width: 790px;
	color: #ffffff;
}

.c8530-home-v2
	.c8530-home-infrastructure
	> p:not(.c8530-home-eyebrow) {
	max-width: 700px;
	margin-bottom: 0;
	color: rgba(255, 255, 255, 0.66);
	font-size: 17px;
	line-height: 1.65;
}

.c8530-home-v2 .c8530-infrastructure-map {
	margin-top: 54px;
	padding: 28px;
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 24px;
	background: rgba(255, 255, 255, 0.06);
	backdrop-filter: blur(20px);
	-webkit-backdrop-filter: blur(20px);
}

.c8530-home-v2 .c8530-infrastructure-brand {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	padding-bottom: 24px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.10);
}

.c8530-home-v2 .c8530-infrastructure-brand strong {
	color: #ffffff;
	font-size: 20px;
	font-weight: 600;
}

.c8530-home-v2 .c8530-infrastructure-brand span {
	color: rgba(255, 255, 255, 0.54);
	font-size: 12px;
}


/* =========================================================
   DARK INFRASTRUCTURE LIVE NODES
   ========================================================= */

.c8530-home-v2 .c8530-infrastructure-nodes {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
	margin-top: 24px;
}

.c8530-home-v2 .c8530-infrastructure-nodes > div {
	min-width: 0;
	padding: 22px;
	border: 1px solid rgba(255, 255, 255, 0.10);
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.055);
}

.c8530-home-v2 .c8530-infrastructure-nodes > div > span,
.c8530-home-v2 .c8530-infrastructure-overall > span {
	display: block;
	margin-bottom: 8px;
	color: rgba(255, 255, 255, 0.54);
	font-size: 12px;
}

.c8530-home-v2 .c8530-infrastructure-nodes strong,
.c8530-home-v2 .c8530-infrastructure-overall strong {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 14px;
	font-weight: 600;
}

.c8530-home-v2
	.c8530-infrastructure-nodes
	strong
	> span,
.c8530-home-v2
	.c8530-infrastructure-overall
	strong
	> span {
	display: inline;
	margin: 0;
	color: inherit;
	font-size: inherit;
}

.c8530-home-v2 .c8530-platform-status-dot {
	position: relative;
	display: inline-block !important;
	flex: 0 0 auto;
	width: 7px;
	height: 7px;
	margin: 0 !important;
	border-radius: 50%;
	background: #94a3b8;
}


/* DARK NODE — OPERATIONAL */

.c8530-home-v2
	.c8530-platform-node--operational
	strong,
.c8530-home-v2
	.c8530-infrastructure-overall--operational
	strong {
	color: #71e6a2;
}

.c8530-home-v2
	.c8530-platform-node--operational
	.c8530-platform-status-dot,
.c8530-home-v2
	.c8530-infrastructure-overall--operational
	.c8530-platform-status-dot {
	background: #31d879;
	box-shadow:
		0 0 0 4px rgba(49, 216, 121, 0.10),
		0 0 14px rgba(49, 216, 121, 0.34);
}

.c8530-home-v2
	.c8530-platform-node--operational
	.c8530-platform-status-dot::after,
.c8530-home-v2
	.c8530-infrastructure-overall--operational
	.c8530-platform-status-dot::after {
	content: "";
	position: absolute;
	inset: -4px;
	border: 1px solid rgba(49, 216, 121, 0.52);
	border-radius: 50%;
	animation: c8530-home-status-pulse 2.4s ease-out infinite;
}


/* DARK NODE — OUTAGE */

.c8530-home-v2
	.c8530-platform-node--outage
	strong,
.c8530-home-v2
	.c8530-infrastructure-overall--outage
	strong {
	color: #ff8b8b;
}

.c8530-home-v2
	.c8530-platform-node--outage
	.c8530-platform-status-dot,
.c8530-home-v2
	.c8530-infrastructure-overall--outage
	.c8530-platform-status-dot {
	background: #ff5c5c;
	box-shadow:
		0 0 0 4px rgba(255, 92, 92, 0.10),
		0 0 14px rgba(255, 92, 92, 0.36);
}

.c8530-home-v2
	.c8530-platform-node--outage
	.c8530-platform-status-dot::after,
.c8530-home-v2
	.c8530-infrastructure-overall--outage
	.c8530-platform-status-dot::after {
	content: "";
	position: absolute;
	inset: -4px;
	border: 1px solid rgba(255, 92, 92, 0.56);
	border-radius: 50%;
	animation: c8530-home-status-pulse 2.4s ease-out infinite;
}


/* DARK NODE — UNKNOWN */

.c8530-home-v2
	.c8530-platform-node--unknown
	strong,
.c8530-home-v2
	.c8530-infrastructure-overall--unknown
	strong {
	color: #fbc766;
}

.c8530-home-v2
	.c8530-platform-node--unknown
	.c8530-platform-status-dot,
.c8530-home-v2
	.c8530-infrastructure-overall--unknown
	.c8530-platform-status-dot {
	background: #f59e0b;
	box-shadow:
		0 0 0 4px rgba(245, 158, 11, 0.10),
		0 0 12px rgba(245, 158, 11, 0.28);
}


/* =========================================================
   DARK INFRASTRUCTURE OVERALL
   ========================================================= */

.c8530-home-v2 .c8530-infrastructure-overall {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	margin-top: 12px;
	padding: 20px 22px;
	border: 1px solid rgba(255, 255, 255, 0.10);
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.04);
}

.c8530-home-v2 .c8530-infrastructure-overall > span {
	margin: 0;
}

.c8530-home-v2 .c8530-infrastructure-overall strong {
	font-size: 13px;
}


/* =========================================================
   08. SECURITY + LIVE STATUS
   ========================================================= */

.c8530-home-v2 .c8530-home-info-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
	padding-top: 120px;
	padding-bottom: 120px;
}

.c8530-home-v2 .c8530-home-info-card {
	min-width: 0;
	padding: clamp(34px, 5vw, 54px);
	border: 1px solid var(--c8530-home-border);
	border-radius: var(--c8530-home-radius-large);
	background:
		linear-gradient(
			160deg,
			#ffffff,
			#f8fbfd
		);
	box-shadow: var(--c8530-home-shadow-soft);
}

.c8530-home-v2 .c8530-home-info-card h2 {
	font-size: clamp(31px, 3.5vw, 46px);
}

.c8530-home-v2
	.c8530-home-info-card
	> p:not(.c8530-home-eyebrow) {
	color: var(--c8530-home-soft);
	font-size: 15px;
	line-height: 1.7;
}

.c8530-home-v2 .c8530-home-info-card ul {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
	margin: 30px 0;
	padding: 0;
	list-style: none;
}

.c8530-home-v2 .c8530-home-info-card li {
	padding: 13px 15px;
	border: 1px solid var(--c8530-home-border);
	border-radius: 12px;
	color: var(--c8530-home-text);
	background: #ffffff;
	font-size: 13px;
	font-weight: 500;
}

.c8530-home-v2 .c8530-home-info-card li::before {
	content: "✓";
	margin-right: 8px;
	color: var(--c8530-home-blue);
	font-weight: 700;
}

.c8530-home-v2 .c8530-home-info-card > a {
	color: var(--c8530-home-link);
	font-size: 14px;
	font-weight: 600;
	text-decoration: none;
}

.c8530-home-v2 .c8530-home-info-card > a:hover {
	color: var(--c8530-home-link-hover);
}

.c8530-home-v2 .c8530-home-live-status {
	background:
		radial-gradient(
			circle at 90% 5%,
			rgba(37, 175, 227, 0.10),
			transparent 30%
		),
		linear-gradient(
			160deg,
			#ffffff,
			#f6fbfe
		);
}

.c8530-home-v2
	.c8530-home-live-status
	.c8530-footer-status {
	width: fit-content;
	margin-top: 28px;
}

.c8530-home-v2 .c8530-status-summary {
	margin-top: 28px;
	overflow: hidden;
	border: 1px solid var(--c8530-home-border);
	border-radius: 16px;
	background: rgba(255, 255, 255, 0.72);
}

.c8530-home-v2 .c8530-status-summary > div {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	min-height: 52px;
	padding: 0 16px;
	border-bottom: 1px solid var(--c8530-home-border);
}

.c8530-home-v2
	.c8530-status-summary
	> div:last-child {
	border-bottom: 0;
}

.c8530-home-v2 .c8530-status-summary span {
	color: var(--c8530-home-soft);
	font-size: 12px;
}

.c8530-home-v2 .c8530-status-summary strong {
	color: var(--c8530-home-text);
	font-size: 12px;
	font-weight: 600;
	text-align: right;
}


/* =========================================================
   09. SUPPORT
   ========================================================= */

.c8530-home-v2 .c8530-home-support {
	padding-bottom: 120px;
}

.c8530-home-v2 .c8530-home-support > h2 {
	max-width: 760px;
}

.c8530-home-v2 .c8530-support-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
	margin-top: 44px;
}

.c8530-home-v2 .c8530-support-card {
	display: flex;
	flex-direction: column;
	min-height: 290px;
	padding: 30px;
	border: 1px solid var(--c8530-home-border);
	border-radius: var(--c8530-home-radius-large);
	background: #ffffff;
	box-shadow: var(--c8530-home-shadow-soft);
	transition:
		transform 200ms ease,
		border-color 200ms ease,
		box-shadow 200ms ease;
}

.c8530-home-v2 .c8530-support-card:hover {
	transform: translateY(-4px);
	border-color: rgba(21, 159, 221, 0.20);
	box-shadow:
		0 22px 56px rgba(7, 23, 43, 0.09);
}

.c8530-home-v2 .c8530-support-card > span {
	color: var(--c8530-home-blue);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.08em;
}

.c8530-home-v2 .c8530-support-card h3 {
	margin: 34px 0 12px;
	font-size: 24px;
	font-weight: 600;
	letter-spacing: -0.035em;
}

.c8530-home-v2 .c8530-support-card p {
	margin-bottom: 26px;
	color: var(--c8530-home-soft);
	font-size: 14px;
	line-height: 1.65;
}

.c8530-home-v2 .c8530-support-card a {
	margin-top: auto;
	color: var(--c8530-home-link);
	font-size: 14px;
	font-weight: 600;
	text-decoration: none;
}

.c8530-home-v2 .c8530-support-card a:hover {
	color: var(--c8530-home-link-hover);
}


/* =========================================================
   10. FINAL CTA
   ========================================================= */

.c8530-home-v2 .c8530-home-final-cta {
	margin-bottom: 120px;
	padding: clamp(54px, 8vw, 88px);
	overflow: hidden;
	border-radius: var(--c8530-home-radius-xl);
	text-align: center;
	background:
		radial-gradient(
			circle at 15% 20%,
			rgba(37, 175, 227, 0.20),
			transparent 28%
		),
		radial-gradient(
			circle at 88% 80%,
			rgba(21, 159, 221, 0.18),
			transparent 30%
		),
		linear-gradient(
			135deg,
			#0c2b49,
			#07172b
		);
	box-shadow:
		0 30px 80px rgba(7, 23, 43, 0.14);
}

.c8530-home-v2
	.c8530-home-final-cta
	.c8530-home-eyebrow {
	color: #73d7fa;
}

.c8530-home-v2 .c8530-home-final-cta h2 {
	max-width: 760px;
	margin-left: auto;
	margin-right: auto;
	color: #ffffff;
}

.c8530-home-v2
	.c8530-home-final-cta
	> p:not(.c8530-home-eyebrow) {
	max-width: 640px;
	margin: 20px auto 0;
	color: rgba(255, 255, 255, 0.67);
	font-size: 17px;
	line-height: 1.65;
}

.c8530-home-v2
	.c8530-home-final-cta
	.wp-block-buttons {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 32px;
}

.c8530-home-v2
	.c8530-home-final-cta
	.wp-block-button__link {
	min-height: 50px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0 22px;
	border-radius: 999px;
	font-size: 14px;
	font-weight: 600;
	line-height: 1;
	text-decoration: none;
}

.c8530-home-v2
	.c8530-home-final-cta
	.c8530-button-primary
	.wp-block-button__link {
	border: 1px solid #ffffff;
	color: var(--c8530-home-text);
	background: #ffffff;
}

.c8530-home-v2
	.c8530-home-final-cta
	.c8530-button-primary
	.wp-block-button__link:hover {
	transform: translateY(-2px);
	box-shadow:
		0 12px 30px rgba(0, 0, 0, 0.16);
}

.c8530-home-v2
	.c8530-home-final-cta
	.c8530-button-secondary
	.wp-block-button__link {
	border: 1px solid rgba(255, 255, 255, 0.32);
	color: #ffffff;
	background: rgba(255, 255, 255, 0.08);
}

.c8530-home-v2
	.c8530-home-final-cta
	.c8530-button-secondary
	.wp-block-button__link:hover {
	border-color: rgba(255, 255, 255, 0.55);
	background: rgba(255, 255, 255, 0.13);
	transform: translateY(-2px);
}


/* =========================================================
   STATUS PULSE
   ========================================================= */

@keyframes c8530-home-status-pulse {
	0% {
		transform: scale(0.75);
		opacity: 0.9;
	}

	70% {
		transform: scale(1.55);
		opacity: 0;
	}

	100% {
		transform: scale(1.55);
		opacity: 0;
	}
}


/* =========================================================
   11. TABLET
   ========================================================= */

@media (max-width: 1024px) {

	.c8530-home-v2 .c8530-home-hero {
		min-height: auto;
		padding-top: 104px;
		padding-bottom: 100px;
	}

	.c8530-home-v2 .c8530-home-hero-grid {
		grid-template-columns: 1fr;
		gap: 58px;
	}

	.c8530-home-v2 .c8530-home-hero-copy {
		max-width: 760px;
	}

	.c8530-home-v2 .c8530-home-hero-title {
		max-width: 760px;
	}

	.c8530-home-v2 .c8530-home-hero-visual {
		justify-content: flex-start;
	}

	.c8530-home-v2 .c8530-home-server-card {
		width: min(100%, 680px);
	}

	.c8530-home-v2 .c8530-service-grid {
		grid-template-columns:
			repeat(2, minmax(0, 1fr));
	}

	.c8530-home-v2 .c8530-home-info-grid {
		grid-template-columns: 1fr;
	}

	.c8530-home-v2 .c8530-support-grid {
		grid-template-columns: 1fr;
	}

	.c8530-home-v2 .c8530-support-card {
		min-height: 0;
	}
}


/* =========================================================
   12. MOBILE
   ========================================================= */

@media (max-width: 767px) {

	.c8530-home-v2 .alignwide {
		width: min(
			calc(100% - 32px),
			1180px
		);
	}

	.c8530-home-v2 .c8530-home-hero {
		padding:
			86px
			16px
			78px;
	}

	.c8530-home-v2 .c8530-home-hero-grid {
		gap: 46px;
	}

	.c8530-home-v2 .c8530-home-hero-title {
		font-size: clamp(46px, 13vw, 66px);
		line-height: 0.99;
	}

	.c8530-home-v2 .c8530-home-hero-intro {
		margin-top: 22px;
		font-size: 17px;
	}

	.c8530-home-v2 .c8530-home-hero-buttons {
		flex-direction: column;
		align-items: stretch;
	}

	.c8530-home-v2
		.c8530-home-hero-buttons
		.wp-block-button {
		width: 100%;
	}

	.c8530-home-v2
		.c8530-home-hero-buttons
		.wp-block-button__link {
		width: 100%;
	}

	.c8530-home-v2 .c8530-home-trust {
		align-items: flex-start;
		flex-direction: column;
		gap: 8px;
	}

	.c8530-home-v2 .c8530-home-server-card {
		padding: 24px;
		border-radius: 24px;
	}

	.c8530-home-v2 .c8530-home-status-row {
		min-height: 58px;
	}

	.c8530-home-v2 .c8530-home-domain {
		width: calc(100% - 32px) !important;
		margin-top: -32px;
		padding: 30px 24px;
	}

	.c8530-home-v2 .c8530-domain-search {
		grid-template-columns: 1fr;
		border-radius: 20px;
	}

	.c8530-home-v2 .c8530-domain-search button {
		width: 100%;
	}

	.c8530-home-v2 .c8530-home-services {
		padding:
			96px
			16px;
	}

	.c8530-home-v2 .c8530-home-section-intro {
		margin-bottom: 34px;
	}

	.c8530-home-v2 .c8530-service-grid {
		grid-template-columns: 1fr;
	}

	.c8530-home-v2 .c8530-service-card {
		min-height: 0;
	}

	.c8530-home-v2 .c8530-home-infrastructure {
		width: calc(100% - 32px) !important;
		padding: 42px 26px;
		border-radius: 26px;
	}

	.c8530-home-v2 .c8530-infrastructure-brand {
		align-items: flex-start;
		flex-direction: column;
	}

	.c8530-home-v2 .c8530-infrastructure-nodes {
		grid-template-columns: 1fr;
	}

	.c8530-home-v2 .c8530-infrastructure-overall {
		align-items: flex-start;
		flex-direction: column;
	}

	.c8530-home-v2 .c8530-home-info-grid {
		width: calc(100% - 32px) !important;
		padding-top: 90px;
		padding-bottom: 90px;
	}

	.c8530-home-v2 .c8530-home-info-card {
		padding: 30px 24px;
	}

	.c8530-home-v2 .c8530-home-info-card ul {
		grid-template-columns: 1fr;
	}

	.c8530-home-v2 .c8530-home-support {
		width: calc(100% - 32px) !important;
		padding-bottom: 90px;
	}

	.c8530-home-v2 .c8530-support-grid {
		margin-top: 34px;
	}

	.c8530-home-v2 .c8530-home-final-cta {
		width: calc(100% - 32px) !important;
		margin-bottom: 90px;
		padding: 48px 26px;
		border-radius: 26px;
	}

	.c8530-home-v2
		.c8530-home-final-cta
		.wp-block-buttons {
		flex-direction: column;
		align-items: stretch;
	}

	.c8530-home-v2
		.c8530-home-final-cta
		.wp-block-button,
	.c8530-home-v2
		.c8530-home-final-cta
		.wp-block-button__link {
		width: 100%;
	}
}


/* =========================================================
   13. SMALL MOBILE
   ========================================================= */

@media (max-width: 480px) {

	.c8530-home-v2 .alignwide {
		width: min(
			calc(100% - 24px),
			1180px
		);
	}

	.c8530-home-v2 .c8530-home-hero {
		padding:
			78px
			12px
			68px;
	}

	.c8530-home-v2 .c8530-home-hero-title {
		font-size: clamp(40px, 13vw, 54px);
	}

	.c8530-home-v2 .c8530-home-server-card {
		padding: 20px 15px;
	}

	.c8530-home-v2 .c8530-home-status-row {
		gap: 10px;
		padding-left: 14px;
		padding-right: 14px;
	}

	.c8530-home-v2 .c8530-home-status-row strong {
		font-size: 10px;
	}

	.c8530-home-v2 .c8530-home-domain {
		width: calc(100% - 24px) !important;
		padding: 26px 18px;
	}

	.c8530-home-v2 .c8530-home-services {
		padding-left: 12px;
		padding-right: 12px;
	}

	.c8530-home-v2 .c8530-service-card {
		padding: 24px 22px;
	}

	.c8530-home-v2 .c8530-home-infrastructure {
		width: calc(100% - 24px) !important;
		padding: 38px 20px;
	}

	.c8530-home-v2 .c8530-infrastructure-map {
		padding: 18px;
	}

	.c8530-home-v2 .c8530-home-info-grid {
		width: calc(100% - 24px) !important;
	}

	.c8530-home-v2 .c8530-home-info-card {
		padding: 26px 20px;
	}

	.c8530-home-v2 .c8530-home-support {
		width: calc(100% - 24px) !important;
	}

	.c8530-home-v2 .c8530-support-card {
		padding: 26px 22px;
	}

	.c8530-home-v2 .c8530-home-final-cta {
		width: calc(100% - 24px) !important;
		padding: 42px 20px;
	}
}


/* =========================================================
   14. REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

	.c8530-home-v2 *,
	.c8530-home-v2 *::before,
	.c8530-home-v2 *::after {
		scroll-behavior: auto !important;
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
	}

	.c8530-home-v2
		.c8530-home-status-dot::after,
	.c8530-home-v2
		.c8530-hero-live-dot::after,
	.c8530-home-v2
		.c8530-platform-status-dot::after {
		animation: none !important;
	}
}