/*
Theme Name: PG Store Nepal
Theme URI: https://pgstorenepal.com/
Author: Prashiddha Pokhrel
Description: PG Store Nepal is a modern, clean, and fully responsive WooCommerce eCommerce theme designed for online stores and businesses in Nepal. It offers a professional shopping experience with an attractive homepage, product categories, featured products, promotional sections, and responsive product layouts.
The theme is optimized for mobile, tablet, and desktop devices, ensuring a smooth browsing experience on every screen size. With WooCommerce integration, it supports essential eCommerce features including products, categories, cart, checkout, customer accounts, and online store management.
PG Store Nepal is suitable for electronics, home appliances, kitchen products, agriculture, fashion, beauty, accessories, and other retail businesses. Its clean design, easy customization, SEO-friendly structure, and user-friendly navigation make it an ideal choice for building a professional online store.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: pg-store-nepal
*/
/* =========================================================
   PG STORE NEPAL - GLOBAL VARIABLES
========================================================= */

:root{
    --pg-primary:#1769e0;
    --pg-secondary:#152238;
    --pg-accent:#e53935;
    --pg-bg:#f5f7fa;
    --pg-text:#202733;
    --pg-border:#e5e7eb;
    --pg-radius:10px;
}


/* =========================================================
   RESET & GLOBAL
========================================================= */

*{
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{
    margin:0;
    font-family:Roboto,Arial,sans-serif;
    color:var(--pg-text);
    background:var(--pg-bg);
    line-height:1.6;
}

a{
    color:var(--pg-primary);
    text-decoration:none;
}

img{
    max-width:100%;
    height:auto;
}

.pg-container{
    width:min(1200px,94%);
    margin:auto;
}


/* =========================================================
   TOP BAR
========================================================= */

.pg-topbar{
    background:var(--pg-secondary);
    color:#fff;
    font-size:13px;
}

.pg-topbar-inner{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:15px;
    padding:7px 0;
}


/* =========================================================
   HEADER
========================================================= */

.pg-header{
    background:#fff;
    border-bottom:1px solid var(--pg-border);
}

.pg-header-main{
    display:grid;
    grid-template-columns:220px 1fr auto;
    align-items:center;
    gap:25px;
    padding:18px 0;
}


/* LOGO */

.pg-logo img{
    max-height:58px;
    width:auto;
}

.pg-logo-text{
    font-size:25px;
    font-weight:800;
    color:var(--pg-secondary);
}


/* =========================================================
   SEARCH
========================================================= */

.pg-search{
    display:flex;
    border:2px solid var(--pg-primary);
    border-radius:8px;
    overflow:hidden;
    background:#fff;
}

.pg-search input{
    flex:1;
    border:0;
    padding:12px 15px;
    outline:0;
    font-size:15px;
}

.pg-search button{
    border:0;
    background:var(--pg-primary);
    color:#fff;
    padding:0 20px;
    cursor:pointer;
}


/* =========================================================
   HEADER ACTIONS
========================================================= */

.pg-actions{
    display:flex;
    gap:18px;
    align-items:center;
}

.pg-action{
    color:var(--pg-secondary);
    font-size:14px;
    white-space:nowrap;
}

.pg-action strong{
    display:block;
}

.pg-cart-count{
    background:var(--pg-accent);
    color:#fff;
    border-radius:20px;
    padding:1px 7px;
    font-size:11px;
}


/* =========================================================
   NAVIGATION
========================================================= */

.pg-nav{
    background:var(--pg-primary);
}

.pg-nav ul{
    display:flex;
    gap:0;
    margin:0;
    padding:0;
    list-style:none;
}

.pg-nav a{
    display:block;
    color:#fff;
    padding:13px 18px;
    font-weight:600;
}

.pg-nav a:hover{
    background:rgba(0,0,0,.12);
}

.pg-mobile-toggle{
    display:none;
}


/* =========================================================
   COMMON SECTIONS
========================================================= */

.pg-section{
    padding:38px 0;
}

.pg-section-title{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:20px;
}

.pg-section-title h2{
    margin:0;
    font-size:24px;
    color:var(--pg-secondary);
}


/* =========================================================
   HERO
========================================================= */

.pg-hero{
    margin-top:20px;
}

.pg-hero-slide{
    position:relative;
    min-height:390px;
    background:linear-gradient(135deg,#eaf2ff,#fff);
    border-radius:14px;
    overflow:hidden;
    display:flex;
    align-items:center;
    padding:50px;
}

.pg-hero-content{
    max-width:55%;
    position:relative;
    z-index:2;
}

.pg-hero h1{
    font-size:44px;
    line-height:1.1;
    margin:0 0 15px;
    color:var(--pg-secondary);
}


/* =========================================================
   BUTTONS
========================================================= */

.pg-btn,
.button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:0;
    border-radius:7px;
    background:var(--pg-primary);
    color:#fff;
    padding:11px 20px;
    font-weight:700;
    cursor:pointer;
}

.pg-btn:hover,
.button:hover,
.woocommerce a.button:hover{
    opacity:.9;
    color:#fff;
}


/* =========================================================
   PRODUCT GRID
========================================================= */

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


/* PRODUCT CARD */

.pg-card{
    background:#fff;
    border:1px solid var(--pg-border);
    border-radius:var(--pg-radius);
    overflow:hidden;
    transition:.2s;
}

.pg-card:hover{
    box-shadow:0 8px 25px rgba(20,40,80,.09);
    transform:translateY(-2px);
}

.pg-card-image{
    aspect-ratio:1/1;
    background:#fafafa;
    display:flex;
    align-items:center;
    justify-content:center;
}

.pg-card-body{
    padding:14px;
}

.pg-card h3{
    font-size:15px;
    line-height:1.4;
    margin:0 0 8px;
}

.pg-price{
    font-weight:800;
    color:var(--pg-secondary);
    font-size:18px;
}

.pg-old-price{
    text-decoration:line-through;
    color:#888;
    font-weight:400;
    font-size:13px;
    margin-left:6px;
}


/* SALE BADGE */

.pg-sale{
    position:absolute;
    top:10px;
    left:10px;
    background:var(--pg-accent);
    color:#fff;
    padding:4px 8px;
    border-radius:5px;
    font-size:11px;
    font-weight:700;
}


/* =========================================================
   CATEGORY
========================================================= */

.pg-category{
    background:#fff;
    border:1px solid var(--pg-border);
    border-radius:10px;
    padding:20px;
    text-align:center;
}

.pg-category img{
    width:100%;
    aspect-ratio:1/1;
    object-fit:cover;
    border-radius:8px;
}


/* =========================================================
   FEATURES
========================================================= */

.pg-features{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:15px;
}

.pg-feature{
    background:#fff;
    border:1px solid var(--pg-border);
    padding:20px;
    border-radius:10px;
}


/* =========================================================
   FOOTER
========================================================= */

.pg-footer{
    background:var(--pg-secondary);
    color:#dce4ef;
    margin-top:45px;
}

.pg-footer h3{
    color:#fff;
}

.pg-footer a{
    color:#dce4ef;
}

.pg-footer-grid{
    display:grid;
    grid-template-columns:2fr 1fr 1fr 1.3fr;
    gap:35px;
    padding:45px 0;
}

.pg-footer-bottom{
    border-top:1px solid rgba(255,255,255,.12);
    padding:16px 0;
    font-size:13px;
}


/* =========================================================
   WORDPRESS / WOOCOMMERCE
========================================================= */

.woocommerce .site-main,
.site-main{
    min-height:50vh;
}


/* PRODUCT ARCHIVE */

.woocommerce ul.products{
    display:grid !important;
    grid-template-columns:repeat(4,1fr);
    gap:18px;
    margin:0 !important;
}

.woocommerce ul.products li.product{
    width:auto !important;
    float:none !important;
    margin:0 !important;
    background:#fff;
    border:1px solid var(--pg-border);
    border-radius:10px;
    padding:12px;
    overflow:hidden;
}

.woocommerce ul.products li.product a img{
    border-radius:7px;
}


/* SALE */

.woocommerce span.onsale{
    background:var(--pg-accent);
    min-width:auto;
    min-height:auto;
    padding:6px 9px;
    line-height:1;
    font-size:11px;
}


/* SINGLE PRODUCT */

.woocommerce div.product{
    background:#fff;
    padding:25px;
    border-radius:12px;
}

.woocommerce div.product div.images img{
    border-radius:10px;
}

.woocommerce div.product p.price,
.woocommerce div.product span.price{
    color:var(--pg-secondary);
    font-weight:800;
}


/* CART / CHECKOUT */

.woocommerce-cart .cart-collaterals,
.woocommerce-checkout #customer_details{
    background:#fff;
    padding:20px;
    border-radius:10px;
}

.woocommerce table.shop_table{
    border-collapse:collapse;
    background:#fff;
}

.woocommerce table.shop_table td,
.woocommerce table.shop_table th{
    border-color:var(--pg-border);
}


/* =========================================================
   BREADCRUMBS
========================================================= */

.pg-breadcrumbs{
    padding:16px 0;
    font-size:13px;
    color:#777;
}


/* =========================================================
   ACCESSIBILITY
========================================================= */

.screen-reader-text{
    position:absolute !important;
    clip:rect(1px,1px,1px,1px) !important;
}


/* =========================================================
   TABLET - 1024px
========================================================= */

@media(max-width:1024px){

    .pg-header-main{
        grid-template-columns:180px 1fr auto;
    }

    .pg-grid,
    .woocommerce ul.products{
        grid-template-columns:repeat(3,1fr) !important;
    }

    .pg-footer-grid{
        grid-template-columns:repeat(2,1fr);
    }

}


/* =========================================================
   MOBILE - 768px
========================================================= */

@media(max-width:768px){

    .pg-topbar-inner{
        justify-content:center;
    }

    .pg-header-main{
        grid-template-columns:auto 1fr auto;
        gap:10px;
        padding:12px 0;
    }

    .pg-logo-text{
        font-size:18px;
    }

    .pg-search{
        grid-column:1/-1;
        grid-row:2;
    }

    .pg-actions{
        gap:10px;
    }

    .pg-action.account{
        display:none;
    }

    .pg-mobile-toggle{
        display:block;
        background:none;
        border:0;
        font-size:22px;
        color:var(--pg-secondary);
    }

    .pg-nav{
        display:none;
    }

    .pg-nav.is-open{
        display:block;
    }

    .pg-nav ul{
        display:block;
    }

    .pg-nav a{
        padding:12px 18px;
    }

    .pg-hero-slide{
        min-height:280px;
        padding:30px;
    }

    .pg-hero-content{
        max-width:100%;
    }

    .pg-hero h1{
        font-size:31px;
    }

    .pg-grid,
    .woocommerce ul.products{
        grid-template-columns:repeat(2,1fr) !important;
    }

    .pg-features{
        grid-template-columns:1fr 1fr;
    }

    .pg-footer-grid{
        grid-template-columns:1fr 1fr;
    }

}


/* =========================================================
   SMALL MOBILE - 480px
========================================================= */

@media(max-width:480px){

    .pg-container{
        width:92%;
    }

    .pg-actions .pg-action:not(.cart){
        display:none;
    }

    .pg-grid,
    .woocommerce ul.products{
        grid-template-columns:repeat(2,1fr) !important;
        gap:10px;
    }

    .pg-card-body{
        padding:10px;
    }

    .pg-card h3{
        font-size:13px;
    }

    .pg-price{
        font-size:16px;
    }

    .pg-features{
        grid-template-columns:1fr;
    }

    .pg-footer-grid{
        grid-template-columns:1fr;
    }

    .pg-section{
        padding:25px 0;
    }

}