/**
 * Frontend styles for Bunts Group Intro
 */

/* =====================================================
   CONTAINER LAYOUT - SINGLE COLUMN FULL WIDTH
   ===================================================== */
.bunts-intro-tab-container {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Override any BuddyBoss grid layout */
.groups-single #item-body .bunts-intro-tab-container,
.single-group .bunts-intro-tab-container {
	display: block !important;
	grid-template-columns: none !important;
}

/* =====================================================
   LEAD FORM - FULL WIDTH TOP SECTION (ACTION-ORIENTED)
   ===================================================== */
.bunts-intro-lead-section {
	width: 100%;
	margin-bottom: 30px;
	padding: 0;
}

.bunts-lead-form-wrapper {
	background: linear-gradient(135deg, #ff6b35 0%, #f7931e 50%, #ff8c42 100%);
	border-radius: 16px;
	padding: 0;
	box-shadow: 0 8px 32px rgba(255, 107, 53, 0.35);
	border: none;
	position: relative;
	overflow: hidden;
}

/* Hero Banner Image */
.bunts-lead-hero-banner {
	width: 100%;
	height: 200px;
	overflow: hidden;
	position: relative;
}

.bunts-lead-hero-image {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	display: block;
}

/* Gradient overlay on image */
.bunts-lead-hero-banner::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 60px;
	background: linear-gradient(to top, rgba(247, 147, 30, 0.9) 0%, transparent 100%);
	pointer-events: none; /* CRITICAL: Allow touches through */
}

/* Form Content area */
.bunts-lead-form-content {
	padding: 30px 40px 35px;
	position: relative;
	z-index: 10; /* Above shine overlay */
}

/* Animated shine effect */
.bunts-lead-form-wrapper::before {
	content: '';
	position: absolute;
	top: 0;
	left: -100%;
	width: 100%;
	height: 100%;
	background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
	animation: shine 3s infinite;
	pointer-events: none; /* CRITICAL: Allow touches through overlay */
	z-index: 1; /* Stay below form content */
}

@keyframes shine {
	0% { left: -100%; }
	50%, 100% { left: 100%; }
}

/* Update wizard title color for orange background */
.bunts-lead-form-wrapper .bunts-wizard-title {
	color: #fff !important;
	text-shadow: 0 2px 4px rgba(0,0,0,0.15);
}

.bunts-lead-form-wrapper .bunts-wizard-subtitle {
	color: rgba(255,255,255,0.95) !important;
}

/* Urgency badge */
.bunts-lead-form-wrapper .bunts-urgency-badge {
	display: inline-block;
	background: #dc2626;
	color: #fff;
	padding: 4px 12px;
	border-radius: 20px;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	margin-bottom: 12px;
	animation: pulse-badge 2s infinite;
}

@keyframes pulse-badge {
	0%, 100% { transform: scale(1); }
	50% { transform: scale(1.05); }
}

/* Form labels on orange background */
.bunts-lead-form-wrapper .bunts-form-group label {
	color: #fff !important;
	font-weight: 600;
	text-shadow: 0 1px 2px rgba(0,0,0,0.1);
}

/* Input field styling - white with shadow */
.bunts-lead-form-wrapper input[type="email"],
.bunts-lead-form-wrapper input[type="text"],
.bunts-lead-form-wrapper input[type="tel"] {
	background: #fff !important;
	border: 3px solid rgba(255,255,255,0.5) !important;
	border-radius: 12px !important;
	padding: 16px 20px !important;
	font-size: 16px !important;
	box-shadow: 0 4px 12px rgba(0,0,0,0.1);
	transition: all 0.3s ease;
}

.bunts-lead-form-wrapper input:focus {
	border-color: #fff !important;
	box-shadow: 0 0 0 4px rgba(255,255,255,0.3), 0 4px 12px rgba(0,0,0,0.1) !important;
	transform: scale(1.02);
}

.bunts-lead-form-wrapper input::placeholder {
	color: #999;
}

/* CTA Button - Green with pulse animation */
.bunts-lead-form-wrapper .bunts-btn-primary,
.bunts-lead-form-wrapper .bunts-btn-next {
	background: linear-gradient(135deg, #10b981 0%, #059669 100%) !important;
	color: #fff !important;
	border: none !important;
	padding: 16px 32px !important;
	font-size: 17px !important;
	font-weight: 700 !important;
	border-radius: 12px !important;
	cursor: pointer;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	box-shadow: 0 6px 20px rgba(16, 185, 129, 0.4);
	transition: all 0.3s ease;
	animation: pulse-cta 2s infinite;
	position: relative;
	overflow: hidden;
}

.bunts-lead-form-wrapper .bunts-btn-primary:hover,
.bunts-lead-form-wrapper .bunts-btn-next:hover {
	transform: translateY(-3px) scale(1.02);
	box-shadow: 0 10px 30px rgba(16, 185, 129, 0.5);
	animation: none;
}

@keyframes pulse-cta {
	0%, 100% { 
		box-shadow: 0 6px 20px rgba(16, 185, 129, 0.4);
	}
	50% { 
		box-shadow: 0 6px 30px rgba(16, 185, 129, 0.6), 0 0 20px rgba(16, 185, 129, 0.3);
	}
}

/* Arrow icon in button */
.bunts-lead-form-wrapper .bunts-btn-primary::after,
.bunts-lead-form-wrapper .bunts-btn-next::after {
	content: ' →';
	margin-left: 8px;
	transition: transform 0.2s;
}

.bunts-lead-form-wrapper .bunts-btn-primary:hover::after,
.bunts-lead-form-wrapper .bunts-btn-next:hover::after {
	transform: translateX(4px);
}

/* =====================================================
   COMPACT LEAD FORM - DESKTOP: Side by Side Layout
   ===================================================== */
.bunts-compact-lead {
	display: grid;
	grid-template-columns: 1.2fr 1fr;
	gap: 40px;
	align-items: center;
}

/* Left side - Text content */
.bunts-compact-lead-text {
	text-align: left;
}

.bunts-compact-lead-text .bunts-urgency-badge {
	display: inline-block;
	background: rgba(0,0,0,0.25);
	color: #fff;
	padding: 6px 16px;
	border-radius: 20px;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 1px;
	margin-bottom: 15px;
	border: 1px solid rgba(255,255,255,0.3);
}

.bunts-compact-lead-text h3 {
	color: #fff !important;
	font-size: 1.75rem;
	font-weight: 800;
	margin: 0 0 12px 0;
	text-shadow: 0 2px 8px rgba(0,0,0,0.2);
	line-height: 1.25;
}

.bunts-compact-lead-text > p {
	color: rgba(255,255,255,0.95);
	font-size: 1.1rem;
	margin: 0;
	line-height: 1.6;
	text-shadow: 0 1px 3px rgba(0,0,0,0.15);
}

.bunts-compact-lead-text p strong {
	color: #fff;
	font-weight: 700;
	text-decoration: underline;
	text-decoration-color: rgba(255,255,255,0.5);
	text-underline-offset: 3px;
}

/* Right side - Form section */
.bunts-compact-lead-form {
	display: flex;
	flex-direction: column;
	gap: 12px;
	background: rgba(255,255,255,0.15);
	padding: 25px;
	border-radius: 16px;
	backdrop-filter: blur(10px);
	border: 1px solid rgba(255,255,255,0.2);
}

.bunts-compact-lead-form input[type="email"] {
	width: 100%;
	padding: 16px 20px !important;
	border: 2px solid rgba(255,255,255,0.3) !important;
	border-radius: 10px !important;
	font-size: 16px !important;
	background: #fff !important;
	box-shadow: 0 4px 15px rgba(0,0,0,0.15);
	box-sizing: border-box;
	transition: all 0.2s ease;
}

.bunts-compact-lead-form input[type="email"]:focus {
	border-color: #fff !important;
	box-shadow: 0 4px 20px rgba(0,0,0,0.2), 0 0 0 3px rgba(255,255,255,0.3) !important;
	transform: scale(1.01);
}

.bunts-compact-lead-form input[type="email"]::placeholder {
	color: #888;
}

.bunts-compact-connect-btn {
	width: 100%;
	background: linear-gradient(135deg, #059669 0%, #047857 100%) !important;
	color: #fff !important;
	border: none !important;
	padding: 16px 28px !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	border-radius: 10px !important;
	cursor: pointer;
	white-space: nowrap;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	box-shadow: 0 6px 20px rgba(5, 150, 105, 0.5);
	transition: all 0.3s ease;
	position: relative;
	overflow: visible; /* Changed from hidden to allow proper touch */
	z-index: 100; /* Ensure button is on top */
	/* Mobile touch fixes */
	-webkit-tap-highlight-color: rgba(5, 150, 105, 0.3);
	-webkit-touch-callout: none;
	touch-action: manipulation;
}

/* Remove the ::after arrow since we have it in text */
.bunts-compact-connect-btn::after {
	content: ' →';
	margin-left: 8px;
}

.bunts-compact-connect-btn:hover {
	transform: translateY(-2px);
	box-shadow: 0 8px 25px rgba(5, 150, 105, 0.6);
	background: linear-gradient(135deg, #10b981 0%, #059669 100%) !important;
}

/* Trust signal - inside form section */
.bunts-trust-signal {
	color: rgba(255,255,255,0.95);
	font-size: 12px;
	margin: 5px 0 0 0;
	text-align: center;
	font-weight: 500;
}

.bunts-trust-signal strong {
	color: #fff;
}

/* Tablet - stack vertically */
@media (max-width: 900px) {
	.bunts-compact-lead {
		display: flex;
		flex-direction: column;
		gap: 25px;
	}
	
	.bunts-compact-lead-text {
		text-align: center;
	}
	
	.bunts-compact-lead-form {
		width: 100%;
		max-width: 420px;
		margin: 0 auto;
	}
}

/* Mobile */
@media (max-width: 768px) {
	.bunts-lead-form-wrapper {
		border-radius: 12px;
	}
	
	.bunts-lead-hero-banner {
		height: 150px;
	}
	
	.bunts-lead-form-content {
		padding: 20px;
	}
	
	.bunts-compact-lead-text h3 {
		font-size: 1.4rem;
	}
	
	.bunts-compact-lead-text > p {
		font-size: 1rem;
	}
	
	.bunts-compact-lead-form {
		padding: 20px;
	}
	
	.bunts-compact-connect-btn {
		padding: 14px 24px !important;
		font-size: 15px !important;
	}
	
	.bunts-lead-form-wrapper .bunts-btn-primary,
	.bunts-lead-form-wrapper .bunts-btn-next {
		width: 100%;
		padding: 14px 24px !important;
	}
}

/* =====================================================
   MAIN CONTENT - FULL WIDTH BELOW
   ===================================================== */
.bunts-main-content {
	width: 100% !important;
	max-width: 100% !important;
	display: block !important;
	min-width: 0;
}

/* Legacy sidebar support - hidden by default */
.bunts-intro-sidebar {
	display: none !important;
}

/* Sections */
.bunts-section {
	margin-bottom: 40px;
	padding-bottom: 40px;
	border-bottom: 1px solid #e0e0e0;
}

/* =====================================================
   SECTION HEADER - Improved Alignment
   ===================================================== */
.bunts-section-header {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 20px;
	margin-bottom: 25px;
	flex-wrap: wrap;
}

.bunts-section-header .bb-title {
	margin: 0 !important;
	padding: 0 !important;
}

.bunts-view-more {
	color: #2563eb;
	font-size: 14px;
	text-decoration: none;
	font-weight: 600;
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 6px 14px;
	background: #eff6ff;
	border-radius: 20px;
	transition: all 0.2s ease;
}

.bunts-view-more:hover {
	background: #dbeafe;
	color: #1d4ed8;
	text-decoration: none;
}

.bunts-inherited-badge {
	font-size: 12px;
	color: #64748b;
	background: #f1f5f9;
	padding: 4px 12px;
	border-radius: 12px;
	margin-left: auto;
}

/* =====================================================
   KEY BENEFITS GRID - Alternating Colors
   ===================================================== */
.bunts-benefits-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
}

@media (max-width: 992px) {
	.bunts-benefits-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 600px) {
	.bunts-benefits-grid {
		grid-template-columns: 1fr;
	}
}

.bunts-benefit-card {
	padding: 28px;
	border-radius: 16px;
	text-align: center;
	transition: all 0.3s ease;
	border: none;
	position: relative;
	overflow: hidden;
}

/* Alternating background colors */
.bunts-benefit-card:nth-child(1) {
	background: linear-gradient(135deg, #eff6ff 0%, #dbeafe 100%);
}

.bunts-benefit-card:nth-child(2) {
	background: linear-gradient(135deg, #f0fdf4 0%, #dcfce7 100%);
}

.bunts-benefit-card:nth-child(3) {
	background: linear-gradient(135deg, #fef3c7 0%, #fde68a 100%);
}

.bunts-benefit-card:nth-child(4) {
	background: linear-gradient(135deg, #fce7f3 0%, #fbcfe8 100%);
}

.bunts-benefit-card:nth-child(5) {
	background: linear-gradient(135deg, #e0e7ff 0%, #c7d2fe 100%);
}

.bunts-benefit-card:nth-child(6) {
	background: linear-gradient(135deg, #ccfbf1 0%, #99f6e4 100%);
}

.bunts-benefit-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 12px 30px rgba(0,0,0,0.12);
}

.bunts-benefit-icon {
	width: 60px;
	height: 60px;
	background: #fff;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto 18px;
	box-shadow: 0 4px 15px rgba(0,0,0,0.08);
}

.bunts-benefit-icon .dashicons {
	font-size: 28px;
	width: 28px;
	height: 28px;
	color: #2563eb;
}

.bunts-benefit-card strong {
	display: block;
	font-size: 16px;
	font-weight: 700;
	color: #1e293b;
	margin-bottom: 10px;
}

.bunts-benefit-card p {
	font-size: 14px;
	color: #475569;
	line-height: 1.5;
	margin: 0;
}

/* =====================================================
   SUBGROUPS GRID - BuddyBoss Style Cards (3 per row)
   ===================================================== */
.bunts-subgroups-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
}

@media (max-width: 992px) {
	.bunts-subgroups-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 600px) {
	.bunts-subgroups-grid {
		grid-template-columns: 1fr;
	}
}

.bunts-subgroup-card {
	background: #fff;
	border-radius: 12px;
	border: 1px solid #e2e8f0;
	padding: 20px;
	text-align: center;
	transition: transform 0.2s, box-shadow 0.2s;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.bunts-subgroup-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 8px 30px rgba(0, 0, 0, 0.1);
}

.bunts-subgroup-avatar {
	display: block;
	margin-bottom: 15px;
}

.bunts-subgroup-avatar img {
	width: 80px;
	height: 80px;
	border-radius: 50%;
	object-fit: cover;
	border: 3px solid #f1f5f9;
}

.bunts-subgroup-info {
	flex: 1;
}

.bunts-subgroup-title {
	margin: 0 0 8px 0;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.3;
}

.bunts-subgroup-title a {
	color: #1a1a2e;
	text-decoration: none;
}

.bunts-subgroup-title a:hover {
	color: #2563eb;
}

.bunts-subgroup-desc {
	font-size: 13px;
	color: #64748b;
	margin: 0 0 12px 0;
	line-height: 1.4;
}

.bunts-subgroup-meta {
	font-size: 12px;
	color: #94a3b8;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 5px;
}

.bunts-subgroup-meta .dashicons {
	font-size: 14px;
	width: 14px;
	height: 14px;
}

/* Gallery Grid */
/* Gallery Grid - Override BuddyBoss styles */
.bunts-gallery-grid,
.bunts-gallery-grid.bb-media-container {
	display: grid !important;
	grid-template-columns: repeat(6, 1fr) !important;
	gap: 6px !important;
	list-style: none !important;
	padding: 0 !important;
	margin: 0 !important;
}

@media (max-width: 992px) {
	.bunts-gallery-grid,
	.bunts-gallery-grid.bb-media-container {
		grid-template-columns: repeat(4, 1fr) !important;
	}
}

@media (max-width: 600px) {
	.bunts-gallery-grid,
	.bunts-gallery-grid.bb-media-container {
		grid-template-columns: repeat(3, 1fr) !important;
		gap: 4px !important;
	}
}

.bunts-gallery-grid .bunts-gallery-item,
.bunts-gallery-grid .bb-photo-thumb {
	aspect-ratio: 1 !important;
	overflow: hidden !important;
	border-radius: 4px !important;
	width: 100% !important;
	height: auto !important;
	max-width: none !important;
	padding: 0 !important;
	margin: 0 !important;
}

.bunts-gallery-grid .bunts-gallery-item img,
.bunts-gallery-grid .bb-photo-thumb img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	transition: transform 0.3s;
	max-width: none !important;
}

.bunts-gallery-grid .bunts-gallery-item:hover img,
.bunts-gallery-grid .bb-photo-thumb:hover img {
	transform: scale(1.1);
}

/* =====================================================
   TESTIMONIALS GRID - Premium Card Design
   ===================================================== */
.bunts-testimonials-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 25px;
}

@media (max-width: 992px) {
	.bunts-testimonials-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 600px) {
	.bunts-testimonials-grid {
		grid-template-columns: 1fr;
	}
}

.bunts-testimonial-card {
	background: #fff;
	padding: 28px;
	border-radius: 16px;
	border: 1px solid #e2e8f0;
	display: flex;
	flex-direction: column;
	transition: all 0.3s ease;
	position: relative;
	box-shadow: 0 2px 8px rgba(0,0,0,0.04);
}

.bunts-testimonial-card::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 4px;
	background: linear-gradient(90deg, #2563eb 0%, #7c3aed 100%);
	border-radius: 16px 16px 0 0;
}

.bunts-testimonial-card:hover {
	transform: translateY(-6px);
	box-shadow: 0 15px 40px rgba(37, 99, 235, 0.12);
	border-color: #dbeafe;
}

.bunts-testimonial-quote {
	flex: 1;
	position: relative;
	padding-left: 20px;
}

.bunts-quote-icon {
	font-size: 60px;
	font-family: Georgia, serif;
	color: #2563eb;
	opacity: 0.15;
	line-height: 1;
	position: absolute;
	top: -10px;
	left: -5px;
}

.bunts-testimonial-quote p {
	font-style: italic;
	font-size: 15px;
	line-height: 1.7;
	color: #374151;
	margin: 0;
	position: relative;
	z-index: 1;
}

.bunts-testimonial-author {
	display: flex;
	align-items: center;
	gap: 14px;
	margin-top: 24px;
	padding-top: 20px;
	border-top: 1px solid #f1f5f9;
}

.bunts-author-avatar {
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: linear-gradient(135deg, #3b82f6 0%, #1d4ed8 100%);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	box-shadow: 0 4px 12px rgba(37, 99, 235, 0.25);
}

.bunts-author-avatar .dashicons {
	color: #fff;
	font-size: 22px;
	width: 22px;
	height: 22px;
}

.bunts-author-info {
	display: flex;
	flex-direction: column;
	gap: 3px;
}

.bunts-author-info strong {
	font-size: 15px;
	font-weight: 700;
	color: #1e293b;
}

.bunts-author-role {
	font-size: 12px;
	color: #64748b;
	line-height: 1.4;
}

/* Star rating */
.bunts-star-rating {
	display: flex;
	gap: 2px;
	margin-top: 8px;
}

.bunts-star-rating .dashicons {
	font-size: 14px;
	width: 14px;
	height: 14px;
	color: #fbbf24;
}

/* =====================================================
   OTHER INSTITUTES SECTION
   ===================================================== */
#other-institutes {
	overflow: hidden;
	width: 100%;
	max-width: 100%;
}

.bunts-other-institutes-grid {
	display: grid !important;
	grid-template-columns: repeat(2, 1fr) !important;
	gap: 16px;
	width: 100%;
	max-width: 100%;
	overflow: hidden;
}

@media (min-width: 993px) {
	.bunts-other-institutes-grid {
		grid-template-columns: repeat(3, 1fr) !important;
	}
}

@media (max-width: 600px) {
	.bunts-other-institutes-grid {
		grid-template-columns: 1fr !important;
	}
}

.bunts-institute-card {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 16px 20px;
	background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
	border-radius: 12px;
	border: 1px solid #e2e8f0;
	text-decoration: none;
	transition: all 0.3s ease;
	min-width: 0; /* Allow flex item to shrink */
	overflow: hidden;
}

.bunts-institute-card:hover {
	background: linear-gradient(135deg, #eff6ff 0%, #dbeafe 100%);
	border-color: #bfdbfe;
	transform: translateY(-2px);
	box-shadow: 0 6px 20px rgba(37, 99, 235, 0.1);
}

.bunts-institute-avatar {
	flex-shrink: 0;
}

.bunts-institute-avatar img {
	width: 60px;
	height: 60px;
	border-radius: 12px;
	object-fit: cover;
	border: 2px solid #fff;
	box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

.bunts-institute-info {
	flex: 1;
	min-width: 0;
	overflow: hidden;
}

.bunts-institute-info h4 {
	margin: 0 0 6px 0;
	font-size: 14px;
	font-weight: 600;
	color: #1e293b;
	line-height: 1.3;
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	white-space: normal;
	word-break: break-word;
}

.bunts-institute-card:hover .bunts-institute-info h4 {
	color: #2563eb;
}

.bunts-institute-members {
	display: flex;
	align-items: center;
	gap: 4px;
	font-size: 12px;
	color: #64748b;
}

.bunts-institute-members .dashicons {
	font-size: 14px;
	width: 14px;
	height: 14px;
	color: #94a3b8;
}

/* Child Groups - Legacy (kept for backwards compatibility) */
.bunts-child-groups-list {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
}

@media (max-width: 992px) {
	.bunts-child-groups-list {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 600px) {
	.bunts-child-groups-list {
		grid-template-columns: 1fr;
	}
}

.bunts-group-card-row {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 12px;
	padding: 20px;
	background: #fff;
	border-radius: 12px;
	border: 1px solid #e2e8f0;
	transition: transform 0.2s, box-shadow 0.2s;
}

.bunts-group-card-row:hover {
	transform: translateY(-4px);
	box-shadow: 0 8px 30px rgba(0, 0, 0, 0.1);
}

.bunts-group-avatar img {
	width: 80px;
	height: 80px;
	border-radius: 50%;
	border: 3px solid #f1f5f9;
}

.bunts-group-info {
	text-align: center;
}

.bunts-group-info h4 {
	margin: 0 0 8px 0;
	font-size: 16px;
}

.bunts-group-info h4 a {
	color: #1a1a2e;
	text-decoration: none;
}

.bunts-group-info h4 a:hover {
	color: #2563eb;
}

.bunts-group-info small {
	color: #64748b;
	font-size: 13px;
	line-height: 1.4;
	display: block;
}

/* News Feed */
.bunts-news-feed-card {
	background: #fff;
	border: 1px solid #e0e0e0;
	border-radius: 12px;
	padding: 20px;
	margin-bottom: 15px;
}

.bunts-feed-header {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 15px;
}

.bunts-feed-avatar img {
	width: 36px;
	height: 36px;
	border-radius: 50%;
}

.bunts-feed-meta strong a {
	color: #1a1a2e;
	text-decoration: none;
}

.bunts-feed-time {
	display: block;
	font-size: 12px;
	color: #999;
}

.bunts-feed-time a {
	color: inherit;
	text-decoration: none;
}

.bunts-feed-content {
	margin-bottom: 15px;
	line-height: 1.6;
}

.bunts-feed-media {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 5px;
	margin-bottom: 15px;
}

.bunts-feed-media-item img {
	width: 100%;
	height: 100px;
	object-fit: cover;
	border-radius: 6px;
}

.bunts-feed-actions {
	display: flex;
	gap: 20px;
	padding-top: 15px;
	border-top: 1px solid #f0f0f0;
}

.bunts-feed-actions a {
	display: flex;
	align-items: center;
	gap: 5px;
	color: #666;
	text-decoration: none;
	font-size: 14px;
}

/* Landing Header - High Specificity */
.bunts-intro-tab-container .bunts-landing-header,
.groups-single .bunts-landing-header,
.single-group .bunts-landing-header,
.bunts-landing-header {
	background: linear-gradient(135deg, #1a1a2e 0%, #2563eb 100%) !important;
	color: #ffffff !important;
	padding: 40px !important;
	border-radius: 12px;
	margin-bottom: 30px;
	grid-column: 1 / -1;
}

.bunts-intro-tab-container .bunts-landing-header .bunts-landing-heading,
.groups-single .bunts-landing-header .bunts-landing-heading,
.single-group .bunts-landing-header .bunts-landing-heading,
.bunts-landing-header .bunts-landing-heading,
h1.bunts-landing-heading,
.bunts-landing-heading {
	font-size: 32px !important;
	margin: 0 0 10px 0 !important;
	color: #ffffff !important;
	font-weight: 600;
}

.bunts-intro-tab-container .bunts-landing-header .bunts-landing-subheading,
.groups-single .bunts-landing-header .bunts-landing-subheading,
.single-group .bunts-landing-header .bunts-landing-subheading,
.bunts-landing-header .bunts-landing-subheading,
p.bunts-landing-subheading,
.bunts-landing-subheading {
	font-size: 18px !important;
	margin: 0 !important;
	opacity: 0.95;
	color: #ffffff !important;
	font-weight: 400;
}

/* Ensure ALL text in header is white - ultra-high specificity */
.bunts-landing-header,
.bunts-landing-header *,
.bunts-landing-header h1,
.bunts-landing-header h2,
.bunts-landing-header h3,
.bunts-landing-header h4,
.bunts-landing-header p,
.bunts-landing-header span,
.bunts-landing-header div,
.bunts-landing-header-content,
.bunts-landing-header-content *,
#item-body .bunts-landing-header h1,
#item-body .bunts-landing-header p {
	color: #ffffff !important;
}

/* Thank You Page */
.bunts-thank-you-page {
	max-width: 600px;
	margin: 0 auto;
	padding: 40px 20px;
	text-align: center;
}

.bunts-thank-you-icon {
	font-size: 80px;
	color: #28a745;
	margin-bottom: 20px;
}

.bunts-thank-you-icon .dashicons {
	width: 80px;
	height: 80px;
	font-size: 80px;
}

.bunts-thank-you-title {
	font-size: 36px;
	margin: 0 0 20px 0;
	color: #1a1a2e;
}

.bunts-thank-you-message {
	font-size: 18px;
	color: #666;
	margin-bottom: 30px;
}

.bunts-booking-confirmation {
	background: #f8f9fa;
	padding: 25px;
	border-radius: 12px;
	margin: 30px 0;
	text-align: left;
}

.bunts-booking-confirmation h3 {
	margin: 0 0 15px 0;
	color: #1a1a2e;
}

.bunts-booking-info-item {
	display: flex;
	align-items: center;
	gap: 15px;
	padding: 10px 0;
	border-bottom: 1px solid #e0e0e0;
}

.bunts-booking-info-item:last-child {
	border-bottom: none;
}

.bunts-booking-info-item .dashicons {
	color: #2563eb;
	font-size: 24px;
	width: 24px;
	height: 24px;
}

.bunts-thank-you-details {
	text-align: left;
	background: #f8f9fa;
	padding: 25px;
	border-radius: 12px;
	margin: 30px 0;
}

.bunts-thank-you-details h3 {
	margin: 0 0 15px 0;
}

.bunts-thank-you-details ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.bunts-thank-you-details li {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 10px 0;
}

.bunts-thank-you-details .dashicons {
	color: #2563eb;
}

.bunts-thank-you-actions {
	display: flex;
	justify-content: center;
	gap: 15px;
	margin-top: 30px;
}

.bunts-thank-you-actions .button {
	padding: 12px 25px;
	text-decoration: none;
	border-radius: 8px;
	font-weight: 500;
}

.bunts-thank-you-actions .button.primary {
	background: #2563eb;
	color: #fff;
	border: none;
}

.bunts-thank-you-actions .button.outline {
	background: transparent;
	color: #2563eb;
	border: 2px solid #2563eb;
}

/* Booking Page */
.bunts-booking-page {
	max-width: 700px;
	margin: 0 auto;
	padding: 20px;
}

.bunts-booking-header {
	text-align: center;
	margin-bottom: 40px;
}

.bunts-booking-title {
	font-size: 28px;
	margin: 0 0 10px 0;
}

.bunts-booking-subtitle {
	color: #666;
}

.bunts-date-selector {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.bunts-date-option {
	cursor: pointer;
}

.bunts-date-option input {
	display: none;
}

.bunts-date-display {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 15px;
	border: 2px solid #e0e0e0;
	border-radius: 12px;
	min-width: 80px;
	transition: all 0.2s;
}

.bunts-date-option input:checked + .bunts-date-display {
	border-color: #2563eb;
	background: rgba(37, 99, 235, 0.05);
}

.bunts-date-day {
	font-size: 12px;
	color: #666;
	text-transform: uppercase;
}

.bunts-date-number {
	font-size: 24px;
	font-weight: bold;
	color: #1a1a2e;
}

.bunts-date-month {
	font-size: 12px;
	color: #666;
}

.bunts-date-slots {
	font-size: 10px;
	color: #28a745;
	margin-top: 5px;
}

.bunts-time-selector {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 10px;
}

.bunts-booking-type-selector {
	display: flex;
	gap: 15px;
}

.bunts-booking-type-option {
	flex: 1;
	cursor: pointer;
}

.bunts-booking-type-option input {
	display: none;
}

.bunts-booking-type-display {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 25px;
	border: 2px solid #e0e0e0;
	border-radius: 12px;
	text-align: center;
	transition: all 0.2s;
}

.bunts-booking-type-option input:checked + .bunts-booking-type-display {
	border-color: #2563eb;
	background: rgba(37, 99, 235, 0.05);
}

.bunts-booking-type-display .dashicons {
	font-size: 36px;
	width: 36px;
	height: 36px;
	color: #2563eb;
	margin-bottom: 10px;
}

.bunts-booking-actions {
	display: flex;
	justify-content: space-between;
	margin-top: 30px;
	padding-top: 20px;
	border-top: 1px solid #e0e0e0;
}

/* =====================================================
   BLOG CARD IN COMMUNITY UPDATES
   ===================================================== */
.bunts-blog-activity .bunts-feed-type {
	display: block;
	font-size: 12px;
	color: #666;
	font-weight: normal;
}

.bunts-blog-card {
	background: #f8fafc;
	border-radius: 12px;
	overflow: hidden;
	margin: 15px 0;
	border: 1px solid #e2e8f0;
	transition: box-shadow 0.2s, transform 0.2s;
}

.bunts-blog-card:hover {
	box-shadow: 0 4px 15px rgba(0,0,0,0.08);
	transform: translateY(-2px);
}

.bunts-blog-thumbnail {
	display: block;
	width: 100%;
	height: 160px;
	overflow: hidden;
}

.bunts-blog-thumbnail img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.3s;
}

.bunts-blog-card:hover .bunts-blog-thumbnail img {
	transform: scale(1.05);
}

.bunts-blog-card-content {
	padding: 16px 20px;
}

.bunts-blog-title {
	margin: 0 0 8px 0;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.4;
}

.bunts-blog-title a {
	color: #1a1a2e;
	text-decoration: none;
}

.bunts-blog-title a:hover {
	color: #2563eb;
}

.bunts-blog-excerpt {
	margin: 0 0 12px 0;
	font-size: 14px;
	color: #64748b;
	line-height: 1.5;
}

.bunts-blog-read-more {
	display: inline-flex;
	align-items: center;
	font-size: 14px;
	font-weight: 500;
	color: #2563eb;
	text-decoration: none;
}

.bunts-blog-read-more:hover {
	text-decoration: underline;
}

.bunts-no-activities {
	text-align: center;
	padding: 30px 20px;
	color: #64748b;
	font-size: 14px;
}

/* =====================================================
   COMPACT LEAD FORM - STEP 1
   ===================================================== */
.bunts-compact-lead {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 20px;
}

.bunts-compact-lead-text {
	flex: 1;
	min-width: 250px;
}

.bunts-compact-lead-text h3 {
	margin: 0 0 4px 0;
	font-size: 20px;
	font-weight: 600;
	color: #1e293b;
}

.bunts-compact-lead-text p {
	margin: 0;
	font-size: 14px;
	color: #64748b;
}

.bunts-compact-lead-form {
	flex: 1;
	display: flex;
	gap: 12px;
	min-width: 300px;
}

.bunts-compact-lead-form input[type="email"] {
	flex: 1;
	padding: 14px 18px;
	border: 2px solid #e2e8f0;
	border-radius: 10px;
	font-size: 15px;
	transition: border-color 0.2s, box-shadow 0.2s;
}

.bunts-compact-lead-form input[type="email"]:focus {
	outline: none;
	border-color: #2563eb;
	box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1);
}

.bunts-compact-lead-form input[type="email"]::placeholder {
	color: #94a3b8;
}

.bunts-compact-connect-btn {
	padding: 14px 28px;
	background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%);
	color: #fff;
	border: none;
	border-radius: 10px;
	font-size: 15px;
	font-weight: 600;
	cursor: pointer;
	white-space: nowrap;
	transition: transform 0.2s, box-shadow 0.2s;
}

.bunts-compact-connect-btn:hover {
	transform: translateY(-1px);
	box-shadow: 0 4px 12px rgba(37, 99, 235, 0.3);
}

.bunts-compact-connect-btn:active {
	transform: translateY(0);
}

/* Responsive Compact Form */
@media (max-width: 768px) {
	.bunts-compact-lead {
		flex-direction: column;
		text-align: center;
	}
	
	.bunts-compact-lead-form {
		flex-direction: column;
		width: 100%;
	}
	
	.bunts-compact-connect-btn {
		width: 100%;
	}
}

/* =====================================================
   COURSES / SUBGROUPS SECTION - Modern Design
   ===================================================== */
.bunts-courses-section {
	margin-top: 30px;
}

.bunts-courses-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
}

@media (max-width: 992px) {
	.bunts-courses-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 600px) {
	.bunts-courses-grid {
		grid-template-columns: 1fr;
	}
}

.bunts-course-card {
	display: flex;
	flex-direction: column;
	padding: 24px;
	border-radius: 16px;
	text-decoration: none;
	transition: all 0.3s ease;
	position: relative;
	overflow: hidden;
	min-height: 200px;
}

.bunts-course-card::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	opacity: 0;
	transition: opacity 0.3s ease;
	z-index: 0;
}

.bunts-course-card:hover {
	transform: translateY(-6px);
	box-shadow: 0 20px 40px rgba(0, 0, 0, 0.12);
}

.bunts-course-card:hover::before {
	opacity: 1;
}

/* Color variations for course cards */
.bunts-course-blue {
	background: linear-gradient(135deg, #eff6ff 0%, #dbeafe 100%);
	border: 1px solid #bfdbfe;
}
.bunts-course-blue:hover {
	background: linear-gradient(135deg, #dbeafe 0%, #bfdbfe 100%);
}
.bunts-course-blue .bunts-course-icon {
	background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
}
.bunts-course-blue .bunts-course-arrow {
	color: #2563eb;
}

.bunts-course-purple {
	background: linear-gradient(135deg, #f5f3ff 0%, #ede9fe 100%);
	border: 1px solid #ddd6fe;
}
.bunts-course-purple:hover {
	background: linear-gradient(135deg, #ede9fe 0%, #ddd6fe 100%);
}
.bunts-course-purple .bunts-course-icon {
	background: linear-gradient(135deg, #8b5cf6 0%, #7c3aed 100%);
}
.bunts-course-purple .bunts-course-arrow {
	color: #7c3aed;
}

.bunts-course-green {
	background: linear-gradient(135deg, #f0fdf4 0%, #dcfce7 100%);
	border: 1px solid #bbf7d0;
}
.bunts-course-green:hover {
	background: linear-gradient(135deg, #dcfce7 0%, #bbf7d0 100%);
}
.bunts-course-green .bunts-course-icon {
	background: linear-gradient(135deg, #22c55e 0%, #16a34a 100%);
}
.bunts-course-green .bunts-course-arrow {
	color: #16a34a;
}

.bunts-course-orange {
	background: linear-gradient(135deg, #fff7ed 0%, #ffedd5 100%);
	border: 1px solid #fed7aa;
}
.bunts-course-orange:hover {
	background: linear-gradient(135deg, #ffedd5 0%, #fed7aa 100%);
}
.bunts-course-orange .bunts-course-icon {
	background: linear-gradient(135deg, #f97316 0%, #ea580c 100%);
}
.bunts-course-orange .bunts-course-arrow {
	color: #ea580c;
}

.bunts-course-pink {
	background: linear-gradient(135deg, #fdf2f8 0%, #fce7f3 100%);
	border: 1px solid #fbcfe8;
}
.bunts-course-pink:hover {
	background: linear-gradient(135deg, #fce7f3 0%, #fbcfe8 100%);
}
.bunts-course-pink .bunts-course-icon {
	background: linear-gradient(135deg, #ec4899 0%, #db2777 100%);
}
.bunts-course-pink .bunts-course-arrow {
	color: #db2777;
}

.bunts-course-teal {
	background: linear-gradient(135deg, #f0fdfa 0%, #ccfbf1 100%);
	border: 1px solid #99f6e4;
}
.bunts-course-teal:hover {
	background: linear-gradient(135deg, #ccfbf1 0%, #99f6e4 100%);
}
.bunts-course-teal .bunts-course-icon {
	background: linear-gradient(135deg, #14b8a6 0%, #0d9488 100%);
}
.bunts-course-teal .bunts-course-arrow {
	color: #0d9488;
}

.bunts-course-icon {
	width: 56px;
	height: 56px;
	border-radius: 14px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 16px;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
	position: relative;
	z-index: 1;
}

.bunts-course-icon .dashicons {
	font-size: 28px;
	width: 28px;
	height: 28px;
	color: #fff;
}

.bunts-course-icon img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 14px;
}

.bunts-course-content {
	flex: 1;
	display: flex;
	flex-direction: column;
	position: relative;
	z-index: 1;
}

.bunts-course-title {
	font-size: 16px;
	font-weight: 700;
	color: #1e293b;
	margin: 0 0 8px 0;
	line-height: 1.3;
}

.bunts-course-card:hover .bunts-course-title {
	color: #0f172a;
}

.bunts-course-desc {
	font-size: 13px;
	color: #64748b;
	line-height: 1.5;
	margin: 0;
	flex: 1;
}

.bunts-course-footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-top: 16px;
	padding-top: 14px;
	border-top: 1px solid rgba(0, 0, 0, 0.06);
}

.bunts-course-members {
	display: flex;
	align-items: center;
	gap: 5px;
	font-size: 12px;
	color: #64748b;
	font-weight: 500;
}

.bunts-course-members .dashicons {
	font-size: 14px;
	width: 14px;
	height: 14px;
}

.bunts-course-arrow {
	font-size: 18px;
	font-weight: 700;
	transition: transform 0.3s ease;
}

.bunts-course-card:hover .bunts-course-arrow {
	transform: translateX(4px);
}

/* =====================================================
   CONTACT INFORMATION SECTION
   ===================================================== */
.bunts-contact-section {
	margin-top: 30px;
}

.bunts-contact-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 24px;
}

@media (max-width: 768px) {
	.bunts-contact-grid {
		grid-template-columns: 1fr;
	}
}

.bunts-contact-card {
	background: #fff;
	border-radius: 16px;
	padding: 28px;
	border: 1px solid #e2e8f0;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
}

.bunts-contact-card h3 {
	font-size: 18px;
	font-weight: 700;
	color: #1e293b;
	margin: 0 0 20px 0;
	display: flex;
	align-items: center;
	gap: 10px;
}

.bunts-contact-card h3 .dashicons {
	color: #2563eb;
	font-size: 22px;
	width: 22px;
	height: 22px;
}

.bunts-contact-item {
	display: flex;
	gap: 14px;
	margin-bottom: 18px;
	align-items: flex-start;
}

.bunts-contact-item:last-child {
	margin-bottom: 0;
}

.bunts-contact-item > .dashicons {
	color: #64748b;
	font-size: 20px;
	width: 20px;
	height: 20px;
	margin-top: 2px;
	flex-shrink: 0;
}

.bunts-contact-item div,
.bunts-contact-item a {
	flex: 1;
}

.bunts-contact-item p {
	margin: 0 0 4px 0;
	color: #374151;
	font-size: 14px;
	line-height: 1.5;
}

.bunts-contact-item a {
	color: #2563eb;
	text-decoration: none;
	font-size: 14px;
	transition: color 0.2s;
}

.bunts-contact-item a:hover {
	color: #1d4ed8;
	text-decoration: underline;
}

.bunts-map-link {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	font-size: 13px !important;
	color: #16a34a !important;
	margin-top: 8px;
}

.bunts-map-link:hover {
	color: #15803d !important;
}

.bunts-whatsapp-link {
	color: #25d366 !important;
	font-weight: 600;
}

.bunts-whatsapp-link:hover {
	color: #128c7e !important;
}

/* Social Media Grid */
.bunts-social-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 12px;
}

@media (max-width: 500px) {
	.bunts-social-grid {
		grid-template-columns: 1fr;
	}
}

.bunts-social-btn {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 12px 16px;
	border-radius: 10px;
	text-decoration: none;
	font-size: 14px;
	font-weight: 600;
	transition: all 0.2s ease;
}

.bunts-social-btn .dashicons {
	font-size: 20px;
	width: 20px;
	height: 20px;
}

.bunts-social-btn:hover {
	transform: translateY(-2px);
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

/* Social button colors */
.bunts-facebook {
	background: #e7f3ff;
	color: #1877f2;
}
.bunts-facebook:hover {
	background: #1877f2;
	color: #fff;
}

.bunts-instagram {
	background: linear-gradient(135deg, #fef2f8 0%, #fce7f3 100%);
	color: #e4405f;
}
.bunts-instagram:hover {
	background: linear-gradient(135deg, #f58529, #dd2a7b, #8134af);
	color: #fff;
}

.bunts-youtube {
	background: #ffebee;
	color: #ff0000;
}
.bunts-youtube:hover {
	background: #ff0000;
	color: #fff;
}

.bunts-twitter {
	background: #e8f5fd;
	color: #1da1f2;
}
.bunts-twitter:hover {
	background: #1da1f2;
	color: #fff;
}

.bunts-linkedin {
	background: #e8f4f9;
	color: #0077b5;
}
.bunts-linkedin:hover {
	background: #0077b5;
	color: #fff;
}


/* =====================================================
   LIGHTBOX / PHOTO VIEWER
   ===================================================== */
.bunts-lightbox-overlay {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(0, 0, 0, 0.9);
	z-index: 999999;
	cursor: pointer;
}

.bunts-lightbox {
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 1000000;
	max-width: 90vw;
	max-height: 90vh;
	text-align: center;
}

.bunts-lightbox img {
	max-width: 90vw;
	max-height: 85vh;
	object-fit: contain;
	border-radius: 4px;
	box-shadow: 0 10px 50px rgba(0, 0, 0, 0.5);
}

.bunts-lightbox-close {
	position: absolute;
	top: -45px;
	right: 0;
	background: transparent;
	border: none;
	color: #fff;
	font-size: 36px;
	cursor: pointer;
	width: 45px;
	height: 45px;
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0.8;
	transition: opacity 0.2s;
}

.bunts-lightbox-close:hover {
	opacity: 1;
}

.bunts-lightbox-prev,
.bunts-lightbox-next {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	background: rgba(255, 255, 255, 0.1);
	border: none;
	color: #fff;
	font-size: 48px;
	cursor: pointer;
	width: 60px;
	height: 80px;
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0.7;
	transition: all 0.2s;
	border-radius: 4px;
}

.bunts-lightbox-prev {
	left: -80px;
}

.bunts-lightbox-next {
	right: -80px;
}

.bunts-lightbox-prev:hover,
.bunts-lightbox-next:hover {
	opacity: 1;
	background: rgba(255, 255, 255, 0.2);
}

.bunts-lightbox-counter {
	position: absolute;
	bottom: -40px;
	left: 50%;
	transform: translateX(-50%);
	color: #fff;
	font-size: 14px;
	opacity: 0.8;
}

/* Mobile lightbox adjustments */
@media (max-width: 768px) {
	.bunts-lightbox-prev,
	.bunts-lightbox-next {
		width: 50px;
		height: 60px;
		font-size: 36px;
	}
	
	.bunts-lightbox-prev {
		left: 10px;
	}
	
	.bunts-lightbox-next {
		right: 10px;
	}
	
	.bunts-lightbox img {
		max-width: 95vw;
		max-height: 80vh;
	}
}

/* Gallery item hover effect */
.bunts-gallery-item {
	position: relative;
	cursor: pointer;
}

.bunts-gallery-item::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(0, 0, 0, 0);
	transition: background 0.3s;
	pointer-events: none;
	border-radius: 4px;
}

.bunts-gallery-item:hover::after {
	background: rgba(0, 0, 0, 0.1);
}

.bunts-gallery-link {
	display: block;
	width: 100%;
	height: 100%;
}

/* =====================================================
   MOBILE TOUCH FIX - Button Touch States
   ===================================================== */

/* Ensure buttons are properly clickable on mobile */
.bunts-compact-connect-btn,
.bunts-btn-next,
.bunts-btn-prev,
.bunts-btn-submit,
.bunts-btn-book,
.bunts-btn-callback,
.bunts-btn {
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0.1);
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	user-select: none;
	touch-action: manipulation;
	cursor: pointer;
	position: relative;
	z-index: 10;
}

/* Remove any potential overlay that blocks touches */
.bunts-compact-connect-btn::before,
.bunts-btn-next::before,
.bunts-btn-submit::before {
	content: none !important;
}

/* Ensure minimum touch target size (44px is Apple's recommendation) */
.bunts-compact-connect-btn,
.bunts-btn {
	min-height: 48px;
	min-width: 48px;
}

/* Touch active state for visual feedback */
.bunts-compact-connect-btn.touch-active,
.bunts-btn.touch-active,
.bunts-btn-next.touch-active,
.bunts-btn-submit.touch-active {
	transform: scale(0.98);
	opacity: 0.9;
}

/* Mobile-specific button fixes */
@media (max-width: 768px) {
	.bunts-compact-connect-btn,
	.bunts-btn-next,
	.bunts-btn-submit,
	.bunts-btn-book,
	.bunts-btn-callback {
		/* Ensure full width clickable area */
		display: block !important;
		width: 100% !important;
		min-height: 52px !important;
		padding: 16px 24px !important;
		font-size: 16px !important; /* Prevent zoom on iOS */
		
		/* Remove ::after content that might interfere */
		overflow: visible !important;
	}
	
	/* Ensure the ::after arrow doesn't block touches */
	.bunts-compact-connect-btn::after {
		pointer-events: none;
	}
	
	/* Form inputs - prevent zoom on iOS */
	.bunts-wizard-form input[type="email"],
	.bunts-wizard-form input[type="text"],
	.bunts-wizard-form input[type="tel"] {
		font-size: 16px !important;
	}
	
	/* Option cards - larger touch targets */
	.bunts-option-card {
		min-height: 80px;
		padding: 15px !important;
	}
	
	/* Ensure proper stacking */
	.bunts-lead-form-wrapper {
		position: relative;
		z-index: 1;
	}
	
	.bunts-compact-lead-form {
		position: relative;
		z-index: 5;
	}
}

/* Remove any transforms/animations on the ::after that might cause issues */
.bunts-compact-connect-btn:active::after,
.bunts-btn-next:active::after {
	transform: none;
}

/* =====================================================
   ACTIVE EVENTS SECTION
   ===================================================== */
#active-events {
	margin-bottom: 30px;
}

.bunts-events-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
	gap: 20px;
}

.bunts-event-card {
	display: flex;
	align-items: stretch;
	background: #fff;
	border-radius: 12px;
	overflow: hidden;
	box-shadow: 0 2px 8px rgba(0,0,0,0.08);
	border: 1px solid #e5e7eb;
	text-decoration: none;
	color: inherit;
	transition: all 0.3s ease;
	position: relative;
}

.bunts-event-card:hover {
	transform: translateY(-3px);
	box-shadow: 0 8px 25px rgba(0,0,0,0.12);
	border-color: #f59e0b;
}

.bunts-event-date-badge {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-width: 70px;
	padding: 15px 10px;
	background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
	color: #fff;
	text-align: center;
}

.bunts-event-month {
	font-size: 12px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 1px;
	opacity: 0.9;
}

.bunts-event-day {
	font-size: 28px;
	font-weight: 700;
	line-height: 1.1;
}

.bunts-event-thumbnail {
	width: 100px;
	min-height: 100px;
	overflow: hidden;
}

.bunts-event-thumbnail img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.bunts-event-content {
	flex: 1;
	padding: 15px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-width: 0;
}

.bunts-event-title {
	margin: 0 0 8px 0;
	font-size: 15px;
	font-weight: 600;
	color: #1e293b;
	line-height: 1.3;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.bunts-event-excerpt {
	margin: 0 0 10px 0;
	font-size: 13px;
	color: #64748b;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.bunts-event-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	font-size: 12px;
	color: #64748b;
}

.bunts-event-time,
.bunts-event-location {
	display: flex;
	align-items: center;
	gap: 4px;
}

.bunts-event-time .dashicons,
.bunts-event-location .dashicons {
	font-size: 14px;
	width: 14px;
	height: 14px;
	color: #f59e0b;
}

.bunts-event-arrow {
	position: absolute;
	right: 15px;
	top: 50%;
	transform: translateY(-50%);
	font-size: 18px;
	color: #d1d5db;
	transition: all 0.3s ease;
}

.bunts-event-card:hover .bunts-event-arrow {
	right: 10px;
	color: #f59e0b;
}

/* Events responsive */
@media (max-width: 768px) {
	.bunts-events-grid {
		grid-template-columns: 1fr;
	}
	
	.bunts-event-date-badge {
		min-width: 60px;
		padding: 12px 8px;
	}
	
	.bunts-event-day {
		font-size: 24px;
	}
}

/* =====================================================
   FEATURED MEMBERS SECTION (Introduction Tab)
   ===================================================== */
#featured-members {
	margin-bottom: 30px;
}

.bunts-featured-members-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
	gap: 20px;
}

.bunts-featured-member-card {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 20px 15px;
	background: linear-gradient(135deg, #fffbeb 0%, #fef3c7 100%);
	border-radius: 12px;
	text-decoration: none;
	color: inherit;
	border: 2px solid #fcd34d;
	transition: all 0.3s ease;
	text-align: center;
}

.bunts-featured-member-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 10px 30px rgba(245, 158, 11, 0.25);
	border-color: #f59e0b;
}

.bunts-featured-member-avatar {
	position: relative;
	width: 80px;
	height: 80px;
	margin-bottom: 12px;
}

.bunts-featured-member-avatar img {
	width: 100%;
	height: 100%;
	border-radius: 50%;
	object-fit: cover;
	border: 3px solid #f59e0b;
	box-shadow: 0 4px 12px rgba(245, 158, 11, 0.3);
}

.bunts-featured-badge {
	position: absolute;
	bottom: -5px;
	right: -5px;
	width: 28px;
	height: 28px;
	background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 2px 8px rgba(245, 158, 11, 0.4);
}

.bunts-featured-badge .dashicons {
	color: #fff;
	font-size: 14px;
	width: 14px;
	height: 14px;
}

.bunts-featured-member-info {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.bunts-featured-member-name {
	font-weight: 600;
	font-size: 14px;
	color: #1e293b;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.bunts-featured-member-type {
	font-size: 11px;
	color: #92400e;
	font-weight: 500;
}

.bunts-featured-member-card.bunts-member-more {
	background: #f8fafc;
	border-color: #e2e8f0;
}

.bunts-featured-member-card.bunts-member-more:hover {
	background: #f1f5f9;
	border-color: #cbd5e1;
}

.bunts-featured-member-card.bunts-member-more .bunts-more-avatar {
	background: linear-gradient(135deg, #64748b 0%, #475569 100%);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	border: none;
	box-shadow: none;
}

.bunts-featured-member-card.bunts-member-more .bunts-more-avatar span {
	color: #fff;
	font-size: 18px;
	font-weight: 700;
}

/* Featured Members responsive */
@media (max-width: 768px) {
	.bunts-featured-members-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 12px;
	}
	
	.bunts-featured-member-card {
		padding: 15px 10px;
	}
	
	.bunts-featured-member-avatar {
		width: 60px;
		height: 60px;
	}
}

/* =====================================================
   ORGANIZED MEMBERS SECTION (Members Tab)
   ===================================================== */
.bunts-organized-members {
	margin-bottom: 30px;
}

.bunts-members-header {
	margin-bottom: 25px;
	padding-bottom: 15px;
	border-bottom: 2px solid #e5e7eb;
}

.bunts-members-header h3 {
	margin: 0;
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 20px;
	color: #1e293b;
}

.bunts-members-header .dashicons {
	color: #2563eb;
}

.bunts-total-count {
	font-size: 14px;
	font-weight: 400;
	color: #64748b;
}

.bunts-members-section {
	margin-bottom: 30px;
}

.bunts-members-section-title {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0 0 15px 0;
	padding: 12px 15px;
	background: #f8fafc;
	border-radius: 8px;
	border-left: 4px solid #2563eb;
	font-size: 16px;
	font-weight: 600;
	color: #1e293b;
}

.bunts-members-section-title .dashicons {
	font-size: 18px;
	width: 18px;
	height: 18px;
}

.bunts-section-count {
	font-size: 13px;
	font-weight: 400;
	color: #64748b;
	margin-left: auto;
}

.bunts-members-list {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
	gap: 15px;
}

.bunts-member-item {
	background: #fff;
	border-radius: 10px;
	border: 1px solid #e5e7eb;
	overflow: hidden;
	transition: all 0.2s ease;
}

.bunts-member-item:hover {
	border-color: #2563eb;
	box-shadow: 0 4px 15px rgba(37, 99, 235, 0.15);
}

.bunts-member-item.bunts-featured {
	border-color: #fcd34d;
	background: linear-gradient(135deg, #fffbeb 0%, #fff 100%);
}

.bunts-member-item.bunts-featured:hover {
	border-color: #f59e0b;
	box-shadow: 0 4px 15px rgba(245, 158, 11, 0.2);
}

.bunts-member-link {
	display: flex;
	align-items: center;
	gap: 15px;
	padding: 15px;
	text-decoration: none;
	color: inherit;
}

.bunts-member-avatar-wrap {
	position: relative;
	flex-shrink: 0;
}

.bunts-member-avatar {
	width: 60px;
	height: 60px;
	border-radius: 50%;
	object-fit: cover;
	border: 2px solid #e5e7eb;
}

.bunts-member-item.bunts-featured .bunts-member-avatar {
	border-color: #f59e0b;
}

.bunts-badge {
	position: absolute;
	bottom: -2px;
	right: -2px;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 10px;
	font-weight: 700;
	color: #fff;
	border: 2px solid #fff;
}

.bunts-badge-featured {
	background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
}

.bunts-badge-featured .dashicons {
	font-size: 12px;
	width: 12px;
	height: 12px;
}

.bunts-badge-admin {
	background: linear-gradient(135deg, #10b981 0%, #059669 100%);
}

.bunts-badge-mod {
	background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
}

.bunts-member-details {
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 3px;
}

.bunts-member-name {
	font-weight: 600;
	font-size: 14px;
	color: #1e293b;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.bunts-member-profile-type {
	font-size: 12px;
	color: #64748b;
	font-weight: 500;
}

.bunts-member-activity {
	font-size: 11px;
	color: #94a3b8;
}

/* Members Tab responsive */
@media (max-width: 768px) {
	.bunts-members-list {
		grid-template-columns: 1fr;
	}
	
	.bunts-members-section-title {
		font-size: 14px;
		padding: 10px 12px;
	}
	
	.bunts-member-link {
		padding: 12px;
	}
	
	.bunts-member-avatar {
		width: 50px;
		height: 50px;
	}
}
