/*
Theme Name: Amity Child
Theme URI: https://amity.keydesign.xyz/
Description: Charity & Donation Elementor WordPress Theme
Author: Key-Design
Author URI: http://themeforest.net/user/Key-Design
Template: amity
Version: 1.0
License: Envato Standard License
License URI: https://themeforest.net/licenses/standard
Tags: one-column, two-columns, three-columns, four-columns, left-sidebar, right-sidebar, custom-menu, featured-images, flexible-header, post-formats, sticky-post, translation-ready
Text Domain: amity-child
*/


:root {
  --white: #FFFFFF;
  --dark: #000000;
  --orange: #FF6D00;
  --yellow: #FF9E00;
  --light-blue: #00B4D8;
  --blue: #0077B6;
  --dark-blue: #023E8A;
  --red: #cc0000;
  --gray-text: #696F8C;
  --faint-gray: #F6F6F9;
  --global-border-radius: 0 !important;
}

.white {
	color: var(--white) !important;
}

.orange {
	color: var(--orange) !important;
}

.yellow {
	color: var(--yellow) !important;
}

.light-blue {
	color: var(--light-blue) !important;
}

.blue {
	color: var(--blue) !important;
}

.dark-blue {
	color: var(--dark-blue) !important;
}

.red {
	color: var(--red) !important;
}

/*======================================
	Style Adjustments
	=======================================*/

/* force an item to block */
.display-block {display: block;}

.font-small {
	font-size: .8rem;
}

.ekit-heading--title b {
	font-weight: 700 !important;
}

/*- handwriting font -*/

.handwriting,
.handwriting * {
	font-family: "Square Peg", Sans-serif !important;
}

strong {
	font-weight: 700 !important;
}

.btn-icon-margin-right .btn-wraper i {
	margin-right: 8px;
}

/*- Force colored links in content -*/

.content-links-color a {
	color: var(--orange) !important;
	transition: all ease 0.4s;
}

.content-links-color a:hover {
	color: var(--blue) !important;
}

/* Text label below video pop-up button */

html .btn-video-label-bottom .ekit-video-popup-btn i + span {
	left: 50%;
	transform: translate(-50%,70px);
	top: initial;
	bottom: 0;
	color: #FFF;
	margin-left: 0;
	transition: all ease 0.4s;
}

html .btn-video-label-bottom .ekit-video-popup-btn:hover i + span {
	color: #FFF;
}

/*-- White text in video popup button */

html .btn-video-text-light .ekit-video-popup-btn i + span {
	color: #FFF;
}

/*-- Underlines for text links in widget --*/

html .widget-link-underline a.elementskit-btn {
	text-decoration: underline;
}

/*-- Force white/35px icon in icon box --*/

.icon-white-35 .elementskit-info-box-icon i.elementkit-infobox-icon {
	color: var(--white) !important;
	font-size: 35px !important;
}

/*-- Icon box with standard link for button --*/

html .icon-box-button-link .btn-wraper a i {
	margin-right: 6px;
}

/*-- force links in text to be underlined and colored --*/

.standard-links a {
	color: var(--orange) !important;
	text-decoration: underline !important;
}

.standard-links a:hover {
	color: var(--light-blue) !important;
}

/*-- add margins to OL and UL without bottom spacing ---*/

.list-item-margin-bottom-sm ul li:not(:last-of-type),
.list-item-margin-bottom-sm ol li:not(:last-of-type) {
	margin-bottom: 15px;
}

/*-- Minimum widths --*/

.min-250 {
	min-width: 250px;
}

/*-- Header --*/

#site-header.scrolled .header-promo-bar {
	display: none;
}

/*-- Testimoinial slider author image fix with WebPExpress --*/

.fb-testimonial-slider .ekit-testimonial--avatar img {
	max-width: 70px !important;
	border-radius: 50% !important;
}

/*-- Accordion link menu --*/

.accordion-link-menu .elementskit-accordion .ekit-accordion--content ul {
	list-style: none;
	margin: 0 !important;
	padding: 0;
}

.accordion-link-menu .elementskit-accordion .ekit-accordion--content ul li {
	padding: 10px 0 !important;
	border-bottom: 1px solid #EEE;
}

.accordion-link-menu .elementskit-accordion .ekit-accordion--content ul li:last-of-type {
	border-bottom: none;
}

.accordion-link-menu .elementskit-accordion .ekit-accordion--content ul li::marker {
	content: "" !important;
}

/*-- Truncate Excerpt --*/

.truncate-excerpt .elementskit-post-body p {
	margin-bottom: 20px;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/*-- Fix theme buttons on blog posts --*/

.standard-ekit-button a.elementskit-btn {
	color: var(--white) !important;
}

/*-- remove "sticky" from sticky post lable --*/

.sticky-post {
	font-size: 0 !important;
	transform: translateY(2px);
	color: var(--blue) !important;
}

.sticky-post .fa-thumbtack {
	font-size: 16px !important;
}

/*-- Team member hover --*/

.team-cards .profile-body .profile-designation {
	color: var( --e-global-color-primary )!important;
}

.team-cards .profile-body .profile-content {
	color: var( --e-global-color-text ) !important;
}

/*-- hide badge except for contact --*/

body:not(.page-id-2827) .grecaptcha-badge {display:none !important;}

/*========================================
	Header
	=========================================*/

header .elementor-widget-ekit-nav-menu .elementskit-dropdown-has li.nav-item a.dropdown-item {
	padding-top: 5px !important;
	padding-bottom: 5px !important;
}

/*- force phone tooltip to light gray --*/

.ekit-tippy .tippy-box .tippy-content {
	background: #F6F6F9 !important;
}

/*=====================================
	Elementor Hacks
	==================================*/

.elementor-element .elementskit-section-title-wraper .ekit-heading__description p {
    margin-bottom: 25px !important;
}

.elementor-element .elementskit-section-title-wraper .ekit-heading__description p:last-of-type {
    margin-bottom: 0 !important;
}

/*======================================
	Default Forms
	=======================================*/

.hidden-fields-container {
	display: none !important;
}

html .wpcf7-form-control-wrap select {
	border: 1px solid var(--color-border) !important;
}

.wpcf7-form-control-wrap label.error {
	display: block;
	transform: translateY(-10px);
}

label.error {
	color: var(--red) !important;
}

/* Show form processing spinner */
form[data-status="submitting"] .wpcf7-submit::after,
form[data-status="submitting"] .form-button[type="submit"]::after,
form[data-status="submitting"] button[type="submit"]::after {
    content: '';
    display: inline-block;
    margin-left: 10px;
    width: 1em;
    height: 1em;
    border: 2px solid currentColor;
    border-top-color: transparent;
    border-radius: 50%;
    animation: spin 0.8s linear infinite;
    opacity: 0.5;
  	pointer-events: none !important;
  	cursor: not-allowed !important;
}

@keyframes spin {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}

a.remove-file-link {
	display: block;
	width: fit-content;
	font-size: 14px;
	margin-top: -15px;
	color: var(--red);
	margin-left: 15px;
	margin-bottom: 10px;
}

a.remove-file-link:before {
	font-family: "Font Awesome 5 Free" !important;
	content: "\f056";
	display: inline-block;
	margin-right: 5px;
}

/*======================================
					Custom Forms
=======================================*/

.default-form .col-12,
.default-form .col-6 {
	margin-bottom: 20px;
}

/*============================
		Partner Referral Pages
=============================*/

.referral-form .row {
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
	flex-wrap: wrap;
}

.referral-form .row .col-12 {
	flex-basis: 100%;
}

.referral-form .row .col-6 {
	flex-basis: 50%;
}

.referral-form .row .col-4 {
	flex-basis: 33%;
}

.referral-form input#referral-lastname {
	margin-top: 32px;
}

.passster-form {
	background: transparent !important;
	margin: 0 auto;
}

.passster-form h4 {
	color: #7A531F !important;
}

.passster-form p {
	margin: 20px 0 20px 0 !important;
}

.passster-form input[type="password"] {
	height: 45px !important;
	margin-bottom: 20px !important;
}

.passster-form button {
	display: inline-block !important;
	color: #E53424 !important;
	border: 1px solid #E53424 !important;
	background: transparent !important;
	max-width: 200px !important;
	transition: all ease 0.4s;
}

.passster-form button:hover {
	color: #FFF !important;
	background: #E53424 !important;
}

.passster-form .error {
	max-width: 450px !important;
}

/*-- Referral Forms --*/

.referral-form textarea {
	border: 1px solid #CCC !important;
}

.referral-form input,
.referral-form textarea,
.referral-form select {
	width: 95% !important;
	margin-bottom: 10px !important;
}

.referral-form select {
	height: 50px !important;
	padding: 10px !important;
}

.referral-form button[type="submit"] {
	margin-top: 30px !important;
}

.referral-form .row {
	margin-bottom: 30px !important;
}

.referral-form .row.new-section {
	margin-top: 60px !important;
	padding-bottom: 40px !important;
}

.referral-form h2 {
	font-size: 36px !important;
	font-weight: 700 !important;
	color: #0077B6;
}

.referral-form label {
	display: block !important;
}

.referral-form .label {
	display: block !important;
	font-weight: 700 !important;
	margin-bottom: 5px !important;
}

.referral-form .row-points-cost,
.referral-form .container-calculation {
	max-width: 500px !important;
	padding: 20px !important;
	margin-top: 15px !important;
	background: var(--e-global-color-light) !important;
	border: 1px solid rgba(0,0,0,.05) !important;
}

.referral-form .row-points-cost .points {
	display: block;
	color: var(--e-global-color-text) !important;
}

.referral-form .row-points-cost .cost {
	display: block;
	font-size: 26px !important;
	font-weight: 700 !important;
	color: #FF6D00;
}

.referral-form .points-legend {
	padding-bottom: 15px !important;
	padding-top: 15px !important;
	border-bottom: 1px solid rgba(0,0,0,.06) !important;
}

.referral-form .points-legend:first-of-type {
	padding-top: 0 !important;
}

.referral-form .points-legend:last-of-type {
	padding-bottom: 0 !important;
	border: none !important;
}

.delivery-distance-text {
	font-size: 14px !important;
}

.referral-form .hideLabel p {
	font-size: 14px;
	color: #E53424 !important;
}

.referral-form .hideLabel i {
	margin-right: 10px;
}

.referral-form .container-calculation {
	margin-left: 0 !important;
	margin-bottom: 20px !important;
}

.referral-form .value-container {
	padding-bottom: 15px !important;
	padding-top: 15px !important;
	border-bottom: 1px solid rgba(0,0,0,.06);
}

.referral-form .value-container:first-of-type {
	padding-top: 0 !important;
}

.referral-form .value-container:last-of-type {
	padding-bottom: 0 !important;
	border: none !important;
}

.referral-form .total-label {
	color: var(--e-global-color-text);
}

.referral-form .value-container .form-totals {
	font-weight: 700 !important;
	color: #FF6D00;
	padding-left: 5px !important;
}

.referral-form .value-container.container-final-price span {
	font-size: 26px !important;
}

.referral-form .value-container.container-final-price .total-label {
	font-weight: 700 !important;
}

.referral-form .value-container.container-final-price .form-totals {
	font-weight: 700 !important;
	color: #FF6D00 !important;
	padding-left: 10px !important;
}

.referral-form span.required-field {
	display: inline-block;
	margin-left: 5px;
	font-size: 0px; 
}

.referral-form span.required-field:after {
	font-size: 14px;
	font-weight: 500 !important;
	color: #900;
	content: "*";
}


/*-- Hide Grant Name on CHN form --*/

body:not(.page-id-330) .row-grant-name {
	display: none !important;
}

/*=== Blog Fixes (May 2025) ======*/

body.blog div.content-area {
	padding-bottom: 50px;
}

body.blog main.site-main {
	display: flex;
	align-items: stretch;
	justify-content: center;
	flex-wrap: wrap;
	max-width: 1240px;
	margin: 30px auto;
	min-width: 280px;
	gap: 30px;
}

body.blog main.site-main article.keydesign-card {
	flex-basis: calc(33.333% - 30px);
	display: flex;
	flex-direction: column;
}

body.blog main.site-main article.keydesign-card h2.post-title {
	font-size: clamp(28px,1.5vw,24px);
}

/*-- Single Post --*/
	
body.wp-singular article.article-content {
	max-width: 980px;
	margin: 40px auto;
	padding-right: 20px;
	padding-left: 20px;
}


@media only screen and (max-width:1023px) {
	
	/* hide mobile phone bar on scroll down */
	.site-header.sticky-header.show-on-scroll {
		transition: opacity ease 0.4s;
	}
	
	.site-header.sticky-header.show-on-scroll.hide-menu .navigation-bar-phone {
		margin-top: -30px;
	}
	
	/*-- Adjust mobile menu styles --*/
	
	header .ekit-nav-dropdown-hover {
		background: var(--faint-gray) !important;
	}
	
	header .elementskit-navbar-nav-default .elementskit-navbar-nav > li:not(:last-of-type) {
		border-bottom: 1px solid #FFF;
	}
	
	header .elementskit-navbar-nav-default .elementskit-navbar-nav > li:not(:first-of-type) {
		border-top: 1px solid #EAEAEA;
	}
	
	header .elementskit-navbar-nav-default .elementskit-navbar-nav > li > a {
		color: var(--gray-text) !important;
		font-weight: 500 !important;
	}
	
	header .elementskit-navbar-nav-default .elementskit-navbar-nav > li > a .elementskit-submenu-indicator {
		color: var(--orange) !important;
	}
	
	header .ekit_menu_responsive_tablet ul.elementskit-navbar-nav li > ul.elementskit-submenu-panel {
		padding: 8px 18px !important;
	}
	
	header .ekit_menu_responsive_tablet ul.elementskit-navbar-nav li > ul > li {
		padding-top: 8px;
		padding-bottom: 8px;
	}

	header .ekit_menu_responsive_tablet ul.elementskit-navbar-nav li > ul > li > a {
		position: relative;
		font-size: 16px !important;
		color: var(--gray-text) !important;
	}
	
	header .ekit_menu_responsive_tablet ul.elementskit-navbar-nav li.current-page-parent > a,
	header .ekit_menu_responsive_tablet ul.elementskit-navbar-nav li > ul > li > a:hover {
		color: var(--orange) !important;
	}
	
	header .ekit_menu_responsive_tablet ul.elementskit-navbar-nav li > ul > li > a:before {
		display: inline-block;
		font-family: "Font Awesome 5 Free" !important;
		font-weight: 900 !important;
		font-size: 12px !important;
		content: "\f054";
		margin-right: 8px;
		color: var(--orange) !important;
	}
	
	/*=== Blog Fixes (May 2025) ======*/

	body.blog main.site-main article.keydesign-card {
		flex-basis: calc(50% - 30px);
	}
		

}


@media only screen and (max-width:767px) {
	
	
	/*-- Referral Forms --*/
	
	.referral-form .row {
		margin-bottom: 15px;
	}
	
	.referral-form .col-12,
	.referral-form .col-6,
	.referral-form .col-4 {
		min-width: 100%;
	}
	
	.referral-form .container-calculation {
		max-width: 100%;
		margin-left: 0;
	}
	
	.referral-form .row-points-cost {
		min-width: auto;
		max-width: calc(100% - 30px) !important;
	}
	
	/*-- Add margin below blog posts on mobile on Blog landing page --*/

	.blog .keydesign-card.post {
		margin: 0 auto 60px auto !important;
		max-width: 500px;
	}
	
}


@media only screen and (max-width:700px) {
	
	/*- adjust team cards on small mobile -*/
	
	.team-cards .elementor-widget-elementskit-team {
		width: 100% !important;
		max-width: 350px !important;
	}
	
}


@media only screen and (max-width:600px) {
		
	/*=== Blog Fixes (May 2025) ======*/

	body.blog main.site-main article.keydesign-card {
		flex-basis: 100%;
		max-width: 350px;
	}
	
}