/* Set color style to inherit */
.inherit-color * {
	color: inherit;
}

/* Focus state style for keyboard navigation for the focusable elements */
*[tabindex]:focus-visible,
input[type="file"]:focus-visible {
	outline: 0.125rem solid #4d65ff;
	outline-offset: 0.125rem;
}

/* Get rid of top margin on first element in any rich text element */
.w-richtext > :not(div):first-child,
.w-richtext > div:first-child > :first-child {
	margin-top: 0 !important;
}

/* Get rid of bottom margin on last element in any rich text element */
.w-richtext > :last-child,
.w-richtext ol li:last-child,
.w-richtext ul li:last-child {
	margin-bottom: 0 !important;
}

/* Prevent all click and hover interaction with an element */
.pointer-events-off {
	pointer-events: none;
}

/* Enables all click and hover interaction with an element */
.pointer-events-on {
	pointer-events: auto;
}

/* Create a class of .div-square which maintains a 1:1 dimension of a div */
.div-square::after {
	content: "";
	display: block;
	padding-bottom: 100%;
}

/* Make sure containers never lose their center alignment */
.container-medium,
.container-small,
.container-large {
	margin-right: auto !important;
	margin-left: auto !important;
}

/* 
        Make the following elements inherit typography styles from the parent and not have hardcoded values. 
        Important: You will not be able to style for example "All Links" in Designer with this CSS applied.
        Uncomment this CSS to use it in the project. Leave this message for future hand-off.
        */
a,
.w-input,
.w-select,
.w-tab-link,
.w-nav-link,
.w-dropdown-btn,
.w-dropdown-toggle,
.w-dropdown-link {
	color: inherit;
	text-decoration: inherit;
	font-size: inherit;
}

/* Apply "..." after 3 lines of text */
.text-style-3lines {
	display: -webkit-box;
	overflow: hidden;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
}

/* Apply "..." after 2 lines of text */
.text-style-2lines {
	display: -webkit-box;
	overflow: hidden;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}

/* Adds inline flex display */
.display-inlineflex {
	display: inline-flex;
}

/* These classes are never overwritten */
.hide {
	display: none !important;
}

@media screen and (max-width: 991px) {
	.hide,
	.hide-tablet {
		display: none !important;
	}
}

@media screen and (max-width: 767px) {
	.hide-mobile-landscape {
		display: none !important;
	}
}

@media screen and (max-width: 479px) {
	.hide-mobile {
		display: none !important;
	}
}

.margin-0 {
	margin: 0rem !important;
}

.padding-0 {
	padding: 0rem !important;
}

.spacing-clean {
	padding: 0rem !important;
	margin: 0rem !important;
}

.margin-top {
	margin-right: 0rem !important;
	margin-bottom: 0rem !important;
	margin-left: 0rem !important;
}

.padding-top {
	padding-right: 0rem !important;
	padding-bottom: 0rem !important;
	padding-left: 0rem !important;
}

.margin-right {
	margin-top: 0rem !important;
	margin-bottom: 0rem !important;
	margin-left: 0rem !important;
}

.padding-right {
	padding-top: 0rem !important;
	padding-bottom: 0rem !important;
	padding-left: 0rem !important;
}

.margin-bottom {
	margin-top: 0rem !important;
	margin-right: 0rem !important;
	margin-left: 0rem !important;
}

.padding-bottom {
	padding-top: 0rem !important;
	padding-right: 0rem !important;
	padding-left: 0rem !important;
}

.margin-left {
	margin-top: 0rem !important;
	margin-right: 0rem !important;
	margin-bottom: 0rem !important;
}

.padding-left {
	padding-top: 0rem !important;
	padding-right: 0rem !important;
	padding-bottom: 0rem !important;
}

.margin-horizontal {
	margin-top: 0rem !important;
	margin-bottom: 0rem !important;
}

.padding-horizontal {
	padding-top: 0rem !important;
	padding-bottom: 0rem !important;
}

.margin-vertical {
	margin-right: 0rem !important;
	margin-left: 0rem !important;
}

.padding-vertical {
	padding-right: 0rem !important;
	padding-left: 0rem !important;
}

/* Apply "..." at 100% width */
.truncate-width {
	width: 100%;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* Removes native scrollbar */
.no-scrollbar {
	-ms-overflow-style: none;
	overflow: -moz-scrollbars-none;
}

.no-scrollbar::-webkit-scrollbar {
	display: none;
}

.w-layout-grid {
	grid-row-gap: 16px;
	grid-column-gap: 16px;
	grid-template-rows: auto auto;
	grid-auto-columns: 1fr;
	display: grid;
}

/* Utility classes for grid columns on the grid container */
.grid-1 {
	display: grid;
	grid-row-gap: 2rem;
	grid-column-gap: 2rem;
	grid-template-columns: repeat(1, 1fr) !important;
}

.grid-2 {
	display: grid;
	grid-row-gap: 2rem;
	grid-column-gap: 2rem;
	grid-template-columns: repeat(2, 1fr) !important;
}

.grid-3 {
	display: grid;
	grid-row-gap: 2rem;
	grid-column-gap: 2rem;
	grid-template-columns: repeat(3, 1fr) !important;
}

.grid-4 {
	display: grid;
	grid-row-gap: 2rem;
	grid-column-gap: 2rem;
	grid-template-columns: repeat(4, 1fr) !important;
}

/* Common media queries for tablets (768px) */
@media (max-width: 768px) {
	.grid-2 {
		grid-template-columns: repeat(1, 1fr) !important;
	}

	.grid-3 {
		grid-template-columns: repeat(1, 1fr) !important;
	}

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

/* Common media queries for mobile devices (576px) */
@media (max-width: 576px) {
	.grid-2 {
		grid-template-columns: repeat(1, 1fr) !important;
	}

	.grid-3 {
		grid-template-columns: repeat(1, 1fr) !important;
	}

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

/* Utility classes for Slides columns */
.slides-1 {
	width: 100% !important;
}

.slides-2 {
	width: 50% !important;
}

.slides-3 {
	width: 33.33% !important;
}

.slides-4 {
	width: 25% !important;
}

.slides-5 {
	width: 20% !important;
}

/* Common media queries for tablets (768px) */
@media (max-width: 768px) {
	.slides-2 {
		width: 100% !important;
	}

	.slides-3 {
		width: 50% !important;
	}

	.slides-4 {
		width: 33.33% !important;
	}
}

/* Common media queries for mobile devices (576px) */
@media (max-width: 576px) {
	.slides-2 {
		width: 100% !important;
	}

	.slides-3 {
		width: 100% !important;
	}

	.slides-4 {
		width: 50% !important;
	}
}

.w-slider-dot {
	background-color: #bfff00;
	width: 20px !important;
	height: 10px !important;
	border-radius: 15px !important;
}

.w-slider-dot.w-active {
	background-color: #bfff00;
	width: 40px !important;
	height: 10px !important;
	border-radius: 15px !important;
}

nav.greedy {
	position: relative;
	height: 60px;
	display: flex;
	align-items: center;
	background: #fff;
}

nav.greedy button {
	align-self: stretch;
	transition: all 0.4s ease-out;
	padding: 0 1rem 0 1.5rem;
	outline: 0;
	border: 0;
	font-size: 1rem;
	font-weight: bold;
}

nav.greedy button.hidden {
	transition: none;
	border-right: 0.5rem solid #fff;
	width: 0;
	padding: 0;
	overflow: hidden;
}

nav.greedy ul.menu {
	display: flex;
	justify-content: flex-end;
	flex: 1;
	overflow: hidden;
	padding-left: 0;
	list-style: none;
}

nav.greedy ul.menu li {
	flex: none;
	padding: 1rem;
}

nav.greedy ul.menu li a {
	color: #000;
	text-decoration: none;
}

nav.greedy ul.hidden-links {
	position: absolute;
	background: #fff;
	right: 0;
	top: 100%;
	z-index: 999;
}

nav.greedy ul.hidden-links.hidden {
	display: none;
}

nav.greedy ul.hidden-links li {
	padding: 1rem;
}

nav.greedy ul.hidden-links li a {
	color: #000;
	text-decoration: none;
	text-align: center;
}

@media screen and (max-width: 768px) {
	.links,
	#menu-menu-principal-2024 {
		display: none !important;
	}
}

.wpp-list {
	margin: 0;
	padding: 0;
}

/* Sidebar menu */
#menu-menu-sidebar {
	padding-left: 0;
}

.accordion_icon {
	transition: transform 0.3s;
}

.acccordion_link-wrapper {
	height: 0;
	overflow: hidden;
}

.accordion_icon.open {
	transform: rotate(45deg); /* Example to indicate open state */
	transition: transform 0.3s ease-in;
}

.post_title-link,
.post_category-link {
	color: inherit;
}

.page-content-wrapper p {
	margin-bottom: 1rem;
}
