html {
    position: relative;
    height: 100%;
    scroll-behavior: smooth;
}
body{
    font-family: "Roboto", sans-serif;
    overflow-x: hidden;
    padding: 0px;
    margin: 0px;
    background-color: #FFFFFF;
    font-size: 18px;
    font-weight: 400;
    color: #000000;
}
a, a:hover{
    color: inherit;
    text-decoration: none;
    transition: all 0.3s ease-in-out;
}

p{
    line-height: 28px;
}

.btn:focus{
    box-shadow: none;
}

:root {
    --primary: #A6192E;
    --secondary: #1077BA;
    --yellow: #FFC000;
    --white: #ffffff;
    --black: #000000;
}

.container{
    padding-left: 20px !important;
    padding-right: 20px !important;
}

@media (min-width: 576px){
    .header .container, 
    .subscribe-sec .container, 
    .container.cust-container{
        max-width: 718px;
    }
}

@media (min-width: 768px){
    .header .container, 
    .subscribe-sec .container, 
    .container.cust-container{
        max-width: 890px;
        padding-left: 30px;
        padding-right: 30px;
    }
}

@media (min-width: 992px){
    .header .container, 
    .subscribe-sec .container, 
    .container.cust-container{
        max-width: 1100px;
    }
}

@media (min-width: 1200px){
    .header .container, 
    .subscribe-sec .container, 
    .container.cust-container{
        max-width: 1300px;
    }
}

@media (min-width: 1470px){
    .header .container, 
    .subscribe-sec .container, 
    .container.cust-container{
        max-width: 1500px;
    }
    .container{
        max-width: 1206px;
    }
}

/*Header*/
.header{
    background: transparent;
    z-index: 9;
    width: 100%;
    transition: all 0.3s ease-in-out;
    position: fixed;
    top: 0px;
    left: 0px;
}
.header.sticky-bar{
    background-color: var(--white);
}

/*Main Nav*/
.main-nav{
    padding: 14px 0px;
    width: 100%;
    transition: all 0.3s ease-in-out;
}
.header.sticky-bar .main-nav{
    padding: 10px 0px;
}
.navbar-nav{
    gap: 50px;
}
.logo{
    width: 120px;
    transition: all 0.5s ease-in-out;
}
.header.sticky-bar .logo{
    width: 80px;
}
.nav-link{
    display: block;
    text-decoration: none;
    transition: all 0.3s ease-in-out;
    color: var(--white);
    font-family: Oswald;
    font-size: 18px;
    font-weight: 500;
    line-height: normal;
    text-transform: uppercase;
    padding: 0px !important;
}
.header.sticky-bar .nav-link, 
.inner-page .nav-link{
    color: var(--black);
}
.nav-item .nav-link.active, 
.nav-item .nav-link:hover{
    color: var(--yellow);
}
.header.sticky-bar .nav-item .nav-link.active, 
.header.sticky-bar .nav-item .nav-link:hover, 
.inner-page .nav-item .nav-link.active, 
.inner-page .nav-item .nav-link:hover{
    color: var(--primary);
}
.btn-theme{
    padding: 11px 40px;
    border-radius: 0px;
    background-color: var(--primary);
    color: var(--white);
    font-family: Oswald;
    font-size: 18px;
    font-weight: 600;
    line-height: 26px;
    text-transform: uppercase;
    transition: all 0.3s ease-in-out;
    border: 0px !important;
}
.header .btn-theme{
    padding: 12px 40px;
    font-size: 16px;
    line-height: normal;
}
.btn-theme:hover, 
.btn:first-child:active{
    background-color: var(--yellow);
    color: var(--black);
}

#navbar-hamburger.show{
    display: block;
}
#navbar-hamburger, #navbar-close{
    display: none;
}
#navbar-close.show{
    display: block;
}          
.navbar-toggler:focus {
    text-decoration: none;
    outline: 0;
    box-shadow: 0 0 0 0rem;
}

/* close */
.navbar-toggler{
    padding: 0px;
    border: 0px;
    display: flex;
}
.menu_toggle{
    width: 23px !important;
    height: 23px;
    display: inline-flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
    cursor: pointer;
    transition: all 0.2s ease-in;
    text-align: left;
    position: relative;
    right: 0;
    top: 0px;
    z-index: 90;
    border-radius: 3px;
    line-height: 0px;
    align-items: flex-end;
}
.menu_toggle span {
    height: 3px;
    width: 100%;
    background: var(--white);
    display: inline-block;
    transition: all 0.5s cubic-bezier(.62, .43, .35, 1.47);
    margin: 2px 0px;
}
.inner-page .menu_toggle span{
    background: var(--black);
}
.header.sticky-bar .menu_toggle span, 
.header.menu-open .menu_toggle span{
    background: var(--black);
}

/* toggle icon animation */
/*#check1:checked~.menu_toggle span:nth-child(1) {
    width: 90%;
    transform: rotate(45deg) translateY(6px) translateX(6px);
}

#check1:checked~.menu_toggle span:nth-child(2) {
    width: 0;
}

#check1:checked~.menu_toggle span:nth-child(3) {
    width: 90%;
    transform: rotate(-45deg) translateY(-4px) translateX(4px);
}
#check1{
    display: none;
}*/


/*Home Page CSS*/
/*Hero Section*/
.hero-sec{
    width: 100%;
    height: 100vh;
    background-size: cover;
    background-position: center;
    background-color: #000;
    position: relative;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    overflow: hidden;
}
.hero-video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    z-index: 0;
}

/* Hero crop focus helpers */
.hero-pos-center .hero-video,
.hero-pos-center .hero-image{
    object-position: center center;
}
.hero-pos-top .hero-video,
.hero-pos-top .hero-image{
    object-position: center 28%;
}
.hero-pos-upper .hero-video,
.hero-pos-upper .hero-image{
    object-position: center 40%;
}
.hero-pos-lower .hero-video,
.hero-pos-lower .hero-image{
    object-position: center 65%;
}
.hero-pos-right .hero-video,
.hero-pos-right .hero-image{
    object-position: 78% center;
}
.hero-pos-left .hero-video,
.hero-pos-left .hero-image{
    object-position: 22% center;
}
/*.hero-sec::after{
    content: '';
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.20) 19.87%, rgba(255, 255, 255, 0.91) 100%);
    position: absolute;
    top: 0;
    left: 0;
}*/
.hero-content{
    padding-bottom: 70px;
}
.hero-title{
    color: var(--primary);
    text-align: center;
    font-family: Oswald;
    font-size: 60px;
    font-weight: 600;
    line-height: 80px;
    margin-bottom: 0px;
}


/*Welcome*/
.sec-pad{
    padding: 80px 0;
}
.welcome p{
    max-width: 1060px;
    text-align: center;
    margin: 0 auto 16px;
}
.welcome p:last-child{
    margin-bottom: 0px;
}


/*How We Make a Difference*/
.hwmd-sec{
    padding: 68px 0;
    background-color: var(--secondary);
}
.hwmd{
    display: flex;
    align-items: stretch;
    justify-content: center;
    gap: 12px;
    margin-top: 40px;
}
.hwmd-box{
    flex: 1;
    min-width: 230px;
    max-width: 230px;
    height: 230px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 17px;
    background-color: var(--white);
    border-radius: 50%;
    transition: all 0.3s ease-in-out;
}
.hwmd-box:hover{
    background-color: var(--primary);
}
.hwmd-box .hwmd-img-box{
    text-align: center;
    width: 96px;
    height: 96px;
    position: relative;
}
.hwmd-box .hwmd-img-box .red{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    opacity: 1;
    visibility: visible;
    transition: all 0.3s ease-in-out;
}
.hwmd-box .hwmd-img-box .white{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease-in-out;
}
.hwmd-box:hover .hwmd-img-box .white{
     opacity: 1;
    visibility: visible;
}
.hwmd-box:hover .hwmd-img-box .red{
    opacity: 0;
    visibility: hidden;
}
.hwmd-box .hwmd-img-box .white{
    opacity: 0;
    visibility: hidden;
}
.sub-title{
    color: var(--black);
    font-family: Oswald;
    font-size: 22px;
    font-weight: 700;
    line-height: normal; 
    margin-bottom: 0px;          
}
.hwmd-box .sub-title{
    text-align: center;            
}
.hwmd-box:hover .sub-title{
    color: var(--white);           
}


/*Join us in spreading joy!*/
.join-us-sec{
    padding: 54px 0;
    background-color: var(--secondary);
}
.join-us-sec .title{
    color: white !important;
}
.join-us-box{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}
.join-us-box .title{
    color: var(--black);
}
.join-us-sec .btn.btn-join{
 background-color: var(--yellow);
 color: var(--black);
 transition: all 0.3s ease-in-out;
}
.btn-join{
    padding: 20px 40px;
    background-color: var(--primary);
    color: var(--white);
    font-family: Oswald;
    font-size: 24px;
    font-weight: 600;
    line-height: 28px;
    text-transform: uppercase;
    border-radius: 0px;
    border: 0px !important;
    transition: all 0.3s ease-in-out;
}
.btn-join:hover{
    background-color: var(--black);
    color: var(--white);
}
.join-us-sec .btn.btn-join:hover{
 background-color: var(--black);
 color: var(--white);
}


/*About The Foundation*/
.video-wrapper{
    position: relative;
    width: 100%;
    height: 100%;
}
.video-wrapper iframe{
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}
.btn-box{
    margin-top: 30px;
}
.content-side{
    padding-left: 80px;
    padding-top: 90px;
    padding-bottom: 90px;
    padding-right: max(30px, calc((100vw - 1500px) / 2));
}
.title{
    color: var(--primary);
    font-family: Oswald;
    font-size: 46px;
    font-weight: 500;
    line-height: 59px;
}


/*What We Do Page CSS*/
.inner-hero-sec{
    padding: 158px 0 60px;
}
.inner-hero-content{
    padding-top: 10px;
}
.content-side.left{
    padding-right: 80px;
    padding-top: 139px;
    padding-bottom: 139px;
    padding-left: max(30px, calc((100vw - 1206px) / 2));
}
.img-box{
    width: 100%;
    height: 100%;
}
.img-box img{
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: center;
}


/*4 Box Section*/
.sec-pad2{
    padding: 60px 0;
}
.hefb-box{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 24px;
}
.sub-title2{
    color: var(--primary);
    font-family: Oswald;
    font-size: 28px;
    font-weight: 500;
    line-height: normal;
    margin-bottom: 0px;
}
.hefb-box .sub-title2{
    text-align: center;
    transition: all 0.3s ease-in-out;
}
.pri-color{
    color: var(--primary) !important;
}
.hefb-box .learn-more{
    color: var(--primary);
    text-align: center;
    transition: all 0.3s ease-in-out;
}
.hefb-box:hover .learn-more, 
.hefb-box:hover .sub-title2{
    color: var(--black);
}


/*Logasn's Story Page Css*/
.gap-80{
    --bs-gutter-x: 80px;
    --bs-gutter-y: 80px;
}
.ltn-ul{
    list-style: none;
    padding-left: 0px;
    margin-bottom: 0px;
    display: flex;
    flex-direction: column;
    gap: 18px;
}
.ltn-ul a{
    display: flex;
    align-items: flex-start;
    gap: 10px;
    color: var(--primary);
    font-family: Oswald;
    font-size: 22px;
    font-style: normal;
    font-weight: 400;
    line-height: 28px;
    transition: all 0.3s ease-in-out;
}
.ltn-ul a:hover{
    color: var(--black);
}
.ltn-ul a svg{
    margin-top: 3px;
}
.ltn-ul a svg path{
    transition: all 0.3s ease-in-out;
}
.ltn-ul a:hover svg path{
    stroke: var(--black);
}

.sub-title3{
    color: var(--primary);
    font-family: Oswald;
    font-size: 24px;
    font-style: normal;
    font-weight: 600;
    line-height: 28px;
    margin-bottom: 10px;  
}
.ci-sec{
    display: flex;
    align-items: stretch;
    justify-content: center;
    gap: 24px;
}
.ci-box{
    width: 100%;
    height: 100%;
    border-radius: 20px;
    border: 2px solid var(--primary);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 24px;
    padding: 20px;
    width: 250px;
    transition: all 0.3s ease-in-out;
}
.ci-box .sub-title3{
    text-align: center;
    margin-bottom: 12px;
}
.ci-box p{
    font-weight: 600;
    text-align: center;
    margin-bottom: 0px;
}
.ci-box:hover{
    box-shadow: 0px 0px 10px 0px #00000066;
}


/*Get Involved Page Css*/
.gi-donate-sec{
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
}
.donate-box{
    width: calc((100% - 48px) / 3);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 24px;
}
.donate-box p{
    text-align: center;
    font-size: 16px;
    margin-bottom: 10px;
}
.donate-box h3{
    text-align: center;
    margin-bottom: 0px;
    transition: all 0.3s ease-in-out;
}
a.donate-box:hover h3{
    color: var(--black);
}
.btn-vol{
    display: inline-flex;
    align-items: center;
    gap: 10px;
}
.btn-vol svg path{
    transition: all 0.3s ease-in-out;
}
.btn-vol:hover svg path{
    fill: var(--black);
}


/*Student Awards Page Css*/
.sa-img-box{
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 10px;
    padding: 20px;
    border-radius: 20px;
    border: 2px solid var(--primary);
}
.sa-title{
    color: var(--primary);
    text-align: center;
    font-family: Oswald;
    font-size: 42px;
    font-weight: 600;
    line-height: normal;
}


/*Event Dances Page Css*/
.ed-ul{
    list-style: none;
    padding-left: 0px;
    margin-bottom: 16px;
    display: flex;
    justify-content: space-between;
    gap: 20px;
}
.ed-ul li{
    display: flex;
    align-items: flex-start;
    text-align: left;
    gap: 4px;
    color: var(--primary);
    font-size: 18px;
    font-weight: 600;
    line-height: 28px;
}
.ed-ul li::before{
    content: '';
    min-width: 9px;
    height: 9px;
    background-color: var(--primary);
    border-radius: 50%;
    margin-top: 9px;
}
.ed-link-sec{
    padding: 0 60px;
}
.ed-link-box{
    padding: 28px 24px;
    border-radius: 20px;
    background: var(--secondary);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 20px;
    min-height: 280px;
    height: 100%;
    text-align: center;
    transition: all 0.3s ease-in-out;
}
.ed-link-box img{
    max-width: 90px;
    width: 100%;
    height: auto;
}
.ed-link-box:hover{
    background-color: #0c5f96;
}
.ed-link-box .sub-title3{
    color: var(--white);
    margin-bottom: 6px;
}
.ed-link-box .ed-link-text{
    color: var(--white);
    font-weight: 600;
}
.ed-link-box.disable{
    pointer-events: none;
    background: linear-gradient(0deg, #FFFFFF33 0%, #FFFFFF33 100%), var(--secondary);
}
.ed-reg-open{
    display: inline-block;
    margin-top: 12px;
    padding: 8px 16px;
    background-color: var(--yellow);
    color: var(--black);
    font-family: Oswald, sans-serif;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.2;
    text-transform: uppercase;
    letter-spacing: 0.02em;
}
.ed-reg-cta{
    margin-top: 8px;
    color: var(--yellow);
    font-family: Oswald, sans-serif;
    font-size: 18px;
    font-weight: 600;
    text-transform: uppercase;
}

/* Homepage LovisFrost promo popup */
#lovisFrostModal{
    z-index: 1060;
}
.lovisfrost-popup-content{
    box-shadow: none;
}
.lovisfrost-popup{
    position: relative;
    background: var(--secondary);
    border-radius: 20px;
    padding: 36px 28px 32px;
    text-align: center;
    color: var(--white);
    max-width: 420px;
    margin: 0 auto;
}
.lovisfrost-popup-close{
    position: absolute;
    top: 14px;
    right: 14px;
    opacity: 0.9;
    z-index: 2;
}
.lovisfrost-popup-balloon{
    max-width: 90px;
    margin: 0 auto 16px;
    display: block;
}
.lovisfrost-popup-title{
    color: var(--white);
    font-family: Oswald, sans-serif;
    font-size: 32px;
    font-weight: 600;
    line-height: 1.2;
    text-transform: uppercase;
    margin-bottom: 10px;
}
.lovisfrost-popup-details{
    font-family: Oswald, sans-serif;
    font-size: 22px;
    font-weight: 600;
    line-height: 1.35;
    margin-bottom: 8px;
}
.lovisfrost-popup .ed-reg-open{
    margin-top: 14px;
    margin-bottom: 18px;
}
.lovisfrost-popup-actions{
    display: flex;
    flex-direction: column;
    gap: 10px;
    align-items: center;
}
.lovisfrost-btn-register{
    background-color: var(--yellow);
    color: var(--black);
    font-family: Oswald, sans-serif;
    font-size: 20px;
    font-weight: 700;
    text-transform: uppercase;
    border-radius: 0;
    padding: 12px 28px;
    min-width: 220px;
    border: 0;
}
.lovisfrost-btn-register:hover{
    background-color: var(--black);
    color: var(--white);
}
.lovisfrost-btn-more{
    background: transparent;
    color: var(--yellow);
    font-family: Oswald, sans-serif;
    font-size: 18px;
    font-weight: 600;
    text-transform: uppercase;
    border: 2px solid var(--yellow);
    border-radius: 0;
    padding: 10px 28px;
    min-width: 220px;
}
.lovisfrost-btn-more:hover{
    background-color: var(--yellow);
    color: var(--black);
}
.text-yellow{
    color: var(--yellow) !important;
}
.roboto{
    font-family: "Roboto", sans-serif;
}


/*K9 Vest Page Css*/
.k9-protection-sec{
    display: flex;
    gap: 34px;
}
.k9-protection-sec .right-side{
    padding: 20px 0px 20px 34px;
    border-left: 2px solid #B5B5B5;
    display: flex;
    flex-direction: column;
    gap: 44px;
}


/*News Page Css*/
.news-box{
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.news-img-box{
    width: 100%;
    height: 340px;
    border: 1px solid #D0D0D0;
    overflow: hidden;
}
.news-img{
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    transition: all 0.5s ease-in-out;
}
.news-img-box:hover .news-img{
    transform: scale(1.05);
}
.news-info-sec{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}
.info-box{
    display: flex;
    align-items: center;
    gap: 6px;
    color: #5F5F5F;
    font-size: 16px;
    font-weight: 400;
    line-height: 28px;
}
.info-box img{
    margin-top: -2px;
}
.info-box .author{
    color: var(--primary);
    font-weight: 500;
}
.news-box .sub-title3{
    font-weight: 400;
    text-decoration: none;
    transition: all 0.3s ease-in-out;
    margin-bottom: 0px;
}
.news-box a.sub-title3:hover{
    color: var(--primary);
    text-decoration: underline;
}
.ellipse-three{
    display: -webkit-box;
    -webkit-line-clamp: 3; /* Number of lines */
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-bottom: 0px;
}
.btn-read-more{
    color: var(--primary) !important;
    font-family: Oswald;
    font-size: 18px;
    font-weight: 400;
    line-height: 28px;
    padding: 0px !important;
    border-radius: 0px !important;
    position: relative;
    background-color: transparent !important;
}
.btn-read-more::after{
    content: '';
    width: 15px;
    height: 15px;
    background-image: url(../../img/icons/right-arrow.svg);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 58%;
    right: 0;
    transform: translateY(-50%);
    transition: all 0.3s ease-in-out;
    opacity: 0;
    visibility: hidden;
}
.btn-read-more:hover::after{
    opacity: 1;
    visibility: visible;
    right: -20px;
}
.pagination-button-sec{
    display: flex;
    justify-content: center;
    align-items: stretch;
    gap: 8px;
}
.pagination-button-sec button{
    color: var(--white);
    font-family: Oswald;
    font-size: 18px;
    font-weight: 600;
    line-height: 28px;
    text-transform: uppercase;
    border: 0px;
    transition: all 0.3s ease-in-out;
    padding: 12px 21px;
}
.pagination-button-sec .prev-next{
    background-color: var(--primary);
}
.pagination-button-sec .prev-next:hover{
    background-color: var(--yellow);
    color: var(--black);
}
.pagination-button-sec .page-number{
    background-color: #A8A8A8;
}
.pagination-button-sec .page-number:hover,
.pagination-button-sec .page-number.active{
    background-color: var(--primary);
}


/*Who We Are Page Css*/
.max-width{
    max-width: 1035px;
    width: 100%;
    text-align: center;
}
.alf-video-box{
    max-width: 1106px;
    width: 100%;
    height: 527px;
    margin-bottom: 24px;
}
.alf-video-box iframe{
    width: 100%;
    height: 100%;
}
.team-main-box{
    display: flex;
    flex-direction: column;
    gap: 60px;
}
.team-main-box .title{
    text-align: center;
    margin-bottom: 30px;
}
.team-sec{
    display: flex;
    justify-content: center;
    gap: 30px;
}
.team-box{
    max-width: 276px;
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 10px;
    text-align: center;
}
.tb-2-row{
 display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
        max-width: 754px;
    margin: 0 auto;
}
.team-title{
    color: var(--primary);
    font-family: Oswald;
    font-size: 28px;
    font-weight: 500;
    line-height: 59px;
    margin-bottom: 0px;
}
.team-box .sub-title3, 
.team-popup .sub-title3{
    font-weight: 500;
    color: var(--black);
    margin-bottom: 0px;
}
.team-des{
    display: -webkit-box;
    -webkit-line-clamp: 3; /* Number of lines */
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-bottom: 0px;
}
.team-popup{
    display: flex;
    flex-direction: column;
    gap: 10px;
    text-align: center;
}
.team-img{
    text-align: center;
}
.team-popup p:last-child{
    margin-bottom: 0px;
}
.modal-content .btn-close{
    padding: 15px;
    margin-left: auto;
    box-shadow: none !important;
}
.modal-body{
    padding: 20px;
    padding-top: 5px;
}
.modal-content{
    border-radius: 0px !important;
    border: 0px !important;
}
#donateModal{
    z-index: 1060;
}
#donateModal .modal-dialog{
    max-width: 540px;
    margin: 1.75rem auto;
}
#donateModal .modal-body{
    max-height: min(80vh, 760px);
    overflow-y: auto;
}
#donateModal iframe{
    display: block;
    margin: 0 auto;
}
.btn:first-child:active{
    border: 0px !important;
}


/*Footer*/
/*Subscribe Section*/
.subscribe-sec{
    padding: 60px 0;
    background-color: var(--white);
}
.sub-box{
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: 20px;
}
.subscribe-form{
    max-width: 752px;
    width: 100%;
    margin: 0 auto;
    display: flex;
    align-items: stretch;
    gap: 16px;
}
.subscribe-form .form-control{
/*    color: var(--white);*/
    font-size: 16px;
    font-weight: 500;
    line-height: normal;
    padding: 11px 19px;
    border-radius: 0px;
    background-color: transparent;
    border: 1px solid var(--black);
}
.subscribe-form .form-control::placeholder{
    color: #FFFFFF;
    opacity: 0.5;
}
.form-control:focus{
    box-shadow: none;
}
.btn-theme.btn-white{
    background-color: var(--white);
    color: var(--primary);
}
.btn-theme.btn-white:hover{
    background-color: var(--yellow);
    color: var(--black);
}

.footer{
    padding: 40px 0;
}

.logo-sec{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
    color: var(--black);
    text-align: center;
    font-size: 20px;
    font-weight: 400;
    line-height: 28px;  
}
.f-link{
    transition: all 0.3s ease-in-out;
}
.f-link:hover{
    color: var(--primary);
}

.social-sec{
    padding: 40px 0 30px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
}
.social-sec .title{
    text-align: center;
    color: var(--black);
}
.social-box{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
}
.social-btn{
    width: 64px;
    height: 64px;
    background-color: var(--primary);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease-in-out;
}
.social-btn:hover{
    background-color: var(--yellow);
}
.social-btn svg, 
.social-btn svg path, 
.social-btn svg rect, 
.social-btn svg circle{
    transition: all 0.3s ease-in-out;
}
.social-btn.insta:hover svg path, 
.social-btn.insta:hover svg rect, 
.social-btn.insta:hover svg circle{
    stroke: var(--black);
}
.social-btn:hover svg path, 
.social-btn.mail:hover svg{
    fill: var(--black);
}
.social-btn.insta svg, 
.social-btn.mail svg{
    width: 33px;
    height: auto;
}

.f-menu-sec{
    padding: 22px 0;
    border-top: 1px solid #57607033;
}
.f-ul{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 50px;
    list-style: none;
    padding-left: 0px;
    margin-bottom: 0px;
}
.f-ul li a{
    color: #192438;
    font-family: Oswald;
    font-size: 20px;
    font-weight: 500;
    line-height: normal;
    transition: all 0.3s ease-in-out;
}
.f-ul li a:hover{
    color: var(--primary);
}

.s-footer{
    padding-top: 22px;
    border-top: 1px solid #57607033;
}
.copyright-text{
    color: #576070;
    text-align: center;
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
}

.blog-link a{
    font-family: "Oswald", sans-serif;
    color: var(--primary);
    transition: all 0.3s ease-in-out;
}
.blog-link a:hover{
    text-decoration: underline;
    text-decoration-thickness: 2px;
}
.youtube-video iframe{
    width: 100%;
    height: 100%;
    aspect-ratio: 16/9;
}

.oswald{
    font-family: "Oswald", sans-serif;
}

.bold{
    font-weight: 700;
}
.semibold{
    font-weight: 600;
}
.regular{
    font-weight: 400;
}

.primary-text{
    color: var(--primary);
}

.z-1{
    position: relative;
    z-index: 1;
}

:root {
    scroll-padding-top: 100px; /* Adjust to your header height */
}
.ft-17{
    font-size: 17px;
}

.ft-16{
    font-size: 16px;
    line-height: 26px;
}
.inner-page-video.hero-sec {
    position: relative;
    overflow: hidden;
    background-color: #000;
}

.hero-video-wrap {
    position: absolute;
    inset: 0;
    overflow: hidden;
    background-color: #000;
    z-index: 0;
}

/* Frame keeps cover-sizing even after the YouTube API swaps in an iframe.
   Stay invisible until JS marks it ready so YouTube load UI never shows. */
.hero-video-frame {
    position: absolute;
    top: 50%;
    left: 50%;
    width: max(100%, 177.7778vh);
    height: max(100%, 56.25vw);
    transform: translate(-50%, -50%);
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.45s ease;
}

.hero-video-frame.is-ready {
    opacity: 1;
}

.hero-video-frame iframe,
.hero-video-frame .hero-video {
    position: absolute;
    inset: 0;
    width: 100% !important;
    height: 100% !important;
    border: 0 !important;
    pointer-events: none;
}

.hero-video-cover {
    position: absolute;
    inset: 0;
    background-color: #000;
    z-index: 5;
    opacity: 1;
    visibility: visible;
    transition: opacity 0.45s ease, visibility 0.45s ease;
    pointer-events: none;
}

.hero-video-cover.is-hidden {
    opacity: 0;
    visibility: hidden;
}

.inner-page-video.hero-sec .container {
    position: relative;
    z-index: 3;
}
.inner-page-image {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
}

.inner-page-image .hero-image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    z-index: 0;
}
/* Who We Are: zoom into top of photo so legs stay cropped at every size */
.inner-page-image.hero-pos-who .hero-image{
    object-fit: cover;
    object-position: center top;
    width: 100%;
    height: 155%;
    top: -8%;
    bottom: auto;
    left: 0;
    right: 0;
}
/* Soft white fade at top so black nav stays readable over the photo */
.inner-page-image.hero-pos-who::before{
    content: "";
    display: block;
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background: linear-gradient(
        to bottom,
        rgba(255, 255, 255, 0.92) 0%,
        rgba(255, 255, 255, 0.55) 18%,
        rgba(255, 255, 255, 0.15) 38%,
        rgba(255, 255, 255, 0) 55%
    );
}

.inner-page-image .container {
    position: relative;
    z-index: 2;
}
.inner-page-image::before {
    display: none;
}
/* FAQ Accordion */

.faq-accordion .accordion-item {
    border: 0;
    border-bottom: 1px solid #ddd;
    border-radius: 0;
}

.faq-accordion .accordion-button {
    position: relative;
    padding: 20px 50px 20px 0;
    background: transparent;
    box-shadow: none;
    font-size: 20px;
    font-weight: 600;
    color: #000;
}

.faq-accordion .accordion-button:focus {
    box-shadow: none;
}

.faq-accordion .accordion-button:not(.collapsed) {
    background: transparent;
    color: #000;
}

/* Remove Bootstrap default arrow */
.faq-accordion .accordion-button::after {
    display: none;
}

/* Custom arrow */
.faq-arrow {
    position: absolute;
    right: 5px;
    top: 50%;
    width: 10px;
    height: 10px;
    border-right: 2px solid #222;
    border-bottom: 2px solid #222;
    transform: translateY(-65%) rotate(45deg);
    transition: transform 0.3s ease;
}

/* Up arrow when opened */
.faq-accordion .accordion-button:not(.collapsed) .faq-arrow {
    transform: translateY(-35%) rotate(225deg);
}

.faq-accordion .accordion-body {
    padding: 0 50px 20px 0;
    font-size: 16px;
    line-height: 1.7;
    color: #000;
    text-align: left;
}

/* Optional spacing */
.faq-accordion .accordion-item:last-child {
    border-bottom: 0;
}