:root{
  --primary:#ff5c00;
  --secondary:#001369;
  --btn2:#fb8c00;
  --bg:#ffffff;
  --text:#0f172a;
  --muted:#64748b;
  --radius:18px;
  --shadow:0 12px 28px rgba(0,0,0,.10);
  --shadow2:0 10px 24px rgba(0,0,0,.18);
  --container:1180px;

  /* header stack height set by JS */
  --siteHeaderH: 0px;
}

*{ box-sizing:border-box; }
html,body{ margin:0; padding:0; height:100%; }

body{
  font-family:"Poppins",system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  color:var(--text);
  background:var(--bg);

  /* ✅ Sticky footer */
  min-height:100vh;
  display:flex;
  flex-direction:column;

  /* ✅ Fixed header offset */
  padding-top: var(--siteHeaderH);
}

a{ color:inherit; text-decoration:none; }
img{ max-width:100%; display:block; }
.container{ width:min(var(--container),calc(100% - 32px)); margin-inline:auto; }

.pageMain{ flex:1; }

.h2{
  font-family:"Cinzel",serif;
  font-weight:700;
  letter-spacing:.4px;
  margin:0 0 10px;
  color:var(--secondary);
}
.h3{
  font-family:"Cinzel",serif;
  font-weight:600;
  margin:0 0 10px;
  color:var(--secondary);
}
.muted{ color:var(--muted); margin:0; line-height:1.7; }

/* ====== BUTTONS ====== */
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  border:none;
  border-radius:999px;
  padding:12px 18px;
  font-weight:600;
  cursor:pointer;
  transition:transform .12s ease, box-shadow .12s ease, background .12s ease;
  box-shadow:0 10px 18px rgba(0,0,0,.10);
  user-select:none;
  white-space:nowrap;
}
.btn:active{ transform:translateY(1px); }
.btn--primary{ background:var(--primary); color:#fff; }
.btn--primary:hover{ box-shadow:var(--shadow2); }
.btn--secondary{ background:var(--btn2); color:#fff; }
.btn--secondary:hover{ box-shadow:var(--shadow2); }



.pageTags{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  margin: 0 0 15px;
}

.tag{
  display:inline-flex;
  align-items:center;
  padding:6px 12px;
  border-radius:999px;
  font-size:12px;
  font-weight:700;
  letter-spacing:.2px;
  border:1px solid rgba(2,6,23,.10);
  background: rgba(255,255,255,.65);
  backdrop-filter: blur(6px);
  text-decoration:none;
  transition: transform .15s ease, box-shadow .15s ease;
}

.tag:hover{
  transform: translateY(-1px);
  box-shadow: 0 10px 18px rgba(0,0,0,.08);
}

.tag:active{ transform: translateY(0); }

.tag--parent{
  color: var(--secondary);
  background: rgba(0,19,105,.08);
  border-color: rgba(0,19,105,.18);
}

.tag--child{
  color: var(--primary);
  background: rgba(255,92,0,.10);
  border-color: rgba(255,92,0,.22);
}

.tagSep{
  opacity:.55;
  font-weight:800;
}
