/* ================================
Global / Variables
================================ */
:root {
    --color-black: #111717;
    --color-warm-cedar: #B9916E; 
}

html {
  margin: 0 !important;
}

body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  overflow-x: clip;
}

body {
    background-color: var(--color-black) !important;
}
span.hero-span {
    color: var(--color-warm-cedar);
}

header .contact-us-item { display: none !important;}

a.contact-button-1,
a.contact-button-2,
a.get-a-quote {
    transition: all 0.2s ease-in-out; 
}

a.contact-button-2:hover {
  background-color: #171717 !important;
  border: 1px solid #82856A !important;
}

a.get-a-quote:hover {
    background-color: #b9916e30 !important;
    border: 1px solid var(--color-warm-cedar) !important;
}

a.contact-button-1:hover {
    background-color : var(--color-black) !important;
    border: 1px solid var(--color-warm-cedar) !important;
} 

body.page.page-id-279 header,
body.page.page-id-279 footer {
    display: none !important;
}

#about-us,
#about-hs,
#projects,
#services,
.about-us-target,
#contact-us { scroll-margin-top: 150px; }

/* ================================
Custom Site Header
================================ */
.custom-site-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 9999;
  transform: translateY(0);
  transition: transform 0.35s ease, background-color 0.35s ease, box-shadow 0.35s ease;
  will-change: transform;
  opacity: 1;
}

.custom-site-header.header-hidden {
  transform: translateY(-100%);
}

.custom-site-header.header-scrolled {
  background-color: rgba(17, 23, 23, 0.96);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18);
}

/* ================================
Homepage Hero Video Overlay 
================================ */
.homepage-hero .elementor-background-video-container {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.homepage-hero .elementor-background-video-container::after {
  content: "";
  position: absolute;
  inset: 0;
  display: block;
  background-image: url("/wp-content/uploads/2026/08/overlay-scaled.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  z-index: 1;
  pointer-events: none;
}   

.homepage-hero .elementor-background-video-embed,
.homepage-hero .elementor-background-video-container iframe {
  position: relative;
  z-index: 1;
}

/* ================================
Testimonials Carousel 
================================ */
.testimonials-carousel svg {
    fill: #82856a20 !important;
    transition: all 0.2s ease-in-out;
}

.testimonials-carousel svg:hover {
    fill: #82856A !important;
}

.testimonials-carousel .swiper-wrapper .swiper-slide {
    margin-bottom: 40px !important;
}

/* ================================
Project Cards 
================================ */
.project-card {
    overflow: hidden !important;
}
.project-details {
  height: 0 !important;
  max-height: 0 !important;
  min-height: 0 !important;
  opacity: 0;
    visibility: hidden;
  overflow: hidden;
  padding: 0 !important;
  margin: 0 !important;
    transform: scaleY(0);
    transform-origin: top;
  pointer-events: none;
  transition:
    max-height 0.35s ease,
    opacity 0.25s ease,
        transform 0.35s ease,
        visibility 0s linear 0s;
}
.project-card:hover .project-details,
.project-card:focus-within .project-details {
  height: auto !important;
  max-height: 300px !important;
  opacity: 1;
    visibility: visible;
    transform: scaleY(1);
  pointer-events: auto;
  margin-bottom: 24px !important;
    transition-delay: 0s;
}
.services-card {
  transition: all 0.2s ease-in-out;
}

.services-card:hover {
  background-color: var(--color-black) !important;
}

/* ================================
Footer / Social Icons 
================================ */
.social-icons svg {
    transition: all 0.2s ease-in-out;
}

.social-icons svg:hover {
    fill: var(--color-warm-cedar) !important;
}

/* ================================
Animations
================================ */
.ce-animate {
    opacity: 0;
    transition:
        opacity 1.2s ease-out,
        transform 1.2s cubic-bezier(0.22, 1, 0.36, 1) !important;
    will-change: opacity, transform;
}

.ce-fade-up {
    transform: translateY(100px);
}

.ce-slide-left {
    transform: translateX(-100px);
}

.ce-slide-right {
    transform: translateX(100px);
}

.ce-animate.is-visible {
    opacity: 1;
    transform: translate(0, 0);
}

.ce-heading-word-animate {
    opacity: 1;
    transform: none;
}

.ce-heading-word {
    display: inline-block;
    opacity: 0;
    transform: translateY(0.55em);
    transition:
        opacity 0.7s ease,
        transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);
    transition-delay: calc(var(--ce-word-index, 0) * 70ms);
    will-change: opacity, transform;
}

.ce-heading-word-animate.is-visible .ce-heading-word {
    opacity: 1;
    transform: translateY(0);
}

/* ================================
Media Queries
================================ */
@media (min-width: 768px){
    .testimonials-carousel .elementor-swiper-button-next {
        left: 64px !important;
    }
    .br-mobile-only { display: none !important;}
}

@media (max-width: 767px) {
    .testimonials-carousel .elementor-swiper-button-prev,
    .testimonials-carousel .elementor-swiper-button-next {
        position: absolute;
        top: auto !important;
        bottom: 24px !important;
        right: auto !important;
    }

    .testimonials-carousel .elementor-swiper-button-prev {
        left: 50% !important;
        transform: translateX(calc(-100% - 6px)) translateY(40px) !important;
    }
    .br-desktop-only { display: none !important;}
    .elementor-swiper-button-next {
        left: 50% !important;
        transform: translateX(6px) translateY(40px) !important;
    }
}
