/*
Theme Name: GoldBusters
Description: A modern WordPress theme built with Bootstrap 5 and Google Fonts. Features responsive design, clean code, and customizable styling.
Tags: accessibility-ready, one-column, two-columns, custom-menu, featured-images, responsive-design, bootstrap
Version: 1.0
Requires at least: 5.2
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v3 or Later
License URI: https://www.gnu.org/licenses/gpl.html
Text Domain: goldbusters

GoldBusters WordPress Theme 2025
Based on BlankSlate, enhanced with modern frameworks
*/

html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}html{scroll-behavior:smooth}body{line-height:1}a{text-decoration-skip-ink:auto}a[href^="tel"]{color:inherit;text-decoration:none}button{outline:0}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}q{display:inline;font-style:italic}q:before{content:'"';font-style:normal}q:after{content:'"';font-style:normal}textarea,input[type="text"],input[type="button"],input[type="submit"],input[type="reset"],input[type="search"],input[type="password"]{-webkit-appearance:none;appearance:none;border-radius:0}input[type="search"]{-webkit-appearance:textfield}table{border-collapse:collapse;border-spacing:0}th,td{padding:2px}big{font-size:120%}small,sup,sub{font-size:80%}sup{vertical-align:super}sub{vertical-align:sub}dd{margin-left:20px}kbd,tt{font-family:courier;font-size:12px}ins{text-decoration:underline}del,strike,s{text-decoration:line-through}dt{font-weight:bold}address,cite,var{font-style:italic}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
.sticky{}.bypostauthor{}.wp-caption{}.wp-caption-text{}.gallery-caption{}.alignright{}.alignleft{}.aligncenter{}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important;word-break:normal}
.screen-reader-text:focus{background-color:#f7f7f7;border-radius:3px;box-shadow:0 0 2px 2px rgba(0,0,0,.6);clip:auto!important;-webkit-clip-path:none;clip-path:none;color:#007acc;display:block;font-size:14px;font-size:.875rem;font-weight:700;height:auto;right:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}
.skip-link{left:-9999rem;top:2.5rem;z-index:999999999;text-decoration:underline}
.skip-link:focus{display:block;left:6px;top:7px;font-size:14px;font-weight:600;text-decoration:none;line-height:normal;padding:15px 23px 14px;z-index:100000;right:auto}
.visually-hidden:not(:focus):not(:active), .form-allowed-tags:not(:focus):not(:active){position:absolute !important;height:1px;width:1px;overflow:hidden;clip:rect(1px 1px 1px 1px);clip:rect(1px, 1px, 1px, 1px);white-space:nowrap}

/* ==========================================================================
   GoldBusters Custom Styles
   ========================================================================== */

/* Color Palette */
:root {
    --gb-primary-green: #2d7d4f;
    --gb-secondary-green: #1a5f3a;
    --gb-accent-gold: #d4af37;
    --gb-light-gold: #f5e77b;
    --gb-dark-gold: #b8941f;
    --gb-cream: #f4f2e8;
    --gb-dark-bg: #1a1a1a;
    --gb-gray-text: #666666;
    --gb-white: #ffffff;
    --gb-black: #000000;
}

/* Typography */
body {
    font-family: 'Open Sans', sans-serif;
    font-weight: 400;
    line-height: 1.6;
    color: var(--gb-black);
    overflow-x: hidden;
}

/* Prevent horizontal scroll */
#wrapper {
    overflow-x: hidden;
}

/* Global Pathway Extreme condensed styling */
[style*="font-family: 'Pathway Extreme'"],
.gb-hero-title,
.gb-brand-highlight,
.gb-hero-subtitle,
.gb-hero-tagline,
.gb-hero-description,
.gb-cta-text {
    font-stretch: condensed !important;
    letter-spacing: 0px !important;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Oswald', sans-serif;
    font-weight: 600;
    line-height: 1.1;
    margin-bottom: 1rem;
    letter-spacing: 1px;
}

h1 { font-size: 2.5rem; }
h2 { font-size: 2rem; }
h3 { font-size: 1.75rem; }
h4 { font-size: 1.5rem; }
h5 { font-size: 1.25rem; }
h6 { font-size: 1rem; }

/* Layout */
.container {
    max-width: 1200px;
}

.container-fluid {
    max-width: 1920px;
}

/* Navigation - GoldBusters Style */
.gb-navbar {
    background-color: var(--gb-primary-green);
    padding: 0;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    position: sticky;
    top: 0;
    z-index: 1030;
}

.gb-nav-container {
    min-height: 60px;
}

/* Navigation Icons */
.gb-nav-icon {
    color: var(--gb-white);
    font-size: 1.2rem;
    text-decoration: none;
    padding: 0.5rem;
    transition: color 0.3s ease;
}

.gb-nav-icon:hover {
    color: var(--gb-accent-gold);
}

/* Desktop Menu */
.gb-nav-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    gap: 2rem;
}

.gb-nav-list li {
    margin: 0;
}

.gb-nav-link {
    color: var(--gb-white);
    text-decoration: none;
    font-weight: 500;
    font-size: 0.95rem;
    padding: 0.5rem 0;
    transition: color 0.3s ease;
    display: block;
}

.gb-nav-link:hover {
    color: var(--gb-accent-gold);
}

/* Mobile Menu Toggle */
.gb-menu-toggle {
    background: none;
    border: none;
    color: var(--gb-white);
    font-size: 1.2rem;
    padding: 0.5rem;
    cursor: pointer;
}

.gb-menu-toggle:hover {
    color: var(--gb-accent-gold);
}

/* Mobile Slide-in Menu */
.gb-mobile-menu {
    position: fixed;
    top: 0;
    left: -320px;
    width: 320px;
    height: 100vh;
    background-color: var(--gb-secondary-green);
    z-index: 1050;
    transition: left 0.3s ease;
    box-shadow: 2px 0 10px rgba(0,0,0,0.3);
}

.gb-mobile-menu.open {
    left: 0;
}

.gb-mobile-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1.5rem 2rem;
    border-bottom: 1px solid rgba(255,255,255,0.1);
}

.gb-menu-close {
    background: none;
    border: none;
    color: var(--gb-white);
    font-size: 1.5rem;
    cursor: pointer;
}

.gb-menu-close:hover {
    color: var(--gb-accent-gold);
}

.gb-mobile-nav-items {
    padding: 1rem 0;
}

.gb-mobile-nav-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.gb-mobile-nav-list li {
    margin: 0;
}

.gb-mobile-nav-link {
    display: block;
    padding: 1rem 2rem;
    color: var(--gb-white);
    text-decoration: none;
    font-weight: 500;
    border-bottom: 1px solid rgba(255,255,255,0.1);
    transition: all 0.3s ease;
}

.gb-mobile-nav-link:hover {
    background-color: var(--gb-primary-green);
    color: var(--gb-accent-gold);
    padding-left: 2.5rem;
}

/* Mobile Menu Overlay */
.gb-mobile-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.5);
    z-index: 1040;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
}

.gb-mobile-overlay.show {
    opacity: 1;
    visibility: visible;
}

/* Content */
.gb-content {
    padding: 2rem 0;
}

/* Hero Section - 1920px Max Width with Green Sides */
.gb-hero-section {
    background-color: var(--gb-primary-green);
    position: relative;
    min-height: 600px;
    display: flex;
    justify-content: center;
}

.gb-hero-background {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    max-width: 1920px;
    height: 100%;
    background-position: center left;
    background-repeat: no-repeat;
    background-color: #000000;
    z-index: 1;
}

.gb-hero-content-wrapper {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 1920px;
    margin: 0 auto;
}

.gb-hero-section .row {
    position: relative;
    z-index: 3;
}

.gb-hero-section .row:first-child {
    height: auto;
    min-height: 500px;
}

/* Right Shadow Layer */
.gb-hero-right-shadow {
    position: absolute;
    top: 0;
    right: 50%;
    transform: translateX(50%);
    width: 100%;
    max-width: 1200px;
    height: 100%;
    background: linear-gradient(104deg, transparent 20%, rgba(0, 0, 0, 1) 70%, rgba(0, 0, 0, 1) 100%);
    z-index: 2;
    pointer-events: none;
}

/* Left Side - Large Logo */
.gb-hero-logo-container {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    padding: 3px;
    position: relative;
    z-index: 3;
}

.gb-hero-logo-large {
    max-width: 100%;
    height: auto;
    max-height: 350px;
    filter: drop-shadow(0 4px 8px rgba(0,0,0,0.3));
}

/* Right Side - Text Content */
.gb-hero-text-container {
    color: var(--gb-white);
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 3rem 2rem;
    position: relative;
    z-index: 3;
    text-align: right;
}

.gb-hero-title {
    font-family: 'Pathway Extreme', sans-serif;
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 1.1;
    margin-bottom: 0.5rem;
    text-shadow: 2px 2px 4px rgba(0,0,0,0.8);
    text-transform: uppercase;
}

.gb-brand-highlight {
    color: var(--gb-accent-gold);
    font-family: 'Pathway Extreme', sans-serif;
    font-weight: 700;
    font-size: 2rem;
}

.gb-hero-subtitle {
    font-family: 'Pathway Extreme', sans-serif;
    font-size: 4rem;
    font-weight: 300;
    color: var(--gb-accent-gold);
    margin-bottom: 0.3rem;
    text-shadow: 3px 3px 6px rgba(0,0,0,0.8);
    text-transform: uppercase;
    line-height: 0.9;
}

.gb-hero-tagline {
    font-family: 'Pathway Extreme', sans-serif;
    font-size: 2.2rem;
    font-weight: 400;
    margin-bottom: 1rem;
    text-shadow: 2px 2px 4px rgba(0,0,0,0.7);
}

.gb-hero-description {
    font-family: 'Pathway Extreme', sans-serif;
    font-size: 1rem;
    line-height: 1.4;
    margin-bottom: 1.5rem;
    text-shadow: 1px 1px 3px rgba(0,0,0,0.7);
    font-weight: 300;
}

.gb-description-bold {
    font-weight: 700;
}

.gb-cta-text {
    font-family: 'Pathway Extreme', sans-serif;
    font-size: 1.3rem;
    font-weight: 400;
    color: var(--gb-accent-gold);
    margin-bottom: 1rem;
    text-shadow: 2px 2px 4px rgba(0,0,0,0.7);
    text-transform: none;
}

/* Buttons Container Below Both Sections */
.gb-hero-buttons-container {
    position: relative;
    z-index: 3;
    padding: 0 2rem;
    margin-bottom: 70px;
    display: flex;
    justify-content: center;
}

.gb-hero-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    justify-content: center;
}

.gb-hero-buttons .gb-btn-primary,
.gb-hero-buttons .gb-btn-tertiary {
    padding: 0.875rem 3rem;
    font-size: 1.25rem;
    min-width: 180px;
    text-align: center;
    font-weight: 700;
    letter-spacing: 0.5px;
}

/* Button Styles for Hero */
.gb-btn-tertiary {
    background-color: transparent;
    border: 2px solid var(--gb-accent-gold);
    color: var(--gb-accent-gold);
    padding: 0.75rem 2rem;
    font-weight: 600;
    border-radius: 5px;
    text-decoration: none;
    transition: all 0.3s ease;
    display: inline-block;
}

.gb-btn-tertiary:hover {
    background-color: var(--gb-accent-gold);
    color: var(--gb-black);
    transform: translateY(-2px);
}

/* Buttons */
.gb-btn-primary {
    background-color: var(--gb-accent-gold);
    border: none;
    color: var(--gb-black);
    padding: 0.75rem 2rem;
    font-weight: 600;
    border-radius: 5px;
    transition: all 0.3s ease;
}

.gb-btn-primary:hover {
    background-color: var(--gb-dark-gold);
    transform: translateY(-2px);
}

.gb-btn-secondary {
    background-color: var(--gb-primary-green);
    border: none;
    color: var(--gb-white);
    padding: 0.75rem 2rem;
    font-weight: 600;
    border-radius: 5px;
    transition: all 0.3s ease;
}

.gb-btn-secondary:hover {
    background-color: var(--gb-secondary-green);
    transform: translateY(-2px);
}

/* Cards */
.gb-card {
    background-color: var(--gb-white);
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    padding: 2rem;
    margin-bottom: 2rem;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    transition: transform 0.3s ease;
}

.gb-card:hover {
    transform: translateY(-5px);
}

/* Footer */
.gb-footer {
    background-color: var(--gb-dark-bg);
    color: var(--gb-white);
    padding: 3rem 0 1rem;
    margin-top: 3rem;
}

/* Responsive */
@media (max-width: 991px) {
    .gb-desktop-menu {
        display: none !important;
    }
}

@media (max-width: 991px) {
    .gb-hero-section .row:first-child {
        flex-direction: column;
    }
    
    .gb-hero-background {
        background-size: cover;
        background-position: center;
    }
    
    .gb-hero-section .row:first-child {
        flex-direction: column;
    }
    
    .gb-hero-right-shadow {
        width: 100%;
        background-position: center;
    }
    
    .gb-hero-logo-container {
        padding: 1.5rem;
    }
    
    .gb-hero-logo-large {
        max-height: 200px;
    }
    
    .gb-hero-text-container {
        padding: 2rem 1.5rem;
        text-align: center;
    }
    
    .gb-hero-buttons-container {
        padding: 1rem;
    }
}

@media (max-width: 768px) {
    h1 { font-size: 2rem; }
    h2 { font-size: 1.75rem; }
    h3 { font-size: 1.5rem; }
    
    .gb-hero-section {
        height: auto;
        min-height: 500px;
    }
    
    /* Remove gradient and add opacity overlay on mobile */
    .gb-hero-right-shadow {
        background: rgba(0, 0, 0, 0.8);
        transform: none;
        right: 0;
        width: 100%;
        max-width: none;
    }
    
    .gb-hero-text-container {
        padding: 2rem 1rem;
        text-align: center;
    }
    
    .gb-hero-title {
        font-size: 1.2rem;
    }
    
    .gb-brand-highlight {
        font-size: 2.5rem;
    }
    
    .gb-hero-subtitle {
        font-size: 3rem;
    }
    
    .gb-hero-tagline {
        font-size: 1.8rem;
    }
    
    .gb-hero-description {
        font-size: 1.1rem;
        max-width: 100%;
    }
    
    .gb-cta-text {
        font-size: 1.4rem;
    }
    
    .gb-hero-buttons-container {
        padding: 0 1rem;
        margin-bottom: 30px;
    }
    
    .gb-logo-small {
        height: 60px;
    }
    
    .gb-hero-buttons {
        justify-content: center;
    }
    
    .gb-content {
        padding: 1rem 0;
    }
    
    .gb-card {
        padding: 1.5rem;
    }
    
    .gb-nav-container {
        padding: 0.75rem 1rem !important;
    }
}

@media (max-width: 480px) {
    .gb-hero-title {
        font-size: 1rem;
    }
    
    .gb-brand-highlight {
        font-size: 2rem;
    }
    
    .gb-hero-subtitle {
        font-size: 2.5rem;
    }
    
    .gb-hero-tagline {
        font-size: 1.5rem;
    }
    
    .gb-hero-description {
        font-size: 1rem;
    }
    
    .gb-cta-text {
        font-size: 1.2rem;
    }
    
    .gb-hero-buttons {
        display: flex;
        flex-direction: row;
        justify-content: center;
        gap: 1rem;
        flex-wrap: nowrap;
    }
    
    .gb-hero-buttons .gb-btn-primary,
    .gb-hero-buttons .gb-btn-tertiary {
        padding: 0.625rem 1.5rem;
        font-size: 1rem;
        min-width: 120px;
        flex: 1;
        max-width: 160px;
        white-space: nowrap;
    }
    
    .gb-hero-text-container {
        padding: 1.5rem 0.75rem;
    }
}

/* What We Buy Section */
.gb-what-we-buy-section {
    background-color: var(--gb-cream);
    padding: 5rem 0;
    margin: 0;
    width: 100vw;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
}

.gb-section-title {
    font-family: 'Pathway Extreme', sans-serif;
    color: var(--gb-primary-green);
    font-size: 3rem;
    font-weight: 500;
    text-align: center;
    margin-bottom: 2.5rem;
    line-height: 0.9;
}

.gb-what-we-buy-item {
    text-align: center;
    padding: 1rem 0.75rem;
    transition: transform 0.3s ease;
    display: flex;
    flex-direction: column;
    align-items: center;
    height: 100%;
}

.gb-what-we-buy-item:hover {
    transform: translateY(-5px);
}

.gb-wwb-image-container {
    background-color: var(--gb-white);
    border: 3px solid var(--gb-accent-gold);
    border-radius: 20px;
    margin-bottom: 1.5rem;
    height: 160px;
    width: 100%;
    background-size: 110%;
    background-position: center;
    background-repeat: no-repeat;
    box-shadow: 0 6px 12px rgba(0,0,0,0.1);
}

.gb-wwb-image {
    display: none;
}

.gb-wwb-title {
    font-family: 'Pathway Extreme', sans-serif;
    color: var(--gb-black);
    font-size: 1.2rem;
    font-weight: 300;
    margin-bottom: 0.25rem;
    line-height: 1.0;
}

.gb-wwb-subtitle {
    font-family: 'Pathway Extreme', sans-serif;
    color: var(--gb-black);
    font-size: 1.2rem;
    font-weight: 300;
    margin-bottom: 0;
    line-height: 1.0;
}

/* Mobile responsive adjustments */
@media (max-width: 768px) {
    .gb-what-we-buy-section {
        padding: 3rem 0;
    }
    
    .gb-section-title {
        font-size: 2rem;
        margin-bottom: 2rem;
    }
    
    .gb-wwb-image-container {
        height: 100px;
        padding: 1rem;
    }
    
    .gb-wwb-image {
        max-height: 60px;
    }
    
    .gb-wwb-title {
        font-size: 0.9rem;
    }
    
    .gb-wwb-subtitle {
        font-size: 0.8rem;
    }
}

@media (max-width: 576px) {
    .gb-section-title {
        font-size: 1.75rem;
    }
    
    .gb-what-we-buy-item {
        padding: 1rem 0.5rem;
    }
}

/* Why Gold Busters Section */
.gb-why-section {
    background-color: var(--gb-white);
    padding: 5rem 0;
}

.gb-why-item {
    display: flex;
    align-items: center;
    padding: 0.75rem 0;
}

.gb-why-icon {
    flex-shrink: 0;
    margin-right: 2rem;
}

.gb-why-icon img {
    width: 120px;
    height: 120px;
    object-fit: contain;
}

.gb-why-content {
    flex: 1;
}

.gb-why-title {
    font-family: 'Pathway Extreme', sans-serif;
    color: var(--gb-black);
    font-size: 1.8rem;
    font-weight: 600;
    margin-bottom: 0.5rem;
}

.gb-why-description {
    font-family: 'Pathway Extreme', sans-serif;
    color: var(--gb-gray-text);
    font-size: 1.3rem;
    font-weight: 300;
    margin-bottom: 0;
}

.gb-why-quote {
    font-family: 'Pathway Extreme', sans-serif;
    color: var(--gb-primary-green);
    font-size: 1.5rem;
    font-weight: 400;
    font-style: italic;
    margin-top: 1.5rem;
    margin-bottom: 0;
}

.gb-title-heavy {
    font-weight: 700;
}

/* Mobile responsive */
@media (max-width: 768px) {
    .gb-why-icon {
        margin-right: 1.5rem;
    }
    
    .gb-why-icon img {
        width: 80px;
        height: 80px;
    }
    
    .gb-why-title {
        font-size: 1.5rem;
    }
    
    .gb-why-description {
        font-size: 1.1rem;
    }
    
    .gb-why-quote {
        font-size: 1.25rem;
        margin-top: 2rem;
    }
}

/* Testimonials Section */
.gb-testimonials-section {
    position: relative;
    padding: 5rem 0;
    overflow: hidden;
    width: 100vw;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
}

.gb-testimonials-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: 1;
}

.gb-testimonials-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(45, 125, 79, 0.85);
    z-index: 2;
}

.gb-testimonials-section .container {
    position: relative;
    z-index: 3;
}

/* Testimonial Wrapper */
.gb-testimonial-wrapper {
    position: relative;
    height: 100%;
    background: var(--gb-accent-gold);
    border-radius: 15px;
    padding: 3px;
    box-shadow: 0 6px 12px rgba(0,0,0,0.15);
    clip-path: polygon(
        0 50px,
        50px 0,
        100% 0,
        100% 100%,
        0 100%
    );
}

/* Testimonial Cards */
.gb-testimonial-card {
    background-color: var(--gb-white);
    border-radius: 12px;
    padding: 2rem 2rem 30px 2rem;
    height: 100%;
    position: relative;
    display: flex;
    flex-direction: column;
    clip-path: polygon(
        0 47px,
        47px 0,
        100% 0,
        100% 100%,
        0 100%
    );
}

.gb-testimonials-section .col-lg-3,
.gb-testimonials-section .col-md-6 {
    position: relative;
}

.gb-testimonial-corner {
    position: absolute;
    top: 0;
    left: 12px;
    width: 44px;
    height: 44px;
    background: linear-gradient(135deg, var(--gb-light-gold) 0%, var(--gb-accent-gold) 50%, var(--gb-dark-gold) 100%);
    border-radius: 5px 0 0 0;
    clip-path: polygon(0 0, 100% 0, 0 100%);
    z-index: 10;
    box-shadow: 0 6px 12px rgba(0,0,0,0.15);
}

.gb-testimonial-content {
    flex: 1;
    display: flex;
    flex-direction: column;
    padding-top: 40px;
}

.gb-testimonial-text {
    font-family: 'Pathway Extreme', sans-serif;
    font-size: 1.1rem;
    color: var(--gb-black);
    margin-bottom: 1rem;
    line-height: 1.4;
    font-style: italic;
}

.gb-testimonial-author {
    font-family: 'Pathway Extreme', sans-serif;
    font-size: 1rem;
    color: var(--gb-black);
    font-weight: 600;
    margin-bottom: auto;
}

.gb-testimonial-stars {
    color: var(--gb-accent-gold);
    font-size: 1.2rem;
    text-align: center;
    margin-top: auto;
}

.gb-testimonial-stars i {
    margin-right: 2px;
}

/* Happy Customers Card */
.gb-happy-customers-card {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
}

.gb-happy-customers-card img {
    max-width: 100%;
    height: auto;
    display: block;
}

/* Mobile Responsive */
@media (max-width: 768px) {
    .gb-testimonial-card {
        padding: 1.5rem;
        margin-bottom: 1rem;
    }
    
    .gb-testimonial-text {
        font-size: 1rem;
    }
    
    .gb-happy-title {
        font-size: 2rem;
    }
    
    .gb-happy-text {
        font-size: 1.1rem;
    }
}

/* WordPress specific */
/* Gold Selling FAQs Section */
.gb-faq-section {
    background-color: var(--gb-white);
    background-image: radial-gradient(circle, #e0e0e0 2px, transparent 2px);
    background-size: 40px 40px;
    padding: 5rem 0 2.5rem 0;
    width: 100vw;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
    margin-bottom: 0;
}

.gb-faq-section::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 20px;
    background-image: radial-gradient(circle, #e0e0e0 2px, transparent 2px);
    background-size: 40px 40px;
    background-position: 0 0;
}

/* Main Bubble - Always Good to Know */
.gb-faq-bubble-main {
    width: 280px;
    height: 280px;
    background-color: var(--gb-accent-gold);
    border-radius: 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    position: relative;
    margin: 0 auto 1rem;
    box-shadow: 0 8px 16px rgba(0,0,0,0.15);
}

.gb-faq-bubble-main::after {
    content: '';
    position: absolute;
    bottom: 50%;
    right: -20px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 0 10px 20px;
    border-color: transparent transparent transparent var(--gb-accent-gold);
    transform: translateY(50%);
}

.gb-faq-always,
.gb-faq-good,
.gb-faq-to-know {
    font-family: 'Pathway Extreme', sans-serif;
    color: var(--gb-white);
    display: block;
    text-shadow: 2px 2px 4px rgba(0,0,0,0.3);
}

.gb-faq-always {
    font-size: 3rem;
    font-weight: 300;
    letter-spacing: 2px;
}

.gb-faq-good {
    font-size: 3.5rem;
    font-weight: 700;
    letter-spacing: 2px;
    margin: -8px 0;
}

.gb-faq-to-know {
    font-size: 1.75rem;
    font-weight: 300;
    letter-spacing: 1px;
}

/* FAQ Items */
.gb-faq-items {
    padding-left: 2rem;
}

.gb-faq-item {
    margin-bottom: 1rem;
}

/* Question Bubbles */
.gb-faq-question {
    background-color: var(--gb-white);
    border: 2px solid var(--gb-dark-bg);
    border-radius: 25px;
    padding: 0.4rem 1rem;
    display: inline-block;
    position: relative;
    font-family: 'Pathway Extreme', sans-serif;
    font-size: 1.1rem;
    font-weight: 600;
    margin-bottom: 0.5rem;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    text-align: left;
}

.gb-faq-question::before {
    content: '';
    position: absolute;
    bottom: -8px;
    right: 30px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 8px 0 8px;
    border-color: var(--gb-dark-bg) transparent transparent transparent;
}

.gb-faq-question::after {
    content: '';
    position: absolute;
    bottom: -6px;
    right: 32px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 8px 6px 0 6px;
    border-color: var(--gb-white) transparent transparent transparent;
}

/* Answer Container */
.gb-faq-item > div:last-child {
    text-align: right;
}

/* Answers */
.gb-faq-answer {
    background-color: #e8e8e8;
    border-radius: 25px;
    padding: 0.4rem 1rem;
    display: inline-block;
    position: relative;
    font-family: 'Open Sans', sans-serif;
    font-size: 1rem;
    color: var(--gb-dark-bg);
    margin-bottom: 0;
    margin-top: 0.5rem;
    line-height: 1.3;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    text-align: left;
}

.gb-faq-answer::before {
    content: '';
    position: absolute;
    top: -8px;
    left: 30px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 8px 10px 8px;
    border-color: transparent transparent #e8e8e8 transparent;
}

/* Mobile Responsive */
@media (max-width: 991px) {
    .gb-faq-bubble-main {
        width: 250px;
        height: 250px;
        margin-bottom: 3rem;
    }
    
    .gb-faq-always {
        font-size: 2.5rem;
    }
    
    .gb-faq-good {
        font-size: 3rem;
    }
    
    .gb-faq-to-know {
        font-size: 1.5rem;
    }
    
    .gb-faq-items {
        padding-left: 0;
    }
}

@media (max-width: 768px) {
    .gb-faq-question {
        font-size: 1rem;
    }
    
    .gb-faq-answer {
        font-size: 0.9rem;
    }
}

/* Featured Section */
.gb-featured-section {
    background-color: var(--gb-cream);
    padding: 5rem 0;
    width: 100vw;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
}

/* Double the gutters between featured boxes */
.gb-featured-section .row {
    --bs-gutter-x: 3rem;
}

@media (max-width: 991px) {
    .gb-featured-section .row {
        --bs-gutter-x: 2rem;
    }
    
    .gb-featured-corner {
        left: 17px;
    }
}

@media (max-width: 768px) {
    .gb-featured-section .row {
        --bs-gutter-x: 1.5rem;
    }
    
    .gb-featured-corner {
        left: unset !important;
    }
}

.gb-featured-section .col-lg-3,
.gb-featured-section .col-md-6 {
    position: relative;
}

/* Featured Wrapper */
.gb-featured-wrapper {
    position: relative;
    height: 400px;
    background: var(--gb-accent-gold);
    border-radius: 15px;
    padding: 3px;
    clip-path: polygon(
        0 50px,
        50px 0,
        100% 0,
        100% 100%,
        0 100%
    );
}

/* Featured Cards */
.gb-featured-card {
    height: 100%;
    border-radius: 12px;
    position: relative;
    display: flex;
    flex-direction: column;
    clip-path: polygon(
        0 47px,
        47px 0,
        100% 0,
        100% 100%,
        0 100%
    );
    background-color: var(--gb-white);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    overflow: hidden;
}

/* Featured Corner */
.gb-featured-corner {
    position: absolute;
    top: 0;
    left: 24px;
    width: 44px;
    height: 44px;
    background: linear-gradient(135deg, var(--gb-light-gold) 0%, var(--gb-accent-gold) 50%, var(--gb-dark-gold) 100%);
    border-radius: 5px 0 0 0;
    clip-path: polygon(0 0, 100% 0, 0 100%);
    z-index: 10;
}

/* Featured Content */
.gb-featured-content {
    padding: 2rem;
    height: 100%;
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

/* Featured Background */
.gb-featured-bg {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: 1;
    border-radius: 12px;
    clip-path: polygon(
        0 47px,
        47px 0,
        100% 0,
        100% 100%,
        0 100%
    );
}

/* Featured Text Top */
.gb-featured-text-top {
    color: var(--gb-white);
    text-shadow: 3px 3px 6px rgba(0,0,0,0.9), -1px -1px 2px rgba(0,0,0,0.5);
    padding-top: 20px;
    text-align: center;
    width: 100%;
}

.gb-featured-text-top p {
    font-family: 'Pathway Extreme', sans-serif;
    font-size: 1.4rem;
    font-weight: 300;
    margin-bottom: 0.25rem;
}

.gb-featured-text-top h3 {
    font-family: 'Pathway Extreme', sans-serif;
    font-size: 2.3rem;
    font-weight: 600;
    text-transform: uppercase;
    margin-bottom: 0;
}

/* Featured Logo Bottom */
.gb-featured-logo-bottom {
    text-align: center;
    margin-bottom: 30px;
    width: 100%;
}

.gb-featured-logo-bottom img {
    width: 100%;
    height: auto;
    max-width: 240px;
    filter: drop-shadow(0 2px 4px rgba(0,0,0,0.5));
    display: block;
    margin: 0 auto;
}

/* Featured Box 2 specific styles */
.gb-featured-box2 {
    justify-content: space-between;
}

/* Add dark overlay to jewelry box for readability */
.gb-featured-jewelry .gb-featured-bg::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 1;
}

.gb-featured-text-top-right {
    text-align: right;
    padding-top: 20px;
    padding-right: 20px;
}

.gb-featured-text-top-right p {
    font-family: 'Pathway Extreme', sans-serif;
    font-size: 1.6rem;
    font-weight: 600;
    color: var(--gb-white);
    text-shadow: 3px 3px 6px rgba(0,0,0,0.9), -1px -1px 2px rgba(0,0,0,0.5);
    margin-bottom: 0;
}

.gb-featured-text-bottom {
    text-align: center;
    margin-bottom: 30px;
}

.gb-featured-text-bottom p {
    font-family: 'Pathway Extreme', sans-serif;
    font-size: 1.8rem;
    font-weight: 700;
    color: var(--gb-accent-gold);
    text-shadow: 3px 3px 6px rgba(0,0,0,0.9), -1px -1px 2px rgba(0,0,0,0.5);
    margin-bottom: 0;
}

/* Featured Logo Top */
.gb-featured-logo-top {
    text-align: center;
    padding-top: 30px;
}

.gb-featured-logo-top img {
    width: 100%;
    height: auto;
    max-width: 240px;
    display: block;
    margin: 0 auto;
}

/* Featured Social */
.gb-featured-social {
    text-align: center;
    margin-bottom: 30px;
}

.gb-featured-social h3 {
    font-family: 'Pathway Extreme', sans-serif;
    font-size: 1.75rem;
    font-weight: 600;
    color: var(--gb-black);
    text-transform: none;
    margin-bottom: 1rem;
    line-height: 1.1;
}

.gb-btn-instagram {
    background-color: var(--gb-light-gold);
    color: var(--gb-black);
    padding: 0.75rem 2.5rem;
    font-family: 'Pathway Extreme', sans-serif;
    font-size: 1.1rem;
    font-weight: 600;
    text-transform: uppercase;
    text-decoration: none;
    border-radius: 30px;
    display: inline-block;
    transition: all 0.3s ease;
}

.gb-btn-instagram:hover {
    background-color: var(--gb-accent-gold);
    color: var(--gb-black);
    text-decoration: none;
    transform: translateY(-2px);
}

/* Fourth box - transparent background */
.gb-featured-section .col-lg-3:nth-child(4) .gb-featured-wrapper {
    background: none;
    padding: 0;
    clip-path: none;
    height: 400px;
}

.gb-featured-section .col-lg-3:nth-child(4) .gb-featured-card {
    clip-path: none;
    border-radius: 15px;
    height: 100%;
    background-color: transparent;
}

.gb-featured-section .col-lg-3:nth-child(4) .gb-featured-corner {
    display: none;
}

/* Mobile Responsive */
@media (max-width: 991px) {
    .gb-featured-wrapper {
        height: 350px;
    }
}

@media (max-width: 768px) {
    .gb-featured-wrapper {
        height: 300px;
    }
    
    .gb-featured-content {
        padding: 1.5rem;
    }
}

/* Location Section */
.gb-location-section {
    position: relative;
    padding: 5rem 0;
    overflow: hidden;
    width: 100vw;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
}

.gb-location-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: 1;
}

.gb-location-section .container {
    position: relative;
    z-index: 2;
}

/* Location Content */
.gb-location-content h2 {
    font-family: 'Pathway Extreme', sans-serif;
    font-size: 2.5rem;
    font-weight: 400;
    color: var(--gb-accent-gold);
    margin-bottom: 2rem;
    line-height: 1.1;
    text-shadow: 2px 2px 4px rgba(0,0,0,0.3);
}

.gb-text-gold {
    color: var(--gb-accent-gold);
    font-weight: 600;
}

.gb-location-info {
    margin-bottom: 2rem;
}

.gb-location-info h3 {
    font-family: 'Pathway Extreme', sans-serif;
    font-size: 2rem;
    font-weight: 600;
    color: var(--gb-black);
    margin-bottom: 0.25rem;
}

.gb-location-info p {
    font-family: 'Pathway Extreme', sans-serif;
    font-size: 1.25rem;
    color: var(--gb-black);
    margin-bottom: 0.5rem;
}

.gb-phone {
    font-size: 1.5rem !important;
    font-weight: 600;
    margin: 1rem 0 !important;
}

.gb-hours {
    font-size: 1.1rem !important;
    margin: 1rem 0 !important;
}

.gb-email {
    color: var(--gb-primary-green) !important;
    font-size: 1.1rem !important;
}

/* Location Buttons - Removed old styling, see Center Column - Buttons section */

.gb-btn-location {
    padding: 0.75rem 2rem;
    font-family: 'Pathway Extreme', sans-serif;
    font-size: 1rem;
    font-weight: 600;
    text-decoration: none;
    border-radius: 5px;
    transition: all 0.3s ease;
    text-align: center;
    min-width: 160px;
}

.gb-btn-google {
    background-color: var(--gb-accent-gold);
    color: var(--gb-black);
}

.gb-btn-google:hover {
    background-color: var(--gb-dark-gold);
    color: var(--gb-black);
    text-decoration: none;
}

.gb-btn-store {
    background-color: var(--gb-black);
    color: var(--gb-white);
}

.gb-btn-store:hover {
    background-color: #333;
    color: var(--gb-white);
    text-decoration: none;
}

/* Map Wrapper and Card */
.gb-map-wrapper {
    position: relative;
    height: 350px;
    background: var(--gb-accent-gold);
    border-radius: 15px;
    padding: 3px;
}

.gb-map-card {
    height: 100%;
    border-radius: 12px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    overflow: hidden;
}

/* Center Column - Buttons */
.gb-location-buttons-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    padding: 2rem 1rem;
}

.gb-location-buttons {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    width: 100%;
    max-width: 280px;
}

/* Mobile Responsive */
@media (max-width: 991px) {
    .gb-location-content h2 {
        font-size: 2rem;
    }
    
    .gb-map-wrapper {
        height: 300px;
        margin-top: 2rem;
    }
    
    .gb-location-buttons-wrapper {
        margin-top: 2rem;
        margin-bottom: 2rem;
    }
}

@media (max-width: 768px) {
    .gb-location-section {
        padding: 3rem 0;
    }
    
    .gb-location-content {
        padding: 0 1rem;
    }
    
    .gb-location-content h2 {
        font-size: 1.9rem;
        margin-bottom: 1.5rem;
        line-height: 1.2;
    }
    
    .gb-location-info h3 {
        font-size: 1.5rem;
    }
    
    .gb-location-info p {
        font-size: 1.1rem;
    }
    
    .gb-phone {
        font-size: 1.3rem !important;
    }
    
    .gb-btn-location {
        width: 100%;
    }
    
    .gb-map-wrapper {
        height: 250px;
        margin-bottom: 2rem;
    }
    
    .gb-location-buttons-wrapper {
        padding: 1.5rem 0;
    }
}

.wp-block-image {
    margin-bottom: 1rem;
}

.wp-block-image img {
    height: auto;
    max-width: 100%;
}

.entry-content {
    line-height: 1.8;
}

.entry-title {
    margin-bottom: 1rem;
    color: var(--gb-primary-green);
}

.entry-meta {
    color: var(--gb-gray-text);
    font-size: 0.9rem;
    margin-bottom: 1rem;
}

.more-link {
    color: var(--gb-primary-green);
    text-decoration: none;
    font-weight: 500;
}

.more-link:hover {
    text-decoration: underline;
    color: var(--gb-secondary-green);
}

/* Section Divider */
.gb-section-divider {
    width: 100vw;
    height: 4px;
    background-color: var(--gb-accent-gold);
    margin: 0;
    border: none;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
}

/* Hide WordPress admin edit link */
.post-edit-link {
    display: none !important;
}

/* Blog Styles */
.gb-widgets .widget {
    background: #f4f2e8;
    padding: 25px;
    border-radius: 10px;
    margin-bottom: 30px;
}

.gb-widgets .widget h2,
.gb-widgets .widget h3 {
    color: var(--gb-primary-green);
    margin-bottom: 15px;
    font-size: 1.5rem;
}

.gb-widgets .widget ul {
    list-style: none;
    padding: 0;
}

.gb-widgets .widget li {
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid #e0e0e0;
}

.gb-widgets .widget li:last-child {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
}

.gb-widgets .widget a {
    color: var(--gb-gray-text);
    text-decoration: none;
    transition: color 0.3s ease;
}

.gb-widgets .widget a:hover {
    color: var(--gb-accent-gold);
}

/* Archive/Category styles */
.archive .gb-blog-title,
.category .gb-blog-title,
.tag .gb-blog-title {
    color: var(--gb-primary-green);
    margin-bottom: 10px;
}

.archive-meta,
.category-description {
    color: var(--gb-gray-text);
    font-style: italic;
    margin-bottom: 30px;
    padding-bottom: 20px;
    border-bottom: 2px solid var(--gb-accent-gold);
}

/* ##forms## */

/* Text, email, textarea, select fields */
.general-contact-form .gform_wrapper .gfield input[type="text"],
.general-contact-form .gform_wrapper .gfield input[type="email"],
.general-contact-form .gform_wrapper .gfield textarea,
.general-contact-form .gform_wrapper .gfield select {
  border: 1px solid #2d7d4f !important;
  border-radius: 8px !important;
  padding: 0.6rem !important;
  box-shadow: inset 0 1px 3px rgba(0,0,0,0.1) !important;
  background-color: #fff !important;
  transition: border-color 0.3s, box-shadow 0.3s !important;
}

/* Focus state */
.general-contact-form .gform_wrapper .gfield input:focus,
.general-contact-form .gform_wrapper .gfield textarea:focus,
.general-contact-form .gform_wrapper .gfield select:focus {
  border-color: #d4af37 !important;
  box-shadow: 0 0 0 3px rgba(212,175,55,0.3) !important;
  outline: none !important;
}

/* Submit button */
.general-contact-form .gform_wrapper #gform_submit_button_1 {
  background-color: #d4af37 !important;
  color: #fff !important;
  border: none !important;
  border-radius: 8px !important;
  padding: 0.75rem 1.5rem !important;
  box-shadow: 0 2px 5px rgba(0,0,0,0.2) !important;
  cursor: pointer !important;
  transition: background-color 0.3s, box-shadow 0.3s !important;
}

/* Submit hover */
.general-contact-form .gform_wrapper #gform_submit_button_1:hover {
  background-color: #f5e77b !important;
  box-shadow: 0 3px 7px rgba(0,0,0,0.25) !important;
}
/* Reset form alignment */
.general-contact-form .gform_wrapper,
.general-contact-form .gform_wrapper form,
.general-contact-form .gform_wrapper .gform_body,
.general-contact-form .gform_wrapper .gfield {
  text-align: left !important;
}

/* Ensure inputs themselves are left-aligned */
.general-contact-form .gform_wrapper .gfield input,
.general-contact-form .gform_wrapper .gfield textarea,
.general-contact-form .gform_wrapper .gfield select {
  text-align: left !important;
}