@import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;600;700&family=Roboto:wght@500;600;700&display=swap');

.dn-index-page{max-width:1240px;margin:0 auto;padding:28px 22px 70px;font-family:'Open Sans',Arial,sans-serif;color:#263746;box-sizing:border-box}.dn-index-page *{box-sizing:border-box}.dn-index-page h1,.dn-index-page h2,.dn-index-page h3{font-family:Roboto,Arial,sans-serif}.dn-test-banner{display:flex;gap:12px;align-items:center;justify-content:center;flex-wrap:wrap;margin:0 0 22px;padding:10px 16px;border:1px solid #dcc27b;border-left:5px solid #C79600;background:#fff8e6;color:#6F5200;border-radius:7px;font-size:.92rem}.dn-test-banner strong{letter-spacing:.06em}.dn-index-hero{position:relative;padding:34px 36px;margin-bottom:20px;background:linear-gradient(135deg,#eef7fb,#fff);border:1px solid #c8e1ec;border-radius:14px;box-shadow:0 8px 22px rgba(20,70,96,.07)}.dn-index-hero h1{margin:3px 0 10px;color:#145f82;font-size:clamp(2rem,4vw,3rem);line-height:1.08}.dn-index-hero>p:not(.dn-eyebrow){max-width:760px;margin:0;line-height:1.7}.dn-eyebrow,.dn-state-code{margin:0;color:#147ca6;font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:.8rem}.dn-index-total{display:inline-flex;align-items:baseline;gap:9px;margin-top:20px;padding:9px 14px;background:#fff;border:1px solid #c8e1ec;border-radius:9px}.dn-index-total strong{font:700 1.45rem Roboto,Arial,sans-serif;color:#145f82}.dn-index-total span{font-size:.9rem}.dn-index-tabs{display:flex;gap:9px;flex-wrap:wrap;margin:0 0 20px}.dn-index-tabs a,.dn-index-page a{color:#8A6500;text-decoration-color:#C79600}.dn-index-tabs a{padding:10px 14px;background:#fff;border:1px solid #c8e1ec;border-radius:8px;text-decoration:none;font-weight:700}.dn-index-tabs a:hover,.dn-index-tabs a.active{background:#eef7fb;border-color:#8fc6da;color:#145f82}.dn-state-jump{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:20px 0 28px;padding:16px 18px;background:#f7fbfd;border:1px solid #d7e9f0;border-radius:10px}.dn-state-jump label{font-weight:700;color:#145f82}.dn-state-jump select{min-width:260px;max-width:100%;padding:9px 34px 9px 10px;border:1px solid #a9cbd8;border-radius:6px;background:#fff;font:inherit}.dn-state-section{scroll-margin-top:18px;margin:0 0 32px;padding:0 0 25px;border-bottom:1px solid #dce9ee}.dn-state-heading{display:flex;justify-content:space-between;align-items:end;gap:15px;margin-bottom:15px;padding:13px 17px;background:#eaf5fa;border-left:5px solid #147ca6;border-radius:8px}.dn-state-heading h2{margin:2px 0 0;color:#145f82;font-size:1.55rem}.dn-state-heading>span{font-weight:700;color:#516975;white-space:nowrap}.dn-case-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:15px}.dn-case-card{overflow:hidden;background:#fff;border:1px solid #d7e6ec;border-radius:10px;box-shadow:0 3px 10px rgba(30,70,90,.06);transition:transform .15s ease,box-shadow .15s ease}.dn-case-card:hover{transform:translateY(-2px);box-shadow:0 7px 18px rgba(30,70,90,.12)}.dn-case-photo{display:block;aspect-ratio:4/3;background:#eef4f6;overflow:hidden}.dn-case-photo img{display:block;width:100%;height:100%;object-fit:contain;background:#f4f7f8}.dn-case-info{padding:12px 13px 14px}.dn-case-info h3{margin:0 0 4px;font-size:1rem}.dn-case-info h3 a{text-decoration:none;color:#8A6500}.dn-case-name{margin:0 0 9px;font-weight:700;color:#334c58}.dn-case-info dl{margin:0;font-size:.83rem}.dn-case-info dl div{display:grid;grid-template-columns:55px 1fr;gap:6px;padding:3px 0;border-top:1px solid #edf2f4}.dn-case-info dt{font-weight:700;color:#637984}.dn-case-info dd{margin:0}.dn-section-top{display:inline-block;margin-top:13px;font-size:.85rem}.dn-index-error,.dn-index-note{padding:20px;background:#f7fbfd;border:1px solid #d7e9f0;border-radius:10px}.dn-index-error{border-left:5px solid #b45b52;background:#fff7f6;color:#71352f}.dn-index-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:22px 0}.dn-index-choice{display:flex;flex-direction:column;gap:7px;padding:26px;background:#fff;border:1px solid #c8e1ec;border-radius:12px;text-decoration:none;box-shadow:0 5px 15px rgba(20,70,96,.06)}.dn-index-choice:hover{background:#f5fbfd}.dn-index-choice span{color:#147ca6;font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.dn-index-choice strong{font:700 1.45rem Roboto,Arial,sans-serif;color:#145f82}.dn-index-choice small{color:#8A6500;font-weight:700}.dn-index-note h2{margin-top:0;color:#145f82}
@media(max-width:680px){.dn-index-page{padding:18px 12px 50px}.dn-index-hero{padding:24px 20px}.dn-index-choice-grid{grid-template-columns:1fr}.dn-state-heading{align-items:start;flex-direction:column}.dn-case-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.dn-case-info{padding:10px}.dn-case-info dl div{grid-template-columns:1fr}.dn-state-jump select{width:100%;min-width:0}}
@media(max-width:420px){.dn-case-grid{grid-template-columns:1fr 1fr}.dn-case-photo{aspect-ratio:1/1}.dn-case-info h3{font-size:.9rem}.dn-case-name{font-size:.85rem}.dn-case-info dl{font-size:.76rem}}

/* Phase 2 geographic menu / empty-region support */
.dn-geo-menu-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.25rem 0 2rem}.dn-geo-menu-card{background:#fff;border:1px solid #d8e4ef;border-radius:14px;padding:1.25rem;box-shadow:0 4px 14px rgba(31,73,110,.07)}.dn-geo-menu-card h2{margin:0 0 .75rem;color:#244f73}.dn-geo-menu-card .dn-index-tabs{margin:0}.dn-empty-region{margin:0;padding:1rem 1.15rem;background:#f7fafc;border:1px dashed #cbd9e5;border-radius:10px;color:#536b7c}@media(max-width:700px){.dn-geo-menu-grid{grid-template-columns:1fr}}

/* Chronological/index menu additions */
.dn-index-menu-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;margin:24px 0 30px}.dn-index-menu-card{background:#fff;border:1px solid #d8e3ee;border-radius:12px;padding:22px;box-shadow:0 3px 14px rgba(30,66,102,.06)}.dn-index-menu-card h2{margin:0 0 14px;color:#244d73;font-family:Roboto,Arial,sans-serif;font-size:1.25rem}.dn-index-menu-links{display:flex;gap:10px;flex-wrap:wrap}.dn-index-menu-links a{display:inline-block;padding:9px 13px;border:1px solid #c7d8e7;border-radius:7px;background:#f5f9fc;font-weight:700;text-decoration:none}

/* Alphabetical index */
.dn-alpha-jump{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:20px 0 26px;padding:14px 16px;background:#f7fbfd;border:1px solid #d7e9f0;border-radius:10px}.dn-alpha-jump strong{color:#145f82;margin-right:4px}.dn-alpha-jump a{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:34px;padding:0 8px;border:1px solid #c8e1ec;border-radius:6px;background:#fff;text-decoration:none;font-weight:700}.dn-alpha-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:start}.dn-alpha-column{min-width:0}.dn-alpha-letter{margin:0 0 22px;scroll-margin-top:18px}.dn-alpha-letter h3{margin:0;padding:8px 12px;background:#eaf5fa;border-left:4px solid #147ca6;border-radius:6px;color:#145f82;font-size:1.05rem}.dn-alpha-links{display:grid;grid-template-columns:1fr}.dn-alpha-links a{display:flex;justify-content:space-between;gap:12px;padding:8px 10px;border-bottom:1px solid #e7eef2;text-decoration:none}.dn-alpha-links a:hover{background:#f7fbfd}.dn-alpha-links span{font-weight:600}.dn-alpha-links small{color:#657b87;white-space:nowrap}@media(max-width:780px){.dn-alpha-columns{grid-template-columns:1fr}.dn-alpha-column+.dn-alpha-column{margin-top:12px}}
/* Center case cards on Geographic and Chronological pages */

/* Center information inside each case card */
.dn-case-card {
    text-align: center !important;
}

.dn-case-info {
    text-align: center !important;
}

.dn-case-info dl {
    text-align: center !important;
}
/* Make all case photos uniform */
.dn-case-photo {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 170px;
    overflow: hidden;
    background: #f4f6f8;
}

.dn-case-photo img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.dn-case-info dl div {
    display: block !important;
    text-align: center !important;
}

.dn-case-info dt,
.dn-case-info dd {
    display: block !important;
    width: 100%;
    text-align: center !important;
    margin: 0;
}

.dn-case-info dd {
    overflow-wrap: anywhere;
}
/* ==========================================
   DOE NETWORK - ALL CASE INDEXES
   Geographic and Chronological
   Missing and Unidentified
   Male and Female
   ========================================== */

/* Five or six cards per row, aligned left */
.dn-case-grid {
    display: grid !important;
    grid-template-columns:
        repeat(auto-fill, minmax(175px, 1fr)) !important;
    gap: 14px !important;
    justify-content: start !important;
    width: 100%;
    margin: 0 !important;
}

/* Center everything inside each card */
.dn-case-card {
    text-align: center !important;
    min-width: 0;
}

/* Keep photos uniform */
.dn-case-photo {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 170px;
    overflow: hidden;
    background: #f4f6f8;
}

.dn-case-photo img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

/* Center case information */
.dn-case-info {
    text-align: center !important;
}

/* Put label and value on one line */
.dn-case-info dl {
    margin: 10px 0 !important;
    padding: 0 !important;
}

.dn-case-info dl > div {
    display: flex !important;
    justify-content: center !important;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 4px;
    margin-bottom: 6px;
    text-align: center;
}

.dn-case-info dt,
.dn-case-info dd {
    display: inline !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: center !important;
}

.dn-case-info dt {
    font-weight: 700;
}

.dn-case-info dd {
    overflow-wrap: anywhere;
}
/* Add colons after case information labels */
.dn-case-info dt::after {
    content: ":";
}