/* ============================================
   TOPICS SECTION ("Программа форума")
   Inspired by layered curved shell design:
   - Thick curved orange left shell
   - Thin gradient border elsewhere
   - Curved inset dark card
   ============================================ */

.topics {
  padding: 10rem 10rem;
}

.topics__inner {
  width: 100%;
  max-width: 148rem;
  margin: 0 auto;
}

/* ============================================
   TITLE
   ============================================ */

.topics__title {
  font-size: 6rem;
  font-weight: 700;             /* was 800 */
  text-transform: none;         /* was uppercase — removed */
  letter-spacing: -0.05em;      /* aligned with other sections */
  line-height: 1.05;
  margin-bottom: 6rem;
  max-width: 110rem;
  color: var(--color-white);    /* base text is white */
}

/* ============================================
   GRID
   ============================================ */

.topics__grid {
  display: grid;

  grid-template-columns: repeat(2, 1fr);

  gap: 2rem;
}

/* ============================================
   CARD
   ============================================ */

.topic-row {
  position: relative;

  border-radius: 3rem;

  padding: 4rem 5rem 4rem 6rem;

  overflow: hidden;

  isolation: isolate;
}

/* ============================================
   OUTER ORANGE SHELL
   ============================================ */

.topic-row::before {
  content: '';

  position: absolute;
  inset: 0;

  border-radius: inherit;

  background: #F36A52;

  z-index: 1;
}

/* ============================================
   INNER DARK CARD
   ============================================ */

.topic-row::after {
  content: '';

  position: absolute;

  top: 0.2rem;
  right: 0;            /* changed */
  bottom: 0.2rem;

  left: 2rem;

  border-radius: 2.4rem;

  background:
    linear-gradient(
      rgba(8, 12, 28, 0.96),
      rgba(8, 12, 28, 0.96)
    ) padding-box,

    linear-gradient(
      90deg,
      #F36A52,
      #D24FFF,
      #00B4FF
    ) border-box;

  border: 0.2rem solid transparent;

  z-index: 2;
}

/* ============================================
   CONTENT
   ============================================ */

.topic-row > * {
  position: relative;
  z-index: 3;
}

.topic-row__title {
  font-size: 2.4rem;

  font-weight: 700;

  text-transform: uppercase;

  color: var(--color-white);

  letter-spacing: -0.02em;

  line-height: 1.1;

  margin-bottom: 1.2rem;
}

.topic-row__text {
  font-size: 1.6rem;

  font-weight: 400;

  line-height: 1.4;

  color: rgba(255, 255, 255, 0.6);
}

/* ============================================
   RESPONSIVE
   ============================================ */

@media (max-width: 900px) {

  .topics {
    padding: 8rem 4rem;
  }

  .topics__title {
    font-size: 5rem;

    margin-bottom: 4rem;
  }

  .topics__grid {
    grid-template-columns: 1fr;
  }

  .topic-row {
    padding:
      3rem
      3.5rem
      3rem
      4.5rem;
  }

  .topic-row::after {
    left: 1.4rem;
  }

  .topic-row__title {
    font-size: 2rem;
  }

  .topic-row__text {
    font-size: 1.5rem;
  }
}