:root {
  /* Color system */
  --color-text: #080F14;
  --body-background: #000000;
  --border-radius: 16px;
  --primary-color: #90cc2f;
  --color-text-inverse: #FFFFFF;
  //--color-nav: rgba(255,255,255, 0.7);
  --color-nav: #080F14;
  --background-nav-hover: rgba(255,255,255, 0.8);
  --padding-body: 34px;
  --secondary-color: #99A1AF;
  --color-nav-white: rgba(255, 255, 255, 0.7);
}

@media (max-width: 1024px) {
	:root {
		--padding-body: 14px;
	}
}

html,
body {
	width:100%;
	height:100%;
	padding:0;
	margin:0;
}

body {
	background: var(--body-background);
	color: #FFFFFF;
	font-family: Roboto;
	font-weight: 400;
	font-size: 16px;
	line-height: 22px;
}

h1 {
	font-family: Barlow Semi Condensed;
	font-weight: 600;
	font-size: 48px;
}
h2 {
	font-family: Barlow Semi Condensed;
	font-weight: 600;
	font-size: 24px;
	line-height: 17.5px;
}
h2.section-title {
	font-weight: 700;
	font-size: 36px;
	line-height: 52.5px;
	letter-spacing: 0px;
	padding-bottom: 40px;
}
h3 {
	font-family: Barlow Semi Condensed;
	font-weight: 700;
}

#main {
    //margin-top: 66px;
    margin-top: 0px;
    min-height: calc(100vh - 60px);
}
a {
	text-decoration:none;
	transition: all 0.3s ease;
	color: var(--color-text);
}

.rounded,
.rounded img {
	border-radius: var(--border-radius) !important;
}

textarea,
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="select"] {
	border-radius: var(--border-radius) !important;
	font-family: Roboto !important;
	font-weight: 400 !important;
	font-size: 15px !important;
	padding: 4px 10px !important;
	background:var(--body-background) !important;
	color:var(--color-text-inverse) !important;
	border:none !important;
	width:100%;
}

header {

	#header {
		background: transparent;
		position: absolute;
		top: 0;
		right: 0;
		left: 0;
		z-index: 1030;
	}

	.header-menu {
		a.nav-link,
		a {
			color: var(--color-nav);
			text-transform: uppercase;
			font-size:14px;
			border-radius:50px;
		}
		a:focus,
		a:hover {
			background: var(--background-nav-hover);
		}
	}

	#navbar {
		font-family: Barlow Semi Condensed;
		font-weight: 700;
		font-size: 16px;
		line-height: 19.5px;
		letter-spacing: 1.2px;

		ul {
			gap: 2px;
			margin-left: 50px;

			a {
				padding: 6px 20px;
			}


			li.current-menu-item a {
				background:var(--primary-color);
				border-color:var(--body-background);
				border-radius:50px;
				color:var(--color-text);
			}
		}
	}

	.olang-header-actions {
		align-items: center;
		display: flex;
		gap: 2px;
		margin-left: auto;
	}

	.olang-header-actions__button {
		align-items: center;
		border: none;
		border-radius: 50%;
		//color: var(--color-nav);
		display: inline-flex;
		height: 38px;
		justify-content: center;
		padding: 0;
		position: relative;
		width: 38px;
	}

	/*.olang-header-actions__button:hover,
	.olang-header-actions__button:focus {
		background: var(--background-nav-hover);
		color: #080f14;
	}*/

	.olang-header-actions__cart-count {
		align-items: center;
		background: var(--primary-color);
		border-radius: 50%;
		color: #080f14;
		display: inline-flex;
		font-family: Roboto;
		font-size: 11px;
		font-weight: 700;
		height: 18px;
		justify-content: center;
		line-height: 1;
		min-width: 18px;
		padding: 0 5px;
		position: absolute;
		right: -5px;
		top: -5px;
		border:1px solid transparent;
	}

	.olang-header-actions__button:hover .olang-header-actions__cart-count,
	.olang-header-actions__button:focus .olang-header-actions__cart-count {
		background: #080f14;
		color: var(--primary-color);
		border:1px solid var(--primary-color);
	}

}

header.white {

	#header {
		position: relative;
		margin-bottom:40px;
	}

	.header-menu {
		a.nav-link,
		a {
			color: var(--color-nav-white);
		}
		a:focus,
		a:hover {
			color: var(--color-text);
		}
	}
}

.container-fluid {
	padding-right: var(--padding-body);
	padding-left: var(--padding-body);
}

.btnolang {
	border-radius:50px;
	background:var(--primary-color);
	color: var(--color-text);
	padding: 14px 32px;
	font-family: Roboto;
	font-weight: 600;
	font-size: 15px;
	line-height: 22.5px;
	transition: all 0.3s ease;
	border: 1px solid var(--primary-color);
}
.btnolang:hover {
	color: var(--color-text-inverse);
	//transform: scale(1.05);
	//border:none;
}
.btnolang.secondario {
	background: transparent;
	color: var(--color-text-inverse);
	border: 1px solid var(--color-text-inverse);
}
.btnolang.secondario:hover {
	background: var(--color-text-inverse);
	color: var(--color-text);
}

.overlay-black {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
}

.product-gallery {
	width: 100%;
	height: 85vh;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	position:relative;

	&.fullscreen {
		height: 100vh;
	}

	.overlay-content {
		position:absolute;
		bottom:var(--padding-body);
		left:0;
		color: var(--color-text-inverse);
		//padding: var(--padding-body);
		width:100%;
		height: calc(100% - 100px);
		display:flex;
		align-items: flex-end;

		.product-info {
			margin-left:-4px;
		}

		.filter-cta {
			padding-top:20px;
		}
	}

	.overlay-black {
		top:2px;
		background: linear-gradient(
			180deg,
			rgba(0, 0, 0, 0) 60%,
			rgba(0, 0, 0, 0.05) 65%,
			rgba(0, 0, 0, 0.1) 68%,
			rgba(0, 0, 0, 0.15) 70%,
			rgba(0, 0, 0, 1.0) 98%,
			rgba(0, 0, 0, 1.0) 100%
		);
	}



	&.product-gallery-categoria {

	}
}

@media (max-width: 1440px) {
	.product-gallery {
		.overlay-content {
			padding:0;
		}
	}
}
@media (max-width: 768px) {
	.product-gallery {
		margin-bottom:50px;
	}
}


.product-cta {
    right: 60px;
    bottom: 40px;
	position: fixed;
	z-index:99;
	opacity:0;
	transition: opacity 0.5s ease;

	&.visibile {
		opacity:1;
	}
}

@media (max-width: 768px) {
	.product-cta {
		right: auto;
		left: 20px;
		bottom: 10px;
	}
}


.product-details {
	position:relative;
}


.page-gallery {
	width: 100%;
	height: 85vh;

	.page-splide {
		width: 100%;
		height: 100%;
	}
	.page-splide .splide__track {
		width: 100%;
		height: 100%;
	}
	.page-splide .splide__slide {
		width: 100%;
		height: 100%;
		background-repeat: no-repeat;
		background-size: cover;
		background-position: center;
		position:relative;
	}

	.overlay-black {
		background: linear-gradient(180deg, rgba(0, 0, 0, 0) 45%, rgba(0, 0, 0, 1) 98%);
	}

	.overlay-content {
		position:absolute;
		bottom:var(--padding-body);
		left:0;
		color: var(--color-text-inverse);
		padding: var(--padding-body);
		width:100%;

		/*.olang-single-product__title {
			font-size:140px;
			text-transform: uppercase;
			line-height: 140px;
			letter-spacing: -3px;
		}*/

		.olang-single-price {
			padding-top:0;
		}

		.olang-single-product__description {
			margin-bottom:26px;
			line-height: 42px;
		}

		.product-cta {
			padding-top:30px;
			opacity:1;
			bottom: auto;
			right: auto;
			position: relative;

			.button {
				border-radius:50px;
				background:var(--primary-color);
				color: var(--color-text);
				padding: 14px 32px;
				font-family: Roboto;
				font-weight: 600;
				font-size: 15px;
				line-height: 22.5px;
			}
			.button:hover {
				color: var(--color-text-inverse);
			}
		}
	}
}

.splide__pagination {
	justify-content: end;
	padding-right: var(--padding-body);
	bottom: 10px;
	transition: transform 0.8s ease;

	.is-active {
		transform:none;
		width: 24px;
		border-radius: 50px;
		margin-left: 14px;
		opacity: 1;
		background:var(--primary-color);
	}
}


.grid-filters {
	text-align:right;
	padding: 10px 0 15px 0;
	margin-bottom:15px;

	.btnfilter {
		color: rgba(255, 255, 255, 0.6);
		border:1px solid rgba(255, 255, 255, 0.3);
		padding:6px 16px;
		border-radius:50px;
		margin-left:6px;
		text-transform: uppercase;
		font-family: Barlow Semi Condensed;
		font-weight: 700;
		font-size: 13px;
		line-height: 19.5px;
		letter-spacing: 0.32px;
		text-align: center;

		.btnfilter-cat__clear {
			opacity:0;
			margin-left: 4px;
			font-size: 10px;
			position: absolute;
			margin-top: 3px;
			opacity: 0;
		}
	}
	.btnfilter.active {
		background:var(--primary-color);
		border-color:var(--primary-color);
		padding-right:20px;
	}
	.btnfilter:hover {
		background:var(--primary-color);
		border-color:var(--primary-color);
		color: rgba(255, 255, 255, 1);

		.btnfilter-cat__clear {
			opacity:1;
		}
	}

	&.is-sticky-fixed {
		position: fixed;
		z-index: 90;
		//background: var(--body-background);
		box-sizing: border-box;
		background: #16222F;
	}

	.btnfilter--toggle {
		background: transparent;
		cursor: pointer;
	}
}

@media (max-width: 767px) {
	.grid-filters {
		.btnfilter-cat {
			display:none;
 		}
	}
}


.olang-panel[hidden] {
	display: none;
}

.olang-panel {
	inset: 0;
	opacity: 0;
	pointer-events: none;
	position: fixed;
	transition: opacity 0.28s ease;
	visibility: hidden;
	z-index: 9999;
}

.olang-panel.is-open {
	opacity: 1;
	pointer-events: auto;
	visibility: visible;
}

.olang-panel__overlay {
	background: rgba(0, 0, 0, 0.58);
	inset: 0;
	opacity: 0;
	position: absolute;
	transition: opacity 0.28s ease;
}

.olang-panel.is-open .olang-panel__overlay {
	opacity: 1;
}

.olang-panel__drawer {
	background: #FFFFFF;
	border-radius: var(--border-radius);
	color: var(--color-text);
	display: flex;
	flex-direction: column;
	height: calc(100vh - (var(--padding-body) * 2));
	max-width: min(460px, calc(100vw - (var(--padding-body) * 2)));
	opacity: 0;
	overflow: hidden;
	position: absolute;
	right: var(--padding-body);
	top: var(--padding-body);
	transform: translateY(10px);
	transition: opacity 0.28s ease, transform 0.28s ease;
	width: 100%;
}

.olang-panel.is-open .olang-panel__drawer {
	opacity: 1;
	transform: translateY(0);
}

.olang-panel__header {
	align-items: center;
	display: flex;
	justify-content: space-between;
	padding: 26px 20px;
}

.olang-panel__header h2 {
	color: var(--color-text);
	margin: 0;
	text-transform: uppercase;
	font-size: 18px;
}

.olang-panel__close {
	align-items: center;
	background: transparent;
	border: 0;
	border-radius: 50%;
	color: var(--color-text);
	display: inline-flex;
	font-size: 30px;
	height: 40px;
	justify-content: center;
	line-height: 1;
	padding: 0;
	width: 40px;
}

.olang-panel__close:hover {
	background: var(--primary-color);
	color: var(--color-text);
}

.olang-panel__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	min-height: 0;
	overflow-x: hidden;
	overflow-y: auto;
	padding: 0 20px 24px 20px;
	position: relative;
}

.olang-panel__body .widget_shopping_cart_content {
	display: flex;
	flex: 1;
	flex-direction: column;
	min-height: 0;
}

.olang-panel__scroll {
	flex: 1;
	min-height: 0;
	overflow-x: hidden;
	overflow-y: auto;
}

.olang-panel__footer {
	background: #FFFFFF;
	flex-shrink: 0;
	margin-top: auto;
	padding-top: 8px;
}

body.olang-panel-is-open {
	//overflow: hidden;
}

.olang-menu-panel {
    .navbar-nav {
        flex-direction: row;
		gap: 2px;
        font-family: Barlow Semi Condensed;
        font-weight: 600;
        line-height: 19.5px;
        font-size: 14px;
        padding-bottom:30px;

		a {
			color: var(--color-nav);
			text-transform: uppercase;
			border-radius: 50px;
			padding: 6px 16px;
		}
		li.current-menu-item a {
			background: var(--primary-color);
			border-color: var(--body-background);
			border-radius: 50px;
			color: var(--color-text);
		}
    }

    .panel-widget {
    	padding: 26px 0;

    	ul {
    		font-family: Barlow Semi Condensed;
    		font-weight:600;
			list-style: none;
			margin: 0;

			li {
				text-transform: uppercase;
				padding: 4px 0;
			}
    	}
    }
    .panel-widget.panel-1 {
    	border-bottom:1px solid var(--secondary-color);
    }
}

.archive-filter-form {
	display: flex;
	flex: 1;
	flex-direction: column;
	min-height: 0;
	overflow: hidden;
}

.archive-filter-form__body {
	flex: 1;
	min-height: 0;
	overflow-x: hidden;
	overflow-y: auto;
	padding: 30px;
}

.archive-filter-form__search {
	display: grid;
	gap: 10px;
	margin-bottom: 32px;
}

.archive-filter-form__search label {
	color: var(--color-text);
	font-family: Barlow Semi Condensed;
	font-size: 18px;
	font-weight: 600;
	line-height: 1;
	text-transform: uppercase;
}

.archive-filter-form__search input[type="text"] {
	background: #FFFFFF !important;
	border: 1px solid var(--secondary-color) !important;
	border-radius: 999px !important;
	color: var(--color-text) !important;
	font-family: Roboto !important;
	font-size: 15px !important;
	line-height: 22.5px;
	padding: 12px 16px !important;
	width: 100%;
}

.archive-filter-form__search input[type="text"]::placeholder {
	color: rgba(8, 15, 20, 0.45);
}

.archive-filter-form__search input[type="text"]:focus {
	border-color: var(--primary-color) !important;
	box-shadow: none;
	outline: none;
}

.archive-filter-form__group {
	border: 0;
	margin: 0 0 32px;
	min-width: 0;
	padding: 0;
	width: 100%;
}

.archive-filter-form__group legend {
	color: var(--color-text);
	float: left;
	font-family: Barlow Semi Condensed;
	font-size: 18px;
	font-weight: 600;
	margin: 0 0 16px;
	padding: 0;
	width: 100%;
}

.archive-filter-form__options {
	clear: both;
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	width: 100%;
}

.archive-filter-form__option {
	align-items: center;
	border: 1px solid var(--secondary-color);
	border-radius: 999px;
	color: var(--color-text);
	cursor: pointer;
	display: flex;
	gap: 10px;
	justify-content: center;
	margin: 0;
	min-width: 0;
	padding: 7px 10px;
	position: relative;
	font-size: 14px;
	text-align: center;
}

.archive-filter-form__option:hover {
	background: var(--secondary-color);
	color: var(--color-text-inverse);
}

.archive-filter-form__option.is-checked {
	border: 1px solid var(--primary-color);
	background: var(--primary-color);
	color: var(--color-text);
	font-weight: 500;
}

.archive-filter-form__option input[data-filter-option] {
	appearance: none;
	cursor: pointer;
	height: 100%;
	left: 0;
	margin: 0;
	opacity: 0;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 1;
}

.archive-filter-form__option span {
	color: inherit;
	overflow: hidden;
	pointer-events: none;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.archive-filter-form__group--olang_size .archive-filter-form__options {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.archive-filter-form__actions {
	align-items: center;
	background: #FFFFFF;
	border-top: 1px solid rgba(8, 15, 20, 0.12);
	display: flex;
	flex-shrink: 0;
	gap: 12px;
	justify-content: center;
	padding: 20px;
	text-align: center;
	width: 100%;
}

.archive-filter-form__submit {
	background: var(--primary-color);
	border: 0;
	border-radius: 999px;
	color: var(--color-text);
	font-size: 15px;
	font-weight: 600;
	line-height: 22.5px;
	padding: 14px 28px;
	text-transform: uppercase;
}

.archive-filter-form__submit:hover {
	color: var(--color-text-inverse);
}

@media (max-width: 600px) {
	.archive-filter-form__group--olang_size .archive-filter-form__options {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

.products-found {
	text-transform: uppercase;
	padding-bottom:20px;
	color:var(--secondary-color);
	font-weight: 500;
	letter-spacing: 0.1px;
	font-family: Barlow Semi Condensed;
	font-size: 22px;
}

.grid-products {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 10px;
    grid-auto-flow: dense;

	.item {
		aspect-ratio: 0.85;
		background-color: var(--color-text-inverse);
		border-radius: var(--border-radius);
		padding: var(--border-radius);
		position:relative;

		a {
			color:var(--color-text);
			display: block;
			height: 100%;
			width: 100%;
			background-repeat: no-repeat;
			background-size: 100%;
			background-position: center bottom;
		}

		.product-toolbar {
			text-align: right;
			position: absolute;
			width: 100%;
			left: 0;
			padding: 0 10px;

			.tag {
				border-radius: 50px;
				background: var(--primary-color);
				color: var(--color-text);
				padding: 4px 10px;
				font-family: Roboto;
				font-weight: 500;
				font-size: 12px;
				letter-spacing:0.1;
			}
		}

		.product-content {
			width:100%;
			display: flex;
			flex-direction: column;
			padding: 5px;

			.product-info {
				flex-grow: 1;

				.title {
					margin:0;
					line-height: 100%;

					.color {
						font-weight: 400;
						font-size: 20px;
						line-height: 18px;
						color: var(--secondary-color);
					}
				}

				.description {
					color: var(--secondary-color);
					font-weight: 400;
					font-size: 15px;
				}
			}

			.product-price {
				padding-top: 8px;
				.price {
					color:var(--primary-color);
					font-weight:700;
					font-family: Barlow Condensed;
					font-size: 24px;
					letter-spacing: 0px;

					del {
						font-size: 18px;
						color: var(--secondary-color);
						font-weight: 500;
						margin-left: 10px;
					}
				}
			}
		}
	}
	.item.large {
		grid-column: span 2;
		grid-row: span 2;

		/*.product-info {
			position:absolute;
			bottom: calc(var(--border-radius) * 3);
		}*/
	}

	.item.fullcard-1,
	.item.fullcard-2 {
		background-repeat: no-repeat;
		background-position: center;
		background-size: cover;
	}

	.item.fullcard-1 {
		a {
			color:var(--color-text-inverse);
		}
	}

	.item.item-outscreen {
		transform: scale(0.8);
	}
}

.archive-load-more {
	text-align: center;
	margin-top: 40px;
}

.archive-load-more__button {
	cursor: pointer;
}

.archive-load-more__button:disabled {
	cursor: wait;
	opacity: 0.7;
}

.scale-in {
	transition: transform 0.3s ease;
}
.scale-in:hover {
	transform: scale(0.98);
}

@media (max-width: 1440px) {
	.grid-products {
		display: grid;
		grid-template-columns: repeat(5, 1fr);
    }
}

@media (max-width: 1200px) {
	.grid-products {
		display: grid;
		grid-template-columns: repeat(4, 1fr);

		.item {
			//aspect-ratio: 0.80;

			.product-content {

				.product-info {
					.price {
						font-size: 20px;
						line-height: 20px;
					}
					.title {
						font-size: 20px;
						line-height: 20px;
					}
				}
			}
		}
    }

}

@media (max-width: 1024px) {
	.grid-products {
		display: grid;
		grid-template-columns: repeat(3, 1fr);

		.item {
			//aspect-ratio: 0.80;
		}
    }
}

@media (max-width: 768px) {
	.grid-products {
		display: grid;
		grid-template-columns: repeat(2, 1fr);

		.item {
			//aspect-ratio: 0.80;
		}
    }
}

@media (max-width: 500px) {
	.grid-products {
		display: block;
		width:100%;

		.item {
			margin-bottom:10px;
		}
    }
}

.olang-single-product {
	background: var(--body-background);
	color: var(--color-text-inverse);
	padding-bottom: 120px;
}

.olang-single-product__hero {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(420px, 830px);
	gap: 52px;
	align-items: start;
	padding-top: 86px;
}

.olang-single-product__summary {
	height:100%;
	display: flex;
	flex-direction: column;
	justify-content: end;
	padding-bottom:60px;
}
.olang-single-price {
	font-family: Barlow Semi Condensed;
	font-weight: 600;
	font-size: 32px;
	padding-top: 10px;
	color:var(--primary-color);

	del {
		font-size: 22px;
		color:rgba(255,255,255,0.5);
		margin-left:20px;
	}
}
.olang-size-picker {
	display: inline-block;
	position: relative;
}

.olang-size-picker__toggle {
	border: 0;
}

.olang-size-picker__popup {
	background: #ffffff;
	border-radius: 24px;
	box-shadow: 0 24px 80px rgba(0, 0, 0, 0.35);
	bottom: calc(100% + 12px);
	color: #080f14;
	left: 0;
	min-width: 320px;
	padding: 22px;
	position: absolute;
	right: auto;
	z-index: 20;
}

.olang-size-picker__popup.is-align-left {
	left: 0;
	right: auto;
}

.olang-size-picker__popup.is-align-right {
	left: auto;
	right: 0;
}

.olang-size-picker__popup[hidden] {
	display: none;
}

.olang-size-picker__title {
	font-family: Barlow Semi Condensed;
	font-size: 22px;
	font-weight: 700;
	line-height: 1;
	margin-bottom: 16px;
	text-transform: uppercase;
}

.olang-size-picker__options {
	display: grid;
	gap: 8px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin-bottom: 14px;
}

.olang-size-picker__option {
	background: transparent;
	border: 1px solid rgba(8, 15, 20, 0.2);
	border-radius: 50px;
	color: #080f14;
	font-family: Roboto;
	font-size: 14px;
	font-weight: 600;
	line-height: 20px;
	min-height: 40px;
	padding: 8px 10px;
	text-align: center;
}

.olang-size-picker__option:hover,
.olang-size-picker__option.is-selected {
	background: var(--primary-color);
	border-color: var(--primary-color);
}

.olang-size-picker__option:disabled {
	background: rgba(8, 15, 20, 0.04);
	border-color: rgba(8, 15, 20, 0.08);
	color: rgba(8, 15, 20, 0.24);
	cursor: not-allowed;
	text-decoration: line-through;
}

.olang-size-picker__confirm {
	background: #080f14;
	border: 0;
	border-radius: 50px;
	color: #ffffff;
	font-family: Roboto;
	font-size: 15px;
	font-weight: 600;
	line-height: 22.5px;
	padding: 14px 32px;
	width: 100%;
}

.olang-size-picker__confirm:hover:not(:disabled) {
	background: var(--primary-color);
	color: #080f14;
}

.olang-size-picker__confirm:disabled {
	cursor: not-allowed;
	opacity: 0.35;
}

.olang-size-picker__confirm.is-loading {
	opacity: 0.65;
}

.olang-size-picker__empty {
	color: rgba(8, 15, 20, 0.65);
	font-family: Roboto;
	font-size: 14px;
	line-height: 20px;
}

.olang-size-picker__error {
	color: #b42318;
	font-family: Roboto;
	font-size: 13px;
	line-height: 18px;
	margin-bottom: 14px;
}

.olang-cart-modal {
	align-items: center;
	display: flex;
	inset: 0;
	justify-content: center;
	padding: var(--padding-body);
	position: fixed;
	z-index: 9999;
}

.olang-cart-modal[hidden] {
	display: none;
}

.olang-cart-modal__overlay {
	background: rgba(0, 0, 0, 0.65);
	inset: 0;
	position: absolute;
}

.olang-cart-modal__dialog {
	background: #ffffff;
	border-radius: 28px;
	box-shadow: 0 24px 100px rgba(0, 0, 0, 0.45);
	color: #080f14;
	max-width: 460px;
	padding: 42px;
	position: relative;
	text-align: center;
	width: 100%;
}

.olang-cart-modal__close {
	align-items: center;
	background: rgba(8, 15, 20, 0.08);
	border: 0;
	border-radius: 50%;
	color: #080f14;
	display: flex;
	font-size: 24px;
	height: 36px;
	justify-content: center;
	line-height: 1;
	position: absolute;
	right: 16px;
	top: 16px;
	width: 36px;
}

.olang-cart-modal__title {
	color: #080f14;
	font-family: Barlow Semi Condensed;
	font-size: 34px;
	font-weight: 700;
	line-height: 1;
	margin: 0 0 16px;
	text-transform: uppercase;
}

.olang-cart-modal__text {
	color: rgba(8, 15, 20, 0.65);
	font-family: Roboto;
	font-size: 15px;
	line-height: 22.5px;
	margin: 0 0 28px;
}

.olang-cart-modal__actions {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.olang-cart-modal__checkout {
	background: var(--primary-color);
	border-radius: 50px;
	color: #080f14;
	display: inline-block;
	font-family: Roboto;
	font-size: 15px;
	font-weight: 600;
	line-height: 22.5px;
	padding: 14px 32px;
}

.olang-cart-modal__checkout:hover {
	background: #080f14;
	color: #ffffff;
}

.olang-cart-modal__continue {
	background: transparent;
	border: 1px solid rgba(8, 15, 20, 0.18);
	border-radius: 50px;
	color: #080f14;
	font-family: Roboto;
	font-size: 15px;
	font-weight: 600;
	line-height: 22.5px;
	padding: 14px 32px;
}

.olang-cart-modal__continue:hover {
	background: rgba(8, 15, 20, 0.06);
}

.olang-cart-modal-is-open {
	overflow: hidden;
}

.olang-single-product__tags {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 34px;
}

.olang-single-product__tag {
	background: rgba(255, 255, 255, 0.18);
	border-radius: 50px;
	color: #bde47e;
	font-family: Barlow Semi Condensed;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.3px;
	line-height: 18px;
	padding: 4px 14px;
	text-transform: uppercase;
	z-index: 2;
}

.olang-single-product__tag:hover {
	color: var(--color-text);
	background: var(--primary-color);
}

.olang-single-product__header {
	//margin-bottom: 100px;
}

.olang-single-product__title {
	font-size: 80px;
	letter-spacing: -3px;
	font-family: Barlow Semi Condensed;
	margin: 0;
	//text-transform: uppercase;
	color: var(--color-text--inverse);
	font-weight: 600;
	z-index: 1;
	line-height:100%;
}
.olang-single-product__color {
	font-family: Barlow Semi Condensed;
	font-weight: 400;
	font-size: 40px;
	color:rgba(255,255,255,0.6);
	line-height:100%;
}
.olang-single-product__media {
	display: grid;
	gap: 34px;
	margin-bottom:16px;
}

.olang-single-product__main-image,
.olang-single-product__gallery-item {
	background: #ffffff;
	border-radius: var(--border-radius);
	overflow: hidden;
}

.olang-single-product__main-image img,
.olang-single-product__gallery-item img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	display: block;
}

.olang-product-lightbox__trigger {
	background: transparent;
	border: 0;
	cursor: zoom-in;
	display: block;
	height: 100%;
	padding: 0;
	width: 100%;
}

.olang-single-product__gallery {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 16px;

	.olang-single-product__gallery-item.large {
		grid-column: span 2;
		grid-row: span 2;
	}
}


.olang-product-lightbox {
	align-items: center;
	display: flex;
	inset: 0;
	justify-content: center;
	padding: var(--padding-body);
	position: fixed;
	z-index: 10000;
}

.olang-product-lightbox[hidden] {
	display: none;
}

.olang-product-lightbox__overlay {
	background: rgba(0, 0, 0, 0.84);
	inset: 0;
	position: absolute;
}

.olang-product-lightbox__dialog {
	align-items: center;
	display: flex;
	justify-content: center;
	max-height: calc(100vh - 80px);
	max-width: calc(100vw - 80px);
	position: relative;
	width: 100%;
}

.olang-product-lightbox__image {
	background: #ffffff;
	border-radius: 28px;
	display: block;
	max-height: calc(100vh - 80px);
	max-width: min(1100px, 100%);
	object-fit: contain;
	width: auto;
}

.olang-product-lightbox__close,
.olang-product-lightbox__nav {
	align-items: center;
	background: rgba(255, 255, 255, 0.14);
	border: 0;
	border-radius: 50%;
	color: #ffffff;
	display: flex;
	justify-content: center;
	position: absolute;
	z-index: 2;
}

.olang-product-lightbox__close {
	font-size: 34px;
	height: 44px;
	line-height: 1;
	right: 0;
	top: 0;
	width: 44px;
}

.olang-product-lightbox__nav {
	font-size: 54px;
	height: 58px;
	line-height: 1;
	top: 50%;
	transform: translateY(-50%);
	width: 58px;
}

.olang-product-lightbox__nav--prev {
	left: 0;
}

.olang-product-lightbox__nav--next {
	right: 0;
}

.olang-product-lightbox__close:hover,
.olang-product-lightbox__nav:hover {
	background: var(--primary-color);
	color: #080f14;
}

.olang-product-lightbox-is-open {
	overflow: hidden;
}

.olang-single-product__divider {
	border-top: 1px solid rgba(255, 255, 255, 0.24);
	margin: 28px 0 48px;
}

.olang-single-product__details {
	display: grid;
	grid-template-columns: minmax(0, 807px) minmax(420px, 830px);
	gap: 52px;
}

.olang-single-product__content {
	max-width: 807px;
}

.olang-single-product__purchase {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 24px;
	align-items: start;
	margin-bottom: 58px;
}

.olang-single-product__price {
	color: #bde47e;
	font-family: Barlow Semi Condensed;
	font-size: 36px;
	font-weight: 600;
	letter-spacing: 5px;
	line-height: 22.5px;
}

.olang-single-product__price .amount {
	color: inherit;
}

.olang-single-product__cart form.cart {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0;
}

.olang-single-product__cart .quantity {
	display: none;
}

.olang-single-product__cart .single_add_to_cart_button,
.olang-single-product__cart .button {
	background: var(--primary-color);
	border: 0;
	border-radius: 50px;
	color: #080f14;
	font-family: Roboto;
	font-size: 15px;
	font-weight: 600;
	line-height: 22.5px;
	padding: 14px 32px;
	text-align: center;
}

.olang-single-product__cart .single_add_to_cart_button:hover,
.olang-single-product__cart .button:hover {
	background: #bde47e;
	color: #080f14;
}

.olang-single-product__description {
	color: #d9d9d9;
	font-family: Barlow Semi Condensed;
	font-size: 24px;
	line-height: 36px;
	margin-bottom: 46px;
	padding-right: 20%;
}

.olang-single-product__description-title {
	color: #ebf5ff;
	font-size: 36px;
	font-weight: 500;
	line-height: 49px;
	margin-bottom: 18px;
	max-width: 1008px;
}

.olang-single-product__description-title p,
.olang-single-product__description-text p {
	margin-bottom: 0;
}

.olang-single-product__description-text p + p {
	margin-top: 18px;
}

.olang-single-product__description strong,
.olang-single-product__description b {
	font-weight: 700;
}

.olang-single-product__features {
	border: 1px solid rgba(255, 255, 255, 0.9);
	border-radius: 24px;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 24px;
	max-width: 627px;
	padding: 30px 40px;
	margin-bottom:20px;
}

.olang-single-product__feature {
	border-left: 2px solid rgba(77, 180, 204, 0.3);
	padding-left: 18px;
}

.olang-single-product__feature strong {
	color: #ffffff;
	display: block;
	font-family: Barlow Semi Condensed;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.35px;
	line-height: 21px;
}

.olang-single-product__feature span {
	color: rgba(255, 255, 255, 0.4);
	display: block;
	font-family: Roboto;
	font-size: 12px;
	line-height: 18px;
	margin-top: 2px;
}

@media (max-width: 1440px) {
	.olang-single-product__title {
		font-size:80px;
		line-height: 80px;
	}
}

@media (max-width: 1200px) {
	.olang-single-product__hero,
	.olang-single-product__details {
		grid-template-columns: 1fr;
	}

	.olang-single-product__summary {
		min-height: auto;
	}

	.olang-single-product__media {
		order: -1;
	}

	.olang-single-product__details {
		gap: 0;
	}
}

@media (max-width: 1024px;) {

	.olang-single-product__description-title {
		font-size: 38px;
		line-height: 42px;
	}
	.olang-single-product__description {
		font-size: 26px;
		line-height: 30px;
	}

}

@media (max-width: 768px) {
	.olang-single-product {
		padding-bottom: 72px;
	}

	.olang-single-product__hero {
		gap: 28px;
		padding-top: 34px;
	}

	.olang-single-product__title {
		font-size: 80px;
	}
	.olang-single-product__color {
		font-size: 30px;
		color:rgba(255,255,255,0.8);
		//line-height: 0.65;
	}

	.olang-single-product__gallery {
		grid-template-columns: repeat(2, 1fr);
	}

	.olang-product-lightbox__dialog {
		max-height: calc(100vh - 28px);
		max-width: calc(100vw - 28px);
	}

	.olang-product-lightbox__image {
		border-radius: 18px;
		max-height: calc(100vh - 28px);
	}

	.olang-product-lightbox__close {
		right: 10px;
		top: 10px;
	}

	.olang-product-lightbox__nav {
		height: 44px;
		font-size: 40px;
		width: 44px;
	}

	.olang-single-product__purchase {
		grid-template-columns: 1fr;
	}

	.olang-size-picker,
	.olang-size-picker__toggle {
		width: 100%;
	}

	.olang-size-picker__popup {
		min-width: 0;
		width: min(340px, calc(100vw - 28px));
	}

	.olang-single-product__summary {
		padding-bottom: 120px;
	}
	.olang-single-product__description-title {
		font-size: 34px;
		line-height: 38px;
	}
	.olang-single-product__description {
		font-size: 26px;
		line-height: 30px;
		padding-right: 0;
	}

	.olang-single-product__features {
		grid-template-columns: 1fr;
		padding: 24px;
	}
}

@media (max-width: 500px) {
	.olang-single-product__title {
        font-size: 50px;
		line-height: 50px;
        letter-spacing: -1px;
	}
	.olang-single-product__color {
		padding-bottom:10px;
		font-size: 24px;
		color:rgba(255,255,255,0.8);
	}

	.olang-single-product__description-title {
		font-size: 26px;
		line-height: 28px;
	}
	.olang-single-product__description {
		font-size: 22px;
		line-height: 26px;
	}

}

.olang-product-search {
	display: grid;
	gap: 12px;
}

.olang-product-search .form-control {
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.18);
	border-radius: 50px;
	color: var(--color-text-inverse);
	padding: 14px 20px;
}

.olang-product-search .form-control::placeholder {
	color: rgba(255, 255, 255, 0.5);
}

.olang-product-search__submit {
	background: var(--primary-color);
	border: 0;
	border-radius: 50px;
	color: #080f14;
	display: inline-block;
	font-family: Roboto;
	font-size: 15px;
	font-weight: 600;
	line-height: 22.5px;
	padding: 14px 24px;
	text-align: center;
}

.olang-product-search__submit:hover {
	background: #ffffff;
	color: #080f14;
}

.olang-sidebar-menu,
.olang-sidebar-menu .sub-menu,
.woocommerce-mini-cart {
	list-style: none;
	margin: 0;
	padding: 0;
}

.olang-sidebar-menu {
	display: grid;
	gap: 6px;
}

.olang-sidebar-menu a {
	border-bottom: 1px solid rgba(8, 15, 20, 0.12);
	color: var(--color-text);
	display: block;
	font-family: Barlow Semi Condensed;
	font-size: 22px;
	font-weight: 700;
	letter-spacing: 0.8px;
	padding: 14px 0;
	text-transform: uppercase;
}

.olang-sidebar-menu a:hover,
.olang-sidebar-menu .current-menu-item > a {
	color: var(--primary-color);
}

.woocommerce-mini-cart {
	display: grid;
	gap: 18px;
	padding-bottom: 20px;
}

.woocommerce-mini-cart-item {
	align-items: center;
	display: flex;
	gap: 14px;
	padding: 0;
	position: relative;

	a {
		color:var(--color-text);
	}
}

.woocommerce-mini-cart-item__media {
	flex: 0 0 90px;
	width: 90px;
}

.woocommerce-mini-cart-item__media a {
	display: block;
}

.woocommerce-mini-cart-item__media img,
.woocommerce-mini-cart-item img {
	background: #ffffff;
	border-radius: 12px;
	display: block;
	float: none !important;
	height: auto;
	margin: 0 !important;
	object-fit: contain;
	position: static !important;
	width: 100%;
	border: 1px solid rgba(0, 0, 0, 0.3);
}

.woocommerce-mini-cart-item__info {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	gap: 6px;
	min-width: 0;
	padding-right: 4px;
}

.woocommerce-mini-cart-item__name {
	color: var(--color-text);
	font-weight: 600;
	line-height: 1.3;
	text-decoration: none;
}

.woocommerce-mini-cart-item__name:hover {
	color: var(--color-text);
}

.woocommerce-mini-cart-item .quantity,
.woocommerce-mini-cart-item dl.variation {
	color: var(--color-text);
	display: block;
	margin: 0;
	padding: 0;
}

.woocommerce-mini-cart-item dl.variation {
	font-size: 13px;
}

.woocommerce-mini-cart-item dl.variation dd,
.woocommerce-mini-cart-item dl.variation p {
	margin: 0;
}

.woocommerce-mini-cart-item .remove {
	align-items: center;
	background: rgba(8, 15, 20, 0.08);
	border-radius: 50%;
	color: var(--color-text) !important;
	display: inline-flex;
	flex: 0 0 24px;
	float: none !important;
	height: 24px;
	justify-content: center;
	line-height: 1;
	margin: 0;
	position: static !important;
	text-decoration: none;
	width: 24px;
}

.woocommerce-mini-cart-item .remove:hover {
	background: var(--primary-color);
	color: #080f14 !important;
}

.woocommerce-mini-cart__total {
	color: var(--color-text);
	font-family: Barlow Semi Condensed;
	font-size: 22px;
	font-weight: 500;
	padding: 30px 0 20px 0;

	span {
		float:right;
	}
}

.woocommerce-mini-cart__buttons.buttons {
	display: grid;
	gap: 6px;
	grid-template-columns: repeat(2, minmax(0, 1fr));

	.button {
		padding:15px 0 !important;
		border-radius:50px;
		color: var(--secondary-color);
		padding: 14px 32px;
		font-family: Roboto;
		font-weight: 600;
		font-size: 15px;
		line-height: 22.5px;
		text-align:center;
		border:1px solid var(--secondary-color);
	}
	.button.checkout {
		border:1px solid var(--primary-color);
		background: var(--primary-color);
		color: var(--color-text);
	}

	.button:hover {
		border:1px solid var(--color-text);
		color: var(--color-text);
	}
	.button.checkout:hover {
		border:1px solid var(--primary-color);
		color: var(--color-text-inverse);
	}
}

.woocommerce-mini-cart__empty-message {
	color: rgba(8, 15, 20, 0.7);
}

.woocommerce ul.cart_list li img,
.woocommerce ul.product_list_widget li img {
	width: 300px;
	border: 1px solid rgba(8, 15, 20, 0.12);
}


@media (max-width: 768px) {
	.navbar-brand img {
		height: 34px;
	}

	.olang-header-actions {
		gap: 6px;
	}

	.olang-header-actions__button {
		height: 36px;
		width: 36px;
	}
}

.wc-block-components-sidebar {
	padding-left:1%;
}

.wp-block-woocommerce-cart-order-summary-block {
	padding:20px;
	background: #16222F;
	border-radius: var(--border-radius);
}

/* Classic WooCommerce cart shortcode layout */
.woocommerce-cart .woocommerce {
	display: grid;
	grid-template-columns: minmax(0, 2.5fr) minmax(320px, 1fr);
	gap: 28px;
	align-items: start;
}

.woocommerce-cart .woocommerce-notices-wrapper {
	grid-column: 1 / -1;
}

.woocommerce-cart .woocommerce-cart-form {
	grid-column: 1;
}

.woocommerce-cart .cart-collaterals {
	grid-column: 2;
	width: 100%;
}

.woocommerce-cart .cart-collaterals .cart_totals {
	float: none;
	width: 100%;
	background: #16222F;
	border-radius: var(--border-radius);
	padding: 30px;
}

.woocommerce-cart table.cart .product-remove {
	text-align: right;
	width: 48px;
}

.woocommerce-cart .cart-collaterals::before,
.woocommerce-cart .cart-collaterals::after {
	content: none;
}

@media (max-width: 991px) {
	.woocommerce-cart .woocommerce {
		display: block;
	}

	.woocommerce-cart .cart-collaterals {
		margin-top: 24px;
	}
}

.woocommerce-cart-form table.shop_table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0 14px;
    margin-top: -14px;

	a {
		color:var(--color-text-inverse);
	}

	thead {
		display:none;
	}
	.product-thumbnail {
		width:150px;
	}
	.product-subtotal {
		text-align:right;
		font-family: Barlow Semi Condensed;
		font-weight: 700;
		font-size: 20px;
	}
	.product-quantity {
		text-align:right;
	}

	tr {
		td {
			padding: 14px;
			background: #16222F;
		}

		td:first-child {
			border-radius: var(--border-radius) 0 0 var(--border-radius);
		}

		td:last-child {
			border-radius: 0 var(--border-radius) var(--border-radius) 0;
		}
	}
}
.woocommerce table.shop_table,
.woocommerce table.shop_table td {
	border:none;
}
.woocommerce-cart table.cart img {
	border-radius: var(--border-radius);
	width:150px;
}
#add_payment_method table.cart td.actions .coupon .input-text,
.woocommerce-cart table.cart td.actions .coupon .input-text,
.woocommerce-checkout table.cart td.actions .coupon .input-text {
	width:250px;
	margin: 0 14px 0 0;
}
#add_payment_method .wc-proceed-to-checkout a.checkout-button,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce-checkout .wc-proceed-to-checkout a.checkout-button {
	border-radius: var(--border-radius);
	background:var(--primary-color);
	color: var(--color-text);
	padding: 14px 32px;
	font-family: Roboto;
	font-weight: 600;
	font-size: 15px;
	line-height: 22.5px;
	transition: transform 0.3s ease;
	opacity:0.9;
	text-transform: uppercase;
}
#add_payment_method .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce-checkout .wc-proceed-to-checkout a.checkout-button:hover {
	background:var(--primary-color);
	opacity:1;
}


.wc-block-components-checkout-place-order-button,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button:disabled,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button:disabled[disabled],
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce #respond input#submit,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce input.button {
	//border:1px solid rgba(255,255,255,0.6);
	background: var(--primary-color);
	border-radius: var(--border-radius);
	font-family: Roboto;
	font-weight: 500;
	font-size: 14px;
	color: #000000;
	padding: 10px 24px;
	opacity:0.8;
	border:none;
	text-align:center;
}

.wc-block-components-checkout-place-order-button:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce #respond input#submit:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce input.button:hover {
	background:var(--primary-color);
	//border:1px solid var(--primary-color);
	color:var(--color-text-inverse);
	opacity:1;
	border:none;
}

.wc-block-components-checkout-place-order-button {
	text-transform: uppercase;
}

.woocommerce-mini-cart-item__info {
	.olang-item-property {
		font-family: Roboto;
		font-weight: 400;
		font-size: 13px;
		color:var(--secondary-color);
		padding-top:0px;

		.value {
			font-weight:700;
			color: var(--color-text);
		}
	}
}
.product-name {
	.product_name {
		font-family: Barlow Semi Condensed;
		font-weight: 700;
		font-size: 22px;
	}

	.olang-item-property {
		font-family: Roboto;
		font-weight: 400;
		font-size: 13px;
		color:var(--secondary-color);
		padding-top:6px;

		.value {
			font-weight:700;
			color:#FFFFFF;
		}
	}
}

.woocommerce-cart .olang-quantity-control {
	align-items: center;
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.18);
	border-radius: 999px;
	display: inline-flex;
	overflow: hidden;
}

.woocommerce-cart .olang-quantity-control__button {
	align-items: center;
	background: transparent;
	border: 0;
	color: var(--color-text-inverse);
	display: inline-flex;
	height: 38px;
	justify-content: center;
	padding: 0;
	transition: background 0.2s ease, color 0.2s ease;
	width: 38px;
}

.woocommerce-cart .olang-quantity-control__button:hover {
	background: var(--primary-color);
	color: var(--color-text);
}

.woocommerce-cart .olang-quantity-control .qty {
	appearance: textfield;
	background: transparent;
	border: 0;
	color: var(--color-text-inverse);
	font-family: Roboto;
	font-size: 15px;
	font-weight: 700;
	height: 38px;
	margin: 0;
	padding: 0;
	text-align: center;
	width: 46px;
}

.woocommerce-cart .olang-quantity-control .qty:focus {
	box-shadow: none;
	outline: none;
}

.woocommerce-cart .olang-quantity-control .qty::-webkit-inner-spin-button,
.woocommerce-cart .olang-quantity-control .qty::-webkit-outer-spin-button {
	appearance: none;
	margin: 0;
}

#add_payment_method .cart-collaterals .cart_totals tr td,
#add_payment_method .cart-collaterals .cart_totals tr th,
.woocommerce-cart .cart-collaterals .cart_totals tr td,
.woocommerce-cart .cart-collaterals .cart_totals tr th,
.woocommerce-checkout .cart-collaterals .cart_totals tr td,
.woocommerce-checkout .cart-collaterals .cart_totals tr th {
	border:none;
}

.woocommerce-cart .cart_totals {
	font-family: Roboto;
	font-weight: 400;
	font-size: 15px;

	h2 {
		text-transform: uppercase;
		margin-bottom:40px;
	}

	tr.order-total th,
	tr.order-total td {
		border-top:1px solid rgba(255,255,255,0.2);
	}

	tr.order-total th {
		font-family: Barlow Semi Condensed;
		font-weight: 600;
		font-size: 20px;
		color:var(--color-text-inverse);
	}

	tr.order-total td .woocommerce-Price-amount.amount {
		font-family: Barlow Semi Condensed;
		font-weight: 700;
		font-size: 28px;
		color:var(--primary-color);
	}

	th {
		color:var(--secondary-color);
	}

	td {
		text-align:right;
	}
}

.woocommerce table.shop_table th {
	padding:12px;
}

.wpcf7,
.wc-block-components-main .wc-block-components-checkout-step {
	background: #16222F;
	border-radius: var(--border-radius);
	padding: 30px;
}

/* Contenitore del campo */
.wc-block-components-text-input,
.wc-block-components-combobox,
.wc-block-components-select {
    display: flex !important;
    flex-direction: column !important;
}

/* Label sopra */
.wc-block-components-text-input label,
.wc-block-components-combobox label,
.wc-block-components-select label {
	top:0 !important;
    transform: none !important;
    margin-bottom: 6px !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;
    pointer-events: auto !important;
    color:var(--secondary-color) !important;
}

/* Input */
.wc-block-components-text-input input,
.wc-block-components-select select {
    margin-top: 23px !important;
}
.wc-block-components-form .wc-block-components-text-input,
.wc-block-components-text-input {
	margin-top: 16px !important;
}

.wc-blocks-components-select .wc-blocks-components-select__select {
	color: var(--color-text-inverse);
	font-family: Roboto;
	font-size: 15px;
	font-weight: 400;
	background: var(--body-background);
	border:none;
	padding: 4px 10px !important;
	margin-top:8px;
	border-radius: var(--border-radius);
}
.wc-blocks-components-select .wc-blocks-components-select__expand {
	fill: var(--color-text-inverse);
	margin-top: 12px;
}
.wc-blocks-components-select .wc-blocks-components-select__container {
	background: transparent;
}
.wc-blocks-components-select .wc-blocks-components-select__label {
	position:relative;
	color: var(--secondary-color);
}
.wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control-accordion-option--checked-option-highlighted,
.wc-block-components-radio-control--highlight-checked label.wc-block-components-radio-control__option--checked-option-highlighted {
	border:none;
	box-shadow:none;
}

.wc-block-components-sidebar-layout .wc-block-components-main {
	padding-right:0;
}

.wp-block-woocommerce-checkout-order-summary-block {
	background: #16222F;
	border-radius: var(--border-radius);
	padding: 30px;
	border:none;
	color:var(--secondary-color);
}

.wc-block-components-checkout-order-summary__title-text {
	font-family: Barlow Semi Condensed;
	font-weight: 600;
	font-size: 24px;
	line-height: 17.5px;
	text-transform: uppercase;
	color:var(--color-text-inverse);
}

.wc-block-components-checkout-order-summary__content .wc-block-components-order-summary-item__quantity {
	background:var(--primary-color);
}
.wc-block-components-order-summary .wc-block-components-order-summary-item__image {
	width:120px;
}
.wc-block-components-order-summary .wc-block-components-order-summary-item__image>img {
	width:120px;
	max-width:120px;
	border-radius: var(--border-radius);
}
.wp-block-woocommerce-checkout-order-summary-block .wc-block-components-product-name {
	flex-grow:0;
	font-family: Barlow Semi Condensed;
	font-weight: 700;
	font-size: 16px;
	color:var(--color-text-inverse);
}
.wc-block-components-order-summary .wc-block-components-order-summary-item__total-price,
.wc-block-components-order-summary .wc-block-components-order-summary-item__description,
.wc-block-components-order-summary .wc-block-components-order-summary-item__image {
	display: flex;
	flex-direction: column;
	gap: 4px;
	justify-content: center;
}
.wc-block-components-order-summary .wc-block-components-order-summary-item__total-price {
	font-family: Barlow Semi Condensed;
	font-weight: 700;
	font-size: 16px;
	color:var(--color-text-inverse);
}
.wc-block-components-totals-item.wc-block-components-totals-footer-item {
	font-family: Barlow Semi Condensed;
	font-weight: 700;
	font-size: 20px;
	color:var(--color-text-inverse);

	.wc-block-components-totals-item__value {
		color:var(--primary-color);
		font-size: 28px;
	}
}

.woocommerce-cart,
.woocommerce-checkout {
	//padding-top:60px;
}

.woocommerce-cart .entry-title,
.woocommerce-checkout .entry-title {
	text-transform: uppercase;
	font-size: 34px;
	padding-bottom:10px;
}



@media (min-width: 768px) {
	@supports (animation-timeline: scroll()) {
		.parallax-gallery {
			transform: none;
			animation: none;
			will-change: auto;
		}

		.parallax-gallery {
			animation: gallerySlowScroll linear both;
			animation-timeline: scroll(root block);
			animation-range: 0px 900px;
			will-change: transform;
		}
		.parallax-gallery .overlay-content {
			animation: galleryContentFastScroll linear both;
			animation-timeline: scroll(root block);
			animation-range: 0px 900px;
			will-change: transform;
		}
		.parallax-content {
			animation: productInfoFastScroll linear both;
			animation-timeline: scroll(root block);
			animation-range: 0px 900px;
			will-change: transform;
		}

		.parallax-content .cta {
			position: fixed;
			z-index: 999;
			animation: none;
			transform: none;
			will-change: auto;
		}
	}
}
@keyframes gallerySlowScroll {
	from {
		transform: translateY(0);
	}
	to {
		transform: translateY(60px);
	}
}
@keyframes galleryContentFastScroll {
	from {
		transform: translateY(0);
	}
	to {
		transform: translateY(-220px);
	}
}
@keyframes productInfoFastScroll {
	from {
		transform: translateY(0);
	}
	to {
		transform: translateY(-160px);
	}
}


.grid-product-categorie {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
    grid-auto-flow: dense;
    margin-top:80px;

	.product_cat-item {
		aspect-ratio: 0.85;
		background-color: var(--color-text-inverse);
		border-radius: var(--border-radius);
		position:relative;
		background-repeat: no-repeat;
		background-size: cover;
		background-position: center;
		transition: all 0.5s ease;

		.product-info {
			width:100%;
			position:absolute;
			padding: var(--border-radius);
			bottom: 0;

			.title {
				text-transform: uppercase;
				color: var(--color-text-inverse);
			}
			.description {
				min-height:46px;
				line-height: 16px;
				font-size: 14px;
				width: 80%;
				color:var(--color-text-inverse);
				opacity:0.4;
			}
		}

		.overlay-black {
			background: linear-gradient(180deg, rgba(0, 0, 0, 0) 38%, rgba(0, 0, 0, 0.7) 100%);
		}
	}

	.product_cat-item:hover {
		.product-info {
			.description {
				//color:var(--color-text-inverse);
				opacity:0.9;
			}
		}
	}
}

@media (max-width: 1440px) {
	.grid-product-categorie {
		grid-template-columns: repeat(2, 1fr);

		.product_cat-item {
			aspect-ratio: 1;
		}
	}
}

@media (max-width: 1024px) {
	.grid-product-categorie {
		.product_cat-item {
			aspect-ratio: 0.8;
		}
	}
}

@media (max-width: 767px) {
	.grid-product-categorie {
		grid-template-columns: repeat(1, 1fr);
	}
}


.product-slide {
	color: var(--color-text-inverse);
	display:block;

	.product-image {
		padding:10px 50px;
		background: var(--color-text-inverse);
		border-radius: var(--border-radius);
		position:relative;

		.product-toolbar {
			text-align: right;
			position: absolute;
			width: 100%;
			left: 0;
			padding: 0 10px;

			.tag {
				border-radius: 50px;
				background: var(--primary-color);
				color: var(--color-text);
				padding: 4px 10px;
				font-family: Roboto;
				font-weight: 500;
				font-size: 12px;
				letter-spacing:0.1;
			}
		}

	}
	.product-image.fullcard-1,
	.product-image.fullcard-2 {
		background-repeat: no-repeat;
		background-position: center;
		background-size: cover;
	}

	.product-info {
		padding: 20px 0;

		.product__title {
			font-size:24px;
			letter-spacing: 0px;

			.color {
                font-weight: 400;
                font-size: 20px;
                line-height: 18px;
                color: var(--secondary-color);
                margin-left: 6px;
			}
		}
		.product__description {
			font-weight: 400;
			font-size: 14px;
			line-height: 18px;
			color: var(--secondary-color);
			padding: 2px 16px 6px 0;
		}
		.product__price {
			font-family: Barlow Condensed;
			font-weight: 600;
			font-size: 24px;
			line-height: 25.5px;
		}
	}
}

.wpcf7 {

	.wpcf7-form {
		label {
			display:block;
			width:100%;
			margin-bottom: 6px !important;
			font-size: 13px !important;
			font-weight: 400 !important;
			line-height: 1.4 !important;
			pointer-events: auto !important;
			color: var(--secondary-color) !important;
		}
	}
	.wpcf7-form-control-wrap {
		display:block;
		width:100%;
	}

}


.dc-herotext {
	background-repeat:no-repeat;
	background-position: center center;
	background-size: cover;
    display: flex;
    justify-content: center;
    align-items: center;
    position:relative;

	.content {
		z-index:2;
		text-align:center;

		.titoletto {
			text-transform: uppercase;
			font-weight: 700;
			font-size: 10px;
			line-height: 15px;
			letter-spacing: 5px;
			color: #F7FFF9;
			margin-bottom: 30px;
		}
		.titolo {
			font-family: Barlow Semi Condensed;
			font-weight: 700;
			font-size: 52px;
			line-height: 54.6px;
			letter-spacing: 0px;
			margin-bottom: 50px;
		}
		.testo {
			font-weight: 300;
			font-size: 16px;
			line-height: 26px;
			letter-spacing: 0px;
		}

		ul.pulsanti {
			display: flex;
			gap: 20px;
			padding: 0;
			margin: 0;
			list-style: none;
			justify-content: center;
			margin-top:50px;

			li {
				min-width: 200px;

				a {
					display: block;
				}
			}
		}
	}

	.overlay-black {
		background: rgba(8, 15, 20, 0.6);
		z-index:1;
	}
}
@media only screen and (max-width: 1300px) {
	.dc-herotext {
		height:auto;
		padding:120px 0;

		.wrapper {
			width:65%;
		}
	}
}
@media only screen and (max-width: 1024px) {
	.dc-herotext {
		padding:120px 0;

		.wrapper {
			width:90%;
		}
	}
}

#footer {
	font-weight: 400;
	font-size: 13px;
	line-height: 19.5px;
	margin-top:100px;
	padding-bottom:60px;
	background: var(--body-background);

	color: var(--secondary-color);

	a {
		color: var(--secondary-color);
	}
	a:hover {
		color:var(--color-text-inverse);
	}
	.menu-item a[aria-current=page] {
		color:var(--color-text-inverse);
		font-weight:700;
	}

	.logo {
		width:90px;
		margin-bottom:20px;
	}
	.moto {
		margin-bottom:20px;
		max-width:80%;
	}
	.indirizzo {
		margin-bottom:20px;
	}
	.contatti {
		margin-bottom:20px;
		line-height: 25px;
	}

	h3.widget-title {
		font-size: 13px;
		line-height: 16.5px;
		letter-spacing: 3px;
		text-transform: uppercase;
		color:var(--color-text-inverse);
	}

	.menu {
		list-style: none;
		padding: 0 0 30px 0;

		li {
			padding-top:6px;
		}
	}
}

