/**
Theme Name: Astra Child
Author: Brainstorm Force
Author URI: http://wpastra.com/about/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: astra-child
Template: astra
*/

/* @font-face {
	font-family: 'Gotham Pro';
	src: url('/wp-content/themes/astra-child/fonts/Gotham/GothamPro-Black.woff2') format('woff2'),
		url('/wp-content/themes/astra-child/fonts/Gotham/GothamPro-Black.woff') format('woff');
	font-weight: 900;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Gotham Pro';
	src: url('/wp-content/themes/astra-child/fonts/Gotham/GothamPro-BlackItalic.woff2') format('woff2'),
		url('/wp-content/themes/astra-child/fonts/Gotham/GothamPro-BlackItalic.woff') format('woff');
	font-weight: 900;
	font-style: italic;
	font-display: swap;
}

@font-face {
	font-family: 'Gotham Pro';
	src: url('/wp-content/themes/astra-child/fonts/Gotham/GothamPro-BoldItalic.woff2') format('woff2'),
		url('/wp-content/themes/astra-child/fonts/Gotham/GothamPro-BoldItalic.woff') format('woff');
	font-weight: 700;
	font-style: italic;
	font-display: swap;
}

@font-face {
	font-family: 'Gotham Pro';
	src: url('/wp-content/themes/astra-child/fonts/Gotham/GothamPro-Italic.woff2') format('woff2'),
		url('/wp-content/themes/astra-child/fonts/Gotham/GothamPro-Italic.woff') format('woff');
	font-weight: 400;
	font-style: italic;
	font-display: swap;
}

@font-face {
	font-family: 'Gotham Pro';
	src: url('/wp-content/themes/astra-child/fonts/Gotham/GothamPro-Light.woff2') format('woff2'),
		url('/wp-content/themes/astra-child/fonts/Gotham/GothamPro-Light.woff') format('woff');
	font-weight: 300;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Gotham Pro';
	src: url('/wp-content/themes/astra-child/fonts/Gotham/GothamPro-LightItalic.woff2') format('woff2'),
		url('/wp-content/themes/astra-child/fonts/Gotham/GothamPro-LightItalic.woff') format('woff');
	font-weight: 300;
	font-style: italic;
	font-display: swap;
}

@font-face {
	font-family: 'Gotham Pro';
	src: url('/wp-content/themes/astra-child/fonts/Gotham/GothamPro-Medium.woff2') format('woff2'),
		url('/wp-content/themes/astra-child/fonts/Gotham/GothamPro-Medium.woff') format('woff');
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Gotham Pro';
	src: url('/wp-content/themes/astra-child/fonts/Gotham/GothamPro-MediumItalic.woff2') format('woff2'),
		url('/wp-content/themes/astra-child/fonts/Gotham/GothamPro-MediumItalic.woff') format('woff');
	font-weight: 500;
	font-style: italic;
	font-display: swap;
}

@font-face {
	font-family: 'Gotham Pro';
	src: url('/wp-content/themes/astra-child/fonts/Gotham/GothamPro.woff2') format('woff2'),
		url('/wp-content/themes/astra-child/fonts/Gotham/GothamPro.woff') format('woff');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
} */

body {
	/* font-family: "Gotham"; */
	font-family: "Kedebideri", sans-serif;
	font-weight: 400;
	color: #706359;
	margin: 0;
	padding: 0;
}

a:hover,
a:focus {
	color: #788e46;
	text-decoration: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	line-height: 1em;
	margin: 0;
	text-transform: uppercase;
	overflow-wrap: normal !important;
}

audio,
canvas,
progress,
video {
	display: inline-block;
	vertical-align: baseline;
}

article,
.content {
	line-height: 1.5em;
}

p,
ul,
ol,
dl {
	font-size: 1em;
}

p {
	border: 0;
	font-family: inherit;
	font-style: inherit;
	font-weight: inherit;
	outline: 0;
	padding: 0;
	vertical-align: baseline;
	font-size: 18px;
	line-height: 1.4em;
	margin-top: 1em;
}

img {
	max-width: 100%;
	height: auto;
	width: auto;
}

h2 {
	font-size: 44px;
	font-style: normal;
	text-transform: none;
	font-weight: 300;
}

a {
	text-decoration: none !important;
}

table,
td {
	border: none;
}



.custom-logo-link {
	width: 163px;
	display: block
}

/* header */
.ast-plain-container.ast-no-sidebar #primary {
	margin-top: 0px !important;
	margin-bottom: 0px !important;
}

.ast-container {
	max-width: 1330px;
}

#content>.ast-container {
	max-width: 100%;
	width: 100%;
	padding: 0;
}

.container {
	max-width: 1330px;
	padding-left: 20px;
	padding-right: 20px;
	margin: auto;
}

body .site-primary-header-wrap.ast-container {
	max-width: 1040px;
}

body.home .site-primary-header-wrap.ast-container,
body.page-id-1192 .site-primary-header-wrap.ast-container {
	max-width: 1330px;
}

header.header {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100;
	width: 100%;
	height: auto;
	margin: 0 auto;
	transition: all 0.35s ease;
	background-color: #fff;
}

header.header.on-scroll {
	background: #fff;
	box-shadow: 1px 2px 30px rgba(0, 0, 0, 0.11);
}

header .navbar {
	display: flex;
	align-items: center;
	padding: 24px 0;
}

header .navbar .brand img {
	width: 100%;
	max-width: 50%;
}

header .menu {
	position: fixed;
	top: -100%;
	left: 0;
	width: 100%;
	height: auto;
	padding: 4rem 0 3rem;
	overflow: hidden;
	background-color: #fff;
	box-shadow: 1px 2px 30px rgba(0, 0, 0, 0.11);
	transition: all 0.4s ease-in-out;
}

header .menu.is-active {
	top: 0;
	width: 100%;
	height: auto;
}

header .menu-inner {
	display: flex;
	flex-direction: column;
	justify-content: center;
	row-gap: 1.25rem;
}

header .menu-block {
	display: inline-block;
	font-family: inherit;
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1.25;
	user-select: none;
	white-space: nowrap;
	text-align: center;
	margin-left: auto;
	padding: 0.65rem 1.5rem;
	border-radius: 3rem;
	text-transform: capitalize;
	color: #fff;
	background-color: #000;
	box-shadow: 1px 2px 30px rgba(0, 0, 0, 0.11);
	transition: all 0.3s ease-in-out;
}

header ul li.menu-item a:hover {
	text-decoration: none;
	border-bottom: 3px solid #e94e38;
}

header ul .give-now.menu-item a:hover {
	border-bottom: none;
}

.menu-item:hover>a:after {
	border-bottom: 3px solid #e94e38;
}

header ul li.menu-item a {
	text-decoration: none;
	font-size: 18px;
	color: #3d3421 !important;
}

header ul li.menu-item {
	list-style-type: none;
	padding-top: 8px;
}

header .custom-logo-link img {
	width: 100%;
}

.team_block .content {
	position: absolute;
	bottom: 0;
	width: 100%;
	display: none;
}

.ast-desktop .ast-primary-header-bar .main-header-menu>.menu-item.give-now {
	line-height: 15px;
}

/* .rwanda-dream-img img{ max-width:540px;} */

.maincontent .question-button a {
	background: #94ae59;
	padding: 10px 40px;
	color: #fff !important;
	font-size: 14px;
	text-transform: uppercase;
	max-width: 250px;
	line-height: 20px;
	font-weight: 600;
	display: block;
	text-align: center;
}

.maincontent .question-button a:hover {
	color: #fff !important;
}

@media only screen and (min-width: 767px) {
	header .menu {
		position: relative;
		top: 0;
		width: auto;
		height: auto;
		padding: 0rem;
		margin-left: auto;
		background: none;
		box-shadow: none;
	}

	header .menu-inner {
		display: flex;
		flex-direction: row;
		column-gap: 2rem;
		margin: 0 auto;
	}

	header .menu-link {
		text-transform: capitalize;
	}

	header .menu-block {
		margin-left: 2rem;
	}

}

header .burger {
	position: relative;
	display: block;
	cursor: pointer;
	user-select: none;
	z-index: 10;
	width: 1.65rem;
	height: 1.15rem;
	border: none;
	outline: none;
	background: none;
	visibility: visible;
	transform: rotate(0deg);
	transition: 0.35s ease;
}

@media only screen and (min-width: 48rem) {
	header .burger {
		display: none;
		visibility: hidden;
	}
}

header .burger-line {
	position: absolute;
	display: block;
	left: 0;
	width: 100%;
	height: 2px;
	border: none;
	outline: none;
	opacity: 1;
	border-radius: 1rem;
	transform: rotate(0deg);
	background-color: #000;
	transition: 0.25s ease-in-out;
}

header .burger-line:nth-child(1) {
	top: 0px;
}

header .burger-line:nth-child(2) {
	top: 0.5rem;
	width: 70%;
}

header .burger-line:nth-child(3) {
	top: 1rem;
}

header .burger.is-active .burger-line:nth-child(1) {
	top: 0.5rem;
	transform: rotate(135deg);
}

header .burger.is-active .burger-line:nth-child(2) {
	opacity: 0;
	visibility: hidden;
}

header .burger.is-active .burger-line:nth-child(3) {
	top: 0.5rem;
	transform: rotate(-135deg);
}

header .sub-menu {
	display: none;
	overflow: hidden !important;
	height: fit-content !important;
	margin: 5px 0 0;
	padding: 30px 0 0;
	position: absolute;
	width: fit-content;
	z-index: 9999;
	opacity: 0;
	color: #3f3730;
	flex-direction: column;
	box-sizing: content-box;
	align-content: flex-start;
	-webkit-transition: .2s ease all;
	-moz-transition: .2s ease all;
	-ms-transition: .2s ease all;
	-o-transition: .2s ease all;
	transition: .2s ease all;
}

li:active .sub-menu {
	display: block;
}

.ast-desktop .ast-primary-header-bar .main-header-menu>.menu-item {
	line-height: inherit;
	margin-left: 35px;
}

.main-header-menu .menu-link {
	padding: 0 !important;
}

header ul li.menu-item a {
	border-bottom: 3px transparent solid;
}

.give-now {
	background: #e44c2e;
	padding: 7px 8px !important;
	margin-top: 0px;
	margin-bottom: 0px;
	width: fit-content;
}

.give-now a {
	color: #fff !important;
	border-bottom: none !important;
	line-height: 14px;
}

.give-now:hover {
	background: #dc3c1c;
	text-decoration: none;
}

.give-now:hover a {
	text-decoration: none;
}

.wp-block-button__link {
	font-family: "Gotham" !important;
}

/* new-home-page */


.video-banner {
	padding: 0 !important;
	margin: 0 !important;
	position: relative;
	min-height: calc(100vh - 150px) !important;
}

.banner-container {
	width: 100%;
	max-width: 1800px !important;
	margin: auto;
	padding: 0 40px;
	position: absolute;
}

.banner-h2 {
	font-size: 5.2vw;
	font-weight: 900;
	line-height: 1em;
	color: #fff;
	letter-spacing: .075em;
	text-transform: uppercase;
}

.banner-button {
	display: inline-block !important;
	width: auto !important;
}

.banner-button a {
	width: auto !important;
	color: #fff;
	font-size: 23px;
	padding: 12px 22px !important;
	font-weight: 500 !important;
	border: none;
}

.banner-button a:hover {
	background: #87a04e !important;
}

.rwanda-container {
	max-width: 1330px !important;
	padding-left: 0px !important;
	padding-right: 0 !important
}

.map-column-left {
	margin-top: 140px !important;
}

.heading-h2 h2 sup {
	font-size: 20px;
	top: -16px;
}

.our-impact {
	background: url(https://africanewlife-org-uk.stackstaging.com/wp-content/uploads/2023/03/our-impact.webp);
	padding: 170px 0 100px !important;
	background-position: center 25%;
	background-repeat: no-repeat;
	background-size: cover;
	width: 100% !important;
	max-width: 1910px !important;
}

.our-impact .container {
	width: 100%;
}

.impact-container {
	display: flex;
	justify-content: center;
	align-items: center;
}

.impact-para {
	text-align: center;
	margin-top: 5px;
	margin-bottom: 0 !important;
}

.inner-container-block {
	height: auto !important;
	min-height: 188px !important;
}

.stewardship {
	max-width: 1330px !important;
}

.stewardship-container {
	width: 1330px !important;
	max-width: 1330px !important;
	padding-left: 20px !important;
	padding-right: 20px !important;
	margin: auto !important;
}

.follow-us {
	background: url(https://africanewlife-org-uk.stackstaging.com/wp-content/uploads/2023/03/social-media-follow-us.webp);
	padding-top: 150px !important;
	padding-bottom: 150px !important;
	background-size: cover;
	display: flex;
	align-items: center;
	text-align: center;
	background-position: center center !important;
	transition: opacity .5s ease;
	overflow: hidden;
	position: relative;
	justify-content: center;
	max-width: 1910px !important;
}

.follow-image img {
	width: 100%;
	max-width: 100%;
}

.follow-image-phone img {
	width: 100%;
	max-width: 100%;
}

.follow-image {
	width: 100%;
	border: 3px solid #fff;
	padding: 15px;
	border-radius: 100%;
	max-width: 80px;
	margin-left: auto;
	height: 100%;
	transition: .3s ease all;
	min-height: 80px;
	display: flex;
	align-items: center
}

.follow-us .wp-block-columns.icon-container {
	margin-top: 30px;
}

.follow-image-phone {
	width: 100%;
	border: 3px solid #fff;
	padding: 15px;
	border-radius: 100%;
	max-width: 80px;
	margin-right: auto;
	transition: .3s ease all;
	min-height: 80px
}


.follow-image:hover {
	border-color: #e44c2e;
	color: #e44c2e;
}


.follow-image-phone:hover {
	border-color: #e44c2e;
	color: #e44c2e;
}

body.page-id-730 {
	background: #e9e3dc;
}

.meet-team-container {
	margin-top: 40px;
	margin-bottom: 40px !important;
}

.piechart-col {
	text-align: center;
}

.meet-team-para p {
	line-height: 23px
}

/* footer */
body .site-footer .footer-widget-area .container {
	max-width: 1100px;
}

body.home .site-footer .footer-widget-area .container {
	max-width: 1100px;
}

.lochead {
	padding-top: 15px;
}

footer .widget-areas.content {
	display: grid !important;
	grid-template-columns: repeat(3, 1fr);
	column-gap: 0px;
}

footer .widget-areas.content .widget-area {
	width: 100% !important;
}

footer .widget-areas.content .widget-area.footer-middle {
	border-right: 1px dashed;
	width: 30%;
}

footer.site {
	background: #3f3730;
	color: #fff;
	padding: 40px 0 15px;
}

.site-footer .site-above-footer-wrap[data-section="section-above-footer-builder"] .ast-builder-grid-row {
	max-width: 100%;
	padding: 0 !important;
}

.site-footer .site-above-footer-wrap {
	padding: 0px !important;
}

footer.site .widget-areas {
	display: flex;
	text-align: center;
}

footer.site .widget-areas>.widget-area.footer-left {
	width: 38%;
	border-right: 1px dashed #fff;
}

footer.site .widgets {
	padding-left: 0;
}

footer .content ul {
	list-style: disc;
	font-size: 1em;
}

footer.site .widget {
	list-style: none;
	/*max-width: 240px;*/
	margin: 0 auto;
}

footer.site .widget h2,
footer.site .widget h3 {
	font-size: 16px;
	font-weight: 700;
	color: #fff;
	text-transform: none;
	margin-bottom: 1em;
}

footer.site .widget p.mc-form-intro {
	line-height: 1.5em;
	font-size: 11px;
}



footer.site fieldset {
	border: none;
}

fieldset {
	margin: 0 2px;
	padding: 0.35em 0.625em 0.75em;
}

footer.site form label {
	display: none;
}



footer.site #mc-embedded-subscribe {
	margin-left: auto;
	margin-right: auto;
}


footer.site .widget a {
	text-decoration: underline;
	color: #ffffff;
}

footer.site .widget a:hover {
	text-decoration: underline;
	color: #788e46;
}

footer.site .widget-areas>.widget-area.footer-left p,
footer.site .widget-areas>.widget-area.footer-middle p,
footer.site .widget-areas>.widget-area.footer-right p {
	margin: 0px;
	font-size: 14px;
	line-height: 38px;
}

footer.site .widget-areas>.widget-area.footer-left p {
	line-height: 30px;
}

#block-2,
#block-3 {
	margin-left: auto !IMPORTANT;
	margin-right: 45px !important;
	text-align: left;
}

.team-grid {
	display: grid !important;
	grid-template-columns: repeat(4, 1fr) !important;
	column-gap: 20px;
	row-gap: 20px;
}


/* founder page css  */


body {
	background: #e9e3dc !important;
}

body.home {
	background: #fff !important;
}

.maincontent p {
	line-height: 22px;
	margin-bottom: 0;
	margin-top: 5px;
}

.maincontent .wp-block-button a {
	color: #fff !important;
}

.maincontent .wp-block-button a:hover {
	background-color: #87a04e !important;
}

.banner-header {
	padding: 0 !important;
	width: 100%;
	margin: auto !important;
	height: 200px;
	overflow: hidden;
	max-width: 1330px !important;
}

.coverimg {
	width: 100% !important;
	padding-left: 30px !important;
}

.founder-info {
	width: 100%;
	margin: 30px auto 50px !important;
	overflow: hidden;
	max-width: 1330px !important;
	background: #fff;
	padding: 70px 30px !important;
	display: block !important;
}

.fontweight300 a,
.fontweight300 {
	font-weight: 300 !important;
}

.meet-team-container .wp-block-columns {
	padding-left: 1px !Important;
	padding-right: 1px !important;
}

.founder-content {
	padding-top: 5px !important;
	padding-bottom: 0 !important;
}

.founder-content p {
	margin-top: 14px !important;
}

.team-grid {
	padding-bottom: 15px;
}

.team-grid h4 {
	margin-top: 15px;
}

.team-grid p {
	margin-top: 4px !important;
}

.team_block {
	min-height: 315px;
	cursor: pointer
}

.sep {
	border-bottom: none !important;
}

.rowcol {
	display: grid;
	grid-template-columns: 49% 49%;
	column-gap: 2%;
}

.rowcol span {
	display: block;
	font-size: 12px;
}

.formfield p {
	margin: 0 !important
}

.formfield label {
	color: #706359;
	font-weight: 700;
	font-size: 14px;
	padding-bottom: 5px;
	display: block;
}

.formfield .wpcf7-form-control {
	border: 1px solid #e9e3dc;
	padding: 7px 4px !important;
	background: #fff;
	color: #706359;
	font-size: 15px;
}

.formfield .wpcf7-submit {
	background: #94ae59 !important;
	border: none !important;
	color: #fff !important;
	font-weight: 700;
	padding: 12px 30px !important;
	text-transform: uppercase;
	border-radius: 0 !important;
	font-size: 14px;
}

.formfield .wpcf7-submit:hover {
	background: #87a04e !important;
}

.faq-container {
	margin-top: 40px;
	margin-bottom: 40px !important;
}

.faq-container .uagb-faq-item {
	border: none !important;
	margin-bottom: 22px;
}

.faq-container .uagb-faq-questions {
	border: 1px solid #e9e3dc;
}

.faq-container .uagb-question {
	font-weight: 700;
	color: #94ae59 !important;
	font-size: 14px !important;
	text-transform: inherit !important;
}

.faq-container .uagb-faq-item-active .uagb-question {
	color: #70635a !important;
}

.faq-container .uagb-faq-item-active .uagb-faq-questions {
	border-color: #70635a;
}

.faq-container .uagb-faq-icon-wrap {
	display: none !Important;
}

.faq-container .uagb-faq-content {
	margin-top: 0 !important;
	font-size: 14px;
	line-height: 26px;
	padding: 10px 15px
}

.faq-container .uagb-faq-content a,
.maincontent a,
.sponsor-container a {
	color: #94ae59 !important;
}

.faq-container .uagb-faq-content a:hover,
.maincontent a:hover,
.sponsor-container a:hover {
	color: #788e46 !important;
}

.faq-list .uagb-faq-content {
	line-height: 28px;
}

.styletable {
	margin-bottom: 0 !important;
}

.styletable table {
	margin-bottom: 0;
	border: 1px solid #e9e3dc;
	border-collapse: separate;
	padding: 10px;
}

.styletable tr td {
	border: none !important;
	padding: 1px 10px;
	color: #70635a;
	font-size: 14px;
}

.styletable figcaption {
	padding-top: 15px;
}

.sponsor-banner {
	padding-bottom: 50%;
}

.sponsor-banner h1 {
	text-shadow: 0px 0px 5px rgba(0, 0, 0, .5);
	letter-spacing: .028em;
	line-height: 1em;
}

.sponsor-video iframe {
	margin-top: -35%;
}

.red-button a {
	text-transform: uppercase;
	padding: 15px 40px;
	font-size: 28px;
	background: #e44c2e;
}

body.page-id-1192 {
	background: #FAF9F8 !important;
}

.sticky-visible {
	position: fixed;
	width: 100%;
}

.about-button a:hover {
	color: #e94c2f !Important;
	border-color: #e94c2f !important;
}

.margintopbot {
	margin-bottom: 0 !important;
	margin-top: 0 !important;
}

.sponsor-banner .uagb-container-inner-blocks-wrap {
	padding-bottom: 20vw;
}

.wp-block-uagb-container.sponsor-banner {
	min-height: auto;
	padding-bottom: 430px;
}

.led-iconbox .uagb-ifb-image-content {
	height: 100px;
	vertical-align: bottom;
	display: flex;
	justify-content: center;
	align-items: flex-end;
}

.page-id-1192 .uagb-container-inner-blocks-wrap {
	row-gap: 10px !important;
}

.sponsorship-photo .uagb-image-caption {
	margin-top: 0;
	margin-bottom: 10px;
}

.quote-container p {
	margin-bottom: 30px;
}

.quote-container blockquote {
	padding: 0 !important;
}

.quote-container cite {
	font-size: 18px;
}

.paralist {
	margin-bottom: -8px !important;
}

.team-grid h4 {
	font-weight: 700;
}

.team-grid .team_block .teamcontent {
	background: #fff;
	bottom: 20px;
	width: 100%;
	position: absolute;
	left: 0;
	padding: 10px 15px 10px 40px;
	display: none;
	min-height: 160px
}

.team-grid .team_block .teamcontent h3 {
	font-size: 18px;
	font-weight: 700;
	margin-bottom: 5px;
	color: #706359;
	text-transform: capitalize;
}

.team-grid .teamcontent p {
	font-size: 14px;
	margin: 0 !important;
}

.teamcontent:before {
	content: "";
	position: absolute;
	top: 10px;
	left: 10px;
	border-left: 10px solid #e44c2e;
	bottom: 10px;
}

.team-grid .team_block .teamcontent span.close_btn {
	position: absolute;
	top: 0;
	right: 15px;
	color: #e44c2e;
	background: 0 0;
	border: none;
	font-weight: 900;
	font-family: cursive;
	cursor: pointer;
	font-size: 14px;
}

.team-grid .team_block .teamcontent.show {
	display: block;
}

.team-grid {
	position: relative;
}

.team_block.active {
	margin-bottom: 70px;
}

.team_block.active .teamcontent {
	display: block;
}

.title {
	letter-spacing: .075em;
}

.circle_percent {
	font-size: 200px;
	width: 1em;
	height: 1em;
	position: relative;
	background: #eee;
	border-radius: 50%;
	overflow: hidden;
	display: inline-block;
	margin: 20px;
}

.circle_inner {
	position: absolute;
	left: 0;
	top: 0;
	width: 1em;
	height: 1em;
	clip: rect(0 1em 1em .5em);
}

.round_per {
	position: absolute;
	left: 0;
	top: 0;
	width: 1em;
	height: 1em;
	background: #e4a6d2;
	clip: rect(0 1em 1em .5em);
	transform: rotate(180deg);
	transition: 1.05s;
}

.percent_more .circle_inner {
	clip: rect(0 .5em 1em 0em);
}

.percent_more:after {
	position: absolute;
	left: .5em;
	top: 0em;
	right: 0;
	bottom: 0;
	background: #e4a6d2;
	content: '';
}

.circle_inbox {
	position: absolute;
	top: 10px;
	left: 10px;
	right: 10px;
	bottom: 10px;
	background: #fff;
	z-index: 3;
	border-radius: 50%;
}

.percent_text {
	position: absolute;
	font-size: 36px;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	z-index: 3;
}

.main-header-menu .sub-menu li a.menu-link {
	text-transform: uppercase;
	overflow-wrap: normal !important;
	font-size: 1em;
	color: #3f3730;
	font-weight: 300;
}

.link a {
	color: #94ae59 !important;
}

.link a:hover {
	color: #788e46 !important;
}

.formfield .required {
	color: #790000;
}

.firstformfield {
	width: 49%;
}

.firstformfield .wpcf7-select {
	border: 1px rgb(118, 118, 118) solid;
	padding: 2px 4px !important;
}

.formfield .wpcf7-textarea {
	max-height: 160px;
}


/*header */


.main-header-menu .sub-menu {
	opacity: 1 !important;
	visibility: visible !important;
	transform: unset !important;
	left: auto !important;
	padding: 30px 0 0;
	border: 0;
	box-shadow: none !important;
	width: max-content;
	display: block !important;
	/*transition:0.5s all !important;*/
	height: auto !important;
	max-height: 0;
	padding: 0;
	background: transparent;
	right: 0 !important;
	text-align: right
}

.main-header-menu li.active .sub-menu {
	max-height: 90px;
	padding: 20px 0px;
}


/* header ul li.menu-item a{
color: #3f3730  !important;
} */

header ul #menu-item-2468 a {
	color: #fff !important;
}


.main-header-menu li.menu-item-has-children:before {
	content: "";
	position: fixed;
	height: 0px;
	top: 60px;
	right: 0px;
	z-index: -1;
	transition: 0.5s all;
	transform: translatex(0);
	left: 0;
	background: #fff;
}

.main-header-menu li.menu-item-has-children.active:before {
	height: 160px;
}

.faqlist-item p a:before {
	content: "";
}

.rwanda-container h2 {
	font-size: 50px !important;
	font-weight: 900;
	text-align: left;
	white-space: nowrap
}

.rwanda-containerr {
	column-gap: 50px !important;
}

.our-impact h3 {
	color: #3f3730 !important;
}

.faq-container .faqlist-item a:before {
	background-color: transparent;
	border-radius: 1em;
	content: " ";
	display: inline-block;
	height: 0.35em;
	margin-right: 8px;
	width: 0.35em;
	border: 1px solid #5c5c5c;
	margin-bottom: 1px;
}

ul.sub-menu a.menu-link:hover {
	font-weight: 700;
}

.menu-link span.ast-icon.icon-arrow {
	display: none;
}

.our-impact-heading h3 {
	margin-bottom: 0px !important;
}

.percentage,
.percentage-green {
	font-size: 5px !important;
}

.follow-us .wp-block-columns {
	gap: 15px;
}


.impact_slider div[role="button"] {
	width: 38px !important;
	height: 38px !important;
	left: 50% !important;
	top: 90%;
	right: unset !important;
	background: #00000052;
	color: #fff !important;
	transform: translateX(-50%);
	margin-left: 30px;
}

.impact_slider .swiper-button-prev {
	margin-left: -30px !important;
}

.home-mapsection {
	padding-bottom: 35px !important;
}

.impact_slider .item.slick-slide {
	background: #fff;
	height: auto;
	text-align: center;
	padding: 30px 15px;
	margin: 0px;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.impact_slider .slick-track {
	display: flex !important;
	column-gap: 38px
}

.impact_slider .slick-track h3 {
	margin: 0;
	font-size: 24px
}

.impact_slider .slick-track p {
	margin: 0;
}

.impact_slider {
	max-width: 100%;
	margin: auto;
	padding: 0 60px
}

.impact_slider button.slick-arrow {
	left: 50%;
	bottom: -50px;
	top: auto;
	transform: translateX(-50%);
	margin-left: 20px;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	background: #00000052;
}

.impact_slider button.slick-prev {
	margin-left: -30px;
}

.impact_slider button.slick-arrow:before {
	width: 12px;
	height: 12px;
	border-left: 3px solid #fff;
	border-top: 3px solid #fff;
	transform: rotate(-45deg);
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -6px;
	margin-left: -4px;
	content: "";
}

.impact_slider button.slick-arrow.slick-next:before {
	transform: rotate(140deg);
	margin-left: -7px
}

.container.copyright p {
	font-size: 10px;
}

.single-chart {
	position: relative;
}

.chart-per {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #e94e38 !important;
	font-size: 43px !important;
	font-weight: 900 !important;
	font-family: 'Gotham' !important;
}

.chart-per-green {
	color: #93af55 !important;
}

.stweard-images-div img {
	max-width: 109px;
}

.stewardship-images {
	column-gap: 35px;
}

.single-chart-outer p {
	font-size: 18px;
}

.chart-section {
	column-gap: 55px !important;
}

.listitem {
	margin: 0 !important;
	padding-left: 18px !important;
}

.faq-box .uagb-faq-content {
	padding-bottom: 0 !important;
}

.sponsorbutton a {
	font-weight: 300 !important;
}

.sponsorbutton a:hover {
	color: #dc3c1c !important;
}

/* responsiveness */

@media (max-width: 1400px) {

	.rwanda-container h2 {
		font-size: 40px !important
	}

	.ourimpact-head {
		font-size: 95px !important;
	}

	stewardship-heading {
		font-size: 40px;
	}

	.banner-h1-heading {
		font-size: 5.2vw !important;
		font-weight: 900 !important;
		line-height: 1em !important;
		padding-top: 30px;
	}

	footer.site .widgets {
		padding-left: 0;
		margin: 0px 0px 0px 8px;
	}

}


@media (max-width:1100px) {
	.sponsor-banner h1 {
		font-size: 48px !important;
	}

	.quote-container cite {
		font-size: 14px;
	}

	.quote-container p {
		font-size: 24px !important;
	}

	.chart-section {
		column-gap: 25px !important;
	}

	.stewardship-heading {
		font-size: 40px !important
	}
}

@media(max-width:1024px) {
	.banner-image.wp-block-uagb-container {
		margin-left: auto !important;
		margin-right: auto !important;
		width: calc(100% - 40px) !important;
	}

	.faq-container {
		margin-left: 20px !important;
		margin-right: 20px !important;
		margin-top: 24px !important
	}

	.ast-mobile-header-content nav a.menu-link {
		height: auto !important;
		background: transparent !important;
	}

	.main-header-menu li.active .sub-menu {
		padding: 0;
		margin: 0
	}

	button.ast-menu-toggle {
		background: transparent !important;
		color: #70635a !important;
		outline: none !important;
	}

	.main-header-menu .sub-menu li a.menu-link span.ast-icon.icon-arrow {
		display: none !important;
	}

	.entry-content {
		padding: 0 !important;
	}

	.wp-block-cover__inner-container {
		padding: 0 30px;
	}

	.entry-content[ast-blocks-layout] .alignfull {
		margin: 0 !important
	}

	.map-column-left {
		margin-top: 50px !important;
	}

	.our-impact h2.wp-block-heading {
		font-size: 7vw !important;
	}

	.rwanda-container {
		padding-left: 45px !important;
		padding-right: 45px !important;
	}

	.rwanda-container h2 {
		white-space: normal;
		font-size: 40px !important;
	}

	.sponsor-banner .uagb-container-inner-blocks-wrap {
		padding-bottom: 9vw;
	}

	.team_block.active {
		margin-bottom: 30px;
	}

	.team-grid .team_block .teamcontent {
		min-height: 165px;
	}

	div#ast-mobile-header .site-header-primary-section-right>.ast-flex:nth-child(1) {
		padding-right: 15px;
	}

	div#ast-mobile-header .site-header-primary-section-right>.ast-flex:nth-child(1) .ast-custom-button {
		padding-top: 12.5px;
		padding-bottom: 12.5px;
		padding-left: 8.5px;
		padding-right: 8.5px;
	}

	.circular-chart {
		max-width: 100% !important;
	}

	.follow-us {
		min-height: calc(100vh - 120px);
		padding-top: 80px !important;
	}

	.rwanda-containerr .wp-block-column {
		padding: 0 15px !important;
	}

	.main-header-menu li.active .sub-menu {
		min-height: 135px
	}

	.wp-block-uagb-container.rwandans-conatiner {
		padding: 35px 45px 90px;
	}

	.meet-team-container {
		padding: 24px !important;
	}

	.main-header-menu .sub-menu {
		text-align: left
	}

}

@media(min-width:1000px) {
	.impact_slider {
		display: none !important;
	}
}

@media(max-width:999px) {
	.desk_impact_container {
		display: none;
	}
}


@media (max-width:991px) {
	footer .widget-areas.content {
		grid-template-columns: repeat(2, 1fr);
		row-gap: 70px;
	}

	footer .widget-areas.content {
		column-gap: 0px;
	}

	.banner-image {
		width: 100% !important;
		max-width: 100% !important;
		height: auto !important;
		max-height: 400px !important;
	}

	.entry-content {
		padding: 0 20px 0px 20px;
	}

	.sponsors {
		display: flex !important;
		flex-wrap: nowrap !important;
	}

	.click-here-button {
		margin-top: 20px !important;
	}

	.banner-h1-heading {
		font-size: 5.2vw !important;
		font-weight: 900 !important;
		line-height: 1em !important;
	}

	.stwardship-column {
		display: block !important;
		text-align: center;
	}

	.video-banner h1.wp-block-heading {
		font-size: 38px !important;
	}

	.stewardship h2.wp-block-heading {
		font-size: 35px !important;
	}

	.banner-button a {
		font-size: 18px !important;
		padding: 10px 20px !important;
	}

	p.banner-para {
		font-size: 14px !important;
		line-height: 20px;
	}

	.stewardship-heading {
		max-width: 400px;
		margin: 0 auto;
		text-align: center;
	}

	.stewardship-images {
		display: flex;
		flex-wrap: wrap !important;
		justify-content: center;
	}

	.stweard-images-div {
		max-width: 100px;
	}

	.stewardship-images img {
		width: 109px;
		display: inline-block;
		margin: 0 15px;
	}

	.icon-container {
		display: flex;
		flex-wrap: nowrap !important;
	}

	.follow-us h2 {
		font-size: 40px !important;
	}

	footer.site .widgets {
		padding-left: 0;
		margin: 0 !important;
	}

	.rwanda-container {
		padding-left: 45px !important;
		padding-right: 45px !important;
	}

	.rwandans-conatiner h2 {
		font-size: 34px !important;
		font-style: normal !important;
		text-transform: none;
		padding-top: 80px;
		line-height: 1em;
		font-weight: 500 !important;
	}

	.led-iconbox {
		width: 100% !important;
		display: flex !important;
		/*     flex-wrap: nowrap !important; */
	}

	#block-2,
	#block-3 {
		margin-left: 0px !important;
		margin-right: 20px !important;
	}

	footer .widget-areas.content {
		column-gap: 30px;
	}


	.faq-heading {
		font-size: 32px !important;
		font-weight: 500 !important;
		text-align: left;
	}

	.copyright p {
		font-size: 14px;
	}

	.sponsor-video iframe {
		margin-top: -35%;
		height: 50vw !important;
	}

	.founders-iframe {
		height: 50vw;
	}

	.rwanda-container h2 {
		white-space: normal;
		font-size: 40px !important;
	}

	p.heading-para {
		font-size: 19px !important;
	}

	.rwanda-container {
		padding-left: 45px !important;
		padding-right: 45px !important;
	}

	.rwanda-container h2 {
		white-space: normal;
		font-size: 40px !important;
	}

	.inner-container-block {
		width: 48% !important;
		min-height: 200px;
	}

	.sponsor-banner .uagb-container-inner-blocks-wrap {
		padding-bottom: 1vw;
	}

}

@media (max-width:976px) {
	.faq-container {
		padding: 24px !important;
	}
}

@media (max-width: 921px) {
	.main-header-menu .menu-link {
		padding-left: 15px !important;
		padding-right: 15px !important;
	}

	header ul li.menu-item {
		padding-top: 0 !important;
	}

	[data-section="section-header-mobile-trigger"] .ast-button-wrap .menu-toggle.main-header-menu-toggle {
		padding: 0 !important;
	}

	[data-section="section-header-mobile-trigger"] .ast-button-wrap .mobile-menu-toggle-icon .ast-mobile-svg {
		width: 35px;
		height: 35px;
		fill: #70635a;
	}

	body ul li.give-now {
		display: none !important;
	}

	body ul#ast-hf-mobile-menu li.give-now a.menu-link {
		display: none !important;
	}

	.faq-image-banner {
		margin: 0px 20px 0px 20px !important;
	}

	div#ast-mobile-header .site-header-primary-section-right>.ast-flex:nth-child(2) {
		padding: 0;
	}

}


@media (min-width:768px) and (max-width:820px) {
	.wp-block-uagb-container.uagb-block-a1cb0f41 {
		min-height: 165px;
	}



	#block-2,
	#block-3 {
		margin-left: 0px !important;
		margin-right: 0px !important;
		text-align: center;
	}

	footer.site .widget {
		max-width: 100%;
	}

	footer.site .widget-areas>.widget-area.footer-middle p {
		font-size: 14px;
		padding-bottom: 20px;
	}

	footer.site .widget h2,
	footer.site .widget h3 {
		margin-bottom: 5px;
	}

	#block-3 p a {
		font-size: 14px !important;
	}

}

@media (min-width:768px) and (max-width:991px) {
	.write-letterbanner {
		min-height: 310px !important;
	}

	.single-chart-outer p {
		font-size: 17px;
		letter-spacing: 0px !important;
	}

	.led-iconbox {
		display: grid !important;
		grid-template-columns: 50% 50%;
	}

	.led-iconbox .rwandans-column {
		max-width: 300px;
	}

	.contenthead h2 {
		font-size: 34px !important;
	}

	.entry-content .wp-block-uagb-container.quote-container {
		margin-bottom: 60px !important;
	}

	.sponsor-video .uagb-container-inner-blocks-wrap {
		padding: 0 10px;
	}

	.chart-section {
		column-gap: 15px !important;
		margin-left: 0 !important;
	}

	.stewardship h2.wp-block-heading {
		font-size: 40px !important;
		line-height: 1.4 !important;
	}

	.stewardship-images img {
		margin: 0 !important;
	}

	.stewardship-images {
		gap: 30px !important;
		margin-bottom: 70px !Important;
	}

	.stweard-images-div {
		max-width: 109px;
	}

	.map-column-left {
		margin-top: 0 !important;
	}

	.home-mapsection .wp-block-columns {
		display: grid;
		grid-template-columns: 50% 50%;
		column-gap: 0 !important;
	}

	.rwanda-dream-img img {
		max-width: 309px;
	}

	p.banner-para {
		font-size: 18px !important;
	}

	.banner-button a {
		font-size: 23px !important;
		font-weight: 600 !important;
	}

	.video-banner h1.wp-block-heading {
		font-size: 5.2vw !important;
	}

	.follow-image-phone {
		padding: 14px;
	}

	.follow-image {
		padding: 18px 14px 14px
	}

	.founder-banner {
		min-height: 162px !important
	}

	.wp-block-uagb-container.sponsor-banner {
		padding-bottom: 356px;
	}

	.sponsor-video iframe {
		margin-top: -29%;
	}

	.stewardship-container {
		padding-left: 38px !important;
		padding-right: 38px !important;
	}

	.circular-chart {
		max-width: 100%;
	}

	.founder-content {
		display: grid !important;
		grid-template-columns: 65% 35%;
	}

}

@media (max-width: 768px) {
	footer.site .widget-areas {
		display: block;
	}

	footer.site .widget-areas>.widget-area.footer-left,
	footer .widget-areas.content .widget-area.footer-middle {
		width: 100%;
		border: none;
		max-width: 240px;
		margin: 0px auto;
		padding-bottom: 20px;
		border-bottom: 1px #fff dashed;
		margin-bottom: 20px;
	}

	footer.site .widget-areas>.widget-area.footer-middle p,
	footer.site .widget-areas>.widget-area.footer-right p {
		padding-bottom: 0 !important;
		line-height: 30px;
	}
}

@media (max-width: 767px) {
	.our-impact .ourimpact-head {
		display: block !important;
	}

	.featurebutton a {
		padding: 11px 16px !important;
	}

	.rwanda-dream-img img {
		max-width: 100%;
	}

	.rwandans-column .uagb-ifb-content {
		max-width: 300px;
	}

	.rwanda-container {
		padding-left: 15px !important;
		padding-right: 15px !important;
	}

	.wp-block-column.is-layout-flow {
		margin-bottom: 0px !important;
	}

	.wp-block-uagb-container.impact-container.uagb-block-75541976.alignfull.uagb-is-root-container {
		margin-right: 12px !important;
	}

	.question-button {
		text-align: center;
		padding-top: 20px;
	}

	.question-button .wp-block-uagb-image {
		float: none !important;
	}

	footer.site .widget-areas {
		display: block;
	}

	#block-2,
	#block-3 {
		margin-left: 0px !important;
		margin-right: 0px !important;
		text-align: center;
	}

	footer.site .widget {
		max-width: 100%;
	}

	.banner-image {
		width: 100% !important;
		max-width: 100% !important;
		height: auto !important;
		min-height: 164px !important;
	}

	.entry-content {
		padding: 0 20px 0px 20px;
	}

	.sponsors {
		display: block !important;
	}

	.click-here-button {
		margin-top: 20px !important;
	}

	.quote-container blockquote {
		width: auto !important;
		text-align: center;
		padding: 50px 0px 80px 0px !important;
		margin: 0 !important;
	}

	.sponsor-container p {
		font-size: 18px;
		line-height: 1.4em;
	}

	.sponsor-container .poverty {
		padding-top: 80px !important;
	}

	.contenthead h2 {
		font-size: 34px !important;
		font-style: normal;
		text-transform: none;
	}

	.sponsor-container h2 {
		font-size: 34px !important;
		font-style: normal;
		text-transform: none;
	}

	.quote-container blockquote p {
		font-size: 24px !important;
		line-height: 1.22em;
		font-style: normal;
		padding-left: 20px;
		padding-right: 20px;
	}

	.rwandans-conatiner h2 {
		font-size: 34px !important;
		font-style: normal !important;
		text-transform: none;
		padding-top: 80px;
		line-height: 1em;
		font-weight: 500 !important;
	}

	.sponsor-video .uagb-container-inner-blocks-wrap {
		padding: 0 10px;
	}

	.banner-button a {
		font-size: 18px !important;
	}

	.banner-para {
		font-size: 14px !important;
		line-height: 20px;
	}

	.heading-h2 h2 {
		font-size: 40px !important;
		white-space: normal;
	}

	.heading-para {
		font-size: 19px !important;
	}

	.stewardship-heading {
		max-width: 400px;
		margin: 0 auto;
		text-align: center;
	}

	.stewardship-images {
		display: flex;
		/*     flex-wrap: nowrap !important; */
		justify-content: center;
		padding-bottom: 40px;
		margin-top: 40px !important;
		column-gap: 40px !important;
	}

	.stewardship-images img {
		width: 109px;
		display: inline-block;
		margin: 0;
	}

	.stweard-images-div {
		max-width: 100px;
	}

	.single-chart-outer {
		height: 323px !important;
	}

	.single-chart {
		max-width: 323px !important;
		margin: 0px auto;
	}

	.chart-section p {
		font-size: 16px !important;
	}

	.chart-section {
		row-gap: 120px !important;
	}

	.icon-container {
		display: flex;
		flex-wrap: nowrap !important;
	}

	/* .video-banner {
min-height: calc(55vh - 150px) !important;
} */

	.ast-mobile-header-wrap .ast-primary-header-bar,
	.ast-primary-header-bar .site-primary-header-wrap {
		min-height: 55px !important;
	}

	.ast-logo-title-inline .ast-site-identity {
		padding: 0;
	}

	#masthead .ast-mobile-header-wrap .ast-primary-header-bar,
	#masthead .ast-mobile-header-wrap .ast-below-header-bar {
		padding-left: 15px;
		padding-right: 15px;
	}

	#masthead .ast-mobile-header-wrap .ast-primary-header-bar .ast-builder-grid-row {
		grid-column-gap: 0px;
	}

	.our-impact h2.wp-block-heading {
		font-size: 7vw !important;
	}

	.our-impact .swiper-wrapper {
		min-height: inherit !important;
	}

	.video-banner h1.wp-block-heading,
	.stewardship h2.wp-block-heading {}

	.stewardship h2.wp-block-heading {
		font-size: 40px !important;
		line-height: 1.33em !important;
	}

	.chart-section {
		margin-left: 0 !important;
		flex-wrap: wrap;
	}


	.follow-us h2.uagb-heading-text {
		font-size: 35px !important;
	}

	.follow-us {
		padding: 100px 0 !important
	}

	.sponsor-banner h1 {
		font-size: 48px !important;
		letter-spacing: .075em;
		line-height: 1em !important;
		margin-bottom: 0px !important;
	}

	.sponsor-banner {
		padding-bottom: 50% !important;
	}

	.sponsorship-video {
		height: auto !important;
	}

	.faq-image-banner {
		margin: 0px 20px 0px 20px !important;
		min-height: 150px !Important;
	}

	.faq-container .uagb-question {
		font-size: 14px;
		line-height: 17px;
	}

	footer.site .widget-areas>.widget-area.footer-middle p {
		font-size: 14px;
	}

	#block-3 p a {
		font-size: 14px !important;
	}

	.faq-heading {
		font-size: 28px !important;
		font-weight: 500 !important;
		line-height: 28px !important;
		margin-bottom: 0 !important;
	}

	.copyright p {
		font-size: 14px;
	}

	.title {
		font-size: 28px !important;
	}



	.question-button a {
		margin: auto !important;
	}



	.red-button .fontweight300,
	.fontweight300 a {
		font-weight: 300 !important;
		padding: 15px 32px !important;
		font-size: 28px !important;
	}

	.inner-container-block {
		min-height: 150px !important;
	}

	.sponsor-banner .uagb-container-inner-blocks-wrap {
		padding-bottom: 0vw !important;
	}

	.foundercontainer {
		margin-top: 24px !important;
	}

	.ast-header-button-1[data-section*="section-hb-button-"] .ast-builder-button-wrap .ast-custom-button {
		font-size: 15px;
		border-radius: 0 !important;
	}

	header ul li.menu-item a {
		font-size: 14px !important;
	}


	/* team block  */

	.wp-block-column.is-layout-flow {
		margin-bottom: 0px !important;
	}

	.team-grid .team_block .teamcontent {
		bottom: auto;
		width: 91vw;
		left: -10px;
		min-height: fit-content;
		top: 0;
		z-index: 9;
		position: relative;
		margin-top: -70px;
	}

	.team-grid .team_block .teamcontent {}

	.team_block {
		position: relative;
	}

	.team-grid .team_block:nth-child(2) .teamcontent,
	.team-grid .team_block:nth-child(4) .teamcontent {
		left: -47.5vw;
	}

	.ast-header-button-1[data-section*="section-hb-button-"] .ast-builder-button-wrap .ast-custom-button {
		padding-top: 10px;
		padding-bottom: 10px;
		padding-left: 10px;
		padding-right: 10px;
	}

	.circular-chart {
		max-width: 100% !important;
	}

	.stewardship-container {
		padding-left: 0 !important;
		padding-right: 0 !important
	}

	.our-impact .uagb-slides {
		margin-bottom: 52px;
	}

	.impact_slider {
		max-width: 100%;
		margin: auto;
		padding: 0 30px
	}



	.main-header-menu .sub-menu {
		text-align: left
	}

}

@media (max-width: 576px) {
	.sponsor-video iframe {
		margin-top: -25%;
	}

	.faq-image-banner {
		min-height: 115px !Important;
	}


	footer.site .widget-areas {
		display: block;
	}

	footer .widget-areas.content {
		grid-template-columns: repeat(1, 1fr);
		row-gap: 50px;
	}

	.ast-header-break-point .ast-mobile-header-wrap .ast-flex.stack-on-mobile {
		padding: 20px;
	}

	#block-2,
	#block-3 {
		margin-left: 0 !important;
		margin-right: 0 !important;
		text-align: center;
	}

	footer.site .widget {
		max-width: 100%;
	}

	.banner-image {
		width: 100% !important;
		max-width: 100% !important;
		height: auto !important;
		min-height: 200px !important;
	}

	.entry-content {
		padding: 0 20px 0px 20px;
	}

	.inner-container-block {
		width: 80% !important;
	}


}

@media (max-width: 544px) {

	html {
		font-size: 62.5% !important;
	}

}


@media (min-width: 521px) and (max-width: 767px) {

	.team-grid {
		grid-template-columns: repeat(2, 1fr) !important;
	}



	.piechart-col img {
		width: 100%;
	}

	.meet-team-container a {
		color: rgb(148, 174, 89);
	}

	.meet-team-container {
		padding: 20px !important;
		margin-top: 20px !important;
	}

	.formfield .wpcf7-submit {
		width: 100% !important;
	}

}

@media(max-width:520px) {
	.team-grid {
		grid-template-columns: repeat(2, 1fr) !important
	}
}



@media (max-width: 440px) {
	.sponsor-banner h1 {
		font-size: 3rem !important;
	}

	.stewardship-images {}

	.founder-banner {
		min-height: 85px !important;
		padding-top: 20px !important;
		padding-bottom: 0 !important;
	}

	.founder-banner .title {
		font-size: 24px !important;
	}

	.faq-image-banner {
		min-height: 68px !Important;
	}

	.faq-heading {
		font-size: 24px !Important;
		line-height: 24px !Important;
	}

	.team_block {
		width: 100%;
		max-width: 100% !important;
	}

	.team-grid .team_block .teamcontent {
		width: 86vw;
	}

	.team_block.active h4.wp-block-heading {
		min-height: 44px;
	}

	.team_block.active p:nth-child(3) {
		min-height: 59px;
	}

	.team-grid .team_block:nth-child(2) .teamcontent,
	.team-grid .team_block:nth-child(4) .teamcontent {
		left: -46vw;

	}

	.team-grid .team_block .teamcontent {
		margin-top: -130px;
	}

	.founders-iframe {
		height: 47vw;
	}

	.follow-us h2.uagb-heading-text {
		font-size: 40px !important;
	}

	.follow-image-phone,
	.follow-image {
		border: 2px solid #fff;
		padding: 8px;
		max-width: 45px;
		min-height: 45px
	}

	.follow-image {
		padding: 10px;
		min-height: 45px
	}

	.stewardship h2.wp-block-heading {
		font-size: 37px !important;
		line-height: 1.33em !important;
	}

	.our-impact {
		padding-top: 80px;
	}

	.map-column-left {
		margin-top: 30px !important;
	}

	p.heading-para {
		font-size: 18px !important;
	}

	.video-banner h1.wp-block-heading {
		font-size: 38px !important;
	}

	.wp-block-columns.stewardship-images {
		gap: 0;
		column-gap: 40px;
		max-width: 300px;
		margin-left: auto;
		margin-right: auto;
	}

	.stweard-images-div {
		max-width: 109px;
	}

	.stewardship-images img {
		width: 100%;
		display: inline-block;
		margin: 0px;
	}

	.our-impact .ourimpact-head {
		display: none !important;
	}

	.red-button .fontweight300 {
		padding: 15px 0 !important;
	}

	.meet-team-container h2 {
		font-size: 24px !important
	}

	.write-letterbanner {
		min-height: 158px !important;
	}

	.title {
		font-size: 28px !important;
		line-height: 1em !important;
	}

}

@media (max-width:360px) {
	.single-chart-outer p {
		max-width: 300px;
		margin: 0px auto !important;
		margin-top: 16px !important;
	}

	.founders-iframe {
		height: 169px;
	}

	.featurebutton {
		font-size: 11px !important;
	}

	.featurebutton a {
		padding: 11px 19px !important;
	}

	.about-button a {
		padding: 14px 42px !important
	}

	.write-letterbanner {
		min-height: 136px !important;
	}

	.title {
		font-size: 24px !important;
		line-height: 1em !important;
	}
}

@media (min-width: 320px) and (max-width: 520px) {

	.piechart-col img {
		width: 100%;
	}

	.meet-team-container a {
		color: rgb(148, 174, 89);
	}

	.meet-team-container {
		padding: 20px !important;
		margin-top: 20px !important;
	}

	.formfield .wpcf7-submit {
		width: 100% !important;
	}

}




/* new css */
.video-banner {
	min-height: calc(100vh - 150px);
}

.video-banner h1 {
	font-family: "Gotham";
	line-height: 1em;
	/*     font-size: 5.2vw !important; */
	font-weight: 900;
}



.video-banner>.wp-block-cover__inner-container {
	max-width: 1300px !important;
}


body ul#ast-hf-mobile-menu li.give-now a.menu-link {
	display: none !important;

}

body ul#ast-hf-mobile-menu li.give-now {
	margin: 0 !important;
}

.ast-header-break-point .ast-mobile-header-wrap .ast-flex.stack-on-mobile {
	flex-wrap: wrap;
	padding: 10px;
}

.wp-block-column.team_block.is-layout-flow {
	margin-left: -5px;
}

a.buttons {
	background: #94ae59 !important;
	padding: 10px 27px;
	color: #fff !important;
	display: block;
	text-align: center;
	max-width: 240px;
}


.follow-us {
	min-height: calc(100vh - 120px);

}

.video-banner a.wp-block-button__link {
	min-width: 308px;
	min-height: 47px;
	display: flex;
	align-items: center;
	justify-content: center;
}

/* css for safari */

.wp-block-column.team_block.is-layout-flow {
	margin-left: 0 !important;
}

.give-now {
	display: none !important;
}

div#ast-mobile-header .site-header-primary-section-right>.ast-flex:nth-child(1) {
	display: none !important
}

/* .mac-os.page-id-972 .faq-container .uagb-faq-questions{   padding: 15.5px 10px 5px !important; }

.page-id-1192.mac-os .red-button a, .page-id-1192.mac-os .about-button a.wp-block-button__link{
padding-top: 25px !important;
padding-bottom: 5px !important;
}

.mac-os .maincontent .question-button a {
padding-top: 15px;
padding-bottom: 5px;
}

.mac-os p{ font-family:-apple-system} */


body.mac-os {
	font-family: 'Raleway', sans-serif !important;
}

body.mac-os div,
body.mac-os h1,
body.mac-os h2,
body.mac-os h3,
body.mac-os a {
	font-family: -apple-system !important;
}


.stewardship-container {
	padding: 0 !important;
}

.stewardship-container .stwardship-column>.wp-block-column:nth-child(1) {
	flex-basis: 33.33% !important;
}

.single-chart {
	max-width: 323px;
	margin: auto;
}


body.mac-os .main-header-menu li.active .sub-menu {
	max-height: 115px;
	padding: 20px 0px;
}

body.mac-os .rwanda-container h2 {
	white-space: inherit !important
}

body.mac-os .stwardship-column .stewardship-heading {
	font-size: 40px !important;
}

body.mac-os .stewardship-container .stwardship-column>.wp-block-column:nth-child(1) {
	flex-basis: 35% !important;
}


body.page-id-1063 .site-primary-header-wrap.ast-container,
body.page-id-972 .site-primary-header-wrap.ast-container,
body.page-id-1131 .site-primary-header-wrap.ast-container,
body.page-id-730 .site-primary-header-wrap.ast-container,
body.page-id-2448 .site-primary-header-wrap.ast-container {
	max-width: 1000px;
}

body.page-id-1063 .entry-content.clear,
body.page-id-972 .entry-content.clear,
body.page-id-1131 .entry-content.clear,
body.page-id-730 .entry-content.clear,
body.page-id-2448 .entry-content.clear {
	max-width: 1000px;
	margin: auto;
	padding: 0 20px;
}


@media(max-width:1440px) {
	footer.site .widgets {
		padding-left: 20px !important;
		margin: 0px 0px 0px 0px;
	}
}


@media (min-width: 767px) and (max-width: 1024px) {
	.video-banner>.wp-block-cover__inner-container {
		padding: 0 60px
	}

}

@media(max-width:499px) {
	.impact_slider .slick-track {
		column-gap: 0
	}

	.impact_slider {
		padding: 0 50px;
	}

}


.site-above-footer-wrap[data-section="section-above-footer-builder"].ast-footer-row-mobile-stack .site-footer-section {
	margin-bottom: 0 !important;
}

a.wp-block-button__link.has-ast-global-color-5-color.has-text-color.has-background.has-border-color.has-text-align-center.wp-element-button {
	margin-bottom: 40px;
}


.sponsorfield-common {
	display: grid;
	grid-template-columns: 48% 48%;
	column-gap: 4%;
}

.pum-theme-3538 .pum-content+.pum-close,
.pum-theme-default-theme .pum-content+.pum-close {
	line-height: 22px;
	padding: 5px;
	background: #94ae59
}

.sponsorfield p {
	margin-bottom: 8px;
}

.sponsorform .wpcf7-textarea {
	min-height: 150px;
	max-height: 150px;
	margin-bottom: 15px;
	max-width: 100% !important;
	width: 100% !important;
}

.sponsorform .wpcf7-submit {
	background: #94ae59;
}

.sponsorform .wpcf7-submit:hover,
.sponsorform .wpcf7-submit:focus {
	background: #7b9345;
}

.sponsorform .wpcf7-form-control,
.sponsorform .wpcf7-textarea {
	padding: 10px !important;
}

.pum-theme-3538,
.pum-theme-default-theme {
	background-color: rgba(0, 0, 0, 0.7)
}

.faq-container .wpsm_panel-group,
.wpsm_panel-body {
	font-family: "Gotham";
	font-weight: 400;
	font-size: 14px !important;
}

.wpsm_panel-body {
	padding: 10px 15px !important
}

.faq-container #wpsm_accordion_3601 .wpsm_panel-default>.wpsm_panel-heading {
	border: 1px solid #e9e3dc !important;
	border-radius: 0 !important;
	background-color: transparent !important;
	padding: 0 !important;
}


.faq-container #wpsm_accordion_3601 .wpsm_panel-default>.wpsm_panel-heading.acc-a {
	border-color: #70635a !important;
}

.faq-container #wpsm_accordion_3601 .wpsm_panel-default>.wpsm_panel-heading a {
	padding: 14px !important;
}

#wpsm_accordion_3601 .ac_title_class {
	padding: 0 !important;
	font-family: "Gotham";
	font-weight: 700;
}

#wpsm_accordion_3601 .wpsm_panel {
	margin-bottom: 22px !important;
	margin-top: 0 !important;
}

#wpsm_accordion_3601 .wpsm_panel-title {
	line-height: 22px !important;
	font-size: 14px !important;
}

.wpsm_panel-body ul {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	padding-left: 20px;
}

.listingfaq {
	padding-top: 15px !important;
}

@media(max-width:767px) {
	#wpsm_accordion_3601 .wpsm_panel-title a {
		line-height: 21px;
	}

	#wpsm_accordion_3601 .wpsm_panel-body {
		line-height: 21px;
	}

	.faq-container #wpsm_accordion_3601 .wpsm_panel-default>.wpsm_panel-heading a {
		padding: 10px !important;
	}

	#wpsm_accordion_3601 .wpsm_panel-body ul li {
		line-height: 24px;
	}
}

/**
 * Children support styles
 */

.shell {
	width: 100%;
	max-width: 1040px;
	margin-inline: auto !important;
	padding-inline: 40px;
	box-sizing: border-box;
}

/* ── Archive: listing ── */

.children-listing {
	width: 100%;
	padding: 56px 0 72px;
}

.children-listing .btn {
	border: 1px solid #7a9640;
	background-color: #7a9640;
	color: #fff;
}

.children-listing .btn--secondary {
	background-color: transparent;
	color: #7a9640;
}

.children-listing__head {
	margin-bottom: 20px;
}

.children-listing__title h1 {
	font-size: 48px;
	font-weight: 900;
	letter-spacing: .04em;
	text-transform: uppercase;
	color: #2b2118;
	margin: 0 0 10px;
	line-height: 1;
}

.children-listing__title h1::after {
	content: '';
	display: block;
	width: 48px;
	height: 4px;
	background: #7a9640;
	margin-top: 10px;
}

.children-listing__description p {
	font-size: 15px;
	color: #706359;
	margin: 20px 0 0;
	font-weight: 400;
}

.children-listing__body {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(225px,1fr));
	gap: 15px;
}

.children-listing__sidebar {
	padding: 28px;
	background: rgba(255, 255, 255, .95);
	border-top: 4px solid #7a9640;
	border-radius: 6px;
	box-shadow: 0 2px 12px rgba(0, 0, 0, .12);
	box-sizing: border-box;
}

.children-listing__sidebar h2 {
	margin: 0 0 18px;
	color: #2b2118;
	font-size: 23px;
	font-weight: 800;
	line-height: 1.2;
	text-transform: uppercase;
}

.children-listing__sidebar p {
	margin: 0 0 16px;
	color: #706359;
	font-size: 16px;
	line-height: 1.55;
}

.children-listing__sidebar p:last-child {
	margin-bottom: 0;
}

.children-listing {
	position: relative;
	background: #f6f4f0;
}

.children-listing::before {
	content: '';
	position: absolute;
	inset: 0 0 auto;
	width: 100%;
	height: 100%;
	background-image: linear-gradient(rgba(43, 33, 24, .08), rgba(43, 33, 24, .18)), url('assets/images/sponsor-a-student-background.jpg');
	background-attachment: fixed;
	background-position: center top;
	background-repeat: no-repeat;
	background-size: cover;
	pointer-events: none;
}

.children-listing > .shell {
	position: relative;
	z-index: 1;
}

.children-listing__head {
	display: inline-block;
	max-width: 100%;
	margin-bottom: 24px;
	padding: 22px 28px;
	background: rgba(255, 255, 255, .94);
	border-radius: 6px;
	box-shadow: 0 2px 12px rgba(0, 0, 0, .1);
}

.children-listing__title h1 {
	margin-bottom: 0;
}

/* Section 3.1 desktop concept: title above a sponsorship sidebar and grid. */
@media (min-width: 769px) {
	.children-listing__layout--with-sidebar {
		display: grid;
		grid-template-columns: minmax(260px, 300px) minmax(0, 1fr);
		align-items: start;
		gap: 24px;
	}

	.children-listing__layout--with-sidebar .children-listing__body {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 1024px) {
	.children-listing__layout--with-sidebar {
		grid-template-columns: minmax(0, 1fr);
	}

	.children-listing__sidebar {
		width: 100%;
		box-sizing: border-box;
	}
}

/* ── Card child ── */

.card-child {
	background: rgba(246, 244, 240, 1);
	box-shadow: 0 2px 12px rgba(0,0,0,.08);
	overflow: hidden;
	display: flex;
	flex-direction: column;
	transition: box-shadow .2s ease;
	border-radius: 6px;
}

.card-child:has(a:hover) {
	box-shadow: 0 6px 24px rgba(0,0,0,.13);
}

.card-child__image {
	width: 100%;
	aspect-ratio: 1 / 1;
	overflow: hidden;
	flex-shrink: 0;
	padding: 10px;
}

.card-child__image a {
	display: block;
	height: 100%;
	overflow: hidden;
}

.card-child__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: top center;
	display: block;
	transition: transform .4s ease-in-out;
	will-change: transform;
	backface-visibility: hidden;
}

.card-child__image img:hover {
	transform: scale(1.10);
}

.card-child__image--placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
}

.card-child__image--placeholder:before {
	content: '';
	position: absolute;
	inset: 10px;
	background: #e8e3db;
	pointer-events: none;
}

.card-child__image--placeholder a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	position: relative;
	z-index: 1;
}

.card-child__placeholder-icon {
	width: 52%;
	height: 52%;
	fill: #c0b5ab;
}

.card-child__content {
	padding: 0 12px 12px;
	flex: 1;
}

.card-child__content h6 {
	font-size: 14px;
	font-weight: 700;
	color: #7a9640;
	text-transform: uppercase;
	line-height: 1.3;
	margin: 0 0 0;
}

.card-child__content h2 {
	font-size: 18px;
	font-weight: 700;
	color: #2b2118;
	text-transform: none;
	line-height: 1.3;
	margin: 0 0 10px;
}

.card-child__content p {
	font-size: 14px;
	color: #706359;
	margin: 0 0 3px;
	line-height: 1.4;
}

.card-child__actions {
	padding: 0 12px 12px;
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 8px;
}

.card-child__actions a {
	font-size: 16px !important;
	text-align: center !important;
	font-weight: 900 !important;
	color: #7a9640 !important;
	text-decoration: none !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 6px !important; 
	padding: 2px !important;
}

.card-child__actions a:not(.btn--secondary) {
	color: #fff !important;
}

.card-child__actions a::after {
	content: '›';
	font-size: 15px;
	font-weight: 900;
	line-height: 1;
	transition: transform .2s ease;
}

.card-child__actions a.btn--secondary:hover {
	color: #5c7230 !important;
}

.card-child__actions a:hover::after {
	transform: translateX(3px);
}

/* ── Responsive archive ── */

@media (max-width: 1024px) {
	.children-listing__body {
		grid-template-columns: repeat(3, 1fr);
	}
}

/* Larger tap targets for the card buttons on tablet and below */
@media (max-width: 1000px) {
	.card-child__actions a {
		padding: 11px 14px !important;
	}
}

@media (max-width: 768px) {
	.children-listing__sidebar {
		margin-bottom: 24px;
		padding: 20px;
	}

	.shell {
		padding-inline: 15px;
	}

	.children-listing {
		padding: 32px 0 40px;
	}

	.children-listing__body {
		grid-template-columns: repeat(2, 1fr);
		gap: 16px;
	}

	.children-listing__title h1 {
		font-size: 28px;
	}

	.children-listing__title h1::after {
		margin-top: 5px;
	}

	.children-listing__description p {
		margin: 15px 0 0;
		font-size: 14px;
	} 
}

/* Astra adds narrow-screen container gutters at this breakpoint. Keep the
   sponsorship background full-bleed while retaining padding on its inner shell. */
@media (max-width: 544px) {
	.children-listing {
		width: 100vw;
		max-width: none;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		box-sizing: border-box;
	}
}

@media (max-width: 480px) {
	.children-listing__body {
		grid-template-columns: 1fr;
	}
}

/* ── Single child page ── */

.children-single__back {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 14px;
	font-weight: 600;
	color: #7a9640 !important;
	text-decoration: none !important;
	margin-bottom: 24px;
	transition: color .2s ease;
}

.children-single__back:hover {
	color: #5c7230 !important;
}

.children-single {
	width: 100%;
	padding: 56px 0 72px;
}

.children-single__content-wrapper {
	display: grid;
	grid-template-columns: 30% 1fr;
	gap: 0 35px;
	background: rgba(246, 244, 240, 1);
	border-radius: 8px;
	box-shadow: 0 2px 12px rgba(0, 0, 0, .08);
	overflow: hidden;
	align-items: start;
}

.children-single__content-wrapper:not(:has(.children-single__image)) {
	grid-template-columns: 1fr;
}

.children-single__content-wrapper:not(:has(.children-single__image)) .children-single__content {
	padding: 40px;
}

.children-single__content-wrapper:not(:has(.children-single__image)) .children-single__content-inner {
	grid-template-columns: 1fr;
}

.children-single__content-wrapper:not(:has(.children-single__image)) .children-single__map {
	height: 350px;
}

.children-single__image {
	width: 100%;
	height: 100%;
	overflow: hidden;
}

.children-single__image img {
	width: 100%;
	height: 100%;
	aspect-ratio: 0.666666667 / 1;
	object-fit: cover;
	object-position: top center;
	display: block;
	box-shadow: none;
	transition: transform .4s ease-in-out;
	will-change: transform;
	backface-visibility: hidden;
}

.children-single__image:hover img {
	transform: scale(1.10);
}

.children-single__content {
	padding: 40px 40px 40px 0;
	display: flex;
	flex-direction: column;
	height: 100%;
}

.children-single__content-inner {
	display: grid;
	grid-template-columns: 1.1fr 2fr;
	gap: 24px;
}

.children-single__header {
	width: 100%;
}

.children-single__map {
	width: 100%;
	height: 230px;
	overflow: hidden;

	iframe {
		height: 100%;
		width: 100%;
		display: block;
	}
}

.children-single__content h1 {
	flex-grow: 1;
	width: 100%;
	font-size: 32px;
	font-weight: 900;
	color: #2b2118;
	text-transform: none;
	line-height: 1.2;
	margin: 0 0 25px;
	display: grid;
	grid-template-columns: max-content max-content;
	align-items: center;
	gap: 10px;
}

.children-single__content h1 small {
	font-size: 14px;
	font-weight: 400;
	color: #706359;
	text-transform: none;
	line-height: 1.3;
	margin: 0 0 0;
	flex-shrink: 0;
}

.children-single__content h1::after {
	content: '';
	display: block;
	width: 40px;
	height: 4px;
	background: #7a9640;
	margin-top: 10px;
}

.children-single__content p {
	font-size: 15px;
	color: #706359;
	margin: 0 0 8px;
	line-height: 1.6;
}

.children-single__content p strong {
	color: #2b2118;
	font-weight: 700;
}

.children-single__actions {
	padding: 24px 40px 0 0;
	margin-top: auto;
}

.children-single__actions button.js-show-sponsor-form {
	background: #7a9640;
	color: #fff;
	border: none;
	border-radius: 4px;
	padding: 14px 40px;
	font-size: 15px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .06em;
	cursor: pointer;
	transition: background .2s ease;
	font-family: inherit;
}

.children-single__actions button.js-show-sponsor-form:hover {
	background: #5c7230;
}

.children-single__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	align-items: center;
}

.children-single__gift-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
	min-height: 52px;
	box-sizing: border-box;
	background: transparent;
	color: #7a9640 !important;
	border: 1px solid #7a9640;
	border-radius: 4px;
	padding: 0 30px;
	font-size: 15px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .06em;
	cursor: pointer;
	transition: background .2s ease, color .2s ease;
	font-family: inherit;
}

.children-single__gift-btn:hover {
	background: #7a9640;
	color: #fff !important;
}

.children-single__gift-icon {
	flex-shrink: 0;
	display: block;
}

/* Match the Sponsor button height to the gift button for a consistent row. */
.children-single__actions button.js-show-sponsor-form {
	min-height: 52px;
	box-sizing: border-box;
	padding-top: 0;
	padding-bottom: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.children-single__region-icon {
	position: relative;
	    display: inline-flex;
	    line-height: 1;
	    justify-content: center;
	    align-items: center;
	    border-radius: 50%;
	    border: 1px solid #7a9640;
	    width: 16px;
	    height: 16px;
	    font-size: 12px;
	    cursor: pointer;
	    color: #7a9640;
	    transform: translateY(-1px);
}

.children-single__region-icon::after {
	content: '';
	position: absolute;
	top: 100%;
	left: 50%;
	width: 36px;
	height: 12px;
	transform: translateX(-50%);
	background: transparent;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	z-index: 999;
}

.children-single__region-icon:hover::after {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

.children-single__region-tooltip {
	position: absolute;
	top: calc(100% + 10px);
	left: 50%;
	transform: translateX(-50%);
	background: #fff;
	border: 1px solid #e5e0d8;
	border-top: 3px solid #7a9640;
	border-radius: 8px;
	padding: 16px 18px;
	font-size: 14px;
	color: #706359;
	line-height: 1.55;
	opacity: 0;
	visibility: hidden;
	transition: opacity .2s ease, visibility .2s ease;
	pointer-events: none;
	width: min(360px, calc(100vw - 40px));
	box-shadow: 0 8px 28px rgba(43, 33, 24, .16);
	z-index: 1000;
	max-height: 300px;
	overflow-y: auto;
	cursor: default;
	scrollbar-width: thin;
	scrollbar-color: #7a9640 #f6f4f0;
}

.children-single__region-tooltip::before {
	content: '';
	position: absolute;
	top: -8px;
	left: 50%;
	width: 12px;
	height: 12px;
	background: #7a9640;
	transform: translateX(-50%) rotate(45deg);
	z-index: -1;
}

.children-single__region-icon:hover .children-single__region-tooltip {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

.children-single__form {
	padding: 40px;
	margin-top: 20px;
	background-color: rgba(246, 244, 240, 1);
	border-radius: 8px;
}

.children-single iframe.js-beacon-iframe {
	border: none;
	width: 100%;
	overflow: hidden;
	display: block;
}

/* Stack the single-child layout on tablet/below and cap the image height so
   it never towers over the content. */
@media (max-width: 1000px) {
	.children-single {
		padding: 40px 0 56px;
	}

	.children-single__content-wrapper {
		grid-template-columns: 1fr;
		gap: 0;
	}

	.children-single__image {
		height: auto;
		padding: 16px 16px 0;
	}

	.children-single__image img,
	.children-single__image:hover img {
		aspect-ratio: auto;
		width: 100%;
		height: clamp(220px, 42vw, 360px);
		object-fit: cover;
		object-position: top center;
		border-radius: 8px;
		transform: none;
	}

	.children-single__content {
		padding: 24px;
		height: auto;
	}

	.children-single__content-inner {
		grid-template-columns: 1fr;
		gap: 20px;
	}

	.children-single__map {
		height: 220px;
	}

	.children-single__content h1 {
		font-size: 26px;
		margin-bottom: 18px;
	}
}

@media (max-width: 662px) {
	.children-single__image img,
	.children-single__image:hover img {
		height: clamp(200px, 60vw, 300px);
	}

	.children-single__content {
		padding: 20px;
	}

	.children-single__content h1 {
		font-size: 22px;
		margin-bottom: 15px;
	}

	.children-single__content h1::after {
		margin-top: 15px;
	}

	.children-single__actions {
		flex-direction: column;
		align-items: stretch;
	}

	.children-single__gift-btn,
	.children-single__actions button.js-show-sponsor-form {
		width: 100%;
	}

	.children-single__form {
		padding: 10px;
		margin-top: 15px;
	}
}

/* ==========================================================================
   WooCommerce — Shop, Cart, Checkout & My Account
   Styled to match the "Sponsor a Child" pages (grid, colours, fonts, cards).
   Design tokens:
     green        #7a9640   green-dark  #5c7230
     ink          #2b2118   body text   #706359
     surface      #f6f4f0   line        #e5e0d8
   ========================================================================== */

/* ── Page shell: constrain WooCommerce pages to the same 1040px column ── */

body.woocommerce-page #primary,
body.woocommerce-account #primary,
body.woocommerce-cart #primary,
body.woocommerce-checkout #primary {
	width: 100%;
	max-width: 1040px;
	margin-inline: auto;
	padding: 56px 40px 72px;
	box-sizing: border-box;
}

/* ── Page titles (Shop / Cart / Checkout / My Account) ── */

body.woocommerce-page .entry-title,
body.woocommerce-page .ast-archive-title,
body.woocommerce-page .woocommerce-products-header__title {
	font-size: 48px;
	font-weight: 900;
	letter-spacing: .04em;
	text-transform: uppercase;
	color: #2b2118;
	line-height: 1;
	margin: 0 0 28px;
}

body.woocommerce-page .entry-title::after,
body.woocommerce-page .ast-archive-title::after,
body.woocommerce-page .woocommerce-products-header__title::after {
	content: '';
	display: block;
	width: 48px;
	height: 4px;
	background: #7a9640;
	margin-top: 14px;
}

body.woocommerce-page .entry-header {
	border: 0;
	padding: 0;
	margin: 0;
}

/* Make a Donation page — align its title and content shell with the shop. */
body.anl-donation-page #primary {
	width: 100%;
	max-width: 1040px;
	margin-inline: auto;
	padding: 56px 40px 72px;
	box-sizing: border-box;
}

body.anl-donation-page .entry-header {
	margin: 0;
	padding: 0;
	border: 0;
}

body.anl-donation-page .entry-title {
	margin: 0 0 28px;
	color: #2b2118;
	font-size: 48px;
	font-weight: 900;
	letter-spacing: .04em;
	line-height: 1;
	text-transform: uppercase;
}

body.anl-donation-page .entry-title::after {
	content: '';
	display: block;
	width: 48px;
	height: 4px;
	margin-top: 14px;
	background: #7a9640;
}

@media (min-width: 769px) and (max-width: 921px) {
	body.anl-donation-page #content > .ast-container {
		width: 100%;
		max-width: none;
		padding-inline: 0;
	}

	body.anl-donation-page #primary {
		padding: 56px 40px 72px !important;
	}
}

@media (max-width: 768px) {
	body.anl-donation-page #content > .ast-container {
		width: 100%;
		max-width: none;
		padding-inline: 0;
	}

	body.anl-donation-page #primary {
		padding: 32px 15px 40px !important;
	}

	body.anl-donation-page .entry-title {
		font-size: 28px;
	}

	body.anl-donation-page .entry-content,
	body.anl-donation-page .beacon-form,
	body.anl-donation-page .beacon-form iframe {
		width: 100%;
		max-width: 100%;
		box-sizing: border-box;
	}
}

/* ── Section sub-headings ── */

.woocommerce h2,
.woocommerce h3,
.woocommerce #order_review_heading,
.woocommerce-cart .cart_totals h2,
.woocommerce-checkout #order_review_heading {
	font-size: 24px;
	font-weight: 700;
	color: #2b2118;
	text-transform: uppercase;
	letter-spacing: .03em;
	line-height: 1.2;
}

/* ── Buttons (shared) ── */

.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce input[type="submit"].button,
.woocommerce .button,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce #respond input#submit,
.woocommerce #place_order,
.woocommerce .wc-proceed-to-checkout a.checkout-button,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button.button.alt {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background-color: #7a9640;
	border: 1px solid #7a9640;
	color: #fff;
	font-family: inherit;
	font-size: 15px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .06em;
	line-height: 1.2;
	border-radius: 4px;
	padding: 14px 30px;
	cursor: pointer;
	text-decoration: none !important;
	transition: background-color .2s ease, border-color .2s ease, color .2s ease;
}

.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce .button:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover,
.woocommerce #respond input#submit:hover,
.woocommerce #place_order:hover,
.woocommerce .wc-proceed-to-checkout a.checkout-button:hover {
	background-color: #5c7230;
	border-color: #5c7230;
	color: #fff;
}

.woocommerce .button:disabled,
.woocommerce .button.disabled,
.woocommerce .button[disabled] {
	opacity: .55;
	cursor: not-allowed;
}

/* Secondary / outline buttons (e.g. "Apply coupon", "Update cart").
   Astra strips the border on cart action buttons, so it's forced here. */
.woocommerce td.actions .coupon button[name="apply_coupon"],
.woocommerce td.actions button[name="update_cart"],
.woocommerce-cart td.actions .coupon .button,
.woocommerce-cart td.actions button[name="update_cart"] {
	background-color: transparent !important;
	color: #7a9640 !important;
	border: 1px solid #7a9640 !important;
	border-radius: 4px;
}

.woocommerce td.actions .coupon button[name="apply_coupon"]:hover,
.woocommerce td.actions button[name="update_cart"]:hover:not(:disabled),
.woocommerce-cart td.actions .coupon .button:hover {
	background-color: #7a9640 !important;
	color: #fff !important;
}

/* Coupon field + button on one tidy line */
.woocommerce td.actions .coupon {
	display: flex;
	gap: 8px;
	align-items: stretch;
	flex-wrap: wrap;
}

.woocommerce td.actions .coupon .input-text {
	flex: 1 1 160px;
	min-width: 0;
	margin: 0;
}

/* ── Notices (use the brand palette instead of stock blue) ── */

.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.woocommerce-noreviews {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
	border: 1px solid #e5e0d8;
	border-top: 3px solid #7a9640;
	background-color: #f6f4f0;
	color: #706359;
	border-radius: 4px;
	font-size: 15px;
}

.woocommerce-message::before,
.woocommerce-info::before {
	color: #7a9640;
}

.woocommerce-error {
	border-color: #f1c9c1;
	border-top-color: #e94e38;
}

.woocommerce-error::before {
	color: #e94e38;
}

/* Notice action buttons (e.g. "View cart") — these notices can render outside
   the .woocommerce wrapper, so force the brand colours here. */
.woocommerce-message a.button,
.woocommerce-info a.button,
.woocommerce-message a.wc-forward,
.woocommerce-info a.wc-forward {
	margin-left: auto;
	padding: 10px 22px !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	text-transform: uppercase;
	letter-spacing: .05em;
	border-radius: 4px !important;
	background-color: #7a9640 !important;
	border: 1px solid #7a9640 !important;
	color: #fff !important;
	transition: background-color .2s ease, border-color .2s ease;
}

.woocommerce-message a.button:hover,
.woocommerce-info a.button:hover,
.woocommerce-message a.wc-forward:hover,
.woocommerce-info a.wc-forward:hover {
	background-color: #5c7230 !important;
	border-color: #5c7230 !important;
}

/* ── Form fields (shared across cart / checkout / account) ── */

.woocommerce form .form-row label,
.woocommerce-account .woocommerce-form label,
.woocommerce table.shop_table th {
	color: #2b2118;
	font-weight: 600;
}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce input.input-text,
.woocommerce textarea,
.woocommerce select,
.woocommerce .select2-container--default .select2-selection--single {
	border: 1px solid #e5e0d8;
	border-radius: 4px;
	background-color: #fff;
	color: #2b2118;
	font-family: inherit;
	padding: 12px 14px;
	line-height: 1.3;
	box-shadow: none;
	transition: border-color .2s ease, box-shadow .2s ease;
}

.woocommerce .select2-container--default .select2-selection--single {
	height: auto;
	display: flex;
	align-items: center;
}

.woocommerce .select2-container--default .select2-selection--single .select2-selection__rendered {
	line-height: 1.3;
	padding: 0;
	color: #2b2118;
}

.woocommerce .select2-container--default .select2-selection--single .select2-selection__arrow {
	top: 50%;
	transform: translateY(-50%);
}

.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce input.input-text:focus,
.woocommerce textarea:focus,
.woocommerce select:focus {
	border-color: #7a9640;
	box-shadow: 0 0 0 2px rgba(122, 150, 64, .15);
	outline: none;
}

.woocommerce form .form-row .required {
	color: #7a9640;
	border: 0;
}

/* ──────────────────────────────────────────────────────────────────────
   SHOP / ARCHIVE
   ────────────────────────────────────────────────────────────────────── */

.app-gift-shop-intro {
	margin: 0 0 36px;
	padding: 28px 32px;
	background: #f6f4f0;
	border-left: 4px solid #7a9640;
	border-radius: 4px;

	@media (width <= 768px) {
		margin: 0 0 20px;
		padding: 24px 20px 20px 15px;
	}
}

.woocommerce .app-gift-shop-intro__title {
	margin: 0 0 14px;
	color: #2b2118;
	font-size: 28px;
	font-weight: 700;
	line-height: 1.15;
	text-transform: none;

	@media (width <= 768px) {
		margin: 0 0 10px;
		font-size: 24px;
	}
}

.app-gift-shop-intro p {
	margin: 0;
	color: #706359;
	font-size: 17px;
	line-height: 1.55;

	@media (width <= 768px) {
		font-size: 16px;
		line-height: 1.35;
	}
}

.app-gift-shop-intro .app-gift-shop-intro__instruction {
	margin-top: 14px;
	padding-top: 12px;
	border-top: 1px solid #e5e0d8;
	color: #5c7230;
	font-size: 16px;
	font-weight: 600;
}

.woocommerce .woocommerce-result-count {
	color: #706359;
	font-size: 15px;
	margin: 0 0 20px;
}

/* Breadcrumb — fluid size so it isn't tiny on mobile */
.woocommerce-breadcrumb,
.woocommerce .woocommerce-breadcrumb,
body.woocommerce-page .woocommerce-breadcrumb {
	font-size: clamp(13px, 3vw, 15px);
	color: #706359;
}

.woocommerce .woocommerce-ordering select.orderby {
	min-width: 220px;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	border: 1px solid #7a9640;
	border-radius: 4px;
	background-color: #fff;
	color: #7a9640;
	font-family: inherit;
	font-weight: 600;
	font-size: 15px;
	padding: 12px 42px 12px 16px;
	cursor: pointer;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='none' stroke='%237a9640' stroke-width='2' d='M1 1l5 5 5-5'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 14px center;
	background-size: 12px 8px;
	transition: border-color .2s ease, box-shadow .2s ease, color .2s ease;
}

.woocommerce .woocommerce-ordering select.orderby:hover {
	border-color: #5c7230;
	color: #5c7230;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='none' stroke='%235c7230' stroke-width='2' d='M1 1l5 5 5-5'/%3E%3C/svg%3E");
}

.woocommerce .woocommerce-ordering select.orderby:focus {
	border-color: #5c7230;
	box-shadow: 0 0 0 2px rgba(122, 150, 64, .15);
	outline: none;
}

/* Pagination */
.woocommerce nav.woocommerce-pagination {
	margin: 36px 0 0;
	text-align: center;
}

.woocommerce nav.woocommerce-pagination ul,
.woocommerce nav.woocommerce-pagination ul.page-numbers {
	border: 0;
	display: inline-flex;
	flex-wrap: wrap;
	gap: 8px;
	justify-content: center;
	margin: 0;
	padding: 0;
}

.woocommerce nav.woocommerce-pagination ul li {
	border: 0;
	margin: 0;
	overflow: visible;
}

.woocommerce nav.woocommerce-pagination a.page-numbers,
.woocommerce nav.woocommerce-pagination span.page-numbers {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 44px;
	height: 44px;
	padding: 0 12px;
	border: 1px solid #e5e0d8;
	border-radius: 4px;
	background: #fff;
	color: #2b2118;
	font-weight: 700;
	line-height: 1;
	transition: background-color .2s ease, border-color .2s ease, color .2s ease;
}

.woocommerce nav.woocommerce-pagination a.page-numbers:hover,
.woocommerce nav.woocommerce-pagination a.page-numbers:focus {
	border-color: #7a9640;
	color: #7a9640;
	background: rgba(122, 150, 64, .08);
}

.woocommerce nav.woocommerce-pagination span.page-numbers.current {
	background: #7a9640;
	border-color: #7a9640;
	color: #fff;
}

/* Product grid — mirror the children listing grid */
.woocommerce ul.products,
.woocommerce-page ul.products {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(225px, 1fr));
	gap: 15px;
	margin: 0 0 40px;
	padding: 0;
	list-style: none;
}

.woocommerce ul.products::before,
.woocommerce ul.products::after {
	content: none !important;
	display: none !important;
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
	width: auto !important;
	margin: 0 !important;
	padding: 0 0 14px !important;
	float: none !important;
	clear: none !important;
	display: flex;
	flex-direction: column;
	background: #f6f4f0;
	border-radius: 6px;
	box-shadow: 0 2px 12px rgba(0, 0, 0, .08);
	overflow: hidden;
	text-align: left;
	transition: box-shadow .2s ease;
}

.woocommerce ul.products li.product:hover {
	box-shadow: 0 6px 24px rgba(0, 0, 0, .13);
}

.woocommerce ul.products li.product .astra-shop-thumbnail-wrap,
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link {
	display: block;
	overflow: hidden;
	margin: 0;
}

.woocommerce ul.products li.product .astra-shop-thumbnail-wrap {
	position: relative;
	padding: 10px 10px 0;
}

.woocommerce ul.products li.product img {
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	object-position: top center;
	display: block;
	margin: 0;
	border-radius: 4px;
	transition: transform .4s ease-in-out;
	will-change: transform;
	backface-visibility: hidden;
}

.woocommerce ul.products li.product:hover img {
	transform: scale(1.08);
}

.woocommerce ul.products li.product .astra-shop-summary-wrap {
	padding: 12px 12px 0;
	display: flex;
	flex-direction: column;
	flex: 1;
}

.woocommerce ul.products li.product .ast-woo-product-category {
	font-size: 13px;
	font-weight: 700;
	color: #7a9640;
	text-transform: uppercase;
	letter-spacing: .03em;
	line-height: 1.3;
	margin: 0 0 4px;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h2 {
	font-size: 18px;
	font-weight: 700;
	color: #2b2118;
	text-transform: none;
	line-height: 1.3;
	padding: 0;
	margin: 0 0 8px;
}

.woocommerce ul.products li.product .price {
	color: #2b2118;
	font-size: 17px;
	font-weight: 700;
	margin: 0 0 12px;
}

.woocommerce ul.products li.product .price del {
	color: #a89e92;
	font-weight: 400;
	margin-right: 6px;
}

.woocommerce ul.products li.product .price ins {
	text-decoration: none;
}

/* "Add to cart" button under each card */
.woocommerce ul.products li.product .astra-shop-summary-wrap a.button,
.woocommerce ul.products li.product .astra-shop-summary-wrap a.add_to_cart_button,
.woocommerce ul.products li.product .astra-shop-summary-wrap a.added_to_cart {
	margin-top: auto;
	width: 100%;
	padding: 12px 16px;
	font-size: 14px;
}

.woocommerce ul.products li.product a.added_to_cart {
	margin-top: 8px;
	background-color: transparent;
	color: #7a9640;
	border-color: #7a9640;
}

.woocommerce ul.products li.product a.added_to_cart:hover {
	background-color: #7a9640;
	color: #fff;
}

/* On-image quick-add (bag icon) overlay button — compact circular control,
   anchored top-right of the thumbnail and revealed on card hover. */
.woocommerce ul.products li.product .ast-on-card-button,
.woocommerce ul.products li.product .ast-select-options-trigger {
	position: absolute;
	top: 20px;
	right: 20px;
	width: 44px !important;
	height: 44px;
	min-width: 0;
	padding: 0 !important;
	margin: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #7a9640;
	color: #fff;
	border: 1px solid #7a9640;
	border-radius: 50% !important;
	box-shadow: 0 2px 8px rgba(0, 0, 0, .18);
	opacity: 0;
	transform: translateY(-6px);
	transition: opacity .25s ease, transform .25s ease, background-color .2s ease;
	z-index: 2;
}

.woocommerce ul.products li.product:hover .ast-on-card-button,
.woocommerce ul.products li.product:hover .ast-select-options-trigger {
	opacity: 1;
	transform: translateY(0);
}

.woocommerce ul.products li.product .ast-on-card-button:hover,
.woocommerce ul.products li.product .ast-select-options-trigger:hover {
	background-color: #5c7230;
	border-color: #5c7230;
}

.woocommerce ul.products li.product .ast-on-card-button .ast-icon,
.woocommerce ul.products li.product .ast-on-card-button svg {
	width: 18px;
	height: 18px;
	fill: currentColor;
}

/* Tooltip bubble on the quick-add icon */
.woocommerce ul.products li.product .ast-card-action-tooltip {
	background-color: #2b2118;
	color: #fff;
	border-radius: 4px;
	font-size: 12px;
}

/* Sale flash */
.woocommerce span.onsale {
	background-color: #e94e38;
	color: #fff;
	border-radius: 50%;
	font-weight: 700;
	min-height: 3.2em;
	min-width: 3.2em;
	line-height: 3.2em;
}

/* ── Single product ── */

.woocommerce div.product .woocommerce-product-gallery__image img {
	max-height: calc(100dvh / 1.75);
	width: 100%;
	object-fit: cover;
	object-position: center top;
}

.woocommerce div.product .product_title {
	font-size: 32px;
	font-weight: 900;
	color: #2b2118;
	text-transform: none;
	line-height: 1.2;
	margin: 0 0 12px;
}

.woocommerce div.product p.price,
.woocommerce div.product span.price {
	color: #7a9640;
	font-size: 24px;
	font-weight: 700;
}

/* Full description relocated below the title (see functions.php) */
.woocommerce div.product .summary .woocommerce-product-details__description {
	margin: 0 0 22px;
	color: #706359;
}

.woocommerce div.product .summary .woocommerce-product-details__description p {
	font-size: 16px;
	line-height: 1.6;
	margin: 0 0 12px;
}

.woocommerce div.product .summary .woocommerce-product-details__description p:last-child {
	margin-bottom: 0;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
	border-bottom-color: #7a9640;
}

.woocommerce .quantity .qty {
	border: 1px solid #e5e0d8;
	border-radius: 4px;
	padding: 10px;
	background: #fff;
	color: #2b2118;
}

/* Single product purchase row: child selector on its own row, then an equal
   height quantity field and add-to-cart button sitting side by side. */
.woocommerce div.product form.cart {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	gap: 10px;
	margin-top: 4px;
}

.woocommerce div.product form.cart .app-gift-child {
	flex: 0 0 100%;
	margin: 0 0 6px;
}

.woocommerce div.product form.cart .quantity {
	margin: 0;
}

.woocommerce div.product form.cart .quantity .qty {
	height: 52px;
	width: 84px;
	text-align: center;
	box-sizing: border-box;
}

.woocommerce div.product form.cart .single_add_to_cart_button {
	height: 52px;
	margin: 0;
	box-sizing: border-box;
}

/* ──────────────────────────────────────────────────────────────────────
   CART
   ────────────────────────────────────────────────────────────────────── */

.woocommerce table.shop_table {
	border: 1px solid #e5e0d8;
	border-radius: 8px;
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
	background: #fff;
	margin-bottom: 24px;
}

.woocommerce table.shop_table thead th {
	background: #f6f4f0;
	color: #2b2118;
	text-transform: uppercase;
	letter-spacing: .03em;
	font-size: 13px;
	font-weight: 700;
	border: 0;
	padding: 16px 14px;
}

.woocommerce table.shop_table td,
.woocommerce table.shop_table tbody th {
	border-top: 1px solid #e5e0d8;
	padding: 16px 14px;
	color: #706359;
	vertical-align: middle;
}

.woocommerce table.shop_table td.product-name a {
	color: #2b2118;
	font-weight: 600;
}

.woocommerce table.shop_table td.product-name a:hover {
	color: #7a9640;
}

.woocommerce table.shop_table img {
	width: 64px;
	height: 64px;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	object-position: center;
	border-radius: 4px;
	display: block;
}

.woocommerce a.remove {
	color: #e94e38 !important;
	font-weight: 700;
	border-radius: 50%;
}

.woocommerce a.remove:hover {
	background: #e94e38 !important;
	color: #fff !important;
}

.woocommerce .cart-collaterals .cart_totals,
.woocommerce-cart .cart-collaterals .cart_totals {
	float: none;
	width: 100%;
	max-width: 420px;
	margin-left: auto;
	background: #f6f4f0;
	border-radius: 8px;
	box-shadow: 0 2px 12px rgba(0, 0, 0, .08);
	padding: 28px;
	box-sizing: border-box;
}

.woocommerce .cart_totals h2 {
	margin: 0 0 18px;
}

.woocommerce .cart_totals table.shop_table {
	border: 0;
	background: transparent;
	margin: 0;
}

.woocommerce .cart_totals table.shop_table th,
.woocommerce .cart_totals table.shop_table td {
	background: transparent;
	border-top: 1px solid #e5e0d8;
	padding: 14px 0;
}

.woocommerce .cart_totals tr.order-total th,
.woocommerce .cart_totals tr.order-total td {
	font-size: 18px;
	color: #2b2118;
	font-weight: 700;
}

.woocommerce .cart_totals .wc-proceed-to-checkout {
	padding: 20px 0 0;
}

.woocommerce .wc-proceed-to-checkout a.checkout-button {
	width: 100%;
	font-size: 16px;
	padding: 16px;
}

.woocommerce .cart .actions .coupon .input-text {
	min-width: 180px;
}

/* ──────────────────────────────────────────────────────────────────────
   CHECKOUT
   ────────────────────────────────────────────────────────────────────── */

.woocommerce-checkout .col2-set .col-1,
.woocommerce-checkout .col2-set .col-2 {
	float: none;
	width: 100%;
}


/* Single-column checkout: billing details on top, then the order review +
   payment full width below. Gives Stripe's card fields room to breathe. */
.woocommerce-checkout form.checkout #customer_details,
.woocommerce-checkout form.checkout #order_review,
.woocommerce-checkout form.checkout #order_review_heading {
	float: none !important;
	clear: both;
	width: 100% !important;
	max-width: 100%;
}

.woocommerce-checkout #customer_details {
	margin-bottom: 32px;
}

.woocommerce-checkout #order_review_heading {
	margin: 0 0 16px;
}

.woocommerce-checkout #order_review {
	background: #f6f4f0;
	border: 0;
	border-radius: 8px;
	box-shadow: 0 2px 12px rgba(0, 0, 0, .08);
	padding: 28px;
	box-sizing: border-box;
}

/* Item meta ("Recipient: …") inline rather than broken onto two lines */
.woocommerce-checkout #order_review .cart_item dl.variation {
	margin: 6px 0 0;
	font-size: 13px;
	color: #706359;
}

.woocommerce-checkout #order_review .cart_item dl.variation dt,
.woocommerce-checkout #order_review .cart_item dl.variation dd,
.woocommerce-checkout #order_review .cart_item dl.variation dd p {
	display: inline;
	margin: 0;
	float: none;
	font-weight: 400;
}

.woocommerce-checkout #order_review .cart_item dl.variation dt {
	font-weight: 600;
	margin-right: 4px;
}

.woocommerce-checkout #order_review table.shop_table {
	border: 0;
	background: transparent;
	margin: 0 0 12px;
}

.woocommerce-checkout #order_review table.shop_table th,
.woocommerce-checkout #order_review table.shop_table td {
	background: transparent;
	border-top: 1px solid #e5e0d8;
	color: #706359;
}

.woocommerce-checkout #order_review tr.order-total th,
.woocommerce-checkout #order_review tr.order-total td {
	color: #2b2118;
	font-size: 18px;
	font-weight: 700;
}

.woocommerce-checkout #payment {
	background: transparent;
	border-radius: 6px;
}

.woocommerce-checkout #payment ul.payment_methods {
	border-bottom: 1px solid #e5e0d8;
	padding: 0 0 16px;
}

.woocommerce-checkout #payment div.payment_box {
	background: #fff;
	border-radius: 4px;
	color: #706359;
}

.woocommerce-checkout #payment div.payment_box::before {
	border-bottom-color: #fff;
}

.woocommerce-checkout #payment #place_order {
	width: 100%;
	font-size: 16px;
	padding: 16px;
}

.woocommerce form.checkout_coupon {
	border: 1px solid #e5e0d8;
	border-radius: 8px;
}

.woocommerce-form-coupon-toggle .woocommerce-info {
	border-top-color: #7a9640;
}

/* ──────────────────────────────────────────────────────────────────────
   MY ACCOUNT
   ────────────────────────────────────────────────────────────────────── */

.woocommerce-account .woocommerce:has(.woocommerce-MyAccount-navigation) {
	display: grid;
	grid-template-columns: 240px 1fr;
	gap: 32px;
	align-items: start;
}

/* The (often empty) notices wrapper would otherwise occupy the first grid
   cell and shunt the navigation/content out of alignment. */
.woocommerce-account .woocommerce > .woocommerce-notices-wrapper {
	grid-column: 1 / -1;
}

.woocommerce-account .woocommerce-MyAccount-navigation {
	grid-column: 1;
	float: none;
	width: auto;
	background: #f6f4f0;
	border-radius: 8px;
	box-shadow: 0 2px 12px rgba(0, 0, 0, .08);
	padding: 12px;
	box-sizing: border-box;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.woocommerce-account .woocommerce-MyAccount-navigation-link {
	border: 0;
	margin: 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation-link a {
	display: block;
	padding: 12px 16px;
	border-radius: 6px;
	color: #2b2118 !important;
	font-weight: 600;
	font-size: 15px;
	transition: background-color .2s ease, color .2s ease;
}

.woocommerce-account .woocommerce-MyAccount-navigation-link a:hover {
	background: rgba(122, 150, 64, .12);
	color: #5c7230 !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation-link.is-active a {
	background: #7a9640;
	color: #fff !important;
}

.woocommerce-account .woocommerce-MyAccount-content {
	grid-column: 2;
	float: none;
	width: auto;
	color: #706359;
}

.woocommerce-account .woocommerce-MyAccount-content a {
	color: #7a9640;
	font-weight: 600;
}

.woocommerce-account .woocommerce-MyAccount-content a:hover {
	color: #5c7230;
}

/* Login / register forms */
.woocommerce-account .woocommerce-form-login,
.woocommerce-account .woocommerce-form-register {
	background: #f6f4f0;
	border: 0;
	border-radius: 8px;
	box-shadow: 0 2px 12px rgba(0, 0, 0, .08);
	padding: 28px;
}

.woocommerce form.login,
.woocommerce form.register {
	border: 0;
	padding: 0;
	margin: 0;
}

.woocommerce-account .col2-set .col-1,
.woocommerce-account .col2-set .col-2 {
	float: none;
	width: 100%;
}

.woocommerce-EditAccountForm fieldset {
	border: 1px solid #e5e0d8;
	border-radius: 8px;
	padding: 20px 24px;
	margin-top: 24px;
}

.woocommerce-EditAccountForm legend {
	color: #2b2118;
	font-weight: 700;
	padding: 0 8px;
}

/* ── Responsive ── */

@media (max-width: 900px) {
	.woocommerce-account .woocommerce {
		grid-template-columns: 1fr;
		gap: 20px;
	}
}

@media (max-width: 768px) {
	body.woocommerce-page #primary,
	body.woocommerce-account #primary,
	body.woocommerce-cart #primary,
	body.woocommerce-checkout #primary {
		padding: 32px 15px 40px;
	}

	body.woocommerce-page .entry-title,
	body.woocommerce-page .ast-archive-title,
	body.woocommerce-page .woocommerce-products-header__title {
		font-size: 28px;
	}

	.woocommerce ul.products,
	.woocommerce-page ul.products {
		grid-template-columns: repeat(2, 1fr);
		gap: 16px;
	}

	.woocommerce .cart-collaterals .cart_totals,
	.woocommerce-cart .cart-collaterals .cart_totals {
		max-width: 100%;
	}
}

/* Shop toolbar: drop the sorting dropdown onto its own full-width row so it
   isn't crammed against the result count on small screens. */
@media (max-width: 550px) {
	.woocommerce .woocommerce-result-count,
	.woocommerce .woocommerce-ordering {
		float: none;
		width: 100%;
		margin-left: 0;
		margin-right: 0;
	}

	.woocommerce .woocommerce-result-count {
		margin-bottom: 12px;
	}

	.woocommerce .woocommerce-ordering {
		margin: 0 0 20px;
	}

	.woocommerce .woocommerce-ordering select.orderby {
		width: 100%;
	}
}

@media (max-width: 480px) {
	.woocommerce ul.products,
	.woocommerce-page ul.products {
		grid-template-columns: 1fr;
	}
}
/* ==========================================================================
   Gift a child — selector, banner & Select2 dropdown
   ========================================================================== */

/* Active-child banner on shop / product pages */
.app-gift-banner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	background: #f6f4f0;
	border-left: 4px solid #7a9640;
	border-radius: 4px;
	padding: 14px 18px;
	margin: 0 0 28px;
	color: #2b2118;
	font-size: 15px;
}

.app-gift-banner__text strong {
	color: #7a9640;
}

.app-gift-banner__clear {
	color: #7a9640 !important;
	font-weight: 700;
	font-size: 13px;
	text-transform: uppercase;
	letter-spacing: .04em;
	white-space: nowrap;
}

.app-gift-banner__clear:hover {
	color: #5c7230 !important;
}

/* Child selector inside the add-to-cart form */
.app-gift-child {
	margin: 0 0 22px;
}

.app-gift-child__label {
	display: block;
	font-size: 14px;
	font-weight: 700;
	color: #2b2118;
	text-transform: uppercase;
	letter-spacing: .03em;
	margin: 0 0 8px;
}

.app-gift-child__hint {
	font-size: 13px;
	color: #706359;
	margin: 8px 0 0;
}

.app-gift-child__error {
	margin: 8px 0 0;
	color: #b42318;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.45;
}

.app-gift-child .select2-container.app-gift-child__select--error .select2-selection--single {
	border-color: #b42318;
	box-shadow: 0 0 0 2px rgba(180, 35, 24, .12);
}

/* Native fallback select (before Select2 enhances it) */
.app-gift-child__select {
	width: 100%;
	border: 1px solid #e5e0d8;
	border-radius: 4px;
	background: #fff;
	color: #2b2118;
	font-family: inherit;
	font-size: 15px;
	padding: 12px 14px;
}

/* Option row: thumbnail + label */
.app-gift-opt {
	display: flex;
	align-items: center;
	gap: 10px;
	line-height: 1.2;
}

.app-gift-opt__img {
	width: 28px;
	height: 28px;
	border-radius: 50%;
	object-fit: cover;
	object-position: top center;
	flex-shrink: 0;
	margin-right: 5px;
}

.app-gift-opt .app-gift-opt__img {
	margin-right: 0;
}

.app-gift-opt__img--placeholder {
	background: #e8e3db;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	vertical-align: middle;
	line-height: 0;
}

.app-gift-opt__img--placeholder svg {
	width: 55%;
	height: 55%;
	fill: #c0b5ab;
}

/* Select2 theming to match the brand */
.app-gift-child .select2-container .select2-selection--single,
.select2-container--default .select2-selection--single {
	min-height: 48px;
	border: 1px solid #e5e0d8;
	border-radius: 4px;
	display: flex;
	align-items: center;
}

.app-gift-child .select2-container--default .select2-selection--single .select2-selection__rendered {
	padding-left: 0;
	color: #2b2118;
}

.app-gift-child .select2-container--default .select2-selection--single .select2-selection__arrow {
	height: 46px;
}

.app-gift-child .select2-container--default.select2-container--open .select2-selection--single,
.app-gift-child .select2-container--default .select2-selection--single:focus {
	border-color: #7a9640;
}

.select2-dropdown {
	border-color: #7a9640;
	border-radius: 4px;
}

.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-results__option--highlighted {
	background-color: #7a9640;
}

.select2-container--default .select2-search--dropdown .select2-search__field:focus {
	border-color: #7a9640;
	outline: none;
}

@media (max-width: 600px) {
	.app-gift-banner {
		margin-bottom: 20px;
	}
}

/* ==========================================================================
   Cart icon in the primary navigation
   ========================================================================== */

.app-cart-menu-item {
	display: flex;
	align-items: center;
	list-style: none;
}

.app-cart-link {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: #3d3421 !important;
	padding: 6px;
	line-height: 0;
	border-bottom: none !important;
}

.app-cart-link:hover {
	color: #7a9640 !important;
}

.app-cart-icon {
	display: block;
}

.app-cart-count {
	position: absolute;
	top: -3px;
	right: -5px;
	min-width: 18px;
	height: 18px;
	padding: 0 5px;
	box-sizing: border-box;
	border-radius: 9px;
	background: #e94e38;
	color: #fff !important;
	font-size: 11px;
	font-weight: 700;
	line-height: 18px;
	text-align: center;
}

.app-cart-count--empty {
	display: none;
}

/* In Astra's off-canvas mobile menu, lay the cart out like a normal row item */
#ast-hf-mobile-menu .app-cart-menu-item,
.ast-mobile-popup-drawer .app-cart-menu-item {
	display: block;
}

#ast-hf-mobile-menu .app-cart-link,
.ast-mobile-popup-drawer .app-cart-link {
	justify-content: flex-start;
	gap: 10px;
	padding: 10px 0;
	line-height: 1;
}

#ast-hf-mobile-menu .app-cart-count,
.ast-mobile-popup-drawer .app-cart-count {
	position: static;
	margin-left: 4px;
}
