/* IseCos landing — tema gelap, aksen biru logo IseCos, mobile-first */
:root{
  --bg:#0d0d12; --card:#16161d; --card2:#1d1d26;
  --text:#f2f2f5; --muted:#9a9aa5;
  --blue:#4d8dff; --deepblue:#2b4bd8; --gold:#d0a860;
  --grad:linear-gradient(135deg,var(--blue),var(--deepblue));
  --radius:14px;
}
*{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:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  line-height:1.6;
}
img{max-width:100%;display:block}
a{color:inherit}

.logo-grad{
  background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;
}

/* ===== Nav ===== */
.nav{
  position:sticky;top:0;z-index:20;
  display:flex;align-items:center;justify-content:space-between;
  padding:12px 16px;
  background:rgba(13,13,18,.92);backdrop-filter:blur(8px);
  border-bottom:1px solid #222;
}
.logo{font-size:24px;font-weight:800;text-decoration:none;letter-spacing:.5px;display:flex;align-items:center;gap:8px}
.logo-img{width:34px;height:34px;border-radius:50%;object-fit:cover}
.nav-links{display:flex;gap:14px;align-items:center;font-size:14px}
.nav-links a{text-decoration:none;color:var(--muted)}
.nav-links a:hover{color:var(--text)}
.nav-cta{
  background:var(--grad);color:#fff !important;font-weight:700;
  padding:7px 14px;border-radius:10px;
}

/* ===== Layout ===== */
main{max-width:640px;margin:0 auto;padding:0 16px 40px}
.section{padding:34px 0 6px;scroll-margin-top:70px}
.section-title{font-size:24px;margin-bottom:6px}
.section-sub{color:var(--muted);font-size:14px;margin-bottom:18px}
.card{
  background:var(--card);border:1px solid #222;border-radius:var(--radius);
  padding:18px;margin-bottom:14px;
}
.card p{margin-bottom:12px;font-size:15px}
.card p:last-child{margin-bottom:0}

/* ===== Hero ===== */
.hero{text-align:center;padding:56px 8px 30px}
.hero-badge{
  display:inline-block;font-size:13px;color:var(--gold);
  border:1px solid #5a4a2a;background:#1a1610;
  padding:6px 14px;border-radius:20px;margin-bottom:16px;
}
.hero-title{font-size:56px;font-weight:800;letter-spacing:1px;margin-bottom:12px}
.hero-sub{color:var(--muted);font-size:16px;max-width:420px;margin:0 auto 26px}
.hero-cta{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}

.btn{
  display:inline-block;text-decoration:none;font-weight:700;font-size:15px;
  padding:13px 26px;border-radius:12px;cursor:pointer;border:none;
  transition:transform .15s ease, opacity .15s ease;
}
.btn:active{transform:scale(.97)}
.btn-primary{background:var(--grad);color:#fff}
.btn-outline{border:1px solid #444;color:var(--text);background:none}
.btn-block{display:block;text-align:center;width:100%;margin-top:14px}

/* ===== Galeri ===== */
.gallery-grid{
  display:grid;grid-template-columns:repeat(2,1fr);gap:10px;
}
@media(min-width:560px){.gallery-grid{grid-template-columns:repeat(4,1fr)}}
.g-item{
  background:var(--card);border:1px solid #222;border-radius:12px;overflow:hidden;
  cursor:pointer;
}
.g-item img{width:100%;aspect-ratio:4/5;object-fit:cover}
.g-item figcaption{
  font-size:12px;color:var(--muted);padding:8px 10px;text-align:center;
}

/* ===== Event ===== */
.event-list{display:grid;gap:12px}
@media(min-width:560px){.event-list{grid-template-columns:repeat(3,1fr)}}
.event-card{margin-bottom:0}
.event-card h3{font-size:16px;margin:8px 0 6px}
.event-card p{font-size:13px;color:var(--muted)}
.event-tag{
  display:inline-block;font-size:11px;font-weight:700;color:#fff;
  background:var(--grad);padding:3px 10px;border-radius:20px;
}
.event-meta{color:var(--text) !important;font-weight:600;margin-top:8px}

/* ===== Gabung ===== */
.join-list{display:grid;gap:12px}
.join-card{
  display:flex;align-items:center;gap:14px;text-decoration:none;margin-bottom:0;
}
a.join-card:hover{border-color:var(--deepblue)}
.join-card.disabled{opacity:.55;cursor:default}
.join-ico{font-size:28px}
.join-txt{flex:1;display:flex;flex-direction:column}
.join-txt small{color:var(--muted);font-size:13px}
.join-arrow{color:var(--deepblue);font-size:20px;font-weight:700}

/* ===== APK ===== */
.apk-card{text-align:center}
.apk-ico{font-size:48px;margin-bottom:8px}
.apk-info{display:flex;flex-direction:column;gap:2px;margin-bottom:6px}
.apk-info small{color:var(--muted)}
.apk-note{font-size:12px;color:var(--muted);margin-top:12px}

/* ===== Footer ===== */
.footer{
  text-align:center;padding:28px 16px calc(28px + env(safe-area-inset-bottom));
  border-top:1px solid #222;color:var(--muted);font-size:13px;
}
.footer a{color:#a8d4ff;text-decoration:none}
.footer p{margin-bottom:6px}

/* ===== Lightbox ===== */
.lightbox{
  position:fixed;inset:0;z-index:50;background:rgba(0,0,0,.92);
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  padding:20px;animation:fadein .2s ease;
}
.lightbox.hidden{display:none}
@keyframes fadein{from{opacity:0}to{opacity:1}}
.lightbox img{
  max-width:100%;max-height:78vh;border-radius:12px;object-fit:contain;
}
.lb-cap{margin-top:12px;color:var(--muted);font-size:14px}
.lb-close{
  position:absolute;top:16px;right:16px;background:rgba(255,255,255,.12);
  border:none;color:#fff;font-size:20px;width:40px;height:40px;border-radius:50%;
  cursor:pointer;
}
