* {
  padding: 0;
  border: 0;
  margin: 0;
  box-sizing: border-box;
}

html {
  height: 100%;
}

body {
  min-height: 100%;
}

a {
  text-decoration: none;
  color: inherit;
}

input, select, textarea, button {
  background-color: transparent;
  font-family: inherit;
  font-size: inherit;
  color: inherit;
}

button {
  cursor: pointer;
}

ol, ul {
  list-style: none;
}

li {
  display: inline-block;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption, th, td {
  font-weight: normal;
  text-align: left;
}

.container, .container-full {
  width: 100%;
  min-width: 320px;
}

.container {
  margin: 0 auto;
}
@media (min-width: 420px) {
  .container {
    width: 400px;
  }
}
@media (min-width: 520px) {
  .container {
    width: 500px;
  }
}
@media (min-width: 720px) {
  .container {
    width: 700px;
  }
}
@media (min-width: 920px) {
  .container {
    width: 900px;
  }
}
@media (min-width: 1220px) {
  .container {
    width: 1200px;
  }
}

.break {
  width: 100%;
  float: left;
}

.container::before,
.container::after,
.container-full::before,
.container-full::after,
.break::before,
.break::after {
  display: table;
  content: " ";
}

.container::after,
.container-full::after,
.break::after {
  clear: both;
}

.space-0 {
  width: 100%;
  height: 0px;
}
.space-5 {
  width: 100%;
  height: 5px;
}
.space-10 {
  width: 100%;
  height: 10px;
}
.space-20 {
  width: 100%;
  height: 20px;
}
.space-30 {
  width: 100%;
  height: 30px;
}
.space-40 {
  width: 100%;
  height: 40px;
}
.space-60 {
  width: 100%;
  height: 60px;
}
.space-80 {
  width: 100%;
  height: 80px;
}
.space-100 {
  width: 100%;
  height: 100px;
}
.space-120 {
  width: 100%;
  height: 120px;
}
.space-140 {
  width: 100%;
  height: 140px;
}
.space-160 {
  width: 100%;
  height: 160px;
}
.space-180 {
  width: 100%;
  height: 180px;
}
.space-200 {
  width: 100%;
  height: 200px;
}
@media (min-width: 420px) {
  .space-xs-0 {
    width: 100%;
    height: 0px;
  }
  .space-xs-5 {
    width: 100%;
    height: 5px;
  }
  .space-xs-10 {
    width: 100%;
    height: 10px;
  }
  .space-xs-20 {
    width: 100%;
    height: 20px;
  }
  .space-xs-30 {
    width: 100%;
    height: 30px;
  }
  .space-xs-40 {
    width: 100%;
    height: 40px;
  }
  .space-xs-60 {
    width: 100%;
    height: 60px;
  }
  .space-xs-80 {
    width: 100%;
    height: 80px;
  }
  .space-xs-100 {
    width: 100%;
    height: 100px;
  }
  .space-xs-120 {
    width: 100%;
    height: 120px;
  }
  .space-xs-140 {
    width: 100%;
    height: 140px;
  }
  .space-xs-160 {
    width: 100%;
    height: 160px;
  }
  .space-xs-180 {
    width: 100%;
    height: 180px;
  }
  .space-xs-200 {
    width: 100%;
    height: 200px;
  }
}
@media (min-width: 520px) {
  .space-sm-0 {
    width: 100%;
    height: 0px;
  }
  .space-sm-5 {
    width: 100%;
    height: 5px;
  }
  .space-sm-10 {
    width: 100%;
    height: 10px;
  }
  .space-sm-20 {
    width: 100%;
    height: 20px;
  }
  .space-sm-30 {
    width: 100%;
    height: 30px;
  }
  .space-sm-40 {
    width: 100%;
    height: 40px;
  }
  .space-sm-60 {
    width: 100%;
    height: 60px;
  }
  .space-sm-80 {
    width: 100%;
    height: 80px;
  }
  .space-sm-100 {
    width: 100%;
    height: 100px;
  }
  .space-sm-120 {
    width: 100%;
    height: 120px;
  }
  .space-sm-140 {
    width: 100%;
    height: 140px;
  }
  .space-sm-160 {
    width: 100%;
    height: 160px;
  }
  .space-sm-180 {
    width: 100%;
    height: 180px;
  }
  .space-sm-200 {
    width: 100%;
    height: 200px;
  }
}
@media (min-width: 720px) {
  .space-md-0 {
    width: 100%;
    height: 0px;
  }
  .space-md-5 {
    width: 100%;
    height: 5px;
  }
  .space-md-10 {
    width: 100%;
    height: 10px;
  }
  .space-md-20 {
    width: 100%;
    height: 20px;
  }
  .space-md-30 {
    width: 100%;
    height: 30px;
  }
  .space-md-40 {
    width: 100%;
    height: 40px;
  }
  .space-md-60 {
    width: 100%;
    height: 60px;
  }
  .space-md-80 {
    width: 100%;
    height: 80px;
  }
  .space-md-100 {
    width: 100%;
    height: 100px;
  }
  .space-md-120 {
    width: 100%;
    height: 120px;
  }
  .space-md-140 {
    width: 100%;
    height: 140px;
  }
  .space-md-160 {
    width: 100%;
    height: 160px;
  }
  .space-md-180 {
    width: 100%;
    height: 180px;
  }
  .space-md-200 {
    width: 100%;
    height: 200px;
  }
}
@media (min-width: 920px) {
  .space-lg-0 {
    width: 100%;
    height: 0px;
  }
  .space-lg-5 {
    width: 100%;
    height: 5px;
  }
  .space-lg-10 {
    width: 100%;
    height: 10px;
  }
  .space-lg-20 {
    width: 100%;
    height: 20px;
  }
  .space-lg-30 {
    width: 100%;
    height: 30px;
  }
  .space-lg-40 {
    width: 100%;
    height: 40px;
  }
  .space-lg-60 {
    width: 100%;
    height: 60px;
  }
  .space-lg-80 {
    width: 100%;
    height: 80px;
  }
  .space-lg-100 {
    width: 100%;
    height: 100px;
  }
  .space-lg-120 {
    width: 100%;
    height: 120px;
  }
  .space-lg-140 {
    width: 100%;
    height: 140px;
  }
  .space-lg-160 {
    width: 100%;
    height: 160px;
  }
  .space-lg-180 {
    width: 100%;
    height: 180px;
  }
  .space-lg-200 {
    width: 100%;
    height: 200px;
  }
}
@media (min-width: 1220px) {
  .space-xl-0 {
    width: 100%;
    height: 0px;
  }
  .space-xl-5 {
    width: 100%;
    height: 5px;
  }
  .space-xl-10 {
    width: 100%;
    height: 10px;
  }
  .space-xl-20 {
    width: 100%;
    height: 20px;
  }
  .space-xl-30 {
    width: 100%;
    height: 30px;
  }
  .space-xl-40 {
    width: 100%;
    height: 40px;
  }
  .space-xl-60 {
    width: 100%;
    height: 60px;
  }
  .space-xl-80 {
    width: 100%;
    height: 80px;
  }
  .space-xl-100 {
    width: 100%;
    height: 100px;
  }
  .space-xl-120 {
    width: 100%;
    height: 120px;
  }
  .space-xl-140 {
    width: 100%;
    height: 140px;
  }
  .space-xl-160 {
    width: 100%;
    height: 160px;
  }
  .space-xl-180 {
    width: 100%;
    height: 180px;
  }
  .space-xl-200 {
    width: 100%;
    height: 200px;
  }
}

.grid-1 {
  float: left;
  width: 8.3333333333%;
  padding: 20px;
}
.grid-2 {
  float: left;
  width: 16.6666666667%;
  padding: 20px;
}
.grid-3 {
  float: left;
  width: 25%;
  padding: 20px;
}
.grid-4 {
  float: left;
  width: 33.3333333333%;
  padding: 20px;
}
.grid-5 {
  float: left;
  width: 41.6666666667%;
  padding: 20px;
}
.grid-6 {
  float: left;
  width: 50%;
  padding: 20px;
}
.grid-7 {
  float: left;
  width: 58.3333333333%;
  padding: 20px;
}
.grid-8 {
  float: left;
  width: 66.6666666667%;
  padding: 20px;
}
.grid-9 {
  float: left;
  width: 75%;
  padding: 20px;
}
.grid-10 {
  float: left;
  width: 83.3333333333%;
  padding: 20px;
}
.grid-11 {
  float: left;
  width: 91.6666666667%;
  padding: 20px;
}
.grid-12 {
  float: left;
  width: 100%;
  padding: 20px;
}
@media (min-width: 420px) {
  .grid-xs-1 {
    width: 8.3333333333%;
  }
  .grid-xs-2 {
    width: 16.6666666667%;
  }
  .grid-xs-3 {
    width: 25%;
  }
  .grid-xs-4 {
    width: 33.3333333333%;
  }
  .grid-xs-5 {
    width: 41.6666666667%;
  }
  .grid-xs-6 {
    width: 50%;
  }
  .grid-xs-7 {
    width: 58.3333333333%;
  }
  .grid-xs-8 {
    width: 66.6666666667%;
  }
  .grid-xs-9 {
    width: 75%;
  }
  .grid-xs-10 {
    width: 83.3333333333%;
  }
  .grid-xs-11 {
    width: 91.6666666667%;
  }
  .grid-xs-12 {
    width: 100%;
  }
}
@media (min-width: 520px) {
  .grid-sm-1 {
    width: 8.3333333333%;
  }
  .grid-sm-2 {
    width: 16.6666666667%;
  }
  .grid-sm-3 {
    width: 25%;
  }
  .grid-sm-4 {
    width: 33.3333333333%;
  }
  .grid-sm-5 {
    width: 41.6666666667%;
  }
  .grid-sm-6 {
    width: 50%;
  }
  .grid-sm-7 {
    width: 58.3333333333%;
  }
  .grid-sm-8 {
    width: 66.6666666667%;
  }
  .grid-sm-9 {
    width: 75%;
  }
  .grid-sm-10 {
    width: 83.3333333333%;
  }
  .grid-sm-11 {
    width: 91.6666666667%;
  }
  .grid-sm-12 {
    width: 100%;
  }
}
@media (min-width: 720px) {
  .grid-md-1 {
    width: 8.3333333333%;
  }
  .grid-md-2 {
    width: 16.6666666667%;
  }
  .grid-md-3 {
    width: 25%;
  }
  .grid-md-4 {
    width: 33.3333333333%;
  }
  .grid-md-5 {
    width: 41.6666666667%;
  }
  .grid-md-6 {
    width: 50%;
  }
  .grid-md-7 {
    width: 58.3333333333%;
  }
  .grid-md-8 {
    width: 66.6666666667%;
  }
  .grid-md-9 {
    width: 75%;
  }
  .grid-md-10 {
    width: 83.3333333333%;
  }
  .grid-md-11 {
    width: 91.6666666667%;
  }
  .grid-md-12 {
    width: 100%;
  }
}
@media (min-width: 920px) {
  .grid-lg-1 {
    width: 8.3333333333%;
  }
  .grid-lg-2 {
    width: 16.6666666667%;
  }
  .grid-lg-3 {
    width: 25%;
  }
  .grid-lg-4 {
    width: 33.3333333333%;
  }
  .grid-lg-5 {
    width: 41.6666666667%;
  }
  .grid-lg-6 {
    width: 50%;
  }
  .grid-lg-7 {
    width: 58.3333333333%;
  }
  .grid-lg-8 {
    width: 66.6666666667%;
  }
  .grid-lg-9 {
    width: 75%;
  }
  .grid-lg-10 {
    width: 83.3333333333%;
  }
  .grid-lg-11 {
    width: 91.6666666667%;
  }
  .grid-lg-12 {
    width: 100%;
  }
}
@media (min-width: 1220px) {
  .grid-xl-1 {
    width: 8.3333333333%;
  }
  .grid-xl-2 {
    width: 16.6666666667%;
  }
  .grid-xl-3 {
    width: 25%;
  }
  .grid-xl-4 {
    width: 33.3333333333%;
  }
  .grid-xl-5 {
    width: 41.6666666667%;
  }
  .grid-xl-6 {
    width: 50%;
  }
  .grid-xl-7 {
    width: 58.3333333333%;
  }
  .grid-xl-8 {
    width: 66.6666666667%;
  }
  .grid-xl-9 {
    width: 75%;
  }
  .grid-xl-10 {
    width: 83.3333333333%;
  }
  .grid-xl-11 {
    width: 91.6666666667%;
  }
  .grid-xl-12 {
    width: 100%;
  }
}

.push-1 {
  margin-left: 8.3333333333%;
}
.push-2 {
  margin-left: 16.6666666667%;
}
.push-3 {
  margin-left: 25%;
}
.push-4 {
  margin-left: 33.3333333333%;
}
.push-5 {
  margin-left: 41.6666666667%;
}
.push-6 {
  margin-left: 50%;
}
.push-7 {
  margin-left: 58.3333333333%;
}
.push-8 {
  margin-left: 66.6666666667%;
}
.push-9 {
  margin-left: 75%;
}
.push-10 {
  margin-left: 83.3333333333%;
}
.push-11 {
  margin-left: 91.6666666667%;
}
.push-12 {
  margin-left: 100%;
}
@media (min-width: 420px) {
  .push-xs-1 {
    margin-left: 8.3333333333%;
  }
  .push-xs-2 {
    margin-left: 16.6666666667%;
  }
  .push-xs-3 {
    margin-left: 25%;
  }
  .push-xs-4 {
    margin-left: 33.3333333333%;
  }
  .push-xs-5 {
    margin-left: 41.6666666667%;
  }
  .push-xs-6 {
    margin-left: 50%;
  }
  .push-xs-7 {
    margin-left: 58.3333333333%;
  }
  .push-xs-8 {
    margin-left: 66.6666666667%;
  }
  .push-xs-9 {
    margin-left: 75%;
  }
  .push-xs-10 {
    margin-left: 83.3333333333%;
  }
  .push-xs-11 {
    margin-left: 91.6666666667%;
  }
  .push-xs-12 {
    margin-left: 100%;
  }
}
@media (min-width: 520px) {
  .push-sm-1 {
    margin-left: 8.3333333333%;
  }
  .push-sm-2 {
    margin-left: 16.6666666667%;
  }
  .push-sm-3 {
    margin-left: 25%;
  }
  .push-sm-4 {
    margin-left: 33.3333333333%;
  }
  .push-sm-5 {
    margin-left: 41.6666666667%;
  }
  .push-sm-6 {
    margin-left: 50%;
  }
  .push-sm-7 {
    margin-left: 58.3333333333%;
  }
  .push-sm-8 {
    margin-left: 66.6666666667%;
  }
  .push-sm-9 {
    margin-left: 75%;
  }
  .push-sm-10 {
    margin-left: 83.3333333333%;
  }
  .push-sm-11 {
    margin-left: 91.6666666667%;
  }
  .push-sm-12 {
    margin-left: 100%;
  }
}
@media (min-width: 720px) {
  .push-md-1 {
    margin-left: 8.3333333333%;
  }
  .push-md-2 {
    margin-left: 16.6666666667%;
  }
  .push-md-3 {
    margin-left: 25%;
  }
  .push-md-4 {
    margin-left: 33.3333333333%;
  }
  .push-md-5 {
    margin-left: 41.6666666667%;
  }
  .push-md-6 {
    margin-left: 50%;
  }
  .push-md-7 {
    margin-left: 58.3333333333%;
  }
  .push-md-8 {
    margin-left: 66.6666666667%;
  }
  .push-md-9 {
    margin-left: 75%;
  }
  .push-md-10 {
    margin-left: 83.3333333333%;
  }
  .push-md-11 {
    margin-left: 91.6666666667%;
  }
  .push-md-12 {
    margin-left: 100%;
  }
}
@media (min-width: 920px) {
  .push-lg-1 {
    margin-left: 8.3333333333%;
  }
  .push-lg-2 {
    margin-left: 16.6666666667%;
  }
  .push-lg-3 {
    margin-left: 25%;
  }
  .push-lg-4 {
    margin-left: 33.3333333333%;
  }
  .push-lg-5 {
    margin-left: 41.6666666667%;
  }
  .push-lg-6 {
    margin-left: 50%;
  }
  .push-lg-7 {
    margin-left: 58.3333333333%;
  }
  .push-lg-8 {
    margin-left: 66.6666666667%;
  }
  .push-lg-9 {
    margin-left: 75%;
  }
  .push-lg-10 {
    margin-left: 83.3333333333%;
  }
  .push-lg-11 {
    margin-left: 91.6666666667%;
  }
  .push-lg-12 {
    margin-left: 100%;
  }
}
@media (min-width: 1220px) {
  .push-xl-1 {
    margin-left: 8.3333333333%;
  }
  .push-xl-2 {
    margin-left: 16.6666666667%;
  }
  .push-xl-3 {
    margin-left: 25%;
  }
  .push-xl-4 {
    margin-left: 33.3333333333%;
  }
  .push-xl-5 {
    margin-left: 41.6666666667%;
  }
  .push-xl-6 {
    margin-left: 50%;
  }
  .push-xl-7 {
    margin-left: 58.3333333333%;
  }
  .push-xl-8 {
    margin-left: 66.6666666667%;
  }
  .push-xl-9 {
    margin-left: 75%;
  }
  .push-xl-10 {
    margin-left: 83.3333333333%;
  }
  .push-xl-11 {
    margin-left: 91.6666666667%;
  }
  .push-xl-12 {
    margin-left: 100%;
  }
}

.padding-half {
  padding: 10px;
}
.padding-half-vertical {
  padding-top: 10px;
  padding-bottom: 10px;
}
.padding-half-horizontal {
  padding-left: 10px;
  padding-right: 10px;
}
.padding-half-top {
  padding-top: 10px;
}
.padding-half-right {
  padding-right: 10px;
}
.padding-half-bottom {
  padding-bottom: 10px;
}
.padding-half-left {
  padding-left: 10px;
}

.no-padding {
  padding: 0;
}
.no-padding-vertical {
  padding-top: 0;
  padding-bottom: 0;
}
.no-padding-horizontal {
  padding-left: 0;
  padding-right: 0;
}
.no-padding-top {
  padding-top: 0;
}
.no-padding-right {
  padding-right: 0;
}
.no-padding-bottom {
  padding-bottom: 0;
}
.no-padding-left {
  padding-left: 0;
}

.hide {
  display: none;
}
@media (max-width: 420px) {
  .hide-xs-less {
    display: none !important;
  }
}
@media (min-width: 420px) {
  .hide-xs-over {
    display: none !important;
  }
}
@media (max-width: 520px) {
  .hide-sm-less {
    display: none !important;
  }
}
@media (min-width: 520px) {
  .hide-sm-over {
    display: none !important;
  }
}
@media (max-width: 720px) {
  .hide-md-less {
    display: none !important;
  }
}
@media (min-width: 720px) {
  .hide-md-over {
    display: none !important;
  }
}
@media (max-width: 920px) {
  .hide-lg-less {
    display: none !important;
  }
}
@media (min-width: 920px) {
  .hide-lg-over {
    display: none !important;
  }
}
@media (max-width: 1220px) {
  .hide-xl-less {
    display: none !important;
  }
}
@media (min-width: 1220px) {
  .hide-xl-over {
    display: none !important;
  }
}

.float-right {
  float: right;
}
.float-left {
  float: left;
}
@media (max-width: 420px) {
  .float-right-xs-less {
    float: right;
  }
  .float-left-xs-less {
    float: left;
  }
}
@media (min-width: 420px) {
  .float-right-xs-over {
    float: right;
  }
  .float-left-xs-over {
    float: left;
  }
}
@media (max-width: 520px) {
  .float-right-sm-less {
    float: right;
  }
  .float-left-sm-less {
    float: left;
  }
}
@media (min-width: 520px) {
  .float-right-sm-over {
    float: right;
  }
  .float-left-sm-over {
    float: left;
  }
}
@media (max-width: 720px) {
  .float-right-md-less {
    float: right;
  }
  .float-left-md-less {
    float: left;
  }
}
@media (min-width: 720px) {
  .float-right-md-over {
    float: right;
  }
  .float-left-md-over {
    float: left;
  }
}
@media (max-width: 920px) {
  .float-right-lg-less {
    float: right;
  }
  .float-left-lg-less {
    float: left;
  }
}
@media (min-width: 920px) {
  .float-right-lg-over {
    float: right;
  }
  .float-left-lg-over {
    float: left;
  }
}
@media (max-width: 1220px) {
  .float-right-xl-less {
    float: right;
  }
  .float-left-xl-less {
    float: left;
  }
}
@media (min-width: 1220px) {
  .float-right-xl-over {
    float: right;
  }
  .float-left-xl-over {
    float: left;
  }
}

.align-center {
  text-align: center;
}
.align-right {
  text-align: right;
}
.align-left {
  text-align: right;
}
@media (max-width: 420px) {
  .align-center-xs-less {
    text-align: center;
  }
  .align-right-xs-less {
    text-align: right;
  }
  .align-left-xs-less {
    text-align: left;
  }
}
@media (min-width: 420px) {
  .align-center-xs-over {
    text-align: center;
  }
  .align-right-xs-over {
    text-align: right;
  }
  .align-left-xs-over {
    text-align: left;
  }
}
@media (max-width: 520px) {
  .align-center-sm-less {
    text-align: center;
  }
  .align-right-sm-less {
    text-align: right;
  }
  .align-left-sm-less {
    text-align: left;
  }
}
@media (min-width: 520px) {
  .align-center-sm-over {
    text-align: center;
  }
  .align-right-sm-over {
    text-align: right;
  }
  .align-left-sm-over {
    text-align: left;
  }
}
@media (max-width: 720px) {
  .align-center-md-less {
    text-align: center;
  }
  .align-right-md-less {
    text-align: right;
  }
  .align-left-md-less {
    text-align: left;
  }
}
@media (min-width: 720px) {
  .align-center-md-over {
    text-align: center;
  }
  .align-right-md-over {
    text-align: right;
  }
  .align-left-md-over {
    text-align: left;
  }
}
@media (max-width: 920px) {
  .align-center-lg-less {
    text-align: center;
  }
  .align-right-lg-less {
    text-align: right;
  }
  .align-left-lg-less {
    text-align: left;
  }
}
@media (min-width: 920px) {
  .align-center-lg-over {
    text-align: center;
  }
  .align-right-lg-over {
    text-align: right;
  }
  .align-left-lg-over {
    text-align: left;
  }
}
@media (max-width: 1220px) {
  .align-center-xl-less {
    text-align: center;
  }
  .align-right-xl-less {
    text-align: right;
  }
  .align-left-xl-less {
    text-align: left;
  }
}
@media (min-width: 1220px) {
  .align-center-xl-over {
    text-align: center;
  }
  .align-right-xl-over {
    text-align: right;
  }
  .align-left-xl-over {
    text-align: left;
  }
}

.flex {
  display: flex;
}
.flex-direction-row {
  flex-direction: row;
}
.flex-direction-row-reverse {
  flex-direction: row-reverse;
}
.flex-direction-column {
  flex-direction: column;
}
.flex-direction-column-reverse {
  flex-direction: column-reverse;
}
.flex-align-start {
  align-items: flex-start;
}
.flex-align-center {
  align-items: center;
}
.flex-align-end {
  align-items: flex-end;
}
.flex-justify-start {
  justify-content: flex-start;
}
.flex-justify-center {
  justify-content: center;
}
.flex-justify-end {
  justify-content: flex-end;
}
.flex-justify-between {
  justify-content: space-between;
}
.flex-wrap {
  flex-wrap: wrap;
}
.flex-gap-0 {
  gap: 0px;
}
.flex-gap-5 {
  gap: 5px;
}
.flex-gap-10 {
  gap: 10px;
}
.flex-gap-20 {
  gap: 20px;
}
.flex-gap-30 {
  gap: 30px;
}
.flex-gap-40 {
  gap: 40px;
}
.flex-gap-60 {
  gap: 60px;
}
.flex-gap-80 {
  gap: 80px;
}
.flex-gap-100 {
  gap: 100px;
}
.flex-gap-120 {
  gap: 120px;
}
.flex-gap-140 {
  gap: 140px;
}
.flex-gap-160 {
  gap: 160px;
}
.flex-gap-180 {
  gap: 180px;
}
.flex-gap-200 {
  gap: 200px;
}
@media (max-width: 420px) {
  .flex-xs-less {
    display: flex;
  }
  .flex-direction-row-xs-less {
    flex-direction: row;
  }
  .flex-direction-row-reverse-xs-less {
    flex-direction: row-reverse;
  }
  .flex-direction-column-xs-less {
    flex-direction: column;
  }
  .flex-direction-column-reverse-xs-less {
    flex-direction: column-reverse;
  }
  .flex-align-start-xs-less {
    align-items: flex-start;
  }
  .flex-align-center-xs-less {
    align-items: center;
  }
  .flex-align-end-xs-less {
    align-items: flex-end;
  }
  .flex-justify-start-xs-less {
    justify-content: flex-start;
  }
  .flex-justify-center-xs-less {
    justify-content: center;
  }
  .flex-justify-end-xs-less {
    justify-content: flex-end;
  }
  .flex-justify-between-xs-less {
    justify-content: space-between;
  }
  .flex-wrap-xs-less {
    flex-wrap: wrap;
  }
  .flex-gap-0-xs-less {
    gap: 0px;
  }
  .flex-gap-5-xs-less {
    gap: 5px;
  }
  .flex-gap-10-xs-less {
    gap: 10px;
  }
  .flex-gap-20-xs-less {
    gap: 20px;
  }
  .flex-gap-30-xs-less {
    gap: 30px;
  }
  .flex-gap-40-xs-less {
    gap: 40px;
  }
  .flex-gap-60-xs-less {
    gap: 60px;
  }
  .flex-gap-80-xs-less {
    gap: 80px;
  }
  .flex-gap-100-xs-less {
    gap: 100px;
  }
  .flex-gap-120-xs-less {
    gap: 120px;
  }
  .flex-gap-140-xs-less {
    gap: 140px;
  }
  .flex-gap-160-xs-less {
    gap: 160px;
  }
  .flex-gap-180-xs-less {
    gap: 180px;
  }
  .flex-gap-200-xs-less {
    gap: 200px;
  }
}
@media (min-width: 420px) {
  .flex-xs-over {
    display: flex;
  }
  .flex-direction-column-xs-over {
    flex-direction: column;
  }
  .flex-direction-column-reverse-xs-over {
    flex-direction: column-reverse;
  }
  .flex-direction-row-xs-over {
    flex-direction: row;
  }
  .flex-direction-row-reverse-xs-over {
    flex-direction: row-reverse;
  }
  .flex-align-start-xs-over {
    align-items: flex-start;
  }
  .flex-align-center-xs-over {
    align-items: center;
  }
  .flex-align-end-xs-over {
    align-items: flex-end;
  }
  .flex-justify-start-xs-over {
    justify-content: flex-start;
  }
  .flex-justify-center-xs-over {
    justify-content: center;
  }
  .flex-justify-end-xs-over {
    justify-content: flex-end;
  }
  .flex-justify-between-xs-over {
    justify-content: space-between;
  }
  .flex-wrap-xs-over {
    flex-wrap: wrap;
  }
  .flex-gap-0-xs-over {
    gap: 0px;
  }
  .flex-gap-5-xs-over {
    gap: 5px;
  }
  .flex-gap-10-xs-over {
    gap: 10px;
  }
  .flex-gap-20-xs-over {
    gap: 20px;
  }
  .flex-gap-30-xs-over {
    gap: 30px;
  }
  .flex-gap-40-xs-over {
    gap: 40px;
  }
  .flex-gap-60-xs-over {
    gap: 60px;
  }
  .flex-gap-80-xs-over {
    gap: 80px;
  }
  .flex-gap-100-xs-over {
    gap: 100px;
  }
  .flex-gap-120-xs-over {
    gap: 120px;
  }
  .flex-gap-140-xs-over {
    gap: 140px;
  }
  .flex-gap-160-xs-over {
    gap: 160px;
  }
  .flex-gap-180-xs-over {
    gap: 180px;
  }
  .flex-gap-200-xs-over {
    gap: 200px;
  }
}
@media (max-width: 520px) {
  .flex-sm-less {
    display: flex;
  }
  .flex-direction-row-sm-less {
    flex-direction: row;
  }
  .flex-direction-row-reverse-sm-less {
    flex-direction: row-reverse;
  }
  .flex-direction-column-sm-less {
    flex-direction: column;
  }
  .flex-direction-column-reverse-sm-less {
    flex-direction: column-reverse;
  }
  .flex-align-start-sm-less {
    align-items: flex-start;
  }
  .flex-align-center-sm-less {
    align-items: center;
  }
  .flex-align-end-sm-less {
    align-items: flex-end;
  }
  .flex-justify-start-sm-less {
    justify-content: flex-start;
  }
  .flex-justify-center-sm-less {
    justify-content: center;
  }
  .flex-justify-end-sm-less {
    justify-content: flex-end;
  }
  .flex-justify-between-sm-less {
    justify-content: space-between;
  }
  .flex-wrap-sm-less {
    flex-wrap: wrap;
  }
  .flex-gap-0-sm-less {
    gap: 0px;
  }
  .flex-gap-5-sm-less {
    gap: 5px;
  }
  .flex-gap-10-sm-less {
    gap: 10px;
  }
  .flex-gap-20-sm-less {
    gap: 20px;
  }
  .flex-gap-30-sm-less {
    gap: 30px;
  }
  .flex-gap-40-sm-less {
    gap: 40px;
  }
  .flex-gap-60-sm-less {
    gap: 60px;
  }
  .flex-gap-80-sm-less {
    gap: 80px;
  }
  .flex-gap-100-sm-less {
    gap: 100px;
  }
  .flex-gap-120-sm-less {
    gap: 120px;
  }
  .flex-gap-140-sm-less {
    gap: 140px;
  }
  .flex-gap-160-sm-less {
    gap: 160px;
  }
  .flex-gap-180-sm-less {
    gap: 180px;
  }
  .flex-gap-200-sm-less {
    gap: 200px;
  }
}
@media (min-width: 520px) {
  .flex-sm-over {
    display: flex;
  }
  .flex-direction-column-sm-over {
    flex-direction: column;
  }
  .flex-direction-column-reverse-sm-over {
    flex-direction: column-reverse;
  }
  .flex-direction-row-sm-over {
    flex-direction: row;
  }
  .flex-direction-row-reverse-sm-over {
    flex-direction: row-reverse;
  }
  .flex-align-start-sm-over {
    align-items: flex-start;
  }
  .flex-align-center-sm-over {
    align-items: center;
  }
  .flex-align-end-sm-over {
    align-items: flex-end;
  }
  .flex-justify-start-sm-over {
    justify-content: flex-start;
  }
  .flex-justify-center-sm-over {
    justify-content: center;
  }
  .flex-justify-end-sm-over {
    justify-content: flex-end;
  }
  .flex-justify-between-sm-over {
    justify-content: space-between;
  }
  .flex-wrap-sm-over {
    flex-wrap: wrap;
  }
  .flex-gap-0-sm-over {
    gap: 0px;
  }
  .flex-gap-5-sm-over {
    gap: 5px;
  }
  .flex-gap-10-sm-over {
    gap: 10px;
  }
  .flex-gap-20-sm-over {
    gap: 20px;
  }
  .flex-gap-30-sm-over {
    gap: 30px;
  }
  .flex-gap-40-sm-over {
    gap: 40px;
  }
  .flex-gap-60-sm-over {
    gap: 60px;
  }
  .flex-gap-80-sm-over {
    gap: 80px;
  }
  .flex-gap-100-sm-over {
    gap: 100px;
  }
  .flex-gap-120-sm-over {
    gap: 120px;
  }
  .flex-gap-140-sm-over {
    gap: 140px;
  }
  .flex-gap-160-sm-over {
    gap: 160px;
  }
  .flex-gap-180-sm-over {
    gap: 180px;
  }
  .flex-gap-200-sm-over {
    gap: 200px;
  }
}
@media (max-width: 720px) {
  .flex-md-less {
    display: flex;
  }
  .flex-direction-row-md-less {
    flex-direction: row;
  }
  .flex-direction-row-reverse-md-less {
    flex-direction: row-reverse;
  }
  .flex-direction-column-md-less {
    flex-direction: column;
  }
  .flex-direction-column-reverse-md-less {
    flex-direction: column-reverse;
  }
  .flex-align-start-md-less {
    align-items: flex-start;
  }
  .flex-align-center-md-less {
    align-items: center;
  }
  .flex-align-end-md-less {
    align-items: flex-end;
  }
  .flex-justify-start-md-less {
    justify-content: flex-start;
  }
  .flex-justify-center-md-less {
    justify-content: center;
  }
  .flex-justify-end-md-less {
    justify-content: flex-end;
  }
  .flex-justify-between-md-less {
    justify-content: space-between;
  }
  .flex-wrap-md-less {
    flex-wrap: wrap;
  }
  .flex-gap-0-md-less {
    gap: 0px;
  }
  .flex-gap-5-md-less {
    gap: 5px;
  }
  .flex-gap-10-md-less {
    gap: 10px;
  }
  .flex-gap-20-md-less {
    gap: 20px;
  }
  .flex-gap-30-md-less {
    gap: 30px;
  }
  .flex-gap-40-md-less {
    gap: 40px;
  }
  .flex-gap-60-md-less {
    gap: 60px;
  }
  .flex-gap-80-md-less {
    gap: 80px;
  }
  .flex-gap-100-md-less {
    gap: 100px;
  }
  .flex-gap-120-md-less {
    gap: 120px;
  }
  .flex-gap-140-md-less {
    gap: 140px;
  }
  .flex-gap-160-md-less {
    gap: 160px;
  }
  .flex-gap-180-md-less {
    gap: 180px;
  }
  .flex-gap-200-md-less {
    gap: 200px;
  }
}
@media (min-width: 720px) {
  .flex-md-over {
    display: flex;
  }
  .flex-direction-column-md-over {
    flex-direction: column;
  }
  .flex-direction-column-reverse-md-over {
    flex-direction: column-reverse;
  }
  .flex-direction-row-md-over {
    flex-direction: row;
  }
  .flex-direction-row-reverse-md-over {
    flex-direction: row-reverse;
  }
  .flex-align-start-md-over {
    align-items: flex-start;
  }
  .flex-align-center-md-over {
    align-items: center;
  }
  .flex-align-end-md-over {
    align-items: flex-end;
  }
  .flex-justify-start-md-over {
    justify-content: flex-start;
  }
  .flex-justify-center-md-over {
    justify-content: center;
  }
  .flex-justify-end-md-over {
    justify-content: flex-end;
  }
  .flex-justify-between-md-over {
    justify-content: space-between;
  }
  .flex-wrap-md-over {
    flex-wrap: wrap;
  }
  .flex-gap-0-md-over {
    gap: 0px;
  }
  .flex-gap-5-md-over {
    gap: 5px;
  }
  .flex-gap-10-md-over {
    gap: 10px;
  }
  .flex-gap-20-md-over {
    gap: 20px;
  }
  .flex-gap-30-md-over {
    gap: 30px;
  }
  .flex-gap-40-md-over {
    gap: 40px;
  }
  .flex-gap-60-md-over {
    gap: 60px;
  }
  .flex-gap-80-md-over {
    gap: 80px;
  }
  .flex-gap-100-md-over {
    gap: 100px;
  }
  .flex-gap-120-md-over {
    gap: 120px;
  }
  .flex-gap-140-md-over {
    gap: 140px;
  }
  .flex-gap-160-md-over {
    gap: 160px;
  }
  .flex-gap-180-md-over {
    gap: 180px;
  }
  .flex-gap-200-md-over {
    gap: 200px;
  }
}
@media (max-width: 920px) {
  .flex-lg-less {
    display: flex;
  }
  .flex-direction-row-lg-less {
    flex-direction: row;
  }
  .flex-direction-row-reverse-lg-less {
    flex-direction: row-reverse;
  }
  .flex-direction-column-lg-less {
    flex-direction: column;
  }
  .flex-direction-column-reverse-lg-less {
    flex-direction: column-reverse;
  }
  .flex-align-start-lg-less {
    align-items: flex-start;
  }
  .flex-align-center-lg-less {
    align-items: center;
  }
  .flex-align-end-lg-less {
    align-items: flex-end;
  }
  .flex-justify-start-lg-less {
    justify-content: flex-start;
  }
  .flex-justify-center-lg-less {
    justify-content: center;
  }
  .flex-justify-end-lg-less {
    justify-content: flex-end;
  }
  .flex-justify-between-lg-less {
    justify-content: space-between;
  }
  .flex-wrap-lg-less {
    flex-wrap: wrap;
  }
  .flex-gap-0-lg-less {
    gap: 0px;
  }
  .flex-gap-5-lg-less {
    gap: 5px;
  }
  .flex-gap-10-lg-less {
    gap: 10px;
  }
  .flex-gap-20-lg-less {
    gap: 20px;
  }
  .flex-gap-30-lg-less {
    gap: 30px;
  }
  .flex-gap-40-lg-less {
    gap: 40px;
  }
  .flex-gap-60-lg-less {
    gap: 60px;
  }
  .flex-gap-80-lg-less {
    gap: 80px;
  }
  .flex-gap-100-lg-less {
    gap: 100px;
  }
  .flex-gap-120-lg-less {
    gap: 120px;
  }
  .flex-gap-140-lg-less {
    gap: 140px;
  }
  .flex-gap-160-lg-less {
    gap: 160px;
  }
  .flex-gap-180-lg-less {
    gap: 180px;
  }
  .flex-gap-200-lg-less {
    gap: 200px;
  }
}
@media (min-width: 920px) {
  .flex-lg-over {
    display: flex;
  }
  .flex-direction-column-lg-over {
    flex-direction: column;
  }
  .flex-direction-column-reverse-lg-over {
    flex-direction: column-reverse;
  }
  .flex-direction-row-lg-over {
    flex-direction: row;
  }
  .flex-direction-row-reverse-lg-over {
    flex-direction: row-reverse;
  }
  .flex-align-start-lg-over {
    align-items: flex-start;
  }
  .flex-align-center-lg-over {
    align-items: center;
  }
  .flex-align-end-lg-over {
    align-items: flex-end;
  }
  .flex-justify-start-lg-over {
    justify-content: flex-start;
  }
  .flex-justify-center-lg-over {
    justify-content: center;
  }
  .flex-justify-end-lg-over {
    justify-content: flex-end;
  }
  .flex-justify-between-lg-over {
    justify-content: space-between;
  }
  .flex-wrap-lg-over {
    flex-wrap: wrap;
  }
  .flex-gap-0-lg-over {
    gap: 0px;
  }
  .flex-gap-5-lg-over {
    gap: 5px;
  }
  .flex-gap-10-lg-over {
    gap: 10px;
  }
  .flex-gap-20-lg-over {
    gap: 20px;
  }
  .flex-gap-30-lg-over {
    gap: 30px;
  }
  .flex-gap-40-lg-over {
    gap: 40px;
  }
  .flex-gap-60-lg-over {
    gap: 60px;
  }
  .flex-gap-80-lg-over {
    gap: 80px;
  }
  .flex-gap-100-lg-over {
    gap: 100px;
  }
  .flex-gap-120-lg-over {
    gap: 120px;
  }
  .flex-gap-140-lg-over {
    gap: 140px;
  }
  .flex-gap-160-lg-over {
    gap: 160px;
  }
  .flex-gap-180-lg-over {
    gap: 180px;
  }
  .flex-gap-200-lg-over {
    gap: 200px;
  }
}
@media (max-width: 1220px) {
  .flex-xl-less {
    display: flex;
  }
  .flex-direction-row-xl-less {
    flex-direction: row;
  }
  .flex-direction-row-reverse-xl-less {
    flex-direction: row-reverse;
  }
  .flex-direction-column-xl-less {
    flex-direction: column;
  }
  .flex-direction-column-reverse-xl-less {
    flex-direction: column-reverse;
  }
  .flex-align-start-xl-less {
    align-items: flex-start;
  }
  .flex-align-center-xl-less {
    align-items: center;
  }
  .flex-align-end-xl-less {
    align-items: flex-end;
  }
  .flex-justify-start-xl-less {
    justify-content: flex-start;
  }
  .flex-justify-center-xl-less {
    justify-content: center;
  }
  .flex-justify-end-xl-less {
    justify-content: flex-end;
  }
  .flex-justify-between-xl-less {
    justify-content: space-between;
  }
  .flex-wrap-xl-less {
    flex-wrap: wrap;
  }
  .flex-gap-0-xl-less {
    gap: 0px;
  }
  .flex-gap-5-xl-less {
    gap: 5px;
  }
  .flex-gap-10-xl-less {
    gap: 10px;
  }
  .flex-gap-20-xl-less {
    gap: 20px;
  }
  .flex-gap-30-xl-less {
    gap: 30px;
  }
  .flex-gap-40-xl-less {
    gap: 40px;
  }
  .flex-gap-60-xl-less {
    gap: 60px;
  }
  .flex-gap-80-xl-less {
    gap: 80px;
  }
  .flex-gap-100-xl-less {
    gap: 100px;
  }
  .flex-gap-120-xl-less {
    gap: 120px;
  }
  .flex-gap-140-xl-less {
    gap: 140px;
  }
  .flex-gap-160-xl-less {
    gap: 160px;
  }
  .flex-gap-180-xl-less {
    gap: 180px;
  }
  .flex-gap-200-xl-less {
    gap: 200px;
  }
}
@media (min-width: 1220px) {
  .flex-xl-over {
    display: flex;
  }
  .flex-direction-column-xl-over {
    flex-direction: column;
  }
  .flex-direction-column-reverse-xl-over {
    flex-direction: column-reverse;
  }
  .flex-direction-row-xl-over {
    flex-direction: row;
  }
  .flex-direction-row-reverse-xl-over {
    flex-direction: row-reverse;
  }
  .flex-align-start-xl-over {
    align-items: flex-start;
  }
  .flex-align-center-xl-over {
    align-items: center;
  }
  .flex-align-end-xl-over {
    align-items: flex-end;
  }
  .flex-justify-start-xl-over {
    justify-content: flex-start;
  }
  .flex-justify-center-xl-over {
    justify-content: center;
  }
  .flex-justify-end-xl-over {
    justify-content: flex-end;
  }
  .flex-justify-between-xl-over {
    justify-content: space-between;
  }
  .flex-wrap-xl-over {
    flex-wrap: wrap;
  }
  .flex-gap-0-xl-over {
    gap: 0px;
  }
  .flex-gap-5-xl-over {
    gap: 5px;
  }
  .flex-gap-10-xl-over {
    gap: 10px;
  }
  .flex-gap-20-xl-over {
    gap: 20px;
  }
  .flex-gap-30-xl-over {
    gap: 30px;
  }
  .flex-gap-40-xl-over {
    gap: 40px;
  }
  .flex-gap-60-xl-over {
    gap: 60px;
  }
  .flex-gap-80-xl-over {
    gap: 80px;
  }
  .flex-gap-100-xl-over {
    gap: 100px;
  }
  .flex-gap-120-xl-over {
    gap: 120px;
  }
  .flex-gap-140-xl-over {
    gap: 140px;
  }
  .flex-gap-160-xl-over {
    gap: 160px;
  }
  .flex-gap-180-xl-over {
    gap: 180px;
  }
  .flex-gap-200-xl-over {
    gap: 200px;
  }
}

:root {
  --white: #FFF;
  --gray: #555454;
  --gray-1: #282828;
  --gray-2: #787878;
  --gray-3: #D9D9D9;
  --gray-4: #ECECEC;
  --gray-5: #F0F0F0;
  --gray-6: #F6F6F6;
  --green: #007D57;
  --blue: #042350;
  --black: #000;
}

*:focus-visible {
  outline: 2px solid var(--black) !important;
  outline-offset: 2px !important;
}

html {
  scroll-behavior: smooth;
}

body {
  background-color: var(--white);
  font-family: "Onest", sans-serif;
  font-size: 16px;
  line-height: 1.4;
  color: var(--gray-1);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.label {
  display: block;
}

.input {
  width: 100%;
  height: 52px;
  padding: 0 20px;
  background-color: transparent;
  border-radius: 26px;
  border: 1px solid var(--gray-3);
  color: inherit;
  transition: border-color 0.3s;
}
textarea.input {
  height: 156px;
  padding: 20px;
  resize: vertical;
  display: block;
}

select.input {
  appearance: none;
  padding-right: 56px;
  background-image: url("data:image/svg+xml,%3Csvg width='16' height='10' viewBox='0 0 16 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M15.7264 2.4995L8.6487 9.28089C8.41166 9.48089 8.18944 9.56237 8.00056 9.56237C7.81167 9.56237 7.55723 9.48019 7.38612 9.31467L0.275102 2.4995C-0.0803006 2.16247 -0.091856 1.56618 0.248436 1.24396C0.586394 0.887486 1.15139 0.875894 1.50435 1.21734L8.00056 7.44388L14.4968 1.22174C14.8486 0.880301 15.4145 0.891894 15.7527 1.24836C16.093 1.56618 16.0819 2.16247 15.7264 2.4995Z' fill='black'/%3E%3C/svg%3E");
  background-size: 16px auto;
  background-position: calc(100% - 20px) center;
  background-repeat: no-repeat;
}

.input::placeholder {
  color: var(--gray);
}
.input:focus {
  border-color: var(--gray-1);
}
.input:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.button {
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 40px;
  border-radius: 999px;
  border: 1px solid transparent;
  font-weight: 500;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 1px;
  transition: opacity 0.3s;
}
.button-green {
  border-color: var(--green);
  background-color: var(--green);
  color: var(--white);
}
.button-blue {
  border-color: var(--blue);
  background-color: var(--blue);
  color: var(--white);
}
.button-gray {
  border-color: var(--gray);
  color: var(--gray);
}
.button-full {
  width: 100%;
}
.button:hover:not(:disabled) {
  opacity: 0.5;
}
.button:disabled {
  cursor: not-allowed;
}

.image-responsive {
  max-width: 100%;
  height: auto;
  display: block;
}
.image-full {
  width: 100%;
  height: auto;
  display: block;
}
.image-center {
  margin: 0 auto;
  display: block;
}
.image-fill {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.table {
  width: 100%;
}
.table tr {
  border: 1px solid var(--gray-1);
}
.table td, .table th {
  padding: 10px;
}

.pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 10px;
}
.pagination a, .pagination span {
  min-width: 45px;
  height: 45px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 15px;
  border-radius: 10px;
  border: 1px solid var(--blue);
  background-color: var(--blue);
  color: var(--white);
}
.pagination a {
  transition: background-color 0.3s, color 0.3s;
}
.pagination a:hover, .pagination span {
  background-color: transparent;
  color: var(--blue);
}

.map {
  width: 100%;
  display: block;
}

::selection {
  background-color: var(--blue);
  color: var(--white);
}

::-moz-selection {
  background-color: var(--blue);
  color: var(--white);
}

img {
  -webkit-user-select: none;
  user-select: none;
}

.embed-container {
  position: relative;
  padding-bottom: 56.25%;
}
.embed-container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 20px;
}

.list {
  flex-wrap: wrap;
}
.list, .list-item, .list-content {
  display: flex;
}
.list-content {
  width: 100%;
  height: 100%;
  flex-direction: column;
  align-items: flex-start;
}
.list-content-top {
  flex: 1 0 auto;
}

.editor {
  color: var(--gray);
}
.editor > * + * {
  margin-top: 20px;
}
.editor h1, .editor h2, .editor h3, .editor h4, .editor h5, .editor h6 {
  font-weight: 400;
}
.editor h1 {
  font-size: 48px;
}
.editor h2 {
  font-size: 32px;
}
.editor h3 {
  font-size: 24px;
}
.editor h4 {
  font-size: 16px;
}
.editor h5 {
  font-size: 14px;
}
.editor h6 {
  font-size: 14px;
}
.editor a {
  color: var(--blue);
}
.editor a:hover {
  text-decoration: underline;
}
.editor ul, .editor ol {
  margin-left: 16px;
}
.editor ul {
  list-style-type: disc;
}
.editor ol {
  list-style-type: decimal;
}
.editor li {
  display: list-item;
}
.editor li:not(:last-child) {
  margin-bottom: 20px;
}
.editor img, .editor iframe {
  max-width: 100%;
  border-radius: 20px;
  display: block;
}
.editor .aligncenter {
  margin: 0 auto;
}
@media (max-width: 920px) {
  .editor h1 {
    font-size: 32px;
  }
  .editor h2 {
    font-size: 24px;
  }
  .editor h3 {
    font-size: 20px;
  }
}

.line {
  height: 1px;
  background-color: var(--gray-4);
}
.line, .line-2 {
  width: 100%;
}
.line-2 {
  height: 3px;
  background-color: var(--gray-3);
}

.relative {
  position: relative;
}

.click {
  -webkit-user-select: none;
  user-select: none;
  cursor: pointer;
}

.section-title-1, .section-title-2, .section-title-3 {
  font-weight: 500;
}
.section-title-1, .section-title-3 {
  font-size: 32px;
}
.section-title-1 {
  text-transform: uppercase;
}
.section-title-2 {
  font-size: 42px;
  color: var(--blue);
}
.section-title-3 {
  color: var(--blue);
}
@media (max-width: 920px) {
  .section-title-1, .section-title-3 {
    font-size: 24px;
  }
  .section-title-2 {
    font-size: 32px;
  }
}

.section-text-1 {
  font-weight: 500;
  color: var(--gray);
}
.section-text-2 {
  font-size: 24px;
  color: var(--gray);
}
.section-text-3 {
  color: var(--gray);
}
@media (max-width: 920px) {
  .section-text-2 {
    font-size: 20px;
  }
}

.swiper-slide {
  height: auto;
}
.swiper-navigation {
  height: 24px;
  gap: 12px;
  padding: 0 12px;
  border-radius: 12px;
  background-color: var(--white);
  border: 1px solid var(--gray-3);
}
.swiper-navigation, .swiper-navigation-dots {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.swiper-navigation-dots {
  gap: 5px;
}
.swiper-navigation-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  border: 1px solid var(--gray-3);
  transition: background-color 0.3s;
}
.swiper-navigation-dot.active {
  background-color: var(--gray-3);
}
.swiper-navigation-prev, .swiper-navigation-next {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  cursor: pointer;
}
.swiper-navigation-prev {
  background-image: url("data:image/svg+xml,%3Csvg width='11' height='8' viewBox='0 0 11 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4.06065 1.35352L3.35355 0.646408L-6.38254e-06 3.99996L3.35355 7.35351L4.06065 6.64641L1.91417 4.49992L10.7071 4.49993L10.7071 3.49993L1.91424 3.49992L4.06065 1.35352Z' fill='%23979596'/%3E%3C/svg%3E");
}
.swiper-navigation-next {
  background-image: url("data:image/svg+xml,%3Csvg width='11' height='8' viewBox='0 0 11 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6.64645 6.64648L7.35356 7.35359L10.7071 4.00004L7.35356 0.646484L6.64645 1.35359L8.79294 3.50008L8.74227e-08 3.50007L0 4.50007L8.79286 4.50008L6.64645 6.64648Z' fill='%23979596'/%3E%3C/svg%3E");
}
.swiper-navigation:has(.swiper-pagination-lock) {
  display: none;
}

.wpcf7-not-valid {
  border-color: #F00 !important;
}
.wpcf7-not-valid-tip {
  font-size: 14px !important;
  color: #F00 !important;
  margin-top: 5px !important;
  display: block !important;
}

.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output,
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.sent .wpcf7-response-output {
  width: 100%;
  padding: 0;
  border: 0;
  text-align: center;
  color: #F00;
  margin: 20px 0 0 0;
}

.wpcf7 form.sent .wpcf7-response-output {
  color: var(--white);
}

.grecaptcha-badge {
  opacity: 0 !important;
}

.wpcf7 .ajax-loader {
  display: none !important;
}

.termsfeed-com---palette-light.termsfeed-com---nb {
  left: 50% !important;
  bottom: 20px;
  transform: translateX(-50%);
  width: 1160px !important;
  max-width: calc(100% - 40px);
  border-radius: 20px;
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
  background-color: rgb(255, 255, 255) !important;
  border: 1px solid var(--gray);
  font-family: inherit !important;
}
.termsfeed-com---palette-light.termsfeed-com---nb .cc-nb-main-container {
  padding: 40px !important;
}
.termsfeed-com---palette-light.termsfeed-com---nb .cc-nb-title {
  font-size: 24px;
  font-weight: 500;
  color: inherit;
}
.termsfeed-com---palette-light.termsfeed-com---nb .cc-nb-text {
  color: var(--gray);
  margin-top: 10px;
}
.termsfeed-com---palette-light.termsfeed-com---nb .cc-nb-buttons-container {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 20px;
}
.termsfeed-com---palette-light.termsfeed-com---nb .cc-nb-okagree, .termsfeed-com---palette-light.termsfeed-com---nb .cc-nb-reject, .termsfeed-com---palette-light.termsfeed-com---nb .cc-nb-changep {
  height: auto !important;
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 40px;
  box-shadow: none !important;
  border-radius: 999px !important;
  border: 1px solid transparent;
  font-family: inherit !important;
  font-size: inherit !important;
  font-weight: 500 !important;
  line-height: inherit !important;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 1px;
  margin: 0 !important;
  transition: opacity 0.3s;
}
.termsfeed-com---palette-light.termsfeed-com---nb .cc-nb-okagree:hover, .termsfeed-com---palette-light.termsfeed-com---nb .cc-nb-reject:hover, .termsfeed-com---palette-light.termsfeed-com---nb .cc-nb-changep:hover {
  opacity: 0.5;
}
.termsfeed-com---palette-light.termsfeed-com---nb .cc-nb-okagree, .termsfeed-com---palette-light.termsfeed-com---nb .cc-nb-reject {
  border-color: var(--green);
  background-color: var(--green) !important;
  color: var(--white);
}
.termsfeed-com---palette-light.termsfeed-com---nb .cc-nb-changep {
  border-color: var(--gray);
  background-color: transparent !important;
  color: var(--gray);
}

.header-bar {
  background-color: var(--gray-5);
  font-size: 14px;
}
.header-bar-flex, .header-bar-links {
  display: flex;
  align-items: center;
}
.header-bar-flex {
  justify-content: space-between;
}
.header-bar-links {
  gap: 40px;
}
.header-bar-links > li {
  position: relative;
}
.header-bar-links > li::after {
  content: "";
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  width: 100%;
  height: 2px;
  background-color: var(--blue);
  opacity: 0;
  transition: opacity 0.3s;
}
.header-bar-links > li > a {
  display: block;
}
.header-bar-links > li:has(ul) {
  position: relative;
}
.header-bar-links > li:has(ul) span {
  display: flex;
  align-items: center;
  gap: 5px;
}
.header-bar-links > li:has(ul) span::after {
  content: "";
  width: 8px;
  height: 8px;
  background-image: url("data:image/svg+xml,%3Csvg width='8' height='5' viewBox='0 0 8 5' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M0.646446 1.34303L1.34299 0.646484L3.9499 3.2534L6.55682 0.646484L7.25336 1.34303L3.9499 4.64648L0.646446 1.34303Z' fill='%23042350'/%3E%3C/svg%3E");
  background-size: 100% auto;
  background-position: center;
  background-repeat: no-repeat;
  transition: transform 0.3s;
}
.header-bar-links > li:has(ul) ul {
  position: absolute;
  top: calc(100% + 10px);
  left: 0;
  z-index: 999;
  width: 160px;
  padding: 20px;
  background-color: var(--gray-5);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s, visibility 0.3s;
}
.header-bar-links > li:has(ul) ul li,
.header-bar-links > li:has(ul) ul li a {
  display: block;
}
.header-bar-links > li:has(ul) ul li a:hover {
  text-decoration: underline;
}
.header-bar-links > li:has(ul) ul li:not(:last-child) {
  padding-bottom: 10px;
  border-bottom: 1px solid var(--gray-3);
  margin-bottom: 10px;
}
.header-bar-links > li:hover::after, .header-bar-links > li:focus-within::after {
  opacity: 1;
}
.header-bar-links > li:hover:has(ul) span, .header-bar-links > li:focus-within:has(ul) span {
  padding-bottom: 10px;
  margin-bottom: -10px;
}
.header-bar-links > li:hover:has(ul) span::after, .header-bar-links > li:focus-within:has(ul) span::after {
  transform: rotateZ(-180deg);
}
.header-bar-links > li:hover:has(ul) ul, .header-bar-links > li:focus-within:has(ul) ul {
  opacity: 1;
  visibility: visible;
}
.header-bar-phone:hover {
  text-decoration: underline;
}
.header-flex {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.header-logo img {
  max-width: 100%;
  display: block;
}
.header-search {
  position: relative;
  width: 460px;
}
.header-search input {
  width: 100%;
  height: 52px;
  padding: 0 6px 0 20px;
  border-radius: 26px;
  border: 1px solid var(--gray-3);
  font-size: 14px;
  color: inherit;
  transition: border-color 0.3s;
}
.header-search input::placeholder {
  color: var(--gray);
}
.header-search input:focus {
  outline: 2px solid var(--blue);
  outline-offset: 2px;
}
.header-search button {
  position: absolute;
  top: 50%;
  right: 6px;
  transform: translateY(-50%);
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 20px;
  background-color: var(--gray-4);
  transition: background-color 0.3s;
}
.header-search button svg path {
  transition: fill 0.3s;
}
.header-search button:hover {
  background-color: var(--blue);
}
.header-search button:hover svg path {
  fill: var(--gray-4);
}
.header-language {
  position: relative;
  padding-bottom: 10px;
  margin-bottom: -10px;
  font-size: 14px;
  color: var(--gray);
}
.header-language div {
  display: flex;
  align-items: center;
  gap: 5px;
  -webkit-user-select: none;
  user-select: none;
  cursor: pointer;
}
.header-language div svg:not(:first-child) {
  transition: transform 0.3s;
}
.header-language ul {
  position: absolute;
  top: 100%;
  left: 50%;
  z-index: 999;
  transform: translateX(-50%);
  padding: 10px;
  border-radius: 5px;
  background-color: var(--gray-5);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s, visibility 0.3s;
}
.header-language ul li {
  display: block;
}
.header-language ul li a {
  display: flex;
  align-items: center;
  gap: 10px;
}
.header-language ul li a img {
  width: 16px;
  height: 16px;
  object-fit: contain;
}
.header-language ul li a:hover {
  text-decoration: underline;
}
.header-language ul li:not(:last-child) {
  padding-bottom: 10px;
  border-bottom: 1px solid var(--gray-3);
  margin-bottom: 10px;
}
.header-language.active div svg:not(:first-child) {
  transform: rotateZ(-180deg);
}
.header-language.active ul {
  opacity: 1;
  visibility: visible;
}
.header-menu {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
  transform: translateX(-100%);
  width: 100%;
  height: 100vh;
  background-color: var(--white);
  opacity: 0;
  visibility: hidden;
  transition: transform 0.3s, opacity 0.3s, visibility 0.3s;
}
.header-menu-open, .header-menu-close {
  background-color: transparent;
}
.header-menu-open svg, .header-menu-close svg {
  display: block;
}
.header-menu-links li,
.header-menu-links li a {
  display: block;
}
.header-menu-links li a {
  padding: 20px 0;
}
.header-menu-links li:not(:last-child) {
  border-bottom: 1px solid var(--gray-3);
}
.header-menu.active {
  transform: translateX(0%);
  opacity: 1;
  visibility: visible;
}
@media (max-width: 920px) {
  .header-bar-flex {
    justify-content: center;
  }
  .header-flex {
    flex-wrap: wrap;
    gap: 20px 0;
  }
  .header-search {
    width: 100%;
    order: 1;
  }
}

.footer {
  padding: 20px 0;
}
.footer-top, .footer-top ul, .footer-bottom {
  display: flex;
  align-items: center;
}
.footer-top, .footer-bottom {
  justify-content: space-between;
}
.footer-top ul {
  gap: 10px;
}
.footer-top ul li a {
  width: 45px;
  height: 45px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  border: 1px solid var(--blue);
  background-color: var(--blue);
  transition: background-color 0.3s;
}
.footer-top ul li a svg path {
  transition: fill 0.3s;
}
.footer-top ul li a:hover {
  background-color: transparent;
}
.footer-top ul li a:hover svg path {
  fill: var(--blue);
}
.footer-bottom small {
  font-size: 14px;
  font-weight: 500;
}
.footer-bottom a svg {
  display: block;
}
.footer-links h2, .footer-products h2, .footer-addresses h2, .footer-phones h2 {
  font-size: 14px;
  font-weight: 400;
  text-transform: uppercase;
  color: var(--gray);
}
.footer-links ul li a, .footer-products ul li a {
  font-size: 14px;
}
.footer-links ul li a:hover, .footer-products ul li a:hover {
  text-decoration: underline;
}
.footer-links ul li {
  display: block;
}
.footer-links ul li:not(:last-child) {
  margin-bottom: 30px;
}
.footer-products ul {
  display: grid;
  grid-template-columns: repeat(2, auto);
  gap: 30px 40px;
}
.footer-addresses ul, .footer-phones ul {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 40px;
}
.footer-addresses ul li h3, .footer-phones ul li h3 {
  font-size: 14px;
  font-weight: 400;
  color: var(--blue);
}
.footer-addresses ul li address,
.footer-addresses ul li a, .footer-phones ul li address,
.footer-phones ul li a {
  display: inline-flex;
  gap: 10px;
  font-size: 14px;
  color: var(--gray);
}
.footer-addresses ul li address svg,
.footer-addresses ul li a svg, .footer-phones ul li address svg,
.footer-phones ul li a svg {
  width: 12px;
  height: 12px;
  flex-shrink: 0;
  margin-top: 2.395px;
}
.footer-addresses ul li address, .footer-phones ul li address {
  font-style: normal;
}
.footer-addresses ul li a:hover, .footer-phones ul li a:hover {
  text-decoration: underline;
}
.footer-selo {
  display: flex;
  justify-content: end;
}
@media (max-width: 720px) {
  .footer-selo {
    justify-content: start;
  }
}
.footer-phones-area {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
.footer-phones ul {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px;
}
@media (max-width: 1220px) {
  .footer {
    padding: 0;
  }
  .footer-products ul {
    grid-template-columns: 1fr;
  }
  .footer-addresses ul, .footer-phones ul {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 920px) {
  .footer {
    padding: 0;
  }
  .footer-top {
    flex-direction: column;
    gap: 40px;
  }
  .footer-addresses ul, .footer-phones ul {
    grid-template-columns: 1fr;
  }
}

.whatsapp {
  position: fixed;
  bottom: 30px;
  right: 30px;
  width: 60px;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background-color: var(--green);
  transition: opacity 0.3s;
}
.whatsapp:hover {
  opacity: 0.5;
}

.product-card {
  width: 100%;
}
.product-card-image {
  position: relative;
  padding-bottom: 100%;
  overflow: hidden;
  border-radius: 20px;
  background-color: var(--white);
  margin-bottom: 20px;
}
.product-card-image img {
  transition: transform 0.3s;
}
.product-card h3 {
  font-size: 24px;
  font-weight: 500;
  margin-bottom: 10px;
}
.product-card span {
  display: flex;
  align-items: center;
  gap: 20px;
  font-size: 14px;
  font-weight: 500;
  text-transform: uppercase;
}
.product-card:hover .product-card-image img {
  transform: scale(1.025);
}

.category-card {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
}
.category-card-image {
  position: relative;
  z-index: 0;
  padding-bottom: 72.22%;
  overflow: hidden;
  border-radius: 20px;
  background-color: var(--gray-4);
  margin-bottom: -40px;
}
.category-card-image img {
  transition: transform 0.3s;
}
.category-card-bottom {
  z-index: 1;
  flex-grow: 1;
  padding: 32px;
  border-radius: 20px;
  background-color: var(--white);
}
.category-card-bottom h3 {
  font-size: 24px;
  font-weight: 500;
  margin-bottom: 10px;
}
.category-card-bottom span {
  display: flex;
  align-items: center;
  gap: 20px;
  font-size: 14px;
  font-weight: 500;
  text-transform: uppercase;
}
.category-card:hover .category-card-image img {
  transform: scale(1.025);
}

.newsletter {
  padding: 60px 100px;
  border-radius: 20px;
  background-color: var(--blue);
  color: var(--white);
  display: flex;
  text-align: center;
  flex-direction: column;
}
.newsletter span,
.newsletter h2 {
  font-weight: 500;
}
.newsletter h2 {
  font-size: 40px;
  text-align: center;
}
.newsletter form {
  position: relative;
  width: 100% !important;
}
.newsletter form br {
  display: none;
}
.newsletter form input {
  width: 100%;
  padding: 0 21px 10px 0;
  border-radius: 0;
  border-bottom: 2px solid var(--white);
  background-color: transparent;
  font-size: 18px;
}
.newsletter form input, .newsletter form input::placeholder {
  color: inherit;
}
.newsletter form button {
  position: absolute;
  top: 13.5px;
  right: 0;
  background-color: transparent;
}
.newsletter form button svg {
  display: block;
}
@media (max-width: 1220px) {
  .newsletter h2 {
    font-size: 32px;
  }
}
@media (max-width: 920px) {
  .newsletter {
    padding: 60px 40px;
  }
  .newsletter h2 {
    font-size: 24px;
  }
}

.montana-certification {
  display: flex;
  align-items: center;
  gap: 40px;
  border-radius: 40px;
  padding: 80px 60px;
  background-color: var(--gray-6);
}
.montana-certification img {
  max-width: 160px;
}
.montana-certification p {
  font-size: 14px;
  color: var(--gray);
}
@media (max-width: 920px) {
  .montana-certification {
    flex-direction: column;
    padding: 60px 40px;
  }
}
.montana-purposes h3 {
  font-size: 16px;
  font-weight: 500;
  text-transform: uppercase;
}
.montana-purposes p {
  color: var(--gray);
}

.breadcrumb ul li {
  display: inline;
  color: var(--gray);
}
.breadcrumb ul li a:hover {
  text-decoration: underline;
}
.breadcrumb ul li span {
  color: var(--blue);
}
.breadcrumb ul li:not(:last-child)::after {
  content: "/";
}

.post-card-inline a {
  display: flex;
  gap: 20px;
}
.post-card-inline a > div:first-child {
  position: relative;
  width: 200px;
  height: 200px;
  flex-shrink: 0;
  border-radius: 20px;
  overflow: hidden;
}
.post-card-inline a > div:first-child img {
  transition: transform 0.3s;
}
.post-card-inline a > div:last-child {
  display: flex;
  flex-direction: column;
}
.post-card-inline a > div:last-child > div {
  display: flex;
  align-items: center;
  gap: 20px;
}
.post-card-inline a > div:last-child > div h4,
.post-card-inline a > div:last-child > div span {
  font-size: 14px;
  text-wrap: nowrap;
}
.post-card-inline a > div:last-child > div .post-card-category {
  padding: 6px 12px;
  border-radius: 999px;
  border: 1px solid var(--gray-3);
  font-weight: 400;
}
.post-card-inline a > div:last-child > div span {
  color: var(--gray);
}
.post-card-inline a > div:last-child h3 {
  font-size: 24px;
  font-weight: 300;
}
.post-card-inline a > div:last-child p {
  font-size: 14px;
  color: var(--gray);
}
.post-card-inline a > div:last-child > span {
  display: flex;
  align-items: center;
  gap: 20px;
  font-size: 14px;
  text-transform: uppercase;
}
.post-card-inline a:hover > div:first-child img {
  transform: scale(1.025);
}
@media (max-width: 920px) {
  .post-card-inline a {
    flex-direction: column;
  }
  .post-card-inline a > div:first-child {
    width: 100%;
    padding-bottom: 100%;
  }
  .post-card-inline a > div:last-child h3 {
    font-size: 18px;
  }
}

.page-hero {
  position: relative;
  z-index: 0;
  min-height: 180px;
  display: flex;
  align-items: center;
  background-color: var(--blue);
}
.page-hero h1 {
  font-size: 64px;
  font-weight: 500;
  color: var(--white);
}
.page-hero img {
  z-index: -1;
}
@media (max-width: 1220px) {
  .page-hero h1 {
    font-size: 48px;
  }
}
@media (max-width: 920px) {
  .page-hero h1 {
    font-size: 36px;
  }
}
.page-title {
  font-size: 48px;
  font-weight: 300;
}
@media (max-width: 920px) {
  .page-title {
    font-size: 32px;
  }
}

.home-banner .swiper-slide a,
.home-banner .swiper-slide span {
  position: relative;
  padding-bottom: 23.95%;
  background-color: var(--gray-6);
  display: block;
}
.home-banner .swiper-slide a .image-fill,
.home-banner .swiper-slide span .image-fill {
  object-fit: contain;
}
@media (max-width: 920px) {
  .home-banner .swiper-slide a,
  .home-banner .swiper-slide span {
    padding-bottom: 77.77%;
  }
}
.home-banner .swiper-navigation {
  position: absolute;
  bottom: 30px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
}
.home-segments {
  background-color: var(--gray-6);
}
.home-segments-nav {
  background-color: var(--blue);
}
.home-segments-nav ul {
  display: grid;
  grid-template-columns: repeat(7, 1fr) !important;
}
.home-segments-nav ul li {
  display: flex;
  align-items: center;
  justify-content: center;
}
.home-segments-nav ul li button {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  padding: 40px 10px;
  font-weight: 500;
  text-align: center;
  color: var(--white);
  transition: background-color 0.3s, color 0.3s;
}
.home-segments-nav ul li svg {
  flex-shrink: 0;
}
.home-segments-nav ul li svg:first-child {
  width: 48px;
  height: 48px;
}
.home-segments-nav ul li svg path {
  transition: fill 0.3s;
}
.home-segments-nav ul li:not(:last-child) {
  position: relative;
}
.home-segments-nav ul li:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 20px;
  right: 0;
  width: 1px;
  height: calc(100% - 40px);
  background-color: var(--white);
}
.home-segments-nav ul li:hover, .home-segments-nav ul li.active {
  background-color: var(--white);
}
.home-segments-nav ul li:hover button, .home-segments-nav ul li.active button {
  color: var(--blue);
}
.home-segments-nav ul li:hover svg path, .home-segments-nav ul li.active svg path {
  fill: var(--blue);
}
.home-segments-content {
  height: 0;
  opacity: 0;
  overflow: hidden;
  transition: height 0.3s, padding 0.3s, opacity 0.3s, visibility 0.3s;
  visibility: hidden;
}
.home-segments-content.active {
  height: auto;
  opacity: 1;
  padding: 20px 0 60px 0;
  visibility: visible;
}
@media (min-width: 1220px) {
  .home-segments-nav ul li:not(:last-child) {
    margin-right: -1px;
  }
  .home-segments-nav ul li svg:last-child {
    margin-top: auto;
  }
}
@media (max-width: 1220px) {
  .home-segments-nav .container {
    width: 100%;
  }
  .home-segments-nav .container .grid-12 {
    padding: 0;
  }
  .home-segments-nav ul {
    grid-template-columns: 1fr !important;
  }
  .home-segments-nav ul li {
    flex-direction: row;
    text-align: left;
    padding: 30px 20px;
  }
  .home-segments-nav ul li svg:last-child {
    margin-left: auto;
  }
  .home-segments-nav ul li:not(:last-child)::after {
    top: 100%;
    height: 1px;
    width: 100%;
  }
}
.home-highlights {
  padding: 60px 0;
}
.home-highlights ul {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 40px;
}
.home-highlights ul li a > div {
  position: relative;
}
.home-highlights ul li a > div:first-child {
  padding-bottom: 64.28%;
  border-radius: 20px 20px 0 0;
  margin-bottom: -40px;
  overflow: hidden;
}
.home-highlights ul li a > div:first-child img {
  transition: transform 0.3s;
}
.home-highlights ul li a > div:last-child {
  padding: 40px;
  border-radius: 20px;
  background-color: var(--gray-6);
}
.home-highlights ul li a > div:last-child h3 {
  font-size: 24px;
  font-weight: 500;
}
.home-highlights ul li a > div:last-child p {
  font-size: 14px;
  color: var(--gray);
}
.home-highlights ul li a > div:last-child span {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 14px;
  font-weight: 500;
  text-transform: uppercase;
}
.home-highlights ul li a:hover > div:first-child img {
  transform: scale(1.025);
}
@media (max-width: 920px) {
  .home-highlights {
    padding: 20px 0;
  }
  .home-highlights ul {
    grid-template-columns: 1fr;
  }
  .home-highlights ul li a > div:last-child h3 {
    font-size: 20px;
  }
}
.home-blog {
  padding-top: 60px;
  background-color: var(--gray-6);
}
.home-blog-grid {
  display: grid;
  gap: 40px;
}
.home-blog-newsletter {
  background-image: linear-gradient(to bottom, transparent 50%, var(--white) 50%);
}
@media (min-width: 920px) {
  .home-blog-grid .post-card-inline:nth-child(1) a {
    flex-direction: column;
  }
  .home-blog-grid .post-card-inline:nth-child(1) a > div:nth-child(1) {
    width: 100%;
    padding-bottom: 82.14%;
  }
  .home-blog-grid .post-card-inline:nth-child(1) a > div:last-child {
    padding: 0 20px;
  }
}
@media (min-width: 1220px) {
  .home-blog-grid {
    grid-template-areas: "a b" "a c" "a d";
    grid-template-columns: repeat(2, 1fr);
    grid-auto-rows: 1fr;
  }
  .home-blog-grid .post-card-inline:nth-child(1) {
    grid-area: a;
  }
  .home-blog-grid .post-card-inline:nth-child(2) {
    grid-area: b;
  }
  .home-blog-grid .post-card-inline:nth-child(3) {
    grid-area: c;
  }
  .home-blog-grid .post-card-inline:nth-child(4) {
    grid-area: d;
  }
}
@media (max-width: 1220px) {
  .home-blog-grid {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 920px) {
  .home-blog {
    padding-top: 20px;
  }
}

.about-content img {
  border-radius: 20px;
}
.about-content p {
  font-size: 24px;
  font-weight: 400;
  color: var(--gray);
}
.about-content:not(:last-child) {
  margin-bottom: 40px;
}
@media (max-width: 1220px) {
  .about-content p {
    font-size: 20px;
  }
}
@media (max-width: 920px) {
  .about-content p {
    font-size: 16px;
  }
  .about-content:not(:last-child) {
    margin-bottom: 0;
  }
}
.about-commitment {
  padding: 60px 0 100px 0;
}
.about-commitment div:has(> img),
.about-commitment .embed-container {
  padding-bottom: 75%;
}
.about-commitment div:has(> img) {
  position: relative;
}
.about-commitment div:has(> img) img {
  border-radius: 20px;
}
.about-commitment p {
  font-size: 24px;
  color: var(--gray);
}
@media (max-width: 1220px) {
  .about-commitment p {
    font-size: 18px;
  }
}
@media (max-width: 920px) {
  .about-commitment {
    padding: 20px 0 40px 0;
  }
}
.about-policy {
  position: relative;
  padding: 100px 0;
  background-color: var(--gray-6);
}
.about-policy-image {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 40px;
  border-radius: 0 20px 20px 0;
  background-color: var(--blue);
}
.about-policy-image img {
  max-width: 180px;
}
.about-policy p {
  color: var(--gray);
}
@media (min-width: 920px) {
  .about-policy-image {
    position: absolute;
    top: 0;
    left: 0;
    width: calc(50% - 20px);
    height: 100%;
  }
}
@media (max-width: 920px) {
  .about-policy {
    padding: 60px 0 40px 0;
  }
  .about-policy-image {
    width: calc(50% + 330px);
  }
  .about-policy-image img {
    max-width: 140px;
  }
}
@media (max-width: 720px) {
  .about-policy-image {
    width: calc(50% + 230px);
  }
}
@media (max-width: 520px) {
  .about-policy-image {
    width: calc(50% + 180px);
  }
}
@media (max-width: 420px) {
  .about-policy-image {
    width: calc(100% - 20px);
  }
}
.about-montana {
  padding-top: 60px;
}
.about-montana-purposes .list-content {
  padding: 20px;
  border-radius: 20px;
  background-color: var(--gray-6);
}
.about-montana-purposes h3 {
  font-weight: 500;
  text-transform: uppercase;
}
.about-montana-purposes p {
  color: var(--gray);
  margin-top: 20px;
}
.about-montana-purposes p + h4 {
  padding-top: 40px;
  border-top: 1px solid var(--gray-4);
  margin-top: 40px;
}
.about-montana-purposes ul {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 40px;
}
.about-montana-purposes ul li {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  padding: 20px;
  border-radius: 10px;
  background-color: var(--gray-6);
  font-size: 14px;
  font-weight: 500;
  text-align: center;
  color: var(--blue);
}
.about-montana-purposes ul li img {
  width: 60px;
  height: 40px;
  object-fit: contain;
}
@media (max-width: 1220px) {
  .about-montana-purposes ul {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (max-width: 920px) {
  .about-montana {
    padding-top: 20px;
  }
  .about-montana-purposes ul {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 720px) {
  .about-montana-purposes ul {
    grid-template-columns: 1fr;
  }
}
.about-inovation {
  padding: 40px 0 60px 0;
}
.about-inovation .list-content > div {
  width: 100%;
}
.about-inovation .list-content > div:first-child:not(:only-child) {
  position: relative;
  padding-bottom: 64.28%;
  margin-bottom: -40px;
}
.about-inovation .list-content > div:first-child:not(:only-child) img {
  border-radius: 20px 20px 0 0;
}
.about-inovation .list-content > div:last-child {
  z-index: 0;
  flex-grow: 1;
  padding: 40px;
  border-radius: 20px;
  background-color: var(--gray-6);
}
.about-inovation .list-content > div:last-child h3 {
  font-size: 24px;
  font-weight: 500;
}
.about-inovation .list-content > div:last-child .editor {
  font-size: 14px;
}
.about-inovation .list-content > div:last-child .editor a {
  text-decoration: underline;
}
@media (max-width: 920px) {
  .about-inovation {
    padding: 0 0 20px 0;
  }
}
.about-documents {
  padding: 60px 0;
  background-color: var(--gray-6);
}
.about-documents h4 {
  font-weight: 500;
  text-transform: uppercase;
}
@media (max-width: 920px) {
  .about-documents {
    padding: 20px 0;
  }
}
.about-be-a-part {
  padding: 60px 0 40px 0;
}
@media (max-width: 920px) {
  .about-be-a-part {
    padding: 20px 0 0 0;
  }
}

.work-come {
  padding: 60px 0;
}
@media (max-width: 920px) {
  .work-come {
    padding: 20px 0;
  }
}
.work-buttons {
  padding: 60px 0;
  background-color: var(--gray-6);
}
.work-buttons .button {
  min-height: 60px;
}
@media (max-width: 920px) {
  .work-buttons {
    padding: 20px 0;
  }
}
.work-montana {
  padding: 60px 0 40px 0;
}
@media (max-width: 920px) {
  .work-montana {
    padding: 20px 0 0 0;
  }
}
.work-know {
  padding: 0 0 40px 0;
}
@media (max-width: 920px) {
  .work-know {
    padding: 0 0 20px 0;
  }
}

.contact-options {
  padding: 60px 0;
}
.contact-options-item {
  padding: 60px;
  border-radius: 40px;
  border: 1px solid var(--gray-3);
}
.contact-options-item > div:first-child {
  width: 60px;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background-color: var(--green);
}
.contact-options-item h3 {
  font-size: 48px;
  font-weight: 300;
}
.contact-options-item p {
  font-size: 24px;
  color: var(--gray);
}
@media (max-width: 920px) {
  .contact-options {
    padding: 20px 0;
  }
  .contact-options-item {
    padding: 40px;
  }
  .contact-options-item h3 {
    font-size: 40px;
  }
  .contact-options-item p {
    font-size: 20px;
  }
}
.contact-embed {
  padding: 60px 0;
}
.contact-embed .embed-container iframe {
  margin-left: 100px;
  border-radius: 0px;
}
@media (max-width: 768px) {
  .contact-embed .embed-container iframe {
    margin-left: 70px;
  }
}
.contact-questions {
  padding: 60px 0;
  background-color: var(--gray-6);
}
.contact-questions ul li {
  padding: 0 100px;
  border-bottom: 1px solid var(--gray-3);
  display: block;
}
.contact-questions ul li .contact-questions-item-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 40px 0;
  font-size: 20px;
  font-weight: 400;
  transition: padding-bottom 0.3s;
  -webkit-user-select: none;
  user-select: none;
  cursor: pointer;
}
.contact-questions ul li .contact-questions-item-title::after {
  content: "";
  width: 12px;
  height: 12px;
  flex-shrink: 0;
  background-image: url("data:image/svg+xml,%3Csvg width='12' height='7' viewBox='0 0 12 7' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M0.646454 1.35359L1.35356 0.646484L6.00001 5.29293L10.6465 0.646484L11.3536 1.35359L6.00001 6.70714L0.646454 1.35359Z' fill='%23787878'/%3E%3C/svg%3E");
  background-size: 100% auto;
  background-position: center;
  background-repeat: no-repeat;
  transition: transform 0.3s;
}
.contact-questions ul li .contact-questions-item-content {
  height: 0;
  color: var(--gray);
  opacity: 0;
  overflow: hidden;
  transition: padding-bottom 0.3s, height 0.3s, opacity 0.3s;
  visibility: hidden;
}
.contact-questions ul li .contact-questions-item-content a {
  color: var(--blue);
}
.contact-questions ul li .contact-questions-item-content a:hover {
  text-decoration: underline;
}
.contact-questions ul li.active .contact-questions-item-title {
  padding-bottom: 20px;
}
.contact-questions ul li.active .contact-questions-item-title::after {
  transform: rotateZ(-180deg);
}
.contact-questions ul li.active .contact-questions-item-content {
  height: auto;
  padding-bottom: 40px;
  opacity: 1;
  visibility: visible;
}
.contact-questions ul li:first-child {
  border-top: 1px solid var(--gray-3);
}
@media (max-width: 1220px) {
  .contact-questions ul li {
    padding: 0 75px;
  }
}
@media (max-width: 920px) {
  .contact-questions {
    padding: 20px 0;
  }
  .contact-questions ul li {
    padding: 0 30px;
  }
}

.not-found {
  padding: 100px 0;
  background-color: var(--gray-6);
}
.not-found h1 {
  font-size: 48px;
  font-weight: 300;
  color: var(--blue);
}
.not-found p {
  color: var(--gray);
}
@media (max-width: 920px) {
  .not-found {
    padding: 40px 0;
  }
  .not-found h1 {
    font-size: 36px;
  }
}

.products {
  padding-bottom: 60px;
  background-color: var(--gray-6);
}
.products-search {
  position: relative;
  width: 100%;
}
.products-search input {
  width: 100%;
  height: 52px;
  padding: 0 6px 0 20px;
  border-radius: 26px;
  border: 1px solid var(--gray-3);
  font-size: 14px;
  color: inherit;
  transition: border-color 0.3s;
}
.products-search input::placeholder {
  color: var(--gray);
}
.products-search input:focus {
  border-color: var(--blue);
}
.products-search button {
  position: absolute;
  top: 50%;
  right: 6px;
  transform: translateY(-50%);
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 20px;
  background-color: var(--gray-4);
  transition: background-color 0.3s;
}
.products-search button svg path {
  transition: fill 0.3s;
}
.products-search button:hover {
  background-color: var(--blue);
}
.products-search button:hover svg path {
  fill: var(--gray-4);
}
.products-filter {
  display: flex;
  align-items: center;
  gap: 32px;
  font-size: 14px;
  color: var(--gray);
}
.products-filter div {
  position: relative;
  z-index: 1;
}
.products-filter div, .products-filter div > span {
  flex-grow: 1;
}
.products-filter div > span {
  height: 52px;
  display: flex;
  align-items: center;
  padding: 0 66px 0 20px;
  border-radius: 26px;
  border: 1px solid var(--gray-3);
  cursor: pointer;
}
.products-filter div > span button {
  position: absolute;
  top: 50%;
  right: 6px;
  transform: translateY(-50%);
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 20px;
  background-color: var(--gray-4);
  transition: transform 0.3s, background-color 0.3s;
}
.products-filter div > span button svg path {
  transition: fill 0.3s;
}
.products-filter div > span button:hover, .products-filter div.active .products-filter div > span button {
  background-color: var(--blue);
}
.products-filter div > span button:hover svg path, .products-filter div.active .products-filter div > span button svg path {
  fill: var(--gray-4);
}
.products-filter div ul {
  position: absolute;
  top: calc(100% + 10px);
  left: 0;
  width: 100%;
  padding: 20px;
  border-radius: 26px;
  border: 1px solid var(--gray-3);
  background-color: var(--white);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s, visibility 0.3s;
}
.products-filter div ul li,
.products-filter div ul li a,
.products-filter div ul li span {
  display: block;
}
.products-filter div ul li a:hover {
  text-decoration: underline;
}
.products-filter div ul li span {
  color: var(--blue);
}
.products-filter div ul li:not(:last-child) {
  margin-bottom: 10px;
}
.products-filter div.active button {
  transform: translateY(-50%) rotateZ(-180deg);
}
.products-filter div.active ul {
  opacity: 1;
  visibility: visible;
}
.products-list-categories {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px;
}
@media (max-width: 920px) {
  .products-list {
    padding-bottom: 20px;
  }
}
.products p {
  color: var(--gray);
}
.products p a {
  color: var(--blue);
  text-decoration: underline;
}

.product {
  padding-bottom: 60px;
  background-color: var(--gray-6);
}
.product-images {
  position: relative;
}
.product-images .swiper-slide {
  border-radius: 20px;
  background-color: var(--white);
  overflow: hidden;
  cursor: move;
}
.product-images .swiper-slide > div {
  position: relative;
  padding-bottom: 100%;
}
.product-images .swiper-slide img {
  min-width: 100%;
  min-height: 100%;
  max-width: 1120px !important;
  max-height: 1120px !important;
  object-fit: cover;
}
.product-images .swiper-navigation {
  position: absolute;
  bottom: 20px;
  left: 50%;
  z-index: 1;
  transform: translateX(-50%);
}
.product-category, .product-title {
  font-size: 42px;
  color: var(--blue);
}
.product-category {
  font-weight: 400;
}
.product-title {
  font-weight: 300;
}
.product-specifications {
  overflow: auto;
  border-top: 3px solid var(--gray-3);
}
.product-specifications table {
  width: 100%;
  table-layout: fixed;
}
.product-specifications table tr {
  border-bottom: 1px solid var(--gray-3);
}
.product-specifications table th,
.product-specifications table td {
  width: 140px;
  padding: 15px 0;
  color: var(--gray);
}
.product-specifications table th {
  font-weight: 600;
}
.product a:has(> svg) {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  text-decoration: underline;
  color: var(--gray-1);
}
.product-colors ul {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 40px;
}
.product-colors ul li div {
  position: relative;
  padding-bottom: 100%;
}
.product-colors ul li div img {
  border-radius: 20px;
}
.product-colors ul li span {
  color: var(--gray);
  margin-top: 15px;
  display: block;
}
.product-message {
  color: var(--gray);
}
.product-message a {
  color: var(--blue);
}
.product-message a:hover {
  text-decoration: underline;
}
.product-informations-nav {
  position: relative;
  border-bottom: 3px solid var(--gray-3);
}
.product-informations-nav .swiper {
  padding-bottom: 3px;
  margin-bottom: -3px;
}
.product-informations-nav .swiper-slide {
  padding-bottom: 10px;
  text-align: center;
  color: var(--gray);
  transition: color 0.3s, opacity 0.3s;
}
.product-informations-nav .swiper-slide::after {
  content: "";
  position: absolute;
  bottom: -3px;
  left: 0;
  width: 100%;
  height: 3px;
  background-color: var(--gray-1);
  opacity: 0;
  transition: opacity 0.3s;
}
.product-informations-nav .swiper-slide:hover, .product-informations-nav .swiper-slide-thumb-active {
  color: var(--blue);
}
.product-informations-nav .swiper-slide:hover::after, .product-informations-nav .swiper-slide-thumb-active::after {
  opacity: 1;
}
.product-informations-nav .swiper-slide:not(.swiper-slide-thumb-active) {
  cursor: pointer;
}
.product-informations-nav .swiper-slide:not(.swiper-slide-thumb-active):hover {
  opacity: 0.5;
}
.product-informations-nav-prev, .product-informations-nav-next {
  position: absolute;
  top: calc(50% - 3px);
  z-index: 2;
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  -webkit-user-select: none;
  user-select: none;
  cursor: pointer;
  transition: opacity 0.3s;
}
.product-informations-nav-prev svg path, .product-informations-nav-next svg path {
  transition: fill 0.3s;
}
.product-informations-nav-prev.swiper-button-lock, .product-informations-nav-next.swiper-button-lock {
  display: none;
}
.product-informations-nav-prev.swiper-button-disabled, .product-informations-nav-next.swiper-button-disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.product-informations-nav-prev:not(.swiper-button-disabled):hover svg path, .product-informations-nav-next:not(.swiper-button-disabled):hover svg path {
  fill: var(--blue);
}
.product-informations-nav-prev {
  left: -20px;
}
.product-informations-nav-next {
  right: -20px;
}
.product-informations-content .swiper-slide p {
  color: var(--gray);
}
.product-related {
  position: relative;
}
.product-related-prev, .product-related-next {
  position: absolute;
  top: 50%;
  z-index: 2;
  transform: translateY(-50%);
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  border: 1px solid var(--gray-3);
  background-color: var(--white);
  transition: opacity 0.3s;
}
.product-related-prev:not(.swiper-button-disabled), .product-related-next:not(.swiper-button-disabled) {
  user-select: none;
  -webkit-user-select: none;
  cursor: pointer;
}
.product-related-prev.swiper-button-disabled, .product-related-next.swiper-button-disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.product-related-prev.swiper-button-lock, .product-related-next.swiper-button-lock {
  display: none;
}
.product-related-prev {
  left: -16px;
}
.product-related-next {
  right: -16px;
}
.product .line {
  background-color: var(--gray-3);
}
@media (max-width: 1220px) {
  .product-category, .product-title {
    font-size: 32px;
  }
  .product-colors ul {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media (max-width: 920px) {
  .product {
    padding-bottom: 20px;
  }
  .product-colors ul {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }
  .product .button-green {
    width: 100%;
  }
}
@media (min-width: 920px) {
  .product div:has(> .product-images) {
    position: sticky;
    top: 0;
  }
}

.blog-featured-posts {
  padding: 20px 0 60px 0;
  background-color: var(--gray-6);
}
.blog-featured-posts .swiper-slide .post-card-inline a {
  flex-direction: column;
}
.blog-featured-posts .swiper-slide .post-card-inline a > div:first-child {
  width: 100%;
  height: auto;
  padding-bottom: 39.65%;
}
.blog-featured-posts .swiper-slide .post-card-inline a > div:last-child {
  padding: 0 20px;
}
.blog-featured-posts .swiper-navigation {
  position: absolute;
  top: 320px;
  right: 40px;
  z-index: 1;
}
@media (min-width: 920px) {
  .blog-featured-posts .swiper-slide .post-card-inline a > div:last-child h3 {
    font-size: 32px;
  }
  .blog-featured-posts .swiper-slide .post-card-inline a > div:last-child p {
    font-size: inherit;
  }
}
@media (min-width: 1220px) {
  .blog-featured-posts .swiper-navigation {
    top: 440px;
  }
}
@media (max-width: 920px) {
  .blog-featured-posts .swiper-navigation {
    top: 100%;
    right: 50%;
    transform: translateX(50%);
  }
}
.blog-most-read {
  padding: 60px 0;
}
@media (max-width: 920px) {
  .blog-most-read {
    padding: 20px 0;
  }
}
.blog-posts-categories {
  position: relative;
  border-bottom: 3px solid var(--gray-3);
}
.blog-posts-categories .swiper {
  padding-bottom: 3px;
  margin-bottom: -3px;
}
.blog-posts-categories-prev, .blog-posts-categories-next {
  position: absolute;
  top: calc(50% - 3px);
  z-index: 2;
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  -webkit-user-select: none;
  user-select: none;
  cursor: pointer;
  transition: opacity 0.3s;
}
.blog-posts-categories-prev svg path, .blog-posts-categories-next svg path {
  transition: fill 0.3s;
}
.blog-posts-categories-prev.swiper-button-lock, .blog-posts-categories-next.swiper-button-lock {
  display: none;
}
.blog-posts-categories-prev.swiper-button-disabled, .blog-posts-categories-next.swiper-button-disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.blog-posts-categories-prev:not(.swiper-button-disabled):hover svg path, .blog-posts-categories-next:not(.swiper-button-disabled):hover svg path {
  fill: var(--blue);
}
.blog-posts-categories-prev {
  left: -20px;
}
.blog-posts-categories-next {
  right: -20px;
}
.blog-posts-categories-item {
  position: relative;
  padding-bottom: 10px;
  text-align: center;
  cursor: pointer;
}
.blog-posts-categories-item::after {
  content: "";
  position: absolute;
  bottom: -3px;
  left: 0;
  width: 100%;
  height: 3px;
  background-color: var(--gray-1);
  opacity: 0;
  transition: opacity 0.3s;
}
.blog-posts-categories-item:hover::after {
  opacity: 0.5;
}
.blog-posts-categories-item.active::after {
  opacity: 1;
}
.blog-posts-item {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
}
.blog-posts-item > div:first-child {
  position: relative;
  z-index: 0;
  width: 100%;
  padding-bottom: 100%;
  border-radius: 40px 40px 0 0;
  margin-bottom: -40px;
  overflow: hidden;
}
.blog-posts-item > div:first-child img {
  transition: transform 0.3s;
}
.blog-posts-item > div:last-child {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 20px;
  flex-grow: 1;
  padding: 40px;
  border-radius: 40px;
  background-color: var(--gray-6);
}
.blog-posts-item > div:last-child span:not(:last-child) {
  font-size: 24px;
  font-weight: 500;
}
.blog-posts-item > div:last-child span:last-child {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 14px;
  font-weight: 500;
  text-transform: uppercase;
  margin-top: auto;
}
.blog-posts-item > div:last-child p {
  font-size: 14px;
  color: var(--gray);
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  line-clamp: 4;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
}
.blog-posts-item:hover > div:first-child img {
  transform: scale(1.025);
}
.blog-posts-skeleton {
  width: 100%;
  position: relative;
  padding-bottom: 161.11%;
  border-radius: 40px;
  background-color: var(--gray-6);
}
.blog-posts-empty h2 {
  font-size: 24px;
  font-weight: 300;
  text-align: center;
}
.blog-posts-empty p {
  color: var(--gray);
}
.blog-posts-load-more .button:disabled {
  position: relative;
  color: transparent;
}
@keyframes loading {
  from {
    transform: translate(-50%, -50%) rotateZ(0deg);
  }
  to {
    transform: translate(-50%, -50%) rotateZ(360deg);
  }
}
.blog-posts-load-more .button:disabled::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 16px;
  height: 16px;
  border-radius: 50%;
  border: 2px solid var(--white);
  border-top: 2px solid transparent;
  animation: loading 0.6s infinite linear;
}
@media (max-width: 920px) {
  .blog-posts-empty h2 {
    font-size: 20px;
  }
}

.post-hero {
  padding: 20px 0;
  background-color: var(--gray-6);
}
.post-hero ul {
  display: flex;
  align-items: center;
  gap: 10px;
}
.post-hero ul li {
  padding: 6px 12px;
  border-radius: 999px;
  border: 1px solid var(--gray-3);
  font-size: 14px;
}
.post-hero h1 {
  font-size: 48px;
  font-weight: 300;
}
.post-hero p {
  color: var(--gray);
}
.post-hero time,
.post-hero span {
  font-size: 14px;
  color: var(--gray);
}
@media (max-width: 1220px) {
  .post-hero h1 {
    font-size: 36px;
  }
}
.post-image {
  position: relative;
  padding-bottom: 82.14%;
}
.post-image img {
  border-radius: 20px;
}
.post-share {
  justify-content: center;
}
.post-share,
.post-share ul {
  display: flex;
  align-items: center;
  gap: 20px;
}
.post-share span {
  color: var(--gray);
}
.post-share ul {
  flex-wrap: wrap;
}
.post-share ul li a {
  width: 42px;
  height: 42px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  border: 1px solid var(--gray-3);
  transition: background-color 0.3s;
}
.post-share ul li a:hover {
  background-color: var(--gray-3);
}
@media (max-width: 1220px) {
  .post-share {
    flex-direction: column;
  }
}
.post-related {
  position: relative;
}
.post-related .swiper-slide a {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
}
.post-related .swiper-slide a > div:first-child {
  position: relative;
  z-index: 0;
  width: 100%;
  padding-bottom: 100%;
  border-radius: 40px 40px 0 0;
  margin-bottom: -40px;
  overflow: hidden;
}
.post-related .swiper-slide a > div:first-child img {
  transition: transform 0.3s;
}
.post-related .swiper-slide a > div:last-child {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 20px;
  flex-grow: 1;
  padding: 40px;
  border-radius: 40px;
  background-color: var(--gray-6);
}
.post-related .swiper-slide a > div:last-child span:not(:last-child) {
  font-size: 24px;
  font-weight: 500;
}
.post-related .swiper-slide a > div:last-child span:last-child {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 14px;
  font-weight: 500;
  text-transform: uppercase;
  margin-top: auto;
}
.post-related .swiper-slide a > div:last-child p {
  font-size: 14px;
  color: var(--gray);
}
.post-related .swiper-slide a:hover > div:first-child img {
  transform: scale(1.025);
}
.post-related .swiper-navigation-prev, .post-related .swiper-navigation-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  border: 1px solid var(--gray-3);
  background-color: var(--white);
  background-size: 10px auto;
}
.post-related .swiper-navigation-prev {
  left: 4px;
}
.post-related .swiper-navigation-next {
  right: 4px;
}
@media (max-width: 920px) {
  .post-related .swiper-slide a > div:first-child {
    border-radius: 20px 20px 0 0;
  }
  .post-related .swiper-slide a > div:last-child {
    padding: 20px;
    border-radius: 20px;
  }
  .post-related .swiper-navigation-prev {
    left: 4px;
  }
  .post-related .swiper-navigation-next {
    right: 4px;
  }
}

.report-card {
  padding: 60px 0;
  background-color: var(--gray-6);
}
.report-card ul {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px;
}
.report-card ul li a {
  min-height: 140px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 40px;
  border-radius: 20px;
  border: 1px solid var(--gray-3);
  font-size: 24px;
  font-weight: 300;
  color: var(--gray);
  transition: background-color 0.3s;
}
.report-card ul li a:hover {
  background-color: var(--white);
}
@media (max-width: 1220px) {
  .report-card ul {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 920px) {
  .report-card {
    padding: 20px 0;
  }
  .report-card ul {
    grid-template-columns: 1fr;
  }
  .report-card ul li a {
    min-height: 70px;
    font-size: 18px;
  }
}

.download-cards {
  padding: 60px 0;
  background-color: var(--gray-6);
}
.download-cards-search {
  position: relative;
}
.download-cards-search svg {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 20px;
}
.download-cards-search input {
  width: 100%;
  height: 52px;
  padding: 0 20px 0 56px;
  border-radius: 26px;
  border: 1px solid var(--gray-3);
  font-size: 14px;
  color: inherit;
  transition: border-color 0.3s;
}
.download-cards-search input::placeholder {
  color: var(--gray);
}
.download-cards-search input:focus {
  border-color: var(--blue);
}
.download-cards-search button {
  position: absolute;
  top: 50%;
  right: 6px;
  transform: translateY(-50%);
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 20px;
  background-color: var(--gray-4);
  transition: background-color 0.3s;
}
.download-cards-search button svg path {
  transition: fill 0.3s;
}
.download-cards-search button:hover {
  background-color: var(--blue);
}
.download-cards-search button:hover svg path {
  fill: var(--gray-4);
}
.download-cards ul {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px;
  margin-top: 40px;
}
.download-cards ul li a {
  height: 100%;
  min-height: 140px;
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 40px;
  border-radius: 20px;
  border: 1px solid var(--gray-3);
  transition: background-color 0.3s;
}
.download-cards ul li a svg {
  flex-shrink: 0;
}
.download-cards ul li a svg:last-child {
  margin-left: auto;
}
.download-cards ul li a h3,
.download-cards ul li a span {
  color: var(--gray);
}
.download-cards ul li a h3 {
  font-size: 20px;
  font-weight: 300;
  overflow-wrap: anywhere;
}
.download-cards ul li a span {
  font-size: 14px;
}
.download-cards ul li a:hover {
  background-color: var(--white);
}
.download-cards p {
  font-size: 20px;
  font-weight: 300;
  text-align: center;
}
.download-cards p a {
  color: #0068FF;
  text-decoration: underline;
}
@media (max-width: 1220px) {
  .download-cards {
    padding: 20px 0;
  }
  .download-cards ul {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 920px) {
  .download-cards {
    padding: 20px 0;
  }
  .download-cards ul {
    grid-template-columns: 1fr;
  }
  .download-cards p {
    font-size: 16px;
  }
}

.restricted-area {
  background-color: var(--gray-6);
}
.restricted-area-login form, .restricted-area-register form {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.restricted-area-login .error, .restricted-area-register .error {
  text-align: center;
  color: #F00;
  margin-top: 20px;
  display: block;
}
.restricted-area-login p:has(> a), .restricted-area-register p:has(> a) {
  text-align: center;
  color: var(--gray);
  margin-top: 20px;
}
.restricted-area-login p:has(> a) a, .restricted-area-register p:has(> a) a {
  text-decoration: underline;
}
.restricted-area-login form .login-submit {
  text-align: center;
}
.restricted-area-login form .login-submit .button {
  border-color: var(--green);
  background-color: var(--green);
  color: var(--white);
  cursor: pointer;
}
.restricted-area h2 {
  font-size: 32px;
  font-weight: 300;
  text-align: center;
}
.restricted-area h2 a {
  color: #0068FF;
  text-decoration: underline;
}
.restricted-area:not(:has(.download-cards)) {
  padding: 60px 0;
}
@media (max-width: 920px) {
  .restricted-area:not(:has(.download-cards)) {
    padding: 20px 0;
  }
  .restricted-area h2 {
    font-size: 24px;
  }
}

.lp-do-bem-banner-mobile {
  display: none;
}
@media (max-width: 720px) {
  .lp-do-bem-banner-mobile {
    display: block;
  }
}
@media (max-width: 720px) {
  .lp-do-bem-banner-desktop {
    display: none;
  }
}
.lp-do-bem-credits {
  font-size: 8px;
  color: #787878;
}
.lp-do-bem-button {
  font-size: 16px;
  background-color: #007D57;
  padding: 16px;
  color: #FFF;
  text-transform: uppercase;
  border-radius: 32px;
  display: block;
  width: fit-content;
  transition: 0.3s;
  line-height: 100%;
  font-weight: 300;
  text-align: center;
}
.lp-do-bem-button:hover {
  opacity: 0.7;
}
.lp-do-bem-banner {
  position: relative;
}
.lp-do-bem-banner-button {
  position: absolute;
  bottom: 0px;
  left: 50%;
  transform: translateX(-50%) translateY(50%);
}
.lp-do-bem-gallery {
  padding-top: 60px;
}
.lp-do-bem-gallery-container {
  display: flex;
  flex-wrap: wrap-reverse;
}
.lp-do-bem-gallery-text {
  height: 100%;
  background-color: #F1F1F1;
  padding: 60px;
  border-radius: 32px;
  color: #787878;
  line-height: 24px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
@media (max-width: 520px) {
  .lp-do-bem-gallery-text {
    padding: 40px;
  }
}
.lp-do-bem-gallery-text p + p {
  margin-top: 20px;
}
.lp-do-bem-gallery-image {
  border-radius: 32px;
  width: 100%;
  height: 100%;
}
.lp-do-bem-gallery-image:nth-child(1) {
  grid-area: a;
}
.lp-do-bem-gallery-image:nth-child(2) {
  grid-area: b;
}
.lp-do-bem-gallery-image:nth-child(3) {
  grid-area: c;
}
.lp-do-bem-gallery-image:nth-child(4) {
  grid-area: d;
}
.lp-do-bem-gallery-image-area {
  display: grid;
  gap: 16px 40px;
  grid-template-areas: "a a b b" "a a b b" "a a c c" "d d c c";
}
@media (max-width: 520px) {
  .lp-do-bem-gallery-image-area {
    gap: 10px;
  }
}
.lp-do-bem-numbers {
  padding-top: 40px;
}
.lp-do-bem-numbers-content {
  border-top: 1px solid #FF5A54;
  border-bottom: 1px solid #FF5A54;
  display: flex;
  justify-content: space-between;
  gap: 20px;
  padding: 60px 0;
}
@media (max-width: 720px) {
  .lp-do-bem-numbers-content {
    justify-content: center;
    flex-direction: column;
    gap: 60px;
  }
}
.lp-do-bem-numbers-item {
  display: flex;
  flex-direction: column;
}
.lp-do-bem-numbers-item-desc, .lp-do-bem-numbers-item-number {
  text-align: center;
  font-size: 24px;
  line-height: 100%;
}
.lp-do-bem-numbers-item-number {
  color: #002D78;
  font-weight: 600;
}
.lp-do-bem-numbers-item-desc {
  font-weight: 300;
  color: #787878;
}
.lp-do-bem-numbers-credits {
  text-align: center;
  padding: 0 20px;
}
.lp-do-bem-card {
  padding-top: 60px;
}
@media (max-width: 520px) {
  .lp-do-bem-card-grid {
    padding: 20px 0 0 0;
  }
}
.lp-do-bem-card-area {
  background-color: #002D78;
  border-radius: 32px;
  padding: 40px 60px;
  display: flex;
  flex-wrap: wrap;
}
@media (max-width: 520px) {
  .lp-do-bem-card-area {
    padding: 20px;
  }
}
.lp-do-bem-card-title {
  color: #71DEFF;
  font-size: 32px;
  font-weight: 300;
  line-height: 40px;
}
.lp-do-bem-card-desc {
  font-size: 16px;
  color: #FFF;
  font-weight: 300;
  margin-top: 24px;
  text-wrap: balance;
  padding-right: 120px;
}
@media (max-width: 720px) {
  .lp-do-bem-card-desc {
    padding-right: 0;
  }
}
.lp-do-bem-card-logos {
  margin-top: 40px;
  display: flex;
  align-items: center;
  gap: 40px;
}
.lp-do-bem-card-image {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 32px;
  object-fit: cover;
}
.lp-do-bem-card-images {
  display: flex;
  justify-content: space-around;
  gap: 40px;
}
@media (max-width: 1220px) {
  .lp-do-bem-card-images {
    margin-top: 60px;
  }
}
@media (max-width: 720px) {
  .lp-do-bem-card-images {
    flex-direction: column;
  }
}
.lp-do-bem-cta-grid {
  padding-top: 60px;
}
@media (max-width: 520px) {
  .lp-do-bem-cta-grid {
    padding: 80px 0 0 0;
  }
}
.lp-do-bem-cta-title {
  font-size: 32px;
  font-weight: 300;
  color: #002D78;
}
.lp-do-bem-cta-desc {
  color: #787878;
  font-size: 16px;
  display: block;
  margin: 16px 0;
}
.lp-do-bem-cta-area {
  position: relative;
  background: linear-gradient(90deg, rgb(0, 45, 120) 50%, rgb(113, 222, 255) 50%);
  padding-left: 200px;
  padding-right: 100px;
  border-radius: 32px;
}
@media (max-width: 920px) {
  .lp-do-bem-cta-area {
    padding-left: 60px;
    padding-right: 60px;
    margin-bottom: 100px;
  }
}
@media (max-width: 720px) {
  .lp-do-bem-cta-area {
    padding: 60px 0;
    background: linear-gradient(180deg, rgb(0, 45, 120) 50%, rgb(113, 222, 255) 50%);
  }
}
@media (max-width: 520px) {
  .lp-do-bem-cta-area {
    padding: 20px 0;
  }
}
.lp-do-bem-cta-packshot {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%) translateX(10%);
  height: fit-content;
}
@media (max-width: 920px) {
  .lp-do-bem-cta-packshot {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateY(30%) translateX(-50%);
  }
}
@media (max-width: 720px) {
  .lp-do-bem-cta-packshot {
    transform: translateY(50%) translateX(-50%);
  }
}
@media (max-width: 520px) {
  .lp-do-bem-cta-packshot {
    transform: translateY(80%) translateX(-50%);
  }
  .lp-do-bem-cta-packshot img {
    height: 200px;
  }
}
.lp-do-bem-cta-content {
  background-color: #EBEBEB;
  padding: 40px 100px 40px 200px;
  border-radius: 32px;
}
@media (max-width: 920px) {
  .lp-do-bem-cta-content {
    padding: 40px 40px 150px 40px;
  }
}
.lp-do-bem-contract {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  padding: 60px 20px 80px 20px;
}
.lp-do-bem-contract-title {
  font-size: 48px;
  color: #002D78;
  font-weight: 300;
  text-align: center;
  margin-bottom: 20px;
}
@media (max-width: 720px) {
  .lp-do-bem-contract-title {
    font-size: 32px;
  }
}