/* ═══════════════════════════════════════════════════════════════
   GLIMMERGY — shared brand stylesheet
   Used across glimmergy.com, /studio, and admin.glimmergy.com
   so every environment shares one visual language.
   ═══════════════════════════════════════════════════════════════ */
:root{
  /* dark (default) */
  --bg:#0E0D1A; --bg-2:#14132A; --bg-3:#1C1B35; --bg-card:#1A1930;
  --border:rgba(255,255,255,.08); --border-hi:rgba(255,255,255,.14);
  --text-1:#EDE9F4; --text-2:#A8A6C4; --text-3:#6A6888; --text-dim:#3A3858;
  --accent:#9B7EC7; --accent-dim:rgba(123,94,167,.18); --accent-hi:#C8B4E8;
  --gold:#C9A84C; --gold-dim:rgba(201,168,76,.14);
  --green:#7FB08A; --rose:#C77E9B; --ice:#7EA8C7;
  --r-sm:10px; --r-md:16px; --r-lg:22px;
  --t:.22s cubic-bezier(.4,0,.2,1);
  --serif:'Georgia','Times New Roman',serif;
  --sans:-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;
  --maxw:1180px;
}
[data-theme="light"]{
  --bg:#F8F7FC; --bg-2:#F0EEF8; --bg-3:#E8E6F4; --bg-card:#FFFFFF;
  --border:rgba(0,0,0,.07); --border-hi:rgba(0,0,0,.12);
  --text-1:#1A1828; --text-2:#5A5878; --text-3:#9896B4; --text-dim:#C8C6DC;
  --accent:#7B5EA7; --accent-dim:rgba(123,94,167,.10); --accent-hi:#5A3A8A;
  --gold:#A07828; --gold-dim:rgba(160,120,40,.10);
}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  background:var(--bg); color:var(--text-1);
  font-family:var(--sans); -webkit-font-smoothing:antialiased;
  line-height:1.6; min-height:100vh;
  transition:background var(--t),color var(--t);
}
.bg-glow{position:fixed;inset:0;pointer-events:none;z-index:0;
  background:radial-gradient(50% 40% at 14% 0%,rgba(123,94,167,.16),transparent 70%),
             radial-gradient(40% 34% at 96% 100%,rgba(201,168,76,.07),transparent 70%);}
.serif{font-family:var(--serif);font-weight:300;}
.eyebrow{font-size:11px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);}
.muted{color:var(--text-3);}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px;position:relative;z-index:1;}

/* top bar shared across environments */
.gx-top{display:flex;align-items:center;gap:14px;padding:20px 28px;position:relative;z-index:5;
  max-width:var(--maxw);margin:0 auto;}
.gx-top .mark{display:flex;align-items:center;gap:11px;text-decoration:none;}
.gx-top canvas{display:block;}
.gx-wordmark{font-family:var(--serif);font-size:16px;letter-spacing:.14em;color:var(--text-1);}
.gx-env{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-3);
  border:1px solid var(--border);border-radius:100px;padding:3px 10px;margin-left:2px;}
.gx-nav{margin-left:auto;display:flex;gap:8px;align-items:center;}
.gx-nav a{color:var(--text-2);text-decoration:none;font-size:13.5px;padding:8px 14px;border-radius:100px;transition:all var(--t);}
.gx-nav a:hover{color:var(--text-1);background:var(--bg-3);}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;
  border-radius:100px;font-size:14px;font-weight:500;text-decoration:none;cursor:pointer;
  border:1px solid var(--border);background:var(--bg-3);color:var(--text-1);
  font-family:inherit;transition:all var(--t);}
.btn:hover{border-color:var(--border-hi);transform:translateY(-1px);}
.btn-primary{background:var(--accent);color:#fff;border-color:transparent;box-shadow:0 6px 24px rgba(123,94,167,.32);}
.btn-primary:hover{box-shadow:0 10px 30px rgba(123,94,167,.42);}

/* cards */
.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);
  padding:26px;text-decoration:none;color:inherit;display:block;transition:all var(--t);position:relative;overflow:hidden;}
.card:hover{border-color:var(--border-hi);transform:translateY(-3px);box-shadow:0 14px 40px rgba(0,0,0,.28);}
.card h3{font-family:var(--serif);font-weight:300;font-size:22px;color:var(--text-1);margin:14px 0 8px;}
.card p{font-size:14px;color:var(--text-2);line-height:1.6;}
.card .ic{font-size:26px;}
.card .tag{position:absolute;top:18px;right:18px;font-size:10px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--text-3);border:1px solid var(--border);border-radius:100px;padding:3px 9px;}
.card.soon{opacity:.6;cursor:default;}
.card.soon:hover{transform:none;box-shadow:none;border-color:var(--border);}

.grid{display:grid;gap:18px;}
.grid-2{grid-template-columns:repeat(2,1fr);}
.grid-3{grid-template-columns:repeat(3,1fr);}
@media(max-width:860px){.grid-2,.grid-3{grid-template-columns:1fr;}.gx-nav{display:none;}}

.foot{max-width:var(--maxw);margin:60px auto 0;padding:28px;border-top:1px solid var(--border);
  display:flex;flex-wrap:wrap;gap:8px;align-items:center;color:var(--text-3);font-size:12.5px;position:relative;z-index:1;}
.foot a{color:var(--text-3);text-decoration:none;}
.foot a:hover{color:var(--text-2);}
.foot .sep{margin:0 8px;opacity:.5;}

/* the shared Orb mark script lives in orb.js */
