/*!
Theme Name: Haruv Institute
Theme URI: https://underscores.me/
Author: Automattic
Author URI: https://automattic.com/
Description: Hi. I'm a starter theme called <code>Haruv Institute</code>, or <em>underscores</em>, if you like. I'm a theme meant for hacking so don't use me as a <em>Parent Theme</em>. Instead try turning me into the next, most awesome, WordPress theme out there. That's what I'm here for.
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: Haruv Institute
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready
*/


/* Header Style Start */

.site-header{
	background: var(--white-100);
	position: sticky;
	top: 0;
	z-index: 999;
}
.header-inner {
	display: flex;
	column-gap: 10.75rem; /* 172px */
	align-items: flex-end;
	padding-top: 1.3125rem; /* 20px */
	justify-content: space-between;
}
.site-branding {
	position: relative;
	margin-bottom: 1.25rem; /* 20px */
}
.site-branding::before {
	position: absolute;
	content: "";
	left: -5.375rem; /* -86px */
	top: 50%;
	transform: translateY(-50%);
	background: var(--blue-100);
	width: 1px;
	height: 100%;
}
.header-left-top {
	display: flex;
	column-gap: 2.5rem;
	align-items: center;
	justify-content: flex-end;
}
.header-actions {
	display: flex;
	column-gap: 2.5rem; /* 40px */
	align-items: center;
}
.header-search{
	position: relative;
	border: 2px solid #FA9;
	border-radius: 1.25rem; /* 20px */
	padding: 0 1.25rem; /* 10px 20px */
	padding-left: 1.875rem; /* 30px */
	max-width: 12.5rem; /* 200px */
}
.header-search input{
	padding: 0;
}
.search-icon {
	padding: 0;
	background: none;
	border: 0;
	cursor: pointer;
	width: 1.25rem; /* 20px */
	height: 1.25rem; /* 20px */
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: .625rem; /* 10px */
}
.header-actions .action-btn{
	width: 2.5rem; /* 40px */
	height: 2.5rem; /* 40px */
}
.header-actions .action-btn svg{
	width: 100%;
	height: 100%;
}
.language-switcher {
	font-family: var(--font-almoni-neue);
	font-size: 1.4375rem; /* 23px */
	font-weight: 400;
	line-height: 148%;
	display: flex;
	align-items: center;
	gap: 1.375rem; /* 22px */
	color: var(--blue-100);
}



.main-menu > ul {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	align-items: center;
	column-gap: 10.75rem; /* 172px */
}
.main-menu ul > li {
	display: block;
	position: relative;
}
.main-menu > ul > li > a {
	text-decoration: none;
	letter-spacing: 0.32px;
	line-height: 90%;
	font-weight: 600;
	font-family: var(--font-almoni-tzar); 
	font-size: 2rem; /* 32px */
	color: var(--blue-100);
	position: relative;
	display: block;
	padding-top: 1.25rem; /* 20px */
	padding-bottom: 1.25rem; /* 20px */
}
.main-menu > ul > li > a::before{
	position: absolute;
	content: "";
	width: 1px;
	height: 1.25rem; /* 20px */
	background: var(--blue-100);
	left: -5.625rem; /* -90px */
	top: 50%;
	transform: translateY(-50%);
}
.main-menu > ul > li:last-child > a::before{
	display: none;
}

@media only screen and (max-width:1849px) {

	.main-menu > ul {
		column-gap: 8.75rem; /* 140px */
	}
	.main-menu > ul > li > a::before{
		left: -4.375rem; /* -70px */
	}

}
@media only screen and (max-width:1799px) {

	.main-menu > ul {
		column-gap: 6.875rem; /* 110px */
	}
	.main-menu > ul > li > a::before{
		left: -3.4375rem; /* -55px */
	}

}
@media only screen and (max-width:1599px) {

	.main-menu > ul {
		column-gap: 6.25rem; /* 100px */
	}
	.main-menu > ul > li > a {
		font-size: 1.5625rem; /* 25px */
	}   
	.main-menu > ul > li > a::before{
		left: -3.125rem; /* -50px */
	}

}

@media only screen and (max-width:1399px) {

	.main-menu > ul {
		column-gap: 5rem; /* 80px */
	}
	.main-menu > ul > li > a {
		font-size: 1.375rem; /* 22px */
	}   
	.main-menu > ul > li > a::before{
		left: -2.5rem; /* -40px */
	}
	.site-branding {
		max-width: 11.25rem; /* 180px */
	}

}
@media only screen and (max-width:1199px) {

	.header-inner{
		column-gap: 5rem; /* 80px */
	}
	.site-branding {
		max-width: 9.375rem; /* 150px */
	}
	.site-branding::before{
		left: -2.5rem; /* -40px */
	}
	.main-menu > ul {
		column-gap: 3.75rem; /* 60px */
	}
	.main-menu > ul > li > a::before{
		left: -1.875rem; /* -30px */
	}
	.main-menu > ul > li > a {
		font-size: 1.375rem; /* 22px */
	}   
}
.language-switcher.mobile-switcher{
	display: none;
}
@media only screen and (max-width:991px) {

	.header-search {
		border-width: .0938rem; /* 1.5px */
		padding: 0 1.25rem;
		padding-left: 1.875rem;
		max-width: 100%;
	}
	.header-search input {
		font-size: 1.0781rem; /* 17px */
	}
	.language-switcher.desktop-switcher{
		display: none;
	}
	.language-switcher.mobile-switcher{
		display: flex;
	}
	.header-left-top {
		column-gap: .9375rem; /* 15px */
		margin-bottom: 0;
	}
	.header-actions {
		column-gap: .9375rem; /* 15px */
	}
	.language-switcher svg, 
	.header-actions .action-btn{
		width: 1.875rem; /* 30px */
		height: 1.875rem; /* 30px */
	}
	.menu-trigger{
		max-width: 1.6875rem; /* 27px */
		cursor: pointer;
	}
	.header-inner {
		justify-content: start;
		column-gap: 3.75rem; /* 60px */
		align-items: center;
		flex-wrap: wrap;
	}
	.header-left {
		margin-right: auto;
	}
	.site-branding {
		max-width: 6.8125rem; /* 109px */
		margin-bottom: 0;
	}
	.site-branding::before{
		left: auto;
		right: -1.875rem; /* -30px */
	}
	.search-section.header-search-mobile{
		flex-basis: 100%;
		margin-top: 1.25rem; /* 20px */
	}

}
@media only screen and (max-width:767px) {

	.header-inner {
		column-gap: 3.125rem; /* 50px */
	}
	.site-branding::before{
		right: -1.5625rem; /* -25px */
	}
}


.mega-menu-wrapper {
	position: fixed;
	width: 100%;
	top: 8.813rem; /* 141px */
	top: auto;
	left: 0;
	z-index: -1; 
	opacity: 0;
	visibility: hidden;
	transition: 0.3s all ease;
	background: var(--white-100);
	padding-left: 3.125rem; /* 50px */
	padding-right: 3.125rem; /* 50px */
	border-top: 1px solid var(--blue-100);
}
.admin-bar .mega-menu-wrapper{
	top: calc(8.813rem + 2rem); /* 141px + 32px */
}
.main-menu > ul > li.menu-item-has-mega-menu:hover > .mega-menu-wrapper {
	z-index: 9999;
	opacity: 1;
	visibility: visible;
}

.mega-menu-inner {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	column-gap: 10rem; /* 160px */
}
.mega-menu-box{
	position: relative;
	padding-top: 2.5rem; /* 40px */
	padding-bottom: 2.5rem; /* 40px */
}
.mega-menu-box::after{
	position: absolute;
	content: "";
	width: 1px;
	height: 100%;
	background: var(--blue-100);
	left: -5rem; /* -80px */
	top: 50%;
	transform: translateY(-50%);
}
.mega-menu-box > ul{
	margin: 0;
	padding: 0;
	list-style-type: none;

	display: flex;
	flex-direction: column;
	row-gap: 1.875rem; /* 30px */
}
.mega-menu-box > ul > li{
	display: block;
}
.mega-menu-box > ul > li > a{
	text-decoration: none;
	position: relative;
	padding-right: 1.25rem; /* 20px */
	display: block;
}
.mega-menu-box > ul > li > a::after{
	position: absolute;
	content: "";
	width: .25rem; /* 4px */
	height: 100%;
	background: var(--blue-100);
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	opacity: 0;
	z-index: -1;
	transition: 0.3s all ease;
}
.mega-menu-box > ul > li > a:hover::after,
.mega-menu-box > ul > li.active > a::after {
	opacity: 1;
	z-index: 1;
}

/* Remove active highlight for third column items */
.mega-menu-column-3 .column-3-menu-item.active > a::after {
    opacity: 0;
    z-index: -1;
}
.mega-menu-box > ul > li > a span{
	font-family: var(--font-almoni-neue);
	font-weight: 700;
	line-height: 148%;
	font-size: 1.4375rem; /* 23px */
}
.mega-menu-box > ul > li > a p{
	font-family: var(--font-almoni-neue);
	font-weight: 400;
	line-height: 148%;
	font-size: 1.4375rem; /* 23px */
}
.mega-menu-box > ul > li > a:hover{
	color: var(--blue-100);
}

@media only screen and (max-width:1599px) {

	.mega-menu-wrapper {
		padding-left: 2rem; /* 32px */
		padding-right: 2rem; /* 32px */
	}

}

@media only screen and (max-width:1399px) {

	.mega-menu-wrapper {
		top: 7.5625rem; /* 121px */
	}
	.admin-bar .mega-menu-wrapper{
		top: calc(7.5625rem + 2rem); /* 121px + 32px */
	}
	.mega-menu-inner {
		column-gap: 6.25rem; /* 100px */
	}
	.mega-menu-box::after{
		left: -3.125rem; /* -50px */
	}

}

@media only screen and (max-width:1199px) {

	.mega-menu-inner {
		column-gap: 5rem; /* 80px */
	}
	.mega-menu-box::after{
		left: -2.5rem; /* -40px */
	}

}


/* Header Style End */

.mobile-menu > ul{
	margin: 0;
	padding: 0;
	list-style: none;
}
.mobile-menu > ul > li{
	display: block;
	border-bottom: 1px solid var(--blue-100);
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	column-gap: .9375rem; /* 15px */
}
.mobile-menu > ul > li:last-child{
	border-bottom: 0;
}
.mobile-menu > ul > li > a{
	display: block;
	text-decoration: none;
	font-family: var(--font-almoni-tzar);
	font-size: 1.8125rem; /* 29px */
	line-height: 90%;
	letter-spacing: 0.29px;
	font-weight: 600;
	padding: .9375rem 1.5rem; /* 15px 24px */
	color: var(--blue-100);
}
.sub-menu-indicator{
	cursor: pointer;
	width: .75rem; /* 12px */
	transition: 0.3s all ease;
}
.mobile-menu > ul > li.has-sub-menu > .sub-menu-indicator{
	width: .875rem; /* 14px */
}
.sub-menu-indicator svg{
	width: 100%;
	height: 100%;
}
.sub-menu-indicator.active{
	transform: rotate(-90deg);
}
.mobile-menu .sub-menu{
	/* display: none; */
	flex-basis: 100%;
	display: flex;
	flex-direction: column;
	row-gap: .625rem; /* 10px */
	padding-left: 1.5rem; /* 24px */
	padding-right: 1.25rem; /* 20px */
}
.mobile-menu .sub-menu.sub-menu-level-3{
	list-style: disc !important;
}
.mobile-menu .sub-menu:not(.sub-menu-level-1) li{
	position: relative;
	padding-right: .8125rem; /* 13px */
}
.mobile-menu .sub-menu:not(.sub-menu-level-1) li::before{
	position: absolute;
	content: "";
	width: .4375rem; /* 7px */
	height: .4375rem; /* 7px */
	background: var(--blue-100);
	border-radius: 50%;
	right: 0;
	top: .8125rem;	 /* 13px */
}
.mobile-menu .sub-menu > li{
	display: flex;
	flex-wrap: wrap;
	column-gap: .9375rem; /* 15px */
	row-gap: .625rem; /* 10px */
}
.mobile-menu .sub-menu > li > ul{
	flex-basis: 100%;
}
.mobile-menu .sub-menu > li > a{
	display: block;
	text-decoration: none;
	font-family: var(--font-almoni-neue);
	line-height: 148%;
	font-size: 1.4375rem; /* 23px */
}
.mobile-menu .sub-menu > li > a.active{
	color: var(--blue-100);
}
.mobile-menu .sub-menu.sub-menu-level-1 > li > a span{
	font-weight: 700;
}
.mobile-menu .sub-menu > li > a p{
		font-weight: 400;
}
.mobile-menu .sub-menu.sub-menu-level-1 > li:last-of-type {
	margin-bottom: .625rem; /* 10px */
}
/* Hamburger menu wrapper scrollable styles and animation */
.hamburger-menu-wrapper {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    z-index: 99999;
    background: var(--white-100);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.3s;
    max-height: 100vh;
    overflow: hidden;
}
.hamburger-menu-wrapper .hamburger-inner {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background: var(--white-100);
    box-shadow: 2px 0 24px rgba(0,0,0,0.08);
    transform: translateX(-100%);
    transition: transform 0.35s cubic-bezier(.77,0,.175,1);
    overflow-y: auto;
    overscroll-behavior: contain;
	border-top: 1px solid var(--blue-100);
	padding-top: .625rem; /* 10px */
}
.hamburger-menu-wrapper.open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}
.hamburger-menu-wrapper.open .hamburger-inner {
    transform: translateX(0);
}

/* Prevent body scroll when hamburger menu is open */
body.hamburger-open {
    overflow: hidden;
}

/* Hamburger close button */
.hamburger-close {
    position: absolute;
    top: 1rem;
    left: 1rem;
    background: none;
    border: none;
    font-size: 2rem;
    color: var(--blue-100);
    cursor: pointer;
    z-index: 100;
	top: 0;
}

/* Footer Style Start */

.site-footer{
	position: relative;
	z-index: 4;
}
.footer-top{
	padding-top: 2.5rem; /* 40px */
	padding-bottom: 2.5rem; /* 40px */

	display: flex;
	column-gap: 10rem; /* 160px */
	justify-content: space-between;
}
.footer-box{
	position: relative;
}
.footer-box::after{
	position: absolute;
	content: "";
	width: 1px;
	height: 100%;
	background: var(--blue-100);
	right: -5rem; /* -80px */
	top: 50%;
	transform: translateY(-50%);
}
.footer-box:first-of-type::after{
	display: none;
}
.footer-box ul{
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	flex-direction: column;
	row-gap: .625rem; /* 10px */
}
.footer-box ul li{
	display: block;
}
.footer-box ul li a{
	text-decoration: none;
	font-family: 'Almoni Neue';
	font-size: 1.4375rem; /* 23px */
	line-height: 148%;
	font-weight: 400;
}
.newsletter-social-icons {
	display: flex;
	gap: 2.8125rem; /* 45px */
	align-items: center;
}
.social-medias ul {
	display: flex;
	flex-direction: row;
	gap: 2.5rem; /* 40px */
}
.social-medias ul li{
	display: block;
	width: 3.125rem; /* 50px */
	height: 3.125rem; /* 50px */
}
.social-medias ul li a{
	display: block;
	width: 100%;
	height: 100%;
	text-decoration: none;
	background: var(--blue-100);
	border-radius:50%;
	display: flex;
	align-items: center;
	justify-content: center;	
}
.social-medias ul li a svg,
.social-medias ul li a img{
	max-width: 70%;
}
.social-medias ul li a svg path{
	fill: var(--white-100);
	transition: 0.3s all ease;
}
.social-medias ul li a:hover{
	background: var(--red-20);
}
.social-medias ul li a:hover svg path{
	fill: var(--blue-100);
}
.haruv-address {
	margin-top: 2.5rem; /* 40px */
	margin-bottom: 5.625rem; /* 90px */
}
.newsletter-btn {
	background: var(--blue-100);
	color: var(--white-100);
	font-size: 1.8125rem; /* 29px */
	font-weight: 400;
	line-height: 1.9375rem; /* 31px */
	border: none;
	border-radius: 1.5625rem; /* 25px */
	padding: .5rem 1.25rem; /* 8px 20px */
}
.footer-bottom {
	padding-top: .625rem;
	padding-bottom: .625rem;
	background: var(--white-100);
}
.footer-bottom ul {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 2.5rem; /* 40px */
}
.footer-bottom ul li {
	display: block;
	position: relative;
	color: var(--blue-100);
}
.footer-bottom ul li:not(:last-of-type)::before {
	position: absolute;
	content: "";
	width: 1px;
	height: 100%;
	top: 50%;
	transform: translateY(-50%);
	left: -1.25rem; /* -20px */
	background: var(--blue-100);
}

@media only screen and (max-width:1799px) {

	.footer-top {
		column-gap: 6.25rem; /* 100px */
	}
	.footer-box::after {
		right: -3.125rem; /* -50px */
	}
}

@media only screen and (max-width:1599px) {

	.newsletter-social-icons {
		gap: 1.25rem; /* 20px */
	}
	.social-medias ul {
		gap: 1.25rem; /* 20px */
	}
	.newsletter-btn {
		font-size: 1.5625rem; /* 25px */
		line-height: 1.5625rem; /* 25px */
		padding: .5rem .9375rem; /* 8px 15px */
	}

}
@media only screen and (max-width:1399px) {
	
	.newsletter-social-icons {
		flex-direction: column;
		align-items: start;
	}
	.footer-top {
		column-gap: 3.75rem; /* 60px */
	}
	.footer-box::after {
		right: -1.875rem; /* -30px */
	}
	.haruv-address {
		margin-top: 1.875rem; /* 30px */
		margin-bottom: 2.5rem; /* 40px */
	}

}
@media only screen and (max-width:991px) {

	.footer-top {
		column-gap: 2.5rem; /* 40px */
	}
}

@media only screen and (max-width:767px) {

	.footer-top {
		flex-wrap: wrap;
		gap: 2.5rem; /* 40px */
	}
	.newsletter-social-icons {
		flex-basis: 100%;
	}
	.footer-box ul li a {
		font-size: 1rem; /* 16px */
		line-height: 187%;
	}
	.newsletter-social-icons {
		flex-basis: 100%;
	}
	.newsletter-btn {
		font-size: 1.125rem; /* 18px */
		line-height: 122.222%;
		width: 100%;
	}
	.footer-box:first-of-type,
	.footer-box:first-of-type {
		width: calc((100% - 5rem) / 2)
	}
	.haruv-address-footer-menu-3 {
		display: flex;
		align-items: flex-start;
		gap: 1.875rem; /* 30px */
		margin-top: 2.5rem; /* 40px */
	}
	.haruv-address {
		margin: 0;
		order: 2;
		position: relative;
	}
	.footer-menu {
		width: 4.375rem; /* 70px */
	}
	.haruv-address::after {
		position: absolute;
		content: "";
		height: 100%;
		width: 1px;
		right: -.9375rem; /* -15px */
		background: var(--blue-100);
		top: 50%;
		transform: translateY(-50%);
	}
	.social-medias {
		margin-left: auto;
		margin-right: auto;
	}
	.footer-bottom ul li {
		font-size: .75rem; /* 12px */
	}
	.footer-bottom ul {
		gap: .625rem;	 /* 10px */
		align-items: center;
		justify-content: center;
	}
	.footer-bottom ul li:not(:last-of-type)::before {
		left: -.3125rem; /* -5px */
		height: 1.25rem; /* 20px */
	}
}

/* Footer Style End */

body.submenu-open {
    overflow: hidden;
}
.pr-340{
	padding-right: 21.25rem; /* 340px */
}
@media only screen and (max-width:1599px) {

	.pr-340{
		padding-right: 250px; /* 340px */
	}

}
@media only screen and (max-width:1399px) {

	.pr-340{
		padding-right: 2rem; /* 32px */
	}

}
/* ========================================
   EVENT PAGE LAYOUT STYLES
   ======================================== */

/* Main Content Area Layout */
.event-main-content-area{
	display: grid;
	grid-template-columns: 1fr 36.875rem;
}

.event-main-content{
	padding-left: 160px;
}

/* ========================================
   EVENT SIDEBAR CONTENT (Fixed Sidebar)
   ======================================== */

.event-main-content-area .event-sidebar-content{
	padding-left: 80px;
	padding-right: 80px;
	padding-top: 60px;
	background: var(--blue-5);
	max-width: 36.875rem;
}

.event-main-content-area.including-sidebar .event-sidebar-content{
	position: fixed;
	left: 0;
	top: var(--header-hero-height, 0);
	height: calc(100% - var(--header-hero-height, 0));
	z-index: 1;
	overflow-y: auto;
}

/* ========================================
   EVENT SIDEBAR SUMMARY (Hero Sidebar)
   ======================================== */

.event-sidebar-summary {
	padding-left: 80px;
	padding-right: 80px;
	padding-top: 80px;
	background: var(--blue-5);
	position: fixed;
	left: 0;
	top: var(--header-height, 0);
	max-width: 36.875rem;
	height: 100%;
	z-index: 1;
	overflow-y: auto;
}

.event-sidebar-summary .event-title {
	font-size: 40px;
	line-height: 38px;
	margin-bottom: 15px;
	padding-bottom: 15px;
	font-family: var(--font-almoni-tzar);
}

.event-sidebar-summary .event-actions {
	gap: 20px;
}

.event-sidebar-summary .event-register-btn.site-btn{
	font-size: 23px;
	line-height: 147.826%;
}

/* Desktop Responsive - 1399px */
@media only screen and (max-width:1399px) {
	.event-main-content {
		padding-left: 40px;
	}
}

/* Tablet Responsive - 1199px */
@media only screen and (max-width:1199px) {
	.event-main-content-area{
		grid-template-columns: 1fr 400px;
	}

	.event-sidebar-summary,
	.event-main-content-area .event-sidebar-content {
		max-width: 400px;
		padding: 40px;
	}

	.event-sidebar-summary .event-actions {
		flex-wrap: wrap;
	}

	.event-sidebar-summary .event-register-btn-wrapper {
		flex-grow: 1;
		width: 100%;
		order: 3;
	}
}

/* ========================================
   EVENT SIDEBAR META ITEMS
   Used in: event-meta-sidebar.php
   ======================================== */

.event-sidebar-items {
	display: flex;
	flex-direction: column;
	gap: 30px;
}

.event-meta-sidebar .event-sidebar-item {
	display: flex;
	gap: 20px;
	align-items: flex-start;
}

.sidebar-item-header {
	display: flex;
	align-items: start;
	gap: 1rem; /* 16px */
	color: var(--blue-100);
	font-family: var(--font-almoni-tzar);
	font-size: 32px;
	font-style: normal;
	font-weight: 400;
	line-height: 90%; /* 28.8px */
	flex: 0 0 auto;
	min-width: 172px
}

.sidebar-item-header .icon {
	flex: 0 0 2.5rem; /* 40px */
	width: 2.5rem; /* 40px */
	height: 2.5rem; /* 40px */
	position: relative;
	top: -.4375rem; /* -7px */
}

.sidebar-item-content{
	font-size: 20px;
	line-height: 120%;
	font-weight: 400;
	flex: 1 1 auto;
}


/* ========================================
   EVENT META GRID (Meta Under Hero)
   Used in: meta-under-hero.php
   Contains: event-info-actions, event-audience, event-hours, event-product-price
   ======================================== */

.event-meta-grid {
	display: flex;
	gap: 30px;
	padding-top: 40px;
	padding-bottom: 40px;
}

.event-meta-grid .event-info-action{
	flex: 0 0 auto;
}

/* Meta Items Styling (shared between meta-grid and sidebar-summary) */
.event-meta-grid .event-metas,
.event-sidebar-summary .event-metas {
	flex-direction: column;
	align-items: flex-start;
	gap: 3px;
}

.event-meta-grid .event-metas .event-meta-item,
.event-sidebar-summary .event-metas .event-meta-item{
	display: block;
}

.event-meta-grid .event-metas .event-meta-item::after,
.event-sidebar-summary .event-metas .event-meta-item::after {
	display: none;
}

.event-meta-grid .event-location,
.event-sidebar-summary .event-location {
	margin-top: 10px;
}

/* Sidebar Items in Meta Grid */
.event-meta-grid .event-sidebar-item,
.event-sidebar-summary .event-sidebar-item {
	padding-right: 30px;
	position: relative;
}

.event-meta-grid .event-sidebar-item::before,
.event-sidebar-summary .event-sidebar-item::before{
	position: absolute;
	content: "";
	width: 1px;
	height: 100%;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	background: var(--blue-100);
}

.event-meta-grid .sidebar-item-header,
.event-sidebar-summary .sidebar-item-header{
	align-items: center;
}

.event-meta-grid .sidebar-item-header .icon,
.event-sidebar-summary .sidebar-item-header .icon{
	top: 0;
}

.event-meta-grid .sidebar-item-content,
.event-sidebar-summary .sidebar-item-content{
	margin-top: 20px;
}

.event-sidebar-summary .zoom-icon {
	margin-top: 10px;
}
.full-program-details{
	background: var(--red-10);
	padding: 17px 0;
	border: 0;
	text-align: center;
	width: 100%;
	color: var(--blue-100);
	font-family: var(--font-almoni-tzar);
	font-size: 45px;
	font-style: normal;
	font-weight: 500;
	line-height: 95.556%;
	cursor: pointer;

}
/* Tablet Responsive - 991px */
@media only screen and (max-width:991px) {
	.event-meta-grid{
		flex-direction: column;
		gap: 20px;
		padding-left: 1.5rem;
		padding-right: 1.5rem;
		background: var(--blue-5);
		padding-top: 0;
		position: relative;
		padding-bottom: 120px;
	}

	.event-meta-grid .event-sidebar-item{
		padding-right: 0;
	}

	.event-meta-grid .event-sidebar-item:nth-child(3) {
		order: 3;
	}

	.event-meta-grid .event-sidebar-item:nth-child(2) {
		order: 4;
	}

	.event-meta-grid .event-metas,
	.event-sidebar-summary .event-metas {
		flex-direction: row;
		align-items: flex-start;
		gap: 1.25rem;
	}

	.event-meta-grid .event-metas .event-meta-item::after{
		display: block;
	}

	.event-actions {
		position: absolute;
		right: 1.5rem;
		bottom: 40px;
	}

	.event-meta-grid .event-sidebar-item::before {
		display: none;
	}
}

/* Mobile Responsive - 767px */
@media only screen and (max-width:767px) {
	.event-meta-grid .event-metas {
		flex-wrap: wrap;
		row-gap: 4px;
	}

	/* Fixed button wrapper at bottom on mobile */
	.event-register-btn-wrapper {
		position: fixed;
		bottom: 0;
		left: 0;
		right: 0;
		width: 100%;
		background-color: white;
		z-index: 999;
		padding: 1rem 1.5rem;
		box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1);
		box-sizing: border-box;
		text-align: center;
	}

	/* Add padding to footer to prevent overlap */
	footer {
		padding-bottom: 80px !important;
	}
}

/* Tablet Responsive - 1199px (Sidebar Summary) */
@media only screen and (max-width:1199px) {
	.event-sidebar-summary .event-title {
		font-size: 30px;
		line-height: 28px;
	}
}

/* ========================================
   MOBILE RESPONSIVE - EVENT LAYOUT
   Tablet & Mobile: 991px and below
   ======================================== */

/* Hide mobile meta-grid on desktop */
.event-meta-grid-mobile {
	display: none;
}

/* Mobile: Hide sidebar and show meta-under-hero */
@media only screen and (max-width: 991px) {
	/* Hide sidebar content on mobile */
	.event-sidebar-content {
		display: none !important;
	}

	/* Hide sidebar summary on mobile (entire section) */
	.event-sidebar-summary {
		display: none !important;
	}

	/* Hide event-info-action in event-summary on mobile (info already in meta-under-hero) */
	.event-summary .event-info-action {
		display: none !important;
	}

	/* Show mobile meta-grid on mobile */
	.event-meta-grid-mobile {
		display: block;
	}

	/* Adjust main content area to full width on mobile */
	.event-main-content-area {
		grid-template-columns: 1fr !important;
	}

	/* Remove left padding from main content on mobile */
	.event-main-content {
		padding-left: 1.5rem;
		padding-right: 1.5rem;
	}
}


/* ========================================
   PRODUCT GRID SECTION
   Used in: template-parts/products/event/product-grid-section.php
   Desktop: 5-column grid
   Mobile: Swiper slider (1 item per slide)
   ======================================== */

.product-grid-section{
	padding-top: 60px;
	padding-bottom: 60px;
	background: var(--white-100);
	position: relative;
	z-index: 4;
}
@media only screen and (max-width:767px) {

	.product-grid-section{
		padding-bottom: 0;

	}
}




/* Desktop Grid (768px and above) */

.product-grid {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 42px;
}

.product-grid li{
	list-style: none;
}

.event-product-box{
	position: relative;
}

.event-product-box::before{
	position: absolute;
	content: "";
	width: 1px;
	height: 100%;
	background: linear-gradient(180deg, var(--white-0, rgba(255, 255, 255, 0.00)) 0%, var(--red-40, #FA9) 50%, var(--white-0, rgba(255, 255, 255, 0.00)) 100%) !important;
	left: -20px;
	top: 50%;
	transform: translateY(-50%);
}
@media only screen and (max-width:1399px) {

	.product-grid {
		grid-template-columns: repeat(4, 1fr);
	}

}
@media only screen and (max-width:1199px) {
	.product-grid {
		grid-template-columns: repeat(3, 1fr);
	}

}
/* Mobile Swiper Slider (max-width: 767px) */

.product-grid-swiper-wrapper {
	display: none;
}
.product-grid-swiper {
	width: 100%;
	padding-left: 1px;
	padding-bottom: 10px;
}
.product-grid-swiper .swiper-wrapper {
	display: flex;
}
.product-grid-swiper .swiper-slide {
	width: 100%;
	display: flex;
	align-items: stretch;
}

.product-grid-swiper .swiper-slide .event-product-box {
	width: 100%;
	display: flex;
	flex-direction: column;
	height: 100%;
	padding-left: 20px;
	padding-right: 20px;
	position: relative;
	text-align: center;
}
.product-grid-swiper .swiper-slide .event-product-box::before {
	position: absolute;
	content: "";
	width: 1px;
	height: 100%;
	background: linear-gradient(180deg, var(--white-0, rgba(255, 255, 255, 0.00)) 0%, var(--red-40, #FA9) 50%, var(--white-0, rgba(255, 255, 255, 0.00)) 100%) !important;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}
.product-grid-swiper .swiper-slide .event-product-box::after {
	position: absolute;
	content: "";
	width: 1px;
	height: 100%;
	background: linear-gradient(180deg, var(--white-0, rgba(255, 255, 255, 0.00)) 0%, var(--red-40, #FA9) 50%, var(--white-0, rgba(255, 255, 255, 0.00)) 100%) !important;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}

/* Swiper Pagination Dots */
.product-grid-swiper .swiper-pagination {
	position: relative;
	bottom: auto;
	margin-top: 40px;
	display: flex;
	justify-content: center;
	gap: 50px;
}

.product-grid-swiper .swiper-pagination-bullet {
	width: 10px;
	height: 10px;
	background: var(--blue-100);
	opacity: 1;
	border-radius: 50%;
	cursor: pointer;
	transition: all 0.3s ease;
	padding: 0;
	margin: 0;
	position: relative;
}
.product-grid-swiper .swiper-pagination-bullet::after{
	position: absolute;
	content: "";
	width: 20px;
	height: 20px;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background:var(--red-20);
	border-radius: 50%;
	transition: all 0.3s ease;
	z-index: -1;
	opacity: 0;
	visibility: hidden;
}
.product-grid-swiper .swiper-pagination-bullet-active::after {
	opacity: 1;
	visibility: visible;
}

/* Responsive - Hide desktop grid on mobile */
@media only screen and (max-width: 767px) {

	.product-grid {
		display: none;
	}

	.product-grid-swiper-wrapper {
		display: block;
	}
}
.event-product-box:last-of-type::before{
	display: none;
}
.event-product-box-link{
	display: block;
	text-decoration: none !important;
}
.event-type-badge{
	color: var(--blue-100);
	font-size: 25px;
	font-style: normal;
	font-weight: 400;
	line-height: 120%; /* 30px */
}
.event-product-box-image {
	margin-bottom: 20px;
	height: 200px;
}
.event-product-box-title,
.event-product-box-description{
	color: var(--blue-100);
	font-family: var(--font-almoni-neue);
	font-size: 1.5625rem;
	font-style: normal;
	font-weight: 400;
	line-height: 120%; /* 30px */
	margin: 0;
}
.event-product-box-title{
	font-weight: 700;
	margin-bottom: 6px;
	margin-top: 6px;
}
.event-product-box-dates{
	margin-top: 25px;
	font-size: 20px;
	font-style: normal;
	font-weight: 400;
	line-height: 150%; /* 30px */
}
/* Product Grid Section Style End */

.single-product .woocommerce-notices-wrapper {
	display: none;
}

/* Event Page Style Start */

/* Event Page Popup Style Start */

.event-registration-popup-overlay {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: rgba(0, 0, 0, 0.5);
	z-index: 9998;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.3s ease, visibility 0.3s ease;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 20px;
}
.event-registration-popup-overlay.isOpen {
	opacity: 1;
	visibility: visible;
}

/* Popup Form Container */
.event-registration-form-section {
	max-width: 750px;
	width: 100%;
	background: var(--white-100);
	background: var(--white-100);
	padding: 50px;
	border-radius: 50px;
	position: relative;
	box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);
	max-height: 90vh;
	overflow-y: auto;
	animation: slideUp 0.3s ease-out;
}

@keyframes slideUp {
	from {
		transform: translateY(50px);
		opacity: 0;
	}
	to {
		transform: translateY(0);
		opacity: 1;
	}
}

/* Close Button */
.event-registration-popup-close {
	position: absolute;
	top: 20px;
	left: 20px;
	background: none;
	border: none;
	font-size: 32px;
	cursor: pointer;
	color: var(--blue-100);
	width: 40px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 10000;
	transition: color 0.3s ease, transform 0.3s ease;
	padding: 0;
	line-height: 1;
}

.event-registration-popup-close:hover {
	color: var(--red-20);
	transform: scale(1.1);
}

/* Disable body scroll when popup is open */
body.popup-open {
	overflow: hidden;
}

/* Responsive Design */
@media (max-width: 768px) {
	.event-registration-form-section {
		max-width: 95%;
		padding: 30px;
		border-radius: 25px;
	}

	.event-registration-popup-close {
		top: 15px;
		left: 15px;
		font-size: 28px;
	}
}

@media (max-width: 480px) {
	.event-registration-form-section {
		padding: 20px;
	
	}

	.event-registration-popup-close {
		top: 10px;
		left: 10px;
		font-size: 24px;
	}
}

/* Add to Cart Button Styling */
.event-add-to-cart-btn{
	color: var(--blue-100)!important;
	text-align: center;
	font-size: 1.4375rem; /* 23px */
	font-style: normal;
	font-weight: 400;
	line-height: 147.826%; /* 34px */
	text-decoration: none !important;
	padding: 0;
	background: transparent;
	border: none;
	cursor: pointer;
	font-family: var(--font-almoni-neue);
}
.event-add-to-cart-btn:hover{
	color: var(--red-20);
}
.event-add-to-cart-btn:disabled {
	opacity: 0.5;
	cursor: not-allowed;
}

/* Success Message */
.event-popup-success-message {
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background: #4CAF50;
	color: white;
	padding: 20px 40px;
	border-radius: 10px;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
	z-index: 10001;
	text-align: center;
	font-size: 16px;
	font-weight: 600;
	animation: slideDown 0.3s ease-out;
}

@keyframes slideDown {
	from {
		transform: translate(-50%, -60%);
		opacity: 0;
	}
	to {
		transform: translate(-50%, -50%);
		opacity: 1;
	}
}

/* Event Page Popup Style End */