.elementor-kit-4{--e-global-color-primary:#83684A;--e-global-color-secondary:#574D46;--e-global-color-text:#221F20;--e-global-color-accent:#766F68;--e-global-typography-primary-font-family:"Inter";--e-global-typography-primary-font-weight:400;--e-global-typography-secondary-font-family:"Sora";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-weight:500;background-color:#F2EFEA;color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-kit-4 button,.elementor-kit-4 input[type="button"],.elementor-kit-4 input[type="submit"],.elementor-kit-4 .elementor-button{background-color:#02010100;font-size:1em;font-weight:500;text-transform:uppercase;color:#FFFFFF;border-style:solid;border-width:1px 1px 1px 1px;border-radius:25px 25px 25px 25px;}.elementor-kit-4 button:hover,.elementor-kit-4 button:focus,.elementor-kit-4 input[type="button"]:hover,.elementor-kit-4 input[type="button"]:focus,.elementor-kit-4 input[type="submit"]:hover,.elementor-kit-4 input[type="submit"]:focus,.elementor-kit-4 .elementor-button:hover,.elementor-kit-4 .elementor-button:focus{background-color:#FFFFFF40;color:#FFFFFF;}.elementor-kit-4 e-page-transition{background-color:#FFBC7D;}.elementor-kit-4 a{font-family:var( --e-global-typography-text-font-family ), sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-kit-4 h1{font-family:"Sora", sans-serif;font-weight:400;line-height:1.4em;}.elementor-kit-4 h2{font-family:var( --e-global-typography-secondary-font-family ), sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-kit-4 h3{font-family:var( --e-global-typography-secondary-font-family ), sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-kit-4 h4{font-family:var( --e-global-typography-secondary-font-family ), sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-kit-4 h5{font-family:var( --e-global-typography-secondary-font-family ), sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-kit-4 h6{font-family:var( --e-global-typography-secondary-font-family ), sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS */html {
  font-size: 14px; /* base scale */
}
.dezure-accent,
.dezure-accent * {
  font-family: "forma-djr-micro", sans-serif;
  font-weight: 400;
  font-style: normal;
}
.dezure-accent-m,
.dezure-accent-m * {
  font-family: "forma-djr-micro", sans-serif;
  font-weight: 500;
  font-style: normal;
}

/* All Elementor buttons use Forma */
.elementor-button,
.elementor-button * {
  font-family: "forma-djr-micro", sans-serif;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.dezure-close { cursor: pointer; }
.dezure-close:hover {
  opacity: 1;
  transition: opacity 0.2s ease;
}

/* =========================================================
   DEZURE — Media Carousel Styling
   Widget CSS class: dezure-slider
   ========================================================= */

/* ---------- Overlay always visible (no hover) ---------- */
.dezure-slider .elementor-carousel-image-overlay,
.dezure-slider .elementor-carousel-image__overlay,
.dezure-slider .elementor-carousel-image__caption,
.dezure-slider .elementor-carousel-image-overlay.e-overlay-animation-fade,
.dezure-slider .elementor-carousel-image-overlay.overlay-animation-fade {
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
}

/* Remove any overlay wash */
.dezure-slider .elementor-carousel-image-overlay,
.dezure-slider .elementor-carousel-image__overlay,
.dezure-slider .elementor-carousel-image-overlay.e-overlay-animation-fade,
.dezure-slider .elementor-carousel-image-overlay.overlay-animation-fade {
  background: transparent !important;
}

/* Position overlay top-left + stack lines */
.dezure-slider .elementor-carousel-image-overlay,
.dezure-slider .elementor-carousel-image-overlay.e-overlay-animation-fade,
.dezure-slider .elementor-carousel-image-overlay.overlay-animation-fade {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;

  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;

  text-align: left !important;
  padding: 28px 28px 0 28px !important;

  gap: 10px !important;
}

/* Ensure overlay never gets dimmed */
.dezure-slider .elementor-carousel-image-overlay{
  opacity: 1 !important;
}

/* If you used <br>, not needed once stacked */
.dezure-slider .elementor-carousel-image-overlay br {
  display: none !important;
}

/* Tighter line-height for overlay text */
.dezure-slider .elementor-carousel-image-overlay,
.dezure-slider .elementor-carousel-image-overlay * {
  line-height: 1.1 !important;
}

/* Location line layout */
.dezure-slider .dezure-location {
  display: inline-flex;
  align-items: center;
  gap: 5px;
}

/* Map pin icon before location line */
.dezure-slider .dezure-location:before {
  content: "";
  width: 14px;
  height: 14px;
  display: inline-block;
  background: rgba(255,255,255,0.95);
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 384 512'%3E%3Cpath d='M172.3 501.7C26.1 291.8 0 269.4 0 192 0 86 86 0 192 0s192 86 192 192c0 77.4-26.1 99.8-172.3 309.7-9.5 13.7-29.9 13.7-39.4 0zM192 272c44.2 0 80-35.8 80-80s-35.8-80-80-80-80 35.8-80 80 35.8 80 80 80z'/%3E%3C/svg%3E") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 384 512'%3E%3Cpath d='M172.3 501.7C26.1 291.8 0 269.4 0 192 0 86 86 0 192 0s192 86 192 192c0 77.4-26.1 99.8-172.3 309.7-9.5 13.7-29.9 13.7-39.4 0zM192 272c44.2 0 80-35.8 80-80s-35.8-80-80-80-80 35.8-80 80 35.8 80 80 80z'/%3E%3C/svg%3E") center/contain no-repeat;
}

/* =========================================================
   DEZURE — Slider Arrows (SPRITES: normal + hover)
   ========================================================= */

/* Hide Elementor’s default icon (prevents “double arrow”) */
.dezure-slider .elementor-swiper-button-prev i,
.dezure-slider .elementor-swiper-button-next i,
.dezure-slider .elementor-swiper-button-prev svg,
.dezure-slider .elementor-swiper-button-next svg {
  display: none !important;
}

/* Kill any pseudo-elements Elementor might add */
.dezure-slider .elementor-swiper-button-prev::before,
.dezure-slider .elementor-swiper-button-prev::after,
.dezure-slider .elementor-swiper-button-next::before,
.dezure-slider .elementor-swiper-button-next::after {
  content: none !important;
  display: none !important;
}

/* Base arrow button */
.dezure-slider .elementor-swiper-button-prev,
.dezure-slider .elementor-swiper-button-next {
  width: 50px;
  height: 50px;

  border: 0px solid rgba(255,255,255,0.85) !important;
  border-radius: 999px !important;
  background-color: transparent !important;

  position: absolute !important;
  top: 50% !important;
  transform: translateY(-50%) !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  z-index: 10 !important;
  opacity: 1 !important;
  visibility: visible !important;

  outline: none !important;
  box-shadow: none !important;
  filter: none !important;

  background-repeat: no-repeat !important;
  background-position: left center !important;
  background-size: 100px 50px !important; /* 2x width (normal + hover) */
}

/* Placement */
.dezure-slider .elementor-swiper-button-prev { left: 20px !important; }
.dezure-slider .elementor-swiper-button-next { right: 20px !important; }

/* Sprites */
.dezure-slider .elementor-swiper-button-prev {
  background-image: url("/wp-content/uploads/2026/01/arrow-long-left-sprite.svg") !important;
}
.dezure-slider .elementor-swiper-button-next {
  background-image: url("/wp-content/uploads/2026/01/arrow-long-right-sprite.svg") !important;
}

/* Hover = slide to right half */
.dezure-slider .elementor-swiper-button-prev:hover,
.dezure-slider .elementor-swiper-button-next:hover {
  background-position: right center !important;
}

/* Focus ring cleanup (Elementor + browser) */
.dezure-slider .elementor-swiper-button:focus,
.dezure-slider .elementor-swiper-button:focus-visible,
.dezure-slider .elementor-swiper-button-prev:focus,
.dezure-slider .elementor-swiper-button-next:focus,
.dezure-slider .elementor-swiper-button-prev:focus-visible,
.dezure-slider .elementor-swiper-button-next:focus-visible {
  outline: none !important;
  box-shadow: none !important;
  filter: none !important;
}

/* =========================================================
   DEZURE — Gradient FIX (behind overlay text)
   ========================================================= */

/* Disable the old gradient layer (the one on elementor-main-swiper) */
.dezure-slider .elementor-main-swiper::before{
  content: none !important;
  display: none !important;
}

/* Make each slide image a stacking context */
.dezure-slider .elementor-carousel-image{
  position: relative !important;
  z-index: 1 !important;
}

/* Add gradient ON the image (behind text overlay) */
.dezure-slider .elementor-carousel-image::after{
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;

  background: linear-gradient(
    to bottom,
    rgba(0,0,0,0.55) 0%,
    rgba(0,0,0,0.35) 40%,
    rgba(0,0,0,0.15) 65%,
    rgba(0,0,0,0.0) 100%
  );

  height: clamp(160px, 22vw, 260px);
  z-index: 1;
}

/* Force overlay text ABOVE the gradient */
.dezure-slider .elementor-carousel-image-overlay{
  position: absolute !important;
  z-index: 5 !important;
}

/* Keep arrows above everything */
.dezure-slider .elementor-swiper-button-prev,
.dezure-slider .elementor-swiper-button-next{
  z-index: 6 !important;
}

.project-cards p {
  margin-block-start: 0 !important;
  margin-block-end: 0;
}/* End custom CSS */