/* Layout only: typography, navigation and colours use the shared styles. */
.about-page { height: auto; min-height: 100%; }
.about-intro { padding-top: 7rem; }
.about-intro h1 { margin-bottom: 2rem; }
.about-sections { display: flex; flex-wrap: wrap; gap: 1rem 1.5rem; margin: 2rem 0 0; }
.about-section { margin-top: 5rem; padding-top: 3rem; border-top: 1px solid rgba(0, 0, 0, .1); scroll-margin-top: 6rem; }
.about-section h2 { text-align: center; margin-bottom: 2rem; }
.about-section h3 { margin: 2rem 0 1rem; }
.about-details { display: grid; grid-template-columns: minmax(170px, 1fr) 2fr; gap: 1rem 2rem; }
.about-details dd { margin: 0; overflow-wrap: anywhere; }
.about-list li { margin-bottom: .75rem; }
.about-contact { text-align: center; margin-bottom: 5rem; }
.about-page .mastfoot { border-top: 1px solid rgba(0, 0, 0, .1); }
.skip-link { position: absolute; left: 12px; top: -100px; padding: 12px; background: white; z-index: 1040; }
.skip-link:focus { top: 12px; }
@media (max-width: 600px) {
    .about-details { grid-template-columns: 1fr; gap: .25rem; }
    .about-details dd { margin-bottom: 1rem; }
}
