/*
 * GoldMarketDaily Site Styles
 * Combined: site-wide standards + migrated snippet 380 CSS
 * Edit at: wp-content/themes/goldmarketdaily-child/assets/site.css
 */

/* === SITE-WIDE STANDARDS === */
:root {
    --gmd-container-width: 1200px;
    --gmd-text-column: 760px;
}

/* Mobile safety net */
html, body { overflow-x: hidden !important; max-width: 100vw; }

.gmd-coin-wrap, .gmd-coins-hub, .gmd-calc-card, .gmd-tool-wrap,
.gmd-pc-inner, .gmd-metals-wrap, .gmd-main, .gmd-hero-inner,
.gmd-newsletter-inner, .gmd-guides-wrap, .gmd-tools-wrap {
    max-width: var(--gmd-container-width) !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

:root {
    --gmd-bg: #080807;
    --gmd-bg-elev: #0a0a09;
    --gmd-gold: #D4A843;
    --gmd-gold-soft: rgba(212,168,67,0.15);
    --gmd-text: #f5f5f5;
    --gmd-muted: #888;
    --gmd-border: rgba(212,168,67,0.15);
}

/* ============================================
   GENERATEPRESS NAVBAR STYLING - dark gold theme
   ============================================ */

.site-header {
    background: var(--gmd-bg-elev) !important;
    border-bottom: 1px solid var(--gmd-border) !important;
    position: sticky !important;
    top: 0 !important;
    z-index: 1000 !important;
    display: block !important;
}

.inside-header {
    max-width: 1280px !important;
    margin: 0 auto !important;
    padding: 16px 24px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 20px !important;
}

.site-branding,
.site-logo {
    flex-shrink: 0;
}

.main-title,
.site-title {
    font-family: 'Cormorant Garamond', serif !important;
    font-size: 26px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    margin: 0 !important;
}

.main-title a,
.site-title a {
    color: var(--gmd-text) !important;
    text-decoration: none !important;
    transition: color 0.2s !important;
}

.main-title a:hover,
.site-title a:hover {
    color: var(--gmd-gold) !important;
}

.site-description {
    display: none !important;
}

.main-navigation,
#site-navigation {
    background: transparent !important;
    border: none !important;
    min-height: auto !important;
    flex: 1 !important;
    display: flex !important;
    justify-content: flex-end !important;
}

.main-navigation .inside-navigation {
    padding: 0 !important;
}

.main-navigation ul.menu,
.main-navigation .menu {
    display: flex !important;
    align-items: center !important;
    gap: 4px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    background: transparent !important;
}

.main-navigation .menu-item {
    position: relative !important;
    background: transparent !important;
}

.main-navigation .menu-item > a {
    background: transparent !important;
    color: var(--gmd-text) !important;
    font-family: 'Syne', sans-serif !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    padding: 10px 14px !important;
    border-radius: 6px !important;
    line-height: 1 !important;
    transition: color 0.2s, background 0.2s !important;
}

.main-navigation .menu-item > a:hover,
.main-navigation .menu-item.current-menu-item > a,
.main-navigation .menu-item.current-menu-ancestor > a {
    color: var(--gmd-gold) !important;
    background: rgba(212,168,67,0.06) !important;
}

.main-navigation .menu-item-has-children > a .gp-icon,
.main-navigation .menu-item-has-children > a .dropdown-menu-toggle {
    color: var(--gmd-gold) !important;
}

.main-navigation .menu-item-has-children > a .gp-icon svg {
    fill: var(--gmd-gold) !important;
}

.main-navigation .sub-menu {
    background: var(--gmd-bg-elev) !important;
    border: 1px solid var(--gmd-border) !important;
    border-radius: 8px !important;
    box-shadow: 0 12px 40px rgba(0,0,0,0.5) !important;
    padding: 8px !important;
    min-width: 220px !important;
    top: calc(100% + 4px) !important;
    list-style: none !important;
}

.main-navigation .sub-menu li {
    background: transparent !important;
    margin: 0 !important;
}

.main-navigation .sub-menu li a {
    background: transparent !important;
    color: var(--gmd-text) !important;
    font-family: 'Syne', sans-serif !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    padding: 10px 14px !important;
    border-radius: 5px !important;
    line-height: 1.3 !important;
    width: 100% !important;
    display: block !important;
    transition: color 0.2s, background 0.2s !important;
}

.main-navigation .sub-menu li a:hover {
    color: var(--gmd-gold) !important;
    background: rgba(212,168,67,0.08) !important;
}

.main-navigation .nav-search-button,
.main-navigation .navigation-search {
    display: none !important;
}

/* ============================================
   SEARCH ICON + EXPANDABLE INPUT
   ============================================ */
.gmd-search-wrap {
    position: relative;
    display: flex;
    align-items: center;
    margin-left: 8px;
}

.gmd-search-toggle {
    background: transparent;
    border: 1px solid var(--gmd-border);
    color: var(--gmd-text);
    width: 38px;
    height: 38px;
    border-radius: 6px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s;
    padding: 0;
}

.gmd-search-toggle:hover {
    color: var(--gmd-gold);
    border-color: var(--gmd-gold);
    background: rgba(212,168,67,0.06);
}

.gmd-search-toggle svg {
    width: 16px;
    height: 16px;
    stroke: currentColor;
    fill: none;
    stroke-width: 2;
}

.gmd-search-form {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    background: var(--gmd-bg-elev);
    border: 1px solid var(--gmd-border);
    border-radius: 8px;
    padding: 10px;
    display: none;
    box-shadow: 0 12px 40px rgba(0,0,0,0.5);
    z-index: 1001;
    min-width: 320px;
}

.gmd-search-wrap.is-open .gmd-search-form {
    display: flex;
    gap: 8px;
}

.gmd-search-input {
    flex: 1;
    background: rgba(20,20,18,0.7);
    border: 1px solid var(--gmd-border);
    color: var(--gmd-text);
    padding: 10px 14px;
    border-radius: 6px;
    font-family: 'Syne', sans-serif;
    font-size: 14px;
    outline: none;
    transition: border-color 0.2s;
    box-sizing: border-box;
}

.gmd-search-input:focus {
    border-color: var(--gmd-gold);
}

.gmd-search-submit {
    background: var(--gmd-gold);
    border: none;
    color: var(--gmd-bg);
    padding: 10px 18px;
    border-radius: 6px;
    font-family: 'Syne', sans-serif;
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    cursor: pointer;
    transition: opacity 0.2s;
}

.gmd-search-submit:hover {
    opacity: 0.85;
}
/* ============================================
   TICKER
   ============================================ */
.gmd-ticker {
    background: var(--gmd-bg);
    border-bottom: 1px solid var(--gmd-border);
    padding: 10px 0;
    overflow: hidden;
    position: relative;
    font-family: 'JetBrains Mono', monospace;
    font-size: 12px;
}

.gmd-ticker-inner {
    display: flex;
    gap: 36px;
    white-space: nowrap;
    width: max-content;
    animation: gmd-ticker-scroll 50s linear infinite;
}

.gmd-ticker-inner:hover { animation-play-state: paused; }

@keyframes gmd-ticker-scroll {
    from { transform: translateX(0); }
    to { transform: translateX(-50%); }
}

.gmd-ticker-item {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 0 8px;
}

.gmd-ticker-live {
    color: var(--gmd-gold);
    font-weight: 600;
    letter-spacing: 0.12em;
    padding: 0 12px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.gmd-ticker-live::before {
    content: "";
    width: 8px;
    height: 8px;
    background: var(--gmd-gold);
    border-radius: 50%;
    animation: gmd-pulse 2s infinite;
}

@keyframes gmd-pulse {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.3; }
}

.gmd-ticker-label { color: var(--gmd-muted); text-transform: uppercase; letter-spacing: 0.08em; }
.gmd-ticker-value { color: var(--gmd-text); font-weight: 600; }
.gmd-ticker-chg.up { color: #4ade80; }
.gmd-ticker-chg.down { color: #f87171; }

/* ============================================
   MOBILE RESPONSIVE
   ============================================ */
@media (max-width: 900px) {
    .inside-header {
        padding: 12px 18px !important;
        flex-wrap: wrap !important;
    }

    .main-title,
    .site-title {
        font-size: 22px !important;
    }

    .menu-toggle {
        display: flex !important;
        align-items: center !important;
        background: transparent !important;
        border: 1px solid var(--gmd-border) !important;
        color: var(--gmd-text) !important;
        border-radius: 6px !important;
        padding: 8px 12px !important;
    }

    .main-navigation .main-nav {
        background: var(--gmd-bg-elev) !important;
        border-top: 1px solid var(--gmd-border) !important;
    }

    .main-navigation ul.menu,
    .main-navigation .menu {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 0 !important;
        padding: 12px !important;
    }

    .main-navigation .menu-item > a {
        padding: 12px 14px !important;
        width: 100% !important;
    }

    .main-navigation .sub-menu {
        position: static !important;
        background: transparent !important;
        border: none !important;
        box-shadow: none !important;
        padding: 0 0 0 16px !important;
        min-width: auto !important;
    }

    .gmd-search-wrap {
        margin-left: auto;
    }

    .gmd-search-form {
        position: fixed;
        top: 70px;
        left: 12px;
        right: 12px;
        min-width: auto;
    }
}

/* === MOBILE NAVBAR FIXES (added 2026-05-12) === */
@media (max-width: 900px) {
    /* Smaller logo on mobile */
    .main-title,
    .site-title {
        font-size: 18px !important;
        letter-spacing: 0 !important;
    }

    /* Hide rules removed - letting GP handle it */

    /* gmd-mobile-menu-open rules removed */

    /* Navigation row layout: logo left, hamburger right */
    .main-navigation,
    #site-navigation {
        flex: 0 0 auto !important;
        order: 3 !important;
        width: 100% !important;
    }

    /* Show hamburger toggle inline */
    .menu-toggle {
        display: flex !important;
        order: 2 !important;
    }

    /* Search wrap stays accessible */
    .gmd-search-wrap {
        order: 2 !important;
    }

    /* === HAMBURGER VISIBILITY FIX ===
       GeneratePress hides our toggle when nav goes full-width.
       Force it to render as a visible, tappable button. */
    .menu-toggle,
    button.menu-toggle,
    .main-navigation .menu-toggle {
        display: flex !important;
        visibility: visible !important;
        opacity: 1 !important;
        background: var(--gmd-bg-elev) !important;
        color: var(--gmd-text) !important;
        border: 1px solid var(--gmd-border) !important;
        border-radius: 6px !important;
        padding: 10px 14px !important;
        cursor: pointer !important;
        font-size: 14px !important;
        align-items: center !important;
        gap: 8px !important;
        position: absolute !important;
        right: 16px !important;
        top: 14px !important;
        z-index: 100 !important;
    }

    .menu-toggle .gp-icon,
    .menu-toggle .gp-icon svg {
        width: 20px !important;
        height: 20px !important;
        fill: currentColor !important;
    }

    /* Make sure the site-navigation row positions correctly */
    .has-inline-mobile-toggle #site-navigation {
        margin-top: 0 !important;
    }

    /* When menu is OPEN, hide the bars icon, show the X */
    body:not(.gmd-mobile-menu-open) .menu-toggle .gp-icon svg:nth-of-type(2),
    body.gmd-mobile-menu-open .menu-toggle .gp-icon svg:nth-of-type(1) {
        display: none !important;
    }
    body.gmd-mobile-menu-open .menu-toggle .gp-icon svg:nth-of-type(2) {
        display: inline-block !important;
    }

    /* === SHOW MENU WHEN .toggled (matches GP's target — both .main-navigation AND #site-navigation) === */
    .main-navigation.toggled .inside-navigation,
    .main-navigation.toggled .main-nav,
    .main-navigation.toggled #primary-menu,
    .main-navigation.toggled ul.menu,
    #site-navigation.toggled .inside-navigation,
    #site-navigation.toggled .main-nav,
    #site-navigation.toggled #primary-menu,
    #site-navigation.toggled ul.menu,
    nav.toggled .main-nav,
    nav.toggled #primary-menu,
    nav.toggled ul.menu,
    [aria-expanded="true"] ~ * .main-nav,
    [aria-expanded="true"] + #primary-menu {
        display: block !important;
        width: 100% !important;
        background: var(--gmd-bg-elev) !important;
        height: auto !important;
        max-height: none !important;
        position: static !important;
    }

    /* Style menu items when any parent has .toggled */
    .main-navigation.toggled .menu-item,
    #site-navigation.toggled .menu-item,
    nav.toggled .menu-item {
        display: block !important;
        width: 100% !important;
        border-bottom: 1px solid var(--gmd-border) !important;
        background: var(--gmd-bg-elev) !important;
        list-style: none !important;
    }

    .main-navigation.toggled .menu-item > a,
    #site-navigation.toggled .menu-item > a,
    nav.toggled .menu-item > a {
        display: block !important;
        padding: 14px 18px !important;
        color: var(--gmd-text) !important;
        font-size: 15px !important;
        text-decoration: none !important;
    }

    .main-navigation.toggled .sub-menu,
    #site-navigation.toggled .sub-menu,
    nav.toggled .sub-menu {
        position: static !important;
        background: rgba(0,0,0,0.3) !important;
        padding-left: 16px !important;
        display: block !important;
    }

    /* === FOOTER EDGE-TO-EDGE ON MOBILE === */
    .gmd-footer {
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
    }
    .gmd-footer-inner {
        padding-left: 16px !important;
        padding-right: 16px !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }
    .gmd-footer-top,
    .gmd-footer-bottom,
    .gmd-disclaimer {
        padding-left: 16px !important;
        padding-right: 16px !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }
}
/* === GMD Mobile Menu Open State === */
@media (max-width: 768px) {
    #site-navigation.gmd-menu-open #primary-menu,
    #site-navigation.gmd-menu-open .main-nav,
    .main-navigation.gmd-menu-open #primary-menu {
        display: block !important;
        width: 100% !important;
        background: var(--gmd-bg-elev, #0a0a09) !important;
    }
    #site-navigation.gmd-menu-open .menu-item {
        display: block !important;
        width: 100% !important;
        border-bottom: 1px solid var(--gmd-border, rgba(212,168,67,0.15)) !important;
    }
    #site-navigation.gmd-menu-open .menu-item > a {
        display: block !important;
        padding: 14px 18px !important;
        color: var(--gmd-text, #f5f5f5) !important;
        font-size: 15px !important;
    }
    #site-navigation.gmd-menu-open .sub-menu {
        position: static !important;
        background: rgba(0,0,0,0.3) !important;
        padding-left: 16px !important;
        display: block !important;
    }
}

/* === MOBILE: show menu-toggle, stack menu items === */
@media (max-width: 768px) {
    .menu-toggle {
        display: flex !important;
    }
    .mobile-menu-control-wrapper {
        display: block !important;
    }
}

/* === Mobile: Floating overlay menu === */
@media (max-width: 768px) {
    .main-navigation .mobile-menu { display: none !important; }
    .main-navigation > .menu-toggle { display: none !important; }

    #site-navigation.gmd-menu-open {
        position: fixed !important;
        top: 64px !important;
        left: 0 !important;
        right: 0 !important;
        background: var(--gmd-bg-elev, #0a0a09) !important;
        border-top: 1px solid var(--gmd-border, rgba(212,168,67,0.15)) !important;
        z-index: 9999 !important;
        width: 100% !important;
        max-height: calc(100vh - 64px) !important;
        overflow-y: auto !important;
        padding: 8px 0 !important;
        box-shadow: 0 12px 36px rgba(0,0,0,0.6) !important;
    }
    body.gmd-mobile-menu-open::after {
        content: '';
        position: fixed;
        top: 64px;
        left: 0;
        right: 0;
        bottom: 0;
        background: rgba(0,0,0,0.5);
        z-index: 9998;
        pointer-events: none;
    }
    body.gmd-mobile-menu-open { overflow: hidden !important; }
}

/* === DESKTOP: Force menu items onto ONE row (no wrap) === */
@media (min-width: 769px) {
    .main-navigation ul.menu,
    .main-navigation .menu,
    #primary-menu,
    #primary-menu > ul {
        flex-wrap: nowrap !important;
        white-space: nowrap !important;
    }
    .main-navigation .menu-item {
        flex-shrink: 0 !important;
    }
    /* Tighten spacing so 7 items fit */
    .main-navigation .menu-item > a {
        padding: 10px 10px !important;
        font-size: 13px !important;
    }
}

/* ============================================
   GLOBAL DARK THEME — applies to every page
   New pages inherit this automatically
   ============================================ */
html, body, .site, .site-content, #page, .content-area, .gmd-page, .entry-content {
    background-color: var(--gmd-bg) !important;
    color: var(--gmd-text);
}

/* Ensure entry containers don't slap a white background on top */
.entry-content, .entry, article.page, article.post,
.inside-article, .inside-content, .wp-block-group {
    background: transparent !important;
}

/* Default text color across all page content */
.entry-content p, .entry-content li, .entry-content span:not([style]),
.entry-content h1, .entry-content h2, .entry-content h3, .entry-content h4,
.entry-content h5, .entry-content h6 {
    color: var(--gmd-text);
}
.entry-content a:not(.button):not(.wp-block-button__link):not([class*="btn"]):not([class*="-btn"]):not(.gmd-hero-btn):not(.gmd-cta) {
    color: var(--gmd-gold);
}

/* ============================================
   NAVBAR — tighten dropdown-parent spacing
   ============================================ */
#site-navigation .main-nav ul li.menu-item-has-children > a {
    padding-right: 8px;  /* room for chevron, but not excessive */
}
#site-navigation .main-nav ul li.menu-item-has-children .dropdown-menu-toggle {
    padding-left: 4px !important;
    padding-right: 4px !important;
    margin-right: 0 !important;
}
#site-navigation .main-nav ul.menu > li {
    margin-right: 0 !important;
}
#site-navigation .main-nav ul.menu > li > a {
    padding-left: 12px;
    padding-right: 12px;
}

/* Desktop-only navbar layout (mobile uses GP defaults) */
@media (min-width: 769px) {

/* ============================================
   NAVBAR LAYOUT v2 — Bloomberg/Reuters style
   Logo + menu on ONE row, search far right
   Structure: masthead > [inside-header, site-navigation] as siblings
   ============================================ */

#masthead {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    justify-content: center !important;   /* <-- whole navbar centered as one unit */
    gap: 24px;
    padding: 0 28px !important;
}

/* Logo container: hug content, no flex grow */
#masthead .inside-header {
    flex: 0 0 auto !important;
    padding: 0 !important;
    margin: 0 !important;
    width: auto !important;
    max-width: none !important;
    background: transparent !important;
}
#masthead .site-logo {
    margin: 0 !important;
}

/* Main nav: take remaining width, items hug left */
#masthead #site-navigation {
    flex: 0 1 auto !important;        /* <-- shrink to content, don't grow */
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    width: auto !important;
}
#masthead #site-navigation .inside-navigation {
    display: flex !important;
    align-items: center !important;
    padding: 0 !important;
    max-width: none !important;
    width: auto !important;             /* <-- hug content, don't stretch */
    justify-content: flex-start !important;
}
#masthead #site-navigation .main-nav {
    flex: 0 1 auto !important;
}
#masthead #site-navigation ul#primary-menu,
#masthead #site-navigation ul.menu {
    margin: 0 auto !important;
    padding: 0 !important;
    justify-content: center !important;
}

/* Push the .main-nav to take up centered position, with search absolute right */
#masthead #site-navigation .main-nav {
    margin: 0 auto !important;
    flex: 0 1 auto !important;
}

/* Search button: stays inline with the menu cluster (no auto margin) */
#masthead #site-navigation .navigation-search,
#masthead #site-navigation .nav-search-button,
#masthead #site-navigation form.search-form,
} /* end desktop-only navbar wrap */

#masthead #site-navigation .gp-icon.search {
    margin-left: 8px !important;
}

/* Hide the mobile-toggle wrapper on desktop (it lives between logo and nav and creates whitespace) */
@media (min-width: 769px) {
    #masthead .mobile-menu-control-wrapper {
        display: none !important;
    }
}

/* ============================================
   HIDE DESKTOP HAMBURGER TOGGLE
   Mobile-toggle should only render on mobile, not desktop
   ============================================ */
@media (min-width: 769px) {
    #masthead .menu-toggle,
    #masthead button.menu-toggle,
    #site-navigation > .menu-toggle,
    #site-navigation .inside-navigation > .menu-toggle,
    .mobile-menu-control-wrapper {
        display: none !important;
    }
}

/* ============================================
   SEARCH / ARCHIVE PAGES — force dark theme
   ============================================ */

/* Archive/search page header (the white box at top) */
.page-header, .archive-header, .search-header,
header.page-header, .archive .page-header, .search .page-header,
.entry-content > header, .content-area > header,
.entry-header {
    background: transparent !important;
}

.page-header *, .archive-header *, .search-header *,
.page-title, .archive-title, .search-title {
    color: var(--gmd-text) !important;
}

/* Article titles in search/archive listings — make them readable */
.search article .entry-title,
.archive article .entry-title,
.blog article .entry-title,
article.post .entry-title,
article.page .entry-title,
.entry-title {
    color: var(--gmd-text) !important;
}

.search article .entry-title a,
.archive article .entry-title a,
.blog article .entry-title a,
article.post .entry-title a,
.entry-title a {
    color: var(--gmd-text) !important;
}

.search article .entry-title a:hover,
.archive article .entry-title a:hover,
.blog article .entry-title a:hover,
.entry-title a:hover {
    color: var(--gmd-gold) !important;
}

/* Post meta (date, author, etc.) */
.entry-meta, .posted-on, .byline, .post-meta,
.entry-meta a, .posted-on a, .byline a {
    color: var(--gmd-muted) !important;
}

.entry-meta a:hover, .byline a:hover {
    color: var(--gmd-gold) !important;
}

/* Excerpt text */
.entry-summary, .entry-summary p,
.entry-excerpt, .entry-excerpt p {
    color: var(--gmd-text) !important;
}

/* If there's an article wrapper with a background, kill it */
.search article, .archive article, .blog article,
.search .inside-article, .archive .inside-article, .blog .inside-article {
    background: transparent !important;
}

/* ============================================
   HIDE COMMENTS UI + CATEGORIES/TAGS
   Comments disabled site-wide; this hides any leftover UI
   ============================================ */
#comments,
.comments-area,
#respond,
#commentform,
.comment-respond,
.comment-form,
.comments-title,
.comment-list,
.no-comments,
.comments-closed,
#reply-title,
.leave-comment-link {
    display: none !important;
}

/* Hide category/tag display on single posts */
.cat-links,
.tag-links,
.entry-categories,
.entry-tags,
.post-categories,
.post-tags,
footer.entry-meta .cat-links,
footer.entry-meta .tag-links,
.entry-footer .cat-links,
.entry-footer .tag-links {
    display: none !important;
}

/* Hide "Posted in X, tagged Y" lines that GeneratePress sometimes outputs */
.entry-meta .cat-links,
.entry-meta .tags-links,
.entry-meta .comments-link {
    display: none !important;
}

/* ============================================
   POST NAVIGATION — Previous / Next article cards
   ============================================ */
.post-navigation,
nav.post-navigation,
.nav-previous,
.nav-next {
    margin-top: 48px !important;
    margin-bottom: 32px !important;
}

/* Container: two cards side by side */
.post-navigation .nav-links {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 20px !important;
    margin: 0 !important;
    border: none !important;
    padding: 0 !important;
}

/* Each card */
.post-navigation .nav-previous,
.post-navigation .nav-next {
    background: rgba(20,20,18,0.5) !important;
    border: 1px solid var(--gmd-border) !important;
    border-radius: 10px !important;
    padding: 22px 24px !important;
    transition: border-color 0.2s, transform 0.2s !important;
    width: auto !important;
    margin: 0 !important;
}

.post-navigation .nav-previous:hover,
.post-navigation .nav-next:hover {
    border-color: var(--gmd-gold) !important;
    transform: translateY(-2px);
}

/* The "<" or ">" arrow indicator becomes a label */
.post-navigation .nav-previous a::before,
.post-navigation .nav-next a::before {
    display: block;
    font-family: 'JetBrains Mono', monospace;
    font-size: 10px;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: var(--gmd-gold);
    margin-bottom: 10px;
}
.post-navigation .nav-previous a::before {
    content: "← PREVIOUS";
}
.post-navigation .nav-next a::before {
    content: "NEXT →";
}

/* Right-align the next card content */
.post-navigation .nav-next {
    text-align: right;
}

/* The article title link */
.post-navigation .nav-previous a,
.post-navigation .nav-next a {
    color: var(--gmd-text) !important;
    text-decoration: none !important;
    font-family: 'Cormorant Garamond', serif !important;
    font-size: 18px !important;
    line-height: 1.35 !important;
    display: block !important;
    border: none !important;
}

.post-navigation .nav-previous a:hover,
.post-navigation .nav-next a:hover {
    color: var(--gmd-gold) !important;
}

/* Mobile: stack vertically */
@media (max-width: 768px) {
    .post-navigation .nav-links {
        grid-template-columns: 1fr !important;
        gap: 14px !important;
    }
    .post-navigation .nav-next {
        text-align: left !important;
    }
    .post-navigation .nav-next a::before {
        content: "→ NEXT";
    }
}

/* ============================================
   HIDE GENERATEPRESS CREDIT IN FOOTER
   ============================================ */
.site-info .powered-by,
.site-info a[href*="generatepress"],
.site-info a[href*="GeneratePress"],
.site-info > .copyright + span,
.generate-back-to-top + .site-info span:last-child {
    display: none !important;
}

/* ============================================
   HIDE GENERATEPRESS DEFAULT FOOTER (#colophon)
   We have our own .gmd-footer with copyright + links
   ============================================ */
#colophon,
footer#colophon,
.site-info,
.footer-widgets,
.footer-bar,
.footer-credits,
.copyright-bar {
    display: none !important;
}

/* ============================================
   HIDE ADDTOANY SHARE BUTTONS (Quang's preference)
   ============================================ */
.a2a_kit,
.addtoany_list,
.addtoany_share_save_container,
.addtoany_content,
.a2a_floating_style,
.a2a_default_style,
.a2a_vertical_style,
div[class*="addtoany"] {
    display: none !important;
}

/* ============================================
   SINGLE POST HERO IMAGE — trimmed height
   Site-wide rule for the featured image on single posts
   ============================================ */
.single-post .featured-image.page-header-image-single,
.single .featured-image.page-header-image-single,
body.single-post .featured-image {
    max-height: 360px;
    overflow: hidden;
    margin-bottom: 28px;
}

.single-post .featured-image.page-header-image-single img,
.single .featured-image.page-header-image-single img,
body.single-post .featured-image img.wp-post-image {
    width: 100%;
    height: 360px;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Mobile: scale down further so it doesn't dominate small screens */
@media (max-width: 768px) {
    .single-post .featured-image.page-header-image-single,
    .single .featured-image.page-header-image-single,
    body.single-post .featured-image {
        max-height: 220px;
    }
    .single-post .featured-image.page-header-image-single img,
    .single .featured-image.page-header-image-single img,
    body.single-post .featured-image img.wp-post-image {
        height: 220px;
    }
}

/* ============================================
   SITE-WIDE TEXT COLORS — eye-friendly off-white
   Warm off-white body, slightly brighter headings, no eye-burning #fff
   ============================================ */

/* Body text everywhere */
body,
.entry-content,
.entry-content p,
.entry-content li,
.entry-content blockquote,
.entry-content td,
.entry-content span:not([style]):not([class*="badge"]):not([class*="tag"]):not([class*="cat"]):not([class*="eyebrow"]),
.gmd-content-section p,
.gmd-content-section li,
.page-content p,
.page-content li,
main p,
main li,
article p,
article li {
    color: #c8c8c3 !important;
}

/* All headings site-wide — softer, not bright white */
h1, h2, h3, h4, h5, h6,
.entry-title,
.page-title,
.gmd-art-title,
.gmd-art-card-title,
.ga-list-title,
.ga-featured-title,
.gg-card-title,
.gg-featured-title,
.gmd-news-hero h1,
.gmd-signup-card h2,
.gmd-feature-card h3,
.gmd-content-section h2,
.gmd-content-section h3,
.gmd-faq-item h4 {
    color: #f0ebe0 !important;
}

/* Sub-headings (h3/h4/h5/h6) — slightly more muted than h1/h2 */
h3, h4, h5, h6,
.gmd-content-section h3,
.gmd-faq-item h4 {
    color: #e8e3d8 !important;
}

/* Bold/strong text — slightly brighter for emphasis but not pure white */
strong, b,
.entry-content strong,
.entry-content b {
    color: #e8e3d8 !important;
}

/* Meta info / dates / categories — keep muted grey but readable */
.entry-meta, .posted-on, .byline,
.gmd-art-card-meta, .ga-list-meta, .gg-card-meta,
.gmd-sample-meta, .gmd-meta {
    color: #9a9485 !important;
}

/* Gold accent text stays gold — don't override */
.gmd-art-cat, .gmd-art-card-cat,
.ga-list-cat, .ga-featured-badge,
.gg-card-tag, .gg-featured-tag,
.gmd-news-eyebrow, .gmd-signup-eyebrow,
.gmd-sample-edition {
    /* (untouched — these already use --gmd-gold) */
}

/* ============================================
   FUNDAMENTALS CARD TITLE ROTATOR
   Each card title fades to alternate text every 5s
   ============================================ */
.gmd-guide-card .gmd-guide-title {
    transition: opacity 0.45s ease-in-out;
}
.gmd-guide-card .gmd-guide-title.gmd-fade-out {
    opacity: 0;
}

/* ============================================
   FUNDAMENTALS image fade (paired with title fade)
   ============================================ */
.gmd-guide-card div[style*="background-image"] {
    transition: opacity 0.45s ease-in-out;
}

/* ============================================================
   SUBMENU HOVER-INTENT FIX
   Adds invisible bridge above submenu + transition delay so the
   cursor can travel from parent link to submenu without falling
   into a dead zone that closes the dropdown.
   ============================================================ */
.main-navigation .menu-item-has-children > .sub-menu::before {
  content: '';
  position: absolute;
  top: -12px;
  left: 0;
  right: 0;
  height: 12px;
  background: transparent;
  display: block;
  pointer-events: auto;
}
.main-navigation .sub-menu {
  transition: opacity 0.15s ease, visibility 0.15s ease;
  padding-top: 4px;
}
.main-navigation .menu-item-has-children:hover > .sub-menu,
.main-navigation .menu-item-has-children:focus-within > .sub-menu,
.main-navigation .sub-menu:hover {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
}


/* ============================================

/* ============================================
   MOBILE FIXES v3 (2026-05-16)
   - Don't pad the header (pushes content off)
   - Logo: just cap its width and let it shrink
   - Ticker stays small
   ============================================ */
@media (max-width: 768px) {

    /* Logo: shrink to fit, never extend past available space */
    .site-logo {
        max-width: 70% !important;
        overflow: hidden !important;
    }
    .site-logo img,
    .header-image,
    img.is-logo-image {
        max-width: 100% !important;
        max-height: 36px !important;
        height: auto !important;
        width: auto !important;
        object-fit: contain !important;
        display: block !important;
    }

    /* Ticker: smaller font + tighter spacing so LIVE badge fits */
    .gmd-ticker {
        font-size: 10.5px !important;
        padding: 7px 0 !important;
    }
    .gmd-ticker-inner {
        gap: 18px !important;
    }
    .gmd-ticker-item {
        padding: 0 4px !important;
        gap: 5px !important;
    }
    .gmd-ticker-live {
        padding: 0 8px !important;
        font-size: 9.5px !important;
        gap: 6px !important;
        flex-shrink: 0 !important;
    }
    .gmd-ticker-live::before {
        width: 6px !important;
        height: 6px !important;
        flex-shrink: 0 !important;
    }
    .gmd-ticker-label {
        font-size: 9px !important;
    }
}

/* ============================================
   MOBILE MENU SOLID BACKGROUND (2026-05-16)
   Prevents page content showing through menu drawer
   ============================================ */
@media (max-width: 768px) {
    /* Full-width solid drawer */
    .main-navigation .main-nav,
    #site-navigation .main-nav,
    .main-navigation.toggled .main-nav,
    #site-navigation.toggled .main-nav {
        background: #0a0a08 !important;
        width: 100% !important;
        position: relative !important;
        z-index: 999 !important;
    }
    /* Menu container must also be opaque */
    #site-navigation,
    .main-navigation {
        background: #0a0a08 !important;
    }
    /* Inside-navigation full width */
    #site-navigation .inside-navigation {
        width: 100% !important;
        max-width: 100% !important;
        background: #0a0a08 !important;
    }
    /* Sub-menus inherit solid bg */
    .main-navigation .sub-menu,
    #site-navigation .sub-menu {
        background: #0a0a08 !important;
    }
}

/* =====================================================================
 * GMD GOLD BUTTON SAFETY
 * Forces dark text on gold-background buttons site-wide.
 * Defends against theme/plugin link-color overrides making text invisible.
 * Catches existing + future buttons matching common class patterns.
 * ===================================================================== */

/* Target buttons by class name pattern (any -btn, -button, -cta variant) */
a[class*="-btn"],
a[class*="-button"],
a[class*="-cta"],
button[class*="-btn"],
button[class*="-button"],
button[class*="-cta"],
.gmd-btn-primary,
.gmd-news-cta-button,
.gmd-link-cta,
.gmd-signup-btn,
.gmd-coin-card-cta,
.gmd-dealer-cta,
.g404-btn-primary,
.gc-btn,
.gg-btn,
.ga-contact-btn,
.ga-page-btn {
    text-decoration: none;
}

/* Force readable text on gold-background buttons in all link states */
a.gmd-news-cta-button,
a.gmd-news-cta-button:link,
a.gmd-news-cta-button:visited,
a.gmd-news-cta-button:hover,
a.gmd-news-cta-button:active,
a.gmd-news-cta-button:focus,
a.gmd-btn-primary,
a.gmd-btn-primary:link,
a.gmd-btn-primary:visited,
a.gmd-btn-primary:hover,
a.gmd-btn-primary:active,
a.gmd-btn-primary:focus,
a.gmd-signup-btn,
a.gmd-signup-btn:link,
a.gmd-signup-btn:visited,
a.gmd-signup-btn:hover,
a.gmd-signup-btn:active,
a.gmd-link-cta,
a.gmd-link-cta:link,
a.gmd-link-cta:visited,
a.gmd-link-cta:hover,
a.gmd-link-cta:active,
a.g404-btn-primary,
a.g404-btn-primary:link,
a.g404-btn-primary:visited,
a.g404-btn-primary:hover,
a.g404-btn-primary:active,
a.gc-btn-primary,
a.gc-btn-primary:link,
a.gc-btn-primary:visited,
a.gc-btn-primary:hover,
a.ga-contact-btn,
a.ga-contact-btn:link,
a.ga-contact-btn:visited,
a.ga-contact-btn:hover {
    color: #0a0a08 !important;
    font-weight: 600 !important;
}

/* Ensure all named gold buttons stay gold across states */
.gmd-news-cta-button,
.gmd-news-cta-button:hover,
.gmd-btn-primary,
.gmd-signup-btn,
.gmd-link-cta,
.g404-btn-primary,
.ga-contact-btn {
    background: #D4A843;
}
.gmd-news-cta-button:hover,
.gmd-btn-primary:hover,
.gmd-signup-btn:hover,
.gmd-link-cta:hover,
.g404-btn-primary:hover,
.ga-contact-btn:hover {
    background: #e0b853 !important;
}
/* END GMD GOLD BUTTON SAFETY */

