/* System pages: thank-you and 404. */

body.page-system main.system-page,
body.page-404 main.system-page{
	width:auto;
	max-width:none;
	margin:0;
	padding:0;
	overflow-x:clip;
}

body.page-system .system-page *,
body.page-404 .system-page *{box-sizing:border-box}

body.page-system .system-page p,
body.page-404 .system-page p{margin:0 0 1em}
body.page-system .system-page h2,
body.page-404 .system-page h2{font-size:clamp(1.7rem,2.9vw,2.4rem)}
body.page-system .system-page h3,
body.page-404 .system-page h3{font-size:1.08rem;margin-bottom:8px}
body.page-system .system-page :focus-visible,
body.page-404 .system-page :focus-visible{outline:3px solid var(--zg-focus);outline-offset:3px}

body.page-system .system-hero,
body.page-404 .system-hero{
	padding-block:clamp(56px,7vw,104px);
	background:
		linear-gradient(90deg,transparent 0 49.9%,rgba(23,35,42,.04) 50%,transparent 50.1%),
		var(--zg-warm-white);
	background-size:96px 96px;
}

body.page-system .system-hero__inner,
body.page-404 .system-hero__inner{max-width:900px}

body.page-system .system-badge,
body.page-404 .system-badge{
	display:inline-block;
	margin-bottom:20px;
	padding:6px 12px;
	border:1px solid var(--zg-teal);
	border-radius:var(--zg-radius-tag);
	color:var(--zg-teal);
	font-size:.72rem;
	font-weight:700;
	letter-spacing:.11em;
	text-transform:uppercase;
}

body.page-404 .system-badge{border-color:var(--zg-amber);color:#8a5f1c}

body.page-system .system-hero h1,
body.page-404 .system-hero h1{
	margin-bottom:20px;
	font-size:clamp(2.1rem,4.2vw,3.4rem);
	font-weight:650;
	line-height:1.07;
}

body.page-system .system-lead,
body.page-404 .system-lead{max-width:64ch;color:var(--zg-muted);font-size:clamp(1rem,1.2vw,1.14rem)}

body.page-system .system-actions,
body.page-404 .system-actions{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin-top:28px}

body.page-system .system-search,
body.page-404 .system-search{max-width:520px;margin-top:28px}

body.page-system .system-search form,
body.page-404 .system-search form{display:flex;gap:10px;margin:0}

body.page-system .system-search label,
body.page-404 .system-search label{flex:1;margin:0}

body.page-system .system-search input[type="search"],
body.page-404 .system-search input[type="search"]{
	width:100%;
	min-height:48px;
	padding:11px 13px;
	border:1px solid #aeb8bc;
	border-radius:var(--zg-radius-control);
	font:inherit;
	font-size:.95rem;
}

body.page-system .system-search input[type="submit"],
body.page-404 .system-search input[type="submit"]{
	min-height:48px;
	padding:11px 20px;
	border:1px solid var(--zg-teal);
	border-radius:var(--zg-radius-control);
	background:var(--zg-teal);
	color:#fff;
	font:inherit;
	font-size:.9rem;
	font-weight:700;
	cursor:pointer;
}

body.page-system .system-search input[type="submit"]:hover,
body.page-404 .system-search input[type="submit"]:hover{background:var(--zg-teal-dark)}

body.page-system .screen-reader-text,
body.page-404 .screen-reader-text{
	position:absolute;
	width:1px;
	height:1px;
	margin:-1px;
	padding:0;
	overflow:hidden;
	clip:rect(0,0,0,0);
	white-space:nowrap;
	border:0;
}

body.page-system .system-section,
body.page-404 .system-section{padding-block:clamp(52px,6.5vw,92px)}
body.page-system .system-section--mist,
body.page-404 .system-section--mist{background:var(--zg-mist)}

body.page-system .system-head,
body.page-404 .system-head{max-width:760px;margin-bottom:36px}

body.page-system .system-note,
body.page-404 .system-note{margin-top:26px;color:var(--zg-muted);font-size:.84rem;line-height:1.6}

body.page-system .system-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}

body.page-system .system-step{
	padding:28px;
	border:1px solid var(--zg-border);
	border-radius:var(--zg-radius-card);
	background:#fff;
	box-shadow:var(--zg-shadow-soft);
}

body.page-system .system-step__index{
	display:block;
	margin-bottom:20px;
	color:var(--zg-amber);
	font-size:.72rem;
	font-weight:800;
	letter-spacing:.08em;
}

body.page-system .system-step p,
body.page-404 .system-post p{color:var(--zg-muted);font-size:.92rem;line-height:1.65}

body.page-system .system-contact,
body.page-404 .system-contact{
	display:grid;
	grid-template-columns:minmax(0,1fr) minmax(300px,.75fr);
	gap:clamp(32px,5vw,80px);
	align-items:start;
}

body.page-system .system-contact__list{margin:0;padding:0;list-style:none;display:grid;gap:6px}

body.page-system .system-contact__list > div{padding-block:16px;border-top:1px solid var(--zg-border)}

body.page-system .system-contact__list dt{
	margin-bottom:4px;
	color:var(--zg-teal);
	font-size:.7rem;
	font-weight:700;
	letter-spacing:.1em;
	text-transform:uppercase;
}

body.page-system .system-contact__list dd{margin:0;color:var(--zg-graphite);font-weight:650}
body.page-system .system-contact__list a{color:var(--zg-teal);text-decoration:none}
body.page-system .system-contact__list a:hover{text-decoration:underline;text-underline-offset:4px}

body.page-system .system-links,
body.page-404 .system-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
body.page-404 .system-links--four{grid-template-columns:repeat(4,minmax(0,1fr))}

body.page-system .system-link-card,
body.page-404 .system-link-card{
	display:flex;
	flex-direction:column;
	padding:26px;
	border:1px solid var(--zg-border);
	border-radius:var(--zg-radius-card);
	background:#fff;
}

body.page-system .system-link-card p,
body.page-404 .system-link-card p{margin-bottom:18px;color:var(--zg-muted);font-size:.9rem;line-height:1.65}
body.page-system .system-link-card .zg-link,
body.page-404 .system-link-card .zg-link{margin-top:auto;font-size:.88rem}

body.page-404 .system-audience{
	display:grid;
	grid-template-columns:minmax(0,.9fr) minmax(360px,1fr);
	gap:clamp(36px,6vw,110px);
	align-items:start;
}

body.page-404 .system-audience__list{margin:0;padding:0;border-top:1px solid var(--zg-border);list-style:none}

body.page-404 .system-audience__list li{
	display:grid;
	grid-template-columns:42px 1fr;
	gap:16px;
	align-items:start;
	padding-block:22px;
	border-bottom:1px solid var(--zg-border);
	color:var(--zg-graphite);
	font-size:clamp(1rem,1.4vw,1.16rem);
	font-weight:600;
	line-height:1.45;
}

body.page-404 .system-audience__list span{padding-top:4px;color:var(--zg-amber);font-size:.72rem;letter-spacing:.08em}

body.page-404 .system-posts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}

body.page-404 .system-post{
	padding:24px;
	border:1px solid var(--zg-border);
	border-radius:var(--zg-radius-card);
	background:#fff;
}

body.page-404 .system-post__meta{margin-bottom:10px;color:var(--zg-muted);font-size:.78rem}
body.page-404 .system-post h3{margin-bottom:10px;line-height:1.3}
body.page-404 .system-post h3 a{text-decoration:none}
body.page-404 .system-post h3 a:hover{text-decoration:underline;text-underline-offset:4px}

@media (max-width:1080px){
	body.page-404 .system-links--four{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width:900px){
	body.page-system .system-steps,
	body.page-system .system-links,
	body.page-404 .system-links,
	body.page-404 .system-posts{grid-template-columns:1fr}
	body.page-system .system-contact,
	body.page-404 .system-contact,
	body.page-404 .system-audience{grid-template-columns:1fr}
}

@media (max-width:640px){
	body.page-404 .system-links--four{grid-template-columns:1fr}
	body.page-system .system-search form,
	body.page-404 .system-search form{flex-direction:column}
	body.page-system .system-search input[type="submit"],
	body.page-404 .system-search input[type="submit"]{width:100%}
	body.page-system .system-actions .zg-btn,
	body.page-404 .system-actions .zg-btn{width:100%}
}

@media (prefers-reduced-motion:reduce){
	body.page-system .zg-btn,
	body.page-404 .zg-btn{transition:none}
}
