.block {
  width: 100%;
  position: relative;
}

.block-center {
  margin: 0 auto;
  max-width: 100%;
  position: relative;
  padding: 0 10px;
}
.block-center-no-p {
  margin: 0 auto;
  max-width: 100%;
  position: relative;
  padding: 0;
}

.block-slider {
  margin: 0 auto;
  max-width: 100%;
  position: relative;
}

.bxs {
  box-shadow: 0 0 7px -5px #000000;
  transition: all 0.5s ease-in-out;
}

.bxs:hover {
  box-shadow: 0 0 10px -5px #000000;
}

.op-50 {
  opacity: 50%;
}

/* flex */

.fbc {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
}

.fbr {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}

.jc-c {
  justify-content: center;
}

.jc-sb {
  justify-content: space-between;
}

.jc-sa {
  justify-content: space-around;
}

.jc-fe {
  justify-content: flex-end;
}

.jc-fs {
  justify-content: flex-start;
}

.ai-c {
  align-items: center;
}

.ai-fe {
  align-items: flex-end;
}

.as-c {
  align-self: center;
}

.fw-nw {
  flex-wrap: nowrap;
}

.fbc-fbr {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
}
@media (min-width: 1024px) {
  .fbc-fbr {
    flex-direction: row;
  }
}
.fbr-fbc {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}
@media (min-width: 1024px) {
  .fbr-fbc {
    flex-direction: column;
  }
}
/* grid */

.grid {
  display: grid;
}

.gtc-1,
.gtc-2,
.gtc-3 {
  grid-template-columns: 1fr;
}
.gtc-4 {
  grid-template-columns: 1fr 1fr;
}
.gtc-5,
.gtc-6 {
  grid-template-columns: 1fr 1fr 1fr;
}

@media (min-width: 768px) {
  .gtc-2,
  .gtc-3,
  .gtc-4,
  .gtc-5,
  .gtc-6 {
    grid-template-columns: 1fr 1fr;
  }
  .gtc-5,
  .gtc-6 {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
}
@media (min-width: 1024px) {
  .gtc-3 {
    grid-template-columns: 1fr 1fr 1fr;
  }
  .gtc-4 {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
  .gtc-5 {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  }
  .gtc-6 {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
  }
}
.gap-5 {
  gap: 5px;
}
.gap-10 {
  gap: 10px;
}
.gap-15 {
  gap: 15px;
}

/* position */

.pr {
  position: relative;
}

.pa {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}
.pf {
  position: fixed;
}

.oh {
  overflow: hidden;
}

.ps {
  position: sticky;
  top: 130px;
}

/* padding */

.p0 {
  padding: 0;
}
.p5 {
  padding: 5px;
}

.p10 {
  padding: 10px;
}

.p20 {
  padding: 20px;
}

.p30 {
  padding: 30px;
}

.p5-0 {
  padding: 5px 0;
}
.p10-0 {
  padding: 10px 0;
}
.p15-0 {
  padding: 15px 0;
}
.p20-0 {
  padding: 20px 0;
}
.p25-0 {
  padding: 25px 0;
}
.p30-0 {
  padding: 30px 0;
}
.p40-0 {
  padding: 40px 0;
}
.p50-0 {
  padding: 50px 0;
}

.p0-5 {
  padding: 0 5px;
}
.p0-10 {
  padding: 0 10px;
}
.p0-15 {
  padding: 0 15px;
}

.p0-20 {
  padding: 0 20px;
}
.p0-25 {
  padding: 0 25px;
}

.p0-30 {
  padding: 0 30px;
}

/* margin */

.mt-10 {
  margin-top: 10px;
}
.mt-20 {
  margin-top: 20px;
}
.mt-30 {
  margin-top: 30px;
}
.mt-40 {
  margin-top: 40px;
}
.mt-50 {
  margin-top: 50px;
}
.mb-10 {
  margin-bottom: 10px;
}

.mb-20 {
  margin-bottom: 20px;
}
.mb-30 {
  margin-bottom: 30px;
}
.mb-40 {
  margin-bottom: 40px;
}

.mb-50 {
  margin-bottom: 50px;
}
.mb-50i {
  margin-bottom: 50px !important;
}

.m0 {
  margin: 0 !important;
}
.mr-5 {
  margin-right: 5px;
}
.mr-10 {
  margin-right: 10px;
}
.mr-20 {
  margin-right: 20px;
}
.mr-30 {
  margin-right: 30px;
}

/* display */

.db {
  display: block;
}

.dn {
  display: none;
}

@media (min-width: 320px) and (max-width: 767px) {
  .dn-m {
    display: none;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .dn-t {
    display: none;
  }
}

/* text */

.ta-c {
  text-align: center;
}

.ta-l {
  text-align: left;
}
.cc-2,
.cc-3,
.cc-4 {
  column-count: 1;
}
@media (min-width: 768px) {
  .cc-2,
  .cc-3,
  .cc-4 {
    column-count: 2;
  }
}
@media (min-width: 1024px) {
  .cc-2 {
    column-count: 2;
  }

  .cc-3 {
    column-count: 3;
  }

  .cc-4 {
    column-count: 4;
  }
}
.cs-all {
  column-span: all;
}

/* font */

.fw-300 {
  font-weight: 300;
}

.fw-400 {
  font-weight: 400;
}

.fw-500 {
  font-weight: 500;
}

.fw-600 {
  font-weight: 600;
}
.fw-700 {
  font-weight: 700;
}

/* height */

.h100 {
  height: 100%;
}
.mh-30 {
  min-height: 30vw;
}
.max-h-400 {
  max-height: 400px;
  width: auto;
}
/* color */

.bg-w {
  background-color: #fff;
}
.bg-l-gr {
  background-color: var(--bg-l-gr);
}
.bg-l-red {
  background-color: var(--bg-l-red);
}
.bg-none {
  background-color: transparent;
}

/* radius */

.br-c {
  border-radius: 50%;
}

.br-5 {
  border-radius: 5px;
}

.br-10 {
  border-radius: 10px;
}
.br-15 {
  border-radius: 15px;
}

/* ratios */

.r2-1 {
  padding-top: 50%;
}

.r1-2 {
  padding-top: 200%;
}

.r4-3 {
  padding-top: 75%;
}

.r16-9 {
  padding-top: 56.25%;
}
/* width */

.sw100 {
  width: 100%;
}
.sw80 {
  width: 80%;
}
.sw75 {
  width: 75%;
}
.sw50 {
  width: 50%;
}
.sw33 {
  width: 33%;
}

.sw30 {
  width: 30%;
}
.sw25 {
  width: 25%;
}
.sw20 {
  width: 20%;
}
.mw-350 {
  max-width: 350px;
}
@media (min-width: 1024px) {
  .tw100 {
    width: 100%;
  }
  .tw80 {
    width: 80%;
  }
  .tw75 {
    width: 75%;
  }
  .tw70 {
    width: 70%;
  }
  .tw60 {
    width: 60%;
  }
  .tw50 {
    width: 50%;
  }
  .tw40 {
    width: 40%;
  }
  .tw33 {
    width: 33%;
  }
  .tw30 {
    width: 30%;
  }
  .tw25 {
    width: 25%;
  }
  .tw20 {
    width: 20%;
  }
  .block-center {
    padding: 0 20px;
  }
}

@media (min-width: 1280px) {
  .dw100 {
    width: 100%;
  }

  .dw80 {
    width: 80%;
  }

  .dw75 {
    width: 75%;
  }

  .dw70 {
    width: 70%;
  }

  .dw60 {
    width: 60%;
  }

  .dw50 {
    width: 50%;
  }

  .dw33 {
    width: 33%;
  }
  .dw30 {
    width: 30%;
  }

  .dw25 {
    width: 25%;
  }

  .dw20 {
    width: 20%;
  }

  .dw10 {
    width: 10%;
  }

  .block-center {
    padding: 0 30px;
  }
}

@media (min-width: 1366px) {
}

@media (min-width: 1440px) {
  .block-center,
  .block-slider {
    max-width: 1440px;
  }
}
