/* ===================================
   SHOPSPHERE PREMIUM STYLE.CSS
   Amazon + Apple + Nike Inspired
=================================== */

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap');

:root{
    --primary:#2563eb;
    --dark:#0f172a;
    --light:#f8fafc;
    --accent:#f97316;
    --text:#1e293b;
    --card:#ffffff;
}

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{
    font-family:'Poppins',sans-serif;
    background:var(--light);
    color:var(--text);
    overflow-x:hidden;
    transition:all .3s ease;
}

/* ==========================
   NAVBAR
========================== */

.navbar{
    padding:15px 0;
    background:#fff !important;
    transition:.3s;
}

.navbar-brand{
    font-size:1.8rem;
    font-weight:800;
}

.nav-link{
    font-weight:500;
    margin:0 10px;
    transition:.3s;
}

.nav-link:hover{
    color:var(--primary) !important;
}

/* ==========================
   HERO SECTION
========================== */

.hero-section{
    min-height:100vh;
    display:flex;
    align-items:center;
    background:
    linear-gradient(
        to right,
        rgba(255,255,255,.95),
        rgba(255,255,255,.75)
    );
}

.hero-section h1{
    font-size:4rem;
    font-weight:800;
    line-height:1.1;
}

.hero-section p{
    font-size:1.15rem;
    color:#64748b;
}

.hero-section img{
    max-height:600px;
    object-fit:contain;
    animation:float 4s ease-in-out infinite;
}

@keyframes float{
    0%{
        transform:translateY(0);
    }
    50%{
        transform:translateY(-15px);
    }
    100%{
        transform:translateY(0);
    }
}

/* ==========================
   BUTTONS
========================== */

.btn-primary{
    background:var(--primary);
    border:none;
    border-radius:50px;
    padding:12px 28px;
}

.btn-primary:hover{
    transform:translateY(-2px);
}

.btn-outline-primary{
    border-radius:50px;
}

/* ==========================
   BRANDS
========================== */

.bg-light{
    background:#f1f5f9 !important;
}

.bg-light h5{
    font-weight:700;
    color:#475569;
}

/* ==========================
   CATEGORY CARDS
========================== */

.category-card{
    border:none;
    border-radius:20px;
    transition:.4s;
    cursor:pointer;
    background:#fff;
    box-shadow:
    0 10px 25px rgba(0,0,0,.06);
}

.category-card:hover{
    transform:translateY(-10px);
}

.category-card i{
    color:var(--primary);
}

/* ==========================
   PRODUCT CARDS
========================== */

.product-card{
    border:none;
    border-radius:20px;
    overflow:hidden;
    transition:.4s;
    background:#fff;
    box-shadow:
    0 10px 25px rgba(0,0,0,.08);
}

.product-card:hover{
    transform:translateY(-10px);
}

.product-card img{
    height:280px;
    object-fit:cover;
    transition:.5s;
}

.product-card:hover img{
    transform:scale(1.08);
}

.product-card .card-body{
    padding:25px;
}

.product-card h5{
    font-weight:700;
}

.product-card p{
    font-size:1.1rem;
    color:var(--primary);
    font-weight:600;
}

/* ==========================
   FLASH SALE
========================== */

#deals .bg-primary{
    border-radius:25px !important;
    background:
    linear-gradient(
        135deg,
        #2563eb,
        #1d4ed8
    ) !important;
}

/* ==========================
   FEATURES
========================== */

.bi-truck,
.bi-shield-check,
.bi-arrow-repeat,
.bi-headset{
    color:var(--primary);
}

/* ==========================
   NEWSLETTER
========================== */

.input-group{
    box-shadow:
    0 10px 25px rgba(0,0,0,.08);
    border-radius:50px;
    overflow:hidden;
}

.input-group .form-control{
    border:none;
    padding:15px;
}

.input-group .btn{
    border-radius:0;
}

/* ==========================
   CONTACT FORM
========================== */

form{
    background:#fff;
    padding:40px;
    border-radius:25px;
    box-shadow:
    0 10px 30px rgba(0,0,0,.08);
}

.form-control{
    padding:14px;
    border-radius:12px;
}

.form-control:focus{
    border-color:var(--primary);
    box-shadow:none;
}

/* ==========================
   FOOTER
========================== */

footer{
    background:#0f172a !important;
}

footer h5{
    font-weight:700;
}

/* ==========================
   DARK MODE
========================== */

body.dark-mode{
    background:#0f172a;
    color:#fff;
}

body.dark-mode .navbar{
    background:#111827 !important;
}

body.dark-mode .navbar-brand,
body.dark-mode .nav-link{
    color:#fff !important;
}

body.dark-mode .hero-section{
    background:#0f172a;
}

body.dark-mode .hero-section p{
    color:#cbd5e1;
}

body.dark-mode .card,
body.dark-mode .category-card,
body.dark-mode .product-card{
    background:#1e293b;
    color:#fff;
}

body.dark-mode .bg-light{
    background:#1e293b !important;
}

body.dark-mode form{
    background:#1e293b;
}

body.dark-mode .form-control{
    background:#334155;
    color:#fff;
    border:1px solid #475569;
}

body.dark-mode .form-control::placeholder{
    color:#cbd5e1;
}

body.dark-mode .input-group{
    box-shadow:none;
}

body.dark-mode footer{
    background:#020617 !important;
}

/* ==========================
   RESPONSIVE
========================== */

@media(max-width:992px){

    .hero-section{
        text-align:center;
        padding-top:80px;
    }

    .hero-section h1{
        font-size:3rem;
    }

    .hero-section img{
        margin-top:40px;
    }
}

@media(max-width:768px){

    .hero-section h1{
        font-size:2.3rem;
    }

    .navbar .form-control{
        margin-top:15px;
    }

    form{
        padding:25px;
    }
}