/* =========================
   Loki-Legends — Full CSS
   ========================= */

/* RESET & BASE */
* { margin:0; padding:0; box-sizing:border-box; }
html, body { height:100%; font-family:"Segoe UI", Tahoma, Geneva, Verdana, sans-serif; background:#000; color:#fff; scroll-behavior:smooth; }
a { text-decoration:none; color:inherit; }
ul { list-style:none; }
.container { max-width:1200px; margin:0 auto; padding:0 20px; }

/* HEADER */
.site-header {
  position:fixed; top:0; left:0; right:0; height:80px;
  display:flex; align-items:center; justify-content:space-between;
  background:rgba(0,0,0,0.75); backdrop-filter:blur(6px);
  border-bottom:2px solid rgba(255,0,0,0.18); z-index:999;
}
.header-inner { display:flex; align-items:center; justify-content:space-between; width:100%; }
.logo-container { display:flex; align-items:center; gap:12px; }
.logo-img { height:56px; filter: drop-shadow(0 0 12px rgba(255,0,0,0.7)); border-radius:6px; }
.secondary-logo { height:40px; filter: drop-shadow(0 0 8px rgba(255,0,0,0.5)); }
.brand-text { display:flex; flex-direction:column; margin-left:8px; }
.brand-title { color:#ff0000; font-weight:800; font-size:1.1rem; text-shadow:0 0 12px rgba(255,0,0,0.3); }
.brand-sub { color:#eee; font-size:0.75rem; opacity:0.85; }
.main-nav { display:flex; gap:20px; align-items:center; }
.main-nav a { font-weight:600; transition: all 0.2s ease; }
.main-nav a:hover { color:#ff4d4d; transform:translateY(-2px); }
.header-cta { display:flex; gap:10px; }
.btn { border:none; border-radius:999px; font-weight:700; cursor:pointer; padding:8px 14px; transition:0.15s ease-in-out; }
.btn-login { background:#fff; color:#ff0000; border:2px solid rgba(255,0,0,0.1); }
.btn-login:hover { transform:translateY(-2px); box-shadow:0 10px 30px rgba(255,0,0,0.15); }
.btn-contact { background:transparent; color:#fff; border:1px solid rgba(255,255,255,0.08); }
.btn-contact:hover { color:#ff0000; border-color:rgba(255,0,0,0.15); }

/* HERO */
.hero-section {
  padding:140px 0 80px; min-height:700px;
  background:linear-gradient(180deg, rgba(0,0,0,0.95), rgba(10,10,10,0.98));
  display:flex; align-items:center; justify-content:center;
}
.hero-grid { display:grid; grid-template-columns:1fr 520px; gap:40px; align-items:center; }
.tag-box .tag { display:inline-block; background:#ff0000; color:#fff; font-weight:800; padding:6px 14px; border-radius:8px; letter-spacing:1px; box-shadow:0 10px 40px rgba(255,0,0,0.08); }
.hero-title { font-size:3.4rem; line-height:1.05; margin:12px 0; text-shadow:0 0 20px rgba(255,0,0,0.25); }
.hero-desc { color:#ddd; font-size:1.05rem; max-width:70ch; margin-bottom:16px; }
.hero-buttons { display:flex; gap:14px; margin-top:12px; }
.btn-outline { background:transparent; border:2px solid rgba(255,0,0,0.8); color:#fff; padding:12px 20px; font-weight:700; border-radius:999px; }
.btn-outline:hover { background:#ff0000; color:#fff; transform:translateY(-4px); box-shadow:0 20px 60px rgba(255,0,0,0.15); }
.btn-primary { background:#fff; color:#000; padding:12px 20px; font-weight:700; border-radius:999px; }
.btn-primary:hover { background:#ff0000; color:#fff; transform:translateY(-4px); }

/* COUNTDOWN */
.countdown {
  margin-top:20px;
  font-size:1.4rem;
  font-weight:700;
  color:#ff4d4d;
  text-shadow:0 0 10px rgba(255,0,0,0.4);
  background:rgba(0,0,0,0.4);
  padding:10px 16px;
  border-radius:8px;
  display:inline-block;
}

/* ROBOT 3D */
.hero-right { display:flex; flex-direction:column; align-items:center; gap:14px; position:relative; }
.robot-3d-wrapper {
  width:100%; max-width:520px; height:420px;
  border-radius:12px; overflow:hidden;
  background:linear-gradient(180deg, rgba(255,255,255,0.02), rgba(0,0,0,0.03));
  border:1px solid rgba(255,0,0,0.05); box-shadow:0 20px 60px rgba(0,0,0,0.65);
}
.robot-3d-wrapper spline-viewer { width:100%; height:100%; display:block; }
.robot-caption { font-size:0.9rem; color:#f1f1f1; opacity:0.9; }

/* TEAM */
.team-section { padding:56px 0 32px; }
.team-list { display:grid; grid-template-columns:repeat(auto-fit, minmax(160px,1fr)); gap:20px; margin-top:24px; }
.team-list li { background:linear-gradient(180deg,#0b0b0b,#0f0f0f); padding:16px; border-radius:12px; text-align:center; border:1px solid rgba(255,0,0,0.06); transition:transform .3s ease, box-shadow .3s ease; }
.team-list li:hover { transform:translateY(-8px); box-shadow:0 22px 60px rgba(255,0,0,0.08); }
.team-list img { width:80px; height:80px; border-radius:50%; border:3px solid #ff0000; margin-bottom:8px; object-fit:cover; }

/* GALLERY */
.gallery-section { padding:36px 0; }
.gallery-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:16px; margin-top:16px; }
.gallery-item { min-height:140px; border-radius:12px; background:linear-gradient(180deg,#0b0b0b,#101010); border:1px solid rgba(255,0,0,0.06); box-shadow:0 6px 30px rgba(0,0,0,0.5); transition:transform .3s ease; overflow:hidden; }
.gallery-item img { width:100%; height:100%; border-radius:12px; object-fit:cover; }
.gallery-item:hover { transform:translateY(-6px); }

/* VIDEOS */
.videos-section { padding:36px 0; }
.video-wrap { margin-top:12px; border-radius:12px; overflow:hidden; border:1px solid rgba(255,0,0,0.06); }

/* RESOURCES */
.resources-section { padding:36px 0; }
.resource-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:16px; margin-top:16px; }
.resource-card { display:flex; align-items:center; justify-content:center; font-weight:700; padding:18px; border-radius:12px; background:linear-gradient(180deg,#0c0c0c,#131313); border:1px solid rgba(255,0,0,0.06); transition:all 0.25s ease; }
.resource-card:hover { transform:translateY(-6px); box-shadow:0 26px 70px rgba(255,0,0,0.1); }

/* CONTACT */
.contact-section { padding:36px 0; border-top:1px solid rgba(255,0,0,0.03); }
.contact-list li { margin-bottom:10px; color:#eee; }

/* FOOTER */
.site-footer { padding:24px 0; margin-top:24px; background:linear-gradient(180deg,#070707,#000); text-align:center; border-top:1px solid rgba(255,0,0,0.05); color:#bbb; }

/* PARTICLES */
#particles { position:fixed; top:0; left:0; width:100%; height:100%; pointer-events:none; z-index:0; }
.particle { position:absolute; width:6px; height:6px; border-radius:50%; background:#ff0000; opacity:0.7; animation:particleMove 1.2s ease-out forwards; }
@keyframes particleMove { 0%{transform:scale(1);} 100%{transform:translateY(-50px) scale(0); opacity:0;} }

/* RESPONSIVE */
@media (max-width:980px) {
  .hero-grid { grid-template-columns:1fr; gap:20px; }
  .robot-3d-wrapper { height:360px; max-width:100%; }
  .logo-img { height:48px; }
  .secondary-logo { height:40px; }
  .hero-title { font-size:2.2rem; }
  .main-nav { display:none; }
  .header-cta { gap:6px; }
}
