/** Shopify CDN: Minification failed

Line 1507:0 Unexpected "}"

**/
/* #region - ROOT */

:root {
  --font-family-body: Avenir, Seravek, 'Gill Sans Nova', 'Ubuntu', 'Calibri',
    'DejaVu Sans', source-sans-pro, sans-serif;
  --font-family-heading: 'Didot', 'Bodoni MT', 'Noto Serif Display',
    'URW Palladio L', P052, Sylfaen, serif;
  --font-family-accent: 'ivymode', sans-serif;
  --font-family-subheading: var(--font-family-body);

  --font-weight-light: 300;
  --font-weight-normal: 400;
  --font-weight-medium: 500;
  --font-weight-heavy: 600;
  --font-weight-bold: 700;

  --letter-spacing-heading: 0.05rem;
  --letter-spacing-subheading: 0.05rem;
  --letter-spacing-body: 0.05rem;

  --font-style-normal: normal;
  --font-style-italic: italic;

  --font-size-heading-0: 10rem; /*Xpx;*/
  --font-size-heading-1: 1.88rem; /*31px;*/
  --font-size-heading-2: 1.75rem; /*28px;*/
  --font-size-heading-3: 1.38rem; /*12px;*/
  --font-size-heading-4: 1.13rem; /*18px;*/
  --font-size-heading-5: 1.06rem; /*17px;*/

  --font-size-subheading-1: 1.13rem; /*18px;*/
  --font-size-subheading-2: 1.13rem; /*18px;*/
  --font-size-subheading-3: 0.75rem; /*12px;*/

  --font-size-accent-1: 1.38rem; /*22px;*/
  --font-size-accent-2: 1.12rem;
  --font-size-accent-3: 1.06rem; /*17px;*/

  --font-size-body-large-2: 1.75rem; /*17px;*/
  --font-size-body-large-1: 1.35rem; /*17px;*/
  --font-size-body-large: 1.06rem; /*17px;*/
  --font-size-body: 1rem; /*16px;*/
  --font-size-body-small-1: 0.94rem; /*15px;*/
  --font-size-body-small-2: 0.88rem; /*14px;*/
  --font-size-body-small-3: 0.81rem; /*13px;*/
  --font-size-body-small-4: 0.75rem; /*12px;*/

  --color-page-bg: #fbf9f7;
  --color-black: #000000;
  --color-dark: #1e1e1e;
  --color-medium-dark: #393939;
  --color-medium-grey: #505050;
  --color-medium-light: #727272;
  --color-light-grey: #979797;
  --color-white: #ffffff;
  --color-off-white-1: #f0e7e5;
  --color-off-white-2: #fbfbfb;
  --color-peach-light: #fce8df;
  --color-peach-medium: #ffc7af;
  --color-peach-dark: #dd9c81;
  --color-peach-v-dark: #ba7658;
  --color-soft-brown: #88746c;
  --color-cream-light: #e0cab6;
  --color-acqua: #cce5da;
  --color-acqua-light: #c0d8e0;
  --color-burgendy: #4b1517;

  --spacer: 1rem;
  --page-margin-vsmall: 15px;
}

*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
body {
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-normal);
  color: var(--color-medium-grey);
}
img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
a {
  /* color: var(--color-dark); */
  text-decoration: none;
}
a:hover {
  color: var(--color-black);
  text-decoration: underline;
}
.ts-grid-item a:hover,
.ts-grid-item a:hover .ts-subheading-3 {
  text-decoration: underline;
}

/* FONTS */
.ts-heading-0 {
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-light);
  font-style: var(--font-style-normal);
  font-size: var(--font-size-heading-0);
  letter-spacing: var(--letter-spacing-heading);
  line-height: 1.2;
}
.ts-heading-1 {
  font-family: var(--font-family-heading);
  font-weight: var(--font-weight-light);
  font-style: var(--font-style-normal);
  font-size: var(--font-size-heading-1);
  letter-spacing: var(--letter-spacing-heading);
  /* color: var(--color-off-white-1); */
}
.ts-heading-2 {
  font-family: var(--font-family-heading);
  font-weight: var(--font-weight-light);
  font-style: var(--font-style-normal);
  font-size: var(--font-size-heading-2);
  letter-spacing: var(--letter-spacing-heading);
  /* color: var(--color-off-white-1); */
}
.ts-heading-3 {
  font-family: var(--font-family-heading);
  font-weight: var(--font-weight-light);
  font-style: var(--font-style-normal);
  font-size: var(--font-size-heading-3);
  letter-spacing: var(--letter-spacing-heading);
}
.ts-heading-4 {
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-normal);
  font-style: var(--font-style-normal);
  font-size: var(--font-size-heading-4);
  letter-spacing: var(--letter-spacing-heading);
}
.ts-heading-5 {
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-medium);
  font-style: var(--font-style-normal);
  font-size: var(--font-size-heading-5);
  letter-spacing: var(--letter-spacing-heading);
}

.ts-subheading-1 {
  font-family: var(--font-family-subheading);
  font-weight: var(--font-weight-normal);
  font-style: var(--font-style-normal);
  font-size: var(--font-size-subheading-1);
  letter-spacing: var(--letter-spacing-subheading);
  padding-bottom: 16px;
}
.ts-subheading-2 {
  font-family: var(--font-family-subheading);
  font-weight: var(--font-weight-medium);
  font-style: var(--font-style-normal);
  font-size: var(--font-size-subheading-1);
  padding-bottom: 6px;
}
.ts-subheading-3 {
  font-family: var(--font-family-subheading);
  font-weight: var(--font-weight-normal);
  font-style: var(--font-style-medium);
  font-size: var(--font-size-subheading-3);
  letter-spacing: var(--letter-spacing-subheading);
  text-transform: uppercase;
}

.ts-accent-heading-1 {
  font-family: var(--font-family-accent);
  font-weight: var(--font-weight-normal);
  font-size: var(--font-size-accent-1);
}
.ts-accent-heading-2 {
  font-family: var(--font-family-heading-accent);
  font-style: italic;
  font-weight: var(--font-weight-normal);
  font-size: var(--font-size-accent-heading-2);
  letter-spacing: 0.03rem;
}
.ts-accent-heading-3 {
  font-family: var(--font-family-accent);
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-accent-3);
}

.ts-body {
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-normal);
  font-size: var(--font-size-body);
  letter-spacing: var(--letter-spacing-body);
  line-height: 1.5;
}
.ts-body-light {
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-light);
  font-size: var(--font-size-body);
  line-height: 1.65;
}
.ts-body-medium {
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-medium);
  font-size: var(--font-size-body);
}
.ts-body-large-1 {
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-normal);
  font-size: var(--font-size-body-large-1);
}
.ts-body-large-2 {
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-normal);
  font-size: var(--font-size-body-large-2);
}
.ts-body-small-1 {
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-normal);
  font-size: var(--font-size-body-small-1);
}
.ts-body-small-2 {
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-light);
  font-size: var(--font-size-body-small-2);
  /* letter-spacing: var(--letter-spacing-subheading); */
}
.ts-body-small-3 {
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-medium);
  font-size: var(--font-size-body-small-3);
  text-transform: uppercase;
  letter-spacing: var(--letter-spacing-subheading);
}
.ts-italic {
  font-style: italic;
}

.ts-text-reset {
  margin: 0;
  padding: 0;
  line-height: normal;
}

/* BUTTONS */
.ts-link-caps {
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-light);
  font-size: var(--font-size-body);
  text-transform: uppercase;
}
.ts-button-text {
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-normal);
  font-size: var(--font-size-body-small-2);
  letter-spacing: 0.08rem;
  text-transform: uppercase;
  text-decoration: underline;
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
  margin-top: 11px;
}
.ts-link-text {
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-normal);
  font-size: var(--font-size-body-small-2);
  letter-spacing: 0.08rem;
  text-transform: uppercase;
  text-decoration: underline;
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
  margin-top: 11px;
}
.ts-button-plain {
  background: #f0e7e5;
  border: none;
  color: rgb(83, 83, 83);
  cursor: pointer;
  text-transform: uppercase;
  text-decoration: none;
  font-family: var(--font-family-body);
  font-size: var(--font-size-body-small-2);
  letter-spacing: 0.06rem;
  padding: 7px 32px;
  margin: 0;
}

/* COLORS */
.ts-black {
  color: var(--color-black);
}
.ts-dark {
  color: var(--color-dark);
}
.ts-medium-dark {
  color: var(--color-dark);
}
.ts-peach-medium {
  color: var(--color-peach-medium);
}
.ts-peach-dark {
  color: var(--color-peach-dark);
}
.ts-cream-light {
  color: var(--color-cream-light);
}
.ts-light {
  color: var(--color-off-white-1);
}
.ts-light a {
  color: var(--color-peach-medium);
}

.ts-white {
  color: #ffffff;
}

/* delete later  */
/* increase specificity --- */
.ts-card-text-panel-wide .ts-heading-2,
.ts-card-text-panel-wide .ts-body,
.ts-card-text-panel.ts-light .ts-heading-2,
.ts-card-text-panel.ts-light .ts-body {
  /* color: var(--color-off-white-1);    */
}
/* .ts-card-text-panel-wide .ts-heading-2,
.ts-card-text-panel-wide .ts-body,  */
.ts-card-text-panel.ts-dark .ts-heading-2,
.ts-card-text-panel.ts-dark .ts-button-text,
.ts-card-text-panel.ts-dark .ts-body {
  /* color: var(--color-dark); */
}

/* SPACER */
.ts-spacer-5 {
  padding-top: 5px;
}
.ts-spacer-7 {
  padding-top: 7px;
}
.ts-spacer-10 {
  padding-top: 10px;
}
.ts-spacer-20 {
  padding-top: 20px;
}
.ts-spacer-25 {
  padding-top: 25px;
}
.ts-spacer-30 {
  padding-top: 30px;
}
.ts-spacer-40 {
  padding-top: 40px;
}
.ts-spacer-50 {
  padding-top: 50px;
}
.ts-spacer-50-0 {
  margin: 50px 0;
}
.ts-spacer-55 {
  margin-top: 55px;
}
.ts-spacer-70 {
  margin-top: 70px;
}
.ts-spacer-100 {
  margin-top: 100px;
}
.ts-spacer-large {
  margin-top: 140px;
}

/* #endregion - ROOT */

/* #region - CONTAINER VARIABLES */
.ts-border {
  border: 1px dashed rgb(134, 127, 127);
}
.ts-variable-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
}
.ts-variable-grid-item {
  height: 90svh;
  position: relative;
}
.ts-variable-grid-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.ts-container-wide {
  width: 100%;
  margin: 0 auto;
}
.ts-container {
  width: 100%;
  margin: 0 auto;
}
.ts-container-large {
  max-width: 1400px;
  margin: 0 auto;
}
.ts-container-medium {
  max-width: 1200px;
  margin: 0 auto;
}
.ts-container-small {
  max-width: 1000px;
  margin: 0 auto;
}
.ts-container-x-small {
  max-width: 800px;
  margin: 0 auto;
}
.ts-container-banner {
  width: 100%;
  height: 95svh;
  margin: 0 auto;
}
.ts-wrapper-tall {
  height: 740px;
  position: relative;
}
.ts-wrapper-tall img {
  object-fit: cover;
  height: 100%;
}
.ts-container-width {
  width: var(--ts-container-width);
  margin-left: auto;
  margin-right: auto;
}

.ts-row {
  display: flex;
  flex-direction: column;
}
.ts-col {
  display: flex;
  flex-direction: row;
  width: 100%;

  position: relative;
}

.ts-collection-card {
  position: relative;
  height: 90svh;
  /* causes oversize on other section images liek content-image-block */
}
.ts-collection-card-banner {
  position: relative;
  height: 100%;
}
.ts-collection-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.ts-collection-card-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.ts-collection-card-icon {
  width: 65px;
  height: auto;
  margin-top: 30px;
}
.ts-card-content {
  position: absolute;
  bottom: 0;
  left: 0;
  display: flex;
  flex-direction: column;
  padding: 75px 75px;
  width: 100%;
  height: 100%;
}

.temp {
  /* is this needed? */
  display: flex;
  flex-direction: row;
  padding: 40px;
  width: 100%;
  height: 100%;
}
.ts-card-item-centered {
  display: flex;
  justify-content: center;
  width: 100%;
}
.ts-card-text-panel {
  width: clamp(250px, 50%, 350px);
}
.ts-card-text-panel-wide {
  /* width: clamp(250px, 500px, 90%);  */
  width: 50%;
  min-width: 300px;
}

/* Top Positions */
.ts-panel-top-left {
  justify-content: flex-start;
  align-items: flex-start;
}
.ts-panel-top-center {
  justify-content: flex-start;
  align-items: center;
}
.ts-panel-top-right {
  justify-content: flex-start;
  align-items: flex-end;
}

/* Center Positions */
.ts-panel-center-left {
  justify-content: center;
  align-items: flex-start;
}
.ts-panel-center-center {
  justify-content: center;
  align-items: center;
}
.ts-panel-center-right {
  justify-content: center;
  align-items: flex-end;
}

/* Btm Positions */
.ts-panel-btm-left {
  justify-content: flex-end;
  align-items: flex-start;
}
.ts-panel-btm-center {
  justify-content: flex-end;
  align-items: center;
  text-align: center;
}
.ts-panel-btm-right {
  justify-content: flex-end;
  align-items: flex-end;
}
.ts-panel-btm-right-right {
  justify-content: flex-end;
  align-items: flex-end;
  text-align: right;
}

.ts-text-center {
  text-align: center;
}
.ts-text-left {
  text-align: left;
}
.ts-panel-gray {
  background-image: linear-gradient(#f0e7e5, #ddd0cd);
  height: 100%;
  width: 100%;
}

.ts-vspace-top--none {
  margin-top: 0;
}
.ts-vspace-top--vsmall {
  margin-top: 15px;
}
.ts-vspace-top--small {
  margin-top: 50px;
}
.ts-vspace-top--medium {
  margin-top: 90px;
}
.ts-vspace-top--large {
  margin-top: 140px;
}
.ts-container-vspace-top {
  margin-top: var(--ts-container-vspace-top);
}
.ts-container-vspace-btm {
  margin-top: var(--ts-container-vspace-btm);
}

.ts-panel-bgcolor {
  background-color: var(--color-off-white-1);
}

/* is this used delete?
.ts-textpanel-container {     
    display: flex;
    flex-direction: column;
    text-align: center;
    margin: 0 20px;
} */

@media (max-width: 767px) {
  .ts-variable-grid {
    grid-template-columns: 1fr;
  }
  .ts-card-content {
    padding: 75px 30px;
  }
  /* Top Positions */
  .ts-panel-top-left,
  .ts-panel-top-center,
  .ts-panel-top-right {
    justify-content: flex-start;
    align-items: flex-start;
  }

  /* Center Positions */
  .ts-panel-center-left,
  .ts-panel-center-center,
  .ts-panel-center-right {
    justify-content: center;
    align-items: center;
  }

  /* Btm Positions */
  .ts-panel-btm-left,
  .ts-panel-btm-right {
    justify-content: flex-end;
    align-items: flex-start;
  }
  .ts-panel-btm-center {
    justify-content: flex-end;
    align-items: center;
  }
}

@media (min-width: 768px) {
  .ts-variable-grid-item {
    height: 800px;
  }
  .ts-container-banner {
    height: 700px;
  }
  .ts-row {
    flex-direction: row;
    height: 100%;
  }
  .ts-collection-card {
    width: 100%;
  }
  .ts-row-medium {
    margin: 0 5%;
  }
}

/* #endregion */

/* #region - CONTENT IMG BLOCK */
.ts-variable-grid-item {
  height: 90vh;
  position: relative;
  /* Initialize the order property */
  order: 0; /* Default order is 0 */
}

@media (max-width: 767px) {
  .ts-reorder > .ts-variable-grid-item:first-child {
    order: 2;
  }
  .ts-reorder > .ts-variable-grid-item:nth-child(2) {
    order: 1;
  }
}

/* #endregion */

/* #region - HERO SLIDESHOW */
.ts-container--hero-slideshow {
  height: auto;
}
.ts-hero--row {
  display: flex;
  flex-direction: column;
  height: 95svh;
}
.ts-hero--col {
  display: flex;
  flex-direction: row;
  width: 100%;
  height: 100%;

  position: relative;
}
.ts-hero--img {
  width: 100%;
  height: auto;
  object-fit: cover;
}
.content-over-media--vlg {
  height: 90svh;
}
.ts-hero--content-base {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: flex-end;
  height: 100%;
}
.ts-hero--floating-content {
  /* width: 50%; */
  max-width: 600px;
  min-width: 300px;
  padding: 30px 30px 40px 30px;
  margin: 0 var(--page-margin-vsmall);
  z-index: 1;
  position: absolute;
  background-color: var(--color-cream-light);
  text-align: center;
}
.ts-container--hero-slideshow .ts-heading-1,
.ts-container--hero-slideshow .ts-subheading-1,
.ts-container--hero-slideshow .ts-body {
  margin: 0;
  padding: 0;
  line-height: 1.2;
}
.ts-container--hero-slideshow .ts-subheading-1 {
  padding-top: 13px;
  padding-bottom: 8px;
  font-weight: 300;
  font-size: 1rem;
}
/* is bg img used? */
.ts-background-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
}

@media screen and (min-width: 768px) {
  .ts-container--hero-slideshow {
    width: 100%;
    height: 86svh;
    margin: 0 auto;
  }
  .ts-hero--row {
    display: flex;
    flex-direction: row;
    width: 100%;
    height: 100%;
  }
  .ts-hero--col {
    display: flex;
    flex-direction: row;
    width: 100%;
    height: 100%;

    position: relative;
  }
  .ts-hero--floating-content {
    width: 50%;
    max-width: 600px;
    min-width: 300px;
    padding: 60px 60px 80px 60px;
    z-index: 1;
    position: absolute;
    background-color: var(--color-cream-light);
    text-align: center;
  }
  .ts-hero--img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}

/* #endregion */

/* #region - STANDARD GRID */
.ts-standard-grid {
  display: grid;
  grid-template-areas:
    'two'
    'three';
}
.ts-standard-grid-item {
  display: flex;
  height: 800px;
  justify-content: center;
  align-items: center;
  position: relative;
}
.ts-standard-grid-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.ts-standard-grid-item:nth-child(1) {
  grid-area: one;
}
.ts-standard-grid-item:nth-child(2) {
  grid-area: two;
}
.ts-standard-grid-item:nth-child(3) {
  grid-area: three;
}
.ts-standard-grid-item:nth-child(4) {
  grid-area: four;
}

@media (max-width: 767px) {
  .ts-standard-grid-item:nth-child(1),
  .ts-standard-grid-item:nth-child(4) {
    display: none;
  }
}

@media (min-width: 768px) {
  .ts-standard-grid {
    display: grid;
    grid-template-areas:
      'one two'
      'three four';
  }
}
/* #endregion */

/* #region - REVIEWS */

.ts-review-container {
  height: auto;
  display: flex;
  flex-direction: column;
  text-align: center;
  margin-bottom: 50px;
}
.ts-review-wrapper {
  display: flex;
  gap: 2px;
  margin-top: 10px;
  margin-bottom: 30px;
  /* height: 600px;   */
  overflow-x: scroll;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.ts-review-container .ts-heading-3 {
  text-align: center;
}
.ts-review-row {
  display: flex;
  flex-direction: row;
  gap: 45px;
  margin: 0 20px;
}
.ts-review-card {
  margin: 0;
}
.ts-review-item--col {
  display: flex;
  flex-direction: column;
  text-align: left;
  max-width: 300px;
  min-width: 250px;
}
.ts-review-item--img {
  max-width: 210px;
  margin-bottom: 35px !important;
}
.ts-review-item--col .ts-accent-heading-2 {
  margin-top: 30px;
}
.ts-review--description {
  /* margin-top: -15px; */
}
.ts-review--stars-row {
  max-height: 35px;
}
.ts-review--stars {
  padding-top: 10px;
  padding-bottom: 14px;
  width: 83px;
}
.ts-review-wrapper::-webkit-scrollbar {
  display: none; /* For Chrome, Safari, and Opera */
}

@media (min-width: 768px) {
  .ts-review-container {
    /* height: 600px; */
    display: flex;
    flex-direction: column;
    text-align: center;

    position: relative;
  }
  .ts-review-wrapper {
    display: flex;
    margin-top: 55px;
    /* height: 600px;   */
    overflow-x: scroll;
    scrollbar-width: none;
    -ms-overflow-style: none;
    justify-content: space-between; /* is this needed? */
  }
  .ts-review-container .ts-heading-3 {
    text-align: center;
  }
  .ts-review-row {
    display: flex;
    flex-direction: row;
    display: flex;
    overflow-x: auto;
    margin: 0 40px;
  }
  .ts-review-card {
  }
  .ts-review-item--col {
    display: flex;
    flex-direction: column;
    text-align: left;
    width: 250px; /* for huiplies */
    /* width: 400px; for pillows */
    /* justify-content: flex-end; */
  }
  .ts-review-item--col img {
    max-width: 210px;
    margin-bottom: 15px;
  }
  .ts-review-wrapper::-webkit-scrollbar {
    display: none;
  }
  .ts-scroll-container {
    overflow-x: auto;
    overflow-y: hidden;
    padding-bottom: 20px;
    margin-bottom: -20px;
  }
  .ts-scroll-container::-webkit-scrollbar {
    display: none;
  }
  .ts-scroll-buttons {
    margin-top: 250px;
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    z-index: 1;
    position: absolute;
    display: flex;
    justify-content: space-between;
  }
  .ts-scroll-arrow {
    width: 100%;
    height: auto;
    margin: 0 0px;
  }
}

/* #endregion */

/* #region - SHOP BY STYLE */
.ts-shop-by-style-grid {
  display: flex;
  gap: 2px;
  height: 90svh;

  overflow-x: scroll; /* Enable horizontal scrolling */
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.ts-shop-by-style-grid::-webkit-scrollbar {
  display: none;
}
.ts-grid-item {
  flex: 0 0 80vw;
  height: auto;
  gap: 1;
  justify-content: center;
  align-items: center;
  position: relative;
}
.ts-grid-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
/* desktop grid areas */
.ts-grid-item:nth-child(1) {
  grid-area: poster;
}
.ts-grid-item:nth-child(2) {
  grid-area: one;
}
.ts-grid-item:nth-child(3) {
  grid-area: two;
}
.ts-grid-item:nth-child(4) {
  grid-area: three;
}
.ts-grid-item:nth-child(5) {
  grid-area: four;
}
.ts-grid-item:nth-child(6) {
  grid-area: five;
}
.ts-grid-item:nth-child(7) {
  grid-area: six;
}
.ts-shopbystyle--text-overlay {
  position: absolute;
  width: 100%;
  left: 0;
  bottom: 60px;
  text-align: center;
  color: white;
}
.ts-shopbystyle-card-overlay {
  position: absolute;
  width: 60%;
  height: 60px;
  left: 20%;
  bottom: 20px;
  background-color: rgba(255, 255, 255, 0.872);
  display: flex;
  justify-content: center;
  align-items: center;
  opacity: 1;
}
.ts-grid-item:hover .ts-shopbystyle-card-overlay {
  transition: opacity 0.1s ease-in-out;
  opacity: 1;
}
.ts-grid-item picture {
  height: 100%;
}
.ts-shop-by-style--btns {
  margin-top: 45px;
}
.ts-shop-by-style--btns button {
  margin-top: 5px;
}
.hidden {
  display: none;
}
.disabled {
  background-color: #f0e7e591;
  color: #666;
  cursor: not-allowed;
}
.ts-shopbystyle-btn {
  width: 230px;
}

@media (min-width: 768px) {
  .ts-shop-by-style-grid {
    display: grid;
    grid-auto-columns: 1fr;
    height: 100%;
    gap: 20px;
    grid-template-areas:
      'poster poster one two three'
      'poster poster four five six';
  }
  .ts-grid-item img {
    height: 100%;
  }
  .ts-shopbystyle-card-overlay {
    position: absolute;
    width: 100%;
    height: 80px;
    left: 0;
    bottom: 0;
    background-color: rgba(255, 255, 255, 0.872);
    display: flex;
    justify-content: center;
    align-items: center;
    opacity: 0;
  }
}

@media (min-width: 950px) {
  .ts-shop-by-style-grid {
    display: grid;
    grid-auto-columns: 1fr;
    height: 100%;
    gap: 20px;
    grid-template-areas:
      'poster poster poster one two three'
      'poster poster poster four five six';
  }
  .ts-grid-item img {
    height: 100%;
  }
}

@media (min-width: 1500px) {
  .ts-shop-by-style-grid {
    max-height: 820px;
    grid-template-rows: minmax(auto, 395px) minmax(auto, 395px);
    display: grid;
    grid-auto-columns: 1fr;
    gap: 20px;
    grid-template-areas:
      'poster poster poster  one two three'
      'poster poster poster  four five six';
  }
  .ts-grid-item:nth-child(1) {
    max-height: 820px;
  }
  .ts-grid-item:nth-child(2) {
    max-height: 400px;
  }
  .ts-grid-item:nth-child(3) {
    max-height: 400px;
  }
  .ts-grid-item:nth-child(4) {
    max-height: 400px;
  }
  .ts-grid-item:nth-child(5) {
    max-height: 400px;
  }
  .ts-grid-item:nth-child(6) {
    max-height: 400px;
  }
  .ts-grid-item:nth-child(7) {
    max-height: 400px;
  }
  .ts-grid-item img {
    height: 100%;
  }
}

/* #endregion */

/* #region - IMAGE BANNER */
.ts-image-banner-wrapper-medium {
  height: 660px;
  position: relative;
}
.ts-image-banner-wrapper-medium img {
  height: 100%;
}
.ts-image-banner-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.ts-image-banner-text-overlay {
  position: absolute;
  width: 100%;
  bottom: 60px;
  left: 0;
  text-align: center;
}
/* #endregion */

/* #region - SHOP THE MARKET */

.ts-centered-mbl {
  text-align: center;
}
.ts-badge-small {
  object-fit: contain;
  width: 70px;
  height: auto;
  margin-top: 20px;
}

@media (min-width: 768px) {
  .ts-row-small {
    display: flex;
    flex-direction: row;
    margin: 0 auto;
    width: 100%;
    max-width: 1000px;
    gap: 40px;
  }
  .ts-shopthemarket-col {
    width: 100%;
    padding: 0 20px;
  }
  .ts-row-small > .ts-shopthemarket-col:nth-child(2) {
    width: 2px;
  }
  .ts-row-small > .ts-shopthemarket-col:nth-child(2) {
    padding: 0px;
  }
  .ts-centered-mbl {
    text-align: left;
  }
}
/* #endregion */

/* #region - VENDOR PORTAL MASONRY & MODAL */
/* img {
        width: 100%;
    } */

.grid {
  display: flex;
  gap: 10px;
}
.grid-col {
  flex: 1;
}
.grid-col--2,
.grid-col--3 {
  display: none;
}
/* .ts-vportal--product-content {
        position: absolute;
        background-color: rgba(0,0,0,.8);
        color:white;
        margin-top: 1rem;
        display: hover;
      } */
.grid-item {
  position: relative;
}
.grid-item img {
  margin-bottom: 10px;
}

/* INTERFACE ON TOP OF MASONRY GRID */
.ts-vportal--info-btn {
  width: 40px;
  height: 40px;
  background-color: #f9ece6e3;
  border-radius: 30%;

  display: flex;
  align-items: center;
  justify-content: center;
}
.ts-vportal--i {
  margin: 0.2rem 0.5rem;
  font-size: 1.25rem;
  font-family: didot;
  font-weight: 900;
  font-style: italic;
  color: var(--color-peach-v-dark);
}
.ts-vportal--contact-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fdf3efbe;
  color: rgb(42, 42, 42);
  display: flex;
  justify-content: center;
  align-items: center;
  display: none;
}
.ts-vportal--overlay-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: 0 20px;
}

/* MODAL EQUIRY FORM */
.ts-vportal--modal {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 350px;
  height: auto;
  background-color: white;
  color: rgb(42, 42, 42);
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.5);
  z-index: 10;
  display: none;
  padding: 40px 20px;
  box-sizing: border-box;
}
.ts-vportal--modal-content {
  display: flex;
  justify-content: center;
  font-family: var(--ts-body);
  font-size: 1rem;
}
.ts-vportal--content {
  position: absolute;
  margin: 1rem;
}
.ts-vportal--form-heading {
  font-family: var(--font-size-subheading-3);
  font-size: 1rem;
  font-weight: 600;
  text-align: center;
  margin-bottom: 30px;
}
.ts-vportal--form-item {
  margin-bottom: 10px;
}
.ts-vportal--modal .ts-vportal--form-item input[type='text'],
.ts-vportal--modal .ts-vportal--form-item input[type='email'] {
  background-color: transparent;
  border: none;
  border-bottom: 1px solid var(--color-dark);
  width: 100%;
  padding: 0 0;
  margin: 8px 0;
  box-sizing: border-box;
}
.ts-vportal--modal .ts-vportal--form-item input[type='text']:focus,
.ts-vportal--modal .ts-vportal--form-item input[type='email']:focus {
  outline: none;
  border-bottom: 2px solid var(--color-peach-v-dark);
}
.ts-vportal--form-item.subscribe {
  display: flex;
  align-items: flex-start; /* Align items vertically in the center */
  margin-bottom: 0px;
}
.ts-vportal--form-item.subscribe input[type='checkbox'] {
  margin-right: 10px;
  margin-top: 5px;
}
.ts-vportal--form-item.subscribe label {
  text-align: left; /* Ensure label text is left-aligned */
  flex-grow: 1; /* Allow the label to take up any extra space */
}
.ts-vportal--modal input[type='submit'] {
  text-decoration: underline;
  margin-top: 25px;
}
.ts-vportal--modal select {
  width: 100%;
  padding: 8px;
  margin: 8px 0;
  background-color: white;
  border: 1px solid #ccc;
  border-radius: 4px;
  box-sizing: border-box;
}
.ts-vportal--modal select:focus {
  border-color: var(--color-peach-v-dark);
}
.submit {
  display: flex;
  justify-content: center;
  align-items: center;
}
.ts-vportal--close {
  position: absolute;
  top: 10px;
  right: 10px;
  cursor: pointer;
  font-size: 24px;
}

@media (min-width: 768px) {
  .grid-col--2 {
    display: block;
  }
  .grid-item:hover {
    cursor: pointer;
  }
}
@media (min-width: 1080px) {
  .grid-col--3 {
    display: block;
  }
}

/* #endregion */

/* #region - CONTENT IMAGE BLOCK */
/* Add gap after First block item on mobile */
@media (max-width: 767px) {
  /* Version 1
        .ts-variable-grid-item--margin {
        margin-bottom: 15px; 
        margin-top: -15px;
      }
      .ts-variable-grid-item--margin:last-child {
        margin-bottom: 0;
        margin-top: 0px;
      } */
  .ts-variable-grid-item--margin {
    margin-top: 15px;
  }
  .ts-variable-grid-item--margin:last-child {
  }
}

/* #endregion */

/* #region - FOOTER BANNER */
.ts-banner--card-content {
  position: absolute;
  bottom: 0;
  left: 0;
  display: flex;
  flex-direction: column;
  padding: 111px 66px;
  width: 100%;
  height: 100%;
}
.ts-banner--card-text-panel {
  /* width: clamp(250px, 70%, 500px);  */
  width: 100%;
  min-width: 300px;
}
.ts-banner--card-text-panel-wide {
  width: 50%;
  min-width: 300px;
}

/* #endregion */

/* #region - RICH TEXT */
.ts-richtext--container {
  width: 100%; /* Full width */
  display: flex; /* Using Flexbox */
  justify-content: center; /* Center horizontally */
  align-items: center; /* Center vertically if needed */
}

.ts-richtext--card-text-panel-wide {
  width: 660px;
  min-width: 300px;
  margin: 0 30px;
}

/* #endregion */

/* #region - PRODUCT SIZE AND QUANTITY */
.custom-product-info > * {
  display: inline-block;
  vertical-align: top;
  font-size: 13px;
}
.custom-product-info .sizes span:first-child {
  display: block;
}
.custom-product-info .sizes span {
  display: none;
}
/* #endregion */

/* #region - Fonts for customiser, currency, sub head */
.header__primary-nav-item .h6 {
  font-family: var(--nav-font-family);
  font-weight: var(--nav-font-weight);
  font-style: var(--nav-font-style);
  font-size: calc(1rem * var(--nav-font-size));
}
/* Currency font */
.header__secondary-nav .text-xxs {
  font-family: var(--nav-font-family);
  font-weight: var(--nav-font-weight);
  font-style: var(--nav-font-style);
}
/* Sub heading */
.h6 {
  font-family: var(--subheading-font-family);
  font-weight: var(--subheading-font-weight);
  font-style: var(--subheading-font-style);
  font-size: calc(1rem * var(--subheading-font-size));
}
/* #endregion */

@media (max-width: 767px) {
  /* hide on mobile */
  .ts-visibility-mobile-off {
    display: none;
  }
  .ts-hide-mobile {
    display: none;
  }
}

@media (min-width: 768px) {
  /* hide on desktop */
  .ts-visibility-desktop-off {
    display: none;
  }
  .ts-hide-desktop {
    display: none;
  }
}


/* Hide prices in search results */
.main-search .price-list,
.predictive-search__products .price-list {
  display: none;
}
}


