/* ===========================
   RESET
=========================== */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{

    font-family:'Segoe UI',sans-serif;

    background:#f7f7f7;

    color:#333;

    line-height:1.6;

}

/* ===========================
   HEADER
=========================== */

header{

    position:fixed;

    top:0;

    left:0;

    width:100%;

    height:80px;

    background:#ffffff;

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:0 60px;

    box-shadow:0 2px 10px rgba(0,0,0,.08);

    z-index:999;

}

.logo{

    font-size:30px;

    font-weight:bold;

    color:#222;

}

nav ul{

    display:flex;

    list-style:none;

    gap:35px;

}

nav a{

    text-decoration:none;

    color:#333;

    font-size:17px;

    transition:.3s;

}

nav a:hover{

    color:#009879;

}

.search{

    display:flex;

    gap:10px;

}

.search input{

    width:220px;

    height:42px;

    border:1px solid #ddd;

    border-radius:30px;

    padding:0 18px;

    outline:none;

}

.search button{

    padding:0 22px;

    border:none;

    border-radius:30px;

    background:#009879;

    color:white;

    cursor:pointer;

    transition:.3s;

}

.search button:hover{

    background:#007d66;

}

/* ===========================
   HERO
=========================== */

.hero{

    margin-top:80px;

    height:700px;

    display:flex;

    justify-content:center;

    align-items:center;

    text-align:center;

    background:linear-gradient(135deg,#ececec,#ffffff);

}

.hero-content h1{

    font-size:58px;

    margin-bottom:20px;

}

.hero-content p{

    font-size:22px;

    margin-bottom:40px;

}

.hero button{

    padding:18px 45px;

    border:none;

    border-radius:50px;

    background:#009879;

    color:white;

    font-size:18px;

    cursor:pointer;

    transition:.3s;

}

.hero button:hover{

    transform:translateY(-5px);

    background:#007d66;

}

/* ===========================
   SECTION
=========================== */

section{

    padding:100px 8%;

}

section h2{

    text-align:center;

    font-size:40px;

    margin-bottom:50px;

}

/* ===========================
   CATEGORY
=========================== */

.category-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:30px;

}

.category-item{

    background:white;

    border-radius:20px;

    text-align:center;

    padding:40px;

    font-size:55px;

    transition:.3s;

    cursor:pointer;

    box-shadow:0 8px 25px rgba(0,0,0,.06);

}

.category-item h3{

    margin-top:15px;

    font-size:22px;

}

.category-item:hover{

    transform:translateY(-10px);

}

/* ===========================
   PRODUCT
=========================== */

.product-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:35px;

}

.card{

    background:white;

    border-radius:18px;

    overflow:hidden;

    text-align:center;

    transition:.3s;

    box-shadow:0 10px 25px rgba(0,0,0,.08);

}

.card:hover{

    transform:translateY(-10px);

}

.product-image{

    height:220px;

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:90px;

    background:#efefef;

}

.card h3{

    margin:25px 0 10px;

}

.card p{

    color:#009879;

    font-size:22px;

    font-weight:bold;

}

.card button{

    margin:25px 0 30px;

    padding:14px 35px;

    border:none;

    border-radius:30px;

    background:#009879;

    color:white;

    cursor:pointer;

    transition:.3s;

}

.card button:hover{

    background:#007d66;

}

/* ===========================
   EVENT
=========================== */

.event{

    text-align:center;

    background:linear-gradient(135deg,#009879,#13b39d);

    color:white;

    border-radius:25px;

    margin:80px;

}

.event p{

    font-size:24px;

    margin:25px 0;

}

.event button{

    padding:16px 40px;

    border:none;

    border-radius:40px;

    background:white;

    color:#009879;

    font-size:18px;

    cursor:pointer;

}

/* ===========================
   BRAND
=========================== */

.brand{

    text-align:center;

}

.brand p{

    margin-top:25px;

    font-size:22px;

    color:#666;

}

/* ===========================
   REVIEW
=========================== */

.review-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:30px;

}

.review-card{

    background:white;

    border-radius:20px;

    padding:35px;

    text-align:center;

    box-shadow:0 8px 20px rgba(0,0,0,.08);

}

.review-card p{

    margin-top:20px;

}

/* ===========================
   FOOTER
=========================== */

footer{

    background:#222;

    color:white;

    text-align:center;

    padding:60px 20px;

}

footer h3{

    font-size:30px;

    margin-bottom:20px;

}

footer p{

    margin:10px 0;

    color:#ddd;

}

/* ===========================
   RESPONSIVE
=========================== */

@media(max-width:1100px){

.product-grid{

grid-template-columns:repeat(2,1fr);

}

.category-grid{

grid-template-columns:repeat(2,1fr);

}

.review-grid{

grid-template-columns:1fr;

}

header{

padding:0 20px;

}

.hero-content h1{

font-size:42px;

}

}

@media(max-width:768px){

header{

flex-direction:column;

height:auto;

padding:20px;

}

nav ul{

flex-wrap:wrap;

justify-content:center;

gap:15px;

margin:20px 0;

}

.search{

width:100%;

justify-content:center;

}

.search input{

width:100%;

max-width:300px;

}

.hero{

height:500px;

}

.hero-content h1{

font-size:34px;

}

.hero-content p{

font-size:18px;

}

.product-grid{

grid-template-columns:1fr;

}

.category-grid{

grid-template-columns:1fr;

}

.event{

margin:20px;

}

section{

padding:70px 20px;

}

}