.article-hero h1 { font-size:clamp(2.5rem,4.5vw,4.5rem); line-height:1.03; letter-spacing:-.035em; }
.article-hero-grid { align-items:center; }
.article-image { flex-direction:column; }
.article-image picture { display:block; width:100%; }
.article-image figcaption { padding:1rem; font-size:.82rem; line-height:1.5; color:var(--ink-soft); }
.article-section-figure:has(img[src*="studio-lounge"]) { max-width:540px; margin-left:auto; margin-right:auto; }
.article-section-figure:has(img[src*="studio-lounge"]) img { height:auto; }
@media(max-width:600px) { .article-hero h1 { font-size:clamp(2.5rem,10vw,3.5rem); } }
/* Keep button text above the shared .article-section a color rule. */
.article-content a.btn,
.article-content a.btn:link,
.article-content a.btn:visited,
.article-content a.btn:hover,
.article-content a.btn:focus,
.article-content a.btn:active { color:#fff; }
.article-content a.btn { max-width:100%; text-align:center; white-space:normal; }
.article-content a.btn:focus-visible { outline:2px solid var(--ink); outline-offset:4px; }
