/* Shared public-page layout: reserve the actual fixed navigation height. */
:root { --site-nav-height: 176px; }
@media (max-width: 768px) { :root { --site-nav-height: 70px; } }
body:has(> .navbar-wrapper) { padding-top: 0 !important; }
body:has(> .navbar-wrapper) > main { margin-top: var(--site-nav-height) !important; }
html { scroll-padding-top: calc(var(--site-nav-height) + 20px); }
body:has(> .navbar-wrapper) main :is(h1, h2, h3, [id], button, input, a) {
    scroll-margin-top: calc(var(--site-nav-height) + 20px);
}
/* Reading content must be available even if an animation CDN fails. */
body:has(> .navbar-wrapper) [data-aos] {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    transition: none !important;
}
body .legal-content { max-width: 820px; padding: 28px 20px 48px; color: #292929; font-size: 16px; line-height: 1.75; overflow-wrap: anywhere; }
body .legal-content h1 { font-size: clamp(1.5rem, 4vw, 1.9rem); line-height: 1.35; color: #111; border-bottom-color: #e0b315; }
body .legal-content h2 { color: #222; font-size: 1.2rem; line-height: 1.4; }
body .legal-content :is(p, li) { text-align: left; }
body .legal-content a { color: #0756a0; text-decoration: underline; text-underline-offset: 3px; }
body .legal-content :is(.legal-intro, .legal-highlight, .legal-important, .highlight, .important, .success) { border-left: 0; border-radius: 8px; }
body .legal-content .shipping-table { table-layout: fixed; font-size: .9375rem; }
body .legal-content .shipping-table :is(th, td) { overflow-wrap: anywhere; padding: 10px; vertical-align: top; }
@media (max-width: 480px) {
    body .legal-content .shipping-table :is(th, td) { padding: 8px 5px; }
}
@media (max-width: 900px) {
    body:has(main.legal-content) .footer-fab-group {
        position: static;
        display: flex;
        flex-direction: row;
        justify-content: center;
        gap: 16px;
        padding: 20px;
        transform: none;
    }
    body:has(main.legal-content) .footer-fab-group :is(a, button) { position: static; }
}
