/*==================================================
EVER THEME
Utilities
Version 2.0.0
==================================================*/

/* DISPLAY
==================================================*/

.ever-hidden {
	display: none !important;
}

.ever-block {
	display: block !important;
}

.ever-inline-block {
	display: inline-block !important;
}

.ever-flex {
	display: flex !important;
}

.ever-inline-flex {
	display: inline-flex !important;
}

.ever-grid {
	display: grid !important;
}

/* VISIBILITY
==================================================*/

.ever-visible {
	visibility: visible !important;
}

.ever-invisible {
	visibility: hidden !important;
}

.ever-sr-only {
	position: absolute !important;

	width: 1px !important;
	height: 1px !important;

	padding: 0 !important;
	margin: -1px !important;

	overflow: hidden !important;

	clip: rect(0, 0, 0, 0) !important;
	clip-path: inset(50%) !important;

	white-space: nowrap !important;

	border: 0 !important;
}

.ever-sr-only-focusable:focus,
.ever-sr-only-focusable:active {
	position: static !important;

	width: auto !important;
	height: auto !important;

	margin: 0 !important;

	overflow: visible !important;

	clip: auto !important;
	clip-path: none !important;

	white-space: normal !important;
}

/* CONTAINERS
==================================================*/

.ever-container {
	width: min(
		var(--container),
		calc(100% - 80px)
	);

	margin-inline: auto;
}

.ever-container--narrow {
	width: min(
		760px,
		calc(100% - 80px)
	);

	margin-inline: auto;
}

.ever-container--medium {
	width: min(
		980px,
		calc(100% - 80px)
	);

	margin-inline: auto;
}

.ever-container--wide {
	width: min(
		1440px,
		calc(100% - 80px)
	);

	margin-inline: auto;
}

.ever-container--full {
	width: 100%;
}

/* WIDTH
==================================================*/

.ever-w-full {
	width: 100% !important;
}

.ever-max-w-none {
	max-width: none !important;
}

.ever-max-w-text {
	max-width: 760px !important;
}

.ever-max-w-content {
	max-width: 980px !important;
}

.ever-mx-auto {
	margin-inline: auto !important;
}

/* FLEX
==================================================*/

.ever-flex-row {
	flex-direction: row !important;
}

.ever-flex-column {
	flex-direction: column !important;
}

.ever-flex-wrap {
	flex-wrap: wrap !important;
}

.ever-flex-nowrap {
	flex-wrap: nowrap !important;
}

.ever-items-start {
	align-items: flex-start !important;
}

.ever-items-center {
	align-items: center !important;
}

.ever-items-end {
	align-items: flex-end !important;
}

.ever-justify-start {
	justify-content: flex-start !important;
}

.ever-justify-center {
	justify-content: center !important;
}

.ever-justify-end {
	justify-content: flex-end !important;
}

.ever-justify-between {
	justify-content: space-between !important;
}

/* GRID
==================================================*/

.ever-grid-2 {
	grid-template-columns:
		repeat(2, minmax(0, 1fr));
}

.ever-grid-3 {
	grid-template-columns:
		repeat(3, minmax(0, 1fr));
}

.ever-grid-4 {
	grid-template-columns:
		repeat(4, minmax(0, 1fr));
}

/* GAPS
==================================================*/

.ever-gap-1 {
	gap: var(--space-1) !important;
}

.ever-gap-2 {
	gap: var(--space-2) !important;
}

.ever-gap-3 {
	gap: var(--space-3) !important;
}

.ever-gap-4 {
	gap: var(--space-4) !important;
}

.ever-gap-5 {
	gap: var(--space-5) !important;
}

.ever-gap-6 {
	gap: var(--space-6) !important;
}

.ever-gap-7 {
	gap: var(--space-7) !important;
}

.ever-gap-8 {
	gap: var(--space-8) !important;
}

.ever-gap-9 {
	gap: var(--space-9) !important;
}

.ever-gap-10 {
	gap: var(--space-10) !important;
}

/* TEXT ALIGNMENT
==================================================*/

.ever-text-left {
	text-align: left !important;
}

.ever-text-center {
	text-align: center !important;
}

.ever-text-right {
	text-align: right !important;
}

/* TEXT COLORS
==================================================*/

.ever-text-primary {
	color: var(--color-primary) !important;
}

.ever-text-primary-dark {
	color: var(--color-primary-dark) !important;
}

.ever-text-default {
	color: var(--color-text) !important;
}

.ever-text-light {
	color: var(--color-text-light) !important;
}

.ever-text-surface {
	color: var(--color-surface) !important;
}

/* BACKGROUNDS
==================================================*/

.ever-bg-background {
	background: var(--color-background) !important;
}

.ever-bg-surface {
	background: var(--color-surface) !important;
}

.ever-bg-secondary {
	background: var(--color-secondary) !important;
}

.ever-bg-primary {
	background: var(--color-primary) !important;
}

/* TYPOGRAPHY
==================================================*/

.ever-font-heading {
	font-family: var(--font-heading) !important;
}

.ever-font-body {
	font-family: var(--font-body) !important;
}

.ever-font-regular {
	font-weight: var(--fw-regular) !important;
}

.ever-font-medium {
	font-weight: var(--fw-medium) !important;
}

.ever-font-semibold {
	font-weight: var(--fw-semibold) !important;
}

.ever-text-xs {
	font-size: var(--fs-xs) !important;
}

.ever-text-sm {
	font-size: var(--fs-sm) !important;
}

.ever-text-base {
	font-size: var(--fs-base) !important;
}

.ever-text-md {
	font-size: var(--fs-md) !important;
}

.ever-text-lg {
	font-size: var(--fs-lg) !important;
}

.ever-uppercase {
	text-transform: uppercase !important;
}

.ever-normal-case {
	text-transform: none !important;
}

.ever-tracking-wide {
	letter-spacing: 0.12em !important;
}

.ever-leading-normal {
	line-height: var(--lh-normal) !important;
}

.ever-leading-relaxed {
	line-height: var(--lh-relaxed) !important;
}

/* MARGINS
==================================================*/

.ever-m-0 {
	margin: 0 !important;
}

.ever-mt-0 {
	margin-top: 0 !important;
}

.ever-mb-0 {
	margin-bottom: 0 !important;
}

.ever-mt-1 {
	margin-top: var(--space-1) !important;
}

.ever-mt-2 {
	margin-top: var(--space-2) !important;
}

.ever-mt-3 {
	margin-top: var(--space-3) !important;
}

.ever-mt-4 {
	margin-top: var(--space-4) !important;
}

.ever-mt-5 {
	margin-top: var(--space-5) !important;
}

.ever-mt-6 {
	margin-top: var(--space-6) !important;
}

.ever-mt-7 {
	margin-top: var(--space-7) !important;
}

.ever-mt-8 {
	margin-top: var(--space-8) !important;
}

.ever-mt-9 {
	margin-top: var(--space-9) !important;
}

.ever-mt-10 {
	margin-top: var(--space-10) !important;
}

.ever-mb-1 {
	margin-bottom: var(--space-1) !important;
}

.ever-mb-2 {
	margin-bottom: var(--space-2) !important;
}

.ever-mb-3 {
	margin-bottom: var(--space-3) !important;
}

.ever-mb-4 {
	margin-bottom: var(--space-4) !important;
}

.ever-mb-5 {
	margin-bottom: var(--space-5) !important;
}

.ever-mb-6 {
	margin-bottom: var(--space-6) !important;
}

.ever-mb-7 {
	margin-bottom: var(--space-7) !important;
}

.ever-mb-8 {
	margin-bottom: var(--space-8) !important;
}

.ever-mb-9 {
	margin-bottom: var(--space-9) !important;
}

.ever-mb-10 {
	margin-bottom: var(--space-10) !important;
}

/* PADDING
==================================================*/

.ever-p-0 {
	padding: 0 !important;
}

.ever-p-4 {
	padding: var(--space-4) !important;
}

.ever-p-5 {
	padding: var(--space-5) !important;
}

.ever-p-6 {
	padding: var(--space-6) !important;
}

.ever-p-7 {
	padding: var(--space-7) !important;
}

.ever-p-8 {
	padding: var(--space-8) !important;
}

.ever-py-5 {
	padding-block: var(--space-5) !important;
}

.ever-py-6 {
	padding-block: var(--space-6) !important;
}

.ever-py-7 {
	padding-block: var(--space-7) !important;
}

.ever-py-8 {
	padding-block: var(--space-8) !important;
}

.ever-py-9 {
	padding-block: var(--space-9) !important;
}

.ever-py-10 {
	padding-block: var(--space-10) !important;
}

/* BORDER RADIUS
==================================================*/

.ever-rounded-sm {
	border-radius: var(--radius-sm) !important;
}

.ever-rounded-md {
	border-radius: var(--radius-md) !important;
}

.ever-rounded-lg {
	border-radius: var(--radius-lg) !important;
}

.ever-rounded-xl {
	border-radius: var(--radius-xl) !important;
}

.ever-rounded-full {
	border-radius: var(--radius-round) !important;
}

/* SHADOWS
==================================================*/

.ever-shadow-none {
	box-shadow: none !important;
}

.ever-shadow-xs {
	box-shadow: var(--shadow-xs) !important;
}

.ever-shadow-sm {
	box-shadow: var(--shadow-sm) !important;
}

.ever-shadow-md {
	box-shadow: var(--shadow-md) !important;
}

/* POSITION
==================================================*/

.ever-relative {
	position: relative !important;
}

.ever-absolute {
	position: absolute !important;
}

.ever-sticky {
	position: sticky !important;
}

.ever-overflow-hidden {
	overflow: hidden !important;
}

.ever-overflow-visible {
	overflow: visible !important;
}

/* ASPECT RATIO
==================================================*/

.ever-aspect-square {
	aspect-ratio: 1 / 1;
}

.ever-aspect-video {
	aspect-ratio: 16 / 9;
}

.ever-aspect-portrait {
	aspect-ratio: 4 / 5;
}

/* IMAGES
==================================================*/

.ever-object-cover {
	width: 100%;
	height: 100%;

	object-fit: cover;
}

.ever-object-contain {
	width: 100%;
	height: 100%;

	object-fit: contain;
}

/* SECTION SPACING
==================================================*/

.ever-section {
	position: relative;

	padding-block: var(--space-10);
}

.ever-section--small {
	padding-block: var(--space-7);
}

.ever-section--medium {
	padding-block: var(--space-9);
}

.ever-section--large {
	padding-block:
		calc(var(--space-10) + var(--space-4));
}

/* DIVIDER
==================================================*/

.ever-divider {
	width: 100%;
	height: 1px;

	margin-block: var(--space-7);

	background: var(--color-border);

	border: 0;
}

/* NO SCROLL
==================================================*/

body.ever-menu-open {
	overflow: hidden;
}

/* RESPONSIVE VISIBILITY
==================================================*/

.ever-mobile-only {
	display: none !important;
}

/* TABLET
==================================================*/

@media (max-width: 1024px) {

	.ever-grid-3,
	.ever-grid-4 {
		grid-template-columns:
			repeat(2, minmax(0, 1fr));
	}

	.ever-desktop-only {
		display: none !important;
	}

	.ever-tablet-only {
		display: initial !important;
	}

}

/* MOBILE
==================================================*/

@media (max-width: 768px) {

	.ever-container,
	.ever-container--narrow,
	.ever-container--medium,
	.ever-container--wide {
		width: calc(100% - 40px);
	}

	.ever-grid-2,
	.ever-grid-3,
	.ever-grid-4 {
		grid-template-columns: 1fr;
	}

	.ever-section {
		padding-block: var(--space-8);
	}

	.ever-section--medium {
		padding-block: var(--space-7);
	}

	.ever-section--large {
		padding-block: var(--space-9);
	}

	.ever-tablet-up {
		display: none !important;
	}

	.ever-mobile-only {
		display: initial !important;
	}

	.ever-mobile-text-left {
		text-align: left !important;
	}

	.ever-mobile-text-center {
		text-align: center !important;
	}

	.ever-mobile-flex-column {
		flex-direction: column !important;
	}

}

/* SMALL MOBILE
==================================================*/

@media (max-width: 480px) {

	.ever-container,
	.ever-container--narrow,
	.ever-container--medium,
	.ever-container--wide {
		width: calc(100% - 32px);
	}

	.ever-section {
		padding-block: var(--space-7);
	}

	.ever-section--small {
		padding-block: var(--space-6);
	}

	.ever-section--medium {
		padding-block: var(--space-7);
	}

	.ever-section--large {
		padding-block: var(--space-8);
	}

}
