/* Organism: Section */
.organism-section {
  position: relative;
  padding: var(--section-padding-y) var(--container-padding);
  z-index: 1;
  overflow: visible;
}

/* Section Background Variants */
.organism-section--black {
  background-color: var(--color-bg-black);
  color: var(--color-text-white);
}

.organism-section--dark-gray {
  background-color: var(--color-bg-dark-gray);
  color: var(--color-text-white);
}

.organism-section--half-black {
  background: linear-gradient(to bottom, var(--color-bg-black) 50%, var(--color-bg-dark-gray) 50%);
  color: var(--color-text-white);
  padding-bottom: calc(var(--section-padding-y) + var(--spacing-12));
}

.organism-section--white {
  background-color: #FFFFFF;
  color: var(--color-text-dark);
}

/* Section Container */
.organism-section__container {
  max-width: var(--container-max-width);
  margin: 0 auto;
  position: relative;
  z-index: 2;
}

.organism-section__header {
  text-align: center;
  margin-bottom: var(--spacing-12);
}

.organism-section__pretitle {
  margin-bottom: var(--spacing-4);
}

.organism-section__title {
  margin-bottom: var(--spacing-4);
}

.organism-section__description {
  max-width: 800px;
  margin: 0 auto;
  font-size: var(--font-size-lg);
  line-height: var(--line-height-relaxed);
}

/* Section Content */
.organism-section__content {
  margin-top: var(--spacing-10);
}

/* Grid Layouts */
.organism-section__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: var(--spacing-8);
}

.organism-section__grid--3-col {
  grid-template-columns: repeat(3, 1fr);
}

.organism-section__grid--2-col {
  grid-template-columns: repeat(2, 1fr);
}

/* Background Curves Decoration */
.organism-section__curves {
  position: absolute;
  bottom: -50px;
  left: 0;
  right: 0;
  height: 100px;
  overflow: hidden;
  pointer-events: none;
  z-index: 0;
}

/* Ensure buttons are above curves */
.organism-section .atom-button {
  position: relative;
  z-index: 10;
}

.organism-section .utility-text-center {
  position: relative;
  z-index: 10;
}

.organism-section__curves-fill {
  width: 100%;
  height: 100%;
  background: var(--color-bg-dark-gray);
  border-radius: 50% 50% 0 0 / 100% 100% 0 0;
}

/* Responsive */
@media (max-width: 1024px) {
  .organism-section__grid--3-col {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 768px) {
  .organism-section {
    padding: var(--spacing-10) var(--container-padding);
  }
  
  .organism-section__grid,
  .organism-section__grid--3-col,
  .organism-section__grid--2-col {
    grid-template-columns: 1fr;
    gap: var(--spacing-6);
  }
  
  .organism-section__header {
    margin-bottom: var(--spacing-8);
  }
}
