/* --- HEADER NAVIGATION DROPDOWN STYLES --- */
.anx-nav-menu { display: flex; align-items: center; gap: 24px; position: relative; }
.nav-item-has-children { position: relative; display: inline-flex; align-items: center; }
.nav-item-has-children > a { display: flex; align-items: center; gap: 6px; }
.nav-item-has-children > a .fa-chevron-down { font-size: 0.75rem; transition: transform 0.2s ease; }
.nav-item-has-children:hover > a .fa-chevron-down { transform: rotate(180deg); }

.nav-dropdown { position: absolute; top: 100%; left: 0; min-width: 270px; background: #111612; border: 1px solid rgba(255, 255, 255, 0.12); border-radius: 6px; box-shadow: 0 10px 30px rgba(0,0,0,0.5); padding: 12px 0; opacity: 0; visibility: hidden; transform: translateY(10px); transition: all 0.25s ease; z-index: 9999; }
.nav-item-has-children:hover .nav-dropdown { opacity: 1; visibility: visible; transform: translateY(0); }

.nav-dropdown-group-title { padding: 8px 18px 4px 18px; font-size: 0.725rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.08em; color: var(--ind-accent, #4a6330) !important; }
.anx-nav-menu .nav-dropdown a { display: block; padding: 8px 18px; color: #d1d5db !important; font-size: 0.9rem; text-decoration: none !important; transition: background 0.2s ease, color 0.2s ease; }
.anx-nav-menu .nav-dropdown a.sub-cat-link { padding-left: 28px; font-size: 0.85rem; color: #9ca3af !important; }
.anx-nav-menu .nav-dropdown a:hover { background-color: rgba(255, 255, 255, 0.06) !important; color: #ffffff !important; }
.nav-dropdown-divider { height: 1px; background-color: rgba(255, 255, 255, 0.08); margin: 8px 0; }

/* Mobile Dropdown Styling */
.mobile-nav__list .mobile-has-children { display: flex; flex-direction: column; }
.mobile-dropdown-toggle { display: flex; justify-content: space-between; align-items: center; width: 100%; }
.mobile-submenu { display: none; padding-left: 16px; margin-top: 6px; margin-bottom: 12px; border-left: 2px solid var(--ind-accent, #4a6330); }
.mobile-submenu.is-open { display: block; }
.mobile-submenu a { display: block; padding: 6px 0; font-size: 0.9rem; color: #9ca3af; }
.mobile-submenu a.sub-cat-link { padding-left: 12px; font-size: 0.85rem; }
.mobile-group-title { margin: 12px 0 4px 0; color: var(--ind-accent, #4a6330); font-size: 0.75rem; font-weight: 700; text-transform: uppercase; }

/* Category Filter Pills on Shop */
.product-category-bar-wrapper { margin: 20px 0 35px 0; width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; padding-bottom: 5px; }
.product-category-bar { display: flex; align-items: center; gap: 10px; flex-wrap: nowrap; white-space: nowrap; }
.category-pill { display: inline-flex; align-items: center; padding: 8px 18px; background-color: rgba(255, 255, 255, 0.05); border: 1px solid rgba(255, 255, 255, 0.12); border-radius: 4px; color: var(--ind-black, #0a0a0a); font-size: 0.875rem; font-weight: 500; text-decoration: none; transition: all 0.2s ease; }
.category-pill:hover { border-color: var(--ind-accent, #4a6330); color: #ffffff; background-color: var(--ind-accent, #4a6330); }
.category-pill.active { background-color: var(--ind-accent, #4a6330); border-color: var(--ind-accent, #4a6330); color: #ffffff; font-weight: 600; box-shadow: 0 0 12px rgba(54, 124, 43, 0.3); }

/* Hide the default Ecwid floating cart icon */
.ec-cart-widget { display: none !important; }

/* --- PROFESSIONAL INDUSTRIAL STYLES --- */
:root {
    --ind-black: #0a0a0a;
    --ind-dark: #1a1a1a;
    --ind-grey: #2d2d2d;
    --ind-light-grey: #f4f4f4;
    --ind-border: #e5e7eb;
    --ind-accent: #4a6330; /* American Excavator Green */
    --ind-accent-hover: #295F20;
}

body {
    font-family: 'Inter', 'Roboto', sans-serif;
    background-color: var(--ind-light-grey);
    color: var(--ind-black);
    margin: 0;
    padding: 0;
}

.hp-section {
    padding: 80px 20px;
    width: 100vw;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
    box-sizing: border-box;
    overflow: hidden;
}

.hp-container {
    max-width: 1280px;
    margin: 0 auto;
    width: 100%;
    position: relative;
    z-index: 2;
}

/* Typography Enhancements */
h1, h2, h3, h4, h5, h6 {
    text-transform: uppercase;
    font-weight: 900;
    margin-top: 0;
}

p {
    line-height: 1.6;
    color: #52525b;
}

/* Buttons */
.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-size: 1.1rem;
    padding: 16px 36px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    border-radius: 0px;
    text-decoration: none;
    transition: all 0.2s ease;
    cursor: pointer;
}
.btn--primary { background: var(--ind-accent); color: #fff; border: 2px solid var(--ind-accent); }
.btn--primary:hover { background: var(--ind-accent-hover); border-color: var(--ind-accent-hover); color: #fff; }
.btn--outline { background: transparent; color: var(--ind-black); border: 2px solid var(--ind-black); }
.btn--outline:hover { background: var(--ind-black); color: #fff; }
.btn--outline-white { background: transparent; color: #fff; border: 2px solid #fff; }
.btn--outline-white:hover { background: #fff; color: var(--ind-black); }

/* --- HOMEPAGE HERO (ENTERPRISE REDESIGN) --- */
.hp-hero-enterprise {
    position: relative;
    width: 100%;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    background-color: #ffffff;
    overflow: hidden;
}

/* 20-second slow zoom animation for background image */
.hp-hero-enterprise::before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background-image: url('https://americanexcavator.net/wp-content/uploads/2026/08/ChatGPT-Image-Aug-6-2026-01_56_35-PM.png');
    background-size: cover;
    background-position: right center;
    background-repeat: no-repeat;
    z-index: 1;
    animation: heroZoom 20s ease-out forwards;
}

/* Gradient overlay for text readability on the left */
.hp-hero-enterprise::after {
    content: '';
    position: absolute;
    top: 0; left: 0; bottom: 0; width: 65%;
    background: linear-gradient(to right, rgba(255,255,255,1) 0%, rgba(255,255,255,0.9) 40%, rgba(255,255,255,0) 100%);
    z-index: 2;
}

@keyframes heroZoom {
    0% { transform: scale(1); }
    100% { transform: scale(1.03); }
}

/* --- PREMIUM GLOBAL HEADER (ALL PAGES) --- */
.navbar {
    position: fixed !important;
    top: 0; left: 0; right: 0;
    background: rgba(255, 255, 255, 0.95) !important;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border-bottom: 1px solid rgba(0,0,0,0.06) !important;
    box-shadow: 0 4px 20px rgba(0,0,0,0.05) !important;
    z-index: 1000 !important;
    transition: all 0.3s ease;
}

/* Adjust padding on the wrapper instead of navbar so the background height shrinks cleanly */
.navbar__inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 1280px;
    margin: 0 auto;
    padding: 12px 24px;
    transition: all 0.3s ease;
}

/* Scrolled State */
.navbar.scrolled .navbar__inner {
    padding: 8px 24px;
}

/* Logo Alignment & Consistency */
.navbar .logo {
    display: flex;
    align-items: center;
}
.navbar .logo img { 
    height: 60px !important; 
    max-height: none !important; 
    width: auto !important; 
    transition: height 0.3s ease !important;
}
.navbar.scrolled .logo img {
    height: 50px !important;
}

/* Force Navigation Links to Match the Premium Dark Tone */
.anx-nav-menu {
    display: flex;
    align-items: center;
    gap: 32px;
}
.anx-nav-menu a {
    color: #111827 !important;
    font-weight: 700;
    font-size: 0.95rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    text-decoration: none;
    transition: color 0.2s ease;
}
.anx-nav-menu a:hover {
    color: var(--ind-accent) !important;
}
.navbar__actions {
    display: flex;
    align-items: center;
    gap: 24px;
}
.navbar__actions .cart-icon-link i {
    color: #111827 !important;
    font-size: 1.2rem;
    transition: color 0.2s ease;
}
.navbar__actions .cart-icon-link:hover i {
    color: var(--ind-accent) !important;
}

@media (max-width: 1024px) {
    .anx-nav-menu { display: none; }
    .navbar__inner { padding: 16px 20px; }
    .navbar.scrolled .navbar__inner { padding: 10px 20px; }
    .navbar .logo img { height: 50px !important; }
    .navbar.scrolled .logo img { height: 45px !important; }
}

/* --- HERO CONTENT --- */
.hp-hero-enterprise__content {
    position: relative;
    z-index: 10;
    max-width: 1280px;
    width: 100%;
    margin: 0 auto;
    padding: 180px 20px 60px 20px;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    opacity: 0;
    animation: fadeUp 1s ease-out forwards;
}

.hp-hero-enterprise__badge {
    display: inline-block;
    align-self: flex-start;
    font-size: 0.75rem;
    font-weight: 800;
    color: var(--ind-accent);
    background: rgba(54,124,43,0.1);
    border: 1px solid rgba(54,124,43,0.2);
    padding: 6px 16px;
    border-radius: 9999px;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    margin-bottom: 24px;
}

.hp-hero-enterprise__title {
    font-size: clamp(3rem, 4.5vw, 4.5rem);
    line-height: 1.1;
    font-weight: 900;
    color: #111827;
    margin-bottom: 24px;
    max-width: 700px;
    text-transform: none;
}

.hp-hero-enterprise__subtitle {
    font-size: 1.125rem;
    line-height: 1.6;
    color: #4b5563;
    max-width: 600px;
    margin-bottom: 40px;
}

.hp-hero-enterprise__actions {
    display: flex;
    gap: 16px;
    opacity: 0;
    animation: fadeUp 0.8s ease-out 0.4s forwards;
}

.hp-hero-enterprise__actions .btn {
    border-radius: 8px;
    padding: 16px 32px;
    font-weight: 700;
}
.hp-hero-enterprise__actions .btn--outline-white {
    background: #ffffff;
    color: #111827;
    border: 1px solid #d1d5db;
}
.hp-hero-enterprise__actions .btn--outline-white:hover {
    background: #f9fafb;
    border-color: #9ca3af;
}

/* --- TRUST CARDS (Glassmorphism) --- */
.hp-trust-cards {
    position: relative;
    z-index: 10;
    display: flex;
    justify-content: flex-start;
    gap: 16px;
    max-width: 1280px;
    width: 100%;
    margin: 0 auto;
    padding: 0 20px 40px 20px;
    flex-wrap: wrap;
    opacity: 0;
    animation: fadeUp 0.8s ease-out 0.6s forwards;
}

.hp-trust-card {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    background: rgba(255, 255, 255, 0.8);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border: 1px solid rgba(255, 255, 255, 0.6);
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 10px 15px -3px rgba(0, 0, 0, 0.02);
    border-radius: 16px;
    padding: 20px 24px;
    flex: 1;
    min-width: 250px;
    max-width: 300px;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.hp-trust-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
}

.hp-trust-card__icon {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: rgba(54,124,43,0.15);
    color: var(--ind-accent);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.9rem;
    flex-shrink: 0;
}

.hp-trust-card__text { display: flex; flex-direction: column; }
.hp-trust-card__title { font-weight: 700; color: #111827; font-size: 0.95rem; margin-bottom: 4px; }
.hp-trust-card__desc { color: #6b7280; font-size: 0.85rem; line-height: 1.4; }

@keyframes fadeUp {
    from { opacity: 0; transform: translateY(20px); }
    to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 900px) {
    .hp-hero-enterprise { min-height: auto; padding-top: 80px; }
    .hp-hero-enterprise::after { width: 100%; background: linear-gradient(to right, rgba(255,255,255,0.95) 0%, rgba(255,255,255,0.85) 100%); }
    .hp-trust-card { min-width: 100%; max-width: 100%; }
}

/* --- HIGHLIGHTED MODELS --- */
.hp-highlight { background: #ffffff; padding: 100px 20px; }
.hp-highlight-container { display: flex; align-items: center; gap: 60px; max-width: 1280px; margin: 0 auto; }
.hp-highlight-container--reverse { flex-direction: row-reverse; }
.hp-highlight-content { flex: 1; }
.hp-highlight-image { flex: 1; position: relative; }
.hp-highlight-image img { width: 100%; max-width: 600px; height: auto; display: block; border: 1px solid var(--ind-border); padding: 20px; background: #fff; box-shadow: 12px 12px 0px var(--ind-accent); }
.hp-highlight-eyebrow { font-weight: 800; color: var(--ind-accent); text-transform: uppercase; letter-spacing: 0.15em; margin-bottom: 12px; display: block; }
.hp-highlight-title { font-size: 2.75rem; line-height: 1.1; margin-bottom: 24px; color: var(--ind-black); }
.hp-highlight-desc { font-size: 1.15rem; color: #52525b; line-height: 1.6; margin-bottom: 30px; }

/* --- GUARANTEES --- */
.hp-guarantees { background: var(--ind-light-grey); padding: 60px 20px; border-bottom: 1px solid var(--ind-border); }
.hp-guarantees__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.hp-guarantee-card { background: #fff; border: 1px solid var(--ind-border); padding: 40px 30px; display: flex; flex-direction: column; align-items: flex-start; position: relative; overflow: hidden; transition: border-color 0.2s ease; }
.hp-guarantee-card::before { content: ''; position: absolute; top: 0; left: 0; width: 4px; height: 100%; background: var(--ind-accent); transform: scaleY(0); transition: transform 0.2s ease; transform-origin: top; }
.hp-guarantee-card:hover { border-color: #d4d4d8; }
.hp-guarantee-card:hover::before { transform: scaleY(1); }
.hp-guarantee-card i { font-size: 2.2rem; color: var(--ind-black); margin-bottom: 24px; }
.hp-guarantee-card h3 { font-size: 1.25rem; margin-bottom: 12px; letter-spacing: 0.02em; color: var(--ind-black); }
.hp-guarantee-card p { font-size: 0.95rem; margin: 0; }

/* --- XXV SERIES SPECIFICATIONS --- */
.hp-specs { background: #ffffff; padding: 100px 20px; }
.hp-specs-layout { display: grid; grid-template-columns: 320px 1fr; gap: 40px; margin-top: 40px; }
@media (max-width: 900px) { .hp-specs-layout { grid-template-columns: 1fr; } }

.hp-specs-tabs { display: flex; flex-direction: column; gap: 12px; }
.spec-tab { background: var(--ind-light-grey); border: 1px solid var(--ind-border); padding: 24px; text-align: left; cursor: pointer; border-radius: 4px; transition: all 0.3s ease; display: flex; flex-direction: column; gap: 4px; }
.spec-tab:hover { background: #f8fafc; border-color: #d1d5db; }
.spec-tab.active { background: var(--ind-black); border-color: var(--ind-black); }
.spec-tab .tab-title { font-size: 1.25rem; font-weight: 800; color: var(--ind-black); text-transform: uppercase; transition: color 0.3s ease; }
.spec-tab.active .tab-title { color: #ffffff; }
.spec-tab .tab-desc { font-size: 0.9rem; color: #71717a; transition: color 0.3s ease; }
.spec-tab.active .tab-desc { color: #a1a1aa; }

.hp-specs-content { background: #ffffff; border: 1px solid var(--ind-border); border-radius: 4px; padding: 40px; box-shadow: 0 20px 40px rgba(0,0,0,0.02); }
@media (max-width: 600px) { .hp-specs-content { padding: 20px; overflow-x: auto; } }
.spec-panel { display: none; animation: fadeIn 0.4s ease; }
.spec-panel.active { display: block; }

.premium-spec-table { width: 100%; border-collapse: collapse; text-align: left; }
.premium-spec-table th, .premium-spec-table td { padding: 20px 24px; border-bottom: 1px solid var(--ind-border); font-size: 1rem; }
.premium-spec-table th { color: var(--ind-black); font-weight: 900; text-transform: uppercase; letter-spacing: 0.05em; font-size: 0.85rem; width: 33%; }
.premium-spec-table th:first-child { width: 34%; }
.premium-spec-table thead th { border-bottom: 3px solid var(--ind-black); font-size: 1rem; }
.premium-spec-table td { color: #4b5563; font-weight: 500; }
.premium-spec-table tr:last-child td { border-bottom: none; }
.premium-spec-table tbody tr:hover td { background: var(--ind-light-grey); }

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}

/* --- FEATURED EQUIPMENT (WooCommerce Layout Update) --- */
.hp-featured { background: var(--ind-dark); color: #fff; border-top: 4px solid var(--ind-accent); }
.hp-featured .hp-section-header h2 { color: #fff; }
.hp-featured .hp-section-header p { color: #a1a1aa; }

.hp-featured .woocommerce ul.products { display: grid !important; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important; gap: 30px !important; margin: 0 0 60px 0 !important; align-items: stretch !important; }
.hp-featured .woocommerce ul.products::before, .hp-featured .woocommerce ul.products::after { display: none !important; }

.hp-featured .woocommerce ul.products li.product { position: relative !important; background: #ffffff !important; border: 1px solid var(--ind-border) !important; border-radius: 4px !important; overflow: hidden !important; transition: all 0.3s ease !important; text-decoration: none !important; display: flex !important; flex-direction: column !important; margin: 0 !important; width: 100% !important; height: auto !important; min-height: 100% !important; }
.hp-featured .woocommerce ul.products li.product:hover { border-color: var(--ind-accent) !important; box-shadow: 0 12px 40px rgba(0,0,0,0.08) !important; transform: translateY(-4px) !important; }

.hp-featured .woocommerce ul.products li.product > a.woocommerce-LoopProduct-link { display: flex !important; flex-direction: column !important; flex-grow: 1 !important; height: 100% !important; text-decoration: none !important; }
.hp-featured .woocommerce ul.products li.product > a img { margin: 0 !important; width: 100% !important; height: 260px !important; object-fit: contain !important; padding: 20px !important; box-sizing: border-box !important; background: #fff !important; border-bottom: 1px solid var(--ind-border) !important; transition: transform 0.5s ease !important; }
.hp-featured .woocommerce ul.products li.product:hover > a img { transform: scale(1.05) !important; }

.hp-featured .woocommerce ul.products li.product .woocommerce-loop-product__title { padding: 24px 24px 0 24px !important; font-size: 1.15rem !important; font-weight: 800 !important; color: var(--ind-black) !important; margin-bottom: 12px !important; line-height: 1.4 !important; text-transform: uppercase !important; display: -webkit-box !important; -webkit-line-clamp: 4 !important; -webkit-box-orient: vertical !important; overflow: hidden !important; }
.hp-featured .woocommerce ul.products li.product .price { margin-top: auto !important; padding: 0 24px !important; color: var(--ind-accent) !important; font-weight: 800 !important; font-size: 1.15rem !important; margin-bottom: 24px !important; display: block !important; }
.hp-featured .woocommerce ul.products li.product .price del { color: #71717a !important; font-size: 0.95rem !important; font-weight: 500 !important; margin-right: 8px !important; }
.hp-featured .woocommerce ul.products li.product .price ins { background: transparent !important; color: var(--ind-accent) !important; text-decoration: none !important; font-weight: 900 !important; }

.hp-featured .woocommerce ul.products li.product .button { margin: 0 24px 24px 24px !important; display: block !important; width: auto !important; background: transparent !important; border: 2px solid var(--ind-accent) !important; color: var(--ind-accent) !important; border-radius: 0 !important; text-transform: uppercase !important; font-weight: 800 !important; padding: 14px !important; text-align: center !important; letter-spacing: 0.05em !important; transition: all 0.2s ease !important; }
.hp-featured .woocommerce ul.products li.product .button:hover { background: var(--ind-accent) !important; color: #fff !important; }

/* Sale Badge Fix */
.hp-featured .woocommerce ul.products li.product .onsale { position: absolute !important; top: 12px !important; right: 12px !important; background: #dc2626 !important; color: #fff !important; padding: 6px 12px !important; font-size: 0.8rem !important; font-weight: 900 !important; text-transform: uppercase !important; border-radius: 4px !important; z-index: 10 !important; margin: 0 !important; min-height: 0 !important; min-width: 0 !important; line-height: 1 !important; display: inline-block !important; }

/* --- BLOG STYLES --- */
.blog-hero { width: 100vw; position: relative; left: 50%; margin-left: -50vw; box-sizing: border-box; padding: 80px 20px; text-align: center; border-bottom: 1px solid var(--ind-border); background: #fff; }
.blog-hero .eyebrow { font-size: 0.85rem; font-weight: 800; text-transform: uppercase; letter-spacing: 0.25em; color: var(--ind-accent); margin-bottom: 16px; display: inline-block; padding: 6px 16px; background: rgba(54,124,43,0.1); border-radius: 4px; }
.blog-hero h2 { font-size: clamp(2.5rem, 5vw, 4.5rem); color: var(--ind-black); line-height: 1.1; margin-bottom: 20px; }
.blog-hero .hero__subtitle { max-width: 600px; margin: 0 auto; color: #52525b; font-size: 1.25rem; font-weight: 400; }

.blog-container { width: 100vw; position: relative; left: 50%; margin-left: -50vw; box-sizing: border-box; padding: 60px 40px; }
.blog-cat-filter { display: flex; gap: 12px; overflow-x: auto; padding-bottom: 20px; margin-bottom: 40px; }
.blog-cat-filter .cat-pill { padding: 10px 24px; border: 1px solid var(--ind-border); border-radius: 0; background: #fff; color: var(--ind-black); font-size: 0.95rem; font-weight: 700; text-transform: uppercase; text-decoration: none; transition: all 0.2s ease; }
.blog-cat-filter .cat-pill:hover, .blog-cat-filter .cat-pill.active { border-color: var(--ind-accent); background: var(--ind-accent); color: #fff; }

.blog-layout { display: grid; grid-template-columns: 1fr 340px; gap: 60px; align-items: start; max-width: 1280px; margin: 0 auto; }
.blog-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 30px; }
.blog-card { display: flex; flex-direction: column; background: #fff; border: 1px solid var(--ind-border); text-decoration: none; transition: border-color 0.2s ease; }
.blog-card:hover { border-color: var(--ind-accent); }
.blog-card__img { aspect-ratio: 16/10; overflow: hidden; border-bottom: 1px solid var(--ind-border); }
.blog-card__img img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s ease; }
.blog-card:hover .blog-card__img img { transform: scale(1.05); }
.blog-card__body { padding: 30px; display: flex; flex-direction: column; flex: 1; }
.blog-card__meta { display: flex; align-items: center; justify-content: space-between; margin-bottom: 16px; }
.blog-card__cat { background: rgba(54,124,43,0.1); color: var(--ind-accent); padding: 4px 12px; font-size: 0.75rem; font-weight: 800; text-transform: uppercase; letter-spacing: 0.05em; border-radius: 4px; }
.blog-card__time { color: #71717a; font-size: 0.8rem; font-weight: 600; }
.blog-card h3 { font-size: 1.35rem; color: var(--ind-black); margin-bottom: 16px; line-height: 1.4; transition: color 0.2s ease; }
.blog-card:hover h3 { color: var(--ind-accent); }
.blog-card__excerpt { font-size: 1rem; color: #52525b; margin-bottom: 24px; flex: 1; }
.blog-card__footer { display: flex; align-items: center; justify-content: space-between; border-top: 1px solid var(--ind-border); padding-top: 20px; }
.blog-card__footer .read-more { font-size: 0.95rem; font-weight: 800; color: var(--ind-accent); text-transform: uppercase; display: flex; align-items: center; gap: 6px; }
.blog-card__footer .date { font-size: 0.85rem; color: #71717a; font-weight: 500; }

.blog-sidebar { position: sticky; top: 40px; }
.sidebar-widget { background: #fff; border: 1px solid var(--ind-border); padding: 30px; margin-bottom: 30px; }
.sidebar-widget__title { font-size: 1rem; font-weight: 800; text-transform: uppercase; color: var(--ind-black); margin-bottom: 24px; display: flex; align-items: center; gap: 10px; }

/* Responsive adjustments */
@media (max-width: 1024px) {
    .hp-cat-grid, .hp-stats-grid, .hp-guarantees__grid { grid-template-columns: repeat(2, 1fr); }
    .hp-highlight-container { flex-direction: column !important; text-align: center !important; }
    .blog-layout { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
    .hp-cat-grid, .hp-stats-grid, .hp-guarantees__grid { grid-template-columns: 1fr; }
    .blog-container { padding: 40px 20px; }
}

/* --- SINGLE PRODUCT PAGE (WOOCOMMERCE OVERRIDE) --- */
.single-product-wrap { max-width: 1280px; margin: 40px auto; padding: 0 20px; }

/* Top Section: Gallery + Buy Box */
.product-top-section { display: grid; grid-template-columns: 1.2fr 1fr; gap: 60px; margin-bottom: 60px; }
@media (max-width: 900px) { .product-top-section { grid-template-columns: 1fr; gap: 40px; } }

.product-gallery-wrap { background: #fff; border: 1px solid var(--ind-border); padding: 20px; text-align: center; }
.product-gallery-wrap img { max-width: 100%; height: auto; object-fit: contain; }

.product-buy-box { position: sticky; top: 40px; }
.product-buy-box .breadcrumbs { font-size: 0.85rem; color: #71717a; margin-bottom: 16px; font-weight: 500; text-transform: uppercase; letter-spacing: 0.05em; }
.product-buy-box .breadcrumbs a { color: var(--ind-accent); text-decoration: none; }
.product-buy-box h1 { font-size: 2.5rem; line-height: 1.1; color: var(--ind-black); margin-bottom: 24px; }
.product-buy-box .price { font-size: 2rem; font-weight: 900; color: var(--ind-accent); margin-bottom: 24px; display: block; }
.product-buy-box .short-desc { font-size: 1.1rem; color: #52525b; line-height: 1.6; margin-bottom: 30px; border-bottom: 1px solid var(--ind-border); padding-bottom: 30px; }

.product-quick-specs { list-style: none; padding: 0; margin: 0 0 30px 0; display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.product-quick-specs li { display: flex; align-items: center; gap: 10px; font-size: 0.95rem; font-weight: 600; color: var(--ind-dark); }
.product-quick-specs li i { color: var(--ind-accent); font-size: 1.2rem; width: 24px; text-align: center; }

.product-actions { display: flex; flex-direction: column; gap: 12px; margin-bottom: 30px; }
.product-actions .btn { width: 100%; justify-content: center; padding: 20px; font-size: 1.15rem; }

.product-guarantee-strip { display: flex; align-items: center; justify-content: space-between; background: var(--ind-light-grey); border: 1px solid var(--ind-border); padding: 16px 24px; font-size: 0.85rem; font-weight: 700; text-transform: uppercase; color: var(--ind-black); }
.product-guarantee-strip i { color: var(--ind-accent); margin-right: 6px; font-size: 1rem; }

/* Features Icon Grid */
.product-features-section { background: var(--ind-dark); color: #fff; padding: 60px 20px; text-align: center; margin-bottom: 60px; border-top: 4px solid var(--ind-accent); }
.product-features-grid { max-width: 1280px; margin: 0 auto; display: grid; grid-template-columns: repeat(4, 1fr); gap: 30px; }
@media (max-width: 900px) { .product-features-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) { .product-features-grid { grid-template-columns: 1fr; } }
.feature-item i { font-size: 2.5rem; color: var(--ind-accent); margin-bottom: 16px; }
.feature-item h4 { font-size: 1.1rem; margin-bottom: 8px; color: #fff; }
.feature-item p { font-size: 0.9rem; color: #a1a1aa; margin: 0; }

/* Specifications Table */
.product-specs-section { max-width: 1000px; margin: 0 auto 80px auto; }
.product-specs-section h3 { font-size: 2rem; color: var(--ind-black); margin-bottom: 30px; text-align: center; border-bottom: 2px solid var(--ind-accent); padding-bottom: 16px; display: inline-block; width: 100%; }
.specs-table { width: 100%; border-collapse: collapse; }
.specs-table th, .specs-table td { padding: 16px 24px; text-align: left; border-bottom: 1px solid var(--ind-border); font-size: 1rem; }
.specs-table th { font-weight: 800; color: var(--ind-black); width: 40%; background: var(--ind-light-grey); text-transform: uppercase; letter-spacing: 0.05em; font-size: 0.9rem; }
.specs-table td { color: #52525b; }
.specs-table tr:hover td, .specs-table tr:hover th { background: #f8fafc; }

/* FAQ Accordion */
.product-faq-section { max-width: 800px; margin: 0 auto 80px auto; }
.product-faq-section h3 { font-size: 2rem; color: var(--ind-black); margin-bottom: 30px; text-align: center; }
.faq-item { border: 1px solid var(--ind-border); margin-bottom: 12px; background: #fff; }
.faq-question { padding: 20px 24px; font-weight: 800; color: var(--ind-black); cursor: pointer; display: flex; justify-content: space-between; align-items: center; font-size: 1.1rem; user-select: none; transition: background 0.2s ease; }
.faq-question:hover { background: var(--ind-light-grey); }
.faq-question i { color: var(--ind-accent); transition: transform 0.3s ease; }
.faq-item.active .faq-question i { transform: rotate(180deg); }
.faq-answer { padding: 0 24px; max-height: 0; overflow: hidden; transition: all 0.3s ease; color: #52525b; line-height: 1.6; }
.faq-item.active .faq-answer { padding: 0 24px 20px 24px; max-height: 500px; }

/* --- SINGLE PRODUCT PAGE WOOCOMMERCE DEFAULTS --- */
.single-product div.product { display: flex !important; flex-wrap: wrap !important; gap: 60px !important; align-items: flex-start !important; max-width: 1280px !important; margin: 0 auto !important; padding: 60px 20px !important; }
.single-product div.product .woocommerce-product-gallery { width: 100% !important; max-width: 550px !important; border: 1px solid var(--ind-border) !important; padding: 20px !important; border-radius: 4px !important; box-shadow: 0 10px 30px rgba(0,0,0,0.05) !important; background: #fff !important; float: none !important; }
.single-product div.product .summary.entry-summary { flex: 1 !important; min-width: 300px !important; float: none !important; width: auto !important; }
.single-product div.product .product_title { font-size: 2.2rem !important; font-weight: 900 !important; color: var(--ind-black) !important; line-height: 1.2 !important; text-transform: uppercase !important; margin-bottom: 20px !important; letter-spacing: -0.02em !important; }
.single-product div.product .price { font-size: 2rem !important; font-weight: 900 !important; color: var(--ind-accent) !important; margin-bottom: 24px !important; display: block !important; border-bottom: 1px solid var(--ind-border) !important; padding-bottom: 20px !important; }
.single-product div.product .price del { color: #a1a1aa !important; font-weight: 500 !important; font-size: 1.2rem !important; margin-right: 12px !important; display: inline-block; }
.single-product div.product .price ins { background: transparent !important; text-decoration: none !important; }
.single-product div.product .woocommerce-product-details__short-description { font-size: 1.15rem !important; line-height: 1.7 !important; color: #52525b !important; margin-bottom: 30px !important; }

/* Single Product Add to Cart Buttons */
.single-product div.product form.cart { display: flex !important; flex-direction: column !important; gap: 16px !important; border-top: 1px solid var(--ind-border) !important; padding-top: 30px !important; margin-bottom: 30px !important; }
.single-product div.product button.single_add_to_cart_button { background: var(--ind-accent) !important; color: #fff !important; border: 2px solid var(--ind-accent) !important; padding: 18px 32px !important; font-size: 1.1rem !important; font-weight: 900 !important; text-transform: uppercase !important; border-radius: 4px !important; cursor: pointer !important; transition: all 0.3s ease !important; box-shadow: 0 10px 20px rgba(54,124,43,0.2) !important; display: block !important; width: 100% !important; }
.single-product div.product button.single_add_to_cart_button:hover { background: #2a5a21 !important; border-color: #2a5a21 !important; transform: translateY(-2px) !important; box-shadow: 0 15px 30px rgba(54,124,43,0.3) !important; }
.single-product div.product .button.outline { border: 2px solid var(--ind-accent) !important; background: transparent !important; color: var(--ind-accent) !important; padding: 18px 32px !important; font-weight: 800 !important; font-size: 1.1rem !important; text-transform: uppercase !important; border-radius: 4px !important; transition: all 0.3s ease !important; margin: 0 !important; display: block !important; width: 100% !important; text-align: center !important; }
.single-product div.product .button.outline:hover { background: var(--ind-accent) !important; color: #fff !important; }

/* Product Meta */
.single-product div.product .product_meta { font-size: 0.95rem !important; color: #71717a !important; border-top: 1px solid var(--ind-border) !important; padding-top: 20px !important; display: flex !important; flex-direction: column !important; gap: 8px !important; }
.single-product div.product .product_meta a { color: var(--ind-accent) !important; font-weight: 700 !important; text-decoration: none !important; }
.single-product div.product .product_meta a:hover { text-decoration: underline !important; }
.single-product div.product .product_meta .sku_wrapper, .single-product div.product .product_meta .posted_in { display: block !important; color: var(--ind-black) !important; font-weight: 600 !important; }
.single-product div.product .product_meta span { font-weight: 400 !important; color: #71717a !important; }

/* WooCommerce Tabs */
.woocommerce div.product .woocommerce-tabs { clear: both !important; width: 100% !important; max-width: 1280px !important; margin: 60px auto !important; border-top: 2px solid var(--ind-black) !important; padding-top: 40px !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs { display: flex !important; gap: 40px !important; border-bottom: 1px solid var(--ind-border) !important; margin: 0 0 40px 0 !important; padding: 0 !important; list-style: none !important; overflow-x: auto !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs::before, .woocommerce div.product .woocommerce-tabs ul.tabs::after { display: none !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { margin: 0 !important; padding: 0 !important; background: transparent !important; border: none !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li::before, .woocommerce div.product .woocommerce-tabs ul.tabs li::after { display: none !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { display: block !important; padding: 10px 0 20px 0 !important; font-size: 1.2rem !important; font-weight: 800 !important; color: #a1a1aa !important; text-transform: uppercase !important; text-decoration: none !important; border-bottom: 4px solid transparent !important; transition: all 0.2s ease !important; position: relative !important; top: 1px !important; white-space: nowrap !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a, .woocommerce div.product .woocommerce-tabs ul.tabs li a:hover { color: var(--ind-black) !important; border-bottom-color: var(--ind-accent) !important; }
.woocommerce div.product .woocommerce-Tabs-panel { color: #4b5563 !important; line-height: 1.8 !important; font-size: 1.1rem !important; max-width: 900px !important; margin: 0 auto !important; }
.woocommerce div.product .woocommerce-Tabs-panel h2 { display: none !important; } /* Hides the default WP title */
.woocommerce div.product .woocommerce-Tabs-panel h3,
.woocommerce div.product .woocommerce-Tabs-panel h4 { font-size: 1.3rem !important; font-weight: 800 !important; color: var(--ind-black) !important; margin: 40px 0 20px 0 !important; text-transform: uppercase !important; border-bottom: 2px solid var(--ind-accent) !important; padding-bottom: 12px !important; letter-spacing: 0.05em !important; text-align: left !important; }
.woocommerce div.product .woocommerce-Tabs-panel p { margin-bottom: 24px !important; color: #4b5563 !important; }
.woocommerce div.product .woocommerce-Tabs-panel ul { margin: 0 0 30px 24px !important; padding: 0 !important; }
.woocommerce div.product .woocommerce-Tabs-panel ul li { margin-bottom: 12px !important; color: #4b5563 !important; }
.woocommerce div.product .woocommerce-Tabs-panel hr { border: none !important; border-top: 1px solid var(--ind-border) !important; margin: 40px 0 !important; }


/* ==========================================================
   PREMIUM CART PAGE STYLES 
   ========================================================== */
body.woocommerce-cart .site-main { padding: 80px 0 120px 0; background: #f9fafb; }
body.woocommerce-cart h1.entry-title { text-align: center; font-size: clamp(2.5rem, 4vw, 3.5rem); font-weight: 900; margin-bottom: 60px; color: #0a0a0a; text-transform: uppercase; letter-spacing: -0.02em; }

/* Breakout to Full Width and Use CSS Grid */
body.woocommerce-cart .site-main { position: relative; width: 100vw; left: 50%; transform: translateX(-50%); }
body.woocommerce-cart .col-full { max-width: 1400px; margin: 0 auto; padding: 0 40px; }

@media (min-width: 992px) {
    body.woocommerce-cart .woocommerce {
        display: grid;
        grid-template-columns: 1fr 450px;
        gap: 60px;
        align-items: start;
    }
    body.woocommerce-cart .woocommerce-notices-wrapper { grid-column: 1 / -1; }
    body.woocommerce-cart .cart-collaterals { width: 100% !important; float: none !important; margin: 0 !important; position: sticky; top: 120px; }
}

/* The Cart Table (Left Side) */
.woocommerce-cart-form { background: #ffffff; border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.03); padding: 40px; border: 1px solid #e5e7eb; }
table.shop_table.cart { border: none !important; border-radius: 0 !important; margin-bottom: 0 !important; }
table.shop_table.cart thead th { background: transparent; border-bottom: 2px solid #e5e7eb; color: #71717a; text-transform: uppercase; font-size: 0.85rem; font-weight: 800; letter-spacing: 0.05em; padding: 15px 10px; }
table.shop_table.cart tbody td { border-bottom: 1px solid #f4f4f5; padding: 30px 10px; vertical-align: middle; }
table.shop_table.cart tbody tr:last-child td { border-bottom: none; }

/* Product Details in Table */
.cart_item .product-thumbnail img { border-radius: 8px; width: 110px !important; height: auto !important; box-shadow: 0 4px 10px rgba(0,0,0,0.08); }
.cart_item .product-name a { color: #0a0a0a; font-weight: 800; font-size: 1.25rem; text-decoration: none; transition: color 0.2s ease; }
.cart_item .product-name a:hover { color: #0e5f34; }
.cart_item .product-price .amount, .cart_item .product-subtotal .amount { font-weight: 700; color: #3f3f46; font-size: 1.2rem; }
.cart_item .product-remove a { color: #ef4444 !important; font-size: 1.2rem !important; border-radius: 50%; width: 36px; height: 36px; display: inline-flex; align-items: center; justify-content: center; background: rgba(239, 68, 68, 0.1); text-decoration: none !important; transition: all 0.2s ease; font-weight: 900; }
.cart_item .product-remove a:hover { background: #ef4444; color: #ffffff !important; }

/* Quantity Input */
.woocommerce .quantity input.qty { width: 80px; height: 50px; border: 2px solid #e5e7eb; border-radius: 6px; font-weight: 800; font-size: 1.1rem; color: #0a0a0a; background: #f9fafb; transition: border-color 0.2s ease; text-align: center; }
.woocommerce .quantity input.qty:focus { outline: none; border-color: #0e5f34; }

/* Actions Row (Coupon & Update) */
table.shop_table.cart .actions { padding: 40px 10px 10px 10px !important; background: transparent; border-top: 1px solid #e5e7eb !important; display: flex; justify-content: space-between; flex-wrap: wrap; gap: 20px; }
.coupon { display: flex; gap: 10px; }
.coupon input.input-text { height: 50px !important; border: 1px solid #e5e7eb !important; border-radius: 6px !important; padding: 0 20px !important; font-weight: 600 !important; width: 250px !important; font-size: 1rem !important; background: #ffffff !important; }
.coupon button.button, table.shop_table.cart .actions > button.button { height: 50px !important; padding: 0 30px !important; border-radius: 6px !important; font-weight: 800 !important; text-transform: uppercase !important; font-size: 0.85rem !important; letter-spacing: 0.05em !important; transition: all 0.2s ease !important; }
.coupon button.button { background: #ffffff !important; color: #0e5f34 !important; border: 2px solid #0e5f34 !important; }
.coupon button.button:hover { background: rgba(14, 95, 52, 0.05) !important; }
table.shop_table.cart .actions > button.button { background: #f4f4f5 !important; color: #52525b !important; border: none !important; }
table.shop_table.cart .actions > button.button:hover { background: #e5e7eb !important; color: #0a0a0a !important; }

/* The Cart Totals Card (Right Side) */
.cart-collaterals .cart_totals { background: #ffffff; border-radius: 12px; box-shadow: 0 10px 30px rgba(0,0,0,0.06); padding: 40px; border: 1px solid #e5e7eb; width: 100% !important; }
.cart-collaterals .cart_totals h2 { font-size: 1.8rem; color: #0a0a0a; font-weight: 900; margin-bottom: 30px; padding-bottom: 20px; border-bottom: 2px solid #f4f4f5; letter-spacing: -0.02em; }
.cart-collaterals table.shop_table { border: none !important; margin-bottom: 30px !important; border-radius: 0 !important; }
.cart-collaterals table.shop_table th { border: none; padding: 15px 0; color: #71717a; font-weight: 600; font-size: 1.1rem; }
.cart-collaterals table.shop_table td { border: none; padding: 15px 0; text-align: right; }
.cart-collaterals table.shop_table .cart-subtotal td .amount { font-weight: 800; color: #3f3f46; font-size: 1.2rem; }
.cart-collaterals table.shop_table .order-total { border-top: 2px solid #f4f4f5; }
.cart-collaterals table.shop_table .order-total th { font-weight: 800; color: #0a0a0a; font-size: 1.3rem; padding-top: 25px; }
.cart-collaterals table.shop_table .order-total td .amount { font-weight: 900; color: #0e5f34; font-size: 2.2rem; }

/* Checkout Button */
.wc-proceed-to-checkout { padding: 0 !important; margin-top: 30px; }
.wc-proceed-to-checkout a.checkout-button { background: #0e5f34 !important; color: #ffffff !important; border-radius: 8px !important; padding: 22px !important; font-size: 1.2rem !important; font-weight: 800 !important; text-transform: uppercase !important; letter-spacing: 0.05em !important; box-shadow: 0 6px 20px rgba(14, 95, 52, 0.3) !important; transition: all 0.2s ease !important; display: flex !important; align-items: center !important; justify-content: center !important; gap: 10px !important; }
.wc-proceed-to-checkout a.checkout-button:hover { background: #0a4626 !important; transform: translateY(-4px) !important; box-shadow: 0 10px 25px rgba(14, 95, 52, 0.4) !important; }
.wc-proceed-to-checkout a.checkout-button::after { content: "\f178"; font-family: "Font Awesome 6 Free"; font-weight: 900; font-size: 1.2rem; transition: transform 0.2s ease; margin-left: 8px; }
.wc-proceed-to-checkout a.checkout-button:hover::after { transform: translateX(6px); }

/* Empty Cart */
.cart-empty { background: #ffffff; padding: 80px 40px; border-radius: 12px; border: 1px solid #e5e7eb; text-align: center; color: #52525b; font-size: 1.3rem; font-weight: 600; margin-bottom: 40px; box-shadow: 0 4px 15px rgba(0,0,0,0.03); }
.cart-empty::before { content: "\f07a"; font-family: "Font Awesome 6 Free"; font-weight: 900; display: block; font-size: 5rem; color: #d4d4d8; margin-bottom: 25px; }
.return-to-shop { text-align: center; }
.return-to-shop a.button.wc-backward { background: #0e5f34 !important; color: #ffffff !important; padding: 18px 40px !important; border-radius: 8px !important; font-weight: 800 !important; text-transform: uppercase !important; letter-spacing: 0.05em !important; display: inline-block !important; }
.return-to-shop a.button.wc-backward:hover { background: #0a4626 !important; transform: translateY(-2px); }

@media (max-width: 991px) {
    body.woocommerce-cart .col-full { padding: 0 20px; }
    .woocommerce-cart-form { padding: 20px; }
    .coupon { flex-direction: column; width: 100%; }
    .coupon input.input-text, .coupon button.button { width: 100% !important; }
    table.shop_table.cart .actions { flex-direction: column; }
    table.shop_table.cart .actions > button.button { width: 100%; }
}

/* --- SINGLE BLOG POST FULL WIDTH --- */
body.single-post .anx-main-content,
body.single-post #content > .col-full {
    max-width: 100vw !important;
    width: 100vw !important;
    padding: 0 40px !important;
}
body.single-post .anx-post-content,
body.single-post #primary,
body.single-post .content-area,
body.single-post .site-main {
    max-width: 100% !important;
    width: 100% !important;
    float: none !important;
    margin: 0 !important;
}
body.single-post .anx-sidebar,
body.single-post #secondary,
body.single-post .widget-area,
body.single-post aside,
body.single-post .sidebar {
    display: none !important;
}
