.header {
  position: relative;
  z-index: 100;
  padding: 1.5rem 0;
  background-color: #D9D9D9;
}

.header__logo {
  max-width: 14.8rem;
  margin: 0 auto;
}

.header__logo--img {
  display: block;
  max-width: 100%;
}

.header .menu-button {
  position: relative;
}

.header .menu-button .menu-icon {
  display: inline-block;
  vertical-align: middle;
  position: relative;
  width: 2.5rem;
  height: 1.6rem;
  background-color: transparent;
  border: none;
}

.header .menu-button .menu-icon:hover, .header .menu-button .menu-icon:focus, .header .menu-button .menu-icon:active {
  outline: 0;
  border: 0;
}

.header .menu-button .menu-icon .line {
  display: block;
  position: absolute;
  right: 0;
  width: 100%;
  height: .2rem;
  background-color: #000000;
  border-radius: 3rem;
  transition: all 1s ease;
}

.header .menu-button .menu-icon .line:first-child {
  top: 0;
}

.header .menu-button .menu-icon .line:nth-child(2) {
  top: 50%;
}

.header .menu-button .menu-icon .line:last-child {
  top: 100%;
}

.header .main-menu {
  display: none;
}

.header .main-menu a {
  padding: 1rem 0;
}

.header .languages li {
  display: inline-block;
  vertical-align: middle;
  line-height: 1;
}

.header .languages li a {
  display: inline-block;
  color: #D9D9D9;
  font-size: 2.6rem;
  padding: 1.5rem 0;
}

.header .languages li:first-child::after {
  content: '/';
  display: inline-block;
  color: #D9D9D9;
  padding: 0 .5rem;
  font-size: 2.6rem;
}

.header .languages li.current-lang a {
  color: #ffffff;
  font-weight: 500;
}

.header .link-express .item:last-child {
  position: relative;
}

.total-count {
  position: absolute;
  width: 2.3rem;
  height: 2.3rem;
  background-color: #000000;
  border-radius: 50%;
  color: #ffffff;
  line-height: 2.3rem;
  top: -1rem;
  right: 0;
  font-size: 1rem;
}

.open-menu {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.open-menu::before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  height: 100vh;
  background-color: rgba(18, 18, 18, 0.51);
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
  z-index: 100;
}

.open-menu .menu-button {
  z-index: 3;
}

.open-menu .menu-button .menu-icon .line:first-child {
  -ms-transform: translate(-5px, 8px) rotate(45deg);
      transform: translate(-5px, 8px) rotate(45deg);
}

.open-menu .menu-button .menu-icon .line:nth-child(2) {
  display: none;
}

.open-menu .menu-button .menu-icon .line:last-child {
  -ms-transform: translate(-5px, -8px) rotate(-45deg);
      transform: translate(-5px, -8px) rotate(-45deg);
}

.open-menu .main-menu {
  display: block;
}

.open-menu .main-menu .list-menu {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  height: 100vh;
  width: 100%;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 3;
}

.open-menu .main-menu li {
  position: relative;
  overflow: hidden;
}

.open-menu .main-menu .text-link {
  font-size: 2.6rem;
  display: block;
  color: #ffffff;
  padding: 15px;
}

@media (min-width: 1024px) {
  .header {
    padding: 2.5rem 0;
    background-color: #ffffff;
    box-shadow: 0px 1px 6px rgba(0, 0, 0, 0.25);
  }
  .header__logo {
    -ms-flex: 0 0 10%;
        flex: 0 0 10%;
    max-width: 10%;
  }
  .header__left, .header__right {
    -ms-flex: 0 0 45%;
        flex: 0 0 45%;
    max-width: 45%;
  }
  .header .menu-button {
    display: none;
  }
  .header .languages li a {
    color: #D9D9D9;
    font-size: 1.4rem;
    padding: 0;
  }
  .header .languages li:first-child::after {
    content: '/';
    display: inline-block;
    color: #000000;
    padding: 0 .5rem;
    font-size: 1.4rem;
  }
  .header .languages li.current-lang a {
    color: #000000;
    font-weight: 500;
  }
  .header .main-menu {
    display: block;
    margin-left: -1.5rem;
    margin-right: -1.5rem;
  }
  .header .main-menu ul {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
  }
  .header .main-menu li:last-child {
    margin-right: 0;
  }
  .header .link-express .item {
    -ms-flex: 1;
        flex: 1;
    -ms-flex-pack: end;
        justify-content: end;
  }
}

.footer {
  background-color: #D9D9D9;
}

.footer__info li span, .footer__info li a, .footer__nav li span, .footer__nav li a {
  font-size: 1.2rem;
}

.footer__info ul a {
  display: inline-block;
  vertical-align: middle;
}

.footer__info ul .text {
  display: inline-block;
  vertical-align: middle;
  margin-right: .5rem;
}

.footer__nav .button-link {
  display: block;
  line-height: 1.2;
  padding: .3rem 0;
}

.footer__form label {
  margin-top: .8rem;
}

.footer .heading-4 {
  opacity: 0.6;
  font-size: 1.4rem;
}

.footer a {
  color: #000000;
  text-decoration: none;
}

.footer a:hover, .footer a:focus {
  color: #1075bb;
}

@media (min-width: 1024px) {
  .footer {
    background-color: #ffffff;
  }
  .footer__info li span, .footer__info li a, .footer__nav li span, .footer__nav li a {
    font-size: 1.4rem;
  }
  .footer ul a, .footer ul .button-link {
    padding: .5rem 0;
  }
}

.color-white {
  color: #ffffff;
}

.color-white-3 {
  color: #A6A6A6;
}

.color-yellow {
  color: #BAAE9C;
}

iframe {
  width: 100%;
}

a:hover, a:focus, .text-link:hover, .text-link:focus, .button-link:hover, .button-link:focus {
  color: #1075bb;
  outline: none;
}

ul {
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

ul.list-style {
  padding-left: 2.2rem;
  list-style: disc;
}

.heading {
  font-size: 3.5rem;
  color: #000000;
  line-height: 1.2;
  font-weight: 500;
}

.heading-3 {
  font-size: 2.31rem;
  font-weight: 500;
}

.heading-4 {
  font-size: 1.8rem;
  font-weight: 500;
}

.h-full {
  height: 100%;
}

.w-full {
  width: 100%;
}

.w-75 {
  max-width: 75%;
}

.w-90 {
  max-width: 90%;
}

.text-justify {
  text-align: justify;
}

.text-right {
  text-align: right;
}

.img-fluid {
  display: block;
  max-width: 100%;
  height: auto;
}

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

.overlay {
  background: linear-gradient(180deg, rgba(16, 16, 16, 0) 0%, #101010 92.02%);
}

.bg-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 3;
  background-color: #E4E4E4;
}

.roboto-flex-regular {
  font-family: "Roboto Flex", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-variation-settings: "slnt" 0, "wdth" 100, "GRAD" 0, "XOPQ" 96, "XTRA" 468, "YOPQ" 79, "YTAS" 750, "YTDE" -203, "YTFI" 738, "YTLC" 514, "YTUC" 712;
}

.thumbnail li {
  padding-right: 2rem;
}

.thumbnail li:last-child {
  padding-right: 0;
}

.thumbnail-img {
  width: 12rem;
  height: 12rem;
}

@media (min-width: 1024px) {
  .heading {
    font-size: 5.6rem;
  }
  .w-md-50 {
    max-width: 50%;
  }
  .w-md-60 {
    max-width: 60%;
  }
  .w-md-75 {
    max-width: 75%;
  }
  .w-md-90 {
    max-width: 90%;
  }
  .columns-4 .item {
    -ms-flex: 0 0 25%;
        flex: 0 0 25%;
    max-width: 25%;
  }
}

.btn {
  font-family: "Libre Franklin", sans-serif;
  font-size: 1.4rem;
  padding: .6rem 2rem;
  letter-spacing: .1rem;
  background-color: transparent;
  border: 0;
  box-shadow: none;
}

.btn:hover, .btn:focus, .btn:active {
  outline: none;
}

.btn__secondary {
  color: #ffffff;
  background-color: #313131;
}

.btn__secondary:hover, .btn__secondary:focus, .btn__secondary:active {
  color: #000000;
  border: 1px solid #313131;
}

.btn__secondary:hover .bubble, .btn__secondary:focus .bubble, .btn__secondary:active .bubble {
  background-color: #ffffff;
}

.btn__outline {
  background-color: #ffffff;
  color: #000000;
  border: 1px solid #000000;
}

.btn__outline:hover, .btn__outline:focus, .btn__outline:active {
  color: #ffffff;
  background-color: #000000;
  border: 1px solid transparent;
}

.btn__outline:hover .bubble, .btn__outline:focus .bubble, .btn__outline:active .bubble {
  background-color: #000000;
}

.btn__width--md {
  min-width: 18.7rem;
}

.btn__animation {
  position: relative;
  overflow: hidden;
}

.btn__animation span.bubble {
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-radius: 50%;
  transition: width .4s ease-in-out, height .4s ease-in-out;
  -ms-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
  z-index: 1;
}

.btn__animation span:nth-child(2) {
  position: relative;
  z-index: 3;
}

.btn__animation:hover span.bubble {
  width: 120rem;
  height: 120rem;
}

.text-link {
  display: block;
  font-family: "Libre Franklin", sans-serif;
  font-size: 1.4rem;
  color: #000000;
  font-weight: 300;
  padding: 0 1.5rem;
  background-color: transparent;
  border: 0;
  box-shadow: none;
}

.button-link {
  display: block;
  background-color: transparent;
  padding: 0;
  border: 0;
  font-size: 1.4rem;
  font-family: "Libre Franklin", sans-serif;
  font-weight: 300;
}

.is-invalid ~ .invalid-feedback,
.is-invalid ~ .invalid-tooltip,
.was-validated :invalid ~ .invalid-feedback,
.was-validated :invalid ~ .invalid-tooltip {
  display: block;
}

.invalid-feedback {
  display: none;
  position: absolute;
  z-index: 100;
  top: 0;
  right: 0;
  padding: .4rem 1.2rem;
  font-size: 1.4rem;
  font-family: "Libre Franklin", sans-serif;
  color: #fff;
  background-color: rgba(220, 53, 69, 0.9);
  border-radius: .5rem;
}

/* Chrome, Safari, Edge, Opera */
.form label,
.form input,
.form select,
.form textarea {
  font-size: 1.4rem;
  font-family: "Libre Franklin", sans-serif;
  background-color: #ffffff;
}

.form-group {
  margin-bottom: 1.5rem;
  position: relative;
}

.form-control {
  display: block;
  border-top: 0;
  border-left: 0;
  border-right: 0;
  border-bottom: 1px solid #000000;
  padding: .5rem 1rem;
  height: 4rem;
  width: 100%;
  border-radius: 0;
}

.form-control:hover, .form-control:focus {
  outline: none;
}

.form-control ::-ms-input-placeholder {
  /* Edge 12-18 */
  color: #A6A6A6;
}

.form-control :-ms-input-placeholder {
  color: #A6A6A6;
}

.form-control ::placeholder {
  color: #A6A6A6;
}

.form-select {
  height: 4rem;
  width: 100%;
  border: 1px solid #000000;
  border-radius: .5rem;
  padding: .5rem 1rem;
  appearance: none;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-size: 16px 12px;
  background-position: right 1.6rem center;
}

.form-select:hover, .form-select:focus {
  outline: none;
}

.form-select:invalid {
  opacity: 0.5;
}

.form-select option[value=""],
.form-select option:not([value]) {
  opacity: 0.5;
}

.form-select option {
  color: #000000;
}

.form-textarea {
  display: block;
  border: 1px solid #000000;
  padding: .5rem 1rem;
  height: 10rem;
  border-radius: 1.5rem;
  width: 100%;
}

.page-loader {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background-color: #ffffff;
  z-index: 1000;
  transition: opacity .3s ease;
}

.page-loader__contain {
  position: absolute;
  top: 45%;
  left: 0;
  right: 0;
  -ms-transform: translate(0, -45%);
      transform: translate(0, -45%);
  width: 25rem;
  margin: 0 auto;
}

.page-loader__inner {
  animation-name: pulsate;
  animation-duration: 1.5s;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  text-align: center;
}

.page-loader__logo {
  position: relative;
  z-index: 2;
  margin: auto;
  max-width: 100%;
  height: auto;
}

.banner-hero {
  position: relative;
}

.banner-hero .intro span {
  font-size: 1.4rem;
  font-weight: 200;
}

.banner-hero .desc {
  position: absolute;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
  z-index: 1;
  color: #ffffff;
  width: 100%;
}

.banner-hero .desc .title {
  font-size: 2.6rem;
  font-optical-sizing: auto;
  font-family: 'Roboto Flex', sans-serif;
  font-weight: 300;
  line-height: 1.3;
  text-transform: uppercase;
  letter-spacing: 1.5px;
}

.banner-hero .desc .title__404 {
  font-size: 5.2rem;
  font-optical-sizing: auto;
  font-family: 'Roboto Flex', sans-serif;
  font-weight: 300;
  line-height: 1.3;
  text-transform: uppercase;
  letter-spacing: 1.5px;
}

.banner-hero .desc .sub-title {
  font-size: 1.8rem;
  font-weight: 300;
  letter-spacing: 1.5px;
}

.banner-hero .desc span {
  font-size: 1.4rem;
}

.banner-hero .desc a {
  color: #ffffff;
}

.why-us,
.our-works {
  background-color: #2F2F2F;
  color: #ffffff;
}

.our-works__project {
  display: none;
}

.our-works__project.active {
  display: block;
}

.our-works__project .closer {
  top: .5rem;
  right: 1rem;
  padding: 1rem;
  border-radius: 50%;
  border: 0;
  background-color: #ffffff;
  opacity: 0.3;
}

.our-works__project .closer:focus, .our-works__project .closer:active, .our-works__project .closer:hover {
  opacity: 1;
  outline: none;
}

.our-gallery .desc {
  text-align: justify;
}

.our-gallery .artist {
  position: relative;
}

.our-gallery .artist-label {
  margin-right: 2rem;
}

.our-gallery .artist-select {
  padding: 1rem 3.5rem;
  border: 1px solid #000000;
  border-radius: 3rem;
}

.our-gallery .artist-select::after {
  content: '';
  display: inline-block;
  vertical-align: middle;
  width: 1.2rem;
  height: 1.2rem;
  margin-left: 1.5rem;
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pg0KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDE2LjAuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPg0KPCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIj4NCjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iQ2FwYV8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCINCgkgd2lkdGg9IjEyMy45NTlweCIgaGVpZ2h0PSIxMjMuOTU4cHgiIHZpZXdCb3g9IjAgMCAxMjMuOTU5IDEyMy45NTgiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDEyMy45NTkgMTIzLjk1ODsiDQoJIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPGc+DQoJPHBhdGggZD0iTTExNy45NzksMjguMDE3aC0xMTJjLTUuMywwLTgsNi40LTQuMiwxMC4ybDU2LDU2YzIuMywyLjMsNi4xLDIuMyw4LjQwMSwwbDU2LTU2DQoJCUMxMjUuOTc5LDM0LjQxNywxMjMuMjc5LDI4LjAxNywxMTcuOTc5LDI4LjAxN3oiLz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjwvc3ZnPg0K);
  background-repeat: no-repeat;
  background-size: contain;
}

.our-gallery .artist-list {
  display: none;
  padding: 1.2rem 0;
  border: 1px solid #000000;
  background-color: #ffffff;
  border-radius: 1rem;
  width: 26rem;
  position: absolute;
  left: 64%;
  top: 10%;
  -ms-transform: translateX(-65%);
      transform: translateX(-65%);
  z-index: 4;
}

.our-gallery .artist-list.show {
  display: block;
}

.our-gallery .artist-list .item {
  display: block;
}

.our-gallery .artist-list button {
  color: #000000;
  text-transform: uppercase;
  font-optical-sizing: auto;
  font-family: 'Roboto Flex', sans-serif;
  font-weight: 300;
  font-size: 1.6rem;
  letter-spacing: 1px;
}

.our-gallery .gallery {
  position: relative;
  z-index: 1;
}

.our-gallery .gallery .bg-overlay {
  display: none;
}

.our-gallery .gallery-group {
  display: none;
}

.our-gallery .gallery-group .closer {
  top: 0;
  right: 0;
  background-color: transparent;
  border: 0;
  box-shadow: none;
  padding: 1rem;
}

.our-gallery .gallery-group.active {
  display: block;
  position: relative;
  z-index: 3;
}

.our-gallery .gallery-group .item {
  overflow: hidden;
}

.our-gallery .gallery-group .item.carousel-slider .slick-slide {
  max-width: 50vw;
}

.our-gallery .gallery-items {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.our-gallery .gallery-items.active {
  z-index: 3;
}

.our-gallery .gallery-items.active .bg-overlay {
  display: block;
}

.our-gallery .grid-layout {
  margin: 0 -.5rem;
  position: relative;
  z-index: 2;
  height: 100%;
}

.our-gallery .grid-layout:before, .our-gallery .grid-layout:after {
  content: '';
  display: table;
}

.our-gallery .grid-layout:after {
  clear: both;
}

.our-gallery .grid-layout .grid-sizer {
  width: 25%;
}

.our-gallery .grid-layout .grid-item {
  width: 25%;
}

.our-gallery .grid-layout .grid-item__width--2 {
  width: calc(50%);
}

.our-gallery .grid-layout .grid-item__height--2 {
  height: calc(var(--item-height) * 2);
}

.our-gallery .grid-item {
  float: left;
  height: var(--item-height);
  padding: .25rem;
}

.our-gallery .grid-item .artwork {
  height: 100%;
}

.our-gallery .gallery-group .item {
  display: -ms-flexbox;
  display: flex;
}

.our-gallery .gallery-group picture {
  padding: 0 1.5rem;
}

.our-services .heading-4 {
  position: relative;
}

.our-services .heading-4:before {
  content: '';
  display: inline-block;
  vertical-align: middle;
  width: 1.8rem;
  height: 1.8rem;
  margin-right: 1rem;
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pg0KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDE2LjAuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPg0KPCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIj4NCjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iQ2FwYV8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCINCgkgd2lkdGg9IjQ1MS44NDdweCIgaGVpZ2h0PSI0NTEuODQ3cHgiIHZpZXdCb3g9IjAgMCA0NTEuODQ3IDQ1MS44NDciIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDQ1MS44NDcgNDUxLjg0NzsiDQoJIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPGc+DQoJPHBhdGggZD0iTTIyNS45MjMsMzU0LjcwNmMtOC4wOTgsMC0xNi4xOTUtMy4wOTItMjIuMzY5LTkuMjYzTDkuMjcsMTUxLjE1N2MtMTIuMzU5LTEyLjM1OS0xMi4zNTktMzIuMzk3LDAtNDQuNzUxDQoJCWMxMi4zNTQtMTIuMzU0LDMyLjM4OC0xMi4zNTQsNDQuNzQ4LDBsMTcxLjkwNSwxNzEuOTE1bDE3MS45MDYtMTcxLjkwOWMxMi4zNTktMTIuMzU0LDMyLjM5MS0xMi4zNTQsNDQuNzQ0LDANCgkJYzEyLjM2NSwxMi4zNTQsMTIuMzY1LDMyLjM5MiwwLDQ0Ljc1MUwyNDguMjkyLDM0NS40NDlDMjQyLjExNSwzNTEuNjIxLDIzNC4wMTgsMzU0LjcwNiwyMjUuOTIzLDM1NC43MDZ6Ii8+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8L3N2Zz4NCg==);
  background-repeat: no-repeat;
  background-size: contain;
  -ms-transform: rotate(-90deg);
      transform: rotate(-90deg);
}

.our-services .heading-4.active::before {
  -ms-transform: rotate(0);
      transform: rotate(0);
}

.section .line {
  height: 1px;
  margin-bottom: 1.5rem;
}

.section .line__black {
  background-color: #2F2F2F;
}

.section .line__white {
  background-color: #ffffff;
}

.section .line__left {
  width: 30%;
  margin-right: auto;
}

.section .line__right {
  width: 30%;
  margin-left: auto;
}

.section .line__center {
  width: 30%;
  margin-left: auto;
  margin-right: auto;
}

.artwork {
  position: relative;
  overflow: hidden;
}

.artwork .overlay {
  display: block;
  position: absolute;
  bottom: 0;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1;
}

.artwork__info {
  position: absolute;
  bottom: 0;
  color: #ffffff;
  z-index: 2;
}

.artwork .name {
  font-family: 'Roboto Flex', sans-serif;
  font-style: normal;
  font-weight: 600;
  font-size: 1.4rem;
  letter-spacing: 1px;
}

.list-sponsors .item {
  -ms-flex: 0 0 33.33%;
      flex: 0 0 33.33%;
  max-width: 33.33%;
  padding: 1.5rem;
}

.our-shop .carousel-slider .product-card {
  width: 19vw;
}

@media (min-width: 1024px) {
  .section .line__left {
    width: 13%;
  }
  .section .line__right {
    width: 13%;
  }
  .banner-hero .intro span {
    font-size: 2.6rem;
    font-weight: 200;
  }
  .banner-hero .desc .title {
    font-size: 9.88rem;
  }
  .banner-hero .desc .title__404 {
    font-size: 16.9rem;
  }
  .banner-hero .desc .sub-title {
    font-size: 2.6rem;
  }
  .artwork:hover .overlay, .artwork:focus .overlay {
    display: block;
    transition: all .2s ease-in;
  }
  .artwork:hover .artwork__info, .artwork:focus .artwork__info {
    -ms-transform: translate(0, 0);
        transform: translate(0, 0);
    transition: all .2s ease-in;
  }
  .artwork .overlay {
    display: none;
  }
  .artwork__info {
    position: absolute;
    bottom: 0;
    -ms-transform: translate(0, 100%);
        transform: translate(0, 100%);
    color: #ffffff;
    z-index: 2;
  }
  .our-story__slider {
    margin: 0 -1rem;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: row;
        flex-direction: row;
  }
  .our-story__slider .slide {
    -ms-flex: 1;
        flex: 1;
    padding: 0 .5rem;
  }
  .our-services .reverse,
  .our-works .reverse {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
  }
  .our-works .thumbnail {
    position: absolute;
    bottom: 0;
  }
  .our-services .heading-4::before {
    display: none;
  }
  .our-gallery {
    --item-height: 31.9rem;
  }
  .our-gallery .desc {
    text-align: center;
  }
  .our-gallery .artist-list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    border: 0;
    position: relative;
    left: 0;
    top: 0;
    padding: 0;
    width: 90%;
    -ms-transform: translateX(0);
        transform: translateX(0);
    background-color: transparent;
  }
  .our-gallery .artist-list .item {
    -ms-flex: 0 0 20%;
        flex: 0 0 20%;
    max-width: 20%;
  }
  .our-gallery .artist-list button {
    text-transform: capitalize;
  }
  .grid-item {
    padding: 0 .5rem;
  }
  .list-sponsors .item {
    -ms-flex: 0 0 25%;
        flex: 0 0 25%;
    max-width: 25%;
    padding: 3rem;
  }
}

.slick-arrow {
  width: 5rem;
  height: 5rem;
  border-radius: 50%;
  background-color: #ffffff;
  border: 1px solid #2F2F2F;
}

.slick-arrow:hover, .slick-arrow:focus {
  background-color: #1075bb;
}

.slick-arrow .ico {
  display: block;
}

.slick-arrow .ico::before {
  content: '';
  display: block;
  width: 3rem;
  height: 3rem;
  background-image: url(data:image/svg+xml;base64,PHN2ZyBpZD0iTGF5ZXJfMSIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgNTEyIDUxMiIgaGVpZ2h0PSI1MTIiIHZpZXdCb3g9IjAgMCA1MTIgNTEyIiB3aWR0aD0iNTEyIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxzd2l0Y2g+PGZvcmVpZ25PYmplY3QgaGVpZ2h0PSIxIiByZXF1aXJlZEV4dGVuc2lvbnM9Imh0dHA6Ly9ucy5hZG9iZS5jb20vQWRvYmVJbGx1c3RyYXRvci8xMC4wLyIgd2lkdGg9IjEiLz48Zz48Zz48Zz48cGF0aCBkPSJtNDM4Ljc2NSAyNjJoLTI5OC42NjZjLTMuMzE0IDAtNi0yLjY4Ny02LTZzMi42ODYtNiA2LTZoMjk4LjY2N2MzLjMxMyAwIDYgMi42ODcgNiA2cy0yLjY4NyA2LTYuMDAxIDZ6Ii8+PC9nPjxnPjxwYXRoIGQ9Im0xMDcuMzg5IDI2MmgtMzQuMTU0Yy0zLjMxMyAwLTYtMi42ODctNi02czIuNjg3LTYgNi02aDM0LjE1NGMzLjMxMyAwIDYgMi42ODcgNiA2cy0yLjY4NyA2LTYgNnoiLz48L2c+PGc+PHBhdGggZD0ibTMzOS4yMjYgMzQyLjI5Yy0xLjc1MiAwLTMuNDg4LS43NjMtNC42NzQtMi4yMzMtMi4wODEtMi41OC0xLjY3Ni02LjM1Ny45MDMtOC40MzhsOTMuNzUzLTc1LjYxOS05My43NTMtNzUuNjJjLTIuNTc5LTIuMDgxLTIuOTgzLTUuODU4LS45MDMtOC40MzggMi4wNzktMi41NzkgNS44NTYtMi45ODMgOC40MzctLjkwM2w5OS41NDMgODAuMjljMS40MTIgMS4xMzkgMi4yMzMgMi44NTYgMi4yMzMgNC42N3MtLjgyMSAzLjUzMS0yLjIzMyA0LjY3bC05OS41NDMgODAuMjljLTEuMTA5Ljg5Ni0yLjQ0MSAxLjMzMS0zLjc2MyAxLjMzMXoiLz48L2c+PC9nPjwvZz48L3N3aXRjaD48L3N2Zz4=);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.slick-arrow .ico-left {
  -ms-transform: rotate(-180deg);
      transform: rotate(-180deg);
}

.carousel-slider .slick-track {
  margin: 0 -.5rem;
}

.carousel-slider .slick-slide {
  padding: 0 .5rem;
  max-width: 65vw;
}

.dots-new li {
  margin: 0 .5rem;
}

.dots-new li.slick-active button {
  background-color: #1075bb;
  transition: all .3s ease-out;
}

.dots-new li button {
  background-color: #ffffff;
  font-size: 0;
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 100%;
  border: 0;
}

.arrows-new .dots-new {
  margin: 0 1.5rem;
  line-height: 1;
}

@media (min-width: 1024px) {
  .carousel-slider .slick-slide {
    max-width: 100%;
  }
}

.toggle-content {
  display: none;
}

.toggle-content.show {
  display: block;
  transition: all .5s ease-out;
}

[data-toggle=''].active::after {
  -ms-transform: rotate(-135deg) translateY(-50%);
      transform: rotate(-135deg) translateY(-50%);
}

@media (min-width: 1024px) {
  [data-toggle='']::before {
    display: none;
  }
  .toggle-content {
    display: block;
  }
}

.modal {
  --bs-modal-border-radius: 1rem !important;
}

.modal .modal-header {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  border-bottom: 0;
}

.modal .modal-content {
  padding: 2rem;
  max-width: 90%;
  margin: auto;
}
