/*
Theme Name: Hausverwalterforum
Description: Das Verwalterforum NRW – natives Block-Theme in der bestehenden grünen Identität.
Version: 0.3.0
Requires at least: 7.1
Requires PHP: 8.3
Text Domain: hausverwalterforum
License: GPL-2.0-or-later
*/

html { scroll-behavior: smooth; }
body { -webkit-font-smoothing: antialiased; }
* { box-sizing: border-box; }
a { text-underline-offset: .2em; }
:where(a, button, summary, input):focus-visible { outline: 3px solid var(--wp--preset--color--blue); outline-offset: 5px; }
.has-forest-background-color a:focus-visible { outline-color: var(--wp--preset--color--white); }
.wp-site-blocks { overflow: clip; }
.wp-block-heading { hyphens: auto; }
.hvf-header { border-bottom: 1px solid var(--wp--preset--color--line); }
.hvf-header .wp-block-site-logo img { width: 130px; height: auto; }
.hvf-header .wp-block-navigation a { text-decoration: none; }
.hvf-header .wp-block-navigation a:hover { color: var(--wp--preset--color--forest); text-decoration: underline; }
.hvf-header .wp-block-navigation-item__content { padding-block: .65rem; }
.hvf-header .wp-block-navigation__responsive-container-open,
.hvf-header .wp-block-navigation__responsive-container-close { padding: .6rem; }
.hvf-wordmark { max-width: 180px; font-size: .94rem; line-height: 1.35; font-weight: 700; }
.hvf-hero h1 { max-width: 850px; text-wrap: balance; hyphens: none; }
.hvf-hero .wp-block-columns { gap: clamp(2rem, 5vw, 5rem); margin-bottom: 0; }
.hvf-hero-image img { display: block; width: 100%; height: 480px; object-fit: cover; }
.hvf-hero-image figcaption { margin-top: .8rem; font-size: .875rem; color: var(--wp--preset--color--muted); text-align: left; }
.hvf-section-heading { max-width: 780px; text-wrap: balance; }
.hvf-topic { padding-block: 1.75rem; border-top: 1px solid var(--wp--preset--color--line); }
.hvf-topic .wp-block-columns { max-width: none; margin-bottom: 0; gap: clamp(1rem, 4vw, 4rem); }
.hvf-event-grid .wp-block-post-template { gap: 2.5rem; }
.hvf-event-card { height: 100%; }
.hvf-event-card .wp-block-post-featured-image { margin: 0; }
.hvf-event-card .wp-block-post-featured-image img { width: 100%; aspect-ratio: 16/10; object-fit: cover; }
.hvf-event-card > .wp-block-group { margin-top: 0; }
.hvf-event-card .wp-block-post-title a { text-decoration: none; }
.hvf-event-card .wp-block-post-title a:hover { text-decoration: underline; }
.hvf-portrait img { display: block; width: 100%; max-height: 420px; object-fit: cover; object-position: top; }
.hvf-footer { border-top: 1px solid var(--wp--preset--color--line); }
.hvf-footer a { text-decoration: none; }
.hvf-footer a:hover { text-decoration: underline; }
.wp-block-details { border-top: 1px solid var(--wp--preset--color--line); padding-block: 1.2rem; }
.wp-block-details summary { cursor: pointer; font-weight: 650; }
.wp-block-post-content > :first-child { margin-top: 0; }
@media (max-width: 1023px) {
  .hvf-header .wp-block-navigation .wp-block-navigation__responsive-container:not(.is-menu-open) { display: none; }
  .hvf-header .wp-block-navigation__responsive-container-open:not(.always-shown) { display: flex; }
}
@media (max-width: 781px) {
  .hvf-hero-image img { height: auto; aspect-ratio: 4/3; }
  .hvf-header .wp-block-site-logo img { width: 105px; }
  .hvf-wordmark { max-width: 125px; font-size: .8rem; }
  .hvf-event-grid .wp-block-post-template { grid-template-columns: 1fr; }
  .hvf-topic .wp-block-columns { gap: .75rem; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
