/* ===========================================================================
   TG77 shared chrome — ONE header + footer for the whole site.
   Namespaced .tg-* so it never collides with Flatsome on inner pages.
   Loaded by index.html and every supporting page. Single source of truth.
   =========================================================================== */
:root{
  --bg:#04102a; --navy-1:#1e4a8a; --navy-2:#0e2c5e; --navy-3:#071630;
  --panel-a:#143864; --panel-b:#0a1c3c;
  --line:rgba(120,170,255,.18); --line-gold:rgba(212,175,55,.22); --line-gold-2:rgba(212,175,55,.4);
  --gold:#d4af37; --gold-deep:#b8860b; --cream:#fbf1cf; --heading:#f3ebd6;
  --gold-text:#e6cf86; --warm:#cdbf95; --warm-dim:#a89e7d;
  --text:#eaf1ff; --body:#d6e0f2; --blue-text:#cfe2ff;
  --orange-1:#ffe082; --orange-2:#ffa72e; --orange-3:#ff7a00;
  --radius:18px; --radius-sm:14px; --max:1120px;
}

/* kill the leftover Flatsome off-canvas mobile drawer + its overlay on inner pages */
#main-menu,.mfp-bg,.mfp-wrap{display:none !important;}

/* container shared by header + footer */
.tg-wrap{max-width:var(--max);margin:0 auto;padding:0 20px;}

/* ---- buttons ---- */
.tg-btn{display:inline-flex !important;align-items:center;justify-content:center;gap:.5em;
  font-family:Manrope,sans-serif !important;font-weight:800 !important;border-radius:14px;
  padding:15px 26px;min-height:48px;cursor:pointer;border:0;text-decoration:none !important;
  transition:transform .18s,box-shadow .18s,filter .18s;white-space:nowrap;}
.tg-btn:hover{filter:brightness(1.07);transform:translateY(-1px);}
.tg-btn-gold{color:#1a1206 !important;background:linear-gradient(135deg,var(--cream),var(--gold) 50%,var(--gold-deep));
  box-shadow:0 8px 24px -8px rgba(212,175,55,.55);}
.tg-btn-orange{color:#3a1700 !important;background:linear-gradient(135deg,var(--orange-1),var(--orange-2) 55%,var(--orange-3));
  border-radius:999px;box-shadow:0 4px 14px rgba(255,140,0,.4);}
.tg-btn-ghost{color:var(--blue-text) !important;background:transparent;border:1px solid rgba(120,170,255,.4);border-radius:999px;}
.tg-btn-ghost:hover{border-color:#7fb2ff;color:#fff !important;}

/* ---- header ---- */
.tg-header{position:sticky !important;top:0;z-index:200;
  background:linear-gradient(180deg,rgba(7,18,40,.96),rgba(7,18,40,.82)) !important;
  -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line) !important;font-family:Manrope,sans-serif;}
.tg-nav-inner{display:flex !important;align-items:center;gap:16px;height:66px;}
.tg-brand{display:flex !important;align-items:center;padding:0 !important;}
.tg-brand img{height:40px !important;width:auto !important;max-width:none !important;margin:0 !important;display:block;}
.tg-nav{display:flex !important;gap:22px;margin-left:auto;align-items:center;}
.tg-nav>a{color:var(--blue-text) !important;font-weight:600;font-size:.93rem;text-decoration:none !important;
  text-transform:none !important;letter-spacing:0 !important;transition:color .15s;line-height:1;}
.tg-nav>a:hover{color:var(--gold) !important;}
.tg-nav .tg-btn{padding:9px 18px;min-height:40px;font-size:.85rem;}
.tg-menu-btn{display:none !important;margin-left:auto;background:none;border:1px solid rgba(120,170,255,.4);
  color:var(--text);border-radius:10px;width:44px;height:44px;cursor:pointer;font-size:1.25rem;
  align-items:center;justify-content:center;}
#tg-mtoggle{display:none;}

/* ---- footer ---- */
.tg-footer{background:rgba(4,12,30,.85) !important;border-top:1px solid var(--line);
  padding:50px 0 30px;margin-top:56px;font-family:Manrope,sans-serif;color:var(--warm);}
.tg-foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:30px;}
.tg-foot-grid h4{font-family:Manrope,sans-serif;font-size:.9rem;font-weight:800;letter-spacing:.06em;margin:0 0 13px;color:var(--heading);}
.tg-foot-grid a{display:block;color:var(--warm) !important;font-size:.9rem;padding:5px 0;text-decoration:none !important;transition:color .15s;}
.tg-foot-grid a:hover{color:var(--gold) !important;}
.tg-foot-brand p{font-size:.9rem;color:var(--warm);line-height:1.6;margin:0;}
.tg-foot-brand img{height:42px !important;width:auto !important;max-width:none !important;margin:0 0 12px !important;display:block;}
.tg-responsible{display:flex;align-items:center;justify-content:center;gap:10px;margin:32px auto 20px;
  font-size:.84rem;color:var(--warm);border:1px solid rgba(212,175,55,.2);border-radius:999px;
  padding:10px 18px;max-width:fit-content;text-align:left;}
.tg-responsible a{color:var(--gold-text) !important;}
.tg-age{flex:none;width:26px;height:26px;border-radius:50%;border:1.5px solid var(--gold-text);
  color:var(--gold-text);font-weight:800;font-size:10px;display:inline-flex;align-items:center;justify-content:center;}
.tg-foot-bottom{border-top:1px solid var(--line);padding-top:20px;color:var(--warm-dim);font-size:.83rem;
  display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.tg-foot-bottom a{color:var(--warm-dim) !important;text-decoration:none !important;}
.tg-foot-bottom a:hover{color:var(--gold) !important;}

@media(max-width:920px){
  .tg-foot-grid{grid-template-columns:1fr 1fr;}
}
@media(max-width:680px){
  .tg-wrap{padding:0 16px;}
  .tg-nav{position:fixed;inset:66px 0 auto 0;flex-direction:column;gap:0;
    background:#081830;border-bottom:1px solid var(--line);padding:8px 20px 18px;
    transform:translateY(-130%);transition:transform .25s ease;align-items:stretch;}
  #tg-mtoggle:checked ~ .tg-nav{transform:translateY(0);}
  .tg-nav>a{padding:13px 0;border-bottom:1px solid var(--line);}
  .tg-nav .tg-btn{margin-top:12px;}
  .tg-menu-btn{display:flex !important;}
  .tg-footer{padding:38px 0 24px;margin-top:40px;}
  .tg-foot-grid{grid-template-columns:1fr;gap:24px;}
  .tg-responsible{max-width:100%;}
  .tg-foot-bottom{flex-direction:column;gap:8px;}
}

/* enh-alias */
:root{--gold:var(--gold);--gold-2:var(--gold);--gold-soft:color-mix(in srgb,var(--gold) 12%,transparent);--primary:var(--gold);--primary-2:var(--gold);--primary-soft:color-mix(in srgb,var(--gold) 14%,transparent);--bg:var(--bg);--bg-2:var(--bg);--surface:#121a2c;--surface-2:#121a2c;--line:var(--line);--line-2:var(--line);--muted:#9aa6b8;--text:var(--text);--wrap:1180px;--ff-head:'Sora',system-ui,sans-serif;--shadow:0 18px 50px -18px rgba(0,0,0,.6);--shadow-gold:0 12px 36px -12px color-mix(in srgb,var(--gold) 40%,transparent);--shadow-primary:0 12px 30px -10px color-mix(in srgb,var(--gold) 50%,transparent);--radius:14px;--radius-sm:10px;--radius-lg:22px}
/* ============ ENHANCEMENTS: promo bar · stats · winners · mobile CTA · reveal · shine ============ */
/* Promo announcement bar (top row of sticky header) */
.kg-promobar{position:relative;z-index:96;overflow:hidden;background:linear-gradient(100deg,var(--gold) 0%,var(--gold-2) 42%,#ffe6a0 52%,var(--gold-2) 62%,var(--gold) 100%);background-size:240% 100%;animation:kgShimmer 7s linear infinite;border-bottom:1px solid rgba(0,0,0,.22)}
.kg-promobar-inner{display:flex;align-items:center;justify-content:center;gap:11px;max-width:var(--wrap);margin:0 auto;padding:8px 16px;color:#2a1800;font-family:var(--ff-head);font-weight:600;font-size:.92rem;line-height:1.2;text-align:center}
.kg-promobar-inner:hover{color:#1c1000}
.kg-pb-ic{font-size:1.12rem;line-height:1;animation:kgBob 2.2s ease-in-out infinite}
.kg-pb-txt b{font-weight:800}
.kg-pb-cta{display:inline-flex;align-items:center;gap:5px;background:#0b1e27;color:var(--gold-2);padding:5px 13px;border-radius:999px;font-weight:700;font-size:.82rem;white-space:nowrap;box-shadow:0 4px 12px -4px rgba(0,0,0,.55)}
.kg-pb-cta svg{width:13px;height:13px}
@media(max-width:680px){.kg-promobar-inner{font-size:.83rem;gap:9px;padding:7px 12px}.kg-pb-txt .pb-extra{display:none}.kg-pb-cta{padding:4px 11px;font-size:.77rem}}
@media(max-width:380px){.kg-pb-cta{display:none}}

/* Stats strip with animated counters */
.kg-stats{background:var(--bg-2);border-bottom:1px solid var(--line);padding:30px 0}
.kg-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;max-width:var(--wrap);margin:0 auto;padding:0 20px}
.kg-stat{text-align:center;padding:6px}
.kg-stat .num{display:block;font-family:var(--ff-head);font-weight:800;font-size:clamp(1.7rem,4vw,2.5rem);line-height:1;background:linear-gradient(120deg,var(--gold),#ffe9a8);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.kg-stat .num small{font-size:.46em;font-weight:700;-webkit-text-fill-color:var(--gold);margin-left:2px}
.kg-stat .lbl{display:block;margin-top:8px;color:var(--muted);font-size:.85rem;font-weight:500}
@media(max-width:560px){.kg-stats-grid{grid-template-columns:repeat(2,1fr);gap:24px 12px}}

/* Winners ticker (marquee) */
.kg-winners{display:flex;align-items:stretch;background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.kg-winners-lbl{flex:0 0 auto;display:flex;align-items:center;z-index:3;background:var(--surface);padding:11px 16px 11px 20px;font-family:var(--ff-head);font-weight:700;font-size:.78rem;color:var(--gold);letter-spacing:.03em;border-right:1px solid var(--line);white-space:nowrap}
.kg-winners-marquee{position:relative;overflow:hidden;flex:1;display:flex;align-items:center}
.kg-winners-marquee::before,.kg-winners-marquee::after{content:"";position:absolute;top:0;bottom:0;width:50px;z-index:2;pointer-events:none}
.kg-winners-marquee::before{left:0;background:linear-gradient(90deg,var(--surface),transparent)}
.kg-winners-marquee::after{right:0;background:linear-gradient(270deg,var(--surface),transparent)}
.kg-winners-track{display:inline-flex;align-items:center;gap:34px;white-space:nowrap;padding:11px 24px;will-change:transform;animation:kgMarquee 40s linear infinite}
.kg-winners-marquee:hover .kg-winners-track{animation-play-state:paused}
.kg-win{display:inline-flex;align-items:center;gap:8px;font-size:.86rem;color:var(--muted)}
.kg-win::before{content:"";width:7px;height:7px;border-radius:50%;background:#22c55e;box-shadow:0 0 8px #22c55e;flex:0 0 auto}
.kg-win b{color:var(--text);font-weight:600}.kg-win .amt{color:var(--gold-2);font-weight:700}
@media(max-width:480px){.kg-winners-lbl{display:none}}

/* Sticky mobile CTA */
.kg-mobcta{display:none}
@media(max-width:720px){
  .kg-mobcta{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:80;gap:10px;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:linear-gradient(180deg,rgba(4,9,13,0),rgba(4,9,13,.94) 30%)}
  .kg-mobcta .kg-btn{flex:1;animation:kgPulse 2.6s ease-in-out infinite}
  body{padding-bottom:calc(78px + env(safe-area-inset-bottom))}
}

/* Scroll reveal — resilient: hidden state only applies once JS adds .kg-js */
.kg-js [data-reveal]{opacity:0;transform:translateY(22px);transition:opacity .6s ease,transform .65s cubic-bezier(.2,.7,.2,1)}
.kg-js [data-reveal].in{opacity:1;transform:none}
.kg-js .kg-grid [data-reveal]:nth-child(2),.kg-js .kg-posts [data-reveal]:nth-child(2),.kg-js .kg-stats-grid [data-reveal]:nth-child(2){transition-delay:.07s}
.kg-js .kg-grid [data-reveal]:nth-child(3),.kg-js .kg-posts [data-reveal]:nth-child(3),.kg-js .kg-stats-grid [data-reveal]:nth-child(3){transition-delay:.14s}
.kg-js .kg-grid [data-reveal]:nth-child(4),.kg-js .kg-posts [data-reveal]:nth-child(4),.kg-js .kg-stats-grid [data-reveal]:nth-child(4){transition-delay:.21s}
.kg-js .kg-grid [data-reveal]:nth-child(5){transition-delay:.28s}
.kg-js .kg-grid [data-reveal]:nth-child(6){transition-delay:.35s}

/* Button shine sweep */
.kg-btn-primary,.kg-btn-gold{position:relative;overflow:hidden}
.kg-btn-primary::after,.kg-btn-gold::after{content:"";position:absolute;top:0;left:0;width:55%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.45),transparent);transform:translateX(-240%) skewX(-18deg);animation:kgShine 4.6s ease-in-out infinite;pointer-events:none}
.kg-btn-gold::after{background:linear-gradient(100deg,transparent,rgba(255,255,255,.6),transparent)}

/* Hero glow drift */
.kg-hero::after{animation:kgGlow 9s ease-in-out infinite alternate}

@keyframes kgShimmer{0%{background-position:0% 50%}100%{background-position:240% 50%}}
@keyframes kgMarquee{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
@keyframes kgBob{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
@keyframes kgPulse{0%,100%{box-shadow:var(--shadow-gold)}50%{box-shadow:0 14px 42px -8px rgba(245,158,11,.72)}}
@keyframes kgShine{0%{transform:translateX(-240%) skewX(-18deg)}55%,100%{transform:translateX(420%) skewX(-18deg)}}
@keyframes kgGlow{0%{transform:translateY(0) scale(1);opacity:.78}100%{transform:translateY(12px) scale(1.05);opacity:1}}

@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}


/* ===== tg77.buzz palette override — Emerald & Gold (emerald base, differs from sibling navy) ===== */
:root{
  --bg:#04140f; --navy-1:#06281f; --navy-2:#0a3a2c; --navy-3:#0d4a38;
  --panel-a:#0c3527; --panel-b:#072018;
  --line:rgba(80,210,150,.18); --line-gold:rgba(212,175,55,.22); --line-gold-2:rgba(212,175,55,.4);
  /* enh-alias surfaces (were navy #121a2c / #04102a) -> emerald */
  --bg-2:#04140f; --surface:#0c3527; --surface-2:#0a2c20;
  --text:#eafff4; --body:#cdeede; --blue-text:#bff0d6;
}
