/* =====================================
   L1 VISA BLOG VARIABLES
===================================== */

:root {

    --l1visablog-red: #e60000;
    --l1visablog-dark-red: #8a0000;
    --l1visablog-black: #000000;
    --l1visablog-dark: #1a1a1a;
    --l1visablog-grey: #666666;
    --l1visablog-border: #e5e5e5;

}



/* =====================================
   BLOG BANNER
===================================== */
.py-80-30{
    padding-block: clamp(1.88rem, calc(-0.114rem + 5.303vw), 6.25rem);
}
.px-60-20{
    padding-inline: clamp(1.25rem, calc(0.114rem + 3.030vw), 3.75rem);
}
.p-60-24{
    padding: clamp(1.50rem, calc(0.477rem + 2.727vw), 3.75rem);
}
.p-40-15{
    padding: clamp(0.94rem, calc(0.227rem + 1.894vw), 2.50rem);
}

.pl-20-0{
    padding-left: clamp(0.00rem, calc(-0.832rem + 1.735vw), 1.25rem);
}
.pr-20-0{
    padding-right: clamp(0.00rem, calc(-0.832rem + 1.735vw), 1.25rem);
}
.pl-30-0{
    padding-left: clamp(0.00rem, calc(-1.247rem + 2.602vw), 1.88rem);
}
.pr-30-0{
    padding-right: clamp(0.00rem, calc(-1.247rem + 2.602vw), 1.88rem);
}

.mb-40-15{
    margin-bottom: clamp(0.94rem, calc(0.227rem + 1.894vw), 2.50rem);
}


.single-blogPage h2{
    font-size: clamp(1.50rem, calc(1.167rem + 0.694vw), 2.00rem) !important;
}
.single-blogPage h3{
    font-size: clamp(1.25rem, calc(0.917rem + 0.694vw), 1.75rem) !important;
    font-weight: 400 !important;
}


#l1visablog_banner {

    background: var(--l1visablog-dark);

}


.l1visablog_banner_title {

    color: #ffffff;

    font-size: clamp(36px, 5vw, 64px);

    font-weight: 700;

    line-height: 1.1;

}



/* =====================================
   BLOG LISTING SECTION
===================================== */

#l1visablog_listing {

    padding: 80px 0;

}
.l1visablog_card {
    position: relative;
}


.l1visablog_card_link {

    position: absolute;

    inset: 0;

    z-index: 2;

}


.l1visablog_card_content,
.l1visablog_card_image {

    position: relative;

    z-index: 1;

}


/* =====================================
   SEARCH BAR
===================================== */

.l1visablog_search_form {

    margin-bottom: 60px;

}


.l1visablog_search_wrapper {

    display: flex;
    justify-content: center;
    width: 100%;

    border-radius: 28px;
    padding:3px;

}


.l1visablog_search_input {

    flex: 1;

    border: 0;

    outline: none;

    padding: 16px 20px;
    max-width: 400px;
    font-size: 16px;
    border-radius: 28px !important;
}


.l1visablog_search_input::placeholder {

    color: var(--l1visablog-grey);

}



.l1visablog_search_button {

    border: 0;

    background: var(--l1visablog-red);

    color: #ffffff;

    padding: 16px 32px;

    font-weight: 600;

    cursor: pointer;

}


.l1visablog_search_button:hover {

    background: var(--l1visablog-dark-red);

}



/* =====================================
   BLOG GRID
===================================== */

.l1visablog_grid {

    row-gap: 30px;

}



.l1visablog_card {

    height: 100%;

    border: 1px solid var(--l1visablog-border);

    border-radius: 16px;

    overflow: hidden;

    background: #ffffff;

    transition: transform .3s ease, box-shadow .3s ease;

}


.l1visablog_card:hover {

    transform: translateY(-5px);

    box-shadow: 0 15px 35px rgba(0,0,0,0.08);

}



/* =====================================
   BLOG IMAGE
===================================== */

.l1visablog_card_image img {

    width: 100%;

    height: auto;

    display: block;

}



/* =====================================
   BLOG CONTENT
===================================== */

.l1visablog_card_content {

    padding: 25px;

}


.l1visablog_card_title {

    font-size: 24px;

    line-height: 1.3;

    margin-bottom: 12px;

}


.l1visablog_card_title a {

    color: var(--l1visablog-black);

    text-decoration: none;

}


.l1visablog_card_title a:hover {

    color: var(--l1visablog-red);

}



.l1visablog_card_date {

    color: var(--l1visablog-grey);

    font-size: 14px;

    margin-bottom: 15px;

}



.l1visablog_card_excerpt {

    color: var(--l1visablog-grey);

    line-height: 1.7;

    margin-bottom: 20px;

}



/* =====================================
   READ MORE BUTTON
===================================== */

.l1visablog_card_button {

    display: inline-block;

    color: var(--l1visablog-red);

    font-weight: 600;

    text-decoration: none;

}


.l1visablog_card_button:hover {

    color: var(--l1visablog-dark-red);

}



/* =====================================
   LOAD MORE
===================================== */

#l1visablog_loadmore_wrapper {

    margin-top: 60px;

}


.l1visablog_loadmore_button {

    border: 0;

    background: var(--l1visablog-black);

    color: #ffffff;

    padding: 16px 40px;

    border-radius: 8px;

    font-weight: 600;

    cursor: pointer;

}


.l1visablog_loadmore_button:hover {

    background: var(--l1visablog-red);

}



/* =====================================
   MOBILE
===================================== */

@media(max-width:767px) {


    #l1visablog_banner {

        padding: 60px 0;

    }


    #l1visablog_listing {

        padding: 50px 0;

    }


    .l1visablog_search_wrapper {

        flex-direction: column;

    }


    .l1visablog_search_button {

        width: 100%;

    }

}








/* =====================================
   SINGLE BLOG
===================================== */


#l1visablog_single_banner {
    font-family: "Montserrat", Sans-serif ;
    background-image: url('https://l1visausa.com/wp-content/uploads/2026/08/497880.jpg');
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    background-attachment: fixed;
    min-height: 90vh;
}

.l1visablog_single_banner-child {
    background: rgba(255, 255, 255, 0.9);
    border-bottom-left-radius: 30px;
    border-bottom-right-radius: 30px;
    filter: drop-shadow(0 8px 25px rgba(255, 255, 255, 0.8));
}
.l1visablog_copy_link.copied::after {

    content: "Copied!";

    position: absolute;

    background: #000;

    color: #fff;

    padding: 5px 10px;

    border-radius: 5px;

    font-size: 12px;

}
.blog-social-icons a {
    position: relative;
}
.l1visablog_single_banner-child .blog-social-icons img{
    width:30px;
    padding: 7px;
    border-radius: 8px;
    background-color: rgba(230, 0, 0, 0.1);
}

.l1visablog_single_title {
    font-family: "Montserrat", Sans-serif !important;
    color: #1a1a1a;

    font-size: clamp(32px, 4vw, 56px);

    line-height: 1.2;

    margin-bottom: 15px;

}

.l1visablog_single_banner-child p{
    font-family: "Montserrat", Sans-serif !important;
    color: #666666;
    font-size:18px;
}


.l1visablog_single_date {

    color: #ffffff;

    opacity: .7;

}



/* CONTENT */
#l1visablog_single_content h1,
#l1visablog_single_content h2,
#l1visablog_single_content h3,
#l1visablog_single_content h4,
#l1visablog_single_content h5,
#l1visablog_single_content h6{
    font-family: "Montserrat", Sans-serif;
    font-weight: 500;
}
#l1visablog_single_content li,
#l1visablog_single_content a{
    font-family: "Montserrat", Sans-serif;
}
.l1visablog_toc a{
    background: #f2f2f2;
    padding:10px 20px;
    border-left: 3px solid #ccc;
}
.l1visablog_toc .active{
    border-left: 3px solid #e60000;
    
}
#l1visablog_single_content h2{
    font-size: clamp(1.50rem, calc(0.989rem + 1.364vw), 2.63rem);
}
#l1visablog_single_content h3{
    font-size: clamp(1.31rem, calc(0.886rem + 1.136vw), 2.25rem);
}
#l1visablog_single_content h4{
    font-size: clamp(1.13rem, calc(0.784rem + 0.909vw), 1.88rem);
}




/* TOC */

.l1visablog_toc {
    position: sticky;
    top: 120px;
    padding: 18px;
    border: 1px solid var(--l1visablog-border);
    border-radius: 16px;
    max-height: 75vh;
    height: 100%;
    overflow-y: auto;
    
}
.l1visablog_toc::-webkit-scrollbar {

    width: 5px;

}


.l1visablog_toc::-webkit-scrollbar-track {

    background: transparent;

}


.l1visablog_toc::-webkit-scrollbar-thumb {

    background: var(--l1visablog-red);

    border-radius: 10px;

}


.l1visablog_toc::-webkit-scrollbar-thumb:hover {

    background: var(--l1visablog-dark-red);

}

.l1visablog_toc a{
    font-size: 13px !important;
    font-weight: 600 !important;
}

.l1visablog_toc_title {

    font-size: 22px;

    margin-bottom: 20px;

}


.l1visablog_toc_list {

    list-style: none;

    padding: 0;

    margin: 0;

}


.l1visablog_toc_list li {

    margin-bottom: 12px;

}


.l1visablog_toc_list a {

    color: var(--l1visablog-grey);

    text-decoration: none;

}


.l1visablog_toc_list a:hover {

    color: var(--l1visablog-red);

}



/* BLOG CONTENT */

.l1visablog_content img {

    max-width: 100%;

    height: auto;

    border-radius: 16px;

}


.l1visablog_content h2 {

    scroll-margin-top: 120px;

}

.l1visablog_featured_image {

    margin-bottom: 40px;

}


.l1visablog_featured_image img {

    width: 100%;

    height: auto;

    border-radius: 16px;

    display: block;

}

@media(max-width:991px) {

    .l1visablog_toc {

        position: static;

        margin-bottom: 40px;

    }

}


.blog-cta-section{
        background-color: #f3f3f3;
        font-family: "Montserrat", Sans-serif !important;
    }
.blog-cta-section h2, .blog-cta-section input, .blog-cta-section select, .blog-cta-section textarea{
        font-family: "Montserrat", Sans-serif !important;
    }
.blog-cta-section .form-control-wrapper {
        display: flex;
        gap: 15px;
        margin-bottom: 15px;
    }

    .blog-cta-section .form-control-wrapper .form-control {
        background-color: transparent;
        border: none;
        padding:0;
    }

.blog-cta-section .form-control-wrapper .form-control input,
.blog-cta-section .form-control-wrapper .form-control select,
.blog-cta-section .form-control-wrapper .form-control textarea{
    border: 1px solid #ccc;
    background: transparent;
}
.blog-cta-section .wpcf7-submit{
    background-color: #e60000 !important;
    color:#ffffff !important;
}

    @media (max-width: 767px) {
        .blog-cta-section .form-control-wrapper {
            flex-direction: column;
        }
    }