/*==========================
Google Font
==========================*/
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap');

/*==========================
Reset
==========================*/

*{
margin:0;
padding:0;
box-sizing:border-box;
scroll-behavior:smooth;
}

:root{

--gold:#d4af37;
--black:#111111;
--dark:#1b1b1b;
--light:#ffffff;
--gray:#666;
--bg:#faf8f3;
--shadow:0 15px 40px rgba(0,0,0,.08);

}

body{

font-family:'Poppins',sans-serif;
background:var(--bg);
color:var(--black);
overflow-x:hidden;
line-height:1.7;

}

img{

width:100%;
display:block;

}

a{

text-decoration:none;

}

section{

padding:100px 8%;

}

.section-title{

text-align:center;
margin-bottom:60px;

}

.section-title h2{

font-size:42px;
font-weight:700;
margin-bottom:15px;

}

.section-title p{

color:#777;
font-size:18px;

}

/*==========================
Navbar
==========================*/

header{

position:fixed;
top:0;
left:0;
width:100%;
background:rgba(255,255,255,.92);
backdrop-filter:blur(15px);
box-shadow:0 5px 20px rgba(0,0,0,.08);
z-index:1000;

}

.navbar{

max-width:1400px;
margin:auto;
padding:18px 40px;

display:flex;
justify-content:space-between;
align-items:center;

}

.logo{

font-size:30px;
font-weight:800;
letter-spacing:2px;

}

.logo span{

color:#35530A;

}

.nav-links{

display:flex;
list-style:none;
gap:35px;

}

.nav-links a{

font-size:16px;
font-weight:500;
color:var(--black);
transition:.35s;

}

.nav-links a:hover{

color:#35530A;

}

.menu-btn{

display:none;
font-size:30px;
cursor:pointer;

}

/*==========================
Hero
==========================*/

.hero{

padding-top:170px;

background:linear-gradient(135deg,#ffffff,#f8f4ea);

}

.hero-content{

display:grid;
grid-template-columns:repeat(2,1fr);
align-items:center;
gap:80px;

}

.hero-left span.tagline{

display:inline-block;

background:#fff;

padding:10px 20px;

border-radius:50px;

color:#35530A;

font-weight:600;

margin-bottom:20px;

box-shadow:var(--shadow);

}

.hero-left h1{

font-size:70px;

line-height:1.1;

margin-bottom:25px;

}

.hero-left h1 span{

display:block;

color:#35530A;

}

.hero-left p{

font-size:18px;

color:#666;

margin-bottom:35px;

}

.hero-right img{

animation:float 4s ease-in-out infinite;

}

/*==========================
Buttons
==========================*/

.hero-buttons{

display:flex;
gap:20px;

}

.btn-primary{

padding:16px 38px;

background:#35530A;

color:#fff;

border-radius:40px;

font-weight:600;

transition:.35s;

}

.btn-primary:hover{

background:#b98d0f;

transform:translateY(-5px);

}

.btn-secondary{

padding:16px 38px;

border:2px solid #35530A;

color:#35530A;

border-radius:40px;

font-weight:600;

transition:.35s;

}

.btn-secondary:hover{

background:#35530A;

color:#fff;

}

/*==========================
About
==========================*/

.about-wrapper{

display:grid;

grid-template-columns:1fr 1fr;

gap:80px;

align-items:center;

}

.about-image img{

border-radius:25px;

box-shadow:var(--shadow);

}

.about-content h3{

font-size:38px;

margin-bottom:20px;

}

.about-content p{

color:#666;

margin-bottom:35px;

}

.features{

display:grid;

grid-template-columns:repeat(2,1fr);

gap:25px;

}

.feature-card{

background:#fff;

padding:25px;

border-radius:18px;

box-shadow:var(--shadow);

transition:.35s;

}

.feature-card:hover{

transform:translateY(-8px);

}

.feature-card h4{

margin-bottom:12px;

font-size:20px;

}

.feature-card p{

font-size:15px;

color:#666;

}

/*==========================
Animation
==========================*/

@keyframes float{

0%{

transform:translateY(0);

}

50%{

transform:translateY(-18px);

}

100%{

transform:translateY(0);

}
}
/*==========================
Products Section
==========================*/

.products{
background:#fff;
}

.product-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
gap:35px;
}

.product-card{
background:#fff;
border-radius:20px;
overflow:hidden;
box-shadow:var(--shadow);
transition:.4s;
}

.product-card:hover{
transform:translateY(-12px);
}

.product-card img{
height:320px;
object-fit:cover;
transition:.4s;
}

.product-card:hover img{
transform:scale(1.08);
}

.product-info{
padding:25px;
text-align:center;
}

.product-info h3{
font-size:24px;
margin-bottom:10px;
}

.product-info p{
color:#777;
margin-bottom:15px;
}

.product-info h4{
font-size:26px;
color:#35530A;
margin-bottom:20px;
}

.shop-btn{
display:inline-block;
padding:14px 34px;
background:#35530A;
color:#fff;
border-radius:40px;
font-weight:600;
transition:.3s;
}

.shop-btn:hover{
background:#111;
}

/*==========================
Why Choose Us
==========================*/

.why-us{
background:#faf8f3;
}

.why-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
gap:30px;
}

.why-card{
background:#fff;
padding:40px 25px;
border-radius:20px;
text-align:center;
box-shadow:var(--shadow);
transition:.35s;
}

.why-card:hover{
transform:translateY(-10px);
}

.icon{
font-size:50px;
margin-bottom:20px;
}

.why-card h3{
margin-bottom:15px;
font-size:24px;
}

.why-card p{
color:#777;
}

/*==========================
Collection
==========================*/

.collection{
background:#fff;
}

.collection-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
gap:30px;
}

.collection-box{
position:relative;
overflow:hidden;
border-radius:22px;
}

.collection-box img{
height:450px;
object-fit:cover;
transition:.5s;
}

.collection-box:hover img{
transform:scale(1.1);
}

.overlay{
position:absolute;
inset:0;
background:linear-gradient(transparent,rgba(0,0,0,.8));
display:flex;
align-items:flex-end;
padding:30px;
}

.overlay h3{
color:#fff;
font-size:28px;
}

/*==========================
Testimonials
==========================*/

.testimonial{
background:#faf8f3;
}

.testimonial-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
gap:30px;
}

.review{
background:#fff;
padding:35px;
border-radius:20px;
text-align:center;
box-shadow:var(--shadow);
transition:.35s;
}

.review:hover{
transform:translateY(-8px);
}

.review img{
width:90px;
height:90px;
border-radius:50%;
margin:auto;
margin-bottom:20px;
object-fit:cover;
}

.review h3{
margin-bottom:8px;
}

.review span{
color:gold;
font-size:22px;
display:block;
margin-bottom:15px;
}

.review p{
color:#666;
}

/*==========================
Contact
==========================*/

.contact{
background:#fff;
}

.contact-wrapper{
display:grid;
grid-template-columns:1fr 1fr;
gap:60px;
}

.contact-info h3{
font-size:34px;
margin-bottom:20px;
}

.contact-info p{
color:#666;
margin-bottom:30px;
}

.info-box{
margin-bottom:25px;
}

.info-box h4{
margin-bottom:8px;
color:#35530A;
}

.contact-form{
background:#fff;
padding:35px;
border-radius:20px;
box-shadow:var(--shadow);
}

.contact-form form{
display:flex;
flex-direction:column;
gap:20px;
}

.contact-form input,
.contact-form textarea{
padding:16px;
border:1px solid #ddd;
border-radius:12px;
font-family:inherit;
font-size:16px;
outline:none;
}

.contact-form textarea{
height:160px;
resize:none;
}

.contact-form button{
padding:16px;
background:#35530A;
color:#fff;
border:none;
border-radius:40px;
cursor:pointer;
font-size:17px;
font-weight:600;
transition:.3s;
}

.contact-form button:hover{
background:#111;
}

/*==========================
Privacy
==========================*/

.privacy{
background:#faf8f3;
}

.privacy-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
gap:30px;
}

.privacy-card{
background:#fff;
padding:30px;
border-radius:20px;
box-shadow:var(--shadow);
transition:.35s;
}

.privacy-card:hover{
transform:translateY(-8px);
}

.privacy-card h3{
margin-bottom:15px;
color:#35530A;
}

.privacy-card p{
color:#666;
}

/*==========================
Newsletter
==========================*/

.newsletter{
background:#111;
text-align:center;
color:#fff;
padding:90px 8%;
}

.newsletter h2{
font-size:42px;
margin-bottom:20px;
}

.newsletter p{
max-width:700px;
margin:auto;
margin-bottom:35px;
color:#ccc;
}

.newsletter form{
display:flex;
justify-content:center;
flex-wrap:wrap;
gap:15px;
}

.newsletter input{
width:420px;
padding:18px;
border:none;
border-radius:40px;
outline:none;
font-size:16px;
}

.newsletter button{
padding:18px 38px;
border:none;
border-radius:40px;
background:#35530A;
color:#fff;
cursor:pointer;
font-size:16px;
font-weight:600;
transition:.3s;
}

.newsletter button:hover{
background:#fff;
color:#111;
}

/*==========================
Footer
==========================*/

footer{
background:#0d0d0d;
color:#fff;
padding:80px 8% 30px;
}

.footer-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
gap:40px;
margin-bottom:50px;
}

.footer-grid h3{
margin-bottom:20px;
color:#35530A;
}

.footer-grid p,
.footer-grid li,
.footer-grid a{
color:#bbb;
font-size:15px;
line-height:2;
list-style:none;
text-decoration:none;
transition:.3s;
}

.footer-grid a:hover{
color:#35530A;
}

.social-icons{
display:flex;
flex-direction:column;
gap:10px;
}

.copyright{
border-top:1px solid rgba(255,255,255,.08);
padding-top:25px;
text-align:center;
color:#888;
font-size:14px;
}

/*==========================
Responsive
==========================*/

@media(max-width:992px){

.hero-content,
.about-wrapper,
.contact-wrapper{
grid-template-columns:1fr;
text-align:center;
}

.hero-left h1{
font-size:52px;
}

.features{
grid-template-columns:1fr;
}

.hero-buttons{
justify-content:center;
}

}

@media(max-width:768px){

.nav-links{
display:none;
}

.menu-btn{
display:block;
}

section{
padding:70px 6%;
}

.section-title h2{
font-size:34px;
}

.hero-left h1{
font-size:42px;
}

.product-card img{
height:260px;
}

.collection-box img{
height:320px;
}

.newsletter input{
width:100%;
}

.newsletter button{
width:100%;
}

.contact-form{
padding:25px;
}

}
/* Mobile Menu */

@media(max-width:768px){

.nav-links{

position:absolute;
top:75px;
left:0;
width:100%;

background:#fff;

flex-direction:column;

padding:25px;

display:none;

box-shadow:0 15px 40px rgba(0,0,0,.08);

}

.nav-links.active{

display:flex;

}

}

/* Sticky */

header.sticky{

background:#ffffff;

box-shadow:0 10px 25px rgba(0,0,0,.1);

}

/* Active Nav */

.nav-links a.active{

color:#D4AF37;

font-weight:700;

}

/* Reveal Animation */

.feature-card,
.product-card,
.why-card,
.collection-box,
.review,
.privacy-card,
.contact-form,
.contact-info{

opacity:0;

transform:translateY(40px);

transition:all .8s ease;

}

.show{

opacity:1;

transform:translateY(0);

}