/*! Giving Custom CSS for Campaign Funds */

/* Import Font - 'Roboto' */
@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');

/* Import Font - 'EB Garamond' */
@import url('https://fonts.googleapis.com/css2?family=EB+Garamond:ital,wght@0,400..800;1,400..800&display=swap');

/* Import Font - 'Roboto Condensed' */
@import url('https://fonts.googleapis.com/css2?family=Roboto+Condensed:ital,wght@0,100..900;1,100..900&display=swap');



/* ==== Campaign Fund Layout ==== */

/*hide breadcrumb*/
ul.breadcrumb{display:none;}
main{margin-top:30px;}

/*impact*/
div.widget.impact:not(.w-gallery){padding-bottom:29.8%;}

/*mark*/
.campaign-mark{
	width: 270px;
	margin: 30px 0;
}

/*grid*/
.centertext-block{margin:0 6%}
@media only screen and (min-width: 765px){
	.centertext-block{margin:0 12%}

	article section.contentflow:first-of-type .section-row:first-of-type, article > .section-row:first-of-type {
		gap: 40px;
	}
	article section.contentflow:first-of-type .section-row:first-of-type > .half, article > .section-row:first-of-type > .half {
		grid-column: span 7;
	}
	article section.contentflow:first-of-type .section-row:first-of-type > .half + .half, article > .section-row:first-of-type > .half + .half {
		grid-column: span 5;
		margin-top: -80px;
	}
}

/*typography*/

article {
	font-family: 'Roboto', sans-serif;
/*	font-size: 1.6rem;
	font-weight: 400; */
	color: #191919;
}
article :is(h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6) {
	font-family: 'EB Garamond', serif;
	font-weight: 500;
}
article :is(.jumbo) { 	/* TBD IF NEEDED */
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: 700;
}

h1, main:not(.home) h1{
	font-size: clamp(40px,3.5vw + 1rem,54px);
	font-weight: 500;
	line-height: 1.07;
}
h1:before{
	display:none !important;
}
main h2{
	font-size: clamp(30px,3vw + 1rem,38px);
	line-height: 1.07;
}
main:not(.home) h1 + p, p.subtext{
	font-family: 'EB Garamond', serif;
	font-weight: 500;
	font-size: clamp(20px,2vw + 1rem,25px);
	line-height: 1.25;
	color: #00205c;
	margin-bottom: 30px;
}



/*features*/

article .button.register{
	max-width: 260px;
	margin-top:30px;
	margin-bottom:30px;
}
article .button.register a, article .button a.pass-utms{
	font-family: 'Roboto', sans-serif !important;
	font-size: clamp(16px,1vw + 1rem,18px);
	letter-spacing: 0;
	text-transform: none;
	background-color: #c75000;
	border-color: #c75000;
}
article .button.register a:hover, article .button.register a:focus, article .button a.pass-utms:hover, article .button a.pass-utms:focus{
	background-color: #114d97;
	border-color: #114d97;
}

.bkg-light {
	background-color: #e4eef4;
}


/* ==== end - Campaign Fund Layout ==== */



/* ==== Campaign Navigation ==== */
	#container-nav-campaign {
		position: -webkit-sticky;
		position: sticky;
		top: 0;
		width: 100%;
		margin-bottom: -2px;
		background-color: #114d97;
		box-shadow: 0px 1px 10px 0px rgba(0, 0, 0, 0.5);
		z-index: 1000;
	}
	#container-nav-campaign nav {
		display: grid;
		height: 57px;
		margin: 0 10px;
		align-items: center;
		justify-content: center;
		background-color: #114d97 ;
	}
	#container-nav-campaign nav ul {
		display: flex;
		height: 57px;
		margin: 0;
		padding: 0;
		list-style: none;
	}
	#container-nav-campaign nav ul li {
		position: relative;
		margin-bottom: 0;
		background-color: #114d97 ;
	}
	#container-nav-campaign nav a{
		display: flex;
		align-items: center;
		padding: 18px 35px;
		color: #fff;
		font-family: 'Roboto', sans-serif;
		font-size: 14px;
		font-weight: 700;
		text-decoration: none;
	}
	#container-nav-campaign nav a:hover, #container-nav-campaign nav a:focus{
		background-color: #00205c;
	}

	#container-nav-campaign nav ul ul {
		display: none;
		position: absolute;
		top: 100%;
		left: 0;
		background-color: #114d97;
		z-index: 1;
	}
	#container-nav-campaign nav ul li:hover > ul {
		display: block;
	}

	#container-nav-campaign nav ul ul li {
		min-width: 26.25rem;
		position: relative;
		margin-bottom: 0px;
		background-color: #e4eef4;
		border-bottom: 1px solid #eee;
		box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
	}
	#container-nav-campaign nav ul ul li:hover, #container-nav-campaign nav ul ul li:focus {
		color: #fff;
		background-color: #00205c;    
	}
	#container-nav-campaign nav ul ul li a {
		display: flex;
		align-items: center;
		padding: 10px;
		color: #000;
		font-weight: 500;
		line-height: 25px;
		text-decoration: none;
		background-color: #e4eef4;
	}
	#container-nav-campaign nav ul ul li a:hover, #container-nav-campaign nav ul ul li a:focus {
		color: #fff;
		background-color: #00205c;
	}
	#container-nav-campaign ul li:before {
		display:none!important;
	}
	#menu-toggle {
		display: none;
	}
	.fa-angle-down:before {
		content: "\f107";
		margin-left: 5px;
	}
	#container-nav-campaign nav ul ul li:last-child a {
		padding-right: 20px;
	}
	#container-nav-campaign nav ul ul li:last-child .fa-angle-down {
		display: none;
	}

	/* Media Query for Mobile Devices */
	@media only screen and (max-width: 768px) {
		#container-nav-campaign nav {display: block;}
		#container-nav-campaign nav ul {
			flex-direction: column;
			align-items: center;
			display: none;
		}
		#container-nav-campaign nav ul li {
			width: 100%;
			margin-top: -15px;
			padding-bottom: 10px;
		}
		#container-nav-campaign nav ul ul {
			position: static;
			display: none;
			margin-top: 15px;
		}
		#container-nav-campaign nav ul li:hover > ul {
			display: block;
			position: absolute;
			top: 66px;
			margin-top: 0;
		}
		
		.menu-toggle {
			content: "\2630"; /* Hamburger icon */
			display: block;
			margin-bottom: 10px;
			margin-right: 13px;
			padding: 10px;
			color: #fff;
			font-size: 25px;
			text-align: right;
			cursor: pointer;
		}		
		#container-nav-campaign .menu-toggle span {
			font-family: 'Roboto', sans-serif;
			font-size: 14px;
			font-weight: 700;
		}
		#menu-toggle:checked + .menu-toggle {content: "\2716"; /* X icon */}
		#container-nav-campaign .menu-toggle input[type="checkbox"]:checked ~ ul, #container-nav-campaign .menu-toggle:checked + ul {display: flex;}
		.widget .button a {width: calc(100% - 0px);}
		.fa .fa-angle-down {display: none;}
		#container-nav-campaign nav {margin-left: 0px;}
	}

	/* Media Query for Desktop Devices */
	@media only screen and (min-width: 769px) {
		#container-nav-campaign .menu-toggle {display: none;}
		#menu-toggle {display: none;}
	}

/* ==== end - Campaign Navigation ==== */



/* ==== Campaign Footer ==== */

	/* Outer block scope fallback configuration */

	.giving-footer-container .giving-inner-container {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		width: 100%;
		margin-bottom: 10px;
		background-color: #00205C;
	}

	.giving-footer-container {
		width: 100%;
		display: flex;
		justify-content: center;
		align-items: center;
		margin-bottom: -40px;
		padding: 80px 20px;
		background: #00205c;
	}

	/* Enforce isolated Box-Sizing architecture rules inside the module */
	.giving-footer-container *, 
	.giving-footer-container *::before, 
	.giving-footer-container *::after {
		box-sizing: border-box;
		margin: 0;
		padding: 0;
	}

	/* Base text setup bound strictly inside the scope */
	.giving-footer-container .giving-inner-container {
		width: 100%;
		max-width: 1140px;
		text-align: center;
	}

	.giving-footer-container .giving-inner-container img.campaign-logo {
		width: 100% !important;
		max-width: 400px !important;
		height: auto !important;
		margin: 0 auto 50px auto !important;
		display: block !important;
	}

	.giving-footer-container .join-text {
		width: 100%;
		margin: 20px 0;
		font-family: 'EB Garamond', serif;
		font-size: 26px;
		font-weight: 400;
		letter-spacing: 1px;
		color: #fff;
		text-align: center;
		text-transform: uppercase;
	}

	.giving-footer-container .buttons {
		display: flex;
		justify-content: center;
		gap: 20px;
		margin: 30px 0 65px;
		flex-wrap: wrap;
	}
	.giving-footer-container .buttons a {
		display: inline-block;
		min-width: 200px;
		padding: 14px 30px;
		font-family: 'Roboto', sans-serif;
		font-weight: 400;
		font-size: 15px;
		color: #fff;
		text-decoration: none;
		text-transform: uppercase;
		background: #c75000;
		transition: opacity 0.2s ease-in-out;
	}

	.giving-footer-container .buttons a:hover {
		opacity: 0.9;
	}

	/* Intelligent Layout Grid (Zero Media Queries Required) */
	.giving-footer-container .campaign-priorities-grid{
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: center;
		gap: 15px;
	}

	/* Modular Pillar Box Container */
	.giving-footer-container a.card {
		width: calc((100% - 60px) / 5);
		min-width: 210px;
		aspect-ratio: 1 / 1;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		padding: 15px;
		text-decoration: none !important;
		background: transparent;
		border: 1px solid #fff;
		transition: background-color 0.2s ease-in-out;
	}

	.giving-footer-container a.card:hover,
	.giving-footer-container a.card:focus {
		background-color: #114d97;
		outline: none;
	}

	.giving-footer-container a.card h3 {
		margin-bottom: 12px;
		font-family: 'Roboto Condensed', sans-serif;
		font-size: 1.95rem;
		font-weight: 700;
		line-height: 1.3;
		color: #fff;
		text-decoration: none !important;
	}

	.giving-footer-container .card:after {
		content:'';
		display: block;
		width: 60px;
		height: 22px;
		background-image: url('/_resources/images/campaign/lines.svg');
		background-size: contain;
		background-repeat: no-repeat;
		background-position: center;
	}
/* ==== end - Campaign Footer ==== */