/*
Theme Name: Flatsome Child
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.0
*/

/*************** ADD CUSTOM CSS HERE.   ***************/


@media only screen and (max-width: 48em) {
/*************** ADD MOBILE ONLY CSS HERE  ***************/


}








.mega-menu {
	> .sub-menu {
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		gap: 1rem;
		height: fit-content;
		
		> li {
			width: auto;
		}
	}
}













.featured-title {
	background: transparent;
	
	.page-title-bg {
		box-shadow: none;
	}
}
















/* CORE STYLES
***********************************************************/
:root {
	/* Colors */
	--primary-color-400: var(--fs-color-secondary, #02468f);
	--primary-color-500: #04264f;
	--primary-color-600: var(--fs-color-primary, #0d2644);

	/* Complementary Colors */
	--secondary-color-400: #F9C22E;

	--neutral-color-100: rgba(255, 255, 255, 1);
	--neutral-color-200: rgba(255, 255, 255, 0.7);

	/* Gradient */
	--gradient: linear-gradient(0deg, var(--primary-color-600) 0%, var(--primary-color-500) 30%, var(--primary-color-400) 100%);

	/* Font Family */
	--ff-primary: "Bebas Neue", sans-serif;
	--ff-secondary: "Nunito", sans-serif;

	--ff-heading: var(--ff-primary);
	--ff-body: var(--ff-secondary);

	/* Font Sizes */
	--fs-900: 4rem;
	--fs-800: 2.75rem;
	--fs-700: 2rem;
	--fs-600: 1.75rem;
	--fs-500: 1.3rem;
	--fs-400: 1.1rem;
	--fs-300: 0.875rem;
	--fs-200: 0.675rem;

	/* Line Heights */
	--lh-900: 1.1;
	--lh-800: 1.35;
	--lh-700: 1.4;
	--lh-600: 1.45;
	--lh-500: 1.5;
	--lh-400: 1.8;
	
	/* Font Weight */
	--fw-700: 700;
	--fw-600: 600;
	--fw-500: 500;
	--fw-400: 400;
	--fw-300: 300;

	/* Letter Spacing */
	--ls-900: 0.12em;
	--ls-800: 0.175em;
	--ls-700: 0.15em;
	--ls-600: 0.1em;
	--ls-500: 0.1em;
	--ls-400: 0.1em;
	--ls-300: 0.1em;

	--text-stroke-width: 0.014em;

	/* Vertical Margins (Golden Ratio) */
	--spacing-large: 2.618rem;
	--spacing-medium: 1.618rem;
	--spacing-small: 1rem;

	/* Border Radius */
	--border-radius: 0.5rem;
}

/* HTML
***********************************************************/
html {
	color-scheme: dark;
}

/* Body
***********************************************************/
body {
	font-family: var(--ff-body);
	font-size: var(--fs-400);
	line-height: var(--lh-400);
	letter-spacing: var(--ls-300);
	
	background: var(--primary-color-600);
	background: var(--gradient);
	overflow-x: hidden;

	&::before {
		content: '';
		position: fixed;
		inset: 0;
		z-index: 1;
		background: url('https://abyssmarine.eu/wp-content/uploads/2025/03/pexels-photo-3163599.jpeg');
		background-size: cover;
		opacity: 0.25;
		mix-blend-mode: multiply;
	}

	
	#wrapper {
		background: transparent;
		z-index: 10;
	}

	#main,
	#main-content {
		background: transparent;
		z-index: 10;
	}
 	

	header {
		z-index: 9999;

		.header-nav {
			justify-content: center;
		}
	}

	footer,
	.focused-checkout-footer {
		position: relative;
		z-index: 10;
	}

	.row-slider {
		margin: 0 !important;
	}
}

::selection {
	color: var(--color-neutral-100);
	background-color: var(--secondary-color-400);
}

/* Hero
***********************************************************/
.hero {

	.hero-image {
		position: absolute;
		max-width: 500px;
		right: 350px;
		top: 0px;
		mix-blend-mode: multiply;
		opacity: 0.5;

		img {
			transform: scaleX(-1);
			rotate: 0.1turn;
		}
	}

	@media only screen and (max-width: 1279px) {
		.hero-image {
			top: 20%;
			right: 0px;
		}
	}

	h1 {
		margin: 0;
		max-width: 25ch !important;
	}

	.text {
		max-width: 65ch;
		margin-block: 15px 45px;
	}

	/*
	.button {
		padding-block: 5px;
		margin-bottom: 0;

		&.primary {
			aspect-ratio: 1;
			background: var(--primary-color-400);

			border: 2px solid var(--neutral-color-100);

			span {
				display: none;
			}

			i {
				margin: 0;
				line-height: 3;
			}
		}

		&.is-outline {
			padding-inline: 45px;
		}
	}
	*/
	
	.hero-categories {
		position: absolute;
		right: -30px;
		width: 320px;

		.product-category {
			
			.col-inner {
				background: rgba(255, 255, 255, 0.05);
				background: linear-gradient(90deg, rgba(13, 38, 68, 0.8) 0%, rgba(4, 38, 79, 0.4) 30%, rgba(255, 255, 255, 0.1) 80%);
				padding: 1rem;
				backdrop-filter: blur(5px);

				.box-image {
					display: block;
					width: 75px;
					aspect-ratio: 1;
					border: 2px solid var(--neutral-color-100);
				}

				.header-title {
					hyphens: auto;
					word-break: break-word;
					color: var(--neutral-color-100);
				}

				p {
					color: var(--neutral-color-100);

					&.is-xsmall {
						font-size: var(--fs-300) !important;
					}
				}
			}	
			
			&:nth-child(even) .col-inner {
				background: rgba(255, 255, 255, 0.25);
				background: linear-gradient(90deg, rgba(13, 38, 68, 1) 0%, rgba(4, 38, 79, 0.8) 30%, rgba(255, 255, 255, 0.2) 80%) !important;
			}
			
			&:first-child .col-inner {
				border-top-left-radius: var(--border-radius);
			}
			
			&:last-child .col-inner {
				border-bottom-left-radius: var(--border-radius);
			}
		}
	}

	@media only screen and (max-width: 1279px) {

		h1 {
			width: 20ch !important;
		}

		.hero-categories {
			position: relative;
			right: auto;
			width: unset;
		}

		.box-category {
			display: flex;
			gap: 1rem;
			align-items: center;
		}

		.box-image {
			width: 75px !important;
		}
	}
}

/* Light Rays
***********************************************************/
.light-rays {
pointer-events: none;
filter: blur(0.6rem);
position: absolute;
display: block;
width: 100vw;
max-height: 100%;
height: 150vh;
top: 0;
left: 0;
z-index: 1;
	overflow-x: hidden;

& > * {
	--deg: 0;
	--length: 0rem;
	--thickness: 20px;
	--duration: 2s;
	--delay: 1s;
	--rotate: 0deg;
	--degRange: 72.5deg;
	--spreadRange: 40vw;

	position: absolute;
	transform-style: preserve-3d;
	perspective: 500px;
	width: var(--thickness);
	height: calc(20% + 370px + var(--length));
	left: 50%;
	transform: translateX(calc(-50% + var(--deg) * var(--spreadRange) * -1 + 0.5 * var(--spreadRange)))
	translateY(-100px)
	rotateZ(calc(var(--degRange) * -0.5 + var(--deg) * var(--degRange)))
	rotateX(0.01deg);
	transform-origin: center -100px;
	mix-blend-mode: screen;
	animation: 
	shimmer linear var(--duration) calc(var(--delay) * -1) infinite alternate forwards,
	rotate ease-in-out calc(var(--duration) * 3.14) calc(var(--delay) * -1) infinite alternate forwards;

	&::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(to bottom, rgba(166, 255, 248, 1), rgba(166, 255, 248, 0) 100%);
	transform-origin: top center;
	transform: rotateX(40deg);
	}
}
}

@keyframes shimmer {
0% {
	opacity: 0.33;
}
100% {
	opacity: 0.03;
}
}

@keyframes rotate {
0% {
	rotate: 0deg;
}
100% {
	rotate: var(--rotate);
}
}

/* Bubbles
***********************************************************/
.bubbles {
--bubble-color: rgba(240, 240, 240, 0.5);
--bubble-glow: rgba(240, 240, 240, 0.8);
--animation-distance: 250px;

position: absolute;
top: 0%;
left: 50%;
transform: translateX(-50%);
width: 120px;
height: 1px;
z-index: 9999;

.bubble {
	background-color: var(--bubble-color);
	border-radius: 50%;
	box-shadow: 0 0 5px var(--bubble-glow);
	position: absolute;
	bottom: 0;
	opacity: 0;
	animation: bubble-float linear infinite;
}
}

@keyframes shimmer {
0% {
	opacity: 0.33;
}
100% {
	opacity: 0.03;
}
}

@keyframes rotate {
0% {
	rotate: 0deg;
}
100% {
	rotate: var(--rotate);
}
}

@keyframes bubble-float {
0% {
	transform: translate3d(0, 0, 0);
	opacity: 0;
}
10% {
	opacity: 1;
}
100% {
	transform: translate3d(0, calc(-1 * var(--animation-distance)), 0);
}
}

/* Category Archive Seiten
***********************************************************/
.archive {

	/* Breadcrumb and Sorting Wrapper */
	/*
	.category-page-title {

		.page-title-inner {
			max-width: 100%;
		}
	}
	*/

	/* Shop Wrapper */
	/*
	main {
		
		padding-inline: 15px;

		.row {
			max-width: 100%;
			display: grid;
			grid-template-columns: 20% auto;
			gap: 3rem;

			@media only screen and (max-width: 1279px) {
				grid-template-columns: auto;
			}

			.large-3 {
				max-width: 100%;
				padding: 0;
			}

			.large-9 {
				max-width: 100%;
				width: 100%;
				padding: 0;

				.shop-container .products.row {
					--_grid-type: auto-fill;
					--_col-size: 200px;
					display: grid;
					grid-template-columns: repeat(var(--_grid-type, auto-fit),
							minmax(min(var(--_col-size), 100%), 1fr));
					gap: 1.5rem;
					margin: 0;

				.product-small.col {
						max-width: 100%;
					}
				}
			}
		}
	}
	*/
	
	.wunschmarke {
		.col{
			background: rgba(255, 255, 255, 0.25);
			background: linear-gradient(90deg, rgba(13, 38, 68, 1) 0%, rgba(4, 38, 79, 0.8) 30%, rgba(255, 255, 255, 0.2) 80%) !important;
			padding: 2.5rem 1.5rem !important;
			border-radius: var(--border-radius) !important;
			
			p:last-of-type {
				margin: 0;
				
				a {
					margin-block-end: 0;
				}
			}
		}
	}

	.off-canvas-left .mfp-content, .off-canvas-right .mfp-content {
		background-color: #0D2644 !important;
		
		* {
			color: #fff !important;
		}
	}
}



/* Slider Navigation
***********************************************************/
.slider-nav-circle .flickity-prev-next-button .arrow, 
.slider-nav-circle .flickity-prev-next-button svg {
    fill: #fff !important;
    background-color: var(--fs-color-primary);
    border-color: var(--fs-color-primary);
}

/* Account
***********************************************************/
.account-nav {
	li {
		a {
			&::before {
				background-color: var(--secondary-color-400);
			}
		}
	}
}


/* Shop Sidebar
***********************************************************/
#shop-sidebar {
	.widget_layered_nav_filters {
		ul {
			margin: 0 !important;
			display: flex;
			gap: 0.5rem;
			
			li {
				&::before {
					display: none;
				}
			}
		}
	}
	
	.is-divider {
		display: none;
	}

	ul li {
		margin: 0 !important;
		border: 0;
		
		ul.children {
			border: 0;
			margin: 0;
			padding: 0;
			
			a {
				font-size: var(--fs-400);
			}
		}
		
		&.current-cat.active > a {
			color: var(--secondary-color-400);
			font-weight: normal;
		}
	}
}

/* Product Page
***********************************************************/
.product-template-default {
	
	main {
		padding-block-start: 120px;
	}

	/* Sticky Add to Cart */
	.sticky-add-to-cart-wrapper {
		.sticky-add-to-cart--active {
			background: var(--primary-color-600) !important;
		}
	}
	
	.is-divider.small {
		display: none;
	}
	
	.tabs {
		li {
			&:hover,
			&.active {
				a {
					&::before {
						background-color: var(--secondary-color-400);
					} 
				}
			}
		}
	}
}


/* Cart Page
***********************************************************/
.woocommerce-cart {
	.button-continue-shopping {
		color: #fff;
		border-color: #fff;
	}
	
	.page-checkout-simple {
		min-height: 100vh;
	}
}

/* Wishlist
***********************************************************/
.hidden-title-form {
	width: 100%;
	
	input {
		width: 300px;
	}
	
	.edit-title-buttons {
		display: inline-flex;
		
		a {
			width: 30px;
			aspect-ratio: 1;
		}
	}
}
.image-tools .wishlist-button {
    border-color: #f9c22e;
	
	i {
		color: #f9c22e;
	}
	
	&:hover {
		background-color: #f9c22e;
		border-color: #f9c22e;
		
		i {
			color: #fff;
		}
	}
}


#yith-wcwl-popup-message {
	background-color: var(--fs-color-primary) !important;
	border-color: #f9c22e !important;
	* {
		color: #fff;
	}
}

/* Header
***********************************************************/
header {

	* {
		opacity: 1 !important;
		color: var(--neutral-color-100);
	}

	#top-bar {

		.html.custom ul {
			display: flex;
			gap: 0.75rem;
			
			li {
				margin-block-end: 0;
			}
		}

	}
}

/* Navigation Mobile Menu Off Canvas
***********************************************************/
.off-canvas-left.dark .mfp-content, 
.off-canvas-right.dark .mfp-content {
	background: var(--primary-color-600) !important;
}

.mfp-content {
	ul.nav {
		
		li.html.custom {
			padding-inline: 10px;
			
			.dgwt-wcas-search-form {
				width: 100%;
			}
		}
		
		li {
			border: none;
			margin: 0 !important;
			padding: 0;
			
			a {
				padding-inline: 10px !important;
			}
		}
	}
}

/* Mini Cart
***********************************************************/
.off-canvas-cart,
.ux-mini-cart-footer {
	background: var(--primary-color-600) !important;

	* {
		opacity: 1 !important;
		color: var(--neutral-color-100) !important;
	}

	.woocommerce-mini-cart__buttons a:first-child {
		border: 2px solid var(--neutral-color-100);
	}
}

/* Formular
***********************************************************/
form {
	label {
		color: var(--neutral-color-100) !important;
	}

	input[type="text"],
	input[type="email"],
	input[type="tel"],
	input[type="password"],
	select,
	.select2-container .select2-selection,
	textarea {
		color: var(--neutral-color-100) !important;
		background: #0D2644 !important;
		border-radius: var(--border-radius) !important;
		border: 2px solid var(--neutral-color-100) !important;

		&::placeholder {
			color: var(--neutral-color-100) !important;
		}
	}
}

/* Mein Konto Bereich */
.select2-dropdown {
	background-color: #0D2644;
	
	.select2-search__field,
	.select2-search__field:focus {
		background: #0D2644;
		color: #fff;
	}
}

.select2-selection__placeholder,
.select2-selection__rendered {
	color: #fff !important;
}

/* Checkout
***********************************************************/
/* Checkout Tabelle Hintergrund Farbe anpassen */
.woocommerce-checkout .woocommerce-checkout .is-well {
	box-shadow: none;
}

.woocommerce-NoticeGroup-checkout {
	background: rgba(255, 255, 255, 0.45);
	padding: 2.5rem 1.5rem !important;
	border-radius: var(--border-radius) !important;
	margin-block-end: 1.5rem;
}

.dhl-preferred-service-content .dhl-preferred-service-item .dhl-preferred-service-times li label {
	color: #000 !important;
}

.woocommerce-checkout .shop_table {
	background-color: #0D2644 !important;
}

/* Product Card
***********************************************************/
.product-small.col {
	
	.col-inner {
		border: 2px solid var(--neutral-color-100);
		border-radius: var(--border-radius);
		overflow: hidden;
	}

	.box-image {
		margin-block-end: 1rem;
	}

	.box-text {
		padding: 0;
		padding-inline: 1rem;
		padding-block-end: 1rem;

		.title-wrapper {
			margin-block-end: 0.25rem;

			.category {
				margin: 0;
				color: #f1f1f1;
				font-size: var(--fs-200) !important;
			}

			.product-title {
				margin: 0;

				a {
					margin: 0;
					font-size: var(--fs-500);
					color: var(--neutral-color-100);
				}
			}
		}

		.price-wrapper {
			
			* {
			color: var(--neutral-color-100) !important;
			}
			
			.price {	
				margin: 0;
				font-size: var(--fs-400);
			}

			.price-unit {
				font-size: var(--fs-200) !important;
				margin-block-start: 0.5rem;
			}

			.tax-info,
			.shipping-costs-info {
				font-size: var(--fs-200) !important;
				display: inline-block;
				margin: 0;

				a {
					margin: 0;
				}
			}
		}
	}
}

/* Hide UVP Price */
.b2b-rrp {
    display: none !important;
}

/* Blog Posts
***********************************************************/
.post-template-default {
	main {
		.row.align-center {
			
			@media screen and (min-width: 1280px) {
				> .large-10 {
					flex-basis: 100%;
					max-width: 100%;
				}
			}
		}

		.woogency-blog-image {
			aspect-ratio: 16 / 9;
			width: 100%;
			object-fit: cover;
			border-radius: 1rem;
		}

		.is-sticky-column {
			position: sticky !important;
			top: 140px !important;
		}
	}
}

/* Typographie
***********************************************************/

h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5,
h6, .h6 {
	font-family: var(--ff-heading);
	font-weight: var(--fw-700);
	text-transform: none !important;
	text-wrap: balance;
	margin-block-start: var(--spacing-medium);
	margin-block-end: var(--spacing-small);

	/*
	span {
		color: transparent;
		-webkit-text-stroke-width: var(--text-stroke-width);
		stroke-width: var(--text-stroke-width);
		-webkit-text-stroke-color: var(--neutral-color-100);
		stroke: var(--neutral-color-100);
	}
	*/
}

h1:first-child, .h1:first-child,
h2:first-child, .h2:first-child,
h3:first-child, .h3:first-child,
h4:first-child, .h4:first-child,
h5:first-child, .h5:first-child,
h6:first-child, .h6:first-child {
	margin-block-start: 0;
}

h1, .h1 {
	font-size: var(--fs-900) !important;
	line-height: var(--lh-900);
	color: var(--color-primary-400);
	margin-block-start: var(--spacing-large);
	margin-block-end: var(--spacing-medium);
	letter-spacing: var(--ls-900);
}

h2, .h2 {
	font-size: var(--fs-800) !important;
	line-height: var(--lh-800);
	color: var(--color-neutral-700) !important;
	margin-block-start: var(--spacing-large);
	margin-block-end: var(--spacing-medium);
	letter-spacing: var(--ls-800);
}

h3, .h3 {
	font-size: var(--fs-700) !important;
	line-height: var(--lh-700);
	font-weight: var(--fw-500);
	color: var(--color-primary-400);
	margin-block-start: var(--spacing-medium);
	margin-block-end: var(--spacing-small);
	letter-spacing: var(--ls-700);
}

h4, .h4 {
	font-size: var(--fs-600) !important;
	line-height: var(--lh-600);
	color: var(--color-neutral-700);
	margin-block-start: var(--spacing-medium);
	margin-block-end: var(--spacing-small);
	letter-spacing: var(--ls-600);
}

h5, .h5 {
	font-size: var(--fs-500) !important;
	line-height: var(--lh-500);
	color: var(--color-neutral-700) !important;
	margin-block-start: var(--spacing-small);
	margin-block-end: var(--spacing-small);
	letter-spacing: var(--ls-500);
}

h6, .h6 {
	font-size: var(--fs-400) !important;
	line-height: var(--lh-400);
	font-weight: var(--fw-600);
	color: var(--color-primary-400);
	margin-block-start: var(--spacing-small);
	margin-block-end: var(--spacing-small);
	letter-spacing: var(--ls-400);
}

p {
	margin-block-end: var(--spacing-small);
}

p {
	strong {
		font-weight: var(--fw-600);
	}
	
	em {
		font-style: italic;
	}
	
	a:not([class]) {
		color: currentcolor;
		text-decoration: underline;
	
		&:hover,
		&:focus {
			color: var(--fs-experimental-link-color-hover) !important;
		}
	}
}

/* Iconlist */
ul:not([class]) {
	list-style: none;
	--icon-size: 1em;
	margin-inline-start: 1.5em !important;

	li {
		position: relative;
		margin-inline-start: calc(1.5 * var(--icon-size)) !important;

		&::before {
			content: '';
			position: absolute;
			top: 7px;
			background: var(--secondary-color-400);
		
			aspect-ratio: 1;
			width: var(--icon-size);
			mask-repeat: no-repeat;
			mask-position: center center;
			margin-inline-start: calc(-1.5 * var(--icon-size));
		}

		/* Default */
		&:not([class])::before {    
			mask-size: 6px;
			-webkit-mask-image: url(/wp-content/icons/list-icon.svg);
			mask-image: url(/wp-content/icons/list-icon.svg);
		} 

		/* Check */
		&.check::before {
			-webkit-mask-image: url(/wp-content/icons/check.svg);
			mask-image: url(/wp-content/icons/check.svg);
			top: 4px;
		}

		/* Phone */
		&.phone::before {
			-webkit-mask-image: url(/wp-content/icons/phone.svg);
			mask-image: url(/wp-content/icons/phone.svg);
			top: 4px;
		}

		/* Mail */
		&.mail::before {
			-webkit-mask-image: url(/wp-content/icons/mail.svg);
			mask-image: url(/wp-content/icons/mail.svg);
			top: 4px;
		}

		/* Map */
		&.map::before {
			-webkit-mask-image: url(/wp-content/icons/map.svg);
			mask-image: url(/wp-content/icons/map.svg);
			top: 4px;
		}
	}
}

/* AGB List */
.agb {
	ol {
		counter-reset: item;

		> li {
			counter-increment: item;
			display: list-item;
			list-style: none;

			&::marker {
				content: counters(item, ".") ". ";
			}

			ol {
				counter-reset: item;

				> li {
					counter-increment: item;
					display: list-item;
					list-style: none;

					&::marker {
						content: counters(item, ".") ". ";
					}

					ol {
						counter-reset: item;

						> li {
							counter-increment: item;
							display: list-item;
							list-style: none;

							&::marker {
								content: counters(item, ".") ". ";
							}
						}
					}
				}
			}
		}
	}
}


/**********************************************************/
/* Font Faces                                             */
/**********************************************************/

/* Bebas Neue
***********************************************************/
@font-face {
    font-family: 'Bebas Neue';
    src: url('/wp-content/fonts/Bebas_Neue/BebasNeue-Regular.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

/* Nunito
***********************************************************/
@font-face {
    font-family: 'Nunito';
    src: url('/wp-content/fonts/Nunito/Nunito.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Nunito';
    src: url('/wp-content/fonts/Nunito/Nunito-Italic.ttf') format('truetype');
    font-weight: normal;
    font-style: italic;
}

/* Footer
***********************************************************/
footer {
	--wave-height: 150px;
	margin-block-start: calc(var(--wave-height) / 2);
	
	&::before {
		content: '';
		position: absolute;
		top: calc(var(--wave-height) * -1);
		width: 100%;
		height: var(--wave-height);
		background-image: url(/wp-content/icons/wave.svg);
		background-image: url(/wp-content/icons/animate-wave.svg);
		background-repeat: no-repeat;
		background-size: 100% 100%;
		pointer-events: none;
	}
	
	* {
		opacity: 1 !important;
		color: var(--neutral-color-100);
	}

	.logo img {
		max-width: 200px;
		margin-block-end: 1.5rem;
	}

	ul,
	ul:not([class]) {
		margin-inline-start: 0 !important;
	}

	.menu  {
		list-style: none;
		--icon-size: 1em;

		border: 0 !important;

		li {
			position: relative;
			margin-inline-start: calc(1.5 * var(--icon-size)) !important;

			border: 0 !important;

			&::before {
				content: '';
				position: absolute;
				top: 12px;
				background: var(--secondary-color-400);
			
				aspect-ratio: 1;
				width: var(--icon-size);
				mask-repeat: no-repeat;
				mask-position: center center;
				margin-inline-start: calc(-1.5 * var(--icon-size));

				mask-size: 6px;
				-webkit-mask-image: url(/wp-content/icons/list-icon.svg);
				mask-image: url(/wp-content/icons/list-icon.svg);

				opacity: 1;
			}
		}
	}
}

/* Checkout Absolute Footer Menu */
.focused-checkout-footer {
	--wave-height: 150px;
	margin-block-start: calc(var(--wave-height) / 2);
	
	&::before {
		content: '';
		position: absolute;
		top: calc(var(--wave-height) * -1);
		width: 100%;
		height: var(--wave-height);
		background-image: url(/wp-content/icons/wave.svg);
		background-image: url(/wp-content/icons/animate-wave.svg);
	}
}

.absolute-footer .container {
	display: flex;
	flex-direction: row-reverse;
	align-items: center;
	gap: 1rem;
	flex-wrap: wrap;
}

.absolute-footer.dark {
	color: #fff !important;
	
	* {
		opacity: 1;
	}
}

.absolute-footer .container .footer-primary {
	margin-inline-end: auto;
}

.absolute-footer .container .footer-primary .copyright-footer {
	display: flex;
	align-items: baseline;
}

body:not(.woocommerce-cart, .woocommerce-checkout) 
.absolute-footer .container .footer-primary .copyright-footer .menu-checkout-footer-container #menu-checkout-footer {
	display: none !important;
}

.absolute-footer .container .footer-primary .copyright-footer .menu-checkout-footer-container #menu-checkout-footer {
	display: flex;
	gap: 0.75rem;
	margin-inline-start: 1rem;
	margin-block-end: 0;
	border: 0;
}

.absolute-footer .container .footer-primary .copyright-footer .menu-checkout-footer-container #menu-checkout-footer li {
	border: 0;
}

@media only screen and (max-width: 650px) {
	.absolute-footer .container {
		flex-direction: column;
	}
	.absolute-footer .container .footer-primary {
		margin-inline: auto;
		width: 100%;
	}
	
	.absolute-footer .container .footer-primary .copyright-footer {
		flex-direction: column-reverse;
		align-items: center;
	}
	
	.absolute-footer .container .footer-primary .copyright-footer .menu-checkout-footer-container {
		margin-inline: auto;
	}
	
	.absolute-footer .container .footer-primary .copyright-footer .menu-checkout-footer-container #menu-checkout-footer {
		flex-direction: column;
		margin-block-end: 1rem;
	}
	
	.absolute-footer .container .footer-primary .copyright-footer .menu-checkout-footer-container #menu-checkout-footer li {
		text-align: center;
	}
}

/**********************************************************/
/* Media Queries                                          */
/**********************************************************/
@media only screen and (max-width: 1279px) {
	:root {
		/* Font Sizes */
		--fs-900: 2rem;
		--fs-800: 1.8rem;
		--fs-700: 1.5rem;
		--fs-600: 1.3rem;
		--fs-500: 1rem;
		--fs-400: 0.875rem;
		--fs-300: 0.8rem;
	}
}

@media only screen and (max-width: 767px) {
	:root {
		/* Font Sizes */
		--fs-900: 1.75rem;
		--fs-800: 1.5rem;
		--fs-700: 1.1rem;
		--fs-600: 1rem;
		--fs-500: 0.875rem;
		--fs-400: 0.825rem;
		--fs-300: 0.8rem;
	}
}










/* Accordion FAQ */
.accordion {
	display: grid;
	gap: 1rem;
	margin-block-end: 1.5rem;
/*
	&:hover {
		.accordion-item {
			opacity: 0.8;

			&:hover {
				opacity: 1;
			}
		}
	}
*/

	.accordion-item {
		transition: 0.25s ease;
		border: 2px solid #fff;
		border-radius: 0.5rem;

		.accordion-title {
			display: flex;
			align-items: center;
			justify-content: space-between;
			gap: 1rem;
			padding: 0.25rem 0.5rem 0.25rem 1.5rem;
			border: 0;
			color: #fff;

			&.active {
				font-weight: 400;
			}

			button.toggle {
				position: static;
				height: auto;
				width: auto;
				margin: 0;
				border: 0;
				aspect-ratio: 1;
			}

			span {
				order: -1;
			}
		}

		.accordion-inner {
			padding: 1rem 1.5rem;
			color: #fff;

			* {
				margin-block-end: 0;
			}
		}
	}
}




.img, .img img {
    border-radius: 1rem;
}






