/* =========================================
   ABOUT PAGE
   FUTURISTIC LUXURY EDITION
========================================= */

/* =========================================
   PAGE HERO
========================================= */

.page-hero {

  position: relative;

  padding:
    180px 0 140px;

  background:
    linear-gradient(
      180deg,
      #0B0D12 0%,
      #181C24 100%
    );

  text-align: center;

  overflow: hidden;

  isolation: isolate;

}

/* =========================================
   HERO GLOW EFFECTS
========================================= */

.page-hero::before {

  content: '';

  position: absolute;

  inset: 0;

  background:
    radial-gradient(
      circle at top left,
      rgba(138,43,226,0.18),
      transparent 35%
    ),
    radial-gradient(
      circle at bottom right,
      rgba(0,217,255,0.14),
      transparent 35%
    );

  z-index: -1;

}

/* =========================================
   HERO OVERLAY GRID
========================================= */

.page-hero::after {

  content: '';

  position: absolute;

  inset: 0;

  background-image:
    linear-gradient(
      rgba(255,255,255,0.03) 1px,
      transparent 1px
    ),
    linear-gradient(
      90deg,
      rgba(255,255,255,0.03) 1px,
      transparent 1px
    );

  background-size: 60px 60px;

  mask-image:
    radial-gradient(circle, rgba(0,0,0,1), transparent 80%);

  opacity: 0.3;

  z-index: -1;

}

/* =========================================
   HERO CONTENT
========================================= */

.page-hero .container {

  position: relative;

  z-index: 3;

}

/* =========================================
   PAGE TITLE
========================================= */

.page-title {

  font-size:
    clamp(3rem, 6vw, 6rem);

  font-weight: 800;

  line-height: 1.05;

  letter-spacing: -0.05em;

  margin-bottom: 24px;

  background: var(--gradient-primary);

  -webkit-background-clip: text;

  -webkit-text-fill-color: transparent;

  background-clip: text;

  text-shadow:
    0 0 30px rgba(0,217,255,0.12);

}

/* =========================================
   PAGE SUBTITLE
========================================= */

.page-subtitle {

  max-width: 850px;

  margin:
    0 auto;

  color:
    rgba(255,255,255,0.82);

  font-size: 1.15rem;

  line-height: 1.9;

}

/* =========================================
   PRIMARY TEXT
========================================= */

.text-primary {

  color: var(--color-primary);

  text-shadow:
    0 0 10px rgba(0,217,255,0.45);

}

/* =========================================
   ABOUT SECTION
========================================= */

.about-section {

  position: relative;

  padding:
    var(--space-xxxl) 0;

  background:
    linear-gradient(
      180deg,
      #0F1115 0%,
      #181C24 100%
    );

  overflow: hidden;

}

/* =========================================
   SECTION GLOW
========================================= */

.about-section::before {

  content: '';

  position: absolute;

  inset: 0;

  background:
    radial-gradient(
      circle at center,
      rgba(0,217,255,0.05),
      transparent 50%
    );

  pointer-events: none;

}

/* =========================================
   ABOUT GRID
========================================= */

.about-grid {

  display: grid;

  grid-template-columns:
    1.1fr 1fr;

  gap: var(--space-xxl);

  align-items: center;

}

/* =========================================
   ABOUT CONTENT
========================================= */

.about-content {

  position: relative;

  z-index: 2;

}

.about-content p {

  color: var(--color-text-muted);

  line-height: 1.9;

  margin-bottom: 20px;

}

/* =========================================
   ABOUT IMAGE
========================================= */

.about-image {

  position: relative;

  overflow: hidden;

  border-radius: var(--radius-xl);

}

.about-image img {

  width: 100%;

  border-radius: inherit;

  display: block;

  transition:
    transform 0.8s ease,
    filter 0.5s ease;

  box-shadow:
    0 25px 60px rgba(0,0,0,0.45);

}

/* =========================================
   IMAGE OVERLAY
========================================= */

.about-image::before {

  content: '';

  position: absolute;

  inset: 0;

  background:
    linear-gradient(
      180deg,
      rgba(0,0,0,0),
      rgba(0,0,0,0.2)
    );

  z-index: 2;

}

/* =========================================
   IMAGE GLOW BORDER
========================================= */

.about-image::after {

  content: '';

  position: absolute;

  inset: 0;

  border-radius: inherit;

  border:
    1px solid rgba(0,217,255,0.16);

  box-shadow:
    0 0 30px rgba(0,217,255,0.12);

  z-index: 3;

  pointer-events: none;

}

/* =========================================
   IMAGE HOVER
========================================= */

.about-image:hover img {

  transform: scale(1.04);

  filter:
    brightness(1.04)
    contrast(1.04);

}

/* =========================================
   FEATURE LIST
========================================= */

.about-features {

  display: grid;

  gap: 16px;

  margin-top: 32px;

}

.about-feature {

  position: relative;

  padding:
    16px 20px 16px 58px;

  border-radius: var(--radius);

  background:
    rgba(255,255,255,0.04);

  border:
    1px solid rgba(255,255,255,0.06);

  backdrop-filter: blur(10px);

  color: var(--color-text);

  transition: var(--transition);

  overflow: hidden;

}

.about-feature:hover {

  transform:
    translateX(6px);

  border-color:
    rgba(0,217,255,0.18);

  box-shadow:
    0 0 24px rgba(0,217,255,0.08);

}

/* =========================================
   FEATURE ICON
========================================= */

.about-feature::before {

  content: '✔';

  position: absolute;

  left: 18px;

  top: 50%;

  transform: translateY(-50%);

  width: 26px;

  height: 26px;

  display: flex;

  align-items: center;

  justify-content: center;

  border-radius: 50%;

  background: var(--gradient-primary);

  color: #fff;

  font-size: 12px;

  font-weight: 700;

  box-shadow: var(--glow-blue);

}

/* =========================================
   STATS SECTION
========================================= */

.about-stats {

  display: grid;

  grid-template-columns:
    repeat(4, 1fr);

  gap: 24px;

  margin-top: var(--space-xxl);

}

/* =========================================
   STAT CARD
========================================= */

.stat-card {

  position: relative;

  padding: 40px 24px;

  text-align: center;

  border-radius: var(--radius-lg);

  background:
    rgba(255,255,255,0.04);

  border:
    1px solid rgba(255,255,255,0.06);

  backdrop-filter: blur(10px);

  overflow: hidden;

  transition: var(--transition);

}

.stat-card:hover {

  transform:
    translateY(-8px);

  border-color:
    rgba(0,217,255,0.18);

  box-shadow:
    0 0 30px rgba(0,217,255,0.12);

}

.stat-number {

  font-size:
    clamp(2rem, 5vw, 3rem);

  font-weight: 800;

  line-height: 1;

  margin-bottom: 10px;

  background: var(--gradient-primary);

  -webkit-background-clip: text;

  -webkit-text-fill-color: transparent;

  background-clip: text;

}

.stat-label {

  color: var(--color-text-muted);

  font-size: 0.95rem;

  letter-spacing: 0.4px;

  text-transform: uppercase;

}

/* =========================================
   RESPONSIVE
========================================= */

@media (max-width: 1200px) {

  .about-grid {

    gap: var(--space-xl);

  }

}

@media (max-width: 992px) {

  .about-grid {

    grid-template-columns: 1fr;

    text-align: center;

  }

  .about-stats {

    grid-template-columns:
      repeat(2, 1fr);

  }

}

@media (max-width: 768px) {

  .page-hero {

    padding:
      150px 0 110px;

  }

  .page-title {

    font-size:
      clamp(2.4rem, 9vw, 4rem);

  }

  .page-subtitle {

    font-size: 1rem;

  }

  .about-section {

    padding:
      var(--space-xxl) 0;

  }

  .about-feature {

    text-align: left;

  }

}

@media (max-width: 576px) {

  .about-stats {

    grid-template-columns: 1fr;

  }

  .stat-card {

    padding: 32px 20px;

  }

}
