.main-carousel .slide-item {
    width: 100%;
    height: 100%;
    background: #000;
    position: relative;
}


.main-carousel .slide-item img {
    opacity: 1;
    position: relative;
}

.main-carousel .slide-text {
    position: absolute;
    right: 110px;
    top: 50%;
    z-index: 1;
    max-width: 570px;
    text-align: left;
    /*margin-top: -160px;*/
    transform: translateY(-50%);
}

.main-carousel .slide-text h1,
.main-carousel .slide-text h4 {
    text-transform: capitalize;
    color: #fff;
}

.main-carousel .slide-text h1 {
    font-size: 36px;
    line-height: 54px;
    font-weight: 400;
}

.main-carousel .slide-text h4 {
    font-size: 22px;
    line-height: 36px;
    font-weight: 400;
}

.main-carousel .slide-text p {
    font-size: 19px;
    color: #fff;
    line-height: 28px;
    font-weight: 400;
    font-family: 'Rubik', sans-serif;
    margin-top: 5px;
    margin-left: 2px;
    margin-bottom: 15px;
}

.main-carousel .slide-text a.btn {
    margin-top: 15px;
}

.main-carousel .owl-nav span.fa {
    font-size: 28px;
}

.main-carousel .owl-nav .owl-prev,
.main-carousel .owl-nav .owl-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: #afaac0;
    color: #fff !important;
    border-radius: 0;
    width: 70px;
    height: 55px;
    display: flex;
    align-items: center;
    justify-content: center;    
    font-size: 35px !important;
    
}

.main-carousel .owl-nav .owl-prev {
    left: 0;
}

.main-carousel .owl-nav .owl-next {
    right: 0;
}

.hero-teaser .home-utsav-web img{
    object-fit: none !important;
}
.hero-teaser .home-gifting img{
    object-fit: none !important;
}

.hero-teaser .home-utsav-web{
    background:url(../img/fkt-web-banner-1366-460-4.jpg);
    width: 100%;
    height: auto;
    aspect-ratio: 1366 / 460;
    background-size: 100% 100%;
    background-position: top center;
    background-repeat: no-repeat;
    font-size: 0; /* hide placeholder text so it can't add height */
}
.hero-teaser .home-gifting{
    background:url(../img/gifiting-web-banner-1366-460-3.jpg);
    width: 100%;
    height: auto;
    aspect-ratio: 1366 / 460;
    background-size: 100% 100%;
    background-position: top center;
    background-repeat: no-repeat;
    font-size: 0; /* hide placeholder text so it can't add height */
}

.site-footer .footer-contact .footer-contact-content{
    margin-top: 10px;
}

.site-footer .footer-contact .link {    
    font-size: .90rem !important;  display: inline-flex !important;
    align-items: center;
    gap: 6px; margin-right: 10px;
}
.site-footer .component.column-splitter>div {
    flex: 1 0 24%;
}
.site-footer .footer-contact .link .email, .site-footer .footer-contact .link .phone{
    margin-right: 0px;  

}

.thinkfresh{
    margin: 20px 0 ;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
 
}
.thinkfresh > .component{
    margin: 0 6px;
    flex: 0 1 calc(50% - 12px);
}


.buttons {
    text-align: center;
  }
  .buttons a {
    display: inline-block;
    background: #e74a54;
    color: #fff;
    padding: 10px 40px;
    font-size: 15px;
    text-decoration: none;
    cursor: pointer;
  }
  
  .overlay {
    background: #000;
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 100%;
    height: 100%;
    opacity: 0;
    visibility: hidden;
    z-index: 99;
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    display: inline-block;
  }
  .overlay.is-on {
    opacity: 1;
    visibility: visible;
  }
  .overlay.is-on .content {
    opacity: 1;
    visibility: visible;
    top: 0;
  }
  .overlay .content {
    background: #fff;
    position: absolute;
    top: -50%;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 50%;
    height: 80%;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  
  #close {
    position: absolute;
    right: 20px;
    top: 20px;
    font-size: 15px;
    color: #999;
    cursor: pointer;
    font-weight: bold;
  }
  .overlay-1 {
    background: #000;
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 100%;
    height: 100%;
    opacity: 0;
    visibility: hidden;
    z-index: 99;
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    display: inline-block;
  }
  .overlay-1.is-on {
    opacity: 1;
    visibility: visible;
  }
  .overlay-1.is-on .content-1 {
    opacity: 1;
    visibility: visible;
    top: 0;
  }
  .overlay-1 .content-1 {
    background: #fff;
    position: absolute;
    top: -50%;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 50%;
    height: 80%;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  #close-1 {
    position: absolute;
    right: 20px;
    top: 20px;
    font-size: 15px;
    color: #999;
    cursor: pointer;
    font-weight: bold;
  }

  @media only screen and (max-width: 700px){
    #close, #close-1{
        right: 9px;
        top: 5px;
        font-size: 12px;
    }
    .overlay .content,.overlay-1 .content-1{
    width: 100%;
    height: auto;
    background: transparent;
    }
    .thinkfresh{    flex-direction: column;}
    }
  
    /* .footer-link a {
        font-family: Lato, sans-serif;
        font-weight: 700 !important;
        font-style: normal;
        text-rendering: optimizeLegibility;
        font-size: 1.125rem;
        line-height: 1.5;
        color: #002d72 !important;
        /* text-transform: inherit; 
        text-decoration: none !important;
    } */

    .or-top{
        margin-top: 90px;
    }
    @media  screen and (max-width: 767px) {
        .or-top{
            margin-top: 0px !important;
        }
    }

    .apply-card{
        width: 90px !important;
        margin-bottom: 5px;
    }
    .qr-code{
        width: 60px !important;
    }
#divrrl{
    margin-top: 30px;
}
.doc-list {
    list-style: none !important;
    margin: 0;
    padding: 0;
}
.doc-list ol>li, .doc-list ul>li{
padding: 0px;
}

.doc-list ol>li::before, .doc-list ul>li::before {
    content: none !important;
    position: fixed !important;
}

.pdfbox {
  display: flex;
  align-items: center;
  margin-bottom: 10px; /* optional spacing */
}

.pdfIcon img {
  width: 20px; /* adjust as needed */
  height: auto;
  margin-right: 8px;
}
.pdfbox {
    border-radius: 5px;
    border: 1px solid #bfe1ff;
    padding: 7px 0 0 7px;
    height: auto;
    overflow: hidden;
    /* margin-bottom: 20px; */
}
.linksUrl a{
    color: #333;
    text-decoration: none;
}

.site-footer .footer-contact .footer-contact-content>*{
    margin-bottom:0px;
}
/* captcha */
.captcha-wrapper {
            display: flex;
            align-items: center;
            gap: 10px;
        }

        .captcha-code {
            min-width: 130px;
            padding: 10px 15px;
            background: #f1f1f1;
            border: 1px solid #ccc;
            border-radius: 5px;
            font-size: 20px;
            font-weight: 700;
            letter-spacing: 4px;
            text-align: center;
            user-select: none;
            margin-bottom: 20px;
        }

        .captcha-refresh {
            border: 0;
            background: transparent;
            padding: 5px;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            transform: translateY(-10px);
        }
        .captcha-refresh img {
            width: 24px;
            height: 24px;
            display: block;
}

.captcha-refresh:focus-visible {
    outline: 2px solid #000;
    outline-offset: 3px;
}
.mb-3{
    margin-bottom: 30px;
}
        /* captcha */

        /* TERMS AND CONDITIONS */
        .terms-title{margin-top: 2rem;
    border-bottom: 1px solid #ccc;
    padding-bottom: 0.3rem;
        }
        .sub-title{
            font-weight: 600 !important;
    margin-top: 20px !important;
        }

/* =====================================================================
   FOOTER - responsive fixes (footer.html)
   Desktop (>=1024px) layout is left exactly as the theme renders it.
   Breakpoints follow the theme: <768 mobile, 768-1023 tablet, >=1024 desktop.
   ===================================================================== */

/* All widths: let long addresses, emails and links wrap inside their column */
#footer .footer-col,
#footer .global-footer-component .links > div {
    min-width: 0;                 /* allow flex children to shrink below content width */
    overflow-wrap: anywhere;      /* long addresses / emails / URLs wrap instead of overflowing */
    word-break: normal;
}

/* Phone links: icon and number aligned, number never split across lines */
#footer .footer-contact-number-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
#footer .footer-contact-number-link .m-icon {
    flex: 0 0 auto;
}
#footer a[href^="tel:"] {
    white-space: nowrap;
}

/* Visible keyboard focus (theme only sets a 1px black auto outline) */
#footer a:focus-visible {
    outline: 2px solid #002d72;
    outline-offset: 2px;
    border-radius: 2px;
}
#footer .global-footer-component a:focus-visible {
    outline-color: #fff;          /* black outline is invisible on the blue bar */
}

/* ---------- Mobile: < 768px ---------- */
@media (max-width: 767.98px) {
    /* Root cause of overflow: theme sets margin 0 -9px on the blue bar,
       but #footer has no padding below 768px, so it spilled out of the viewport */
    #footer .global-footer-component {
        margin: 0;
        padding: 20px 16px;
    }

    /* Stack bottom-bar links one per row with comfortable touch targets */
    #footer .global-footer-component .links {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
    }
    #footer .global-footer-component .links > div:first-child {
        display: flex;
        flex-direction: column;
        gap: 4px;
    }
    #footer .global-footer-component a,
    #footer .global-footer-component a:active,
    #footer .global-footer-component a:hover {
        display: block;
        padding: 10px 0;              /* 24px line-height + 20px = 44px touch target */
    }

    /* Columns stack full width; spacer columns contain no visible content */
    #footer .site-footer .component.column-splitter > .footer-col {
        width: 100%;
    }
    #footer .site-footer .footer-col--empty {
        display: none;
    }

    /* These lists are not collapsible (content is always shown), so the
       +/- accordion icon is misleading on mobile; empty partnership label
       only rendered a stray icon plus 40px of padding */
    #footer .site-footer .footer-col .plus-minus-icon {
        display: none;
    }
    #footer .site-footer .footer-col--partnership .h5 {
        display: none;
    }
    #footer .site-footer .h5 {
        padding: 20px 12px 8px;
    }
    #footer .footer-contact-number-link {
        min-height: 44px;         /* touch target */
    }
    #footer .site-footer .component-footer.link-list .component-content {
        padding-bottom: 20px;
    }
}

/* ---------- Tablet: 768px - 1023px (covers 768 and 992) ---------- */
@media (min-width: 768px) and (max-width: 1023.98px) {
    /* Theme: 4 columns at flex-basis 24% + 3 x 50px gaps never fit, so 3 narrow
       columns + a wrapped row were rendered; give the two content columns half each */
    #footer .site-footer .component.column-splitter {
        gap: 32px;
    }
    #footer .site-footer .component.column-splitter > .footer-col {
        flex: 1 1 calc(50% - 16px);
        max-width: calc(50% - 16px);
    }
    #footer .site-footer .footer-col--empty {
        display: none;
    }
    #footer .global-footer-component a,
    #footer .global-footer-component a:active,
    #footer .global-footer-component a:hover {
        display: inline-block;
    }
}
/* ======================= /FOOTER responsive fixes ===================== */
