/* ============================================================
   GOLDBRIDGE — site-wide theme
   Single source of truth for fonts + brand colours.
   Link this on EVERY page:  <link rel="stylesheet" href="theme.css">
   Change a value here once and it updates across the whole site.
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Marcellus&family=Jost:wght@400;500;600&family=Inter:wght@400;500;600;700;800&display=swap');

:root{
  /* ---- Type system (3 roles) ---- */
  --gb-font-display: 'Marcellus', serif;            /* brand, headings, big figures */
  --gb-font-ui:      'Jost', system-ui, sans-serif; /* anything you click: buttons, toggles, controls */
  --gb-font-body:    'Inter', system-ui, sans-serif;/* paragraphs, labels, fine print */

  /* ---- Brand palette ---- */
  --gb-bg:        #08120D;  /* page background (deep green-black) */
  --gb-text:      #ECE6D4;  /* default body text (warm cream) */

  --gb-gold:        #E8C75A; /* primary gold */
  --gb-gold-deep:   #B8941F; /* deep gold */
  --gb-gold-light:  #F6E7A8; /* light gold highlight */
  --gb-gold-grad:   linear-gradient(110deg,#B8941F,#E8C75A 35%,#FFF6D8 50%,#E8C75A 65%,#B8941F);
  --gb-copper:      #C98A4B; /* copper accent (eyebrow / subhead) */

  --gb-sage:      #9DB0A2;  /* muted text / inactive nav */
  --gb-sage-dim:  #7E8C80;  /* faint labels */

  --gb-up:        #3FB97A;  /* gains green */
  --gb-down:      #E2574C;  /* loss red */

  --gb-line:      rgba(212,175,55,.22); /* faint gold hairline borders */
}

/* ---- Universal base ---- */
body{
  font-family: var(--gb-font-body);
  background:  var(--gb-bg);
  color:       var(--gb-text);
}

/* ============================================================
   Shared header / nav bar  (markup lives in header.php)
   ============================================================ */
.gb-header{position:sticky;top:0;z-index:100;background:transparent;border-bottom:1px solid transparent;
  transition:background .25s ease,backdrop-filter .25s ease,border-color .25s ease}
.gb-header.scrolled{background:rgba(10,22,16,.72);
  -webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
  border-bottom-color:var(--gb-line)}
.gb-header .nav{position:relative;display:flex;align-items:center;justify-content:space-between;max-width:1180px;margin:0 auto;padding:18px 30px}
.gb-header .brand{display:flex;align-items:center;gap:11px}
.gb-header .mark{width:46px;height:46px;border-radius:11px;border:1px solid rgba(212,175,55,.5);
  display:flex;align-items:center;justify-content:center;background:rgba(212,175,55,.08)}
.gb-header .mark img{width:78%;height:auto;display:block;filter:drop-shadow(0 1px 1px rgba(0,0,0,.4))}
.gb-header .bn{font-family:var(--gb-font-display);font-size:22px;letter-spacing:.05em;white-space:nowrap;
  background:var(--gb-gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.gb-header .links{display:flex;align-items:center;gap:24px}
.gb-header .links a{color:var(--gb-sage)}
.gb-header .links a.on{color:var(--gb-gold)}
.gb-header .links>a:not(.signin):not(.acct){font-family:var(--gb-font-display);text-transform:uppercase;letter-spacing:.16em;font-size:14px}
.gb-header .links>a:not(.signin):not(.acct):hover{color:var(--gb-gold)}
.gb-header .signin{padding:9px 18px;border:1px solid rgba(212,175,55,.4);border-radius:9px;color:var(--gb-gold);
  font-family:var(--gb-font-ui);font-size:15px;font-weight:500}
.gb-header .signin:hover{background:rgba(212,175,55,.1)}
.gb-header .acct{display:inline-flex;align-items:center;gap:7px;padding:9px 16px;border-radius:9px;
  border:1px solid rgba(212,175,55,.4);color:var(--gb-gold);font-family:var(--gb-font-ui);font-size:15px}
.gb-header .acct:hover{background:rgba(212,175,55,.1)}
.gb-header .acct svg{flex:0 0 auto}
.gb-header .curtog{display:inline-flex;border:1px solid rgba(212,175,55,.3);border-radius:8px;overflow:hidden}
.gb-header .curtog a{padding:6px 11px;font-family:var(--gb-font-ui);font-size:13px;letter-spacing:.03em;color:var(--gb-sage)}
.gb-header .curtog a.on{background:rgba(212,175,55,.18);color:var(--gb-gold)}
.gb-header .nav-cb{display:none}
.gb-header .hamburger{display:none}

@media (max-width:760px){
  .gb-header .nav{padding:12px 18px}
  .gb-header .bn-suffix{display:none}
  .gb-header .hamburger{display:flex;flex-direction:column;justify-content:center;gap:5px;
    width:38px;height:34px;cursor:pointer;border:1px solid var(--gb-line);border-radius:9px}
  .gb-header .hamburger span{display:block;height:2px;width:20px;margin:0 auto;background:var(--gb-gold);border-radius:2px;
    transition:transform .25s ease,opacity .2s ease}
  .gb-header .nav-cb:checked ~ .hamburger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .gb-header .nav-cb:checked ~ .hamburger span:nth-child(2){opacity:0}
  .gb-header .nav-cb:checked ~ .hamburger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .gb-header .links{position:absolute;top:100%;left:8px;right:8px;margin-top:10px;z-index:60;
    flex-direction:column;align-items:stretch;gap:4px;
    background:rgba(8,18,13,.98);border:1px solid var(--gb-line);border-radius:14px;padding:0 10px;
    max-height:0;opacity:0;overflow:hidden;pointer-events:none;
    transition:max-height .28s ease,opacity .2s ease,padding .28s ease;box-shadow:0 18px 40px rgba(0,0,0,.5)}
  .gb-header .nav-cb:checked ~ .links{max-height:440px;opacity:1;pointer-events:auto;padding:10px}
  .gb-header .links>a:not(.signin):not(.acct){display:block;padding:12px 14px;font-size:16px;border-radius:9px}
  .gb-header .links>a:not(.signin):not(.acct):hover{background:rgba(212,175,55,.08)}
  .gb-header .curtog{align-self:flex-start;margin:6px 4px 8px}
  .gb-header .signin,.gb-header .acct{margin:4px;text-align:center;justify-content:center}
}

/* Subtle gold section divider — drop <div class="gb-divider"></div> between sections */
.gb-divider{height:1px;border:0;width:92%;max-width:1080px;margin:10px auto;
  background:linear-gradient(90deg,transparent,rgba(212,175,55,.32) 22%,rgba(212,175,55,.32) 78%,transparent)}
