/** Shopify CDN: Minification failed

Line 1889:7 Expected ":"
Line 2127:3 Unexpected "{"
Line 4093:3 Unexpected "{"

**/
/* ------------------- */
/* --- Design tokens -- */
/* ------------------- */

:root {
  --base-color-brand: #451609;
  --base-colour-accent: #052363;
  --base-color-neutral: #fdfaf7;
  --base-color-secondary-accent: #f7e9da;

  --simple-white: #fdfaf7;
  --sooty: #141414;
  --chocolate-hazelnut: #692917;
  --french-puce: #451609;
  --abyssal-depths: #052363;
  --mallow-root: #f7e9da;
  --overlay-image: #1817174f;
  --overlay-image-black: #4545455c;
  --overlay-menu: #1817179c;
  --life-force: #71b1e1;
  --cloudless: #d4effc;

  --soft-border: rgba(0,0,0,.10);
}

/* ---------------------------- */
/* --- Font face declaration -- */
/* --------------------------- */
@font-face {
  font-family: 'Josefin Sans Bold';
  src: url('{{ "JosefinSans-Bold.woff2" | asset_url }}') format('woff2');
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: 'Josefin Sans Semibold';
  src: url('{{ "JosefinSans-SemiBold.woff2" | asset_url }}') format('woff2');
  
  font-weight: 600;
  font-style: normal;
}
@font-face {
  font-family: 'Josefin Sans Regular';
  src: url('{{ "JosefinSans-Regular.woff2" | asset_url }}') format('woff2');
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: '01 Aeternus Nano Variable Vf';
  src: url('{{ "01-aeternus-nano-variable-weightitalic-VF.woff2" | asset_url }}') format('woff2');
  font-weight: 400;
  font-style: normal;
}

html:not(.fonts-loaded) body {
    opacity: 0;
}

html.fonts-loaded body {
    opacity: 1;
    transition: opacity 0.3s ease;
}

/* ------------------- */
/* --- Utilities ----- */
/* ------------------- */

[x-cloak] { display: none !important; }

[animate-in] {
  opacity: 0;
  transform: translateY(30px);
  will-change: opacity, transform;
}

.horizontal-scroll-container [fade-in] {
  opacity: 0;
  transform: translateY(5%);
  will-change: opacity, transform;
}

[fade-opacity] {
  opacity: 0;
  visibility: hidden;
  will-change: opacity;
}

[truncate-text] {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  -webkit-line-clamp: 3;
  word-break: break-word;
  line-break: loose;
  text-overflow: ellipsis;
}

[hide-on-load] {
  visibility: hidden;
  opacity: 0;
  transition: opacity 0.4s ease;
}

[hide-on-load].show {
  visibility: visible;
  opacity: 1 !important;
}

.visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.predictive-search_component,
.mini-cart_component {
  opacity: 0;
  visibility: hidden;
}

.items-container.blog {
  overflow-anchor: none;
  overflow-clip-margin: content-box;
  overflow-y: clip;
}

[truncate-text] {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  -webkit-line-clamp: 3;
  word-break: break-word;
  line-break: loose;
  text-overflow: ellipsis;
}

[move-item] {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  transition: opacity 0.4s ease;
  opacity: 0;
  pointer-events: none;
  z-index: 0;
}

[move-item]:first-child {
  opacity: 1;
  pointer-events: auto;
  z-index: 1;
}

.horizontal-scroll-container [fade-in-next] {
  opacity: 0;
  transform: translateY(3%);
  will-change: opacity, transform;
  visibility: hidden;
}

.item-image,
.hero-section-background-image,
.category-card img {
  transition: opacity 0.3s ease-in, filter 0.3s ease-in;
}

.main-navbar-container {
  position: absolute;
  inset: 0% 0% auto;
}

/* Diagonal strikethrough for unavailable swatches */
.filter-swatch.is-disabled .filter-swatch__color,
.product-colour.is-unavailable {
  position: relative;
}

.filter-swatch.is-disabled .filter-swatch__color::after,
.product-colour.is-unavailable::after {
  content: '';
  position: absolute;
  top: 50%;
  left: -5%;
  width: 110%;
  height: .05em;
  background: var(--french-puce);
  transform: translateY(-50%) rotate(-45deg);
  border-radius: 999px;
  pointer-events: none;
}

/* Start with collapsible hidden, main visible */
.nav-bar { color: var(--base-color-neutral--simple-white) }
.nav-bar.main { opacity: 1; }
.nav-bar.collapsible { opacity: 0; transform: translateY(0%); }

/* Restyle near end of hero */
.nav-bar.collapsible.is-sooty {
  background-color: var(--sooty, #111);
  border-color: var(--sooty, #111);
}

/* Loading state for images */
.item-image.is-loading {
  filter: blur(8px);
  opacity: 0.5;
}

.slider-head {
  background-color: var(--chocolate-hazelnut);
  width: 50%;
  height: 100%;
}

[next-button]:disabled,
[previous-button]:disabled {
  opacity: 0.4;
  pointer-events: none;
  cursor: default;
}
.slider-head {
    transition: transform 0.4s ease;
}

.fade-in-next-visible {
  opacity: 1 !important;
  transform: translateY(0%) !important;
  transition: opacity 1s ease, transform 1s ease;
}

/* Prevents focus outline on specific Webflow elements */
.product-header_radio-button .w--redirected-focus,
.w-form-formradioinput--inputType-custom.w--redirected-checked {
  box-shadow: none;
}

/* ------------------- */
/* --- Base ---------- */
/* ------------------- */

::selection {
  color: var(--sooty);
  background: var(--life-force);
}

::-moz-selection {
  color: var(--sooty);
  background: var(--life-force);
}

body {
  background-color: var(--simple-white);
  color: var(--french-puce);
  font-family: Josefin Sans, Verdana, sans-serif;
  font-size: 1rem;
  line-height: 1.6;
}

body.menu-open {
  overflow: hidden;
  touch-action: none;
}

a,
a:hover {
  text-decoration: none;
  color: inherit;
}

p {
  margin-bottom: 0;
  text-wrap: pretty;
  line-break: strict;
}

.container {
  padding: 0 7vw;
}

h1, h2, h3, h4 {
  font-family: "01 Aeternus Nano Variable Vf", Impact, sans-serif;
  text-transform: uppercase;
  font-weight: 500;
}

h5, h6 {

}

/* ------------------- */
/* --- Fonts --------- */
/* ------------------- */

@font-face {
  font-family: "01 Aeternus Nano Variable Vf";
  src: url("../assets/01-aeternus-nano-variable-weightitalic-VF.woff2") format("woff2");
  font-weight: 100 856;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "03 Aeternus Variable Vf";
  src: url("../assets/03-aeternus-thin-variable-eightitalic-VF.woff2") format("woff2");
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "02 Aeternus Tall Variable Vf";
  src: url("../assets/02-aeternus-tall-variable-weightitalic-VF.woff2") format("woff2");
  font-weight: 100 856;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "04 Aeternus Variable Vf";
  src: url("../assets/04-aeternus-heavy-variable-eightitalic-VF.woff2") format("woff2");
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Triple Shots";
  src: url("../assets/TRIPLE-SHOTS.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Josefin Sans";
  src: url("../assets/JosefinSans-Bold.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Josefin Sans";
  src: url("../assets/JosefinSans-SemiBold.woff2") format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Josefin Sans";
  src: url("../assets/JosefinSans-Regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/* ------------------- */
/* --- Mobile Menu ---- */
/* ------------------- */
.accordion-header {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}

.accordion-title {
  text-transform: none;
  justify-content: space-between;
  align-items: center;
  text-transform: uppercase;
  letter-spacing: .15em;
  width: 100%;
  font-size: 1rem;
  font-weight: 700;
  line-height: 100%;
  text-decoration: none;
  display: flex;
}

.accordion-item {
  padding: 1.5rem 7vw;
}

.accordion-toggle {

}

.accordion-content {
  display: flex;
}

.product-vendor-name {
  letter-spacing: .14em;
  font-size: .75rem;
  font-weight: 700;
  text-transform: uppercase;
}

/* ------------------------------- */
/* --- Product Feature Section ---- */
/* ------------------------------- */

.feature-container {
  z-index: 2;
  position: relative;
}

.feature-container.event {
  grid-column-gap: 6vw;
  grid-row-gap: 6vw;
  flex-flow: column;
  width: 100%;
  display: flex;
}

.feature-container.event.less-space {
  grid-column-gap: 2vw;
  grid-row-gap: 2vw;
}

.navigation {
  grid-column-gap: 3vh;
  grid-row-gap: 3vh;
  flex-flow: column;
  align-self: center;
  display: flex;
}

.navigation.wide {
  align-self: stretch;
  align-items: flex-end;
}

.horizontal-scroll-container {
  overflow-x: auto;
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.horizontal-scroll-container {
  justify-content: center;
  align-self: flex-start;
  width: 100%;
  display: flex;
  position: relative;
  overflow: clip;
}

.items-container.blog.horizontal-scroll.first {
  position: relative;
  overflow: visible;
}

.items-container.blog.horizontal-scroll {
  overflow: clip;
}

.items-container {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.items-container.blog {
  overflow-anchor: none;
  overflow-clip-margin: content-box;
  overflow-y: clip;
  grid-column-gap: 0;
  grid-row-gap: 0;
  width: 100%;
  overflow: auto;
}

.arrow-container {
  justify-content: center;
  align-self: center;
  align-items: center;
  width: 100%;
  height: 100%;
  display: flex;
}

.arrow-icon {
  vertical-align: baseline;
  width: 1.2rem;
  height: 1.2rem;
}

.round-button {
  border: .1em solid var(--simple-white);
  cursor: pointer;
  border-radius: 100rem;
  width: 4rem;
  height: 4rem;
}

.round-button.french-puce {
  border-color: var(--french-puce);
  color: var(--french-puce);
  background: transparent;
  flex-flow: column;
  justify-content: center;
  align-self: center;
  align-items: center;
  display: flex;
  position: relative;
  transition: 
    background-color 0.2s ease, 
    transform 0.2s ease;
}

.round-button.french-puce:hover {
  background-color: var(--french-puce);
  color: var(--simple-white);
}

.arrows {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  justify-content: center;
  display: flex;
}

.product-header_component {
  margin: 5rem 0 0;

}

/* -------------------------- */
/* --- Newsletter Pop Up --- */
/* ------------------------ */
.section-custom-toast-popup {
  width: 100%;
  height: 100%;
  position: fixed;
  overflow: hidden;
  pointer-events: none;
  z-index: 999;
  display: flex;
  justify-content: center;
  align-items: center;
}

.custom-toast.show {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  pointer-events: auto;
  display: flex;
}

.custom-toast {
  z-index: 3;
  opacity: 0;
  display: none;
  transform: translateY(5%);
  background-color: rgba(0, 0, 0, 0.7);
  justify-content: center;
  backdrop-filter: blur(3px);
  transition: opacity .2s ease;
  align-self: center;
  align-items: center;
  width: 100%;
  height: 100%;
  display: flex;
  position: absolute;
  top: 0;
  left: 0;
}

.toast-content {
  background-color: var(--mallow-root);
  justify-content: space-between;
  width: 50rem;
  height: 32rem;
  display: grid;
  grid-template-columns: 1fr 1fr;
  position: relative;
  overflow: hidden;
}

.popup-left {
  background-size: cover;
  justify-content: center;
  align-self: center;
  align-items: center;
  width: 100%;
  height: 100%;
  display: flex;
  overflow: hidden;
}

.popup-left img {
  height: 100%;
}

.popup-right {
  justify-content: space-between;
  align-self: center;
  align-items: flex-start;
  width: 100%;
  height: 100%;
  padding: 1.2rem;
  display: flex;
  position: relative;
}

.submit-button-container.pop-up:hover .submit-button,
.submit-button-container.pop-up:focus-visible .submit-button,
.submit-button-container.pop-up:focus-within .submit-button {
  color: var(--french-puce) !important;
}

.pop-up-text-container {
  z-index: 2;
  align-self: center;
  position: relative;
  flex-direction: column;
  gap: 1rem;
  display: flex;
}

.print-text-subcribe.pop-up {
  color: var(--french-puce);
}

.text-field.pop-up:focus {
  border-color: var(--french-puce);
  outline: .06em solid #45160969;
  outline-offset: .2rem;
}

.close-toast {
  z-index: 3;
  top: 1rem !important;
  right: 1rem !important;
  cursor: pointer;
  align-self: flex-start;
  position: absolute;
  inset: 0% 0% 0% auto;
  color: var(--simple-white);
  background: var(--french-puce);
  width: 1.6rem;
  height: 1.6rem;
  overflow: hidden;
  display: flex;
  align-items: center;
  transition: background 0.3s;
  justify-content: center;
  border: .08em solid var(--french-puce);
  transition: all 0.3s ease;
  padding: 0;
}

.close-toast:hover {
  color: var(--french-puce);
  background: var(--simple-white);
}

.close-toast:hover .plus-icon.popup {
  color: var(--french-puce);
}

.submit-button-container.pop-up {
  border-color: var(--french-puce);
  background-color: var(--french-puce);
}

.plus-icon.popup {
  transform: rotate(45deg);
  color: var(--simple-white);
  width: 1.4rem;
  height: 1.4rem;
}

.main-headline.tighter-mobile-newsletter.pop-up {
  color: var(--french-puce);
}

.signature-background {
  z-index: 1;
  opacity: .03;
  color: var(--chocolate-hazelnut);
  align-self: center;
  width: 155%;
  position: absolute;
  inset: 0%;
}

.suscribe.pop-up {
  flex-flow: column;
  align-items: stretch;
}

.toast-content .contact-form {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0.85rem;
}

.subcribe-container.pop-up {
  width: 100%;
}

.suscribe {
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
  cursor: default;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  display: flex;
}

.text-field.pop-up {
  border-color: var(--french-puce);
  color: var(--french-puce);
  background: var(--simple-white);
}

.text-field.pop-up::placeholder {
  color: #4516096e;
}

.pop-up-text {
  z-index: 2;
  color: var(--french-puce);
  text-align: center;
  letter-spacing: .14em;
  text-transform: uppercase;
  align-items: stretch;
  margin-top: .3rem;
  font-size: .6rem;
  font-weight: 700;
  line-height: 100%;
  position: relative;
}

/* ------------------- */
/* --- Header -------- */
/* ------------------- */

.nav-bar {
  z-index: 50;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding: 1.5rem 4vw;
  display: flex;
  position: absolute;
  inset: 0% 0% auto;
  overflow: hidden;
}

.nav-bar.collapsible {
  z-index: 49;
  background-color: var(--sooty);
  display: flex;
  position: absolute;
  inset: 0% 0% auto;
}

.nav-bar.main {
}

.nav-bar.main,
.nav-bar.collapsible {
  will-change: opacity, transform;
}

.nav-bar.main { opacity: 1; }
.nav-bar.collapsible { opacity: 0; transform: translateY(0%); transition: background-color 0.3s ease; }

.nav-bar.collapsible.is-transparent {
  background-color: transparent !important;
  box-shadow: none;
}

body.menu-open .nav-bar.collapsible,
body.dropdown-open .nav-bar.collapsible {
  background-color: var(--sooty) !important;
}

.nav-bar.collapsible.is-sooty {
  background-color: var(--sooty);
}

.hero-section-overlay {
  background-image: linear-gradient(#00000057, #0000 60%);
  width: 100%;
  position: absolute;
  top: 0;
  height: 10rem;
  z-index: 2;
}

.plus-icon.menu-version {
  color: var(--simple-white);
  width: 70%;
  height: 70%;
  display: none;
  overflow: hidden;
}

.button-container {
  cursor: pointer;
  display: flex;
  color: var(--simple-white);
}

.logo {
  color: var(--simple-white);
}

.logo-back {
  z-index: 4;
  cursor: pointer;
  align-self: center;
  width: 9rem;
  display: flex;
  position: relative;
}

.nav-links {
  z-index: 3;
  grid-column-gap: 2.3rem;
  grid-row-gap: 2.3rem;
  flex: none;
  justify-content: center;
  align-self: center;
  align-items: center;
  height: 100%;
  display: flex;
  position: absolute;
  inset: 0%;
}

.nav-link {
  grid-column-gap: .3rem;
  grid-row-gap: .3rem;
  color: var(--simple-white);
  letter-spacing: .17em;
  text-transform: uppercase;
  white-space: nowrap;
  cursor: pointer;
  flex-flow: column;
  flex: none;
  justify-content: center;
  align-items: flex-end;
  margin-left: 0;
  margin-right: 0;
  font-size: .75rem;
  font-weight: 700;
  line-height: 1.3;
  text-decoration: none;
  display: flex;
  position: relative;
}

.nav-link:hover .underline {
  transform: scaleX(1);
}

.icon-shop-all {
  margin-top: 0;
  margin-bottom: 4%;
  margin-right: 0;
  position: static;
}

.navbar-icon-right {
  color: var(--simple-white);
  width: 1.3rem;
  height: 1.3rem;
}

.right-nav {
  z-index: 3;
  grid-column-gap: .8rem;
  grid-row-gap: .8rem;
  justify-content: flex-end;
  align-items: baseline;
  display: flex;
  position: relative;
}

.navbar-icon {
  cursor: pointer;
  transition: opacity .2s;
  position: relative;
  padding-top: 2%;
}

.navbar-icon:hover {
  opacity: .6;
}

.menu {
  cursor: pointer;
  display: none;
}

.horizontal-wrap {
  grid-column-gap: .5vh;
  grid-row-gap: .5vh;
  color: var(--simple-white);
  align-items: center;
  display: flex;
}

.navbar-container {
  z-index: 25;
  justify-content: space-between;
  width: 100%;
  display: flex;
  position: sticky;
  inset: 0% 0% auto;
}

.dropdown-shop-all {
  z-index: 10;
  border-bottom: .1em solid var(--simple-white);
  background-color: var(--sooty);
  justify-content: center;
  align-items: center;
  width: 100vw;
  padding: 3rem 4vw;
  display: none;
  position: absolute;
  inset: 0% 0% auto;
  transform-origin: top;
  overflow: hidden;
  opacity: 0;
  transform: translate(0, 10.1vh);
  pointer-events: none; 
}

.drop-down-row {
  grid-column-gap: 1.4rem;
  grid-row-gap: 1.4rem;
  flex-flow: column;
  display: flex;
  opacity: 0;
  transform: translateY(10%);
  transition: opacity 0.3s ease;
}

.drop-down-row.fade-out {
  opacity: 0;
}

.drop-down-link {
  grid-column-gap: .1rem;
  grid-row-gap: .1rem;
  color: var(--simple-white);
  text-transform: capitalize;
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  font-size: .9rem;
  line-height: 1.2;
  text-decoration: none;
  transition: opacity .2s;
  display: flex;
}

.drop-down-link:hover {
  opacity: .6;
}

.drop-down-title {
  grid-column-gap: .1rem;
  grid-row-gap: .1rem;
  color: var(--simple-white);
  letter-spacing: .18em;
  text-transform: uppercase;
  white-space: nowrap;
  cursor: default;
  flex-flow: column;
  flex: none;
  justify-content: center;
  align-items: flex-start;
  margin-bottom: 1rem;
  margin-left: 0;
  margin-right: 0;
  font-size: .75rem;
  font-weight: 700;
  line-height: 1.5;
  text-decoration: none;
  display: flex;
  position: relative;
}

.dropdown-side {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  justify-content: space-between;
  width: 45%;
  display: flex;
  position: relative;
}

.dropdown-feature-image {
  aspect-ratio: 1;
  object-fit: cover;
  flex-flow: column;
  justify-content: center;
  width: 100%;
  text-decoration: none;
  display: flex;
  overflow: hidden;
}

.image-feature {
  object-fit: cover;
  max-width: none;
  height: 100%;
  width: 100%;
  transform: scale(1);
  transition: transform 0.2s ease;
}

.dropdown-feature-link {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 50%;
  height: 100%;
  text-decoration: none;
  display: flex;
  overflow: hidden;
}

.dropdown-feature-link:hover .underline {
  transform: scaleX(0);
}

.dropdown-feature-link:hover .small-arrow {
  animation: hover-nudge-loop 900ms ease-in-out infinite;
}

@keyframes hover-nudge-loop {
  0%   { transform: translateX(0); }
  50%  { transform: translateX(4px); }
  100% { transform: translateX(0); }
}

@media (prefers-reduced-motion: reduce) {
  .dropdown-feature-link:hover .small-arrow
   { animation: none; }
}

.feature-dropdown-text {
  color: var(--simple-white);
  text-align: center;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  margin-bottom: 0;
  font-size: .85rem;
  font-weight: 400;
  line-height: 1.2;
  text-decoration: none;
}

.dropdown-link-feature-container {
  grid-column-gap: .8rem;
  grid-row-gap: .8rem;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.dropdown-inner {
  z-index: 10;
  grid-column-gap: 5rem;
  grid-row-gap: 5rem;
  justify-content: space-between;
  width: 100%;
  display: flex;
  position: relative;
}

.cart-count {
  position: absolute;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--abyssal-depths);
  height: 1.2rem;
  width: 1.2rem;
  line-height: .4;
  font-size: .75rem;
  border-radius: 10rem;
  left: 60%;
}

.menu-overlay {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  inset: 0;
  background: rgba(0, 0, 0, 0.7);
  backdrop-filter: blur(3px);
  transition: opacity .2s ease, visibility .2s ease;
  z-index: 9998;
  position: fixed;
}

.menu-overlay.active,
.menu-overlay.search-active,
.menu-overlay.cart-active {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.dropdown-menu {
  opacity: 0;
  position: absolute;
  pointer-events: none;
  transition: transform 0.4s ease, opacity 0.4s ease;
  will-change: transform, opacity;
  top: 0;
  left: 0;
  z-index: 5;
  flex-flow: column;
  width: 50vw;
  min-height: 100svh;
  max-height: 100vh;
  display: flex;
  left: 0;
}

.dropdown-menu.active {
  transform: translateX(0);
  opacity: 1;
  pointer-events: auto;
}

[dropdown-animate] {
  opacity: 0;
  transform: translateX(-40px);
}

.dropdown-menu-lower {
  width: 100%;
  min-height: 100svh;
  max-height: 100vh;
  position: relative;
  top: auto;
}


.nav-bg-overlay {
  z-index: 1;
  background-color: var(--sooty);
  align-self: flex-start;
  width: 100%;
  height: 100%;
  display: none;
  position: absolute;
  inset: 0% 0% auto;
  pointer-events: none;
  top: 0;
  left: 0;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.4s ease;
}

.nav-bg-overlay.visible {
  opacity: 1;
  display: block;
  pointer-events: auto;
}

.dropdown-menu-part.bottom {
  margin-left: 7vw;
  margin-right: 7vw;
}

.dropdown-menu-wrapper {
  grid-column-gap: 6vh;
  grid-row-gap: 6vh;
  background-color: var(--sooty);
  flex-flow: column;
  justify-content: flex-start;
  align-self: stretch;
  width: 100%;
  display: flex;
  position: relative;
  top: -1%;
}

  .menu-link-wrapper {
  cursor: pointer;
  flex-flow: column;
  justify-content: space-between;
  align-items: stretch;
  padding: 3.5vh 7vw;
  display: flex;
}

.close-menu-icon {
  cursor: pointer;
  background-color: #2e2e2e;
  justify-content: center;
  align-items: center;
  width: 5vh;
  height: 5vh;
  display: flex;
  position: absolute;
  inset: 0% 0% 0% auto;
  opacity: 0;
  z-index: 99999;
  transition: opacity 0.2s ease;
}

/* ------------------- */
/* --- Common text ---- */
/* ------------------- */

.logo { color: var(--simple-white); }

.body-copy {
  color: var(--simple-white);
  font-size: 1.1rem;
  line-height: 1.5;
}

.predictive-search_event-date {
  letter-spacing: .05em;
}

.predictive-search_event-price {
  letter-spacing: .14em;
}

.predictive-search_event-separator {
  letter-spacing: normal;
}

.sub-title { font-size: 1rem; }
.sub-title.smaller { width: 100%; font-size: 1.25rem; }
.sub-title.smaller.space-before { margin-top: 1.25rem; }
.sub-title.even-tighter.bundle { width: 35ch; font-size: 1.2rem; }
.sub-title.tighter-desktop { width: 70%; }
.sub-title.smaller {
  text-align: left;
  width: 90%;
  font-size: 1rem;
  line-height: 1.4;
}

.main-headline {
  letter-spacing: -1px;
  text-transform: uppercase;
  margin-top: 0;
  margin-bottom: 0.7rem;
  font-family: "01 Aeternus Nano Variable Vf", Impact, sans-serif;
  font-size: 6.5rem;
  font-weight: 500;
  line-height: 0.55;
}

.main-headline.banner {
  letter-spacing: 0;
  justify-content: center;
  align-self: stretch;
  margin-bottom: 0;
  padding-top: 0.9rem;
  padding-bottom: 0.9rem;
  font-size: 2rem;
  font-weight: 400;
  line-height: 0;
  display: flex;
}

.main-headline-title.left-mobile {
  flex-flow: column;
  align-items: center;
  display: flex;
}

.main-headline.tighter-mobile-newsletter {
  width: 100%;
  margin-bottom: 0;
  font-size: 4rem;
}

.main-headline.tighter-mobile-newsletter.instagram-link { width: 100%; }

.main-headline.hero-version { font-size: 10rem; }

.main-headline-title.left {
  justify-content: flex-start;
  align-self: flex-start;
}

.main-headline-title.hero { align-self: flex-start; }

.main-headline-container {
  z-index: 2;
  display: flex;
  flex-flow: column;
  flex: none;
  align-items: center;
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
}

.main-headline-container.centre { text-align: center; }
.main-headline-container.simple-white { color: var(--simple-white); }
.main-headline-container.french-puce { color: var(--french-puce); }

.main-headline-container.simple-white.relative,
.main-headline-container.french-puce.relative { position: relative; }

.main-headline-container.simple-white.centre { align-self: center; }

.main-headline-container.french-puce.relative {
  align-items: flex-start;
  padding-right: 7vw;
}

.main-headline-container.french-puce.relative.margin-left { padding-left: 7vw; }

.xoxo {
  letter-spacing: -0.15rem;
  cursor: default;
  font-family: Triple Shots, Arial, sans-serif;
  font-size: 4.5rem;
  line-height: 0.2;
  transform: rotate(7deg);
}

.instagram-follow {
  color: var(--french-puce);
  letter-spacing: 0.1rem;
  text-transform: uppercase;
  font-size: 0.9rem;
  font-weight: 700;
  text-decoration: none;
}

/* ------------------- */
/* --- Underlines ----- */
/* ------------------- */

.underline {
  width: 100%;
  height: 0.075em;
  transform: scaleX(0);
  transition: transform 200ms ease; 
  transform-origin: left;
}

.underline.simple-white {
  background-color: var(--simple-white); 
}

.underline.french-puce {
  background-color: var(--french-puce);
}

.underline-button.french-puce {
  color: var(--french-puce);
}

.underline-button {
  letter-spacing: 0.1em;
  text-transform: uppercase;
  flex-flow: column;
  flex: none;
  justify-content: center;
  align-self: center;
  align-items: center;
  font-size: 1rem;
  font-weight: 700;
  line-height: 100%;
  text-decoration: none;
  display: flex;
}

.underline-button.simple-white {
  color: var(--simple-white);
  align-self: center;
}

.underline-button.french-puce.smaller { font-size: 1.8vh; }

.underline-button.french-puce.smaller.left {
  align-self: flex-start;
}

.underline-container {
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-self: flex-end;
  grid-column-gap: 0.2rem;
  grid-row-gap: 0.2rem;
}

.underline-container.smaller { font-size: 0.8rem; }

.underline-button .underline {
  transform: scaleX(1);
  transform-origin: left;
  transition: transform 200ms ease;
}

.underline-button:hover .underline,
.underline-button:focus-visible .underline {
  transform: scaleX(0);
}

.underline-button:hover .small-arrow {
  animation: hover-nudge-loop 900ms ease-in-out infinite;
}

@keyframes hover-nudge-loop {
  0%   { transform: translateX(0); }
  50%  { transform: translateX(4px); }
  100% { transform: translateX(0); }
}

.footer-link:hover .underline,
.footer-link:focus-visible .underline {
  transform: scaleX(1);
}

.divider.horizontal {
  width: 100%;
  height: 0.075em;
  background-color: var(--simple-white);
}

/* ------------------- */
/* --- Section layout - */
/* ------------------- */

.section {
  display: flex;
  flex-flow: column;
  position: relative;
  overflow: hidden;
  background-color: var(--simple-white);
  padding: 4.5rem 7vw;
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
}

.section.category {
  background-color: var(--chocolate-hazelnut);
  padding-left: 7vw;
  padding-right: 7vw;
}

.category-text {
  font-size: 4.5rem;
  font-weight: 500;
  line-height: 0.5;
}

.lower-breakpoint { display: none; }

/* ------------------- */
/* --- Ad banner ------ */
/* ------------------- */

.ad-banner {
  z-index: 2;
  position: relative;
  overflow: hidden;
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  padding-top: 0.55vw;
  padding-bottom: 0.4vw;
  cursor: pointer;
  background-color: var(--abyssal-depths);
  color: var(--simple-white);
  background-image:
    linear-gradient(-90deg, 
      rgba(255, 255, 255, 0.06) 0%, 
      rgba(255, 255, 255, 0.00) 55%, 
      rgba(0, 0, 0, 0.10) 100%
    ), 
    linear-gradient(-180deg, 
      rgba(255, 255, 255, 0.03) 0%, 
      rgba(255, 255, 255, 0.00) 40%, 
      rgba(0, 0, 0, 0.08) 100%);
  background-repeat: no-repeat;
  background-size: cover;
}

.close-ad-banner {
  cursor: pointer;
  align-self: center;
  margin-right: 2.5vh;
  position: absolute;
  inset: 0% 0% 0% auto;
  background-color: transparent;
}

.close-ad-banner svg {
  transform: rotate(45deg);
}

.plus-icon.banner {
  color: var(--simple-white);
  width: 1.4rem;
  height: 1.4rem;
  overflow: hidden;
}

.logomark-banner {
  width: 1vh;
  height: 1vh;
  margin-bottom: 0.2%;
}

.banner-smaller-breakpoint {
  justify-content: flex-end;
  align-items: center;
  display: flex;
}

/* ------------------- */
/* --- Items grid ----- */
/* ------------------- */

.items-container.grid {
  display: grid;
  width: 100%;
  max-width: 100%;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
  flex-flow: wrap-reverse;
}

.item-link {
  color: var(--simple-white);
  width: 100%;
  text-decoration: none;
}

.item-link.full-size {
  width: 100%;
  overflow: hidden;
  aspect-ratio: 4 / 3;
}

.item-link.full-size:hover { color: var(--simple-white); }

.item-image-container {
  width: 100%;
  height: auto;
  position: relative;
}

.item-image-container.blog {
  aspect-ratio: 2.5 / 2.8;
  overflow: hidden;
}

.item-image-container.blog img {
  height: 100%;
  width: 100%;
}

.item-image-wrapper {
  height: 100%;
  width: 100%;
  display: flex;
  align-items: center;
}

.item-image.full-size {
  width: 100%;
  height: 100%;
}

/* image zoom */
.item-link .item-image {
  display: block;
  transform: scale(1);
  transition: transform 800ms ease;
}

.item-link .overlay {
  opacity: 0;
  pointer-events: none;
  transition: opacity 300ms ease;
}

.section.category .item-link:hover .item-image,
.item-link:focus-visible .item-image {
  transform: scale(1.06);
}

.item-link:hover .overlay,
.item-link:focus-visible .overlay {
  opacity: 1;
}

.item-margin {
  z-index: 2;
  cursor: pointer;
  margin: 3%;
  position: absolute;
  inset: 0%;
}

.category-name {
  letter-spacing: -1px;
  text-transform: uppercase;
  font-family: "01 Aeternus Nano Variable Vf", Impact, sans-serif;
  font-size: 4rem;
  font-weight: 500;
  line-height: 55%;
  position: absolute;
  inset: auto 0% 0% auto;
}

.item-info {
  display: flex;
  flex-flow: column;
  align-items: center;
  line-height: 1.2;
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
}

.item-info.left {
  display: flex;
  flex-flow: column;
  align-items: flex-start;
}

.item-info.right {
  justify-content: flex-end;
  align-items: flex-end;
}

.item-info.footer-option { align-items: flex-start; }

.item-name {
  letter-spacing: -0.5px;
  text-transform: uppercase;
  cursor: default;
  font-family: "01 Aeternus Nano Variable Vf", Impact, sans-serif;
  font-size: 2.7rem;
  font-weight: 600;
  line-height: 0.55;
}

.item-link.french-puce.left.main-product.centre .item-name {
  -webkit-line-clamp: 1;
  word-break: break-word;
  line-break: loose;
  text-overflow: ellipsis;
  overflow:hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
}

.item-name.footer-version {
  font-size: 2.5rem;
  font-weight: 500;
}

/* Out of Stock Swatches */
.product-colour.out-of-stock {
  position: relative;
  opacity: 0.4;
  cursor: not-allowed;
  pointer-events: none;
}
  
.ajax_add_to_cart.disabled {
  pointer-events: none !important;
  opacity: 0.5 !important;
  cursor: not-allowed !important;
}
  
.item-image {
  transition: filter 0.4s ease-out, opacity 0.4s ease-out;
}

/* ------------------- */
/* --- Events --- */
/* ------------------- */
.event-info {
  flex-flow: column;
  justify-content: space-between;
  align-items: flex-start;
  display: flex;
  position: absolute;
  inset: 0% 0% auto auto;
}

/* ------------------- */
/* --- Product modal */
/* ------------------- */

#product-modal .product-colours {
  position: relative;
}

.product-modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 999;
}

.product-modal-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
  backdrop-filter: blur(3px);
}

.product-modal-content {
  position: relative;
  background: var(--simple-white);
  color: var(--french-puce);
  max-width: 900px;
  margin: 50px auto;
  max-height: calc(100vh - 100px);
  overflow-y: auto;
  z-index: 10000;
}

.product-modal-close {
  position: absolute;
  top: 1rem;
  right: 1rem;
  background: var(--abyssal-depths);
  color: var(--simple-white);
  border: none;
  cursor: pointer;
  z-index: 10001;    
  width: 1.6rem;
  height: 1.6rem;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.3s;
  border: .08em solid var(--abyssal-depths);
  transition: all 0.3s ease;
}

.product-modal-close:hover {
  background: var(--simple-white);
  border-color: var(--abyssal-depths);
}

.product-modal-close:hover .plus-icon.banner svg,
.product-modal-close:hover .plus-icon.banner path {
  color: var(--abyssal-depths);
  fill: var(--abyssal-depths);
}

.product-modal-body {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
  padding: 1rem;
}

.product-modal-info {
  padding: 2rem 0;
  display: flex;
  flex-direction: column;
}

.product-modal-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.product-modal-image {
  height: 30rem;
  overflow: hidden;
  display: flex;
  align-items: center;
  align-content: center;
}

.product-modal-info h3 {
  font-size: 4rem;
  font-family: '01 Aeternus Nano Variable Vf';
  text-transform: uppercase;
  line-height: .55;
  font-weight: 500;
  letter-spacing: -1px;
}

#modal-add-to-cart[disabled],
#modal-add-to-cart.disabled {
  cursor: not-allowed;
  opacity: 0.6;
  pointer-events: none;
}

.modal-price {
  font-size: .9rem;
  font-weight: 600;
  margin: .7rem 0;
  letter-spacing: .1em;
}

#modal-product-variations {
  margin-bottom: 3vmin;
}

.variation-option {
  margin-top: .3rem;
  gap: .5rem;
  display: flex;
  flex-direction: column;
}

.variation-option label {
  display: block;
  font-family: 'Josefin Sans';
  font-weight: 700;
  text-transform: uppercase;
  font-size: .65rem;
  letter-spacing: .1em;
}

.variation-option select {
  width: 100%;
  height: 2.8rem;
  margin-top: .5rem;
  padding: 0 .5rem;
  border: .08em solid var(--french-puce);
  cursor: pointer;
  background-color: var(--simple-white);
}

.selected-variant-value {
  text-transform: capitalize;
  letter-spacing: normal;
  font-weight: 600;
  font-size: .8rem;
}

.modal-actions {
  display: flex;
  gap: .7rem;
  flex-direction: row;
}

.modal-view-product-btn {
  color var(--french-puce);
  font-weight: 700;
  text-transform: uppercase;
  font-size: .7rem;
  text-align: center;
  letter-spacing: 0.14em;
  margin-top: 1rem;
  padding: 1rem;
}

/* Swatch Overflow Indicator */
.swatch-overflow-indicator {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.8vmin;
  font-weight: 600;
  color: var(--french-puce);
  font-family: 'Josefin Sans', sans-serif;
  letter-spacing: 0.05em;
  padding-left: 0.5vmin;
}

.select-wrapper {
  position: relative;
  width: 100%;
}

/* Custom Arrow */
.select-wrapper::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 2.5vmin;
  width: 1.2vmin;
  height: 1.2vmin;
  background-color: transparent;
  border-right: 0.25vmin solid var(--french-puce);
  border-bottom: 0.25vmin solid var(--french-puce);
  transform: translateY(-75%) rotate(45deg);
  pointer-events: none;
  transition: transform 0.2s ease;
}

.select-wrapper.is-open::after {
  transform: translateY(-50%) rotate(-135deg);
}

/* Select Element Itself */
.variation-option select.variation-select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding-right: 5vmin; 
}

/* Sold out options */
.variation-select option.out-of-stock {
  color: #aaa;
}

@media screen and (max-width: 991px) {
  .product-modal-body {
    grid-template-columns: 1fr;
    padding: 1.5rem;
  }

  .modal-option-dropdown .sg-sort__trigger {
    height: 3.5rem !important;
    font-size: 1.2rem !important;
  }

  .modal-option-dropdown .sg-sort__option {
     font-size: 1.2rem;
  }

  .product-variant-headline, 
  .modal-product-title {
    font-size: 1.3rem !important;
  }
  
  .product-modal-content {
    margin: 3rem 8rem 3rem 8rem;
  }

  .product-modal-close .plus-icon.banner {
    display: flex;
    height: 2rem;
    width: 2rem;
  }

  .product-modal-image {
    height: 35rem;
    min-height: auto;
  } 

  .modal-view-product-btn {
    font-size: .8rem;
  }

  .product-modal-body {
    gap: 2rem;
  }

  .dropdown-menu {
    width: 100%;
  }

  .toast-content {
    width: 35rem;
    height: 65rem;
    grid-template-columns: auto;
    grid-template-rows: .7fr 1fr;
  }

  .popup-right {
    padding: 1.5rem;
  }

  .product-vendor-name {
    font-size: .95rem;
  }

  .close-toast {
    top: 1.5rem !important;
    right: 1.5rem !important;
    width: 2.5rem;
    height: 2.5rem;
  }

  .pop-up-text {
    margin-top: 1.2rem;
    font-size: 1rem;
  }

  .toast-content .contact-form {
    gap: 1.2rem;
  }

  .product-modal-close {
    width: 2.5rem;
    height: 2.5rem;
    top: 1.5rem;
    right: 1.5rem;
  }
  
  .variation-option select {
    height: 4.2rem;
  }

  .variation-option label {
    font-size: 2vmin;
  }

  .product-modal-info h3 {
    font-size: 5rem;
  }

  .modal-price {
    font-size: 1.3rem;
  }

  #modal-product-variations {
    margin-bottom: 5vmin;
  }

  .swatch-overflow-indicator {
    font-size: 2.5vmin;
  }
}

/* ------------------- */
/* --- Product card */
/* ------------------- */

.item-link.french-puce.left.main-product.centre {
  justify-content: space-between;
  align-items: center;
}

.item-link.french-puce.left {
  padding: .8rem;
  gap: 1.2rem;
  border-radius: .5rem;
  transition: background-color 0.2s ease, transform 0.2s ease;
}

.item-link.french-puce {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  color: var(--french-puce);
  text-align: center;
  flex-flow: column;
  align-items: center;
  display: flex;
}

.item-link.french-puce.left.event,
item-link.french-puce.left.blog {
 background-color: transparent;
}

.item-link.french-puce.left.event:hover {
  background-color: var(--mallow-root);
}

.item-link.french-puce.left.blog:hover {
  background-color: var(--cloudless);
  color: var(--abyssal-depths);
}

.item-link.french-puce.left.blog:hover svg {
 color: var(--abyssal-depths);
}

.item-link.french-puce.left.blog:hover .underline-button.french-puce {
    color: var(--abyssal-depths);
}

.item-link.french-puce.left.event:hover .underline, 
.item-link.french-puce.left.blog:hover .underline {
  transform: scaleX(0);
}

.item-link.french-puce.left.event:hover .small-arrow,
.item-link.french-puce.left.blog:hover .small-arrow {
  animation: hover-nudge-loop 900ms ease-in-out infinite;
}

@keyframes hover-nudge-loop {
  0%   { transform: translateX(0); }
  50%  { transform: translateX(4px); }
  100% { transform: translateX(0); }
}

@media (prefers-reduced-motion: reduce) {
  .item-link.french-puce.left.event:hover .small-arrow,
  .item-link.french-puce.left.blog:hover .small-arrow,
   { animation: none; }
}

.items-container.blog.horizontal-scroll.next {
  overflow: clip;
}

.article-date {
  letter-spacing: .1em;
  text-transform: uppercase;
  margin-top: .5rem;
  font-size: .7rem;
  font-weight: 700;
  line-height: 100%;
}

.product-variant-headline, 
.modal-product-title {
 font-size: .85rem;
 text-transform: none !important;
}

.product-image-stack {
  position: relative;
  height: 100%;
  width: 100%;
}

.product-image-stack .product-image-primary,
.product-image-stack .product-image-secondary {
  display: block;
  width: 100%;
  height: auto;
}

.product-image-stack.has-hover-image .product-image-primary,
.product-image-stack.has-hover-image .product-image-secondary {
  transition: opacity 220ms ease;
}

.product-image-stack .product-image-secondary {
  position: absolute;
  inset: 0;
  opacity: 0;
  pointer-events: none;
}

/* Only cards with metafield hover image get swap behavior */
.item-image-wrapper:hover .product-image-stack.has-hover-image .product-image-secondary,
.item-image-wrapper:focus-visible .product-image-stack.has-hover-image .product-image-secondary {
  opacity: 1;
}

.item-image-wrapper:hover .product-image-stack.has-hover-image .product-image-primary,
.item-image-wrapper:focus-visible .product-image-stack.has-hover-image .product-image-primary {
  opacity: 0;
}

.product-colours {
  grid-column-gap: .4rem;
  grid-row-gap: .4rem;
  display: flex;
  inset: auto auto 0% 0%;
  margin: 3%;
}

.product-header_layout .product-colours {
  margin: 0;
}

.main-product .product-colours {
  position: absolute;
  z-index: 3;
}

.product-modal-content .product-colours {
  margin: .5rem 0;  
}

.product-colour-outline {
  border: .04em solid rgb(0 0 0 / 31%);
  background-color: var(--simple-white);
  cursor: pointer;
  border-radius: .3rem;
  justify-content: center;
  justify-items: center;
  align-items: center;
  width: 1.6rem;
  height: 1.6rem;
  display: flex;
  transition: border-color 0.2s ease !important;
}

.product-colour-outline.is-selected {
  border: solid .05em var(--french-puce);
}

.main-product .product-colour-outline:hover {
  border: .06em solid rgb(69 22 9 / 39%) !important;
}

.product-colour-plus {
  width: 30%;
  height: 30%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--abyssal-depths);
  border: none;
  border-radius: 50%;
  cursor: pointer;
  padding: .55rem;
  font-size: 0.55rem;
  font-weight: 600;
  color: var(--simple-white);
  transition: all 0.2s ease;
}

.product-colour-plus span {
  padding-right: 1.5px;
  padding-top: 1px;
}

.product-colour-plus:hover {
  background: #0523639e;
  transform: scale(1.05);
}

.product-colour-outline.plus-indicator {
  border: none;
  padding-right: .4rem;
  border-color: transparent !important;
  background: transparent;
}

.product-colour-outline.plus-indicator:hover {
  border-color: transparent !important;
}

.checkmark {
  color: var(--simple-white);
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 60%;
  height: 60%;
  display: none;
  position: relative;
  inset: 0%;
}

.product-colour {
  border-radius: 10rem;
  justify-content: center;
  align-items: center;
  width: 80%;
  height: 80%;
  display: flex;
  cursor: pointer;
  justify-self: center;
  border: .07em solid rgba(0, 0, 0, 0.08);
  overflow: hidden;
}

.small-cap-title.bigger {
  font-size: .65rem;
}

.item-name.smaller {
  font-size: 2rem;
}

.item-name.smaller.left {
  text-align: left;
  cursor: pointer;
  width: 99%;
  height: auto;
  font-size: 2.5rem;
  line-height: .6;
}

.add-to-cart-container {
  width: 100%;
  overflow: hidden;
  position: relative;
}

.checkmark.active {
  display: block;
}

.item-tag {
  border: .08em solid var(--simple-white);
  background-color: var(--abyssal-depths);
  color: var(--simple-white);
  text-transform: uppercase;
  white-space: nowrap;
  background-image:
    radial-gradient(130% 140% at 10% 10%,
      #1a3f82 0%,
      #112a6b 38%,
      #0e2363 68%,
      #0a1a59 100%
    ),
    radial-gradient(120% 130% at 92% 92%,
      rgba(21, 52, 118, 0.55) 0%,
      rgba(10, 26, 89, 0.00) 62%
    );
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: .3rem;
  justify-content: center;
  align-items: center;
  padding: .45rem .7rem .35rem;
  font-weight: 700;
  display: flex;
  position: absolute;
  inset: 0% auto auto 0%;
}

[previous-button]:disabled,
[next-button]:disabled,
[previous-button][disabled],
[next-button][disabled] {
  opacity: 0.22;
  cursor: not-allowed;
  pointer-events: none;
  box-shadow: none;
  transform: none;
}

.event__date-badge {
  align-self: flex-end;
  margin-top: .3rem;
  border-radius: .2rem;
  border: .06em solid var(--simple-white);
  overflow: hidden;
  text-align: center;
}

.event__date-badge-top {
  background: var(--simple-white);
  font-weight: 700;
  font-size: .5rem;
  text-transform: uppercase;
  letter-spacing: .14em;
  padding: .2rem;
}

.event__date-badge-bottom {
  background: var(--abyssal-depths);
  color: var(--simple-white);
  padding: .3rem;
  font-size: .75rem;
  text-transform: uppercase;
  letter-spacing: .14em;
  font-weight: 700;
}

.event__date-month {
  font-size: .5rem;
}

.item-tag.event {
  border-color: var(--simple-white);
  background-color: var(--abyssal-depths);
  color: var(--simple-white);
  background-image: none;
  position: static;
  inset: auto auto 0% 0%;
}

.item-tag.blog {
  border-color: var(--french-puce);
  background-color: var(--mallow-root);
  color: var(--french-puce);
  background-image: none;
  position: static;
  inset: auto auto 0% 0%;
}

.small-cap-title {
  letter-spacing: .14em;
  text-transform: uppercase;
  font-size: .6rem;
  font-weight: 700;
  line-height: 100%;
}

.plus-icon-container{
  border: .08em solid var(--french-puce);
  color: var(--french-puce);
  border-radius: .25rem;
  justify-content: center;
  align-items: center;
  width: 1.6rem;
  height: 1.6rem;
  display: flex;
  position: absolute;
  z-index: 3;
  inset: auto 0% 0% auto;
  overflow: hidden;
  margin: 3%;

  /* base background stays constant */
  background: transparent;
  background-repeat: no-repeat;
  background-size: cover;

  transform: translateY(0);
  transition: transform 200ms ease;
}

/* overlay that can fade */
.plus-icon-container::before{
  content: "";
  position: absolute;
  inset: 0;
  background-color: var(--mallow-root);
  opacity: 0;
  transition: opacity 200ms ease 200ms;
  pointer-events: none;
}

.plus-icon { 
  color: inherit; 
  flex-flow: column; 
  justify-content: center; 
  align-items: center; 
  width: 75%; 
  height: 75%; 
  display: flex; 
  position: relative; 
  inset: 0%; 
}

.plus-icon-container > * {
  position: relative;
  z-index: 1;
}

.plus-icon-container {
  transition:
    transform 200ms ease 0ms,
    color 200ms ease 200ms,
    border-color 200ms ease 200ms;
}

.plus-icon-container:hover {
  transform: translateY(-5px);
  color: var(--french-puce);
  border-color: var(--french-puce);
}

.plus-icon-container:hover::before {
  opacity: 1;
}

.feature-container .item-image {
  aspect-ratio: 2.5 / 2.8;
  object-fit: cover;
  width: 100%;
}

.item-image-container.blog.space-after {
  margin-bottom: .5vw;
}

.price-tag {
  letter-spacing: .1em;
  font-size: .8rem;
  font-weight: 600;
  line-height: 100%;
  margin: 1rem 0 1rem 0;
  display: flex;
  flex-direction: row;
  gap: .5rem;
}

.outlined-button {
  border: .085em solid var(--french-puce);
  color: var(--french-puce);
   text-transform: uppercase;
  white-space: nowrap;
  cursor: pointer;
  justify-content: center;
  align-self: center;
  align-items: center;
  width: 100%;
  padding: 0 2.5rem;
  font-weight: 700;
  line-height: .8;
  display: flex;
  position: relative;
  overflow: hidden;
  height: 3.3rem;
}

.slider-blog {
  background-color: var(--mallow-root);
  align-self: center;
  width: 30vh;
  height: 1vh;
  display: none;
}

.slider-head-blog {
  background-color: var(--chocolate-hazelnut);
  width: 50%;
  height: 100%;
}

.slider {
  background-color: var(--mallow-root);
  justify-content: flex-start;
  align-self: flex-start;
  width: 18vw;
  height: .55rem;
  display: flex;
}

/* ------------------- */
/* --- Instagram embed */
/* ------------------- */

.instagram-embed {
  display: flex;
  flex-flow: column;
  position: relative;
  overflow: hidden;
  padding-top: 3rem;
  padding-bottom: 3rem;
  grid-column-gap: 1.2rem;
  grid-row-gap: 1.2rem;
}

.instagram-embed-title {
  display: flex;
  position: relative;
  white-space: nowrap;
  align-items: baseline;
  grid-column-gap: 1.2rem;
  grid-row-gap: 1.2rem;
}

/* ------------------- */
/* --- Hero ----------- */
/* ------------------- */

.hero-slider-container {
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100vw;
  min-height: 100svh;
  max-height: 100vh;
  position: relative;
}

.hero-section-container {
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100vw;
  position: relative;
}

.hero-section {
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100vw;
  min-height: 100svh;
  max-height: 100vh;
  position: relative;
  color: var(--simple-white);
}

.hero-section-background-image {
  height: 100%;
  position: absolute;
}

.hero-wrapper {
  display: flex;
  flex-flow: row;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  margin-top: 1vh;
  padding-left: 4vw;
  padding-right: 4vw;
}

/* Hero slider layout (replacement for Webflow's w-slider-mask/w-slide behavior) */
.hero-slider-container .slider-instance {
  position: relative;
  overflow: hidden;
  width: 100%;
}

.hero-slider-container .slider-track {
  display: flex;
  flex-wrap: nowrap;
  width: 100%;
  will-change: transform;
  transition: transform 0.6s ease; /* should match JS */
}

.hero-slider-container .slide {
  flex: 0 0 100%;
  width: 100%;
}

.hero-slider-container .hero-section > picture {
  width: 100%;
  height: 100%;
  display: inline-flex;
  position: absolute;
}

.hero-content {
  z-index: 3;
  display: flex;
  flex-flow: column;
  position: relative;
  align-self: flex-start;
  align-items: flex-start;
  grid-column-gap: 2.5rem;
  grid-row-gap: 2.5rem;
}

.button-container { cursor: pointer; display: flex; }
.button-container.no-show-desktop { display: none; }

.button-container.centre {
  justify-content: center;
  align-self: center;
  margin-top: 2rem;
}

.button-container.centre .standard-button {
  padding: 0 7vw;
}

.sub-title.hero-version { width: 35ch; font-size: 1rem; }

/* ------------------- */
/* --- Buttons -------- */
/* ------------------- */

.standard-button,
.outlined-button-hero,
.submit-button-container {
  height: 3.3rem;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  position: relative;
  overflow: hidden;
}

.standard-button .button-text,
.outlined-button-hero .button-text,
.submit-button {
  position: relative;
  z-index: 3;
  transition: color 250ms ease;
}

.standard-button .button-fill,
.outlined-button-hero .button-fill,
.submit-button-container .button-fill,
.add-to-cart-container .button-fill,
.pricing-card__button .button-fill,
.mini-cart_full .outlined-button .button-fill,
.cart_table .outlined-button .button-fill {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  transform: translateY(100%);
  transition: transform 250ms ease;
}

/* base button text */
.button-text {
  z-index: 3;
  letter-spacing: 0.15rem;
  text-transform: uppercase;
  margin-bottom: -1%;
  font-size: 0.8rem;
  font-weight: 700;
  line-height: 0.8;
  white-space: nowrap;
  transition: color 250ms ease;
}

.bp-root .button-text {
  margin-bottom: 0 !important;
}

.standard-button:hover .button-fill,
.standard-button:focus-visible .button-fill,
.standard-button:focus-within .button-fill,
.outlined-button-hero:hover .button-fill,
.outlined-button-hero:focus-visible .button-fill,
.outlined-button-hero:focus-within .button-fill,
.submit-button-container:hover .button-fill,
.submit-button-container:focus-within .button-fill,
.add-to-cart-container:hover .button-fill,
.add-to-cart-container:focus-visible .button-fill,
.add-to-cart-container:focus-within .button-fill,
.pricing-card__button:hover .button-fill,
.pricing-card__button:focus-visible .button-fill,
.pricing-card__button:focus-within .button-fill,
.mini-cart_full .outlined-button:hover .button-fill,
.mini-cart_full .outlined-button:focus-visible .button-fill,
.mini-cart_full .outlined-button:focus-within .button-fill,
.cart_table .outlined-button:hover .button-fill,
.cart_table .outlined-button:focus-visible .button-fill,
.cart_table .outlined-button:focus-within .button-fill {
  transform: translateY(0);
}

.cart_table .outlined-button:hover .button-text,
.cart_table .outlined-button:focus-visible .button-text,
.cart_table .outlined-button:focus-within .button-text {
  color: var(--simple-white);
}

/* outlined hero button */
.outlined-button-hero {
  border: 0.1em solid var(--simple-white);
  border-color: var(--simple-white);
  background-color: transparent;
  color: var(--simple-white);
  padding: 0 2.5rem;
}

/* standard button variants */
.standard-button.french-puce {
  border: 0.1em solid var(--french-puce);
  border-color: var(--french-puce);
  background-color: var(--french-puce);
  color: var(--simple-white);
}

.standard-button.french-puce.shorter {
  padding-left: 3rem;
  padding-right: 3rem;
}

.standard-button.french-puce:hover .button-text,
.standard-button.french-puce:focus-visible .button-text,
.standard-button.french-puce:focus-within .button-text {
  color: var(--french-puce);
}

.standard-button.abyssal-depths {
  border: 0.1em solid var(--abyssal-depths);
  border-color: var(--abyssal-depths);
  background-color: var(--abyssal-depths);
  color: var(--simple-white);
}

.standard-button.max-width-full.pointer-events-off {
  border: .08em solid rgb(0 0 0 / 25%);
  color: var(--french-puce);
  letter-spacing: 0.15rem;
  text-transform: uppercase;
  margin-bottom: -1%;
  font-size: 0.8rem;
  font-weight: 700;
  line-height: 0.8;
  white-space: nowrap;
  width: 100%;
  background: transparent;
}

/* fill color helpers */
.button-fill { background-color: var(--french-puce); width: 101%; height: 101%; }
.button-fill.simple-white { background-color: var(--simple-white); }

/* submit */
.submit-button-container {
  border: 0.1em solid var(--abyssal-depths);
  background-color: var(--abyssal-depths);
  color: var(--simple-white);
  cursor: pointer;
  margin-bottom: -1%;
}

.submit-button {
  z-index: 3;
  letter-spacing: 0.15rem;
  text-transform: uppercase;
  vertical-align: middle;
  background-color: transparent;
  margin-bottom: -1%;
  padding: 1rem 2rem;
  font-size: 0.8rem;
  font-weight: 700;
  line-height: 0.8;
  height: 100%;
}

.submit-button-container .submit-button { transition: transform 250ms ease; }
.submit-button-container:hover .submit-button { color: var(--abyssal-depths); }

.button-container .standard-button.abyssal-depths { transition: transform 250ms ease; }
.button-container:hover .standard-button.abyssal-depths { color: var(--abyssal-depths); }

.add-to-cart-container .button-text { transition: transform 250ms ease; }
.add-to-cart-container:hover .button-text { color: var(--simple-white); }

/* ------------------- */
/* --- Slider (generic) */
/* ------------------- */

.slider-instance {
  width: 100vw;
  min-height: 100svh;
  max-height: 100vh;
  display: flex;
  position: relative;
  overflow: clip;
}

.slider-instance.v2 {
  background-color: transparent;
  align-self: center;
  height: 22rem;
  min-height: auto;
  max-height: none;
}

.slider-instance.v2 .slider-track {
  display: flex;
  flex-wrap: nowrap;
  will-change: transform;
  transition: transform 450ms ease;
}

.slider-instance.v2 .slide {
  flex: 0 0 100%;
  width: 100%;
}

.slide {
  width: 100%;
  height: 100%;
  display: inline-block;
  position: relative;
  vertical-align: top;
  white-space: normal;
  align-self: center;
}

/* ------------------- */
/* --- Filters -------- */
/* ------------------- */

.filter_empty {
  background-color: var(--mallow-root);
  text-align: center;
  padding: 2.9rem;
  border: 1px solid var(--soft-border);
}

.filter_heading {
  font-family: '01 Aeternus Nano Variable Vf';
  font-size: 4rem;
  font-weight: 500;
  line-height: .55;
  letter-spacing: -1px;
  text-transform: uppercase;
}

.filter_results-text {
  font-size: .8rem;
  opacity: .75;
}


/* ------------------- */
/* --- Headings -------- */
/* ------------------- */

.heading-style-h5 {
  font-size: 3rem;
  line-height: .55;
  text-transform: uppercase;
  letter-spacing: -1px;
  font-family: '01 Aeternus Nano Variable Vf';
  font-weight: 600;
}

/* ------------------- */
/* --- Reviews -------- */
/* ------------------- */

.review-section {
  background-color: var(--abyssal-depths);
  background-image:
    radial-gradient(130% 140% at 10% 10%,
      #1a3f82 0%,
      #112a6b 38%,
      #0e2363 68%,
      #0a1a59 100%
    ),
    radial-gradient(120% 130% at 92% 92%,
      rgba(21, 52, 118, 0.55) 0%,
      rgba(10, 26, 89, 0.00) 62%
    );
  background-repeat: repeat;
  background-size: cover;
  justify-content: center;
  width: 100vw;
  height: 22rem;
  min-height: auto;
  padding-left: 7vw;
  padding-right: 7vw;
  display: flex;
  position: relative;
  overflow: visible;
}

.review {
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100vw;
  height: 22rem;
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
  color: var(--simple-white);
  grid-column-gap: 1.2rem;
  grid-row-gap: 1.2rem;
}

.stars-container {
  display: flex;
  align-items: center;
  grid-column-gap: 0.4rem;
  grid-row-gap: 0.4rem;
}

.star {
  color: var(--simple-white);
  width: 0.7rem;
  height: 0.7rem;
}

.review-text {
  text-align: center;
  width: 50%;
  font-family: Josefin Sans, Verdana, sans-serif;
  font-size: 1.3rem;
  font-weight: 400;
  justify-content: center;
}

.review-title {
  text-align: center;
  text-transform: uppercase;
  font-family: "01 Aeternus Nano Variable Vf", Impact, sans-serif;
  font-size: 3rem;
  font-style: italic;
  font-weight: 500;
  line-height: 0.8;
}

.selector-container {
  z-index: 3;
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-self: flex-end;
  align-items: center;
  height: 100%;
  margin-right: 4rem;
  position: absolute;
  inset: 0% 0% 0% auto;
}

.selector-wrapper {
  display: flex;
  flex-flow: column;
  align-self: flex-end;
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
}

.selector-dot-wrapper {
  flex: none;
  display: flex;
  justify-content: center;
  align-self: center;
  align-items: center;
  width: 1.3rem;
  height: 1.3rem;
  position: relative;
}

.progress-circle {
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.progress-ring {
  z-index: 1;
  color: #ffffff6b;
  cursor: pointer;
  border: 0.1em solid transparent;
  border-radius: 10rem;
  justify-content: center;
  align-self: center;
  align-items: center;
  width: 0.95rem;
  height: 0.95rem;
  position: relative;
  inset: 0%;
}

.selector {
  z-index: 2;
  border: 0.11em solid var(--simple-white);
  color: var(--simple-white);
  cursor: pointer;
  background-color: transparent;
  transition: background-color 0.3s ease;
  border-radius: 10rem;
  justify-content: center;
  align-self: center;
  align-items: center;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.selector.active { background-color: var(--simple-white); }

.review-background {
  opacity: 0.02;
  color: var(--simple-white);
  mix-blend-mode: normal;
  width: 150rem;
  position: absolute;
  inset: -15% 0% 0% -10%;
}

.progress-bg {
  fill: none;
  stroke: rgba(255, 255, 255, 0.2);
}

.progress-fg {
  stroke: var(--simple-white);
  fill: none;
  stroke-dasharray: 44;
  stroke-dashoffset: 44;
  transform: rotate(-90deg);
  transform-origin: 50% 50%;
  transition: stroke-dashoffset 0s, opacity 0.3s ease;
  opacity: 1;
}

/* ------------------- */
/* --- Footer --------- */
/* ------------------- */

.footer {
  display: flex;
  flex-flow: column;
  overflow: hidden;
  background-color: var(--abyssal-depths);
  color: var(--simple-white);
  padding-top: 2.5rem;
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
}

.footer-link {
  display: flex;
  flex-flow: column;
  gap: 0.3rem;
  justify-content: center;
  align-items: flex-end;
  font-size: 0.85rem;
  line-height: 1;
  text-decoration: none;
  text-transform: none;
  color: var(--simple-white);
}

.footer-link.social { transition: opacity 0.2s; }
.footer-link.social:hover { opacity: 0.6; }

.top-part {
  justify-content: space-between;
  padding-left: 7vw;
  padding-right: 7vw;
  display: flex;
}

.social-links {
  display: flex;
  justify-content: flex-end;
  grid-column-gap: 0.7rem;
  grid-row-gap: 0.7rem;
}

.social-link { width: 1.1rem; height: 1.1rem; }

.footer-accordion-spacer { height: 0; }

.footer-separator {
  width: 100%;
  transform: scaleX(1);
  height: 0.075em;
  background-color: var(--simple-white);
  display: none;
}

.footer-payment-badges {
  display: flex;
  flex-wrap: wrap;
  gap: .6rem;
  align-items: center;
  justify-content: flex-end;
  flex-direction: row;
}

.footer-payment-badge {
  width: 1.3em;
  height: auto;
  display: block;
  border-radius: .2rem;
  border: 1px solid var(--soft-border);
  background: var(--simple-white);
}

.bottom-part {
  background-image: 
    linear-gradient(-90deg, 
    rgba(255, 255, 255, 0.06) 0%, 
    rgba(255, 255, 255, 0.00) 55%, 
    rgba(0, 0, 0, 0.10) 100%
    ), 
    linear-gradient(-180deg, 
    rgba(255, 255, 255, 0.03) 0%, 
    rgba(255, 255, 255, 0.00) 40%, 
    rgba(0, 0, 0, 0.08) 100%);
  background-repeat: no-repeat;
  background-size: cover;
  display: flex;
  flex-flow: column;
  justify-content: space-between;
  align-items: flex-end;
  width: 100%;
  line-height: 100%;
}

.logo-footer { width: 13rem; }

.home-link-footer {
  color: var(--simple-white);
  display: flex;
  flex-flow: row;
  justify-content: flex-end;
  align-items: flex-end;
}

.copyright {
  color: var(--simple-white);
  text-align: right;
  letter-spacing: 0.14rem;
  text-transform: uppercase;
  white-space: nowrap;
  cursor: default;
  background-color: transparent;
  align-self: flex-end;
  margin-bottom: 0;
  font-size: 0.7vw;
  font-weight: 700;
}

.small-print {
  color: var(--simple-white);
  letter-spacing: 0.15vw;
  text-transform: uppercase;
  white-space: nowrap;
  align-self: flex-end;
  font-size: 0.7vw;
  font-weight: 700;
  text-decoration: none;
  display: flex;
}

.bottom-right {
  display: flex;
  flex-flow: row;
  justify-content: space-between;
  width: 100%;
  padding: 1vw 7vw 0.5vw;
  grid-column-gap: 2vw;
  grid-row-gap: 2vw;
}

.last-line {
  color: var(--simple-white);
  justify-content: space-between;
  align-self: flex-start;
  display: flex;
}

.right-side {
  display: flex;
  flex-flow: row;
  justify-content: space-between;
  grid-column-gap: 1.5vw;
  grid-row-gap: 1.5vw;
}

.plus-wrapper { margin-bottom: 1rem; }
.plus-wrapper.no-space { margin-bottom: 0; }

.wrapper-footer-link {
  display: flex;
  flex-flow: column;
  align-items: flex-start;
  grid-column-gap: 1.2rem;
  grid-row-gap: 1.2rem;
}

.arrow-down { width: 2vh; height: 2vh; }
.arrow-down-container { display: none; }

.divider {
  background-color: var(--simple-white);
  align-self: stretch;
  width: 0.12vw;
  height: 70%;
}

.small-logo {
  align-self: center;
  width: 1.5vw;
  height: 1.5vw;
}

.small-logo.smaller {
  width: 1vw;
  height: 1vw;
  position: relative;
  top: -1px;
}

/* ------------------- */
/* --- Feature banner - */
/* ------------------- */

.feature-banner {
  color: var(--french-puce);
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  display: flex;
  flex-flow: column;
  justify-content: space-between;
  align-items: flex-start;
  width: 100%;
  height: 20rem;
  position: relative;
  overflow: clip;
}

.feature-banner.story { padding: 3rem 0; height: auto; }

.feature-banner-background-image {
  object-fit: cover;
  max-width: 100%;
  height: 100%;
  display: inline-block;
}

.feature-banner.newsletter {
  justify-content: center;
  align-items: center;
  height: auto;
  padding-top: 3vw;
  padding-bottom: 3vw;
  overflow: hidden;
}

.feature-banner.newsletter .newsletter-image.is-991 { display: none; }

.feature-banner-background-image.newsletter-image { position: absolute; }

.copy-container {
  display: flex;
  flex-flow: column;
  flex: none;
  justify-content: center;
  align-self: stretch;
  align-items: flex-start;
  padding: 5vw 7vw;
  position: absolute;
  inset: 0% auto 0% 0%;
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
}

.copy-container.chocolate-hazelnut {
  z-index: 3;
  background-color: var(--chocolate-hazelnut);
  cursor: default;
  width: 50vw;
  margin-left: 7vw;
  padding: 4rem 3rem 4rem 3rem;
  position: relative;
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
}

.copy-container.relative {
  z-index: 3;
  align-self: flex-start;
  padding-top: 0;
  padding-bottom: 0;
  position: relative;
  grid-column-gap: 1.5vw;
  grid-row-gap: 1.5vw;
}

.copy-container.relative.instagram {
  padding-left: 7vw;
  padding-right: 7vw;
  grid-column-gap: 1vw;
  grid-row-gap: 1vw;
}

.link-container {
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  grid-column-gap: 0.7vw;
  grid-row-gap: 0.7vw;
}

.small-arrow {
  align-self: center;
  width: 0.9rem;
  height: 100%;
  transform: translateX(0);
  will-change: transform;
}

.background-video {
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
}

/* ------------------- */
/* --- Overlays ------- */
/* ------------------- */

.overlay {
  z-index: 2;
  background-color: var(--overlay-image);
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.overlay.black { background-color: var(--overlay-image-black); }

/* ------------------- */
/* --- Forms ---------- */
/* ------------------- */

.subcribe-block { margin-bottom: 0; }
.w-form { margin: 0 0 15px; }

.suscribe {
  display: flex;
  cursor: default;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  grid-column-gap: 3vh;
  grid-row-gap: 3vh;
}

.product-header_layout .sg-sort__trigger {
  height: 3.3rem !important;
}

.subcribe-container {
  display: flex;
  flex-flow: column;
  width: 70%;
}

.text-field {
  border: 0.085em solid var(--simple-white);
  color: var(--simple-white);
  background-color: transparent;
  margin-bottom: 0.5rem;
  padding: 0 0.8rem;
  font-size: 0.9rem;
  height: 3.3rem;
}

.text-field:focus {
  border-color: var(--abyssal-depths);
  background-color: var(--simple-white);
  color: var(--abyssal-depths);
}

.text-field::placeholder { color: var(--simple-white); }

.print-text-subcribe {
  color: var(--simple-white);
  justify-content: flex-start;
  align-items: flex-start;
  width: 65%;
  margin-bottom: 0;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.5;
  text-decoration: none;
}

.custom-toast .print-text-subcribe {
  width: 85%;
}

.terms-and-conditions {
  white-space: nowrap;
  text-decoration: underline;
}

.contact-form {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 0.85rem;
}
/* ------------------- */
/* --- Breakpoints --- */
/* ------------------- */

/* <= 991px */
@media (max-width: 991px) {
  body { font-size: 1.4rem; }

  .feature-container.event, .feature-container.event.less-space { grid-column-gap: 3.5rem; grid-row-gap: 3.5rem; }

  .section.horizontal-tablet { padding-left: 0; padding-right: 0; }

  .navigation.no-show-tablet { display: none; }

  .item-link.french-puce.left.main-product.centre { justify-content: space-between; }

  .section { grid-column-gap: 4rem; grid-row-gap: 4rem; padding-top: 6rem; padding-bottom: 6rem; }

  .item-link.french-puce.left.main-product { grid-column-gap: 2rem; grid-row-gap: 2rem; width: 30vh; }

  .price-tag { margin: 0 0 0 0; }

  .item-link.french-puce.left { grid-column-gap: 2rem; grid-row-gap: 2rem; padding: 0; }

  .items-container.blog.horizontal-scroll { width: auto; }

  .item-link.french-puce.left.blog:hover {
    background-color: transparent;
    color: var(--french-puce);
  }

  .item-link.french-puce.left.blog:hover svg {
    color: var(--french-puce);
  }

  .item-link.french-puce.left.blog:hover .underline-button.french-puce {
    color: var(--french-puce);
  }

  .main-headline-title.relative {
    flex-flow: column;
    align-items: center;
    display: flex;
  }

  .menu {
    align-self: center;
    margin-left: 1.5rem;
    display: block;
    position: relative;
    overflow: hidden;
  }

  .cart-count {
    height: 1.6rem;
    width: 1.6rem;
    font-size: 1.1rem;
  }

  .nav-links { display: none; }

  .logo-back { width: 15rem; }

  .navbar-icon-right { vertical-align: baseline; width: 2.7rem; height: 2.7rem; }

  .menu-bars {
    vertical-align: bottom;
    cursor: pointer;
    width: 3.7rem;
    height: 3.7rem;
    position: relative;
  }

  .nav-bar {
    border-bottom-width: .14em;
    padding: 1.5rem 7vw;
  }

  .horizontal-scroll-container {
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
    justify-content: flex-start;
    padding-left: 7vw;
    padding-right: 7vw;
    overflow: auto;
  }

  [move-item] { position: relative; opacity: 1; pointer-events: auto; }

  .sub-title { font-size: 1.4rem; }

  .items-container {
    display: flex;
    flex-direction: row;
  }

  .items-container.blog {
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
    flex-flow: row;
    overflow: auto;
  }

  .button-container.centre { margin-top: 1rem; }

  .item-link.french-puce.left.event .underline-container.smaller,
  .item-link.french-puce.left.blog .underline-container.smaller
   { font-size: .9rem; }

  .item-link.french-puce.left.event:hover {
    background-color: transparent;
  }

  .item-link.french-puce.left.blog:hover {
    background-color: transparent;
  }

  .main-headline-container.french-puce.centre.horizontal-tablet { padding-left: 7vw; padding-right: 7vw; gap: 2rem; }
  
  .main-headline.tighter-mobile-newsletter.instagram-link { font-size: 7rem; }

  .copy-container { gap: 2rem; }

  .feature-banner { height: 43rem; }

  .underline-container.smaller { font-size: 1.1rem; }

  .small-arrow { width: 1.1rem; }

  .accordion-item {
    flex-flow: column;
    justify-content: space-between;
    align-items: stretch;
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
    display: flex;
  }

  .link-container { gap: 0.6rem; }

  .dropdown-menu-wrapper {
    grid-column-gap: 6vh;
    grid-row-gap: 1vh;
    align-self: stretch;
    width: 100%;
  }

  .lower-breakpoint { display: flex; width: 100%; }
  .desktop { display: none; }
  .plus-icon.banner { display: none; }
  .outlined-button-hero { display: none; }
  .button-container.no-show-desktop { display: flex; }

  .main-headline.hero-version { font-size: 10rem; }

  .selector { border: 0.1em solid var(--simple-white); }

  .hero-wrapper { padding-left: 7vw; padding-right: 7vw; margin-top: -15vh; }

  .small-cap-title.bigger { font-size: 1rem; }

  .product-colour-outline { width: 2.5rem; height: 2.5rem; }

  .product-colours { grid-column-gap: .7rem; grid-row-gap: .7rem; }

  .item-link french-puce left main-product centre { grid-column-gap: 1.2rem; grid-row-gap: 1.2rem; }

  .plus-icon-container { width: 2.5rem; height: 2.5rem; }

  .price-tag { font-size: 1.15rem; }

  .item-link.french-puce.left.main-product.centre .item-image-wrapper { aspect-ratio: 3 / 3.2; }

  .sub-title.hero-version { width: 30ch; font-size: 1.4rem; }

  .sub-title.even-tighter.bundle { width: 23ch; font-size: 1.4rem; }

  .standard-button { padding: 1rem 5rem; height: 5rem; }

  .standard-button.max-width-full.pointer-events-off { letter-spacing: 0.2rem; font-size: 1.1rem; }

  .outlined-button { height: 4.5rem; border: .08em solid var(--french-puce); }

  .item-name.smaller { font-size: 3.5rem; }

  .standard-button.french-puce { border: 0.15em solid var(--french-puce); }

  .standard-button.french-puce.shorter { padding-left: 5rem; padding-right: 5rem; }

  .main-headline.even-tighter { width: 80%; }

  .button-text { letter-spacing: 0.2rem; font-size: 1.1rem; }

  .main-headline-title.left.modified { align-self: center; }

  .review-section,
  .slider-instance.v2,
  .review { height: 28rem; }

  .review { gap: 1.8rem; }

  .review-text { width: 70%; font-size: 1.8rem; }

  .review-title { font-size: 4rem; }

  .stars-container { gap: 0.6rem; }

  .star { width: 1.2rem; height: 1.2rem; }

  .copy-container.chocolate-hazelnut {
    width: 70vw;
    padding-top: 3rem;
    padding-bottom: 3rem;
    padding-left: 3rem;
    padding-right: 3rem;
    gap: 3rem;
  }

  .feature-banner.story { padding: 5rem 0; }

  .body-copy { font-size: 1.6rem; }

  .review-background { width: 185rem; }

  .selector-container { margin-right: 2.8rem; }

  .selector-dot-wrapper { width: 1.9rem; height: 1.9rem; }

  .items-container.grid {
    grid-template-columns: 1fr 1fr;
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
  }

  .item-link.french-puce.left { width: 30vh; }

  .item-name.smaller.left { font-size: 3.5rem; }

  .small-cap-title { font-size: .7rem; }

  .sub-title.smaller {  font-size: 1.2rem; }

  .button-container.centre { width: 100%; padding-left: 7vw; padding-right: 7vw; }

  .button-container.centre .standard-button { width: 100%; }

  .item-image-container.blog { aspect-ratio: 3 / 3.2; }

  .category-text { font-size: 4rem; }

  .selector-wrapper { gap: 1.5rem; }

  .progress-ring {
    border: 0.2em solid transparent;
    width: 1.75rem;
    height: 1.75rem;
  }

  .article-date { font-size: .9rem; margin-bottom: 1.2rem; }

  .slider-blog { margin-top: 2vh; display: block; }

  .underline-button { letter-spacing: 0.2em; font-size: 1.25rem; }

  .xoxo { font-size: 8rem; }

  .instagram-follow { font-size: 1.3rem; }

  .instagram-embed-title { gap: 2rem; }

  .main-headline-container.french-puce.relative.margin-left.modified {
    text-align: center;
    align-self: center;
    align-items: center;
  }

  .heading-style-h5 { font-size: 4rem; }

  .filter_empty { padding: 5rem; }

  .footer-separator { display: block; }

  .feature-banner.newsletter .newsletter-image.is-desktop { display: none; }
  .feature-banner.newsletter .newsletter-image.is-991 { display: block; }

  .item-info.right {
    gap: 2.5vh;
    align-self: flex-end;
    margin-top: 3rem;
    padding-left: 7vw;
    padding-right: 7vw;
  }

  .item-info.footer-option {
    gap: 0;
    width: 100%;
    padding-left: 7vw;
    padding-right: 7vw;
  }

  .product-modal-info {
    padding: 0 0;
  }

  .item-name.footer-version { font-size: 4.2rem; }

  .suscribe { flex-flow: column; }

  .feature-banner.newsletter { padding-top: 3rem; padding-bottom: 3rem; }

  .text-field.newsletter-version { width: 100%; }

  .contact-form { flex-direction: column; }

  .subcribe-container { width: 100%; }

  .main-headline.tighter-mobile-newsletter { font-size: 5.5rem; }

  .text-field {
    border: 0.1em solid var(--simple-white);
    margin-bottom: 1rem;
    padding: 0 2rem;
    font-size: 1.55rem;
    height: 5rem;
  }

  .submit-button-container { border: 0.1em solid var(--abyssal-depths); height: 5rem; }

  .print-text-subcribe { font-size: 1.3rem; }

  .submit-button {
    letter-spacing: 0.2rem;
    padding: 1rem 5rem;
    font-size: 1.1rem;
  }

  .footer {
    gap: 4.5vh;
    padding-top: 1vh;
  }

  .footer-link { gap: 0.5vh; font-size: 1.5rem; }

  .top-part {
    flex-flow: column;
    padding-left: 0;
    padding-right: 0;
    gap: 0;
  }

  .social-link { width: 1.8rem; height: 1.8rem; }

  .social-links {
    gap: 1.5rem;
    justify-content: flex-end;
    align-self: flex-end;
    width: 100%;
  }

  .bottom-part {
    background-position: 0 0;
    align-self: flex-start;
    align-items: flex-start;
  }

  .logo-footer { width: 20rem; }

  .copyright,
  .small-print {
    letter-spacing: 0.25vh;
    font-size: 1.3vh;
  }

  .accordion-title {
    flex: none;
    align-self: flex-start;
    font-size: 1.3rem;
  }

  .plus-icon.menu-version {
    display: flex;
    transform: rotate(45deg);
  }

  .copyright {
    text-align: left;
    order: 1;
    align-self: flex-start;
  }

  .bottom-right {
    flex-flow: column;
    align-self: flex-start;
    align-items: flex-start;
    padding-top: 2vh;
    padding-bottom: 1.4vh;
    gap: 1vh;
  }

  .item-link.french-puce.left.event .item-info,
  .item-link.french-puce.left.blog .item-info 
    { grid-column-gap: 0; grid-row-gap: 0; }

  .last-line {
    flex-flow: column;
    align-self: flex-start;
    align-items: flex-start;
    gap: 2vh;
  }

  .right-side {
    flex-flow: row;
    justify-content: space-between;
    align-items: flex-start;
    gap: 2vh;
  }

  .plus-wrapper {
    display: flex;
    justify-content: space-between;
    width: 100%;
    margin-top: 2.5rem;
    margin-bottom: 2.5rem;
  }

  .plus-wrapper.no-space { margin-top: 0; }

  .wrapper-footer-link {
    display: flex;
    flex-flow: column;
    gap: 2.5rem;
    max-height: 0;
    overflow: hidden;
    transition: max-height 250ms ease;
  }

  .footer-accordion-spacer { height: 6rem; }

  .item-info.footer-option.is-open .wrapper-footer-link { max-height: 1000px; }

  .arrow-down { width: 2vh; height: 2vh; }

  .arrow-down-container {
    display: flex;
    justify-content: center;
    align-items: center;
    transform: rotate(0deg);
    transform-origin: 50% 50%;
  }

  .item-info.footer-option.is-open .arrow-down-container { transform: rotate(180deg); }

  .divider {
    display: flex;
    align-self: center;
    width: 0.19vh;
    height: 1.3vh;
  }

  .small-logo {
    flex: none;
    align-self: center;
    width: 2vh;
    height: 2vh;
  }

  .small-logo.smaller { width: 1.6vh; height: 1.6vh; }

  .subcribe-block { margin-top: 0.5rem; }

  .ad-banner { padding-top: 0; padding-bottom: 0; }

  .ad-marquee { width: 100%; overflow: hidden; }

  .ad-marquee__track {
    display: flex;
    width: max-content;
    will-change: transform;
    gap: 1rem;
    animation: adMarquee 100s linear infinite;
  }

  .ad-marquee__item {
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
    flex: 0 0 auto;
    gap: 0.8rem;
  }

  .main-headline.banner { white-space: nowrap; line-height: 0.5; font-size: 2.5rem; }

  .hero-section-background-image { object-position: 70% center; }

  .hero-slider-container,
  .slider-instance {
    min-height: 90svh;
    max-height: 90vh;
  }

  @keyframes adMarquee {
    from { transform: translateX(0); }
    to { transform: translateX(-50%); }
  }

  @media (prefers-reduced-motion: reduce) {
    .ad-marquee__track { animation: none; }
  }
}

/* <= 767px */
@media (max-width: 767px) {
  body { font-size: 1.15rem; }

  .item-name.footer-version { font-size: 2.8rem; }

  .feature-banner { height: 32rem; }

  .main-headline { font-size: 5rem; }

  .event-card__title { font-size: 4rem; }

  .sub-title.even-tighter.bundle { width: 25ch; font-size: 1rem; }

  .review-text { font-size: 1.3rem; }

  .category-text { font-size: 3.2rem; }

  .star { width: 0.85rem; height: 0.85rem; }

  .product-colours { grid-column-gap: .5rem; grid-row-gap: .5rem; }

  .product-colour-outline { width: 1.8rem; height: 1.8rem; }

  .review-title { font-size: 3rem; }

  .body-copy { font-size: 1.1rem; }

  .copy-container.chocolate-hazelnut {
    width: auto;
    margin-left: 3rem;
    margin-right: 3rem;
    padding-top: 3rem;
    padding-bottom: 3rem;
  }

  .heading-style-h5 { font-size: 3rem; }

  .filter_empty { padding: 4rem; }

  .cart-count { height:1.4rem; width:1.4rem; font-size: .85rem; }

  .logo-back { width: 12rem; }

  .item-name.smaller.left { font-size: 3rem; }

  .sub-title.smaller { font-size: 1rem; }

  .product-variant-headline, .modal-product-title {
    font-size: 1rem !important;
  }

  .modal-option-dropdown .sg-sort__trigger {
    height: 3.5rem !important;
    font-size: 1rem !important;
  }

  .toast-content {
    width: 25rem;
    height: 40rem;
    grid-template-columns: auto;
    grid-template-rows: .9fr 1fr;
  }

  .pop-up-text {
    margin-top: 1rem;
    font-size: .7rem;
  }

  .text-field.pop-up {
    font-size: 1rem;
  }

  .close-toast {
    width: 2.3rem;
    height: 2.3rem;
    top: 1.2rem !important;
    right: 1.2rem !important;
  }

  .popup-right {
    padding: 1.2rem;
  }

  .product-vendor-name {
    font-size: .7rem;
  }

  .modal-option-dropdown .sg-sort__option {
    font-size: 1rem;
  }

  .item-link.french-puce.left.event .underline-container.smaller,
  .item-link.french-puce.left.blog .underline-container.smaller,
   { font-size: .75rem; }

   .article-date { font-size: .75rem; }

  .item-link.french-puce.left { grid-column-gap: 1.5rem; grid-row-gap: 1.5rem; }

  .nav-bar { padding: 1rem 7vw; }

  .menu-bars { width: 3rem; height: 3rem; }

  .accordion-title { font-size: .8rem; }

  .navbar-icon-right { width: 2rem; height: 2rem; margin-top: .2rem; }

  .menu { margin-left: .8rem; }

  .section { padding-top: 4rem; padding-bottom: 4rem; grid-column-gap: 3.5rem; grid-row-gap: 3.5rem; }

  .section.horizontal-tablet { padding-top: 4rem; padding-bottom: 0rem; }

  .small-cap-title.bigger { font-size: .7rem; }

  .item-name.smaller { font-size: 2.3rem; }

  .price-tag { font-size: .8rem; }

  .outlined-button { height: 3.5rem; border: .08em solid var(--french-puce); }

  .plus-icon-container { width: 1.8rem; height: 1.8rem; }

  .item-link.french-puce { grid-column-gap: .8rem; }

  .price-tag smaller { margin: .5rem 0; }

  .feature-banner.story { padding: 3rem 0; }

  .underline-container.smaller { font-size: 0.8rem; }
  .small-arrow { width: 0.9rem; }

  .variation-option select { border: .08em solid var(--french-puce); height: 3.2rem; }

  .review-section,
  .slider-instance.v2,
  .review { height: 22rem; }

  .product-modal-content { margin: 3rem 4rem 3rem 4rem; }

  .product-modal-image { height: 23rem; }

  .product-modal-body { padding: 1.5rem; }

  .product-modal-info h3 { font-size: 3.7rem; }

  .product-modal-close { width: 2.3rem; height: 2.3rem; }

  .modal-price { font-size: 1rem; }

  .items-container.grid { grid-column-gap: 1rem; grid-row-gap: 1rem; }

  .items-container.blog { grid-column-gap: 1rem; grid-row-gap: 1rem; }

  .sub-title { font-size: 1rem; }

  .underline-button { font-size: 1rem; }

  .main-headline.hero-version { font-size: 6.5rem; }

  .sub-title.hero-version { font-size: 1rem; }

  .standard-button { height: 3.8rem; }

  .standard-button.french-puce { border: 0.13em solid var(--french-puce); }

  .main-headline.banner { font-size: 2rem; padding-top: 0.7rem; padding-bottom: 0.7rem; }

  .standard-button.french-puce.shorter { padding-left: 3.5rem; padding-right: 3.5rem; }

  .progress-ring { width: 1.3rem; height: 1.3rem; }

  .small-cap-title { font-size: .55rem; }

  .sub-title.tighter-desktop { width: 80%; }

  .selector-dot-wrapper { width: 1.4rem; height: 1.4rem; }

  .selector-wrapper { grid-column-gap: 1.5rem; grid-row-gap: 1rem; }

  .selector-container { margin-right: 2.2rem; }

  .plus-wrapper { margin-top: 1.2rem; margin-bottom: 1.2rem; }

  .main-headline.tighter-mobile-newsletter.instagram-link { font-size: 5rem; }

  .xoxo { font-size: 6rem; }

  .instagram-embed-title { gap: 1.5rem; }

  .instagram-follow { font-size: 0.8rem; }

  .wrapper-footer-link { gap: 1.5rem; }

  .footer-link { font-size: 1rem; }

  .logo-footer { width: 15rem; }

  .social-link { width: 1.2rem; height: 1.2rem; }

  .main-headline.tighter-mobile-newsletter { font-size: 3.8rem; }

  .text-field {
    border: 0.09em solid var(--simple-white);
    padding: 0 1.2rem;
    font-size: 1.1rem;
    height: 3.8rem;
  }

  .print-text-subcribe { width: 80%; font-size: 0.9rem; }

  .submit-button-container {
    border: 0.09em solid var(--abyssal-depths);
    height: 3.8rem;
    width: 100%;
  }

  .accordion-item { padding-top: 1.8rem; padding-bottom: 1.8rem; }

  .button-text,
  .submit-button,
  .standard-button.max-width-full.pointer-events-off { font-size: 0.85rem; }
}

/* <= 479px */
@media (max-width: 479px) {
  body { font-size: 1.1rem; }

  .footer-link { font-size: 1.1rem; }

  .selector-wrapper { flex-flow: row; }

  .items-container.grid { grid-template-columns: 1fr; }

  .category-text { font-size: 4.2rem; }

  .main-headline.banner { font-size: 2.2rem; }

  .logo-back { width: 10rem; }

  .navbar-icon-right { width: 1.8rem; height: 1.8rem; margin-top: .4rem; }

  .right-nav { grid-column-gap: .7rem; grid-row-gap: .7rem; }

  .menu-bars { width: 2.8rem; height: 2.8rem; }

  .footer-payment-badge { width: 1.5em; }

  .selector-container {
    flex-flow: row;
    height: auto;
    margin-bottom: 2.5rem;
    margin-right: 0;
    inset: auto 0% 0%;
  }

  .toast-content {
    width: 22rem;
    height: 45rem;
    grid-template-columns: auto;
    grid-template-rows: .9fr 1fr;
  }

  .modal-price { margin: 1rem 0; }

  .product-modal-content { margin: 2rem 1.5rem 2rem 1.5rem; }

  .product-modal-body { padding: 1rem; gap: 2rem; }

  .product-modal-info h3 { font-size: 3.5rem; }

  .modal-price { font-size: .9rem; }

  .cart-count { font-size: .8rem; height: 1.2rem; width: 1.2rem; }

  .product-modal-image { height: 21rem; }

  .variation-option select { border: .1em solid var(--french-puce); height: 3.3rem; }

  .product-modal-close { width: 2rem; height: 2rem; top: 1rem; right: 1rem; }

  .accordion-title { font-size: .9rem; }

  .accordion-item { padding-top: 1.7rem; padding-bottom: 1.7rem; }

  .product-modal-content .product-colours {  margin: .7rem 0; }

  .selected-variant-value { font-size: .8rem; }

  .product-modal-close .plus-icon.banner { height: 1.6rem; width: 1.6rem; }

  .modal-view-product-btn { font-size: .7rem; }

  .product-colour-outline { border: .06em solid rgb(0 0 0 / 31%); height: 1.7rem; width: 1.7rem; }

  .sub-title.even-tighter.bundle { width: 65%; font-size: 1.1rem; }

  .main-headline { font-size: 4.8rem; }

  .feature-banner { height: 26rem; }

  .small-cap-title { font-size: .65rem; }

  .filter_empty { padding: 4rem 2rem; }

  .copy-container.chocolate-hazelnut {
    width: auto;
    margin-left: 7vw;
    margin-right: 7vw;
    padding-left: 2rem;
    padding-right: 2rem;
  }

  .sub-title.smaller { font-size: 1rem; }

  .main-headline-title.left-mobile {
    text-align: left;
    justify-content: flex-start;
    align-items: flex-start;
  }

  .sub-title.tighter-desktop { width: 100%; }

  .feature-container.event, 
  .feature-container.event.less-space {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
  }

  .item-link.french-puce.left { grid-column-gap: 1.8rem; grid-row-gap: 1.8rem; width: 25vh; }

  .item-name.smaller.left { font-size: 2.7rem; }

  .item-link.french-puce.left.event .item-info { grid-column-gap: 0; grid-row-gap: 0; }

  .outlined-button { border: .1em solid var(--french-puce); }

  .plus-icon-container { border: .1em solid var(--french-puce); }

  .plus-wrapper { margin-top: 1.5rem; margin-bottom: 1.5rem; }

  .print-text-subcribe { width: 90%; }

  .review-section,
  .slider-instance.v2,
  .review { height: 26rem; }

  .review-text { font-size: 1.3rem; }

  .star { width: 0.9rem; height: 0.9rem; }

  .progress-ring {
    border: 0.4em solid transparent;
    width: 1.7rem;
    height: 1.7rem;
  }

  .item-link.french-puce.left.main-product {
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
    width: 25vh;
  }

  .hero-content .main-headline-title {
    flex-flow: column;
    align-items: flex-start;
    display: flex;
  }

  .sub-title { font-size: 1.1rem; }

  .selector-dot-wrapper { width: 1.7rem; height: 1.5rem; }

  .logo-footer { width: 12rem; }

  .sub-title.hero-version { width: 75%; }

  .social-links { gap: 1rem; }

  .main-headline.tighter-mobile-newsletter.instagram-link { font-size: 3.8rem; }

  .xoxo { font-size: 3.8rem; }

  .instagram-embed-title { gap: 1rem; }

  .main-headline-title.left.modified { width: 70%; }

  .review-background { width: 180rem; }

  .article-date { margin-top: 0; }

  .main-headline.no-space.tighter-mobile,
  .main-headline.tighter-mobile { width: 12ch; }

  .hero-wrapper { margin-top: -20vh; }

  .section.horizontal-tablet { grid-column-gap: 2rem; grid-row-gap: 2rem; }

  .item-link.french-puce.left.event .underline-container.smaller, .item-link.french-puce.left.blog .underline-container.smaller, 
  .item-link.french-puce.left.blog .underline-container.smaller, .item-link.french-puce.left.blog .underline-container.smaller
  { font-size: .75rem; }

  .selector { border: 0.1em solid var(--simple-white); }

  .feature-banner .main-headline-title { align-items: flex-start; }
}

@media (min-width: 1024px) and (max-width: 1440px) and (pointer: coarse) and (hover: none) and (orientation: portrait) {
  .hero-slider-container, .slider-instance, .hero-section {
    max-height: 40vh;
    min-height: 40svh;
  }

  .main-headline.hero-version {
    font-size: 7rem;
  }

  .item-name.smaller {
    font-size: 2.2rem;
  }

  .category-text {
    font-size: 3.5rem;
  }

  .main-headline {
    font-size: 5rem;
  }

  .logo-footer {
    width: 11rem;
  }

  .main-headline.tighter-mobile-newsletter {
    font-size: 3.5rem;
  }
}

