/* ============================================================
   RLE Repo — Custom Theme (home page only)
   Research Laboratory of Electronics at MIT
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&display=swap');

/* ---- Navbar logo swap (global) ---- */

#navbar-logo img {
  content: url('/assets/img/rle-logo.svg') !important;
  height: 22px !important;
  width: auto !important;
}

/* ============================================================
   Everything below is scoped to .page-content.home
   ============================================================ */

/* ---- Landing Page Background ---- */

.page-content.home {
  --rle-navy-deepest: #111827;
  --rle-navy-deep: #1a2332;
  --rle-blue: #2563eb;
  --rle-blue-bright: #3b82f6;
  --rle-blue-electric: #60a5fa;
  --rle-blue-glow: #93c5fd;
  --rle-white: #f1f5f9;
  --rle-text-muted: #94a3b8;
  --rle-border: rgba(59, 130, 246, 0.18);

  background:
    radial-gradient(ellipse 80% 60% at 50% -10%, rgba(37, 99, 235, 0.25) 0%, transparent 70%),
    radial-gradient(ellipse 50% 40% at 80% 20%, rgba(34, 211, 238, 0.12) 0%, transparent 60%),
    radial-gradient(ellipse 40% 50% at 10% 60%, rgba(167, 139, 250, 0.1) 0%, transparent 60%),
    var(--rle-navy-deepest) !important;
  min-height: 100vh;
  position: relative;
  overflow: hidden;
  padding: 0 !important;
  margin: 0 !important;
  font-family: 'DM Sans', -apple-system, BlinkMacSystemFont, sans-serif !important;
}

/* Grid overlay */
.page-content.home::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(37, 99, 235, 0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(37, 99, 235, 0.04) 1px, transparent 1px);
  background-size: 64px 64px;
  mask-image: radial-gradient(ellipse 70% 50% at 50% 30%, black 20%, transparent 70%);
  -webkit-mask-image: radial-gradient(ellipse 70% 50% at 50% 30%, black 20%, transparent 70%);
  pointer-events: none;
  z-index: 0;
}

/* Floating orb */
.page-content.home::after {
  content: '';
  position: absolute;
  width: 500px;
  height: 500px;
  top: -150px;
  right: -100px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(37, 99, 235, 0.12) 0%, transparent 65%);
  filter: blur(40px);
  pointer-events: none;
  z-index: 0;
  animation: orbFloat 12s ease-in-out infinite;
}

@keyframes orbFloat {
  0%, 100% { transform: translate(0, 0) scale(1); }
  33% { transform: translate(-30px, 20px) scale(1.05); }
  66% { transform: translate(20px, -15px) scale(0.95); }
}

.page-content.home > * {
  position: relative;
  z-index: 1;
}

/* ---- Hero ---- */

.page-content.home .rle-hero {
  display: flex;
  justify-content: center;
  padding: 5rem 2rem 3rem;
}

.page-content.home .rle-hero-inner {
  text-align: center;
  max-width: 700px;
}

.page-content.home .rle-logo-hero {
  width: min(520px, 85vw);
  height: auto;
  opacity: 0.92;
  filter: drop-shadow(0 0 40px rgba(37, 99, 235, 0.15));
  margin-bottom: 2rem;
}

.page-content.home .rle-title {
  font-family: 'DM Sans', sans-serif !important;
  font-weight: 700 !important;
  font-size: 2.6rem !important;
  letter-spacing: -0.025em;
  color: var(--rle-white) !important;
  margin: 0 0 0.6rem !important;
  text-shadow: 0 0 60px rgba(37, 99, 235, 0.3);
}

.page-content.home .rle-subtitle {
  font-family: 'DM Sans', sans-serif !important;
  font-weight: 300 !important;
  font-size: 1.15rem !important;
  color: var(--rle-text-muted) !important;
  line-height: 1.7;
  margin: 0 0 2rem !important;
}

/* ---- Buttons ---- */

.page-content.home .rle-actions {
  display: flex;
  gap: 1rem;
  justify-content: center;
  flex-wrap: wrap;
}

.page-content.home .rle-btn {
  font-family: 'DM Sans', sans-serif !important;
  font-weight: 500;
  font-size: 1rem;
  padding: 0.7rem 2.2rem;
  border-radius: 10px;
  text-decoration: none;
  transition: all 0.25s ease;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
}

.page-content.home .rle-btn-primary {
  background: linear-gradient(135deg, var(--rle-blue) 0%, var(--rle-blue-bright) 100%);
  color: #fff !important;
  border: none;
  box-shadow: 0 4px 16px rgba(37, 99, 235, 0.3);
}

.page-content.home .rle-btn-primary:hover {
  box-shadow: 0 6px 24px rgba(37, 99, 235, 0.45);
  transform: translateY(-2px);
  color: #fff !important;
}

.page-content.home .rle-btn-outline {
  background: rgba(37, 99, 235, 0.1);
  color: var(--rle-blue-glow) !important;
  border: 1px solid rgba(59, 130, 246, 0.25);
}

.page-content.home .rle-btn-outline:hover {
  background: rgba(37, 99, 235, 0.2);
  border-color: rgba(59, 130, 246, 0.45);
  transform: translateY(-2px);
  color: var(--rle-blue-glow) !important;
}

/* ---- Hide footer on home page only ---- */

.page-content.home ~ footer {
  display: none !important;
}

/* ---- Responsive ---- */

@media (max-width: 700px) {
  .page-content.home .rle-hero {
    padding: 3rem 1.5rem 2rem;
  }

  .page-content.home .rle-title {
    font-size: 1.8rem !important;
  }

  .page-content.home .rle-subtitle {
    font-size: 1rem !important;
  }
}
