/* Homepage v0.9 TEST 1 – additive, scoped visual consistency. Existing module styles remain unchanged. */
:root{--hp-ui-radius:14px;--hp-ui-border:#e9e3e6;--hp-ui-focus:#AD303B}
.hp-article,.hp-start,.hp-content-block{overflow-wrap:anywhere}
.hp-article img,.hp-content-block img,.hp-start img{max-width:100%;height:auto}
.hp-article :is(h1,h2,h3),.hp-content-block :is(h1,h2,h3){text-wrap:balance}
.hp-article :is(p,ul,ol),.hp-content-block :is(p,ul,ol){line-height:1.75}
.hp-article :is(a,button,input,select,textarea):focus-visible,.hp-start :is(a,button,input,select,textarea):focus-visible,.hp-menu :is(a,summary):focus-visible,.hp-nav-toggle:focus-visible{outline:3px solid var(--hp-ui-focus);outline-offset:3px}
.hp-article :is(input:not([type=checkbox]):not([type=radio]),select,textarea){max-width:100%;border-radius:9px}
.hp-article :is(button,.hp-btn),.hp-content-block :is(button,.hp-btn){transition:filter .15s ease,transform .15s ease}
.hp-article :is(button,.hp-btn):hover,.hp-content-block :is(button,.hp-btn):hover{filter:brightness(.96)}
.hp-article table,.hp-content-block table{display:block;max-width:100%;overflow-x:auto}
.hp-footer-links a{text-underline-offset:3px}
@media(max-width:700px){.hp-article{padding-left:16px;padding-right:16px}.hp-start-section-heading{align-items:flex-start;flex-wrap:wrap}.hp-start-card-grid,.hp-start-album-grid{grid-template-columns:1fr}.hp-content-block{max-width:100%}}
@media(prefers-reduced-motion:reduce){.hp-article :is(button,.hp-btn),.hp-content-block :is(button,.hp-btn){transition:none}}
