/* ==========================================================
   Homepage Hero Slider
   ========================================================== */

:root {
    --hhs-orange: #d68b13;
    --hhs-white: #fff;
    --hhs-black: #000;
    --hhs-radius: 22px;
}

.hhs-slider {
    position: relative;
    width: 100%;
    padding: 0;
    margin: 0;
}

.hhs-swiper {
    overflow: hidden;
    border-radius: 22px 0px 0px 0px;
}

.hhs-swiper,
.hhs-swiper .swiper-wrapper,
.hhs-swiper .swiper-slide {
    width: 100%;
    height: 100%;
}

/* ==========================================================
   Banner
   ========================================================== */

.hhs-banner {
    position: relative;
    overflow: hidden;
    border-radius: 22px 22px 0 22px;

    min-height: 840px;
    display: flex;
    align-items: center;
    background-repeat: no-repeat !important;
    background-size: cover !important;
    background-position-y: 80% !important;


    /* Desktop image */
    background-image: var(--hhs-desktop-bg);
    background-repeat: no-repeat !important;
    background-size: cover !important;
    background-position: center 80% !important;

    filter: contrast(1.2);
}

.hhs-banner__image {
    position: absolute;
    z-index: 1;
}

.hhs-banner__img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}
.hhs-banner__image::after {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.35);
    pointer-events: none;
}
/* dark overlay for readability */



/* ==========================================================
   Content
   ========================================================== */

.hhs-banner__content {
    position: relative;
    z-index: 5;
    width: 100%;
    margin-left: 48%;
    transform: translateX(-10%);
    color: #fff;
    margin-top: -10%;
}

.hhs-title {
    color: #fff !important;
    text-transform: uppercase;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: .04em;
    margin-bottom: 10px;
}

.hhs-heading {
    display: flex;
    color: var(--hhs-orange) !important;
    font-size: 64px;
    line-height: 1;
    font-weight: 800;
    font-family: inherit;
    text-transform: uppercase;


}


.hhs-heading__title {

    color: #fff;

    font-size: 28px;

    font-weight: 700;

    text-transform: uppercase;

    line-height: 1.2;

    margin-bottom: 8px;

}

.hhs-heading__row {

    display: flex;

    align-items: flex-start;


    width: 100%;
   

}

.hhs-heading__subtitle {

    color: #fff;

    font-size: 28px;

    font-weight: 700;

    text-transform: uppercase;

    line-height: 1.2;

}

.hhs-heading__highlight {

    color: #ffffff;

    font-size: 66px;

    font-weight: 700;

    line-height: 1;

    text-transform: uppercase;
    margin-left: 20px;
}
.slide-1  .hhs-heading__highlight{
    color:#d68b13;
}
.slide-4 .hhs-heading__subtitle{
 width: 55%;
}

.slide-5 .hhs-heading__subtitle{
    width:auto;
}


.slide-4 .hhs-btn, .slide-6 .hhs-btn{
    position:absolute;
    margin-top:-65px;
    bottom: 30px;
}
.slide-2 .hhs-heading__row{
    flex-direction: column !important;
    
}
.slide-2 .hhs-heading{

    display: flex;
    flex-direction: column;
}

.slide-2 .hhs-heading__highlight{
    margin:0 !important;
    color:white;
    width: 85%;
}

.slide-2 .hhs-btn{
    margin-top:20px;
    position: relative;
    display: inline;
}


.slide-6 .hhs-heading__subtitle{
    width:48%;
}
.slide-6 .hhs-btn {
    position: absolute;
    margin-top: -65px;
}

.hhs-banner.slide-6{
    background-position-y: 40% !important;
}

.hhs-banner.slide-5{
    background-repeat: no-repeat !important;
    background-size: cover !important;
    background-position-y: 70% !important;
    background-position-x: 100% !important;
    background-size: 117% !important;
}
.hhs-banner.slide-4 {
    background-repeat: no-repeat !important;
    background-size: cover !important;
    background-position-y: 75% !important;
    background-position-x: 100% !important;
    background-size: 125% !important;
}

/* .slide-6 .hhs-banner__content, .slide-5 .hhs-banner__content{
    margin-bottom: 20% !important;
    /* margin-top: -17%; 
 } */
 .slide-4 .hhs-banner__content {
     margin-bottom: 12% !important;
    margin-top: 2%;
 }

/* ==========================================================
   Button
   ========================================================== */

.hhs-btn {
    position: absolute;
    display: inline-flex;
    align-items: center;
    gap: 14px;

    padding: 14px 24px;

    border: 2px solid var(--hhs-orange);

    color: #fff;
    text-decoration: none;
    text-transform: uppercase;

    font-size: 14px;
    font-weight: 700;
    letter-spacing: .08em;
    bottom: -40px;
    transition: .3s;
}

.hhs-btn svg {
    width: 18px;
    height: 18px;
    transition: .3s;
}

.hhs-btn:hover {
    background: var(--hhs-orange);
    color: #fff;
}

.hhs-btn:hover svg {
    transform: translateX(4px);
}

/* ==========================================================
   Video Card
   ========================================================== */

.hhs-video-card {
    position: absolute;
    right: -10px;
    bottom: 0;
    z-index: 10;
}

.hhs-video-trigger {
    display: block;
    text-decoration: none;
    color: #fff;
}

.hhs-video-card__inner {

    width: 450px;
    height: 270px;

    border-radius: 70px 0px 0 0;

    background: #fff;

    padding: 14px;

    box-sizing: border-box;

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

    position: relative;

   
}

/* preview background */

/* .hhs-video-preview {

    position: absolute;

    inset: 30px;

    inset: 35px;
    width: calc(100% - 70px) !important;

    height: auto !important;

    object-fit: cover;

    border-radius: 45px;

} */

.hhs-video-card__play {

    position: relative;
    z-index: 3;

    width: 64px;
    height: 64px;

    border-radius: 50%;

    background: rgba(255, 255, 255, .95);

    display: flex;
    align-items: center;
    justify-content: center;
    top:15px;
    color: var(--hhs-orange);

    box-shadow: 0 10px 25px rgba(0, 0, 0, .2);

    transition: .3s;
}

.hhs-video-card__play svg {
    width: 26px;
    height: 26px;
    margin-left: 4px;
}

.hhs-video-card__content {
    display: none;
}

.hhs-video-trigger:hover .hhs-video-card__play {
    transform: scale(1.08);
}

/* ==========================================================
   Pagination
   ========================================================== */

.hhs-swiper .swiper-pagination {

    position: absolute;

    left: 60px;
    bottom: 34px;

    width: auto;

    display: flex;
    gap: 10px;

    z-index: 20;
}

.hhs-swiper .swiper-pagination-bullet {

    width: 12px;
    height: 12px;

    opacity: 1;

    margin: 0 !important;

    background: #ffffff55;

    transition: .3s;
}

.hhs-swiper .swiper-pagination-bullet-active {
    background: var(--hhs-orange);
    transform: scale(1.15);
}

/* ==========================================================
   Lightbox
   ========================================================== */

.hhs-lightbox {

    position: fixed;
    inset: 0;

    display: none;

    align-items: center;
    justify-content: center;

    z-index: 9999;
}

.hhs-lightbox.active {
    display: flex;
}

.hhs-lightbox__overlay {

    position: absolute;
    inset: 0;

    background: rgba(0, 0, 0, .75);
}

.hhs-lightbox__container {

    position: relative;

    width: min(900px, 92vw);

    z-index: 2;
}

.hhs-lightbox__video {

    width: 100%;
    display: block;
    border-radius: 16px;
    background: #000;
}

.hhs-lightbox__close {

    position: absolute;
    top: -44px;
    right: 0;
    color:#d68b13 !important;
    border: none;
    cursor: pointer;

    border-radius: 50%;

    background: #fff;

    font-size: 24px !important;
    line-height: 1;
}

/* ==========================================================
   Responsive
   ========================================================== */

@media (max-width:1440px) {

    .hhs-banner {
        min-height: 450px;
        background-position: center !important;
    }

    .slide-2 .hhs-banner__content{
        margin-top:0%;
    }
    .hhs-banner__content {
        margin-left: 46%;
        margin-top:8%;
    }

    .hhs-heading {
        font-size: 50px;
    }

    .hhs-video-card__inner{
        width: 250px;
        height: 150px;
        border-radius: 26px 0px 0 0;
    }

    .hhs-video-preview.hhs-video-preview{
        inset: 20px;
        width: calc(100% - 40px) !important;
        border-radius: 20px !important;
    }

    .hhs-heading__title,
    .page-id-1011 .hhs-heading__subtitle {
        font-size: 16px !important;
        line-height: 1.0 !important;
        width: auto;
        margin-bottom: 5px;
    }

    .page-id-1011 .hhs-heading__highlight {
        width: fit-content;
        line-height: 1.0;
    }

    .hhs-btn {
        font-size: 12px !important;
        padding: 10px 5px !important;
        gap: 0px !important;
        bottom: -10px;
      
    }

    .hhs-banner__content {
        bottom: 40px;
    }

    .slide-2.hhs-banner .hhs-btn {
        bottom: -30px;
        position: relative !important;
        margin-top: 0;
    }

    .slide-1 .hhs-btn {
      
        position: absolute !important;
       
    }

    .hhs-banner.slide-4 {
        background-repeat: no-repeat !important;
        background-size: cover !important;
        background-position-y: 70% !important;
        background-position-x: 100% !important;
        background-size: 120% !important;
    }

    .slide-2 .hhs-heading,
    .slide-4 .hhs-heading,
    .slide-5 .hhs-heading,
    .slide-6 .hhs-heading {
        flex-direction: column;
    }

    .slide-4 .hhs-heading__row,.slide-3 .hhs-heading__row{
        flex-direction: column !important;
    }
    .slide-4 .hhs-heading__highlight, .slide-5 .hhs-heading__highlight,.slide-6 .hhs-heading__highlight,.slide-3 .hhs-heading__highlight{
        margin-left:0px;
    }

    .slide-4 .hhs-btn, .slide-5 .hhs-btn, .slide-6 .hhs-btn{
        position: relative;
        margin-top:0;
        bottom: 0;
    }

    .slide-1 .hhs-banner__content{
        margin-top:0;
    }

    .slide-4 .hhs-banner__content ,.slide-5 .hhs-banner__content, .slide-6 .hhs-banner__content{
        margin-bottom: 0 !important;
        margin-left:60%;
    }

    .slide-4 .hhs-banner__content {
        margin-left: 52%;
    }

    .hhs-banner.slide-5{
        background-position: center !important;
        background-size:cover !important;
    }
  
    .slide-5 .hhs-heading__row, .slide-6 .hhs-heading__row{
        flex-direction: column;
    }
    
}



@media (max-width:1024px) {

    .hhs-banner {
        min-height: 500px;
    }

    .hhs-banner__content {

        margin: 70px 40px 0;
        margin-left:35%;
        transform: none;

        max-width: 100%;
    }

     
    .slide-4 .hhs-banner__content,
    .slide-5 .hhs-banner__content,
    .slide-6 .hhs-banner__content{
        margin-left: 40%;
    }

    .hhs-heading {
        font-size: 42px;
    }

    .hhs-heading__highlight{
        font-size: 52px;
        margin-left: 0;
    }
    .hhs-video-card {

        right: 24px;
        left: 24px;

        bottom: 24px;
    }

    .hhs-video-card__inner {
        width: 250px;
        max-width: 340px;
        margin-left: auto;
    }

    .slide-1 .hhs-btn, .slide-3 .hhs-btn{
        position: relative !important;
        display: inline;
    }

    .hhs-heading__row {
        display: flex;
       flex-direction: column;
    }

}

@media (max-width:767px) {

    .hhs-banner {
      
        align-items: flex-start;
     
        background-image: var(--hhs-mobile-bg) !important;
        border-radius: 22px 22px 22px 22px;
        min-height: 750px;
    }

    .hhs-banner.slide-5{
        background-position: top !important;
    }
    .hhs-banner__content {
        margin: 40px 24px;
        display: flex;
        align-items:flex-start;
        flex-direction: column;
        margin-top: 78%;
        padding:20px;
    }

    .slide-1 .hhs-banner__content, .slide-2 .hhs-banner__content{
        margin-top: 78%;
    }
    .hhs-heading__row{
        align-items: center;
        flex-direction: column;
        gap: 20px;
    }

    .hhs-title {
        font-size: 16px;
        margin-left: 16px;
        font-weight: 500;
       margin-bottom: 5px;
    }

    .hhs-heading__title{
        text-align: center !important;
    }

    .hhs-heading {
        font-size: 34px;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        margin-left:16px;
    }

    .slide-2.hhs-banner .hhs-btn{
        bottom:-10px;
    }
    .slide-4 .hhs-btn,
    .slide-5 .hhs-btn,
    .slide-6 .hhs-btn{
        bottom: -10px;
    }
    .hhs-btn {
        padding: 12px 18px;
        font-size: 12px;
        position: relative !important;
        align-self: flex-start;
    }

    .hhs-banner__img{
        border-radius: 20px !important;
        height: 600px !important;
    }
    .hhs-video-preview{
            inset: unset !important;
            width: calc(100% - 40px) !important;
    }
    .hhs-video-card {

        left: 16px;
        right: 16px;
        bottom: 16px;
    }

    .hhs-video-card__inner {

        width: 100%;
        height: 180px;
        border-radius: 18px;
        margin: 0 auto;
        max-width: 100%;
        background :none ;
        overflow: auto;
        inset:unset !important;
        height: 250px;

    }

    .hhs-swiper .swiper-pagination {

        left: 24px;
        bottom: 24px;
    }

    .hhs-heading__highlight{
        font-size:24px;
        line-height:1.1 !important;
        font-weight: 600;
    }

    .hhs-heading__title,
    .hhs-heading__subtitle {
        font-size: 16px !important;
        line-height: 1.0 !important;
        width: auto;
        font-weight: 500;
        margin-bottom: 5px;
    }

    .hhs-heading__highlight {
        width: fit-content;
        line-height: 1.3;
        text-align: left;
    }

    .hhs-btn {
        font-size: 14px !important;
        padding: 10px 20px !important;
        gap: 0px !important;
        position: absolute;
        width: 100%;
        text-align: center;
        display: inline;
    }

    .hhs-banner__content {
        bottom: 40px;
    }

        .slide-4 .hhs-banner__content,
        .slide-5 .hhs-banner__content,
        .slide-6 .hhs-banner__content{
          margin:0;
          margin-top:78%;
          padding: 40px;

        }

    .hhs-banner{
        background-repeat: no-repeat !important;
        background-position: unset !important;
    }

    .hhs-banner.slide-4,.hhs-banner.slide-6{
        background-repeat: no-repeat !important;
        background-position: top !important;
        background-size: cover !important;
    }


}

/* Banner slide slides */

/* ==========================================================
   GLOBAL VIDEO POSITION
   ========================================================== */

/*
 * Global video is outside .swiper-wrapper.
 * Keep it positioned relative to the slider.
 */

.hhs-swiper {
    position: relative;
}

.hhs-video-card--global {
    position: absolute;
    right: -10px;
    bottom: 0;
    z-index: 50;
}


/* ==========================================================
   GLOBAL VIDEO - RESPONSIVE
   ========================================================== */

@media (max-width: 991px) {
    

    .hhs-video-card--global {
        right: -1px;
        left: auto;
        bottom: 0;
    }

    .hhs-video-preview.hhs-video-preview{
        inset: 20px;
    }
}

@media (max-width: 767px) {

 
    .hhs-video-card--global {
        left: 16px;
        right: 16px;
        bottom: 16px;
    }

}

@media (max-width: 480px) {

    .hhs-video-card--global {
        left: 12px;
        right: 12px;
        bottom: 12px;
    }

}


/* ==========================================================
   YOUTUBE / VIMEO LIGHTBOX
   ========================================================== */

.hhs-lightbox {
    position: fixed;
    inset: 0;

    display: none;

    align-items: center;
    justify-content: center;

    padding: 30px;

    box-sizing: border-box;

    z-index: 999999;
}

.hhs-lightbox.active {
    display: flex;
}


/* Background */

.hhs-lightbox__overlay {
    position: absolute;
    inset: 0;

    background: rgba(0, 0, 0, 0.82);
}


/* Video container */

.hhs-lightbox__container {
    position: relative;

    width: min(1000px, 92vw);

    z-index: 2;
}


/* Responsive 16:9 video */

.hhs-lightbox__video-wrap {
    position: relative;

    width: 100%;

    aspect-ratio: 16 / 9;

    overflow: hidden;

    background: #000;

    border-radius: 16px;
}


/* YouTube / Vimeo iframe */

.hhs-lightbox__iframe {
    position: absolute;

    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    display: block;

    border: 0;
}


/* Close button */

.hhs-lightbox__close {
    position: absolute;

    top: -48px;
    right: 0;

    z-index: 10;

    border: none;
    border-radius: 50%;

    background: #ffffff;

    color: #000 !important;

    font-size: 25px !important;
    line-height: 1;

    cursor: pointer;
}


/* Prevent page scrolling */

body.hhs-lightbox-open {
    overflow: hidden;
}
/* Video thumbnail */

/* Video thumbnail */

.hhs-video-card__inner {
    overflow: hidden;
}

.hhs-video-preview {
    position: absolute;
    display: block;
    object-fit: cover;

    border-radius: 40px !important;

    z-index: 1;
    width: calc(100% - 40px) !important;

    border-radius: 60px !important;
    inset: 25px;
}

/* Keep play button above thumbnail */

.hhs-video-card__play {
    position: relative;
    z-index: 2;
}

/* ==========================================================
   LIGHTBOX MOBILE
   ========================================================== */

@media (max-width: 767px) {

    .hhs-lightbox {
        padding: 16px;
    }

    .hhs-lightbox__container {
        width: 100%;
    }

    .hhs-lightbox__video-wrap {
        border-radius: 10px;
    }

    .hhs-lightbox__close {
        top: -44px;
        right: 0;
    }

.hhs-video-preview {

    border-radius: 32px !important;
    width: 100% !important;
}
.hhs-video-card__play {
    position: relative;
    z-index: 2;
}
    
}

/* ==========================================================
   MOBILE – KEEP CONTENT + GLOBAL VIDEO AT BOTTOM
   Add this at the END of your CSS
   ========================================================== */

@media (max-width: 767px) {

    /* Reserve space for the global video */
    .hhs-swiper {
        --hhs-global-video-height: 250px;
        --hhs-global-video-gap: 24px;
    }

    .hhs-banner {
        position: relative;
        display: block;
        min-height: 750px;

        /* Keep your mobile background image */
        background-image: var(--hhs-mobile-bg) !important;
        background-size: cover !important;
    }


    /* ======================================================
       BANNER CONTENT
       ====================================================== */

    .hhs-banner__content,
    .slide-1 .hhs-banner__content,
    .slide-2 .hhs-banner__content,
    .slide-3 .hhs-banner__content,
    .slide-4 .hhs-banner__content,
    .slide-5 .hhs-banner__content,
    .slide-6 .hhs-banner__content {

        position: absolute !important;

        left: 0;
        right: 0;

        /*
         * Content always sits above the global video.
         */
        bottom: calc(var(--hhs-global-video-height) + var(--hhs-global-video-gap)) !important;

        margin: 0 !important;

        transform: none !important;

        width: auto;

        padding: 20px 24px !important;

        display: flex;
        flex-direction: column;
        align-items: flex-start;

        z-index: 20;
    }


    /* Remove all percentage-based positioning */
    .hhs-banner__content {
        margin-top: 0 !important;
    }


    /* ======================================================
       BUTTON
       ====================================================== */

    .hhs-banner__content .hhs-btn,
    .slide-1 .hhs-btn,
    .slide-2 .hhs-btn,
    .slide-3 .hhs-btn,
    .slide-4 .hhs-btn,
    .slide-5 .hhs-btn,
    .slide-6 .hhs-btn {

        position: relative !important;

        bottom: auto !important;

        margin-top: 12px !important;

        width: 100%;

        box-sizing: border-box;

        align-self: flex-start;
    }


    /* ======================================================
       GLOBAL VIDEO
       ====================================================== */

    .hhs-video-card--global {

        position: absolute;

        left: 16px;
        right: 16px;

        bottom: 16px;

        z-index: 50;
    }


    .hhs-video-card--global .hhs-video-card__inner {

        width: 100%;

        height: var(--hhs-global-video-height);

        margin: 0;

        box-sizing: border-box;

        overflow: hidden;
    }


    /* ======================================================
       PAGINATION
       Keep above the video if required
       ====================================================== */

    .hhs-swiper .swiper-pagination {

        bottom: calc(var(--hhs-global-video-height) + var(--hhs-global-video-gap) + 10px);

        z-index: 60;
    }

}


/* ==========================================================
   SMALL MOBILE SCREENS
   ========================================================== */

@media (max-width: 480px) {

    .hhs-swiper {
        --hhs-global-video-height: 220px;
        --hhs-global-video-gap: 20px;
    }

    .hhs-video-card--global {

        left: 12px;
        right: 12px;
        bottom: 12px;
    }

    .hhs-banner__content,
    .slide-1 .hhs-banner__content,
    .slide-2 .hhs-banner__content,
    .slide-3 .hhs-banner__content,
    .slide-4 .hhs-banner__content,
    .slide-5 .hhs-banner__content,
    .slide-6 .hhs-banner__content {

        padding: 16px 40px !important;
    }

}


/* ==========================================================
   FIX LARGE DESKTOP SCREENS
   Keep banner content position consistent above 1920px
   ========================================================== */

/* ==========================================================
   DESKTOP CONTENT POSITION
   ========================================================== */

@media (min-width: 1441px) {

    .hhs-banner__content {
        position: absolute;
        z-index: 5;

        left: 43%;
        top: 42%;

        width: auto;
        margin: 0;

        transform: translateY(-50%);
    }

}