/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Siyam Ahmmed Nahid
 Author URI:   https://siyam.me
 Template:     generatepress
 Version:      0.1
*/


/* ========================= Global ========================= */
.elementor-post__meta-data {
    background: rgba(31, 38, 21, 0.80);
    backdrop-filter: blur(5px);
    position: absolute;
    left: 12px;
    top: 12px;
    width: 40px;
    text-align: center;
    padding: 7px 12px !important;
    border: none !important;
	width: 52px;
}
.elementor-post-date {
	display: flex;
    justify-content: center;
    flex-wrap: wrap;
}
.elementor-post-date span {
	font-size: 8px;
	line-height: 10px;
}
.elementor-post__badge {
	padding: 0 !important;
	position: unset !important;
}
.elementor-post__thumbnail__link {
	margin-bottom: 20px !important;
}
.elementor-post__text {
	margin-top: 8px !important;
}
.e-con-inner {
	border-left: 1px solid rgba(31, 38, 21, 0.07);
	border-right: 1px solid rgba(31, 38, 21, 0.07);
	position: relative;
}
.e-con-inner:before {
    content: '';
    width: 33.33%;
    height: 100%;
    position: absolute;
    left: 50%;
    top: 0;
    transform: translatex(-50%);
    border-left: 1px solid rgba(31, 38, 21, 0.07);
    border-right: 1px solid rgba(31, 38, 21, 0.07);
}
.hero-banner-area:not(.home) .elementor-icon-wrapper,
.sidebar .elementor-icon-wrapper {
	display: flex;
}



#comments .comments-title {
	display: none;
}
#comments .comment-list {
	display: flex;
    flex-direction: column;
    gap: 16px;
	border: none;
}
#comments .comment-author a {
	color: #1A1A1A;
    font-weight: 700;
}
#comments .comment-metadata time{
	color: #4D4D4D;
	font-size: 14px;
	font-weight: 400;
	line-height: 20px;
}
#comments .comment-body {
	padding: 32px;
	background: #FFEEDA;
}
#comments .comment-meta {
	display: flex;
	gap: 12px;
}
#comments .comment-meta .avatar {
    border-radius: 0;
    width: 48px;
    height: 48px;
    object-fit: cover;
    margin: 0;
}
#comments .comment-content {
	padding: 0;
	border: none;
}
#comments .children {
    margin: 16px 0 0;
    display: flex;
    flex-direction: column;
    gap: 16px;
	border: none;
}



#comments .logged-in-as,
#comments .edit-link,
#respond .comment-form-cookies-consent,
#respond #url{
	display: none !important;
}



#reply-title {
	color: #1A1A1A;
    font-size: 20px;
    line-height: 28px;
    margin-bottom: 16px;
}
.children #respond {
	margin-top: 16px;
}
#respond {
	padding: 32px;
	background: #FFEEDA;
}
#respond #commentform {
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
}
#respond .comment-form-comment {
	width: 100%;
	order: 3;
}
#respond #comment {
	background: rgba(31, 38, 21, 0.1);
	padding: 12px 16px;
    border: none;
    height: 128px;
}
#respond input:not(.submit) {
	width: calc(50% - 8px);
	background: rgba(31, 38, 21, 0.1);
	padding: 12px 16px;
    border: none;
}
#respond #author {
	order: 1;
}
#respond #email {
	order: 2;
}
#respond #submit,
#respond .form-submit {
	order: 4;
}
#respond p,
#respond input {
	margin: 0;
}



/* ========================= Header ========================= */
.elementor-menu-toggle.elementor-active {
	z-index: 9999;
    position: fixed;
    right: 25px;
    top: 36px;
}
.elementor-nav-menu--dropdown {
	position: fixed !important;
	top: 0 !important;
	left: 0 !important;
	padding: 110px 16px 16px !important;
	height: 100vh;
}
.elementor-nav-menu--dropdown .elementor-nav-menu {
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.menu-button .elementor-button-icon {
	display: flex;
}
.menu-button svg {
	width: 20px;
}



/* ========================= Homepage ========================= */
.custom-container {
	background: rgba(31, 38, 21, 0.95);
	backdrop-filter: blur(12px);
}
.watermark {
	transform: translatex(-50%);
	width: 100%;
}



.quote-container .elementor-widget-image {
	height: 100%;
}



.special-header {
	-webkit-text-stroke-width: 2px;
    -webkit-text-stroke-color: #7F994D;
}
.custom-link-button .elementor-button-icon {
	display: flex;
}
.custom-link-button svg {
	width: auto !important;
	fill: transparent !important;
}



.cutomer-testimonial-slider .elementor-main-swiper {
	width: 100% !important;
}
.cutomer-testimonial-slider .elementor-testimonial__text {
	font-style: unset !important;
}
.cutomer-testimonial-slider .elementor-testimonial__content:before {
	content: "";
	background-image: url(/wp-content/uploads/2025/02/quote-up.svg);
	height: 24px;
    width: 24px;
    display: inline-block;
    background-size: 100%;
    margin-bottom: 16px;
}



.custom-slider .elementor-slide-description svg {
	width: 100%;
	max-width: 814px;
}
.custom-slider .swiper-pagination {
    background: rgba(31, 38, 21, 0.5);
    border: 1px solid rgba(250, 250, 250, 0.2);
    padding: 12px 0px;
    max-width: 200px;
    border-radius: 0;
    position: absolute;
    left: 50% !important;
    bottom: 24px !important;
    transform: translate(-50%, 0%);
    backdrop-filter: blur(10px);
}
.custom-slider .swiper-pagination-bullet {
	border-radius: 0;
}
.custom-slider .swiper-pagination-bullet.swiper-pagination-bullet-active {
	width: 32px !important;
}



.overlay-image {
	transform: translatey(-50%);
}



.custom-posts {
	display: flex;
	flex-direction: column !important;
	width: 100% !important;
}



/* ========================= Product details page ========================= */
.brand-watermark {
	transform: translatex(-50%)
}
.product-details-banner .zoomImg,
.product-details-banner #wc-stripe-express-checkout-element,
.woocommerce-product-gallery__trigger {
	display: none !important;
}
.product-details-banner .breadcrumb * {
	display: flex !important;
	align-items: center;
}
.product-details-banner .woocommerce-product-details__short-description p {
	margin: 0;
}
.product-details-banner .elementor-widget-woocommerce-product-price .price {
	margin: 0;
}
.product-details-banner .variations {
	margin: 0 !important;
}
.product-details-banner .variations tbody {
    display: flex;
    flex-direction: column;
    gap: 32px;
}
.product-details-banner .variations tr {
	display: flex;
    flex-direction: column;
    align-items: flex-start;
	gap: 8px;
}
.product-details-banner td,
.product-details-banner th {
	display: flex;
	padding: 0 !important;
	flex-direction: column;
    gap: 8px;
}
.product-details-banner label {
    font-size: 14px !important;
    line-height: 22px !important;
}
.product-details-banner .custom-variations {
	display: flex;
	gap: 12px;
}
.product-details-banner .custom-variations input {
	display: none !important;
}
.product-details-banner .variation-label {
    padding: 4px 12px;
    min-width: 52px;
    background: rgba(31, 38, 21, 0.10);
    font-size: 14px !important;
    line-height: 24px !important;
    cursor: pointer;
    text-align: center !important;
    transition: all 0.3s;
}
.product-details-banner .variation-label.selected,
.product-details-banner .variation-label:hover {
	background: #1F2615;
	color: #FFEEDA !important;
}
.product-details-banner .woocommerce-variation-availability .stock {
    color: #4D4D4D !important;
    font-size: 16px !important;
    margin: 32px 0 16px;
}




/* ========================= Checkout page ========================= */
.cart-checkout-area .e-cart__container {
	display: flex !important;
}
.cart-checkout-area .e-cart__column-start {
	width: 100%;
}
.cart-checkout-area .e-cart__column-end,
.woocommerce-message {
	display: none !important;
}
.cart-checkout-area .cart_item td {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}
.cart-checkout-area .product-thumbnail {
	width: 76px;
}
#ship-to-different-address {
	padding: 0 !important;
}



/* ========================= Footer ========================= */
.highlight-text span {
	color: #7F994D;
}
.newsletter-form .elementor-form-fields-wrapper {
	flex-wrap: nowrap;
	gap: 12px;
}
.newsletter-form .elementor-column {
	margin: 0 !important;
	padding: 0 !important;
}
.newsletter-form .elementor-field {
	padding: 12px 16px !important;
}
.newsletter-form .e-form__buttons {
	width: auto !important;
}




/* ========================= Responsive ========================= */
@media only screen and (max-width: 1024px) {
	.elementor-post__thumbnail__link {
		margin-bottom: 16px !important;
	}
	.elementor-post__text {
		margin-top: 4px !important;
	}


	
	.overlay-image {
		transform: unset;
		position: unset !important;
	}
}



@media only screen and (max-width: 767px) {
	.elementor-post__thumbnail__link {
		margin-bottom: 12px !important;
	}
	
	
	
	.custom-link-button svg {
		width: 20px !important;
		height: 20px !important;
	}
	
	
	
	.custom-slider .swiper-pagination {
		padding: 8px 0px;
		max-width: 160px;
		bottom: 16px !important;
	}
}