/*
Theme Name: GBKParts 2026
Theme URI: https://gbkparts.com
Author: GBK Parts
Author URI: https://gbkparts.com
Description: Custom WooCommerce theme for GBK Truck Parts — heavy-duty mud flap hangers, chrome accessories, and stainless steel parts.
Version: 3.9.72
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: gbkparts-2026
Tags: e-commerce, woocommerce, full-width-template, custom-colors, custom-logo
*/

/* =============================================
   RESET & BASE
   ============================================= */
*, *::before, *::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

html {
    font-size: 16px;
    scroll-behavior: smooth;
}

body {
    font-family: 'Poppins', Arial, sans-serif;
    font-size: 1rem;
    line-height: 1.6;
    color: #333333;
    background-color: #ffffff;
    width: 100%;
    overflow-x: hidden;
}

/* =============================================
   WORDPRESS STANDARD WRAPPERS — FULL WIDTH
   Following Storefront/WordPress classic theme structure
   ============================================= */
#page {
    width: 100%;
    overflow: hidden;
}

.site-content {
    width: 100%;
}

.col-full {
    width: 100%;
    max-width: 100%;
    padding: 0;
    margin: 0;
}

/* =============================================
   CSS VARIABLES
   ============================================= */
:root {
    --gbk-green:  #76aa24;
    --gbk-green-dark: #5d8a1a;
    --gbk-black:  #0b0a0c;
    --gbk-dark:   #1a1a1a;
    --gbk-gray:   #f5f5f5;
    --gbk-gray-2: #fafafa;
    --gbk-border: #e5e5e5;
    --gbk-text:   #333333;
    --gbk-muted:  #6b7280;
    --gbk-white:  #ffffff;
    --container-width: 1280px;
    --container-pad: 0 40px;

    /* ---- TYPE SCALE (design system) ----
       One source of truth for font sizes. Base bumped to 17px for readability
       (older customers). Use these tokens instead of hard-coded px. */
    --gbk-fs-xs:   0.8125rem;  /* 13px — fine print */
    --gbk-fs-sm:   0.9375rem;  /* 15px — secondary text */
    --gbk-fs-base: 1.0625rem;  /* 17px — body */
    --gbk-fs-md:   1.1875rem;  /* 19px — emphasized / prices */
    --gbk-fs-lg:   1.375rem;   /* 22px — sub-headings */
    --gbk-fs-xl:   1.75rem;    /* 28px — section titles */
    --gbk-fs-2xl:  2.25rem;    /* 36px — page title */

    /* ---- SPACING SCALE ---- */
    --gbk-sp-1: 4px;
    --gbk-sp-2: 8px;
    --gbk-sp-3: 12px;
    --gbk-sp-4: 16px;
    --gbk-sp-5: 24px;
    --gbk-sp-6: 32px;
    --gbk-sp-7: 48px;
    --gbk-sp-8: 64px;

    /* ---- SURFACE ---- */
    --gbk-radius:    10px;
    --gbk-radius-sm: 6px;
    --gbk-shadow:    0 1px 3px rgba(0,0,0,.08), 0 1px 2px rgba(0,0,0,.04);
    --gbk-shadow-lg: 0 4px 16px rgba(0,0,0,.08);
}

/* =============================================
   TYPOGRAPHY
   ============================================= */
h1, h2 {
    font-family: 'Inter', Arial, sans-serif;
    font-weight: 800;
    line-height: 1.2;
    color: var(--gbk-black);
    text-transform: uppercase;
    letter-spacing: -0.01em;
}
h3, h4, h5, h6 {
    font-family: 'Poppins', Arial, sans-serif;
    font-weight: 700;
    line-height: 1.3;
    color: var(--gbk-black);
}

a {
    color: var(--gbk-green);
    text-decoration: none;
}

a:hover {
    color: var(--gbk-black);
}

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

ul, ol {
    list-style: none;
}

/* =============================================
   INNER CONTAINER (for content that needs max-width)
   ============================================= */
.gbk-container {
    width: 100%;
    max-width: var(--container-width);
    margin: 0 auto;
    padding: var(--container-pad);
}

/* =============================================
   BUTTONS
   ============================================= */
.gbk-btn {
    display: inline-block;
    padding: 14px 32px;
    font-family: 'Inter', Arial, sans-serif;
    font-size: 0.9rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    border-radius: 4px;
    cursor: pointer;
    transition: all 0.2s ease;
    border: 2px solid transparent;
    text-decoration: none;
}

.gbk-btn-primary {
    background: var(--gbk-green);
    color: var(--gbk-white);
    border-color: var(--gbk-green);
}

.gbk-btn-primary:hover {
    background: #5d8a1a;
    border-color: #5d8a1a;
    color: var(--gbk-white);
}

.gbk-btn-outline {
    background: transparent;
    color: var(--gbk-white);
    border-color: var(--gbk-white);
}

.gbk-btn-outline:hover {
    background: var(--gbk-white);
    color: var(--gbk-black);
}
