/** Shopify CDN: Minification failed

Line 2007:7 Cannot use type selector "--active" directly after nesting selector "&"

**/
/* SHOPIFY_STYLESHEETS_VERSION: 1.0 */


/* CSS from section stylesheet tags */
/* START_SECTION:about (INDEX:1) */
.about {
    padding-top: var(--padding-top);
  	padding-bottom: var(--padding-bottom);
	.about__content{
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		align-items: center;
		gap:50px;
		@media (min-width: 1024px) {
			flex-direction: row;
			gap: initial;
		}
		.content__text{
			
			@media (min-width: 1024px) {
				width: 50%;
				max-width: 360px;
			}
			p{
				margin:1rem 0;
				font-size: 12px;
			}
			.text__cta{
				margin-top: 2rem;
			}

		}
		.content__image{
			position: relative;
			display: flex;
			justify-content: flex-end;
			padding: 0 0 25px 25px;
			@media (min-width: 1024px) {
				width:50%;
				min-height: 290px;
				padding: 0 0 35px 35px;
			}
			&:before{
				position:absolute;
				bottom:0;
				left:0;
				content: '';
				width: 225px;
				height: 240px;
				background: var(--color-primary);
				@media (min-width: 1024px) {
					height: 240px;
				}
			}
			.image__frame{
				position: relative;
				width:100%;
				max-width: 454px;
				background: white;
				border: 15px solid white;
				img{
					aspect-ratio: 424/381;
					object-fit: cover;
				}
			}
 
		}
	}
}


  

  /* ─── Mobile ─── */
  @media (max-width: 768px) {
   
  }
/* END_SECTION:about */

/* START_SECTION:cart (INDEX:4) */
.cart {
	padding: 3rem 0 5rem;

	.cart__title {
		margin-bottom: 2rem;
		h1 {
			font-size: clamp(1.5rem, 3vw, 2rem);
		}
	}

	.cart__empty {
		color: rgba(0,0,0,0.5);
	}

	.cart__table {
		border-top: 1px solid rgba(0,0,0,0.1);

		.table__row {
			display: grid;
			grid-template-columns: 1fr 120px 120px 120px 40px;
			align-items: center;
			gap: 1rem;
			padding: 1.25rem 0;
			border-bottom: 1px solid rgba(0,0,0,0.08);

			&.table__row--header {
				padding: 0.5rem 0;
				font-size: 0.75rem;
				font-weight: 600;
				text-transform: uppercase;
				letter-spacing: 0.05em;
				color: rgba(0,0,0,0.45);
				border-bottom: 1px solid rgba(0,0,0,0.15);
			}

			.row__cell {
				&.row__cell--center { text-align: center; }
				&.row__cell--right  { text-align: right; }
				&.row__cell--remove { text-align: right; }

				&.row__cell--product {
					display: flex;
					align-items: center;
					gap: 1rem;
				}
			}
		}

		.table__image {
			flex-shrink: 0;
			width: 72px;
			height: 72px;
			overflow: hidden;
			img {
				width: 100%;
				height: 100%;
				object-fit: cover;
				display: block;
			}
		}

		.table__info {
			.info__title {
				font-size: 0.9375rem;
				font-weight: 600;
				text-decoration: none;
				color: inherit;
				&:hover { text-decoration: underline; }
			}
			.info__variant,
			.info__property {
				font-size: 0.8125rem;
				color: rgba(0,0,0,0.5);
				margin-top: 0.2rem;
			}
		}

		.table__quantity {
			.quantity__input {
				width: 60px;
				text-align: center;
				border: 1px solid rgba(0,0,0,0.2);
				padding: 0.4rem 0.5rem;
				font-size: 0.9375rem;
				font-family: inherit;
			}
		}

		.table__price,
		.table__line-price {
			font-size: 0.9375rem;
		}

		.table__remove a {
			display: inline-flex;
			color: rgba(0,0,0,0.3);
			transition: color 0.15s;
			&:hover { color: #000; }
		}
	}

	.cart__total {
		display: flex;
		justify-content: flex-end;
		align-items: center;
		gap: 1rem;
		padding: 1.5rem 0;
		border-bottom: 1px solid rgba(0,0,0,0.1);

		.total__label {
			font-size: 0.9375rem;
			font-weight: 600;
			text-transform: uppercase;
			letter-spacing: 0.05em;
		}
		.total__value {
			font-size: 1.25rem;
			font-weight: 700;
		}
	}

	.cart__submit {
		display: flex;
		justify-content: flex-end;
		align-items: center;
		gap: 1.5rem;
		margin-top: 1.5rem;

		.submit__continue {
			font-size: 0.875rem;
			color: rgba(0,0,0,0.5);
			text-decoration: underline;
			&:hover { color: #000; }
		}
		.submit__btn {
			cursor: pointer;
			border: none;
			font-family: inherit;
			font-size: 0.9375rem;
		}
	}
}
/* END_SECTION:cart */

/* START_SECTION:collection (INDEX:5) */
.collection-products {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(500px, 1fr));
  }
/* END_SECTION:collection */

/* START_SECTION:collections (INDEX:6) */
.collections {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(min(var(--collection-card-size), 100%), 1fr));
    gap: var(--grid-gap);
  }
  .collections--compact {
    --collection-card-size: 160px;
  }
  .collections--full {
    --collection-card-size: 280px;
  }
  .collection-card {
    display: flex;
    flex-direction: column;
    width: 100%;
  }
/* END_SECTION:collections */

/* START_SECTION:competitions-hero (INDEX:7) */
.competitions-hero {
    position: relative;
    height: 100svh;
    min-height: 989px;
    max-height: 800px;
    margin-top: -96px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    color: #fff;
  }

  .competitions-hero__bg {
    position: absolute;
    inset: 0;
    z-index: 0;

    img,
    video {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: top center;
    }

    .competitions-hero__bg-poster {
      z-index: 1;
      transition: opacity 0.5s;
    }

    .competitions-hero__bg-poster.is-hidden {
      opacity: 0;
    }

    &::after {
      content: '';
      position: absolute;
      inset: 0;
      background: rgba(0, 0, 0, var(--overlay-opacity));
    }
  }

  .competitions-hero__content {
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    z-index: 1;
    text-align: center;

    .content__eyebrow {
		margin-bottom:2rem;
		font-size: 20px;
		font-weight:bold;
		text-transform: uppercase;
		letter-spacing: 2px;
    }

    .content__title {
      max-width: 820px;
      font-size: clamp(2.25rem, 5vw, 3.25rem);
      font-weight: 600;
      line-height: 1.1;
      text-wrap: balance;
    }

    .content__subtitle {
      margin-top: 1rem;
      font-size: 15px;
      max-width: 420px;
      line-height: 1.2;
    }

    .content__cta {
      margin-top: 4rem;
    }
	.content__reassurance {
		margin-top: 2rem;
		font-size: 13px;
		font-weight: 600;;
	}
  }
/* END_SECTION:competitions-hero */

/* START_SECTION:concept (INDEX:8) */
.concept{
		&.concept--hero{
			.concept__hero {
				margin-top: -84px;
				@media (min-width: 1024px) {
					margin-top: -84px;
				}
			}
		}
		.concept__hero {
			position: relative;
			height: 400px;
			min-height: 350px;
			overflow: hidden;
			margin-top:5rem;
			@media (min-width: 1024px) {
				height: 525px;
				margin-top:initial;
			}
			img,
			.placeholder-svg {
				position: absolute;
				inset: 0;
				width: 100%;
				height: 100%;
				object-fit: cover;
			}

			.hero__title {
				position: absolute;
				top: 0;
				left: 0;
				display: flex;
				align-items: center;
				justify-content: center;
				width: 100%;
				height:100%;
				background: rgba(0, 0, 0, 0.2);
				color: #fff;
				text-align: center;
				text-shadow: 0 2px 20px rgba(0, 0, 0, 0.3);
				white-space: nowrap;
				z-index: 1;
			}
		}
		.concept__content {
			position: relative;
			display: flex;
			justify-content: space-between;
			padding: 28px;
			margin-top: -100px;
			z-index: 1;
			@media (min-width: 768px) {
				padding: 50px 80px;
			}
			.content__images{
				display:none;
				@media (min-width: 768px) {
					display: block;
					position: relative;
					width: calc(50% - 70px) ;
				}
				.images__item{
					position: absolute;
					img, svg{
						width: 215px;
						height: 253px;
						border: 15px solid white;
						object-fit: cover;
					}
					&.images__item--1{
						top:0;
						left: 0;
						transform: rotate(-12deg);
					}
					&.images__item--2{
						bottom:0;
						right: 0;
						transform: rotate(7deg);
					}
				}

			}
			.content__text{
				width: 100%;
				font-size:12px;
				@media (min-width: 768px) {
					width: 50%;
					padding-right: 30px;
				}
				.text__intro{

				}
				.text__features{
					list-style: none;
					padding: 0;
					margin-top: 1rem;
					.features__item{
						display: flex;
						gap: 1rem;
						margin-top: 0.75rem;
						.item__icon{
							display: flex;
							align-items: center;
							justify-content: center;
							width: 32px;
							height: 32px;
							img{
								width:100%;
							}
						}
						.item__body{
							flex:1;
							.body__title{
								font-size: 12px;
								font-weight: bold;
							}
							.body__text{
								font-size: 12px;
							}
						}
					}
				}
				.text__cta{
					margin-top:2rem;
				}
			}
		}
	}
/* END_SECTION:concept */

/* START_SECTION:contact-form (INDEX:9) */
.contact-form {
  padding: var(--padding-top, 60px) 0 var(--padding-bottom, 80px);

  .contact-form__title {
    font-size: clamp(1.5rem, 3vw, 2rem);
    font-weight: 700;
    margin-bottom: 0.5rem;
  }

  .contact-form__intro {
    font-size: 0.9375rem;
    color: rgba(0,0,0,0.6);
    margin-bottom: 2rem;
  }

  .form__success {
    padding: 1rem 1.25rem;
    background: #f0faf4;
    border-left: 3px solid #2a9d5c;
    color: #1a6b3c;
    font-size: 0.9375rem;
    margin-bottom: 1.5rem;
  }

  .form__error {
    padding: 1rem 1.25rem;
    background: #fff5f5;
    border-left: 3px solid #e53e3e;
    color: #c53030;
    font-size: 0.9375rem;
    margin-bottom: 1.5rem;
  }

  .form__fields {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.25rem;

    @media (max-width: 640px) {
      grid-template-columns: 1fr;
    }

    .form__field {
      display: flex;
      flex-direction: column;
      gap: 0.4rem;

      &.form__field--full {
        grid-column: 1 / -1;
      }

      label {
        font-size: 0.8125rem;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: 0.04em;

        span {
          color: #e53e3e;
        }
      }

      input,
      textarea {
        font-family: inherit;
        font-size: 0.9375rem;
        border: 1px solid rgba(0,0,0,0.2);
        padding: 0.75rem 1rem;
        width: 100%;
        transition: border-color 0.15s;
        background: #fff;
        outline: none;

        &:focus {
          border-color: var(--color-primary);
        }

        &::placeholder {
          color: rgba(0,0,0,0.3);
        }
      }

      textarea {
        resize: vertical;
        min-height: 140px;
      }
    }
  }

  .form__submit {
    margin-top: 1.5rem;

    .cta {
      cursor: pointer;
      border: none;
      font-family: inherit;
      font-size: 0.9375rem;
    }
  }
}
/* END_SECTION:contact-form */

/* START_SECTION:countdown (INDEX:10) */
.countdown {
	text-align: center;
	padding: 5rem 0;
	.countdown__content{
		max-width: 620px;
		margin:auto;
		.content__title{
			font-size: clamp(2rem, 4.5vw, 40px);
			font-weight: 400;
			line-height: 1.15;
			text-wrap: balance;
		}
		.content__subtitle {
			margin-top: 2rem;
			font-size: clamp(0.875rem, 1.25vw, 15px);
		}
		.content__label {
			margin-top: 3.5rem;
			font-size: 13px;
			font-weight: 600;
		}
		.content__timer {
			display: flex;
			justify-content: center;
			gap: 1em;
			margin: 0.5rem 0 3.5rem 0;
			.timer__unit {
				display: flex;
				flex-direction: column;
				align-items: center;
				justify-content: center;
				gap: 0.5rem;
				width: 60px;
				height:74px;
				background-color: #F3F3F3;
				.unit__label {
					font-size: 12px;
					text-transform: uppercase;
				}
				.unit__value {
					font-size: 30px;
					font-variant-numeric: tabular-nums;
				}
			}
		}
	}
}
/* END_SECTION:countdown */

/* START_SECTION:custom-section (INDEX:11) */
.custom-section {
    position: relative;
    overflow: hidden;
    width: 100%;
  }
  .custom-section__background {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: -1;
    overflow: hidden;
  }
  .custom-section__background img {
    position: absolute;
    width: 100%;
    height: auto;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  .custom-section__content {
    display: grid;
    grid-template-columns: var(--content-grid);
  }
  .custom-section__content > * {
    grid-column: 2;
  }
/* END_SECTION:custom-section */

/* START_SECTION:draw-partner (INDEX:12) */
.draw-partner{
		padding-top: var(--padding-top);
		padding-bottom: var(--padding-bottom);
		background: var(--color-grey-light);
		.draw-partner__title{
			text-align:center;
		}
		.draw-partner__logo{
			width: 100%;
			max-width: var(--logo-width);
			margin:auto;
		}

		.draw-partner__content{
			position: relative;
			display: flex;
			flex-direction: column;
			justify-content: flex-end;
			align-items: center;
			margin-top:2rem;
			padding-bottom:50px;
			background-color: var(--color-primary);
			@media (min-width: 1024px) {
				flex-direction: row;
				margin-top: 0;
				padding-bottom:0;
				background-color: transparent;
			}
			.content__text{
				width: 100%;
				padding:50px 25px;
				background-color: var(--color-primary);
				@media (min-width: 1024px) {
					position: absolute;
					padding:60px 70px;
				}
				.text__inner{
					max-width:350px;
					color: white;		
					font-size:15px;	
					margin:auto;
					text-align: center;
					@media (min-width: 1024px) {
						margin:initial;
						text-align: left;
					}
					a{
						color: white;
					}
				}
			}
			.content__certificate{
				position: relative;
				width:100%;
				max-width:369px;
				padding: 0 25px;
				@media (min-width: 1024px) {
					margin-right:70px;
					padding: 0;
				}
				.certificate__text{
					position: absolute;
					top: calc(100% + 3px);
					left: 25px;
					font-size:15px;
					font-style: italic;
					color: white;
					@media (min-width: 1024px) {
						left: 0;
						color: var(--color-text);
					}
				}
			}

		}
	}
/* END_SECTION:draw-partner */

/* START_SECTION:edition (INDEX:13) */
.edition{
		display: flex;
		flex-direction: column-reverse;
		position: relative;
		
		background-color: var(--color-grey-light);
		@media (min-width: 1024px) {
			padding: 5rem 0;
		}
		.edition__image-left{
			position: absolute;
			top:0;
			left:0;
			width:100%;
			height: 100%;
			object-fit: cover;
			@media (min-width: 1024px) {
				top:5rem;
				width:50%;
				height: calc(100% - 10rem);
			}
		}
		.edition__content{
			position: relative;
			display:flex;
			justify-content: flex-end;
			padding: 3.5rem 0;
			@media (min-width: 1024px) {
				padding: 5rem 0;
			}
			.content__text{
				position: relative;
				max-width: 590px;
    			padding: 28px;
				background: white;
				@media (min-width: 1024px) {
					padding: 40px 240px 40px 88px;
				}
				.text__eyebrow{
					font-size:18px;
					text-transform: uppercase;
				}
				.text__title{
					margin-top: 2rem;
					font-size: 15px;
					font-weight: bold;
					text-transform: uppercase;
				}
				.text__specs{
					margin-top:2rem;
					.specs__item{
						display:flex;
						margin-top:0.25rem;
						font-size: 12px;
						.item__label{
							width: 85px;
							font-weight: 600;
						}
						.item__value{
							flex: 1;
						}	
					}
				}
				.text__cta{
					margin-top: 2rem;
				}
				.text__image{
					display:none;
					@media (min-width: 1024px) {
						display:block;
						position: absolute;
						top:0;
						right:0;
						width:165px;
						height:100%;
						object-fit: cover;
					}
					

				}
			}
		}
	}
/* END_SECTION:edition */

/* START_SECTION:faq (INDEX:14) */
.faq {
	padding-top: var(--padding-top);
  	padding-bottom: var(--padding-bottom);
    background: var(--faq-bg, #fff);
	.faq__inner {
		@media (min-width: 768px) {
			display: flex;
			gap: 2rem;
		}
		.inner__image {
			display: none;
			@media (min-width: 768px) {
				display: block;
				width: 50%;
			}
			@media (min-width: 1024px) {
				width: 422px;
			}
			img, .placeholder-svg {
				position: sticky;
				top:100px;
				display: block;
				width: 100%;
				object-fit: cover;
			}
		}
		.inner__content{
			flex:1;
			padding:40px 0;
			.content__list {
				display: flex;
				flex-direction: column;
				.list__item {
					border-bottom: 1px solid #707070;
					@media (min-width: 768px) {
						padding:0 1rem;
					}
					@media (min-width: 1024px) {
						padding:0 1.5rem;
					}
					.item__question {
						display: flex;
						align-items: center;
						justify-content: space-between;
						gap: 1rem;
						padding: 1.25rem 0;
						cursor: pointer;
						font-size: 15px;
						font-weight: 700;
						text-transform: uppercase;
						user-select: none;
						.question__chevron {
							flex-shrink: 0;
							display: flex;
							transition: transform 0.25s ease;
						}
					}
					.item__answer {
						display: none;
						padding-bottom: 1.5rem;
						font-size:12px;
						& > * {
							margin: 0;
						}
					}
					&.list__item--open {
						.item__question .question__chevron {
							transform: rotate(180deg);
						}
						.item__answer {
							display: block;
						}
					}
				}
			}
			.content__cta {
				display: flex;
				justify-content: flex-end;
				margin-top:2rem;
			}
		}
	}
}
/* END_SECTION:faq */

/* START_SECTION:footer (INDEX:15) */
/* ── Main footer ── */
  .footer__main {
    background: var(--color-primary);
    color: #fff;
    padding: 3rem 0 2.5rem;
  }

  .footer__grid {
    display: grid;
    grid-template-columns: 1.5fr 1fr 1.5fr 1fr 1.75fr;
    gap: 2rem;
    align-items: start;
  }

  /* Brand */
  .footer__brand {
    .brand__name {
      font-size: 1.0625rem;
      font-weight: 700;
      margin-bottom: 0.75rem;
    }

    .brand__address {
      font-size: 0.8125rem;
      line-height: 1.7;

      strong {
        font-weight: 700;
      }
    }
  }

  /* Nav columns */
  .footer__nav {
    .footer__nav-title {
      font-size: 0.9375rem;
      font-weight: 600;
      margin-bottom: 1rem;
    }

    ul {
      list-style: none;
      padding: 0;
      margin: 0;
      display: flex;
      flex-direction: column;
      gap: 0.5rem;
    }

    a {
      font-size: 0.8125rem;
      color: white;
      text-decoration: none;
      transition: color 0.15s;

      &:hover {
        color: #fff;
      }
    }
  }

  /* Socials + disclaimer */
  .footer__aside {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    align-items: flex-end;
  }

  .footer__socials {
    display: flex;
    gap: 1rem;

    a {
      color: white;
      text-decoration: none;
      transition: color 0.15s;
      display: flex;

      &:hover {
        color: #fff;
      }

      svg {
        width: 1.25rem;
        height: 1.25rem;
      }
    }
  }

  .footer__disclaimer {
    font-size: 0.6875rem;
    line-height: 1.65;
    color:  white;
  }

  /* ── Bottom bar ── */
  .footer__bottom {
    background: var(--color-grey-light);
    padding: 0.875rem 0;
  }

  .footer__bottom-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }

  .footer__copyright {
    font-size: 0.8125rem;
    color: rgba(0, 0, 0, 0.65);
  }

  .footer__payment {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    font-size: 0.8125rem;
    color: rgba(0, 0, 0, 0.65);

    svg {
      height: 1.5rem;
      width: auto;
    }
  }

  /* ── Mobile ── */
  @media (max-width: 768px) {
    .footer__grid {
      grid-template-columns: 1fr 1fr;
      gap: 2rem 1.5rem;
    }

    .footer__brand {
      grid-column: 1 / -1;
    }

    .footer__aside {
      grid-column: 1 / -1;
      align-items: flex-start;
    }

    .footer__disclaimer {
      text-align: left;
    }

    .footer__bottom-inner {
      flex-direction: column;
      gap: 0.75rem;
      align-items: flex-start;
    }
  }
/* END_SECTION:footer */

/* START_SECTION:four-steps (INDEX:16) */
.four-steps {
	padding-top: var(--padding-top);
  	padding-bottom: var(--padding-bottom);
	.four-steps__title{
		text-align: center;
	}
	.four-steps__list{
		display: flex;
		flex-direction: column;
		gap: 30px;
		margin-top:44px;
		@media (min-width: 768px) {
			flex-direction: row;
		}
		.list__item{
			position: relative;
			padding: 11px 0 0 52px;
			flex: 1;
			@media (min-width: 768px) {
				padding: initial;
			}
			.item__check{
				position:absolute;
				top:0;
				left:0;
				display:flex;
				align-items: center;
				justify-content: center;
				width: 40px;
				height: 40px;
				margin-bottom: 35px;
				background-color: var(--color-primary);
				border-radius: 7px;
				@media (min-width: 768px) {
					position: relative;
					top: auto;
					left: auto;
				}
			}
			.item__title{
				margin-bottom: 20px;
				font-size: 15px;
				font-weight:bold;
				text-transform: uppercase;
			}
			.item__text{
				font-size:12px
			}
		}
	}
}
/* END_SECTION:four-steps */

/* START_SECTION:header (INDEX:17) */
/* ─── Sticky by default ─── */
  .shopify-section:has(.site-header) {
    position: sticky;
    top: 0;
    z-index: 100;
  }


  /* ─── Header shell ─── */
  .site-header {
    margin-top: 1.5rem;
	.site-header__content{
		display: flex;
   	 	align-items: center;
		justify-content: space-between;
		gap: 2rem;
		padding: 0 1rem;
		height: 60px;
		background: #fff;
		border-radius: 100px;
		box-shadow: 0 0 10px rgba(0, 0, 0, 0.10);
		@media (min-width: 1024px) {
			padding: 0 13px 0 2rem;
		}
		.content__logo{
			font-size: 20px;
			font-weight: 700;
			white-space: nowrap;
			flex-shrink: 0;
			a{
				text-decoration: none;
				color: inherit;
			}
		}
		.content__btn-menu{
			background: none;
			border: none;
			cursor: pointer;
			padding: 0.25rem;
			display: flex;
			align-items: center;
			justify-content: center;
			color: inherit;
			.btn-menu__icon--close {
				display: none;
			}
			&[aria-expanded="true"] {
				.btn-menu__icon--burger { display: none; }
				.btn-menu__icon--close  { display: block; }
			}
			@media (min-width: 1024px) {
				display: none;
			}
		}
		.content__menu{
			position: absolute;
			top: calc(100% + 1rem);
			right: 20px;
			opacity: 0;
			visibility: hidden;
			transition: 0.25s;
			&.active {
				display: flex;
				flex-direction: column;
				background: white;
				padding: 1rem 2rem 1.5rem;
				gap: 1rem;
				box-shadow: 0 0 10px rgba(0, 0, 0, 0.10);
				border-radius:20px;
				opacity: 1;
				visibility: visible;
			}
			@media (min-width: 1024px) {
				position: relative;
				top: auto;
				right: auto;
				display:flex;
				flex: 1;
				position: static;
				flex-direction: row;
				padding: 0;
				background: none;
				border-radius: 0;
				opacity: 1;
				visibility: visible;
			}
			.menu__nav {
				display: flex;
				flex-direction: column;
				align-items: center;
				gap: 1.5rem;
				
				@media (min-width: 1024px) {
					flex-direction: row;
					margin-left:30px;
				}
				.nav__link {
					color: var(--color-text);
					text-decoration: none;
					transition: all 0.25s;
					&:hover, &.nav__link--active {
						text-shadow: 0.25px 0 0 currentColor, -0.25px 0 0 currentColor;
					}
				}
			}
			.menu__actions {
				display: flex;
				flex-direction: column;
				align-items: center;
				gap: 0.75rem;
				flex-shrink: 0;
				margin-left: auto;
				@media (min-width: 1024px) {
					flex-direction: row;
				}
				.actions__cart{
					position: relative;
					display: inline-flex;
					align-items: center;
					justify-content: center;
					width: 3rem;
					height: 3rem;
					border-radius: 100px;
					color: inherit;
					text-decoration: none;
					transition: background 0.15s;
					flex-shrink: 0;
					&:hover {
						background: rgba(0, 0, 0, 0.06);
					}

					svg {
						width: 1.375rem;
						height: 1.375rem;
					}

					.cart__count {
						position: absolute;
						top: 0.25rem;
						right: 0.25rem;
						min-width: 1.125rem;
						height: 1.125rem;
						padding: 0 0.25rem;
						background: #0d0d0d;
						color: #fff;
						border-radius: 100px;
						font-size: 0.625rem;
						font-weight: 700;
						line-height: 1.125rem;
						text-align: center;
					}
				}
				.actions__login{
					display: inline-flex;
					align-items: center;
					padding: 0.75rem 1.75rem;
					background: #0d0d0d;
					color: #fff;
					text-decoration: none;
					border-radius: 100px;
					font-size: 0.9375rem;
					font-weight: 500;
					white-space: nowrap;
					transition: background 0.15s;
				}
				.actions__lang {
					display: flex;
					flex-direction: column;
					align-items: center;
					line-height: 1.2;
					.lang__btn {
						background: none;
						border: none;
						cursor: pointer;
						font: inherit;
						font-size: 0.75rem;
						padding: 0;
						color: var(--color-foreground);
						opacity: 0.45;
						transition: opacity 0.15s;
						.lang__btn--active {
							opacity: 1;
							font-weight: 600;
						}
					}
				}
			}	
		}
		
	}
}



  /* ─── Navigation ─── */
/* END_SECTION:header */

/* START_SECTION:hero (INDEX:18) */
.hero {
    position: relative;
    height: 100svh;
    min-height: 600px;
	max-height:800px;
	margin-top:-96px;;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    color: #fff;
  }

  /* ─── Background image + overlay ─── */
  .hero__bg {
    position: absolute;
    inset: 0;
    z-index: 0;
  }

  .hero__bg img,
  .hero__bg video {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
  }

  .hero__bg-poster {
    z-index: 1;
    transition: opacity 0.5s;
  }

  .hero__bg-poster.is-hidden {
    opacity: 0;
  }

  .hero__bg::after {
    content: '';
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, var(--overlay-opacity));
  }

  /* ─── Content ─── */
  .hero__content {
    position: absolute;
	top: 0;
	left:0;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width:100%;
	height:100%;
	background: rgba(0, 0, 0, 0.2);
    z-index: 1;
    text-align: center;
	.content__title{
		max-width:810px;
		font-size: clamp(2.25rem, 5vw, 3.25rem);
		font-weight: 600;
		line-height: 1.1; 
		text-wrap: balance;
	}
	.content__subtitle {
		margin-top:1rem;
		font-size: 15px;
		max-width: 550px;
		line-height: 1.2;
	}
	.content__cta{
		margin-top:4rem;
	}
  }
  /* ─── Scroll indicator ─── */
  .hero__scroll {
    position: absolute;
    bottom: 2rem;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    cursor: pointer;
    animation: hero-scroll-bounce 2s ease-in-out infinite;
	.scroll__text {
		font-size:12px;


	}
  }

  @keyframes hero-scroll-bounce {
    0%, 100% { transform: translateX(-50%) translateY(0); }
    50%       { transform: translateX(-50%) translateY(6px); }
  }
/* END_SECTION:hero */

/* START_SECTION:image-banner (INDEX:19) */
.image-banner{
	padding-top: var(--padding-top);
  	padding-bottom: var(--padding-bottom);
	img, .placeholder-svg {
    display: block;
    width: 100%;
  }
}
/* END_SECTION:image-banner */

/* START_SECTION:image-with-text (INDEX:20) */
.image-with-text{
		display: flex;
		flex-direction: column-reverse;
		position: relative;
		margin-top:80px;
		background-color: var(--color-grey-light);
		@media (min-width: 1024px) {
			padding: 5rem 0;
			margin-top:initial;
		}
		.image-with-text__image-left{
			position: absolute;
			top:0;
			left:0;
			width:100%;
			height: 100%;
			object-fit: cover;
			@media (min-width: 1024px) {
				top:5rem;
				width:50%;
				height: calc(100% - 10rem);
			}
		}
		.wrap{
			padding-top: 5rem;
			padding-bottom: 5rem;
		}
		.image-with-text__content{
			position: relative;
			display:flex;
			justify-content: flex-end;
			.content__text{
				position: relative;
				max-width: 590px;
				padding: 28px;
				background: white;
				@media (min-width: 1024px) {
					padding: 40px 88px;
				}
				
				.text__eyebrow{
					font-size:18px;
					text-transform: uppercase;
				}
				.text__title{
					margin-top: 2rem;
					font-size: 15px;
					font-weight: bold;
					text-transform: uppercase;
				}
				.text__text{
					margin-top: 1.25rem;
					font-size:12px;
				}
				.text__specs{
					margin-top:2rem;
					.specs__item{
						display:flex;
						margin-top:0.25rem;
						font-size: 12px;
						.item__label{
							width: 85px;
							font-weight: 600;
						}
						.item__value{
							flex: 1;
						}	
					}
				}
				.text__cta{
					margin-top: 2rem;
				}
				.text__image{
					position: absolute;
					top:0;
					right:0;
					width:165px;
					height:100%;
					object-fit: cover;

				}
			}
		}
	}
/* END_SECTION:image-with-text */

/* START_SECTION:instagram (INDEX:21) */
.instagram {
    margin-top: 60px;
    text-align: center;

    .instagram__description {
      max-width: 450px;
      margin: auto;
      font-size: 12px;
    }
	.instagram__app{
		 margin-top: 20px;
	}
    .instagram__grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      margin-top: 20px;
		@media (min-width: 768px) {
			grid-template-columns: repeat(5, 1fr);
		}
      .grid__item {
        display: block;
        aspect-ratio: 1;
        overflow: hidden;
		&:nth-child(4), &:nth-child(5){
			display: none;
			@media (min-width: 768px) {
				display: block;
			}
		} 
		
        img, svg {
          width: 100%;
          height: 100%;
          object-fit: cover;
          transition: transform 0.4s ease;
        }

        &:hover img {
          transform: scale(1.05);
        }
      }
    }
  }
/* END_SECTION:instagram */

/* START_SECTION:list-competitions (INDEX:22) */
.list-competitions {
	z-index:1;
	position:relative;
	margin-top: -135px;
  	padding-bottom: var(--padding-bottom);
	.list-competitions__list {
		display: grid;
		grid-template-columns: repeat(1, 1fr);
		gap: 1rem;
		margin:0;
		padding: 0;
		list-style: none;
		@media (min-width: 768px) {
			grid-template-columns: repeat(2, 1fr);
		}
		@media (min-width: 1024px) {
			grid-template-columns: repeat(3, 1fr);
		}
		
		.list__item{
			display: flex;
			flex-direction: column;

			padding:10px 10px 20px 10px;
			background-color: white;
			box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
			text-align:center;
			.item__image{
				overflow: hidden;

				img{
					aspect-ratio: 3 / 2;
					transition: transform 0.3s;
					&:hover{
						transform: scale(1.05);
					}
				}
			}
			.item__title{
				margin-top:1rem;
				font-size:15px;
				font-weight: bold;
				text-transform: uppercase;
			}
			.item__subtitle{
				margin:0.25rem 0 0 0;
				font-size:12px;
			}
			.item__countdown{
				margin: 2rem 0 1.75rem 0;
				.countdown__label{
					font-size: 13px;
            		font-weight: 600;
				}
				.countdown__timer{
					display: flex;
					justify-content: center;
					gap: 0.75rem;
					margin: 0.5rem 0 0 0;
					.timer__unit {
						display: flex;
						flex-direction: column;
						align-items: center;
						justify-content: center;
						gap: 0.25rem;
						width: 40px;
						height: 50px;
						background-color: var(--color-grey-light);
						.unit__label {
							font-size: 7px;
							text-transform: uppercase;
						}
						.unit__value {
							font-size: 19px;
							font-variant-numeric: tabular-nums;
						}
					}
				}
				.countdown__note{
					margin-top:0.25rem;
					font-size:9px;
				}
			}
			.item__pricing{
				margin-top: auto;
				font-size: 15px;
				.pricing__price{
					font-weight:bold
				}
				.pricing__tickets{
					margin-top:0.25rem;
				}
				
			}
			.item__cta{
				margin-top:1rem;
			}
		}
	}

}
/* END_SECTION:list-competitions */

/* START_SECTION:notice (INDEX:23) */
.notice {
	padding-top: var(--padding-top);
  	padding-bottom: var(--padding-bottom);
	.notice__inner {
		text-align: center;
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 20px;
		padding:50px 25px;
		background-color: var(--color-primary);
		color:white;
		@media (min-width: 768px) {
			padding:50px;
		}
		.inner__title {
			max-width: 740px;
			margin: 0 auto;
		}

		.inner__text {
			max-width: 720px;
			margin: 0 auto;
			font-size:15px;
			p {
				margin: 0;
				a{
					color:white;
				}
			}
			h3{
				font-size:15px;
				text-transform: uppercase;
			}
		}
	}
}
/* END_SECTION:notice */

/* START_SECTION:page-title-hero (INDEX:24) */
.page-title-hero {
	display: flex;
    align-items: center;
    position: relative;
    min-height: 525px;
    margin-top: -84px;
    padding: 116px 0 60px;
	background-color: var(--color-grey-light);
	text-align: center;

	.page-title-hero__bg {
		position: absolute;
		inset: 0;  
		overflow: hidden;
		z-index: 0;

		img {
			width: 100%;
			height: 100%;
			object-fit: cover;
		}
	}

	.wrap {
		position: relative;
		z-index: 1;
	}

	.page-title-hero__title {
		margin: auto;
		max-width: 800px;
		color:white;
	}

	.page-title-hero__subtitle {
		margin: 10px auto 0 auto;
		max-width: 800px;
	}
}
/* END_SECTION:page-title-hero */

/* START_SECTION:page-title (INDEX:25) */
.page-title{
	min-height:350px;
	margin-top:-84px;
	padding:165px 0 60px 0;
	background-color: var(--color-grey-light);
	text-align:center;
	.page-title__title{
		margin: auto;
		max-width:800px;
	}
	.page-title__subtitle{
		margin: 10px auto 0 auto;
		max-width:800px;
	}
}
/* END_SECTION:page-title */

/* START_SECTION:page (INDEX:26) */
.page-content{
		padding: 4rem 0;
		font-size: 15px;
		h2{
			margin: 2rem 0 1rem 0;
			font-size: 15px;
			font-weight: bold;
			text-transform: uppercase;
			&:first-child{
				margin-top: 0;
			}
			strong{
				font-size:30px;
				font-weight: 400;
			}
		}
		h3{
			margin: 1rem 0;
			font-size: 15px;
			font-weight: normal;
			text-decoration: underline;
		}
		p{
			font-size: 15px;
		}
	}
/* END_SECTION:page */

/* START_SECTION:product-details (INDEX:28) */
.product-details {
    background: var(--details-bg, #fff);
    padding: 4rem 0;
  }

  .product-details__layout {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4rem;
    align-items: center;

    &.product-details__layout--reversed {
      .product-details__content { order: 2; }
      .product-details__image   { order: 1; }
    }
  }

  .product-details__title {
    font-size: 0.8125rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    margin-bottom: 1.5rem;
    color: #000;
  }

  .product-details__list {
    display: flex;
    flex-direction: column;
    gap: 0;
  }

  .details-list__row {
    display: grid;
    grid-template-columns: 160px 1fr;
    gap: 0.5rem;
    padding: 0.5rem 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
    font-size: 0.875rem;
    line-height: 1.5;

    &:first-of-type {
      border-top: 1px solid rgba(0, 0, 0, 0.06);
    }
  }

  .details-list__label {
    color: rgba(0, 0, 0, 0.5);
    flex-shrink: 0;

    &::after { content: ':'; }
  }

  .details-list__value {
    color: #000;
    font-weight: 400;
  }

  .product-details__image {
    img, svg {
      width: 100%;
      height: auto;
      display: block;
    }
  }

  @media (max-width: 768px) {
    .product-details__layout,
    .product-details__layout.product-details__layout--reversed {
      grid-template-columns: 1fr;

      .product-details__content { order: 1; }
      .product-details__image   { order: 2; }
    }
  }
/* END_SECTION:product-details */

/* START_SECTION:product (INDEX:29) */
.gallery-overlay {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 9999;
    background: rgba(0, 0, 0, 0.7);
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 3rem 1rem 1rem;
    gap: 1rem;
  }

  .gallery-overlay[aria-hidden="false"] {
    display: flex;
  }

  .gallery-overlay

  .gallery-swiper-main {
    width: 100%;
    flex: 1;
    min-height: 0;

    img {
      width: 100%;
      height: 100%;
      object-fit: contain;
    }
  }

  .gallery-swiper-thumbs {
    width: 100%;
    height: 80px;
    flex-shrink: 0;

    .swiper-slide {
      width: auto;
      height: 80px;
      opacity: 0.5;
      cursor: pointer;

      img {
        height: 100%;
        width: auto;
        object-fit: cover;
      }
    }

    .swiper-slide-thumb-active {
      opacity: 1;
    }
  }

  .swiper-button-next,
  .swiper-button-prev {
    --swiper-navigation-color: #fff;
  }

  .overlay__close {
    position: absolute;
    top: 1rem;
    right: 1rem;
    background: none;
    border: none;
    color: white;
    font-size: 1.5rem;
    cursor: pointer;
    line-height: 1;
    z-index: 1;
  }







.page-product-main {
	margin-top: -84px;
    padding: 116px 0 3rem;
	background-color: var(--color-grey-light);
	.page-product-main__breadcrumb {
		font-size: 9px;
		margin-bottom: 0.5rem;
	}

	.page-product-main__layout {
		display: flex;
		flex-direction: column;
		gap: 1rem;
		@media (min-width: 768px) {
			flex-direction: row;
		}
		.layout__gallery {
			flex: 1;
			.gallery__main {
				img, svg { display: block; width: 100%; height: auto; }
			}
			.gallery__inner{
				position: sticky;
				top: 108px;
				.inner__main{
					img{
						aspect-ratio: 3 / 2;
						object-fit: cover;
					}
				}
				.inner__thumbnails {
					display: grid;
					grid-template-columns: repeat(4, 1fr);
					gap: 1rem;
					margin-top: 1rem;
					.thumbnails__item{
						border: none;
						padding: 0;
						cursor: pointer;
						overflow: hidden;
						background: #f5f5f3;
						opacity: 0.55;
						transition: opacity 0.15s;
						img { display: block; width: 100%; aspect-ratio: 4/3; object-fit: cover; }
						&--active, &:hover { opacity: 1; }
					}
				}
				.inner__view-all {
					margin-top: 0.5rem;
					text-align: right;
					font-size: 0.8125rem;
					text-decoration: underline;
					text-underline-offset: 3px;
					.view-all__button{
						appearance:none;
						border:0;
						padding:0;
						background: none;
						opacity: 0.5;
						text-decoration: underline;
						font-family: inherit;
						cursor: pointer;
						&:hover{
							text-decoration: none;
						}
					}
				}
			}
			
		}
		.layout__info {
			
			padding: 20px 15px;
			background-color: white;
			@media (min-width: 768px) {
				width: 400px;
				padding: 25px 45px;
			}
			.info__title {
				margin:0;
				font-size: 15px;
				font-weight: 700;
				text-transform: uppercase;
			}
			.info__estimated {
				margin-top:0.25rem;
				font-size: 12px
			}
			.info__pricing {
				display: flex;
				gap: 3rem;
				margin-top:1.25rem;
				font-size: 15px;
				.pricing__item{
					.item__label{
						font-weight: 700;
					}
					.item__value { 
						margin-top:0.5rem;
						font-weight: normal;
					}
				}
			}
			.info__draw-date {
				margin-top:1.25rem;
				font-size: 12px;
				font-weight: bold;
				.draw-date__note { 
					font-weight:normal;
					font-size: 9px;
				}
			}
			.info__form {
				display: flex;
				flex-direction: column;
				align-items: center;
				gap: 0.75rem;
				margin-top: 1rem;
				@media (min-width: 768px) {
					flex-direction: row;
				}
				.form__quantity{
					display: flex;
					align-items: center;
					justify-content: center;
					width: 118px;
					height: 38px;
					border: 1px solid var(--color-text);
					border-radius:38px;
					.quantity__btn {
						background: none;
						border: none;
						width: 35px;
						height: 100%;
						cursor: pointer;
						font-size: 1rem;
						color: inherit;
						display: flex;
						align-items: center;
						justify-content: center;
					}

					.quantity__input {
						width: 40px;
						height: 100%;
						min-height: 38px;
						border: none;
						text-align: center;
						font: inherit;
						font-size: 1rem;
						background: none;
						-moz-appearance: textfield;
						&::-webkit-outer-spin-button, &::-webkit-inner-spin-button { -webkit-appearance: none; }
					}
				}
				.form__cta{
					flex: 1;
					min-height: 38px;
					cursor:pointer;
				}
			}
			.info__form-odds{
				margin-top:0.5rem;
				margin-bottom:1.5rem;
				font-size:0.75rem;
				text-align: center;
			}
			.info__notice{
				margin-top: 1rem;
				padding: 1rem;
				background: var(--color-grey-light);
				font-size: 11px;
				a{
					font-weight: bold;
					text-decoration: underline;
					color: inherit;
					&:hover{
						text-decoration: none;
					}
				}
			}
			.info__model{
				margin-top: 1rem;
				font-size: 12px;
				.model__label { 
					font-weight: bold
				}
				.model__name { 
					margin-top: 3px;
				}
			}
			.info__features{
				margin-top: 1rem;
				.features__title{
					font-size: 12px;
					font-weight: bold;
				}
				.features__grid{
					display: grid;
					grid-template-columns: 1fr 1fr;
					gap: 0.75rem;
					margin-top: 0.5rem;
					.grid__item {
						display: flex;
						align-items: center;
						gap: 0.5rem;
						span{
							font-size: 11px;
							font-weight: 600;
							letter-spacing: 1px;
						}
					}
				}
			}
			.info__accordion{
				margin-top:0.5rem;
				.accordion__item{
					.item__summary{
						position: relative;
						display: flex;
						align-items: center;
						justify-content: space-between;
						padding: 1.25rem 0 0.5rem 0;
						cursor: pointer;
						font-size: 15px;
						font-weight: bold;
						user-select: none;
						&:after {
							position: absolute;
							right:0;
							content: '+';
							font-weight: normal;
							font-size: 28px;
						}
					}
					&.accordion__item--open {
						.item__summary:after {
							content: '-';
						}
						.item__body {
							display: block;
						}
					}
					.item__body{
						display: none;
						font-size: 12px;
						ul, ol {
							padding: 0;
							list-style: none;
							li {
								position:relative;
								margin: 0.25rem 0;
								padding-left: 14px;
								&:before{
									content: '•';
									position: absolute;
									top:0;
									left:0;
								}
							}
						}
						p {
							margin-bottom: 0.5rem;
						}
					}
					.item__body--included{
						ul, ol {
							li {
								&:before{
									content: '✔';
								}
							}
						}
					}
					.item__body--not-included{
						ul, ol {
							li {
								&:before{
									content: '✖';
								}
							}
						}
					}
				}
			}
		}
	}
}



.page-product-details {
	background-color: var(--color-grey-light);
	.page-product-details__inner {
		display:flex;
		flex-direction: column-reverse;
		gap: 2rem;
		align-items: center;
		@media (min-width: 1024px) {
			flex-direction: row;
			gap: 4rem;
		}
		.inner__content{
			width: 100%;
			padding-bottom: 30px;
			@media (min-width: 1024px) {
				flex:1;
				width: initial;
				padding-bottom: 60px;
				
			}
			.content__title {
				font-size: 15px;
				font-weight: 700;
				text-transform: uppercase;
				margin-bottom: 1.5rem;
			}
			.content__table {
				width: 100%;
				border-collapse: collapse;
				font-size: 12px;
				td {
					padding: 0.125rem 0;
					vertical-align: top;
					line-height: 1.5;
					&:first-child {
						white-space: nowrap;
						padding-right: 1.5rem;
						width: 30%;
						&::after { 
							content: ' :'; 
						}
					}
				}
			}
		}
		.inner__image {
			max-width: 560px;
			overflow: hidden;
			
			@media (min-width: 1024px) {
				transform: translateX(15px);
			}
			img { 
				display: block; 
				width: 100%; 
				height: auto; 
				border: 15px solid white;
			}
		}
		&.page-product-details__inner--reverse{
			flex-direction: column-reverse;
			gap: 2rem;
			align-items: center;
			@media (min-width: 1024px) {
				flex-direction: row-reverse;
				gap: 4rem;
				margin-top: -60px;
            	margin-bottom: -60px;
			}
			.inner__content{
				padding-bottom: 30px;
				@media (min-width: 1024px) {
					padding-bottom: 0;
				}
			}
			.inner__image {
				@media (min-width: 1024px) {
					transform: translateX(-15px);
				}
			}
		}
	}
	
	
}

.page-product-gallery {
    padding: 50px 0 50px 0;
	@media (min-width: 768px) {
		padding: 96px 0 60px 0;
	}
	.page-product-gallery__title {
		font-size: clamp(1.75rem, 3vw, 2.5rem);
		font-weight: 400;
		text-align: center;
		margin-bottom: 2rem;
	}
  
	.page-product-gallery__grid {
		
		@media (min-width: 768px) {
			display: grid;
			grid-template-columns: repeat(2, 1fr);
		}
		.grid__item {
			position: relative;
			overflow: hidden;
			img {
				display: block;
				width: 100%;
				aspect-ratio: 3 / 2;
				object-fit: cover;
			}
			.item__label {
				position: absolute;
				top: 0;
				left: 0;
				display: flex;
				align-items: center;
				justify-content: center;
				width: 100%;
				height: 100%;
				background: rgba(0, 0, 0, 0.2);
			}
		}
	}
	.page-product-gallery__footer {
		margin-top: 40px;
		text-align: center;
		@media (min-width: 768px) {
			margin-top: 50px;
		}
	}
}


.entry-modal {
	display: none;
	position: fixed;
	inset: 0;
	z-index: 10000;
	align-items: center;
	justify-content: center;
	padding: 1rem;
	&[aria-hidden="false"] {
		display: flex;
	}
	.entry-modal__backdrop {
		position: absolute;
		inset: 0;
		background: rgba(0, 0, 0, 0.7);
		cursor: pointer;
	}
	.entry-modal__box {
		position: relative;
		z-index: 1;
		background: white;
		width: 100%;
		max-width: 720px;
		padding: 1rem;
		display: flex;
		flex-direction: column;
		align-items: center;
		max-height: 90vh;
		overflow-y: auto;
		.modal__close {
			position: absolute;
			top: 1rem;
			right: 1rem;
			background: none;
			border: none;
			cursor: pointer;
			display: flex;
			padding: 0.25rem;
			color: var(--color-text);
		}
		.modal__eyebrow {
			font-size: 13px;
			font-weight:600;
			text-align: center;
			margin: 0;
		}
		.modal__question {
			max-width: 410px;
			margin-top: 10px;
			font-size: 15px;
			font-weight: 700;
			text-align: center;
			margin: 10px 0 0 0;
		}
		.modal__instruction {
			margin: 10px 0 0 0;
			font-size: 11px;
			text-align: center;
			
		}
		.modal__answers {
			display: flex;
			flex-direction: column;
			gap: 0.75rem;
			width: 215px;
			margin: 6px auto 0 auto;
			.answer__btn {
				&.answer__btn--selected {
					background: var(--color-text);
					color: white;
				}
			}
		}
		.modal__confirm {
			display: flex;
			align-items: center;
            justify-content: center;
			gap: 0.6rem;
			font-size: 10px;
			cursor: pointer;
			width: 100%;
			margin-top: 10px;
			input[type="checkbox"] {
				cursor: pointer;
			}
			a {
				font-weight: 600;
				text-decoration: underline;
				color: var(--color-foreground);
			}
		}
		.modal__submit {
			width: 215px;
			margin: 14px auto 0 auto;
			&:disabled {
				opacity: 0.45;
				cursor: not-allowed;
				pointer-events: none;
			}
		}
		.modal__disclaimer {
			font-size: 11px;
			text-align: left;
			margin-top: 14px;
			a {
				font-weight: 600;
				text-decoration: underline;
				color: var(--color-foreground);
			}
		}
	}
}
/* END_SECTION:product */

/* START_SECTION:reassurance (INDEX:30) */
.reassurance {
	position: relative;
	min-height: 350px;
	
	background-color: var(--color-primary);
	.reassurance__bg {
		position: absolute;
		inset: 0;  
		overflow: hidden;
		z-index: 0;
		img {
			width: 100%;
			height: 100%;
			object-fit: cover;
		}
	}
	.wrap {
		position: relative;
		z-index: 1;
	}
	.reassurance__inner{
		margin-left: calc(30% - 25px);
		padding: 50px 0 50px 25px;
		border-left: 1px solid white;
		@media (min-width: 768px) {
			margin-left: calc(50% - 50px);
			padding: 50px 0 50px 50px;
		}
		.inner__item{
			position: relative;
			margin-bottom: 1.25rem;
			color: white;
			&:last-child{
				margin-bottom: 0;
			}
			&:before{
				content: '';
				position: absolute;
				top: 3px;
				left: -31px;
				width: 11px;
				height: 11px;
				background-color: white;
				border-radius: 11px;
				@media (min-width: 768px) {
					left: -56px;
				}
			}
			.item__title{
				margin-bottom: 0.5rem;
				font-size: 15px;
				font-weight: bold;
				text-transform: uppercase;
			}
			.item__text{
				font-size: 12px;
			}
		}
	}
}
/* END_SECTION:reassurance */

/* START_SECTION:search (INDEX:31) */
.search-results {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  }
  .search-results .prev,
  .search-results .page,
  .search-results .next {
    grid-column: 1 / -1;
  }
/* END_SECTION:search */

/* START_SECTION:testimonials (INDEX:32) */
.testimonials {
    background-color: var(--color-grey-light);
    padding: 50px;
  }

  .testimonials__inner {
    max-width: var(--page-width);
    margin: 0 auto;
  }

  .testimonials__heading {
    text-align: center;
    font-size: clamp(1.5rem, 3vw, 2.25rem);
    font-weight: 400;
    margin-bottom: 2.5rem;
  }

  /* ─── White panel ─── */
  .testimonials__panel {
    display: flex;
    align-items: center;
    gap: 2.5rem;
    background: #fff;
    border-radius: 0.75rem;
    padding: 2.5rem;
  }

  /* ─── Summary (left) ─── */
  .testimonials__summary {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    flex-shrink: 0;
    width: 160px;
  }

  .testimonials__score-label {
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1;
  }

  .testimonials__stars {
    display: flex;
    gap: 2px;
  }

  .testimonials__count {
    font-size: 0.8125rem;
    line-height: 1.5;
    margin: 0;
  }

  .testimonials__count a {
    color: inherit;
    text-decoration: underline;
  }

  /* ─── Slider ─── */
  .testimonials__slider {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex: 1;
    min-width: 0;
  }

  /* ─── Nav buttons ─── */
  .testimonials__nav {
    flex-shrink: 0;
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 50%;
    border: 1.5px solid currentColor;
    background: transparent;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: opacity 0.2s;
    padding: 0;
  }

  .testimonials__nav:disabled {
    opacity: 0.25;
    cursor: default;
  }

  /* ─── Viewport & track ─── */
  .testimonials__viewport {
    overflow: hidden;
    flex: 1;
    min-width: 0;
  }

  .testimonials__track {
    display: flex;
    gap: 1.25rem;
    list-style: none;
    margin: 0;
    padding: 0;
    transition: transform 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  }

  .testimonials__card {
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
  }

  /* ─── Card content ─── */
  .testimonials__card-top {
    display: flex;
    align-items: center;
    gap: 0.75rem;
  }

  .testimonials__verified {
    font-size: 0.75rem;
    font-weight: 500;
    text-decoration: underline;
    color: inherit;
  }

  .testimonials__card-title {
    font-size: 0.9375rem;
    font-weight: 700;
    margin: 0.25rem 0 0;
  }

  .testimonials__card-content {
    font-size: 0.875rem;
    line-height: 1.65;
    opacity: 0.8;
    margin: 0;
  }

  .testimonials__card-meta {
    font-size: 0.8125rem;
    opacity: 0.6;
    margin: 0;
  }

  /* ─── Mobile ─── */
  @media (max-width: 768px) {
    .testimonials__panel {
      flex-direction: column;
      align-items: flex-start;
      padding: 1.5rem;
    }

    .testimonials__summary {
      width: 100%;
      flex-direction: row;
      flex-wrap: wrap;
      align-items: center;
      gap: 0.75rem;
    }

    .testimonials__slider {
      width: 100%;
    }
  }
/* END_SECTION:testimonials */

/* START_SECTION:text-centered (INDEX:33) */
.text-centered {
	padding-top: var(--padding-top);
  	padding-bottom: var(--padding-bottom);
	.text-centered__inner {
		max-width: 720px;
		margin: 0 auto;
		text-align: center;
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 20px;
		.inner__title {
			margin: 0;
		}

		.inner__text {
			max-width:540px;
			font-size:12px;
			p {
				margin: 0;
			}
			h3{
				font-size:15px;
				text-transform: uppercase;
			}
		}
	}
}
/* END_SECTION:text-centered */

/* START_SECTION:title-text-2-columns (INDEX:34) */
.title-text-2-columns {
	padding-top: var(--padding-top);
  	padding-bottom: var(--padding-bottom);
	.title-text-2-columns__inner {
		display:flex;
		flex-direction: column;
		gap: 2rem;
		max-width: 720px;
		margin: auto;
        align-items: center;
        text-align: center;
		@media (min-width: 768px) {
			flex-direction: row;
			gap: 3rem;
			align-items: initial;
        	text-align: left;
		}
		.inner__title{
			flex: 1;
			margin: 0;
			.title{
				margin:0;
			}
		}
		.inner__text{
			flex: 1;
			font-size:12px;
			p {
				margin: 0;
			}
			h3{
				font-size:15px;
				text-transform: uppercase;
			}
			.text__cta{
				margin-top: 2rem;
			}
		}
	}
}
/* END_SECTION:title-text-2-columns */

/* CSS from block stylesheet tags */
/* START_BLOCK:group (INDEX:35) */
.group {
    display: flex;
    flex-wrap: nowrap;
    overflow: hidden;
    width: 100%;
  }

  .group--horizontal {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    padding: 0 var(--padding);
  }

  .group--vertical {
    flex-direction: column;
    align-items: var(--alignment);
    padding: var(--padding) 0;
  }
/* END_BLOCK:group */

/* START_BLOCK:text (INDEX:36) */
.text {
    text-align: var(--text-align);
  }
  .text--title {
    font-size: 2rem;
    font-weight: 700;
  }
  .text--subtitle {
    font-size: 1.5rem;
  }
/* END_BLOCK:text */

/* CSS from snippet stylesheet tags */
/* START_SNIPPET:cta (INDEX:38) */
.cta {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		height:38px;
		min-width:180px;
		padding:5px 32px;
		border: 1px solid currentColor;
		color: inherit;
		text-decoration: none;
		font-family: var(--font-primary--family);
		font-size: 13px;
		font-weight: 700;
		background: transparent;
		transition: background 0.2s, color 0.2s, border-color 0.2s;
		&:hover {
			background: var(--color-text);
			color: #fff;
			border-color: var(--color-text);
		}
		
	}
	.cta--rounded{ 
		border-radius:50px;
	}

  	.cta--outline-white {
		border-color: white;
		color: #fff;
		padding: 0.9rem 3rem;
		&:hover {
			background: #fff;
			color: var(--color-text);
			border-color: #fff;
		}
	}

  	.cta--black {
		background: var(--color-text);
		border-color: var(--color-text);
		color: #fff;
		&:hover {
			background: #fff;
			color: var(--color-text);
		}
	}
	.cta--white {
		background: white;
		border-color: white;
		color: var(--color-text);
		&:hover {
			background: var(--color-text);
			border-color: var(--color-text);
			color: white;
		}
	}
/* END_SNIPPET:cta */

/* START_SNIPPET:image (INDEX:39) */
.image {
    display: block;
    position: relative;
    overflow: hidden;
    width: 100%;
    height: auto;
  }

  .image > img {
    width: 100%;
    height: auto;
  }
/* END_SNIPPET:image */