/* HOME PAGE start */
.home-block {
  padding-top: 20px;
}
.home-description {
  margin-top: -24px;
}

.blocks__item_slider::before, 
.home-slider::before, 
#home-categories::before {
    --padding-top: 24px;
    --padding-bottom: 60px;
    --padding-top-next: 80px;
    --background-home-page: #f9f9f9;
    
    content: '';
    display: inline-block;
    position: absolute;
    width: 100vw;
    height: 100%;
    top: calc(-1 * var(--padding-top));
    left: calc((-100vw + 100%) / 2);
    background-color: var(--background-home-page);	
}
#home-categories::before {
  height: calc(100% + var(--padding-top) + var(--padding-top-next))
}
/* .home-block .title-section, */
.title-section,
.home-categories__title,
.feedback__title {
  position: relative;
  margin: 0;
}



/* SLIDER start */
.home-slider {
  position: relative;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  
  min-height: 400px;
}
.home-slider::before {
  top: -20px;
  height: calc(100% + 20px + 30px);
}
.home-slider .slick-track,
.home-slider .slick-slide img,
.home-slider,
.home-slider__slider {
  /* max-height: 407px; */
}
.home-slider .slick-slider {
  margin-bottom: 0;
} 
.home-slider .slick-slide img {
  width: 100%;
}
.home-slider__slider {
  max-width: 998px; /* 998px - 80% / 860px */
  min-width: 0;  
  flex: auto;
}
.home-slider .slick-slide {
  background-color: var(--background-home-page);
}

.home-slider .slick-list,
.home-slider .slick-slide img {
  border-radius: var(--border-radius);
}
.home-slider .slick-prev, 
.home-slider .slick-next {
    z-index: 1;
    top: 50%;
    width: 20px;
    height: 20px;
    padding: 0;
    box-sizing: border-box;
    border-radius: 50%;
    background-color: #918C8C30;
    display: flex;
    align-items: center;
    margin: 0;
}
.home-slider .slick-prev {
  left: 15px;
}
.home-slider .slick-next {
  right: 15px;
}
.home-slider .slick-prev:before,
.home-slider .slick-next:before {
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  padding: 6px;
  margin: 0;
  opacity: 1;
  mask-image: url(/wa-data/public/site/img/icons/angle-right.svg);
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  background-color: #5C5C5C;
  transform: translate(-50%, -50%);
}
.home-slider .slick-prev:before {  
  transform: translate(-50%, -50%) rotate(180deg);
}
.home-slider .slick-dots {
  bottom: 5px;
  z-index: 1;
}
.home-slider .slick-dots li::before {
  content: none !important;
}
.home-slider .slick-dots li button:before {
  font-size: 30px;
}

/* megashop slider - start */
.blocks__item_slider {
  position: relative;
} 
.blocks__item_slider::before {
  height: calc(100% + var(--padding-top) + var(--padding-bottom));
}
/* megashop slider - end */
/* SLIDER end */

/* BANNERS start */
.home-slider__banners {
  display: flex;
  max-width: 19%; /* 230px */
  flex: 0 0 255px;
  flex-flow: column nowrap;
  justify-content: flex-start;
  gap: 16px;
  z-index: 1;
}

.banner {
  width: 100%;
  position: relative;
  background-size: cover;
  background-repeat: no-repeat;
  background-color: #ffffff;
  border-radius: var(--border-radius);
}

.home-slider__banners .banners__item {
  width: 100%;
  height: 33%;
}

.banner__text {
  display: block;
  max-width: 70%;
  position: absolute;
  padding: 10px 15px;
  bottom: 0;
  font-size: 20px;
  line-height: 1.2;
  font-weight: 700;
  color: #ffffff;
  text-align: left;
}
.banner__text .highlight {
  color: var(--primary-color);
}

.banner.banner--offices {  
  background-image: url(/wa-data/public/site/img/home/banner_offices.png);
}

.banner.banner--delivery {  
  background-image: url(/wa-data/public/site/img/home/banner_delivery.png);
}
.banner.banner--delivery .banner__text {
  color: #303030;
}

.banner.banner--work-time {  
  background-image: url(/wa-data/public/site/img/home/banner_work-time.png);
}

.banner.banner--franchise {  
  background-image: url(/wa-data/public/site/img/home/banner_franshiza-spb.gif);
}
/* BANNERS end */

.blocks__item-news {
  margin-top: calc((var(--padding-top-parent) + var(--padding-gap-parent)) * -1);
  --padding-top-parent: 30px;
  --padding-gap-parent: 62px;
}
#home-categories {
  position: relative;
  margin: 50px 0 40px;
}
.home-categories {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  position: relative;
  max-width: 100%;
  gap: 15px;

  margin: 0 0 30px;
  /* padding: 5px; */
}
.home-categories .bg-img {
  display: inline-block;
  vertical-align: top;
  height: 256px;
  /* width: 290px; */
  margin: 0;
  overflow: hidden;
  text-align: center;

  border: 1px solid #cbcbcb;
  border-radius: var(--border-radius);
  background-color: #fff;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: bottom;

  text-decoration: none;
  float: left;

  order: 100;
  
  width: 100%;
  height: auto !important;
  min-height: auto;
  aspect-ratio: 1;
}
.home-categories a:hover {
  border-color: #f68b1f;
}
.home-categories .bg-img h3 {
  display: block;
  margin: 15px;
  color: #000000;
  font-size: 16px;
  line-height: 1.2;
  font-family: var(--font-family-main);
  font-weight: 400;
}
.home-categories .allcat {
  min-height: 20px !important;
  padding-bottom: 0px;
  border-radius: 5px;
}

.home-categories__wrapper-btn {
  position: relative;
  margin-bottom: 50px;
  text-align: center;
}

.home-categories__btn {
  font-size: 16px;
}

.bg-img {
  background-size: cover;
  min-height: 251px;
}
.bg-img .dark-text {
  color: #ffffff !important;
}

.bg-img.bg-img--vertical {
  grid-row: span 2;
  /* height: 528px !important; */
  height: 100% !important;
}

.bg-img--tshirt {
  background-image: url(/wa-data/public/site/img/home/tshirt.png);
}
.bg-img--copy {
  background-image: url(/wa-data/public/site/img/home/copy_n_print.png);
}
.bg-img--stamp {
  background-image: url(/wa-data/public/site/img/home/stamp.png);
}
.bg-img--vizitki {
  background-image: url(/wa-data/public/site/img/home/vzt.png);
}
.bg-img--photodoc {
  background-image: url(/wa-data/public/site/img/home/photodoc.png);
}
.bg-img--photo {
  background-image: url(/wa-data/public/site/img/home/photo.png);
}
.bg-img--photobook {
  background-image: url(/wa-data/public/site/img/home/photobook.png);
}
.bg-img--suv {
  background-image: url(/wa-data/public/site/img/home/suv.png);
}
.bg-img--calendar {
  background-image: url(/wa-data/public/site/img/home/calendar.png);
}
.bg-img--sticker {
  background-image: url(/wa-data/public/site/img/home/stiker.png);
}
.bg-img--polygraphy {
  background-image: url(/wa-data/public/site/img/home/polygraphy.png);
}
.bg-img--rollup {
  background-image: url(/wa-data/public/site/img/home/rollup.png);
}
.bg-img--canvas {
  background-image: url(/wa-data/public/site/img/home/canvas.png);
}
.bg-img--draft {
  background-image: url(/wa-data/public/site/img/home/draft.png);
}
.bg-img--cube {
  background-image: url(/wa-data/public/site/img/home/cube.png);
}
.bg-img--laser {
  background-image: url(/wa-data/public/site/img/home/laser.png);
}
.bg-img--shender {
  background-image: url(/wa-data/public/site/img/home/shender.png);
}
.bg-img--tekstil {
  background-image: url(/wa-data/public/site/img/home/tekstil.png);
}
.bg-img--pets {
  background-image: url(/wa-data/public/site/img/home/pets.png);
}
.bg-img--dip {
  background-image: url(/wa-data/public/site/img/home/dip2.png);
}
.bg-img--wide {
  background-image: url(/wa-data/public/site/img/home/wide.png);
}
.bg-img--wide h3,
.bg-img--dip h3 {
  color: #000000 !important;
}
.bg-img--scan {
  background-image: url(/wa-data/public/site/img/home/scan.png);
}
.bg-img--stamping {
  background-image: url(/wa-data/public/site/img/home/stamping.png);
}
.bg-img--risograph {
  background-image: url(/wa-data/public/site/img/home/risograph.png);
}
.bg-img--txt {
  background-image: url(/wa-data/public/site/img/home/txt.png);
}
.bg-img--fax {
  background-image: url(/wa-data/public/site/img/home/fax.png);
}
.bg-img--vhs {
  background-image: url(/wa-data/public/site/img/home/vhs2.png);
}
.bg-img--cd {
  background-image: url(/wa-data/public/site/img/home/cd.png);
}
.bg-img--byro {
  background-image: url(/wa-data/public/site/img/home/25_2.png);
}
.bg-img--cartridge {
  background-image: url(/wa-data/public/site/img/home/cartridge.png);
}
.bg-img--delivery {
  background-image: url(/wa-data/public/site/img/home/courier.png);
}
.bg-img--mediax {
  background-image: url(/wa-data/public/site/img/home/mediax.png);
}
.bg-img--holidays {
  background-image: url(/wa-data/public/site/img/home/holidays.png);
}

.bg-img--holidays-ny {
  background-image: url(/wa-data/public/site/img/home/holidays-ny.png);
}

.bg-img--holidays-sv {
  background-image: url(/wa-data/public/site/img/home/holidays-sv.png);
}
.bg-img--holidays-23feb {
  background-image: url(/wa-data/public/site/img/home/holidays-23feb.png);
}
.bg-img--holidays-8mar {
  background-image: url(/wa-data/public/site/img/home/holidays-8mar.png);
}
.bg-img--holidays-9may {
  background-image: url(/wa-data/public/site/img/home/holidays-9may.png);
}

.home-description #reviews.new-feedback .feedback__title {
  margin-bottom: 0 !important;
}


@media (max-width: 1023px) {
  .home-categories {
    margin: 0 0 30px;
  }
  .home-slider, 
  .home-slider__banners, 
  .home-slider_offset-sidebar .home-slider__banners {
    flex-flow: column nowrap;
  }
}
@media (min-width: 550px) and (max-width: 768px) {
  .home-categories {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (max-width: 550px) {
  .home-categories {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 768px) {
  /* SLIDER start */
  
  .home-slider {
    min-height: none;
    margin-top: 16px;
    gap: 10px;
  }
  .home-slider__slider {
    min-height: 168px;
  }
  .home-slider .slick-prev:before, 
  .home-slider .slick-next:before {
    display: none;
  }
  .home-slider .slick-dots {
    display: none !important;
  }
  /* SLIDER end */

  /* BANNERS start */
  .home-slider__banners {
    max-width: none;
    display: grid;
    grid-template-areas:         
      'second first'
      'third first';
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 95px 95px;
    gap: 10px;

    flex: 0;
  }

  .home-slider__banners--one-child {
    gap: 0;
    grid-template-areas:
      'first first'
      'first first';
  }

  .banners__item {
    margin-top: 0;
  }

  .home-slider__banners .banners__item {
    height: 100%;
  }

  .home-slider__banners--one-child .banners__item {
    height: 100%;
  }
  
  .home-slider__banners .banner.banner--offices {  
    grid-area: first;
  }
  .home-slider__banners:not(.home-slider__banners--one-child) .banner.banner--offices {  
    background-image: url(/wa-data/public/site/img/home/banner-mobile_offices.png);
  }
  .home-slider__banners:not(.home-slider__banners--one-child) .banner.banner--delivery {  
    background-image: url(/wa-data/public/site/img/home/banner-mobile_delivery.png);
    grid-area: second;
  }
  /* .home-slider__banners:not(.home-slider__banners--one-child) .banner.banner--franchise {  
    grid-area: second;
  } */
  .home-slider__banners:not(.home-slider__banners--one-child) .banner.banner--work-time {  
    background-image: url(/wa-data/public/site/img/home/banner-mobile_work-time.png);
    grid-area: third;
  }

  .banner__text {
    padding: 4px 9px;
  }
  .banner.banner--offices .banner__text {
    bottom: 25%;
  }
  .banner.banner--delivery .banner__text,
  .banner.banner--work-time .banner__text {    
    line-height: 1;
  }
  .banner.banner--work-time {
    top: 0;
  }
  /* BANNERS end */

  #home-categories {
    margin: 0px;
    margin-top: 30px;
  }

  .title-section {
    /* margin-bottom: 0 !important;
    padding: 31px 0 26px; */
    text-transform: none;
    font-size: 20px !important;
  }
  .home-description {
    margin-top: calc((var(--padding-top-parent) + var(--padding-gap-parent)) * -1);
    --padding-top-parent: 15px;
    --padding-gap-parent: 30px;
    padding-bottom: 0;
  }
  .bg-img--holidays {
    order: 1 !important;
  }
  .bg-img--vizitki {
    order: 2 !important;
  }
  .bg-img--stamp {
    order: 3 !important;
  }
  .bg-img--photo {
    order: 4 !important;
  }
  .bg-img--copy {
    order: 5 !important;
  }
  .bg-img--photodoc {
    order: 6 !important;
  }
  .bg-img--photobook {
    order: 7 !important;
  }
  .bg-img--calendar {
    order: 8 !important;
  }
  .bg-img--sticker {
    order: 9 !important;
  }
  .bg-img--tshirt {
    order: 10 !important;
  }
  .bg-img--tekstil {
    order: 11 !important;
  }
  .bg-img--polygraphy {
    order: 12 !important;
    display: inline-block !important;
  }
  .bg-img--suv {
    order: 13 !important;
  }
  .bg-img--dip {
    order: 14 !important;
  }
  /* .bg-img--wide {
    order: 15 !important;
  } */
  .home-categories .bg-img h3 {
    display: block;
    padding: 12px 38px 12px 12px;
    margin: 0;
    text-align: left;
    font-size: 12px;
    font-weight: 500;
    line-height: 1;
    color: #000;
  }
  
  .home-categories__scrollbar {
    --container-padding: 20px;

    margin-inline: calc(var(--container-padding) * -1);
    scrollbar-width: none;
    overflow: auto;
  }
  .home-categories {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(52, 45px) !important;
    grid-template-rows: auto auto;
    padding-inline: var(--container-padding)  !important;
    width: -moz-max-content  !important;
    width: max-content  !important;
  }
  .home-categories__scrollbar .bg-img {
    grid-column: span 3; 
    
    position: relative;
    min-height: 70px;
    aspect-ratio: auto;
    background-position-y: 4px;
    background-position-x: 98%;
    background-size: 55%;
  }
  .home-categories__scrollbar .bg-img--vertical,
  .home-categories__scrollbar .bg-img--all-width {
    background-size: 100%;
    background-position-y: 50%;
  }
  .home-categories__scrollbar .bg-img:nth-child(2) { 
    grid-column: span 2;
    background-position-y: 20px;
  }  
  .home-categories__scrollbar .bg-img:nth-child(even) {   
    grid-row: 1;
  }
  .home-categories__scrollbar .bg-img:nth-child(odd) {
    grid-row: 2;
  }
  .bg-img--lamination img {
    position: absolute;
    max-width: 50px;
    max-height: 50px;
    bottom: 4px;
    right: 8px;
  }

  .blocks__item-news {
    margin-top: calc(var(--padding-top-parent) * -1);
  }
  
  .feedback__title {
    padding: 0;
  }
}
/* HOME PAGE end */