/* =========================================
   SreeVibe Premium Theme
   Part 1
========================================= */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family:Arial, Helvetica, sans-serif;
}

html{
    scroll-behavior:smooth;
}

body{
    background:#111;
    color:#fff;
    line-height:1.6;
}

/* Links */

a{
    text-decoration:none;
    transition:.3s;
}

/* Images */

img{
    max-width:100%;
    display:block;
}

/* Container */

.container{
    width:92%;
    max-width:1400px;
    margin:auto;
}

/* ==========================
        HEADER
========================== */

header{

    width:100%;

    background:#000;

    border-bottom:2px solid gold;

    padding:15px 7%;

    display:flex;

    justify-content:space-between;

    align-items:center;

    position:sticky;

    top:0;

    z-index:999;

}

/* Logo */

.logo{

    display:flex;

    align-items:center;

    gap:12px;

}

.logo img{
    width:100px;
    height:100px;
    object-fit:contain;
}

.logo h2{
    color:gold;
    font-size:34px;
    letter-spacing:1px;
}

/* Navigation */

nav{

    display:flex;

    align-items:center;

    gap:28px;

}

nav a{

    color:#fff;

    font-size:16px;

    font-weight:bold;

    position:relative;

}

nav a:hover{

    color:gold;

}

/* Gold underline animation */

nav a::after{

content:"";

position:absolute;

left:0;

bottom:-6px;

width:0;

height:2px;

background:gold;

transition:.3s;

}

nav a:hover::after{

width:100%;

}

/* Header Button */

.header-btn{

background:gold;

color:#111;

padding:10px 20px;

border-radius:8px;

font-weight:bold;

}

.header-btn:hover{

background:#ffd700;

}

/* Sticky Shadow */

header{

box-shadow:0 5px 15px rgba(0,0,0,.45);

}

/* =========================================
   PART 2
   HERO + PRODUCTS
=========================================*/

/* HERO */

.hero{

    width:100%;

    min-height:85vh;

    display:flex;

    justify-content:center;

    align-items:center;

    flex-direction:column;

    text-align:center;

    padding:80px 20px;

    background:linear-gradient(rgba(0,0,0,.65),rgba(0,0,0,.75));

}

.hero h1{

    color:gold;

    font-size:60px;

    margin-bottom:20px;

    font-weight:bold;

}

.hero p{

    max-width:800px;

    color:#ddd;

    font-size:20px;

    margin-bottom:35px;

}

.hero .btn{

    background:gold;

    color:#111;

    padding:15px 35px;

    border-radius:10px;

    font-size:18px;

    font-weight:bold;

}

.hero .btn:hover{

    background:#ffd700;

    transform:translateY(-3px);

}

/* HERO SECTION */

.hero{

background:linear-gradient(rgba(0,0,0,.75),rgba(0,0,0,.75)),
url('../images/banner.jpg');

background-size:cover;

background-position:center;

height:550px;

display:flex;

justify-content:center;

align-items:center;

text-align:center;

}

.hero-content h1{

font-size:55px;

color:#fff;

margin-bottom:15px;

}

.hero-content h1 span{

color:gold;

}

.hero-content p{

font-size:22px;

color:#ddd;

margin-bottom:35px;

}

.hero-buttons a{

padding:15px 35px;

border-radius:8px;

text-decoration:none;

font-size:18px;

font-weight:bold;

margin:10px;

display:inline-block;

transition:.3s;

}

.shop-btn{

background:gold;

color:#111;

}

.shop-btn:hover{

background:#fff;

}

.class-btn{

border:2px solid gold;

color:gold;

}

.class-btn:hover{

background:gold;

color:#111;

}

/* PRODUCTS */

.products{

    padding:70px 5%;

}

.products h2{

    text-align:center;

    color:gold;

    font-size:42px;

    margin-bottom:35px;

}

/* SEARCH */

.search-box{

    display:flex;

    justify-content:center;

    margin-bottom:35px;

}

.search-box input{

    width:450px;

    max-width:95%;

    padding:14px;

    border-radius:10px;

    border:2px solid gold;

    background:#222;

    color:white;

    font-size:16px;

}

.search-box input:focus{

    outline:none;

    border-color:#ffd700;

}

/* PRODUCT GRID */

.cards{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(260px,1fr));

gap:25px;

}

/* CARD */

.card{

background:#1b1b1b;

border:2px solid gold;

border-radius:15px;

overflow:hidden;

transition:.3s;

box-shadow:0 0 12px rgba(255,215,0,.15);

}

.card:hover{

transform:translateY(-8px);

box-shadow:0 0 25px rgba(255,215,0,.35);

}

/* IMAGE */

.card img{

width:100%;

height:220px;

object-fit:contain;

background:white;

padding:12px;

}

/* CONTENT */

.card-content{

padding:18px;

text-align:center;

}

.card h3{

color:gold;

font-size:22px;

margin-bottom:10px;

}

.card p{

color:#ddd;

font-size:15px;

margin-bottom:12px;

line-height:1.5;

}

.card h4{

font-size:24px;

color:#00ff66;

margin-bottom:15px;

}

/* BUTTON */

.card-btn{
    display:block;
    width:100%;
    padding:12px;
    font-size:15px;
    border-radius:8px;
    text-align:center;
}
.cart-btn:hover{

background:#ffd700;

transform:scale(1.03);

}

/* =========================================
   PART 3
   CLASSES + CHECKOUT + FORMS
=========================================*/

/* ===== CLASSES ===== */

.classes{

    padding:70px 5%;

}

.classes h2{

    text-align:center;

    color:gold;

    font-size:42px;

    margin-bottom:35px;

}

.class-grid{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));

    gap:25px;

}

.class-card{

    background:#1b1b1b;

    border:2px solid gold;

    border-radius:15px;

    overflow:hidden;

    transition:.3s;

}

.class-card:hover{

    transform:translateY(-8px);

    box-shadow:0 0 20px rgba(255,215,0,.35);

}

.class-card img{

    width:100%;

    height:220px;

    object-fit:contain;

    background:#fff;

    padding:10px;

}

.class-content{

    padding:20px;

    text-align:center;

}

.class-content h3{

    color:gold;

    margin-bottom:12px;

    font-size:22px;

}

.class-content p{

    color:#ddd;

    margin-bottom:12px;

}

.class-price{

    color:#00ff66;

    font-size:25px;

    font-weight:bold;

    margin-bottom:15px;

}

/* ===== FORM ===== */

form{

    background:#1b1b1b;

    border:2px solid gold;

    border-radius:15px;

    padding:25px;

}

form input,

form textarea,

form select{

    width:100%;

    padding:14px;

    margin-bottom:15px;

    border:1px solid #444;

    border-radius:8px;

    background:#222;

    color:white;

    font-size:15px;

}

form input:focus,

form textarea:focus,

form select:focus{

    outline:none;

    border:1px solid gold;

}

textarea{

    resize:none;

    min-height:120px;

}

/* ===== BUTTON ===== */

button{

    width:100%;

    padding:14px;

    border:none;

    border-radius:8px;

    background:gold;

    color:#111;

    font-size:16px;

    font-weight:bold;

    cursor:pointer;

    transition:.3s;

}

button:hover{

    background:#ffd700;

}

/* ===== CHECKOUT ===== */

.checkout-page{

    width:95%;

    max-width:1300px;

    margin:50px auto;

}

.checkout-container{

    display:grid;

    grid-template-columns:2fr 1fr;

    gap:30px;

}

/* ===== ORDER SUMMARY ===== */

.order-summary{

    background:#1b1b1b;

    border:2px solid gold;

    border-radius:15px;

    padding:25px;

}

.order-summary h3{

    color:gold;

    margin-bottom:20px;

}

.order-summary p{

    display:flex;

    justify-content:space-between;

    margin-bottom:12px;

}

.order-summary hr{

    border:1px solid #444;

    margin:15px 0;

}

.total{

    color:#00ff66;

    font-size:24px;

    font-weight:bold;

}

/* ===== SUCCESS MESSAGE ===== */

.success{

    background:#0d7d38;

    color:white;

    padding:15px;

    border-radius:8px;

    margin-bottom:20px;

}

.error{

    background:#a10000;

    color:white;

    padding:15px;

    border-radius:8px;

    margin-bottom:20px;

}

/* =========================================
   PART 4
   FOOTER + MOBILE + FLOATING BUTTONS
=========================================*/

/* ===== FOOTER ===== */

footer{

    background:#000;

    border-top:2px solid gold;

    margin-top:70px;

    padding:50px 8%;

}

.footer-container{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(250px,1fr));

    gap:35px;

}

.footer-box h3{

    color:gold;

    margin-bottom:20px;

}

.footer-box p{

    color:#ddd;

    line-height:28px;

}

.footer-box a{

    display:block;

    color:#ddd;

    margin-bottom:10px;

    transition:.3s;

}

.footer-box a:hover{

    color:gold;

    padding-left:6px;

}

.copyright{

    margin-top:35px;

    border-top:1px solid #333;

    padding-top:20px;

    text-align:center;

    color:#aaa;

}

/* ===== WHATSAPP FLOATING BUTTON ===== */

.whatsapp{

    position:fixed;

    right:20px;

    bottom:25px;

    width:60px;

    height:60px;

    border-radius:50%;

    background:#25D366;

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:30px;

    color:white;

    text-decoration:none;

    box-shadow:0 0 15px rgba(0,0,0,.4);

    z-index:999;

    transition:.3s;

}

.whatsapp:hover{

    transform:scale(1.12);

}

/* ===== BACK TO TOP ===== */

.top-btn{

    position:fixed;

    left:20px;

    bottom:25px;

    width:55px;

    height:55px;

    border-radius:50%;

    background:gold;

    color:#111;

    display:flex;

    justify-content:center;

    align-items:center;

    text-decoration:none;

    font-size:24px;

    font-weight:bold;

    box-shadow:0 0 15px rgba(0,0,0,.4);

    z-index:999;

    transition:.3s;

}

.top-btn:hover{

    transform:scale(1.12);

}

/* ===== MOBILE RESPONSIVE ===== */

@media screen and (max-width:992px){

header{

    flex-direction:column;

    gap:15px;

    text-align:center;

}

nav{

    flex-wrap:wrap;

    justify-content:center;

    gap:15px;

}

.hero h1{

    font-size:42px;

}

.hero p{

    font-size:18px;

}

.checkout-container{

    grid-template-columns:1fr;

}

}

/* ===== MOBILE ===== */

@media screen and (max-width:768px){

.logo img{

    width: 80px;;

}

.logo h2{

    font-size:22px;

}

.hero{

    padding:60px 15px;

}

.hero h1{

    font-size:32px;

}

.hero p{

    font-size:16px;

}

.products h2,

.classes h2{

    font-size:30px;

}

.cards,

.class-grid{

    grid-template-columns:1fr;

}

.card img,

.class-card img{

    height:180px;

}

.search-box input{

    width:100%;

}

.footer-container{

    grid-template-columns:1fr;

}

.whatsapp{

    width:55px;

    height:55px;

    font-size:26px;

}

.top-btn{

    width:50px;

    height:50px;

    font-size:20px;

}

}

/* ===== SMALL MOBILE ===== */

@media screen and (max-width:480px){

.hero h1{

    font-size:26px;

}

.hero p{

    font-size:15px;

}

.btn{

    width:100%;

    text-align:center;


}

}

/* =========================================
   PART 5
   PREMIUM EFFECTS & ANIMATIONS
=========================================*/

/* Smooth Animation */

html{
scroll-behavior:smooth;
}

body{
animation:fadeBody .5s ease;
}

@keyframes fadeBody{

from{
opacity:0;
}

to{
opacity:1;
}

}

/* Card Hover */

.card,
.class-card{

transition:.35s;

}

.card:hover,
.class-card:hover{

transform:translateY(-10px);

box-shadow:0 15px 35px rgba(255,215,0,.25);

}

/* Image Zoom */

.card img,
.class-card img{

transition:.4s;

}

.card:hover img,
.class-card:hover img{

transform:scale(1.06);

}

/* Gold Border */

.card,
.class-card,
.order-summary,
form{

border:2px solid rgba(255,215,0,.45);

}

/* Button Animation */

button,
.btn,
.cart-btn{

transition:.35s;

}

button:hover,
.btn:hover,
.cart-btn:hover{

transform:translateY(-3px);

box-shadow:0 10px 25px rgba(255,215,0,.35);

}

/* Input */

input,
textarea,
select{

transition:.3s;

}

input:focus,
textarea:focus,
select:focus{

box-shadow:0 0 12px rgba(255,215,0,.30);

}

/* Scroll Bar */

::-webkit-scrollbar{

width:10px;

}

::-webkit-scrollbar-track{

background:#111;

}

::-webkit-scrollbar-thumb{

background:gold;

border-radius:20px;

}

::-webkit-scrollbar-thumb:hover{

background:#ffd700;

}

/* Selection */

::selection{

background:gold;

color:#111;

}

/* Footer */

footer{

background:#0a0a0a;

}

/* Fade Up */

.fade-up{

animation:fadeUp .8s ease;

}

@keyframes fadeUp{

from{

opacity:0;

transform:translateY(35px);

}

to{

opacity:1;

transform:translateY(0);

}

}

/* Glow */

.gold-glow{

color:gold;

text-shadow:

0 0 10px gold,

0 0 20px gold,

0 0 30px gold;

}

/* Premium Badge */

.badge{

display:inline-block;

background:red;

color:white;

padding:5px 12px;

border-radius:30px;

font-size:13px;

font-weight:bold;

}

/* Discount Badge */

.discount{

background:#00c853;

}

/* Stock Badge */

.stock{

background:#1976d2;

}

/* Sale Badge */

.sale{

background:#ff5722;

}

/* Card Shadow */

.card,
.class-card{

box-shadow:

0 8px 18px rgba(0,0,0,.35);

}

/* Loading */

.loading{

width:45px;

height:45px;

border:5px solid #444;

border-top:5px solid gold;

border-radius:50%;

animation:spin 1s linear infinite;

margin:auto;

}

@keyframes spin{

100%{

transform:rotate(360deg);

}

}

/* Table */

table{

border-radius:12px;

overflow:hidden;

}

th{

background:gold;

color:#111;

}

tr:hover{

background:#202020;

}

/* Dashboard Cards */

.dashboard-card{
    transition:.3s;
    padding:20px;
    min-height:140px;
    border-radius:10px;
}

.dashboard-card:hover{

transform:translateY(-8px);

box-shadow:0 12px 25px rgba(255,215,0,.30);

}

.footer{
    background:#000;
    color:#fff;
    padding:50px 20px 20px;
    margin-top:60px;
    border-top:2px solid gold;
}

.footer-container{
    max-width:1200px;
    margin:auto;
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
    gap:30px;
}

.footer-box h2,
.footer-box h3{
    color:gold;
    margin-bottom:15px;
}

.footer-box p{
    color:#ccc;
    line-height:1.8;
}

.footer-box ul{
    list-style:none;
    padding:0;
}

.footer-box ul li{
    margin-bottom:10px;
}

.footer-box ul li a{
    color:#ddd;
    text-decoration:none;
}

.footer-box ul li a:hover{
    color:gold;
}

.social-links a{
    color:#ddd;
    text-decoration:none;
    transition:.3s;
}

.social-links a:hover{
    color:gold;
    padding-left:5px;
}

.footer-bottom{
    text-align:center;
}

.footer-bottom p{
    color:#aaa;
    margin:8px 0;
    font-size:15px;
}

/* Shared phone layout: keep every page inside the viewport. */
@media screen and (max-width:768px){
    html,body{max-width:100%;overflow-x:hidden;}
    img,video,iframe{max-width:100%;height:auto;}
    input,select,textarea,button{max-width:100%;}
    table{max-width:100%;}
    .container,.wrapper,.content{max-width:100%;}
}
