/* Section Layout - OJDX Design System */

/* Base Section */
.section {
  padding: var(--space-4xl) 0;
}

.section-sm {
  padding: var(--space-2xl) 0;
}
.section-lg {
  padding: var(--space-5xl) 0;
}

/* Section Variants */
.section-hero {
  padding: var(--space-5xl) 0;
  background: rgba(13, 20, 33, 0.95); /* Semi-transparent space-black */
  position: relative;
  overflow: hidden;
  min-height: 100vh;
  display: flex;
  align-items: center;
}

.section-dark {
  background: rgba(26, 35, 50, 0.95); /* Semi-transparent panel-dark */
}

.section-gradient {
  background: linear-gradient(
    135deg,
    rgba(13, 20, 33, 0.95) 0%,
    rgba(26, 35, 50, 0.95) 100%
  );
}

/* Section Content */
.section-content {
  position: relative;
  z-index: 10;
}

/* Section Headers */
.section-header {
  font-family: var(--font-primary);
  font-size: var(--font-size-2xl);
  font-weight: var(--font-weight-bold);
  color: var(--color-bright-blue);
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin-bottom: var(--space-lg);
  border-bottom: 2px solid var(--color-border-blue);
  padding-bottom: var(--space-sm);
}

.section-header-center {
  text-align: center;
  border-bottom: none;
  margin-bottom: var(--space-2xl);
}

/* Hero Specific */
.hero-title {
  font-family: var(--font-display);
  font-size: var(--font-size-5xl);
  font-weight: var(--font-weight-black);
  color: var(--color-bright-blue);
  text-align: center;
  margin-bottom: var(--space-lg);
  text-shadow: 0 0 20px rgba(79, 195, 247, 0.5);
  letter-spacing: 0.05em;
  line-height: 1.1;
}

.hero-subtitle {
  font-family: var(--font-secondary);
  font-size: var(--font-size-xl);
  color: var(--color-text-light);
  text-align: center;
  margin-bottom: var(--space-2xl);
  opacity: 0.9;
  line-height: 1.4;
}

.hero-cta {
  display: flex;
  justify-content: center;
  gap: var(--space-md);
  flex-wrap: wrap;
}

/* Background Effects */
.section-hero::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background:
    radial-gradient(
      circle at 20% 80%,
      rgba(79, 195, 247, 0.1) 0%,
      transparent 50%
    ),
    radial-gradient(
      circle at 80% 20%,
      rgba(0, 229, 255, 0.05) 0%,
      transparent 50%
    );
  pointer-events: none;
}

/* Scanline Effect */
.scanlines::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: repeating-linear-gradient(
    0deg,
    transparent,
    transparent 2px,
    rgba(79, 195, 247, 0.02) 2px,
    rgba(79, 195, 247, 0.02) 4px
  );
  pointer-events: none;
}

/* Responsive */
@media (max-width: 768px) {
  .section {
    padding: var(--space-2xl) 0;
  }

  .section-hero {
    padding: var(--space-3xl) 0;
    min-height: 80vh;
  }

  .hero-title {
    font-size: var(--font-size-3xl);
  }

  .hero-subtitle {
    font-size: var(--font-size-lg);
  }

  .hero-cta {
    flex-direction: column;
    align-items: center;
  }
}
