/*
Theme Name: RDI 2025
Theme URI: https://rdi.org
Author: Built by Mechanic
Author URI: https://www.builtbymechanic.com/
Description: Core theme for RDI.org website (WordPress 6.4+). Crafted by Chandler Roth.
Requires at least: 6.4
Tested up to: 6.7
Requires PHP: 7.0
Version: 1.0
Text Domain: rdi
*/

:root {
	--content-max-width: 1280px;
	--content-small-width: 860px;
	--rdi-header-height: 94px;
}

@media (max-width: 1210px) {
	:root {
		--rdi-header-height: 86px;
	}
}

@media (max-width: 1158px) {
	:root {
		--rdi-header-height: 72px;
	}
}

/* General */
html {
	scroll-behavior: smooth;
	scroll-padding-top: var(--rdi-header-height);
}

html:has(body.admin-bar) {
	scroll-padding-top: calc(
		var(--wp-admin--admin-bar--height) + var(--rdi-header-height)
	);
}

main {
	min-height: calc(100vh - var(--rdi-header-height));
}

a {
	outline-offset: 3px;
}

a figure {
	border-radius: 1rem;
	overflow: hidden;
	background-color: var(--wp--preset--color--light-gray);
	padding: 0 !important;
}

a figure img {
	border-radius: 0 !important;
	border: none !important;
	min-height: 100%;
}

a figure img {
	transition: transform 0.2s ease-in-out;
}

a:hover figure img {
	transform: scale(1.025);
}

.wp-block-tiptip-hyperlink-group-block {
	text-decoration: none;
}

.wp-block-tiptip-hyperlink-group-block:hover {
	text-decoration: underline;
}

.is-root-container.block-editor-block-list__layout > div,
.entry-content > div {
	margin-top: 0 !important;
}

.overflow-hidden {
	overflow: hidden !important;
}

.min-h-hero {
	min-height: 507px !important;
}

.w-sixth {
	width: 16.666666%;
}

.w-tenth {
	width: 10%;
}

.full-w {
	width: 100%;
	min-width: 100%;
}

.full-w img {
	width: 100%;
}

.flex-align-top {
	align-items: flex-start;
}

.editor-visual-editor__post-title-wrapper {
	display: none !important;
}

.has-800-font-size {
	text-transform: uppercase;
	font-weight: 800;
}

/* YouTube Embed Pattern */
.yb-player,
.wp-block-embed.is-type-video {
	border-radius: 1.25rem;
	overflow: hidden;
}

.yb-player .yb-btn-play {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24px' viewBox='0 -960 960 960' width='24px' fill='%232B3246'%3E%3Cpath d='M320-273v-414q0-17 12-28.5t28-11.5q5 0 10.5 1.5T381-721l326 207q9 6 13.5 15t4.5 19q0 10-4.5 19T707-446L381-239q-5 3-10.5 4.5T360-233q-16 0-28-11.5T320-273Z'/%3E%3C/svg%3E");
	background-size: 50%;
	background-repeat: no-repeat;
	background-position: center;
	width: 72px;
	height: 72px;
	background-color: var(--wp--preset--color--yellow);
	border-radius: 50%;
	box-shadow: 0 0 50px 5px var(--wp--preset--color--dark-blue);
	transition: filter 0.2s ease-in-out;
}

.wp-block-boldblocks-youtube-block .yb-player:after {
	background-color: transparent;
	transition: background-color 0.2s ease-in-out;
}

.wp-block-boldblocks-youtube-block .yb-player:hover:after {
	background-color: #ffffff14;
}

/* Footer */
footer {
	margin-top: 0;
}

footer h2 {
	font-size: 2rem;
}

footer .footer-subscribe-block {
	min-width: 425px;
	margin-top: -0.5rem;
}

footer .footer-column-divider {
	border-left: 0.5px solid var(--wp--preset--color--yellow);
}

@media (max-width: 1160px) {
	footer > div {
		padding: 3.5rem 2rem !important;
	}

	footer .wp-block-social-links {
		justify-content: space-between;
		margin-top: 1.5rem;
		font-size: 2.125rem !important;
	}

	footer .footer-column-divider {
		border-left: none;
	}

	footer .footer-column {
		flex-direction: column;
		gap: 1.5rem;
	}
}

@media (max-width: 781px) {
	footer .footer-subscribe-block {
		min-width: unset;
		margin-top: 2rem;
	}
}

/* Eyebrow Pattern */
.has-line-behind {
	position: relative;
	display: flex;
	align-items: center;
	gap: 1rem;
	width: 100%;
}

.has-line-behind-inner {
	text-transform: uppercase;
	font-weight: 600;
	font-size: 1.125rem;
	letter-spacing: 0.15em;
	white-space: nowrap;
}

.has-line-behind.with-before::before {
	content: "";
	flex: 1;
	height: 1px;
	opacity: 0.5;
	background-color: var(--wp--preset--color--dark-blue);
}

.has-line-behind::after {
	content: "";
	flex: 1;
	height: 1px;
	opacity: 0.5;
	background-color: var(--wp--preset--color--dark-blue);
}

.has-line-behind.has-white-color::after {
	background-color: var(--wp--preset--color--white);
}

/* Home Hero Pattern */
.pattern-home-hero {
	min-height: calc(100vh);
}

.pattern-home-hero .wp-block-cover .wp-block-cover__image-background {
	object-position: top;
}

.pattern-center-quote img {
	min-width: fit-content;
}

@media (max-width: 781px) {
	.mobile-w-full {
		width: 100% !important;
		max-width: 100% !important;
	}

	.pattern-home-hero .home-page-hero-title {
		max-width: 100%;
	}
}

/* Post Comments Form */
:root :where(.wp-block-post-comments-form input[type="submit"]) {
	border-radius: 99px;
}

/* Stories Pattern */
@media (max-width: 781px) {
	.pattern-stories > div > div:nth-child(odd) {
		display: flex;
		flex-direction: column-reverse;
		gap: 2rem;
	}

	.pattern-stories > div > div:nth-child(even) {
		display: flex;
		flex-direction: column;
		gap: 2rem;
	}
}

.stories-section .wp-block-read-more {
	font-size: 1rem;
	padding: 0.75rem 1.5rem;
	border-radius: 2rem;
	text-transform: uppercase;
	outline-color: var(--wp--preset--color--white);
	outline-offset: 0;
	border: 1px solid var(--wp--preset--color--white);
	background-color: transparent;
}

.stories-section .has-800-font-size a {
	color: var(--wp--preset--color--white);
}

.stories-section .wp-block-post.has-post-thumbnail {
	gap: 5rem;
}

.stories-section .wp-block-post.has-post-thumbnail:nth-child(odd),
.editor-styles-wrapper .stories-section .wp-block-post:nth-child(odd) {
	display: flex;
	flex-direction: row-reverse;
	justify-content: space-between;
	align-items: center;
}

.stories-section .wp-block-post.has-post-thumbnail:nth-child(even),
.editor-styles-wrapper .stories-section .wp-block-post:nth-child(even) {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
}

.stories-section .wp-block-post.has-post-thumbnail .story-image,
.editor-styles-wrapper
	.stories-section
	.wp-block-post
	.block-editor-media-placeholder {
	flex: 1;
	max-width: calc(50% - 2.5rem);
	width: 100%;
	min-height: 400px;
}

.stories-section .wp-block-post.has-post-thumbnail .wp-block-group {
	flex: 1;
	max-width: calc(50% - 2.5rem);
}

@media (max-width: 781px) {
	.stories-section .wp-block-post.has-post-thumbnail {
		flex-direction: column !important;
	}

	.stories-section .wp-block-post.has-post-thumbnail .story-image {
		max-width: 100%;
	}

	.stories-section .wp-block-post.has-post-thumbnail .wp-block-group {
		max-width: 100%;
	}
}

/* Milestones Pattern */
.rdi-milestones {
	margin-top: 3.125rem;
	position: relative;
}

.rdi-milestones::before {
	content: "";
	position: absolute;
	top: -3.125rem;
	left: 50%;
	display: block;
	width: 3px;
	height: calc(100% + 3.25rem);
	background-color: var(--wp--preset--color--cyan-dark-blue);
}

.rdi-milestones .rdi-milestone:nth-child(even) {
	flex-direction: row-reverse;
}

.rdi-milestones .rdi-milestone:nth-child(odd) {
	flex-direction: row;
}

.rdi-milestones .rdi-milestone {
	gap: 6em;
	margin-bottom: 6.25rem;
	position: relative;
}

.rdi-milestones .rdi-milestone-image {
	margin-top: 4rem;
}

.rdi-milestones .rdi-milestone::before {
	content: "";
	position: absolute;
	top: calc(4rem - 20px);
	left: calc(50% - 19px);
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background-color: var(--wp--preset--color--cyan-dark-blue);
	border: 10px solid var(--wp--preset--color--base);
	z-index: 1;
}

@media (max-width: 781px) {
	.rdi-milestones .rdi-milestone {
		gap: 2rem;
		margin-bottom: 4rem;
	}
}

.rdi-milestones .rdi-milestone:nth-child(even)::before {
	background-color: var(--wp--preset--color--yellow);
}

.rdi-milestones .rdi-milestone-image > div,
.rdi-milestones .rdi-milestone-content > div {
	box-shadow: 0px 72px 106.4px 0px rgba(0, 0, 0, 0.08);
}

.rdi-milestones .rdi-milestone:last-child {
	margin-bottom: 0;
}

.rdi-milestones .rdi-milestone:nth-child(even) .rdi-milestone-content-inner {
	border-left: 8px solid var(--wp--preset--color--cyan-dark-blue);
}

.rdi-milestones .rdi-milestone:nth-child(odd) .rdi-milestone-content-inner {
	border-left: 8px solid var(--wp--preset--color--yellow);
}

.rdi-milestones .rdi-milestone-content-inner {
	padding-left: 1.5rem;
	padding-top: 0.5rem;
	padding-bottom: 0.5rem;
}

/* Posts Featured Pattern */
.pattern-posts-featured .posts-grid ul {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-template-rows: minmax(200px, 300px);
	gap: 1.5rem;
	grid-template-areas: "featured-first featured-second featured-third";
}

.pattern-posts-featured .posts-grid li:nth-child(1) {
	grid-area: featured-first;
}

.pattern-posts-featured .posts-grid li:nth-child(2) {
	grid-area: featured-second;
}

.pattern-posts-featured .posts-grid li:nth-child(3) {
	grid-area: featured-third;
}

.pattern-posts-featured .posts-grid li > div {
	height: 100%;
}

.pattern-posts-featured .wp-block-post a,
.pattern-posts-featured .wp-block-post a > div {
	height: 100%;
}

.pattern-posts-featured .wp-block-post a figure {
	aspect-ratio: unset !important;
}

.posts-featured .wp-block-post {
	position: relative;
	border-radius: 1rem;
	width: 100%;
	height: 100%;
	min-height: 250px;
	background-color: var(--wp--preset--color--light-gray);
	display: flex;
	align-items: stretch;
	justify-content: stretch;
}

.pattern-posts-featured .wp-block-post-featured-image {
	margin-bottom: 0;
	width: 100%;
	height: 100%;
}

.pattern-posts-featured .wp-block-post-meta {
	position: absolute;
	bottom: 0rem;
	gap: 0;
}

.pattern-posts-featured .wp-block-post-meta .wp-block-post-title {
	background-color: rgb(251, 195, 52);
	padding: 0.5rem 1rem;
	font-family: "Outfit", sans-serif;
	font-size: 1.05rem !important;
	border-radius: 0 0.5rem 0.5rem 0;
	margin-right: 2rem;
}

.pattern-posts-featured .wp-block-post-meta .wp-block-post-excerpt {
	background-color: rgb(68, 76, 98);
	color: white;
	padding: 0.5rem 1rem;

	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	border-radius: 0px 0px 14px 14px;
}

@media (max-width: 781px) {
	.pattern-posts-featured .posts-grid ul {
		display: flex;
		flex-direction: column;
		gap: 2rem;
	}
}

/* Icons Section */
.icons-section {
	margin-top: 0;
}

.icons-section .icons-columns .wp-block-column {
	border-right: 1px solid var(--wp--preset--color--yellow);
}

@media (max-width: 781px) {
	.icons-section .icons-columns .wp-block-column {
		border-right: none;
	}
}

.icons-section .icons-columns .wp-block-column:last-child {
	border-right: none;
}

.values-list li {
	font-size: 1.75rem;
	font-weight: 600;
	border: 1px solid var(--wp--preset--color--yellow);
	color: var(--wp--preset--color--white);
	padding: 1rem 1rem;
	list-style: none;
	margin: 1rem 0;
	display: flex;
	align-items: center;
	gap: 1.5rem;
	border-radius: 4px;
	counter-increment: values-list;
}

.values-list {
	padding: 0;
	margin: 0;
	max-width: unset;
	counter-reset: values-list;
}

.values-list li::before {
	content: counter(values-list);
	background: var(--wp--preset--color--yellow);
	min-width: 50px;
	border-radius: 2px;
	font-size: 1.25rem;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--wp--preset--color--dark-blue);
}

@media (max-width: 781px) {
	.values-list li {
		flex-direction: column;
		align-items: flex-start;
		gap: 1rem;
	}
}

/* Article Page */
.article-page {
	margin-top: 0;
}

.article-page p {
	font-size: 1.125rem;
}

.article-page h1 {
	text-transform: none;
	color: var(--wp--preset--color--yellow);
	margin-bottom: 1rem;
}

.video-page-header,
.article-page-header {
	background-color: var(--wp--preset--color--cyan-dark-blue);
	padding: var(--wp--preset--spacing--70) 2.5rem;
	margin-bottom: var(--wp--preset--spacing--70);
}

.article-page-header .wp-block-rdi-authors,
.article-page-header .wp-block-rdi-authors a {
	color: var(--wp--preset--color--yellow);
	font-size: 1.125rem;
}

.wp-block-rdi-authors a {
	text-decoration: none;
}

.wp-block-rdi-authors a:hover {
	text-decoration: underline;
}

.article-page-header .wp-block-post-date {
	color: var(--wp--preset--color--white);
	font-size: 1.125rem;
}

.article-page-header img {
	max-height: 600px;
}

.article-page-header figure {
	margin: 0 !important;
}

.article-page-header-inner {
	max-width: var(--content-small-width);
	margin: 0 auto;
}

.article-page-header .article-page-header-authors {
	margin-bottom: 2.5rem;
}

.wp-block-post-excerpt__excerpt {
	font-size: 1.125rem;
}

.article-page-header .article-page-header-back,
.video-page-header .video-page-header-back {
	color: var(--wp--preset--color--white);
	font-size: 1.125rem;
	text-decoration: none;
	text-transform: uppercase;
	font-weight: 500;
	letter-spacing: 0.11em;
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
}

.article-page .entry-content {
	max-width: var(--content-small-width);
	margin: 0 auto;
	margin-bottom: 2rem;
	overflow: hidden;
}

.article-page .entry-content h2 strong,
.article-page .entry-content h2 b {
	font-weight: 500;
}

.article-page .entry-content img {
	max-width: 100%;
	height: auto;
}

.article-page-header .article-page-header-meta {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 1rem;
}

.article-page-header .wp-block-rdi-reading-time {
	margin: 0;
	text-transform: uppercase;
	font-size: 1.75rem;
	color: white;
	font-family: var(--wp--preset--font-family--heading);
	line-height: 100%;
}

.article-page-header .wp-block-rdi-reading-time-minutes {
	color: var(--wp--preset--color--yellow);
}

.pattern-related-posts .wp-block-post h2 {
	color: var(--wp--preset--color--white);
	font-size: var(--wp--preset--font-size--600) !important;
}

@media (max-width: 781px) {
	.article-page-header {
		padding: 2rem;
		margin-bottom: 2rem;
	}

	.article-page-header-inner {
		max-width: unset;
	}

	.article-page-header .article-page-header-meta {
		flex-direction: column;
		gap: 1.5rem;
		margin-bottom: 1.5rem;
	}

	.article-page-header .wp-block-rdi-reading-time {
		font-size: 1.25rem;
	}

	.article-page-header .pattern-hidden-post-meta {
		margin-bottom: 0;
	}

	.article-page-header-content-wrapper {
		display: flex;
		flex-direction: column-reverse;
		gap: 1rem;
		padding-top: 2rem;
	}

	.article-page-header-image {
		margin-top: 0;
	}
}

/* Person Page (Team Member or Dissident) */
.rdi-person-page {
	margin-top: 0;
}

.rdi-person-page .rdi-person-page-header-name-block {
	display: flex;
	flex-direction: column;
	background-color: var(--wp--preset--color--yellow);
	padding: 1rem;
	padding-left: 0;
	position: relative;
	margin-top: 1.75rem;
	margin-bottom: var(--wp--preset--spacing--70);
}

.rdi-person-page-header-name-block:after {
	content: " ";
	position: absolute;
	background-color: var(--wp--preset--color--yellow);
	left: -50vw;
	top: 0;
	width: calc(100vw - (50vw - 632px));
	height: 100%;
	z-index: 0;
}

.rdi-person-page-header-content .entry-content a {
	color: var(--wp--preset--color--white);
}

.rdi-person-page h1 {
	text-transform: none;
	color: var(--wp--preset--color--dark-blue);
	text-transform: uppercase;
	z-index: 1;
}

.rdi-person-page-header .rdi-person-page-header-name-block-title {
	color: var(--wp--preset--color--dark-blue);
	z-index: 1;
	font-size: 1.375rem;
	margin-top: 0;
	position: relative;
	text-decoration: none;
	outline: none;
}

.rdi-person-page-header {
	background-color: var(--wp--preset--color--dark-blue);
	padding: var(--wp--preset--spacing--70);
	overflow: hidden;
	position: relative;
}

.rdi-person-page-header .wp-block-post-featured-image {
	z-index: 10;
}

.rdi-person-page-header::after {
	content: " ";
	position: absolute;
	background-color: var(--wp--preset--color--light-gray);
	right: -10vw;
	top: -5vh;
	width: 50vw;
	height: 100vh;
	z-index: 0;
}

.rdi-person-page-alt .rdi-person-page-header::after {
	transform: rotate(10deg);
}

.rdi-person-page-header .wp-block-post-author-name a {
	color: var(--wp--preset--color--yellow);
	font-size: 1.125rem;
}

.rdi-person-page-header figure {
	margin: 0 !important;
}

.rdi-person-page-header img {
	aspect-ratio: 1 / 1;
}

.rdi-person-page-header-inner {
	max-width: var(--content-max-width);
	margin: 0 auto;
}

.rdi-person-page-header .rdi-person-page-header-back {
	color: var(--wp--preset--color--white);
	font-size: 1.125rem;
	text-decoration: none;
	text-transform: uppercase;
	font-weight: 500;
	letter-spacing: 0.11em;
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
}

.rdi-person-page-header-content-wrapper {
	display: grid;
	grid-template-columns: 1.25fr 1fr;
	grid-template-rows: 1fr;
	gap: 0;
	grid-auto-flow: row;
	grid-template-areas: "content image";
}

.rdi-person-page-header-content {
	grid-area: content;
}

.rdi-person-page-header-image {
	grid-area: image;
	margin-top: -2rem;
}

.rdi-person-page .rdi-person-page-header-bio {
	color: var(--wp--preset--color--white);
	padding-right: 3.5rem;
	font-size: 1.25rem;
}

.wp-block-post.team-member figure {
	background-color: var(--wp--preset--color--light-gray);
	border-radius: 1rem;
}

.pattern-related-team-members {
	max-width: var(--content-max-width);
	margin: auto;
	padding: 2.5rem;
	padding-bottom: 2rem;
}

@media (max-width: 781px) {
	.rdi-person-page-header::after {
		display: none;
	}

	.rdi-person-page .entry-content {
		padding-right: 0;
	}

	.rdi-person-page-header {
		padding: var(--wp--preset--spacing--70) 2rem;
	}

	.rdi-person-page-header-content-wrapper {
		display: flex;
		flex-direction: column-reverse;
		gap: 1rem;
		padding-top: 2rem;
	}

	.rdi-person-page-header-image {
		margin-top: 0;
	}

	.rdi-people-page .columns-5,
	.pattern-related-team-members .columns-4 {
		grid-template-columns: 1fr 1fr !important;
	}
}

/* Contact Form */
.ngp-form.contact {
	max-width: 1280px !important;
	padding-bottom: 3.125rem;
}

.has-overlay {
	overflow: initial !important;
}

#fastaction-signup-hustle,
.ngp-form.contact .at-check.YesSignMeUpForUpdatesForBinder,
.ngp-form.contact .UpdateMyProfile,
.ngp-form.contact .at-markup.FastAction {
	display: none !important;
}

.ngp-form.contact .at-row.FirstName.LastName {
	gap: 1rem !important;
}

/* Donation Form */
.ngp-form.donate {
	max-width: 1280px !important;
	min-height: 800px;
}

.ngp-form.donate form {
	margin-top: 4rem !important;
}

.ngp-form header,
.ngp-form fieldset,
.ngp-form .at-form-submit {
	padding: 0 !important;
}

.ngp-form.donate header {
	position: static;
}

.ngp-form label,
.ngp-form legend,
.ngp-form .at-payment-method-buttons,
.ngp-form .at-recurring,
.ngp-form .at-tribute-gift,
.ngp-form .at-eft-accepted-here,
.ngp-form .at .at-check input + span,
.ngp-form .at-markup,
.ngp-form .at-radio {
	margin: 0 !important;
}

.ngp-form legend {
	padding: 0 !important;
}

.ngp-form.donate .at-eft-accepted-here .at-row-half {
	width: 100% !important;
}

.ngp-form.donate .at-row {
	gap: 1rem;
}

.ngp-form.donate header.HeaderHtml * {
	color: var(--wp--preset--color--contrast);
	font-family: var(--wp--preset--font-family--body);
	font-style: normal;
	font-weight: 400;
	line-height: 1.55;
	overflow-wrap: break-word;
	word-break: break-word;
	text-align: left;
	margin-block-start: 1.2rem;
	font-size: var(--wp--preset--font-size--350) !important;
	margin-block-end: 0;
}

.ngp-form.donate header.HeaderHtml strong {
	font-weight: 600;
}

.ngp-form.donate header.HeaderHtml a {
	text-decoration: underline;
}

.ngp-form * {
	font-family: var(--wp--preset--font-family--body) !important;
	font-size: 1rem !important;
}

.ngp-form .at-form-submit input[type="submit"] {
	box-shadow: none;
	outline-offset: 2px;
	box-sizing: border-box;
	display: inline-block;
	text-align: center;
	word-break: break-word;
	cursor: pointer;
	border-color: var(--wp--preset--color--contrast);
	border-width: 0;
	font-style: normal;
	line-height: inherit;
	padding-top: 1rem;
	padding-bottom: 1rem;
	text-decoration: none;
	background-color: var(--wp--preset--color--yellow);
	border-radius: 99px !important;
	color: var(--wp--preset--color--dark-blue);
	font-family: "Outfit", sans-serif;
	font-size: var(--wp--preset--font-size--400);
	font-weight: 600;
	padding-right: 4rem;
	padding-left: 4rem;
	text-transform: uppercase;
	user-select: none;
	margin-bottom: 4px !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
	margin-top: 2rem !important;
}

.ngp-form .ContributionInformation legend,
.ngp-form .at-title,
.ngp-form footer,
.ngp-form .secure-processing-single-step-div {
	display: none !important;
}

.ngp-form .at-form-submit {
	display: flex;
	justify-content: center;
	flex-direction: column;
	align-items: center;
}

.ngp-form.donate .at-radios {
	display: flex;
	flex-direction: column;
	gap: 1.125rem;
	margin-top: -1.125rem !important;
}

.ngp-form.donate .at-radios label.label-amount {
	font-style: normal;
	font-family: var(--wp--preset--font-family--heading);
	line-height: 1.2;
	color: var(--wp--preset--color--cyan-dark-blue);
	font-size: var(--wp--preset--font-size--800);
	font-weight: 500;
	background-color: #f4f4f4 !important;
	padding: 0.25rem 1rem !important;
	width: 100% !important;
	margin: 0;
	border-radius: 0.5rem !important;
	overflow: hidden;
	font-family: var(--wp--preset--font-family--heading) !important;
	font-size: 2rem !important;
	font-weight: 500 !important;
	line-height: 60px !important;
	text-align: left !important;
	text-underline-position: from-font !important;
	text-decoration-skip-ink: none !important;
}

.ngp-form .vgs-input-container iframe,
.ngp-form .select2-selection--single,
.ngp-form select,
.ngp-form .at-btn-radio {
	border-radius: 0.5rem !important;
}

.ngp-form.donate form .label-amount input + .label-otheramount-prefix {
	top: 0.3rem !important;
}

.ngp-form.donate form .label-amount input:required + .label-otheramount-prefix {
	color: var(--wp--preset--color--light-gray) !important;
}

.ngp-form.donate .at-radios label.label-amount.label-otheramount {
	background-color: transparent !important;
	padding: 0 !important;
	border-radius: 0 !important;
	font-size: 0 !important;
	line-height: 0 !important;
}

.ngp-form.donate .at-radios label.label-amount input {
	font-size: 2rem !important;
	font-family: var(--wp--preset--font-family--heading) !important;
}

.ngp-form.donate .at-radios label.label-amount input:required {
	background-color: var(--wp--preset--color--white) !important;
	color: var(--wp--preset--color--dark-blue) !important;
	border-width: 2px !important;
	border-color: var(--wp--preset--color--dark-blue) !important;
}

.ngp-form.donate .at-radios label.label-amount input:required:focus {
	border-color: var(--wp--preset--color--yellow) !important;
}

.ngp-form.donate .at-radios label.label-amount input:required::placeholder {
	color: var(--wp--preset--color--light-gray) !important;
}

.ngp-form.donate.at form .label-amount > a {
	height: 100%;
	width: 100%;
	background-color: #f4f4f4 !important;
}

.ngp-form.donate.at form .label-amount input[type="radio"]:checked + a {
	background-color: var(--wp--preset--color--yellow) !important;
}

.ngp-form.donate input {
	border-radius: 0.5rem !important;
}

.ngp-form.donate form {
	display: grid;
	grid-template-columns: 1fr 2fr;
	grid-template-rows: max-content max-content max-content max-content max-content max-content max-content;
	gap: 0px 0px;
	grid-auto-flow: row;
	grid-template-areas:
		"section section-4"
		"section-2 section-5"
		"section-3 section-6"
		"section-3 section-7"
		"submit submit";
	column-gap: 4rem;
}

.ngp-form.donate .ContributionInformation {
	grid-area: section;
}

.ngp-form.donate .TributeGift {
	grid-area: section-2;
}

.ngp-form.donate .RecipientInformation {
	grid-area: section-3;
}

.ngp-form.donate .ContactInformation {
	grid-area: section-4;
}

.ngp-form.donate .PaymentInformation {
	grid-area: section-5;
}

.ngp-form.donate .Interests {
	grid-area: section-6;
}

.ngp-form.donate .EmployerMatching {
	grid-area: section-7;
}

.ngp-form.donate .at-form-submit {
	grid-area: submit;
}

.ngp-form.donate .at-payment-method-buttons {
	padding-bottom: 1rem !important;
}

.ngp-form.donate .form-item-inhonororinmemoryof .radios {
	display: flex;
	gap: 0.5rem;
}

.ngp-form.donate .SelectedFrequency {
	font-weight: 600;
	margin-left: 0.25rem;
}

.ngp-form.donate .at-check input + span {
	margin-bottom: 0.25rem !important;
}

.ngp-form.donate .at-tribute-gift {
	padding-top: 1rem !important;
}

.ngp-form.donate .at-radio-set-buttons .at-btn-radio:focus {
	outline: none !important;
}

.ngp-form.donate
	.at-radio-set-buttons
	input[type="radio"]:checked
	+ label.at-btn-radio {
	border: 1px solid var(--wp--preset--color--yellow) !important;
	outline: 1px solid var(--wp--preset--color--yellow) !important;
}

.ngp-form input[type="text"],
.ngp-form input[type="password"],
.ngp-form input[type="date"],
.ngp-form input[type="datetime"],
.ngp-form input[type="datetime-local"],
.ngp-form input[type="month"],
.ngp-form input[type="week"],
.ngp-form input[type="email"],
.ngp-form input[type="number"],
.ngp-form input[type="search"],
.ngp-form input[type="tel"],
.ngp-form input[type="time"],
.ngp-form input[type="url"],
.ngp-form input[type="color"],
.ngp-form .select2-selection--single,
.ngp-form select,
.ngp-form .vgs-input-container iframe,
.ngp-form textarea {
	border: 1px solid hsl(224.44deg 23.89% 22.16% / 50%) !important;
}

@media (max-width: 966px) {
	.ngp-form .at-form-submit input[type="submit"] {
		width: 100% !important;
	}

	.ngp-form form {
		display: flex;
		flex-direction: column;
		gap: 1rem;
	}

	.ngp-form.donate .at-radio-set-buttons {
		gap: 0.5rem !important;
	}
}

@media (max-width: 480px) {
	.ngp-form.donate .at-row {
		gap: 0 !important;
	}
}

/* Read More Button */
.read-more-button {
	box-shadow: none;
	outline-offset: 2px;
	box-sizing: border-box;
	display: inline-block;
	text-align: center;
	word-break: break-word;
	cursor: pointer;
	border-color: var(--wp--preset--color--contrast);
	border-width: 0;
	font-style: normal;
	line-height: inherit;
	padding-top: 1rem;
	padding-bottom: 1rem;
	text-decoration: none;
	border-radius: 99px;
	font-family: "Outfit", sans-serif;
	font-size: var(--wp--preset--font-size--400);
	font-weight: 600;
	padding-right: 4rem;
	padding-left: 4rem;
	text-transform: uppercase;
	user-select: none;
	background-color: var(--wp--preset--color--cyan-dark-blue);
	color: var(--wp--preset--color--white);
	transition: background-color 0.2s ease;
}

/* VIP testimonial */
.vip-testimonials-container {
	height: 100%;
	display: grid !important;
	grid-template-columns: 1fr 1fr 1fr;
	grid-template-rows: 1fr;
}

.vip-testimonials-container.two-col {
	grid-template-columns: 1fr 1fr;
}

@media (max-width: 781px) {
	.vip-testimonials-container {
		display: flex !important;
		flex-direction: column !important;
		padding-top: 1rem;
	}

	.vip-testimonials-container .simple-card {
		min-width: unset;
	}
}

/* Simple Card */
.card-container {
	overflow-x: auto;
}

.simple-card .simple-card-author-container {
	margin: 0 !important;
	margin-top: 1rem !important;
}

.simple-card {
	min-width: 400px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: stretch;
	height: 100%;
}

.simple-card-white {
	width: 306px;
	border-radius: 1rem;
	background-color: var(--wp--preset--color--white);
	transition: background-color 0.2s ease;
	height: 100%;
}

.simple-card-white-container {
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: max-content;
	gap: 1rem;
	grid-template-columns: unset;
	max-width: unset !important;
	min-width: max-content !important;
}

.simple-card-white.with-border {
	border: 1px solid #afafaf80;
}

.simple-card-white:hover {
	text-decoration: none;
	background-color: color-mix(
		in srgb,
		var(--wp--preset--color--white) 90%,
		black
	) !important;
}

.border-thick {
	border-width: 2px !important;
}

.mt-0 {
	margin-top: 0 !important;
}

.pattern-post-meta {
	display: flex;
	flex-direction: column;
	gap: 0rem;
	justify-content: flex-start;
}

.pattern-post-meta * {
	margin: 0 !important;
}

.pattern-post-meta .wp-block-rdi-reading-time {
	color: var(--wp--preset--color--contrast-2);
	font-size: var(--wp--preset--font-size--200);
}

/* Buttons */
.wp-block-rdi-header .search-box form input[type="submit"],
.ngp-form.donate .at-form-submit input[type="submit"],
.wp-block-button .wp-block-button__link {
	transition: background-color 0.2s ease;
}

.wp-block-rdi-header .search-box form input[type="submit"]:focus,
.wp-block-rdi-header .search-box form input[type="submit"]:active,
.ngp-form.donate .at-form-submit input[type="submit"]:focus,
.ngp-form.donate .at-form-submit input[type="submit"]:active,
.wp-block-button .wp-block-button__link:focus,
.wp-block-button .wp-block-button__link:active {
	outline: 2px solid var(--wp--preset--color--yellow);
	outline-offset: 2px;
}

.wp-block-rdi-header .search-box form input[type="submit"]:hover,
.ngp-form.donate .at-form-submit input[type="submit"]:hover,
.wp-block-button .wp-block-button__link:hover {
	background-color: color-mix(
		in srgb,
		var(--wp--preset--color--yellow) 70%,
		white
	) !important;
}

.wp-block-button.is-style-secondary .wp-block-button__link {
	background-color: var(--wp--preset--color--cyan-dark-blue);
	color: var(--wp--preset--color--white);
	transition: background-color 0.2s ease;
}

.wp-block-button.is-style-secondary .wp-block-button__link:hover {
	background-color: color-mix(
		in srgb,
		var(--wp--preset--color--cyan-dark-blue) 80%,
		white
	) !important;
	color: var(--wp--preset--color--white);
}

.wp-block-button.is-style-secondary .wp-block-button__link:focus,
.wp-block-button.is-style-secondary .wp-block-button__link:active {
	outline: 2px solid var(--wp--preset--color--cyan-dark-blue);
	outline-offset: 2px;
}

.wp-block-button.is-style-outline .wp-block-button__link {
	background-color: transparent;
	color: var(--wp--preset--color--white);
	border: 1px solid var(--wp--preset--color--white);
	transition: background-color 0.2s ease;
}

.wp-block-button.is-style-outline .wp-block-button__link:hover {
	background-color: var(--wp--preset--color--white) !important;
	color: var(--wp--preset--color--cyan-dark-blue);
}

.wp-block-button.is-style-outline .wp-block-button__link:focus,
.wp-block-button.is-style-outline .wp-block-button__link:active {
	outline: 2px solid var(--wp--preset--color--white);
	outline-offset: 2px;
}

/* Image Lockup */
.pattern-image-lockup figure {
	display: flex;
	position: relative;
}

/* .pattern-image-lockup figure::before {
	content: "";
	position: absolute;
	top: 4rem;
	left: -2rem;
	width: 100%;
	height: calc(100% - 4rem);
	background-color: var(--wp--preset--color--yellow);
	border-radius: 0.75rem 0.75rem 0 0;
	z-index: 1;
} */

.pattern-image-lockup figure img {
	position: relative;
	border-radius: 1rem 1rem 0 0;
	z-index: 2;
}

.clear-header-height-padding {
	padding-top: var(--rdi-header-height) !important;
}

.wp-block-rdi-category-filter .category-filter-placeholder {
	height: 50px;
}

.wp-block-rdi-category-filter .category-filter-placeholder,
.wp-block-rdi-category-filter select {
	min-width: 250px;
	box-sizing: border-box;
	font-size: 1rem;
	cursor: pointer;
	display: inline-block;
	text-align: left;
	word-break: break-word;
	border: none;
	font-style: normal;
	line-height: inherit;
	text-decoration: none;
	border-radius: 8px;
	font-family: "Outfit", system-ui, sans-serif;
	font-weight: 600;
	padding: 0.75rem;
	padding-right: 2.5rem;
	box-shadow: none;
	border: 1px solid #444c62;
	color: #444c62;
	appearance: none;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23444c62' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 0.75rem center;
	background-size: 1em;
}

@media (max-width: 781px) {
	.wp-block-rdi-category-filter select {
		min-width: unset;
		max-width: 170px;
	}

	.pattern-image-lockup > .wp-block-group {
		display: flex;
		flex-direction: column;
		gap: 1rem;
	}
}

/* Articles Page */
.rdi-post-items .wp-block-group > ul {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 1.5rem;
	row-gap: 3rem;
}

.rdi-post-items .wp-block-group > ul > li:first-child {
	grid-column: 1 / -1 !important;
}

.rdi-post-items
	.wp-block-group
	> ul
	> li:first-child
	> a
	> .wp-block-group
	> .wp-block-group {
	margin-top: 0;
	padding-top: 0;
	display: grid;
	grid-template-columns: 2fr 1fr;
	gap: 2rem;
	max-width: unset;
}

.rdi-post-items .wp-block-group > ul > li:first-child .wp-block-post-title {
	font-size: var(--wp--preset--font-size--700) !important;
}

.rdi-post-items .wp-block-group > ul > li:first-child .wp-block-rdi-authors {
	font-size: var(--wp--preset--font-size--350) !important;
}

.rdi-post-items .wp-block-group > ul > li:first-child .wp-block-post-date,
.rdi-post-items
	.wp-block-group
	> ul
	> li:first-child
	.wp-block-rdi-reading-time {
	font-size: var(--wp--preset--font-size--300) !important;
}

.rdi-post-items .wp-block-group > ul > li:first-child figure {
	aspect-ratio: 16 / 9 !important;
}

.rdi-post-items .wp-block-group > ul > li:nth-child(14n + 14),
.rdi-post-items .wp-block-group > ul > li:nth-child(14n + 15) {
	grid-column: span 2;
}

.rdi-post-items .wp-block-group > ul > li:nth-child(14n + 14) figure,
.rdi-post-items .wp-block-group > ul > li:nth-child(14n + 15) figure {
	aspect-ratio: 16 / 9 !important;
}

@media (max-width: 1158px) {
	.rdi-post-items.articles .wp-block-group > ul > li:first-child figure {
		aspect-ratio: 4 / 3 !important;
	}

	.rdi-post-items .wp-block-group > ul {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		row-gap: 2rem;
	}

	.rdi-post-items.articles .wp-block-group > ul > li:nth-child(14n + 14) figure,
	.rdi-post-items.articles
		.wp-block-group
		> ul
		> li:nth-child(14n + 15)
		figure {
		aspect-ratio: 4 / 3 !important;
	}
}

@media (max-width: 781px) {
	.rdi-post-items
		.wp-block-group
		> ul
		> li:first-child
		> a
		> .wp-block-group
		> .wp-block-group {
		grid-template-columns: 1fr;
		gap: 10px !important;
	}

	.rdi-post-items .wp-block-group > ul > li:first-child .wp-block-rdi-authors {
		font-size: var(--wp--preset--font-size--300) !important;
	}

	.rdi-post-items .wp-block-group > ul > li:first-child .wp-block-post-date,
	.rdi-post-items
		.wp-block-group
		> ul
		> li:first-child
		.wp-block-rdi-reading-time {
		font-size: var(--wp--preset--font-size--200) !important;
	}

	.rdi-post-items .wp-block-group > ul > li:first-child .wp-block-post-title {
		font-size: var(--wp--preset--font-size--500) !important;
	}

	.rdi-post-items .wp-block-group > ul {
		display: flex !important;
		flex-direction: column !important;
	}
}

/* General Media Queries */
@media (max-width: 1158px) {
	.has-1000-font-size {
		font-size: 3.5rem !important;
	}

	.columns-5 {
		grid-template-columns: 1fr 1fr 1fr;
	}

	.columns-3,
	.columns-4 {
		grid-template-columns: 1fr 1fr;
	}

	.ngp-form.donate form {
		display: flex;
		flex-direction: column;
		gap: 1rem;
	}

	.ngp-form.donate .TributeGift {
		margin-top: 0;
	}
}

@media (max-width: 781px) {
	main .is-layout-grid {
		grid-template-columns: 1fr;
	}

	#wpadminbar {
		position: fixed !important;
	}

	.wp-block-post-excerpt__excerpt {
		font-size: 1rem !important;
	}

	.has-1000-font-size {
		font-size: 2.5rem !important;
	}

	.has-500-font-size {
		font-size: 1.25rem !important;
	}

	.has-700-font-size {
		font-size: 1.5rem !important;
	}

	.has-600-font-size {
		font-size: 1.25rem !important;
	}

	.read-more-button,
	.wp-block-button__link.wp-element-button {
		font-size: 1rem !important;
	}

	.mobile-grid-column {
		display: flex !important;
		flex-direction: column;
	}

	.mobile-gap-medium {
		gap: 2.5rem !important;
	}

	.mobile-padding-small {
		padding: 1.5rem !important;
	}
}

/* Mailchimp Form Styling */
#mc_embed_shell {
	max-width: 100%;
}

#mc_embed_shell.yellow-bg {
	background-color: var(--wp--preset--color--yellow) !important;
	padding: 2rem;
	border-radius: 1rem;
}

#mc_embed_shell * {
	box-sizing: border-box;
}

#mc_embed_signup form {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 1rem;
	font-size: 1.125rem;
	padding: 0;
}

#mc_embed_signup .mc-field-group {
	margin-bottom: 1rem;
}

#mc_embed_signup input[type="text"],
#mc_embed_signup input[type="email"],
#mc_embed_signup select {
	border-radius: 0.5rem;
	padding: 0 1rem;
	font-size: var(--wp--preset--font-size--350);
	font-family: "Outfit", sans-serif;
	flex: 1;
	border: none;
	min-height: 56px;
	width: 100%;
	background-color: var(--wp--preset--color--base);
}

#mc_embed_signup select {
	appearance: none;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23444c62' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 0.75rem center;
	background-size: 1em;
	width: 100%;
}

/* Style for the select when no real option is selected */
#mc_embed_signup select option[value=""] {
	color: #888888;
}

/* This targets the first option when it's selected/showing */
#mc_embed_signup select option:first-child {
	color: #888888;
}

/* For browsers that support it, we can use this more specific selector */
#mc_embed_signup select:has(option[value=""]:checked) {
	color: #888888;
}

/* For when the first option is selected and showing */
#mc_embed_signup select[data-chosen=""] {
	color: #888888;
}

#mc_embed_signup input:focus,
#mc_embed_signup select:focus {
	outline: 2px solid var(--wp--preset--color--dark-blue);
	outline-offset: 0px;
	z-index: 10;
}

#mc_embed_signup .input-group {
	margin-top: 1rem;
}

#mc_embed_signup .input-group strong {
	display: block;
	margin-bottom: 0.5rem;
	font-weight: normal;
}

#mc_embed_signup .input-group ul {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

#mc_embed_signup .input-group li {
	display: flex;
	align-items: center;
	gap: 0.5rem;
}

#mc_embed_signup .input-group input[type="checkbox"] {
	width: 18px;
	height: 18px;
}

#mc_embed_signup #mc-embedded-subscribe {
	box-shadow: none;
	outline-offset: 2px;
	box-sizing: border-box;
	display: inline-block;
	text-align: center;
	word-break: break-word;
	cursor: pointer;
	border: none;
	font-style: normal;
	line-height: inherit;
	padding: 1rem 1.5rem;
	text-decoration: none;
	background-color: var(--wp--preset--color--yellow);
	border-radius: 99px;
	color: var(--wp--preset--color--dark-blue);
	font-family: "Outfit", sans-serif;
	font-size: var(--wp--preset--font-size--400);
	font-weight: 600;
	text-transform: uppercase;
	transition: background-color 0.2s ease;
	width: 100%;
	max-width: 300px;
	margin-top: 1rem;
}

/* Secondary button style when parent has yellow background */
.yellow-bg #mc_embed_signup #mc-embedded-subscribe {
	background-color: var(--wp--preset--color--cyan-dark-blue);
	color: var(--wp--preset--color--white);
}

.yellow-bg #mc_embed_signup #mc-embedded-subscribe:hover {
	background-color: color-mix(
		in srgb,
		var(--wp--preset--color--cyan-dark-blue) 80%,
		white
	);
}

.yellow-bg #mc_embed_signup #mc-embedded-subscribe:focus,
.yellow-bg #mc_embed_signup #mc-embedded-subscribe:active {
	outline: 2px solid var(--wp--preset--color--cyan-dark-blue);
	outline-offset: 2px;
}

#mc_embed_signup #mc-embedded-subscribe:hover {
	background-color: color-mix(
		in srgb,
		var(--wp--preset--color--yellow) 70%,
		white
	);
}

#mc_embed_signup #mc-embedded-subscribe:focus,
#mc_embed_signup #mc-embedded-subscribe:active {
	outline: 2px solid var(--wp--preset--color--yellow);
	outline-offset: 2px;
}

#mc_embed_signup div.mce_inline_error {
	color: #581d1d !important;
	margin-top: 0.5rem !important;
	background: transparent !important;
	font-weight: normal !important;
	padding: 0 !important;
}

#mc_embed_signup .rdi-field-group {
	display: flex;
	width: 100%;
	gap: 1rem;
}

#mc_embed_signup .rdi-field-group .mc-field-group {
	flex: 1;
}

#mc_embed_signup #mce-success-response,
#mc_embed_signup #mce-error-response {
	background: rgb(69 76 98 / 61%);
	padding: 1rem;
	border-radius: 8px;
	color: #ffffff;
	margin-top: 2rem;
	margin-bottom: 1rem;
}

@media (max-width: 781px) {
	#mc_embed_signup input[type="text"],
	#mc_embed_signup input[type="email"],
	#mc_embed_signup select {
		font-size: 1rem;
		padding: 0 1rem;
	}

	#mc_embed_signup #mc-embedded-subscribe {
		font-size: 1rem;
		padding: 1rem 0.75rem;
		width: 100%;
		max-width: 100%;
		line-height: 1;
	}
}
