.os-a { background: var(--cream); padding: 96px 0 120px; position: relative; }
.os-a__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 64px;
  align-items: center;
}
@media (min-width: 900px) { .os-a__grid { grid-template-columns: 1.2fr 1fr; gap: 80px; } }

.os-a__copy { position: relative; }
.os-a__num {
  position: absolute;
  top: -30px; left: -20px;
  font-family: var(--font-serif);
  font-size: clamp(200px, 30vw, 360px);
  line-height: 0.9;
  color: rgba(36, 34, 83, 0.06);
  font-weight: 400;
  user-select: none;
  pointer-events: none;
  z-index: 0;
}
.os-a__copy > :not(.os-a__num) { position: relative; z-index: 1; }
.os-a__copy h2 { font-family: var(--font-serif); font-weight: 400; font-size: clamp(32px, 4.4vw, 56px); margin: 0 0 20px; line-height: 1.05; }
.os-a__copy p { color: var(--ink-muted); font-size: 17px; line-height: 1.55; max-width: 520px; margin-bottom: 24px; }
.os-a__link { color: var(--teal); font-weight: 600; border-bottom: 1px solid var(--teal); padding-bottom: 2px; }

.os-a__image { position: relative; max-width: 420px; margin: 0 auto; width: 100%; }
.os-a__outline { position: absolute; width: 100%; height: 100%; top: 20px; left: 20px; z-index: 0; }
.os-a__blob {
  position: relative;
  aspect-ratio: 5/6;
  overflow: hidden;
  clip-path: path('M200,20 C 340,20 390,140 380,260 C 370,380 270,460 180,460 C 90,460 20,360 30,230 C 40,100 120,20 200,20 Z');
  z-index: 1;
}
.os-a__blob img { width: 100%; height: 100%; object-fit: cover; }
