/* GLOBAL */

*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:'Poppins',sans-serif;
}

body{
background:#f5f5f5;
}


/* ================= NAVBAR ================= */

/* ================= NAVBAR ================= */

/* NAVBAR CONTAINER (STICKY) */

#navbar{
position:sticky;
top:0;
z-index:9999;
width:100%;
}

/* NAVBAR */

.top-nav{
display:flex;
align-items:center;
justify-content:space-between;
padding:16px 40px;
background:white;
border-bottom:1px solid #eee;
}

/* shadow */

.nav-scroll{
box-shadow:0 6px 20px rgba(0,0,0,0.08);
}

.nav-left{width:33%;}
.nav-center{width:33%;display:flex;justify-content:center;}
.nav-right{width:33%;display:flex;justify-content:flex-end;gap:28px;}

.nav-icon{
font-size:20px;
cursor:pointer;
transition:.2s;
}

.nav-icon:hover{
transform:scale(1.1);
}
.nav-scroll{
box-shadow:0 6px 20px rgba(0,0,0,0.08);
}

/* ================= LOGO ================= */

.logo{
font-family:'Playfair Display',serif;
font-size:28px;
letter-spacing:4px;

opacity:0;
transform:translateY(-20px);

transition:all 0.6s ease;
}

.logo.show{
opacity:1;
transform:translateY(0);
}


/* ================= HERO ================= */

.hero-banner{
height:91.5vh;
background-image:url("https://cdn.rozana-projects.online/hero/heroimage.jpg");
background-size:cover;
background-position:center;
position:relative;
display:flex;
justify-content:center;
align-items:center;
}

.hero-brand{
position:absolute;
top:42%;
left:50%;
transform:translate(-50%,-50%);

font-size:170px;
letter-spacing:45px;

color:white;
opacity:0.8;

font-family:'Playfair Display',serif;

transition:all 0.6s ease;
}

.hero-bottom{
position:absolute;
bottom:60px;
text-align:center;
color:white;
}

.hero-buttons button{
padding:13px 32px;
margin:12px;
background:transparent;
border:1px solid white;
color:white;
border-radius:5px;
cursor:pointer;
}


/* ================= HERO ARROW ================= */

.hero-arrow{
position:absolute;
right:40px;
top:50%;
transform:translateY(-50%);
width:55px;
height:55px;
border-radius:50%;
border:2px solid white;
display:flex;
align-items:center;
justify-content:center;
color:white;
font-size:20px;
cursor:pointer;
transition:.3s;
}

.hero-arrow:hover{
background:white;
color:black;
}


/* ================= PRODUCTS HERO ================= */

.products-hero{
height:91.5vh;
background-size:cover;
background-position:center;

display:flex;
justify-content:center;
align-items:flex-end;

position:relative;
padding-bottom:80px;
}
.hero-arrow-left{
position:absolute;
left:40px;
top:50%;
transform:translateY(-50%);
width:55px;
height:55px;
border-radius:50%;
border:2px solid black;
display:flex;
align-items:center;
justify-content:center;
font-size:20px;
background:white;
cursor:pointer;
}

.collection-btn{

position:absolute;

bottom:40px;        /* change to 50px / 60px to move it lower */

left:50%;
transform:translateX(-50%);

padding:10px 22px;

background:transparent;
border:1px solid white;

color:white;
cursor:pointer;

border-radius:4px;

font-size:14px;

transition:0.3s;
}


/* ================= PROFILE DROPDOWN ================= */

/* PROFILE MENU */

.profile-menu{
position:relative;
}

/* DROPDOWN BOX */

.profile-dropdown{

display:none;
position:absolute;

top:50px;
right:0;

width:220px;

background:white;

border:1px solid #ddd;

box-shadow:0 8px 20px rgba(0,0,0,0.15);

z-index:2000;

}

.profile-dropdown.open{
display:block;
}

/* HEADER */

.profile-header{
padding:14px;
border-bottom:1px solid #eee;
}

.profile-header .welcome{
font-size:15px;
font-weight:600;
margin-bottom:4px;
}

.profile-header .sub-text{
font-size:12px;
color:#777;
margin-bottom:10px;
line-height:1.3;
}

/* LOGIN BUTTON */

.login-btn{

display: block;
  text-align: center;
background:#ff3f6c;
color:white;

padding:4px 10px;

font-size:10px;

font-weight:500;

border-radius:2px;

text-decoration:none;

}

/* MENU ITEMS */

.profile-dropdown a{

display:block;

padding:10px 14px;

font-size:14px;

color:black;

text-decoration:none;

border:none;

}

.profile-dropdown a:hover{
background:#f5f5f5;
}

/* LOGOUT */

#logoutBtn{
color:red;
font-weight:600;
}


/* ================= SIDE MENU ================= */

.side-menu{
position:fixed;
top:0;
right:-370px;
width:370px;
height:100%;
background:white;
box-shadow:-4px 0 30px rgba(0,0,0,0.2);
transition:.4s;
z-index:3000;
}

.side-menu.open{
right:0;
}

.menu-header{
display:flex;
justify-content:flex-end;
padding:20px;
}

.close-menu{
font-size:24px;
cursor:pointer;
}

.menu-content{
display:flex;
flex-direction:column;
padding:40px;
gap:20px;
font-size:18px;
}

.menu-content a{
text-decoration:none;
color:black;
}

.menu-content hr{
margin:20px 0;
border:none;
border-top:1px solid #ddd;
}

.underline{
text-decoration:underline;
font-size:16px;
}


/* ================= COLLECTIONS ================= */

.collections{
padding:80px 120px;
text-align:center;
}

.collections-grid{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:35px;
margin-top:50px;
}

.collection-card{
background:white;
border-radius:10px;
box-shadow:0 8px 20px rgba(0,0,0,0.15);
overflow:hidden;
transition:.4s;
}

.collection-card:hover{
transform:translateY(-8px) scale(1.03);
box-shadow:0 20px 40px rgba(0,0,0,0.15);
}

.collection-card img{
width:100%;
height:380px;
object-fit:cover;
}

.collection-card p{
padding:18px;
font-weight:600;
}


/* ================= ABOUT SECTION ================= */

.about-lucci{
padding:120px 180px;
background:#f8f8f8;
opacity:0;
transform:translateY(40px);
transition:all .8s ease;
}

.about-lucci.show{
opacity:1;
transform:translateY(0);
}

.about-container{
max-width:900px;
margin:auto;
}

.about-lucci h2{
font-family:'Playfair Display',serif;
font-size:36px;
margin-bottom:25px;
}

.about-lucci p{
font-size:16px;
line-height:1.8;
color:#444;
margin-bottom:20px;
}


/* ================= SEARCH OVERLAY ================= */

.search-overlay{
position:fixed;
top:0;
left:0;
width:100%;
height:100%;
background:rgba(255,255,255,0.95);
display:flex;
justify-content:center;
align-items:center;
transform:translateY(-100%);
transition:.4s;
z-index:4000;
}

.search-overlay.open{
transform:translateY(0);
}

.search-input{
width:50%;
padding:18px;
font-size:22px;
border:none;
border-bottom:2px solid black;
background:transparent;
outline:none;
}

.search-close{
position:absolute;
top:40px;
right:60px;
font-size:28px;
cursor:pointer;
}

/*---------product-details.html-----------------*/
.product-details{
padding:60px;
}

.product-container{
display:flex;
gap:60px;
max-width:1200px;
margin:auto;
}

.product-image img{
width:450px;
height:550px;
object-fit:cover;
}

.product-info{
max-width:500px;
}

.price{
font-size:22px;
margin:15px 0;
}

.add-cart{
background:black;
color:white;
padding:12px 25px;
border:none;
margin-top:15px;
cursor:pointer;
}

.wishlist{
background:white;
border:1px solid black;
padding:12px 25px;
margin-left:10px;
cursor:pointer;
}
/* PRODUCT GRID */

.hero-products{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
gap:30px;
padding:40px;
max-width:1200px;
margin:auto;
}

/* PRODUCT CARD */

.product-card{
background:white;
border-radius:8px;
overflow:hidden;
transition:all 0.3s ease;
cursor:pointer;
}

.product-card:hover{
transform:translateY(-5px);
box-shadow:0 10px 25px rgba(0,0,0,0.15);
}

/* IMAGE */

.product-img-wrapper{
overflow:hidden;
}

.product-img{
width:100%;
height:320px;
object-fit:cover;
transition:transform 0.4s ease;
}

.product-card:hover .product-img{
transform:scale(1.1);
}

.products-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
gap:30px;
padding:40px;
}

.product-card{
background:#fff;
border-radius:6px;
overflow:hidden;
text-align:center;
transition:0.3s;
}

.product-card:hover{
transform:translateY(-5px);
}

.product-img{
width:100%;
height:320px;
object-fit:cover;
}

.product-info{
padding:15px;
}

.price{
font-weight:600;
margin:10px 0;
}

.product-actions{
display:flex;
justify-content:center;
gap:10px;
}

.wishlist-btn{
background:none;
border:none;
font-size:20px;
cursor:pointer;
}

/* INFO */

.product-info{
padding:15px;
text-align:center;
}

.product-info h3{
font-size:16px;
margin-bottom:5px;
}

.price{
font-weight:bold;
color:#111;
margin-bottom:10px;
}

/* BUTTONS */

.product-actions{
display:flex;
justify-content:center;
gap:10px;
}

.product-actions button{
border:none;
padding:8px 14px;
background:black;
color:white;
cursor:pointer;
transition:0.3s;
}

.product-actions button:hover{
background:#444;
}

/* BAG Sytles */

.bag-icon{
position:relative;
}

.cart-count{
position:absolute;
top:-6px;
right:-8px;
background:black;
color:white;
font-size:11px;
padding:2px 6px;
border-radius:50%;
display:none;
}

.cart-item{
display:flex;
gap:20px;
margin-bottom:20px;
border-bottom:1px solid #ddd;
padding-bottom:15px;
}

.qty-box{
display:flex;
gap:10px;
align-items:center;
margin:10px 0;
}

.qty-box button{
padding:5px 10px;
cursor:pointer;
}

/* Whishlist styles  */

.wishlist-page{
padding:40px;
text-align:center;
}

.wishlist-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
gap:25px;
margin-top:30px;
}

.wishlist-card{
border:1px solid #eee;
padding:15px;
background:#fff;
}

.wishlist-card img{
width:100%;
height:260px;
object-fit:cover;
}

.wishlist-card h3{
font-size:16px;
margin:10px 0;
}

.wishlist-card button{
margin-top:8px;
padding:8px 12px;
border:none;
background:black;
color:white;
cursor:pointer;
}

.wishlist-card button:last-child{
background:#777;
}

/* CHECKOUT CSS */
.checkout-page{
padding:40px;
}

.checkout-container{
display:grid;
grid-template-columns:1fr 1fr;
gap:40px;
margin-top:30px;
}

.checkout-item{
display:flex;
gap:15px;
margin-bottom:15px;
border-bottom:1px solid #eee;
padding-bottom:10px;
}

.checkout-address input{
display:block;
width:100%;
padding:10px;
margin-bottom:12px;
border:1px solid #ddd;
}

.checkout-address button{
width:100%;
padding:12px;
background:black;
color:white;
border:none;
cursor:pointer;
}

/* ORDERS CSS */
.orders-page{
padding:40px;
}

.order-card{
border:1px solid #eee;
padding:20px;
margin-bottom:20px;
background:white;
}

.order-card button{
margin-top:10px;
padding:8px 12px;
background:black;
color:white;
border:none;
cursor:pointer;
}

/* CART DRAWER CSS */
.cart-drawer{
position:fixed;
top:0;
right:-420px;
width:400px;
height:100%;
background:white;
box-shadow:-5px 0 15px rgba(0,0,0,0.2);
transition:0.3s;
z-index:2000;
display:flex;
flex-direction:column;
}

.cart-drawer.open{
right:0;
}

.cart-header{
display:flex;
justify-content:space-between;
align-items:center;
padding:20px;
border-bottom:1px solid #eee;
}

.drawer-items{
flex:1;
overflow-y:auto;
padding:20px;
}

.drawer-item{
display:flex;
gap:10px;
margin-bottom:15px;
}

.drawer-item img{
width:70px;
height:90px;
object-fit:cover;
}

.drawer-footer{
padding:20px;
border-top:1px solid #eee;
}

.drawer-footer button{
width:100%;
padding:10px;
margin-top:10px;
background:black;
color:white;
border:none;
cursor:pointer;
}

/* ORDER SUCCESS CSS */
.order-success{
text-align:center;
padding:80px 20px;
}

.success-icon{
font-size:70px;
color:green;
margin-bottom:20px;
}

.success-buttons{
margin-top:30px;
}

.success-buttons button{
padding:12px 20px;
margin:10px;
background:black;
color:white;
border:none;
cursor:pointer;
}

/* PAYMENT METHOD CSS */
.payment-method{
margin-top:20px;
padding:15px;
border:1px solid #eee;
background:#fafafa;
}

.payment-method label{
display:block;
margin-top:10px;
cursor:pointer;
}

/* CART CSS */
.cart-item{
display:flex;
gap:20px;
margin-bottom:20px;
}

.cart-image img{
width:100px;
border-radius:6px;
}

.qty-box{
display:flex;
gap:10px;
align-items:center;
margin-top:10px;
}

.qty-btn{
width:30px;
height:30px;
cursor:pointer;
}

.remove-btn{
margin-top:10px;
background:none;
border:none;
color:red;
cursor:pointer;
}

.empty-cart{
text-align:center;
padding:40px;
}

.shop-btn{
display:inline-block;
margin-top:10px;
padding:10px 20px;
background:black;
color:white;
text-decoration:none;
}

.cart-count{
position:absolute;
top:-5px;
right:-5px;
background:red;
color:white;
font-size:12px;
padding:2px 6px;
border-radius:50%;
}
