/*
 * 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;
}
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;
}
blockquote {
  border-color: var(--green);
}
blockquote p {
	font-weight: 800;
}
@media (max-width: 800px) {
	h1, h2 {
		font-size: 1.6em !important;
	}
}


/* GLOBAL */

html, body {
	background: var(--white);
}
html, body, p, input, select, textarea {
	font-family: 'TT Hoves';
	font-display: swap;
}
body {
	overflow-x: hidden;
	word-break: break-word;
}
.site-main {
	margin-bottom: 0 !important;
}
.inside-article {
	padding-bottom: 0 !important;
}
.alignfull {
	padding: 0;
}
.alignfull.homepage-hero {
	padding-top: 200px;
}
.homepage-hero .wp-block-media-text__content {
	padding-left: 0 !important;
}
.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: 5em 0 5em 0 !important;
}
.wp-block-button,
.wp-block-button a {
	width: 100%;
}
.ub-buttons > .ub-button-container:first-child {
	margin-left: 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;
}
.ub-bordered-box {
	padding: 2em !important;
}
.wp-block-jetpack-instagram-gallery__grid-post {
	border-radius: 1em;
	overflow: hidden;
}
.four-columns .wp-block-column {
  margin: 0 1em;
}
.four-columns .wp-block-column:not(:first-child) {
  margin-left: 3em;
}
.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;
}
.entry-content .about-medium-width {
	margin: auto !important;
	max-width: 600px !important;
	padding: 0 1em;
}
.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-left: 0 !important;
}
.no-underlines a {
	text-decoration: none !important;
}
#footer-widgets {
	padding-top: 3em;
	padding-bottom: 3em;
}
.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;
}
.ub-bordered-box {
	height: 100% !important;
	padding: 1.5em !important;
}
@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;
}
.site-header.has-inline-mobile-toggle,
.site-header.has-inline-mobile-toggle nav.toggled {
	background: rgba(255, 255, 255, 0);
}
#primary-menu > ul > li:last-child a {
	background: var(--red);
	border-radius: 1em;
	color: var(--white);
	line-height: 2.1em;
	padding: 0 1em;
	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;
}
#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 #212121 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)) !important;
}
.dots-overlay.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)) !important;
}
.dots-overlay.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)) !important;
}
.dots-overlay.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)) !important
}
.dots-overlay.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)) !important
}
.dots-overlay.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)) !important
}
.dots-overlay.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)) !important
}
.dots-overlay.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)) !important
}
.dots-overlay.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)) !important
}
.dots-overlay-plg {
	background: url(/wp-content/uploads/PLG.jpg) center center;
	background-size: cover;
}
.dots-overlay-pgg {
	background: url(/wp-content/uploads/PGG.jpg) center center;
	background-size: cover;
}
.dots-overlay-pgg-sp {
	background: url(/wp-content/uploads/PGG-SP.jpg) center center;
	background-size: cover;
}
.dots-overlay-plg-sp {
	background: url(/wp-content/uploads/PLG-SP.jpg) center center;
	background-size: cover;
}
.dots-overlay-pa {
	background: url(/wp-content/uploads/Protect-Our-Future.jpg) center center;
	background-size: cover;
}
.dots-overlay-ph {
	background: url(/wp-content/uploads/PH.jpg) center center;
	background-size: cover;
}
.dots-overlay-ph-sp {
	background: url(/wp-content/uploads/PH-SP.jpg) center center;
	background-size: cover;
}


/* HOMEPAGE */

.home .entry-header {
	display: none;
}
.home .inside-article .entry-content:nth-child(2) {
	margin-top: 0;
}
.homepage-hero {
	margin-top: -200px;
	padding-top: 200px;
}
.wp-block-jetpack-instagram-gallery {
	padding: 0 1em;
}
.wp-block-jetpack-instagram-gallery__grid-post img {
	border-radius: 1em;
	overflow: hidden;
}


/* NEWS POST */

.single-post #page {
	max-width: 100%;
}
.single-post #page .inside-article header {
	margin: 0 -40px;
	overflow: hidden;
	width: calc(100% + 80px);
}
.single-post #page .inside-article header {
	background-position: center center;
	margin-bottom: 2em;
	padding: 4em 2em;
	position: relative;
}
.single-post #page .inside-article header::before {
	background: rgba(7, 122, 145, 0.9);
	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 {
	color: var(--white);
	position: relative;
	text-align: center;
	z-index: 1;
}
.single-post #page .inside-article header h1 {
	margin: 0;
}
.single-post #page .inside-article header time {
	display: block;
	margin: 1em 0 0 0;
}
.single-post #page .inside-article .entry-content {
	margin: 3em auto 6em auto;
	max-width: 1000px;
}
.single-post #page .inside-article .entry-content img {
	border-radius: 1em;
	overflow: hidden;
}


/* 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;
	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;
}


/* 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: 600px) {
	.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: 300px !important;
		margin: 2em auto 1em auto !important;
		width: 300px !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;
}


/* 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-image: url(/wp-content/uploads/dots.png), linear-gradient(90deg,rgba(0, 73, 88, 1),rgba(7, 122, 145, 1)) !important;
	font-weight: 600;
	padding: 0.4em 1em 0.4em 0.4em;
}
.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);
	padding: 4% 4% 6% 4% !important;
}
.wp-block-ub-content-toggle-accordion-content-wrap p {
	margin-bottom: 0.5em;
}
.wp-block-ub-content-toggle-accordion-content-wrap figure {
	margin-bottom: 1em !important;
}


/* FORMS */

label {
	color: var(--dark-blue);
}
.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,
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 {
	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 #00000026;
	color: var(--contrast);
}
input[type=submit] {
	border-radius: 2em;
	padding: 10px 20px;
}
.dots-overlay input[type=submit] {
	border: none;
	background: var(--red);
	box-shadow: 0px 0px 10px 5px #00000026;
	color: var(--white);
	margin: 2em 0 0 0 !important;
	min-width: 50%;
}
.gform_footer {
	text-align: center;
}


/* 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-result {
	padding: 0 !important;
}
.news-block,
.resource-block {
	background: var(--medium-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;
}


/* MEDIA QUERIES */

@media ( max-width: 991.98px ) {
	.main-nav li.menu-item-has-children > a {
		padding-left: 0 !important;
	}
	.homepage-hero {
		margin-top: -40em !important;
		padding-top: 38em !important;
	}
	.wp-block-media-text {
		padding: 0 2em;
	}
	.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;
		margin-bottom: 3em;
	}
	.not-quite-wide-width {
		padding: 0 1em !important;
	}
	.heavy-padding {
		padding: 1em;
	}
	.social-footer .wp-block-column {
		flex-basis: calc(25% - 10px) !important;
	}
	.social-footer .wp-block-column img {
		max-width: 50px;
	}
}
@media ( max-width: 600px ) {
	.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;
	}
	.homepage-hero {
		padding-top: 36em !important;
	}
	.four-columns .wp-block-column {
	  flex-basis: calc(100% - 1em) !important;
	}
}


/* 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;
	}
}
