:root{ /* uses landing.css palette; override only where needed */ }

/* page headings */
.ab-hero{padding:48px 0 12px;background:#fff}
.ab-h1{font-size:2.1rem;text-align:center;color:#0f1e49;margin:0}

/* grids */
.ab-section{padding:28px 0 56px;background:#fff}
.ab-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center;margin-top:28px}
.ab-grid--swap{grid-auto-flow:dense}
.ab-grid--swap .ab-media{order:1}
.ab-grid--swap .ab-copy{order:2}

.ab-copy p{color:#4b5563;line-height:1.8;margin:0 0 1.1rem}
.ab-media{display:flex;justify-content:center}
.ab-img{
  width:100%;max-width:520px;border-radius:16px;
  box-shadow:0 12px 28px rgba(0,0,0,.12);
  object-fit:cover; display:block;
}

/* callout panel for bullets */
.ab-callout{
  background:#eef0f5;border:1px solid #d9dee8;color:#1f2a44;
  border-radius:14px;padding:18px 20px;margin:14px 0 18px;
  box-shadow:0 8px 24px rgba(0,0,0,.06);
}
.ab-callout p{margin:.5rem 0}

/* mission line */
.ab-mission{
  text-align:center;font-weight:600;color:#0f1e49;margin-top:10px
}

@media (max-width: 900px){
  .ab-grid{grid-template-columns:1fr;gap:22px}
  .ab-grid--swap .ab-media,.ab-grid--swap .ab-copy{order:initial}
  .ab-img{max-width:100%}
}
