.at-content-shell:has(.at-legal-shell) {
	max-width: none;
	padding: 62px 24px 84px;
}

.at-content-shell:has(.at-legal-shell) > .wp-block-post-title {
	margin: 0 auto 26px;
	max-width: 1160px;
	width: 100%;
}

.at-legal-shell,
.at-legal-shell * { box-sizing: border-box; }

.at-legal-shell {
	margin: 0 auto;
	max-width: 1160px;
	width: 100%;
}

.at-legal-intro {
	align-items: end;
	border-bottom: 1px solid #d7e1e4;
	display: grid;
	gap: 16px 42px;
	grid-template-columns: minmax(0, 1fr) auto;
	margin-bottom: 32px;
	padding-bottom: 28px;
}

.at-legal-kicker {
	color: #087fa7;
	display: block;
	font-size: 11px;
	font-weight: 800;
	grid-column: 1 / -1;
	letter-spacing: .09em;
	text-transform: uppercase;
}

.at-legal-intro h2 {
	color: #00354e;
	font-size: clamp(1.8rem, 3.4vw, 2.7rem);
	grid-column: 1;
	letter-spacing: -.035em;
	line-height: 1.08;
	margin: -5px 0 8px;
}

.at-legal-intro p {
	color: #5d7078;
	font-size: 14px;
	grid-column: 1;
	line-height: 1.7;
	margin: 0;
	max-width: 740px;
}

.at-legal-meta {
	align-self: end;
	display: grid;
	gap: 3px;
	grid-column: 2;
	grid-row: 2 / 4;
	justify-items: end;
	padding-bottom: 3px;
}

.at-legal-meta span { color: #718086; font-size: 10px; text-transform: uppercase; }
.at-legal-meta strong { color: #234553; font-size: 12px; }

.at-legal-layout {
	display: grid;
	gap: 28px;
	grid-template-columns: 210px minmax(0, 1fr);
}

.at-legal-index {
	align-self: start;
	background: #edf4f5;
	border: 1px solid #d6e2e5;
	border-radius: 13px;
	display: grid;
	gap: 2px;
	padding: 17px;
	position: sticky;
	top: 112px;
}

.at-legal-index strong {
	color: #00354e;
	font-size: 12px;
	margin-bottom: 8px;
}

.at-legal-index a {
	border-radius: 7px;
	color: #4d6670;
	font-size: 11px;
	line-height: 1.35;
	padding: 7px 8px;
	text-decoration: none;
}

.at-legal-index a:hover { background: #fff; color: #005979; }

.at-legal-card {
	background: #fff;
	border: 1px solid #d8e1e3;
	border-radius: 17px;
	box-shadow: 0 18px 50px rgba(0, 53, 78, .07);
	overflow: hidden;
}

.at-legal-section {
	display: grid;
	gap: 20px;
	grid-template-columns: 42px minmax(0, 1fr);
	padding: 30px 34px;
	scroll-margin-top: 120px;
}

.at-legal-section + .at-legal-section { border-top: 1px solid #e0e7e9; }
.at-legal-section.at-legal-risk { background: #f3f8f8; }

.at-legal-number {
	color: #0790bb;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .08em;
	padding-top: 5px;
}

.at-legal-section h3 {
	color: #00354e;
	font-size: 18px;
	letter-spacing: -.015em;
	line-height: 1.3;
	margin: 0 0 11px;
}

.at-legal-section p {
	color: #526971;
	font-size: 13px;
	line-height: 1.72;
	margin: 0;
}

.at-legal-section p + p { margin-top: 11px; }
.at-legal-section a { color: #006c94; font-weight: 650; }

.at-legal-section ul {
	color: #526971;
	font-size: 13px;
	line-height: 1.72;
	margin: 12px 0 0;
	padding-left: 19px;
}

.at-legal-section li + li { margin-top: 6px; }

.at-legal-identity {
	background: #f5f8f8;
	border: 1px solid #d8e3e5;
	border-radius: 11px;
	display: grid;
	gap: 10px;
	margin: 17px 0;
	padding: 14px;
}

.at-legal-identity button {
	align-items: center;
	background: #004666;
	border: 1px solid #004666;
	border-radius: 8px;
	color: #fff;
	cursor: pointer;
	display: inline-flex;
	font-size: 12px;
	font-weight: 750;
	gap: 9px;
	justify-self: start;
	min-height: 42px;
	padding: 9px 14px;
}

.at-legal-identity button:hover { background: #00354e; }
.at-legal-identity button:disabled { cursor: wait; opacity: .7; }
.at-legal-identity > small { color: #76858a; font-size: 10px; line-height: 1.45; }

.at-legal-identity-panel {
	background: #fff;
	border-radius: 8px;
	overflow: hidden;
}

.at-legal-identity-panel[hidden] { display: none; }
.at-legal-identity-status { color: #64777e !important; font-size: 11px !important; padding: 12px !important; }
.at-legal-identity-status:empty { display: none; }

.at-legal-identity-panel img {
	display: block;
	height: auto;
	max-width: 100%;
	pointer-events: none;
	user-select: none;
	width: 100%;
}

@media (max-width: 850px) {
	.at-legal-layout { grid-template-columns: 1fr; }
	.at-legal-index { grid-template-columns: repeat(2, minmax(0, 1fr)); position: static; }
	.at-legal-index strong { grid-column: 1 / -1; }
}

@media (max-width: 600px) {
	.at-content-shell:has(.at-legal-shell) { padding: 42px 16px 60px; }
	.at-legal-intro { align-items: start; grid-template-columns: 1fr; }
	.at-legal-kicker { grid-column: auto; }
	.at-legal-intro h2,
	.at-legal-intro p,
	.at-legal-meta { grid-column: auto; grid-row: auto; }
	.at-legal-meta { justify-items: start; }
	.at-legal-index { grid-template-columns: 1fr 1fr; padding: 13px; }
	.at-legal-card { border-radius: 14px; }
	.at-legal-section { gap: 8px; grid-template-columns: 1fr; padding: 24px 20px; }
	.at-legal-number { padding-top: 0; }
	.at-legal-identity button { justify-content: center; width: 100%; }
}
