/*
Theme Name: Astra Child
Theme URI: https://wpastra.com/
Template: astra
Author: Brainstorm Force
Author URI: https://wpastra.com/about/?utm_source=theme_preview&utm_medium=author_link&utm_campaign=astra_theme
Description: The Astra WordPress theme is lightning-fast and highly customizable. It has over 1 million downloads and the only theme in the world with 6,000+ five-star reviews! It’s ideal for professional web designers, solopreneurs, small businesses, eCommerce, membership sites and any type of website. It offers special features and templates so it works perfectly with all page builders like Spectra, Elementor, Beaver Builder, etc. Fast performance, clean code, mobile-first design and schema markup are all built-in, making the theme exceptionally SEO-friendly. It’s fully compatible with WooCommerce, SureCart and other eCommerce plugins and comes with lots of store-friendly features and templates. Astra also provides expert support for free users. A dedicated team of fully trained WordPress experts are on hand to help with every aspect of the theme. Try the live demo of Astra: https://zipwp.org/themes/astra/
Tags: custom-menu,custom-logo,entertainment,one-column,two-columns,left-sidebar,e-commerce,right-sidebar,custom-colors,editor-style,featured-images,full-width-template,microformats,post-formats,rtl-language-support,theme-options,threaded-comments,translation-ready,blog

*/

:root {
--primary-orange: #ff0022;
--primary-dark: #1e293b;
--text-main: #1f2937;
--text-light: #6b7280;
--bg-gray: #f9fafb;
--border-color: #e5e7eb;
}

* {box-sizing: border-box; margin: 0; padding: 0; }

.header-widget-area[data-section="sidebar-widgets-header-widget-1"] { padding:0}
/* Top Header */
.topTodayEvnet {display:flex; gap:13px;align-items: center;}
.topTitle { background: #ff0022; padding: 0px 8px; border-radius: 4px 0 0 4px; color: #fff; white-space: nowrap; font-weight: 500; font-size: .85rem; position: relative; height: 22px;}
.topTitle::after { content: ""; display: inline-block; width: 0; height: 0; border-top: 11px solid transparent; border-bottom: 11px solid transparent; border-left: 11px solid #ff0000; position: absolute; right: -11px; top: 0;}

.today-event-swiper { height: 30px; overflow: hidden !important;}
.today-event-swiper ul { margin:0; padding:0; list-style:none; line-height:30px;}
.today-event-swiper ul a {color:#222; font-size:14px; display:block;display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden;}
.topDownloadCalendar{ padding:2px 0;}
.topDownloadCalendar a{display:flex; justify-content: space-between; align-items:baseline; color:#ff0022; gap:10px; padding:0 10px; /*background:#fff0f0; font-size:14px; border-radius: 20px; border: 1px dotted #ccc;*/font-size: .85rem; font-weight: 500;}
.topDownloadCalendar a .fa-calendar-days{font-size: 1rem;}

.site-logo-img img{ width:175px; height:100%;}

.fa-magnifying-glass {position: absolute; top: 50%; left: 13px; color:#999 !important; font-size: 14px; transform: translate(0px, -50%);}
.search-input { border: 1px solid #ccc !important; padding: 6px 12px 6px 35px !important; font-size: 14px !important;}
        
[data-section="section-header-mobile-trigger"] .ast-button-wrap .mobile-menu-toggle-icon .ast-mobile-svg { width: 30px; height: 30px; fill: #333232;}

.ast-builder-menu .main-navigation>ul {gap: 15px;font-size: .95rem;}
.main-header-menu > .menu-item > .menu-link{color:#fff !important; display: flex; align-items: center; gap: 7px; padding:0 .4rem;}
.main-header-menu > .menu-item > .menu-link img {width:16px;}
.main-header-menu > .menu-item > .menu-link .ast-icon.icon-arrow svg{margin-left:0;}



.btn { padding: 0.5rem 1.5rem; border-radius: 0.375rem; font-weight: 600; font-size:.85rem; cursor: pointer; transition: all 0.2s; border: 2px solid transparent; text-decoration:none !important; }
.btn-primary { background-color: var(--primary-orange); color: white; border-color: #ffffff;}
.btn-primary:hover,.btn-primary:focus { background-color: #F44336; color: #fff !important ; }
.btn-outline { background-color: rgba(255,255,255,.7); border-color: #ff0022; color: #ff0022 !important ; }
.btn-outline:hover,.btn-outline:focus { background-color: rgba(255, 255, 255, 0.9); }
.btn-figures { background-color: #FF9800; color: #ffffff; border-color: #ffffff; }
.btn-figures:hover,.btn-figures:focus { background-color: #bf7202; color: #fff !important ; }


/* Hero Swiper Section */
.hero-swiper { width: 100%; height: 400px;}
.hero-slide { background-size: cover; background-position: center; display: flex !important; align-items: center !important; padding: 0 8%; color: white; position: relative !important; z-index: 1;}
.hero-slide::before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(rgba(15, 23, 42, 0.4), rgba(15, 23, 42, 0.2)); z-index: -1;}
.hero-content { max-width: 600px; position: relative; z-index: 3; }
.hero-content .heroHeading {font-size:clamp(1.8rem, 5vw, 2.5rem); font-weight:700; line-height: 1.1; margin-bottom: 1rem; color:#fff; }
.hero-content span {display:flex; gap:5px; justify-self:start; align-items:center; font-size:.8rem; background:#fbaf08; padding:3px 15px; border-radius:20px;}
.hero-content p { font-size: 1rem; margin-bottom: 2rem; opacity: 0.9; display: -webkit-box;
  -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;}
.hero-buttons { display: flex; gap: 1rem; }
.hero-buttons .btn {display:table;}

.custom-nav-btn { position: absolute; top: 50%; transform: translateY(-50%); width: 30px; height: 30px; border-radius: 50%; background: rgba(255, 255, 255, 0.5); border: 1px solid #e5e7eb; cursor: pointer; z-index: 10; display: flex; align-items: center; justify-content: center; font-size: 1rem; color: #1e293b; box-shadow: 0 4px 6px rgba(0,0,0,0.1); transition: all 0.2s; }

.custom-nav-btn:hover { background: #ff0022; color: white; border-color: #ff0022; }

.custom-hero-prev { left: 2%; }
.custom-hero-next { right: 2%; }

/* Section Headers */
.section-header { display: flex; justify-content: space-between; gap:15px; align-items: center; margin-bottom: 1.5rem;}
.section-header h3 { font-size: 1.4rem; color: var(--primary-dark); margin-bottom:0; flex:1}
.view-all {font-size: 0.9rem;  color: #f82a3e; font-weight: 500;  text-decoration:none !important;}


/* Category Filter Section */
.category-filterBlock {margin: -40px auto 0px; background: white; border-radius: 1rem; box-shadow: 0 10px 25px rgba(0,0,0,0.05); padding: 1rem 1rem; position: relative; z-index: 10; }
.category-filterBlock .categoryHeading{font-size: clamp(1.5rem, 5vw, 1.75rem); font-weight: 700;margin-bottom: .5rem; margin-bottom: 1rem;
 text-align: center;}
.category-filter {display: flex; justify-content: space-between;}
.category-item { display: flex; flex-direction: column; align-items: center; gap: 0.5rem; cursor: pointer; }
.category-icon { width: 70px; height: 70px; border-radius: 50%; background-color: #fdf4ff; display: flex; align-items: center; justify-content: center; color: #f97316; }
.category-icon i { font-size: 1.75rem; }

.category-item:nth-child(1) .category-icon { background-color: #fdf4ff; color: #f97316; }
.category-item:nth-child(2) .category-icon { background-color: #f0fdf4; color: #16a34a; }
.category-item:nth-child(3) .category-icon { background-color: #fef2f2; color: #dc2626; }
.category-item:nth-child(4) .category-icon { background-color: #fffbeb; color: #d97706; }
.category-item:nth-child(5) .category-icon { background-color: #f0fdfa; color: #0d9488; }
.category-item:nth-child(6) .category-icon { background-color: #faf5ff; color: #5d61af; }
.category-item:nth-child(7) .category-icon { background-color: #fff7ed; color: #ea580c; }
.category-item:nth-child(8) .category-icon { background-color: #f3f4f6; color: #4b5563; }
.category-item span { font-size: 0.75rem; font-weight: 500; color: #1f2937; }

.cardFestivalWrapper {position: relative; border: 1px solid #e5e7eb !important;border-radius: 0.5rem; overflow: hidden; background: #fff; transition: transform 0.2s, box-shadow 0.2s; height: 200px; display:block;}
.cardFestivalWrapper:before { position: absolute; width: 100%; height: 100%; background: rgba(0, 0, 0, .5); content: '';}
.cardFestivalWrapper img {width: 100%;height: 100% !important;object-fit: cover;}
.cardFestivalWrapper .cardFestivalTitle { position: absolute; left: 0; bottom: 0; width: 100%; padding: 0.75rem; background: rgba(0, 0, 0, .45); color: #fff; text-align: center; font-size: 1.2rem; font-weight: 600; transform: translateY(0); transition: transform .4s ease, background .4s ease;}

.cardFestivalWrapper:hover .cardFestivalTitle {transform: translateY(-120%); background: rgba(0, 0, 0, .6);}
.cardFestivalWrapper:hover:before { background: rgba(0, 0, 0, .2);}

        
/* Festival Swiper */
.festival-carousel-container {position: relative; padding: 0;}
.festival-card { border: 1px solid #e5e7eb !important;border-radius: 0.5rem; overflow: hidden; background: #fff; transition: transform 0.2s, box-shadow 0.2s; height: auto; }
.festival-card:hover {transform: translateY(-5px); box-shadow: 0 10px 15px rgba(0,0,0,0.1);}
.card-img-wrapper {position: relative; height: 140px; overflow:hidden; }
.card-img-wrapper img {width: 100%;height: 100% !important;object-fit: cover;}
.date-badge { position: absolute; top: 0.5rem; left: 0.5rem; background: white; padding: 0.2rem 0.5rem; border-radius: 1rem; font-size: 0.7rem;font-weight: 600; }
.card-content {padding: 1rem;}
.card-content h4 {font-size: 1rem; margin-bottom: 0.5rem; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; height:39px;}
.card-content p { font-size: 0.8rem; color: #6b7280; margin-bottom: 1rem; line-height: 1.4; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;}
.read-more {font-size: 0.8rem; color: #f82a3e; font-weight: 500;  text-decoration:none !important;}

.custom-fest-prev { left: 0; margin-left: -15px; }
.custom-fest-next { right: 0; margin-right: -15px; }

/* Stats Banner */
.stats-banner { background-color: #2e3b55; border-radius: 0.5rem; display: flex; justify-content: space-around; padding: 1rem; color: white; margin-bottom: 1rem; }
.stat-item { display: flex;  align-items: center; gap: 1.25rem;}
.stat-icon i { font-size: 2.25rem; opacity: 0.8;}
.stat-text h3 { font-size: 1.5rem; margin-bottom: 0.2rem; color:#fff;}
.stat-text p {font-size: 0.8rem;opacity: 0.8;}

/* Explore by State */
.state-panel, .upcoming-panel { border: 1px solid #e5e7eb; border-radius: 0.5rem; padding: 1rem; background: #fff; position:relative;}
.state-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; }
.state-card { text-align: center; color:#222; text-decoration:none !important;}
.state-card img { width: 100%; height: 90px !important; object-fit: cover; border-radius: 0.5rem !important; margin-bottom: 0.5rem;}
.state-card span { font-size: 0.8rem; color:#222 font-weight: 500 !important; }

.upcoming-swiper {height: 340px;  width: 100%; overflow: hidden;}
.upcoming-list { display: flex !important; flex-direction: column; gap: 0; margin:0; padding:0; list-style:none;}
.upcoming-item { display: flex !important; gap: 1rem; align-items: flex-start; height: auto;}
.date-box { background: #fff8f1; border: 1px solid #fed7aa; border-radius: 0.5rem; padding: 0.75rem; text-align: center; min-width: 70px; }
.date-box .day { font-size: 1.5rem; font-weight: 700; color: #1e293b; line-height: 1; }
.date-box .month { font-size: 0.8rem; text-transform: uppercase; color: #ff0022; font-weight: 600; margin-top: 0.2rem; }
.event-details { flex: 1; }
.event-header { display: flex; align-items: center; gap: 0.75rem; margin-bottom: 0.25rem;}
.event-header a { font-size: 1rem; color: #1e293b !important; text-decoration:none !important; font-weight:700 !important; margin-bottom:0; display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden;}
.event-header a:hover{ color: #000000 !important;}
.event-header .badge { font-size: 0.7rem; padding: 0.1rem 0.5rem; border-radius: 1rem; font-weight: 600;}

.upcoming-item:nth-child(1) .event-header .badge { background-color: #f0fdf4; color: #16a34a; }
.upcoming-item:nth-child(2) .event-header .badge { background-color: #fef2f2; color: #dc2626; }
.upcoming-item:nth-child(3) .event-header .badge { background-color: #fffbeb; color: #d97706; }
.upcoming-item:nth-child(4) .event-header .badge { background-color: #f0fdfa; color: #0d9488; }
.upcoming-item:nth-child(5) .event-header .badge { background-color: #faf5ff; color: #5d61af; }
.upcoming-item:nth-child(6) .event-header .badge { background-color: #fff7ed; color: #ea580c; }
.upcoming-item:nth-child(7) .event-header .badge { background-color: #f3f4f6; color: #4b5563; }
.upcoming-item:nth-child(6) .event-header .badge { background-color: #cccccc; color: #666666; }

.event-desc { font-size: 0.85rem; color: #6b7280; margin-bottom: 0.3rem !important; line-height: 1.4; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;}
.event-footer { display: flex; justify-content: space-between; font-size: 0.75rem; color: #6b7280;}
.event-footer .location { display: flex; align-items: center; gap: 0.35rem;}

.header-nav-arrows{ position: relative; right: 0; display: flex; gap: 20px; flex-direction: column; width: 70px; top:-5px;}
.custom-upcoming-prev{left:0;}
.custom-upcoming-next{right:0;}

.innerPageBannerBlock { position:relative; background-color: #f9f9f9; display: flex;}
.innerPageBannerBlock .featuredImage { position:relative; width: 100%;}
.innerPageBannerBlock .featuredImage img{ width: 100%; height: 270px; object-fit: cover; display: block;}
.innerPageBannerBlock .featuredImage::before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(rgba(15, 23, 42, 0.4), rgba(15, 23, 42, 0.2)); z-index:1;}

.innerPageBannerBlock .headingBreadcrumbBlock { position: relative; margin: 40px auto 10px auto;  max-width: 1240px; padding:0 1rem; box-sizing:border-box; display: flex; flex-direction: column; justify-content: space-between; align-items: start; gap:0;width: 100%;}
.innerPageBannerBlock .featuredImage ~ .headingBreadcrumbBlock { position: absolute; bottom: 0; left: 50%; transform: translate(-50%, 0); z-index:2;}

.innerPageBannerBlock .headingBreadcrumbBlock .eventDatesBlock { display:flex; gap:5px; background:#ff0022; padding:2px 10px; border-radius:4px;justify-self: start; align-items: center; font-size: .8rem; color: #fff;}

.innerPageBannerBlock .headingBreadcrumbBlock .eventDatesBlock .startDate { }
.innerPageBannerBlock .headingBreadcrumbBlock .eventDatesBlock .endDate { display:flex; gap:5px;}
.innerPageBannerBlock .headingBreadcrumbBlock .eventDatesBlock .endDate:before {content:'-';}

.innerPageBannerBlock .InnerPageHeading h1 {margin-bottom:.5rem;}
.innerPageBannerBlock .featuredImage ~ .headingBreadcrumbBlock .InnerPageHeading h1 { margin-bottom:.5rem; max-width: 600px;}

.innerPageBannerBlock .InnerPageHeading p { font-size:.85rem; max-width: 600px;}

.innerPageBannerBlock .InnerPageHeading .innerBannerBtnBlock { display:flex; gap:20px; flex-wrap:wrap; margin-bottom: 15px;}
.innerPageBannerBlock .featuredImage ~ .headingBreadcrumbBlock .InnerPageHeading .innerBannerBtnBlock { display:flex; gap:20px; flex-wrap:wrap;}

.innerPageBannerBlock .headingBreadcrumbBlock .InnerPageHeading .innerBannerBtnBlock .innerBannerBtn {display: flex; gap: 10px; align-items: baseline; border: 1px solid #ccc; color: #444; padding: 8px 10px; border-radius: 5px; background: #f5f5f5; font-size: .8rem; }
.innerPageBannerBlock .featuredImage ~ .headingBreadcrumbBlock .InnerPageHeading .innerBannerBtnBlock .innerBannerBtn { display: flex; gap: 10px; align-items: baseline; border: 1px solid #fbc35e; color: #fff; padding: 8px 10px; border-radius: 5px; background: rgba(0, 0, 0, .3); font-size: .8rem;}

.innerPageBannerBlock .InnerPageHeading .innerBannerBtnBlock .innerBannerBtn i {color:#555555;}
.innerPageBannerBlock .featuredImage ~ .headingBreadcrumbBlock .InnerPageHeading .innerBannerBtnBlock .innerBannerBtn i {color:#fbc35e;}


.foi-breadcrumb{display:flex; flex-wrap:wrap; justify-content: start; align-items:center; gap:6px; font-size:.8rem; color:#666; margin-bottom: 15px; display:none;}
.foi-breadcrumb a{ color:#666;text-decoration:none; transition:.3s;}
.foi-breadcrumb a:hover{color:#d62828;}
.foi-breadcrumb .separator{color:#999; font-size: 20px;line-height: 1;}



.innerPageBannerBlock .featuredImage ~ .headingBreadcrumbBlock .InnerPageHeading h1,
.innerPageBannerBlock .featuredImage ~ .headingBreadcrumbBlock .InnerPageHeading p,
.innerPageBannerBlock .featuredImage ~ .headingBreadcrumbBlock .foi-breadcrumb,
.innerPageBannerBlock .featuredImage ~ .headingBreadcrumbBlock .foi-breadcrumb a,
.innerPageBannerBlock .featuredImage ~ .headingBreadcrumbBlock .foi-breadcrumb .separator{ color:#fff;}

.innerPageBannerBlock .featuredImage ~ .headingBreadcrumbBlock .foi-breadcrumb a:hover{color:#fcfcfc;}





.contentArea{ display:flex; gap:30px; flex-wrap:wrap; padding: 1.5rem 1rem; max-width: 1240px; margin: 0 auto; width: 100%; }
.contentArea .content { flex:1;}
h1, .entry-content :where(h1) { font-size: clamp(1.5rem, 5vw, 2rem); font-weight: 700; margin-bottom:1.5rem;}
h2, .entry-content :where(h2) {font-size: clamp(1.3rem, 5vw, 1.4rem); font-weight: 700;}
h3, .entry-content :where(h3) { font-size: clamp(1.2rem, 5vw, 1.3rem); font-weight: 700;}
.elementor-widget-text-editor {color: #222222 !important;}
.elementor-widget-text-editor img {width:100%; max-width: 300px !important; margin: 5px 16px 16px 16px; border-radius: 5px !important; overflow: hidden; float: left;}
.elementor-widget-text-editor ul,.elementor-widget-text-editor ol{margin:0 0 1.5em  1.5em !important}
#ast-scroll-top {background-color: #ff0022;}


.sidebar { max-width:350px;}
.sidebar #secondary {margin: 0 0 1.5em;}
.sidebar #custom_html-7{ border: 1px solid #e5e7eb; border-radius: 0.5rem; padding: 1rem; background: #fff; position: relative; }
.sidebar .sidebar-main h2 { font-size: 1.3rem !important; background: #ff0000; margin: -1rem -1rem 1rem -1rem; border-radius: 5px 5px 0 0; padding: 8px 1rem; color: #fff; }
.sidebar .section-header h3 {font-size: 1.3rem;}
.sidebar .header-nav-arrows {position:absolute; right: 10px; width: 70px; top: 36px;}
.sidebar .event-header {flex-direction: column !important; align-items: start; gap: 2px;}
.sidebar .event-desc {-webkit-line-clamp: 1;}

.sidebar .relatedLinks li { font-size: .95rem; border-bottom: 1px solid #eee;}
.sidebar .relatedLinks li:last-child { border-bottom: 0;}
.sidebar .relatedLinks li a { font-weight:400; color:#f82a3e; display:flex; align-items:center; gap:8px; padding: 5px 0;  line-height: 1.8rem;justify-content: space-between; flex-direction: row-reverse;}
.sidebar .relatedLinks li a:before { content: "\f054"; color:#444; font-family: "Font Awesome 6 Free"; font-size:90%; font-weight: 900; }

.sidebar .relatedLinks li a:hover {color:#d41629;}
.sidebar .relatedLinks li a:hover:before {color:#222;}


/* Footer */
.footer-widget-area .ast-builder-html-element{ display:flex; gap:30px; justify-content:space-between; padding:0 20px; }
.footer-widget-area .ast-builder-html-element .footerMenuBlock h4{ margin-bottom:1rem; color:#fff; text-align:left;}
.footer-widget-area .ast-builder-html-element .footerMenuBlock ul{ margin:0; padding:0; display:flex; flex-direction:column; gap:5px; list-style:none; text-align:left;}
.footer-widget-area .ast-builder-html-element .footerMenuBlock ul a{color:#ffffff; font-size:.9rem; display:flex; gap:10px; align-items:baseline;}
.footer-widget-area .ast-builder-html-element .footerMenuBlock ul a .fa-solid{ font-size:.8rem; !important;}

.copyright, .copyright a {color:#fff; font-size:13px;}
.d-none { display:none !important;}

.translateSearchBlock{ display:flex; gap:10px; align-items:center;}

.search-wrapper {position:relative;}
#___gcse_0{ display:inline-table; margin:0; padding:0; width:195px !important; border-radius: 4px; overflow: hidden; }

table.gsc-search-box td { border: 0 !important;}
.gstl_50.gsc-input { table-layout: fixed; margin-bottom: 0 !important; border: 0 !important;}
table.gsc-search-box td {border-right: 0;}
.gsc-control-cse{padding:0 !important;}
.gsc-control-cse .table.gsc-search-box,
.gsc-control-cse form.gsc-search-box,
.gsc-control-cse table.gsc-search-box{margin:0 !important;}
.gsc-control-cse table.gsc-search-box input[type=text]{ margin-right:0 !important;}
.gsc-control-cse .gsc-search-button-v2{ padding:6px 12px; !important;}
.gsib_a{ padding: 4px 0 4px 36px !important; background-position: left 8px center !important;}
.gsib_a::before{ width:30px !important;}
.gsib_b { height:30px !important; width: 30px !important;}
.gsc-input { margin:0 !important;padding: 0 !important; }
.gsc-control-cse { background:transparent !important; border:transparent !important;}

/* Responsive */
@media (max-width: 1024px) {
 .stats-banner { flex-wrap: wrap; gap: 2rem; }
 .innerPageBannerBlock .featuredImage ~ .headingBreadcrumbBlock,
 .innerPageBannerBlock .headingBreadcrumbBlock {left: 10px; transform: translate(-10px, 0); flex-direction: column-reverse; gap: 0; align-items: start;}
}

@media (min-width: 922px) {
.site-content .ast-container { flex-direction:column;}
}

@media (max-width: 921px) {
.footer-widget-area[data-section="section-footer-menu"] .astra-footer-tablet-vertical-menu{ display: flex; justify-content: center;}
}

@media (max-width: 768px) {
.category-filter { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; }
.state-grid { grid-template-columns: repeat(2, 1fr); }
	


}

@media screen and (max-width:767px) {
	.ast-above-header-bar .ast-builder-grid-row { grid-template-columns: auto !important; gap: 5px !important;}
	.ast-above-header-bar .ast-grid-right-section { justify-content: center; display:none;}
	.search-wrapper {position:relative; max-width:360px; margin: 0 auto;}
	.ast-header-break-point .header-widget-area[data-section="sidebar-widgets-header-widget-1"] { width: 100%; }
	
	.ast-mobile-header-wrap .ast-mobile-header-content {margin-top: -50px;}
	.ast-builder-menu .main-navigation>ul {gap: 0;font-size: 1rem;}
	.main-header-menu > .menu-item > .menu-link { color: #222 !important; border-bottom: 1px dashed #ccc !important; }
	.main-header-menu > .menu-item > .menu-link i,.main-header-menu > .menu-item > .menu-link img { display:none;}
	.hero-buttons { flex-wrap:wrap;}
	.hero-buttons .btn { padding: 0.75rem;}
	
#masthead .ast-mobile-header-wrap .ast-below-header-bar { padding-left: 8px !important; padding-right: 8px !important; }

.search-wrapper {width: 200px !important;}
	
.ast-hfb-header .ast-builder-menu-mobile .main-navigation .menu-item .menu-link, .ast-hfb-header .ast-builder-menu-mobile .main-navigation .menu-item .sub-menu .menu-link {
     border-bottom: 1px dashed #ccc !important;
}
.translateSearchBlock { justify-content:center;}
	
	.footer-widget-area .ast-builder-html-element { flex-direction:column;}
	
}

@media (max-width: 480px) {
.category-filter { grid-template-columns: repeat(2, 1fr); }
.stat-item{width: calc(50% - 16px);}
.custom-nav-btn { display: none; }
.festival-carousel-container .custom-nav-btn,.header-nav-arrows .custom-nav-btn { display: flex; }
.section-header { display:block;}
.section-header h3 {font-size: 1.3rem;}
.header-nav-arrows { position: absolute; width:85px; right: 10px; flex-direction: column; top: 35px; }
.upcoming-item .event-header .badge { display:none;}

.elementor-widget-text-editor img { max-width: inherit !important;  margin:0; float: inherit;}

 .innerPageBannerBlock .featuredImage ~ .headingBreadcrumbBlock,
 .innerPageBannerBlock .headingBreadcrumbBlock {margin: 20px auto 0 auto;}
.innerPageBannerBlock .foi-breadcrumb { display:none;}
	
}


@media screen and (max-width:480px) {
	.search-wrapper {position:relative; max-width:inherit;}
	.ast-footer-copyright { text-align: center; }
}






.formAreaBlock{
    display:flex;
    gap:30px;
    align-items:flex-start;
}

/* Left Sidebar */

.festivalsList{
    width:360px;
    background:#fff;
    border-radius:12px;
    box-shadow:0 8px 30px rgba(0,0,0,.08);
    padding:20px;
}

#pageListInput{
    width:100%;
    padding:12px 15px;
    border:1px solid #ddd;
    border-radius:8px;
    font-size:15px;
    outline:none;
    transition:.3s;
}

#pageListInput:focus{
    border-color:#0d6efd;
    box-shadow:0 0 0 3px rgba(13,110,253,.15);
}

#pageListGroup{
    margin-top:15px;
    display:flex;
    flex-direction:column;
    gap:8px;
    height:1000px;
    overflow:auto;
}

#pageListGroup::-webkit-scrollbar{
    width:8px;
}

#pageListGroup::-webkit-scrollbar-thumb{
    background:#c5c5c5;
    border-radius:20px;
}

#pageListGroup a{
    display:block;
    padding:12px 15px;
    text-decoration:none;
    color:#444;
    background:#f8f9fa;
    border-radius:8px;
    transition:.25s;
    overflow-wrap:break-word;
    word-break:break-word;
}

#pageListGroup a:hover{
    background:#0d6efd;
    color:#fff;
    transform:translateX(5px);
}

/* Right Form */

.pageForm{
    flex:1;
    background:#fff;
    border-radius:12px;
    padding:30px;
    box-shadow:0 8px 30px rgba(0,0,0,.08);
}

.fieldGroup{
    margin-bottom:20px;
}

.fieldGroup label{
    display:block;
    margin-bottom:8px;
    font-weight:600;
    color:#333;
}

.fieldGroup .form-control{
    width:100%;
    padding:5px 15px;
    border:1px solid #ddd;
    border-radius:8px;
    transition:.3s;
    font-size:15px;
}

.fieldGroup .form-control:focus{
    outline:none;
    border-color:#0d6efd;
    box-shadow:0 0 0 3px rgba(13,110,253,.15);
}

.fieldGroup .errorFiledMesage{
    margin-top:5px;
    color:#dc3545;
    font-size:13px;
}

.featuredImgPreivew{
    border:2px dashed #ddd;
    border-radius:10px;
    padding:20px;
    text-align:center;
    min-height:180px;
    background:#fafafa;
}

.formAreaBlock  .button{
    display:inline-block;
    padding:12px 30px;
    background:#0d6efd;
    color:#fff;
    border:none;
    border-radius:8px;
    cursor:pointer;
    font-weight:600;
    transition:.3s;
}

.formAreaBlock .button:hover{
    background:#084fc7;
}

.formAreaBlock .form-check {
	display: flex;
    align-items: baseline;
    gap: 5px;
    line-height: 1rem;
}

.charCount{
    margin-top:6px;
    text-align:right;
    font-size:13px;
    color:#666;
}

@media(max-width:900px){

.formAreaBlock{
    flex-direction:column;
}

.festivalsList{
    width:100%;
}

#pageListGroup{
    height:300px;
}

}



@media screen and (min-width: 900px) {
    .dateFieldsBlock{
        display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
        gap:15px;
    }
	.locationTypeBlock{
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 15px;
}
}