/* Shared public document and component sizing, after the theme styles. */
.qim-public { margin: 0; background: var(--qim-surface-page); }
.qim-public :where(h1, h2, h3, h4, h5, h6) { min-width: 0; overflow-wrap: anywhere; }
.qim-public :where(.qim-card, .qim-article-card, .qim-tool-cta, .qim-newsletter,
    .qim-hero-split, .qim-article__aside, .profile-details, .section-account) {
    min-width: 0;
    overflow-wrap: anywhere;
}
.qim-public :where(.qim-grid, .qim-grid--2, .qim-grid--3, .qim-grid--4,
    .qim-hero-split, .qim-article, .qim-news-grid, .qim-legal-split) > * { min-width: 0; }
.qim-public :where(.section-account, .profile-details) {
    font-family: var(--qim-font-sans);
    color: var(--qim-text-body);
}
.qim-public :where(.section-account) { max-width: 100%; }

/* Author pages share the editorial cards and fluid grid, with no fixed-height hero. */
.qim-author-cover { display: block; width: 100%; max-height: 240px; object-fit: cover; }
.qim-author-heading { display: flex; align-items: center; flex-wrap: wrap; gap: var(--qim-space-6); }
.qim-author-heading > div { flex: 1 1 240px; min-width: 0; }
.qim-author-avatar { border-radius: 50%; object-fit: cover; flex: none; }
.qim-author-follow { margin-top: var(--qim-space-4); }
.qim-author-layout { display: grid; grid-template-columns: minmax(0, 280px) minmax(0, 1fr); gap: var(--qim-space-7); align-items: start; }
.qim-author-layout > * { min-width: 0; }
.qim-author-details { display: grid; gap: var(--qim-space-5); }
.qim-author-social { display: flex; flex-wrap: wrap; gap: 8px; padding: 0; margin: 16px 0 0; list-style: none; }
.qim-author-social a { display: flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; }
.qim-author-social img { border-radius: 50%; }
.qim-author-ad { grid-column: 1 / -1; }
@media (max-width: 991.98px) { .qim-author-layout { grid-template-columns: minmax(0, 1fr); } }

/* All newsletter states use the same wrapping and spacing rules. */
.qim-status { position: relative; overflow: hidden; }
.qim-status__body { position: relative; z-index: 2; max-width: 760px; overflow-wrap: anywhere; }
.qim-status__watermark { position: absolute; right: -2vw; top: 50%; transform: translateY(-50%); font-family: var(--qim-font-sans); font-weight: 800; font-size: clamp(180px,26vw,340px); line-height: .8; letter-spacing: -.06em; color: var(--qim-white); opacity: .04; pointer-events: none; user-select: none; white-space: nowrap; }
.qim-status__glyph { font-family: var(--qim-font-data); font-size: clamp(1rem, 3.8vw, 1.5rem); color: var(--qim-clarity); margin: 0 0 var(--qim-space-4); }
.qim-status__message { margin: 0; max-width: 58ch; font-size: var(--qim-text-lg); line-height: var(--qim-leading-relaxed); color: rgba(255,255,255,.82); }
.qim-status__actions { display: flex; gap: var(--qim-space-3); flex-wrap: wrap; margin-top: var(--qim-space-7); }
.qim-status__meta { display: flex; gap: var(--qim-space-7); flex-wrap: wrap; margin: var(--qim-space-8) 0 0; padding-top: var(--qim-space-5); border-top: 1px solid rgba(255,255,255,.2); }
.qim-status__meta > div { min-width: 0; max-width: 100%; }

/* Newsletter hero: the title keeps room for accents/descenders at every width. */
.qim-public .qim-newsletter-title { color: var(--qim-white); font-size: clamp(2rem, 3.6vw, 3.2rem); line-height: 1.15; padding-bottom: .15em; }
.qim-subscribe-card { align-self: start; min-width: 0; }
.qim-subscribe-form { display: flex; flex-direction: column; gap: var(--qim-space-4); min-width: 0; }
.qim-subscribe-form :where(fieldset, legend, label, input, button) { min-width: 0; max-width: 100%; }
.qim-subscribe-form label > span { min-width: 0; overflow-wrap: anywhere; }
