/* ============================================================
   AMERICAN GOLD PRICE — "Daybreak" design system
   Light · editorial · serif. Restrained luxury. Concept B (locked).
   ============================================================ */
:root{
  --gold:#b8860b;        /* dark goldenrod — restrained, not gaudy */
  --gold-2:#caa04a;
  --gold-soft:#f4ead2;
  --ink:#1c1a14;         /* near-black warm */
  --ink-2:#57503f;       /* muted body */
  --line:#e7e0d0;        /* hairline */
  --paper:#fbf8f1;       /* warm editorial paper */
  --card:#ffffff;
  --up:#1c7d4d;          /* price up */
  --down:#b23b3b;        /* price down */
  --shadow:0 1px 2px rgba(28,26,20,.05), 0 8px 24px rgba(28,26,20,.06);
  --serif:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,"Times New Roman",serif;
  --sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --maxw:1080px;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;background:var(--paper);color:var(--ink);
  font-family:var(--sans);font-size:17px;line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 20px}
a{color:var(--gold);text-decoration:none}
a:hover{text-decoration:underline}
h1,h2,h3{font-family:var(--serif);color:var(--ink);line-height:1.2;font-weight:600;letter-spacing:-.01em}
h1{font-size:clamp(2rem,4.5vw,3rem);margin:.2em 0 .3em}
h2{font-size:clamp(1.5rem,3vw,2rem);margin:1.8em 0 .5em}
h3{font-size:1.25rem;margin:1.4em 0 .4em}
p{margin:.6em 0}
.muted{color:var(--ink-2)}

/* ---- header ---- */
header.site{border-bottom:1px solid var(--line);background:rgba(251,248,241,.9);backdrop-filter:blur(8px);position:sticky;top:0;z-index:20}
header.site .wrap{display:flex;align-items:center;gap:24px;height:64px}
.brand{display:flex;align-items:center}
.brand:hover{text-decoration:none}
.brand img{height:46px;width:auto;display:block}
@media(max-width:720px){.brand img{height:38px}}
nav.main{margin-left:auto;display:flex;gap:22px;font-size:.95rem}
nav.main a{color:var(--ink-2);font-weight:500}
nav.main a:hover{color:var(--gold)}
.menu-btn{display:none;margin-left:auto;background:none;border:0;font-size:1.5rem;cursor:pointer;color:var(--ink)}

/* ---- live price hero ---- */
.hero{padding:44px 0 12px}
.eyebrow{font-family:var(--sans);text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:700;color:var(--gold);margin-bottom:6px}
.pricewall{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:22px 0}
.pcard{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:22px 24px;box-shadow:var(--shadow)}
.pcard .metal{font-family:var(--serif);font-size:1.05rem;color:var(--ink-2);display:flex;align-items:center;gap:8px}
.pcard .metal .sw{width:12px;height:12px;border-radius:3px}
.sw.au{background:linear-gradient(135deg,#f3dd94,#b8860b)}
.sw.ag{background:linear-gradient(135deg,#e9edf0,#9aa3ab)}
.pcard .big{font-family:var(--serif);font-variant-numeric:tabular-nums;font-size:clamp(2.1rem,6vw,3.1rem);font-weight:600;margin:6px 0 2px;letter-spacing:-.02em}
.pcard .unit{color:var(--ink-2);font-size:.9rem}
.chg{display:inline-flex;align-items:center;gap:5px;font-weight:600;font-size:.95rem;margin-top:8px;font-variant-numeric:tabular-nums}
.chg.up{color:var(--up)}.chg.down{color:var(--down)}
.chg .arw{font-size:.85em}
.stamp{font-size:.8rem;color:var(--ink-2);margin-top:6px}
.pcard .big{transition:color .35s ease;will-change:contents}
.pcard.flash-up{animation:flashUp 1.2s ease-out}
.pcard.flash-down{animation:flashDown 1.2s ease-out}
.pcard.flash-up .big{animation:inkUp 1.2s ease-out}
.pcard.flash-down .big{animation:inkDown 1.2s ease-out}
@keyframes flashUp{
  0%{box-shadow:0 0 0 0 rgba(28,125,77,0),var(--shadow)}
  18%{box-shadow:0 0 0 3px rgba(28,125,77,.32),0 10px 34px rgba(28,125,77,.20)}
  100%{box-shadow:var(--shadow)}
}
@keyframes flashDown{
  0%{box-shadow:0 0 0 0 rgba(178,59,59,0),var(--shadow)}
  18%{box-shadow:0 0 0 3px rgba(178,59,59,.30),0 10px 34px rgba(178,59,59,.18)}
  100%{box-shadow:var(--shadow)}
}
@keyframes inkUp{0%{color:var(--ink)}18%{color:var(--up)}100%{color:var(--ink)}}
@keyframes inkDown{0%{color:var(--ink)}18%{color:var(--down)}100%{color:var(--ink)}}
@media(prefers-reduced-motion:reduce){
  .pcard.flash-up,.pcard.flash-down,.pcard.flash-up .big,.pcard.flash-down .big{animation:none}
}
.live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--up);margin-right:6px;animation:pulse 2s infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.3}}

/* ---- tables ---- */
.tbl-wrap{overflow-x:auto;margin:18px 0;border:1px solid var(--line);border-radius:14px;background:var(--card)}
table{border-collapse:collapse;width:100%;font-variant-numeric:tabular-nums}
th,td{padding:13px 16px;text-align:right;border-bottom:1px solid var(--line);font-size:.96rem}
th:first-child,td:first-child{text-align:left}
thead th{background:var(--gold-soft);color:var(--ink);font-family:var(--sans);font-weight:700;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em}
tbody tr:last-child td{border-bottom:0}
tbody tr:hover{background:#fdfaf2}
td .k{font-family:var(--serif);font-weight:600}

/* ---- money / ira band ---- */
.band{background:linear-gradient(180deg,#fffdf7,#f7efdb);border:1px solid var(--gold-soft);border-radius:18px;padding:30px;margin:34px 0}
.band h2{margin-top:0}
.btn{display:inline-block;background:var(--ink);color:#fff;padding:12px 22px;border-radius:999px;font-weight:600;font-size:.95rem;margin-top:8px}
.btn:hover{background:var(--gold);text-decoration:none}
.btn.gold{background:var(--gold)}.btn.gold:hover{background:var(--ink)}

/* ---- calculator ---- */
.calc{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:24px;box-shadow:var(--shadow);margin:22px 0}
.calc .row{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end}
.field{flex:1;min-width:140px}
label{display:block;font-size:.82rem;font-weight:600;color:var(--ink-2);margin-bottom:5px}
input,select{width:100%;padding:11px 13px;border:1px solid var(--line);border-radius:10px;font-size:1rem;background:#fff;font-family:var(--sans);color:var(--ink)}
input:focus,select:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-soft)}
.result{margin-top:18px;padding:18px;background:var(--gold-soft);border-radius:12px;font-family:var(--serif);font-size:1.6rem;font-weight:600;text-align:center}

/* ---- editorial content ---- */
.prose{max-width:70ch}
.prose h2,.prose h3{max-width:none}
.faq{border-top:1px solid var(--line);margin-top:8px}
.faq details{border-bottom:1px solid var(--line);padding:6px 0}
.faq summary{font-family:var(--serif);font-weight:600;cursor:pointer;padding:12px 0;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::before{content:"+";color:var(--gold);font-weight:700;margin-right:10px}
.faq details[open] summary::before{content:"–"}

.trust{font-size:.85rem;color:var(--ink-2);border-left:3px solid var(--gold);padding:4px 0 4px 14px;margin:20px 0}

/* ---- ad slot (after answer only) ---- */
.ad{margin:28px 0;min-height:90px;display:flex;align-items:center;justify-content:center;background:repeating-linear-gradient(45deg,#f6f1e4,#f6f1e4 10px,#f2ecdd 10px,#f2ecdd 20px);border-radius:10px;color:#b3a988;font-size:.8rem;letter-spacing:.1em}

/* ---- related links ---- */
.grid-links{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;margin:18px 0}
.grid-links a{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:14px 16px;color:var(--ink);font-weight:500;display:block}
.grid-links a:hover{border-color:var(--gold);text-decoration:none;box-shadow:var(--shadow)}
.grid-links a span{display:block;color:var(--ink-2);font-size:.82rem;font-weight:400;margin-top:2px}

/* ---- footer ---- */
footer.site{border-top:1px solid var(--line);margin-top:50px;padding:34px 0;background:#faf6ec}
footer.site .wrap{display:flex;flex-wrap:wrap;gap:14px 28px;align-items:center}
footer.site a{color:var(--ink-2);font-size:.9rem}
footer.site .fbrand{font-family:var(--serif);color:var(--ink);font-weight:600}
.disc{font-size:.78rem;color:#9a927d;margin-top:14px;max-width:var(--maxw)}
.flinks{display:flex;gap:18px;flex-wrap:wrap;margin-left:auto}

/* ---- responsive ---- */
@media(max-width:720px){
  nav.main{display:none}
  .menu-btn{display:block}
  nav.main.open{display:flex;position:absolute;top:64px;left:0;right:0;flex-direction:column;background:var(--paper);border-bottom:1px solid var(--line);padding:14px 20px;gap:14px}
  .pricewall{grid-template-columns:1fr}
  body{font-size:16px}
}
