.two-column {
  padding: 24px 0;
}

.two-column__container {
  margin: 0 auto;
  display: flex;
  flex-direction: column-reverse;
  align-items: center;
  gap: 24px;
  width: 90%;
  max-width: 100%; /* Optional cap to prevent excessive stretching on ultra-wide monitors */

  @media (min-width: 768px) {
    margin-left: auto;
    margin-right: auto;
    flex-direction: row;
    gap: 42px;
  }
}

.two-column__media, .two-column__content {
  flex: 1;
  width: 100%;
}
.two-column__image {
  width: 100%;
  height: 264px;
  border-radius: 24px;
  display: block;
  object-fit: cover;

  @media (min-width: 1024px) {
    border-radius: 42px;
    height: 542px;
  }
}

.two-column-section__link-wrapper {
  margin-top: 24px !important;
}

/* -------------------------------------------------------------
   TWO COLUMN SECTION LINK BUTTON
------------------------------------------------------------- */

.two-column-section__button {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  background-color: #001E3F !important;
  color: #FFFFFF !important;
  padding: 12px 28px !important;
  border-radius: 9999px !important; /* Full border radius / pill shape */
  text-decoration: none !important;
  font-weight: 600 !important;
  font-size: 1rem !important;
  transition: all 0.2s ease-in-out !important;
}

/* Right Arrow Icon with Line (→) via CSS Pseudo-element */
.two-column-section__button::after {
  content: "" !important;
  display: inline-block !important;
  width: 18px !important;
  height: 18px !important;
  /* SVG icon for right arrow with line */
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="white" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><line x1="5" y1="12" x2="19" y2="12"/><polyline points="12 5 19 12 12 19"/></svg>') !important;
  background-size: contain !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  transition: transform 0.2s ease-in-out !important;
}

/* Hover State */
.two-column-section__button:hover {
  background-color: #FFBE00 !important;
  color: #001E3F !important;
}

.two-column-section__button:hover::after {
  /* Swap arrow stroke to dark blue on hover */
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23001E3F" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><line x1="5" y1="12" x2="19" y2="12"/><polyline points="12 5 19 12 12 19"/></svg>') !important;
  transform: translateX(4px) !important; /* Smooth rightward shift */
}

/* Cambodia Home Page Specific Image Height Override */
.node--type-cambodia-home-page .two-column__image {
  @media (min-width: 1024px) {
    border-radius: 42px;
    height: 355px;
  }

  @media (max-width: 767px) {
      /* object-position: 24% 50% !important; */
      object-fit: contain;
      height: auto;
  }
}


/* Center-align container content */
.page-node-16 .two-column__content {
  text-align: center !important;
  display: flex;
  flex-direction: column;
  align-items: center;
}

/* Ensure label displays block/flex for proper centering */
.page-node-16 .two-column__content .section__label {
  display: inline-block;
  text-align: center;
  margin-bottom: 8px; /* Optional spacing under label */
}

/* Ensure title centers properly */
.page-node-16 .two-column__content .section__title {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}

.page-node-16 .section__description,
.page-node-31 .section__description {
  white-space: pre-line;
}

.page-node-16 .section__description {
  text-align: left;
}

.page-node-31 .two-column__image {
    @media (min-width: 1024px) {
        border-radius: 42px;
        height: 357px;
    }
}