:root{--bg:#0a0a0c;--bg-2:#111116;--bg-3:#18181f;--border:#2a2a35;--border-bright:#3d3d50;--text:#e8e4da;--text-muted:#8a8490;--text-dim:#5a5560;--gold:#c9a84c;--gold-bright:#e8c96a;--gold-dim:#7a6230;--red:#c94444;--red-dim:#7a2828;--green:#44a844;--green-dim:#286028;--accent:#6a8ac9;--font-display:'Playfair Display',Georgia,serif;--font-body:'Crimson Pro',Georgia,serif;--font-mono:'IBM Plex Mono','Courier New',monospace;}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}html{scroll-behavior:smooth;font-size:16px;}body{background-color:var(--bg);color:var(--text);font-family:var(--font-body);font-size:1.1rem;line-height:1.7;min-height:100vh;overflow-x:hidden;}a{color:var(--gold);text-decoration:none;transition:color .2s;}a:hover{color:var(--gold-bright);}img{max-width:100%;display:block;}.noise-overlay{position:fixed;inset:0;pointer-events:none;z-index:1000;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:200px;}.site-header{position:sticky;top:0;z-index:100;background:rgba(10,10,12,.96);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);}.header-inner{max-width:1400px;margin:0 auto;padding:0 2rem;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;min-height:80px;}.header-eyebrow{display:flex;align-items:center;gap:1.5rem;font-family:var(--font-mono);font-size:.7rem;color:var(--text-muted);letter-spacing:.1em;text-transform:uppercase;}.live-indicator{display:flex;align-items:center;gap:.4rem;color:var(--gold);}.pulse{width:6px;height:6px;border-radius:50%;background:var(--gold);animation:pulse 2s ease-in-out infinite;}@keyframes pulse{0%,100%{opacity:1;transform:scale(1);}50%{opacity:.4;transform:scale(1.5);}}.site-logo{text-align:center;text-decoration:none;display:block;line-height:1;}.logo-the{display:block;font-family:var(--font-mono);font-size:.65rem;letter-spacing:.3em;color:var(--gold);margin-bottom:.2rem;}.logo-main{display:block;font-family:var(--font-display);font-size:1.5rem;font-weight:900;color:var(--text);letter-spacing:-.02em;line-height:1;}.logo-sub{display:block;font-family:var(--font-mono);font-size:.55rem;letter-spacing:.15em;color:var(--text-dim);margin-top:.3rem;text-transform:uppercase;}.site-nav{display:flex;justify-content:flex-end;gap:.25rem;}.nav-link{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);padding:.4rem .75rem;border:1px solid transparent;border-radius:2px;transition:all .2s;}.nav-link:hover,.nav-link.active{color:var(--gold);border-color:var(--gold-dim);background:rgba(201,168,76,.05);}.nav-toggle{display:none;background:none;border:1px solid var(--border);color:var(--text);padding:.4rem .6rem;cursor:pointer;font-size:1.2rem;}.site-main{min-height:calc(100vh - 80px);}.page-hero{border-bottom:1px solid var(--border);padding:4rem 2rem 3rem;max-width:1400px;margin:0 auto;}.page-hero .eyebrow{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:1rem;}.page-hero h1{font-family:var(--font-display);font-size:clamp(2.5rem,6vw,5rem);font-weight:900;line-height:1;letter-spacing:-.03em;margin-bottom:1rem;color:var(--text);}.page-hero .subtitle{font-size:1.2rem;color:var(--text-muted);max-width:60ch;font-style:italic;}.container{max-width:1400px;margin:0 auto;padding:0 2rem;}.section{padding:3rem 0;}.section + .section{border-top:1px solid var(--border);}.section-label{font-family:var(--font-mono);font-size:.65rem;letter-spacing:.25em;text-transform:uppercase;color:var(--gold);margin-bottom:1.5rem;display:flex;align-items:center;gap:1rem;}.section-label::after{content:'';flex:1;height:1px;background:var(--border);}h2{font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2.5rem);font-weight:700;letter-spacing:-.02em;margin-bottom:1.5rem;color:var(--text);}h3{font-family:var(--font-display);font-size:1.4rem;font-weight:700;margin-bottom:.75rem;color:var(--text);}.wealth-banner{background:var(--bg-2);border-bottom:1px solid var(--border);padding:2rem;}.wealth-banner-inner{max-width:1400px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1px;background:var(--border);}.wealth-stat{background:var(--bg-2);padding:1.5rem 2rem;position:relative;}.wealth-stat .stat-label{font-family:var(--font-mono);font-size:.65rem;letter-spacing:.15em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.4rem;}.wealth-stat .stat-value{font-family:var(--font-mono);font-size:1.8rem;font-weight:500;color:var(--gold);letter-spacing:-.02em;}.wealth-stat .stat-source{font-family:var(--font-mono);font-size:.6rem;color:var(--text-dim);margin-top:.3rem;}.map-section{padding:0;background:var(--bg-2);border-bottom:1px solid var(--border);}.map-header{max-width:1400px;margin:0 auto;padding:2rem 2rem 1rem;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;}.map-header h2{margin:0;}.map-legend{display:flex;gap:1.5rem;flex-wrap:wrap;}.legend-item{display:flex;align-items:center;gap:.4rem;font-family:var(--font-mono);font-size:.65rem;color:var(--text-muted);letter-spacing:.05em;text-transform:uppercase;}.legend-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;}#connections-map{width:100%;height:520px;background:#0d0d14;}.map-controls{max-width:1400px;margin:0 auto;padding:.75rem 2rem;display:flex;gap:.5rem;flex-wrap:wrap;}.map-filter-btn{font-family:var(--font-mono);font-size:.65rem;letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--border);background:transparent;color:var(--text-muted);padding:.3rem .8rem;border-radius:2px;cursor:pointer;transition:all .2s;}.map-filter-btn:hover,.map-filter-btn.active{border-color:var(--gold);color:var(--gold);background:rgba(201,168,76,.07);}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1px;background:var(--border);border:1px solid var(--border);}.card{background:var(--bg-2);padding:1.75rem;transition:background .2s;position:relative;overflow:hidden;text-decoration:none;color:inherit;display:block;}.card:hover{background:var(--bg-3);}.card::before{content:'';position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--gold-dim);opacity:0;transition:opacity .2s;}.card:hover::before{opacity:1;}.card-category{font-family:var(--font-mono);font-size:.6rem;letter-spacing:.15em;text-transform:uppercase;color:var(--gold);margin-bottom:.6rem;}.card-title{font-family:var(--font-display);font-size:1.15rem;font-weight:700;margin-bottom:.5rem;color:var(--text);line-height:1.3;}.card-value{font-family:var(--font-mono);font-size:1.1rem;color:var(--gold);margin-bottom:.5rem;}.card-location{font-family:var(--font-mono);font-size:.65rem;color:var(--text-dim);letter-spacing:.05em;text-transform:uppercase;}.card-desc{font-size:.95rem;color:var(--text-muted);margin-top:.75rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}.controversy-badge{display:inline-flex;align-items:center;gap:.25rem;font-family:var(--font-mono);font-size:.6rem;letter-spacing:.08em;text-transform:uppercase;padding:.2rem .5rem;border-radius:2px;margin-top:.75rem;}.controversy-0{background:transparent;color:var(--text-dim);border:1px solid var(--border);}.controversy-1{background:rgba(201,168,76,.1);color:var(--gold);border:1px solid var(--gold-dim);}.controversy-2{background:rgba(201,100,44,.1);color:#c97844;border:1px solid #7a4828;}.controversy-3{background:rgba(201,68,68,.1);color:var(--red);border:1px solid var(--red-dim);}.chart-container{background:var(--bg-2);border:1px solid var(--border);padding:2rem;position:relative;}.chart-canvas-wrap{position:relative;height:320px;}.timeline{position:relative;padding-left:2rem;}.timeline::before{content:'';position:absolute;left:0;top:0;bottom:0;width:1px;background:var(--border);}.timeline-item{position:relative;padding-bottom:2.5rem;padding-left:1.5rem;}.timeline-item::before{content:'';position:absolute;left:-2rem;top:.5rem;width:8px;height:8px;border-radius:50%;background:var(--gold-dim);border:2px solid var(--bg);transition:background .2s;}.timeline-item:hover::before{background:var(--gold);}.timeline-date{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.1em;color:var(--gold);margin-bottom:.3rem;text-transform:uppercase;}.timeline-headline{font-family:var(--font-display);font-size:1.1rem;font-weight:700;margin-bottom:.4rem;color:var(--text);}.timeline-body{font-size:.95rem;color:var(--text-muted);}.timeline-impact{font-family:var(--font-mono);font-size:.7rem;margin-top:.5rem;padding:.2rem .5rem;display:inline-block;border-radius:2px;}.impact-positive{background:rgba(68,168,68,.1);color:var(--green);border:1px solid var(--green-dim);}.impact-negative{background:rgba(201,68,68,.1);color:var(--red);border:1px solid var(--red-dim);}.type-badge{font-family:var(--font-mono);font-size:.6rem;letter-spacing:.1em;text-transform:uppercase;padding:.15rem .5rem;border-radius:2px;display:inline-block;margin-bottom:.5rem;}.type-family{background:rgba(106,138,201,.1);color:var(--accent);border:1px solid #3a4e7a;}.type-foreign_government{background:rgba(201,68,68,.1);color:var(--red);border:1px solid var(--red-dim);}.type-business_partner{background:rgba(201,168,76,.1);color:var(--gold);border:1px solid var(--gold-dim);}.type-political_ally{background:rgba(106,138,201,.08);color:#8aa0cc;border:1px solid #2a3a5a;}.type-legal{background:rgba(160,80,80,.1);color:#c08080;border:1px solid #7a4040;}.type-media{background:rgba(120,120,120,.1);color:#aaa;border:1px solid #444;}.detail-layout{display:grid;grid-template-columns:1fr 340px;gap:3rem;max-width:1400px;margin:0 auto;padding:3rem 2rem;}.detail-sidebar{display:flex;flex-direction:column;gap:1.5rem;}.sidebar-card{background:var(--bg-2);border:1px solid var(--border);padding:1.5rem;}.sidebar-card h4{font-family:var(--font-mono);font-size:.65rem;letter-spacing:.15em;text-transform:uppercase;color:var(--gold);margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--border);}.sidebar-row{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;padding:.4rem 0;border-bottom:1px solid rgba(42,42,53,.5);font-size:.9rem;}.sidebar-row:last-child{border-bottom:none;}.sidebar-row .label{color:var(--text-muted);font-size:.85rem;}.sidebar-row .value{font-family:var(--font-mono);font-size:.85rem;color:var(--text);text-align:right;}.sidebar-row .value.gold{color:var(--gold);}.detail-mini-map{height:240px;border:1px solid var(--border);background:#0d0d14;}.tracker-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;}.breakdown-table{width:100%;border-collapse:collapse;font-size:.9rem;}.breakdown-table th{font-family:var(--font-mono);font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);text-align:left;padding:.75rem 1rem;border-bottom:1px solid var(--border);background:var(--bg-3);}.breakdown-table td{padding:.75rem 1rem;border-bottom:1px solid rgba(42,42,53,.5);vertical-align:top;}.breakdown-table tr:hover td{background:rgba(255,255,255,.02);}.breakdown-table .td-name{font-weight:600;color:var(--text);}.breakdown-table .td-value{font-family:var(--font-mono);color:var(--gold);white-space:nowrap;}.breakdown-table .td-cat{font-family:var(--font-mono);font-size:.6rem;color:var(--text-dim);text-transform:uppercase;letter-spacing:.08em;}.bar-chart{display:flex;flex-direction:column;gap:.6rem;}.bar-row{display:flex;flex-direction:column;gap:.2rem;}.bar-label-row{display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:.65rem;color:var(--text-muted);}.bar-track{height:6px;background:var(--bg-3);border-radius:3px;overflow:hidden;}.bar-fill{height:100%;background:linear-gradient(90deg,var(--gold-dim),var(--gold));border-radius:3px;transition:width 1s ease;}.sources-list{display:flex;flex-direction:column;gap:1rem;}.source-item{background:var(--bg-2);border:1px solid var(--border);border-left:3px solid var(--gold-dim);padding:1.25rem;}.source-item h4{font-family:var(--font-display);margin-bottom:.25rem;}.source-item p{font-size:.9rem;color:var(--text-muted);}.site-footer{background:var(--bg-2);border-top:1px solid var(--border);padding:2.5rem 2rem;margin-top:4rem;}.footer-inner{max-width:1400px;margin:0 auto;}.footer-disclaimer{font-size:.85rem;color:var(--text-muted);line-height:1.6;border-bottom:1px solid var(--border);padding-bottom:1.5rem;margin-bottom:1.5rem;font-style:italic;}.footer-links{display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:.65rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);}.leaflet-container{background:#0d0d14 !important;}.leaflet-tile{filter:brightness(.35) saturate(.4) hue-rotate(200deg);}.leaflet-popup-content-wrapper{background:var(--bg-2);border:1px solid var(--border);border-radius:2px;color:var(--text);box-shadow:0 8px 32px rgba(0,0,0,.6);}.leaflet-popup-tip{background:var(--bg-2);}.leaflet-popup-content{font-family:var(--font-body);}.leaflet-popup-content h4{font-family:var(--font-display);font-size:1rem;color:var(--text);margin-bottom:.3rem;}.leaflet-popup-content p{font-size:.85rem;color:var(--text-muted);margin:.2rem 0;}.leaflet-popup-content .popup-val{font-family:var(--font-mono);font-size:.8rem;color:var(--gold);margin-top:.4rem;}.leaflet-popup-content a{font-family:var(--font-mono);font-size:.65rem;letter-spacing:.08em;text-transform:uppercase;color:var(--gold);display:inline-block;margin-top:.5rem;}@media (max-width:900px){.header-inner{grid-template-columns:1fr auto;padding:1rem;}.site-nav{display:none;flex-direction:column;position:absolute;top:80px;left:0;right:0;background:var(--bg-2);border-bottom:1px solid var(--border);padding:1rem;}.site-nav.open{display:flex;}.nav-toggle{display:block;}.header-eyebrow{display:none;}.detail-layout{grid-template-columns:1fr;}.tracker-grid{grid-template-columns:1fr;}#connections-map{height:350px;}}@media (max-width:600px){.wealth-banner-inner{grid-template-columns:1fr 1fr;}.card-grid{grid-template-columns:1fr;}.logo-main{font-size:1.1rem;}}.site-main{animation:fadeIn .4s ease;}@keyframes fadeIn{from{opacity:0;transform:translateY(8px);}to{opacity:1;transform:translateY(0);}}.text-gold{color:var(--gold);}.text-muted{color:var(--text-muted);}.text-mono{font-family:var(--font-mono);}.text-center{text-align:center;}.mt-1{margin-top:.5rem;}.mt-2{margin-top:1rem;}.mt-3{margin-top:2rem;}.mb-2{margin-bottom:1rem;}.mb-3{margin-bottom:2rem;}.divider{border:none;border-top:1px solid var(--border);margin:2rem 0;}.photo-hero{position:relative;width:100%;height:clamp(480px,70vh,760px);overflow:hidden;display:flex;align-items:flex-end;}.photo-hero-bg{position:absolute;inset:0;background-size:cover;background-position:center top;background-repeat:no-repeat;transform:scale(1.03);transition:transform 8s ease;filter:brightness(.75) contrast(1.05);}.photo-hero:hover .photo-hero-bg{transform:scale(1.0);}.photo-hero-overlay{position:absolute;inset:0;background:linear-gradient(to right,rgba(10,10,12,.92) 0%,rgba(10,10,12,.55) 45%,rgba(10,10,12,.1) 100%),linear-gradient(to top,rgba(10,10,12,.98) 0%,rgba(10,10,12,.4) 40%,transparent 70%);}.photo-hero-content{position:relative;z-index:2;max-width:1400px;width:100%;margin:0 auto;padding:3rem 2rem 4rem;display:flex;flex-direction:column;gap:1rem;}.photo-hero-title{font-family:var(--font-display);font-size:clamp(3rem,8vw,7rem);font-weight:900;line-height:.95;letter-spacing:-.04em;color:#fff;text-shadow:0 2px 40px rgba(0,0,0,.6);max-width:55%;}.photo-hero-sub{font-family:var(--font-body);font-size:clamp(.95rem,1.5vw,1.15rem);color:rgba(232,228,218,.8);max-width:42ch;line-height:1.7;font-style:italic;}.photo-hero-stats{display:flex;align-items:center;gap:0;margin-top:.5rem;background:rgba(10,10,12,.55);border:1px solid rgba(201,168,76,.25);backdrop-filter:blur(8px);width:fit-content;}.phs-item{display:flex;flex-direction:column;gap:.2rem;padding:.9rem 1.75rem;}.phs-val{font-family:var(--font-mono);font-size:1.4rem;font-weight:500;color:var(--gold);letter-spacing:-.02em;}.phs-label{font-family:var(--font-mono);font-size:.58rem;letter-spacing:.15em;text-transform:uppercase;color:var(--text-muted);}.phs-divider{width:1px;height:48px;background:rgba(201,168,76,.2);flex-shrink:0;}.photo-hero-credit{position:absolute;bottom:.6rem;right:1rem;font-family:var(--font-mono);font-size:.5rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.25);z-index:3;}.inner-portrait-strip{background:var(--bg-2);border-bottom:1px solid var(--border);overflow:hidden;}.ips-inner{max-width:1400px;margin:0 auto;display:flex;align-items:stretch;min-height:120px;}.ips-portrait-wrap{width:200px;flex-shrink:0;position:relative;overflow:hidden;}.ips-portrait{width:100%;height:100%;object-fit:cover;object-position:75% top;display:block;filter:brightness(.7) saturate(.85);}.ips-portrait-overlay{position:absolute;inset:0;background:linear-gradient( to right,transparent 0%,transparent 50%,var(--bg-2) 100% );}.ips-text{display:flex;flex-direction:column;justify-content:center;padding:1.5rem 2rem;gap:.3rem;}.ips-eyebrow{font-family:var(--font-mono);font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);}.ips-title{font-family:var(--font-display);font-size:clamp(1.4rem,3vw,2rem);font-weight:900;color:var(--text);letter-spacing:-.02em;line-height:1.1;}@media (max-width:768px){.photo-hero{height:clamp(400px,80vw,540px);}.photo-hero-title{max-width:90%;font-size:clamp(2.5rem,10vw,4rem);}.photo-hero-sub{max-width:100%;}.photo-hero-stats{flex-wrap:wrap;}.phs-divider{display:none;}.phs-item{padding:.75rem 1.25rem;}.ips-portrait-wrap{width:120px;}}@media (max-width:480px){.ips-portrait-wrap{display:none;}}.photo-hero-bg{background-image:url('../img/hero.webp');background-image:-webkit-image-set( url('../img/hero.webp') 1x,url('../img/hero@2x.webp') 2x );background-image:image-set( url('../img/hero.webp') 1x,url('../img/hero@2x.webp') 2x );}.ips-portrait{image-rendering:auto;}

@keyframes goldShimmer {
    0%   { background-position: -200% center; }
    100% { background-position:  200% center; }
}
@keyframes glint {
    0%, 90%, 100% { opacity: 0; transform: translateX(-100%) skewX(-20deg); }
    95%           { opacity: .6; transform: translateX(400%) skewX(-20deg); }
}
@keyframes float {
    0%, 100% { transform: translateY(0); }
    50%       { transform: translateY(-6px); }
}
@keyframes borderGlow {
    0%, 100% { box-shadow: 0 0 8px rgba(201,168,76,.2), 0 0 20px rgba(201,168,76,.05); }
    50%       { box-shadow: 0 0 16px rgba(201,168,76,.5), 0 0 40px rgba(201,168,76,.15); }
}

.site-header {
    background: linear-gradient(180deg, #07070a 0%, #0d0c10 100%);
    border-bottom: none;
    box-shadow:
        0 1px 0 #c9a84c,
        0 2px 0 rgba(201,168,76,.2),
        0 8px 32px rgba(0,0,0,.6);
}

.site-header::after {
    content: '';
    position: absolute;
    bottom: 0; left: 0; right: 0;
    height: 1px;
    background: linear-gradient(90deg,
        transparent 0%,
        #c9a84c 20%,
        #f5e090 50%,
        #c9a84c 80%,
        transparent 100%
    );
    background-size: 200% 100%;
    animation: goldShimmer 4s linear infinite;
}

.logo-main {
    background: linear-gradient(135deg,
        #7a6030 0%,
        #c9a84c 25%,
        #f5e090 50%,
        #c9a84c 75%,
        #7a6030 100%
    );
    background-size: 200% auto;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    animation: goldShimmer 5s linear infinite;
    filter: drop-shadow(0 2px 8px rgba(201,168,76,.3));
}

.logo-the {
    letter-spacing: .4em;
    font-size: .6rem;
}

.nav-link {
    position: relative;
    overflow: hidden;
}
.nav-link::before {
    content: '';
    position: absolute;
    top: 0; left: -100%;
    width: 40%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(201,168,76,.08), transparent);
    transition: left .4s ease;
}
.nav-link:hover::before { left: 150%; }
.nav-link:hover {
    box-shadow: inset 0 -1px 0 var(--gold);
    text-shadow: 0 0 12px rgba(201,168,76,.4);
}

.photo-hero {
    border-bottom: 1px solid rgba(201,168,76,.3);
}
.photo-hero::after {
    content: '';
    position: absolute;
    inset: 0;
    background:
        linear-gradient(to bottom, rgba(201,168,76,.04) 0%, transparent 30%),
        linear-gradient(to top, rgba(10,10,12,1) 0%, transparent 40%);
    pointer-events: none;
    z-index: 1;
}
.photo-hero-content { z-index: 2; }

.photo-hero-content::before {
    content: '';
    display: block;
    width: 60px;
    height: 2px;
    background: linear-gradient(90deg, transparent, var(--gold), transparent);
    margin-bottom: 1rem;
}

.photo-hero-title {
    text-shadow:
        0 2px 40px rgba(0,0,0,.8),
        0 0 80px rgba(201,168,76,.15);
}

.wealth-banner {
    background: var(--bg-2);
    border-top: 1px solid rgba(201,168,76,.15);
    border-bottom: 1px solid rgba(201,168,76,.15);
}
.wealth-stat {
    position: relative;
    overflow: hidden;
}
.wealth-stat::after {
    content: '';
    position: absolute;
    top: 0; left: -60%;
    width: 40%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(201,168,76,.05), transparent);
    animation: glint 6s ease-in-out infinite;
}
.wealth-stat:nth-child(2)::after { animation-delay: 1.2s; }
.wealth-stat:nth-child(3)::after { animation-delay: 2.4s; }
.wealth-stat:nth-child(4)::after { animation-delay: 3.6s; }
.wealth-stat:nth-child(5)::after { animation-delay: 4.8s; }

.stat-value {
    background: linear-gradient(135deg, #7a6030, #c9a84c, #f5e090, #c9a84c, #7a6030);
    background-size: 200% auto;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    animation: goldShimmer 4s linear infinite;
    font-size: 2rem;
}

.card {
    border: 1px solid transparent;
    transition: border-color .2s, background .2s, box-shadow .2s;
}
.card:hover {
    border-color: rgba(201,168,76,.2);
    box-shadow: 0 0 0 1px rgba(201,168,76,.1), 0 8px 32px rgba(0,0,0,.3);
}

.section-label {
    position: relative;
}
.section-label::before {
    content: '◆';
    margin-right: .5rem;
    font-size: .5rem;
    color: var(--gold);
    vertical-align: middle;
}

.timeline-item::before {
    transition: background .2s, box-shadow .2s;
}
.timeline-item:hover::before {
    background: var(--gold) !important;
    box-shadow: 0 0 8px var(--gold);
}

.bar-fill {
    background: linear-gradient(90deg,
        var(--gold-dim) 0%,
        var(--gold) 40%,
        var(--gold-bright) 60%,
        var(--gold) 80%,
        var(--gold-dim) 100%
    );
    background-size: 200% 100%;
    animation: goldShimmer 3s linear infinite;
}

.inner-portrait-strip {
    border-bottom: 1px solid rgba(201,168,76,.2);
    position: relative;
}
.inner-portrait-strip::after {
    content: '';
    position: absolute;
    bottom: 0; left: 0; right: 0;
    height: 1px;
    background: linear-gradient(90deg,
        transparent,
        rgba(201,168,76,.4) 30%,
        rgba(245,224,144,.6) 50%,
        rgba(201,168,76,.4) 70%,
        transparent
    );
}
.ips-eyebrow {
    letter-spacing: .3em;
    font-size: .55rem;
}

.btn-buy {
    animation: borderGlow 2.5s ease-in-out infinite;
    position: relative;
    overflow: hidden;
}
.btn-buy::before {
    content: '';
    position: absolute;
    top: 0; left: -60%;
    width: 35%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,.25), transparent);
    animation: glint 3s ease-in-out infinite;
}
.btn-buy:hover {
    animation: none;
    box-shadow: 0 0 20px rgba(201,168,76,.6), 0 0 40px rgba(201,168,76,.2);
}

.nw-counter-value {
    background: linear-gradient(135deg, #7a6030, #c9a84c, #f5e090, #c9a84c, #7a6030);
    background-size: 200% auto;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    animation: goldShimmer 3s linear infinite;
}

.store-card::after {
    background: linear-gradient(90deg, transparent, var(--gold), transparent);
}

.site-footer {
    border-top: none;
    position: relative;
}
.site-footer::before {
    content: '';
    display: block;
    height: 2px;
    background: linear-gradient(90deg,
        transparent,
        #7a6030 15%,
        #c9a84c 35%,
        #f5e090 50%,
        #c9a84c 65%,
        #7a6030 85%,
        transparent
    );
    margin-bottom: 0;
}

.tariff-stats {
    background-color: var(--border);
}
.ts-box {
    position: relative;
    overflow: hidden;
}
.ts-box::after {
    content: '';
    position: absolute;
    top: 0; left: -60%;
    width: 40%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(201,168,76,.04), transparent);
    animation: glint 7s ease-in-out infinite;
}

#scroll-progress {
    position: fixed;
    top: 0; left: 0;
    width: 0%;
    height: 2px;
    z-index: 9999;
    background: linear-gradient(90deg, #7a6030, #c9a84c, #f5e090, #c9a84c);
    background-size: 200% 100%;
    animation: goldShimmer 2s linear infinite;
    transition: width .1s linear;
    pointer-events: none;
}

.sparkle {
    position: fixed;
    pointer-events: none;
    z-index: 8888;
    font-size: 1rem;
    animation: sparkleFall 1.2s ease-out forwards;
}
@keyframes sparkleFall {
    0%   { opacity: 1; transform: translateY(0) scale(1) rotate(0deg); }
    100% { opacity: 0; transform: translateY(80px) scale(.2) rotate(360deg); }
}

.stat-value {
    display: inline-block;
}
.wealth-stat:hover .stat-value {
    animation: goldShimmer 1s linear infinite, float 2s ease-in-out infinite;
}

.page-hero h1 {
    position: relative;
    display: inline-block;
}
.page-hero h1::after {
    content: '';
    position: absolute;
    bottom: -.15em;
    left: 0;
    width: 100%;
    height: 2px;
    background: linear-gradient(90deg, var(--gold-dim), var(--gold), transparent);
    transform: scaleX(.4);
    transform-origin: left;
    transition: transform .4s ease;
}
.page-hero:hover h1::after { transform: scaleX(1); }

.map-section {
    border-top: 1px solid rgba(201,168,76,.12);
    border-bottom: 1px solid rgba(201,168,76,.12);
}

.sidebar-card {
    position: relative;
    transition: border-color .2s;
}
.sidebar-card::before {
    content: '';
    position: absolute;
    left: 0; top: 0; bottom: 0;
    width: 2px;
    background: linear-gradient(to bottom, transparent, var(--gold), transparent);
    opacity: 0;
    transition: opacity .2s;
}
.sidebar-card:hover { border-color: rgba(201,168,76,.3); }
.sidebar-card:hover::before { opacity: 1; }

.trump-quote-block {
    position: relative;
    overflow: hidden;
}
.trump-quote-block::before {
    content: '"';
    position: absolute;
    top: -.2em;
    left: .3rem;
    font-family: var(--font-display);
    font-size: 4rem;
    color: rgba(201,168,76,.08);
    line-height: 1;
    pointer-events: none;
}

.cat-nav a.active-cat,
.cat-nav a:hover {
    background: rgba(201,168,76,.06);
    border-bottom: 1px solid var(--gold);
}

.logo-brand {
    display: block;
    font-family: var(--font-mono);
    font-size: .65rem;
    letter-spacing: .22em;
    text-transform: uppercase;
    color: var(--gold-dim);
    margin-bottom: .15rem;
    position: relative;
    transition: letter-spacing .3s ease;
}

.logo-brand-dot {
    color: var(--gold-bright);
    font-size: .9em;
}

.logo-brand::before {
    content: '♛';
    margin-right: .35rem;
    font-size: .75em;
    color: var(--gold);
    opacity: .7;
    vertical-align: middle;
    animation: goldShimmer 6s linear infinite;
    background: linear-gradient(135deg, #7a6030, #c9a84c, #f5e090, #c9a84c, #7a6030);
    background-size: 200% auto;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.site-logo:hover .logo-brand {
    letter-spacing: .28em;
    color: var(--gold);
}

.logo-sub {
    font-style: italic;
    opacity: .8;
    transition: opacity .2s;
}
.site-logo:hover .logo-sub { opacity: 1; color: var(--gold-dim); }

.wealth-banner {
    position: relative;
}
.wealth-banner::before {
    content: 'PEOPLE\'S BILLIONAIRE™';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(-8deg);
    font-family: var(--font-hero, 'Playfair Display', serif);
    font-size: clamp(1.5rem, 4vw, 3.5rem);
    font-weight: 900;
    font-style: italic;
    color: rgba(201,168,76,.04);
    white-space: nowrap;
    pointer-events: none;
    letter-spacing: .05em;
    z-index: 0;
}

.footer-links em {
    font-family: var(--font-mono);
    font-style: normal;
    font-size: .55rem;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--gold-dim);
    border: 1px solid rgba(201,168,76,.2);
    padding: .1rem .4rem;
    border-radius: 2px;
    vertical-align: middle;
    margin-left: .3rem;
}

.store-hero::after {
    content: 'ElitePresident.com';
    position: absolute;
    bottom: 1rem;
    left: 50%;
    transform: translateX(-50%);
    font-family: var(--font-mono);
    font-size: .6rem;
    letter-spacing: .3em;
    text-transform: uppercase;
    color: rgba(201,168,76,.25);
    pointer-events: none;
    z-index: 3;
    white-space: nowrap;
}

.page-hero .eyebrow {
    position: relative;
    display: inline-block;
}

.page-hero .eyebrow[data-brand]::before {
    content: '♛ ';
    color: var(--gold);
}

.site-nav a[href*="epstein"]:hover {
    color: var(--text-muted) !important;
}

.tariff-hero::after {
    content: 'ElitePresident.com — For the People\'s Billionaire™';
    position: absolute;
    bottom: .75rem;
    right: 1.5rem;
    font-family: var(--font-mono);
    font-size: .55rem;
    letter-spacing: .15em;
    text-transform: uppercase;
    color: rgba(245,250,240,.15);
    pointer-events: none;
}

.store-grid {
    position: relative;
}

@media print {
    .site-header::before { display: none; }
    .logo-brand { color: #666; -webkit-text-fill-color: #666; }
    .logo-brand::before { -webkit-text-fill-color: #666; }
}

.footer-unofficial {
    background: rgba(201,68,68,.05);
    border: 1px solid rgba(201,68,68,.15);
    border-left: 3px solid var(--red);
    padding: 1rem 1.5rem;
    margin-bottom: 1.25rem;
    display: flex;
    gap: 1.25rem;
    align-items: flex-start;
    flex-wrap: wrap;
}

.fu-badge {
    font-family: var(--font-mono);
    font-size: .58rem;
    letter-spacing: .15em;
    text-transform: uppercase;
    color: var(--red);
    border: 1px solid var(--red-dim);
    background: rgba(201,68,68,.08);
    padding: .2rem .5rem;
    white-space: nowrap;
    flex-shrink: 0;
    margin-top: .15rem;
    line-height: 1.5;
}

.footer-unofficial p {
    font-size: .82rem;
    color: var(--text-muted);
    line-height: 1.65;
    flex: 1;
    min-width: 200px;
}

.footer-unofficial strong {
    color: var(--text);
}


/* ── Map container size fix (Leaflet requires explicit dimensions) ── */
#connections-map,
#network-map {
    width: 100%;
    height: 520px;
    display: block;
    position: relative;
    z-index: 1;
    overflow: hidden;
    background: #0d0d14;
}

#mini-map {
    width: 100%;
    height: 240px;
    display: block;
    position: relative;
    z-index: 1;
    overflow: hidden;
}

/* Prevent Leaflet tiles from escaping container */
.leaflet-container {
    width: 100% !important;
    overflow: hidden !important;
}

.leaflet-tile-pane {
    z-index: 2;
}

.map-section,
.map-wrap {
    overflow: hidden;
    position: relative;
}


/* ── Nav overflow fix ───────────────────────────────────────── */
/* Prevent nav links being cut off on standard desktop widths */
.header-inner {
    gap: .5rem;
}

.site-nav {
    gap: 0;
    flex-wrap: nowrap;
    align-items: center;
}

.nav-link {
    font-size: .58rem;
    letter-spacing: .05em;
    padding: .35rem .55rem;
    white-space: nowrap;
}

/* Keep Store link gold but compact */
.site-nav a[href*="store.php"] {
    margin-left: .15rem !important;
    padding-left: .55rem !important;
    padding-right: .55rem !important;
}

/* Keep Epstein link compact */
.site-nav a[href*="epstein"] {
    margin-left: .15rem !important;
    padding-left: .65rem !important;
}

/* On slightly narrower screens, reduce logo size to give nav more room */
@media (max-width: 1200px) {
    .logo-main { font-size: 1.15rem; }
    .nav-link { font-size: .55rem; padding: .3rem .45rem; }
    .header-inner { gap: .25rem; }
}

@media (max-width: 1000px) {
    .site-nav { display: none; }
    .site-nav.open { 
        display: flex; 
        flex-direction: column;
        position: fixed;
        top: 70px;
        left: 0; right: 0;
        background: rgba(7,7,10,.98);
        border-bottom: 1px solid var(--border);
        padding: .75rem;
        z-index: 200;
        max-height: calc(100vh - 70px);
        overflow-y: auto;
    }
    .site-nav.open .nav-link {
        font-size: .7rem;
        padding: .6rem 1rem;
        border-bottom: 1px solid rgba(42,42,53,.4);
    }
    .nav-toggle { display: block; }
}
