.resourcesMain {
	color: #142541;
	background: #fff;
	min-height: 100vh;
	word-break: keep-all;
	overflow-wrap: break-word;
}
.resourcesHero {
	height: 624px;
	position: relative;
	overflow: hidden;
	background: linear-gradient(105deg, #042f60, #0a4276 54%, #365d85);
	color: #fff;
}
.resourcesHeroPhoto {
	position: absolute;
	left: 720px;
	top: 0;
	width: 1200px;
	height: 490px;
	object-fit: cover;
}
.resourcesHero::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		url("../../img/referenceResources/hero-left.png") left top/720px 490px
			no-repeat,
		url("../../img/referenceResources/hero-floor.png") bottom right/100% 134px
			no-repeat;
}
.resourcesHero::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(
		90deg,
		rgba(3, 44, 90, 0.15) 40%,
		transparent 64%
	);
	pointer-events: none;
}
.resourcesHeroCopy {
	position: relative;
	z-index: 1;
	padding: 84px 0 0 106px;
}
.resourcesEyebrow {
	color: #48b4f1;
	font-size: 24px;
	font-weight: 500;
	letter-spacing: 5px;
}
.resourcesHero h1 {
	font-size: 100px;
	line-height: 1.25;
	font-weight: 900;
	letter-spacing: -4px;
	margin: 30px 0 40px;
}
.resourcesLead {
	font-size: 36px;
	line-height: 1.7;
	letter-spacing: -1px;
}
.resourcesLead span {
	display: block;
}
.resourcesFeatures {
	position: absolute;
	z-index: 2;
	left: 104px;
	right: 104px;
	bottom: 42px;
	display: grid;
	grid-template-columns: 410px 366px 378px 1fr;
}
.resourcesFeature {
	display: flex;
	min-width: 0;
	gap: 32px;
	align-items: center;
}
.resourcesFeature > div {
	min-width: 0;
}
.resourcesFeature:first-child {
	gap: 24px;
}
.resourcesFeatureIcon {
	width: 88px;
	height: 88px;
	flex: 0 0 88px;
	border: 2px solid #1d8ddd;
	background: #0870bf65;
	border-radius: 50%;
	display: grid;
	place-items: center;
}
.resourcesFeatureIcon svg {
	width: 44px;
	height: 44px;
}
.resourcesFeature h2 {
	font-size: 26px;
	font-weight: 700;
	margin-bottom: 14px;
}
.resourcesFeature p {
	font-size: 23px;
	color: #d1e3f4;
	white-space: normal;
	letter-spacing: -1px;
}
.resourcesBody {
	margin: 46px auto 0;
	width: 1794px;
	max-width: calc(100% - 126px);
}
.resourcesSearch {
	height: 144px;
	background: #f3f8fc;
	border-radius: 12px;
	display: flex;
	align-items: center;
	gap: 28px;
	padding: 0 18px 0 38px;
	margin-bottom: 39px;
}
.resourcesCount {
	flex: 1;
	font-size: 29px;
	font-weight: 700;
	white-space: nowrap;
}
.resourcesCount strong {
	color: #0073f8;
	font-size: 42px;
}
.resourcesSearchInput {
	flex-shrink: 0;
	border: 2px solid #dfe9f4;
	border-radius: 9px;
	display: flex;
	align-items: center;
	height: 84px;
	width: 735px;
	background: #fff;
	padding: 0 28px;
	gap: 25px;
}
.resourcesSearchInput svg {
	width: 40px;
	height: 40px;
	flex-shrink: 0;
}
.resourcesSearchInput input {
	width: 100%;
	font-size: 25px;
}
.resourcesSearch select {
	appearance: none;
	flex-shrink: 0;
	height: 84px;
	width: 307px;
	border: 2px solid #dfe9f4;
	border-radius: 9px;
	padding: 0 48px 0 24px;
	background-color: #fff;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%2329516e' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m3 6 5 5 5-5'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 16px center;
	background-size: 16px 16px;
	font-size: 27px;
	font-weight: 700;
}
.resourcesSearch > button {
	margin-left: -7px;
	flex-shrink: 0;
	width: 167px;
	height: 84px;
	border: 2px solid #4a9bff;
	border-radius: 10px;
	background: #006dff;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 23px;
	color: #fff;
	font-size: 27px;
}
.resourcesSearch > button svg {
	width: 33px;
	height: 33px;
}
.resourcesTable {
	table-layout: fixed;
}
.resourceNumber {
	width: 135px;
}
.resourceCategory {
	width: 265px;
}
.resourceTitle {
	width: 840px;
}
.resourceDate {
	width: 220px;
}
.resourceViews {
	width: 140px;
}
.resourceAttachment {
	width: 194px;
}
.resourcesTable thead {
	height: 82px;
	background: #edf4fc;
	font-size: 24px;
}
.resourcesTable th {
	font-weight: 700;
	text-align: center;
}
.resourcesTable td {
	height: 118px;
	border-bottom: 2px solid #f0f3f6;
	font-size: 24px;
	text-align: center;
}
.resourcesTable td:nth-child(3) {
	text-align: left;
	padding-left: 4px;
}
.resourcesTable td:nth-child(3) a,
.resourcesTable td:nth-child(3) button {
	font-size: 28px;
	font-weight: 700;
	letter-spacing: -0.8px;
}
.resourcesTable td:nth-child(3) p {
	color: #808692;
	font-size: 24px;
	margin-top: 9px;
	letter-spacing: -0.7px;
}
.resourcesTable td:nth-child(4),
.resourcesTable td:nth-child(5) {
	color: #707887;
	font-size: 23px;
}
.resourcesNotice {
	background: #f6f9fd;
}
.resourcesNotice td {
	height: 126px;
}
.resourcesNotice td:first-child span {
	display: inline-block;
	padding: 3px 16px;
	color: white;
	background: #0073f8;
	border-radius: 7px;
}
.resourcesNotice td:nth-child(2) svg {
	width: 40px;
	height: 40px;
	color: #0073f8;
	margin: auto;
}
.resourcesNotice button {
	color: #0073f8;
	text-align: left;
}
.resourceAttachmentLink {
	display: block;
	width: 42px;
	margin: auto;
	color: #147af5;
}
.resourceAttachmentLink svg {
	width: 42px;
	height: 42px;
}
.resourcesPagination {
	margin: 39px auto 0;
	padding-bottom: 64px;
	display: flex;
	justify-content: center;
	gap: 22px;
}
.resourcesPagination button {
	width: 66px;
	height: 61px;
	color: #29516e;
	border: 2px solid #e7edf5;
	background: #fff;
	border-radius: 7px;
	font-size: 24px;
}
.resourcesPagination button:first-child,
.resourcesPagination button:last-child {
	color: #0073f8;
	font-size: 41px;
	line-height: 1;
}
.resourcesPagination button[aria-current] {
	background: #006cff;
	color: #fff;
	border-color: #006cff;
}
.resourcesPagination button:disabled {
	cursor: default;
	opacity: 0.45;
}
.resourcesEmpty {
	text-align: center;
	padding: 50px;
	font-size: 26px;
}
.resourcesTable tr[hidden],
.resourcesEmpty[hidden],
.resourcesPagination[hidden],
.resourcesPagination button[hidden] {
	display: none;
}
.resourceNoticeDialog {
	margin: auto;
	padding: 40px;
	border: 1px solid #dce7f3;
	border-radius: 12px;
	max-width: 700px;
}
.resourceNoticeDialog::backdrop {
	background: #001a4380;
}
.resourceNoticeDialog button {
	background: #006dff;
	color: white;
	padding: 10px 28px;
	margin-top: 30px;
}
.resourceDetail {
	word-break: keep-all;
	overflow-wrap: break-word;
	max-width: 1500px;
	margin: 0 auto;
	padding: 190px 40px 120px;
	min-height: 800px;
}
.resourceDetail h1 {
	font-size: 48px;
	margin: 30px 0;
}
.resourceDetail p {
	font-size: 25px;
}
.resourceDownload {
	margin: 60px 0;
	padding: 35px;
	background: #f3f8fc;
}
.resourceBack {
	display: inline-block;
	padding: 18px 35px;
	background: #006dff;
	color: #fff;
	border-radius: 6px;
}
.resourcesMain button:focus-visible,
.resourcesMain a:focus-visible,
.resourcesMain input:focus-visible,
.resourcesMain select:focus-visible {
	outline: 3px solid #1585ff;
	outline-offset: 4px;
}
@media (min-width: 1921px) {
	.resourcesHeroPhoto {
		left: 37.5%;
		width: 62.5%;
	}
	.resourcesBody {
		max-width: 1794px;
	}
}
@media (max-width: 1600px) {
	.resourcesHeroPhoto {
		left: 37.5%;
		width: 62.5%;
	}
	.resourcesHeroCopy {
		padding-left: 5.5%;
	}
	.resourcesFeatures {
		left: 5.5%;
		right: 5.5%;
		grid-template-columns: repeat(4, 1fr);
		gap: 25px;
	}
	.resourcesFeature {
		gap: 20px;
	}
	.resourcesFeatureIcon {
		width: 65px;
		height: 65px;
		flex-basis: 65px;
	}
	.resourcesFeature h2 {
		font-size: 20px;
	}
	.resourcesFeature p {
		font-size: 17px;
	}
	.resourcesSearch {
		gap: 20px;
		padding: 0 25px;
	}
	.resourcesSearchInput {
		width: 44%;
	}
	.resourcesSearch select {
		width: 20%;
	}
	.resourcesSearch > button {
		margin-left: -7px;
		flex-shrink: 0;
		width: 130px;
	}
	.resourceNumber {
		width: 7.5%;
	}
	.resourceCategory {
		width: 15%;
	}
	.resourceTitle {
		width: 47%;
	}
	.resourceDate {
		width: 12%;
	}
	.resourceViews {
		width: 8%;
	}
	.resourceAttachment {
		width: 10.5%;
	}
	.resourcesTable td:nth-child(3) a,
	.resourcesTable td:nth-child(3) button {
		font-size: 22px;
	}
	.resourcesTable td:nth-child(3) p {
		font-size: 18px;
	}
	.resourcesTable td,
	.resourcesTable th {
		font-size: 19px;
	}
	.resourcesTable td:nth-child(4),
	.resourcesTable td:nth-child(5) {
		font-size: 18px;
	}
}
@media (max-width: 900px) {
	.resourcesMain {
		min-height: 100vh;
	}
	.resourcesHero {
		height: auto;
		padding-bottom: 35px;
	}
	.resourcesHeroPhoto {
		opacity: 0.5;
		left: 30%;
		width: 70%;
		height: 400px;
	}
	.resourcesHeroCopy {
		padding: 50px 24px 30px;
	}
	.resourcesEyebrow {
		font-size: 16px;
	}
	.resourcesHero h1 {
		font-size: 60px;
		margin: 15px 0 20px;
	}
	.resourcesLead {
		font-size: 21px;
	}
	.resourcesLead span {
		display: inline;
	}
	.resourcesFeatures {
		position: relative;
		left: auto;
		right: auto;
		bottom: auto;
		margin: 15px 24px 0;
		grid-template-columns: 1fr 1fr;
		gap: 25px;
	}
	.resourcesFeature {
		gap: 12px;
	}
	.resourcesFeatureIcon {
		width: 50px;
		height: 50px;
		flex-basis: 50px;
	}
	.resourcesFeatureIcon svg {
		width: 28px;
		height: 28px;
	}
	.resourcesFeature h2 {
		font-size: 16px;
		margin-bottom: 5px;
	}
	.resourcesFeature p {
		font-size: 12px;
		white-space: normal;
	}
	.resourcesBody {
		max-width: none;
		width: auto;
		margin: 24px 20px;
	}
	.resourcesSearch {
		height: auto;
		flex-wrap: wrap;
		padding: 20px;
		gap: 12px;
	}
	.resourcesCount {
		width: 100%;
		flex-basis: 100%;
		font-size: 22px;
	}
	.resourcesCount strong {
		font-size: 30px;
	}
	.resourcesSearchInput {
		width: 100%;
		height: 52px;
	}
	.resourcesSearchInput input {
		font-size: 16px;
	}
	.resourcesSearchInput svg {
		width: 25px;
		height: 25px;
	}
	.resourcesSearch select {
		flex: 1;
		width: auto;
		height: 52px;
		font-size: 16px;
	}
	.resourcesSearch > button {
		margin-left: -7px;
		flex-shrink: 0;
		width: 110px;
		height: 52px;
		font-size: 16px;
		gap: 10px;
	}
	.resourcesTableWrap {
		overflow: auto;
	}
	.resourcesTable {
		min-width: 1150px;
	}
	.resourcesPagination {
		margin: 25px 0 50px;
		gap: 12px;
	}
	.resourcesPagination button {
		width: 45px;
		height: 45px;
		font-size: 18px;
	}
	.resourceDetail {
		padding: 130px 24px 70px;
	}
	.resourceDetail h1 {
		font-size: 32px;
	}
	.resourceDetail p {
		font-size: 18px;
	}
}
@container sitePage (min-width:901px) and (max-width:1600px) {
	.resourcesHero {
		display: flex;
		flex-direction: column;
		height: auto;
		min-height: 624px;
	}
	.resourcesHeroPhoto {
		left: 37.5%;
		width: 62.5%;
		height: calc(100% - 134px);
	}
	.resourcesHero::after {
		background: linear-gradient(
			90deg,
			rgba(3, 44, 90, 0.96) 44%,
			rgba(3, 44, 90, 0.68) 54%,
			rgba(3, 44, 90, 0.08) 70%,
			transparent
		);
	}
	.resourcesHeroCopy {
		width: 54%;
		padding: clamp(48px, 4.375cqw, 70px) 60px 32px;
	}
	.resourcesEyebrow {
		font-size: clamp(16px, 1.25cqw, 20px);
	}
	.resourcesHero h1 {
		font-size: clamp(60px, 5.2083cqw, 83.33px);
		margin: 25px 0 33px;
	}
	.resourcesLead {
		font-size: clamp(22px, 1.875cqw, 30px);
		line-height: 1.6;
	}
	.resourcesFeatures {
		position: relative;
		left: auto;
		right: auto;
		bottom: auto;
		margin-top: auto;
		padding: 24px 60px;
		min-height: 134px;
		background: rgba(3, 40, 80, 0.94);
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 18px;
	}
	.resourcesFeature,
	.resourcesFeature:first-child {
		gap: 20px;
	}
	.resourcesFeatureIcon {
		width: 70px;
		height: 70px;
		flex-basis: 70px;
	}
	.resourcesFeature h2 {
		font-size: 23px;
	}
	.resourcesFeature p {
		font-size: 19px;
		white-space: normal;
	}
	.resourcesBody {
		width: calc(100% - 80px);
		max-width: none;
	}
	.resourcesSearch {
		gap: 20px;
		padding: 0 25px;
	}
	.resourcesSearchInput {
		width: 44%;
	}
	.resourcesSearch select {
		width: 20%;
		font-size: 22px;
	}
	.resourcesSearch > button {
		width: 130px;
		margin-left: 0;
	}
	.resourcesCount {
		font-size: 23px;
	}
	.resourcesCount strong {
		font-size: 34px;
	}
	.resourceNumber {
		width: 7.5%;
	}
	.resourceCategory {
		width: 15%;
	}
	.resourceTitle {
		width: 47%;
	}
	.resourceDate {
		width: 12%;
	}
	.resourceViews {
		width: 8%;
	}
	.resourceAttachment {
		width: 10.5%;
	}
	.resourcesTable td:nth-child(3) a,
	.resourcesTable td:nth-child(3) button {
		font-size: 24px;
	}
	.resourcesTable td:nth-child(3) p {
		font-size: 20px;
	}
	.resourcesTable td,
	.resourcesTable th {
		font-size: 21px;
	}
	.resourcesTable td:nth-child(4),
	.resourcesTable td:nth-child(5) {
		font-size: 19px;
	}
}
@container sitePage (min-width:901px) and (max-width:1279.98px) {
	.resourcesFeatures {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 24px;
	}
}
@container sitePage (min-width: 901px) and (max-width: 1200px) {
	.resourcesSearch {
		height: auto;
		min-height: 144px;
		flex-wrap: wrap;
		padding-block: 20px;
		gap: 16px;
	}
	.resourcesCount {
		flex-basis: 100%;
	}
	.resourcesSearchInput {
		flex: 1;
		width: auto;
		min-width: 0;
	}
	.resourcesSearch select {
		width: 240px;
		font-size: 20px;
	}
}
@media (max-width: 900px) {
	.resourcesHero::before {
		display: none;
	}
	.resourcesHeroPhoto {
		left: 0;
		width: 100%;
		height: 100%;
		opacity: 0.35;
	}
	.resourcesHero::after {
		background: rgba(3, 40, 80, 0.6);
	}
	.resourcesFeatures {
		padding: 20px;
		background: rgba(3, 40, 80, 0.94);
		border-radius: 8px;
	}
	.resourcesSearch > button {
		margin-left: 0;
	}
}
@media (max-width: 479.98px) {
	.resourcesFeatures {
		grid-template-columns: minmax(0, 1fr);
	}
	.resourcesSearch select {
		flex-basis: 100%;
		width: 100%;
	}
	.resourcesSearch > button {
		width: 100%;
	}
}
