@charset "UTF-8";
/* ========= [ * global ]  =========*/
/* --------------- global --------------- */
*,
* button:focus {
  outline: 0;
  margin: 0;
}

html::-webkit-scrollbar {
  height: 20px;
  width: 10px;
  background: #f1f1f1;
  border-radius: 0;
}

html::-webkit-scrollbar-thumb {
  background: #999;
  border-radius: 10px;
}

html::-webkit-scrollbar-corner {
  background: #999;
  border-radius: 10px;
}

body {
  font-family: "Inter", sans-serif;
  text-decoration: none;
  font-size: 14px;
  overflow-x: hidden;
  position: relative;
  color: #343B38;
  background-color: #EAE7DF;
}

.swiper-container {
  overflow: hidden;
}

.swiper-notification {
  display: none;
}

.form-control:focus {
  -webkit-box-shadow: none;
          box-shadow: none;
}

.navbar {
  z-index: 99;
}

h1, h2, h3 {
  font-weight: bold;
  margin: 0;
}

h4, h5, h6 {
  margin: 0;
}

.container,
.container-fluid {
  position: relative;
  z-index: 5;
}

.container, .container-lg, .container-md, .container-sm, .container-xl {
  max-width: 1330px !important;
  padding-right: 15px;
  padding-left: 15px;
}

.row:not(.gx-0):not(.gx-1):not(.gx-2):not(.gx-3):not(.gx-4):not(.gx-5):not(.gx-lg-5) {
  margin-right: -15px;
  margin-left: -15px;
}
.row:not(.gx-0):not(.gx-1):not(.gx-2):not(.gx-3):not(.gx-4):not(.gx-5):not(.gx-lg-5) > * {
  padding-right: 15px;
  padding-left: 15px;
}

.row.gx-5, .row.gx-lg-5 {
  margin-right: -30px;
  margin-left: -30px;
}
.row.gx-5 > *, .row.gx-lg-5 > * {
  padding-right: 30px;
  padding-left: 30px;
}

body a:focus {
  outline: 0;
}

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

body ul:not(.list-styled) {
  list-style-type: none;
  margin: 0;
  padding: 0;
}

.btn-default:active,
.btn-default:active:focus,
.btn-default:active:hover,
.btn-default:focus,
.btn-default:hover,
.btn-primary:not(:disabled):not(.disabled):active:focus,
.btn:not(:disabled):not(.disabled).active,
.btn:not(:disabled):not(.disabled):active {
  -webkit-appearance: none;
}

.btn:active,
.btn:active:focus,
.btn:active:hover,
.btn:focus,
.btn:hover,
.btn:not(:disabled):not(.disabled).active,
.btn:not(:disabled):not(.disabled):active {
  -webkit-transition: all 0.6s ease;
  transition: all 0.6s ease;
  outline: 0;
}

a,
span,
img {
  display: inline-block;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  color: inherit;
  text-decoration: none;
}

img {
  max-width: 100%;
  max-height: 100%;
}

p {
  font-size: 14px;
  line-height: 1.7;
  margin: 0;
}

i,
.bi {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}

.text {
  font-size: 14px;
  line-height: 1.8;
}

.small, small {
  font-size: 12px;
  display: inline-block;
}

small.text {
  font-size: 12px;
}

.section-padding {
  padding: 100px 0;
}

.df-center {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-align: center !important;
      -ms-flex-align: center !important;
          align-items: center !important;
  -webkit-box-pack: center !important;
      -ms-flex-pack: center !important;
          justify-content: center !important;
}

.dnf-center {
  display: -webkit-inline-box !important;
  display: -ms-inline-flexbox !important;
  display: inline-flex !important;
  -webkit-box-align: center !important;
      -ms-flex-align: center !important;
          align-items: center !important;
  -webkit-box-pack: center !important;
      -ms-flex-pack: center !important;
          justify-content: center !important;
}

.fm-playfair {
  font-family: "Playfair Display", serif;
}

.zoma-wordmark {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  text-decoration: none !important;
  line-height: 1;
}

.zoma-wordmark--light {
  color: #fff;
  font-size: 1.35rem;
}

.zoma-wordmark--dark {
  color: #343B38;
  font-size: clamp(1.75rem, 3vw, 2.5rem);
  display: inline-block;
}

/* Inner pages: shell home8 + smooth scroll Architecture Studio */
.zoma-inner-page {
  background-color: #EAE7DF;
  overflow-x: hidden;
}

.zoma-smooth-wrapper {
  position: fixed;
  top: 0;
  left: 88px;
  right: 0;
  bottom: 0;
  overflow: hidden;
  z-index: 1;
}

.zoma-smooth-content {
  min-height: 100%;
  background-color: #EAE7DF;
  overflow: visible;
  will-change: transform;
}

.zoma-inner-page .fixed-content .fixed-nav .social-icons a {
  border-color: #ccc;
  color: #343B38;
}

.zoma-inner-page .fixed-content .fixed-nav .social-icons a:hover {
  background-color: var(--color-orange1);
  border-color: var(--color-orange1);
  color: #fff;
}

@media screen and (max-width: 991px) {
  .zoma-smooth-wrapper {
    left: 0;
    top: 0;
  }

  .zoma-smooth-content {
    padding-top: 70px;
  }
}

/* Hero de páginas interiores (sin depender de SplitText del template) */
.zoma-page-hero {
  padding: 100px 0 60px;
}

.zoma-page-hero__eyebrow {
  margin: 0 0 16px;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #77776C;
}

.zoma-page-hero__title {
  margin: 0 0 24px;
  max-width: 16ch;
  font-size: clamp(2.75rem, 7vw, 5.25rem);
  font-weight: 500;
  line-height: 1.08;
  letter-spacing: -0.03em;
  color: #343B38;
  text-transform: none;
}

.zoma-page-hero__text {
  margin: 0;
  max-width: 34rem;
  font-size: 1.125rem;
  line-height: 1.6;
  color: #666;
}

@media screen and (max-width: 991px) {
  .zoma-page-hero {
    padding: 48px 0 36px;
  }
}

/* ----- ZOMA about / section primitives ----- */
.zoma-section-eyebrow {
  margin: 0;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #77776C;
}

.zoma-section-title {
  margin: 0;
  font-size: clamp(1.75rem, 3.5vw, 2.75rem);
  font-weight: 500;
  line-height: 1.15;
  letter-spacing: -0.02em;
  color: #343B38;
}

.zoma-body-lg {
  font-size: 1.125rem;
  line-height: 1.7;
  color: #555;
}

.zoma-about-who,
.zoma-about-focus {
  background-color: #EAE7DF;
}

.zoma-about-philosophy {
  background-color: #fff;
}

.zoma-pillar-card {
  height: 100%;
  padding: 28px 24px;
  border: 1px solid #ddd;
  background: #EAE7DF;
}

.zoma-pillar-num {
  display: inline-block;
  margin-bottom: 20px;
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #77776C;
}

.zoma-pillar-title {
  margin: 0 0 12px;
  font-size: 1.15rem;
  font-weight: 600;
  color: #343B38;
}

.zoma-pillar-text {
  font-size: 0.95rem;
  line-height: 1.6;
  color: #666;
}

.zoma-about-focus {
  border-top: 1px solid #ddd;
}

/* ----- ZOMA service detail pages ----- */
.zoma-service-intro,
.zoma-service-types,
.zoma-service-audience,
.zoma-service-cta {
  background-color: #EAE7DF;
}

.zoma-service-offerings,
.zoma-service-lines,
.zoma-service-benefits {
  background-color: #fff;
}

.zoma-offering-card,
.zoma-line-card,
.zoma-audience-card,
.zoma-benefit-card {
  height: 100%;
  padding: 28px 24px;
  border: 1px solid #ddd;
  background: #EAE7DF;
}

.zoma-service-offerings .zoma-offering-card,
.zoma-service-lines .zoma-line-card,
.zoma-service-benefits .zoma-benefit-card {
  background: #EAE7DF;
}

.zoma-service-audience .zoma-audience-card {
  background: #fff;
}

.zoma-type-list {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.zoma-type-item {
  padding: 12px 18px;
  border: 1px solid #ddd;
  background: #fff;
  font-size: 0.95rem;
  font-weight: 500;
  color: #343B38;
}

.zoma-line-list {
  margin: 0;
  padding: 0 0 0 1.1rem;
  color: #555;
  font-size: 0.92rem;
  line-height: 1.7;
}

.zoma-line-list li + li {
  margin-top: 4px;
}

.zoma-service-cta {
  border-top: 1px solid #ddd;
}

.service-detail-pg .zoma-page-hero__title {
  max-width: 22ch;
}

/* BIM page: ligeramente más técnico / grafito */
.service-detail-pg--bim .zoma-page-hero {
  background: linear-gradient(180deg, #EAE7DF 0%, #d9d5cb 100%);
}

.service-detail-pg--bim .zoma-page-hero__title {
  max-width: 18ch;
}

.service-detail-pg--bim .zoma-service-intro,
.service-detail-pg--bim .zoma-service-audience,
.service-detail-pg--bim .zoma-service-cta {
  background-color: #d9d5cb;
}

.service-detail-pg--bim .zoma-line-card,
.service-detail-pg--bim .zoma-benefit-card {
  background: #EAE7DF;
  border-color: #c5bbAA;
}

.service-detail-pg--bim .zoma-audience-card {
  background: #EAE7DF;
  border-color: #c5bbAA;
}

/* ----- ZOMA portfolio / project detail ----- */
.zoma-project-grid {
  background-color: #fff;
}

.zoma-project-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.zoma-filter-btn {
  appearance: none;
  border: 1px solid #ddd;
  background: #EAE7DF;
  color: #343B38;
  padding: 10px 18px;
  font-size: 0.85rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  cursor: pointer;
  transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.zoma-filter-btn:hover,
.zoma-filter-btn.is-active {
  background: #343B38;
  border-color: #343B38;
  color: #fff;
}

.zoma-project-card {
  height: 100%;
  display: flex;
  flex-direction: column;
}

.zoma-project-card__media {
  display: block;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  background: #EAE7DF;
  margin-bottom: 20px;
}

.zoma-project-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.45s ease;
}

.zoma-project-card:hover .zoma-project-card__media img {
  transform: scale(1.04);
}

.zoma-project-card__meta {
  margin: 0;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #77776C;
}

.zoma-project-card__title {
  margin: 0 0 12px;
  font-size: 1.35rem;
  font-weight: 600;
  line-height: 1.25;
}

.zoma-project-card__title a {
  color: #343B38;
  text-decoration: none;
}

.zoma-project-card__title a:hover {
  color: #B56F50;
}

.zoma-project-card__text {
  font-size: 0.95rem;
  line-height: 1.6;
  color: #666;
}

.zoma-project-note {
  font-size: 0.85rem;
  line-height: 1.6;
  color: #77776C;
  max-width: 42rem;
}

.zoma-back-link {
  color: inherit;
  text-decoration: none;
}

.zoma-back-link:hover {
  color: #B56F50;
}

.zoma-project-overview {
  background-color: #EAE7DF;
}

.zoma-project-meta {
  padding: 28px 24px;
  border: 1px solid #ddd;
  background: #fff;
}

.zoma-project-meta__row + .zoma-project-meta__row {
  margin-top: 22px;
  padding-top: 22px;
  border-top: 1px solid #eee;
}

.zoma-project-meta__label {
  display: block;
  margin-bottom: 8px;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #77776C;
}

.zoma-project-meta__value {
  font-size: 1rem;
  line-height: 1.5;
  color: #343B38;
}

.zoma-project-meta__list {
  margin: 0;
  padding: 0 0 0 1.1rem;
  color: #343B38;
  font-size: 0.95rem;
  line-height: 1.7;
}

.zoma-project-gallery {
  background-color: #fff;
}

.zoma-project-gallery__item {
  margin: 0;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background: #EAE7DF;
}

.zoma-project-gallery__item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.project-detail-pg .zoma-page-hero__title {
  max-width: 18ch;
}

/* ----- ZOMA contact / WhatsApp / footer ----- */
.zoma-direct-contact {
  background-color: #EAE7DF;
}

.zoma-contact-card {
  height: 100%;
  padding: 28px 24px;
  border: 1px solid #ddd;
  background: #fff;
}

.zoma-contact-link {
  color: #343B38;
  font-size: 0.95rem;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.zoma-contact-link:hover {
  color: #B56F50;
}

.zoma-contact-socials {
  display: flex;
  flex-direction: column;
  gap: 8px;
  font-size: 0.95rem;
  color: #666;
}

.zoma-contact-socials a {
  color: #343B38;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.zoma-contact-form {
  background-color: #fff;
}

.zoma-contact-success {
  max-width: 40rem;
}

.zoma-form__group {
  margin-bottom: 22px;
}

.zoma-form__group label {
  display: block;
  margin-bottom: 8px;
  font-size: 0.8rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #343B38;
}

.zoma-form__group label span {
  color: #B56F50;
}

.zoma-form__group label .is-optional {
  color: #999;
  font-weight: 500;
  text-transform: none;
  letter-spacing: 0;
}

.zoma-form__group input,
.zoma-form__group select,
.zoma-form__group textarea {
  width: 100%;
  border: 1px solid #ddd;
  background: #EAE7DF;
  color: #343B38;
  padding: 14px 16px;
  font-size: 1rem;
  line-height: 1.4;
  outline: none;
  transition: border-color 0.2s ease, background 0.2s ease;
}

.zoma-form__group input:focus,
.zoma-form__group select:focus,
.zoma-form__group textarea:focus {
  border-color: #77776C;
  background: #fff;
}

.zoma-form__error {
  margin: 8px 0 0;
  font-size: 0.8rem;
  color: #B56F50;
}

.zoma-whatsapp-fab {
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 1200;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 52px;
  padding: 0 18px 0 14px;
  border-radius: 999px;
  background: #25D366;
  color: #fff !important;
  text-decoration: none !important;
  box-shadow: 0 10px 30px rgba(52, 59, 56, 0.22);
  transition: transform 0.2s ease, opacity 0.2s ease;
}

.zoma-whatsapp-fab i {
  font-size: 1.45rem;
  line-height: 1;
}

.zoma-whatsapp-fab__label {
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.zoma-whatsapp-fab:hover {
  transform: translateY(-2px);
  color: #fff !important;
}

.zoma-whatsapp-fab.is-pending {
  background: #77776C;
  cursor: not-allowed;
  opacity: 0.85;
}

@media screen and (max-width: 991px) {
  .zoma-whatsapp-fab {
    right: 16px;
    bottom: 16px;
    padding: 0;
    width: 52px;
    height: 52px;
    justify-content: center;
  }

  .zoma-whatsapp-fab__label {
    display: none;
  }
}

.zoma-footer {
  background: #EAE7DF;
}

.zoma-footer__brand {
  margin: 0;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 1.5rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #343B38;
}

.zoma-footer__text {
  font-size: 0.95rem;
  line-height: 1.7;
  color: #555;
}

.zoma-footer__heading {
  margin: 0 0 18px;
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #343B38;
}

.zoma-footer__links {
  list-style: none;
  margin: 0;
  padding: 0;
}

.zoma-footer__links li + li {
  margin-top: 10px;
}

.zoma-footer__links a,
.zoma-footer__links span {
  color: #555;
  font-size: 0.95rem;
  text-decoration: none;
}

.zoma-footer__links a:hover {
  color: #B56F50;
}

.zoma-footer__socials {
  display: flex;
  gap: 12px;
}

.zoma-footer__socials a {
  width: 40px;
  height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #ccc;
  border-radius: 50%;
  color: #343B38;
}

.zoma-footer__socials a:hover {
  background: var(--color-orange1);
  border-color: var(--color-orange1);
  color: #fff;
}

/* Preloader
-----------------------------------------------------------------*/
.loader-wrap {
  position: fixed;
  z-index: 10;
  height: 100vh;
  width: 100%;
  left: 0;
  top: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  background: transparent;
  z-index: 99999999999999;
}

.loader-wrap svg {
  position: absolute;
  top: 0;
  width: 100vw;
  height: 110vh;
  fill: #000;
}

.loader-wrap .loader-wrap-heading .load-text {
  font-size: 20px;
  font-weight: 200;
  letter-spacing: 15px;
  text-transform: uppercase;
  z-index: 20;
  color: #fff;
}

.load-text span {
  -webkit-animation: loading 1s infinite alternate;
  animation: loading 1s infinite alternate;
}

.load-text span:nth-child(1) {
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
}

.load-text span:nth-child(2) {
  -webkit-animation-delay: 0.1s;
  animation-delay: 0.1s;
}

.load-text span:nth-child(3) {
  -webkit-animation-delay: 0.2s;
  animation-delay: 0.2s;
}

.load-text span:nth-child(4) {
  -webkit-animation-delay: 0.3s;
  animation-delay: 0.3s;
}

.load-text span:nth-child(5) {
  -webkit-animation-delay: 0.4s;
  animation-delay: 0.4s;
}

.load-text span:nth-child(6) {
  -webkit-animation-delay: 0.5s;
  animation-delay: 0.5s;
}

.load-text span:nth-child(7) {
  -webkit-animation-delay: 0.6s;
  animation-delay: 0.6s;
}

@-webkit-keyframes loading {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes loading {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
/* ====================== [ Start mouse-cursor ] ====================== */
.swiper-wrapper.curs-scroll {
  cursor: none;
}

.mouse-cursor {
  position: fixed;
  left: 0;
  top: 0;
  pointer-events: none;
  border-radius: 50%;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  visibility: hidden;
}

.cursor-inner {
  margin-left: -2px;
  margin-top: -2px;
  width: 5px;
  height: 5px;
  z-index: 10000001;
  background-color: #0379a455;
  -webkit-transition: width 0.3s ease-in-out, height 0.3s ease-in-out, margin 0.3s ease-in-out, opacity 0.3s ease-in-out;
  transition: width 0.3s ease-in-out, height 0.3s ease-in-out, margin 0.3s ease-in-out, opacity 0.3s ease-in-out;
  opacity: 1;
}

.cursor-inner.cursor-hover {
  opacity: 1;
}

.cursor-outer {
  margin-left: -17px;
  margin-top: -17px;
  width: 34px;
  height: 34px;
  border: 1px solid #0379a455;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  opacity: 0.5;
  z-index: 10000000;
  -webkit-transition: width 0.3s ease-in-out, height 0.3s ease-in-out, margin 0.3s ease-in-out, background-color 0.3s, opacity 0.3s;
  transition: width 0.3s ease-in-out, height 0.3s ease-in-out, margin 0.3s ease-in-out, background-color 0.3s, opacity 0.3s;
  opacity: 1;
}

.cursor-outer.cursor-hover {
  opacity: 1;
  margin-left: -25px;
  margin-top: -25px;
  width: 50px;
  height: 50px;
  background-color: #0379a455 !important;
  border: 1px solid #fff9;
  opacity: 0.3 !important;
}

.cursor-outer.cursor-scroll {
  margin-left: -35px;
  margin-top: -35px;
  width: 70px;
  height: 70px;
  border-color: transparent;
  background-color: #fff;
  opacity: 1;
}

/* ====================== [ End mouse-cursor ] ====================== */
/* --------------- dropdown --------------- */
.dropdown-toggle::after {
  position: relative;
  top: 3px;
  opacity: 0.8;
  content: "";
  display: inline-block;
  font-family: "Font Awesome 5 Pro";
  border: 0;
  line-height: 1;
  font-size: 0.8em;
}

.dropdown-menu {
  min-width: 200px;
  padding: 0;
  border-radius: 0;
  border: 0;
  -webkit-box-shadow: 0 0 20px #0001;
          box-shadow: 0 0 20px #0001;
  top: 100%;
}
.dropdown-menu .dropdown-item {
  padding: 10px 20px;
  font-size: 14px;
  border-bottom: 1px solid #9992;
}

/* --------------- forms --------------- */
select:focus,
input:focus {
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
}

/* --------------- to_top button --------------- */
.to_top {
  position: fixed;
  z-index: 9999;
  bottom: 3vw;
  right: -80px;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  color: #999;
  border: 1px solid #999;
  font-size: 11px;
  text-align: center;
  padding: 7px;
  line-height: 1;
  opacity: 0;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
  font-size: 18px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.to_top small {
  display: block;
  text-transform: uppercase;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
  font-size: 8px;
}
.to_top i {
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.to_top.show {
  right: 3vw;
  opacity: 1;
}

/**
 * ----------------------------------------
 * animation rotate-center
 * ----------------------------------------
*/
.rotate-center {
  -webkit-animation: rotate-center 100s linear infinite both;
  animation: rotate-center 100s linear infinite both;
}
.rotate-center.reverse {
  -webkit-animation: rotate-center 100s linear infinite both reverse;
  animation: rotate-center 100s linear infinite both reverse;
}

@-webkit-keyframes rotate-center {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes rotate-center {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
/**
 * ----------------------------------------
 * animation slide_up_down
 * ----------------------------------------
*/
.slide-up-down {
  -webkit-animation: slide_up_down 1.7s ease-in-out infinite alternate both;
  animation: slide_up_down 1.7s ease-in-out infinite alternate both;
}

/* ------- */
@-webkit-keyframes slide_up_down {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  100% {
    -webkit-transform: translateY(-20px);
    transform: translateY(-20px);
  }
}
@keyframes slide_up_down {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  100% {
    -webkit-transform: translateY(-20px);
    transform: translateY(-20px);
  }
}
.left_to_right_apperance {
  -webkit-transform: scale(1.2);
          transform: scale(1.2);
  -webkit-transition: all 0.8s ease-in-out;
  transition: all 0.8s ease-in-out;
  -webkit-transition-delay: 0.4s;
          transition-delay: 0.4s;
  -webkit-clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
          clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
}
.left_to_right_apperance.no_scale {
  -webkit-transform: scale(1);
          transform: scale(1);
}
.left_to_right_apperance.animated {
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
          clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
}

.right_to_left_apperance {
  -webkit-transform: scale(1.2);
          transform: scale(1.2);
  -webkit-transition: all 0.8s ease-in-out;
  transition: all 0.8s ease-in-out;
  -webkit-transition-delay: 0.4s;
          transition-delay: 0.4s;
  -webkit-clip-path: polygon(99% 0, 100% 0, 100% 100%, 100% 100%);
          clip-path: polygon(99% 0, 100% 0, 100% 100%, 100% 100%);
}
.right_to_left_apperance.no_scale {
  -webkit-transform: scale(1);
          transform: scale(1);
}
.right_to_left_apperance.animated {
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
          clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
}

/* ========= [ * helper ]  =========*/
/* --------------- helper classes --------------- */
/* --------------- radius classes --------------- */
.radius-1 {
  border-radius: 3px !important;
}

.radius-2 {
  border-radius: 5px !important;
}

.radius-3 {
  border-radius: 8px !important;
}

.radius-4 {
  border-radius: 10px !important;
}

.radius-5 {
  border-radius: 12px !important;
}

.radius-6 {
  border-radius: 15px !important;
}

.radius-7 {
  border-radius: 20px !important;
}

.radius-8 {
  border-radius: 25px !important;
}

.radius-9 {
  border-radius: 30px !important;
}

.radius-10 {
  border-radius: 50px !important;
}

/* --------------- margin classes --------------- */
.mt-10 {
  margin-top: 10px !important;
}

.mt-15 {
  margin-top: 15px !important;
}

.mt-20 {
  margin-top: 20px !important;
}

.mt-30 {
  margin-top: 30px !important;
}

.mt-40 {
  margin-top: 40px !important;
}

.mt-50 {
  margin-top: 50px !important;
}

.mt-60 {
  margin-top: 60px !important;
}

.mt-70 {
  margin-top: 70px !important;
}

.mt-80 {
  margin-top: 80px !important;
}

.mt-90 {
  margin-top: 90px !important;
}

.mt-100 {
  margin-top: 100px !important;
}

.mt-120 {
  margin-top: 120px !important;
}

.mt-150 {
  margin-top: 150px !important;
}

.mt-200 {
  margin-top: 200px !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.ms-10 {
  -webkit-margin-start: 10px !important;
          margin-inline-start: 10px !important;
}

.ms-15 {
  -webkit-margin-start: 15px !important;
          margin-inline-start: 15px !important;
}

.ms-20 {
  -webkit-margin-start: 20px !important;
          margin-inline-start: 20px !important;
}

.ms-30 {
  -webkit-margin-start: 30px !important;
          margin-inline-start: 30px !important;
}

.ms-40 {
  -webkit-margin-start: 40px !important;
          margin-inline-start: 40px !important;
}

.ms-50 {
  -webkit-margin-start: 50px !important;
          margin-inline-start: 50px !important;
}

.ms-60 {
  -webkit-margin-start: 60px !important;
          margin-inline-start: 60px !important;
}

.ms-70 {
  -webkit-margin-start: 70px !important;
          margin-inline-start: 70px !important;
}

.ms-80 {
  -webkit-margin-start: 80px !important;
          margin-inline-start: 80px !important;
}

.ms-90 {
  -webkit-margin-start: 90px !important;
          margin-inline-start: 90px !important;
}

.ms-100 {
  -webkit-margin-start: 100px !important;
          margin-inline-start: 100px !important;
}

.ms-120 {
  -webkit-margin-start: 120px !important;
          margin-inline-start: 120px !important;
}

.ms-150 {
  -webkit-margin-start: 150px !important;
          margin-inline-start: 150px !important;
}

.ms-200 {
  -webkit-margin-start: 200px !important;
          margin-inline-start: 200px !important;
}

.me-10 {
  -webkit-margin-end: 10px !important;
          margin-inline-end: 10px !important;
}

.me-15 {
  -webkit-margin-end: 15px !important;
          margin-inline-end: 15px !important;
}

.me-20 {
  -webkit-margin-end: 20px !important;
          margin-inline-end: 20px !important;
}

.me-30 {
  -webkit-margin-end: 30px !important;
          margin-inline-end: 30px !important;
}

.me-40 {
  -webkit-margin-end: 40px !important;
          margin-inline-end: 40px !important;
}

.me-50 {
  -webkit-margin-end: 50px !important;
          margin-inline-end: 50px !important;
}

.me-60 {
  -webkit-margin-end: 60px !important;
          margin-inline-end: 60px !important;
}

.me-70 {
  -webkit-margin-end: 70px !important;
          margin-inline-end: 70px !important;
}

.me-80 {
  -webkit-margin-end: 80px !important;
          margin-inline-end: 80px !important;
}

.me-90 {
  -webkit-margin-end: 90px !important;
          margin-inline-end: 90px !important;
}

.me-100 {
  -webkit-margin-end: 100px !important;
          margin-inline-end: 100px !important;
}

.me-120 {
  -webkit-margin-end: 120px !important;
          margin-inline-end: 120px !important;
}

.me-150 {
  -webkit-margin-end: 150px !important;
          margin-inline-end: 150px !important;
}

.me-200 {
  -webkit-margin-end: 200px !important;
          margin-inline-end: 200px !important;
}

/* --------------- padding classes --------------- */
.p-10 {
  padding: 10px !important;
}

.p-15 {
  padding: 15px !important;
}

.p-20 {
  padding: 20px !important;
}

.p-30 {
  padding: 30px !important;
}

.p-40 {
  padding: 40px !important;
}

.p-50 {
  padding: 50px !important;
}

.p-60 {
  padding: 60px !important;
}

.p-70 {
  padding: 70px !important;
}

.p-80 {
  padding: 80px !important;
}

.p-90 {
  padding: 90px !important;
}

.p-100 {
  padding: 100px !important;
}

.p-120 {
  padding: 120px !important;
}

.p-150 {
  padding: 150px !important;
}

.p-200 {
  padding: 200px !important;
}

.ps-10 {
  -webkit-padding-start: 10px !important;
          padding-inline-start: 10px !important;
}

.ps-15 {
  -webkit-padding-start: 15px !important;
          padding-inline-start: 15px !important;
}

.ps-20 {
  -webkit-padding-start: 20px !important;
          padding-inline-start: 20px !important;
}

.ps-30 {
  -webkit-padding-start: 30px !important;
          padding-inline-start: 30px !important;
}

.ps-40 {
  -webkit-padding-start: 40px !important;
          padding-inline-start: 40px !important;
}

.ps-50 {
  -webkit-padding-start: 50px !important;
          padding-inline-start: 50px !important;
}

.ps-60 {
  -webkit-padding-start: 60px !important;
          padding-inline-start: 60px !important;
}

.ps-70 {
  -webkit-padding-start: 70px !important;
          padding-inline-start: 70px !important;
}

.ps-80 {
  -webkit-padding-start: 80px !important;
          padding-inline-start: 80px !important;
}

.ps-90 {
  -webkit-padding-start: 90px !important;
          padding-inline-start: 90px !important;
}

.ps-100 {
  -webkit-padding-start: 100px !important;
          padding-inline-start: 100px !important;
}

.ps-120 {
  -webkit-padding-start: 120px !important;
          padding-inline-start: 120px !important;
}

.ps-150 {
  -webkit-padding-start: 150px !important;
          padding-inline-start: 150px !important;
}

.ps-200 {
  -webkit-padding-start: 200px !important;
          padding-inline-start: 200px !important;
}

.pe-10 {
  -webkit-padding-end: 10px !important;
          padding-inline-end: 10px !important;
}

.pe-15 {
  -webkit-padding-end: 15px !important;
          padding-inline-end: 15px !important;
}

.pe-20 {
  -webkit-padding-end: 20px !important;
          padding-inline-end: 20px !important;
}

.pe-30 {
  -webkit-padding-end: 30px !important;
          padding-inline-end: 30px !important;
}

.pe-40 {
  -webkit-padding-end: 40px !important;
          padding-inline-end: 40px !important;
}

.pe-50 {
  -webkit-padding-end: 50px !important;
          padding-inline-end: 50px !important;
}

.pe-60 {
  -webkit-padding-end: 60px !important;
          padding-inline-end: 60px !important;
}

.pe-70 {
  -webkit-padding-end: 70px !important;
          padding-inline-end: 70px !important;
}

.pe-80 {
  -webkit-padding-end: 80px !important;
          padding-inline-end: 80px !important;
}

.pe-90 {
  -webkit-padding-end: 90px !important;
          padding-inline-end: 90px !important;
}

.pe-100 {
  -webkit-padding-end: 100px !important;
          padding-inline-end: 100px !important;
}

.pe-120 {
  -webkit-padding-end: 120px !important;
          padding-inline-end: 120px !important;
}

.pe-150 {
  -webkit-padding-end: 150px !important;
          padding-inline-end: 150px !important;
}

.pe-200 {
  -webkit-padding-end: 200px !important;
          padding-inline-end: 200px !important;
}

.pt-10 {
  padding-top: 10px !important;
}

.pt-15 {
  padding-top: 15px !important;
}

.pt-20 {
  padding-top: 20px !important;
}

.pt-30 {
  padding-top: 30px !important;
}

.pt-40 {
  padding-top: 40px !important;
}

.pt-50 {
  padding-top: 50px !important;
}

.pt-60 {
  padding-top: 60px !important;
}

.pt-70 {
  padding-top: 70px !important;
}

.pt-80 {
  padding-top: 80px !important;
}

.pt-90 {
  padding-top: 90px !important;
}

.pt-100 {
  padding-top: 100px !important;
}

.pt-120 {
  padding-top: 120px !important;
}

.pt-150 {
  padding-top: 150px !important;
}

.pt-200 {
  padding-top: 200px !important;
}

.pb-10 {
  padding-bottom: 10px !important;
}

.pb-15 {
  padding-bottom: 15px !important;
}

.pb-20 {
  padding-bottom: 20px !important;
}

.pb-30 {
  padding-bottom: 30px !important;
}

.pb-40 {
  padding-bottom: 40px !important;
}

.pb-50 {
  padding-bottom: 50px !important;
}

.pb-60 {
  padding-bottom: 60px !important;
}

.pb-70 {
  padding-bottom: 70px !important;
}

.pb-80 {
  padding-bottom: 80px !important;
}

.pb-90 {
  padding-bottom: 90px !important;
}

.pb-100 {
  padding-bottom: 100px !important;
}

.pb-120 {
  padding-bottom: 120px !important;
}

.pb-150 {
  padding-bottom: 150px !important;
}

.pb-200 {
  padding-bottom: 200px !important;
}

/* --------------- opacity classes --------------- */
.op-1 {
  opacity: 0.1;
}

.op-2 {
  opacity: 0.2;
}

.op-3 {
  opacity: 0.3;
}

.op-4 {
  opacity: 0.4;
}

.op-5 {
  opacity: 0.5;
}

.op-6 {
  opacity: 0.6;
}

.op-7 {
  opacity: 0.7;
}

.op-8 {
  opacity: 0.8;
}

.op-9 {
  opacity: 0.9;
}

.op-10 {
  opacity: 1;
}

/* --------------- lineHeight classes --------------- */
.lh-1 {
  line-height: 1 !important;
}

.lh-2 {
  line-height: 1.2 !important;
}

.lh-3 {
  line-height: 1.4 !important;
}

.lh-4 {
  line-height: 1.6 !important;
}

.lh-5 {
  line-height: 1.8 !important;
}

.lh-6 {
  line-height: 2 !important;
}

.lh-7 {
  line-height: 2.5 !important;
}

.lh-8 {
  line-height: 3 !important;
}

/* --------------- border color classes --------------- */
.brd-light {
  border-color: #fff4 !important;
}

.brd-gray {
  border-color: #d9d9d9 !important;
}

.brd-gray2 {
  border-color: #999 !important;
}

/* ---------------  color classes --------------- */
.color-000 {
  color: #000 !important;
}

.color-111 {
  color: #111 !important;
}

.color-222 {
  color: #222 !important;
}

.color-333 {
  color: #333 !important;
}

.color-444 {
  color: #444 !important;
}

.color-555 {
  color: #555 !important;
}

.color-666 {
  color: #666 !important;
}

.color-777 {
  color: #777 !important;
}

.color-888 {
  color: #888 !important;
}

.color-999 {
  color: #999 !important;
}

.color-ccc {
  color: #cccccc !important;
}

/* ---------------  bg classes --------------- */
.bg-000 {
  background-color: #000 !important;
}

.bg-111 {
  background-color: #111 !important;
}

.bg-222 {
  background-color: #222 !important;
}

.bg-333 {
  background-color: #333 !important;
}

.bg-444 {
  background-color: #444 !important;
}

.bg-555 {
  background-color: #555 !important;
}

.bg-666 {
  background-color: #666 !important;
}

.bg-777 {
  background-color: #777 !important;
}

.bg-888 {
  background-color: #888 !important;
}

.bg-999 {
  background-color: #999 !important;
}

.bg-ccc {
  background-color: #cccccc !important;
}

.bg-black {
  background-color: #000 !important;
}

.bg-dark1 {
  background-color: #2e2e31 !important;
}

/* --------------- icons size --------------- */
.icon-3 {
  width: 3px;
  height: 3px;
}

.icon-6 {
  width: 6px;
  height: 6px;
}

.icon-8 {
  width: 8px;
  height: 8px;
}

.icon-10 {
  width: 10px;
  height: 10px;
}

.icon-15 {
  width: 15px;
  height: 15px;
}

.icon-20 {
  width: 20px;
  height: 20px;
}

.icon-25 {
  width: 25px;
  height: 25px;
}

.icon-30 {
  width: 30px;
  height: 30px;
}

.icon-35 {
  width: 35px;
  height: 35px;
}

.icon-40 {
  width: 40px;
  height: 40px;
}

.icon-45 {
  width: 45px;
  height: 45px;
}

.icon-50 {
  width: 50px;
  height: 50px;
}

.icon-55 {
  width: 55px;
  height: 55px;
}

.icon-60 {
  width: 60px;
  height: 60px;
}

.icon-65 {
  width: 65px;
  height: 65px;
}

.icon-70 {
  width: 70px;
  height: 70px;
}

.icon-75 {
  width: 75px;
  height: 75px;
}

.icon-80 {
  width: 80px;
  height: 80px;
}

.icon-85 {
  width: 85px;
  height: 85px;
}

.icon-90 {
  width: 90px;
  height: 90px;
}

.icon-95 {
  width: 95px;
  height: 95px;
}

.icon-100 {
  width: 100px;
  height: 100px;
}

.icon-125 {
  width: 125px;
  height: 125px;
}

.icon-150 {
  width: 150px;
  height: 150px;
}

.icon-175 {
  width: 175px;
  height: 175px;
}

.icon-200 {
  width: 200px;
  height: 200px;
}

/* --------------- img classes --------------- */
.img-cover {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: inherit;
}

.img-contain {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  display: inherit;
}

.imgrotate-scale-hover {
  overflow: hidden;
}
.imgrotate-scale-hover img {
  -webkit-transition: all 2s ease;
  transition: all 2s ease;
}
.imgrotate-scale-hover:hover img {
  -webkit-transform: rotate(-10deg) scale(1.2);
          transform: rotate(-10deg) scale(1.2);
}

/* --------------- height classes --------------- */
.th-10 {
  height: 10px !important;
}

.th-20 {
  height: 20px !important;
}

.th-30 {
  height: 30px !important;
}

.th-40 {
  height: 40px !important;
}

.th-50 {
  height: 50px !important;
}

.th-60 {
  height: 60px !important;
}

.th-70 {
  height: 70px !important;
}

.th-80 {
  height: 80px !important;
}

.th-90 {
  height: 90px !important;
}

.th-100 {
  height: 100px !important;
}

.th-120 {
  height: 120px !important;
}

.th-140 {
  height: 140px !important;
}

.th-160 {
  height: 160px !important;
}

.th-180 {
  height: 180px !important;
}

.th-200 {
  height: 200px !important;
}

.th-230 {
  height: 230px !important;
}

.th-250 {
  height: 250px !important;
}

.th-280 {
  height: 280px !important;
}

.th-300 {
  height: 300px !important;
}

.th-330 {
  height: 330px !important;
}

.th-350 {
  height: 350px !important;
}

.th-380 {
  height: 380px !important;
}

.th-400 {
  height: 400px !important;
}

.th-425 {
  height: 425px !important;
}

.th-450 {
  height: 450px !important;
}

.th-475 {
  height: 475px !important;
}

.th-500 {
  height: 500px !important;
}

.th-525 {
  height: 525px !important;
}

.th-550 {
  height: 550px !important;
}

.th-575 {
  height: 575px !important;
}

.th-600 {
  height: 600px !important;
}

.th-650 {
  height: 650px !important;
}

.th-700 {
  height: 700px !important;
}

.th-750 {
  height: 750px !important;
}

.th-800 {
  height: 800px !important;
}

.th-900 {
  height: 900px !important;
}

.th-1000 {
  height: 1000px !important;
}

/* --------------- letter spacing classes --------------- */
.ltspc-0 {
  letter-spacing: 0 !important;
}

.ltspc-1 {
  letter-spacing: 1px !important;
}

.ltspc-2 {
  letter-spacing: 2px !important;
}

.ltspc-3 {
  letter-spacing: 3px !important;
}

.ltspc-4 {
  letter-spacing: 4px !important;
}

.ltspc-5 {
  letter-spacing: 5px !important;
}

.ltspc-8 {
  letter-spacing: 8px !important;
}

.ltspc-10 {
  letter-spacing: 10px !important;
}

.ltspc-12 {
  letter-spacing: 12px !important;
}

.ltspc-15 {
  letter-spacing: 15px !important;
}

.ltspc-17 {
  letter-spacing: 17px !important;
}

.ltspc-20 {
  letter-spacing: 20px !important;
}

.ltspc--1 {
  letter-spacing: -1px !important;
}

.ltspc--2 {
  letter-spacing: -2px !important;
}

.ltspc--3 {
  letter-spacing: -3px !important;
}

.fsz-10 {
  font-size: 10px !important;
}

.fsz-11 {
  font-size: 11px !important;
}

.fsz-12 {
  font-size: 12px !important;
}

.fsz-13 {
  font-size: 13px !important;
}

.fsz-14 {
  font-size: 14px !important;
}

.fsz-15 {
  font-size: 15px !important;
}

.fsz-16 {
  font-size: 16px !important;
}

.fsz-17 {
  font-size: 17px !important;
}

.fsz-18 {
  font-size: 18px !important;
}

.fsz-19 {
  font-size: 19px !important;
}

.fsz-20 {
  font-size: 20px !important;
}

.fsz-21 {
  font-size: 21px !important;
}

.fsz-22 {
  font-size: 22px !important;
}

.fsz-23 {
  font-size: 23px !important;
}

.fsz-24 {
  font-size: 24px !important;
}

.fsz-25 {
  font-size: 25px !important;
}

.fsz-26 {
  font-size: 26px !important;
}

.fsz-27 {
  font-size: 27px !important;
}

.fsz-28 {
  font-size: 28px !important;
}

.fsz-29 {
  font-size: 29px !important;
}

.fsz-30 {
  font-size: 30px !important;
}

.fsz-35 {
  font-size: 35px !important;
}

.fsz-40 {
  font-size: 40px !important;
}

.fsz-45 {
  font-size: 45px !important;
}

.fsz-50 {
  font-size: 50px !important;
}

.fsz-55 {
  font-size: 55px !important;
}

.fsz-60 {
  font-size: 60px !important;
}

.fsz-65 {
  font-size: 65px !important;
}

.fsz-70 {
  font-size: 70px !important;
}

.fsz-75 {
  font-size: 75px !important;
}

.fsz-80 {
  font-size: 80px !important;
}

.fsz-85 {
  font-size: 85px !important;
}

.fsz-90 {
  font-size: 90px !important;
}

.fsz-95 {
  font-size: 95px !important;
}

.fsz-100 {
  font-size: 100px !important;
}

.fw-100 {
  font-weight: 100 !important;
}

.fw-200 {
  font-weight: 200 !important;
}

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

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

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

.fw-600 {
  font-weight: 600 !important;
}

.fw-700 {
  font-weight: 700 !important;
}

.fw-800 {
  font-weight: 800 !important;
}

.fw-900 {
  font-weight: 900 !important;
}

.znd1 {
  z-index: 1;
}

.znd2 {
  z-index: 2;
}

.znd3 {
  z-index: 3;
}

.znd4 {
  z-index: 4;
}

.znd5 {
  z-index: 5;
}

.znd6 {
  z-index: 6;
}

.znd7 {
  z-index: 7;
}

.znd8 {
  z-index: 8;
}

.znd9 {
  z-index: 9;
}

.znd10 {
  z-index: 10;
}

.znd25 {
  z-index: 25;
}

.znd50 {
  z-index: 50;
}

.znd75 {
  z-index: 75;
}

.znd100 {
  z-index: 100;
}

.znd200 {
  z-index: 200;
}

.tr-delay1 {
  -webkit-transition-delay: 0.2s;
          transition-delay: 0.2s;
}

.tr-delay2 {
  -webkit-transition-delay: 0.4s;
          transition-delay: 0.4s;
}

.tr-delay3 {
  -webkit-transition-delay: 0.6s;
          transition-delay: 0.6s;
}

.tr-delay4 {
  -webkit-transition-delay: 0.8s;
          transition-delay: 0.8s;
}

.tr-delay5 {
  -webkit-transition-delay: 1s;
          transition-delay: 1s;
}

.hover-underline:hover {
  text-decoration: underline !important;
}

.hover-white:hover {
  color: #fff;
}
.hover-white:hover * {
  color: #fff;
}

/* ========= [ * buttons ]  =========*/
/* --------------- buttons style --------------- */
.butn {
  padding: 15px 40px;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
  position: relative;
}
.butn.md-butn {
  padding: 10px 25px;
}
.butn:hover {
  -webkit-box-shadow: 4px 5px 0 #0005;
          box-shadow: 4px 5px 0 #0005;
  -webkit-box-shadow: 7px 10px 15px #0004;
          box-shadow: 7px 10px 15px #0004;
  -webkit-transform: translateY(-2px);
          transform: translateY(-2px);
}

/* ========= [ * variable ]  =========*/
/* --------------- variable --------------- */
:root {
  --zoma-marfil:#EAE7DF;
  --zoma-arena:#C5BBAA;
  --zoma-oliva:#77776C;
  --zoma-grafito:#343B38;
  --zoma-terracota:#B56F50;
  --color-blue1:var(--zoma-oliva);
  --color-orange1:var(--zoma-grafito);
  --color-yellow1:var(--zoma-terracota);
  --color-green1:var(--zoma-oliva);
  --color-brown1:var(--zoma-arena);
  --color-brown2:var(--zoma-oliva);
  --color-light1:var(--zoma-marfil);
}

.color-blue1 {
  color: var(--color-blue1) !important;
}

.bg-blue1 {
  background: var(--color-blue1) !important;
}

.border-blue1 {
  border-color: var(--color-blue1) !important;
}

.hover-blue1:hover {
  color: var(--color-blue1) !important;
}

.hover-bg-blue1:hover {
  background: var(--color-blue1) !important;
  border-color: var(--color-blue1) !important;
  color: #fff !important;
}
.hover-bg-blue1:hover * {
  color: #fff !important;
}

.color-orange1 {
  color: var(--color-orange1) !important;
}

.bg-orange1 {
  background: var(--color-orange1) !important;
}

.border-orange1 {
  border-color: var(--color-orange1) !important;
}

.hover-orange1:hover {
  color: var(--color-orange1) !important;
}

.hover-bg-orange1:hover {
  border-color: var(--color-orange1) !important;
  background: var(--color-orange1) !important;
  color: #fff !important;
}
.hover-bg-orange1:hover * {
  color: #fff !important;
}

.color-yellow1 {
  color: var(--color-yellow1) !important;
}

.bg-yellow1 {
  background: var(--color-yellow1) !important;
}

.border-yellow1 {
  border-color: var(--color-yellow1) !important;
}

.hover-yellow1:hover {
  color: var(--color-yellow1) !important;
}

.hover-bg-yellow1:hover {
  background: var(--color-yellow1) !important;
  border-color: var(--color-yellow1) !important;
  color: #fff;
}
.hover-bg-yellow1:hover * {
  color: #fff !important;
}

.color-green1 {
  color: var(--color-green1) !important;
}

.bg-green1 {
  background: var(--color-green1) !important;
}

.border-green1 {
  border-color: var(--color-green1) !important;
}

.hover-green1:hover {
  color: var(--color-green1) !important;
}

.hover-bg-green1:hover {
  background: var(--color-green1) !important;
  border-color: var(--color-green1) !important;
  color: #fff;
}
.hover-bg-green1:hover * {
  color: #fff !important;
}

.color-brown1 {
  color: var(--color-brown1) !important;
}

.bg-brown1 {
  background: var(--color-brown1) !important;
}

.border-brown1 {
  border-color: var(--color-brown1) !important;
}

.hover-brown1:hover {
  color: var(--color-brown1) !important;
}

.hover-bg-brown1:hover {
  background: var(--color-brown1) !important;
  border-color: var(--color-brown1) !important;
  color: #fff;
}
.hover-bg-brown1:hover * {
  color: #fff !important;
}

.color-brown2 {
  color: var(--color-brown2) !important;
}

.bg-brown2 {
  background: var(--color-brown2) !important;
}

.border-brown2 {
  border-color: var(--color-brown2) !important;
}

.hover-brown2:hover {
  color: var(--color-brown2) !important;
}

.hover-bg-brown2:hover {
  background: var(--color-brown2) !important;
  border-color: var(--color-brown2) !important;
  color: #fff;
}
.hover-bg-brown2:hover * {
  color: #fff !important;
}

.hover-white:hover {
  color: #fff !important;
}

.hover-bg-white:hover {
  background-color: #fff !important;
  color: #000 !important;
}
.hover-bg-white:hover * {
  color: #000;
}

.hover-black:hover {
  color: #000 !important;
}

.hover-bg-black:hover {
  background-color: #000 !important;
  border-color: #000 !important;
  color: #fff !important;
}
.hover-bg-black:hover * {
  color: #fff;
}