/* Finelights Hero v1.1 */
.flh-hero{
    position:relative;
    width:100%;
    height:100vh;
    min-height:700px;
    overflow:hidden;
    font-family:'Poppins',sans-serif;
}
.flh-bg{
    position:absolute;
    inset:0;
    background-size:cover;
    background-position:center;
    transition:opacity 1s ease;
}
.flh-bg-off{opacity:1;}
.flh-bg-on{opacity:0;}
.flh-dark-overlay{
    position:absolute;
    inset:0;
    background:
      linear-gradient(90deg,rgba(0,0,0,.72) 0%,rgba(0,0,0,.45) 35%,rgba(0,0,0,.12) 60%,rgba(0,0,0,0) 100%);
    z-index:2;
}
.flh-content{
    position:relative;
    z-index:5;
    max-width:650px;
    padding:8% 0 0 8%;
    color:#fff;
}
.flh-logo{
    font-size:14px;
    letter-spacing:6px;
    text-transform:uppercase;
    color:#d6b06d;
    margin-bottom:25px;
}
.flh-title{
    font-size:62px;
    padding-top:70px;
    line-height:.95;
    font-weight:300;
    margin:0 0 40px;
}
#flh-word{
    background:linear-gradient(#ffe3a1,#d39b2e);
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
    display:inline-block;
    transition:.5s;
}
.flh-switch-wrapper{
    display:flex;
    align-items:center;
    gap:16px;
    margin:35px 0;
}
.flh-label{
    color:#fff;
    font-size:14px;
    letter-spacing:2px;
    font-weight:600;
}
.flh-switch{
    position:relative;
    width:74px;
    height:38px;
    display:inline-block;
}
.flh-switch input{display:none;}
.flh-slider{
    position:absolute;
    inset:0;
    background:#555;
    border-radius:30px;
    cursor:pointer;
    transition:.4s;
    box-shadow:0 0 0 rgba(255,202,77,0);
}
.flh-slider:before{
    content:"";
    position:absolute;
    width:30px;
    height:30px;
    left:4px;
    top:4px;
    background:#fff;
    border-radius:50%;
    transition:.4s;
}
.flh-switch input:checked + .flh-slider{
    background:#d4a040;
}
.flh-switch input:checked + .flh-slider:before{
    transform:translateX(36px);
}
.glow-switch{
    animation:pulseGlow 2s infinite;
}
.glow-switch.stop-glow{
    animation:none;
}
@keyframes pulseGlow{
    0%,100%{filter:drop-shadow(0 0 0 rgba(255,200,80,0));}
    50%{filter:drop-shadow(0 0 12px rgba(255,200,80,.9));}
}
.flh-button{
    display:inline-block;
    margin-top:10px;
    padding:16px 34px;
    border:2px solid #d6b06d;
    color:#fff;
    text-decoration:none;
    text-transform:uppercase;
    letter-spacing:2px;
    border-radius:40px;
    transition:.35s;
}
.flh-button:hover{
    background:#d6b06d;
    color:#111;
    transform:translateY(-3px);
    box-shadow:0 12px 30px rgba(214,176,109,.35);
}
/* ===============================
   Tablet
================================ */

@media (max-width:1024px){

    .flh-content{
        max-width:550px;
        padding:80px 40px;
    }

    .flh-title{
        font-size:58px;
        line-height:1;
    }

}

/* ===============================
   Mobile
================================ */

@media (max-width:767px){

    .flh-hero{

        min-height:720px;
        height:auto;

    }

    .flh-dark-overlay{

        background:linear-gradient(
            180deg,
            rgba(0,0,0,.72) 0%,
            rgba(0,0,0,.55) 40%,
            rgba(0,0,0,.20) 100%
        );

    }

    .flh-content{

        max-width:100%;

        padding:70px 25px 60px;

        display:flex;

        flex-direction:column;

        justify-content:center;

    }

    .flh-logo{

        font-size:12px;

        letter-spacing:4px;

        margin-bottom:18px;

    }

    .flh-title{

        font-size:32px;

        line-height:1.05;

        padding-top:120px;

        margin-bottom:25px;

    }

    .flh-switch-wrapper{

        gap:12px;

        margin:20px 0 30px;

    }

    .flh-label{

        font-size:12px;

    }

    .flh-switch{

        width:68px;

        height:34px;

    }

    .flh-slider:before{

        width:26px;

        height:26px;

    }

    .flh-switch input:checked + .flh-slider:before{

        transform:translateX(34px);

    }

    .flh-button{

        display:block;

        width:100%;

        text-align:center;

        padding:16px 20px;

        font-size:13px;

        letter-spacing:1px;

    }

}
