/* CSS Document */
#mainContent #introSection {
  display: grid;
  padding: 0 1.97%;
  grid-template-columns: 24.6% 35.8% 19.8% 19.8%;
  grid-template-rows: 0.45fr 1.55fr 1.095fr;
  grid-template-areas: ". . . rightImg" "leftImg . . rightImg" "leftImg . cntrImg cntrImg";
  position: relative;
}
#mainContent #introSection .leftImg {
  grid-area: leftImg;
}
#mainContent #introSection .cntrImg {
  grid-area: cntrImg;
}
#mainContent #introSection .cntrImg img {
  width: 70.68%;
}
#mainContent #introSection .rightImg {
  grid-area: rightImg;
}
#mainContent #introSection .text {
  width: 100%;
  height: 100%;
  text-align: center;
  box-sizing: border-box;
  position: absolute;
  top: 0;
  left: 0;
}
#mainContent #introSection .text .cont {
  width: 42%;
  max-width: 640px;
  margin: 0 auto 13%;
}
#mainContent #introSection .text h1, #mainContent #introSection .text .h1 {
  font-size: clamp(38px, 3.5526315789vw, 54px);
  text-wrap: balance;
  margin-bottom: 0.2em;
}
#mainContent #introSection .text p {
  max-width: 86%;
  margin: 0 auto;
  font-size: 18px;
}
#mainContent .staggerImages {
  display: grid;
  margin-top: var(--paddingHigh);
}
#mainContent .staggerImages > div:nth-child(1) {
  grid-area: img1;
}
#mainContent .staggerImages > div:nth-child(2) {
  grid-area: img2;
}
#mainContent .staggerImages > div:nth-child(3) {
  grid-area: img3;
}
#mainContent .staggerImages > div:nth-child(4) {
  grid-area: img4;
}
#mainContent .staggerImages > div:nth-child(5) {
  grid-area: img5;
}
#mainContent .staggerImages:has(+ div:not(.blockImages):not(.textBlockSection):not(.staggerImages)) {
  margin-bottom: var(--paddingHigh);
}
#mainContent .staggerImages.stagger1 {
  padding: 0 1.97%;
  grid-template-columns: 24.6% 3.15% 13.7% 18.95% 19.8% 19.8%;
  grid-template-rows: 0.6fr 0.5128fr 1.55fr 1.46fr;
  grid-template-areas: ". . . . . img4" "img1 . . . . img4" "img1 . img2 . . img4" "img1 . img2 . img3 img3";
}
#mainContent .staggerImages.stagger1 > div:nth-child(3) img {
  width: 70.68%;
}
#mainContent .staggerImages.stagger2 {
  padding: 0 6.38%;
  grid-template-columns: 31.8% 3.24% 19.98% 15.32% 29.66%;
  grid-template-rows: 0.4569fr 0.4095fr 2.1295fr;
  grid-template-areas: "img1 . . . ." "img1 . . . img3" "img1 . img2 . img3";
}
#mainContent .staggerImages.stagger3 {
  padding: 0;
  grid-template-columns: 13.15% 1.71% 13.15% 7.37% 28.42% 5.13% 17.67% 2.4% 11%;
  grid-template-rows: 0.5868fr 1.3624fr 0.48fr 1.572fr;
  grid-template-areas: ". . . . img3 . . . ." "img1 . img2 . img3 . . . ." "img1 . img2 . img3 . img4 . ." ". . . . img3 . img4 . img5";
}
#mainContent .staggerImages.stagger4 {
  padding: 0 5.6%;
  grid-template-columns: 16.52% 1.63% 16.52% 13% 21.7% 1.63% 29%;
  grid-template-rows: 0.447fr 0.843fr 1.72fr;
  grid-template-areas: ". . . . . . img4" ". . . . img3 . img4" "img1 . img2 . img3 . img4";
}
#mainContent .staggerImages.stagger5 {
  padding: 0 3.45%;
  grid-template-columns: 26.84% 2.4% 34.13% 5.51% 12.12% 2% 17%;
  grid-template-rows: 0.8056fr 0.5792fr 0.2372fr 2.3724fr;
  grid-template-areas: ". . img2 . . . ." "img1 . img2 . . . ." "img1 . img2 . . . img4" "img1 . img2 . img3 . img4";
}
#mainContent .staggerImages.stagger6 {
  padding: 0 2.07%;
  grid-template-columns: 20.7% 11.08% 18.98% 17.75% 31.49%;
  grid-template-rows: 0.21422fr 0.63426fr 2.1518fr;
  grid-template-areas: ". . . . img3" ". . img2 . img3" "img1 . img2 . img3";
}
#mainContent .staggerImages.stagger7 {
  padding: 0 4.93%;
  grid-template-columns: 34.52% 13.98% 21.43% 1.62% 28.45%;
  grid-template-rows: 0.4476fr 0.936fr 1.621fr;
  grid-template-areas: ". . . . img3" ". . img2 . img3" "img1 . img2 . img3";
}
#mainContent .blockImages {
  margin-top: var(--paddingHigh);
}
#mainContent .blockImages:has(+ div:not(.blockImages):not(.textBlockSection):not(.staggerImages)) {
  margin-bottom: var(--paddingHigh);
}
#mainContent .blockImages .content {
  -moz-column-gap: 10px;
       column-gap: 10px;
  margin: 0 auto;
}
#mainContent .blockImages.block2 .flex > div {
  width: 50%;
}
#mainContent .blockImages.block3 .flex > div {
  width: 33.33%;
}
#mainContent .textBlockSection {
  margin-top: var(--paddingHigh);
}
#mainContent .textBlockSection:has(+ div:not(.blockImages):not(.textBlockSection):not(.staggerImages)) {
  margin-bottom: var(--paddingHigh);
}
#mainContent .textBlockSection .content {
  text-align: center;
  margin: 0 auto;
}
#mainContent .textBlockSection.textHighlight {
  padding-top: var(--paddingHigh);
  padding-bottom: var(--paddingHigh);
  background-color: var(--greyLight2);
}
#mainContent .textBlockSection.textHighlight h4, #mainContent .textBlockSection.textHighlight .preHeader {
  margin-bottom: 10px;
}
#mainContent .textBlockSection.textHighlight h2, #mainContent .textBlockSection.textHighlight .mainHeader {
  margin-bottom: calc(var(--paddingLower) + 5px);
}
#mainContent .textBlockSection.textSimple h2, #mainContent .textBlockSection.textSimple .mainHeader {
  margin-bottom: 16px;
}
#mainContent .textBlockSection.textSimple h2:has(+ h3, + .subHeader), #mainContent .textBlockSection.textSimple .mainHeader:has(+ h3, + .subHeader) {
  margin-bottom: 6px;
}
#mainContent .textBlockSection.textSimple h3, #mainContent .textBlockSection.textSimple .subHeader {
  margin-bottom: 16px;
}
#mainContent .scrollSlider {
  background-color: var(--grey);
}
#mainContent .justForYou {
  background-color: white;
}
#mainContent .gridPhotos .topPhotos {
  position: relative;
  overflow: hidden;
  margin-left: -5px;
  margin-right: -5px;
  min-height: 800px;
}
#mainContent .gridPhotos .topPhotos .photo {
  position: absolute;
  display: inline-block;
  overflow: hidden;
  opacity: 0;
  transition: all 0.2s cubic-bezier(0.455, 0.03, 0.515, 0.955);
  transform-origin: center center;
}
#mainContent .gridPhotos .topPhotos .photo.jg-entry-visible {
  opacity: 1;
}
#mainContent .gridPhotos .topPhotos .photo.jg-filtered {
  display: none;
}
#mainContent .gridPhotos .topPhotos .photo img {
  position: absolute;
  top: 50%;
  left: 50%;
  transition: all 0.2s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
#mainContent .gridPhotos .topPhotos .photo.overlayName .nameOverlay {
  opacity: 0;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  width: 100%;
  padding: 20px;
  box-sizing: border-box;
  color: white;
  font-size: 85%;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.5);
  pointer-events: none;
  transition: opacity 0.4s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
#mainContent .gridPhotos .topPhotos .photo.overlayName .nameOverlay .subHeader {
  text-wrap: balance;
}
#mainContent .gridPhotos .topPhotos .photo.overlayName .nameOverlay .link {
  width: 100%;
  text-align: right;
  margin-bottom: 0;
}
#mainContent .gridPhotos .topPhotos .photo.overlayName .nameOverlay .link.arrow:before, #mainContent .gridPhotos .topPhotos .photo.overlayName .nameOverlay .link.arrow:after {
  border-color: white;
}
#mainContent .gridPhotos .topPhotos .photo.overlayName:hover .nameOverlay, #mainContent .gridPhotos .topPhotos .photo.overlayName:active .nameOverlay {
  opacity: 1;
  pointer-events: auto;
}
#mainContent .gridPhotos .topPhotos:after {
  content: "Loading...";
  display: inline-block;
  font: 30px/1 var(--italicFS);
  color: var(--greyText);
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50px, -50%);
  animation: 1.3s infinite linear loadingDots;
}
#mainContent .gridPhotos .topPhotos.loaded {
  min-height: auto;
}
#mainContent .gridPhotos .topPhotos.loaded:after {
  display: none;
}
#mainContent .vendorTeam {
  background-color: var(--greyLight2);
}
#mainContent .vendorTeam .vendors {
  display: flex;
  flex-wrap: wrap;
}
#mainContent .vendorTeam .vendors .vendor {
  display: inline-block;
  vertical-align: top;
  font-size: 88%;
  width: 25.42%;
  margin-top: var(--padding);
  position: relative;
}
#mainContent .vendorTeam .vendors .vendor dt {
  font: 300 1.3357142857em/1em var(--italicFS);
  letter-spacing: 0;
  margin-bottom: 14px;
  transition: color 0.2s cubic-bezier(0.86, 0, 0.07, 1);
  padding-left: 26px;
  position: relative;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
#mainContent .vendorTeam .vendors .vendor dt:before {
  font-size: 15px;
  position: absolute;
  left: 0;
  top: 0;
}
#mainContent .vendorTeam .vendors .vendor dd {
  max-width: -webkit-fit-content;
  max-width: -moz-fit-content;
  max-width: fit-content;
  font: 400 1.0857142857em/1.3em var(--sansFS);
  text-transform: uppercase;
  position: relative;
  padding-right: 18px;
  white-space: nowrap;
  padding-left: 26px;
  overflow: hidden;
  text-overflow: ellipsis;
}
#mainContent .vendorTeam .vendors .vendor dd:after {
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  border-top: solid 1px transparent;
  border-right: solid 1px transparent;
  transform: rotate(45deg);
  position: absolute;
  right: 3px;
  top: 5px;
  transition: border 0.2s cubic-bezier(0.86, 0, 0.07, 1);
}
#mainContent .vendorTeam .vendors .vendor:nth-child(3n+2) {
  margin-left: 11.87%;
  margin-right: 11.87%;
}
#mainContent .vendorTeam .vendors a.vendor dd:after {
  border-color: black;
}
#mainContent .vendorTeam .vendors a.vendor:hover, #mainContent .vendorTeam .vendors a.vendor:active {
  color: black !important;
}

/********* end layout *********/
/********* keyframes *********/
@keyframes loadingDots {
  0% {
    content: "Loading";
  }
  25% {
    content: "Loading.";
  }
  50% {
    content: "Loading..";
  }
  75% {
    content: "Loading...";
  }
  100% {
    content: "Loading";
  }
}
/********* end keyframes *********/
/********* responsive *********/
@media (max-width: 1024px) {
  #mainContent .vendorTeam .vendors {
    justify-content: space-between;
  }
  #mainContent .vendorTeam .vendors .vendor {
    width: 46%;
  }
  #mainContent .vendorTeam .vendors .vendor:nth-child(3n+2) {
    margin-left: 0;
    margin-right: 0;
  }
}
@media (max-width: 768px) {
  #mainContent #introSection {
    display: block;
    padding: 0;
  }
  #mainContent #introSection .leftImg {
    margin-bottom: 30px;
  }
  #mainContent #introSection .text {
    padding: 0 var(--padding);
    position: static;
  }
  #mainContent #introSection .text .cont {
    width: auto;
    margin-bottom: 30px;
  }
  #mainContent #introSection .rightImg {
    width: 52.35%;
    margin-left: 10.12%;
    margin-bottom: 22px;
  }
  #mainContent #introSection .cntrImg {
    width: 62.96%;
    margin-left: 32.35%;
  }
  #mainContent #introSection .cntrImg img {
    width: 100%;
  }
  #mainContent .staggerImages.stagger1 {
    padding: 0;
    grid-template-columns: 18.3% 20.63% 14.16% 4.48% 21.09% 8.2% 13.14%;
    grid-template-rows: auto auto auto;
  }
  #mainContent .staggerImages.stagger1 > div:nth-child(1) {
    grid-row: 2/3;
    grid-column: 1/4;
  }
  #mainContent .staggerImages.stagger1 > div:nth-child(1) img {
    margin-top: 4.7vw;
  }
  #mainContent .staggerImages.stagger1 > div:nth-child(2) {
    grid-row: 2/3;
    grid-column: 5/7;
  }
  #mainContent .staggerImages.stagger1 > div:nth-child(2) img {
    margin-top: 20vw;
  }
  #mainContent .staggerImages.stagger1 > div:nth-child(3) {
    grid-row: 3/4;
    grid-column: 2/6;
  }
  #mainContent .staggerImages.stagger1 > div:nth-child(3) img {
    width: 100%;
    margin-top: 4.7vw;
  }
  #mainContent .staggerImages.stagger1 > div:nth-child(4) {
    grid-row: 1/2;
    grid-column: 3/8;
  }
  #mainContent .staggerImages.stagger2 {
    padding: 0;
    grid-template-columns: 13.48% 41.89% 6.87% 24.78% 7.61% 5.37%;
    grid-template-rows: auto auto;
  }
  #mainContent .staggerImages.stagger2 > div:nth-child(1) {
    grid-row: 1/2;
    grid-column: 1/4;
  }
  #mainContent .staggerImages.stagger2 > div:nth-child(2) {
    grid-row: 1/2;
    grid-column: 3/6;
  }
  #mainContent .staggerImages.stagger2 > div:nth-child(2) img {
    margin-top: 17.16vw;
  }
  #mainContent .staggerImages.stagger2 > div:nth-child(3) {
    grid-row: 2/3;
    grid-column: 2/5;
  }
  #mainContent .staggerImages.stagger2 > div:nth-child(3) img {
    margin-top: 7.7vw;
  }
  #mainContent .staggerImages.stagger3 {
    padding: 0;
    grid-template-columns: 4.7% 25.27% 3.23% 12.03% 5.4% 12.54% 12.19% 24.64%;
    grid-template-rows: auto auto auto;
  }
  #mainContent .staggerImages.stagger3 > div:nth-child(1) {
    grid-row: 1/2;
    grid-column: 1/3;
  }
  #mainContent .staggerImages.stagger3 > div:nth-child(2) {
    grid-row: 1/2;
    grid-column: 4/7;
  }
  #mainContent .staggerImages.stagger3 > div:nth-child(3) {
    grid-row: 2/3;
    grid-column: 4/9;
  }
  #mainContent .staggerImages.stagger3 > div:nth-child(3) img {
    margin-top: 5vw;
  }
  #mainContent .staggerImages.stagger3 > div:nth-child(4) {
    grid-row: 3/4;
    grid-column: 2/5;
  }
  #mainContent .staggerImages.stagger3 > div:nth-child(4) img {
    margin-top: -7vw;
  }
  #mainContent .staggerImages.stagger3 > div:nth-child(5) {
    grid-row: 3/4;
    grid-column: 6/8;
  }
  #mainContent .staggerImages.stagger3 > div:nth-child(5) img {
    margin-top: 5vw;
  }
  #mainContent .staggerImages.stagger4 {
    padding: 0;
    grid-template-columns: 6.7% 25.37% 8.45% 3.98% 32.58% 12.68% 10.24%;
    grid-template-rows: auto auto auto;
  }
  #mainContent .staggerImages.stagger4 > div:nth-child(1) {
    grid-row: 1/2;
    grid-column: 2/4;
  }
  #mainContent .staggerImages.stagger4 > div:nth-child(2) {
    grid-row: 1/2;
    grid-column: 5/6;
  }
  #mainContent .staggerImages.stagger4 > div:nth-child(2) img {
    margin-top: 25.12vw;
  }
  #mainContent .staggerImages.stagger4 > div:nth-child(3) {
    grid-row: 3/4;
    grid-column: 1/5;
  }
  #mainContent .staggerImages.stagger4 > div:nth-child(3) img {
    margin-top: -20.64vw;
  }
  #mainContent .staggerImages.stagger4 > div:nth-child(4) {
    grid-row: 2/3;
    grid-column: 3/7;
  }
  #mainContent .staggerImages.stagger4 > div:nth-child(4) img {
    margin-top: 6.46vw;
  }
  #mainContent .staggerImages.stagger5 {
    padding: 0;
    grid-template-columns: 19.9% 8.45% 17.41% 4.23% 6.23% 28.34% 15.44%;
    grid-template-rows: auto auto auto;
  }
  #mainContent .staggerImages.stagger5 > div:nth-child(1) {
    grid-row: 1/2;
    grid-column: 1/6;
  }
  #mainContent .staggerImages.stagger5 > div:nth-child(2) {
    grid-row: 2/3;
    grid-column: 3/8;
  }
  #mainContent .staggerImages.stagger5 > div:nth-child(2) img {
    margin-top: 6.965vw;
  }
  #mainContent .staggerImages.stagger5 > div:nth-child(3) {
    grid-row: 3/4;
    grid-column: 2/4;
  }
  #mainContent .staggerImages.stagger5 > div:nth-child(3) img {
    margin-top: 13.43vw;
  }
  #mainContent .staggerImages.stagger5 > div:nth-child(4) {
    grid-row: 3/4;
    grid-column: 5/7;
  }
  #mainContent .staggerImages.stagger5 > div:nth-child(4) img {
    margin-top: 6.965vw;
  }
  #mainContent .staggerImages.stagger6 {
    padding: 0;
    grid-template-columns: 16.17% 28.6% 14.67% 24.41% 16.15%;
    grid-template-rows: auto auto;
  }
  #mainContent .staggerImages.stagger6 > div:nth-child(1) {
    grid-row: 1/2;
    grid-column: 1/3;
  }
  #mainContent .staggerImages.stagger6 > div:nth-child(1) img {
    margin-top: 21.39vw;
  }
  #mainContent .staggerImages.stagger6 > div:nth-child(2) {
    grid-row: 1/2;
    grid-column: 4/6;
  }
  #mainContent .staggerImages.stagger6 > div:nth-child(3) {
    grid-row: 2/3;
    grid-column: 2/5;
  }
  #mainContent .staggerImages.stagger6 > div:nth-child(3) img {
    margin-top: 6.47vw;
  }
  #mainContent .staggerImages.stagger7 {
    padding: 0;
    grid-template-columns: 4.72% 21.64% 16.17% 5.72% 48% 3.75%;
    grid-template-rows: auto auto auto;
  }
  #mainContent .staggerImages.stagger7 > div:nth-child(1) {
    grid-row: 3/4;
    grid-column: 3/6;
  }
  #mainContent .staggerImages.stagger7 > div:nth-child(1) img {
    margin-top: 4.47vw;
  }
  #mainContent .staggerImages.stagger7 > div:nth-child(2) {
    grid-row: 2/3;
    grid-column: 2/5;
  }
  #mainContent .staggerImages.stagger7 > div:nth-child(2) img {
    margin-top: -21.64vw;
  }
  #mainContent .staggerImages.stagger7 > div:nth-child(3) {
    grid-row: 1/2;
    grid-column: 4/7;
  }
  #mainContent .vendorTeam .vendors {
    display: block;
  }
  #mainContent .vendorTeam .vendors .vendor {
    display: block;
    width: auto;
    margin-left: 20px !important;
  }
}
/********* end responsive *********/
