
  
  *{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}


body{
    font-family:'Poppins',sans-serif;
    background:#ffffff;
    color:#222;
    padding-top: 117px;   /* 42px announcement + 75px header */
}



/* Announcement Bar */

.announcement{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1100;

    overflow: hidden;
    background: #D4AF37;
    color: #fff;
    padding: 12px 0;
    font-size: 13px;
    letter-spacing: 1px;
}

.announcement-track{
    display:flex;
    width:max-content;
    animation:marquee 18s linear infinite;
}

.announcement-track span{
    padding:0 60px;
    font-weight:500;
    flex-shrink:0;
}

@keyframes marquee{
    from{
        transform:translateX(0);
    }
    to{
        transform:translateX(-50%);
    }
}
.top-bar{

    position:fixed;

    top:0;

    left:0;

    width:100%;

    z-index:9999;

}



/* Header */


.header{
    position: fixed;
    top: 42px;
    left: 0;

    width: 100%;
    height: 75px;

    padding: 0 5%;

    display: flex;
    align-items: center;
    justify-content: space-between;

    background: #fff;

    box-shadow: 0 5px 25px rgba(0,0,0,.08);
    z-index: 1000;
}


.logo img{

width:180px;

}



nav{

display:flex;
gap:35px;

}


nav a{

text-decoration:none;
color:#222;
font-size:18px;
transition:.3s;

}



nav a:hover{

color:#D4AF37;

}




.icons{

display:flex;
gap:20px;
font-size:22px;

}






/* Hero */


.hero{
    min-height:85vh;

    background:#fff;

    display:flex;
    align-items:center;
    justify-content:space-between;

    padding:60px 8%;
    gap:50px;
}

.hero-content{
    flex:1;
    max-width:600px;
}

.hero-right{
    flex:1;
    display:flex;
    justify-content:center;
    align-items:center;
}

.hero-right img{
    width:100%;
    max-width:520px;
    height:auto;
    display:block;
    border-radius:18px;
    object-fit:cover;
}



.hero-content{

max-width:600px;

}



.hero h1{

font-family:'Playfair Display',serif;

font-size:60px;

line-height:1.2;

color:#111;

}



.hero p{

margin:25px 0;

font-size:18px;

}



.btn{

display:inline-block;

padding:15px 35px;

background:#D4AF37;

color:white;

text-decoration:none;

border-radius:30px;

transition:.3s;

}



.btn:hover{

transform:translateY(-5px);

background:#b8962e;

}

.hero-right{background:linear-gradient(180deg, rgba(212,175,55,0.06), rgba(212,175,55,0.02));padding:9px;border-radius:18px;text-align:center}
    .hero-right img{width:60%;border-radius:12px;object-fit:cover}




/* Slider */


.jewellery-slider{

overflow:hidden;

padding:60px 0;

}



.slider-track{
    display:flex;
    gap:20px;
    width:fit-content;
    animation:slide 30s linear infinite;
}



.slider-track img{

width:260px;

height:260px;

object-fit:cover;

border-radius:20px;

}



@keyframes slide{
    0%{
        transform:translateX(0);
    }

    100%{
        transform:translateX(calc(-50% - 10px));
    }
}







/* Common Section */


.section,
.reviews,
.instagram,
.contact,
.why{

padding:80px 8%;

}



h2{

text-align:center;

font-family:'Playfair Display',serif;

font-size:42px;

margin-bottom:50px;

color:#111;

}







/* Collections */


.collection-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:30px;

}



.collection-card{

overflow:hidden;

border-radius:20px;

box-shadow:0 10px 30px rgba(0,0,0,.1);

transition:.4s;

}



.collection-card:hover{

transform:translateY(-10px);

}



.collection-card img{

width:100%;
height:350px;
object-fit:cover;

}



.collection-card h3{

padding:20px;

text-align:center;

font-family:'Playfair Display',serif;
 color:#111;

 font-size: 22px;
}








/* Products */


.product-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:30px;

}



.product-card{

text-align:center;
 cursor:pointer;
padding:20px;

box-shadow:0 8px 25px rgba(0,0,0,.08);

transition:.3s;

 display: flex;

    flex-direction: column;

    justify-content: space-between;

    border-radius:15px;

    overflow:hidden;

    max-width:360px;

    margin:auto;

}



.product-card:hover{

transform:translateY(-8px);

}



.product-card img{

width:100%;

height:320px;

object-fit:cover;

border-radius:15px;

}



.product-card h3{

margin-top:15px;

}









/* Why Choose */


.features{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:25px;

text-align:center;

}



.features div{

padding:30px;

border:1px solid #eee;

border-radius:20px;

transition:.3s;

}



.features div:hover{

border-color:#D4AF37;

transform:translateY(-8px);

}


/* Why Choose Icons - Gold */

.features i {
    color: #D4AF37 !important;
}





/* Reviews */


.review-box{

max-width:500px;

margin:20px auto;

padding:30px;

text-align:center;

border-radius:20px;

box-shadow:0 5px 25px rgba(0,0,0,.08);

font-style:italic;

}







/* Instagram */


.insta-grid{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:20px;

}



.insta-grid img{

width:100%;

height:250px;

object-fit:cover;

border-radius:15px;

}







/* Contact */


.contact{

text-align:center;

background:#faf8f2;

}







/* Footer */


footer{

background:#111;

color:white;

padding:50px 8%;

text-align:center;

}



.footer-logo img{

width:130px;

filter:brightness(0) invert(1);

}



.footer-links{

margin-top:20px;

display:flex;

justify-content:center;

gap:25px;

}



.footer-links a{

color:white;

text-decoration:none;

font-size:14px;

}









/* Mobile Responsive */


@media(max-width:768px){

.header-right{
    gap:10px;
}

.search-btn{
    width:38px;
    height:38px;
    font-size:18px;
}

.enquiry-btn{
    padding:10px 18px;
    font-size:13px;
}



nav{

display:none;

}


.hero{

height:70vh;

padding:30px;

}


.hero h1{

font-size:38px;

}



.collection-grid,
.product-grid{

grid-template-columns:1fr;

}



.features{

grid-template-columns:1fr;

}



.insta-grid{

grid-template-columns:repeat(2,1fr);

}


h2{

font-size:32px;

}


.slider-track img{

width:200px;

height:200px;

}


}





/* Header Right */

.header-right{
    display:flex;
    align-items:center;
    gap:18px;
}

/* Search Icon */

.search-btn{
    width:45px;
    height:45px;
    display:flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
    font-size:20px;
    color:#333;
    border:1px solid #D4AF37;
    border-radius:50%;
    transition:0.3s ease;
}

.search-btn:hover{
    background:#D4AF37;
    color:#fff;
    transform:translateY(-2px);
}

/* Enquiry Button */

.enquiry-btn{
    text-decoration:none;
    color:#333;
    border:1px solid #D4AF37;
    padding:12px 28px;
    border-radius:30px;
    font-weight:500;
    transition:0.3s ease;
}

.enquiry-btn:hover{
    background:#D4AF37;
    color:#fff;
    transform:translateY(-2px);
}


/* ===========================
   Search Overlay
=========================== */

.search-overlay{

position:fixed;
top:0;
left:0;

width:100%;
height:100vh;

background:rgba(0,0,0,.55);

display:none;

justify-content:center;
align-items:flex-start;

padding-top:120px;

z-index:99999;

backdrop-filter:blur(8px);

}

.search-container{

background:#fff;

width:650px;

max-width:92%;

padding:35px;

border-radius:18px;

box-shadow:0 20px 60px rgba(0,0,0,.18);

position:relative;

animation:popup .35s ease;

}

@keyframes popup{

from{

opacity:0;
transform:translateY(-30px);

}

to{

opacity:1;
transform:translateY(0);

}

}

.search-container h2{

font-size:30px;

margin-bottom:20px;

}

#searchInput{

width:100%;

padding:16px 20px;

border:1px solid #ddd;

border-radius:12px;

font-size:16px;

outline:none;

}

#searchInput:focus{

border-color:#D4AF37;

}

.close-search{

position:absolute;

top:20px;
right:20px;

border:none;

background:none;

font-size:24px;

cursor:pointer;

}

#searchResults{

margin-top:20px;

max-height:350px;

overflow-y:auto;

}








.search-item{

display:flex;

align-items:center;

gap:15px;

text-decoration:none;

color:#222;

border-bottom:1px solid #eee;

padding:14px;

cursor:pointer;

transition:.3s;
}



.search-item p{

margin-top:5px;

color:#D4AF37;

font-weight:600;

}


.search-item:hover{
background:#faf7ef;
}

.search-item img{
width:60px;
height:60px;
object-fit:cover;
border-radius:10px;
}

.search-item h4{
margin:0;
font-size:16px;
font-weight:600;
}



.no-results{
padding:20px;
text-align:center;
color:#888;
}
.social-section{
    text-align:center;
    padding:60px 20px;
}

.social-section h2{
    font-size:50px;
    margin-bottom:40px;
}





.social-icons span{
    font-size:20px;
    font-weight:600;
}




.whatsapp-btn{

width:100%;

margin-top:15px;

padding:12px;

background:#25D366;

color:#fff;

border:none;

border-radius:10px;

font-size:15px;

font-weight:600;

cursor:pointer;

transition:.3s;

}

.whatsapp-btn:hover{

background:#1da851;

}

.mrp{

text-decoration:line-through;

color:#888;

margin-right:8px;

}

.selling-price{

color:#b8860b;

font-weight:700;

font-size:18px;

}

/* Collection Sidebar */

#categoryList{

    position: sticky;

    top: 130px;

}

#categoryList .list-group-item{

    border: none;

    border-radius: 10px;

    margin-bottom: 8px;

    font-weight: 500;

    transition: .3s;

}

#categoryList .list-group-item:hover{

    background: #f7f7f7;

    transform: translateX(5px);

}

#categoryList .active{

    background:#D4AF37;

    color:#fff;

    border:1px solid #D4AF37;

    border-radius:30px;

}



@media(max-width:991px){

    #categoryList{

        position: static;

        margin-bottom:25px;

    }

}


/* Collection Categories */



.category-bar::-webkit-scrollbar{

    display:none;

}







.product-title{

    font-size:17px;

    font-weight:600;

    line-height:1.5;

    height:52px;

    overflow:hidden;

    min-height: 90px;

    display: flex;

    align-items: center;

    justify-content: center;

    text-align: center;

    line-height: 1.3;

}

.price{

    display:flex;

    justify-content:center;

    align-items:center;

    gap:10px;

    margin:15px 0;

}

.mrp{

    color:#999;

    text-decoration:line-through;

    font-size:16px;

    order:2;

}

.selling-price{

    color:#111;

    font-size:20px;

    font-weight:700;

    order:1;

}









/* ===== Collection Categories ===== */












.collection-title h2{

    font-family:"Playfair Display",serif;

    font-size:44px;

    font-weight:600;

    color:#1f1f1f;

    margin:0;

    letter-spacing:.5px;

}

.collection-page{

    margin-top:18px;

    margin-bottom:40px;

} 


/* Collection Sticky Header */

.collection-header{

    position:sticky;
    top:42px;
    z-index:1000;
    background:#fff;
    border-bottom:1px solid #ececec;
    padding:12px;
    text-align:center;
    border-radius:0 0 20px 20px;
    box-shadow:0 3px 12px rgba(0,0,0,.05);
     z-index:500;

}

.collection-header h2{

    font-family:"Playfair Display",serif;

    font-weight:600;

    margin:0 0 10px;

    text-align:center;

    font-size:36px;
}

/* ===== Collection Header ===== */



.collection-header .container{

    display:flex;

    flex-direction:column;

    align-items:center;

    padding:12px 0 10px;

}




@media (max-width:768px){

    .category-bar{

        justify-content:flex-start;
        display:flex;
    align-items:center;
    flex-wrap:nowrap;
    gap:10px;
    overflow-x:auto;
    white-space:nowrap;
    width:100%;
    margin:0;
    scrollbar-width:none;
    position:sticky;
    top:95px;
    background:#fff;
    padding:8px 0;
    z-index:900;
    scrollbar-width:none;
    }

}

/* ===== Category Button ===== */

.category-item{

    flex:0 0 auto;

    padding:10px 22px;

    border:1px solid #D4AF37;

    border-radius:30px;

    background:#fff;

    color:#333;

    font-size:15px;

    font-weight:500;

    cursor:pointer;

    white-space:nowrap;

    transition:all .3s ease;

}

.category-item:hover{

    background:#D4AF37;

    color:#fff;

    border-color:#D4AF37;

}

.category-item.active{

    background:#D4AF37;

    color:#fff;

    border-color:#D4AF37;

}





.collection-card,
.collection-card:hover,
.collection-card:visited{

    text-decoration: none !important;

    color: #111 !important;

}

.collection-card h3{

    color: #111 !important;

    text-decoration: none !important;

}

.contact-follow{

    display:flex;

    justify-content: center;

     align-items:flex-start;

    gap:80px;

    padding:100px 8%;

    background:#fdf9f4;

}

.contact-box{
    flex:0.45;
    text-align:center;
    margin-left: 60px;
}

.contact-box p{

    margin:14px 0;

}
.follow-box{

    flex:0.45;
    margin-right: 60px;
    text-align:center;

}


.follow-box p{
    margin-bottom:20px;
    
}

.social-icons{

    display:flex;
    justify-content:center;
    align-items:center;
    gap:25px;
    margin-top:25px;

}

.social-icons a{

    width:70px;
    height:70px;

    border:2px solid #b8860b;
    border-radius:50%;

    display:flex;
    justify-content:center;
    align-items:center;

    color:#b8860b;
    text-decoration:none;

    box-sizing:border-box;
}

.social-icons a i{

    font-size:34px;
    line-height:1;
}

.social-icons a{

    transition: all 0.3s ease;
    cursor: pointer;

}

.social-icons a:hover{

    background: #b8860b;
    color: #fff;
    transform: translateY(-3px) scale(1.08);
    box-shadow: 0 8px 20px rgba(184,134,11,0.35);

}

.social-icons a:hover i{

    color: #fff;

}

.footer-policy-links{
    margin-top:18px;
    display:flex;
    justify-content:center;
    align-items:center;
    gap:12px;
    flex-wrap:wrap;
}

.footer-policy-links a{
    color:#fff;
    text-decoration:none;
    font-size:15px;
    transition:0.3s;
}

.footer-policy-links a:hover{
    color:#d4af37;
}

.footer-policy-links span{
    color:#777;
}
#collections,
#bestsellers,
#about,
#contact{
    scroll-margin-top:140;
}



/* ==========================
   Product Image Zoom
========================== */

.image-viewer{
    overflow:hidden;
    border-radius:18px;
    cursor:zoom-in;
    background:#fff;
}

.image-viewer img{
    width:100%;
    transition:transform .35s ease;
    display:block;
}

.image-viewer:hover img{
    transform:scale(1.6);
}

/* ==========================
Product Gallery
========================== */



#mainImage{
    width:100%;
    border-radius:18px;
    cursor:zoom-in;
    transition:.35s ease;
    object-fit:cover;
}

#mainImage:hover{
    transform:scale(1.03);
}

.thumb-image{
    width:100%;
    height:110px;
    object-fit:cover;
    border-radius:12px;
    border:2px solid transparent;
    transition:.3s;
}

.thumb-image:hover{
    border-color:#D4AF37;
    transform:scale(1.05);
}

.buy-btn{
    display:block;
    width:100%;
    padding:14px;
    margin-top:15px;

    background:#D4AF37;
    color:#fff;
    text-decoration:none;
    text-align:center;

    border-radius:10px;
    font-weight:600;
    transition:.3s ease;
}

.buy-btn:hover{
    background:#b8860b;
    color:#fff;
    transform:translateY(-3px);
}

.product-card img{
    transition:transform .4s ease;
}

.product-card:hover img{
    transform:scale(1.06);
}
.product-card{
    position:relative;
}

.badge-best{
    position:absolute;
    top:15px;
    left:15px;

    background:#D4AF37;
    color:#fff;

    font-size:12px;
    font-weight:600;

    padding:7px 14px;

    border-radius:30px;

    letter-spacing:.5px;

    z-index:5;

    box-shadow:0 5px 15px rgba(0,0,0,.15);
}

.badge-discount{
    position:absolute;
    top:55px;
    left:15px;

    background:#d32f2f;
    color:#fff;

    font-size:11px;
    font-weight:600;

    padding:6px 12px;

    border-radius:30px;

    z-index:6;

    box-shadow:0 5px 12px rgba(0,0,0,.15);
}

/* ==========================
LOGIN
========================== */

.login-section{

min-height:80vh;

display:flex;

justify-content:center;

align-items:center;

padding:80px 20px;

background:#faf8f2;

}

.login-card{

width:420px;

background:#fff;

padding:45px;

border-radius:20px;

box-shadow:0 15px 40px rgba(0,0,0,.08);

text-align:center;

}

.login-card h2{

margin-bottom:10px;

}

.login-card p{

color:#777;

margin-bottom:25px;

}

.login-card input{

width:100%;

padding:15px;

margin-bottom:18px;

border:1px solid #ddd;

border-radius:10px;

outline:none;

}

.login-card input:focus{

border-color:#D4AF37;

}

.login-card button{

width:100%;

padding:15px;

background:#D4AF37;

border:none;

color:#fff;

font-weight:600;

border-radius:10px;

cursor:pointer;

transition:.3s;

}

.login-card button:hover{

background:#b58d1d;

}

.login-links{

margin-top:20px;

}

.login-links a{

color:#D4AF37;

text-decoration:none;

}

/* User Menu */

.user-menu{
    position:relative;
}

.user-btn{

    background:#fff;

    border:1px solid #D4AF37;

    padding:12px 22px;

    border-radius:30px;

    cursor:pointer;

    display:flex;

    align-items:center;

    gap:10px;

    font-weight:500;

    transition:.3s;

}

.user-btn:hover{

    background:#D4AF37;

    color:#fff;

}

.user-dropdown{

    position:absolute;

    top:58px;

    right:0;

    width:220px;

    background:#fff;

    border-radius:15px;

    box-shadow:0 12px 30px rgba(0,0,0,.12);

    overflow:hidden;

    display:none;

    z-index:99999;

}

.user-dropdown a{

    display:block;

    padding:15px 20px;

    color:#222;

    text-decoration:none;

    transition:.25s;

}

.user-dropdown a:hover{

    background:#f7f7f7;

}

.show-dropdown{

    display:block;

}



/* ==========================
   My Account Dashboard
========================== */

.account-section{

padding:70px 20px;

background:#faf8f5;

min-height:80vh;

}

.account-dashboard{

max-width:850px;

margin:auto;

background:#fff;

border-radius:20px;

padding:40px;

box-shadow:0 10px 30px rgba(0,0,0,.08);

}

.profile-box{

text-align:center;

margin-bottom:40px;

}

.profile-avatar{

width:95px;

height:95px;

margin:auto;

border-radius:50%;

background:#d4af37;

display:flex;

align-items:center;

justify-content:center;

font-size:36px;

color:#fff;

margin-bottom:18px;

}

.member-text{

color:#777;

font-size:15px;

}

.dashboard-grid{

display:grid;

grid-template-columns:repeat(2,1fr);

gap:20px;

margin-bottom:35px;

}

.dashboard-card{

background:#fafafa;

border:1px solid #eee;

border-radius:16px;

padding:25px;

text-align:center;

text-decoration:none;

color:#333;

transition:.35s;

}

.dashboard-card i{

font-size:28px;

color:#c79a2b;

margin-bottom:12px;

display:block;

}

.dashboard-card:hover{

transform:translateY(-5px);

box-shadow:0 10px 25px rgba(0,0,0,.08);

}

.logout-btn{

width:100%;

padding:15px;

border:none;

border-radius:12px;

background:#111;

color:#fff;

font-weight:600;

transition:.3s;

}

.logout-btn:hover{

background:#c79a2b;

}


.login-btn{
    display: inline-block;
    padding: 12px 22px;
    border: 1px solid #D4AF37;
    border-radius: 30px;
    background: #fff;
    color: #222;
    text-decoration: none;
    font-weight: 500;
    transition: 0.3s;
}

.login-btn:hover{
    background: #D4AF37;
    color: #fff;
}

.profile-save-btn{
    background:#D4AF37;
    color:#fff;
    border:none;
    border-radius:30px;

    padding:12px 30px;

    font-size:15px;
    font-weight:600;

    cursor:pointer;
    transition:.3s;

    display:block;
    margin:25px auto 0;
}

.profile-save-btn:hover{
    background:#b8860b;
    transform:translateY(-2px);
}

.wishlist-btn{
    position:absolute;
    top:15px;
    right:15px;

    width:42px;
    height:42px;

    border:none;
    border-radius:50%;

    background:#fff;
    color:#d4af37;

    display:flex;
    align-items:center;
    justify-content:center;

    cursor:pointer;

    box-shadow:0 4px 12px rgba(0,0,0,.15);

    z-index:100;          /* <-- खूप जास्त ठेव */
    transition:.3s;
}

.wishlist-btn:hover{
    background:#d4af37;
    color:#fff;
}

.product-card{
    position:relative;
    overflow:hidden;
}

.product-card img{
    position:relative;
    z-index:1;            /* image खाली राहील */
}

.badge-best,
.badge-discount{
    z-index:50;           /* badge heart पेक्षा खाली */
}

.wishlist-remove{

    position:absolute;

    top:15px;

    right:15px;

    width:42px;

    height:42px;

    border:none;

    border-radius:50%;

    background:#fff;

    color:#e53935;

    font-size:18px;

    cursor:pointer;

    z-index:100;

    box-shadow:0 5px 15px rgba(0,0,0,.15);

}

.wishlist-remove:hover{

background:#e53935;
color:#fff;

transform:scale(1.08);

}

.cart-btn{

    position:absolute;

    top:70px;

    right:15px;

    width:40px;

    height:40px;

    border:none;

    border-radius:50%;

    background:#fff;

    color:#D4AF37;

    box-shadow:0 4px 12px rgba(0,0,0,.12);

    display:flex;

    justify-content:center;

    align-items:center;

    cursor:pointer;

    transition:.3s;

    z-index:10;

}

.cart-btn:hover{

    background:#D4AF37;

    color:#fff;

    transform:scale(1.08);

}

.cart-count{

position:absolute;

top:-8px;

right:-8px;

min-width:20px;
height:20px;

padding:0 5px;

border-radius:50px;

background:#d4af37;

color:#fff;

font-size:11px;

font-weight:700;

display:flex;

align-items:center;

justify-content:center;

box-shadow:0 3px 8px rgba(0,0,0,.18);

animation:cartPop .25s ease;

}

@keyframes cartPop{

0%{

transform:scale(.4);

}

70%{

transform:scale(1.25);

}

100%{

transform:scale(1);

}

}

/* ==========================
Orders
========================== */

.order-card{

display:flex;
gap:30px;

max-width:900px;

margin:25px auto;

padding:25px;

background:#fff;

border-radius:18px;

box-shadow:0 10px 30px rgba(0,0,0,.08);

align-items:center;

}

.order-image img{

width:280px;

height:280px;

object-fit:cover;

border-radius:15px;

}

.order-details{

flex:1;

}

.order-details h3{

font-size:28px;

font-weight:600;

margin-bottom:18px;

color:#222;
}

.payment-badge{

background:#22c55e;

color:#fff;

padding:6px 15px;

border-radius:20px;

font-size:13px;

font-weight:600;

}

.status-processing{

background:#fff4d6;

color:#c26b00;

padding:6px 15px;

border-radius:20px;

font-size:13px;

font-weight:600;

}

.status-shipped{

background:#bfe5ff;

color:#0056a3;

padding:5px 14px;

border-radius:20px;

font-size:13px;

font-weight:600;

}

.status-delivered{

background:#c8f7c5;

color:#1b7d2c;

padding:5px 14px;

border-radius:20px;

font-size:13px;

font-weight:600;

}

.status-cancelled{

background:#ffd1d1;

color:#b10000;

padding:5px 14px;

border-radius:20px;

font-size:13px;

font-weight:600;

}

@media(max-width:768px){

.order-card{

flex-direction:column;

text-align:center;

}



}


.order-btn{

display:inline-block;

margin-top:18px;

padding:11px 24px;

background:#D4AF37;

color:#fff;

text-decoration:none;

border-radius:10px;

font-size:14px;

font-weight:600;

transition:.3s;

}

.order-btn:hover{

background:#b8860b;

color:#fff;

transform:translateY(-2px);

}

#collections,
#bestsellers,
#about,
#contact {
    scroll-margin-top: 0;
}







/* =========================================
   SOHARSHI HOME PAGE - MOBILE RESPONSIVE
========================================= */

@media (max-width: 768px) {

    /* =========================
       BODY
    ========================= */

    body {
        padding-top: 95px;
        overflow-x: hidden;
    }


    /* =========================
       HEADER
    ========================= */

    .header {
        top: 42px;
        height: 53px;
        padding: 0 15px;
    }

    .logo img {
        width: 125px;
        height: auto;
    }

    .header-right {
        gap: 8px;
    }

    .search-btn {
        width: 36px;
        height: 36px;
        font-size: 16px;
    }

    .enquiry-btn {
        padding: 8px 12px;
        font-size: 12px;
    }


    /* =========================
       HERO
    ========================= */

    .hero {
        min-height: auto;
        height: auto;

        display: flex;
        flex-direction: column;

        padding: 45px 20px 30px;

        text-align: center;

        background-position: center;
    }

    .hero-content {
        max-width: 100%;
        width: 100%;
    }

    .hero h1 {
        font-size: 36px;
        line-height: 1.2;
    }

    .hero p {
        font-size: 15px;
        line-height: 1.7;
        margin: 18px 0;
    }

    .hero .btn {
        padding: 12px 25px;
        font-size: 14px;
    }

    .hero-right {
        width: 100%;
        margin-top: 30px;
        padding: 5px;
    }

    .hero-right img {
        width: 100%;
        max-height: 330px;
        object-fit: cover;
    }


    /* =========================
       JEWELLERY SLIDER
    ========================= */

    .jewellery-slider {
        padding: 25px 0;
    }

    .slider-track {
        gap: 12px;
    }

    .slider-track img {
        width: 150px;
        height: 150px;
        border-radius: 15px;
    }


    /* =========================
       COMMON SECTIONS
    ========================= */

    .section,
    .reviews,
    .instagram,
    .contact,
    .why {
        padding: 55px 18px;
    }

    h2 {
        font-size: 30px;
        margin-bottom: 30px;
    }


    /* =========================
       COLLECTIONS
    ========================= */

    .collection-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .collection-card {
        width: 100%;
        border-radius: 16px;
    }

    .collection-card img {
        width: 100%;
        height: 280px;
    }

    .collection-card h3 {
        font-size: 20px;
        padding: 16px;
    }


    /* =========================
       BEST SELLERS
    ========================= */

    .product-grid {
        grid-template-columns: 1fr;
        gap: 22px;
    }

    .product-card {
        width: 100%;
        max-width: 360px;
        margin: auto;
        padding: 15px;
    }

    .product-card img {
        width: 100%;
        height: 300px;
    }

    .product-title {
        font-size: 16px;
        min-height: 70px;
        height: auto;
        margin-top: 10px;
    }

    .selling-price {
        font-size: 20px;
    }

    .mrp {
        font-size: 15px;
    }


    /* =========================
       WHY CHOOSE
    ========================= */

    .features {
        grid-template-columns: repeat(2, 1fr);
        gap: 12px;
    }

    /* ==========================
   Why Choose - Gold Icons
========================== */

.features i {
    color: #D4AF37;
}

    .features div {
        padding: 18px 10px;
        border-radius: 15px;
    }

    .features i {
        font-size: 22px !important;
    }

    .features h4 {
        font-size: 15px;
        margin-bottom: 8px;
    }

    .features p {
        font-size: 12px;
        line-height: 1.6;
        margin: 0;
    }


    /* =========================
       REVIEWS
    ========================= */

    .review-box {
        width: 100%;
        padding: 22px 18px;
    }


    /* =========================
       CONTACT + FOLLOW
    ========================= */

    .contact-follow {
        flex-direction: column;
        gap: 35px;

        padding: 55px 20px;

        text-align: center;
    }

    .contact-box,
    .follow-box {
        width: 100%;
        margin: 0;
        flex: none;
    }

    .contact-box h2,
    .follow-box h2 {
        font-size: 30px;
        margin-bottom: 20px;
    }

    .contact-box p {
        font-size: 14px;
        margin: 10px 0;
    }

    .social-icons {
        gap: 15px;
        margin-top: 20px;
    }

    .social-icons a {
        width: 52px;
        height: 52px;
    }

    .social-icons a i {
        font-size: 24px;
    }


    /* =========================
       FOOTER
    ========================= */

    footer {
        padding: 40px 18px;
    }

    .footer-logo img {
        width: 110px;
    }

    .footer-links {
        flex-wrap: wrap;
        gap: 12px 20px;
    }

    .footer-links a {
        font-size: 13px;
    }

    .footer-policy-links {
        gap: 8px;
    }

    .footer-policy-links a {
        font-size: 12px;
    }

    footer p {
        font-size: 12px;
    }


    /* =========================
       SEARCH OVERLAY
    ========================= */

    .search-overlay {
        padding-top: 90px;
    }

    .search-container {
        width: 94%;
        padding: 25px 18px;
    }

    .search-container h2 {
        font-size: 25px;
    }

    #searchInput {
        padding: 13px 15px;
    }

    .search-item {
        gap: 10px;
        padding: 12px 5px;
    }

    .search-item img {
        width: 50px;
        height: 50px;
    }

    .search-item h4 {
        font-size: 14px;
    }


    /* =========================
       USER MENU
    ========================= */

    .user-dropdown {
        right: 0;
        width: 190px;
    }

}



/* =========================================
   MOBILE MENU
========================================= */

.mobile-menu-btn {
    display: none;

    border: none;
    background: transparent;

    width: 40px;
    height: 40px;

    font-size: 22px;
    color: #222;

    cursor: pointer;
}


/* Mobile Menu Panel */

.mobile-menu {

    position: fixed;

    top: 0;
    left: -100%;

    width: 82%;
    max-width: 330px;
    height: 100vh;

    background: #fff;

    z-index: 999999;

    box-shadow: 8px 0 30px rgba(0,0,0,.15);

    transition: left .35s ease;

    padding: 25px 20px;
}


/* Open */

.mobile-menu.active {
    left: 0;
}


/* Menu Header */

.mobile-menu-header {

    display: flex;

    align-items: center;

    justify-content: space-between;

    padding-bottom: 20px;

    border-bottom: 1px solid #eee;
}

.mobile-menu-header span {

    font-family: "Playfair Display", serif;

    font-size: 25px;

    font-weight: 600;

    color: #111;
}


.mobile-menu-close {

    width: 40px;
    height: 40px;

    border: 1px solid #D4AF37;

    border-radius: 50%;

    background: #fff;

    color: #D4AF37;

    font-size: 20px;

    cursor: pointer;
}


/* Mobile Navigation */

.mobile-nav {

    display: flex;

    flex-direction: column;

    gap: 5px;

    margin-top: 25px;
}


.mobile-nav a {

    display: flex;

    align-items: center;

    gap: 15px;

    padding: 15px;

    border-radius: 12px;

    color: #222;

    text-decoration: none;

    font-size: 16px;

    font-weight: 500;

    transition: .3s;
}


.mobile-nav a i {

    width: 25px;

    color: #D4AF37;

    font-size: 18px;
}


.mobile-nav a:hover {

    background: #faf7ef;

    color: #D4AF37;

}


/* =========================================
   MOBILE HEADER
========================================= */

@media (max-width: 768px) {

    .header {

        height: 53px;

        padding: 0 12px;

        gap: 8px;
    }


    .mobile-menu-btn {

        display: flex;

        align-items: center;

        justify-content: center;

        order: 1;

        flex-shrink: 0;
    }


    .logo {

        order: 2;

        flex: 1;
    }


    .logo img {

        width: 120px;

        display: block;
    }


    nav {

        display: none;
    }


    .header-right {

        order: 3;

        gap: 7px;

        flex-shrink: 0;
    }


    .search-btn {

        width: 36px;

        height: 36px;

        font-size: 16px;
    }


    /* Login area can become too wide on mobile */

    #loginArea {

        max-width: 40px;

        overflow: hidden;
    }

}





/* =========================================
   MOBILE HEADER - FINAL FIX
========================================= */

@media (max-width: 768px) {

    .header {
        height: 53px;
        padding: 0 14px;
        display: flex;
        align-items: center;
        gap: 8px;
    }

    /* Hamburger */

    .mobile-menu-btn {
        display: flex;
        align-items: center;
        justify-content: center;

        width: 38px;
        height: 38px;

        padding: 0;
        margin: 0;

        flex: 0 0 38px;

        font-size: 21px;
    }


    /* Logo */

    .logo {
        flex: 1;
        min-width: 0;
    }

    .logo img {
        width: 120px;
        max-width: 100%;
        height: auto;
        display: block;
    }


    /* Desktop navigation hidden */

    .header > nav {
        display: none;
    }


    /* Right side */

    .header-right {
        display: flex;
        align-items: center;
        justify-content: flex-end;

        gap: 7px;

        flex: 0 0 auto;
        width: auto;
    }


    /* Search */

    .search-btn {
        width: 37px;
        height: 37px;

        flex: 0 0 37px;

        padding: 0;

        display: flex;
        align-items: center;
        justify-content: center;

        font-size: 16px;

        border: 1px solid #D4AF37;
        border-radius: 50%;
    }


    /* Login area */

    #loginArea {
        display: flex;
        align-items: center;

        width: 37px;
        height: 37px;

        max-width: 37px;

        overflow: visible;
    }


    /* Login / user button */

    #loginArea .login-btn,
    #loginArea .user-btn {

        width: 37px;
        height: 37px;

        padding: 0;

        margin: 0;

        display: flex;
        align-items: center;
        justify-content: center;

        border-radius: 50%;

        font-size: 0;
    }


    /* User icon */

    #loginArea .user-btn i,
    #loginArea .login-btn i {

        font-size: 16px;
        margin: 0;
    }


    /* If login button has text but no icon */




    /* User dropdown */

    #loginArea .user-dropdown {

        position: fixed;

        top: 100px;
        right: 12px;

        width: 210px;

        max-width: calc(100vw - 24px);
    }

}




/* =========================
   MOBILE USER ICON
========================= */

.mobile-user-btn{
    width:45px;
    height:45px;

    display:flex;
    align-items:center;
    justify-content:center;

    border:1px solid #D4AF37;
    border-radius:50%;

    background:#fff;
    color:#333;

    text-decoration:none;

    font-size:20px;

    transition:.3s ease;
}

.mobile-user-btn:hover{
    background:#D4AF37;
    color:#fff;
}


/* Mobile */
@media(max-width:768px){

    .mobile-user-btn{
        width:40px;
        height:40px;
        font-size:17px;
    }

}







/* =================================
   MOBILE USER ICON - FINAL
================================= */

@media (max-width: 768px) {

    #loginArea {
        width: 40px;
        height: 40px;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    /* User button */

    #loginArea .user-btn,
    #loginArea .login-btn,
    #loginArea .mobile-user-btn {

        width: 40px !important;
        height: 40px !important;

        min-width: 40px !important;
        max-width: 40px !important;

        padding: 0 !important;
        margin: 0 !important;

        border: 1px solid #D4AF37 !important;
        border-radius: 50% !important;

        background: #fff !important;

        display: flex !important;
        align-items: center !important;
        justify-content: center !important;

        color: #333 !important;

        font-size: 0 !important;
    }


    /* 👤 Font Awesome icon */

    #loginArea .user-btn i,
    #loginArea .login-btn i,
    #loginArea .mobile-user-btn i {

        display: block !important;

        font-family: "Font Awesome 6 Free" !important;
        font-weight: 900 !important;

        font-size: 17px !important;

        line-height: 1 !important;

        color: #D4AF37 !important;

        margin: 0 !important;
    }


    /* Hide Hello name on mobile */

    #loginArea .user-name,
    #loginArea .user-arrow {

        display: none !important;

    }


    /* Hover */

    #loginArea .user-btn:hover,
    #loginArea .login-btn:hover,
    #loginArea .mobile-user-btn:hover {

        background: #D4AF37 !important;

    }


    #loginArea .user-btn:hover i,
    #loginArea .login-btn:hover i,
    #loginArea .mobile-user-btn:hover i {

        color: #fff !important;

    }

}



/* ==========================
   MOBILE MENU
========================== */

.mobile-menu-btn {
    display: none;
    border: none;
    background: transparent;
    font-size: 24px;
    color: #222;
    cursor: pointer;
    padding: 5px;
    z-index: 10001;
}


/* MOBILE */

@media (max-width: 768px) {

    .header {
        height: 58px;
        top: 62px;
        padding: 0 14px;
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    .mobile-menu-btn {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 40px;
        height: 40px;
        flex-shrink: 0;
    }

    .logo img {
        width: 125px;
    }

    nav {
        display: none;
        position: absolute;
        top: 58px;
        left: 0;
        width: 100%;
        background: #fff;
        flex-direction: column;
        gap: 0;
        padding: 10px 0;
        box-shadow: 0 10px 25px rgba(0,0,0,.10);
        z-index: 10000;
    }

    nav.mobile-menu-open {
        display: flex;
    }

    nav a {
        width: 100%;
        padding: 15px 25px;
        font-size: 16px;
        border-bottom: 1px solid #eee;
    }

    nav a:hover {
        background: #faf7ef;
        color: #D4AF37;
    }

    .header-right {
        gap: 8px;
        flex-shrink: 0;
    }

    .search-btn {
        width: 38px;
        height: 38px;
        font-size: 17px;
    }

    .user-btn {
        width: 38px;
        height: 38px;
        padding: 0;
        border-radius: 50%;
        justify-content: center;
        font-size: 0;
    }

    .user-btn::first-letter {
        font-size: 18px;
    }

}






/* ==========================
   Mobile Menu
========================== */

.mobile-menu-btn {

    display: none;

    width: 42px;
    height: 42px;

    border: 1px solid #D4AF37;
    border-radius: 50%;

    background: #fff;
    color: #b8860b;

    align-items: center;
    justify-content: center;

    font-size: 19px;

    cursor: pointer;

    transition: .3s ease;

}

.mobile-menu-btn:hover {

    background: #D4AF37;
    color: #fff;

}


/* Mobile Navigation */

.mobile-nav {

    display: none;

}


/* ==========================
   Mobile
========================== */

@media (max-width: 768px) {

    .header {

        height: 70px;
        top: 42px;

        padding: 0 15px;

    }


    .logo img {

        width: 135px;

    }


    .desktop-nav {

        display: none !important;

    }


    .header-right {

        display: flex;

        align-items: center;

        gap: 8px;

    }


    .search-btn {

        width: 40px;
        height: 40px;
        color:#D4AF37;

        font-size: 17px;

    }


    .login-btn {

        width: 40px;
        height: 40px;

        padding: 0;

        display: flex;

        align-items: center;
        justify-content: center;

        border-radius: 50%;

    }


    .user-btn {

        width: 40px;
        height: 40px;

        padding: 0;

        border-radius: 50%;

        justify-content: center;

    }


    .user-name,
    .user-arrow {

        display: none;

    }


    .user-btn i {

        font-size: 18px;

    }


    .mobile-menu-btn {

        display: flex;

    }


    /* Mobile menu panel */

    .mobile-nav {

        position: fixed;

        top: 112px;

        left: 0;

        width: 100%;

        background: #fff;

        padding: 15px 20px 20px;

        box-shadow:
            0 10px 25px rgba(0,0,0,.12);

        display: flex;

        flex-direction: column;

        gap: 5px;

        z-index: 9998;

        transform: translateY(-20px);

        opacity: 0;

        visibility: hidden;

        pointer-events: none;

        transition:
            opacity .25s ease,
            transform .25s ease,
            visibility .25s ease;

    }


    .mobile-nav-open {

        opacity: 1;

        transform: translateY(0);

        visibility: visible;

        pointer-events: auto;

    }



    .mobile-nav a {

        display: flex;

        align-items: center;

        gap: 15px;

        padding: 15px 12px;

        color: #222;

        text-decoration: none;

        font-size: 16px;

        font-weight: 500;

        border-radius: 10px;

    }


    .mobile-nav a i {

        width: 24px;

        color: #b8860b;

        text-align: center;

        font-size: 18px;

    }


    .mobile-nav a:hover {

        background: #faf7ef;

        color: #b8860b;

    }


    /* Mobile Hero */

    .hero {

        height: auto;

        min-height: 75vh;

        padding: 50px 20px;

        background-position: center;

        display: flex;

        align-items: center;

    }


    .hero-content {

        max-width: 100%;

    }


    .hero h1 {

        font-size: 36px;

        line-height: 1.2;

    }


    .hero p {

        font-size: 15px;

        line-height: 1.6;

    }


  

    .section,
    .reviews,
    .why {

        padding: 60px 20px;

    }


    h2 {

        font-size: 32px;

    }

}



@media(max-width:768px){

    .hero{
        min-height:auto;

        display:flex;
        flex-direction:column;

        align-items:center;
        justify-content:flex-start;

        text-align:center;

        padding:40px 20px 50px;

        gap:0;

        background:#fff;
    }

    .hero-content{
        order:1;

        width:100%;
        max-width:100%;
    }

    .hero h1{
        font-family:'Playfair Display',serif;

        font-size:36px;

        line-height:1.2;

        margin:0;
    }

    .hero p{
        font-size:15px;

        line-height:1.6;

        margin:20px 0;
    }

    .hero-content .btn{
        display:inline-block;

        padding:13px 28px;

        font-size:14px;
    }

    .hero-right{
        order:2;

        width:100%;

        display:flex;

        justify-content:center;

        margin-top:30px;

        padding:0;

        background:none;
    }

    .hero-right img{
        width:100%;

        max-width:360px;

        height:auto;

        display:block;

        border-radius:16px;

        object-fit:cover;
    }

}




/* =========================================
   CUSTOMER REVIEWS
========================================= */

.reviews {
    padding: 70px 40px;
    background: #fff;
    overflow: hidden;
}

.reviews h2 {
    text-align: center;
    margin-bottom: 40px;
}


/* Horizontal review container */

.reviews-scroll {
    display: flex;

    gap: 25px;

    overflow-x: auto;
    overflow-y: hidden;

    padding: 10px 10px 25px;

    scroll-behavior: smooth;

    scroll-snap-type: x mandatory;

    -webkit-overflow-scrolling: touch;
}


/* Hide vertical type behaviour */

.reviews-scroll::-webkit-scrollbar {
    height: 8px;
}

.reviews-scroll::-webkit-scrollbar-track {
    background: #f5f5f5;
    border-radius: 20px;
}

.reviews-scroll::-webkit-scrollbar-thumb {
    background: #d4af37;
    border-radius: 20px;
}


/* Individual review */

.review-box {
    flex: 0 0 450px;

    min-height: 170px;

    background: #fff;

    border-radius: 18px;

    padding: 30px;

    text-align: center;

    box-shadow:
        0 5px 25px rgba(0, 0, 0, 0.08);

    scroll-snap-align: start;

    display: flex;

    flex-direction: column;

    justify-content: center;
}


/* Review text */

.review-box p {
    margin: 10px 0;

    font-size: 16px;

    font-style: italic;

    line-height: 1.6;
}


/* Stars */

.review-stars {
    color: #d4af37;

    font-size: 20px;

    letter-spacing: 2px;

    margin-bottom: 8px;
}


/* Customer name */

.review-box strong {
    font-size: 15px;

    color: #222;
}


/* Date */

.review-date {
    font-size: 13px;

    color: #888;

    margin-top: 5px;
}


/* Mobile */

@media (max-width: 768px) {

    .reviews {
        padding: 50px 15px;
    }

    .review-box {
        flex: 0 0 85vw;

        min-height: 170px;

        padding: 25px;
    }

}







































/* =========================================
   CLEAN PRODUCT CARD TOP SECTION
========================================= */

.product-card {
    position: relative !important;
    padding-top: 52px !important;
}


/* =========================================
   BEST SELLER - TOP LEFT
========================================= */

.product-card .badge-best {
    position: absolute !important;

    top: 14px !important;
    left: 14px !important;

    margin: 0 !important;

    z-index: 20 !important;

    padding: 7px 13px !important;

    border-radius: 20px !important;

    font-size: 15px !important;
    font-weight: 700 !important;

    line-height: 1 !important;
}


/* =========================================
   WISHLIST - TOP RIGHT
========================================= */

.product-card .wishlist-btn {
    position: absolute !important;

    top: 10px !important;
    right: 58px !important;

    z-index: 20 !important;

    margin: 0 !important;
}


/* =========================================
   CART - TOP RIGHT
========================================= */

.product-card .cart-btn {
    position: absolute !important;

    top: 10px !important;
    right: 14px !important;
    

    z-index: 20 !important;

    margin: 0 !important;
}


/* =========================================
   DISCOUNT - IMAGE वर
========================================= */

.product-card .badge-discount {

    position: absolute !important;

    top: 58px !important;
    left: 14px !important;

    z-index: 20 !important;

    margin: 0 !important;

    padding: 7px 11px !important;

    border-radius: 20px !important;

    background: #e52b2b !important;
    color: #fff !important;

    font-size: 15px !important;
    font-weight: 700 !important;

    line-height: 1 !important;
}


/* =========================================
   IMAGE
========================================= */

.product-card > a:first-of-type {
    display: block !important;
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 768px) {

    .product-card {
        padding-top: 46px !important;
    }

    .product-card .badge-best {
        top: 10px !important;
        left: 10px !important;

        padding: 6px 10px !important;
        font-size: 13px !important;
    }

    .product-card .wishlist-btn {
        top: 8px !important;
        right: 50px !important;
    }

    .product-card .cart-btn {
        top: 8px !important;
        right: 10px !important;
    }

    .product-card .badge-discount {
        top: 52px !important;
        left: 10px !important;

        padding: 6px 9px !important;
        font-size: 13px !important;
    }

}




/* ==============================
   WISHLIST + CART ALIGNMENT
============================== */

.product-card {
    position: relative;
}


/* Wishlist */

.product-card .wishlist-btn {
    position: absolute;

    top: 10px;
    right: 52px;

    width: 38px;
    height: 38px;

    padding: 0;
    margin: 0;

    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    z-index: 5;
}


/* Cart */

.product-card .cart-btn {
    position: absolute;

    top: 10px;
    right: 10px;

    width: 38px;
    height: 38px;

    padding: 0;
    margin: 0;

    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    z-index: 5;
}


/* Icons same alignment */

.product-card .wishlist-btn i,
.product-card .cart-btn i {
    font-size: 16px;
    line-height: 1;
}



/* ==============================
   MOBILE
============================== */

@media (max-width: 768px) {

    .product-card .wishlist-btn,
    .product-card .cart-btn {

        width: 34px;
        height: 34px;

        top: 8px;
    }


    .product-card .wishlist-btn {
        right: 46px;
    }


    .product-card .cart-btn {
        right: 8px;
    }


    .product-card .wishlist-btn i,
    .product-card .cart-btn i {
        font-size: 13px;
    }


    /* Bestseller stays LEFT */

    .product-card .badge-best {
        left: 8px;
        top: 8px;
    }

}


/* ==============================
   SMALL MOBILE
   480px and below
============================== */

@media (max-width: 480px) {

    .product-card .wishlist-btn,
    .product-card .cart-btn {

        width: 32px;
        height: 32px;

        top: 7px;
    }


    .product-card .wishlist-btn {
        right: 43px;
    }


    .product-card .cart-btn {
        right: 7px;
    }


    .product-card .wishlist-btn i,
    .product-card .cart-btn i {
        font-size: 17px;
    }


    .product-card .badge-best {
        left: 7px;
        top: 7px;
    }

}





/* =========================================
   RELATED PRODUCT - BUY NOW
   REMOVE BLACK BORDER
========================================= */

#relatedProducts .product-card .btn,
#relatedProducts .product-card .btn-dark,
#relatedProducts .product-card a.btn {

    border: none !important;
    border-color: transparent !important;
    outline: none !important;
    box-shadow: none !important;
}


#relatedProducts .product-card .btn:hover,
#relatedProducts .product-card .btn:focus,
#relatedProducts .product-card .btn:active,
#relatedProducts .product-card .btn:focus-visible {

    border: none !important;
    border-color: transparent !important;
    outline: none !important;
    box-shadow: none !important;

}











/* =========================================
   REMOVE GAP BELOW HEADER
========================================= */

.hero,
.hero-section,
.hero-banner {
    margin-top: 0px !important;
    padding-top: 40px !important;
}



/* =========================================================
   MOBILE HERO IMAGE - FULL & NEAT
========================================================= */

@media (max-width: 768px) {

    .hero {
        height: auto !important;
        min-height: auto !important;
        display: flex !important;
        flex-direction: column !important;
        padding: 20px 20px 30px !important;
        gap: 20px !important;
        overflow: visible !important;
    }

    .hero-content {
        width: 100% !important;
        max-width: 100% !important;
        text-align: center !important;
    }

    .hero-right {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 0 !important;

        display: flex !important;
        justify-content: center !important;
        align-items: center !important;

        overflow: visible !important;
    }

    .hero-right img {
        width: 100% !important;
        height: auto !important;
        max-width: 100% !important;
        max-height: none !important;

        object-fit: contain !important;
        object-position: center center !important;

        display: block !important;
        border-radius: 18px !important;
    }
}

/* =========================================
   MOBILE - HERO TOP SPACING
========================================= */

@media (max-width: 768px) {

    .hero {
        padding-top: 25px !important;
    }

    .hero-content {
        padding-top: 10px !important;
    }

}

























/* ==================== ABOUT SECTION ==================== */

.soharshi-about {
  position: relative;
  padding: 60px 7%;
  background: #fbfaf8;
  overflow: hidden;
  font-family: 'Poppins', sans-serif;
}

.about-container {
  max-width: 1200px;
  margin: auto;
  display: grid;
  grid-template-columns: 1fr 0.9fr;
  gap: 90px;
  align-items: center;
}


/* ---------- CONTENT ---------- */

.about-content {
  max-width: 600px;
}

.about-subtitle {
  display: inline-block;
  font-size: 20px;
  letter-spacing: 4px;
  color: #d4af37;
  font-weight: 500;
  margin-bottom: 20px;
}

.about-content h2 {
  font-family: 'Playfair Display', serif;
  font-size: clamp(38px, 4vw, 58px);
  line-height: 1.12;
  font-weight: 400;
  color: #242321;
  margin: 0;
}

.about-content h2 span {
  font-style: italic;
  color: #d4af37;
}


.about-line {
  width: 55px;
  height: 1px;
  background: #b7a47d;
  margin: 28px 0;
}

.about-content p {
  font-size: 17px;
  line-height: 1.9;
  color: #77736d;
  margin: 0 0 16px;
  
}

.about-content .about-intro {
  font-size: 18px;
  line-height: 1.8;
  color: #4d4a45;
}



/* ---------- VISUAL ---------- */

.about-visual {
  position: relative;
  min-height: 540px;
  display: flex;
  align-items: center;
  justify-content: center;
  isolation: isolate;
}

.about-image-frame {
  width: 390px;
  height: 500px;
  position: relative;
  padding: 12px;
  border: 1px solid #d4af37;
  transform: rotate(2deg);
}

.about-image-placeholder {
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.about-image-placeholder img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.about-image-placeholder span {
  font-family: 'Playfair Display', serif;
  font-size: 32px;
  letter-spacing: 6px;
}

.about-image-placeholder small {
  margin-top: 8px;
  font-size: 9px;
  letter-spacing: 5px;
}


/* ---------- FLOATING CARD ---------- */

.about-floating-card {
  position: absolute;
  bottom: 45px;
  left: 0;
  background: rgba(255,255,255,0.95);
  padding: 18px 22px;
  display: flex;
  align-items: center;
  gap: 13px;
  box-shadow: 0 12px 35px rgba(0,0,0,0.08);
  min-width: 220px;
  border: 1px solid #d4af37;
}

.about-floating-card > span {
  color: #d4af37;
  font-size: 22px;
}

.about-floating-card strong {
  display: block;
  font-family: 'Playfair Display', serif;
  font-size: 15px;
  font-weight: 500;
  color: #292825;
}

.about-floating-card small {
  display: block;
  margin-top: 3px;
  font-size: 13px;
  color: #99958e;
}


/* ---------- CIRCLE ---------- */

.about-circle-text {
  position: absolute;
  right: 5px;
  top: 35px;

  width: 105px;
  height: 105px;
  border-radius: 50%;
  border: 1px solid #d4af37;

  display: flex;
  align-items: center;
  justify-content: center;

  background: #fbfaf8;
  z-index: 5;
  box-sizing: border-box;
}

.about-circle-text span {
  width: 75px;
  font-size: 9px;
  line-height: 1.8;
  text-align: center;
  letter-spacing: 2px;
  color: #d4af37;
}


/* ==================== TABLET ==================== */

@media (max-width: 900px) {

  .soharshi-about {
    padding: 80px 6%;
  }

  .about-container {
    grid-template-columns: 1fr;
    gap: 60px;
  }

  .about-content {
    max-width: 100%;
  }

  .about-visual {
    min-height: 500px;
  }

}


/* ==================== MOBILE ==================== */

@media (max-width: 600px) {

  .soharshi-about {
    padding: 70px 20px;
  }

  .about-content h2 {
    font-size: 38px;
  }

  .about-content p {
    font-size: 13px;
  }

  .about-content .about-intro {
    font-size: 14px;
  }

  .about-features {
    gap: 20px;
  }

  .about-visual {
    min-height: 430px;
  }

  .about-image-frame {
    width: 280px;
    height: 370px;
  }

  .about-image-placeholder span {
    font-size: 24px;
    letter-spacing: 4px;
  }


  /* MOBILE CIRCLE */

.about-circle-text {
  top: 8px;
  right: 2%;

  width: 82px;
  height: 82px;

  z-index: 10;
  pointer-events: none;
}
  .about-circle-text span {
    width: 60px;
    font-size: 5.5px;
  }


  .about-floating-card {
    bottom: 20px;
    left: 0;
    min-width: 190px;
    padding: 14px 16px;
    z-index: 6;
  }

  .about-floating-card strong {
    font-size: 13px;
  }

  .about-floating-card small {
    font-size: 8px;
  }

  .about-button {
    width: 100%;
    justify-content: center;
  }

}





/* =========================================================
   INSTAGRAM / IN-APP BROWSER FIX
   ========================================================= */

@media (max-width: 600px) {

  .about-visual {
    position: relative;
    width: 100%;
    min-height: 430px;
    overflow: visible;
  }

  .about-image-frame {
    position: relative;
    z-index: 2;
  }

  .about-circle-text {
    position: absolute;

    top: 5px;
    right: 1%;

    width: 82px;
    height: 82px;

    z-index: 10;

    transform: translateZ(0);
    -webkit-transform: translateZ(0);
  }

  .about-circle-text span {
    display: block;
    width: 60px;

    font-size: 5.5px;
    line-height: 1.8;
    letter-spacing: 2px;

    text-align: center;
  }

  .about-floating-card {
    position: absolute;
    z-index: 11;
  }
}










/* =========================================================
   SOHARSHI — OUR PHILOSOPHY
========================================================= */

.soharshi-philosophy {
    width: 100%;
    padding: 110px 20px 120px;
    background: #fffdf9;
    text-align: center;
    position: relative;
    overflow: hidden;
}


/* Main Content */

.philosophy-inner {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
}


/* Small Label */

.philosophy-label {
    display: block;

    font-family: 'Poppins', sans-serif;
    font-size: 18px;
    font-weight: 500;

    letter-spacing: 5px;
    color: #b38b2e;

    margin-bottom: 22px;
}


/* Main Heading */

.philosophy-title {
    margin: 0;

    font-family: 'Playfair Display', serif;
    font-size: clamp(38px, 4.2vw, 58px);
    line-height: 1.08;
    font-weight: 500;

    color: #242321;
}


/* Gold Italic Word */

.philosophy-title span {
    display: block;

    font-style: italic;
    font-weight: 400;

    color: #c9a227;

    margin-top: 3px;
}


/* Small Gold Line */

.philosophy-line {
    width: 48px;
    height: 1px;

    background: #c9a227;

    margin: 32px auto 42px;

    position: relative;
}


/* Text Area */

.philosophy-text {
    max-width: 850px;
    margin: 0 auto;
}


/* Paragraph */

.philosophy-text p {
    margin: 0 auto 24px;

    font-family: 'Poppins', sans-serif;
    font-size: 17px;
    line-height: 2;

    font-weight: 300;

    color: #242321;
}


/* Last Paragraph */

.philosophy-text p:last-child {
    margin-bottom: 0;
}


/* =========================================================
   SUBTLE PREMIUM DETAILS
========================================================= */

.soharshi-philosophy::before {
    content: "";
    position: absolute;

    width: 260px;
    height: 260px;

    border: 1px solid rgba(201, 162, 39, 0.10);
    border-radius: 50%;

    top: -150px;
    left: -150px;
}


.soharshi-philosophy::after {
    content: "";
    position: absolute;

    width: 220px;
    height: 220px;

    border: 1px solid rgba(201, 162, 39, 0.08);
    border-radius: 50%;

    bottom: -130px;
    right: -130px;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 768px) {

    .soharshi-philosophy {
        padding: 80px 24px 90px;
    }

    .philosophy-label {
        font-size: 10px;
        letter-spacing: 4px;
        margin-bottom: 18px;
    }

    .philosophy-title {
        font-size: clamp(34px, 8vw, 46px);
    }

    .philosophy-line {
        margin: 26px auto 32px;
    }

    .philosophy-text p {
        font-size: 14px;
        line-height: 1.9;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 480px) {

    .soharshi-philosophy {
        padding: 65px 20px 75px;
    }

    .philosophy-label {
        font-size: 9px;
        letter-spacing: 3px;
    }

    .philosophy-title {
        font-size: 34px;
        line-height: 1.12;
    }

    .philosophy-title span {
        margin-top: 2px;
    }

    .philosophy-line {
        width: 40px;
        margin: 24px auto 28px;
    }

    .philosophy-text p {
        font-size: 13px;
        line-height: 1.85;
    }

}







    /* ==============================
   SOHARSHI
   A NOTE FROM OUR FOUNDER
   ============================== */

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  font-family: 'Poppins', sans-serif;
  background: #ffffff;
  color: #222;
}


/* MAIN PAGE */

.founder-page {
  min-height: 100vh;

  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;

  text-align: center;

  padding: 90px 25px;

  background:
    radial-gradient(
      circle at top,
      #faf7f2 0%,
      #ffffff 55%
    );
}


/* LABEL */

.founder-label {
  font-size: 16px;
  letter-spacing: 4px;
  text-transform: uppercase;

  color: #D4AF37;

  margin-bottom: 20px;

  font-weight: 500;
}


/* HEADING */

.founder-page h1 {
  font-family: 'Playfair Display', serif;

  font-size: clamp(38px, 4.2vw, 58px);

  line-height: 1.15;

  font-weight: 600;

  color: #181818;
}

.founder-page h1 span {
  color: #D4AF37;
  font-style: italic;
}


/* DECORATIVE LINE */

.founder-line {
  width: 55px;
  height: 1px;

  background: #b59a70;

  margin: 28px auto 42px;
}


/* MESSAGE */

.founder-message {
  position: relative;

  max-width: 760px;

  margin: 0 auto;
}


/* QUOTE */

.quote-mark {
  font-family: 'Playfair Display', serif;

  font-size: 80px;

  line-height: 0.7;

  color: #d8c7ad;

  margin-bottom: 25px;
}


/* PARAGRAPHS */

.founder-message p {
  font-size: 18px;
  line-height: 2;
  color: #242321;
  font-weight: 300;
  margin-bottom: 20px;
}

.founder-signature {
  margin-top: 30px;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.founder-signature span {
  font-family: 'Playfair Display', serif;
  font-size: 20px;
  color: #777;
  font-style: italic;
}

.founder-signature strong {
  font-family: 'Playfair Display', serif;
  font-size: 28px;
  font-weight: 600;
  letter-spacing: 1px;
  color: #D4AF37;
}


/* SIGNATURE */

.founder-signature {
  margin-top: 30px;

  display: flex;
  flex-direction: column;

  gap: 4px;
}

.founder-signature span {
  font-family: 'Playfair Display', serif;

  font-size: 20px;

  color: #777;

  font-style: italic;
}

.founder-signature strong {
  font-family: 'Playfair Display', serif;

  font-size: 28px;

  font-weight: 600;

  letter-spacing: 1px;

  color: #D4AF37;
}


/* MOBILE */

@media (max-width: 600px) {

  .founder-page {
    padding: 70px 20px;
  }

  .founder-label {
    font-size: 10px;
    letter-spacing: 3px;
  }

  .founder-page h1 {
    font-size: 42px;
  }

  .founder-line {
    margin: 22px auto 35px;
  }

  .quote-mark {
    font-size: 65px;
  }

  .founder-message p {
    font-size: 14px;
    line-height: 1.9;
  }

  .founder-signature strong {
    font-size: 20px;
  }

}




/* =========================
   HERO - FORCE 2 LINES
========================= */

.hero-content {
    width: 58%;
    max-width: 700px;
    flex-shrink: 0;
}

.hero-content h1 {
    width: max-content;
    max-width: none;
    white-space: nowrap;
    font-size: 54px;
    line-height: 1.15;
}


@media (max-width: 768px) {

    .hero-content {
        width: 100%;
        max-width: 100%;
    }

    .hero-content h1 {
        width: auto;
        max-width: 100%;
        white-space: normal;
        font-size: 38px;
    }

}





/* =========================================================
   BEST SELLERS — HORIZONTAL PRODUCT SCROLL
   Only layout changes — existing card design untouched
========================================================= */

#bestsellerGrid {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;

    gap: 25px;

    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;

    scrollbar-width: none;
}

#bestsellerGrid::-webkit-scrollbar {
    display: none;
}


/* =========================
   DESKTOP
   3 products visible
========================= */

#bestsellerGrid > .product-card {
    flex: 0 0 calc((100% - 50px) / 3);
}


/* =========================
   MOBILE
   1 product + next product
   partially visible
========================= */

@media (max-width: 600px) {

    #bestsellerGrid {
        gap: 15px;
    }

    #bestsellerGrid > .product-card {
        flex: 0 0 78%;
    }

}