/*!
 * b5st since v1.0 | Unicence
 */
/* Fonts */
@import url(../fonts/poppins.css);
/* Variables */
:root {
  color-scheme: light dark;
  /* both supported */
  /* bootstrap variables */
  --bs-btn-border-radius: 0;
  --bs-font-sans-serif: "poppins", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans",
    "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  /* other */
  --dembor-font-sans-serif: "poppins", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans",
    "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --dembor-accent: #c5853a;
  --dembor-accent-light: #c69870;
  --dembor-bg-lightest: #ffffff;
  --dembor-bg-light: #e0dad4;
  --dembor-bg-light-gray: #f5f5f7;
  --dembor-bg-darkest: #1b1e22;
  --dembor-bg-dark: #1f2f33;
  --dembor-bg-dark-gray: #25282a;
  --dembor-text-heading: #222222;
  --dembor-text-normal: #7a7a7a;
  --dembor-text-light: #ffffff;
  --dembor-overlay-light: rgba(255, 255, 255, 0.65);
  --dembor-overlay-dark: rgba(0, 0, 0, 0.65);
  --dembor-overlay2-light: rgba(255, 255, 255, 0.85);
  --dembor-overlay2-dark: rgba(0, 0, 0, 0.85); }

body {
  --text-color: #7a7a7a;
  --bg-color: #ffffff;
  --heading-text-color: #222222;
  --overlay-bg: var(--dembor-overlay-light);
  --overlay2-bg: var(--dembor-overlay2-light);
  --colored-bg-color: var(--dembor-bg-light-gray);
  --bg-the-most: var(--dembor-bg-lightest);
  --color-back: #fff;
  --color-front: #1b1e22;
  --image-filter: none; }

body.dark-theme {
  --text-color: #e1e1e1;
  --bg-color: #1b1e22;
  --heading-text-color: #ffffff;
  --overlay-bg: var(--dembor-overlay-dark);
  --overlay2-bg: var(--dembor-overlay2-dark);
  --colored-bg-color: var(--dembor-bg-dark-gray);
  --bg-the-most: var(--dembor-bg-darkest);
  --color-back: #1b1e22;
  --color-front: #fff;
  --image-filter: invert(100%) sepia(98%) saturate(0%) hue-rotate(250deg) brightness(108%) contrast(100%); }

.services__header {
  --text-color: #e1e1e1;
  --heading-text-color: #ffffff; }

.call-to-action {
  --text-color: #e1e1e1;
  --heading-text-color: #ffffff; }

@media (prefers-color-scheme: dark) {
  /* defaults to dark theme */
  body {
    --text-color: #e1e1e1;
    --bg-color: #1b1e22;
    --heading-text-color: #ffffff;
    --overlay-bg: var(--dembor-overlay-dark);
    --overlay2-bg: var(--dembor-overlay2-dark);
    --colored-bg-color: var(--dembor-bg-dark-gray);
    --bg-the-most: var(--dembor-bg-darkest);
    --color-back: #1b1e22;
    --color-front: #fff;
    --image-filter: invert(100%) sepia(98%) saturate(0%) hue-rotate(250deg) brightness(108%) contrast(100%); }
  body.light-theme {
    --text-color: #7a7a7a;
    --bg-color: #ffffff;
    --heading-text-color: #222222;
    --overlay-bg: var(--dembor-overlay-light);
    --overlay2-bg: var(--dembor-overlay2-light);
    --colored-bg-color: var(--dembor-bg-light-gray);
    --bg-the-most: var(--dembor-bg-lightest);
    --color-back: #fff;
    --color-front: #1b1e22;
    --image-filter: none; }
  .services__header {
    --text-color: #e1e1e1;
    --heading-text-color: #ffffff; }
  .call-to-action {
    --text-color: #ffffff;
    --heading-text-color: #ffffff; } }

/* Base Theme Settings */
body {
  display: flex;
  min-height: 100vh;
  flex-direction: column;
  background-color: var(--bg-color);
  color: var(--text-color);
  font-family: var(--dembor-font-sans-serif); }

*::selection {
  color: var(--dembor-accent);
  background-color: var(--dembor-bg-light-gray); }

h1,
h2,
h3,
h4,
h5,
h6 {
  color: var(--heading-text-color);
  font-weight: bold;
  margin-bottom: 0.25em;
  line-height: 1.3; }

@media (min-width: 1200px), (min-width: 992px) {
  h1 {
    font-size: 3.25rem; } }

p {
  line-height: 1.8; }

.subtitle {
  color: var(--dembor-accent);
  font-weight: bold;
  text-transform: uppercase;
  letter-spacing: 0.25rem; }

main {
  flex: 1 0 auto; }

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

.btn {
  border-radius: 0;
  border: 0;
  background-color: var(--dembor-accent);
  color: #fff;
  padding: 1em 2em; }
  .btn:hover {
    background-color: var(--dembor-accent-light);
    color: #fff; }
  .btn--dark {
    background-color: var(--dembor-bg-darkest); }
    .btn--dark:hover {
      background-color: var(--dembor-bg-dark); }
  .btn__link {
    font-weight: bold;
    color: var(--dembor-accent);
    text-decoration: none; }
    .btn__link:hover {
      text-decoration: none;
      color: var(--dembor-accent-light); }
    .btn__link--underline {
      text-decoration: underline; }
      .btn__link--underline:hover {
        text-decoration: underline; }
    .btn__link--hover-underline:hover {
      text-decoration: underline; }

a.normal-link {
  text-decoration: none;
  color: var(--text-color); }
  a.normal-link:hover {
    text-decoration: underline; }

section {
  width: 100%;
  overflow-x: hidden;
  padding-top: 70px;
  padding-bottom: 70px; }
  @media (min-width: 992px) {
    section {
      padding-top: 100px;
      padding-bottom: 100px; } }

.swiper-transition-linear .swiper-wrapper {
  transition-timing-function: linear !important; }

.swiper-pagination {
  position: relative;
  bottom: 0;
  left: 0;
  top: 0;
  right: 0; }
  .swiper-pagination-bullet {
    margin-left: 4px;
    margin-right: 4px; }
    .swiper-pagination-bullet-active {
      background-color: var(--dembor-accent); }

.theme-toggle.theme-toggle--reversed .theme-toggle__expand {
  transform: scale(-1, 1); }

.theme-toggle {
  --theme-toggle__expand--duration: 500ms; }

.theme-toggle__expand g circle,
.theme-toggle__expand g path {
  transform-origin: center;
  transition: transform calc(var(--theme-toggle__expand--duration) * 0.65) cubic-bezier(0, 0, 0, 1.25) calc(var(--theme-toggle__expand--duration) * 0.35); }

.theme-toggle__expand :first-child path {
  transition-property: transform, d;
  transition-duration: calc(var(--theme-toggle__expand--duration) * 0.6);
  transition-timing-function: cubic-bezier(0, 0, 0.5, 1); }

.theme-toggle input[type="checkbox"]:checked ~ .theme-toggle__expand g circle,
.theme-toggle--toggled:not(label).theme-toggle .theme-toggle__expand g circle {
  transform: scale(1.4);
  transition-delay: 0s; }

.theme-toggle input[type="checkbox"]:checked ~ .theme-toggle__expand g path,
.theme-toggle--toggled:not(label).theme-toggle .theme-toggle__expand g path {
  transform: scale(0.75);
  transition-delay: 0s; }

.theme-toggle input[type="checkbox"]:checked ~ .theme-toggle__expand :first-child path,
.theme-toggle--toggled:not(label).theme-toggle .theme-toggle__expand :first-child path {
  d: path("M-9 3h25a1 1 0 0017 13v30H0Z");
  transition-delay: calc(var(--theme-toggle__expand--duration) * 0.4);
  transition-timing-function: cubic-bezier(0, 0, 0, 1.25); }

@supports not (d: path("")) {
  .theme-toggle input[type="checkbox"]:checked ~ .theme-toggle__expand :first-child path,
  .theme-toggle--toggled:not(label).theme-toggle .theme-toggle__expand :first-child path {
    transform: translate3d(-9px, 14px, 0); } }

.theme-toggle {
  border: none;
  background: 0 0;
  cursor: pointer; }

.theme-toggle input[type="checkbox"] {
  display: none; }

.theme-toggle .theme-toggle-sr {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0; }

@media (prefers-reduced-motion: reduce) {
  .theme-toggle:not(.theme-toggle--force-motion) * {
    transition: none !important; } }

.theme-toggle {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  margin: 0;
  color: #1b1e22; }
  .theme-toggle svg {
    color: #1b1e22; }

.theme-toggle--toggled {
  background: var(--color-back); }
  .theme-toggle--toggled svg {
    color: var(--color-front); }

.header {
  position: sticky;
  top: -1px;
  z-index: 5;
  background-color: var(--color-back); }
  .header .btn-toggle-dark-mode {
    padding: 0; }
  .header .menu-item .nav-link {
    color: var(--text-color); }
    .header .menu-item .nav-link:hover {
      color: var(--dembor-accent); }
  .header .menu-item.active .nav-link:not([href^="/#"]), .header .menu-item.active .nav-link:not([href^="/#"]):hover, .header .menu-item.current_page_item .nav-link:not([href^="/#"]), .header .menu-item.current_page_item .nav-link:not([href^="/#"]):hover {
    color: var(--heading-text-color); }
  .header .navbar-brand img {
    width: 100px; }
  @media (min-width: 768px) {
    .header .navbar-brand,
    .header .right-actions {
      flex-grow: 1; }
    .header .dropdown-menu {
      background-color: var(--bg-color);
      border-color: var(--text-color); }
    .header .dropdown-item {
      color: var(--text-color); }
      .header .dropdown-item:hover {
        background-color: var(--colored-bg-color);
        color: var(--text-color); } }
  @media (max-width: 767px) {
    .header .new-menu {
      justify-content: center;
      align-items: center;
      clip-path: polygon(calc(50vw + 270px - 44px) 45px, calc(50vw + 270px - 20px) 45px, calc(50vw + 270px - 20px) 49px, calc(50vw + 270px - 44px) 49px);
      background-color: var(--color-front);
      color: #f2f2f2;
      display: flex;
      flex-direction: column;
      height: 100vh;
      z-index: 1000;
      position: absolute;
      top: 0;
      left: 0;
      transition: clip-path 400ms cubic-bezier(0.4, 0, 0.2, 1), background-color 400ms cubic-bezier(0.4, 0, 0.2, 1);
      width: 100%; }
      .header .new-menu .dropdown-menu {
        background: none;
        border: 0;
        padding-left: calc(var(--bs-gutter-x) * 0.5); }
      .header .new-menu .dropdown-item {
        display: block;
        padding: var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);
        font-size: var(--bs-nav-link-font-size);
        font-weight: var(--bs-nav-link-font-weight);
        text-decoration: none;
        transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;
        color: var(--text-color); }
    .header .mobile-menu-btns {
      position: relative;
      z-index: 1001; }
      .header .mobile-menu-btns .btn-toggle-dark-mode {
        margin-right: 48px; }
    .header.active .new-menu {
      background-color: var(--bg-color);
      clip-path: polygon(101% -1%, 101% 101%, -1% 101%, -1% -1%); }
    .header .options {
      align-items: center;
      display: flex;
      flex-direction: column;
      margin-top: 60px;
      transform: scale(0.8);
      transition: transform 400ms cubic-bezier(0.4, 0, 0.2, 1); }
    .header .option {
      cursor: pointer;
      margin: 8px 0; }
    .header .option.selected {
      color: #a02f56; }
    .header.active .options {
      transform: scale(1); }
    .header .x {
      pointer-events: none;
      position: absolute;
      top: -10px;
      right: -10px; }
    .header .top-bars {
      z-index: 1001;
      stroke: var(--color-front);
      transition: stroke 400ms cubic-bezier(0.4, 0, 0.2, 1); }
    .header .bar {
      transition: transform 400ms cubic-bezier(0.4, 0, 0.2, 1); }
    .header .bar1 {
      transform-origin: 190px 20.5px; }
    .header .bar2 {
      transform-origin: 190px 28.5px; }
    .header.active .bar1 {
      transform: translateY(8.6px) rotate(45deg); }
    .header.active .bar2 {
      transform: rotate(-45deg); }
    .header .menu-click-area {
      cursor: pointer;
      height: 40px;
      opacity: 0.3;
      position: absolute;
      left: 48px;
      top: 0px;
      width: 40px; } }
  @media (max-width: 577px) {
    .header .new-menu {
      clip-path: polygon(calc(100vw - 44px) 45px, calc(100vw - 20px) 45px, calc(100vw - 20px) 49px, calc(100vw - 44px) 49px); } }

.footer {
  padding-top: 70px;
  padding-bottom: 70px;
  background-color: var(--bg-the-most); }
  @media (min-width: 992px) {
    .footer {
      padding-top: 100px;
      padding-bottom: 100px; } }
  .footer__logo {
    width: 300px; }
  .footer__about {
    text-align: justify; }
  .footer .nav-link {
    text-decoration: none;
    color: var(--text-color); }
    .footer .nav-link:hover {
      text-decoration: underline;
      color: var(--text-color); }
  .footer .dropdown.menu-item-has-children .nav-link {
    display: none; }
  .footer .dropdown-menu {
    display: block;
    border: 0;
    padding: 0;
    margin: 0;
    background-color: transparent; }
  .footer .dropdown-item {
    display: block;
    padding: var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);
    font-size: var(--bs-nav-link-font-size);
    font-weight: var(--bs-nav-link-font-weight);
    color: var(--text-color);
    text-decoration: none;
    text-align: center;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out; }
    .footer .dropdown-item:hover {
      background-color: transparent;
      color: var(--text-color);
      text-decoration: underline; }
    @media (min-width: 768px) {
      .footer .dropdown-item {
        text-align: left; } }

/* Modules */
/* Home header */
.main-banner {
  padding-top: 0;
  padding-bottom: 0; }
  .main-banner__cover-image {
    width: 100vw;
    position: relative;
    max-width: none;
    left: calc(var(--bs-gutter-x) * -0.5);
    object-fit: cover;
    min-height: 375px; }
  .main-banner__box {
    position: absolute;
    bottom: calc(var(--bs-gutter-x) / 2);
    left: calc(var(--bs-gutter-x) / 2);
    padding: var(--bs-gutter-x);
    background-color: var(--overlay-bg); }
    .main-banner__box span {
      font-weight: bold;
      color: var(--heading-text-color); }
    .main-banner__box a {
      text-decoration: none;
      color: var(--text-color); }
      .main-banner__box a:hover {
        text-decoration: none; }
        .main-banner__box a:hover p {
          font-weight: normal;
          text-decoration: underline; }
  .main-banner__texts {
    padding-top: 70px;
    padding-bottom: 70px; }
  .main-banner__image-col {
    position: relative; }
  @media (min-width: 576px) {
    .main-banner__cover-image {
      left: calc((540px - 100vw - var(--bs-gutter-x)) / 2); } }
  @media (min-width: 768px) {
    .main-banner__cover-image {
      width: calc(((100vw - 720px) / 2) + (720px / 3));
      left: calc(var(--bs-gutter-x) * -0.5);
      height: 100%; }
    .main-banner__box {
      bottom: calc(var(--bs-gutter-x));
      left: calc(var(--bs-gutter-x)); } }
  @media (min-width: 992px) {
    .main-banner__cover-image {
      width: 50vw; }
    .main-banner__texts {
      padding-top: 100px;
      padding-bottom: 100px; } }

/* Info boxes */
.info-boxes {
  background: var(--colored-bg-color); }
  .info-boxes__item {
    border-color: rgba(197, 133, 58, 0.21);
    border-style: solid;
    border-width: 0;
    border-bottom-width: 1px;
    padding-top: 50px;
    padding-bottom: 50px; }
    .info-boxes__item-icon {
      max-width: 60px; }
    .info-boxes__item:first-child {
      padding-top: 0; }
    .info-boxes__item:last-child {
      border-bottom-width: 0;
      padding-bottom: 0; }
  @media (min-width: 768px) {
    .info-boxes__item {
      padding-top: 0;
      padding-bottom: 0;
      border-bottom-width: 0; }
      .info-boxes__item:nth-child(n + 3) {
        padding-top: 50px; }
      .info-boxes__item:nth-child(2n) {
        border-left-width: 1px; } }
  @media (min-width: 992px) {
    .info-boxes__item {
      border-left-width: 0 !important;
      border-right-width: 1px; }
      .info-boxes__item:nth-child(3) {
        padding-top: 0; }
      .info-boxes__item:nth-child(3n) {
        border-right-width: 0; }
      .info-boxes__item:nth-child(n + 4) {
        padding-top: 50px; } }

/* funfacts */
.funfacts__item-number {
  color: var(--heading-text-color);
  font-size: 2rem; }

.funfacts__item-super {
  color: var(--dembor-accent);
  vertical-align: 1rem; }

/* about-us */
.about-us__texts {
  padding-bottom: 50px; }

.about-us__image {
  object-fit: cover;
  height: 310px;
  margin-top: 30px;
  width: calc((100% - 30px) / 2); }
  .about-us__image + .about-us__image {
    margin-top: 0;
    margin-bottom: 30px;
    margin-left: var(--bs-gutter-x); }

@media (min-width: 768px) {
  .about-us__texts {
    padding-top: 50px; }
  .about-us__image {
    height: 100%;
    margin-top: 50px; }
    .about-us__image + .about-us__image {
      margin-top: 0;
      margin-bottom: 50px; } }

/* Services */
.services {
  background-color: var(--dembor-bg-dark);
  position: relative;
  color: var(--text-color); }
  .services .container {
    position: relative; }
  .services__cover-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0.25; }
  .services__item-box {
    position: relative;
    height: 100%; }
    .services__item-box-cover-image {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      object-fit: cover; }
    .services__item-box-content {
      height: 100%;
      position: relative;
      padding: var(--bs-gutter-x);
      color: var(--text-color);
      background-color: var(--bg-the-most);
      transition: 200ms ease-in-out background-color; }
      .services__item-box-content:hover {
        background-color: var(--overlay2-bg); }
  .services__item-icon {
    max-width: 60px; }

/* Why us */
.why-us__image {
  height: 100%;
  width: 100%;
  object-fit: cover; }

.why-us__info-boxes__item {
  padding-bottom: 50px; }
  .why-us__info-boxes__item-icon {
    max-width: 45px; }
  @media (min-width: 768px) {
    .why-us__info-boxes__item:last-child {
      padding-bottom: 0; } }

/* our process */
.our-process__item-icon {
  max-width: 60px; }

/* call to action */
.call-to-action {
  position: relative;
  color: var(--text-color); }
  .call-to-action .subtitle {
    color: var(--heading-text-color); }
  .call-to-action__cover-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0.35; }
  .call-to-action__cover-bg {
    background-color: var(--dembor-accent);
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0; }
  .call-to-action__texts {
    position: relative; }

/* gallery-info */
.gallery-info__image {
  width: 100%;
  height: 100%;
  object-fit: cover; }
  .gallery-info__image-box {
    aspect-ratio: 1/1; }
    .gallery-info__image-box--bigger {
      aspect-ratio: 2 / 3; }

.gallery-info__slide {
  position: relative; }
  .gallery-info__slide-wrapper {
    align-items: center; }

.testimonials {
  background-color: var(--colored-bg-color); }
  .testimonials__text {
    font-weight: 300;
    max-width: 80%;
    margin: 0 auto 1rem;
    color: var(--text-color); }
  .testimonials__name {
    font-weight: 600;
    color: var(--heading-text-color); }

.logos .swiper-wrapper {
  align-items: center; }

.logos .swiper-slide {
  width: auto; }

.logos img {
  filter: var(--image-filter);
  max-height: 50px; }
  @media (min-width: 768px) {
    .logos img {
      max-height: 75px; } }

/* Contact */
.contact {
  background-color: var(--colored-bg-color); }
  .contact__form {
    background-color: var(--bg-the-most);
    padding: var(--bs-gutter-x); }
    .contact__form .nf-form-fields-required {
      display: none; }
    .contact__form input:not([type="submit"]),
    .contact__form select:not([type="submit"]),
    .contact__form textarea:not([type="submit"]) {
      border-color: #e3e3e3 !important;
      background-color: var(--bg-the-most) !important; }
    .contact__form .nf-response-msg {
      text-align: center; }
    .contact__form .submit-wrapper {
      margin-bottom: 0; }
      .contact__form .submit-wrapper input[type="submit"] {
        width: 100%;
        background: var(--dembor-accent);
        cursor: pointer;
        color: #fff; }
        .contact__form .submit-wrapper input[type="submit"]:hover {
          color: #fff;
          background-color: var(--dembor-accent-light); }

.gallery .nav-link {
  color: var(--dembor-accent); }

.gallery .nav-pills .nav-link.active,
.gallery .nav-pills .show > .nav-link {
  background-color: var(--dembor-accent); }

.gallery__item {
  margin-bottom: calc(var(--bs-gutter-x) / 2);
  text-decoration: none; }
  .gallery__item:hover .gallery__item-name {
    text-decoration: underline; }
  .gallery__item:hover .gallery__item-image {
    opacity: 0.85; }

.gallery__item-image {
  transition: 200ms all ease-in-out; }

.gallery__item-name {
  display: block;
  text-align: center;
  color: var(--dembor-accent);
  margin-top: 0.5rem;
  font-weight: 600; }
