/* GHMC Site Notice — full-screen Maintenance / Coming Soon page */

html, body.ghmc-sn-screen-body { margin: 0; padding: 0; min-height: 100%; background: #08213f; }

.ghmc-sn.ghmc-sn-screen {
	position: relative; isolation: isolate; overflow: hidden;
	min-height: 100vh; min-height: 100dvh;
	display: grid; place-items: center;
	background:
		radial-gradient(90% 70% at 50% 0%, #1a5799 0%, rgba(26, 87, 153, 0) 70%),
		linear-gradient(180deg, #0f3d72 0%, #0a2a52 55%, #071d38 100%);
	color: #fff;
}

/* Background: sun rays, glow, open-book page lines */
.ghmc-sn .ghmc-sn-screen__bg { position: absolute; inset: 0; z-index: -1; pointer-events: none; }
.ghmc-sn .ghmc-sn-rays {
	position: absolute; left: 50%; top: 34%;
	width: 240vmax; height: 240vmax;
	background: repeating-conic-gradient(from 0deg, rgba(246, 178, 26, .11) 0deg 2.6deg, transparent 2.6deg 12deg);
	-webkit-mask-image: radial-gradient(circle, transparent 0, #000 4%, rgba(0, 0, 0, .55) 14%, transparent 32%);
	mask-image: radial-gradient(circle, transparent 0, #000 4%, rgba(0, 0, 0, .55) 14%, transparent 32%);
	transform: translate(-50%, -50%);
	animation: ghmc-sn-spin 200s linear infinite;
}
.ghmc-sn .ghmc-sn-glow {
	position: absolute; left: 50%; top: 32%;
	width: min(1100px, 140vw); height: 720px;
	transform: translate(-50%, -50%);
	background: radial-gradient(closest-side, rgba(246, 178, 26, .2), rgba(246, 178, 26, .06) 55%, transparent);
}
.ghmc-sn .ghmc-sn-pages {
	position: absolute; left: 0; bottom: 0; width: 100%; height: 34vh; min-height: 200px;
	fill: none; stroke: #fff; stroke-width: 1.3; vector-effect: non-scaling-stroke;
}
.ghmc-sn .ghmc-sn-pages path { vector-effect: non-scaling-stroke; }

/* Layout */
.ghmc-sn .ghmc-sn-screen__wrap {
	width: 100%; box-sizing: border-box;
	display: flex; flex-direction: column; align-items: center; gap: 26px;
	padding: max(48px, env(safe-area-inset-top)) 20px max(30px, env(safe-area-inset-bottom));
}

.ghmc-sn .ghmc-sn-card {
	position: relative; overflow: hidden;
	width: 100%; max-width: 640px;
	padding: 46px 52px 34px;
	border-radius: 30px;
	background: #fff; color: var(--ghmc-ink); text-align: center;
	box-shadow:
		0 0 0 1px rgba(255, 255, 255, .7) inset,
		0 0 0 8px rgba(255, 255, 255, .06),
		0 60px 120px -40px rgba(2, 10, 25, .85),
		0 24px 48px -24px rgba(2, 10, 25, .6);
	animation: ghmc-sn-rise 1s var(--ghmc-ease) both;
}
.ghmc-sn .ghmc-sn-card::before {
	content: ""; position: absolute; left: 0; right: 0; top: 0; height: 5px;
	background: linear-gradient(90deg, var(--ghmc-navy) 0%, var(--ghmc-gold) 30%, var(--ghmc-gold-2) 50%, var(--ghmc-gold) 70%, var(--ghmc-navy) 100%);
}
.ghmc-sn .ghmc-sn-card::after {
	content: ""; position: absolute; left: 50%; top: 0; width: 760px; height: 760px;
	transform: translate(-50%, -58%);
	background: radial-gradient(closest-side, rgba(246, 178, 26, .12), transparent);
	pointer-events: none; z-index: 0;
}
.ghmc-sn .ghmc-sn-card > * { position: relative; z-index: 1; }

.ghmc-sn .ghmc-sn-card .ghmc-sn-logo { width: min(360px, 100%); margin-bottom: 26px; }
.ghmc-sn .ghmc-sn-sep {
	display: block; height: 1px; margin: 0 0 28px;
	background: linear-gradient(90deg, transparent, var(--ghmc-line) 20%, var(--ghmc-line) 80%, transparent);
}

/* Staggered entrance */
.ghmc-sn .ghmc-sn-card .ghmc-sn-logo,
.ghmc-sn .ghmc-sn-card .ghmc-sn-sep,
.ghmc-sn .ghmc-sn-card .ghmc-sn-content > *,
.ghmc-sn .ghmc-sn-card .ghmc-sn-stars { animation: ghmc-sn-fade .8s var(--ghmc-ease) both; }
.ghmc-sn .ghmc-sn-card .ghmc-sn-logo { animation-delay: .15s; }
.ghmc-sn .ghmc-sn-card .ghmc-sn-sep { animation-delay: .22s; }
.ghmc-sn .ghmc-sn-card .ghmc-sn-content > :nth-child(1) { animation-delay: .28s; }
.ghmc-sn .ghmc-sn-card .ghmc-sn-content > :nth-child(2) { animation-delay: .34s; }
.ghmc-sn .ghmc-sn-card .ghmc-sn-content > :nth-child(3) { animation-delay: .40s; }
.ghmc-sn .ghmc-sn-card .ghmc-sn-content > :nth-child(4) { animation-delay: .46s; }
.ghmc-sn .ghmc-sn-card .ghmc-sn-content > :nth-child(5) { animation-delay: .52s; }
.ghmc-sn .ghmc-sn-card .ghmc-sn-content > :nth-child(6) { animation-delay: .58s; }
.ghmc-sn .ghmc-sn-card .ghmc-sn-stars { animation-delay: .64s; }

.ghmc-sn .ghmc-sn-stars { display: flex; justify-content: center; gap: 12px; margin-top: 24px; color: var(--ghmc-gold); }
.ghmc-sn .ghmc-sn-stars svg:nth-child(2) { transform: translateY(-3px) scale(1.15); }

.ghmc-sn .ghmc-sn-screen__foot {
	margin: 0; max-width: 640px; text-align: center;
	font: 500 12.5px/1.6 var(--ghmc-text); letter-spacing: .03em;
	color: rgba(255, 255, 255, .62);
	animation: ghmc-sn-fade 1s .7s var(--ghmc-ease) both;
}

.ghmc-sn a.ghmc-sn-preview-pill {
	position: fixed; left: 50%; bottom: 18px; transform: translateX(-50%); z-index: 10;
	padding: 9px 16px; border-radius: 999px;
	background: var(--ghmc-gold); color: var(--ghmc-navy-deep);
	font: 600 12.5px/1 var(--ghmc-text); text-decoration: none;
	box-shadow: 0 10px 24px -8px rgba(0, 0, 0, .5);
}

@keyframes ghmc-sn-spin { from { transform: translate(-50%, -50%) rotate(0); } to { transform: translate(-50%, -50%) rotate(360deg); } }
@keyframes ghmc-sn-rise { from { opacity: 0; transform: translateY(28px) scale(.985); } to { opacity: 1; transform: none; } }
@keyframes ghmc-sn-fade { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }

@media (max-width: 600px) {
	.ghmc-sn .ghmc-sn-screen__wrap { padding-top: 28px; gap: 20px; padding-left: 14px; padding-right: 14px; }
	.ghmc-sn .ghmc-sn-card { padding: 34px 22px 26px; border-radius: 24px; }
	.ghmc-sn .ghmc-sn-card .ghmc-sn-logo { margin-bottom: 20px; }
	.ghmc-sn .ghmc-sn-sep { margin-bottom: 22px; }
	.ghmc-sn .ghmc-sn-message { font-size: 15px; }
}

@media (prefers-reduced-motion: reduce) {
	.ghmc-sn .ghmc-sn-rays { animation: none; }
}
