/** nav */

/* detail pages custom_____________________________________________- */

#modContainer {
}

#modContainer h1, h2, h3, h4, h5 {
 text-align: center;
}

#modContainer h1 {
  font-size: 22px;
  margin-bottom: 20px;
}

#modContainer h2 {
  font-size: 20px;
  margin-bottom: 20px;
}

#modContainer h3 {
  font-size: 18px;
  margin-bottom: 20px;
}

.raw-html-embed dt {
  font-weight: bold;
}

.raw-html-embed dl {
  display: flex;
  flex-wrap: wrap;
}

.raw-html-embed dt,
.raw-html-embed dd {
  width: 50%;
  margin: 0;
}

.raw-html-embed dt {
  text-align: right !important;
}

.raw-html-embed dd {
  text-align: left !important;
  padding-left: 10px;
}

.fullImgHolder {
  width: 100%;
  display: flex;
  /* justify-content: center; */
  margin-bottom: 50px;
}

.fullImgHolder .fullImg:empty {
  margin-bottom: 0;
}

.fullImg {
  width: 100%;
  max-width: 1100px;
}

.fullImg img {
  width: 100%;
  height: 100%;
}

.detailTitle {
  font-size: 50px;
  font-weight: 700;
  margin: 10px 0;
}

.imageCredits {
  font-size: 14px;
  /* font-weight: 700; */
  color: #afafaf;

  margin-top: 5px;
}

/* moduleLayout */

/* marquees ------------------------------------ */

/* detail pages custom end_____________________________________________- */

#item_container {
  /* padding: 65px 0 100px; */
  padding: 0px 0 100px;
  margin-top: 0;
  max-height: unset;
  height: unset;
  overflow-y: unset;
  margin-bottom: 0px;
}

/* all MODULES */

.module {
  width: 100%;
  clear: both;

  max-width: var(--detWidth);
  margin: 0 auto;
}

.module::after {
  content: "";
  display: table;
  clear: both;
}

.module.module_image {
  position: relative;
  width: 100%;
  margin: 20px auto 40px;
}

.linkText {
  text-transform: uppercase;
  position: absolute;
  bottom: 10%;
  left: 50%;
  transform: translateX(-50%);
  padding: var(--buttonPadd);
  background-color: black;
  color: white;
  cursor: pointer;
  text-align: center;
}

.linkText:hover {
  text-decoration: none;
}



.module.module_image.stripeLogo,
.module.module_image.noStripeLogo {
  display: flex;
  justify-content: center;
  /* margin: 40px 0; */
}

.module.module_image.stripeLogo::after {
  content: "";
  position: absolute;
  left: 0px;
  top: 50%;
  height: 10px;
  width: 100%;
  background-color: black;
  z-index: 1;
}

.module.module_image.stripeLogo img,
.module.module_image.noStripeLogo img {
  position: relative;
  z-index: 2;

  width: 300px;

  background-color: white;
  padding: 10px 30px;
}

.module.module_image.noStripeLogo img {
  width: 500px;
  max-width: 100%;
}

.moduleImageCredits {
  margin-top: 5px;
  font-size: 14px;
}

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

.module.module_video {
  margin: 20px auto 50px;
}

.module.module_video.full_width {
  width: 100vw;
  margin-left: calc(-1 * var(--genPadding));
  max-width: unset;
}

.module.module_video video {
  width: 100%;
  aspect-ratio: 16/9;
}

.module.module_video .videoText {
  font-size: 14px;
}

.module.module_html iframe {
  width: 100% !important;
  aspect-ratio: 16/9;
  margin: 20px auto 50px;
}

.module.module_sectiontitle {
  margin-bottom: 1rem;
  justify-content: center;
  text-align: center;
  font-weight: 500;

  max-width: 760px;
  padding: 0 20px;
  margin: auto;
  margin-bottom: 20px;
}

.module.module_sectiontitle h1,
.module.module_sectiontitle h2,
.module.module_sectiontitle h3,
.module.module_sectiontitle h4,
.module.module_sectiontitle h5 {
  font-size: inherit;
  font-weight: inherit;
}

.module.module_sectiontitle.bigHeaderSize {
  text-transform: uppercase;
}
.module.module_sectiontitle.subheaderSize {
  text-transform: uppercase;
  font-size: 22px;
}

.module.module_text {
  margin-bottom: 50px;
}

.module.module_text * {
  line-height: 1.5em;
  justify-content: center;
  text-align: center;
}

.module.module_text ul li {
  text-align: left;
  list-style: none;
  position: relative;
  padding-left: 25px;
}

.module.module_text ul li::before {
  content: "✔";
  position: absolute;
  left: 0;
  color: rgb(133, 189, 56);
  font-size: 18px;
}

.module.module_text sup {
  font-size: 12px;
}

.module.module_quote {
  width: 100%;
  display: flex;
  justify-content: center;
  text-align: center;
  text-transform: uppercase;
 /* background-color: var(--opacbg);*/
 background:black;
  padding: var(--buttonPadd);
  width: fit-content;
  color: white;
  margin: auto;
  margin-bottom: 50px;
}

.module.module_quote * {
  color: white;
  font-size: 16px;
}
.module.module_quote *:hover {
  text-decoration: none;
}

.module.module_marquee .marqueeHolder {
  width: 100%;
  overflow: hidden;
  margin: 10px 0;
}

.module.module_marquee .fullMarqueeHolder {
  display: flex;
  overflow: hidden;
  width: 100000px;
}

.module.module_marquee .bmElemRight {
  white-space: nowrap;
}

.module.module_download .dFileElem {
  width: 100px;
}

.module.module_download .dFileWrapper {
  width: 100px;
}

.module.module_download .dFileWrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.module.module_column_start.col_start_type_0 {
  width: calc(50% - 10px);
  margin-right: 5px;
  float: left;
  clear: none;
}

.module.module_column_start.col_start_type_1 {
  width: calc(50% - 10px);
  margin-left: 5px;
  float: right;
  clear: none;
}

.module.module_column_start.col_start_type_0 .module_sectiontitle,
.module.module_column_start.col_start_type_0 .module_text,
.module.module_column_start.col_start_type_1 .module_sectiontitle,
.module.module_column_start.col_start_type_1 .module_text {
  width: 80%;
  margin: auto;
}

.module.module_column_start.col_start_type_0 .module_sectiontitle,
.module.module_column_start.col_start_type_1 .module_sectiontitle {
  font-size: 16px;
  margin-bottom: 20px;
}

.module.module_hr {
  width: 100%;
  height: 2px;
  margin: 14px 0;
  background-color: black;
}

.module.module_hr.invisible {
  border: unset;
  background-color: unset;
}

.gallSliderContainer {
  margin: 20px auto 50px;
}

.gallSliderArrowHolder {
  width: 100%;
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  margin-bottom: 10px;
}

.gallSliderArrows {
  cursor: pointer;
}

.gallSliderElem.withVideo {
  position: relative;
  margin: 0 10px;
  height: 100%;
  aspect-ratio: 9/16;
  cursor: pointer;
}

.gallSliderElem {
  position: relative;
}

.gallSliderElem img {
  position: relative;
  z-index: 1;
}

.gallSliderElem video {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  aspect-ratio: 9/16;
  z-index: 0;
}

.gallSliderLink {
  width: fit-content;
  display: block;
  text-transform: uppercase;
  position: absolute;
  bottom: 10%;
  left: 50%;
  transform: translateX(-50%);
  padding: var(--buttonPadd);
  background-color: var(--opacbg);
  color: white;
  cursor: pointer;
  text-align: center;
  z-index: 10;
}

.gallSliderLink:hover {
  text-decoration: none;
}

.module.module_gallery.isImageSlider {
  width: calc(100vw - 15px);
  max-width: unset;
  margin: 0 auto;
  margin-left: calc(-1 * var(--genPadding));
}

.module.module_gallery .gallSliderArrows {
  width: 20px;
  height: 20px;
}

.module.module_gallery .gallSliderArrows img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.collTitleArrow {
  display: flex;
  align-items: center;
}

.collArrow img {
  rotate: 135deg;
  transition: all 200ms ease;
}

.collBlock.opened .collArrow img {
  rotate: 315deg;
}

.collTitle {
  flex: 1 0 200px;
}

.collArrow {
  flex: 0 0 40px;
  filter: invert(1);
}

.collBlock {
  list-style: none;
  border-bottom: 1px solid lightgray;

  cursor: pointer;
}

.collBlock.opened .collColumns {
  height: 100%;
  max-height: 1000px;
  transition: all 200ms ease;
}

.collapsElem.opened .normalText {
  margin-bottom: 40px;
}

.collColumns {
  max-height: 0px;
  overflow: hidden;
}

.collContent.normalText {
  margin: 0;
}

.collColLeft {
  margin-bottom: 40px;
}

.module.module_related {
  margin-bottom: 50px;
}

.module.module_download {
  margin-bottom: 50px;
}

.relModTitle {
  margin-bottom: 10px;
  font-size: var(--smallFont);
}

.relModuleHolder {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  grid-gap: 10px;
}

.relElem {
  width: 100px;
}

.downloadModuleTitle {
  margin-bottom: 10px;
  font-size: var(--smallFont);
}

/* filter / grid */

.shopSection {
  margin-bottom: 50px;
  width: 90%;
  margin: auto;
}

.filterHolder {
  display: flex;
  gap: 10px;
  justify-content: center;
  flex-wrap: wrap;
}

.filterElem {
  box-sizing: border-box;
  position: relative;
  text-transform: uppercase;
  margin-bottom: 10px;
  border: 1px solid white;
  border-radius: 5px;
  cursor: pointer;
}

.filterMainElem,
.filterSubElem {
  box-sizing: border-box;
  padding: 5px 20px;
    appearance: none;
      border: none;
      background: none;
    display: block;
    box-sizing: border-box;
    cursor: pointer;
    text-transform: uppercase;
    padding: 5px 20px;
    background-color: transparent;
    color: inherit;
    font: inherit;
    text-align: center;
    border-radius: 5px;
    border-radius: 5px;
      width: 100%;

}
.filterMainElem.active {
  border-radius: 5px;
}

.filterMainElem.active,
.filterMainElem:hover,
.filterSubElem.active,
.filterSubElem:hover {
  background-color: black;
  color: white;
}

.filterElem:has(.filterSubElems):hover .filterSubElems {
  display: block;
}

.filterElem:has(.filterSubElems).active .filterSubElems {
  display: block;
}

.filterElem:has(.filterSubElems).active,
.filterElem:hover {
  border-radius: 5px;
  border: 1px solid black;
}

.filterSubElems {
  box-sizing: border-box;
  display: none;
}

.filterElem.active .filterSubElems:empty {
  padding: 0;
}

.filterElem:focus-within {
  outline: 2px solid #0066cc;
  outline-offset: 2px;
}

.categoryIntro {
  text-align: center;
  margin: 50px auto;
  max-width: var(--detWidth);
  line-height: 2em;
}

.prodHolder {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  grid-gap: 16px;
  margin-top: 50px;
  margin-top: 50px;
}

.prodElem {
  position: relative;
  border: 1px solid black;
  border-radius: 5px;
  margin-bottom: 10px;
  display: flex;
  flex-direction: column;
}

.prodElem a {
  height: 100%;
}

.prodSiegel {
  position: absolute;
  right: 0;
  top: 0;
  width: 30%;
  aspect-ratio: 1/1;
}

.prodTop {
  padding: 20px;
  padding-bottom: 10px;
  flex: 1 0 100px;
}
.prodTop * {
  font-size: 14px;
}

.prodTitle {
  font-weight: bold;
}

.prodTitle,
.prodSubtitle {
  line-height: 1.4em;
}

.prodImg {
  aspect-ratio: 1/1;
}

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

.prodButton {
  background-color: black;
  color: white;
  text-align: center;
  padding: 10px 0;
  text-transform: uppercase;
  font-size: 14px;
  flex-shrink: 1;
}

/* .skip-link {
  position: absolute;
  top: -9999px;

  left: -9999px;
  background: white;
  color: black;
  padding: 8px 16px;
  z-index: 1000;
  text-decoration: none;
}

.skip-link:focus {
  top: 0;

  left: 0;
} */

/* ----- PRODUCT DETAIL ----- */

.productDetail {
  margin-top: 40px;
}

.productHeader {
  margin-top: 50px;
  display: flex;
  justify-content: space-between;
  gap: 25px;
}

.productTitle h1 {
  font-size: 22px;
  margin-bottom: 25px;
}

.productPrice {
  font-weight: bold;
  font-size: 20px;
  margin-top: 25px;
}

.productCartButton {
  margin-top: 25px;
}

.button-style {
  background-color: black;
  color: white;
  border: none;
  padding: 10px 30px;
  cursor: pointer;
  border-radius: 5px;
  text-transform: uppercase;
  font-weight: 500;
  font-size: 16px;
}

.productGallery {
  width: 50%;
}

.productInfo {
  width: 50%;
}

.productVersionsDropdown {
  margin-top: 25px;
  margin-top: 25px;
  outline: none;
  border: 1px solid black;
  border-radius: 5px;
  padding: 7px 15px;
  font-size: 16px;
  cursor: pointer;
}

.productVersionsDropdown:focus {
  outline: 2px solid #0066cc;
    outline-offset: 6px;
    border-radius: 4px;
}

.productVersionsCircles {
  display: flex;
  gap: 5px;
  align-items: center;
  justify-content: left;
  margin-top: 25px;
}

.productVersionCircle {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  margin: 5px;
  cursor: pointer;
  outline: none;
  border: none;
  display: flex;
  align-items: center;
  justify-content: center;
}

.productVersionCircle.notColor {
  outline: 1px solid #ddd;
  outline-offset: 3px;
}

.productVersionCircle:hover {
  text-decoration: none;
}

.productVersionCircle.active {
  outline: 2px solid black;
  outline-offset: 3px;
}

.professionalSection {
  margin-top: 50px;
  text-align: center;
}

.professionalButton:hover {
  text-decoration: none;
}

.productGallery {
  width: 60%;
  max-width: 900px;
  padding: 50px;
  display: flex;
  gap: 25px;
  aspect-ratio: 4/3;
  margin-right: 25px;
  max-height: 500px;
}

.productGallerySidebar {
  display: flex;
  flex-direction: column;
  width: 80px;
  gap: 10px;
  height: 100%;
  overflow-y: scroll;
  scrollbar-width: none;
}

.productGalleryMain {
  width: calc(100% - 80px);
  transition: opacity 0.3s ease;
}

.productGalleryMain img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  display: block;
}

.productGalleryMain video {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.productGalleryImageWrapper {
  width: 100%;
  aspect-ratio: 1 / 1;
  border: 1px solid #ccc;
  border-radius: 10px;
  background: unset;
}

.productGalleryImage {
  width: 100%;
  height: 100%;
  object-fit: contain;
  cursor: pointer;
  display: block;
  aspect-ratio: 1 / 1;
  opacity: 0.5;
  transition: opacity 0.3s ease;
  border-radius: 10px;
}

.productGalleryMainImageZoom {
  text-align: right;
}

.productGalleryImage.active {
  opacity: 1;
}

.productDetails {
  margin-top: 50px;
}

.productCollapsibles {
  margin-top: 50px;
}

.productCollapsibleHeader {
  padding: 20px;
  border: none;
  width: 100%;
  border-top: 1px solid black;
  border-bottom: 1px solid black;
  margin-top: -1px;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  text-transform: uppercase;
  background: none;
  color: black;
    -webkit-appearance: none;
    appearance: none;
}

.productCollapsibleHeader h2 {
  font-weight: 500;
}

.productCollapsibleArrow {
  height: 20px;
  width: 20px;
  transform: rotate(0deg);
  transition: all 0.2s;
}

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

.productCollapsibleContent {
  max-height: 0;
  overflow: hidden;
  box-sizing: border-box;
  transition: all 0.2s;
}

.productCollapsibleContentInner {
  padding: 20px;
}

.productCollapsibleSection.open .productCollapsibleContent {
  max-height: 1000px;
}

.productCollapsibleSection.open .productCollapsibleArrow {
  transform: rotate(180deg);
}

.productVersionCircle:focus-visible {
  outline: 2px solid #0066cc;

  outline-offset: 3px;
}

.productGallerySidebar .productGalleryImageWrapper {


  outline: none;

}

.productGallerySidebar .productGalleryImageWrapper:focus-visible {
  outline: 2px solid #0066cc;

  outline-offset: 3px;
  border-radius: 4px;
  z-index: 10;

}


.productGalleryMain .productGalleryMainImageLightbox:focus-visible {
  outline: 2px solid #0066cc;
  outline-offset: 6px;
  border-radius: 4px;
}

/* ----- ACADEMY ----- */

.academySection {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 50px;
  max-width: 1400px;
  margin: 50px auto 75px;
}

.courseElem {
  /* display: flex;
  flex-direction: column; */
  border: 1px solid black;
  border-radius: 5px;
  margin-bottom: 20px;
  min-width: 500px;
  /* aspect-ratio: 16/9; */
  width: calc(50% - 25px);
}

@media screen and (max-width: 1000px) {
  .courseElem {
    min-width: unset;
    width: 100% !important;
  }
}

.courseElem:hover {
  text-decoration: none;
}

.courseImage {
  aspect-ratio: 16/9;
  width: 100%;
  height: 300px;
}

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

.courseInfo {
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.courseTitle,
.courseDateTime {
  font-weight: 500;
}

.courseButton {
  width: 100%;
  background-color: black;
  color: white;
  text-transform: uppercase;
  font-weight: 500;
  text-align: center;
  padding: 10px;
}

/* ----- CONTACTS ----- */

.contactsSection {
  max-width: 1400px;
  margin: 0 auto;
  padding: 50px;
}

.contactsList {
  display: flex;
  flex-wrap: wrap;
  gap: 50px;
  justify-content: center;
}

.contactElem {
  border: 1px solid black;
  padding: 20px;
  min-width: 400px;
  width: calc(33.33% - 50px);
}

.contactEmail,
.contactPhone {
  display: block;
  text-align: right;
}

.contactImage {
  aspect-ratio: 1/1;
  margin-bottom: 15px;
}

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

/* ----- JOBS ----- */

.jobsSection {
  background: url("../img/background_blue.jpg") no-repeat center center;
  width: 100vw;
  margin-left: -20px;
}

.jobsSectionHeader {
  width: 600px;
  margin: 0 auto;
}

.jobsList {
  display: flex;
  flex-wrap: wrap;
  gap: 50px;
  padding: 0 0px 50px 0;
  max-width: 1400px;
  margin: 0 auto;
  justify-content: center;
}

.jobElem {
  background-color: white;
  padding: 20px;
  display: flex;
  flex-direction: column;
  border: 1px solid black;
  min-width: 500px;
  width: calc(50% - 25px);
  gap: 25px;
}

.jobTitle {
  text-transform: uppercase;
  font-size: 20px;
}

.jobButton {
  width: fit-content;
  margin: 0 auto;
}

.jobButton:hover {
  text-decoration: none;
}

.jobsIconsGrid {
  display: flex;
  gap: 30px;
  flex-wrap: wrap;
  justify-content: center;
  margin: 30px auto 50px;
  max-width: 800px;
}

.jobsIconsElem {
  width: 120px;
}

.jobsIconsImage {
  width: 80px;
  margin: auto;
}

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

.jobsIconsText {
  font-size: 14px;
  text-align: center;
}

/* ----- FORMS ----- */

.formSection {
  background-color: #f8f8f8;
  width: 100vw;
  margin-left: -20px;
  margin-top: 75px;
  margin-bottom: 75px;
}

.formSectionInner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 50px 25px;
}

.formHeader {
  text-align: center;
  margin-bottom: 50px;
}

.formTitle {
  text-transform: uppercase;
  font-size: 20px;
  font-weight: 500;
  margin-bottom: 20px;
}

form {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.formRow {
  width: 100%;
  display: flex;
  gap: 15px;
  flex-direction: column;
}

.formRowFlex {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
}

.formColumn {
  display: flex;
  flex-direction: column;
  width: calc(50% - 7.5px);
  gap: 15px;
}

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="url"],
input[type="number"],
textarea {
  padding: 10px;
  border: 1px solid #ccc;
  border-radius: 5px;
  width: 100%;
}

input[type="checkbox"],
input[type="radio"] {
  width: 20px;
  height: 20px;
  cursor: pointer;
}

.radioGroup,
.checkboxGroup {
  display: flex;
  gap: 15px;
}

.checkboxGroup label,
.radioGroup label {
  display: flex;
  align-items: center;
  gap: 10px;
}

.formSubmitButton {
  width: fit-content;
  margin: 0 auto;
}

@media screen and (max-width: 1000px) {
  .productHeader {
    flex-direction: column;
  }

  .module_quote
  {
    width: 80vw !important;
     color: black !important;
     background: none !important;
     border: 1px solid black;
  }

    .module_quote *
    {
      color: black !important;
    }

    .linkText {
      width: 80vw !important;
        color: black !important;
        background: none !important;
        border: 1px solid black;
    }
/* 
 .linkText {
  display: inline-block;
  padding: 10px 20px;
  background-color: black;
  color: #fff;
  text-decoration: none;
  font-size: 1rem;
  font-weight: 500;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  text-align: center;
  transition: background-color 0.2s ease, transform 0.1s ease;
} */

  /* button.linkText {
    all: unset;
      width: 80vw;
      z-index: 5;
      color: black !important;
      background: none !important;
      border: 1px solid black;
    } */

        /* a.linkText {
          all: unset;
          display: block;
          position: absolute;
          bottom: 10%;
          left: 50%;
          transform: translateX(-50%);
          padding: var(--buttonPadd, 10px 20px);
          background-color: black;
          color: white;
          cursor: pointer;
          text-align: center;
          text-decoration: none;
          text-transform: uppercase;
          z-index: 5;
        } */
    

        a.linkText:hover,
        a.linkText:focus {
          background-color: #222;
          text-decoration: none;
        }
    
        a.linkText:focus-visible {
          outline: 2px solid #fed783;
          outline-offset: 3px;
        }
    

        a.linkText sup {
          font-size: 0.7em;
          vertical-align: super;
        }

  .module.module_image .linkText {

    bottom: -55px;
  }

  .module_image.withLink
  {
    margin-bottom:50px;
  }

  .module.module_video .linkText {

    bottom: -55px;
    }



    .module_video.withLink
    {
      margin-bottom:50px;
    }



  .productInfo,
  .productGallery {
    width: 100%;
  }

  .productGallery {
    width: 100%;
    padding: 25px;
  }

  /* ----- FORMS ----- */

  .formColumn {
    width: 100%;
    min-width: unset;
  }
}

.bmElem {
  display: flex;
  animation-name: marquee;
  animation-duration: 10s;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
}

.bmElemRight {
  display: flex;
  animation-name: marqueeRight;
  animation-duration: 10s;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
}

.nBmElem {
  line-height: 300px;
  height: 300px;
}

@keyframes marquee {
  0% {
    transform: translate(0, 0);
  }

  100% {
    transform: translate(-100%, 0);
  }
}

@keyframes marqueeRight {
  0% {
    transform: translate(-100%, 0);
  }

  100% {
    transform: translate(0, 0);
  }
}

@media screen and (max-width: 1200px) {
  .prodHolder {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media screen and (max-width: 1000px) {
  .prodHolder {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media screen and (max-width: 850px) {
  .prodHolder {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media screen and (max-width: 850px) {
  .module.module_column_start.col_start_type_0,
  .module.module_column_start.col_start_type_1 {
    width: 100% !important;
  }



@media screen and (max-width: 400px) {
  a.linkText {
    position: static;
    display: block;
    width: 80vw;
    margin: 20px auto 0;
    transform: none;
  }

  .module.module_image.withLink,
  .module.module_video.withLink {
    margin-bottom: 70px;

  }
}

}
