.collection-main {

	width: 100%;

	.collection-main--container {

		margin: 0 auto;
		width: 100%;
		max-width: 1200px;

		@media screen and (max-width: 990px) {
			padding: 0 20px;
		}

	}

	.collection-main--hero {

		width: 100%;
		padding: 56px 0;
		background: #303030;

		@media screen and (max-width: 990px) {
			padding: 20px 0;
		}

		.collection-main--hero-title {

			margin: 0;
			color: #F7EEE1;
			text-align: center;
			font-size: 56px;
			line-height: 108%;
			font-family: 'Averia Serif Libre', serif;
			letter-spacing: -5%;
			position: relative;
			padding-bottom: 24px;

			@media screen and (max-width: 990px) {
				font-size: 28px;
				padding-bottom: 12px;
			}

			&::after {

				content: '';
				width: 90px;
				height: 3px;
				background: #BE6248;
				position: absolute;
				bottom: 0;
				left: 50%;
				transform: translate(-50%, 0);

				@media screen and (max-width: 990px) {
					width: 40px;
				}

			}

		}

	} /* collection-main--hero */

	.collection-main--template {

		padding: 48px 0;

		@media screen and (max-width: 990px) {
			padding: 26px 0;
		}

		.collection-main--navigation {

			width: 100%;
			margin: 0 0 30px 0;
			position: relative;

			@media screen and (max-width: 990px) {
				margin: 0 -20px 24px;
				width: calc(100% + 40px);
			}

			&::after {

				content:'';
				position: absolute;
				top: 0;
				right: 0;
				width: 158px;
				height: 100%;
				background: linear-gradient(to right, transparent, #E9DFCF);

				@media screen and (max-width: 768px) {
					width: 100px;
				}

			}

			.collection-main--navigation-scroller {

				display: flex;
				gap: 8px;
				overflow: auto;
				-ms-overflow-style: none;
	  			scrollbar-width: none;
	  			padding-right: 158px;

	  			&::-webkit-scrollbar {
					display: none;
				}

				@media screen and (max-width: 990px) {
					padding-left: 20px;
				}

				@media screen and (max-width: 768px) {
					padding-right: 80px;
				}

				.collection-main--navigation-link {

					padding: 0 28px;
					border-radius: 1000px;
					background: #DFD3BF;
					height: 48px;
					display: flex;
					align-items: center;
					color: #303030;
					text-decoration: none;
					font-size: 14px;
					line-height: 1;
					white-space: nowrap;
					font-family:"Gotham";
					font-weight: 400;
					transition: .3s all;

					@media screen and (max-width: 990px) {
						font-size: 12px;
						height: 40px;
					}

					&.has_img {

						position: relative;
						padding-left: 51px;

						@media screen and (max-width: 990px) {
							padding-left: 43px;
						}

						.img {

							position: absolute;
							top: 50%;
							left: 4px;
							transform: translate(0,-50%);

							img {
								min-width: 40px;
								width: 40px;
								height: 40px;
								object-fit: cover;
								display: block;
								border-radius: 50%;
								@media screen and (max-width: 990px) {
									min-width: 32px;
									width: 32px;
									height: 32px;
								}
							}

						}

					}

					&.link-all,
					&:hover {

						color: #F7EEE1;
						background: #303030;

					}

				}

			}

		}

		.no-result {

			p {

				margin: 0;
				text-align: center;

			}

		}

		.collection-main--product-grid {

			display: flex;
			flex-wrap: wrap;

			@media screen and (max-width: 990px) {
				margin: 0 -8px;
			}

			.product-card {

				width: calc(33.3% - 24px);
				background: #F7EEE1;
				margin: 0 12px 24px;
				border-radius: 16px;
				overflow: hidden;
				position: relative;

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

					width: calc(50% - 8px);
					margin: 0 4px 8px;
					position: static;
					display: flex;
					flex-direction: column;

				}

				.product-card--media {

					width: 100%;
					padding-top: 100%;
					overflow: hidden;
					position: relative;
					display: block;

					img {

						position: absolute;
						top:0;
						left:0;
						width: 100%;
						height: 100%;
						object-fit: cover;
						z-index: 0;

						&.secondary {
							z-index: 1;
							opacity: 0;
							transition: .3s all;
						}

					}

				}

				.product--card--body {

					padding: 12px 24px 50px;
					text-align: center;

					@media screen and (max-width: 990px) {
						position: relative;
						padding-bottom: 80px;
						flex: 1;
					}

					@media screen and (max-width: 768px) {
						padding: 14px 12px 80px 12px;
					}

					[data-oke-star-rating] {

						margin: 0 0 12px 0;
						font-family:"Gotham";

						@media screen and (max-width: 768px) {
							margin-bottom: 0;
						}

						.oke-sr-count {
							font-size: 13px;
							@media screen and (max-width: 768px) {
								font-size: 10px;
							}
						}

						.oke-sr-stars {
							@media screen and (max-width: 768px) {
								margin-right: 4px !important;
							}
						}

						.oke-stars {
							svg {
								height: 14px !important;
								@media screen and (max-width: 768px) {
									height: 12px !important;
								}
							}
						}

					}

					.product-card--flag {

						margin: 0 0 12px 0;
						display: inline-block;
						border-radius: 100px;
						padding: 4px 12px;
						text-align: center;
						color: #303030;
						font-size: 10px;
						text-transform: uppercase;
						font-family:"Gotham";
						font-weight: 400;

						@media screen and (max-width: 768px) {
							margin-bottom: 8px;
							font-size: 9px;
							padding: 4px 12px;
						}

					}

					.product-card--title {

						color: #181716;
						margin: 0 0 12px 0;
						text-transform: unset;
						text-decoration: none;
						font-family:"Gotham";
						font-size: 16px;
						line-height: 120%;

						@media screen and (max-width: 768px) {
							margin-bottom: 8px;
							font-size: 13px;
						}

						a {
							color: #181716;
							text-decoration: none;
						}

					}

					.product-card--short-desc {

						margin:0;
						font-size: 13px;
						line-height: 120%;
						font-family:"Gotham";
						font-weight: 100;
						color: #463F33;

						@media screen and (max-width: 768px) {
							font-size: 11px;
						}

					}

					.device-modal-trigger {

						display: none;

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

							display: flex;
							align-items: center;
							justify-content: center;
							gap: 4px;
							height: 42px;
							border: 1px solid #BE6248;
							border-radius: 8px;
							text-transform: uppercase;
							font-size: 14px;
							color: #BE6248;
							font-family:"Gotham";
							line-height: 1;
							position: absolute;
							bottom: 12px;
							left:12px;
							width: calc(100% - 24px);
							cursor: pointer;

						}

					}

				} /* product--card--body */

				&:hover {

					@media screen and (min-width: 990px) {

						.product-card--media {

							img.secondary {
								opacity: 1;
							}

						}

						.product-card-modal {

							opacity: 1;
							bottom: 0;

						}

					}

				}

			}

		} /* collection-main--product-grid */

		[data-load-trigger] {

			display: flex;
			align-items: center;
			justify-content: center;
			gap: 5px;
			opacity: .4;

			&.is-hidden {
				display: none;
			}

			svg {
				animation: spin 1s linear infinite;
  				transform-origin: center;
			}

		}

	} /* collection-main--template */

}

@keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}


.product-card--modal {

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

		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: rgba(0,0,0,0.6);
		z-index: 99999999999;
		pointer-events: none;
		opacity: 0;
		transition: .4s all;

		&.active {

			opacity: 1;
			pointer-events: auto;

			.product-card-modal {

				opacity: 1;
				bottom: 0;

			}

		}

	}

}

.product-card-modal {

	position: absolute;
	z-index: 9;
	bottom: -300px;
	left: 0;
	width: 100%;
	opacity: 0;
	transition: .4s all;
	background: #F7EEE1;
	padding: 16px 12px;
	color: #2a2927;

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

		position: fixed;
		bottom: -200px;
		opacity: 1;
		z-index: 999999999999;
		background: #FBFAF9;
		border-radius: 20px 20px 0 0;
		padding: 30px;

	}

  	&[data-card-unavailable] {

  		.product-card-modal__group,
  		.product-card-modal__purchase-types {

  			pointer-events: none;
  			opacity: .4;

  		}

  	}
}

.product-card-modal__close {
  position: absolute;
  top: 10px;
  right: 10px;
  border: 0;
  background: transparent;
  font-size: 28px;
  line-height: 1;
  cursor: pointer;
  color: #2a2927;
  display: none;
  @media screen and (max-width: 990px) {
  	display: block;
  }
}

.product-card-modal__label {
  margin: 0 0 12px;
  font-size: 12px;
  line-height: 1;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0;
  color: #303030;
}

.product-card-modal__size-options {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}

.product-card-modal__size-option {
  position: relative;
}

.product-card-modal__size-option label {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 4px;
  border: 1px solid #CDCDCD;
  border-radius: 12px;
  background: transparent;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
  text-align: center;
}

.product-card-modal__size-option input:checked + label {
  border-color: #d46f4e;
  background: #edd8d1;
}

.product-card-modal__size-badge {
  position: absolute;
  top: -8px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
  padding: 6px 6px 4px;
  border-radius: 999px;
  background: #e2aa58;
  color: #1b1b1a;
  font-size: 8px;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
  &[data-value="🔥-best-value"] {
  	background: linear-gradient(90deg, #FB9476 0%, #F7775C 35%, #F04E38 100%);
  	color: #F7EEE1;
  }
}

.product-card-modal__purchase-types {
  margin-top: 16px;
}

.product-card-modal__purchase-card {
  border: 2px solid #c96d4f;
  background: #f7f2ee;
  border-radius: 12px;
}

.product-card-modal__purchase-card + .product-card-modal__purchase-card {
  margin-top: 10px;
  border-color: #d7d0c7;
}

.product-card-modal__purchase-card.is-active {
  background: #edd8d1;
}

.product-card-modal__purchase-head {
  position: relative;
}

.product-card-modal__purchase-label {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  padding: 18px 16px;
  cursor: pointer;
  text-decoration: none;
  color: inherit;
  align-items: flex-start;
}

.product-card-modal__purchase-label[data-value="try-once"] .product-card-modal__purchase-left {
	align-items: center;
}

.product-card-modal__purchase-label[data-value="try-once"] .product-card-modal__radio {
	border-color:#CDCDCD;
}

.product-card-modal__purchase-card.is-active .product-card-modal__purchase-label[data-value="try-once"] .product-card-modal__radio {
	border-color: #c96d4f;
}

.product-card-modal__purchase-left {
  display: flex;
  gap: 12px;
  align-items: flex-start;
}

.product-card-modal__radio {
  width: 22px;
  height: 22px;
  border: 2px solid #c96d4f;
  border-radius: 50%;
  flex: 0 0 22px;
  margin-top: 0;
  position: relative;
}

.product-card-modal__purchase-card.is-active .product-card-modal__radio::after {
  content: "";
  position: absolute;
  inset: 4px;
  border-radius: 50%;
  background: #c96d4f;
}

.product-card-modal__purchase-title {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
}

.product-card-modal__save-pill {
  display: inline-flex;
  align-items: center;
  padding: 2px 6px;
  border-radius: 999px;
  background: #e68668;
  color: #fff;
  font-size: 12px;
  line-height: 1;
  font-weight: 700;
}

.product-card-modal__delivery-row {
  margin-top: 10px;
  font-size: 12px;
  line-height: 1.2;
}

.product-card-modal__delivery-row select {
  border: 0;
  border-bottom: 1px solid #c96d4f;
  background: transparent;
  font: inherit;
  color: inherit;
  padding-right: 18px;
}

.product-card-modal__purchase-price {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: nowrap;
  justify-content: flex-end;
  text-align: right;
  letter-spacing: -1px;
}

.product-card-modal__purchase-price del {
  opacity: 0.45;
  font-size: 12px;
  font-weight: 500;
}

.product-card-modal__purchase-price strong {
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
}

.product-card-modal__purchase-body {
  padding: 0 16px 18px 52px;
}

.product-card-modal__purchase-body ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.product-card-modal__purchase-body li {
  position: relative;
  margin-top: 3px;
  padding-left: 18px;
  font-size: 12px;
  line-height: 1.2;
}

.product-card-modal__purchase-body li::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 0;
  color: #c96d4f;
  font-weight: 700;
}

.product-card-modal__purchase-card[data-purchase-card="onetime"] .product-card-modal__purchase-label {
  align-items: center;
}

.product-card-modal__purchase-card[data-purchase-card="onetime"]:not(.is-active) {
  background: #f7f2ee;
}

.product-card-modal__purchase-card[data-purchase-card="onetime"]:not(.is-active) .product-card-modal__purchase-title,
.product-card-modal__purchase-card[data-purchase-card="onetime"]:not(.is-active) .product-card-modal__purchase-price {
  opacity: 0.45;
}

.product-card-modal__submit,
.product-card-modal__oos {
  width: 100%;
  margin-top: 16px;
  border: 0;
  border-radius: 10px;
  background: #c96d4f;
  color: #fff6ef;
  font-size: 14px;
  font-weight: 700;
  padding: 14px;
  letter-spacing: 0.04em;
  cursor: pointer;
}

.product-card-modal__submit:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.product-card-modal__oos {
	display: block;
	text-align: center;
	text-transform: uppercase;
	text-decoration: none;
}