@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap');

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family:'Poppins',sans-serif;
}

body{
    background:#ffff;
    overflow-x:hidden;
}

/* =========================
   NAVBAR
========================= */

.navbar-section{
    padding:18px 0;
}

.navbar-custom{
    background:#fff;
    border-radius:60px;

    padding:14px 22px;

    display:flex;
    align-items:center;
    justify-content:space-between;

    box-shadow:
    0 4px 15px rgba(0,0,0,0.06);
}

.logo img{
    height:40px;
}

.nav-menu{
    display:flex;
    gap:40px;
    list-style:none;
    margin:0;
    padding:0;
}

.nav-menu a{
    text-decoration:none;
    color:#000;
    font-size:15px;
    font-weight:500;
}

.login-btn{
    background:#ed1c24;
    color:#fff;
    text-decoration:none;

    padding:12px 42px;
    border-radius:50px;

    font-weight:600;
}

.login-btn:hover{
    color:#fff;
}


/* =========================
   HERO SECTION
========================= */

.hero-section{
    position:relative;
    padding:60px 0 110px;
}

.trusted-users{
    display:flex;
    align-items:center;
    gap:16px;

    margin-bottom:20px;
}

.user-images{
    display:flex;
}

.user-images img{
    width:42px;
    height:42px;
    border-radius:50%;
    object-fit:cover;

    border:3px solid #fff;

    margin-left:-10px;
}

.user-images img:first-child{
    margin-left:0;
}

.trusted-users span{
    font-size:14px;
    color:#555;
}

.hero-section h1{
    font-size:64px;
    font-weight:600;
    line-height:1.1;
    color:#000;

    margin-bottom:18px;
}

.hero-section p{
    max-width:500px;

    font-size:18px;
    line-height:1.8;

    color:#666;

    margin-bottom:30px;
}

.browse-btn{
    display:flex;
    width: 40%;
    justify-content:center;
    align-items:center;
    gap:0;

    background:#ed1c24;
    color:#fff;

    text-decoration:none;
     position:relative;
    overflow:hidden;

    padding:16px 55px;
    border-radius:50px;

    font-weight:600;
     transition:all .3s ease;
}


.browse-btn::after{
    content:"→";
    
    opacity:0;
    transform:translateX(-10px);
    transition:all .3s ease;
}

.browse-btn:hover{
    color:#fff;
}

.browse-btn:hover::after{
    opacity:1;
    transform:translateX(0);
}

.browse-btn:hover{
    gap:8px;
}


.hero-image{
    width:100%;
    max-width:650px;
}

/* =========================
   DOTS
========================= */

.dot-pattern{
    position:absolute;

    width:70px;
    height:70px;

    background-image:radial-gradient(
        #ed1c24 2px,
        transparent 2px
    );

    background-size:14px 14px;
}

.top-dot{
    top:60px;
    left:50%;
}

.bottom-dot{
    right:90px;
    bottom:90px;
}


/* =========================
   Tablet (992px and below)
========================= */
@media (max-width: 991.98px){

    .hero-section{
        padding: 50px 0 80px;
        text-align: center;
    }

    .trusted-users{
        justify-content: center;
        margin-bottom: 20px;
    }

    .hero-section h1{
        font-size: 48px;
        line-height: 1.2;
    }

    .hero-section p{
        max-width: 100%;
        font-size: 17px;
        margin: 0 auto 30px;
    }

    .browse-btn{
        width: fit-content;
        margin: 0 auto;
        padding: 15px 40px;
    }

    .hero-image{
        max-width: 500px;
        margin: 50px auto 0;
        display: block;
    }

    .top-dot{
        left: 10%;
        top: 40px;
    }

    .bottom-dot{
        right: 30px;
        bottom: 50px;
    }
}


/* =========================
   Mobile (768px and below)
========================= */
@media (max-width: 767.98px){

    .hero-section{
        padding: 40px 0 60px;
        text-align: center;
    }

    .trusted-users{
        justify-content: center;
        gap: 12px;
        flex-wrap: wrap;
    }

    .user-images img{
        width: 36px;
        height: 36px;
        border-width: 2px;
    }

    .trusted-users span{
        font-size: 13px;
    }

    .hero-section h1{
        font-size: 38px;
        line-height: 1.2;
        margin-bottom: 15px;
    }

    .hero-section p{
        font-size: 16px;
        line-height: 1.7;
        margin: 0 auto 25px;
    }

    .browse-btn{
        width: 100%;
        max-width: 280px;
        margin: 0 auto;
        padding: 14px 30px;
    }

    .hero-image{
        max-width: 100%;
        margin-top: 40px;
    }

    .dot-pattern{
        width: 50px;
        height: 50px;
        background-size: 12px 12px;
    }

    .top-dot{
        top: 20px;
        left: 15px;
    }

    .bottom-dot{
        right: 15px;
        bottom: 20px;
    }
}


/* =========================
   Small Mobile (576px and below)
========================= */
@media (max-width: 575.98px){

    .hero-section{
        padding: 30px 0 50px;
    }

    .hero-section h1{
        font-size: 30px;
    }

    .hero-section p{
        font-size: 15px;
    }

    .user-images img{
        width: 32px;
        height: 32px;
    }

    .browse-btn{
        max-width: 100%;
        font-size: 15px;
        padding: 13px 24px;
    }

    .dot-pattern{
        display: none;
    }
}


/* =========================
   HOW IT WORKS
========================= */

.how-it-works{
    padding:70px 0 100px;
}

.how-it-works h2{
    text-align:center;

    font-size:54px;
    font-weight:600;

    color:#000;

    margin-bottom:60px;
}

.work-card{
    position: relative;
    background: #fff;
    border-radius: 20px;
    padding: 20px 25px;
    text-align: center;
    height: 100%;
    border: #F0F0F0 solid 1px;

    /* Stronger shadow */
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);

    overflow: hidden;
}

/* Remove card movement */
.work-card:hover{
    transform: none;
}

/* Image styling */
.work-card img{
    width: 150px;
    margin-bottom: 22px;
    transition: transform 0.4s ease;
}

/* Zoom only image on card hover */
.work-card:hover img{
    transform: scale(1.12);
}

.work-card h4{
    font-size:24px;
    font-weight:600;

    margin-bottom:12px;
}

.work-card p{
    font-size:15px;
    color:#666;

    line-height:1.7;
}

/* =========================
   RESPONSIVE
========================= */

.mobile-menu-btn {
    display: none;
    background: none;
    border: none;
    color: #333;
    cursor: pointer;
    padding: 0;
}

@media(max-width:991px){

    .navbar-custom{
        flex-direction: row;
        flex-wrap: wrap;
        gap: 0;
    }

    .logo {
        order: 1;
        flex: 1;
    }

    .nav-right {
        order: 2;
    }

    .mobile-menu-btn {
        display: block;
    }

    .nav-menu {
        display: none;
        width: 100%;
        order: 3;
        flex-direction: column;
        align-items: center;
        gap: 15px;
        margin-top: 15px;
        padding-top: 15px;
        border-top: 1px solid #eee;
    }

    .nav-menu.active {
        display: flex;
    }

    .hero-section{
        text-align:center;
    }

    .hero-section h1{
        font-size:48px;
    }

    .hero-section p{
        margin-left:auto;
        margin-right:auto;
    }

    .trusted-users{
        justify-content:center;
    }

    .hero-image{
        margin-top:50px;
    }

    .how-it-works h2{
        font-size:40px;
    }
}

@media(max-width:576px){

    .hero-section h1{
        font-size:38px;
    }

    .browse-btn{
        padding:14px 40px;
    }

    .nav-menu{
        gap:20px;
    }
    .how-it-works h2{
        font-size:40px;
    }
}


/* ==========================
   FEATURED BAGS
========================== */

.featured-bags{
    padding:80px 0;
}

.featured-bags h2{
    text-align:center;
    font-size:54px;
    font-weight:600;
    margin-bottom:60px;
}

.bag-card{
    transition:0.4s;
}

.featured-bag-image{
    background:#D9D5D5;
    border-radius:10px;
    overflow:hidden;
}

.featured-bag-image img{
    width:100%;
    height:280px;
    object-fit:contain;
    transition:.4s;
}


.bag-content{
    padding-top:15px;
}

.bag-title-row{
    display:flex;
    justify-content:space-between;
    align-items:center;
}

.bag-title-row h4{
    font-size:28px;
    font-weight:600;
    margin:0;
}

.rating{
    font-size:22px;
    font-weight:600;
}

.bag-content p{
    color:#666;
    margin:10px 0 18px;
}

.customize-btn{
    width:100%;
    display:flex;
    justify-content:center;
    align-items:center;
    gap:0;

    background:#ef1d1d;
    color:#fff;
    text-decoration:none;

    padding:12px;
    border-radius:50px;

    font-weight:600;
    position:relative;
    overflow:hidden;

    transition:all .3s ease;
}

.customize-btn::after{
    content:"→";
    opacity:0;
    transform:translateX(-10px);
    transition:all .3s ease;
}

.customize-btn:hover{
    color:#fff;
}

.customize-btn:hover::after{
    opacity:1;
    transform:translateX(0);
}

.customize-btn:hover{
    gap:8px;
}


/* =========================
   Tablet (≤ 991.98px)
========================= */
@media (max-width: 991.98px){

    .featured-bags{
        padding: 70px 0;
    }

    .featured-bags h2{
        font-size: 44px;
        margin-bottom: 50px;
    }

    .featured-bag-image img{
        height: 240px;
    }

    .bag-title-row h4{
        font-size: 24px;
    }

    .rating{
        font-size: 20px;
    }

    .bag-content p{
        font-size: 15px;
    }

    .customize-btn{
        padding: 12px 20px;
    }
}


/* =========================
   Mobile (≤ 767.98px)
========================= */
@media (max-width: 767.98px){

    .featured-bags{
        padding: 60px 0;
    }

    .featured-bags h2{
        font-size: 35px;
        margin-bottom: 40px;
        line-height: 1.3;
    }

    .bag-card{
        margin-bottom: 30px;
    }

    .featured-bag-image img{
        height: 220px;
    }

    .bag-title-row h4{
        font-size: 22px;
    }

    .rating{
        font-size: 18px;
    }

    .bag-content p{
        font-size: 14px;
        margin: 10px 0 16px;
    }

    .customize-btn{
        padding: 12px;
        font-size: 15px;
    }
}


/* =========================
   Small Mobile (≤ 575.98px)
========================= */
@media (max-width: 575.98px){

    .featured-bags{
        padding: 50px 0;
    }

    .featured-bags h2{
        font-size: 35px;
        margin-bottom: 30px;
    }

    .featured-bag-image{
        border-radius: 8px;
    }

    .featured-bag-image img{
        height: 180px;
    }

    .bag-title-row{
        flex-direction: column;
        align-items: flex-start;
        gap: 6px;
    }

    .bag-title-row h4{
        font-size: 20px;
    }

    .rating{
        font-size: 16px;
    }

    .bag-content p{
        font-size: 14px;
    }

    .customize-btn{
        font-size: 14px;
        padding: 11px;
    }
}

/* ==========================
   TESTIMONIALS
========================== */

.testimonials-section{
    padding:80px 0 120px;
}

.testimonials-section h2{
    text-align:center;
    font-size:54px;
    font-weight:600;
    margin-bottom:60px;
}

.testimonial-card{
    background:#fff;

    border:1px solid #e8e8e8;
    border-radius:16px;

    padding:25px;

    height:100%;

    transition:.3s;
}


.user-info{
    display:flex;
    align-items:center;
    gap:12px;

    margin-bottom:20px;
}

.user-info img{
    width:46px;
    height:46px;
    border-radius:50%;
    object-fit:cover;
}

.user-info h5{
    margin:0;
    font-size:18px;
    font-weight:600;
}

.user-info span{
    color:#777;
    font-size:14px;
}

.testimonial-card p{
    color:#555;
    line-height:1.7;
    min-height:100px;
}

.stars{
    color:#ffc107;
    font-size:18px;
    letter-spacing:2px;
}


@media (max-width: 767.98px){
    .testimonials-section h2{
        font-size: 36px;
        line-height: 1.3;
        margin-bottom: 40px;
    }
}

@media (max-width: 575.98px){
    .testimonials-section h2{
        font-size: 35px;
        line-height: 1.3;
        margin-bottom: 30px;
    }
}

/* =========================
   VIDEO SECTION
========================= */

.video-section{
    padding:80px 0 100px;
}

.video-section h2{
    text-align:center;
    font-size:52px;
    font-weight:600;
    margin-bottom:50px;
}

.video-wrapper{
    display:flex;
    justify-content:center;
}

.video-thumbnail{
    width:100%;
    max-width:700px;
    height:400px;

    background:#D62828;
    border-radius:12px;

    display:flex;
    align-items:center;
    justify-content:center;

    text-decoration:none;

    transition:.3s;
}

.video-thumbnail:hover{
    transform:translateY(-5px);
}

.play-btn{
    width:0;
    height:0;

    border-top:35px solid transparent;
    border-bottom:35px solid transparent;
    border-left:55px solid #fff;

    margin-left:10px;
}

/* =========================
   FOOTER
========================= */

.footer-section{
    background:#000;
    padding:90px 0 70px;

    border-top-left-radius:40px;
    border-top-right-radius:40px;
}

.footer-logo img{
    max-width:380px;
    width:100%;
}

.footer-section h4{
    color:#fff;
    font-size:24px;
    font-weight:600;
    margin-bottom:25px;
}

.footer-section ul{
    list-style:none;
    padding:0;
    margin:0;
}

.footer-section ul li{
    margin-bottom:15px;
}

.footer-section ul li a{
    color:#fff;
    text-decoration:none;
    transition:.3s;
}

.footer-section ul li a:hover{
    color:#ef1d1d;
}

.footer-section p{
    color:#fff;
    font-size:14px;
    line-height:1.8;
    margin-bottom:15px;
}

/* =========================
   RESPONSIVE
========================= */
@media (max-width: 991.98px){

    .footer-section{
        padding:70px 0 50px;
    }

    .footer-logo{
        text-align:center;
        margin-bottom:40px;
    }

    .footer-logo img{
        max-width:300px;
    }

    .footer-section h4{
        font-size:22px;
        margin-bottom:20px;
    }

    .footer-section ul li{
        margin-bottom:12px;
    }
}

@media (max-width: 767.98px){

    .footer-section{
        padding:60px 0 40px;
        text-align:center;
        border-top-left-radius:30px;
        border-top-right-radius:30px;
    }

    .footer-logo{
        margin-bottom:35px;
    }

    .footer-logo img{
        max-width:240px;
    }

    .footer-section h4{
        font-size:20px;
        margin-bottom:18px;
    }

    .footer-section ul{
        margin-bottom:30px;
    }

    .footer-section ul li{
        margin-bottom:10px;
    }

    .footer-section ul li a{
        font-size:15px;
    }

    .footer-section p{
        font-size:14px;
        line-height:1.7;
    }
}

@media (max-width: 575.98px){

    .footer-section{
        padding:50px 0 30px;
        border-top-left-radius:25px;
        border-top-right-radius:25px;
    }

    .footer-logo img{
        max-width:180px;
    }

    .footer-section h4{
        font-size:18px;
        margin-bottom:15px;
    }

    .footer-section ul li a{
        font-size:14px;
    }

    .footer-section p{
        font-size:13px;
    }
}


/* ======================= FAQs PAGE ======================== */

.faq-section{
    padding:100px 0;
}

.faq-title{
    text-align:center;
    font-size:64px;
    font-weight:600;
    margin-bottom:40px;
}

.faq-tabs{
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    gap:12px;
    margin-bottom:70px;
}

.faq-tab{
    border:1px solid #ddd;
    background:#fff;
    color:#777;

    padding:14px 25px;
    border-radius:50px;

    font-size:18px;
    font-weight:500;

    cursor:pointer;
    transition:.3s;
}

.faq-tab.active{
    background:#ef2020;
    color:#fff;
    border-color:#ef2020;
}

.custom-accordion{
    max-width:900px;
    margin:auto;
}

.accordion-item{
    border:none;
    border-bottom:1px solid #eee;
}

.accordion-button{
    background:none !important;
    box-shadow:none !important;

    padding:25px 10px;
    font-size:30px;
    font-weight:600;
}

.accordion-button::after{
    display:none;
}

.faq-question{
    display:flex;
    justify-content:space-between;
    align-items:center;
    width:100%;
}

.faq-number{
    width:70px;
    font-size:20px;
    font-weight:600;
}

.faq-text{
    flex:1;
    font-size:18px;
}

.faq-icon{
    font-size:35px;
    font-weight:300;
}

.accordion-button:not(.collapsed) .faq-icon{
    transform:rotate(45deg);
}

.accordion-body{
    padding-left:90px;
    padding-bottom:30px;

    color:#666;
    font-size:17px;
    line-height:1.8;
}


/* =========================
   Tablet (≤ 991.98px)
========================= */
@media (max-width: 991.98px){

    .faq-section{
        padding: 80px 0;
    }

    .faq-title{
        font-size: 48px;
        margin-bottom: 35px;
    }

    .faq-tabs{
        gap: 10px;
        margin-bottom: 50px;
    }

    .faq-tab{
        padding: 12px 22px;
        font-size: 16px;
    }

    .accordion-button{
        padding: 22px 10px;
    }

    .faq-number{
        width: 55px;
        font-size: 18px;
    }

    .faq-text{
        font-size: 16px;
    }

    .faq-icon{
        font-size: 30px;
    }

    .accordion-body{
        padding-left: 65px;
        font-size: 16px;
    }
}

/* =========================
   Mobile (≤ 767.98px)
========================= */
@media (max-width: 767.98px){

    .faq-section{
        padding: 60px 0;
    }

    .faq-title{
        font-size: 38px;
        line-height: 1.3;
        margin-bottom: 30px;
    }

     .faq-tabs{
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 10px;
    }

    .faq-tab{
        width: calc(50% - 5px);
        max-width: none;
        text-align: center;
        padding: 12px 10px;
        font-size: 14px;
    }

    .accordion-button{
        padding: 20px 0;
    }

    .faq-number{
        width: 45px;
        font-size: 16px;
    }

    .faq-text{
        font-size: 15px;
        line-height: 1.5;
        padding-right: 10px;
    }

    .faq-icon{
        font-size: 28px;
    }

    .accordion-body{
        padding-left: 45px;
        padding-bottom: 25px;
        font-size: 15px;
        line-height: 1.7;
    }
}

/* =========================
   Small Mobile (≤ 575.98px)
========================= */
@media (max-width: 575.98px){

    .faq-section{
        padding: 50px 0;
    }

    .faq-title{
        font-size: 30px;
        margin-bottom: 25px;
    }

     .faq-tabs{
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 10px;
    }

    .faq-tab{
        width: calc(50% - 5px);
        max-width: none;
        text-align: center;
        padding: 12px 10px;
        font-size: 14px;
    }


    .faq-question{
        align-items: flex-start;
    }

    .faq-number{
        width: 35px;
        font-size: 14px;
        margin-top: 2px;
    }

    .faq-text{
        font-size: 14px;
        line-height: 1.5;
    }

    .faq-icon{
        font-size: 24px;
        margin-left: 10px;
    }

    .accordion-body{
        padding-left: 35px;
        padding-bottom: 20px;
        font-size: 14px;
        line-height: 1.6;
    }
}

/* ============================== ABOUT US PAGE ======================== */


/* =========================
   ABOUT SECTION
========================= */

.about-section{
    padding:100px 0 120px;
    background:#fff;
}

.about-content h2{
    font-size:48px;
    font-weight:600;
    color:#111;
    margin-bottom:25px;
}

.about-content p{
    font-size:16px;
    color:#555;
    line-height:1.8;
    margin-bottom:15px;
    max-width:520px;
}

.about-image img{
    width:100%;
    max-width:480px;
}


/* =========================
   WHY CHOOSE SECTION
========================= */

.why-choose-section{
    padding:40px 0 100px;
    background:#fff;
}

.section-title{
    text-align:center;
    font-size:52px;
    font-weight:600;
    color:#111;
    margin-bottom:70px;
}

.choose-card{
    background:#fff;
    border:1px solid #E8E8E8;
    border-radius:24px;
    padding:35px 28px;
    height:100%;
    transition:0.3s ease;
}

.choose-card:hover{
    transform:translateY(-6px);
    box-shadow:0 15px 35px rgba(0,0,0,0.08);
}

.icon-box{
    width:52px;
    height:52px;
    background:#E31E24;
    border-radius:14px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:25px;
    transition:0.3s ease;
}

.choose-card:hover .icon-box{
     rotate: -7deg;
}

.choose-card:hover h4{
    color: #ed1c24;
}

.icon-box i{
    font-size: 20px;
}

.choose-card h4{
    font-size:24px;
    font-weight:600;
    color:#111;
    margin-bottom:15px;
}

.choose-card p{
    font-size:15px;
    color:#666;
    line-height:1.8;
    margin:0;
}


/* =========================
   RESPONSIVE
========================= */

@media (max-width:991px){

    .about-section{
        padding:80px 0;
    }

    .about-content{
        text-align:center;
    }

    .about-content p{
        max-width:100%;
    }

    .section-title{
        font-size:40px;
        margin-bottom:50px;
    }
}

@media (max-width:767px){

    .about-content h2{
        font-size:36px;
    }

    .section-title{
        font-size:32px;
    }

    .choose-card{
        padding:30px 25px;
    }
}


/* =========================
   BUILT FOR EVERY PURPOSE
========================= */

.purpose-section{
    background:#000;
    padding:80px 0;
}

.purpose-section h2{
    text-align:center;
    color:#fff;
    font-size:52px;
    font-weight:600;
    margin-bottom:50px;
}

.purpose-card{
    background:#fff;
    border-radius:18px;
    padding:22px 28px;
    display:flex;
    align-items:center;
    gap:18px;
    height:100%;
    transition:0.3s ease;
    cursor:pointer;
    transition:0.3s ease;
}

.purpose-card:hover{
    
    border: #E31E24 solid 2px;
}

.purpose-card img{
    width:32px;
    height:32px;
    object-fit:contain;
}

.purpose-card span{
    font-size:24px;
    font-weight:600;
    color:#1A1A1A;
    transition:0.3s ease;

}
.purpose-card:hover span{
    color: #E31E24;
}


/* =========================
   STORY SECTION
========================= */

.story-section{
    background:#F7F7F7;
    padding:90px 0;
    text-align:center;
}

.story-section h2{
    font-size:56px;
    font-weight:600;
    color:#111;
    margin-bottom:30px;
}

.story-section p{
    max-width:780px;
    margin:0 auto;
    color:#555;
    font-size:18px;
    line-height:1.9;
}


/* =========================
   RESPONSIVE
========================= */

@media (max-width:991px){

    .purpose-section h2,
    .story-section h2{
        font-size:42px;
    }

    .purpose-card span{
        font-size:20px;
    }
}

@media (max-width:767px){

    .purpose-section{
        padding:60px 0;
    }

    .story-section{
        padding:70px 0;
    }

    .purpose-section h2,
    .story-section h2{
        font-size:32px;
        margin-bottom:40px;
    }

    .purpose-card{
        padding:20px;
    }

    .purpose-card span{
        font-size:18px;
    }

    .story-section p{
        font-size:16px;
        line-height:1.8;
    }
}


/* ============================= PRODUCT DETAILS PAGE ================================ */

.product-details-section{
    padding:80px 0;
    background:#fff;
}

.product-gallery{
    display:flex;
    gap:20px;
}

.thumbnail-list{
    display:flex;
    flex-direction:column;
    gap:12px;
}

.thumb{
    width:70px;
    height:70px;
    background:#f6f6f6;
    border-radius:8px;
    overflow:hidden;
    border:2px solid transparent;
    cursor:pointer;
    transition:all 0.3s ease;
}

.thumb img{
    width:100%;
    height:100%;
    object-fit:contain;

    /* Inactive thumbnails */
    filter: grayscale(100%);
    opacity:0.5;

    transition:all 0.3s ease;
}

/* Active thumbnail */
.thumb.active{
    border-color:#E41E26;
}

.thumb.active img{
    filter:none;
    opacity:1;
}

.thumb:hover img{
    opacity:0.8;
}

.main-image{
    flex:1;
    background:#f6f6f6;
    border-radius:8px;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:30px;
}

.main-image img{
    max-width:100%;
    max-height:420px;
}

.product-info h2{
    font-size:40px;
    font-weight:600;
    line-height:1.2;
    color:#111;
}

.product-subtitle{
    color:#666;
    margin:15px 0 30px;
    font-size:16px;
}

.color-section{
    display:flex;
    align-items:center;
    gap:20px;
    margin-bottom:30px;
}

.color-options{
    display:flex;
    gap:12px;
}

.color{
    width:34px;
    height:34px;
    border-radius:50%;
    cursor:pointer;
}

.color.active{
    border:3px solid #e41e26;
}

.black{
    background:#111;
}

.blue{
    background:#59607b;
}

.gray{
    background:#8b8b95;
}

.price{
    font-size:40px;
    font-weight:700;
    color:#111;
    margin-bottom:10px;
}

.action-buttons{
    display:flex;
    gap:15px;
    flex-wrap:wrap;
    margin-bottom:25px;
}

.choose-btn{
    background:#f32020;
    color:#fff;
    padding:14px 45px;
    border-radius:30px;
    text-decoration:none;
    font-weight:600;
}

.upload-btn{
    border:1px solid #f32020;
    color:#f32020;
    padding:14px 35px;
    border-radius:30px;
    text-decoration:none;
    font-weight:600;
}

.delivery-info{
    color:#666;
    font-size:15px;
}

.print-note{
    margin-top:50px;
    background:#fff4f2;
    border:1px solid #f2c4bc;
    border-radius:12px;
    padding:25px;
}

.print-note h5{
    color:#444;
    margin-bottom:15px;
    font-weight:600;
}

.print-note p{
    color:#666;
    line-height:1.8;
    margin:0;
}

.custom-tabs{
    margin-top:50px;
}

.custom-tabs .nav-tabs{
    border:none;
    justify-content:center;
    gap:40px;
}

.custom-tabs .nav-link{
    border:none;
    color:#999;
    font-size:24px;
    padding:0 0 12px;
}

.custom-tabs .nav-link.active{
    color:#111;
    font-weight:600;
    border-bottom:3px solid #111;
}

.feature-list{
    list-style:none;
    padding:0;
}

.feature-list li{
    margin-bottom:15px;
    line-height:1.8;
    color:#666;
}

.feature-list strong{
    color:#222;
}


.dimension-table-wrapper{
    display: flex;
    justify-content: center;
    margin: 40px 0;
}

.dimension-table{
    width: 100%;
    max-width: 650px;   /* Reduce table size */
    background: #fff;
    border: 1px solid #E5E5E5;
    border-radius: 24px;
    overflow: hidden;
}

.dimension-header{
    background: #ED1C24;
    color: #fff;
    padding: 22px 30px;
    display: flex;
    justify-content: space-between;
    align-items: center;

    font-size: 22px;
    font-weight: 600;
}

.dimension-row{
    padding: 22px 30px;
    display: flex;
    justify-content: space-between;
    align-items: center;

    font-size: 22px;
    color: #7A7A7A;
}

.dimension-row:not(:last-child){
    border-bottom: 1px solid #E5E5E5;
}


@media(max-width:991px){

    .product-gallery{
        flex-direction:column-reverse;
    }

    .thumbnail-list{
        flex-direction:row;
    }

    .product-info h2{
        font-size:32px;
    }

    .price{
        font-size:40px;
    }

    .custom-tabs .nav-tabs{
        justify-content:flex-start;
        overflow-x:auto;
        flex-wrap:nowrap;
    }

    .custom-tabs .nav-link{
        white-space:nowrap;
    }
}
@media (max-width: 767.98px){

    .product-details-section{
        padding: 50px 0;
    }

    .thumb{
        width: 60px;
        height: 60px;
    }

    .main-image{
        padding: 20px;
    }

    .main-image img{
        max-height: 280px;
    }

    .product-info h2{
        font-size: 28px;
        line-height: 1.3;
    }

    .product-subtitle{
        font-size: 15px;
        margin: 10px 0 20px;
    }

    .color-section{
        flex-direction: column;
        align-items: flex-start;
        gap: 15px;
        margin-bottom: 25px;
    }

    .price{
        font-size: 32px;
    }

    .action-buttons{
        flex-direction: column;
        gap: 12px;
    }

    .choose-btn,
    .upload-btn{
        width: 100%;
        text-align: center;
        padding: 14px;
    }

    .delivery-info{
        font-size: 14px;
    }

    .print-note{
        margin-top: 30px;
        padding: 20px;
    }

    .print-note h5{
        font-size: 18px;
    }

    .custom-tabs{
        margin-top: 40px;
    }

    .custom-tabs .nav-link{
        font-size: 18px;
    }

    .feature-list li{
        font-size: 15px;
        line-height: 1.7;
    }

    .accordion-body{
        padding: 20px;
    }
}
@media (max-width: 575.98px){

    .product-details-section{
        padding: 40px 0;
    }

    .thumbnail-list{
        gap: 8px;
    }

    .thumb{
        width: 50px;
        height: 50px;
    }

    .main-image{
        padding: 15px;
    }

    .main-image img{
        max-height: 220px;
    }

    .product-info h2{
        font-size: 24px;
    }

    .color{
        width: 30px;
        height: 30px;
    }

    .price{
        font-size: 28px;
    }

    .choose-btn,
    .upload-btn{
        font-size: 14px;
        padding: 12px;
    }

    .delivery-info{
        font-size: 13px;
    }

    .print-note{
        padding: 18px;
    }

    .print-note h5{
        font-size: 16px;
    }

    .print-note p{
        font-size: 14px;
        line-height: 1.7;
    }

    .custom-tabs .nav-tabs{
        gap: 20px;
    }

    .custom-tabs .nav-link{
        font-size: 16px;
    }

    .dimension-table{
        border-radius: 16px;
    }

    .dimension-header,
    .dimension-row{
        padding: 15px;
        font-size: 15px;
    }
}


/* =========================== CHOOSE DESIGN PAGE ================================= */

/* =========================
   CHOOSE DESIGN SECTION
========================= */

.choose-design-section{
    padding: 80px 0;
    background: #fff;
}

.design-title{
    text-align: center;
    font-size: 48px;
    font-weight: 600;
    color: #111;
    margin-bottom: 50px;
}

.design-card{
    transition: 0.3s ease;
}


.choose-design-image{
    background: #F5F5F5;
    overflow: hidden;
}

.choose-design-image img{
    width: 100%;
    height: 220px;
    object-fit: cover;
    display: block;
}

.design-info{
    padding-top: 12px;
}

.design-top{
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 4px;
}

.design-top h5{
    font-size: 20px;
    font-weight: 600;
    color: #111;
    margin: 0;
}

.design-top span{
    font-size: 20px;
    font-weight: 600;
    color: #111;
}

.design-info p{
    font-size: 13px;
    color: #888;
    margin-bottom: 14px;
}

.view-design-btn{
    width:100%;
    display:flex;
    justify-content:center;
    align-items:center;
    gap:0;

    background:#ef1d1d;
    color:#fff;
    text-decoration:none;

    padding:12px;
    border-radius:50px;

    font-weight:600;
    position:relative;
    overflow:hidden;

    transition:all .3s ease;
}

.view-design-btn::after{
    content:"→";
    opacity:0;
    transform:translateX(-10px);
    transition:all .3s ease;
}

.view-design-btn:hover{
    color:#fff;
}

.view-design-btn:hover::after{
    opacity:1;
    transform:translateX(0);
}

.view-design-btn:hover{
    gap:8px;
}


@media (max-width: 991px){

    .design-title{
        font-size: 38px;
    }

    .choose-design-image img{
        height: 200px;
    }
}

@media (max-width: 767px){

    .choose-design-section{
        padding: 60px 0;
    }

    .design-title{
        font-size: 30px;
        margin-bottom: 35px;
    }

    .choose-design-image img{
        height: 180px;
    }

    .design-top h5,
    .design-top span{
        font-size: 18px;
    }
}

/*  ========================== VIEW DESIGN MODAL ======================== */
.design-modal{
    border: none;
    border-radius: 24px;
    overflow: hidden;
    padding: 40px;
}

.modal-close{
    position: absolute;
    top: 25px;
    right: 25px;
    z-index: 10;
}

.bag-preview{
 

    display: flex;
    justify-content: center;
    align-items: center;

    position: relative;
}

.view-bag-image{
    width: 70%;
    max-width: 420px;
}

/* Overlapping design image */
.design-overlay{
    position: absolute;

    width: 110px;

    left: 50%;
    top: 60%;

    transform: translate(-50%, -50%);
}

.design-details{
    height: 100%;

    display: flex;
    flex-direction: column;
}

.design-details h2{
    font-size: 25px;
    font-weight: 600;
    line-height: 1.2;

    color: #111;

    margin-bottom: 10px;
}


.modal-price{
    font-size: 24px;
    font-weight: 600;
    color: #555;
}

/* Push button to bottom */
.select-design-btn{
    margin-top: 60%;
    
    width: 100%;
    border: none;
    background: #ED1C24;
    color: #fff;
    padding: 10px;
    border-radius: 50px;
    font-size: 20px;
    font-weight: 500;
    transition: 0.3s;
}

.select-design-btn:hover{
    background: #d7151d;
}

/* =========================
   Tablet (≤ 991.98px)
========================= */
@media (max-width: 991.98px){

    .design-modal{
        padding: 30px;
    }

    .modal-close{
        top: 20px;
        right: 20px;
    }

    .view-bag-image{
        width: 60%;
        max-width: 350px;
    }

    .design-overlay{
        width: 90px;
    }

    .design-details{
        margin-top: 30px;
    }

    .design-details h2{
        font-size: 22px;
    }

    .modal-price{
        font-size: 22px;
    }

    .select-design-btn{
        margin-top: 40px;
        font-size: 18px;
        padding: 12px;
    }
}

/* =========================
   Mobile (≤ 767.98px)
========================= */
@media (max-width: 767.98px){

    .design-modal{
        padding: 25px 20px;
        border-radius: 18px;
    }

    .modal-close{
        top: 15px;
        right: 15px;
    }

    .bag-preview{
        margin-bottom: 30px;
    }

    .view-bag-image{
        width: 75%;
        max-width: 280px;
    }

    .design-overlay{
        width: 75px;
        top: 58%;
    }

    .design-details{
        text-align: center;
    }

    .design-details h2{
        font-size: 20px;
    }

    .modal-price{
        font-size: 20px;
        margin-bottom: 20px;
    }

    .select-design-btn{
        margin-top: 30px;
        width: 100%;
        font-size: 16px;
        padding: 12px;
    }
}


/* =========================
   Small Mobile (≤ 575.98px)
========================= */
@media (max-width: 575.98px){

    .design-modal{
        padding: 20px 15px;
        border-radius: 15px;
    }

    .modal-close{
        top: 12px;
        right: 12px;
    }

    .view-bag-image{
        width: 85%;
        max-width: 220px;
    }

    .design-overlay{
        width: 60px;
        top: 57%;
    }

    .design-details h2{
        font-size: 18px;
        line-height: 1.4;
    }

    .modal-price{
        font-size: 18px;
    }

    .select-design-btn{
        margin-top: 25px;
        font-size: 15px;
        padding: 11px;
    }
}


/* ===================================== UPLOAD DESIGN PAGE ===================================== */

.editor-header{
    background: #fff;
    box-shadow: 0 2px 12px rgba(0,0,0,0.08);
}

.editor-navbar{
    height: 80px;

    display: flex;
    justify-content: space-between;
    align-items: center;
}

.editor-logo img{
    height: 45px;
    margin-left: 50px;
}

.editor-actions{
    display: flex;
    align-items: center;
    gap: 30px;
}

.preview-text{
    font-size: 24px;
    font-weight: 500;
    color: #111;
}

.continue-btn{
    border: none;
    background: #ED1C24;
    color: #fff;

    padding: 14px 40px;

    border-radius: 40px;

    font-size: 20px;
    font-weight: 500;
}


/* PREVIEW AREA */

.editor-section{
    padding: 20px 0 40px;
}

.editor-preview{
    display: flex;
    justify-content: center;
}

.bag-area{
    width: 520px;
    height: 600px;

    background: #EDE9E9;

    display: flex;
    justify-content: center;
    align-items: center;

    position: relative;
}

.editor-bag{
    width: 65%;
}


/* DESIGN */

.editor-design{
    position: absolute;

    width: 110px;

    left: 50%;
    top: 62%;

    transform: translate(-50%, -50%);
}


/* WIDTH GUIDE */

.width-guide{
    position: absolute;

    left: 50%;
    top: 73%;

    transform: translateX(-50%);

    display: flex;
    align-items: center;
    gap: 8px;

    color: #fff;
    font-size: 14px;
}

.width-guide .line{
    width: 28px;
    height: 2px;
    background: #fff;
}


/* HEIGHT GUIDE */

.height-guide{
    position: absolute;
    left: 65%;
    top: 60%;
    transform: translateY(-50%);

    display: flex;
    align-items: center;
    gap: 10px;
}

.measure-line{
    position: relative;
    width: 2px;
    height: 90px;
    background: #fff;
}

.top-cap,
.bottom-cap{
    position: absolute;
    left: 50%;

    width: 12px;
    height: 2px;

    background: #fff;

    transform: translateX(-50%);
}

.top-cap{
    top: 0;
}

.bottom-cap{
    bottom: 0;
}

.height-text{
    color: #fff;
    font-size: 14px;
    white-space: nowrap;
}


/* ZOOM */

.zoom-controls{
    width: fit-content;

    margin: 25px auto 0;

    background: #fff;

    border-radius: 50px;

    box-shadow: 0 4px 12px rgba(0,0,0,0.08);

    padding: 10px 25px;

    display: flex;
    align-items: center;
    gap: 30px;
}

.zoom-controls button{
    border: none;
    background: transparent;

    font-size: 36px;
    color: #555;

    line-height: 1;

    cursor: pointer;
}

.zoom-controls span{
    font-size: 30px;
    font-weight: 500;
    color: #333;
}


/* modal */

/* Modal */
.upload-modal {
    border-radius: 0;
    border: none;
    position: relative;
    padding: 10px;
}

.custom-close {
    position: absolute;
    top: 18px;
    right: 18px;
    z-index: 10;
    font-size: 14px;
}

.upload-title {
    font-size: 34px;
    font-weight: 700;
    color: #111;
    margin-top: 15px;
    margin-bottom: 8px;
}

.upload-subtitle {
    color: #666;
    font-size: 16px;
    margin-bottom: 35px;
}

.upload-box {
    border: 2px dashed #ff6b6b;
    border-radius: 6px;
    min-height: 420px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.upload-content {
    text-align: center;
}

.upload-icon {
    position: relative;
    display: inline-block;
    font-size: 52px;
    color: #b86a62;
}

.upload-arrow {
    position: absolute;
    font-size: 20px;
    color: #fff;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -45%);
}

.upload-text {
    margin-top: 20px;
    color: #444;
    font-size: 18px;
}

.divider {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 20px 0;
}

.divider::before,
.divider::after {
    content: "";
    width: 90px;
    height: 1px;
    background: #ddd;
}

.divider span {
    margin: 0 15px;
    color: #777;
    font-size: 15px;
}

.browse-file-btn {
    border: 1px solid #ff4d4d;
    background: #fff;
    color: #ff4d4d;
    padding: 10px 26px;
    border-radius: 8px;
    font-weight: 500;
    transition: .3s;
}

.browse-file-btn:hover {
    background: #ff4d4d;
    color: #fff;
}

/* Background overlay */
.modal-backdrop.show {
    opacity: .55;
}

@media (max-width: 991.98px){

    /* Header */
    .editor-navbar{
        height: 70px;
    }

    .editor-logo img{
        height: 40px;
        margin-left: 0;
    }

    .editor-actions{
        gap: 20px;
    }

    .preview-text{
        font-size: 20px;
    }

    .continue-btn{
        padding: 12px 30px;
        font-size: 18px;
    }

    /* Preview */
    .bag-area{
        width: 100%;
        max-width: 450px;
        height: 520px;
    }

    .editor-design{
        width: 95px;
    }

    .width-guide{
        top: 74%;
        font-size: 13px;
    }

    .height-guide{
        left: 67%;
    }

    .measure-line{
        height: 75px;
    }

    /* Zoom */
    .zoom-controls{
        gap: 25px;
        padding: 10px 22px;
    }

    .zoom-controls button{
        font-size: 32px;
    }

    .zoom-controls span{
        font-size: 26px;
    }

    /* Modal */
    .upload-title{
        font-size: 30px;
    }

    .upload-box{
        min-height: 350px;
    }
}

@media (max-width: 767.98px){

    /* Header */
    .editor-navbar{
        height: auto;
        padding: 15px 0;

        flex-direction: column;
        gap: 15px;
    }

    .editor-logo img{
        height: 38px;
        margin-left: 0;
    }

    .editor-actions{
        width: 100%;
        justify-content: space-between;
        gap: 15px;
    }

    .preview-text{
        font-size: 18px;
    }

    .continue-btn{
        padding: 12px 24px;
        font-size: 16px;
    }

    /* Editor */
    .editor-section{
        padding: 20px 0 30px;
    }

    .bag-area{
        width: 100%;
        max-width: 350px;
        height: 420px;
    }

    .editor-bag{
        width: 70%;
    }

    .editor-design{
        width: 80px;
    }

    /* Width guide */
    .width-guide{
        top: 74%;
        gap: 6px;
        font-size: 12px;
    }

    .width-guide .line{
        width: 22px;
    }

    /* Height guide */
    .height-guide{
        left: 68%;
        gap: 8px;
    }

    .measure-line{
        height: 60px;
    }

    .height-text{
        font-size: 12px;
    }

    /* Zoom */
    .zoom-controls{
        gap: 20px;
        padding: 8px 18px;
    }

    .zoom-controls button{
        font-size: 28px;
    }

    .zoom-controls span{
        font-size: 22px;
    }

    /* Upload Modal */
    .upload-title{
        font-size: 26px;
    }

    .upload-subtitle{
        font-size: 15px;
        margin-bottom: 25px;
    }

    .upload-box{
        min-height: 280px;
    }

    .upload-icon{
        font-size: 44px;
    }

    .upload-arrow{
        font-size: 18px;
    }

    .upload-text{
        font-size: 16px;
    }

    .divider::before,
    .divider::after{
        width: 60px;
    }
}

@media (max-width: 575.98px){

    /* Header */
    .editor-actions{
        flex-direction: column;
        align-items: stretch;
    }

    .preview-text{
        text-align: center;
        font-size: 16px;
    }

    .continue-btn{
        width: 100%;
        font-size: 15px;
        padding: 11px;
    }

    /* Preview */
    .bag-area{
        max-width: 100%;
        height: 340px;
    }

    .editor-bag{
        width: 72%;
    }

    .editor-design{
        width: 65px;
    }

    /* Guides */
    .width-guide{
        font-size: 11px;
    }

    .width-guide .line{
        width: 18px;
    }

    .height-guide{
        left: 70%;
    }

    .measure-line{
        height: 45px;
    }

    .top-cap,
    .bottom-cap{
        width: 10px;
    }

    .height-text{
        font-size: 11px;
    }

    /* Zoom */
    .zoom-controls{
        gap: 15px;
        padding: 8px 15px;
    }

    .zoom-controls button{
        font-size: 24px;
    }

    .zoom-controls span{
        font-size: 18px;
    }

    /* Modal */
    .upload-modal{
        padding: 15px;
    }

    .custom-close{
        top: 12px;
        right: 12px;
    }

    .upload-title{
        font-size: 22px;
    }

    .upload-box{
        min-height: 220px;
        padding: 20px;
    }

    .upload-icon{
        font-size: 38px;
    }

    .upload-text{
        font-size: 14px;
    }

    .browse-file-btn{
        width: 100%;
        padding: 12px;
    }

    .divider::before,
    .divider::after{
        width: 40px;
    }

    .divider span{
        font-size: 13px;
    }
}

/* ============================== REVIEW DESIGN PAGE ================================== */

.review-section {
    padding: 28px 34px;
}

.product-preview {
    background: #dcd8d8;
    min-height: 485px;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}

/* Bag */

.bag-image {
    width: 320px;
    max-width: 100%;
}

/* Design Overlay */

.design-image {
    position: absolute;

    width: 105px;

    left: 50%;
    top: 58%;

    transform: translate(-50%, -50%);
}

/* Content */

.review-content {
    padding-left: 10px;
}

.review-title {
    font-size: 24px;
    font-weight: 700;
    color: #111;
    margin-bottom: 8px;
}

.review-subtitle {
    font-size: 15px;
    color: #333;
    margin-bottom: 24px;
}

.declaration-title {
    font-size: 22px;
    font-weight: 700;
    color: #111;
    margin-bottom: 8px;
}

.declaration-subtitle {
    font-size: 15px;
    margin-bottom: 16px;
}

.declaration-list {
    padding-left: 20px;
    margin-bottom: 28px;
}

.declaration-list li {
    margin-bottom: 10px;
    line-height: 1.6;
    color: #222;
    font-size: 15px;
}

.declaration-check {
    margin-bottom: 28px;
}

.form-check-input {
    width: 18px;
    height: 18px;
    margin-top: 3px;
}

.form-check-label {
    padding-left: 8px;
    font-size: 15px;
    color: #555;
}

/* Buttons */

.action-buttons {
    display: flex;
    gap: 14px;
}

.continue-btn {
    flex: 1;
    height: 58px;
    border: none;
    border-radius: 40px;
    background: #ef1a1a;
    color: #fff;
    font-size: 22px;
    font-weight: 500;
}

.change-btn {
    flex: 1;
    height: 58px;
    border-radius: 40px;
    border: 1.5px solid #ef1a1a;
    background: transparent;
    color: #ef1a1a;
    font-size: 22px;
    font-weight: 500;
}


/* Responsive */

@media (max-width: 991px) {

    .review-content {
        padding-left: 0;
    }

    .action-buttons {
        flex-direction: column;
    }

    .product-preview {
        min-height: 400px;
    }

    .bag-image {
        width: 260px;
    }

    .design-image {
        width: 90px;
    }
    
    .continue-btn,
    .change-btn{
        height: 54px;
        font-size: 20px;
    }
}
@media (max-width: 767.98px){

    .action-buttons{
        flex-direction: column;
        gap: 12px;
    }

    .continue-btn,
    .change-btn{
        width: 100%;
        height: 52px !important;
        font-size: 18px;
    }
}

@media (max-width: 575.98px){

    .action-buttons{
        gap: 10px;
    }

    .continue-btn,
    .change-btn{
        height: 48px !important;
        border-radius: 30px;
        font-size: 16px;
        font-weight: 500;
    }
}

/* =========================
   AUTH PAGES (SPLIT LAYOUT)
========================= */
.auth-wrapper {
    min-height: 100vh;
    display: flex;
}

.auth-bg {
    background: #fdf2f2;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 40px;
    position: relative;
    overflow: hidden;
}

.auth-bg-content {
    position: relative;
    z-index: 2;
    text-align: center;
}

.auth-bg-content h1 {
    font-weight: 800;
    font-size: 40px;
    color: #000;
    margin-bottom: 20px;
}

.auth-bg-content p {
    font-size: 18px;
    color: #444;
}

.auth-bg img {
    max-width: 80%;
    margin-top: 30px;
}

.auth-form-container {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 60px 40px;
    background: #fff;
}

.auth-card {
    width: 100%;
    max-width: 450px;
    margin: 0 auto;
}

.register-card {
    max-width: 600px;
}

.auth-logo {
    display: block;
    margin-bottom: 40px;
}

.auth-logo img {
    height: 40px;
}

.auth-header h2 {
    font-weight: 700;
    margin-bottom: 10px;
    font-size: 32px;
}

.auth-header p {
    color: #666;
    font-size: 15px;
    margin-bottom: 30px;
}

.auth-input {
    border-radius: 10px;
    padding: 14px 18px;
    border: 1px solid #e0e0e0;
    background: #fcfcfc;
    font-size: 15px;
    width: 100%;
}

.password-wrapper {
    position: relative;
}

.password-toggle {
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    cursor: pointer;
    color: #666;
    display: flex;
    align-items: center;
    justify-content: center;
}

.password-wrapper .auth-input {
    padding-right: 45px;
}

.auth-input:focus {
    border-color: #ed1c24;
    box-shadow: 0 0 0 0.25rem rgba(237, 28, 36, 0.15);
    background: #fff;
}

.auth-btn {
    background: #ed1c24;
    color: #fff;
    padding: 14px;
    border-radius: 50px;
    font-weight: 600;
    border: none;
    transition: all 0.3s ease;
    font-size: 16px;
    margin-top: 10px;
}

.auth-btn:hover {
    background: #d61820;
    color: #fff;
}

.auth-switch {
    font-size: 15px;
    color: #666;
    margin-top: 20px;
}

.auth-switch a {
    color: #ed1c24;
    font-weight: 600;
    text-decoration: none;
}

.auth-switch a:hover {
    text-decoration: underline;
}

.back-to-home {
    display: inline-flex;
    align-items: center;
    color: #666;
    text-decoration: none;
    font-weight: 500;
    margin-bottom: 30px;
    font-size: 14px;
    transition: 0.3s ease;
}

.back-to-home:hover {
    color: #ed1c24;
}
.back-to-home svg {
    margin-right: 8px;
}