/* Subject illustrations complete the detail pages without competing with the data. */
.collection-detail-hero { padding:36px 0 30px; }
.collection-hero-main { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(0,1fr); align-items:center; gap:40px; }
.collection-hero-copy { min-width:0; }
.collection-detail-hero .eyebrow { margin-bottom:17px; }
.collection-detail-hero h1 { max-width:740px; font-size:clamp(2.2rem,3.6vw,3.1rem); font-weight:500; line-height:1.12; letter-spacing:-.045em; margin-bottom:22px; }
.collection-detail-hero .lead { font-size:1rem; max-width:650px; margin-bottom:23px; }
.collection-detail-hero .actions { gap:12px; }
.collection-detail-hero .actions .btn { min-height:44px; font-size:.83rem; padding:10px 17px; }
.collection-hero-art { min-width:0; width:100%; max-width:410px; justify-self:end; }
.collection-hero-art img { display:block; width:100%; height:auto; }
.collection-detail-hero .people-facts { margin:28px 0 0; padding:19px 24px; border:1px solid #dce5f2; border-radius:9px; background:#f5f8fd; gap:14px 48px; }
.collection-intro .people-facts { display:grid; grid-template-columns:1fr 1fr 1.4fr; }
.collection-detail-hero .people-facts dt { font-size:.62rem; color:#566c89; }
.collection-detail-hero .people-facts dd { font-size:1.35rem; color:#253d5e; font-weight:600; }
.collection-detail-hero .collection-asof { margin:13px 0 0; max-width:100%; color:#53627a; font-size:.76rem; }
.collection-detail-hero .collection-asof .muted { display:inline; margin-left:7px; }
.collection-source { min-width:0; overflow-wrap:anywhere; }

/* A quieter generic sketch works across every reference dataset. */
.dataset-header-body { display:grid; grid-template-columns:minmax(0,1fr) 235px; gap:26px; align-items:center; }
.dataset-header-copy { min-width:0; }
.dataset-header-art { display:block; width:100%; height:auto; }
.dataset-detail-header .dataset-heading h1 { font-size:clamp(2rem,3.4vw,2.85rem); }

/* Contact has a single email address and distinct, useful ways to start. */
.contact-hero { padding-top:36px; padding-bottom:35px; }
.contact-hero .discovery-hero-art { max-width:350px; }
.contact-hero .lead { max-width:560px; }
.contact-email { display:inline-flex; align-items:center; gap:12px; padding:13px 18px; margin-top:6px; border:1px solid #cdd9eb; background:#f5f8fd; border-radius:7px; color:#233f69; font-weight:600; font-size:.93rem; text-underline-offset:5px; }
.contact-email .site-icon { width:22px; height:22px; flex-shrink:0; color:#5a75a0; }
.contact-email:hover { color:#162f54; border-color:#9eb3cf; background:#edf3fc; }
.contact-section-heading { display:flex; align-items:baseline; justify-content:space-between; gap:18px; margin-bottom:22px; }
.contact-section-heading h2 { font-size:1.45rem; font-weight:500; margin:0; }
.contact-section-heading p { margin:0; font-size:.85rem; color:var(--ink-soft); }
.contact-topic-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.contact-topic { display:flex; flex-direction:column; align-items:start; padding:26px; border:1px solid #dce3ee; border-radius:10px; background:linear-gradient(145deg,#f8faff,#fff 70%); }
.contact-topic h3 { font-size:1.3rem; margin:21px 0 16px; }
.contact-topic p { color:#53627a; font-size:.89rem; }
.contact-topic .contact-note { font-size:.78rem; color:#52637c; }
.contact-topic > a { margin-top:auto; color:#2d4c76; font-size:.82rem; font-weight:600; text-decoration:underline; text-decoration-color:#b8c6dc; text-underline-offset:5px; }
.contact-fit { display:flex; gap:20px; align-items:center; padding:24px; margin:26px 0 36px; background:#f3f6fc; border:1px solid #dce5f2; border-radius:10px; }
.contact-fit h2 { font-size:1.2rem; margin:0 0 7px; }
.contact-fit p { color:#53627a; font-size:.87rem; margin:0; }
.contact-fit > a { margin-left:auto; color:#2d4c76; font-size:.82rem; font-weight:600; flex-shrink:0; text-decoration:underline; text-decoration-color:#b8c6dc; }
.contact-project { display:grid; grid-template-columns:1.15fr 1fr; gap:65px; border-top:1px solid #dce5f2; padding-top:34px; }
.contact-project .eyebrow { margin-bottom:14px; }
.contact-project h2 { font-size:2rem; font-weight:500; margin:0 0 18px; }
.contact-project p { color:#53627a; font-size:.92rem; }
.contact-project-invite { position:relative; padding-left:62px; }
.contact-project-invite .discovery-mark { position:absolute; left:0; top:2px; }
.contact-project-invite > a { color:#2d4c76; font-weight:600; font-size:.9rem; text-decoration:underline; text-decoration-color:#b8c6dc; }
.contact-project-invite .small { font-size:.77rem; margin-top:17px; margin-bottom:0; }
@media (max-width:1000px) {
    .collection-hero-main { grid-template-columns:minmax(0,1.65fr) minmax(0,1fr); gap:24px; }
    .collection-detail-hero h1 { font-size:2.45rem; }
    .dataset-header-body { grid-template-columns:minmax(0,1fr) 185px; gap:16px; }
    .contact-topic { padding:22px; }
    .contact-project { gap:36px; }
}
@media (max-width:760px) {
    .collection-detail-hero { padding:28px 0 24px; }
    .collection-hero-main { grid-template-columns:minmax(0,1fr) 190px; gap:20px; align-items:start; }
    .collection-detail-hero h1 { font-size:2.15rem; }
    .collection-detail-hero .lead { font-size:.94rem; }
    .collection-hero-art { margin-top:40px; }
    .collection-detail-hero .people-facts { gap:13px 30px; padding:17px 20px; }
    .contact-section-heading { display:block; }
    .contact-section-heading p { margin-top:10px; }
    .contact-topic-grid { grid-template-columns:1fr; gap:16px; }
    .contact-topic { position:relative; padding:24px 24px 24px 86px; }
    .contact-topic .discovery-mark { position:absolute; left:22px; top:24px; }
    .contact-topic h3 { margin:3px 0 15px; }
    .contact-fit { flex-wrap:wrap; gap:14px; }
    .contact-fit > div { flex:1; }
    .contact-fit > a { margin-left:58px; }
    .contact-project { grid-template-columns:1fr; gap:14px; }
}
@media (max-width:640px) {
    .collection-hero-main { display:flex; flex-direction:column; gap:0; }
    .collection-hero-art { order:-1; align-self:flex-end; width:155px; margin:-4px 0 -12px; }
    .collection-hero-copy { width:100%; }
    .collection-detail-hero .eyebrow { max-width:calc(100% - 155px); margin-top:-88px; min-height:88px; display:flex; flex-direction:column; justify-content:center; align-items:start; font-size:.61rem; }
    .collection-detail-hero .collection-eyebrow-separator { display:none; }
    .collection-detail-hero h1 { font-size:clamp(2rem,6.6vw,2.45rem); }
    .collection-detail-hero .people-facts { gap:12px 25px; }
    .collection-intro .people-facts { display:flex; }
    .collection-detail-hero .people-facts dd { font-size:1.15rem; }
    .collection-detail-hero .collection-asof .muted { display:block; margin-left:0; }
    .dataset-header-body { display:block; }
    .dataset-header-art { position:absolute; width:95px; right:0; top:12px; }
    .dataset-detail-header .breadcrumb { max-width:calc(100% - 110px); }
    .contact-hero { padding-top:28px; }
    .contact-email { font-size:.85rem; padding:12px; gap:9px; }
}
@media (max-width:380px) {
    .collection-hero-art { width:125px; }
    .collection-detail-hero .eyebrow { max-width:calc(100% - 130px); margin-top:-70px; min-height:70px; }
    .contact-topic { padding:22px; }
    .contact-topic .discovery-mark { position:static; margin-bottom:17px; }
    .contact-fit { padding:20px; }
    .contact-fit > a { margin-left:0; }
}
