/*
 * Theme Name: Generate Press - CPF Child Theme
 * Author: Elby Bruce
 * Description: Custom theme designed by Austin Geter.
 * Version: 0.1
 * Template: generatepress
 * Text Domain: cpf-theme-domain
 * Tags: CPF
*/



/* TYPOGRAPHY */

html, body * {
	word-break: keep-all;
}
html, body, p, input, select, textarea, .jp-relatedposts * {
	font-family: 'TT Hoves';
	font-display: swap;
}
h1 {
	font-size: 3em;
}
h1, h2 {
	font-weight: 900;
	text-transform: uppercase;
}
h3, h4, h5, h6, button, .wp-block-button__link, #primary-menu a, input[type=submit], .ub-button-container a {
	font-weight: 800;
	text-transform: uppercase;
}
.header-padding h1,
.header-padding p {
	margin: 0;
	padding: 0;
	text-align: center;
}
.entry-header h1 {
	margin: 1em;
	text-align: center;
}
.inside-article p a,
.inside-article li a {
	border-bottom: 3px var(--light-blue) solid;
	color: inherit;
	font-weight: 500;
	text-decoration: none;
}
.wp-block-social-links a {
	border: none;
}
.ub-feature-box p.ub-feature-title a {
	font-weight: 800;
}
blockquote {
  border-color: var(--green);
}
blockquote p {
	font-weight: 800;
}
.#jp-relatedposts .jp-relatedposts-items .jp-relatedposts-post h4.jp-relatedposts-post-title a {
	font-size: 1.2em !important;
	font-weight: 800 !important;
	margin-bottom: 0.4em !important;
	text-transform: uppercase !important;
}
@media (max-width: 800px) {
	h1, h2 {
		font-size: 1.6em !important;
	}
}


/* GLOBAL */

html, body {
	background: var(--white);
}
body {
	overflow-x: hidden;
	word-break: break-word;
}
.site-main {
	margin-bottom: 0 !important;
}
.inside-article {
	padding-bottom: 0 !important;
}
.alignfull {
	padding: 0;
}
.no-sidebar .entry-content .alignfull {
	margin-bottom: 0!important;
}
.separate-containers .site-main,
.separate-containers .inside-article {
	margin-top: 0;
	padding-top: 0;
}
.header-padding {
	margin: 0;
	padding: 1em 0 !important;
}
.header-padding .wp-block-column {
	align-items: center;
	display: flex;
	justify-content: center;
	margin-bottom: 0;
}
.wp-block-button,
.wp-block-button a {
	width: 100%;
}
.ub-buttons > .ub-button-container {
	margin: 0 1em 0 0;
}
.ub-button-container a {
	font-size: 1em !important;
	padding: 10px 20px !important;
}
.ub-button-icon-holder svg {
	width: 1em;
}
.wp-block-button__link,
input[type=submit],
.ub-button-container a {
	transition: all 0.5s ease;
}
.wp-block-button·a,
.ub-button-container a·{
	box-shadow: 0 0 10px 2px rgba(0,0,0,.15);
}
.ub-bordered-box {
	padding: 2em !important;
}
.four-columns {
	padding: 0 6% !important;
}
.four-columns .wp-block-column {
	margin: 0 1em;
}
.four-columns .wp-block-column:not(:first-child) {
	margin-left: 3em;
}
.four-columns .program-logo,
.four-columns .program-logo img {
	max-height: 90px !important;
	text-align: center;
	width: auto !important;
}
.four-columns .program-logo {
	margin-bottom: 1.2em;
}
.wp-block-image {
	margin: 0;
}
figure.alignleft {
	margin: 0.5em 2em 1.5em 0 !important;
}
figure.alignright {
	margin: 0.5em 0 1.5em 2em !important;
}
.entry-content .alignwide {
	margin: 0 !important;
	width: 100% !important;
}
.wp-block-column.heavy-padding {
	margin-left: 0 !important;
}
.heavy-padding {
	padding: 4em;
}
.entry-content .not-quite-wide-width {
	margin: auto !important;
	max-width: 1200px !important;
	padding: 0 1em;
	position: relative;
}
.entry-content .about-medium-width {
	margin: auto !important;
	max-width: 600px !important;
	padding: 0 1em;
}
.ub-bordered-box {
	height: 100% !important;
	padding: 1.5em !important;
}
.entry-content ol {
	counter-reset: planet;
	list-style: none !important;
	margin-left: 3.1em;
	padding-left: 0;
}
.entry-content ol li {
	counter-increment: planet;
	display: block;
	margin-bottom: 0.5em;
}
.entry-content ol li::before {
	color: var(--medium-blue);
	content: counters(planet, '.') ' ';
	display: block;
	float: left;
	font-size: 1.5em;
	font-weight: bold;
	margin: -0.2em 0 0 -2em !important;
	padding-right: 0.5em;
	text-align: right;
	width: 2em;
}
.entry-content ol li ol {
	margin-top: 0.5em;
}
.entry-content ol li ol li::before {
	font-size: 1.2em !important;
	margin-top: -0.1em !important;
}
.entry-content ul:not(.wp-block-social-links) {
	counter-reset: captain;
	list-style-type: none;
	margin: 1em 2em 1em 4em !important;
}
.entry-content ul:not(.wp-block-social-links) li {
	counter-increment: captain;
	margin: 0.5em 0;
}
.entry-content ul:not(.wp-block-social-links) li::before {
	background: var(--green);
	content: '';
	display: block;
	float: left;
	font-size: 1.5em;
	font-weight: bold;
	height: 5px;
	margin: 0.44em 0.5em 0 -1.3em !important;
	padding-right: 0;
	text-align: right;
	width: 0.7em;
}
.entry-content ol ul {
	margin-left: 3em ! important;
}
.ub-bordered-box ul li::before {
	background: var(--contrast);
}
.screen-reader-only {
	display: block;
	height: 0;
	margin: 0;
	overflow: hidden;
	padding: 0;
	width: 0;
}
.no-padding {
	padding: 0 !important;
}
.no-margins .wp-block-column {
	margin: 0 !important;
}
.wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column:not(:first-child).no-margins {
	margin-left: 0 !important;
}
.no-underlines a {
	text-decoration: none !important;
}
#footer-widgets {
	padding: 50px 0 !important;
}
#footer-widgets .footer-widgets-container {
	padding-top: 0;
	padding-bottom: 0;
}
.social-footer {
	margin-right: 2em !important;
}
.footer-widget-1 aside {
	max-width: 300px;
}
.inside-footer-widgets > div {
	flex: 1 1 auto;
}
#menu-footer-menu-footer {
	text-align: right;
}
#menu-footer-menu-footer li {
	display: inline-block;
	padding-left: 1.5em;
}
#menu-footer-menu-footer li:first-child {
	padding-left: 0;
}
.site-footer #menu-footer-menu-footer a {
	font-weight: 800 !important;
	text-decoration: none;
}
.site-info {
	display: none;
}
@media (max-width: 600px) {
	.site-footer #menu-footer-menu-footer li {
		display: block;
		padding-left: 0;
		text-align: center;
	}
}


/* HEADER NAVIGATION */

.site-logo {
	max-width: 200px;
}
#primary-menu > ul > li:last-child a {
	background: var(--red);
	border-radius: 1em;
	box-shadow: 0 0 10px 2px rgba(0,0,0,.15);
	color: var(--white);
	line-height: 2.1em;
	min-width: 130px;
	padding: 0 1em;
	text-align: center;
	transition: background-color 0.7s ease;
}
#primary-menu > ul > li:last-child a:hover {
	background: var(--contrast);
}
#primary-menu .sub-menu {
	border: none;
	box-shadow: 0px 0px 10px 5px #00000026;
	margin-bottom: 1em;
}
#primary-menu .sub-menu a {
	border-radius: 0;
	font-weight: 600;
	margin: 0;
	padding: 0.5em 2em;
	text-transform: unset;
}
#primary-menu .sub-menu li:first-child {
	padding-top: 1.5em;
}
#primary-menu .sub-menu li:last-child {
	padding-bottom: 1.5em;
}
.gp-icon svg {
  height: 1.25em;
  width: 1.25em;
  top: .26em;
}
.site-header {
	background: rgba(255,255,255,0);
	z-index: 10;
}
.sub-menu {
	border: 2px var(--contrast) solid;
	border-radius: 10px;
	overflow: hidden;
}
.sub-menu li:first-child a {
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
}
.sub-menu li:last-child a {
	border-bottom-right-radius: 10px;
	border-bottom-left-radius: 10px;
}
.menu-item-has-children .dropdown-menu-toggle {
	padding-right: 8px;
}
.main-navigation .main-nav > ul > li:last-child {
	padding-left: 20px;
}


/* DOT OVERLAY BACKGROUND */

.dots-overlay {
	background-image: url(/wp-content/uploads/dots.png), linear-gradient(90deg,rgba(26,189,201,1),rgba(84,197,239,1));
	min-height: 160px;
	padding: 0 1em;
}
.dots-overlay.has-green-background-color,
.alignfull.has-green-background-color {
	background-image: url(/wp-content/uploads/dots.png), linear-gradient(90deg,rgba(67, 176, 77,1),rgba(0, 159, 63,1));
}
.dots-overlay.has-dark-blue-background-color,
.alignfull.has-dark-blue-background-color {
	background-image: url(/wp-content/uploads/dots.png), linear-gradient(90deg,rgba(0, 73, 88, 1),rgba(7, 122, 145, 1));
}
.dots-overlay.has-medium-blue-background-color,
.alignfull.has-medium-blue-background-color {
	background-image: url(/wp-content/uploads/dots.png), linear-gradient(90deg,rgba(7, 122, 145, 1),rgba(84, 197, 239, 1));
}
.dots-overlay.has-light-blue-background-color,
.alignfull.has-light-blue-background-color {
	background-image: url(/wp-content/uploads/dots.png), linear-gradient(90deg,rgba(26,189,201,1),rgba(84,197,239,1));
}
.dots-overlay.has-lightest-blue-background-color,
.alignfull.has-lightest-blue-background-color {
	background-image: url(/wp-content/uploads/dots.png), linear-gradient(rgba(147, 218, 246, 1),rgba(84, 197, 239, 1));
}
.dots-overlay.has-red-background-color,
.alignfull.has-red-background-color {
	background-image: url(/wp-content/uploads/dots.png), linear-gradient(90deg,rgba(229, 34, 45, 1),rgba(255, 203, 21, 1));
}
.dots-overlay.has-yellow-background-color,
.alignfull.has-yellow-background-color {
	background-image: url(/wp-content/uploads/dots.png), linear-gradient(90deg,rgba(220, 100, 39, 1),rgba(255, 203, 21, 1));
}
.dots-overlay.has-contrast-background-color,
.alignfull.has-contrast-background-color {
	background-image: url(/wp-content/uploads/dots.png), linear-gradient(90deg,rgba(10, 10, 10, 1),rgba(50, 50, 50, 1));
}
.dots-overlay-pa {
	background: url(/wp-content/uploads/Protect-Our-Future.jpg) center center !important;
	background-size: cover;
}
.dots-overlay-plg {
	background: url(/wp-content/uploads/PLG.jpg) center center !important;
	background-size: cover;
}
.dots-overlay-plg-sp {
	background: url(/wp-content/uploads/PLG-SP.jpg) center center !important;
	background-size: cover;
}
.dots-overlay-pgg {
	background: url(/wp-content/uploads/01_HeroSection-min.png) center center !important;
	background-size: cover;
}
.dots-overlay-pgg-sp {
	background: url(/wp-content/uploads/PGG-SP.jpg) center center !important;
	background-size: cover;
}
.dots-overlay-ph {
	background: url(/wp-content/uploads/PH.jpg) center center !important;
	background-size: cover;
}
.dots-overlay-ph-sp {
	background: url(/wp-content/uploads/PH-SP.jpg) center center !important;
	background-size: cover;
}
.program-header {
	margin: 0;
	padding: 1em 0 !important;
}
.program-header .wp-block-column {
	align-items: center;
	display: flex;
	justify-content: center;
	margin-bottom: 0;
}
.program-header figure,
.program-header img {
	max-height: 130px !important;
	width: auto !important;
}


/* HOMEPAGE */

.home .entry-header {
	display: none;
}
.home .inside-article .entry-content:nth-child(2) {
	margin-top: 0;
}
.alignfull.homepage-hero {
	margin-top: -200px;
	padding-top: 200px;
	padding-right: 50px;
	padding-left: 50px;
}
.homepage-hero .wp-block-media-text__content {
	padding-left: 0 !important;
}
.wp-block-jetpack-instagram-gallery {
	max-width: 1200px;
	padding: 0 1em;
}
.wp-block-jetpack-instagram-gallery__grid .wp-block-jetpack-instagram-gallery__grid-post {
	border: 4px var(--white) solid !important;
	border-radius: 1em !important;
	height: 0 !important;
	margin-left: -4px;
	overflow: hidden;
	padding: 50% !important;
	position: relative !important;
	width: 0 !important;
}
.wp-block-jetpack-instagram-gallery__grid .wp-block-jetpack-instagram-gallery__grid-post * {
	height: 100% !important;
	left: 0;
	position: absolute !important;
	top: 0;
	width: 100% !important;
}


/* NEWS & RESOURCE POSTS */

.single-post #page,
.single-book #page,
.single-collection #page,
.single-educator_resource #page,
.single-exploration #page,
.single-recipe #page {
	max-width: 100%;
}
.single-post #page .inside-article header,
.single-collection #page .inside-article header,
.single-educator_resource #page .inside-article header,
.single-exploration #page .inside-article header,
.single-recipe #page .inside-article header {
	background-position: center center;
	background-size: cover;
	display: block;
	margin: 0 -40px 2em -40px;
	overflow: hidden;
	padding: 3em 2em;
	position: relative;
	width: calc(100% + 80px);
}
.single-post #page .inside-article header::before,
.single-educator_resource #page .inside-article header::before,
.single-exploration #page .inside-article header::before,
.single-recipe #page .inside-article header::before {
	background: rgba(7, 122, 145, 0.85);
	content: "";
	display: block;
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 0;
}
.single-post #page .inside-article header h1,
.single-post #page .inside-article header time,
.single-recipe #page .inside-article header h1,
.single-recipe #page .inside-article header time,
.single-collection #page .inside-article header h1,
.single-educator_resource #page .inside-article header h1,
.single-educator_resource #page .inside-article header p,
.single-exploration #page .inside-article header h1,
.single-exploration #page .inside-article header p {
	color: var(--white);
	margin: 0;
	position: relative;
	text-align: center;
	z-index: 1;
}
.single-educator_resource #page .inside-article header p,
.single-exploration #page .inside-article header p {
	margin-top: 1em;
}
.single-post #page .inside-article header time,
.single-recipe #page .inside-article header time {
	display: block;
	margin: 1em 0 0 0;
}
.single-post #page .inside-article .entry-content,
.single-recipe #page .inside-article .entry-content,
.single-collection #page .inside-article .entry-content,
.single-educator_resource #page .inside-article .entry-content,
.single-exploration #page .inside-article .entry-content {
	margin: 3em auto 6em auto;
	max-width: 1000px;
}
.single-post #page .inside-article .entry-content img,
.single-recipe #page .inside-article .entry-content img,
.single-collection #page .inside-article .entry-content img,
.single-educator_resource #page .inside-article .entry-content img,
.single-exploration #page .inside-article .entry-content img {
	border-radius: 1em;
	overflow: hidden;
}

.single-recipe h2 {
	font-size: 1.5em;
}
.recipe-ingredients {
	background: var(--light-gray);
	border-radius: 1em;
	margin-bottom: 1.5em;
	padding: 1.5em;
}
.recipe-intro {
	font-style: italic;
}
.recipe-ingredients ul li {
	margin-bottom: 0.5em !important;
}
.recipe-ingredients br {
	content: "";
	display: block !important;
	margin-bottom: 0.5em !important;
}
.recipe-time strong {
	padding-right: 0.4em;
	text-transform: uppercase;
}
.recipe-preparation ol li::before {
	color: var(--green);
}


/* PEOPLE PAGE */

.bio {
	padding-bottom: 7em !important;
}
.bio h2 {
	font-size: 1.5em;
}
.bio img {
	border-radius: 1em !important;
}
.people .wp-block-columns.alignwide {
	margin-bottom: 10px;
}
.people figure {
	border-radius: 1em;
	display: block;
	margin-bottom: 2em;
	overflow: hidden;
	padding: 0;
	position: relative;
	z-index: 0;
}
.people figcaption {
	background: var(--medium-blue);
	bottom: 0;
	color: #FFF;
	display: block;
	font-size: 1em;
	font-weight: 600;
	margin: 0 !important;
	padding: 5px;
	pointer-events: none;
	position: absolute;
	text-align: center;
	width: 100%;
	z-index: 1;
}


/* LIBRARY PAGES */

.single-book,
.single-collection,
.single-educator_resource,
.single-exploration,
.wp-block-columns.book,
.wp-block-columns.collection,
.wp-block-columns.exploration {
	display: block !important;
}
.single-collection .entry-header {
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	margin-bottom: 3em;
	max-width: 100vw;
	padding: 3em;
	width: 100vw;
}
.single-collection .entry-header .collection-header-box {
	background: rgba(7, 122, 145, 0.95);
	color: var(--white);
	margin: 0 auto;
	max-width: 900px;
	padding: 3em;
	text-align: center;
}
.single-collection .entry-header .collection-header-box .entry-title {
	color: var(--white);
	margin: 0 0 0.8em 0;
}
.single-collection .entry-header .collection-header-box p:last-child {
	margin-bottom: 0;
	padding-top: 1.5em;
	position: relative;
}
.single-collection .entry-header .collection-header-box p:last-child::before {
	background: var(--white);
	content: "";
	display: block;
	height: 3px;
	left: calc(50% - 70px);
	position: absolute;
	top: 0;
	width: 140px;
}
.back_to_collection {
	margin-bottom: 2em;
}
.exploration-header,
.standards,
.materials,
.procedures,
.essential-questions,
.standards-addressed {
	display: block;
	margin-bottom: 2em;
	width: 100%;
}
.explorations,
.resources,
.reading {
	display: grid !important;
	flex-direction: row;
	gap: 2em;
	grid-template-columns: 1fr 1fr 1fr;
	justify-items: stretch;
	margin: 3em 0 4em 0;
	width: 100%;
}
.explorations h2,
.resources h2,
.reading h2 {
	display: block !important;
	grid-column-start: 1;
	grid-column-end: span 3;
	margin-bottom: 0;
	width: 100% !important;
}
.exploration-listing a,
.resource-listing a {
	background: var(--dark-blue);
	border-radius: 1em;
	display: block;
	overflow: hidden;
	text-decoration: none;
}
.exploration-listing a .image,
.resource-listing a .image {
	background: url(/wp-content/uploads/news-background.jpg) center center;
	background-size: cover;
	display: block;
	max-height: 320px;
	min-height: 160px;
	overflow: hidden;
}
.exploration-listing a .image figure,
.resource-listing a .image figure {
	display: block;
	height: 100%;
	min-height: 220px;
	width: 100%;
}
.exploration-listing a .image img,
.resource-listing a .image img {
	border-radius: 0 !important;
	margin-bottom: -0.4em;
	width: 100%;
}
.exploration-listing a h3,
.resource-listing a h3 {
	color: var(--white);
	font-size: 1em;
	padding: 1.2em 1.5em !important;
	text-decoration: none;
}
.exploration-listing a p,
.resource-listing a p {
	color: var(--white);
	font-size: 0.8em !important;
	font-weight: 100 !important;
	margin-top: -5px;
	padding: 0 1.8em 2.2em 1.8em !important;
}
.reading .reading-intro {
	grid-column: span 3;
}
.reading .book-listing {
	background: #f4f4f4;
	border-radius: 1em;
	overflow: hidden;
	padding: 0;
}
.reading .book-listing h3 {
	font-size: 1.5em;
	margin: 0 0 0.5em 0;
	padding: 0.8em 0.9em 0.4em 0.9em;
	text-transform: none;
}
.reading .book-listing p {
	line-height: 1.3em;
	margin: 0;
	padding: 0.5em 1.3em !important;
}
.reading .information-link {
	align-self: flex-end !important;
	display: flex;
	margin: 2em 1.25em 1.25em 1.25em;
	width: calc(100% - 2.5em);
}
.single-book .information-link {
	margin: 1em 0 5em 0;
}
.information-link a .button-text {
	display: inline-block;
	position: relative;
	top: -2px;
}
.information-link a .ub-button-icon-holder {
	margin-left: 1em;
}
.information-link a .ub-button-icon-holder svg {
	margin-bottom: -3px;
}
.exploration-header {
	background: var(--light-gray);
	border-radius: 1em;
	display: grid !important;
	flex-direction: row;
	gap: 2em;
	grid-template-columns: 1fr 1fr;
	justify-items: stretch;
	padding: 2em 2.4em 3em 2.4em;
}
.exploration-header .goal {
	display: block !important;
	grid-column-start: 1;
	grid-column-end: span 2;
	width: 100% !important;
}


/* MEDIA & TEXT BLOCK */

.wp-block-media-text__media {
	display: block;
	max-height: 70%;
	padding-bottom: 150px;
}
.wp-block-media-text__media picture,
.wp-block-media-text__media picture img {
	display: block;
	height: 320px !important;
	margin: auto;
	max-height: 100% !important;
	max-width: 100% !important;
	width: auto !important;
}
.bubble-image.wp-block-media-text.is-image-fill .wp-block-media-text__media {
	border: 10px var(--white) solid;
	border-radius: 100%;
	height: 400px !important;
	max-height: 100% !important;
	width: 400px !important;
}
.wp-block-media-text__content {
	margin: 0 !important;
	padding: 0 10%;
}
.has-background .wp-block-media-text__content {
	margin: 0 !important;
	padding-right: 0 20% 0 0;
}

@media (max-width: 991.98px) {
	.has-background .wp-block-media-text__content,
	.wp-block-media-text__content {
		margin: 0 !important;
		padding: 0 !important;
	}
	.bubble-image.wp-block-media-text.is-image-fill .wp-block-media-text__media,
	.wp-block-media-text__media {
		height: 250px !important;
		margin: 2em auto 1em auto !important;
		width: 250px !important;
	}
}


/* FEATURED BOXES */

.featured-boxes-dark {
	align-content: stretch;
}
.featured-boxes-dark .ub-feature-box {
	background: var(--medium-blue);
	border-radius: 1em;
	box-shadow: 0px 0px 10px 5px #00000026;
	color: var(--white);
	overflow: hidden;
}
.featured-boxes-dark a {
	color: var(--white);
}
.featured-boxes-dark a:hover {
	color: var(--white);
}
.featured-boxes-dark .ub-feature,
.featured-boxes-dark .ub-feature-img,
.featured-boxes-dark .ub-feature-img img {
	margin: 0;
	padding: 0;
	width: 100%;
}
.featured-boxes-dark .ub-feature p {
	margin: 1em 1em 2em 1em;
}
.ub-feature-title {
	font-weight: 600;
	margin: 10px 0 !important;
	text-transform: uppercase;
}
.ub-feature-title a {
	font-size: 0.7em;
	text-decoration: none;
}


/* BORDER BOXES WITH IMAGE */

.cpf-border-box-image .ub-styled-box {
	border: none !important;
	overflow: hidden;
	padding: 0 !important;
}
.cpf-border-box-image .ub-styled-box > * {
	padding: 0 1.3em 0.5em 1.3em !important;
}
.cpf-border-box-image .ub-styled-box figure {
	margin-bottom: 2em !important;
	padding: 0 !important;
}


/* ACCORDION */

.wp-block-ub-content-toggle-accordion {
	border-color: var(--light-gray) !important;
	border-radius: 1em;
	border-width: 1px;
	overflow: hidden;
}
.wp-block-ub-content-toggle-accordion-title-wrap {
	background: var(--dark-blue) !important;
	font-weight: 600;
	padding: 0.4em 1em 0.4em 0.4em;
}
.has-background .wp-block-ub-content-toggle-accordion-title-wrap {
	background: var(--contrast) !important;
}
.wp-block-ub-content-toggle-accordion-title {
	color: var(--white) !important;
	font-size: 1.3em;
	text-transform: none;
}
.wp-block-ub-content-toggle-accordion-title-wrap p,
.wp-block-ub-content-toggle-accordion-toggle-wrap {
	color: var(--white) !important;
}
.wp-block-ub-content-toggle-accordion-content-wrap {
	background: var(--white);
}
.wp-block-ub-content-toggle-accordion-content-wrap > * {
	padding: 0 1.3em 0.5em 1.3em !important;
}
.wp-block-ub-content-toggle-accordion-content-wrap > :first-child {
	padding-top: 1.3em !important;
}
.wp-block-ub-content-toggle-accordion-content-wrap > :last-child {
	padding-bottom: 2.5em !important;
}
.wp-block-ub-content-toggle-accordion-content-wrap figure {
	margin-bottom: 1em !important;
}


/* FORMS */

label {
	color: var(--contrast) !important;
}
.dots-overlay label {
	color: var(--contrast);
}
input[type="text"], input[type="email"], input[type="url"], input[type="password"], input[type="search"], input[type="tel"], input[type="number"], textarea, select, .select2-container--default .select2-selection--single, 
input[type="text"]:focus, input[type="email"]:focus, input[type="url"]:focus, input[type="password"]:focus, input[type="search"]:focus, input[type="tel"]:focus, input[type="number"]:focus, textarea:focus, select:focus, .select2-container--default .select2-selection--single:focus {
	background: var(--white);
	border: 1px var(--dark-blue) solid;
	border-radius: 0.5em;
	padding: 7px 10px !important;
}
.dots-overlay input[type="text"], .dots-overlay input[type="email"], .dots-overlay input[type="url"], .dots-overlay input[type="password"], .dots-overlay input[type="search"], .dots-overlay input[type="tel"], .dots-overlay input[type="number"], .dots-overlay textarea, .dots-overlay select,
.dots-overlay input[type="text"]:focus, .dots-overlay input[type="email"]:focus, .dots-overlay input[type="url"]:focus, .dots-overlay input[type="password"]:focus, .dots-overlay input[type="search"]:focus, .dots-overlay input[type="tel"]:focus, .dots-overlay input[type="number"]:focus, .dots-overlay textarea:focus, .dots-overlay select:focus {
	border: none;
	box-shadow: 0px 0px 10px 5px rgba(0,0,0,0.15);
	color: var(--contrast);
}
input[type=submit] {
	border: none;
	border-radius: 2em;
	background: var(--red);
	box-shadow: 0px 0px 10px 5px rgba(0,0,0,0.15);
	color: var(--white);
	margin: 0 !important;
	min-width: 50%;
	padding: 6px 1em;
}
.woocommerce #respond input#submit.alt, .woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt {
	border: none;
	border-radius: 2em;
	background: var(--green);
	box-shadow: 0px 0px 10px 5px rgba(0,0,0,0.15);
	color: var(--white);
	margin: 0 !important;
	min-width: 50%;
	padding: 6px 1em;
	transition: all 0.5s ease;
}
.woocommerce #respond input#submit.alt:hover, .woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover, .woocommerce input.button.alt:hover {
	background: var(--white);
	color: var(--green);
}
.gform_footer {
	margin-top: 2em !important;
	padding-top: 0 !important;
	text-align: center;
}
.woocommerce form .form-row .required {
	color: var(--red) !important;
}
.woocommerce table.shop_table {
	border-collapse: collapse !important;
}
#add_payment_method #payment ul.payment_methods li img, .woocommerce-cart #payment ul.payment_methods li img, .woocommerce-checkout #payment ul.payment_methods li img {
	background: var(--white);
	border-radius: 0.5em;
	padding: 10px 1em;
}


/* FACETWP SEARCH BAR */

.facetwp-facet,
.facetwp-facet .facetwp-input-wrap,
.facetwp-facet .facetwp-input-wrap input[type=text] {
	display: inline-block;
	max-width: 100%;
	min-width: 100px !important;
}
.facetwp-facet,
.facetwp-facet .facetwp-input-wrap {
	position: relative;
}


/* FACETWP GRID */

.fwpl-row {
	height: 100% !important;
}
.fwpl-result {
	padding: 0 !important;
}
.news-block,
.resource-block {
	background: var(--dark-blue);
	border-radius: 1em;
	overflow: hidden;
}
.news-block .news-block-image,
.resource-block .resource-block-image {
	background: url(/wp-content/uploads/news-background.jpg) center center;
	background-size: cover;
	display: block;
	max-height: 320px;
	min-height: 220px;
	overflow: hidden;
}
.news-block .news-block-image a,
.resource-block .resource-block-image a {
	display: block;
	height: 100%;
	min-height: 220px;
	width: 100%;
}
.news-block .news-block-image img,
.resource-block .resource-block-image img {
	margin-bottom: -0.4em;
	width: 100%;
}
.news-block .news-block-headline,
.resource-block .resource-block-headline {
	padding: 1.2em 1.5em 0 1.5em !important;
}
.news-block .news-block-headline h3,
.resource-block .resource-block-headline h3 {
	font-size: 1em;
	margin-bottom: 10px;
}
.news-block .news-block-headline a,
.resource-block .resource-block-headline a {
	color: var(--white);
	text-decoration: none;
}
.news-block .news-block-date,
.resource-block .resource-block-type {
	color: var(--white);
	font-size: 0.8em !important;
	font-weight: 100 !important;
	padding: 0 1.8em 2.2em 1.8em !important;
}


/* FACETWP PAGINATION */

.facetwp-pager .facetwp-page {
	background: var(--dark-blue);
	border-radius: 100%;
	color: var(--white);
	font-weight: bold;
	height: 3em;
	line-height: 1em;
	margin-top: 2em;
	padding: 1em 0;
	text-align: center;
	text-decoration: none;
	transition: all 0.5s ease;
	width: 3em;
}
.facetwp-pager .facetwp-page.active {
	background: var(--green);
}
.facetwp-pager .facetwp-page:hover {
	background: var(--light-gray);
	color: var(--dark-blue);
}
.facetwp-pager .facetwp-page.next,
.facetwp-pager .facetwp-page.prev {
	background: none;
	color: var(--dark-blue);
	width: auto;
}
.facetwp-pager .facetwp-page.next {
	margin-left: 1em;
}
.facetwp-pager .facetwp-page.prev {
	margin-right: 1em;
}
.facetwp-pager .facetwp-page.next:hover,
.facetwp-pager .facetwp-page.prev:hover {
	background: none;
}


/* MISC */

.wp-block-latest-posts__list.is-grid * {
	max-width: 100%!important;
}
.copyright-bar {
	display: none;
}
.give-form-navigator {
	background: var(--medium-blue) !important;
}
.give-form-navigator > .title {
	color: var(--white) !important;
	font-size: 2em;
	font-weight: bold;
	text-transform: uppercase;
}
.dark-background-quote-box {
	align-items: center;
	display: flex;
	justify-content: center;
	padding: 2em 2em 1em 2em;
}
.dark-background-quote {
	border-color: var(--white);
}
.wp-block-image figcaption {
	font-size: 1em;
}
.wc-label-button,
.wc-donation-f-submit-donation {
	border-radius: 2em;
}


/* MEDIA QUERIES */

@media ( max-width: 991.98px ) {
	.main-nav li.menu-item-has-children > a {
		padding-left: 0 !important;
	}
	.main-navigation .main-nav > ul > li:last-child {
		margin-top: 1.5em;
		margin-bottom: 1em;
	}
	.wp-block-media-text {
		padding: 0 2em;
	}
	.our-story .wp-block-media-text__media picture,
	.our-story .wp-block-media-text__media picture img {
		height: 200px !important;
	}
	.four-columns .wp-block-column:not(:first-child) {
		margin-left: 1em;
	}
	.wp-block-column {
		margin-bottom: 1em;
	}
	.four-columns .wp-block-column {
		flex-basis: calc(50% - 2em) !important;
		flex-wrap: wrap !important;
		margin-bottom: 3em;
	}
	.not-quite-wide-width {
		padding: 0 1em !important;
	}
	.heavy-padding {
		padding: 1em;
	}
	.single-post #page .inside-article header,
	.single-collection #page .inside-article header,
	.single-educator_resource #page .inside-article header,
	.single-exploration #page .inside-article header,
	.single-recipe #page .inside-article header {
		padding: 0 !important;
	}
	.entry-content ul:not(.wp-block-social-links) {
		margin: 1em 0 1em 2em !important;
	}
	.no-margins .wp-block-column {
		margin: 0 !important;
	}
	.wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column:not(:first-child).no-margins {
		margin-left: 0 !important;
	}
	.exploration-header > div {
		grid-column: span 2;
	}
	.exploration-listing,
	.resource-listing,
	.book-listing {
		grid-column: span 3;
	}
	.news-block,
	.resource-block {
		display: block !important;
		margin-bottom: 1.2em !important;
	}
	.resource-block .resource-block-image,
	.resource-block .resource-block-image a,
	.exploration-listing a .image,
	.resource-listing a .image
	.news-block .news-block-image {
		max-height: 200px !important;
		min-height: 140px !important;
	}
	.news-block .news-block-image img,
	.resource-block .resource-block-image img {
		width: 125% !important;
	}
	.fwpl-result {
		display: block !important;
		margin-bottom: 0.8em !important;
		width: 100% !important;
	}
	.fwpl-row {
		height: auto !important;
	}
	.fwpl-layout {
		display: flex !important;
		flex-wrap: wrap;
		gap: 0 !important;
	}
	.social-footer .wp-block-column {
		flex-basis: calc(25% - 10px) !important;
	}
	.social-footer .wp-block-column img {
		max-width: 50px;
	}
}
@media ( max-width: 600px ) {
	header .inside-header {
		padding: 20px !important;
	}
	.site-header.has-inline-mobile-toggle,
	.site-header.has-inline-mobile-toggle nav.toggled {
		background: var(--white);
	}
	.single-post #page .inside-article header,
	.single-recipe #page .inside-article header,
	.single-lesson #page .inside-article·header,
	.single-program-resource #page .inside-article·header {
		background-size: 100%;
	}
	.entry-header h1 {
		font-size: 2em;
		margin: 0;
	}
	.entry-header h2 {
		font-size: 1.8em;
		margin: 0;
	}
	.inside-article .alignwide {
		margin-left: 0 !important;
		max-width: 100% !important;
		padding: 0 !important;
		width: 100% !important;
	}
	.wp-block-media-text {
		padding: 0 !important;
	}
	.main-nav li.menu-item-has-children > a {
		padding-left: 0 !important;
	}
	.main-nav > ul > li {
		padding-left: 5px !important;
	}
	.four-columns .wp-block-column {
	  flex-basis: calc(100% - 1em) !important;
	}
	.no-margins .wp-block-column {
		margin: 0 !important;
	}
	.wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column:not(:first-child).no-margins {
		margin-left: 0 !important;
	}
	.wp-block-jetpack-instagram-gallery__grid .wp-block-jetpack-instagram-gallery__grid-post {
		margin-bottom: 1em;
	}
}


/* BLOCK VISIBILITY PLUGIN */

/* Large screens (desktops) */
@media ( min-width: 992px ) {
	.block-visibility-hide-large-screen {
		display: none !important;
	}
}

/* Medium screens (tablets) */
@media ( min-width: 768px ) and ( max-width: 991.98px ) {
	.block-visibility-hide-medium-screen {
		display: none !important;
	}
}

/* Small screens (mobile devices) */
@media ( max-width: 767.98px ) {
	.block-visibility-hide-small-screen {
		display: none !important;
	}
}
