/* Rich content from src/blocks.ts. Tokens only: fonts, sizes and colours come from the active theme. */
.blocks{display:flex;flex-direction:column;gap:var(--space-4)}
.blocks>*{margin:0}
.blocks h2,.blocks h3{font-family:var(--font-display)}
.blocks a{color:var(--accent)}
.blocks ul,.blocks ol{padding-left:var(--space-5)}
.blocks figure{margin:0}
.blocks img{display:block;max-width:100%;height:auto;border-radius:var(--radius-sm)}
.blocks figcaption{margin-top:var(--space-2);color:var(--muted)}
.quote{padding-left:var(--space-4);border-left:var(--space-1) solid var(--accent)}
.quote p{margin:0}
.quote cite{display:block;margin-top:var(--space-2);color:var(--muted)}
.delimiter{width:100%;border:0;height:var(--space-1);background:var(--rule-gold)}
.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(10rem,1fr));gap:var(--space-3)}
.gallery img{width:100%;aspect-ratio:1;object-fit:cover;transition:opacity var(--dur-fast)}
.gallery a:hover img,.gallery a:focus-visible img{opacity:.85}
.embed iframe{display:block;width:100%;aspect-ratio:16/9;border:0;border-radius:var(--radius-sm)}
.embed.instagram iframe{aspect-ratio:4/5;max-width:30rem}
.team-card{display:grid;grid-template-columns:auto 1fr;column-gap:var(--space-4);align-items:start;padding:var(--space-4);border:2px solid var(--rule-soft);border-radius:var(--radius-md)}
.team-card img{grid-row:span 3;width:6rem;aspect-ratio:1;object-fit:cover;border-radius:50%}
.team-card h3,.team-card p{grid-column:2;margin:0}
.team-role{color:var(--muted)}
.block-image[data-crop=square] img,.block-image[data-crop=wide] img{width:100%;object-fit:cover;height:auto}
.block-image[data-crop=square] img{aspect-ratio:1}
.block-image[data-crop=wide] img{aspect-ratio:16/9}
.block-image[data-focal=top] img{object-position:top}
.block-image[data-focal=bottom] img{object-position:bottom}
.block-image[data-focal=left] img{object-position:left}
.block-image[data-focal=right] img{object-position:right}
