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

:root{
    --primary:#2563eb;
    --primary-dark:#1d4ed8;
    --green:#10b981;
    --orange:#f59e0b;
    --purple:#6366f1;
    --dark:#0f172a;
    --text:#334155;
    --muted:#64748b;
    --soft:#f8fafc;
    --border:#e2e8f0;
    --white:#ffffff;
}

body{
    background:#f8fafc;
    color:var(--text);
}

.container{
    width:92%;
    max-width:1200px;
    margin:auto;
}

/* TOP STRIP */
.top-strip{
    background:linear-gradient(90deg,#1d4ed8,#2563eb);
    color:#fff;
    font-size:14px;
}

.top-strip-inner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
    padding:10px 0;
}

.top-strip span{
    display:flex;
    align-items:center;
    gap:8px;
}

/* HEADER */
.main-header{
    background:rgba(255,255,255,.96);
    backdrop-filter:blur(12px);
    border-bottom:1px solid var(--border);
    position:sticky;
    top:0;
    z-index:99;
}

.navbar{
    height:78px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
}

.brand{
    display:flex;
    align-items:center;
    gap:12px;
    text-decoration:none;
    color:var(--dark);
}

.brand-icon{
    width:46px;
    height:46px;
    border-radius:14px;
    background:linear-gradient(135deg,#2563eb,#60a5fa);
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    box-shadow:0 10px 25px rgba(37,99,235,.25);
}

.brand strong{
    display:block;
    font-size:22px;
    line-height:20px;
}

.brand small{
    color:var(--muted);
    font-weight:700;
    letter-spacing:1px;
}

.nav-menu{
    display:flex;
    gap:28px;
}

.nav-menu a{
    color:var(--text);
    text-decoration:none;
    font-weight:700;
    font-size:15px;
}

.nav-menu a:hover{
    color:var(--primary);
}

.header-btn{
    background:var(--dark);
    color:#fff;
    text-decoration:none;
    padding:13px 22px;
    border-radius:14px;
    font-weight:800;
    box-shadow:0 12px 24px rgba(15,23,42,.15);
}

/* HOME HERO */
.hero-section{
    padding:95px 0;
    background:
        radial-gradient(circle at top left, rgba(37,99,235,.12), transparent 30%),
        linear-gradient(135deg,#ffffff,#eff6ff);
}

.hero-grid{
    display:grid;
    grid-template-columns:1.15fr .85fr;
    gap:55px;
    align-items:center;
}

.tag-line{
    display:inline-flex;
    align-items:center;
    gap:8px;
    background:#dbeafe;
    color:var(--primary-dark);
    padding:10px 18px;
    border-radius:999px;
    font-weight:800;
    margin-bottom:22px;
}

.hero-section h1{
    font-size:62px;
    line-height:1.08;
    color:var(--dark);
    margin-bottom:22px;
    letter-spacing:-1.5px;
}

.hero-section p{
    font-size:18px;
    color:var(--muted);
    line-height:1.8;
    max-width:680px;
}

.hero-buttons{
    margin-top:34px;
    display:flex;
    gap:16px;
    flex-wrap:wrap;
}

.primary-btn,
.secondary-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:none;
    cursor:pointer;
    padding:15px 28px;
    border-radius:15px;
    text-decoration:none;
    font-weight:900;
    font-size:15px;
}

.primary-btn{
    background:linear-gradient(135deg,#2563eb,#1d4ed8);
    color:#fff;
    box-shadow:0 15px 30px rgba(37,99,235,.28);
}

.secondary-btn{
    background:#fff;
    color:var(--primary);
    border:1px solid var(--border);
    box-shadow:0 10px 25px rgba(15,23,42,.06);
}

.hero-card{
    background:#fff;
    padding:34px;
    border-radius:28px;
    box-shadow:0 25px 70px rgba(15,23,42,.10);
    border:1px solid rgba(226,232,240,.8);
}

.hero-card i{
    font-size:60px;
    color:var(--primary);
    margin-bottom:18px;
}

.hero-card h3{
    color:var(--dark);
    font-size:28px;
    margin-bottom:10px;
}

.hero-card p{
    color:var(--muted);
}

.trust-row{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:15px;
    margin-top:25px;
}

.trust-item{
    background:#f8fafc;
    border:1px solid var(--border);
    padding:18px;
    border-radius:18px;
    font-weight:800;
    color:var(--dark);
}

/* SERVICES */
.services-section{
    padding:85px 0;
}

.section-title{
    text-align:center;
    margin-bottom:48px;
}

.section-title span{
    color:var(--primary);
    font-weight:900;
}

.section-title h2{
    font-size:42px;
    color:var(--dark);
    margin-top:10px;
}

.service-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:28px;
}

.service-card{
    background:#fff;
    padding:34px;
    border-radius:26px;
    box-shadow:0 18px 45px rgba(15,23,42,.07);
    border:1px solid var(--border);
    transition:.25s;
}

.service-card:hover{
    transform:translateY(-6px);
    box-shadow:0 25px 60px rgba(15,23,42,.12);
}

.service-icon{
    width:76px;
    height:76px;
    border-radius:22px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:22px;
}

.service-icon i{
    font-size:32px;
    color:#fff;
}

.solar-bg{background:linear-gradient(135deg,#f59e0b,#f97316);}
.ecommerce-bg{background:linear-gradient(135deg,#10b981,#059669);}
.education-bg{background:linear-gradient(135deg,#6366f1,#4f46e5);}

.service-card h3{
    color:var(--dark);
    font-size:24px;
    margin-bottom:12px;
}

.service-card p{
    color:var(--muted);
    line-height:1.7;
}

/* PAGE HERO */
.page-hero{
    padding:78px 0;
    background:
        radial-gradient(circle at top left, rgba(37,99,235,.12), transparent 28%),
        linear-gradient(135deg,#ffffff,#eff6ff);
}

.page-hero h1{
    font-size:48px;
    color:var(--dark);
    margin:18px 0;
}

.page-hero p{
    font-size:18px;
    color:var(--muted);
    max-width:760px;
    line-height:1.8;
}

/* FORM */
.form-section{
    padding:65px 0;
}

.form-card{
    background:#fff;
    padding:38px;
    border-radius:28px;
    box-shadow:0 25px 70px rgba(15,23,42,.09);
    border:1px solid var(--border);
}

.form-card form{
    margin-top:10px;
}

.form-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:18px;
}

input, textarea, select{
    width:100%;
    padding:16px 17px;
    border:1px solid var(--border);
    border-radius:15px;
    font-size:15px;
    outline:none;
    background:#f8fafc;
    color:var(--dark);
}

input:focus,
textarea:focus,
select:focus{
    border-color:var(--primary);
    background:#fff;
    box-shadow:0 0 0 4px rgba(37,99,235,.08);
}

textarea{
    margin-top:18px;
    min-height:110px;
    resize:vertical;
}

.success-alert{
    background:#dcfce7;
    color:#166534;
    padding:15px 18px;
    border-radius:15px;
    margin-bottom:20px;
    font-weight:800;
}

/* PRODUCTS */
.product-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:26px;
}

.product-card{
    background:#fff;
    padding:18px;
    border-radius:24px;
    box-shadow:0 18px 45px rgba(15,23,42,.07);
    border:1px solid var(--border);
}

.product-img{
    height:190px;
    background:#f1f5f9;
    border-radius:20px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:16px;
    overflow:hidden;
}

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

.product-img i{
    font-size:48px;
    color:var(--primary);
}

.product-card h3{
    color:var(--dark);
    font-size:19px;
    margin-bottom:7px;
}

.product-card p{
    color:var(--muted);
}

.price{
    color:var(--primary);
    font-size:23px;
    font-weight:900;
    margin:14px 0;
}

/* PREMIUM POLICY PAGES */
.premium-policy-hero{
    padding:80px 0 40px;
    background:
        radial-gradient(circle at top right, rgba(37,99,235,.13), transparent 28%),
        linear-gradient(135deg,#eff6ff,#ffffff);
}

.premium-policy-hero-card{
    background:#ffffff;
    padding:55px;
    border-radius:34px;
    box-shadow:0 30px 80px rgba(15,23,42,.10);
    border:1px solid #e2e8f0;
    position:relative;
    overflow:hidden;
}

.premium-policy-hero-card::after{
    content:"";
    position:absolute;
    right:-70px;
    top:-70px;
    width:220px;
    height:220px;
    background:rgba(37,99,235,.12);
    border-radius:50%;
}

.premium-badge{
    display:inline-flex;
    align-items:center;
    gap:10px;
    padding:12px 20px;
    border-radius:999px;
    background:#dbeafe;
    color:#1d4ed8;
    font-weight:900;
    margin-bottom:28px;
}

.premium-policy-hero h1{
    font-size:54px;
    color:#0f172a;
    line-height:1.1;
    margin-bottom:18px;
    max-width:850px;
}

.premium-policy-hero p{
    font-size:18px;
    color:#64748b;
    line-height:1.8;
    max-width:820px;
}

.premium-policy-section{
    padding:45px 0 90px;
    background:#f8fafc;
}

.premium-policy-card{
    background:#fff;
    padding:42px;
    border-radius:34px;
    box-shadow:0 30px 80px rgba(15,23,42,.10);
    border:1px solid #e2e8f0;
}

.policy-title-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:22px;
    background:linear-gradient(135deg,#2563eb,#60a5fa);
    padding:32px;
    border-radius:28px;
    color:#fff;
    margin-bottom:30px;
}

.policy-title-row h2{
    font-size:34px;
    margin-bottom:8px;
}

.policy-title-row p{
    color:#eff6ff;
    line-height:1.7;
}

.policy-main-icon{
    min-width:78px;
    width:78px;
    height:78px;
    border-radius:24px;
    background:rgba(255,255,255,.18);
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:34px;
}

.premium-policy-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:24px;
}

.premium-policy-box{
    background:#f8fafc;
    border:1px solid #e2e8f0;
    border-radius:26px;
    padding:28px;
    min-height:210px;
}

.premium-policy-box > i{
    width:58px;
    height:58px;
    border-radius:18px;
    background:#dbeafe;
    color:#2563eb;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:24px;
    margin-bottom:18px;
}

.premium-policy-box h3{
    font-size:22px;
    color:#0f172a;
    margin-bottom:12px;
}

.premium-policy-box p,
.premium-policy-box li{
    color:#64748b;
    line-height:1.8;
    font-size:16px;
}

.premium-policy-box ul{
    padding-left:20px;
}

/* FOOTER */
.footer{
    background:#0f172a;
    color:#cbd5e1;
    padding-top:60px;
}

.footer-grid{
    display:grid;
    grid-template-columns:1.4fr 1fr 1fr 1.2fr;
    gap:35px;
}

.footer h3,
.footer h4{
    color:#fff;
    margin-bottom:16px;
}

.footer p{
    line-height:1.7;
}

.footer a{
    display:block;
    color:#cbd5e1;
    text-decoration:none;
    margin-bottom:10px;
}

.footer a:hover{
    color:#fff;
}

.footer-bottom{
    text-align:center;
    border-top:1px solid rgba(255,255,255,.1);
    padding:18px;
    margin-top:40px;
}

/* RESPONSIVE */
@media(max-width:992px){
    .top-strip-inner{
        flex-direction:column;
        align-items:flex-start;
    }

    .navbar{
        height:auto;
        padding:18px 0;
        flex-direction:column;
        align-items:flex-start;
    }

    .nav-menu{
        flex-wrap:wrap;
        gap:16px;
    }

    .hero-grid,
    .service-grid,
    .form-grid,
    .product-grid,
    .footer-grid,
    .premium-policy-grid{
        grid-template-columns:1fr;
    }

    .hero-section h1{
        font-size:40px;
    }

    .page-hero h1,
    .premium-policy-hero h1{
        font-size:36px;
    }

    .premium-policy-hero-card,
    .premium-policy-card{
        padding:25px;
    }

    .policy-title-row{
        flex-direction:column;
        align-items:flex-start;
    }
}


/* PREMIUM SHOP PAGE */
.shop-hero{
    padding:85px 0;
    background:
        radial-gradient(circle at top left, rgba(16,185,129,.12), transparent 30%),
        linear-gradient(135deg,#ffffff,#ecfdf5);
}

.shop-hero-grid{
    display:grid;
    grid-template-columns:1.2fr .8fr;
    gap:50px;
    align-items:center;
}

.shop-hero h1{
    font-size:56px;
    line-height:1.1;
    color:#0f172a;
    margin-bottom:18px;
}

.shop-hero p{
    font-size:18px;
    color:#64748b;
    line-height:1.8;
    max-width:760px;
}

.shop-trust-row{
    display:flex;
    gap:16px;
    flex-wrap:wrap;
    margin-top:28px;
}

.shop-trust-row div{
    background:#fff;
    border:1px solid #e2e8f0;
    padding:14px 18px;
    border-radius:16px;
    font-weight:800;
    color:#0f172a;
    box-shadow:0 12px 30px rgba(15,23,42,.06);
}

.shop-trust-row i{
    color:#10b981;
    margin-right:7px;
}

.shop-hero-card{
    background:#fff;
    padding:42px;
    border-radius:32px;
    box-shadow:0 30px 80px rgba(15,23,42,.10);
    border:1px solid #e2e8f0;
    text-align:center;
}

.shop-hero-card i{
    font-size:72px;
    color:#10b981;
    margin-bottom:18px;
}

.shop-hero-card h3{
    font-size:28px;
    color:#0f172a;
    margin-bottom:10px;
}

.shop-section{
    padding:75px 0;
}

.shop-topbar{
    display:flex;
    justify-content:space-between;
    align-items:flex-end;
    gap:20px;
    margin-bottom:24px;
}

.section-mini-title{
    color:#2563eb;
    font-weight:900;
    letter-spacing:1px;
}

.shop-topbar h2{
    font-size:42px;
    color:#0f172a;
    margin-top:8px;
}

.shop-count{
    background:#dbeafe;
    color:#1d4ed8;
    padding:12px 18px;
    border-radius:999px;
    font-weight:900;
}

.category-chips{
    display:flex;
    gap:12px;
    flex-wrap:wrap;
    margin-bottom:34px;
}

.category-chips span{
    padding:12px 18px;
    border-radius:999px;
    background:#fff;
    border:1px solid #e2e8f0;
    color:#334155;
    font-weight:800;
    box-shadow:0 10px 25px rgba(15,23,42,.04);
}

.category-chips .active{
    background:#0f172a;
    color:#fff;
}

.premium-product-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:26px;
}

.premium-product-card{
    background:#fff;
    border:1px solid #e2e8f0;
    border-radius:28px;
    overflow:hidden;
    box-shadow:0 18px 45px rgba(15,23,42,.07);
    transition:.25s;
}

.premium-product-card:hover{
    transform:translateY(-6px);
    box-shadow:0 28px 65px rgba(15,23,42,.12);
}

.premium-product-img{
    height:210px;
    background:#f1f5f9;
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
}

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

.premium-product-img > i{
    font-size:60px;
    color:#2563eb;
}

.product-badge{
    position:absolute;
    top:14px;
    left:14px;
    background:#fff;
    color:#0f172a;
    padding:8px 12px;
    border-radius:999px;
    font-size:12px;
    font-weight:900;
    box-shadow:0 8px 20px rgba(15,23,42,.12);
}

.premium-product-body{
    padding:20px;
}

.product-category{
    color:#10b981;
    font-size:13px;
    font-weight:900;
    text-transform:uppercase;
    margin-bottom:8px;
}

.premium-product-body h3{
    color:#0f172a;
    font-size:20px;
    line-height:1.3;
    margin-bottom:8px;
}

.product-desc{
    color:#64748b;
    font-size:14px;
    line-height:1.6;
    min-height:45px;
}

.product-price-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin:18px 0;
}

.product-price-row strong{
    display:block;
    color:#2563eb;
    font-size:22px;
}

.old-price{
    display:block;
    color:#94a3b8;
    text-decoration:line-through;
    font-size:13px;
    margin-bottom:2px;
}

.stock-badge{
    background:#f1f5f9;
    color:#334155;
    padding:8px 10px;
    border-radius:12px;
    font-size:12px;
    font-weight:900;
}

.product-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
}

.small-btn{
    padding:12px 10px;
    font-size:13px;
    border-radius:13px;
}

.empty-products{
    grid-column:1/-1;
    background:#fff;
    padding:60px;
    border-radius:28px;
    text-align:center;
    box-shadow:0 20px 50px rgba(15,23,42,.08);
    border:1px solid #e2e8f0;
}

.empty-products i{
    font-size:60px;
    color:#2563eb;
    margin-bottom:20px;
}

.empty-products h3{
    color:#0f172a;
    font-size:26px;
    margin-bottom:8px;
}

.empty-products p{
    color:#64748b;
}

@media(max-width:992px){
    .shop-hero-grid,
    .premium-product-grid{
        grid-template-columns:1fr;
    }

    .shop-hero h1{
        font-size:38px;
    }

    .shop-topbar{
        flex-direction:column;
        align-items:flex-start;
    }

    .shop-topbar h2{
        font-size:34px;
    }
}

/* PRODUCT DETAIL PAGE */
.product-detail-section{
    padding:75px 0;
    background:
        radial-gradient(circle at top right, rgba(16,185,129,.10), transparent 28%),
        #f8fafc;
}

.product-detail-card{
    display:grid;
    grid-template-columns:.95fr 1.05fr;
    gap:36px;
    background:#fff;
    border:1px solid #e2e8f0;
    border-radius:34px;
    padding:32px;
    box-shadow:0 30px 80px rgba(15,23,42,.10);
}

.product-detail-image{
    min-height:520px;
    background:#f1f5f9;
    border-radius:28px;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    position:relative;
}

.product-detail-image img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.product-detail-image > i{
    font-size:95px;
    color:#2563eb;
}

.product-detail-badge{
    position:absolute;
    top:20px;
    left:20px;
    background:#fff;
    color:#0f172a;
    padding:10px 16px;
    border-radius:999px;
    font-weight:900;
    box-shadow:0 10px 25px rgba(15,23,42,.12);
}

.product-detail-content{
    padding:18px;
}

.product-detail-content h1{
    font-size:46px;
    color:#0f172a;
    line-height:1.1;
    margin:20px 0 14px;
}

.detail-desc{
    color:#64748b;
    font-size:17px;
    line-height:1.8;
}

.detail-price-box{
    margin:24px 0;
    background:#eff6ff;
    border:1px solid #dbeafe;
    padding:22px;
    border-radius:22px;
}

.detail-price-box strong{
    display:block;
    font-size:38px;
    color:#2563eb;
}

.detail-old-price{
    color:#94a3b8;
    text-decoration:line-through;
    font-weight:800;
}

.detail-info-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:15px;
    margin-bottom:24px;
}

.detail-info-grid div{
    background:#f8fafc;
    border:1px solid #e2e8f0;
    border-radius:20px;
    padding:18px;
}

.detail-info-grid i{
    color:#10b981;
    font-size:22px;
    margin-bottom:10px;
}

.detail-info-grid span{
    display:block;
    color:#64748b;
    font-size:13px;
    font-weight:800;
}

.detail-info-grid strong{
    display:block;
    color:#0f172a;
    font-size:18px;
    margin-top:4px;
}

.detail-buy-form label{
    display:block;
    font-weight:900;
    color:#0f172a;
    margin-bottom:8px;
}

.qty-row input{
    max-width:160px;
    background:#fff;
}

.detail-actions{
    display:flex;
    gap:14px;
    flex-wrap:wrap;
    margin-top:20px;
}

.detail-trust-list{
    margin-top:26px;
    display:grid;
    gap:12px;
}

.detail-trust-list div{
    background:#f8fafc;
    border:1px solid #e2e8f0;
    border-radius:16px;
    padding:14px 16px;
    color:#334155;
    font-weight:800;
}

.detail-trust-list i{
    color:#10b981;
    margin-right:8px;
}

.related-section{
    margin-top:70px;
}

@media(max-width:992px){
    .product-detail-card{
        grid-template-columns:1fr;
        padding:22px;
    }

    .product-detail-image{
        min-height:320px;
    }

    .product-detail-content{
        padding:0;
    }

    .product-detail-content h1{
        font-size:34px;
    }

    .detail-info-grid{
        grid-template-columns:1fr;
    }
}


/* CART PAGE */
.cart-section{
    padding:70px 0;
    background:#f8fafc;
}

.cart-grid{
    display:grid;
    grid-template-columns:1fr 360px;
    gap:28px;
    align-items:flex-start;
}

.cart-items-card,
.cart-summary-card{
    background:#fff;
    border:1px solid #e2e8f0;
    border-radius:30px;
    box-shadow:0 25px 70px rgba(15,23,42,.08);
}

.cart-items-card{
    padding:24px;
}

.cart-summary-card{
    padding:28px;
    position:sticky;
    top:110px;
}

.cart-summary-card h2{
    color:#0f172a;
    font-size:28px;
    margin-bottom:22px;
}

.cart-item{
    display:grid;
    grid-template-columns:90px 1fr 130px 120px 50px;
    gap:18px;
    align-items:center;
    padding:18px 0;
    border-bottom:1px solid #e2e8f0;
}

.cart-item:last-child{
    border-bottom:none;
}

.cart-item-img{
    width:90px;
    height:90px;
    border-radius:20px;
    background:#f1f5f9;
    overflow:hidden;
    display:flex;
    align-items:center;
    justify-content:center;
}

.cart-item-img img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.cart-item-img i{
    font-size:34px;
    color:#2563eb;
}

.cart-item-info p{
    color:#10b981;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    margin-bottom:5px;
}

.cart-item-info h3{
    color:#0f172a;
    font-size:18px;
    margin-bottom:6px;
}

.cart-item-info strong{
    color:#2563eb;
}

.cart-qty-form{
    display:flex;
    gap:8px;
}

.cart-qty-form input{
    padding:11px;
    border-radius:12px;
}

.cart-qty-form button{
    border:none;
    background:#0f172a;
    color:#fff;
    border-radius:12px;
    padding:0 12px;
    font-weight:800;
    cursor:pointer;
}

.cart-total{
    color:#0f172a;
    font-weight:900;
    font-size:17px;
}

.remove-btn{
    width:44px;
    height:44px;
    border:none;
    border-radius:14px;
    background:#fee2e2;
    color:#dc2626;
    cursor:pointer;
}

.summary-row{
    display:flex;
    justify-content:space-between;
    gap:16px;
    margin-bottom:16px;
    color:#64748b;
}

.summary-row strong{
    color:#0f172a;
}

.summary-line{
    height:1px;
    background:#e2e8f0;
    margin:20px 0;
}

.summary-row.grand span,
.summary-row.grand strong{
    color:#0f172a;
    font-size:20px;
    font-weight:900;
}

.checkout-btn{
    width:100%;
    margin-top:14px;
}

.error-alert{
    background:#fee2e2;
    color:#991b1b;
    padding:15px 18px;
    border-radius:15px;
    margin-bottom:20px;
    font-weight:800;
}

@media(max-width:992px){
    .cart-grid{
        grid-template-columns:1fr;
    }

    .cart-item{
        grid-template-columns:80px 1fr;
    }

    .cart-qty-form,
    .cart-total,
    .remove-btn{
        grid-column:2;
    }

    .cart-summary-card{
        position:static;
    }
}

/* PREMIUM CHECKOUT PAGE */
.checkout-premium-hero{
    padding:80px 0 40px;
    background:
        radial-gradient(circle at top left, rgba(37,99,235,.13), transparent 30%),
        linear-gradient(135deg,#ffffff,#eff6ff);
}

.checkout-premium-hero-card{
    background:#fff;
    padding:55px;
    border-radius:34px;
    border:1px solid #e2e8f0;
    box-shadow:0 30px 80px rgba(15,23,42,.10);
    position:relative;
    overflow:hidden;
}

.checkout-premium-hero-card::after{
    content:"";
    position:absolute;
    right:-70px;
    top:-70px;
    width:220px;
    height:220px;
    border-radius:50%;
    background:rgba(37,99,235,.12);
}

.checkout-premium-hero-card h1{
    font-size:54px;
    line-height:1.1;
    color:#0f172a;
    margin-bottom:18px;
}

.checkout-premium-hero-card p{
    color:#64748b;
    font-size:18px;
    line-height:1.8;
    max-width:820px;
}

.checkout-premium-section{
    padding:50px 0 90px;
    background:#f8fafc;
}

.checkout-premium-grid{
    display:grid;
    grid-template-columns:1fr 420px;
    gap:30px;
    align-items:flex-start;
}

.checkout-left{
    display:grid;
    gap:24px;
}

.checkout-step-card,
.checkout-premium-summary{
    background:#fff;
    border:1px solid #e2e8f0;
    border-radius:30px;
    padding:32px;
    box-shadow:0 25px 70px rgba(15,23,42,.08);
}

.checkout-card-title{
    display:flex;
    align-items:center;
    gap:16px;
    margin-bottom:24px;
}

.checkout-title-icon{
    width:58px;
    height:58px;
    border-radius:18px;
    background:#dbeafe;
    color:#2563eb;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:24px;
}

.checkout-title-icon.green{
    background:#dcfce7;
    color:#16a34a;
}

.checkout-card-title h2{
    color:#0f172a;
    font-size:26px;
    margin-bottom:5px;
}

.checkout-card-title p{
    color:#64748b;
}

.checkout-trust-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px;
}

.checkout-trust-grid div{
    background:#fff;
    border:1px solid #e2e8f0;
    border-radius:24px;
    padding:24px;
    box-shadow:0 18px 45px rgba(15,23,42,.06);
}

.checkout-trust-grid i{
    width:54px;
    height:54px;
    border-radius:16px;
    background:#eff6ff;
    color:#2563eb;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:22px;
    margin-bottom:15px;
}

.checkout-trust-grid h4{
    color:#0f172a;
    font-size:18px;
    margin-bottom:8px;
}

.checkout-trust-grid p{
    color:#64748b;
    line-height:1.6;
    font-size:14px;
}

.checkout-premium-summary{
    position:sticky;
    top:110px;
}

.summary-header{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:18px;
    margin-bottom:22px;
}

.summary-header h2{
    font-size:28px;
    color:#0f172a;
    margin-bottom:5px;
}

.summary-header p{
    color:#64748b;
}

.summary-icon{
    width:62px;
    height:62px;
    border-radius:20px;
    background:linear-gradient(135deg,#2563eb,#60a5fa);
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:26px;
}

.checkout-items-list{
    display:grid;
    gap:14px;
}

.checkout-premium-item{
    display:grid;
    grid-template-columns:58px 1fr auto;
    gap:14px;
    align-items:center;
    background:#f8fafc;
    border:1px solid #e2e8f0;
    border-radius:18px;
    padding:12px;
}

.checkout-mini-img{
    width:58px;
    height:58px;
    border-radius:16px;
    background:#f1f5f9;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
}

.checkout-mini-img img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.checkout-mini-img i{
    color:#2563eb;
    font-size:22px;
}

.checkout-premium-item h4{
    color:#0f172a;
    font-size:15px;
    margin-bottom:4px;
}

.checkout-premium-item p{
    color:#64748b;
    font-size:13px;
}

.checkout-premium-item strong{
    color:#2563eb;
    font-size:15px;
}

.payment-note{
    margin-top:18px;
    background:#eff6ff;
    color:#1d4ed8;
    padding:14px 16px;
    border-radius:16px;
    font-weight:800;
    line-height:1.6;
}

.payment-note i{
    margin-right:8px;
}

@media(max-width:992px){
    .checkout-premium-grid,
    .checkout-trust-grid{
        grid-template-columns:1fr;
    }

    .checkout-premium-summary{
        position:static;
    }

    .checkout-premium-hero-card,
    .checkout-step-card,
    .checkout-premium-summary{
        padding:25px;
    }

    .checkout-premium-hero-card h1{
        font-size:36px;
    }
}

/* AUTH PAGES */
.auth-section{
    padding:80px 0;
    background:
        radial-gradient(circle at top left, rgba(37,99,235,.12), transparent 30%),
        linear-gradient(135deg,#ffffff,#eff6ff);
}

.auth-card{
    display:grid;
    grid-template-columns:1fr 460px;
    gap:34px;
    align-items:center;
    background:#fff;
    border:1px solid #e2e8f0;
    border-radius:34px;
    padding:42px;
    box-shadow:0 30px 80px rgba(15,23,42,.10);
}

.auth-info h1{
    font-size:52px;
    color:#0f172a;
    line-height:1.1;
    margin:20px 0;
}

.auth-info p{
    color:#64748b;
    font-size:18px;
    line-height:1.8;
}

.auth-form-box{
    background:#f8fafc;
    border:1px solid #e2e8f0;
    border-radius:28px;
    padding:30px;
}

.auth-form-box h2{
    font-size:28px;
    color:#0f172a;
    margin-bottom:22px;
}

.auth-form-box form{
    display:grid;
    gap:15px;
}

.auth-btn{
    width:100%;
    margin-top:8px;
}

.auth-switch{
    margin-top:20px;
    color:#64748b;
    text-align:center;
}

.auth-switch a{
    color:#2563eb;
    font-weight:900;
    text-decoration:none;
}

@media(max-width:992px){
    .auth-card{
        grid-template-columns:1fr;
        padding:25px;
    }

    .auth-info h1{
        font-size:36px;
    }
}

/* HEADER ACTIONS */
.header-right{
    display:flex;
    align-items:center;
    gap:22px;
}

.header-actions{
    display:flex;
    align-items:center;
    gap:14px;
}

.cart-btn{
    width:52px;
    height:52px;
    border-radius:18px;
    background:#fff;
    border:1px solid #e2e8f0;
    display:flex;
    align-items:center;
    justify-content:center;
    position:relative;
    text-decoration:none;
    color:#0f172a;
    font-size:20px;
    box-shadow:0 12px 30px rgba(15,23,42,.06);
}

.cart-btn span{
    position:absolute;
    top:-6px;
    right:-6px;
    width:24px;
    height:24px;
    border-radius:50%;
    background:#2563eb;
    color:#fff;
    font-size:12px;
    font-weight:900;
    display:flex;
    align-items:center;
    justify-content:center;
}

.login-btn{
    padding:13px 22px;
    border-radius:15px;
    background:#fff;
    border:1px solid #e2e8f0;
    text-decoration:none;
    color:#0f172a;
    font-weight:900;
    box-shadow:0 10px 25px rgba(15,23,42,.05);
}

.user-dropdown{
    position:relative;
}

.user-btn{
    border:none;
    background:#0f172a;
    color:#fff;
    padding:14px 20px;
    border-radius:16px;
    font-weight:800;
    cursor:pointer;
    display:flex;
    align-items:center;
    gap:10px;
}

.user-dropdown-menu{
    position:absolute;
    right:0;
    top:70px;
    width:220px;
    background:#fff;
    border:1px solid #e2e8f0;
    border-radius:22px;
    padding:12px;
    box-shadow:0 25px 70px rgba(15,23,42,.12);
    opacity:0;
    visibility:hidden;
    transition:.25s;
    z-index:99;
}

.user-dropdown:hover .user-dropdown-menu{
    opacity:1;
    visibility:visible;
    top:62px;
}

.user-dropdown-menu a,
.user-dropdown-menu button{
    width:100%;
    display:flex;
    align-items:center;
    gap:12px;
    border:none;
    background:none;
    padding:14px;
    border-radius:14px;
    text-decoration:none;
    color:#334155;
    font-weight:800;
    cursor:pointer;
}

.user-dropdown-menu a:hover,
.user-dropdown-menu button:hover{
    background:#f8fafc;
}

@media(max-width:992px){

    .header-right{
        width:100%;
        flex-direction:column;
        align-items:flex-start;
    }

    .header-actions{
        width:100%;
        flex-wrap:wrap;
    }
}

/* MY ORDERS */
.orders-section{
    padding:70px 0;
    background:#f8fafc;
}

.orders-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:28px;
}

.order-card{
    background:#fff;
    border:1px solid #e2e8f0;
    border-radius:30px;
    padding:28px;
    box-shadow:0 25px 70px rgba(15,23,42,.08);
}

.order-top{
    display:flex;
    justify-content:space-between;
    gap:20px;
    align-items:flex-start;
    margin-bottom:26px;
}

.order-label{
    color:#64748b;
    font-size:13px;
    font-weight:800;
}

.order-top h3{
    color:#0f172a;
    font-size:26px;
    margin-top:8px;
}

.order-status{
    background:#dcfce7;
    color:#16a34a;
    padding:10px 16px;
    border-radius:999px;
    font-size:13px;
    font-weight:900;
}

.order-details{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:18px;
}

.order-details div{
    background:#f8fafc;
    border:1px solid #e2e8f0;
    border-radius:18px;
    padding:18px;
}

.order-details span{
    display:block;
    color:#64748b;
    font-size:13px;
    margin-bottom:8px;
}

.order-details strong{
    color:#0f172a;
    font-size:16px;
}

.order-footer{
    margin-top:24px;
}

@media(max-width:992px){

    .orders-grid,
    .order-details{
        grid-template-columns:1fr;
    }

    .order-top{
        flex-direction:column;
        align-items:flex-start;
    }
}

.success-btn-row{
    display:flex;
    justify-content:center;
    gap:16px;
    flex-wrap:wrap;
    margin-top:24px;
}

/* PREMIUM ORDER SUCCESS */
.success-premium-hero{
    padding:90px 0;
    background:
        radial-gradient(circle at top left, rgba(16,185,129,.13), transparent 30%),
        linear-gradient(135deg,#ffffff,#ecfdf5);
}

.success-premium-card{
    max-width:980px;
    margin:auto;
    background:#fff;
    border-radius:40px;
    padding:60px;
    border:1px solid #e2e8f0;
    box-shadow:0 35px 90px rgba(15,23,42,.10);
    text-align:center;
    position:relative;
    overflow:hidden;
}

.success-premium-card::after{
    content:"";
    position:absolute;
    right:-80px;
    top:-80px;
    width:240px;
    height:240px;
    border-radius:50%;
    background:rgba(16,185,129,.12);
}

.success-animation-circle{
    width:150px;
    height:150px;
    border-radius:50%;
    background:rgba(16,185,129,.12);
    display:flex;
    align-items:center;
    justify-content:center;
    margin:0 auto 30px;
}

.success-inner-circle{
    width:110px;
    height:110px;
    border-radius:50%;
    background:#10b981;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:54px;
    box-shadow:0 25px 60px rgba(16,185,129,.35);
}

.success-premium-card h1{
    font-size:58px;
    line-height:1.1;
    color:#0f172a;
    margin:24px 0 18px;
}

.success-subtitle{
    max-width:760px;
    margin:auto;
    color:#64748b;
    font-size:18px;
    line-height:1.8;
}

.success-order-info{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:22px;
    margin-top:40px;
}

.success-info-box{
    background:#f8fafc;
    border:1px solid #e2e8f0;
    border-radius:26px;
    padding:28px;
    text-align:left;
}

.success-info-box i{
    width:58px;
    height:58px;
    border-radius:18px;
    background:#dcfce7;
    color:#16a34a;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:24px;
    margin-bottom:18px;
}

.success-info-box span{
    display:block;
    color:#64748b;
    font-size:14px;
    margin-bottom:8px;
}

.success-info-box strong{
    color:#0f172a;
    font-size:22px;
}

.success-message-box{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:16px;
    margin-top:34px;
}

.success-message-box div{
    background:#fff;
    border:1px solid #e2e8f0;
    border-radius:20px;
    padding:18px;
    font-weight:800;
    color:#334155;
    box-shadow:0 12px 30px rgba(15,23,42,.05);
}

.success-message-box i{
    color:#10b981;
    margin-right:8px;
}

.success-btn-row{
    display:flex;
    justify-content:center;
    gap:18px;
    flex-wrap:wrap;
    margin-top:40px;
}

.success-btn{
    min-width:230px;
}

@media(max-width:992px){

    .success-premium-card{
        padding:28px;
    }

    .success-premium-card h1{
        font-size:38px;
    }

    .success-order-info,
    .success-message-box{
        grid-template-columns:1fr;
    }

    .success-animation-circle{
        width:120px;
        height:120px;
    }

    .success-inner-circle{
        width:90px;
        height:90px;
        font-size:42px;
    }
}


/* ADMIN LOGIN */
.admin-login-section{
    min-height:100vh;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:40px;
    background:
        radial-gradient(circle at top left, rgba(37,99,235,.15), transparent 30%),
        linear-gradient(135deg,#ffffff,#eff6ff);
}

.admin-login-card{
    width:100%;
    max-width:1200px;
    display:grid;
    grid-template-columns:1fr 460px;
    background:#fff;
    border-radius:40px;
    overflow:hidden;
    border:1px solid #e2e8f0;
    box-shadow:0 35px 90px rgba(15,23,42,.12);
}

.admin-login-left{
    padding:70px;
    background:linear-gradient(135deg,#2563eb,#1d4ed8);
    color:#fff;
}

.admin-login-left h1{
    font-size:58px;
    line-height:1.1;
    margin:28px 0;
}

.admin-login-left p{
    font-size:18px;
    line-height:1.8;
    opacity:.95;
}

.admin-login-right{
    padding:60px 45px;
    display:flex;
    flex-direction:column;
    justify-content:center;
}

.admin-login-header{
    text-align:center;
    margin-bottom:35px;
}

.admin-login-icon{
    width:90px;
    height:90px;
    margin:auto;
    border-radius:28px;
    background:#eff6ff;
    color:#2563eb;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:42px;
    margin-bottom:18px;
}

.admin-login-header h2{
    color:#0f172a;
    font-size:36px;
}

.input-group{
    position:relative;
    margin-bottom:18px;
}

.input-group i{
    position:absolute;
    left:18px;
    top:50%;
    transform:translateY(-50%);
    color:#64748b;
}

.input-group input{
    width:100%;
    height:62px;
    border-radius:18px;
    border:1px solid #dbe2ea;
    background:#f8fafc;
    padding-left:52px;
    font-size:16px;
}

.admin-login-btn{
    width:100%;
    height:62px;
    border:none;
    border-radius:18px;
    background:linear-gradient(135deg,#2563eb,#1d4ed8);
    color:#fff;
    font-size:17px;
    font-weight:900;
    cursor:pointer;
    margin-top:10px;
}

/* ADMIN DASHBOARD */
.admin-dashboard{
    min-height:100vh;
    background:#f8fafc;
    padding:40px;
}

.admin-topbar{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:20px;
    margin-bottom:35px;
}

.admin-topbar h1{
    font-size:42px;
    color:#0f172a;
}

.admin-topbar p{
    color:#64748b;
    margin-top:8px;
}

.logout-btn{
    border:none;
    background:#0f172a;
    color:#fff;
    padding:16px 24px;
    border-radius:18px;
    font-weight:900;
    cursor:pointer;
}

.admin-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:24px;
}

.admin-box{
    background:#fff;
    border-radius:30px;
    padding:35px;
    border:1px solid #e2e8f0;
    box-shadow:0 25px 70px rgba(15,23,42,.06);
}

.admin-box i{
    width:72px;
    height:72px;
    border-radius:22px;
    background:#eff6ff;
    color:#2563eb;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:30px;
    margin-bottom:22px;
}

.admin-box h3{
    font-size:26px;
    color:#0f172a;
    margin-bottom:10px;
}

.admin-box p{
    color:#64748b;
    line-height:1.7;
}

@media(max-width:992px){

    .admin-login-card{
        grid-template-columns:1fr;
    }

    .admin-login-left{
        padding:35px;
    }

    .admin-login-left h1{
        font-size:38px;
    }

    .admin-grid{
        grid-template-columns:1fr;
    }

    .admin-topbar{
        flex-direction:column;
        align-items:flex-start;
    }
}

/* ADMIN TABLE */
.admin-table-card,
.admin-form-card{
    background:#fff;
    border-radius:30px;
    padding:30px;
    border:1px solid #e2e8f0;
    box-shadow:0 25px 70px rgba(15,23,42,.06);
}

.admin-table{
    width:100%;
    border-collapse:collapse;
}

.admin-table th{
    background:#f8fafc;
    color:#0f172a;
    padding:18px;
    text-align:left;
}

.admin-table td{
    padding:18px;
    border-top:1px solid #e2e8f0;
}

.admin-product-img{
    width:70px;
    height:70px;
    object-fit:cover;
    border-radius:18px;
}

.admin-action-row{
    display:flex;
    gap:10px;
}

.edit-btn,
.delete-btn{
    border:none;
    padding:12px 16px;
    border-radius:14px;
    font-weight:800;
    cursor:pointer;
    text-decoration:none;
}

.edit-btn{
    background:#eff6ff;
    color:#2563eb;
}

.delete-btn{
    background:#fee2e2;
    color:#dc2626;
}

.admin-form-card{
    max-width:1000px;
    margin:auto;
}

.admin-form-card h1{
    font-size:42px;
    color:#0f172a;
    margin-bottom:28px;
}

/* ORDER MANAGEMENT */
.status-badge{
    padding:10px 14px;
    border-radius:999px;
    font-size:12px;
    font-weight:900;
}

.status-badge.blue{
    background:#dbeafe;
    color:#1d4ed8;
}

.status-badge.green{
    background:#dcfce7;
    color:#16a34a;
}

.admin-order-grid{
    display:grid;
    grid-template-columns:1fr 380px;
    gap:28px;
    align-items:flex-start;
}

.admin-order-left{
    display:grid;
    gap:24px;
}

.order-detail-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:18px;
}

.order-detail-grid div{
    background:#f8fafc;
    border:1px solid #e2e8f0;
    border-radius:18px;
    padding:18px;
}

.order-detail-grid span{
    display:block;
    color:#64748b;
    font-size:13px;
    margin-bottom:8px;
}

.order-detail-grid strong{
    color:#0f172a;
}

.address-box{
    background:#f8fafc;
    border:1px solid #e2e8f0;
    border-radius:22px;
    padding:24px;
}

.address-box h3{
    color:#0f172a;
    margin-bottom:12px;
}

.address-box p{
    color:#64748b;
    line-height:1.8;
}

.admin-order-right{
    position:sticky;
    top:110px;
}

@media(max-width:992px){

    .admin-order-grid,
    .order-detail-grid{
        grid-template-columns:1fr;
    }

    .admin-order-right{
        position:static;
    }
}


.table-responsive {
    width: 100%;
    overflow-x: auto;
}

.admin-table {
    width: 100%;
    border-collapse: collapse;
}

.admin-table th,
.admin-table td {
    padding: 14px 12px;
    border-bottom: 1px solid #e5e7eb;
    text-align: left;
    font-size: 14px;
}

.admin-table th {
    background: #f8fafc;
    color: #111827;
    font-weight: 700;
}

.small-btn {
    border: none;
    padding: 7px 12px;
    border-radius: 8px;
    font-size: 13px;
    cursor: pointer;
    text-decoration: none;
    display: inline-block;
}

.view-btn {
    background: #2563eb;
    color: #fff;
}

.delete-btn {
    background: #ef4444;
    color: #fff;
}

.success-alert {
    background: #dcfce7;
    color: #166534;
    padding: 12px 16px;
    border-radius: 12px;
    margin: 15px 0;
}

.detail-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 18px;
}

.detail-grid label {
    font-weight: 700;
    color: #374151;
    display: block;
    margin-bottom: 6px;
}

.detail-grid p {
    background: #f8fafc;
    padding: 13px 15px;
    border-radius: 12px;
    margin: 0;
    color: #111827;
}

@media (max-width: 768px) {
    .detail-grid {
        grid-template-columns: 1fr;
    }
}

.edu-mobile-wrap {
    width: min(94%, 520px);
    margin: auto;
}

.edu-mobile-hero {
    background: linear-gradient(180deg, #eff6ff 0%, #ffffff 100%);
    padding: 34px 0 42px;
    text-align: center;
}

.edu-tag {
    display: inline-block;
    background: #dbeafe;
    color: #1d4ed8;
    padding: 8px 14px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 800;
    margin-bottom: 18px;
}

.edu-mobile-hero h1 {
    font-size: 31px;
    line-height: 1.25;
    color: #0f172a;
    margin: 0 0 12px;
    font-weight: 900;
}

.edu-subtitle {
    color: #475569;
    font-size: 16px;
    line-height: 1.6;
    margin-bottom: 24px;
}

.edu-hero-card {
    background: #ffffff;
    border: 1px solid #e0ecff;
    border-radius: 26px;
    padding: 24px 18px;
    box-shadow: 0 18px 45px rgba(37, 99, 235, 0.12);
    margin-bottom: 22px;
}

.edu-icon {
    width: 72px;
    height: 72px;
    background: #eff6ff;
    border-radius: 24px;
    display: grid;
    place-items: center;
    font-size: 38px;
    margin: 0 auto 14px;
}

.edu-hero-card h2 {
    font-size: 22px;
    color: #0f172a;
    margin-bottom: 10px;
}

.edu-hero-card p {
    color: #64748b;
    line-height: 1.7;
    font-size: 15px;
}

.edu-register-btn {
    display: block;
    width: 100%;
    background: linear-gradient(135deg, #2563eb, #0ea5e9);
    color: #ffffff;
    text-decoration: none;
    padding: 15px 18px;
    border-radius: 16px;
    font-size: 17px;
    font-weight: 900;
    box-shadow: 0 14px 35px rgba(37, 99, 235, 0.28);
}

.edu-note {
    color: #64748b;
    font-size: 13px;
    margin-top: 12px;
}

.edu-info-section {
    padding: 44px 0;
    background: #ffffff;
}

.edu-info-section.light-bg {
    background: #f8fbff;
}

.edu-heading {
    text-align: center;
    margin-bottom: 22px;
}

.edu-heading span {
    color: #2563eb;
    font-weight: 900;
    font-size: 14px;
}

.edu-heading h2 {
    color: #0f172a;
    font-size: 25px;
    margin-top: 7px;
    line-height: 1.3;
}

.edu-text-card,
.edu-check-card {
    background: #ffffff;
    border: 1px solid #e5edf8;
    border-radius: 22px;
    padding: 20px;
    box-shadow: 0 12px 35px rgba(15, 23, 42, 0.06);
}

.edu-text-card p,
.edu-check-card p {
    color: #475569;
    line-height: 1.75;
    margin-bottom: 12px;
    font-size: 15px;
}

.edu-step-list {
    display: grid;
    gap: 15px;
}

.edu-step {
    display: flex;
    gap: 14px;
    background: #ffffff;
    border: 1px solid #e5edf8;
    padding: 16px;
    border-radius: 20px;
    box-shadow: 0 10px 30px rgba(15, 23, 42, 0.05);
}

.edu-step b {
    min-width: 42px;
    height: 42px;
    background: #eff6ff;
    color: #2563eb;
    border-radius: 15px;
    display: grid;
    place-items: center;
    font-size: 15px;
}

.edu-step h3 {
    color: #0f172a;
    font-size: 17px;
    margin-bottom: 5px;
}

.edu-step p {
    color: #64748b;
    font-size: 14px;
    line-height: 1.6;
}

.edu-benefit-grid {
    display: grid;
    gap: 15px;
}

.edu-benefit-card {
    background: #ffffff;
    border: 1px solid #e5edf8;
    border-radius: 22px;
    padding: 22px;
    box-shadow: 0 12px 35px rgba(15, 23, 42, 0.06);
}

.edu-benefit-card.first {
    background: linear-gradient(135deg, #2563eb, #0ea5e9);
    color: #ffffff;
}

.edu-benefit-card h3 {
    font-size: 23px;
    margin-bottom: 8px;
    color: #0f172a;
}

.edu-benefit-card p {
    color: #64748b;
    line-height: 1.6;
}

.edu-benefit-card.first h3,
.edu-benefit-card.first p {
    color: #ffffff;
}

.bottom-btn {
    margin-top: 24px;
}

@media (min-width: 768px) {
    .edu-mobile-wrap {
        width: min(90%, 1100px);
    }

    .edu-mobile-hero {
        padding: 70px 0;
    }

    .edu-mobile-hero h1 {
        font-size: 52px;
        max-width: 850px;
        margin-left: auto;
        margin-right: auto;
    }

    .edu-subtitle {
        font-size: 19px;
    }

    .edu-hero-card {
        max-width: 620px;
        margin-left: auto;
        margin-right: auto;
    }

    .edu-register-btn {
        max-width: 340px;
        margin-left: auto;
        margin-right: auto;
    }

    .edu-benefit-grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .edu-step-list {
        grid-template-columns: repeat(2, 1fr);
    }
}

.edu-reg-page {
    background: linear-gradient(180deg, #eff6ff 0%, #ffffff 100%);
    padding: 35px 0 50px;
}

.edu-reg-wrap {
    width: min(94%, 520px);
    margin: auto;
}

.edu-reg-head {
    text-align: center;
    margin-bottom: 24px;
}

.edu-reg-head span {
    display: inline-block;
    background: #dbeafe;
    color: #1d4ed8;
    padding: 8px 14px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 900;
    margin-bottom: 14px;
}

.edu-reg-head h1 {
    font-size: 28px;
    line-height: 1.3;
    color: #0f172a;
    margin-bottom: 10px;
}

.edu-reg-head p {
    color: #64748b;
    line-height: 1.6;
}

.edu-reg-card {
    background: #ffffff;
    border: 1px solid #e5edf8;
    border-radius: 24px;
    padding: 22px;
    box-shadow: 0 18px 45px rgba(15, 23, 42, 0.08);
}

.edu-fee-box {
    background: #f8fbff;
    border: 1px dashed #93c5fd;
    border-radius: 18px;
    padding: 16px;
    margin: 18px 0;
    text-align: center;
}

.edu-fee-box span {
    display: block;
    color: #475569;
    font-weight: 800;
}

.edu-fee-box strong {
    display: block;
    color: #2563eb;
    font-size: 30px;
    margin: 5px 0;
}

.edu-fee-box small {
    color: #64748b;
}


.edu-reg-premium {
    min-height: 100vh;
    background:
        radial-gradient(circle at top left, rgba(37,99,235,0.16), transparent 30%),
        linear-gradient(180deg, #eff6ff 0%, #ffffff 45%, #f8fbff 100%);
    padding: 28px 0 50px;
}

.edu-reg-container {
    width: min(94%, 540px);
    margin: auto;
}

.edu-reg-top-card {
    background: #ffffff;
    border: 1px solid #e0ecff;
    border-radius: 28px;
    padding: 24px 20px;
    text-align: center;
    box-shadow: 0 20px 55px rgba(37, 99, 235, 0.13);
    margin-bottom: 18px;
}

.edu-reg-badge {
    display: inline-flex;
    background: #dbeafe;
    color: #1d4ed8;
    padding: 8px 15px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 900;
    margin-bottom: 14px;
}

.edu-reg-top-card h1 {
    color: #0f172a;
    font-size: 28px;
    line-height: 1.32;
    margin: 0 0 10px;
    font-weight: 900;
}

.edu-reg-top-card p {
    color: #64748b;
    font-size: 15px;
    line-height: 1.65;
    margin: 0;
}

.edu-fee-premium {
    background: linear-gradient(135deg, #2563eb, #0ea5e9);
    color: #ffffff;
    border-radius: 22px;
    padding: 18px;
    margin-top: 20px;
}

.edu-fee-premium span {
    display: block;
    font-weight: 800;
    opacity: 0.95;
}

.edu-fee-premium strong {
    display: block;
    font-size: 38px;
    margin: 4px 0;
    font-weight: 900;
}

.edu-fee-premium small {
    display: block;
    line-height: 1.5;
    opacity: 0.95;
}

.edu-form-premium-card {
    background: rgba(255, 255, 255, 0.96);
    border: 1px solid #e5edf8;
    border-radius: 28px;
    padding: 22px;
    box-shadow: 0 20px 60px rgba(15, 23, 42, 0.10);
}

.edu-input-group {
    margin-bottom: 16px;
}

.edu-input-group label {
    display: block;
    color: #1e293b;
    font-size: 14px;
    font-weight: 900;
    margin-bottom: 8px;
}

.edu-input-group input,
.edu-input-group select,
.edu-input-group textarea {
    width: 100%;
    border: 1px solid #dbeafe;
    background: #f8fbff;
    border-radius: 16px;
    padding: 15px 14px;
    font-size: 15px;
    color: #0f172a;
    outline: none;
}

.edu-input-group input:focus,
.edu-input-group select:focus,
.edu-input-group textarea:focus {
    border-color: #2563eb;
    background: #ffffff;
    box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.10);
}

.edu-input-group small {
    display: block;
    color: #dc2626;
    margin-top: 5px;
    font-weight: 700;
}

.edu-premium-submit {
    width: 100%;
    border: none;
    background: linear-gradient(135deg, #2563eb, #0ea5e9);
    color: #ffffff;
    padding: 16px;
    border-radius: 18px;
    font-size: 16px;
    font-weight: 900;
    cursor: pointer;
    box-shadow: 0 15px 35px rgba(37, 99, 235, 0.28);
}

.edu-form-note {
    text-align: center;
    margin-top: 13px;
    color: #64748b;
    font-size: 13px;
    line-height: 1.5;
}

.edu-alert-success {
    background: #dcfce7;
    color: #166534;
    padding: 14px 16px;
    border-radius: 16px;
    margin-bottom: 16px;
    font-weight: 800;
}

.edu-alert-error {
    background: #fee2e2;
    color: #991b1b;
    padding: 14px 16px;
    border-radius: 16px;
    margin-bottom: 16px;
    font-weight: 800;
}

@media (min-width: 768px) {
    .edu-reg-premium {
        padding: 55px 0 70px;
    }

    .edu-reg-top-card h1 {
        font-size: 36px;
    }

    .edu-form-premium-card {
        padding: 30px;
    }
}

.brand{
    display:flex;
    align-items:center;
    gap:12px;
    text-decoration:none;
}

.brand-logo{
    width:60px;
    height:60px;
    object-fit:contain;
    border-radius:12px;
    background:#fff;
}

.brand strong{
    display:block;
    font-size:22px;
    color:#111;
    line-height:1.1;
}

.brand small{
    display:block;
    font-size:14px;
    color:#666;
    letter-spacing:2px;
}
