/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

h1,
h2,
h3,
h4,
h5,
h6 {
	text-decoration-color: var(--e-global-color-primary) !important;
	text-decoration-thickness: 2px !important;
	text-underline-offset: 6px;
}

#home-banner .elementor-swiper-button {
	width: 50px;
	height: 50px;
	border-radius: 50px;
	background: #fff;
	box-shadow: 0 0 3px rgba(0, 0, 0, 0.5);
	-moz-box-shadow: 0 0 3px rgba(0, 0, 0, 0.5);
	-webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.5);
	display: flex;
	justify-content: center;
	align-items: center;

	svg {
		fill: #333;
	}
}

.home-icons .elementor-icon-box-wrapper {
	.elementor-icon {
		position: relative;
		display: flex;
		justify-content: center;
		align-items: center;
		margin: auto;
		background-color: #f0f0f0;
		color: #fff;
		width: 120px;
		height: 120px;
		border-radius: 50%;
		text-align: center;
		line-height: 100px;
		font-size: 40px;
		z-index: 1;
		cursor: pointer;
		transition: background-color 0.5s ease;

		&::before {
			content: '';
			position: absolute;
			top: -5px;
			left: -5px;
			width: 110px;
			height: 110px;
			border-radius: 50%;
			background: transparent;
			z-index: -1;
		}

		&::after {
			content: '';
			position: absolute;
			bottom: -20px;
			left: 50%;
			transform: translateX(-50%);
			width: 0;
			height: 0;
			border: 12px solid transparent;
			border-top-color: #f0f0f0;
			transition: border-top-color 0.5s ease;
			z-index: 1;
		}
	}

	&:hover .elementor-icon {
		background-color: #c1272d;
	}

	&:hover .elementor-icon::after {
		border-top-color: #c1272d;
	}
}

.great-personalities figure.wp-caption {
	position: relative;
	overflow: hidden;

	figcaption.wp-caption-text {
		position: absolute;
		bottom: 0;
		inset-inline: 0;
		opacity: 0;
		transform: translateY(100%);
		transition: opacity 0.7s ease, transform 0.7s ease;
	}

	&:hover {
		figcaption.wp-caption-text {
			opacity: 1;
			transform: translateY(0);
		}
	}
}

.home-slider {
	.carousel-arrow {
		top: 0 !important;
		height: 52px !important;
		transform: translateY(0) !important;
	}

	h2.premium-person-name {
		background-color: var(--e-global-color-primary);
		text-align: center;
		position: relative;
		margin-bottom: 10px !important;

		&::after {
			content: "";
			position: absolute;
			bottom: -6px;
			left: 50%;
			transform: translateX(-50%);
			border-left: 6px solid transparent;
			border-right: 6px solid transparent;
			border-top: 6px solid var(--e-global-color-primary);
		}
	}

	.premium-person-image-container {
		border: 4px solid #fff;
		border-radius: 8px;
		margin-inline: 6px;

		&:hover {
			box-shadow: 0 0 7px rgba(0, 0, 0, 0.3);
		}
	}

	.premium-person-info {
		inset-inline: 10px !important;
		bottom: 48px !important;

		.premium-person-info-container {
			padding-block: 8px;

			.premium-person-title {
				margin-bottom: 12px;
				padding-inline: 8px;
			}

			.premium-person-content {
				margin: 0;

				p {
					margin: 0;
					margin-top: 20px;
				}
			}
		}
	}
}

.presidents .premium-persons-container {
	column-gap: 2%;
	row-gap: 3%;

	.premium-person-container {
		width: 48% !important;
		display: flex;
		gap: 8px;
		align-items: flex-start;
		box-shadow: 0 0 7px rgba(0, 0, 0, 0.3);
		-moz-box-shadow: 0 0 7px rgba(0, 0, 0, 0.3);
		-webkit-box-shadow: 0 0 7px rgba(0, 0, 0, 0.3);
		transition: all 1s ease 0s;
		-webkit-transition: all 1s ease 0s;
		-moz-transition: all 1s ease 0s;
		-o-transition: all 1s ease 0s;

		&>div {
			flex: 1;
		}

		.premium-person-info-container {
			padding: 4px 8px;

			.premium-person-name {
				padding-top: 8px;
				padding-left: 18px;
				position: relative;

				&::before {
					font-family: "Font Awesome 5 Free";
					content: "\f02c";
					position: absolute;
					top: 50%;
					left: 0px;
					transform: translateY(-10%);
					font-weight: 900;
					font-size: 12px;
					color: #999;
				}

				&::after {
					content: '';
					position: absolute;
					inset-inline: 0;
					bottom: -9px;
					height: 0.9px;
					width: 100%;
					background-color: #999;
				}
			}

			.premium-person-title {
				margin: 12px 0;
			}

			.premium-person-content {
				margin: 0;
				position: relative;

				a {
					color: inherit;
				}

				&::after {
					content: '';
					position: absolute;
					inset-inline: 0;
					bottom: -9px;
					height: 0.9px;
					width: 100%;
					background-color: #999;
				}
			}

			.premium-person-social-custom {
				padding-block: 2px;
				padding-left: 60px;
				position: relative;

				a {
					color: #999;

					&:hover {
						color: var(--e-global-color-primary);
					}

					i {
						font-size: 14px !important;
					}
				}

				&::before {
					content: "Contact:";
					font: 700 12px 'Roboto Slab', serif;
					color: #666;
					text-transform: uppercase;
					position: absolute;
					top: 4px;
					left: 0px;
				}
			}
		}
	}
}

.contact-us-form {
	.form-container {
		display: flex;
		justify-content: space-around;
		align-items: center;
		column-gap: 36px;

		.section-1 p:not(:last-child) {
			margin-block: 20px;
		}

		.section-2 p {
			margin-top: 20px;
		}

		label {
			font: 400 14px / 14px 'Roboto Slab', serif;

			input,
			textarea {
				margin-block: 12px;
				resize: vertical;
			}
		}
	}

	.submit-btn {
		p {
			text-align: right;
		}

		.wpcf7-submit {
			padding: 12px 32px;
		}
	}
}

.contact-address {
	ul {
		list-style: none;

		li {
			margin-block: 8px;

			a {
				font: 400 14px 'Open Sans', sans-serif;
				color: #666;
			}

			i {
				width: 30px;
				float: left;

				&.fa-home {
					height: 75px;
				}
			}
		}
	}

	.contact-social {
		border-top: 1px solid #999;
		margin-top: 20px;
		padding-top: 20px;
		margin-inline: 40px;

		ul {
			padding: 0;
		}

		a {
			font: 400 18px 'Open Sans', sans-serif;
			color: #666;

			&:hover {
				color: var(--e-global-color-primary);
			}
		}
	}
}

.about-image-container {
	figure {
		border: 4px solid #fff;
		box-shadow: 0 0 7px rgba(0, 0, 0, 0.3);
		-moz-box-shadow: 0 0 7px rgba(0, 0, 0, 0.3);
		-webkit-box-shadow: 0 0 7px rgba(0, 0, 0, 0.3);
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;

		img {
			width: 100%;
		}
	}

	.elementor-image-box-description {
		border: 1px solid #ccc;
		border-inline: none;
		padding-block: 20px;
		text-align: left;

		a {
			font-size: 30px;
			color: #ccc;
			vertical-align: middle;
			margin-inline: 1px;

			&:hover {
				color: #0088cc;
			}
		}
	}
}

.footer {
	h4 {
		text-decoration-color: #fff !important;
	}

	.subscription-form p {
		display: flex;
		max-width: 400px;
		margin: auto;

		input[type="email"] {
			flex: 1;
			padding: 12px;
			border: none;
			outline: none;
			background: #333;
			color: #fff;
			font-size: 16px;
		}

		input::placeholder {
			color: #bbb;
		}

		.subscription-btn:hover {
			background-color: var(--e-global-color-primary);
		}
	}
}

.footer-menu .hfe-nav-menu {
	display: flex;

	.hfe-dropdown-expandible {
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
	}
}

.news-page .rt-detail.rt-el-content-wrapper {
	padding: 8px !important;

	.rt-img-holder,
	.post-right-content {
		box-shadow: 0 0 7px rgba(0, 0, 0, 0.3);
		border: 4px solid #fff;
	}

	.post-right-content {
		padding: 16px;

		.post-meta-tags {
			margin-block: 8px 16px;
		}
	}
}

.hfe-nav-menu {
	.sub-menu {
		padding: 4px;
		border: 1px solid rgb(204, 204, 204);
		border-radius: 8px;
		margin-top: -7px;
		margin-left: -24px;

		.menu-item {
			padding-left: 18px;
		}
	}
}

.magazines-container {
	h3 {
		text-decoration-color: #fff !important;
	}

	.dflip-slick-wrapper {
		display: flex;
		align-items: center;
		width: 106%;

		.carousel-arrow {
			background-color: #fff;
			color: var(--e-global-color-primary) !important;
			padding: 16px 10px;
			font-size: 30px;

			&:hover {
				opacity: 0.5;
			}

			&.slick-disabled {
				opacity: 0;
			}
		}

		._df_thumb {
			width: 320px !important;
			height: 420px;
			margin: 50px 15px 15px !important;

			img {
				height: 390px;
			}

			.book-titles {
				position: absolute;
				bottom: 0;
				inset-inline: 0;

				div {
					display: block;
					height: 36px;
					margin: 0 auto;
					font: 400 18px / 36px 'Roboto Slab', serif;
					text-align: center;
					box-shadow: 0 0 4px rgba(0, 0, 0, 0.3);

					&.primary-title {
						background-color: #fff;
						padding: 0 36px;
						color: #333;
						text-transform: uppercase;
					}

					&.secondary-title {
						color: #fff;
						background-color: #ba131abf;
					}
				}
			}
		}
	}
}

#noteworthy-section {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
	align-items: start;

	.image-card {
		background: #fff;
		border: 4px solid #fff;
		box-shadow: 0 0 7px rgba(0, 0, 0, 0.3);
		overflow: hidden;
		cursor: pointer;

		img {
			height: 200px;
			width: auto;
			display: block;
		}
	}

	.content {
		background: #fff;
		padding: 6px;
		min-height: 200px;
		position: relative;
		overflow: hidden;

		.content-item {
			opacity: 0;
			transform: translateX(-30px);
			transition: all 0.6s ease-in-out;
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			pointer-events: none;

			&.active {
				opacity: 1;
				transform: translateX(0);
				position: relative;
				pointer-events: auto;
			}

			.date {
				font: 400 12px/12px 'Roboto Slab', serif;
				color: #ccc;
				padding-bottom: 8px;
				margin-bottom: 8px;
				border-bottom: 1px solid #ccc;
			}

			.title {
				font: 400 16px 'Roboto Slab', serif;
				color: #333;
				margin-bottom: 10px;
			}

			.read-more {
				font: 700 12px 'Roboto Slab', serif;
				color: #666;
				text-decoration: none;
				text-transform: uppercase;
				margin-top: 10px;
				transition: all 1s ease 0s;

				&:hover {
					color: var(--e-global-color-primary);
				}
			}
		}
	}
}

.custom-social-share {
    display: flex;
    gap: 10px;
}
.custom-social-share a {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-weight: 600;
    padding: 2px 12px;
    border-radius: 4px;
    text-decoration: none;
    font-family: Helvetica, Arial, sans-serif;
    font-size: 13px;
    font-weight: 700;
    transition: background 0.2s, color 0.2s;
}
.custom-social-share .fb-share-btn {
    background-color: #1877f2;
    color: #fff;
}
.custom-social-share .twitter-share-btn {
    background-color: #1da1f2;
    color: #fff;
}
.custom-social-share .linkedin-share-btn {
    background-color: #0a66c2;
    color: #fff;
}
.custom-social-share .whatsapp-share-btn {
    background-color: #25d366;
    color: #fff;
}
.custom-social-share .email-share-btn {
    background-color: #ea4335;
    color: #fff;
}
.custom-social-share a:hover {
    opacity: 0.85;
}
.custom-social-share i {
    font-size: 16px;
}
.custom-social-share span {
    line-height: 1;
}


@media only screen and (max-width: 1024px) {
	.home-slider {
		.carousel-arrow {
			top: 50% !important;
			transform: translateY(-50%) !important;
		}

		.carousel-next {
			right: 14px !important;
		}

		.carousel-prev {
			left: 14px !important;
		}
	}

	.presidents .premium-persons-container {
		.premium-person-container {
			flex-direction: column;

			&>div {
				flex: auto;
			}

			.premium-person-image-container {
				width: 100%;
			}
		}
	}

	.contact-us-form {
		.form-container {
			flex-direction: column;
		}
	}
}

@media only screen and (max-width: 767px) {
	.presidents .premium-persons-container {
		row-gap: 1.5% !important;

		.premium-person-container {
			width: 100% !important;
		}
	}
}