:root {
	/* Colors */
	--atdw-search-color-white: #fff;
	--atdw-search-color-background-primary: #F5F2EF; /* Primary background, e.g., search section */
	--atdw-search-color-background-secondary: #fff;   /* Secondary background, e.g., popular section, results */
	--atdw-search-color-background-overlay-start: #F5F2EF;
	--atdw-search-color-background-overlay-end: #fff;
	--atdw-search-color-background-image-placeholder: #f5f5f5;
	--atdw-search-color-text-primary: #000;
	--atdw-search-color-text-secondary: #333; /* For less prominent text, icons */
	--atdw-search-color-text-muted: #666;     /* For meta text, counts */
	--atdw-search-color-border-light: #ddd;
	--atdw-search-color-border-medium: #E5DFD6; /* Divider */
	--atdw-search-color-accent-primary: #701F25; /* Main accent, e.g., filter checkbox, titles */
	--atdw-search-color-accent-secondary: #8C1D18; /* Secondary accent, e.g., pagination active, button hover */
	--atdw-search-color-error-background: #f8d7da;
	--atdw-search-color-error-text: #721c24;
	--atdw-search-color-transparent: transparent;

	/* Typography */
	--atdw-search-font-family-primary: "Poppins", sans-serif;
	--atdw-search-font-size-xxs: 12px; /* Meta, breadcrumb */
	--atdw-search-font-size-xs: 13px;  /* Filter options */
	--atdw-search-font-size-base: 16px;/* Default text, input */
	--atdw-search-font-size-md: 18px;  /* Filter h3, mobile popular h3 */
	--atdw-search-font-size-lg: 20px;  /* Search input, section h2, popular links */
	--atdw-search-font-size-xl: 24px;  /* Result title */
	--atdw-search-font-size-xxl: 40px; /* Mobile results title */
	--atdw-search-font-size-xxxl: 60px;/* Desktop results title */

	--atdw-search-font-weight-light: 300;
	--atdw-search-font-weight-normal: 400;
	--atdw-search-font-weight-medium: 500;
	--atdw-search-font-weight-semibold: 600;
	--atdw-search-font-weight-bold: 700;

	/* Spacing - General purpose gaps, paddings, margins */
	--atdw-search-spacing-xs: 4px;
	--atdw-search-spacing-s: 5px;
	--atdw-search-spacing-sm: 8px;
	--atdw-search-spacing-smd: 10px;
	--atdw-search-spacing-md-compact: 12px;
	--atdw-search-spacing-md: 15px;
	--atdw-search-spacing-lg: 20px;
	--atdw-search-spacing-xl: 25px;
	--atdw-search-spacing-xxl: 30px;
	--atdw-search-spacing-xxxl: 40px;
	--atdw-search-spacing-mega: 50px;
	--atdw-search-spacing-giga: 70px;
	--atdw-search-spacing-tera: 100px;

	/* Borders */
	--atdw-search-border-radius-none: 0;
	--atdw-search-border-radius-sm: 3px;
	--atdw-search-border-radius-md: 4px;
	--atdw-search-border-radius-lg: 10px;
	--atdw-search-border-radius-xl: 12px;
	--atdw-search-border-radius-round: 50%;

	--atdw-search-border-width-thin: 1px;
	--atdw-search-border-width-medium: 2px;

	--atdw-search-border-input: var(--atdw-search-border-width-thin) solid var(--atdw-search-color-border-light);
	--atdw-search-border-bottom-input: var(--atdw-search-border-width-thin) solid var(--atdw-search-color-text-primary);
	--atdw-search-border-divider: var(--atdw-search-border-width-thin) solid var(--atdw-search-color-border-medium);
	--atdw-search-border-checkbox: var(--atdw-search-border-width-medium) solid var(--atdw-search-color-text-primary);

	/* Transitions */
	--atdw-search-transition-duration-fast: 0.2s;
	--atdw-search-transition-duration-normal: 0.3s;
	--atdw-search-transition-duration-slow: 0.8s;
	--atdw-search-transition-timing-function-ease: ease;
	--atdw-search-transition-timing-function-ease-in: ease-in;
	--atdw-search-transition-timing-function-linear: linear;

	--atdw-search-transition-all-fast: all var(--atdw-search-transition-duration-fast) var(--atdw-search-transition-timing-function-ease);
	--atdw-search-transition-all-normal: all var(--atdw-search-transition-duration-normal) var(--atdw-search-transition-timing-function-ease);
	--atdw-search-transition-opacity-fast: opacity var(--atdw-search-transition-duration-fast) var(--atdw-search-transition-timing-function-ease);
	--atdw-search-transition-transform-normal: transform var(--atdw-search-transition-duration-normal) var(--atdw-search-transition-timing-function-ease);
	--atdw-search-transition-search-section: background var(--atdw-search-transition-duration-normal) var(--atdw-search-transition-timing-function-ease), padding var(--atdw-search-transition-duration-normal) var(--atdw-search-transition-timing-function-ease);
	--atdw-search-transition-popular-section: background var(--atdw-search-transition-duration-normal) var(--atdw-search-transition-timing-function-ease), height var(--atdw-search-transition-duration-normal) var(--atdw-search-transition-timing-function-ease), width var(--atdw-search-transition-duration-normal) var(--atdw-search-transition-timing-function-ease);

	/* Z-index */
	--atdw-search-z-index-overlay: 9999;
	--atdw-search-z-index-checkbox-hidden: -1;

	/* Max Widths */
	--atdw-search-max-width-form-wrapper: 600px;
	--atdw-search-max-width-content: 1200px; /* For containers like header, split-container */
	--atdw-search-max-width-form-search-state: 550px;

	/* Component Specific Dimensions & Values */
	--atdw-search-checkbox-size: 18px;
	--atdw-search-checkbox-padding-left: 30px;
	--atdw-search-checkbox-checkmark-width: 6px;
	--atdw-search-checkbox-checkmark-height: 11px;
	--atdw-search-checkbox-checkmark-offset-left: 6px;
	--atdw-search-checkbox-checkmark-offset-top: 2px;

	--atdw-search-pagination-item-min-width: 35px;
	--atdw-search-pagination-item-height: 35px;
	--atdw-search-pagination-item-min-width-mobile: 25px;
	--atdw-search-pagination-item-height-mobile: 30px;
	--atdw-search-pagination-button-padding-x: 5px;

	--atdw-search-loading-spinner-size: 30px;
	--atdw-search-loading-spinner-border-width: 2px;
	--atdw-search-loading-spinner-border-color: rgba(140, 29, 24, 0.2); /* --atdw-search-color-accent-secondary with alpha */
	--atdw-search-loading-spinner-border-top-color: var(--atdw-search-color-accent-secondary);

	--atdw-search-icon-size-md: 18px;

	--atdw-search-sidebar-width: 230px;
	--atdw-search-layout-offset-right: 250px; /* For elements that need to account for sidebar + gap */

	--atdw-search-container-padding-x: 20px; /* Horizontal breathing room for overlay containers */
}

body:has(.atdw-search-overlay.atdw-search-overlay-active) {
	overflow: hidden;
}

.atdw-search-form-wrapper {
	position: relative;
	max-width: var(--atdw-search-max-width-form-wrapper);
	margin: 0 auto;
}

.atdw-search-input {
	flex: 1;
	padding: var(--atdw-search-spacing-md-compact) var(--atdw-search-spacing-md);
	font-size: var(--atdw-search-font-size-base);
	border: var(--atdw-search-border-input);
	border-radius: var(--atdw-search-border-radius-none);
	background-color: var(--atdw-search-color-white);
}

.atdw-search-container button,
.atdw-search-header-container button {
	align-items: center;
	background: var(--atdw-search-color-transparent);
	border: none;
	cursor: pointer;
	display: flex;
	justify-content: center;
}

.atdw-search-container button:hover,
.atdw-search-container button:focus,
.atdw-search-header-container button:hover,
.atdw-search-header-container button:focus {
	background: var(--atdw-search-color-transparent);
}

.atdw-search-header-button {
	padding: var(--atdw-search-spacing-md-compact) var(--atdw-search-spacing-md);
}

.atdw-search-button {
	padding: var(--atdw-search-spacing-md-compact) var(--atdw-search-spacing-md);
}

/* Search Overlay */
.atdw-search-overlay {
	background-color: var(--atdw-search-color-background-secondary);
	background-image: linear-gradient(90deg, var(--atdw-search-color-background-overlay-start) 50%, var(--atdw-search-color-background-overlay-end) 50%);
	display: none;
	left: 0;
	height: 100%;
	overflow-y: auto;
	position: fixed;
	top: 0;
	width: 100%;
	z-index: var(--atdw-search-z-index-overlay);
}

.atdw-search-overlay-active {
	display: flex;
}

.atdw-search-container {
	align-items: center;
	display: flex;
	flex-direction: column;
	height: 100%;
	margin: 0;
	padding: 0;
	position: relative;
	width: 100%;
}

.atdw-search-header-container {
	height: 100%;
	margin: 0;
	padding: 0;
	display: flex;
	align-items: center;
	justify-content: center;
}

.atdw-search-header {
	display: flex;
	max-width: var(--atdw-search-max-width-content);
	position: relative;
	width: 100%;
}

.atdw-search-close {
	color: var(--atdw-search-color-text-secondary);
	padding: 0;
	position: absolute;
	right: var(--atdw-search-container-padding-x);
	top: 0;
	transition: none;
}

.atdw-search-close:hover,
.atdw-search-close:focus {
	opacity: 0.8;
}

/* Main Search Form */
.atdw-search-form {
	align-items: center;
	display: flex;
	gap: var(--atdw-search-spacing-smd);
	margin: 0;
	padding: 0;
	position: relative;
	width: 100%;
}

/* .atdw-search-overlay[data-active-breakpoint='mobile'] .atdw-search-form {
	max-width: 500px;
} */

#atdw-search-input {
	background-color: var(--atdw-search-color-transparent);
	border: none;
	border-bottom: var(--atdw-search-border-bottom-input);
	border-radius: var(--atdw-search-border-radius-none);
	font-family: var(--atdw-search-font-family-primary);
	font-size: var(--atdw-search-font-size-lg);
	font-weight: var(--atdw-search-font-weight-normal);
	margin: 0;
	outline: none;
	padding: 0;
	width: 100%;
}

#atdw-search-button {
	padding: var(--atdw-search-spacing-s);
}

#atdw-search-button:hover,
#atdw-search-button:focus {
	opacity: 0.8;
}

.atdw-search-overlay[data-active-breakpoint='mobile'] #atdw-search-button {
	padding: var(--atdw-search-spacing-s) 0;
}

.atdw-search-form-container {
	align-items: center;
	background-color: var(--atdw-search-color-background-secondary);
	background-image: linear-gradient(90deg, var(--atdw-search-color-background-overlay-start) 50%, var(--atdw-search-color-background-overlay-end) 50%);
	display: flex;
	flex: 1;
	height: 100%;
	justify-content: center;
	width: 100%;
}

.atdw-search-overlay.atdw-searching .atdw-search-form-container {
	background-color: var(--atdw-search-color-background-primary);
	background-image: none;
	flex: 0;
}

/* Split Layout Container */
.atdw-split-container {
	align-items: stretch;
	display: flex;
	gap: 0px;
	height: 100%;
	justify-content: center;
	max-width: var(--atdw-search-max-width-content);
	width: 100%;
}

.atdw-search-section {
	align-items: start;
	background-color: var(--atdw-search-color-background-primary);
	display: flex;
	flex-direction: column;
	flex: 3;
	gap: var(--atdw-search-spacing-xxl);
	padding-left: var(--atdw-search-container-padding-x);
	padding-right: var(--atdw-search-spacing-xxxl);
	padding-top: var(--atdw-search-spacing-tera);
	transition: var(--atdw-search-transition-search-section);
	padding-bottom: var(--atdw-search-spacing-giga);
}

.atdw-popular-section {
	background-color: var(--atdw-search-color-background-secondary);
	flex: 1;
	padding-left: var(--atdw-search-spacing-mega);
	padding-right: var(--atdw-search-container-padding-x);
	padding-top: var(--atdw-search-spacing-tera);
	transition: var(--atdw-search-transition-popular-section);
}

.atdw-search-section h2 {
	color: var(--atdw-search-color-text-primary);
	font-family: var(--atdw-search-font-family-primary);
	font-size: var(--atdw-search-font-size-lg);
	font-weight: var(--atdw-search-font-weight-bold);
	margin: 0;
	padding: 0;
}

.atdw-search-overlay[data-active-breakpoint='mobile'] .atdw-search-form h2 {
	text-align: center;
}

.atdw-search-overlay.atdw-searching.atdw-search-overlay {
	background-image: linear-gradient(var(--atdw-search-color-white) 0%);
}

.atdw-search-overlay.atdw-searching .atdw-search-container {
	padding: 0px;
}

.atdw-search-overlay[data-active-breakpoint='mobile'] .atdw-search-container {
	padding-left: 0;
	padding-right: 0;
}

.atdw-search-overlay.atdw-searching .atdw-split-container {
	background-color: var(--atdw-search-color-background-primary);
	flex: 1;
	max-width: unset;
	padding-bottom: 0;
	transition: none;
}

/* .atdw-search-overlay.atdw-searching[data-active-breakpoint='desktop'] .atdw-split-container {
	padding-bottom: 75px;
} */

.atdw-search-overlay[data-active-breakpoint='mobile'] .atdw-split-container {
	background-color: var(--atdw-search-color-background-primary);
	flex: 1;
	max-width: unset;
	transition: none;
}

.atdw-search-overlay.atdw-searching:not([data-active-breakpoint='mobile']) .atdw-split-container .atdw-search-form,
.atdw-search-overlay[data-active-breakpoint='mobile'] .atdw-split-container .atdw-search-form {
	max-width: var(--atdw-search-max-width-form-search-state);
}

.atdw-search-overlay.atdw-searching .atdw-search-section {
	align-items: center;
	flex: 1;
	/** max-width: 1200px; /* Apply max-width here instead on .atdw-search-header-container */
	padding-left: 0;
	padding-right: 0;
}

.atdw-search-overlay.atdw-searching .atdw-popular-section {
	display: none;
}

/* Results Container */
.atdw-search-results-container {
	align-items: start;
	background-color: var(--atdw-search-color-background-secondary);
	display: none; /* Initially hidden */
	justify-content: center;
	max-width: var(--atdw-search-max-width-content);
	transition: var(--atdw-search-transition-all-normal);
	width: 100%;
}

.atdw-search-overlay.atdw-searching .atdw-search-results-container {
	animation: fadeIn var(--atdw-search-transition-duration-normal) var(--atdw-search-transition-timing-function-ease-in);
	display: flex;
	flex: 1;
	gap: var(--atdw-search-spacing-xxxl);
	padding-bottom: var(--atdw-search-spacing-mega);
	padding-left: var(--atdw-search-container-padding-x);
	padding-right: var(--atdw-search-container-padding-x);
	padding-top: var(--atdw-search-spacing-tera);
	position: relative;
}

.atdw-search-overlay[data-active-breakpoint='mobile'] .atdw-search-results-container {
	align-items: center;
	padding-top: var(--atdw-search-spacing-xxl);
}

.atdw-search-breadcrumb {
	padding-right: var(--atdw-search-layout-offset-right);
	text-align: center;
}

.atdw-search-breadcrumb p {
	color: var(--atdw-search-color-text-primary);
	font-family: var(--atdw-search-font-family-primary);
	font-size: var(--atdw-search-font-size-xxs);
	line-height: 14.4px;
	font-weight: var(--atdw-search-font-weight-normal);
	margin-block-end: 0;
	text-transform: uppercase;
	text-decoration: none;
}

.atdw-search-breadcrumb span,
.atdw-search-breadcrumb a {
	color: inherit;
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
	font-weight: inherit;
	text-transform: inherit;
	text-decoration: inherit;
}

.atdw-search-overlay[data-active-breakpoint='mobile'] .atdw-search-breadcrumb {
	display: none;
	padding-right: 0;
}

@keyframes fadeIn {
	from { opacity: 0; }
	to { opacity: 1; }
}

/* Filters Sidebar */
.atdw-search-filter-container{
	display: block;
	flex-shrink: 0;
	margin-top: 50px;
	width: var(--atdw-search-sidebar-width);
}

.atdw-search-filter-mobile-container {
	align-items: center;
	background-color: var(--atdw-search-color-white);
	border-radius: var(--atdw-search-border-radius-xl);
	box-shadow: 0 4px 8px 3px rgba(0,0,0,0.15);
	cursor: pointer;
	display: none;
	font-family: var(--atdw-search-font-family-primary);
	margin-bottom: var(--atdw-search-spacing-xxxl);
	padding: var(--atdw-search-spacing-lg);
}

.atdw-search-filter-mobile-container .filter-by-label {
	align-items: center;
	color: var(--atdw-search-color-accent-primary);
	display: flex;
	flex: 1;
	font-weight: var(--atdw-search-font-weight-medium);
	font-size: var(--atdw-search-font-size-base);
	gap: var(--atdw-search-spacing-smd);
	justify-content: space-between;
}

.atdw-search-overlay[data-active-breakpoint='mobile'] .atdw-search-filter-container{
	display: none;
}

.atdw-search-overlay[data-active-breakpoint='mobile'] .atdw-search-filter-mobile-container {
	display: flex;
}

.atdw-search-filter-container h3 {
	align-items: center;
	color: var(--atdw-search-color-text-primary);
	display: flex;
	font-family: var(--atdw-search-font-family-primary);
	font-size: var(--atdw-search-font-size-md);
	font-weight: var(--atdw-search-font-weight-semibold);
	gap: var(--atdw-search-spacing-smd);
	margin-bottom: var(--atdw-search-spacing-xxl);
	text-transform: uppercase;
}

/* .atdw-search-filter-containerh3::before {
	content: "";
	display: inline-block;
	width: 16px;
	height: 16px;
	margin-right: 10px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238C1D18' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='4' y1='21' x2='4' y2='14'%3E%3C/line%3E%3Cline x1='4' y1='10' x2='4' y2='3'%3E%3C/line%3E%3Cline x1='12' y1='21' x2='12' y2='12'%3E%3C/line%3E%3Cline x1='12' y1='8' x2='12' y2='3'%3E%3C/line%3E%3Cline x1='20' y1='21' x2='20' y2='16'%3E%3C/line%3E%3Cline x1='20' y1='12' x2='20' y2='3'%3E%3C/line%3E%3Cline x1='1' y1='14' x2='7' y2='14'%3E%3C/line%3E%3Cline x1='9' y1='8' x2='15' y2='8'%3E%3C/line%3E%3Cline x1='17' y1='16' x2='23' y2='16'%3E%3C/line%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
} */

.atdw-filter-groups,
.atdw-filter-subgroups {
	display: flex;
	flex-direction: column;
	gap: var(--atdw-search-spacing-md);
}

/* Custom checkbox styling */
.atdw-filter-group,
.atdw-filter-subgroup {
	margin-bottom: var(--atdw-search-spacing-sm);
	position: relative;
}

.atdw-filter-group label,
.atdw-filter-subgroup label {
	display: flex;
	align-items: center;
	cursor: pointer;
	font-family: var(--atdw-search-font-family-primary);
	font-size: var(--atdw-search-font-size-base);
	font-weight: var(--atdw-search-font-weight-medium);
	line-height: 1.2;
	text-transform: uppercase;
	color: var(--atdw-search-color-text-primary);
	position: relative;
	padding-left: var(--atdw-search-checkbox-padding-left); /* Space for the custom checkbox */
}

/* Hide the original checkbox */
.atdw-filter-group input[type="checkbox"],
.atdw-filter-subgroup input[type="checkbox"] {
	position: absolute;
	opacity: 0;
	cursor: pointer;
	height: 0;
	width: 0;
	z-index: var(--atdw-search-z-index-checkbox-hidden);
}

/* Create a custom checkbox */
.atdw-filter-group label:before,
.atdw-filter-subgroup label:before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	width: var(--atdw-search-checkbox-size);
	height: var(--atdw-search-checkbox-size);
	border: var(--atdw-search-border-checkbox);
	background-color: var(--atdw-search-color-white);
	transition: var(--atdw-search-transition-all-fast);
}

/* Create the checkmark (hidden when not checked) */
.atdw-filter-group label:after,
.atdw-filter-subgroup label:after {
	content: '';
	position: absolute;
	left: var(--atdw-search-checkbox-checkmark-offset-left);
	top: var(--atdw-search-checkbox-checkmark-offset-top);
	width: var(--atdw-search-checkbox-checkmark-width);
	height: var(--atdw-search-checkbox-checkmark-height);
	border: solid var(--atdw-search-color-accent-primary);
	border-width: 0 var(--atdw-search-border-width-medium) var(--atdw-search-border-width-medium) 0;
	transform: rotate(45deg);
	opacity: 0;
	transition: var(--atdw-search-transition-opacity-fast);
}

/* Show the checkmark when checked */
.atdw-filter-group input[type="checkbox"]:checked + label:after,
.atdw-filter-subgroup input[type="checkbox"]:checked + label:after {
	opacity: 1;
}

/* Style the checkbox when checked */
.atdw-filter-group input[type="checkbox"]:checked + label:before,
.atdw-filter-subgroup input[type="checkbox"]:checked + label:before {
	border-color: var(--atdw-search-color-accent-primary);
}

/* Hover effect */
.atdw-filter-group label:hover:before,
.atdw-filter-subgroup label:hover:before {
	border-color: var(--atdw-search-color-accent-secondary);
}

/* Count indicator styling */
.atdw-filter-group label span,
.atdw-filter-subgroup label span {
	color: var(--atdw-search-color-text-muted);
	font-size: var(--atdw-search-font-size-xxs);
	margin-left: var(--atdw-search-spacing-xs);
}

.atdw-town-options,
.atdw-category-options {
	margin-left: var(--atdw-search-spacing-xl);
	margin-top: var(--atdw-search-spacing-smd);
	display: flex;
	flex-direction: column;
	gap: var(--atdw-search-spacing-sm);
}

.atdw-filter-option label {
	font-size: var(--atdw-search-font-size-xs);
}

/* Mobile Filter Toggle Button */
.atdw-search-container .atdw-filter-toggle {
	display: none; /* Hidden on desktop */
	width: 100%;
	padding: var(--atdw-search-spacing-md-compact) var(--atdw-search-spacing-md);
	background-color: var(--atdw-search-color-accent-secondary);
	color: var(--atdw-search-color-white);
	text-align: left;
	font-size: var(--atdw-search-font-size-base);
	font-weight: var(--atdw-search-font-weight-semibold);
	cursor: pointer;
	margin-bottom: var(--atdw-search-spacing-md);
	position: relative;
	border-radius: var(--atdw-search-border-radius-md);
}

.atdw-search-container .atdw-filter-toggle .toggle-icon {
	position: absolute;
	right: 15px;
	top: 50%;
	transform: translateY(-50%);
	transition: var(--atdw-search-transition-transform-normal);
}

.atdw-search-container .atdw-filter-toggle .toggle-icon svg {
	width: var(--atdw-search-icon-size-md);
	height: var(--atdw-search-icon-size-md);
}

.atdw-search-container .atdw-filter-toggle.active .toggle-icon {
	transform: translateY(-50%) rotate(-90deg);
}

/* Results Area */
.atdw-results-wrapper {
	flex-grow: 1;
	min-height: 100%;
	width: 100%;
}

.atdw-results-wrapper .atdw-results-title {
	color: var(--atdw-search-color-accent-primary);
	font-family: var(--atdw-search-font-family-primary);
	font-size: var(--atdw-search-font-size-xxxl);
	font-weight: var(--atdw-search-font-weight-light);
	margin-bottom: var(--atdw-search-spacing-mega);
	margin-top: var(--atdw-search-spacing-lg);
	padding-right: var(--atdw-search-layout-offset-right);
	text-align: center;
	text-transform: uppercase;
}

.atdw-search-overlay[data-active-breakpoint='mobile'] .atdw-results-wrapper .atdw-results-title {
	display: none;
	padding-right: 0;
}

.atdw-results-wrapper .atdw-search-results {
	margin-bottom: var(--atdw-search-spacing-xxxl);
}

.atdw-results-wrapper .atdw-search-results .atdw-result-item {
	display: flex;
	margin-bottom: var(--atdw-search-spacing-xxl);
	padding-bottom: var(--atdw-search-spacing-xxl);
	border-bottom: var(--atdw-search-border-divider);
}

.atdw-results-wrapper .atdw-search-results .atdw-result-item:last-child {
	border-bottom: none;
}

.atdw-results-wrapper .atdw-search-results .atdw-result-item .atdw-result-image {
	width: 200px;
	height: 140px;
	background-size: cover;
	background-position: center;
	background-color: var(--atdw-search-color-background-image-placeholder);
	border-radius: var(--atdw-search-border-radius-lg);
	margin-right: var(--atdw-search-spacing-lg);
	flex-shrink: 0;
}

.atdw-results-wrapper .atdw-search-results .atdw-result-item .atdw-result-content {
	display: flex;
	flex-direction: column;
	flex-grow: 1;
	gap: var(--atdw-search-spacing-s);
}

.atdw-results-wrapper .atdw-search-results .atdw-result-item .atdw-result-content .atdw-result-meta {
	display: inline-block;
}

.atdw-results-wrapper .atdw-search-results .atdw-result-item .atdw-result-content .atdw-result-meta span {
	font-family: var(--atdw-search-font-family-primary);
	font-size: var(--atdw-search-font-size-xxs);
	font-weight: var(--atdw-search-font-weight-normal);
	text-transform: uppercase;
	margin-right: 0;
}

.atdw-results-wrapper .atdw-search-results .atdw-result-item .atdw-result-content .atdw-result-title {
	font-family: var(--atdw-search-font-family-primary);
	font-size: var(--atdw-search-font-size-xl);
	font-weight: var(--atdw-search-font-weight-medium);
	line-height: 1.2;
	margin: 0;
	padding: 0;
	text-transform: capitalize;
}

.atdw-results-wrapper .atdw-search-results .atdw-result-item .atdw-result-content .atdw-result-title a {
	color: var(--atdw-search-color-text-primary);
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit;
	line-height: inherit;
	text-decoration: none;
	text-transform: inherit;
}

.atdw-results-wrapper .atdw-search-results .atdw-result-item .atdw-result-content .atdw-result-title a:hover {
	text-decoration: underline;
}

.atdw-results-wrapper .atdw-search-results .atdw-result-item .atdw-result-content .atdw-result-excerpt {
	font-family: var(--atdw-search-font-family-primary);
	font-size: var(--atdw-search-font-size-base);
	font-weight: var(--atdw-search-font-weight-normal);
	line-height: 1.5;
	margin-top: var(--atdw-search-spacing-s);
}

/* No Results */
.atdw-no-results {
	display: none;
	text-align: center;
	padding: var(--atdw-search-spacing-xxxl) var(--atdw-search-layout-offset-right) var(--atdw-search-spacing-xxxl) 0;
}

.atdw-search-overlay[data-active-breakpoint='mobile'] .atdw-no-results {
	padding-right: 0; /* Overrides the general offset for mobile */
}

.atdw-no-results p {
	font-family: var(--atdw-search-font-family-primary);
	font-size: var(--atdw-search-font-size-md);
	margin-bottom: var(--atdw-search-spacing-xxl);
}

.atdw-search-overlay[data-active-breakpoint='mobile'] .atdw-no-results p {
	font-size: var(--atdw-search-font-size-base);
}

/* Popular Searches */
.atdw-popular-searches {
	display: flex;
	flex-direction: column;
	gap: var(--atdw-search-spacing-xl);
}

.atdw-popular-searches h3 {
	color: var(--atdw-search-color-text-primary);
	font-family: var(--atdw-search-font-family-primary);
	font-size: var(--atdw-search-font-size-lg);
	font-weight: var(--atdw-search-font-weight-bold);
	margin: 0;
	padding: 0;
}

.atdw-popular-searches ul {
	display: flex;
	flex-direction: column;
	gap: var(--atdw-search-spacing-lg);
	list-style: none;
	padding: 0;
	margin: 0;
}

/* .atdw-popular-searches ul li {
	margin-bottom: 12px;
} */

.atdw-popular-searches ul li a {
	color: var(--atdw-search-color-text-primary);
	font-family: var(--atdw-search-font-family-primary);
	font-size: var(--atdw-search-font-size-lg);
	font-weight: var(--atdw-search-font-weight-normal);
	display: block;
	text-decoration: none;
	transition: var(--atdw-search-transition-all-fast);
}

.atdw-search-overlay[data-active-breakpoint='mobile'] .atdw-popular-searches {
	gap: var(--atdw-search-spacing-md);
}

.atdw-search-overlay[data-active-breakpoint='mobile'] .atdw-popular-searches h3 {
	text-align: center;
	font-size: var(--atdw-search-font-size-md);
}

.atdw-search-overlay[data-active-breakpoint='mobile'] .atdw-popular-searches ul {
	align-items: center;
	gap: var(--atdw-search-spacing-md);
	justify-content: center;
}

.atdw-search-overlay[data-active-breakpoint='mobile'] .atdw-popular-searches ul li a {
	font-size: var(--atdw-search-font-size-md);
	text-align: center;
}

.atdw-popular-searches ul li a:hover {
	text-decoration: underline;
}

/* Pagination */
.atdw-search-overlay .atdw-search-pagination {
	display: flex;
	justify-content: center;
	margin-top: var(--atdw-search-spacing-xxl);
	flex-wrap: wrap;
	gap: 10px;
}

.atdw-search-overlay[data-active-breakpoint='mobile'] .atdw-search-pagination {
	gap: 0;
}

.atdw-search-overlay .atdw-pagination-item,
.atdw-search-overlay .atdw-pagination-prev,
.atdw-search-overlay .atdw-pagination-next,
.atdw-search-overlay .atdw-pagination-ellipsis {
	align-items: center;
	border: none;
	color: var(--atdw-search-color-accent-primary);
	display: inline-flex;
	justify-content: center;
	height: var(--atdw-search-pagination-item-height);
	min-width: var(--atdw-search-pagination-item-min-width);
	text-decoration: none;
	position: relative;
	font-family: var(--atdw-search-font-family-primary);
	font-size: var(--atdw-search-font-size-md);
	font-weight: var(--atdw-search-font-weight-medium);
}

.atdw-search-overlay .atdw-pagination-item:hover {
	color: var(--atdw-search-color-accent-primary);
}

.atdw-search-overlay .atdw-pagination-item:not(.active),
.atdw-search-overlay .atdw-pagination-prev[data-page],
.atdw-search-overlay .atdw-pagination-next[data-page] {
	cursor: pointer;
}

.atdw-search-overlay .atdw-pagination-item::after,
.atdw-search-overlay .atdw-pagination-prev::after,
.atdw-search-overlay .atdw-pagination-next::after {
	border-bottom: 2px solid var(--atdw-search-color-accent-primary);
	bottom: 2px;
	content: "";
	height: 100%;
	position: absolute;
	transition: all 0.1s ease;
	width: 0;
}

.atdw-search-overlay .atdw-pagination-item:hover::after,
.atdw-search-overlay .atdw-pagination-item.active::after,
.atdw-search-overlay .atdw-pagination-prev[data-page]:hover::after,
.atdw-search-overlay .atdw-pagination-next[data-page]:hover::after {
	width: 50%;
}

.atdw-search-overlay .atdw-pagination-prev,
.atdw-search-overlay .atdw-pagination-next {
	padding: 0 var(--atdw-search-pagination-button-padding-x);
}

.atdw-search-overlay[data-active-breakpoint='mobile'] .atdw-pagination-prev {
	padding-right: var(--atdw-search-pagination-button-padding-x);
}

.atdw-search-overlay[data-active-breakpoint='mobile'] .atdw-pagination-next {
	padding-left: var(--atdw-search-pagination-button-padding-x);
}

.atdw-search-overlay .atdw-pagination-ellipsis {
	cursor: default;
	min-width: unset;
}

/* Loading Indicator */
.atdw-search-loading {
	text-align: center;
	padding: var(--atdw-search-spacing-xxxl) var(--atdw-search-layout-offset-right) var(--atdw-search-spacing-xxxl) 0;
}

.atdw-search-overlay[data-active-breakpoint='mobile'] .atdw-search-loading {
	padding-right: 0; /* Overrides for mobile */
}

.atdw-search-loading:after {
	content: "";
	display: inline-block;
	width: var(--atdw-search-loading-spinner-size);
	height: var(--atdw-search-loading-spinner-size);
	border: var(--atdw-search-loading-spinner-border-width) solid var(--atdw-search-loading-spinner-border-color);
	border-radius: var(--atdw-search-border-radius-round);
	border-top-color: var(--atdw-search-loading-spinner-border-top-color);
	animation: atdw-spin var(--atdw-search-transition-duration-slow) var(--atdw-search-transition-timing-function-linear) infinite;
}

@keyframes atdw-spin {
	to {
		transform: rotate(360deg);
	}
}

/* Error Message */
.atdw-search-error {
	background-color: var(--atdw-search-color-error-background);
	border-radius: var(--atdw-search-border-radius-sm);
	color: var(--atdw-search-color-error-text);
	font-family: var(--atdw-search-font-family-primary);
	margin: var(--atdw-search-spacing-lg) var(--atdw-search-layout-offset-right) var(--atdw-search-spacing-lg) 0;
	padding: var(--atdw-search-spacing-lg);
	text-align: center;
}

.atdw-search-overlay[data-active-breakpoint='mobile'] .atdw-search-error {
	margin-right: 0; /* Overrides for mobile */
}

/* Responsive Styles */
.atdw-search-overlay[data-active-breakpoint='mobile'] {
	background-image: none;
}

.atdw-search-overlay[data-active-breakpoint='mobile'] .atdw-split-container {
	flex-direction: column;
}

.atdw-search-overlay[data-active-breakpoint='mobile'] .atdw-search-section {
	align-items: center;
	flex: 1;
	justify-content: start;
	padding-bottom: var(--atdw-search-spacing-mega);
	padding-right: 0;
	width: 100%;
}

.atdw-search-overlay[data-active-breakpoint='mobile']:not(.atdw-searching) .atdw-search-section {
	flex: 0;
}

.atdw-search-overlay[data-active-breakpoint='mobile'] .atdw-popular-section {
	background-color: var(--atdw-search-color-transparent);
	border-left: none;
	flex: 1;
	margin: 0;
	padding: 0;
	width: 100%;
}

@media (max-width: 768px) {

	/* Make search elements compact */
	.atdw-search-form-wrapper {
		width: auto;
		max-width: none;
		margin: 0;
	}

	/* Compact search button */
	.atdw-search-header-button,
	.atdw-search-button {
		padding: var(--atdw-search-spacing-sm);
		width: auto;
		display: inline-flex;
	}

	/* Ensure icon sizes are appropriate */
	/* .atdw-search-button svg {
		width: var(--atdw-search-icon-size-xl);
		height: var(--atdw-search-icon-size-xl);
	} */

	/* Ensure search overlay shows above other elements when active */
	.atdw-search-overlay {
		z-index: var(--atdw-search-z-index-overlay);
	}

	.atdw-search-container {
		padding: var(--atdw-search-spacing-xxxl) var(--atdw-search-spacing-md);
	}

	.atdw-search-header h2 {
		font-size: var(--atdw-search-font-size-xl); /* Example, adjust if needed for mobile header */
	}

	.atdw-search-results-container {
		flex-direction: column;
	}

	.atdw-search-filter-container{
		width: 100%;
		margin-bottom: var(--atdw-search-spacing-xxl);
	}

	.atdw-results-title {
		font-size: var(--atdw-search-font-size-xl); /* Example, adjust if needed for mobile results title */
	}

	.atdw-result-item {
		flex-direction: column;
	}

	.atdw-results-wrapper .atdw-search-results .atdw-result-item .atdw-result-image {
		width: 100%;
		height: 180px;
		margin: 0 0 var(--atdw-search-spacing-md) 0;
	}

	.atdw-search-overlay .atdw-pagination-item,
	.atdw-search-overlay .atdw-pagination-prev,
	.atdw-search-overlay .atdw-pagination-next {
		min-width: var(--atdw-search-pagination-item-min-width-mobile);
		height: var(--atdw-search-pagination-item-height-mobile);
	}

	.atdw-filter-toggle {
		display: flex;
		align-items: center;
		justify-content: space-between;
	}

	.atdw-filter-toggle span:first-child {
		text-transform: uppercase;
		font-weight: var(--atdw-search-font-weight-semibold);
	}

	.atdw-filter-subgroups {
		display: flex;
		margin: 0;
		padding: 0;
		animation: slideDown var(--atdw-search-transition-duration-normal) var(--atdw-search-transition-timing-function-ease);
	}

	.atdw-results-wrapper .atdw-results-title {
		font-size: var(--atdw-search-font-size-xxl);
	}

	@keyframes slideDown {
		from {
			opacity: 0;
			transform: translateY(-10px);
		}
		to {
			opacity: 1;
			transform: translateY(0);
		}
	}
}

/* Modal Overlay */
.atdw-search-filter-modal-overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100dvw;
	height: 100dvh;
	background-color: rgba(0, 0, 0, 0.6); /* Elementor often uses a slightly darker overlay */
	display: none; /* Hidden by default, shown with JS */
	justify-content: center;
	align-items: start;
	z-index: 10000; /* High z-index to be on top */
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.3s ease, visibility 0s linear 0.3s;
}

.atdw-search-overlay:has(.atdw-search-filter-modal-overlay.active) {
	z-index: calc(var(--atdw-search-z-index-overlay) + 10000) !important;
}

.atdw-search-filter-modal-overlay.active {
	display: flex;
	opacity: 1;
	visibility: visible;
	transition: opacity 0.3s ease, visibility 0s linear 0s;
}

body:has(.atdw-search-filter-modal-overlay.active) {
	overflow: hidden;
}

/* Modal Container */
.atdw-search-filter-modal {
	background-color: #fff;
	border-radius: 8px; /* Common Elementor popup radius */
	box-shadow: 0 5px 25px rgba(0, 0, 0, 0.15); /* Softer shadow */
	font-family: var(--atdw-search-font-family-primary);
	width: 90%;
	margin: 30px 0;
	max-width: 600px; /* Adjust as needed */
	max-height: calc(100dvh - 60px);
	display: flex;
	flex-direction: column;
	overflow: hidden; /* Important for internal scrolling */
	transform: scale(0.9);
	opacity: 0;
	transition: transform 0.3s ease, opacity 0.3s ease;
}

.atdw-search-filter-modal-overlay.active .atdw-search-filter-modal {
	transform: scale(1);
	opacity: 1;
}

/* Modal Header */
.atdw-search-filter-modal .atdw-search-filter-modal-header {
	border-bottom: 1px solid #eee;
	display: flex;
	color: var(--atdw-search-color-accent-primary);
	font-weight: var(--atdw-search-font-weight-medium);
	font-size: var(--atdw-search-font-size-base);
	justify-content: space-between;
	align-items: center;
	padding: 15px 20px;
}

/* Close Button */
.atdw-search-filter-modal .atdw-search-filter-modal-close {
	background: transparent;
	border: none;
	cursor: pointer;
	display: flex;
	margin: 0;
	padding: 0;
	transition: color 0.2s ease;
}

.atdw-search-filter-modal .atdw-search-filter-modal-close:hover {
	background: transparent;
	opacity: 0.8;
}

/* Modal Content */
.atdw-search-filter-modal .atdw-search-filter-modal-content {
	display: flex;
	flex-direction: column;
	gap: 20px;
	flex-grow: 1; /* Allows content to take available space */
	padding: 25px 20px 20px;
	overflow-y: auto; /* Allows scrolling for long content */
}

/* Modal Footer (Optional) */
.atdw-search-filter-modal .atdw-search-filter-modal-footer {
	border-top: 1px solid #eee;
	display: flex;
	flex-direction: row;
	justify-content: end;
	padding: 15px 20px;
}

/* Basic Responsiveness */
@media (max-width: 767px) {
	.atdw-search-filter-modal {
		margin: 15px; /* Some margin from screen edges */
		max-height: calc(100dvh - 30px);
		max-width: none; /* Allow it to take more width on small screens */
		width: calc(100dvw - 30px);
	}

	.atdw-search-filter-modal .atdw-search-filter-modal-title {
		font-size: 1.1em;
	}

	.atdw-search-filter-modal .atdw-search-filter-modal-header,
	.atdw-search-filter-modal .atdw-search-filter-modal-footer {
		padding: 15px;
	}

	.atdw-search-filter-modal .atdw-search-filter-modal-content {
		padding: 20px 15px;
	}
}

.atdw-search-filter-modal .atdw-search-filter-modal-footer .clear-filter-container {
	align-items: center;
	display: flex;
	justify-content: start;
	max-width: unset;
	opacity: 1;
	visibility: visible;
}

.atdw-search-filter-modal .atdw-search-filter-modal-footer .clear-filter-container .clear-filter-button {
	padding: 0;
	width: unset;
}

.atdw-search-filter-modal .atdw-search-filter-modal-footer-close {
	align-items: center;
	background-color: #FFF;
	border-style: solid;
	border-color: #701F25;
	border-radius: 5px;
	color: #701F25;
	display: flex;
	font-family: "Poppins", sans-serif;
	font-size: 14px;
	font-weight: 400;
	padding: 5px 20px 5px 15px;
}

.atdw-search-filter-modal .atdw-search-filter-modal-footer-close svg {
	fill: #701F25;
	height: 30px;
	margin-left: 10px;
	width: 30px;
}

.atdw-search-filter-modal .atdw-search-filter-modal-footer-close svg path {
	fill: #701F25;
}

.atdw-search-filter-modal .atdw-search-filter-modal-footer-close:hover,
.atdw-search-filter-modal .atdw-search-filter-modal-footer-close:focus {
	background-color: #701F25;
	color: #FFF;
}

.atdw-search-filter-modal .atdw-search-filter-modal-footer-close:hover svg,
.atdw-search-filter-modal .atdw-search-filter-modal-footer-close:hover svg path,
.atdw-search-filter-modal .atdw-search-filter-modal-footer-close:focus svg,
.atdw-search-filter-modal .atdw-search-filter-modal-footer-close:focus svg path {
	fill: #FFF;
}

@keyframes atdwHeaderIconPulse {
	0% {
		transform: scale(1);
	}
	50% {
		transform: scale(0.5);
	}
	100% {
		transform: scale(1);
	}
}

.atdw-search-header-button svg {
	animation-name: none;
	animation-duration: 0.15s;
	animation-timing-function: ease-in-out
}

.atdw-search-header-button.atdw-pulse-open svg {
	animation-name: atdwHeaderIconPulse;
}