/* ══════════════════════════════════════════════════
   OMGHive — Global Stylesheet v2.0
   Shared across all pages. Edit once, updates everywhere.
   ══════════════════════════════════════════════════ */

@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=DM+Sans:ital,wght@0,300;0,400;0,500;0,600;1,400&family=DM+Serif+Display:ital@0;1&display=swap');

/* ── Variables ──────────────────────────────────── */
:root {
  --bg:#080808; --bg2:#0d0d0d; --bg3:#111111;
  --amber:#f5a623; --amber2:#ffcf6b;
  --red:#ff3c3c; --green:#22c55e;
  --text:#f0ece4; --text2:#c8c4bc; --muted:#777;
  --border:#1e1e1e; --border2:#252525;
  --radius:10px; --radius-lg:16px;
  --header-h:62px; --max-w:1280px;
}

/* ── Reset ──────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{background:var(--bg);color:var(--text);font-family:'DM Sans',system-ui,-apple-system,sans-serif;font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased;overflow-x:hidden;max-width:100vw}
img{max-width:100%;height:auto;display:block}
a{color:var(--amber);text-decoration:none}
a:hover{text-decoration:underline}

/* ── Header ─────────────────────────────────────── */
header{position:sticky;top:0;z-index:200;background:rgba(8,8,8,.97);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border)}
header::after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--amber),transparent);opacity:.35}
.hi{max-width:var(--max-w);margin:0 auto;padding:0 24px;display:flex;align-items:center;height:var(--header-h);gap:20px}
.logo{font-family:'Bebas Neue',sans-serif;font-size:26px;letter-spacing:1.5px;display:flex;align-items:center;gap:3px;color:var(--text);text-decoration:none;flex-shrink:0}
.logo .h,.logo span.h{color:var(--amber)}
nav{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;flex:1}
nav::-webkit-scrollbar{display:none}
nav a{white-space:nowrap;padding:6px 14px;border-radius:6px;font-size:13px;font-weight:500;color:var(--muted);transition:all .2s}
nav a:hover,nav a.active{color:var(--amber);background:rgba(245,166,35,.08);text-decoration:none}
#hbtn{display:none;background:none;border:none;color:var(--text);font-size:24px;padding:4px 8px;flex-shrink:0;line-height:1;-webkit-tap-highlight-color:transparent}

/* ── Article layout ──────────────────────────────── */
.adtop{max-width:var(--max-w);margin:14px auto 0;padding:0 24px;display:flex;justify-content:center}
.aw{max-width:var(--max-w);margin:32px auto;padding:0 24px;display:grid;grid-template-columns:1fr 300px;gap:48px;align-items:start;min-width:0}
.bc{font-size:12px;color:var(--muted);margin-bottom:14px;display:flex;gap:6px;flex-wrap:wrap;align-items:center}

/* ── Typography ──────────────────────────────────── */
h1{font-family:'DM Serif Display',Georgia,serif;font-size:36px;line-height:1.2;margin-bottom:10px;color:var(--text)}
h2.section-h{font-family:'DM Serif Display',Georgia,serif;font-size:24px;line-height:1.3;color:var(--text);margin:36px 0 14px;padding-bottom:10px;border-bottom:1px solid var(--border)}
.asub{font-size:18px;color:var(--muted);margin-bottom:18px;font-style:italic;line-height:1.55}

/* ── Author meta ─────────────────────────────────── */
.ameta{display:flex;flex-wrap:wrap;gap:14px;align-items:center;font-size:13px;color:var(--muted);padding:14px 0;border-bottom:1px solid var(--border);margin-bottom:20px}
.ameta a{color:var(--amber);font-weight:600}
.ameta img{width:28px;height:28px;border-radius:50%;object-fit:cover;border:1px solid var(--border2);flex-shrink:0}

/* ── Hero image ──────────────────────────────────── */
.ahero{width:100%;border-radius:var(--radius);overflow:hidden;margin-bottom:28px;background:var(--bg3)}
.ahero img{width:100%;max-height:460px;object-fit:cover;display:block}

/* ── Article body ────────────────────────────────── */
.abody{font-size:17px;line-height:1.85;color:#d8d4cc;overflow-wrap:break-word;word-wrap:break-word}
.abody p{margin-bottom:22px}
.abody blockquote{border-left:3px solid var(--amber);padding:16px 24px;margin:32px 0;background:rgba(245,166,35,.04);border-radius:0 var(--radius) var(--radius) 0;font-style:italic;color:var(--text2)}

/* ── Key takeaways ───────────────────────────────── */
.key-takeaways{background:linear-gradient(135deg,#0f0f0f,#161616);border:1px solid #2a2a2a;border-left:4px solid var(--amber);border-radius:0 var(--radius) var(--radius) 0;padding:20px 24px;margin:32px 0}
.key-takeaways h3{font-family:'Bebas Neue',sans-serif;font-size:14px;letter-spacing:2px;color:var(--amber);margin-bottom:14px}
.key-takeaways ul{list-style:none;display:flex;flex-direction:column;gap:10px}
.key-takeaways ul li{display:flex;gap:10px;font-size:15px;color:var(--text2);line-height:1.6}
.key-takeaways ul li::before{content:"✓";color:var(--amber);font-weight:700;flex-shrink:0;margin-top:1px}

/* ── Buzz bar ────────────────────────────────────── */
.vbar{display:flex;align-items:center;gap:12px;background:var(--bg3);border:1px solid var(--border2);border-radius:24px;padding:10px 18px;margin:20px 0;flex-wrap:wrap}
.vbar .lbl{font-size:13px;color:var(--muted)}
.vbar #vc{font-size:20px;font-weight:700;color:var(--amber);font-family:'Bebas Neue',sans-serif;letter-spacing:1px}
.vbar button{background:var(--amber);color:#000;border:none;padding:7px 20px;border-radius:20px;font-weight:700;font-size:13px;transition:all .2s}
.vbar button:hover{background:var(--amber2);transform:scale(1.04)}

/* ── Share bar ───────────────────────────────────── */
.sbar{display:flex;align-items:center;gap:10px;padding:18px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);flex-wrap:wrap}
.sbtn{padding:8px 18px;border-radius:20px;font-size:13px;font-weight:600;border:none;transition:all .2s;cursor:pointer}
.sw{background:#000;color:#fff;border:1px solid #333}
.sf{background:#1877f2;color:#fff}
.swa{background:#25d366;color:#000}
.srclink{display:inline-flex;gap:6px;align-items:center;background:var(--bg3);border:1px solid var(--border2);border-radius:6px;padding:7px 14px;font-size:13px;color:var(--muted);margin:16px 0 24px;transition:all .2s}
.srclink:hover{border-color:var(--amber);color:var(--amber);text-decoration:none}

/* ── Fun fact ────────────────────────────────────── */
.fun-fact{background:rgba(245,166,35,.06);border:1px solid rgba(245,166,35,.2);border-radius:var(--radius);padding:18px 20px;margin:32px 0}
.fun-fact strong{color:var(--amber);font-size:11px;letter-spacing:2px;text-transform:uppercase;display:block;margin-bottom:8px}

/* ── FAQ ─────────────────────────────────────────── */
.faq-section{margin:40px 0}
.faq-section>h2{font-family:'Bebas Neue',sans-serif;font-size:14px;letter-spacing:3px;color:var(--muted);margin-bottom:16px}
.faq-item{border-bottom:1px solid var(--border);padding:16px 0}
.faq-item:last-child{border-bottom:none}
.faq-q{font-family:'DM Serif Display',serif;font-size:18px;color:var(--text);cursor:pointer;display:flex;justify-content:space-between;align-items:flex-start;gap:12px;user-select:none;-webkit-user-select:none}
.faq-q span{color:var(--amber);font-size:20px;flex-shrink:0;transition:transform .2s}
.faq-a{font-size:15px;color:var(--text2);line-height:1.7;display:none;padding-top:10px}
.faq-item.open .faq-a{display:block}
.faq-item.open .faq-q span{transform:rotate(45deg)}

/* ── Sidebar ─────────────────────────────────────── */
.sidebar{position:sticky;top:calc(var(--header-h) + 16px);display:flex;flex-direction:column;gap:20px}

/* ── Mid ad ──────────────────────────────────────── */
.midad{margin:32px 0;display:flex;justify-content:center;overflow:hidden}

/* ── Footer ──────────────────────────────────────── */
footer{border-top:1px solid var(--border);padding:40px 24px 32px;margin-top:48px}
.fi{max-width:var(--max-w);margin:0 auto}
.ft{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:16px}
.fl{font-family:'Bebas Neue',sans-serif;font-size:24px;letter-spacing:2px;color:var(--text)}
.fl span{color:var(--amber)}
.flinks{display:flex;gap:20px;flex-wrap:wrap;align-items:center}
.flinks a{font-size:13px;color:var(--muted);transition:color .2s}
.flinks a:hover{color:var(--amber);text-decoration:none}
.fc{text-align:center;font-size:12px;color:#333;margin-top:16px;line-height:1.6}

/* ── Sticky ad ───────────────────────────────────── */
#sad{position:fixed;bottom:0;left:0;right:0;z-index:300;background:rgba(8,8,8,.98);border-top:1px solid var(--border);display:flex;align-items:center;justify-content:center;gap:12px;padding:8px 16px;backdrop-filter:blur(10px)}

/* ── Animations ──────────────────────────────────── */
@keyframes fadeUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes hbounce{0%,80%,100%{transform:translateY(0)}40%{transform:translateY(-5px)}}

/* ══════════════════════════════════════════════════
   TABLET (960px)
   ══════════════════════════════════════════════════ */
@media(max-width:960px){
  .aw{grid-template-columns:1fr;gap:0}
  .sidebar{position:static;max-height:none;overflow:visible;border-top:1px solid var(--border);margin-top:40px;padding-top:32px}
}

/* ══════════════════════════════════════════════════
   MOBILE (768px)
   ══════════════════════════════════════════════════ */
@media(max-width:768px){
  :root{--header-h:54px}
  .hi{padding:0 16px;gap:12px}
  .logo{font-size:22px}
  nav{display:none}
  #hbtn{display:flex!important;align-items:center}

  /* Mobile nav fullscreen */
  #mainnav{display:none;position:fixed;top:54px;left:0;right:0;bottom:0;background:rgba(8,8,8,.98);flex-direction:column;padding:24px 20px;gap:4px;z-index:999;overflow-y:auto;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
  #mainnav.open{display:flex}
  #mainnav a{font-size:17px;padding:14px 18px;border-bottom:1px solid var(--border);border-radius:8px;color:var(--text);font-weight:500}
  #mainnav a:hover{background:var(--bg3);color:var(--amber);text-decoration:none}

  /* Layout */
  .aw{padding:0 16px;margin:16px auto}
  .adtop{padding:0 16px;margin-top:8px}

  /* Article */
  h1{font-size:26px;line-height:1.2}
  h2.section-h{font-size:20px;margin:28px 0 12px;padding-bottom:8px}
  .asub{font-size:15px}
  .ameta{gap:8px;font-size:12px;padding:10px 0;margin-bottom:16px}
  .ahero{border-radius:8px;margin-bottom:18px}
  .ahero img{max-height:250px}
  .abody{font-size:15px;line-height:1.78}
  .abody p{margin-bottom:16px}
  .abody blockquote{margin:20px 0;padding:12px 16px;font-size:14px}

  /* Components */
  .key-takeaways{padding:16px 18px}
  .key-takeaways ul li{font-size:14px}
  .vbar{padding:10px 14px;gap:8px;border-radius:16px}
  .vbar button{padding:7px 16px;font-size:12px}
  .sbar{gap:8px;padding:12px 0}
  .sbtn{padding:7px 14px;font-size:12px}
  .srclink{font-size:12px;padding:6px 12px}
  .faq-q{font-size:16px}
  .faq-a{font-size:14px}
  .fun-fact{padding:14px 16px}
  .midad{margin:18px 0}

  /* Footer */
  footer{padding:24px 16px}
  .ft{flex-direction:column;gap:10px;text-align:center}
  .flinks{justify-content:center;gap:12px}
  .fl{font-size:20px}
  #sad{padding:8px 12px}
  /* Inline article images */
  .abody img{border-radius:6px}
  /* Related cards stack */
  a[href*="/articles/"]{width:100%}
}

/* ── Article inline elements ─────────────────────── */
.abody img{max-width:100%;height:auto;border-radius:8px}
.abody a{word-break:break-word}
/* Related article cards */
a[href*="/articles/"]{max-width:100%}
/* Ads never overflow */
ins.adsbygoogle{max-width:100%!important;overflow:hidden}


/* ══════════════════════════════════════════════════
   SMALL PHONES (480px)
   ══════════════════════════════════════════════════ */
@media(max-width:480px){
  :root{--header-h:50px}
  .logo{font-size:20px;letter-spacing:1px}
  h1{font-size:21px}
  h2.section-h{font-size:18px}
  .asub{font-size:14px}
  .abody{font-size:14px}
  .ahero img{max-height:200px}
  .ameta{display:grid;grid-template-columns:1fr 1fr;gap:6px}
  .key-takeaways ul li{font-size:13px}
  .vbar{flex-direction:column;align-items:flex-start;gap:8px}
  .vbar button{width:100%;text-align:center;justify-content:center}
  .sbar{justify-content:center}
  .faq-q{font-size:15px}
  footer{padding:18px 14px}
  .flinks{gap:10px}
  .flinks a{font-size:12px}
}

/* ══════════════════════════════════════════════════
   PRINT
   ══════════════════════════════════════════════════ */
@media print{
  header,#sad,.sidebar,.adtop,.midad,.sbar,.vbar,footer{display:none!important}
  .aw{grid-template-columns:1fr}
  body{background:#fff;color:#000}
  .abody{color:#111}
  a{color:#000}
}
