:root {
    --primary: #e50033;
    --dark: #333;
    --medium: #707070;
}

@media (min-width: 1200px) {
    .layout-1220 .container,
    .layout-1220 .block.category.event,
    .layout-1220 .footer.content,
    .layout-1220 .header.content,
    .layout-1220 .navigation,
    .layout-1220 .page-main,
    .layout-1220 .page-wrapper > .breadcrumbs > ul,
    .layout-1220 .page-wrapper > .page-bottom,
    .layout-1220 .page-wrapper > .widget,
    .layout-1220 .top-container {
        max-width: 80% !important;
    }
}

.matrix_layoutMain.container {
    max-width: 100% !important;
}

/* ---------- HEADER MAINNAVI ---------- */

body .page-header.type1 .header-contact a {
  color: var(--medium);
}

body .page-header .minicart-wrapper .action.showcart, .page-header .minicart-wrapper .action.showcart:before, 
body .page-header .minicart-wrapper .action.showcart.active:before, .page-header.type18 .wishlist {
  color: var(--medium);
}

body .minicart-wrapper .action.showcart .minicart-icon {
    font-size: 1.5rem;
}

body .page-header.type1 .header-contact .my-account i, 
body .page-header.type1 .header-contact .wishlist i {
    font-size: 1.5rem;
    display: block;
}



@media (min-width: 992px) {
    body .page-header {
        box-shadow: rgba(0, 0, 0, 0.1) 0px 10px 20px 0px;
    }

    body .page-header .header-main {
        border-bottom: 1px solid #e5e5e5;
    }

    body .page-header.type1 .navigation:not(.side-megamenu) .level0 .level-top {
        font-size: 16px;
        font-weight: 500;
    }
}
@media (min-width: 1200px) {
    body .page-header.type1 .navigation li:first-child {
        display: none;
    }
}

body main.page-main {
    padding-top: 2rem !important;
}

/* ---------- CATEGORY ---------- */
.catalog-category-view .page-title-wrapper {
    display: block;
}

body #maincontent.page-main > .page-title-wrapper .page-title {
    font-size: 36px;
}
body #maincontent .page-title span {
    color: var(--dark);
}

/* ---------- PRODUCT ITEM ---------- */

body .product-item-info {
    border: 1px solid #e5e5e5;
    background-color: #ffffff;
    transition: all 0.3s ease;
}

body .product-item-info:hover {
    box-shadow: 0 15px 35px -5px rgba(0, 0, 0, 0.1);
}

body .product-item-info:hover .product-item-photo {
    box-shadow: none;
}

body .product-item-name a {
    font-size: 1.1rem;
    font-weight: 600;
}

/* ---------- PRODUCT ITEM ACTIONS ---------- */

body
    .product-item-info
    .product-item-details
    .product-item-actions
    .tocart.primary {
    transition: all 0.3s ease;
    color: #fff;
    background-color: var(--primary);
    border-color: transparent;
    line-height: 40px;
    padding: 0 0.85rem;
    font-size: 0.9rem;
    height: 42px;
    font-weight: 600;
}

body .product-item .tocart:before {
    content: "\e91d";
}

body
    .product-item-info
    .product-item-details
    .product-item-actions
    .tocart.primary:hover {
    background-color: var(--dark);
    border-color: transparent;
}

body .action.primary,
body
    .products-grid
    .product-item-info:hover
    .product-item-details
    .product-item-actions
    .tocart {
    background-color: var(--dark);
    border-color: transparent;
}

/* ---------- PRODUCT INFO ---------- */
/* Detailseite der Produkte */

body .product-info-main .page-title-wrapper .page-title {
    margin-bottom: 1.5rem !important;
}

body .product-info-main .product.overview {
    font-size: 1rem;
    margin-bottom: 2rem;
}

@media (min-width: 768px) {
    body.page-layout-1column .product.media,
    body.page-layout-2columns-left .product.media,
    body.page-layout-2columns-right .product.media,
    body.page-layout-3columns .product.media,
    body.page-product-downloadable .product-options-wrapper {
        width: 40%;
    }
}

@media (min-width: 768px) {
    body.page-layout-1column .product-info-main,
    body.page-layout-2columns-left .product-info-main,
    body.page-layout-2columns-right .product-info-main,
    body.page-layout-3columns .product-info-main,
    body.page-product-downloadable .product-options-bottom {
        width: 50% !important;
        margin-top: 4rem !important;
    }
}

/* printQ Button "Angebot" + Box "sonstige" ausblenden */
body .printq_matrix_app .matrix_quotationButton,
body .printq_matrix_app .matrix_otherOptionsTable {
    display: none;
}

html:root {
    --pq_headerColor: #333333 !important;
}



/* Bootstrap Anpassungen */
.font-weight-bolder   {font-weight: bolder !important;}
.font-weight-light    {font-weight: 300 !important;}
.font-weight-lighter  {font-weight: lighter !important}






  .cms-index-index .page-main {
    max-width: 100%;
  }
  .columns .column.main {
      padding-bottom: 0;
  }
  .custom-banner-1 {
      max-height: 700px;
      min-height: 700px;
      font-size: 1rem;
  }
  .custom-banner-1 .row {
      margin-right: 0;
      margin-left: 0;
  }
  .custom-banner-1 .row > [class*="col-"] {
      padding-right: 0;
      padding-left: 0;
  }
  .custom-layer-img {
      left: 606.781px;
      top: 88.5px;
  }
  .opacity-7 {
    opacity: .7;
  }
  .vc_btn3-container {
      margin-bottom: 20px;
  }
  .porto-u-heading {
    margin-bottom: 17px;
  }
  .porto-u-heading .porto-u-main-heading h1, 
  .porto-u-heading .porto-u-main-heading h2, 
  .porto-u-heading .porto-u-main-heading h3, 
  .porto-u-heading .porto-u-main-heading h4, 
  .porto-u-heading .porto-u-main-heading h5, 
  .porto-u-heading .porto-u-main-heading h6 {
    margin: 0;
    padding: 0;
    line-height: normal;
  }


  /* Custom Kripps */
  .porto-u-heading .porto-u-main-heading h1 {
    line-height: 1.1;
    font-size: clamp(2rem, 5vw, 3rem);
  }

  .porto-u-heading .porto-u-subtitle-heading span {
    line-height: 1.1;
    font-size: clamp(1.4rem, 4vw, 1.75rem);

  }

  .porto-u-heading .porto-u-subtitle-heading span.highlight-primary,
  .porto-u-heading .porto-u-subtitle-heading span.highlight-dark {
    display: inline-block;
    transform: rotate(357deg);
    color: #fff;
    padding: 5px 10px;
  }

  .porto-u-heading .porto-u-subtitle-heading span.highlight-primary {
    background: var(--primary);
  }
    .porto-u-heading .porto-u-subtitle-heading span.highlight-dark {
    background: var(--dark);
  }

  .porto-u-text {
    font-size: clamp(1.2rem, 4vw, 1.5rem);
  }





  .custom-list-1 {
      margin-left: -4px;
      list-style: none;
      font-size: .875em;
      padding-left: 0;
  }
  .custom-list-1 li {
      padding: 7px 0;
      letter-spacing: -.035em;
      margin: 0;
  }
  .custom-list-1 li i {
      margin-right: 5.5px;
  }
  .coupon-sale-text {
      position: relative;
      padding: 0 13px;
  }
  .coupon-sale-text sup {
      font-size: .5em;
  }
  .coupon-sale-text::before {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    transform: rotate(-2deg);
    z-index: 0;
    background-color: #ff5b5b;
  }
  .coupon-sale-text h2 {
      position: relative;
  }
  .custom-pos-1 {
    margin-right: 6px;
    vertical-align: 7px;
    text-indent: -2px;
  }
  .custom-indent-1 {
    text-indent: -1px;
  }

  .banner-effect, .banner-effect-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
  }
  .porto-ibanner .porto-ibanner-desc .porto-ibanner-container {
    position: relative;
    height: 100%;
  }
  .porto-ibanner-layer {
    text-align: left;
    font-size: 1rem;
    position: absolute;
    z-index: 10;
  }



  .owl-carousel.nav-inside .owl-dots {
    bottom: 2px;
    margin-top: 10px;
    position: absolute;
    right: 6px;
    left: 6px;
    z-index: 1;
  }
  .custom-dots-pos-1 .owl-nav.disabled+.owl-dots {
    bottom: 40%
  }
  .dots-style-1.owl-carousel .owl-dot span {
    width: 20px;
    height: 20px;
    border-radius: 50%
  }
  .products-slider.dots-style-1.owl-carousel .owl-dot span {
    width: 14px;
    height: 14px;
  }
  .products-slider.owl-carousel.dots-style-1 .owl-dot.active span:after, .products-slider.owl-carousel.dots-style-1 .owl-dot:hover span:after {
    left: 3px;
    right: 3px;
    top: 3px;
    bottom: 3px;
  }
  .dots-style-1.owl-carousel .owl-dot.active span:after,
  .dots-style-1.owl-carousel .owl-dot:hover span:after {
    left: 4px;
    right: 4px;
    bottom: 4px;
    top: 4px;
    background-color: #fff;
    color: #fff
  }
  .custom-dot-black .owl-carousel.dots-style-1 .owl-dot span {
    border-color: #fff;
  }
  .custom-dot-black .owl-carousel.dots-style-1 .owl-dot.active span, .custom-dot-black .owl-carousel.dots-style-1 .owl-dot:hover span {
    border-color: #fff;
  }
  .z-index-1 {
    z-index: 1;
  }
  .references .owl-carousel .owl-nav.disabled+.owl-dots {
    margin-top: 30px;
}
  .custom-service .row {
      justify-content: center;
  }
  .custom-service .porto-sicon-box {
      box-shadow: 0 0 50px 0 rgba(0,0,0,0.07);
  }
  .custom-sale {
    display: inline-block;
    position: relative;
    z-index: 1;
    padding: .7em 1em;
    margin-left: 44px;
    margin-right: 26px;
    color: #fff;
  }
  .custom-sale::before {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    transform: rotate(-2deg);
    z-index: -1;
    background: linear-gradient(-139deg,#222529,#000);
  }
  .custom-cta .vc_row-has-fill {
    align-items: center;
  }
  .custom-cta-left .wpb_wrapper {
    display: flex;
    align-items: center;
  }
  @media (max-width: 1279px){
    .ps-m-xl {
      padding-left: .5rem !important;
    }
  }
  @media(max-width: 991px) {
    .custom-banner-1 {
        max-height:680px;
        min-height: 680px;
        padding: 50px 0 50px !important;
        font-size: .8rem;
    }
    .custom-banner-2 {
        min-height: 680px !important;
    }
    .custom-cta .vc_row-has-fill,.custom-cta .wpb_wrapper {
        flex-direction: column;
    }
    .custom-padding-category {
        padding-bottom: 85px!important;
    }
    .custom-sale {
        margin: 0 20px;
    }
    .custom-service {
        margin-top: 0 !important;
    }
  }
  @media(max-width: 767px) {
    .custom-dots-pos-1 .owl-nav.disabled+.owl-dots {
        bottom: 10%;
    }
    .ps-m-xl {
        padding-left: 5px !important;
    }
    .text-desc-center .porto-u-heading,.text-desc-center .vc_column-inner {
        text-align: center !important;
    }
  }
  @media(max-width: 767px) and (min-width:576px) {
    .of-md-20 {
        margin-left:20%;
    }
  }
  @media (max-width: 575px) {
    .custom-banner-1 {
        font-size:.65rem;
    }
    .of-md-20 {
        width: 50%;
        flex: 0 0 50%;
        max-width: 50%;
    }
  }
  @media (min-width: 992px) {
    .text-lg-start {
      text-align: left !important;
    }
  }
  ul.products li.product-category .thumb-info-wrapper:after {
    background: rgba(27, 27, 23, 0);
  }
  ul.products li.product-category:hover .thumb-info-wrapper:after {
    background: rgba(27, 27, 23, 0.15);
  }
  .custom-dot-white .owl-carousel.dots-style-1 .owl-dot span {
    border-color: #fff;
    opacity: .5;
  }
  .custom-dot-white .owl-carousel.dots-style-1 .owl-dot.active span, .custom-dot-white .owl-carousel.dots-style-1 .owl-dot:hover span {
    border-color: #fff;
    opacity: 1;
  }
  .custom-dot-white .owl-carousel.dots-style-1 .owl-dot.active span:after, .custom-dot-white .owl-carousel.dots-style-1 .owl-dot:hover span:after {
    background-color: #fff;
    color: #fff;
  }
  .porto-recent-posts {
    display: flex;
    flex-wrap: wrap;
    margin-left: -10px;
    margin-right: -10px;
}
.porto-recent-posts .post-slide {
    flex: 0 0 33.333%;
    max-width: 33.333%;
    padding: 0 10px;
    margin-bottom: 30px;
}
@media(max-width: 991px){
.porto-recent-posts .post-slide {
    flex: 0 0 50%;
    max-width: 50%;
}
}
@media(max-width: 767px){
.porto-recent-posts .post-slide {
    flex: 0 0 100%;
    max-width: 100%;
}
}
.porto-recent-posts .post-item {
    box-shadow: 0 0 50px rgb(0 0 0 / 7%);
    padding: 1.5rem 1.2rem 2.4rem;
}
.porto-recent-posts .post-item .post-date {
    top: 35px;
    left: 30px;
}
.porto-recent-posts h4 {
    font-size: 20px;
    font-weight: 600;
    letter-spacing: -.025em;
    margin-top: 1rem;
    margin-bottom: 20px;
}
.porto-recent-posts .post-item .post-excerpt {
    font-size: inherit;
    margin-bottom: 0;
    line-height: 25px;
    letter-spacing: -.028em;
}
.post-item .read-more, .post-item .read-more-block {
    font-size: inherit;
    font-weight: 700;
    color: #3467ef;
    display: block;
    margin-top: 12px;
    text-transform: uppercase;
}
.vc_btn3-container a:visited, .vc_btn3-container .alink:visited {
    color: #fff;
}

/* UNOprints custom CSS */

.unoprints-icon-box {
  height: 100%;
  background: #fff;
  padding: 0px 30px 30px;
  text-align: center;
  box-shadow: 0px 0px 20px 0px #9595952b;
}
.unoprints-icon-box .icon-wrapper {
  position: relative;
  top: -25px;
}

.unoprints-icon {
  width: 50px;
  height: 50px;
  margin: 0 auto;
  background: var(--primary);
  display: flex;
  rotate: 45deg;
  align-items: center;
  justify-content: center;
}

.unoprints-icon i{
  rotate: -45deg;
  color: #fff;
  font-size: 1.5rem;
}


.unoprints-box-title {
  font-weight:700;
  font-size: 1.4rem;
  line-height: 1.5;
  letter-spacing:0;
  margin-bottom:5px;
  color:var(--medium);
}
.unoprints-box-text {
  font-weight:400;
  font-size:1rem;
  line-height: 1.5;
}



/* OWL-Carousel - Home Banner */
/* Custom Settings KRiPPS */

.owl-carousel.home-banner-slider .banner {
  padding: 80px 0; 
}

.owl-carousel.home-banner-slider .custom-banner-1 {
  background: linear-gradient(44deg, #c1c1c1, #ffffff);
}

@media screen and (max-width: 991px) {
  .owl-carousel.home-banner-slider .owl-item img {
    max-height: 300px;
    max-width:  fit-content;
    margin: auto;
  }
}