/**
 * Page Section Block
 * BEM Structure with ACSS Variables
 */

/* ==========================================================================
   Block: page-section
   ========================================================================== */

   .page-section {
    padding-block: var(--section-space-m);
    padding-inline: var(--section-padding-x);
  }
  
  .page-section__container {
    display: grid;
    grid-template-columns: 1fr;
    gap: var(--space-xl);
    align-items: center;
  }
  
/* Two column layout on larger screens */
@media (min-width: 992px) {
  .page-section__container {
    grid-template-columns: 630px minmax(600px, 1fr);
    gap: var(--space-xxl);
    width: 100% !important;
    max-width: 1600px !important;
    margin-inline: auto !important;
  }
  
  .page-section__content {
    max-width: 520px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    justify-self: end;
  }
}

@media (min-width: 1000px) and (max-width: 1600px) {
  .page-section__container {
    grid-template-columns: 1fr 1fr;
    gap: var(--space-l);
  }
}

  /* ==========================================================================
     Element: page-section__content
     ========================================================================== */
  
  .page-section__content {
    /* Content column */
  }
  
  .page-section__title {
    margin-bottom: var(--space-xs);
    font-size: calc(var(--h2) * 1.25);
    font-family: var(--heading-font-family);
    font-weight: var(--heading-font-weight);
    line-height: var(--heading-line-height);
    color: var(--text-dark);
  }
  
  .page-section__text {
    margin-bottom: var(--space-l);
    font-size: calc(var(--text-m) * 1.125);
    line-height: var(--text-line-height);
    color: var(--text-dark-muted);
  }

  .page-section__text p {
    text-wrap-style: pretty;
  }

  @media (max-width: 991px) {
    .page-section__content {
      padding-block-start: var(--section-space-xs);
      padding-block-end: var(--section-space-s);
      padding-inline: var(--gutter);
    }

    .page-section__container {
      gap: var(--space-xs);
    }

    .page-section__title {
      font-size: var(--h3);
    }

    .page-section__text {
      font-size: calc(var(--text-m) * 0.875);
    }
  }
  
  .page-section__text p {
    margin-bottom: var(--paragraph-spacing);
  }
  
  .page-section__text p:last-child {
    margin-bottom: 0;
  }
  
  .page-section__link {
    display: inline-flex;
    align-items: center;
    gap: 1px;
    font-size: var(--text-m);
    font-weight: 600;
    color: var(--text-dark);
    text-decoration: none;
    transition: var(--transition);
  }
  
  .page-section__link:hover {
    color: var(--primary);
  }

  .page-section__link-icon {
    fill: currentColor;
  }
  
  /* ==========================================================================
     Element: page-section__media
     ========================================================================== */
  .page-section__media {
    position: relative;
    border-radius: 0;
    overflow: hidden;
    background-color: var(--neutral-ultra-light);
    aspect-ratio: 16 / 9; 
    width: 100%;
    max-width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .page-section__image {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    aspect-ratio: 16 / 9;
    border-radius: 0;
  }
  
  /* Automatically alternate layout - every even section reverses */
  .page-section:nth-child(even) .page-section__container {
    direction: rtl;
  }
  
  .page-section:nth-child(even) .page-section__content,
  .page-section:nth-child(even) .page-section__media {
    direction: ltr;
  }
  
  /* On mobile, always show image on top */
  @media (max-width: 991px) {
    .page-section__container {
      grid-template-areas: 
        "media"
        "content";
    }
    
    .page-section__media {
      grid-area: media;
    }
    
    .page-section__content {
      grid-area: content;
    }
    
    /* Reset direction on mobile */
    .page-section:nth-child(even) .page-section__container {
      direction: ltr;
    }
  }

  @media (min-width: 999px) {    
    .page-section__media {
      border-radius: var(--radius-xl);
    }
  }
/* Editor-specific styles for Page Section block */

/* Remove constraints on the block wrapper */
.block-editor-block-list__block[data-type="acf/page-section"] {
  max-width: none !important;
}

/* Make alignfull actually full width */
.wp-block[data-type="acf/page-section"].alignfull {
  max-width: none !important;
}

/* Keep internal container constrained properly */
.editor-styles-wrapper .page-section__container,
.block-editor-block-list__layout .page-section__container {
  max-width: 1600px !important;
  margin-inline: auto !important;
}

/* Remove extra padding */
.editor-styles-wrapper .page-section,
.block-editor-block-list__layout .page-section {
  padding-inline: 0 !important;
}

/* Override WordPress editor constraint - more specific */
.editor-styles-wrapper .wp-block.wp-block[data-type="acf/page-section"] {
  max-width: none !important;
}

.editor-styles-wrapper .wp-block.wp-block[data-type="acf/page-section"].alignfull {
  max-width: none !important;
}

/* Also try without the wrapper */
.wp-block.wp-block[data-type="acf/page-section"] {
  max-width: none !important;
}