
:root{
  --maroon:#641015;
  --maroon-dark:#3a080b;
  --cream:#f4efe8;
  --paper:#fbf8f2;
  --ink:#1f1b19;
  --muted:#655d57;
  --gold:#c9a15f;
  --line:#e3d7c6;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.6}
h1,h2,h3,.brand-title,.serif{font-family:Georgia,'Times New Roman',serif;font-weight:500;letter-spacing:.03em}
h1{font-size:clamp(2.25rem,5vw,4.8rem);line-height:1.05;margin:0 0 1.1rem}
h2{font-size:clamp(1.9rem,3vw,3rem);line-height:1.1;margin:0 0 1rem}
h3{font-size:1.45rem;margin:.2rem 0 .4rem}
p{margin:.35rem 0 1rem;color:#393431}
a{color:inherit}
.topbar{background:var(--maroon);color:#fff;padding:.5rem 1.5rem;font-size:.95rem;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.header{background:var(--paper);padding:1.25rem 2rem;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:2rem;position:sticky;top:0;z-index:10}
.brand{display:flex;align-items:center;gap:1.1rem;text-decoration:none}
.logo{width:96px;height:96px;object-fit:contain}
.brand-title{font-size:clamp(1.8rem,3vw,3rem);line-height:1;color:var(--ink);font-variant:small-caps}
.tagline{color:var(--maroon);letter-spacing:.08em;font-weight:bold;text-transform:uppercase;font-size:.95rem}
.nav{display:flex;gap:1.2rem;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.nav a{text-decoration:none;text-transform:uppercase;font-family:Georgia,serif;font-weight:bold;font-size:.92rem;padding:.3rem 0;border-bottom:2px solid transparent}
.nav a:hover,.nav a.active{color:var(--maroon);border-bottom-color:var(--maroon)}
.hero{background:linear-gradient(90deg,#eee7de 0%,#fbf8f2 100%);padding:4.5rem 7vw;display:grid;grid-template-columns:1.2fr .8fr;gap:3rem;align-items:center}
.hero p{font-size:1.15rem;max-width:720px}
.hero-logo{width:min(420px,90%);margin:auto;display:block}
.decor{display:flex;align-items:center;gap:1rem;margin:1.5rem 0;color:var(--gold)}
.decor:before,.decor:after{content:"";height:1px;background:var(--gold);flex:1;max-width:150px}
.btns{display:flex;gap:1rem;flex-wrap:wrap;margin-top:1.6rem}
.btn{display:inline-block;text-decoration:none;border:2px solid var(--maroon);padding:.85rem 1.5rem;font-weight:bold;text-transform:uppercase;font-family:Georgia,serif;letter-spacing:.04em}
.btn.primary{background:var(--maroon);color:#fff}
.btn:hover{transform:translateY(-1px)}
.band{background:var(--maroon);color:#fff;text-align:center;padding:1.4rem 7vw;font-family:Georgia,serif;font-size:clamp(1.25rem,2vw,2rem);letter-spacing:.04em}
.section{padding:4rem 7vw}
.section.alt{background:var(--cream)}
.section.dark{background:#201d1b;color:#fff}
.section.dark p{color:#e8dfd4}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}
.grid.two{grid-template-columns:repeat(2,1fr)}
.card{background:rgba(255,255,255,.55);border:1px solid var(--line);padding:2rem;min-height:100%}
.card.darkcard{background:#2b2724;border-color:#4a4038}
.icon{font-size:2.5rem;color:var(--maroon);line-height:1}
.kicker{text-transform:uppercase;color:var(--maroon);font-weight:bold;letter-spacing:.12em;font-size:.85rem;margin-bottom:.6rem}
.dark .kicker{color:var(--gold)}
.price-table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);overflow:hidden}
.price-table th,.price-table td{padding:.9rem;border-bottom:1px solid var(--line);text-align:left}
.price-table th{background:var(--maroon);color:#fff;font-family:Georgia,serif}
.note{border-left:4px solid var(--gold);padding:1rem;background:#fff8ee;color:#4b4035}
.founder{display:grid;grid-template-columns:.7fr 1.3fr;gap:3rem;align-items:center}
.founder img{width:100%;border-radius:2px;box-shadow:0 18px 40px rgba(0,0,0,.18)}
.footer{background:#222;color:#eee;padding:1.5rem 7vw;text-align:center;font-family:Georgia,serif}
.footer a{margin:0 .5rem;text-decoration:none}
.small{font-size:.9rem;color:var(--muted)}
@media(max-width:900px){
  .header{position:relative;align-items:flex-start;flex-direction:column}
  .logo{width:72px;height:72px}
  .hero,.grid,.grid.two,.founder{grid-template-columns:1fr}
  .hero{text-align:left;padding-top:3rem}
  .nav{justify-content:flex-start}
}


/* Integrated WSF updates */
.rss-ticker{display:flex;align-items:center;gap:1rem;background:#161311;color:#fff;border-bottom:1px solid rgba(201,161,95,.45);overflow:hidden;position:sticky;top:0;z-index:20}
.ticker-label{background:var(--gold);color:#1f1b19;font-weight:bold;text-transform:uppercase;letter-spacing:.08em;padding:.55rem .9rem;white-space:nowrap;font-size:.82rem}
.ticker-window{overflow:hidden;flex:1}
.ticker-track{display:inline-flex;gap:3rem;white-space:nowrap;animation:wsfTicker 38s linear infinite;padding:.55rem 0}
.ticker-track span:after{content:" •";color:var(--gold);margin-left:3rem}
.rss-ticker:hover .ticker-track{animation-play-state:paused}
@keyframes wsfTicker{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.support-panel{display:flex;justify-content:space-between;align-items:center;gap:2rem}
.support-panel>div:first-child{max-width:780px}
.report-form{background:#fff;border:1px solid var(--line);padding:2rem;display:grid;gap:1rem;max-width:900px}
.report-form label{font-weight:bold;color:var(--maroon);display:grid;gap:.35rem}
.report-form input,.report-form select,.report-form textarea{width:100%;padding:1rem;border:1px solid var(--line);background:#fff;color:var(--ink);font:inherit}
.report-form textarea{min-height:130px}
.header{top:38px}
@media(max-width:900px){
  .rss-ticker{position:relative;top:auto}
  .header{top:0}
  .support-panel{display:block}
  .ticker-track{animation-duration:30s}
}



/* WSF Institutional Style Rebuild */
:root{--charcoal:#111111;--ivory:#F5F2E9;--paper:#FBFAF5;--gold:#C6A75E;--grey:#6B6B6B;--line:#DDD6C7;--saffron:#D88C1F}
*{box-sizing:border-box}
body{margin:0;background:var(--ivory);color:var(--charcoal);font-family:Inter,Arial,Helvetica,sans-serif;line-height:1.65}
h1,h2,h3,.brand-title,.serif{font-family:Georgia,'Times New Roman',serif;font-weight:500;letter-spacing:.01em}
h1{font-size:clamp(2.4rem,5vw,5.2rem);line-height:1.03;margin:0 0 1.2rem;color:var(--charcoal)}
h2{font-size:clamp(1.9rem,3.4vw,3.4rem);line-height:1.08;margin:0 0 1rem;color:var(--charcoal)}
h3{font-size:1.35rem;margin:.2rem 0 .5rem;color:var(--charcoal)}
p{margin:.35rem 0 1rem;color:#333}a{color:inherit}
.topbar{background:var(--charcoal);color:#eee;padding:.52rem 7vw;font-size:.88rem;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;border-bottom:1px solid rgba(198,167,94,.35)}
.rss-ticker{display:flex;align-items:center;gap:1rem;background:#242424;color:#fff;border-bottom:1px solid rgba(198,167,94,.32);overflow:hidden;position:sticky;top:0;z-index:20}
.ticker-label{background:var(--gold);color:var(--charcoal);font-weight:800;text-transform:uppercase;letter-spacing:.08em;padding:.55rem .9rem;white-space:nowrap;font-size:.76rem}
.ticker-window{overflow:hidden;flex:1}.ticker-track{display:inline-flex;gap:3rem;white-space:nowrap;animation:wsfTicker 42s linear infinite;padding:.55rem 0}.ticker-track span:after{content:" •";color:var(--gold);margin-left:3rem}@keyframes wsfTicker{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.header{background:rgba(245,242,233,.94);backdrop-filter:blur(10px);padding:1rem 7vw;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:2rem;position:sticky;top:37px;z-index:10}
.brand{display:flex;align-items:center;gap:1rem;text-decoration:none}.logo{width:78px;height:78px;object-fit:contain;border-radius:50%;background:transparent;filter:drop-shadow(0 6px 12px rgba(0,0,0,.16))}
.brand-title{font-size:clamp(1.55rem,2.8vw,2.65rem);line-height:1;color:var(--charcoal);font-variant:small-caps}.tagline{color:var(--grey);letter-spacing:.12em;font-weight:800;text-transform:uppercase;font-size:.78rem}
.nav{display:flex;gap:1rem;align-items:center;flex-wrap:wrap;justify-content:flex-end}.nav a{text-decoration:none;text-transform:uppercase;font-family:Inter,Arial,sans-serif;font-weight:800;font-size:.76rem;letter-spacing:.08em;padding:.35rem 0;border-bottom:2px solid transparent;color:#2d2d2d}.nav a:hover,.nav a.active{color:var(--charcoal);border-bottom-color:var(--gold)}
.hero{background:linear-gradient(105deg,rgba(245,242,233,.98),rgba(251,250,245,.86));padding:6rem 7vw;display:grid;grid-template-columns:1.15fr .85fr;gap:4rem;align-items:center;border-bottom:1px solid var(--line)}
.hero p{font-size:1.13rem;max-width:760px;color:#333}.hero-logo{width:min(360px,86%);margin:auto;display:block;filter:drop-shadow(0 30px 45px rgba(0,0,0,.14));opacity:.94}
.decor{display:flex;align-items:center;gap:1rem;margin:1.5rem 0;color:var(--gold)}.decor:before,.decor:after{content:"";height:1px;background:var(--gold);flex:1;max-width:150px}
.btns{display:flex;gap:.85rem;flex-wrap:wrap;margin-top:1.5rem}.btn{display:inline-block;text-decoration:none;border:1px solid var(--charcoal);padding:.82rem 1.25rem;font-weight:900;text-transform:uppercase;font-family:Inter,Arial,sans-serif;letter-spacing:.08em;font-size:.78rem;background:transparent;color:var(--charcoal)}.btn.primary{background:var(--charcoal);color:#fff}.btn:hover{transform:translateY(-1px);border-color:var(--gold)}
.band{background:var(--charcoal);color:#fff;text-align:center;padding:1.65rem 7vw;font-family:Georgia,serif;font-size:clamp(1.2rem,2vw,1.85rem);letter-spacing:.02em;border-top:1px solid rgba(198,167,94,.45);border-bottom:1px solid rgba(198,167,94,.45)}
.section{padding:4.7rem 7vw}.section.alt{background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.section.dark{background:var(--charcoal);color:#fff;border-top:1px solid rgba(198,167,94,.35);border-bottom:1px solid rgba(198,167,94,.35)}.section.dark h1,.section.dark h2,.section.dark h3{color:#fff}.section.dark p{color:#ddd}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.grid.two{grid-template-columns:repeat(2,1fr)}.card{background:rgba(255,255,255,.72);border:1px solid var(--line);padding:2rem;min-height:100%;box-shadow:0 12px 34px rgba(20,20,20,.04)}.section.dark .card,.card.darkcard{background:#1c1c1c;border-color:#3a3a3a;color:#fff}.section.dark .card p,.card.darkcard p{color:#ddd}
.icon{font-size:2.1rem;color:var(--gold);line-height:1}.kicker{text-transform:uppercase;color:var(--gold);font-weight:900;letter-spacing:.16em;font-size:.76rem;margin-bottom:.7rem}
.price-table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line)}.price-table th,.price-table td{padding:.9rem;border-bottom:1px solid var(--line);text-align:left}.price-table th{background:var(--charcoal);color:#fff;font-family:Inter,Arial,sans-serif;text-transform:uppercase;letter-spacing:.08em;font-size:.75rem}
.note{border-left:4px solid var(--gold);padding:1rem;background:#fff;color:#3b3b3b}.founder{display:grid;grid-template-columns:.7fr 1.3fr;gap:3rem;align-items:center}.founder img{width:100%;border-radius:0;box-shadow:0 18px 40px rgba(0,0,0,.16);border:1px solid var(--line)}
.footer{background:#111;color:#eee;padding:1.7rem 7vw;text-align:center;font-family:Inter,Arial,sans-serif;font-size:.86rem;border-top:1px solid rgba(198,167,94,.38)}.footer a{margin:0 .35rem;text-decoration:none;color:#eee}
.support-panel{display:flex;justify-content:space-between;align-items:center;gap:2rem}.support-panel>div:first-child{max-width:780px}.report-form{background:#fff;border:1px solid var(--line);padding:2rem;display:grid;gap:1rem;max-width:900px}.report-form label{font-weight:800;color:var(--charcoal);display:grid;gap:.35rem}.report-form input,.report-form select,.report-form textarea{width:100%;padding:1rem;border:1px solid var(--line);background:#fff;color:var(--charcoal);font:inherit}.report-form textarea{min-height:130px}
.institutional-strip{border-left:4px solid var(--gold);background:#fff;padding:1.5rem}.pillar-row{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.pillar{border-top:3px solid var(--gold);background:#fff;padding:1.4rem;min-height:150px}
@media(max-width:900px){.rss-ticker{position:relative;top:auto}.header{position:relative;top:0;align-items:flex-start;flex-direction:column}.logo{width:68px;height:68px}.hero,.grid,.grid.two,.founder,.pillar-row{grid-template-columns:1fr}.hero{text-align:left;padding-top:3.5rem}.nav{justify-content:flex-start}.support-panel{display:block}.ticker-track{animation-duration:32s}}



/* Final WSF Identity Deployment */
.logo,
.brand .logo {
  background: transparent !important;
  border-radius: 50%;
  object-fit: contain;
  mix-blend-mode: multiply;
  box-shadow: none;
}

.header {
  background: rgba(247,245,242,0.96);
}

body {
  background: #F7F5F2;
}

.hero {
  background:
    linear-gradient(115deg, rgba(247,245,242,.98), rgba(247,245,242,.92)),
    radial-gradient(circle at 82% 18%, rgba(198,168,90,.10), transparent 34%);
}

.section.dark,
.footer {
  background: #151515;
}

.btn.primary,
.price-table th {
  background: #151515;
}

.ticker-label {
  background: #C6A85A;
  color: #111111;
}

.nav a.active,
.nav a:hover {
  border-bottom-color: #C6A85A;
}



/* Price page rebuild */
#wsfiTicker.wsfi-ticker {
  margin-top: 1rem;
  border-radius: 0;
  justify-content: flex-start;
  flex-wrap: wrap;
}

.wsfi-dashboard {
  padding: 0;
  background: transparent;
}

.wsfi-dashboard .wsfi-card,
.wsfi-card {
  box-shadow: 0 12px 34px rgba(20,20,20,.04);
}

#sourceTable td,
#sourceTable th {
  font-size: .9rem;
}

.small {
  font-size: .9rem;
  color: #6B6B6B;
}


/* ══ WSF LOCKED HEADER SYSTEM ═══════════════════════════════════════════════
   Structure on every page:
   1. .locked-price-ticker  — sticky WSFI index feed at very top
   2. .header               — logo + nav (sticky below price ticker)
   3. .locked-news-ticker   — saffron news feed below header
   ═══════════════════════════════════════════════════════════════════════════ */

/* Price ticker */
.locked-price-ticker {
  position: sticky;
  top: 0;
  z-index: 50;
  display: flex;
  align-items: center;
  overflow: hidden;
  min-height: 42px;
  background: linear-gradient(90deg, #120f0d, #1e1a17 45%, #120f0d);
  border-bottom: 1px solid rgba(198,167,94,.38);
  box-shadow: 0 4px 16px rgba(0,0,0,.18);
}

/* News ticker */
.locked-news-ticker {
  display: flex;
  align-items: center;
  overflow: hidden;
  min-height: 38px;
  background: rgba(247,245,242,.96);
  backdrop-filter: blur(8px);
  border-bottom: 1px solid rgba(198,167,94,.22);
  border-top: 1px solid rgba(198,167,94,.12);
}

/* Header offset: sits below the 42px price ticker */
.header { top: 42px; }

/* Shared glass pill label */
.glass-ticker-label {
  flex: 0 0 auto;
  background: rgba(21,21,21,.92);
  color: #fff;
  border-right: 2px solid #C6A85A;
  padding: .48rem .9rem;
  font-weight: 900;
  font-size: .72rem;
  letter-spacing: .11em;
  text-transform: uppercase;
  white-space: nowrap;
  align-self: stretch;
  display: flex;
  align-items: center;
}

.glass-ticker-label.news {
  background: transparent;
  color: var(--charcoal, #111);
  border-right: 2px solid #C6A85A;
}

/* Shared window + track */
.glass-ticker-window {
  overflow: hidden;
  flex: 1;
  min-width: 0;
  position: relative;
}
.glass-ticker-window::before,
.glass-ticker-window::after {
  content: "";
  position: absolute;
  top: 0; bottom: 0;
  width: 40px;
  z-index: 2;
  pointer-events: none;
}
.glass-ticker-window::before {
  left: 0;
  background: linear-gradient(to right, #120f0d, transparent);
}
.glass-ticker-window::after {
  right: 0;
  background: linear-gradient(to left, #120f0d, transparent);
}
.locked-news-ticker .glass-ticker-window::before {
  background: linear-gradient(to right, rgba(247,245,242,.96), transparent);
}
.locked-news-ticker .glass-ticker-window::after {
  background: linear-gradient(to left, rgba(247,245,242,.96), transparent);
}

.glass-ticker-track {
  display: inline-flex;
  width: max-content;
  align-items: center;
  gap: 3rem;
  white-space: nowrap;
  padding: .5rem 0;
  will-change: transform;
}
.wsfi-glass-track {
  animation: wsfGlassScroll 200s linear infinite;
}
.saffron-news-glass-track {
  animation: wsfGlassScroll 65s linear infinite;
}
.locked-price-ticker:hover .glass-ticker-track,
.locked-news-ticker:hover .glass-ticker-track {
  animation-play-state: paused;
}
@keyframes wsfGlassScroll {
  from { transform: translateX(0); }
  to   { transform: translateX(-50%); }
}

/* Price ticker text colours */
.locked-price-ticker .glass-ticker-track span {
  color: #eee4d4;
  font-size: .84rem;
}
.locked-price-ticker .glass-ticker-track strong {
  color: #C6A85A;
}

/* News ticker text colours */
.locked-news-ticker .glass-ticker-track span {
  color: var(--charcoal, #111);
  font-size: .82rem;
}
.locked-news-ticker .glass-ticker-track a {
  color: var(--charcoal, #111);
  text-decoration: none;
}
.locked-news-ticker .glass-ticker-track a:hover {
  text-decoration: underline;
  color: #8a6a2f;
}
.locked-price-ticker .glass-ticker-track span::after,
.locked-news-ticker .glass-ticker-track span::after {
  content: "•";
  color: #C6A85A;
  margin-left: 3rem;
}

/* Hide ALL old ticker systems */
.rss-ticker, .wsf-price-ticker, .wsf-news-ticker,
.ticker-glass-stack, .saffron-news-ticker { display: none !important; }

@media (max-width: 900px) {
  .locked-price-ticker { position: relative; top: auto; min-height: 36px; }
  .locked-news-ticker  { position: relative; }
  .header { top: 0 !important; }
  .glass-ticker-label  { font-size: .66rem; padding: .4rem .65rem; }
  .glass-ticker-track  { gap: 2rem; }
  .locked-price-ticker .glass-ticker-track span,
  .locked-news-ticker .glass-ticker-track span { font-size: .76rem; }
}
