/* ==========================================================================
   MOBILE STYLES (max-width: 767px)
   Centralized responsive styles extracted from theme CSS files
   ========================================================================== */

/* --------------------------------------------------------------------------
   Mobile (max-width: 767px)
   -------------------------------------------------------------------------- */
@media (max-width: 767px) {

	/* ==========================================================================
	   GENESIS RESPONSIVE MENUS
	   ========================================================================== */

	.genesis-responsive-menu {
		display: none;
		position: relative;
	}

	a.fcom_login_btn.el-button.fcom_primary_button {
		text-align: center;
	}

	.genesis-skip-link .skip-link-hidden {
		display: none;
		visibility: hidden;
	}

	.menu-toggle,
	.sub-menu-toggle,
	.community-header .menu-toggle,
	.community-header .sub-menu-toggle {
		color: var(--community-color-primary);
		display: block;
		margin: 0 auto;
		overflow: hidden;
		text-align: center;
		visibility: visible;
		background: transparent;
		border: 0;
		outline: 0;
	}

	.menu-toggle {
		float: right;
		line-height: 20px;
		position: relative;
		z-index: 1000;
	}

	.sub-menu-toggle {
		float: right;
		padding: 15px 10px;
		position: absolute;
		right: 0;
		top: 0;
		z-index: 100;
	}

	.sub-menu-toggle::before {
		display: inline-block;
		text-rendering: auto;
		transform: rotate(0);
		transition: transform 0.25s ease-in-out;
	}

	.sub-menu-toggle.activated::before {
		transform: rotate(180deg);
	}

	.genesis-responsive-menu .genesis-nav-menu .menu-item {
		display: block;
		float: none;
		position: relative;
		text-align: left;
		margin: 10px;
		padding: 10px;
	}

	.genesis-responsive-menu .genesis-nav-menu .menu-item a {
		border: none;
		margin-bottom: 1px;
		padding: 15px 20px 15px 15px;
		text-align: left;
		width: 100%;
		background: var(--community-color-background);
	}

	.genesis-responsive-menu .genesis-nav-menu .sub-menu {
		border: none;
		box-shadow: none;
		clear: both;
		display: none;
		margin: 0;
		opacity: 1;
		padding-left: 0;
		position: static;
		width: 100%;
	}

	/* ==========================================================================
	   COMMUNITY HEADER MOBILE
	   ========================================================================== */

	/* Header inner layout - horizontal row on mobile (matches reference site) */
	.community-header .header-inner {
		display: flex !important;
		flex-direction: row !important;
		align-items: center !important;
		justify-content: flex-start !important;
		padding: 0 !important;
		gap: 40px !important;
		margin: 0 20px 0 20px;
	}

	.community-header .wrap {
		padding: 0;
	}

	/* Logo sizing for mobile - flex item, not centered */
	.community-header .title-area {
		flex: 0 0 auto !important;
		order: 0 !important;
	}

	.community-header .custom-logo {
		max-width: 100px;
		height: auto;
	}

	.community-header .custom-logo-link {
		display: block;
	}

	/* Menu toggle - positioned after logo */
	.community-header .menu-toggle#genesis-mobile-nav-primary {
		display: flex !important;
		align-items: center;
		justify-content: center;
		flex: 0 1 auto !important;
		order: 1 !important;
		margin: 0 !important;
		position: relative !important;
	}

	/* Header actions (login/signup) - positioned after menu toggle */
	.community-header .header-actions {
		flex: 0 1 auto !important;
		order: 2 !important;
		margin-left: auto !important;
	}

	/* Login/Signup button mobile styling */
	.community-header .fcom_login_btn,
	.fcom_login_btn.fcom_primary_button {
		padding: 8px 12px !important;
		font-size: 14px !important;
	}

	html>body.fcom_headless_page .site-header.community-header .header-inner nav.nav-primary.genesis-responsive-menu {
		display: none !important;
	}

	html>body.fcom_headless_page .site-header.community-header .header-inner .activated + nav.nav-primary.genesis-responsive-menu {
		display: block !important;
	}

	.community-header .community-nav {
		display: none;
		position: absolute;
		top: 100%;
		left: 0;
		right: 0;
		background-color: var(--community-color-background);
		border-bottom: 1px solid var(--community-color-border);
		box-shadow: var(--community-shadow-md);
	}

	.community-header .community-nav.is-active {
		display: block;
	}

	body.fcom_headless_page .site-header.community-header .nav-primary .menu.genesis-nav-menu {
		flex-direction: column !important;
		align-items: stretch;
		padding: var(--community-spacing-md);
	}

	.community-header .genesis-nav-menu {
		flex-direction: column;
		align-items: stretch;
		padding: var(--community-spacing-md);
	}

	.community-header .menu-item {
		display: block;
		width: 100%;
	}

	.site-header .nav-primary {
		float: none;
		max-width: 100% !important;
		width: 100% !important;
	}

	.genesis-nav-menu li,
	.site-header ul.genesis-nav-menu {
		float: none;
	}

	/* Content with Sidebar */
	.content-sidebar-wrap {
		flex-direction: column;
	}

	/* ==========================================================================
	   GENESIS LAYOUT & CONTENT WIDTH
	   Content container width constraints for mobile viewport
	   (mirrors _tablet.css rules that only apply to 768px-991px)
	   ========================================================================== */

	/* Content width constraints - ensure containers don't retain desktop widths */
	.content,
	.content-sidebar .content,
	.sidebar-content .content {
		float: none;
		max-width: 100% !important;
		width: 100% !important;
	}

	/* Entry and archive description max-width for readability */
	.archive-description,
	.entry {
		margin-left: auto;
		margin-right: auto;
		max-width: 860px !important;
	}

	/* Comments section */
	.comment-respond {
		padding: 10px !important;
	}

	.archive-title,
	.entry-header .entry-title,
	.taxonomy-description h1,
	.comment-respond > h3 {
		font-size: 22px !important;
	}

	/* Archive */
	.archive-header {
		padding: 12px 24px;
	}

	.archive-title {
		font-size: 32px;
		margin-bottom: var(--community-spacing-md);
	}

	.archive-description {
		font-size: 16px;
		margin-bottom: var(--community-spacing-md);
	}

	.archive-search {
		max-width: 100%;
	}

	.archive-search-input {
		font-size: 16px; /* Prevents zoom on iOS */
		padding: 10px 40px 10px 40px !important;
	}

	.archive-search-icon {
		left: 14px;
	}

	.archive-search-submit {
		width: 32px !important;
		height: 32px !important;
	}

	.archive-category-filter {
		margin-bottom: 12px;
	}

	.archive-category-select {
		font-size: 16px !important; /* Prevents zoom on iOS */
		padding: 10px 40px 10px 40px !important;
	}

	.archive-category-icon {
		left: 14px !important;
	}

	.archive-category-chevron {
		right: 14px !important;
	}

	.archive-grid {
		gap: 1rem;
		padding: 12px;
	}

	.archive-entry .entry-title {
		font-size: 18px;
		margin: 12px;
		margin-bottom: 22px;
		padding: 0;
		min-height: unset !important;
	}

	.archive-entry:hover {
		transform: none;
	}

	.archive .pagination {
		margin: 0;
	}

	.archive-entry .entry-footer {
		flex-direction: column;
		align-items: center;
	}

	/* Search */
	.search-header {
		padding: var(--community-spacing-xl) 0;
	}

	.search-title {
		font-size: 28px;
		margin-bottom: var(--community-spacing-md);
	}

	.search-context {
		font-size: 14px;
	}

	/* 404 Page */
	.error404 #genesis-content .search-form {
		width: 100%;
	}

	/* Layout */
	body:not(.community-pro-homepage) .site-inner {
		padding: 10px;
	}

	.search-title-area,
	.archive-title-area {
		padding: 10px;
	}

	body:not(.community-pro-homepage) .content-card,
	body:not(.community-pro-homepage) .entry {
		padding: var(--community-spacing-md) !important;
		margin-bottom: var(--community-spacing-lg);
	}

	body:not(.community-pro-homepage) .button:not(.ed_button),
	body:not(.community-pro-homepage) input[type="submit"] {
		width: 100%;
		justify-content: center;
	}

	/* Navigation */
	.breadcrumb {
		padding: 0 var(--community-spacing-sm);
		margin-bottom: var(--community-spacing-md);
	}

	.breadcrumb a {
		display: inline-block;
		margin-bottom: var(--community-spacing-2xs);
	}

	/* Entry Content */

	.single .entry-content-wrapper {
		padding: 10px;
	}

	.archive-entry .entry-title a {
		font-size: 15px;
	}

	.archive-entry .entry-header-content {
		padding: 0;
	}

		.entry-header .entry-meta {
		margin-left: -16px;
	}

	.entry-header .entry-meta div {
		flex-direction: column !important;
		display: flex;
		align-items: center;
		font-size: 10px;
	}

	.entry-header .entry-meta div svg {
		margin-bottom: 10px;
	}

	.entry-sharing .sharing-buttons button.share-copy {
		display: none;
	}

	/* Author Box */
	.author-box {
		flex-direction: column;
		text-align: center;
	}

	.author-links {
		justify-content: center;
	}

	/* Footer */
	.turfnet-footer-brand {
		padding-top: var(--community-spacing-2xl);
		padding-bottom: var(--community-spacing-xl);
	}

	.turfnet-footer-brand h3 {
		font-size: var(--community-font-size-2xl);
	}

	.footer-tagline {
		font-size: var(--community-font-size-base);
	}

	.footer-description {
		font-size: var(--community-font-size-sm);
	}

	.turfnet-footer-navigation {
		grid-template-columns: 1fr;
		gap: var(--community-spacing-lg);
		padding-top: var(--community-spacing-xl);
		padding-bottom: var(--community-spacing-xl);
		display: grid !important;
	}

	.footer-social {
		gap: var(--community-spacing-sm);
	}

	.footer-social a {
		width: 40px;
		height: 40px;
		font-size: var(--community-font-size-lg);
	}

	.footer-column {
		text-align: center;
		border-top: 1px solid var(--community-color-border);
		padding-top: var(--community-spacing-lg);
	}

	.footer-column:first-child {
		border-top: none;
		padding-top: 0;
	}

	.footer-column h4::after {
		left: 50%;
		transform: translateX(-50%);
	}

	.footer-copyright {
		padding: var(--community-spacing-lg) clamp(var(--community-spacing-lg), 4vw, var(--community-spacing-3xl));
	}

	/* Homepage */

	.community-pro-homepage .the-latest-right li.post-list-item {
		flex-direction: column;
		align-items: flex-start;
		flex-direction: column-reverse;
	}

	.community-pro-homepage .the-latest-right .post-list-info {
		max-width: 100% !important;
	}

	.community-pro-homepage .the-latest-right .post-list-badge {
		margin: 0 !important;
		padding: 0 !important;
		border: none !important;
	}

	.community-pro-homepage .the-latest-right .post-list-title {
		font-size: 14px !important;
	}

	.community-pro-homepage section .wrap {
		padding: 0 clamp(16px, 4vw, 32px);
		max-width: 100% !important;
		overflow-x: hidden !important;
	}

	.community-pro-homepage section {
		width: 100%;
		max-width: 100%;
		overflow-x: hidden;
	}

	.community-pro-homepage,
	.community-pro-homepage .site-inner,
	.community-pro-homepage .content-sidebar-wrap,
	.community-pro-homepage main.content {
		overflow-x: hidden !important;
		max-width: 100% !important;
	}

	.community-pro-homepage .homepage-hero,
	.community-pro-homepage .homepage-community,
	.community-pro-homepage .homepage-marketplace {
		padding-top: 5px !important;
		padding-bottom: 5px !important;
	}

	.community-pro-homepage .homepage-hero {
		padding: clamp(60px, 15vw, 100px) 0 clamp(40px, 10vw, 80px) !important;
		min-height: clamp(400px, 80vh, 600px);
		width: 100%;
		max-width: 100%;
		overflow: hidden;
	}

	.community-pro-homepage .hero-content {
		max-width: 100%;
		padding: 0 4px;
	}

	.community-pro-homepage .button,
	.community-pro-homepage a.button {
		width: 100%;
		font-size: 1rem !important;
		padding: 1rem 1.5rem !important;
		box-sizing: border-box !important;
	}

	/* Hero Section */
	.hero-cta {
		flex-direction: row !important;
		gap: clamp(8px, 2vw, 12px) !important;
		width: 100% !important;
		max-width: 340px !important;
		margin-left: auto !important;
		margin-right: auto !important;
	}

	.hero-cta .button-primary {
		flex: 1.3;
		min-width: 0;
		font-size: clamp(0.875rem, 2.5vw, 0.95rem) !important;
	}

	.hero-cta .button-secondary {
		flex: 1;
		min-width: 0;
		font-size: clamp(0.8125rem, 2.5vw, 0.9rem) !important;
	}

	.hero-trust {
		gap: clamp(12px, 3vw, 20px);
		flex-direction: column;
		align-items: center;
	}

	.trust-item {
		font-size: 0.8rem;
		gap: 6px;
	}

	/* Careers Grid */
	.careers-grid {
		grid-template-columns: 1fr !important;
		gap: clamp(16px, 3vw, 20px) !important;
		padding: 0 clamp(16px, 3vw, 24px) !important;
	}

	.career-card {
		padding: clamp(16px, 3vw, 20px) !important;
	}

	.career-card .card-icon {
		width: clamp(44px, 8vw, 48px) !important;
		height: clamp(44px, 8vw, 48px) !important;
		margin-bottom: clamp(10px, 2vw, 12px) !important;
	}

	.career-card .card-icon svg {
		width: clamp(24px, 5vw, 28px) !important;
		height: clamp(24px, 5vw, 28px) !important;
	}

	.career-card h3 {
		font-size: 1.2rem !important;
		margin: clamp(8px, 2vw, 10px) 0 clamp(4px, 1vw, 6px) 0 !important;
	}

	.career-card p {
		font-size: clamp(0.8125rem, 2vw, 0.875rem) !important;
		margin-bottom: clamp(8px, 2vw, 12px) !important;
	}

	.career-card .career-card-buttons {
		flex-wrap: wrap;
		justify-content: center;
	}

	.career-card .career-card-buttons .link-more {
		width: 100% !important;
		font-size: 16px !important;
		padding: 15px !important;
		box-sizing: border-box !important;
		justify-content: center;
	}

	html .career-card-buttons a.button-primary,
	a.link-more.resumes-post-btn.button.button-primary,
	a.link-more.jobs-post-btn.button.button-primary {
		width: 100% !important;
	}

	.entry-content .pf-content .post-listing .link-more {
		padding: 7px 11px !important;
	}

	body.directory-page-jobs .pf-content > .post-listing,
	body.directory-page-resumes .pf-content > .post-listing,
	body.directory-page-equipment .pf-content > .post-listing {
		position: unset !important;
		margin-left: 35px !important;
	}

	.directorist-header-bar .directorist-container-fluid {
		width: fit-content !important;
	}

	.listing-with-sidebar__header .directorist-archive-sidebar-toggle {
		display: flex !important;
		justify-content: center;
	}

	.directorist-listings-header__right {
		flex-direction: row !important;
	}

	/* Marketplace */
	.marketplace-card .card-header {
		flex-wrap: wrap;
	}

	.marketplace-card .card-button-area a {
		margin-left: 0;
		margin-top: 15px;
	}

	.marketplace-card .card-button-area {
		flex-direction: row;
		flex-wrap: wrap;
		gap: 10px;
	}

	.marketplace-card .card-button-area .link-more {
		width: 100% !important;
		font-size: 16px !important;
		padding: 15px !important;
		box-sizing: border-box !important;
		justify-content: center;
		margin-top: 0 !important;
	}

	html .card-button-area .marketplace-post-btn {
		width: 100% !important;
	}

	.marketplace-cta {
		flex-direction: row !important;
		gap: 8px !important;
		width: 100% !important;
		max-width: 320px !important;
		margin: 0 auto !important;
		padding: 0 16px !important;
	}

	.marketplace-cta .button {
		flex: 1 !important;
		min-width: 0 !important;
		max-width: none !important;
		font-size: 0.85rem !important;
		padding: 0.7rem 1rem !important;
	}

	/* Community Section */
	.community-posts .link-more,
	.community-members .link-more {
		width: 100% !important;
		min-height: 54px !important;
		font-size: 1rem !important;
		padding: 1rem 1.5rem !important;
		box-sizing: border-box !important;
		justify-content: center;
	}

	.community-posts,
	.community-members,
	.career-card {
		padding: 20px !important;
		border-radius: 8px !important;
	}

	.fcom_comments_badge {
		display: none !important;
	}

	.fcom_stats_widget {
		grid-template-columns: 1fr;
		gap: 16px;
	}

	/* Benefits Grid */
	.benefits-grid {
		grid-template-columns: 1fr;
		gap: 12px;
	}

	.logo-scroll {
		flex-wrap: wrap;
		gap: clamp(12px, 2vw, 20px);
	}

	/* Widgets */
	.widget-area {
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box !important;
	}

	.widget-layout-row {
		flex-direction: column;
		gap: var(--community-spacing-md, 20px);
		max-width: 350px;
	}

	.widget-layout-row > * {
		min-width: 100%;
		width: 100%;
	}

	.widget-layout-column {
		margin-bottom: var(--community-spacing-lg, 24px);
	}

	.widget-layout-column > * {
		margin-bottom: var(--community-spacing-lg, 24px);
	}

	.widget-layout-column + .widget-layout-row,
	.widget-layout-row + .widget-layout-column {
		margin-top: 10px !important;
	}

	/* Media Grid */
	.media-grid {
		width: 100% !important;
		max-width: 100% !important;
	}

	.media-card {
		width: 100% !important;
		max-width: 100% !important;
		padding: clamp(16px, 4vw, 20px) !important;
		box-sizing: border-box !important;
	}

	.media-card .card-header:has(.link-more) {
		flex-wrap: nowrap;
	}

	.media-card .card-header {
		flex-wrap: wrap;
		gap: clamp(8px, 2vw, 12px);
	}

	.media-card .card-header h3 {
		font-size: clamp(1rem, 2.5vw, 1.125rem) !important;
	}

	.media-card .card-button-area {
		width: 100%;
		display: flex;
		justify-content: flex-end;
	}

	.media-grid.the-latest-left .media-card {
		padding: 0 !important;
		margin-bottom: 12px;
		border: none !important;
	}

	.media-posts-grid:not(.carousel-enabled) {
		grid-template-columns: 1fr !important;
		gap: clamp(12px, 3vw, 16px) !important;
		width: 100% !important;
	}

	.media-post-card {
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box !important;
	}

	/* Hide excess posts in non-carousel grid based on mobile limit */
	.media-posts-grid:not(.carousel-enabled)[data-posts-mobile="1"] .media-post-card:nth-child(n + 2) { display: none; }
	.media-posts-grid:not(.carousel-enabled)[data-posts-mobile="2"] .media-post-card:nth-child(n + 3) { display: none; }
	.media-posts-grid:not(.carousel-enabled)[data-posts-mobile="3"] .media-post-card:nth-child(n + 4) { display: none; }
	.media-posts-grid:not(.carousel-enabled)[data-posts-mobile="4"] .media-post-card:nth-child(n + 5) { display: none; }
	.media-posts-grid:not(.carousel-enabled)[data-posts-mobile="5"] .media-post-card:nth-child(n + 6) { display: none; }
	.media-posts-grid:not(.carousel-enabled)[data-posts-mobile="6"] .media-post-card:nth-child(n + 7) { display: none; }
	.media-posts-grid:not(.carousel-enabled)[data-posts-mobile="7"] .media-post-card:nth-child(n + 8) { display: none; }
	.media-posts-grid:not(.carousel-enabled)[data-posts-mobile="8"] .media-post-card:nth-child(n + 9) { display: none; }
	.media-posts-grid:not(.carousel-enabled)[data-posts-mobile="9"] .media-post-card:nth-child(n + 10) { display: none; }
	.media-posts-grid:not(.carousel-enabled)[data-posts-mobile="10"] .media-post-card:nth-child(n + 11) { display: none; }
	.media-posts-grid:not(.carousel-enabled)[data-posts-mobile="11"] .media-post-card:nth-child(n + 12) { display: none; }
	.media-posts-grid:not(.carousel-enabled)[data-posts-mobile="12"] .media-post-card:nth-child(n + 13) { display: none; }
	.media-posts-grid:not(.carousel-enabled)[data-posts-mobile="13"] .media-post-card:nth-child(n + 14) { display: none; }
	.media-posts-grid:not(.carousel-enabled)[data-posts-mobile="14"] .media-post-card:nth-child(n + 15) { display: none; }
	.media-posts-grid:not(.carousel-enabled)[data-posts-mobile="15"] .media-post-card:nth-child(n + 16) { display: none; }
	.media-posts-grid:not(.carousel-enabled)[data-posts-mobile="16"] .media-post-card:nth-child(n + 17) { display: none; }
	.media-posts-grid:not(.carousel-enabled)[data-posts-mobile="17"] .media-post-card:nth-child(n + 18) { display: none; }
	.media-posts-grid:not(.carousel-enabled)[data-posts-mobile="18"] .media-post-card:nth-child(n + 19) { display: none; }
	.media-posts-grid:not(.carousel-enabled)[data-posts-mobile="19"] .media-post-card:nth-child(n + 20) { display: none; }
	.media-posts-grid:not(.carousel-enabled)[data-posts-mobile="20"] .media-post-card:nth-child(n + 21) { display: none; }

	/* Post Type Badge */
	.post-type-badge {
		font-size: 0.6875rem;
		padding: 4px 10px;
		margin: 6px 10px 10px 10px;
		letter-spacing: 0.4px;
		border-radius: 5px;
	}

	/* Carousel */
	.media-carousel-wrapper {
		gap: 8px;
		margin: 0 -8px;
		width: 100% !important;
		max-width: 100% !important;
	}

	.media-posts-grid.carousel-enabled[data-posts-per-view][style*="--carousel-mobile"] .media-post-card {
		width: calc((100% / var(--carousel-mobile, 1)) - 8px);
	}

	.media-posts-grid.carousel-enabled:not([style*="--carousel-mobile"]) .media-post-card {
		width: calc(100% - 8px);
	}

	.carousel-nav {
		width: 36px;
		height: 36px;
	}

	.carousel-nav svg {
		width: 18px;
		height: 18px;
	}

	.flexible-posts-card .media-carousel-wrapper {
		display: flex !important;
	}

	.community-pro-homepage .media-carousel-wrapper {
		margin: 0 !important;
	}

	.community-pro-homepage .homepage-media {
		padding-top: 20px !important;
	}

	/* Ads */
	broadstreet-zone-container {
		width: 75%;
		margin: 0 auto;
	}

	.ad-placeholder-middle-masthead,
	.ad-placeholder-top-masthead {
		margin-top: 0px !important;
		margin-bottom: 20px !important;
		max-height: 120px !important;
		display: flex !important;
		align-items: center !important;
	}

	.ad-placeholder-middle-masthead {
		margin: 0 auto;
		max-width: 340px;
		margin-left: 9px;
	}

	.homepage-media .careers-layout,
	.homepage-careers:has(.ad-placeholder-tier-one) .community-layout {
		display: block !important;
	}

	.ad-placeholder-tier-two,
	.ad-placeholder-tier-one {
		margin-top: 20px;
	}

	.ad-placeholder-product-matrix,
	.ad-placeholder-tier-three {
		max-width: none !important;
		max-height: 120px !important;
		margin: 0;
	}

	section.widget_text:has(.ad-banner) {
		margin: 0 auto !important;
		padding: 0 !important;
		width: auto;
	}

	.textwidget.custom-html-widget:has(.ad-banner) {
		margin: 0 auto !important;
		display: flex;
		justify-content: space-around;
	}

	.ad-banner {
		margin: 10px !important;
	}

	/* Events Calendar */
	.tribe-common .tribe-common-g-row--gutters {
		margin-left: 0 !important;
		margin-right: 0 !important;
	}

	.tribe-events .tribe-common-l-container,
	.tribe-events .tribe-events-l-container {
		padding: 16px 12px !important;
	}

	.tribe-events-header__events-bar,
	.tribe-events-c-events-bar {
		flex-direction: column !important;
		align-items: stretch !important;
		padding: 12px !important;
	}

	.tribe-events-c-events-bar__search-container {
		min-width: 100% !important;
	}

	.tribe-events-c-search {
		flex-direction: column !important;
		gap: 12px !important;
	}

	.tribe-events-c-search__input,
	.tribe-events-c-search__button {
		width: 100% !important;
	}

	.tribe-events-c-events-bar__views {
		width: 100% !important;
		justify-content: center !important;
	}

	.tribe-events-c-view-selector__list {
		flex: 1 !important;
		justify-content: stretch !important;
	}

	.tribe-events-c-view-selector__list-item {
		flex: 1 !important;
	}

	.tribe-events-c-top-bar,
	.tribe-events-header__top-bar {
		flex-direction: column !important;
		align-items: stretch !important;
		gap: 12px !important;
		padding: 12px !important;
	}

	.tribe-events-c-top-bar__nav-list {
		justify-content: center !important;
	}

	.tribe-events-c-top-bar__datepicker {
		flex-direction: column !important;
		gap: 8px !important;
	}

	.tribe-events-c-top-bar__datepicker-button,
	.tribe-events-c-top-bar__datepicker-input {
		width: 100% !important;
	}

	.tribe-events-calendar-latest-past__event-row {
		flex-direction: column !important;
		padding: 16px !important;
		gap: 16px !important;
	}

	.tribe-events-calendar-latest-past__event-date-tag {
		width: 100% !important;
		max-width: 100px !important;
	}

	.tribe-events-calendar-latest-past__event {
		flex-direction: column !important;
		gap: 16px !important;
	}

	.tribe-events-calendar-latest-past__event-featured-image-wrapper {
		width: 100% !important;
	}

	.tribe-events-calendar-latest-past__event-details {
		min-width: 100% !important;
	}

	.tribe-events-calendar-list__event-row {
		flex-direction: column !important;
		padding: 16px !important;
		gap: 16px !important;
	}

	.tribe-events-calendar-list__event-date-tag {
		width: 100% !important;
		max-width: 120px !important;
		align-self: flex-start !important;
	}

	.tribe-events-calendar-list__event-title-link,
	.tribe-common-h3.tribe-events-calendar-list__event-title a {
		font-size: 20px !important;
	}

	.tribe-events h2,
	.tribe-events .tribe-events-header__title,
	.tribe-events-calendar-latest-past__heading {
		font-size: 24px !important;
	}

	.single-tribe_events .tribe-events-content,
	.single-tribe_events .tribe-common,
	.single-tribe_events .tribe-events-event-meta {
		padding: 0 24px;
	}

	.single-tribe_events .tribe-events-event-meta {
		padding-top: 24px;
	}

	.tribe-events-calendar-latest-past__event-description,
	.tribe-events-calendar-list__event-description {
		font-size: 14px !important;
	}

	/* Directorist - Profile */

	.profile-page h4.directorist-title,
	.profile-page .directorist-user-dashboard-tab input[type="text"],
	.profile-page .directorist-user-dashboard-tab li a,
	.profile-page .guide-card a.link-more,
	.profile-page .mp_wrapper * {
		font-size: 12px !important;
	}

	.profile-page div#mepr-account-nav {
		gap: 3px !important;
		padding: 10px !important;
		justify-content: space-between !important;
	}

	.profile-page .mepr-nav-item a {
		padding: 5px 10px !important;
	}

	.profile-page .mepr-nav-item.mepr-active-nav-tab a {
		padding: 5px !important;
		margin-left: 8px;
	}

	.entry-content-wrapper--sidebar,
	.profile-page .directorist-container-fluid,
	.directorist-user-dashboard-tab .directorist-user-dashboard-tab__nav {
		padding: 0 !important;
		border: none !important;
		box-shadow: none !important;
	}

	.directorist-user-dashboard-tab input[type="text"] {
		font-weight: 300 !important;
		padding: 10px !important;
	}

	.mepr-account-table thead {
		display: none;
	}

	/* Directorist */
	.directorist-single-contents-area .directorist-card:not(.directorist-widget):not(.widget_text) {
		margin: 0 !important;
		margin-top: 10px !important;
	}

	.salary-range .directorist-details-info-wrap {
		flex-direction: column !important;
	}

	.salary-range .directorist-form-group__with-prefix {
		display: flex !important;
		justify-content: flex-end !important;
	}

	.salary-range .directorist-details-info-wrap .directorist-single-info__label__text {
		min-width: auto !important;
	}

	.salary-range .directorist-details-info-wrap .directorist-single-info {
		gap: 0 !important;
	}

	.directorist-single-contents-area .directorist-card .directorist-card__header,
	.directorist-single-contents-area .directorist-card .directorist-card__body {
		padding: 10px !important;
	}

	.single-at_biz_dir .directorist-single-contents-area .directorist-col-lg-4 {
		margin: 0 auto;
		width: 100% !important;
		max-width: none !important;
	}

	.salary-range .directorist-single-info__value {
		margin-top: -24px;
	}

	.directorist-single-info.directorist-listing-details__text p span {
		font-size: 14px !important;
	}

	.directorist-single .directorist-single-wrapper h1 {
		font-size: 1.75rem !important;
	}

	.directorist-single .directorist-single-wrapper > div[class*="directorist"] {
		padding: 24px !important;
	}

	.directorist-single .directorist-single-wrapper > div:nth-child(6) > div {
		grid-template-columns: 1fr !important;
	}

	.directorist-single .directorist-single-wrapper > div:nth-child(8) > div {
		flex-direction: column !important;
		align-items: center !important;
		text-align: center !important;
	}

	.directorist-contact-info {
		grid-template-columns: 1fr !important;
	}

	.directorist-search-field .directorist-price-ranges__item.directorist-form-group label {
		font-size: 12px !important;
	}

	.directorist-single-listing-top.directorist-flex {
		gap: 6px !important;
		padding: 10px !important;
	}

	.directorist-single-listing-top .directorist-return-back.directorist-btn {
		flex: 0 0 auto !important;
		width: auto !important;
		padding: 9px 12px !important;
		font-size: 12px !important;
		min-height: 32px !important;
		border-radius: 8px !important;
	}

	.directorist-single-listing-top .directorist-return-back .directorist-single-listing-action__text {
		display: none !important;
	}

	.directorist-single-listing-top .directorist-single-listing-quick-action.directorist-flex {
		gap: 4px !important;
		flex-wrap: nowrap !important;
		flex: 1 1 auto !important;
		justify-content: flex-end !important;
	}

	.directorist-single-listing-quick-action .directorist-btn {
		padding: 8px !important;
		min-height: 32px !important;
		min-width: 32px !important;
		border-radius: 8px !important;
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
	}

	.directorist-single-listing-quick-action button.atbdp-favourites.directorist-btn,
	.directorist-single-listing-quick-action div.directorist-social-share.directorist-btn {
		width: 32px !important;
		height: 32px !important;
		padding: 6px !important;
	}

	.directorist-single-listing-quick-action div.directorist-social-share.directorist-btn {
		font-size: 0 !important;
		line-height: 0 !important;
	}

	.directorist-single-listing-quick-action div.directorist-social-share .directorist-icon-mask {
		width: 18px !important;
		height: 18px !important;
		min-width: 18px !important;
		background-color: currentColor !important;
		-webkit-mask-image: var(--directorist-icon) !important;
		mask-image: var(--directorist-icon) !important;
		-webkit-mask-size: contain !important;
		mask-size: contain !important;
		-webkit-mask-repeat: no-repeat !important;
		mask-repeat: no-repeat !important;
		-webkit-mask-position: center !important;
		mask-position: center !important;
	}

	.directorist-single-listing-quick-action button.directorist-action-report.directorist-btn {
		padding: 6px 10px !important;
		font-size: 12px !important;
		white-space: nowrap !important;
		width: auto !important;
		height: 32px !important;
	}

	a.directorist-single-listing-action.directorist-btn.directorist-btn-sm.directorist-btn-light.directorist-single-listing-top__btn-edit {
		width: auto !important;
	}

	.directorist-single-listing-quick-action .directorist-action-report .directorist-single-listing-action__text {
		display: inline !important;
		font-size: 13px !important;
	}

	.directorist-single-listing-top .directorist-icon-mask {
		width: 18px !important;
		height: 18px !important;
		min-width: 18px !important;
	}

	/* Hide non-essential table columns on mobile */
	.directorist-table .directorist-table-status,
	.directorist-table .directorist-table-listing-type,
	.directorist-table .directorist-table-ex-date,
	.directorist-dashboard-listings-tbody tr td:nth-child(2),
	.directorist-dashboard-listings-tbody tr td:nth-child(3),
	.directorist-dashboard-listings-tbody tr td:nth-child(4) {
		display: none !important;
	}

	.directorist-table .directorist-table-listing,
	.directorist-dashboard-listings-tbody tr td:first-child {
		max-width: 120px !important;
		font-size: 0.875rem !important;
		overflow: hidden !important;
		text-overflow: ellipsis !important;
	}

	.directorist-table .directorist-table-actions,
	.directorist-dashboard-listings-tbody tr td:last-child {
		font-size: 0.8125rem !important;
		white-space: nowrap !important;
		width: auto !important;
	}

	.multistep-wizard {
		margin: 0 clamp(12px, 3vw, 20px) !important;
		padding: clamp(16px, 4vw, 24px) !important;
		border-radius: 12px !important;
		flex-direction: column !important;
	}

	.directorist-single-wrapper {
		margin: 0 !important;
		padding: clamp(16px, 4vw, 24px) !important;
	}

	.directorist-details-info-wrap ul li {
		font-size: 14px !important;
	}

	.multistep-wizard__nav {
		flex-direction: column !important;
		gap: 8px !important;
	}

	.multistep-wizard__nav__btn {
		width: 100% !important;
		justify-content: flex-start !important;
		margin: 0 0 8px 0 !important;
	}

	.directorist-btn,
	.directorist-btn-primary,
	.directorist-btn-secondary {
		width: 100% !important;
		font-size: 15px !important;
		font-weight: 300 !important;
		margin-top: 0 !important;
		padding: 0 20px !important;
		color: var(--directorist-color-primary) !important;
		background-color: var(--directorist-color-light) !important;
		border: 2px solid var(--directorist-color-white);
	}

	.directorist-archive-contents {
		padding: clamp(16px, 4vw, 24px) 0;
	}

	.directorist-archive-contents__top {
		margin: 0 clamp(16px, 4vw, 24px) clamp(16px, 4vw, 24px);
		padding: clamp(16px, 4vw, 20px);
		flex-direction: column !important;
		align-items: stretch !important;
		text-align: center !important;
	}

	.directorist-listing-single__info {
		padding: var(--community-spacing-md) !important;
	}

	.directorist-listing-single__title a {
		font-size: var(--community-font-size-lg) !important;
	}

	.directorist-listing-single__price {
		font-size: var(--community-font-size-xl) !important;
	}

	.directorist-listing-single__footer {
		flex-direction: column !important;
		gap: var(--community-spacing-sm) !important;
		align-items: stretch !important;
	}

	.directorist-listing-single__actions {
		justify-content: center !important;
	}

	.directorist-search-form-top {
		grid-template-columns: 1fr !important;
		gap: var(--community-spacing-md) !important;
	}

	.directorist-search-form-action {
		flex-direction: column !important;
		align-items: stretch !important;
	}

	.directorist-search-result-header {
		flex-direction: column !important;
		align-items: stretch !important;
		text-align: center !important;
	}

	.directorist-view-options {
		justify-content: center !important;
	}

	.directorist-single-contents-area {
		padding: var(--community-spacing-md) 0 !important;
	}

	.directorist-single-listing-header,
	.directorist-single-listing-content,
	.directorist-single-listing-gallery {
		margin-left: var(--community-spacing-md) !important;
		margin-right: var(--community-spacing-md) !important;
		padding: 0 !important;
	}

	.directorist-single-listing-header h1 {
		font-size: var(--community-font-size-2xl) !important;
	}

	.directorist-single-listing-header .directorist-listing-meta {
		flex-direction: column !important;
		gap: var(--community-spacing-md) !important;
	}

	.directorist-author-info {
		flex-direction: column !important;
		text-align: center !important;
	}

	.directorist-listing-single {
		margin: 0 var(--community-spacing-md) var(--community-spacing-md) !important;
	}

	.directorist-listing-single h2 {
		font-size: var(--community-font-size-xl) !important;
	}

	.directorist-listing-single__meta {
		justify-content: center !important;
	}

	.directorist-user-dashboard__nav,
	.directorist-tab__nav__item,
	.directorist-tab__nav__link,
	.directorist-btn--add-listing {
		visibility: visible !important;
		display: flex !important;
	}

	.directorist-user-dashboard__nav .directorist-tab__nav__items {
		flex-direction: column !important;
		gap: 8px !important;
	}

	.directorist-tab__nav__action {
		width: 100% !important;
		margin-top: 16px !important;
	}

	.directorist-user-dashboard-tab,
	.directorist-user-dashboard-area,
	.directorist-dashboard-mylistings,
	.directorist-user-dashboard-tabcontent,
	.directorist-listing-table,
	.directorist-table-responsive {
		max-width: 100% !important;
		overflow-x: auto !important;
	}

	.directorist-table {
		width: 100% !important;
		table-layout: fixed !important;
	}

	.directorist-table th,
	.directorist-table td {
		white-space: normal !important;
		word-wrap: break-word !important;
		padding: 8px !important;
	}

	.directorist-add-listing-wrapper .multistep-wizard__nav {
		margin-left: 0 !important;
	}

	/* Directory Page */
	.directory-page .directorist-archive-contents__top {
		margin: 0 !important;
		border-radius: 0 !important;
		padding: 16px !important;
	}

	.directory-page .directorist-header-bar {
		flex-direction: column !important;
		gap: 12px !important;
	}

	.directory-page .directorist-header-bar__left,
	.directory-page .directorist-header-bar__right {
		width: 100% !important;
		justify-content: space-between !important;
	}

	.directory-page .directorist-header-bar .directorist-btn {
		flex: 1 !important;
		justify-content: center !important;
	}

	.directory-page[data-directorist-type="jobs"] .directorist-btn-archive-filter,
	.directory-page[data-directorist-type="resumes"] .directorist-btn-archive-filter,
	.directory-page[data-directorist-type="equipment"] .directorist-btn-archive-filter {
		min-width: 0 !important;
		flex: 1 !important;
	}

	/* MemberPress */
	.mepr-membership-card {
		padding: 20px 16px !important;
	}

	.mepr-membership-price-wrap {
		flex-direction: column !important;
		gap: 4px !important;
	}

	.mepr-membership-actions {
		flex-direction: column !important;
		gap: 12px !important;
	}

	.mepr-membership-actions .button {
		width: 100% !important;
	}

	.mepr-nav-item {
		width: 100% !important;
	}

	.mepr-account-nav {
		flex-direction: column !important;
		gap: 8px !important;
	}

	.mepr-account-nav .mepr-nav-item a {
		width: 100% !important;
		justify-content: center !important;
		padding: 14px 20px !important;
	}

	.mepr-account-content {
		padding: 20px 16px !important;
	}

	.profile-page .mp_wrapper table.mepr-account-table td {
		border-left: none !important;
	}

	.mepr-account-table thead {
		display: none !important;
	}

	.mepr-account-table tbody tr {
		display: block !important;
		margin-bottom: 16px !important;
		border: 1px solid var(--community-color-border) !important;
		border-radius: 8px !important;
		padding: 16px !important;
	}

	.mepr-account-table tbody td {
		display: flex !important;
		justify-content: space-between !important;
		padding: 8px 0 !important;
		border-bottom: 1px solid var(--community-color-border) !important;
	}

	.mepr-account-table tbody td:last-child {
		border-bottom: none !important;
	}

	.mepr-account-table tbody td::before {
		content: attr(data-label) !important;
		font-weight: 600 !important;
		color: var(--community-color-text-primary) !important;
	}

	.mepr-favorites-list {
		grid-template-columns: 1fr !important;
		gap: 16px !important;
	}

	.mepr-favorite-item {
		padding: 16px !important;
	}

	.mepr-favorite-item .listing-title {
		font-size: 16px !important;
	}

	.mepr-favorite-item .listing-actions {
		flex-direction: column !important;
		gap: 8px !important;
	}

	.mepr-favorite-item .listing-actions .button {
		width: 100% !important;
		justify-content: center !important;
	}

	.mepr-profile-fields {
		grid-template-columns: 1fr !important;
	}

	.mepr-profile-field input,
	.mepr-profile-field select,
	.mepr-profile-field textarea {
		width: 100% !important;
	}

	.mepr-profile-avatar {
		margin: 0 auto 24px !important;
		display: block !important;
	}

	.mepr-profile-actions {
		flex-direction: column !important;
		gap: 12px !important;
	}

	.mepr-profile-actions .button {
		width: 100% !important;
	}

	.mepr-membership-price {
		font-size: 28px !important;
	}

	.mepr-membership-features {
		gap: 8px !important;
	}

	.mepr-membership-feature {
		font-size: 14px !important;
	}

	/* Customizer Widgets */
	.community-layout-widget-item {
		padding: 12px 14px;
	}

	.community-layout-widget-title {
		font-size: 14px;
	}

	.community-layout-widget-type {
		font-size: 12px;
	}
}
