/* /source-elements-sovas-scholarship/ */
.sv-banner{width:100%;height:auto;border-radius:var(--r-xl);margin:26px 0 8px}
.sv-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:22px}
.sv-card{display:flex;flex-direction:column;gap:14px;min-width:0;padding:20px;
  background:var(--se-inner);border:1px solid rgba(var(--se-border-teal-rgb),.16);
  border-radius:var(--r-xl)}
/* The photographs arrive at wildly different shapes; a fixed 4:5 plate keeps
   twelve of them reading as one set. */
.sv-face{display:block;aspect-ratio:4/5;width:100%;overflow:hidden;
  border-radius:var(--r-lg);background:var(--se-bg)}
.sv-face img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block}
.sv-card h3{margin:0;font-size:18px;font-weight:700;color:var(--se-text-white);
  line-height:1.3}
.sv-bio p{margin:0 0 10px;font-size:14px;line-height:1.6;color:var(--se-text-dim)}
.sv-bio p:last-child{margin-bottom:0}
.sv-bio a{color:var(--accent)}
.sv-bio strong,.sv-bio b{color:var(--se-text-secondary);font-weight:600}
/* The intro is body copy: the page's own content width (the .wrap column),
   not the 52ch hero .lede it used to sit in, and real paragraph breaks. */
.sv-intro{margin:22px 0 0;font-size:17px;line-height:1.65;color:var(--se-text-secondary)}
.sv-intro p{margin:0 0 16px}
.sv-intro p:last-child{margin-bottom:0}
.sv-intro a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
@media (max-width:640px){.sv-intro{font-size:16px}}
/* The partnership panel is a 16:9 picture of text: the content width, its own
   aspect (height:auto from its width/height), never cropped. */
.sv-panel{margin:40px 0 0}
.sv-panel img{display:block;width:100%;height:auto;border-radius:var(--r-xl)}
/* "Apply today" lands here; clear the sticky header. */
#apply-scholarship{scroll-margin-top:calc(var(--hdr-h) + 32px)}
