/*
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
*/

/* .ast-separate-container .ast-article-post, 
.ast-separate-container .ast-article-single:not(.ast-related-post) {
    background-color: #f9fafb !important;
} */
.ast-separate-container .ast-article-post, 
.ast-separate-container .ast-article-single:not(.ast-related-post) {
    background-color: #e4e0e3 !important;
}
.ast-plain-container.ast-no-sidebar #primary {
    margin-top: 0px !important;
    margin-bottom: 0px !important;

}

div.elementor-element.elementor-element-f4da792.elementor-widget.elementor-widget-text-editor > div > p {
	margin-bottom: 0px !important;
	padding-bottom: 0px !important;
}

.elementor-118 .elementor-element.elementor-element-f4da792 {
	margin-bottom: 0px !important;
}

p.sib-email-area {
	font-family: "Optima", Sans-serif;
	font-weight: bold !important;
}

.tcg-red {
	color: #ff3300 !important;
}

#sib_signup_form_1 > div.sib_signup_box_inside_1 > p.sib-OPT_IN-area > label {
	font-size: 16px !important;
	font-family: "Optima", Sans-serif;
}

#sib_signup_form_1 > div.sib_signup_box_inside_1 > p:nth-child(4) {
	font-size: 16px !important;
	font-family: "Optima", Sans-serif;
}

form#sib_signup_form_1 .sib-default-btn {
    margin: 5px 0 !important;
    padding: 8px 16px !important;
    color: #e3e0e3 !important;
    background-color: #85754f !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    text-transform: uppercase !important;
    line-height: 1.4285;
    text-align: center;
    cursor: pointer;
    vertical-align: middle;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    white-space: normal;
    border: none !important;
    border-radius: 0px !important;
}


form#sib_signup_form_1 p.sib-alert-message-error {
    background-color: #ffffff !important;
    border-color: #333333 !important;
    color: #a94442 !important;
    font-family: "Optima", Sans-serif !important;
}
form#sib_signup_form_1 p.sib-alert-message-success {
    background-color: #ffffff !important;
    border-color: #333333 !important;
    color: #1f262b !important;
    font-family: "Optima", Sans-serif !important;
    font-size: 14px !important;
}
form#sib_signup_form_1 p.sib-alert-message-warning {
    background-color: #fcf8e3;
    border-color: #faebcc;
    color: #8a6d3b;
    font-family: "Optima", Sans-serif !important;
}


.readmoretoggle .elementor-toggle .elementor-tab-title {
    display: flex;
    justify-content: center;
}

.readmoretoggle .elementor-tab-title.elementor-active::before {
    content: 'Read Less';
    font-family: "Optima", Sans-serif !important;
    font-weight: 600;
    font-size: 16px;
    color: #000000;
    }
.readmoretoggle .elementor-toggle-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: column-reverse;
}
.readmoretoggle .elementor-tab-title.elementor-active a{
    display:none;
}

.ast-single-post .entry-content a, 
.ast-comment-content a:not(.ast-comment-edit-reply-wrap a) {
    text-decoration: none !important;
}

.ast-single-post .entry-content a, 
.ast-comment-content a:not(.ast-comment-edit-reply-wrap a) {
    color: #ffffff;
}

.elementor-element-98fd251.elementor-kit-5 a,
.tcg-cu-email { 
    color: #000000 !important;
}

/********************** POST/PROJECT STUFF **************************/
.ast-separate-container .ast-article-post, 
.ast-separate-container .ast-article-single, 
.ast-separate-container .ast-author-box, 
.ast-separate-container .ast-404-layout-1, 
.ast-separate-container .no-results {
    padding: 0px !important;
}

.ast-separate-container #primary, 
.ast-separate-container.ast-left-sidebar #primary, 
.ast-separate-container.ast-right-sidebar #primary {
    margin: 0px !important;
}

.um input[type=submit].um-button:hover, 
.um a.um-button:hover,
.um input[type=submit].um-button, 
.um input[type=submit].um-button:focus, 
.um a.um-button, 
.um a.um-button.um-disabled:hover, 
.um a.um-button.um-disabled:focus, 
.um a.um-button.um-disabled:active { 
    background-color: #85754f !important;
    color: #ffffff !important;
}

/*input[type="text"], 
input[type="email"], 
input[type="password"], 
input[type="tel"], 
input[type="search"], 
input[type="date"], 
input[type="time"], 
input[type="datetime-local"], 
input[type="month"], 
input[type="url"], 
input[type="number"], 
textarea, */
#translate-wrapper select, 
.form-control {
    float: right !important;
    height: 45px !important;
    padding: 20px 30px !important;
    background: #E3E0E3 !important;
    color: #000000;
    width: 20% !important;
    font-family: "Optima", Sans-serif;
    font-weight: 500;
    font-size: 18px !important;
    letter-spacing: 0.3px;
    line-height: 24px;
    border: 2px solid #e5e5e5 !important;
    outline: none;
    border-radius: 0;
    box-shadow: none;
    -webkit-transition: all 0.3s ease 0s;
    -ms-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
    -webkit-appearance: none;
    -ms-appearance: none;
    appearance: none;
}

/****************** Custom Styles for Podcast ********************/

.castos-player.light-mode .playlist__item.active h2 {
    color: #8a6d3b !important;
}

@media only screen and (max-width: 768px) {
  #translate-wrapper select, 
    .form-control {
        float: right !important;
        height: 45px !important;
        padding: 20px 30px !important;
        background: #E3E0E3 !important;
        color: #000000;
        width: 50% !important;
        font-family: "Optima", Sans-serif;
        font-weight: 500;
        font-size: 18px !important;
        letter-spacing: 0.3px;
        line-height: 24px;
        border: 2px solid #e5e5e5 !important;
        outline: none;
        border-radius: 0;
        box-shadow: none;
        -webkit-transition: all 0.3s ease 0s;
        -ms-transition: all 0.3s ease 0s;
        transition: all 0.3s ease 0s;
        -webkit-appearance: none;
        -ms-appearance: none;
        appearance: none;
    }
}
.custom-grid{display: flex; flex-wrap:wrap; justify-content: space-between;}
.custom-grid .grid-item{flex: 1 1 calc(30.33% - 20px); margin: 1%; box-sizing: border-box; text-align: center;}
/* Add this to force empty space in the last row, if needed */
.custom-grid::after {
    content: '';
    flex: 1 1 calc(33.33% - 20px); /* Invisible column */
    visibility: hidden;
}

/* Add extra empty space only if there's only 2 items in the last row */
.custom-grid > .grid-item:nth-last-child(2):nth-child(odd)::after {
    content: '';
    flex: 1 1 calc(33.33% - 20px); /* Another empty column */
    visibility: hidden;
}
.cusfont{
	font-family: "Realist Regular", Sans-serif;
    font-size: 18px;
    font-weight: 400;
	color: #000000;
	text-align: justify;
}
.popup-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.8);
    z-index: 9999;
    display: flex;
    justify-content: center;
    align-items: center;
}

.popup-content {
    background: #fff;
/*     padding: 20px; */
    position: relative;
    z-index: 10000;
    width: 80%;
    height: 98%; /* Popup height set to 98% of the screen */
/*     overflow-y: auto; /* Add scrolling to the entire popup */ */
	overflow-x:hidden;
}
/* .popup-details{
	flex: 1; max-height: 100%; overflow-y: auto; 
} */
/* Make the featured image sticky */
/* Layout with two columns for featured image and details */
.popup-inner {
    display: flex;
    flex-wrap: wrap;
	padding:20px;
	height:98vh;
	overflow-y:auto;
}

/* Make the featured image sticky */
.popup-image {
    flex: 1;
    
    height: 60vw;
	position:sticky;
	top:0.8vw;
    align-self: flex-start; /* Ensure it starts at the top */
}

.popup-image img {
    max-width: 100%;
    height: 100%;
	object-fit:cover;
/* 	position:sticky; */
}

.popup-details {
    flex: 1;
    padding-left: 20px;
    max-height: 100%;

	
}
.popup-close {
    position: absolute;
    top: 10px;
    right: 15px;
    font-size: 24px;
    color: #000;
    cursor: pointer;
    z-index: 10001; /* Ensure close button is always on top */
}

.popup-close:hover {
    color: #f00;
}

/* Style for Slick Slider Arrows */
.slick-prev, .slick-next {
    background-color: rgba(0, 0, 0, 0.5);
    color: #fff;
    font-size: 18px;
    border: none;
    cursor: pointer;
    padding: 9px;
    z-index: 10001; /* Ensure arrows are on top */
}

.slick-prev:hover, .slick-next:hover, .slick-prev:focus, .slick-next:focus{
    background-color: rgba(0, 0, 0, 0.7);
}

/* Positioning the arrows properly */
.slick-prev {
	width:3vw;
	height:3vw;
    position: fixed;
	
    top: 50%;
    left: 12%;
    transform: translateY(-50%);
}

.slick-next {
	width:3vw;
	height:3vw;
    position: fixed;
	
    top: 50%;
    right: 12%;
    transform: translateY(-50%);
}

/* Remove slider dots */
.slick-dots {
    display: none;
}
@media only screen and (max-width: 600px) {
	.popup-image{
		position:relative;
		height:auto;
	}
	.popup-image img {
		max-width: 293px;
		height: auto;
	}
	.popup-inner {
    display: grid;
    flex-wrap: wrap;
}
	.slick-next {
	width:8vw;
	height:8vw;
	}
	.slick-prev {
	width:8vw;
	height:8vw;
	}
.custom-grid .grid-item{flex: 1 1 calc(45.33% - 20px); margin: 1%; box-sizing: border-box; text-align: center;}
	
}