.moon-hero {
    background: radial-gradient(circle at 78% 28%, rgba(167,200,213,.24), transparent 22rem),
                linear-gradient(135deg, #07121d, #17394c 62%, #31596c);
}
.moon-visual { background: rgba(4,13,21,.55); }
.moon-fallback {
    position: relative;
    min-height: 21rem;
    overflow: hidden;
    background:
        radial-gradient(circle at 18% 24%, #fff 0 1px, transparent 1.5px),
        radial-gradient(circle at 72% 13%, #fff 0 1px, transparent 1.5px),
        radial-gradient(circle at 85% 45%, rgba(255,255,255,.7) 0 1px, transparent 2px),
        linear-gradient(145deg, #030912, #102a3b 72%, #315466);
}
.earth {
    position: absolute;
    top: 2.2rem;
    right: 2.6rem;
    width: 5.2rem;
    aspect-ratio: 1;
    border-radius: 50%;
    background: radial-gradient(circle at 38% 42%, #d8e4d7 0 8%, transparent 9%),
                radial-gradient(circle at 60% 62%, #d8e4d7 0 12%, transparent 13%),
                linear-gradient(145deg, #7bd0dd, #246da4 60%, #102b4c);
    box-shadow: 0 0 2.5rem rgba(113,198,221,.4);
}
.moon-horizon {
    position: absolute;
    right: -18%;
    bottom: -28%;
    left: -18%;
    height: 61%;
    border-radius: 50% 50% 0 0;
    background: radial-gradient(circle at 28% 38%, #5e686c 0 3%, transparent 3.5%),
                radial-gradient(circle at 67% 28%, #626d71 0 5%, transparent 5.5%),
                linear-gradient(160deg, #afb5b3, #5e6b70 52%, #1c2c36);
    box-shadow: inset 0 1rem 2rem rgba(255,255,255,.08);
    transform: rotate(-3deg);
}
.lander {
    position: absolute;
    z-index: 2;
    right: 34%;
    bottom: 23%;
    width: 3.8rem;
    height: 3.1rem;
    border: .18rem solid #d8d6c8;
    background: #807c6c;
    clip-path: polygon(20% 0, 80% 0, 100% 72%, 76% 72%, 95% 100%, 84% 100%, 62% 73%, 38% 73%, 16% 100%, 5% 100%, 24% 72%, 0 72%);
}
.lander i { position: absolute; top: .45rem; left: 1rem; width: 1.35rem; height: .8rem; background: #182935; }
.space-label {
    position: absolute;
    z-index: 3;
    right: 1.25rem;
    bottom: 1.15rem;
    padding: .35rem .65rem;
    border: 1px solid rgba(255,255,255,.3);
    border-radius: 99rem;
    color: rgba(255,255,255,.82);
    background: rgba(3,12,19,.28);
    font-size: .68rem;
    font-weight: 750;
    letter-spacing: .07em;
    text-transform: uppercase;
}
.historical-image-section { padding-top: 2rem; }
.historical-image-grid { display: grid; align-items: center; gap: clamp(2rem, 6vw, 4.5rem); }
.historical-image-copy > p:last-child { max-width: 38rem; margin: 0; color: var(--muted); font-size: 1.05rem; }
.evidence-list { display: grid; gap: clamp(1.25rem, 4vw, 2.5rem); margin-top: 2.5rem; }
.evidence-card { position: relative; padding: clamp(1.25rem, 4vw, 2rem); border: 1px solid var(--line); border-radius: calc(var(--radius) + .25rem); background: #fff; }
.evidence-with-image { display: grid; align-items: center; gap: clamp(1.5rem, 5vw, 3.5rem); }
.evidence-copy > span { display: block; margin-bottom: 1.5rem; color: var(--teal); font-size: .72rem; font-weight: 900; letter-spacing: .12em; }
.evidence-card h3 { font-size: clamp(1.45rem, 3vw, 2rem); }
.evidence-copy > p { margin: .6rem 0 0; color: var(--muted); }
.evidence-copy .evidence-note { margin-top: 1.2rem; padding-top: 1rem; border-top: 1px solid var(--line); color: var(--ink); font-size: .9rem; }
.evidence-text-only { max-width: 55rem; background: var(--canvas); }
.claims-section { background: var(--canvas); }
.claims-grid { display: grid; gap: .75rem; margin-top: 2.5rem; }
.claims-grid details { border: 1px solid var(--line); border-radius: 1rem; background: #fff; }
.claims-grid summary { position: relative; padding: 1.25rem 3.5rem 1.25rem 1.35rem; cursor: pointer; font-weight: 800; list-style: none; }
.claims-grid summary::-webkit-details-marker { display: none; }
.claims-grid summary::after { position: absolute; top: 1.1rem; right: 1.35rem; color: var(--teal); content: "+"; font-size: 1.35rem; }
.claims-grid details[open] summary::after { content: "−"; }
.claims-grid details p { margin: 0; padding: 0 1.35rem 1.35rem; color: var(--muted); }
.cumulative-section { color: #fff; background: radial-gradient(circle at 90% 0, rgba(76,132,153,.3), transparent 25rem), #0e2b3d; }
.cumulative-section h2 { max-width: 22ch; }
.cumulative-section > .shell > p:last-child { max-width: 54rem; margin: 1.5rem 0 0; color: rgba(255,255,255,.8); font-size: clamp(1.1rem, 3vw, 1.4rem); }
.moon-conclusion { max-width: 55rem; margin: 1.5rem 0 0; font-size: clamp(1.1rem, 3vw, 1.35rem); }

@media (min-width: 42rem) {
    .historical-image-grid { grid-template-columns: minmax(0, .72fr) minmax(22rem, 1fr); }
    .evidence-with-image { grid-template-columns: minmax(15rem, .8fr) minmax(20rem, 1.2fr); }
    .evidence-with-image.is-reversed { grid-template-columns: minmax(20rem, 1.2fr) minmax(15rem, .8fr); }
    .evidence-with-image.is-reversed .evidence-copy { order: 2; }
    .evidence-with-image.is-reversed .evidence-figure { order: 1; }
    .evidence-wide-image { grid-template-columns: minmax(15rem, .72fr) minmax(24rem, 1.28fr); }
}

@media (min-width: 60rem) {
    .moon-fallback { min-height: 34rem; }
}
