/*

Theme Name: jfew

Theme URI: https://wordpress.org/themes/twentytwentyfour

Description: A child theme of twentytwentyfour

Author: alexander thacker

Author URI: alex@myrockgroup.com

Template: twentytwentyfour

Version: 1.0.7

Text Domain: jfew-child

License: GNU General Public License v3 or later.

License URI: https://www.gnu.org/licenses/gpl-3.0.html

*/
* {
	font-family:"Montserrat", sans-serif;
}

img {
	display:block;
}

.elementor a:not(.elementor-button, .button, .rkg-blog-readmore) {
	text-decoration:underline;
}

:root {
	--global-padding:min(6.5rem, 8vw);
	--dark-blue:#023047;
	--light-blue:#0072BB;
	--teal:#2DC0D2;
	--yellow:#FFB703;
	--hero-gradient-bar-height:25px;
}

@media (max-width:800px) {
	:root {
		--hero-gradient-bar-height:10px;
	}
}

:where(.wp-site-blocks :focus) {
	outline-offset:.1em;
}

/* Search */
:where(.wp-block-search__button-inside .wp-block-search__inside-wrapper) {
	border:unset !important;
}

.wp-block-search__button {
	padding:.25em !important;
}

.search-no-results main,
.search-results main {
	max-width:900px;
	margin:auto;
}

.search-results .wp-block-post-featured-image {
	width:250px;
}

.wp-block-search__button {
	background:var(--yellow);
	color:#fff;
	font-weight:bold;
	text-transform:uppercase;
	padding:.5em 1em !important;
}

@media (max-width:960px) {
	.wp-block-search {
		margin:auto !important;
	}
	.wp-block-navigation__responsive-container-open::before {
		content:"Menu";
		margin-right:.5em;
	}
}

@media (max-width:600px) {
	.wp-block-search {
		order:1;
	}
	.wp-container-core-group-is-layout-2.wp-container-core-group-is-layout-2 {
		/*align-items:center !important;
		width:100%;
		gap:0;*/
		display:contents;
	}
	.wp-container-core-group-is-layout-3.wp-container-core-group-is-layout-3 {
		justify-content:space-between !important;
	}
}
/*
 * Globals
 */ 
.gradient-bar:after {
	content:"";
	height:5px;
	position:absolute;
	left:0;
	right:0;
	bottom:0;
	background: linear-gradient(90deg, #3F92DF 0%, #3BDFED 26%, #3DD2E8 73%, #4899D3 100%);
}

.yellow-gradient-bar:after {
	content:"";
	height:var(--hero-gradient-bar-height);
	position:absolute;
	left:0;
	right:0;
	bottom:0;
	background: linear-gradient(90deg, #FFB703 0%, #FFB703 25%, #FFB70396 25%, #FFB70396 60%, #FFB70356 60%);
}

.blue-gradient-bar:after {
	content:"";
	height:var(--hero-gradient-bar-height);
	position:absolute;
	left:0;
	right:0;
	bottom:0;
	background: linear-gradient(90deg, #0470CD 0%, #0470CD 25%, #0470CD96 25%, #0470CD96 60%, #0470CD56 60%);
}

.teal-gradient-bar:after {
	content:"";
	height:var(--hero-gradient-bar-height);
	position:absolute;
	left:0;
	right:0;
	bottom:0;
	background: linear-gradient(90deg, #219EBC 0%, #219EBC 25%, #219EBC96 25%, #219EBC96 60%, #219EBC56 60%);
}

.gold-top-right {
	position:relative;
}

.gold-top-right:after {
	content:"";
	height:100px;
	width:100px;
	border-top:6px solid #FFB703;
	border-right:6px solid #FFB703;
	position:absolute;
	top:0;
	right:0;
}

.teal-top-right {
	position:relative;
}

.teal-top-right:after {
	content:"";
	height:100px;
	width:100px;
	border-top:6px solid var(--teal);
	border-right:6px solid var(--teal);
	position:absolute;
	top:0;
	right:0;
}

:where(body .is-layout-flow) > * {
	margin-top:0;
}

.elementor-widget-container p {
	margin:0;
}

.elementor-widget-container p + p {
	margin-block:1em;
}

/* 
 * Header
 */
/*
.single-post header {
	background:#023047;
}*/

@media (min-width:600px) {
	.mobile-donate-button-container {
		display:none !important;
	}
}

.wp-block-navigation .wp-block-navigation-item {
	background:unset;
}
header {
	padding-inline:var(--global-padding);
}

.donate-button a {
	background:var(--yellow);
	color:#fff !important;
	text-decoration:none;
	padding:.25em 1em;
	border-radius:.5em;
	font-weight:bold;
	text-transform:uppercase;
}

.donate-button a:hover {
	text-decoration:none;
	background:var(--dark-blue);
}

header .wp-block-navigation-submenu__toggle:hover {
	color:var(--light-blue) !important;
}

header .wp-block-navigation-submenu.current .wp-block-navigation-submenu__toggle {
	color:var(--light-blue) !important;
}

header .wp-block-navigation__submenu-container {
	padding:1em !important;
	top:3em !important;
}

header .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover {
	color:var(--yellow) !important;
}

header .wp-block-navigation__submenu-container .current {
	color:var(--yellow) !important;
}

header .wp-block-navigation__submenu-container .wp-block-navigation-submenu__toggle {
	padding:.5em 1em !important;
}

header .wp-block-navigation__submenu-container .wp-block-navigation-submenu {
	display:block;
}

header .wp-block-navigation__submenu-container .wp-block-navigation-submenu .wp-block-navigation__submenu-icon {
	display:none;
}

header .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container {
	all:unset !important;
}

header .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	padding-left:1.75em !important;
}

header .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container .wp-block-navigation-item__content:before {
	content:"";
	position:absolute;
	height:50%;
	top:0;
	left:1em;
	width:.35em;
	border-bottom:2px solid #fff;
}

header .wp-block-navigation-submenu .wp-block-navigation-submenu .wp-block-navigation-submenu__toggle {
	color:#fff !important;
}

header .wp-block-navigation-submenu .wp-block-navigation-submenu .wp-block-navigation-submenu__toggle:hover {
	color:var(--yellow) !important;
}

@media (max-width:960px) {
	.custom-logo {
		width:150px;
	}
	header { 
		padding-inline:1em;
	}
	.header-content {
		flex-direction:column;
		justify-content:center;
	}
}

@media (max-width:599px) {
	.header-mobile-donate-button a {
		font-weight:bold !important;
	}
	header .wp-block-navigation-submenu.current .wp-block-navigation-submenu__toggle {
		color: unset !important;
	}
	header .wp-block-navigation__responsive-container-open {
		padding:1em;
	}
	.header-content {
		flex-direction:row;
	}
	header .wp-block-navigation__responsive-container {
		padding:2em !important;
	}
	header .wp-block-navigation__responsive-container :is(ul,li) {
		width:300px !important;
		margin-inline: auto !important;
		max-width:100% !important;
	}
	header .wp-block-navigation-submenu__toggle:not(.wp-block-navigation-submenu .wp-block-navigation-submenu .wp-block-navigation-submenu__toggle) {
		font-weight:900 !important;
	}
	header .wp-block-navigation-submenu__toggle:not(.wp-block-navigation-submenu .wp-block-navigation-submenu .wp-block-navigation-submenu__toggle):hover {
		color:unset !important;
		cursor:unset !important;
	}
	header .wp-block-navigation__submenu-container {
		padding:.5em 0 1em !important;
		border-top:1px solid #fff !important;
	}
	header .wp-block-navigation__submenu-container .wp-block-navigation-submenu__toggle {
		padding:0 !important;
	}
	.donate-button a {
		padding:.25em 1em !important;
		width:100%;
		box-sizing:border-box;
		text-align:center;
	}
	header .wp-block-navigation-item {
		margin-top:.25em !important;
	}
}

/*
header {
	--header-height: 138px;
	--admin-bar:0px;
	--close-button:24px;
	padding-inline:var(--global-padding);
	position:absolute;
	top:0;
	left:0;
	right:0;
	z-index:99998;
}

.admin-bar header {
	--admin-bar:32px;
	top:32px;
}

header .custom-logo {
	position:relative;
}

header .wp-block-button__link {
	font-weight:bold;
	position:relative;
}

header .wp-block-button__link:hover {
	background:#000 !important;
}

.wp-block-navigation__responsive-container {
	padding-top:0 !important;
	overflow-y:scroll !important;
}

.wp-block-navigation__responsive-close {
	height:100%;
}

.wp-block-navigation__responsive-dialog {
	min-height:calc(100% - var(--header-height));
	display:flex;
	flex-direction:column;
}

.wp-block-navigation__responsive-container-close {
	position:unset;
	height:100%;
}

.wp-block-navigation__responsive-container-content {
	padding-top:max(var(--header-height) / 2 + var(--admin-bar), 20vh) !important;
	padding-top:0 !important;
	flex-grow:1;
}

.wp-block-navigation__container {
	flex-direction:row !important;
	margin:auto !important;
	align-content:center;
}

.wp-block-navigation__submenu-container {
	padding-inline:0 !important;
	min-width:unset !important;
}

button.wp-block-navigation-submenu__toggle {
	font-weight:900;
	font-size:1.125em;
	outline:none !important;
	cursor:unset !important;
}

.wp-block-navigation-item {
	font-size:1.125rem;
	margin-bottom:.25em;
}

.wp-block-navigation__container > .wp-block-navigation-item {
	padding-inline:1.125rem;
}

.wp-block-navigation__container > .wp-block-navigation-item:not(:first-child) {
	border-left:1px solid #fff;
}

.dialog-header {
	display:flex;
	justify-content:space-between;
	align-items:center;
	padding-block:20px;
	flex-wrap:wrap;
	padding-inline:var(--global-padding);
}

.dialog-header .site-logo-container {
	flex-grow:1;
}

@media (max-width:900px) {
	.wp-block-navigation__container > .wp-block-navigation-item {
		border-left:unset !important;
		border-top:1px solid #fff;
		flex-basis:calc(50% - 3rem);
	}
	.wp-block-navigation__container > .wp-block-navigation-item {
		padding-block:1.125rem;
	}
}

@media (max-width:502px) {
	.wp-block-navigation__container {
		flex-direction:column !important;
		align-items:flex-start !important;
		gap:0 !important;
		width:80%;
	}
	.wp-block-navigation__container > .wp-block-navigation-item {
		width:100%;
	}
	.header-donate-button {
		display:none !important;
	}
	.wp-block-site-logo {
		max-width:150px;
	}
}
*/
/*
 * Footer
 */
footer {
	margin-top:0;
}

footer .donate-button a:hover {
	background:var(--light-blue);
}

.footer-logo-and-nav {
	display:flex;
	justify-content:space-betweeen;
}

.footer-nav-container {
}

footer .wp-block-navigation {
	align-items:start;
	width:100%;
}

footer .wp-block-navigation__container > .wp-block-navigation-item:not(:first-child) {
	border-left:1px solid #fff;
}

footer .wp-block-navigation__container > .wp-block-navigation-item {
	padding-inline:1.125rem;
}

footer .wp-block-navigation .wp-block-navigation-item {
	display:block;
}

footer .wp-block-navigation-submenu .wp-block-navigation-item__content {
	font-weight:bold;
}

footer .wp-block-navigation-submenu .wp-block-navigation-item__content:hover {
	text-decoration:none;
}

footer .wp-block-navigation .has-child .wp-block-navigation__submenu-container {
	all:unset;
	display:block;
	padding-top:var(--wp--style--block-gap, 2em);
}
footer .wp-block-navigation__submenu-container {
	min-width:unset !important;
}

footer .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	all:unset;
	font-size:1.125rem;
	margin-bottom:.25em;
}

footer .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover {
	cursor:pointer;
	text-decoration:underline;
}

@media (max-width:1200px) {
	footer .wp-block-navigation__container > .wp-block-navigation-item {
		border-left: unset !important;
		border-top:1px solid #fff;
		padding-block:1em;
		flex-basis:calc(50% - 3rem);
	}
}

@media (max-width:781px) {
	.wp-container-core-social-links-is-layout-1.wp-container-core-social-links-is-layout-1 {
		justify-content:start;
	}
}

@media (max-width:502px) {
	footer .wp-block-navigation__container {
		flex-direction:column !important;
		align-items:flex-start !important;
		gap:0 !important;
		width:80% !important;
	}
	footer .wp-block-navigation__container > .wp-block-navigation-item {
		width:100%;
		box-sizing:border-box;
	}
}

/* Alumnae Contact Form */
.alumnae-contact {
	display:grid;
	grid-template-columns:1fr 1fr;
	background:#0073CB;
	align-items:center;
	color:#fff;
}

.alumnae-contact > p {
	display:contents;
}

.alumnae-contact-image {
	background-size:cover;
	background-position:center center;
	height:100%;
}

.alumnae-contact-form {
	padding:2em min(6em, 6vw);
	max-width:800px;
}

.alumnae-contact-form p {
	margin-block:.5rem !important;
}

.alumnae-contact h2 {
	color:#fff;
	font-weight:600;
	font-size:2.5rem;
	line-height:1;
}

.alumnae-contact-for-scholar {
	font-size:1.5rem;
}

.alumnae-contact-are-you {
	font-weight:600;
	font-size:1.625rem;
	line-height:1.27;
}

.alumnae-contact-please-share {
	font-size:1.5rem;
	margin:0 !important;
}

.alumnae-contact input,
.alumnae-contact textarea {
	border:none;
	width:100%;
	padding:1em;
	border-radius:.5em;
	box-sizing:border-box;
}

.alumnae-contact input[type=submit] {
	background:#FFB703;
	color:#fff;
	text-transform:uppercase;
	font-weight:bold;
	font-size:1.125rem;
	margin-top:1em;
}

.alumnae-contact input[type=submit]:hover {
	cursor:pointer;
	background:var(--dark-blue);
}

.alumnae-contact .wpcf7-not-valid-tip {
	background: #ffffffe5;
	border: #e64141a3 2px solid;
	color: #000;
	display: inline-block;
	margin: .25em;
	padding: .25em .5em;
	border-radius: .5em;
}

@media (max-width:900px) {
	.alumnae-contact {
		grid-template-columns:1fr;
	}
	.alumnae-contact-form {
		margin:auto;
	}
	.alumnae-contact-please-share,
	.alumnae-contact-are-you {
		font-size:1.2rem;
	}
}

/*
 * Contact Form
 */
.contact-form {
	padding:2em min(6em, 6vw);
	max-width:800px;
}

.contact-form p {
	margin-block:.5rem !important;
}

.contact-form input,
.contact-form textarea {
	border:none;
	width:100%;
	padding:1em;
	border-radius:.5em;
	box-sizing:border-box;
}

.contact-form input[type=submit] {
	background:var(--light-blue);
	color:#fff;
	text-transform:uppercase;
	font-weight:bold;
	font-size:1.125rem;
	margin-top:1em;
}

.contact-form input[type=submit]:hover {
	cursor:pointer;
	background:var(--dark-blue);
}

.contact-form .wpcf7-not-valid-tip {
	background: #ffffffe5;
	border: #e64141a3 2px solid;
	color: #000;
	display: inline-block;
	margin: .25em;
	padding: .25em .5em;
	border-radius: .5em;
}

/*
 * Home
 */ 
#home-our-impact:before {
	z-index:1;
}

.home-logos .swiper-wrapper {
	align-items:center;
}

.home-logos .swiper-pagination {
	margin-top:2em;
}

/*
 * Mission Vision Values
 */
.our-values-full-section,
.strategic-pillars-full-section {
	--gutter-width:9em;
	--small-dot-width:.8125em;
	--small-dot-color:#151719;
	--dot-width:2.25em;
	--dot-color:#2DC0D2;
	--dot-offset:calc(-1 * var(--gutter-width) + var(--dot-width) / 2);
	--line-width:2px;
	--line-depth:4em;
	--line-offset:calc(-1 * (var(--gutter-width) - var(--dot-width)));
	--small-dot-offset:calc(var(--line-offset) + var(--line-depth));
	--line-color:#707070;
}

/* Small Dot */
.values-line-start:before {
	position:absolute;
	content:" ";
	left:var(--small-dot-offset);
	width:var(--small-dot-width);
	height:var(--small-dot-width);
	background:var(--small-dot-color);
	border:var(--line-width) solid var(--line-color);
	border-radius:var(--small-dot-width);
	margin-top:calc(-.5 * (var(--small-dot-width) - var(--line-width)));
	top:70px;
}

/* Top Line */
.values-line-start:after {
	position:absolute;
	content:" ";
	width:var(--line-depth);
	bottom:0;
	top:70px;
	left:var(--line-offset);
	border-left:var(--line-width) solid var(--line-color);
	border-top:var(--line-width) solid var(--line-color);
}

.strategic-pillars-full-section .values-line-start:before,
.strategic-pillars-full-section .values-line-start:after {
	top:25%;
}

/* Dot */
.values-line-point:before {
	position:absolute;
	content:" ";
	top:0;
	left:var(--dot-offset);
	width:var(--dot-width);
	height:var(--dot-width);
	background:var(--dot-color);
	border:1px solid var(--line-color);
	border-radius:var(--dot-width);
	z-index:1;
}
	
/* Line */
.values-line-point:after {
	position:absolute;
	content:" ";
	width:var(--line-depth);
	height:100%;
	top:0;
	left:var(--line-offset);
	border-left:var(--line-width) solid var(--line-color);
}

/* End Dot */
.values-line-end:after {
	content:" ";
	position:absolute;
	width:var(--small-dot-width);
	height:var(--small-dot-width);
	background:var(--small-dot-color);
	border:var(--line-width) solid var(--line-color);
	border-radius:var(--small-dot-width);
	bottom:0;
	left:var(--line-offset);
	margin-left:calc(-.5 * (var(--small-dot-width) - var(--line-width)));
	z-index:1;
}

@media (max-width:768px) {
	.our-values-full-section {
		--gutter-width:4em;
		--small-dot-width:.8125em;
		--small-dot-color:#151719;
		--dot-width:1.5em;
		--dot-color:#2DC0D2;
		--dot-offset:calc(-1 * var(--gutter-width) + var(--dot-width) / 2);
		--line-width:2px;
		--line-depth:2em;
		--line-offset:calc(-1 * (var(--gutter-width) - var(--dot-width)));
		--small-dot-offset:calc(var(--line-offset) + var(--line-depth));
		--line-color:#707070;
	}
}

/*
 * Animation
 */
.fill-bar {
	animation-name: fill-bar;
  	animation-duration: 4s;
	transform-origin:left center;
}

@keyframes fill-bar {
  from { scale: 0 1; }
  to { scale: 1 1; }
}

/* Privacy and terms */
.privacy-policy main,
.page-id-1610 main {
	max-width:900px;
	margin:auto;
	padding:2em 1em !important;
}

.privacy-policy .wp-block-post-title,
.privacy-policy p,
.page-id-1610 p,
.page-id-1610 .wp-block-post-title,
.page-id-1610  h2 {
	margin-bottom:1em !important;
}