:root {
  --bg: #0b0c10;
  --panel: #101218;
  --muted: #a5b1c2;
  --text: #eaf1ff;
  --accent: #6ee7ff;
  --accent-2: #7c5cff;
  --ring: rgba(110,231,255,.45);
  --radius: 16px;
  --shadow: 0 10px 30px rgba(0,0,0,.35);
}
@media (prefers-color-scheme: light) {
  :root {
    --bg: #f7f8fb;
    --panel: #ffffff;
    --muted: #5b6779;
    --text: #0b0c10;
    --ring: rgba(124,92,255,.35);
    --shadow: 0 10px 30px rgba(10,20,60,.08);
  }
}
* { box-sizing: border-box; }
html, body { height: 100%; }
body {
  margin: 0; 
  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji";
  color: var(--text); 
  background: var(--bg);
  line-height: 1.5;
  padding-top: 70px; /* Account for fixed nav */
  position: relative;
}

/* Dark storm clouds background */
.cloud-layer-1,
.cloud-layer-2,
.cloud-layer-3 {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
  z-index: -2;
}

/* Base cloud layer - largest, darkest masses */
.cloud-layer-1 {
  background: 
    /* Dark storm masses */
    radial-gradient(ellipse 1800px 600px at 15% 20%, rgba(25, 30, 35, 0.9), transparent 50%),
    radial-gradient(ellipse 1600px 500px at 85% 30%, rgba(20, 25, 30, 0.8), transparent 45%),
    radial-gradient(ellipse 2000px 700px at 50% 70%, rgba(22, 27, 32, 0.85), transparent 55%),
    radial-gradient(ellipse 1400px 450px at 30% 90%, rgba(18, 23, 28, 0.7), transparent 40%),
    /* Smaller cloud formations */
    radial-gradient(ellipse 800px 300px at 70% 15%, rgba(30, 35, 40, 0.6), transparent 35%),
    radial-gradient(ellipse 900px 350px at 25% 60%, rgba(28, 33, 38, 0.65), transparent 38%),
    radial-gradient(ellipse 700px 250px at 90% 80%, rgba(26, 31, 36, 0.55), transparent 32%);
  filter: blur(2px);
  opacity: 0.7;
  animation: storm-drift-1 240s ease-in-out infinite;
}

/* Middle layer - wispy edges and detail */
.cloud-layer-2 {
  background:
    /* Wispy cloud edges */
    radial-gradient(ellipse 1200px 400px at 20% 35%, rgba(35, 42, 48, 0.5), transparent 40%),
    radial-gradient(ellipse 1000px 350px at 75% 25%, rgba(32, 38, 44, 0.45), transparent 35%),
    radial-gradient(ellipse 1400px 450px at 60% 85%, rgba(38, 44, 50, 0.55), transparent 42%),
    radial-gradient(ellipse 800px 280px at 10% 70%, rgba(30, 36, 42, 0.4), transparent 30%),
    /* Texture details */
    radial-gradient(ellipse 600px 200px at 45% 50%, rgba(40, 46, 52, 0.35), transparent 28%),
    radial-gradient(ellipse 500px 180px at 80% 65%, rgba(36, 42, 48, 0.3), transparent 25%);
  filter: blur(8px);
  opacity: 0.5;
  animation: storm-drift-2 200s ease-in-out infinite reverse;
}

/* Top layer - fine mist and highlights */
.cloud-layer-3 {
  background:
    /* Light mist on cloud tops */
    radial-gradient(ellipse 900px 300px at 30% 25%, rgba(50, 58, 65, 0.25), transparent 30%),
    radial-gradient(ellipse 700px 250px at 70% 40%, rgba(48, 55, 62, 0.2), transparent 25%),
    radial-gradient(ellipse 1100px 350px at 50% 75%, rgba(45, 52, 58, 0.28), transparent 35%),
    /* Fine wispy details */
    radial-gradient(ellipse 400px 150px at 15% 55%, rgba(55, 62, 68, 0.18), transparent 20%),
    radial-gradient(ellipse 450px 160px at 85% 70%, rgba(52, 58, 64, 0.15), transparent 22%);
  filter: blur(15px);
  opacity: 0.3;
  mix-blend-mode: screen;
  animation: storm-drift-3 160s ease-in-out infinite;
}

/* Storm cloud drifting animations */
@keyframes storm-drift-1 {
  0%, 100% {
    transform: translateX(0) translateY(0);
  }
  25% {
    transform: translateX(-40px) translateY(20px);
  }
  50% {
    transform: translateX(-20px) translateY(-15px);
  }
  75% {
    transform: translateX(30px) translateY(10px);
  }
}

@keyframes storm-drift-2 {
  0%, 100% {
    transform: translateX(0) translateY(0);
  }
  33% {
    transform: translateX(35px) translateY(-18px);
  }
  66% {
    transform: translateX(-28px) translateY(25px);
  }
}

@keyframes storm-drift-3 {
  0%, 100% {
    transform: translateX(0) translateY(0);
  }
  50% {
    transform: translateX(-25px) translateY(15px);
  }
}

/* Under Construction Banner */
.under-construction-banner {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  z-index: 9999; /* Above everything */
  line-height: 0; /* Remove any spacing */
  pointer-events: none; /* Allow clicking through transparent parts */
}

.under-construction-banner img {
  width: 100%;
  height: auto;
  display: block;
  pointer-events: auto; /* Make the image itself clickable if needed */
}

a { color: inherit; text-decoration: none; }
.container { width: min(1100px, 92%); margin: 0 auto; }
.nav { 
  position: fixed; 
  top: 0; 
  left: 0;
  right: 0;
  z-index: 100; 
  background: rgba(16, 18, 24, 0.75);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border-bottom: 1px solid rgba(255,255,255,.08);
}

@media (prefers-color-scheme: light) {
  .nav {
    background: rgba(255, 255, 255, 0.85);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
  }
}
.nav-inner { display:flex; align-items:center; justify-content:space-between; padding: 14px 0; }
.brand { display:flex; align-items:center; gap:12px; font-weight:800; }
.brand .logo { width:36px; height:36px; border-radius:10px; object-fit: cover; }
.menu { display:flex; gap:22px; align-items:center; }

/* Mobile menu toggle button */
.mobile-menu-toggle {
  display: none;
  flex-direction: column;
  justify-content: space-around;
  width: 30px;
  height: 24px;
  background: transparent;
  border: none;
  cursor: pointer;
  padding: 0;
  z-index: 101;
}

.hamburger-line {
  width: 30px;
  height: 3px;
  background-color: var(--text);
  transition: all 0.3s ease;
  display: block;
}

/* Mobile menu styles */
@media (max-width: 768px) {
  .mobile-menu-toggle {
    display: flex;
  }
  
  /* Hide hero text on mobile, keep buttons only */
  .hide-on-mobile {
    display: none;
  }
  
  .menu {
    display: none;
    position: fixed;
    top: 70px;
    left: 0;
    right: 0;
    background: rgba(16, 18, 24, 0.95);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    flex-direction: column;
    padding: 20px;
    gap: 16px;
    border-bottom: 1px solid rgba(255,255,255,.08);
    box-shadow: 0 10px 30px rgba(0,0,0,.5);
  }
  
  @media (prefers-color-scheme: light) {
    .menu {
      background: rgba(255, 255, 255, 0.95);
      box-shadow: 0 10px 30px rgba(0,0,0,.1);
    }
  }
  
  .menu.show {
    display: flex;
  }
  
  .menu a {
    padding: 10px 0;
    width: 100%;
    text-align: center;
  }
  
  .menu .btn {
    width: 100%;
    justify-content: center;
  }
  
  /* Animate hamburger to X when menu is open */
  .mobile-menu-toggle.active .hamburger-line:nth-child(1) {
    transform: translateY(8px) rotate(45deg);
  }
  
  .mobile-menu-toggle.active .hamburger-line:nth-child(2) {
    opacity: 0;
  }
  
  .mobile-menu-toggle.active .hamburger-line:nth-child(3) {
    transform: translateY(-8px) rotate(-45deg);
  }
  
  /* Adjust brand text on mobile */
  .brand span {
    font-size: 16px;
  }
}

/* Even smaller screens */
@media (max-width: 480px) {
  .brand span {
    font-size: 14px;
  }
  
  .brand .logo {
    width: 32px;
    height: 32px;
  }
}
.btn { display:inline-flex; align-items:center; gap:10px; padding:12px 18px; border-radius: 999px; font-weight:700; border: 1px solid transparent; box-shadow: var(--shadow); }
.btn-primary { background: linear-gradient(135deg, var(--accent), var(--accent-2)); color:#0b0c10; }
.btn-outline { background:transparent; color:var(--text); border-color: rgba(255,255,255,.15); }
.hero { padding: 84px 0 48px; text-align:center; }
.hero h1 { font-size: clamp(2rem, 4vw + 1rem, 3.2rem); line-height:1.1; margin: 12px 0; }
.hero p { color: var(--muted); font-size: clamp(1rem, .6vw + .9rem, 1.1rem); }
.cta { display:flex; flex-wrap:wrap; gap:12px; justify-content:center; margin-top:22px; }
.grid { display:grid; gap:18px; }
.cols-3 { grid-template-columns: repeat(3, minmax(0,1fr)); }
@media (max-width: 900px) { .cols-3 { grid-template-columns: 1fr 1fr; } }
@media (max-width: 640px) { .cols-3 { grid-template-columns: 1fr; } }
.card { background: var(--panel); border: 1px solid rgba(255,255,255,.08); border-radius: var(--radius); padding:22px; box-shadow: var(--shadow); transition: transform .18s ease, border-color .18s ease; }
.card:hover { transform: translateY(-3px); border-color: var(--ring); }
.section { padding: 60px 0; }
.section h2 { font-size: clamp(1.6rem, 1.4vw + 1rem, 2rem); margin: 0 0 14px; }
.muted { color: var(--muted); }
.list { display:flex; flex-wrap:wrap; gap:10px; }
.chip { padding:8px 12px; border-radius:999px; background: color-mix(in oklab, var(--panel), white 5%); border: 1px solid rgba(255,255,255,.08); }
.sponsor-grid { display:grid; grid-template-columns: repeat(6, minmax(0,1fr)); gap:14px; }
@media (max-width: 1000px){ .sponsor-grid{ grid-template-columns: repeat(4, 1fr);} }
@media (max-width: 640px){ .sponsor-grid{ grid-template-columns: repeat(2, 1fr);} }
.sponsor { aspect-ratio: 3 / 2; display:grid; place-items:center; background: var(--panel); border:1px dashed rgba(255,255,255,.18); border-radius: 14px; color: var(--muted); font-weight:700; }
.footer { padding:28px 0 60px; color: var(--muted); font-size: .95rem; border-top: 1px solid rgba(255,255,255,.08); }
.disclosure { font-size: .9rem; color: var(--muted); }
section { scroll-margin-top: 82px; }
.board-grid { display:grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap:20px; }
.board-card { text-align:center; padding:20px; background: var(--panel); border:1px solid rgba(255,255,255,.08); border-radius: var(--radius); box-shadow: var(--shadow); }
.board-card img { width:200px; height:200px; border-radius:50%; object-fit:cover; margin-bottom:12px; background:#ccc; border: 3px solid rgba(255,255,255,.1); }

/* Slideshow Styles */
.hero-slideshow {
  position: relative;
  width: 100%;
  height: 100vh;
  min-height: 800px;
  max-height: 1100px;
  overflow: hidden;
  margin-bottom: 60px;
  margin-top: -70px; /* Pull slideshow up under the nav bar */
  padding-top: 70px; /* Add padding to account for nav bar */
}

.slideshow-container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.slide {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: opacity 1.5s ease-in-out;
  overflow: hidden;
}

.slide.active {
  opacity: 1;
}

.slide img {
  width: 110%;
  height: 110%;
  object-fit: cover;
  animation: kenBurns 20s ease-out infinite;
  transform-origin: center;
}

/* Ken Burns effect - slow zoom and pan */
@keyframes kenBurns {
  0% {
    transform: scale(1) translate(0, 0);
  }
  100% {
    transform: scale(1.15) translate(-2%, -2%);
  }
}

/* Alternate Ken Burns animations for variety */
.slide:nth-child(1) img {
  animation-name: kenBurns1;
}

.slide:nth-child(2) img {
  animation-name: kenBurns2;
}

.slide:nth-child(3) img {
  animation-name: kenBurns3;
}

.slide:nth-child(4) img {
  animation-name: kenBurns4;
}

@keyframes kenBurns1 {
  0% {
    transform: scale(1) translate(0, 0);
  }
  100% {
    transform: scale(1.15) translate(-3%, -2%);
  }
}

@keyframes kenBurns2 {
  0% {
    transform: scale(1.1) translate(-2%, -2%);
  }
  100% {
    transform: scale(1) translate(0, 0);
  }
}

@keyframes kenBurns3 {
  0% {
    transform: scale(1) translate(0, 0);
  }
  100% {
    transform: scale(1.15) translate(2%, -3%);
  }
}

@keyframes kenBurns4 {
  0% {
    transform: scale(1.15) translate(-3%, -3%);
  }
  100% {
    transform: scale(1) translate(0, 0);
  }
}

.hero-content {
  position: absolute;
  bottom: 40px;
  left: 50%;
  transform: translateX(-50%);
  width: min(900px, 90%);
  z-index: 10;
  text-align: center;
}

.card-blur {
  background: rgba(16, 18, 24, 0.75);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: var(--radius);
  padding: 32px;
  box-shadow: var(--shadow);
}

@media (prefers-color-scheme: light) {
  .card-blur {
    background: rgba(255, 255, 255, 0.85);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
  }
}

.card-blur h1 {
  font-size: clamp(2rem, 4vw + 1rem, 3.2rem);
  line-height: 1.1;
  margin: 12px 0;
  color: var(--text);
}

.card-blur p {
  color: var(--muted);
  font-size: clamp(1rem, .6vw + .9rem, 1.1rem);
}

@media (max-width: 768px) {
  .hero-slideshow {
    height: 100vh;
    min-height: 600px;
    max-height: 800px;
  }
  
  .hero-content {
    bottom: 20px;
  }
  
  .card-blur {
    padding: 24px;
    /* Center buttons vertically when text is hidden */
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }
  
  .card-blur .cta {
    margin: 0;
  }
}

@media (max-width: 480px) {
  .hero-slideshow {
    height: 100vh;
    min-height: 500px;
    max-height: 700px;
  }
  
  .hero-content {
    bottom: 20px;
  }
  
  .card-blur {
    padding: 20px;
    /* Maintain centering on smaller screens */
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }
}

/* Lightning bolt styles */
.lightning-container {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: -1; /* Behind everything */
}

.lightning-bolt {
  position: absolute;
  opacity: 0;
  height: 100vh;
  max-height: 100%;
}

/* Lightning positioning - varied sizes and timing */
.bolt-1 {
  left: 3%;
  top: -5%;
  width: 200px;
  transform: rotate(-11deg);
  animation: lightning-strike 36s infinite 4s; /* Doubled from 18s */
}

.bolt-2 {
  left: 12%;
  top: -10%;
  width: 550px; /* 2x larger */
  transform: rotate(7deg);
  animation: lightning-strike 46s infinite 14s; /* Doubled from 23s */
}

.bolt-3 {
  right: 5%;
  top: -3%;
  width: 160px;
  transform: rotate(-15deg);
  animation: lightning-strike 62s infinite 22s; /* Doubled from 31s */
}

.bolt-4 {
  right: 15%;
  top: -8%;
  width: 600px; /* 3x larger */
  transform: rotate(12deg);
  animation: lightning-strike 54s infinite 8s; /* Doubled from 27s */
}

.bolt-5 {
  left: 7%;
  top: -6%;
  width: 450px; /* 2.5x larger */
  transform: rotate(-9deg);
  animation: lightning-strike 42s infinite 30s; /* Doubled from 21s */
}

/* On pages without hero slideshow, allow more central positioning */
body:not(.has-slideshow) .bolt-1 {
  left: 15%;
  transform: rotate(-7deg);
}

body:not(.has-slideshow) .bolt-2 {
  left: 38%;
  transform: rotate(4deg);
}

body:not(.has-slideshow) .bolt-3 {
  right: 22%;
  transform: rotate(-10deg);
}

body:not(.has-slideshow) .bolt-4 {
  left: 58%;
  transform: rotate(8deg);
}

body:not(.has-slideshow) .bolt-5 {
  right: 32%;
  transform: rotate(-5deg);
}

/* Responsive adjustments for smaller screens */
@media (max-width: 1200px) {
  .bolt-1 { left: 2%; }
  .bolt-2 { left: 8%; }
  .bolt-3 { right: 3%; }
  .bolt-4 { right: 10%; }
  .bolt-5 { left: 5%; }
}

@media (max-width: 768px) {
  /* On mobile, reduce size and keep to edges */
  .bolt-1, .bolt-2, .bolt-3, .bolt-4, .bolt-5 {
    width: 120px !important;
  }
  .bolt-1 { left: 1%; }
  .bolt-2 { left: 6%; }
  .bolt-3 { right: 2%; }
  .bolt-4 { right: 8%; }
  .bolt-5 { left: 3%; }
}

/* Realistic lightning strike animation - 2 second fade */
@keyframes lightning-strike {
  0% {
    opacity: 0;
    clip-path: inset(0 0 100% 0);
  }
  /* Lightning strikes instantly from top to bottom */
  4% {
    opacity: 1;
    clip-path: inset(0 0 96% 0);
    filter: brightness(2.5) drop-shadow(0 0 40px #e0f2fe);
  }
  4.2% {
    clip-path: inset(0 0 88% 0);
  }
  4.4% {
    clip-path: inset(0 0 75% 0);
  }
  4.6% {
    clip-path: inset(0 0 55% 0);
  }
  4.8% {
    clip-path: inset(0 0 30% 0);
  }
  5% {
    opacity: 1;
    clip-path: inset(0 0 0% 0);
    filter: brightness(2.2) drop-shadow(0 0 35px #93c5fd);
  }
  /* Bright flash then 2 second fade */
  5.5% {
    opacity: 1;
    filter: brightness(2) drop-shadow(0 0 30px #93c5fd);
  }
  6% {
    opacity: 0.95;
    filter: brightness(1.7) drop-shadow(0 0 25px #60a5fa);
  }
  7% {
    opacity: 0.85;
    filter: brightness(1.4) drop-shadow(0 0 20px #60a5fa);
  }
  8% {
    opacity: 0.7;
    filter: brightness(1.2) drop-shadow(0 0 15px #3b82f6);
  }
  9% {
    opacity: 0.55;
    filter: brightness(1.1) drop-shadow(0 0 12px #3b82f6);
  }
  10% {
    opacity: 0.4;
    filter: brightness(1) drop-shadow(0 0 9px #2563eb);
  }
  11% {
    opacity: 0.25;
    filter: brightness(1) drop-shadow(0 0 6px #2563eb);
  }
  12% {
    opacity: 0.15;
    filter: brightness(1) drop-shadow(0 0 4px #1e40af);
  }
  13% {
    opacity: 0.08;
    filter: brightness(1) drop-shadow(0 0 2px #1e40af);
  }
  14%, 100% {
    opacity: 0;
    clip-path: inset(0 0 0% 0);
  }
}

/* Add extra flash for realism */
@keyframes lightning-flash {
  0%, 4.9%, 12%, 100% {
    background: transparent;
  }
  5%, 7.5% {
    background: radial-gradient(ellipse at var(--flash-x) 30%, rgba(147, 197, 253, 0.05) 0%, transparent 50%);
  }
}

/* Apply flash to body for ambient lighting effect */
body.lightning-active {
  animation: lightning-flash 12s infinite;
  --flash-x: 15%;
}

/* All paths in lightning bolts animate together */
.bolt-1 path {
  animation: lightning-strike 36s infinite 4s;
}

.bolt-2 path {
  animation: lightning-strike-variant 46s infinite 14s;
}

.bolt-3 path {
  animation: lightning-strike 62s infinite 22s;
}

.bolt-4 path {
  animation: lightning-strike-variant 54s infinite 8s;
}

.bolt-5 path {
  animation: lightning-strike 42s infinite 30s;
}

/* Create variation animations for more randomness */
@keyframes lightning-strike-variant {
  0% {
    opacity: 0;
    clip-path: inset(0 0 100% 0);
  }
  3.5% {
    opacity: 1;
    clip-path: inset(0 0 94% 0);
    filter: brightness(2.3) drop-shadow(0 0 45px #e0f2fe);
  }
  3.7% {
    clip-path: inset(0 0 82% 0);
  }
  3.9% {
    clip-path: inset(0 0 65% 0);
  }
  4.1% {
    clip-path: inset(0 0 40% 0);
  }
  4.3% {
    clip-path: inset(0 0 15% 0);
  }
  4.5% {
    opacity: 1;
    clip-path: inset(0 0 0% 0);
    filter: brightness(2.5) drop-shadow(0 0 40px #93c5fd);
  }
  5% {
    opacity: 1;
    filter: brightness(2.2) drop-shadow(0 0 35px #93c5fd);
  }
  6% {
    opacity: 0.9;
    filter: brightness(1.8) drop-shadow(0 0 28px #60a5fa);
  }
  7% {
    opacity: 0.75;
    filter: brightness(1.5) drop-shadow(0 0 22px #60a5fa);
  }
  8% {
    opacity: 0.6;
    filter: brightness(1.3) drop-shadow(0 0 18px #3b82f6);
  }
  9% {
    opacity: 0.45;
    filter: brightness(1.1) drop-shadow(0 0 14px #3b82f6);
  }
  10% {
    opacity: 0.3;
    filter: brightness(1) drop-shadow(0 0 10px #2563eb);
  }
  11% {
    opacity: 0.18;
    filter: brightness(1) drop-shadow(0 0 7px #2563eb);
  }
  12% {
    opacity: 0.1;
    filter: brightness(1) drop-shadow(0 0 4px #1e40af);
  }
  13%, 100% {
    opacity: 0;
    clip-path: inset(0 0 0% 0);
  }
}

/* Apply variant animation to some bolts for variety */
.bolt-2 {
  animation: lightning-strike-variant 46s infinite 14s !important; /* Doubled timing */
}

.bolt-4 {
  animation: lightning-strike-variant 54s infinite 8s !important; /* Doubled timing */
}

/* Homepage-specific lightning positioning to avoid slideshow */
body.homepage .bolt-1 {
  left: 3%;
  top: 70vh; /* Position in lower portion of page */
  width: 250px;
}

body.homepage .bolt-2 {
  right: 5%;
  top: 65vh; /* Varied heights */
  width: 500px; /* Large bolt */
}

body.homepage .bolt-3 {
  left: 8%;
  top: 75vh;
  width: 180px;
}

body.homepage .bolt-4 {
  right: 10%;
  top: 60vh;
  width: 650px; /* Extra large bolt */
}

body.homepage .bolt-5 {
  right: 2%;
  top: 80vh;
  width: 400px; /* Medium-large bolt */
}

/* Mobile adjustments for homepage */
@media (max-width: 768px) {
  body.homepage .lightning-bolt {
    display: none; /* Hide on mobile to avoid slideshow entirely */
  }
}

/* Tablet adjustments for homepage */
@media (min-width: 769px) and (max-width: 1024px) {
  body.homepage .bolt-1 { left: 2%; top: 70vh; }
  body.homepage .bolt-2 { right: 3%; top: 65vh; }
  body.homepage .bolt-3 { left: 5%; top: 75vh; }
  body.homepage .bolt-4 { right: 6%; top: 60vh; }
  body.homepage .bolt-5 { right: 1%; top: 80vh; }
}

/* Large screen adjustments for homepage */
@media (min-width: 1440px) {
  body.homepage .bolt-1 { left: 5%; top: 70vh; }
  body.homepage .bolt-2 { right: 8%; top: 65vh; }
  body.homepage .bolt-3 { left: 12%; top: 75vh; }
  body.homepage .bolt-4 { right: 15%; top: 60vh; }
  body.homepage .bolt-5 { right: 4%; top: 80vh; }
}