:root{
  --ink:#1F2937; --paper:#FAFAF7; --leaf:#2E7D32; --leaf-2:#3FA047;
  --accent:#D97706; --muted:#6B7280; --border:#E5E7EB; --shadow: rgba(17,24,39,0.15);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,"Noto Sans",Arial,sans-serif;line-height:1.8}
a{color:var(--leaf);text-decoration:none} a:hover{text-decoration:underline}
img{max-width:100%;height:auto;display:block}
header.site-header{position:sticky; top:0; z-index:50; background:linear-gradient(180deg, rgba(255,255,255,0.8), rgba(255,255,255,0.65)); backdrop-filter: blur(10px) saturate(120%); border-bottom:1px solid var(--border)}
.brand{display:flex; align-items:center; justify-content:center; padding:10px 0}
.brand img{width:190px;height:auto}
.nav{display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:12px; padding:10px 12px}
.nav a{padding:10px 14px; border-radius:999px; border:1px solid var(--border); background:rgba(46,125,50,0.06); color:var(--ink); transition:transform .15s ease, box-shadow .15s ease, background .2s ease, color .2s ease; box-shadow:0 8px 24px -18px var(--shadow) inset}
.nav a:hover{transform:translateY(-1px)}
.nav a.active{background:linear-gradient(145deg, var(--leaf), var(--leaf-2)); color:#fff; border-color:transparent}
main{max-width:1140px; margin:0 auto; padding:28px 22px}
h1{font-size:2.25rem; margin:14px 0 6px 0}
.dek{font-size:1.12rem; color:var(--muted); margin:0 0 14px 0}
.media{margin:12px 0 18px 0}
.hero-media{border-radius:18px; overflow:hidden; border:1px solid var(--border); max-height:55vh}
.hero-media img{width:100%; height:auto; object-fit:cover; object-position:center top}
.hero-media figcaption{font-size:.92rem; color:var(--muted); padding:8px 12px; background:rgba(0,0,0,0.05)}
section.card{background:linear-gradient(180deg, rgba(255,255,255,0.85), rgba(255,255,255,0.6)); border:1px solid var(--border); border-radius:18px; padding:18px; margin:18px 0; box-shadow:0 18px 50px -20px var(--shadow)}
h2{font-size:1.55rem; margin:6px 0 4px 0}
h3{font-size:1.1rem; margin:0 0 2px 0; color:var(--muted)}
footer.site-footer{border-top:1px solid var(--border); color:var(--muted); text-align:center; padding:22px}
@media (max-width:720px){ h1{font-size:1.9rem} .brand img{width:160px} }
/* Site-wide paragraph justification */
p { text-align: justify; text-justify: inter-word; -webkit-hyphens: auto; -ms-hyphens: auto; hyphens: auto; }

/* =========================
   MEDIA PROTECTION ADD-ONS
   ========================= */
img, picture, svg, canvas, video{
  -webkit-user-drag:none !important;
  user-drag:none !important;
  -webkit-touch-callout:none !important;   /* iOS long-press */
  -webkit-user-select:none !important;
  -moz-user-select:none !important;
  -ms-user-select:none !important;
  user-select:none !important;
  -webkit-tap-highlight-color:transparent;
}
/* Keep figures non-interactive for long-press menus */
figure, .media{ -webkit-touch-callout:none }

/* --- Final Footer Refinement (ArtistryHub Harmonization) --- */

/* Override global justification for footer */
footer.site-footer,
footer.site-footer * {
  text-align: center !important;
}

/* Footer layout: centered, airy, and balanced */
footer.site-footer {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding-top: 26px;
  padding-bottom: 26px;
  background: linear-gradient(180deg, rgba(255,255,255,0.75), rgba(255,255,255,0.55));
  border-top: 1px solid var(--border);
  color: var(--muted);
  box-shadow: 0 -2px 14px rgba(17,24,39,0.08) inset;
}

/* Metrolagu Network (ArtistryHub palette) */
.metrolagu-network {
  background: none;
  color: var(--ink);
  padding: 20px 0;
}

.network-container {
  max-width: 1140px;
  margin: 0 auto;
  padding: 0 20px;
}

.metrolagu-network h3 {
  font-size: 1.15em;
  margin-bottom: 10px;
  color: var(--leaf); /* lush green accent */
  font-weight: 600;
  text-align: center;
  text-shadow: 0 0 3px rgba(46,125,50,0.15);
}

.metrolagu-network p {
  color: var(--muted);
  margin-bottom: 10px;
  line-height: 1.7;
  text-align: center;
}

/* Network links */
.network-links {
  text-align: center;
}

.network-links a {
  color: #1F2937;
  text-decoration: none;
  border-bottom: 1px solid rgba(46,125,50,0.25);
  transition: color 0.3s ease, border-color 0.3s ease, opacity 0.3s ease;
}

.network-links a:hover {
  color: var(--leaf-2);
  border-bottom-color: var(--leaf-2);
  opacity: 0.9;
}

/* Copyright pill refinement */
footer.site-footer .copyright {
  display: inline-block;
  margin: 18px auto 6px auto;
  font-weight: 600;
  font-size: 0.95rem;
  letter-spacing: 0.4px;
  color: var(--ink);
  background: rgba(255,255,255,0.9);
  padding: 8px 22px;
  border: 1.5px solid rgba(17,24,39,0.08);
  border-radius: 999px;
  box-shadow: 0 2px 10px rgba(17,24,39,0.08);
  transition: all 0.3s ease;
}

/* Hover tone: soft golden daylight */
footer.site-footer .copyright:hover {
  background: rgba(255,255,245,0.95);
  color: var(--accent);
  border-color: rgba(217,119,6,0.25);
  box-shadow: 0 3px 14px rgba(217,119,6,0.12);
  transform: translateY(-1px);
}

/* Embedded link inherits tone */
footer.site-footer .copyright a {
  color: inherit !important;
  text-decoration: none !important;
  transition: opacity 0.3s ease;
}
