/*
 * Module: Box Content
 *
 * Navy rounded box, centered in container. Two-column: text+CTA + image.
 * Used on: Facilitation, Culture
 * Dependencies: tokens.css, buttons.css
 */

.box-content {
  max-width: 1216px;
  margin: 0 auto;
  background: var(--color-navy);
  border-radius: var(--radius-xl);
  padding: var(--space-100);
  display: flex; gap: 70px; align-items: center; justify-content: center;
  position: relative;
  overflow: hidden;
}
.box-content::after {
  content: "";
  position: absolute;
  inset: auto -10% -40% auto;
  width: 520px;
  height: 520px;
  background: radial-gradient(circle at center, rgba(2, 193, 127, 0.14), transparent 65%);
  pointer-events: none;
  z-index: 0;
}
.box-content > * { position: relative; z-index: 1; }

/* ── Text column ── */
.box-content__text {
  flex: 0 0 595px;
  display: flex; flex-direction: column; gap: var(--space-sm); justify-content: center;
}
.box-content__text > * { margin: 0; }

.box-content__title {
  font-family: var(--font-heading); font-weight: var(--fw-semibold); font-size: 40px;
  color: var(--color-white); line-height: 1.15;
}
.box-content__dot { color: var(--color-success); }

.box-content__body {
  font-family: var(--font-body); font-weight: var(--fw-regular);
  font-size: 22px; line-height: 1.4; color: var(--color-white);
}
.box-content__body p + p { margin-top: 1em; }

.box-content__cta .wp-block-button__link,
.box-content__cta.btn {
  background: var(--color-success);
  border-radius: var(--radius-pill);
  font-family: var(--font-heading); font-weight: var(--fw-semibold); font-size: 18px;
  text-transform: uppercase; letter-spacing: 0.9px;
  padding: 15px 25px; height: 50px;
  transition: background 0.25s ease, transform 0.25s cubic-bezier(0.2, 0.8, 0.2, 1), box-shadow 0.25s ease;
  box-shadow: 0 4px 18px rgba(2, 193, 127, 0.25);
}
.box-content__cta .wp-block-button__link:hover,
.box-content__cta.btn:hover {
  background: #029D6A;
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(2, 193, 127, 0.35);
}

/* ── Image column ── */
.box-content__image {
  flex: 0 0 410px;
}
.box-content__image img {
  width: 410px; height: 410px; max-width: 100%;
  object-fit: cover; border-radius: var(--radius-lg);
}

/* ── Responsive ── */
@media (max-width: 1024px) {
  .box-content {
    margin: 0 var(--space-sm);
    padding: var(--space-48) var(--space-md);
    flex-direction: column;
    gap: var(--space-lg);
    text-align: center;
  }
  .box-content::after { inset: auto -20% -30% -20%; width: 100%; }
  .box-content__text { flex: none; align-items: center; }
  .box-content__text > * { text-align: center; }
  .box-content__image { flex: none; }
  .box-content__title { font-size: 34px; }
  .box-content__body { font-size: 19px; }
}
@media (max-width: 768px) {
  .box-content {
    margin: 0 var(--space-xs);
    padding: var(--space-lg) var(--space-sm);
    border-radius: var(--radius-lg);
    gap: var(--space-md);
  }
  .box-content__title { font-size: 26px; }
  .box-content__body { font-size: 17px; }
  .box-content__cta .wp-block-button__link,
  .box-content__cta.btn { font-size: 15px; padding: 12px 22px; height: auto; }
}
@media (max-width: 480px) {
  .box-content {
    padding: var(--space-md) var(--space-xs);
    border-radius: var(--radius-md);
  }
  .box-content__title { font-size: 23px; }
  .box-content__body { font-size: 16px; }
}

/* Eyebrow + microcopy for Team Clarity / CTA blocks (dark navy background) */
.box-content__eyebrow {
  font-family: var(--font-heading);
  font-size: var(--font-xs);
  font-weight: var(--fw-semibold);
  text-transform: uppercase;
  letter-spacing: 1.4px;
  color: var(--color-success);
  margin-bottom: var(--space-2xs);
}

.box-content__microcopy {
  margin-top: var(--space-3xs);
  font-size: var(--font-xs);
  color: var(--color-white);
  opacity: 0.75;
}
.box-content__microcopy a {
  color: var(--color-success);
  text-decoration: underline;
  text-underline-offset: 3px;
  transition: opacity 0.2s ease;
}
.box-content__microcopy a:hover { opacity: 0.85; }

/* White bullets inside navy box */
.box-content__body ul,
.box-content__body ul.wp-block-list {
  list-style: disc;
  padding-left: 1.25em;
  margin: 0.5em 0;
  color: var(--color-white);
}
.box-content__body ul li { margin-bottom: 0.4em; }
.box-content__body ul li::marker { color: var(--color-success); }

/* Force images inside .box-content__image to be round circles,
   overriding WP block editor inline styles (custom border radius, resize, etc.) */
.box-content__image .wp-block-image,
.box-content__image figure {
  margin: 0;
  display: flex;
  justify-content: center;
}
.box-content__image .wp-block-image img,
.box-content__image img {
  width: 100% !important;
  max-width: 410px !important;
  height: auto !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
  border-radius: 50% !important;
}
@media (max-width: 1024px) {
  .box-content__image .wp-block-image img,
  .box-content__image img {
    max-width: 320px !important;
  }
}
@media (max-width: 480px) {
  .box-content__image .wp-block-image img,
  .box-content__image img {
    max-width: 260px !important;
  }
}
