/* Small additions to the existing Platia design. */
.detail-page main { min-height: 75vh; padding-top: 80px; }
.reading-content { max-width: 900px; overflow-wrap: anywhere; }
.reading-content h1 { margin-bottom: 1.5rem; }
.reading-content h2, .reading-content h3 { margin-top: 2rem; }
.reading-content p, .reading-content li { line-height: 1.8; }
.site-button { display: inline-block; border: 0; border-radius: 5px; background: var(--accent-color); color: #291812; font-weight: 600; padding: 12px 24px; cursor: pointer; }
.site-button:hover { color: #291812; filter: brightness(1.05); }
.map-consent { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .75rem; min-height: 450px; height: 100%; padding: 2rem; text-align: center; background: var(--surface-color); }
.map-consent p { max-width: 430px; margin: 0; }
.map-consent > i { font-size: 2rem; color: var(--accent-color); }
.map-container { position: relative; }
.map-reset { position: absolute; right: .5rem; bottom: .5rem; border: 0; padding: .4rem .8rem; background: var(--surface-color); color: var(--default-color); z-index: 1; }
.event-poster { max-height: 900px; width: 100%; object-fit: contain; }
.event-date { font-size: 1.25rem; }
.header .topbar a { color: var(--default-color); }
.hero .feature-text a { color: inherit; }
button.mobile-nav-toggle { background: transparent; border: 0; padding: 0; line-height: 1; }
.recommendation-header h3 { font-size: 1.5rem; }
:focus-visible { outline: 3px solid var(--accent-color); outline-offset: 4px; }
@media (max-width: 575px) { .detail-page main { padding-top: 65px; } .map-consent { padding: 1.25rem; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto !important; } [data-aos] { opacity: 1 !important; transform: none !important; transition: none !important; } }

.map-consent[hidden] { display: none; }
