/*
Theme Name: Lachen hilft Child
Template: twentytwentyfive
Version: 0.3.0
Description: WordPress block child theme for Lachen hilft e.V.
Text Domain: lachenhilft
*/
:root { --lh-red: #ee0329; --lh-yellow: #fedc01; }
body { font-family: 'Open Sans', Arial, sans-serif; min-height: 100vh; background-color: #fff; background-size: cover; background-position: center top; background-attachment: fixed; background-repeat: no-repeat; }
body.lh-section-start { background-image: url('assets/img/backgrounds/start.jpg'); }
body.lh-section-angebote { background-image: url('assets/img/backgrounds/angebote.jpg'); }
body.lh-section-verein { background-image: url('assets/img/backgrounds/verein.jpg'); }
body.lh-section-philosophie { background-image: url('assets/img/backgrounds/philosophie.jpg'); }
body.lh-section-clowns { background-image: url('assets/img/backgrounds/clowns.jpg'); }
body.lh-section-media { background-image: url('assets/img/backgrounds/media.jpg'); }
body.lh-section-kontakt { background-image: url('assets/img/backgrounds/kontakt.jpg'); }
body.lh-section-datenschutz { background-image: url('assets/img/backgrounds/datenschutz.jpg'); }
body.lh-section-impressum { background-image: url('assets/img/backgrounds/impressum.jpg'); }
body.lh-section-suche { background-image: url('assets/img/backgrounds/suche.jpg'); }
body.lh-section-terminvergabe { background-image: url('assets/img/backgrounds/terminvergabe.jpg'); }
.lh-header { position: sticky; top: 0; z-index: 20; box-shadow: 0 2px 5px #0004; }
.lh-header .lh-social { background: white; color: var(--lh-red); padding: .4rem 2rem; font-size: .85rem; }
.lh-header .lh-social a { color: var(--lh-red); text-decoration: none; }
.lh-header .lh-social a:hover { text-decoration: underline; }
.lh-header .lh-bar { background: var(--lh-red); color: #fff; padding: .4rem 2rem; }
.lh-header .lh-bar a, .lh-header .wp-block-site-title a { color: #fff; text-decoration: none; }
.lh-header .wp-block-site-logo { margin: -.8rem .5rem -.8rem 0; }
.lh-header .wp-block-navigation-item__content:hover { color: var(--lh-yellow); }
.lh-main { box-sizing: border-box; width: min(60%, 780px); margin: 20rem 2rem 3rem auto !important; padding: 2rem 2.5rem; background: rgba(255,255,255,.94); min-height: 25rem; }
.lh-main h1, .lh-main h2 { color: var(--lh-red); font-weight: 400; }
.lh-main h1 { font-size: clamp(2rem,4vw,2.7rem); }
.lh-main img { max-width: 100%; height: auto; }
.lh-main img[data-lh-lightbox], .lh-main a[data-lh-lightbox] img { cursor: zoom-in; }
.lh-main img[data-lh-lightbox]:focus-visible { outline: 3px solid #ee0329; outline-offset: 3px; }
.lh-lightbox-open { overflow: hidden; }
.lh-lightbox { position: fixed; max-width: calc(100vw - 32px); max-height: calc(100vh - 32px); max-height: calc(100dvh - 32px); margin: auto; padding: 44px 12px 12px; border: 0; border-radius: 4px; background: #fff; box-shadow: 0 8px 32px #0007; }
.lh-lightbox::backdrop { background: #000c; }
.lh-lightbox img { display: block; max-width: calc(100vw - 56px); max-height: calc(100vh - 80px); max-height: calc(100dvh - 80px); width: auto; height: auto; object-fit: contain; }
.lh-lightbox-close { position: absolute; top: 4px; right: 4px; z-index: 1; width: 40px; height: 40px; border: 0; border-radius: 50%; background: #ee0329; color: #fff; font-size: 28px; line-height: 1; cursor: pointer; }
.lh-lightbox-prev, .lh-lightbox-next { position: absolute; top: 50%; transform: translateY(-50%); width: 40px; height: 48px; border: 0; border-radius: 4px; background: #ee0329; color: #fff; font-size: 36px; line-height: 1; cursor: pointer; }
.lh-lightbox-prev { left: 12px; }
.lh-lightbox-next { right: 12px; }
.lh-lightbox-prev[hidden], .lh-lightbox-next[hidden] { display: none; }
.lh-lightbox-count { min-height: 22px; margin-top: 8px; text-align: center; font-size: 14px; }
.lh-main a { color: var(--lh-red); }
.lh-child-page { margin: 2rem 0 3rem; }
.lh-child-page h2 { margin-bottom: 1rem; }
.lh-section-links ul { display: flex; flex-wrap: wrap; gap: .5rem 1rem; list-style: none; padding: 0; margin: 0 0 2rem; }
.lh-section-links li { margin: 0; }
.lh-section-links a { display: inline-block; padding: .35rem .7rem; border: 1px solid currentColor; text-decoration: none; }
.lh-main .lh-section-links { display: none !important; }
.lh-root-feature h2 { margin-bottom: 1.5rem; }
.lh-root-feature .lh-child-pages { margin-top: 0; }
.lh-main > h1 { display: block; position: relative; z-index: 1; clear: both; }
.lh-contact-form { max-width: 620px; }
.lh-contact-form label { display: block; font-weight: 600; }
.lh-contact-form input[type="text"],
.lh-contact-form input[type="email"],
.lh-contact-form textarea { display: block; width: 100%; box-sizing: border-box; margin-top: 6px; padding: 10px 12px; border: 1px solid #777; border-radius: 3px; font: inherit; background: #fff; color: #111; }
.lh-contact-form textarea { min-height: 160px; resize: vertical; }
.lh-contact-form input:focus-visible,
.lh-contact-form textarea:focus-visible { outline: 3px solid #fedc01; outline-offset: 2px; }
.lh-contact-form input[type="submit"] { min-height: 44px; padding: 9px 20px; border: 0; border-radius: 3px; background: #ee0329; color: #fff; font: inherit; font-weight: 600; cursor: pointer; }
.lh-contact-form input[type="submit"]:hover { background: #b90022; }
.lh-contact-form .wpcf7-acceptance label { display: flex; align-items: flex-start; gap: 8px; font-weight: 400; }
.lh-contact-form .wpcf7-acceptance input { margin-top: 4px; }
.lh-contact-form .lh-form-note { font-size: 14px; }
.lh-form-trap { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.lh-header > .lh-top,
.lh-header > .lh-main-bar { margin-block-start: 0 !important; margin-block-end: 0 !important; }
.lh-header { row-gap: 0 !important; }
.lh-mobile-nav { display: none !important; }
@media (max-width: 1000px) {
  nav.lh-nav { display: none !important; }
  .lh-mobile-nav { display: block !important; height: 45px; margin-left: auto !important; }
  .lh-mobile-menu, .lh-mobile-section { margin: 0; padding: 0; }
  .lh-mobile-menu > summary,
  .lh-mobile-section > summary { cursor: pointer; list-style: none; }
  .lh-mobile-menu > summary::-webkit-details-marker,
  .lh-mobile-section > summary::-webkit-details-marker { display: none; }
  .lh-mobile-menu > summary {
    display: flex; align-items: center; justify-content: center; gap: 6px;
    min-width: 78px; height: 39px; margin-top: 3px; padding: 0 8px;
    box-sizing: border-box; background: #fff; color: #ee0329;
    font-size: 15px; font-weight: 600;
  }
  .lh-mobile-menu > summary > span { font-size: 22px; line-height: 1; }
  .lh-mobile-menu[open] > summary { background: #fedc01; }
  .lh-mobile-panel {
    position: fixed; top: 91px; right: 0; z-index: 200; width: min(100vw, 360px);
    height: calc(100vh - 91px); height: calc(100dvh - 91px);
    overflow-y: auto; overscroll-behavior: contain; box-sizing: border-box;
    padding: 10px 16px 24px; background: #ee0329; color: #fff;
    box-shadow: -4px 5px 12px #0004;
  }
  .lh-mobile-section { border-bottom: 1px solid #ffffff55; }
  .lh-mobile-section > summary {
    display: flex; align-items: center; justify-content: space-between;
    min-height: 48px; padding: 8px 12px; box-sizing: border-box;
    color: #fff; font-size: 18px;
  }
  .lh-mobile-section > summary::after { content: '⌄'; font-size: 22px; line-height: 1; }
  .lh-mobile-section[open] > summary,
  .lh-mobile-section.lh-current-section > summary { background: #fedc01; color: #ee0329; }
  .lh-mobile-section[open] > summary::after { transform: rotate(180deg); }
  .lh-mobile-section ul { margin: 0; padding: 0 0 8px 14px; list-style: none; }
  .lh-mobile-section li { margin: 0; padding: 0; list-style: none; background: none; }
  .lh-mobile-section a,
  .lh-mobile-contact {
    display: block; min-height: 40px; padding: 9px 12px; box-sizing: border-box;
    color: #fff !important; font-size: 16px; line-height: 1.35; text-decoration: none;
  }
  .lh-mobile-section a:hover,
  .lh-mobile-section a:focus-visible,
  .lh-mobile-section a.lh-current-link,
  .lh-mobile-contact:hover,
  .lh-mobile-contact:focus-visible { background: #fedc01; color: #ee0329 !important; }
  .lh-mobile-contact { min-height: 48px; padding-top: 13px; font-size: 18px; }
  .lh-mobile-menu summary:focus-visible { outline: 2px solid #fedc01; outline-offset: -2px; }
  nav.lh-nav { width: auto; height: 45px; margin-left: auto !important; background: transparent; }
  nav.lh-nav .wp-block-navigation__responsive-container.is-menu-open {
    position: fixed; inset: 0; width: 100%; height: 100vh; height: 100dvh;
    box-sizing: border-box; overflow-y: auto; overscroll-behavior: contain;
    padding: 18px 20px 32px !important; background: #ee0329 !important; color: #fff !important;
  }
  nav.lh-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-close,
  nav.lh-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog,
  nav.lh-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
    width: 100%; height: auto; max-height: none; box-sizing: border-box;
  }
  nav.lh-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
    padding-top: 52px !important; align-items: stretch;
  }
  nav.lh-nav .wp-block-navigation__responsive-container.is-menu-open ul.wp-block-navigation__container {
    display: flex; flex-direction: column; align-items: stretch; width: 100%; height: auto !important;
    max-height: none; margin: 0 !important; padding: 0 !important; gap: 0 !important;
    overflow: visible; background: transparent;
  }
  nav.lh-nav .wp-block-navigation__responsive-container.is-menu-open ul.wp-block-navigation__container > li {
    display: block; position: relative; width: 100%; height: auto; margin: 0 !important;
    padding: 0 !important; border-bottom: 1px solid rgba(255,255,255,.28);
  }
  nav.lh-nav .wp-block-navigation__responsive-container.is-menu-open ul.wp-block-navigation__container > li > a {
    display: flex; align-items: center; width: 100%; height: auto; min-height: 48px;
    padding: 10px 56px 10px 12px; box-sizing: border-box; white-space: normal;
    color: #fff !important; font-size: 18px; line-height: 1.3;
  }
  nav.lh-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-icon {
    display: flex !important; position: absolute; top: 0; right: 0; z-index: 2;
    align-items: center; justify-content: center; width: 48px; height: 48px;
    margin: 0 !important; padding: 0; color: #fff;
  }
  nav.lh-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-icon[aria-expanded="true"] svg {
    transform: rotate(180deg);
  }
  nav.lh-nav .wp-block-navigation__responsive-container.is-menu-open .has-child > ul.wp-block-navigation__submenu-container {
    display: none !important; position: static !important; width: 100% !important;
    min-width: 0 !important; height: auto !important; margin: 0 !important;
    padding: 0 0 8px 16px !important; box-sizing: border-box; opacity: 1 !important;
    visibility: visible !important; box-shadow: none; border: 0 !important;
    background: transparent !important;
  }
  nav.lh-nav .wp-block-navigation__responsive-container.is-menu-open .has-child > button.wp-block-navigation__submenu-icon[aria-expanded="true"] + ul.wp-block-navigation__submenu-container {
    display: flex !important; flex-direction: column; align-items: stretch; gap: 0 !important;
  }
  nav.lh-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container li {
    display: block; width: 100%; height: auto; margin: 0 !important; padding: 0 !important;
  }
  nav.lh-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container a {
    display: block; width: 100%; height: auto; min-height: 40px; padding: 9px 12px;
    box-sizing: border-box; color: #fff !important; font-size: 16px; line-height: 1.3;
  }
  nav.lh-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close {
    display: flex; align-items: center; justify-content: center; width: 44px; height: 44px;
    top: 12px; right: 16px; color: #fff;
  }
}
@media (max-width: 480px) {
  .lh-brand .wp-block-site-title { display: none; }
  .lh-main-bar { padding-right: 12px; }
}
@media (min-width: 1001px) {
  .lh-main-bar { display: flex !important; align-items: center !important; justify-content: space-between !important; }
  .lh-brand { flex: 0 0 auto; }
  .lh-brand .wp-block-site-title { white-space: nowrap; }
  nav.lh-nav { display: block; flex: 0 0 auto; width: auto; align-self: stretch; }
  nav.lh-nav .wp-block-navigation__responsive-container,
  nav.lh-nav .wp-block-navigation__responsive-close,
  nav.lh-nav .wp-block-navigation__responsive-dialog,
  nav.lh-nav .wp-block-navigation__responsive-container-content { height: 100%; }
  nav.lh-nav > .wp-block-navigation__responsive-container .wp-block-navigation__container { display: flex; flex-wrap: nowrap; align-items: stretch; width: auto; height: 100%; margin: 0 !important; padding: 0 !important; }
  nav.lh-nav > .wp-block-navigation__responsive-container .wp-block-navigation__container > .wp-block-navigation-item { display: flex; align-items: stretch; height: 100%; margin: 0 !important; padding: 0 !important; }
  nav.lh-nav > .wp-block-navigation__responsive-container .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content { height: 100%; white-space: nowrap; }
}
.lh-footer { background: var(--lh-red); color: white; padding: 1.5rem 2rem; }
.lh-footer a { color: white; }
@media (max-width: 800px) {
  .lh-header .lh-social { padding: .3rem 1rem; }
  .lh-header .lh-bar { padding: .4rem 1rem; }
  .lh-main { width: calc(100% - 2rem); margin: 12rem 1rem 2rem !important; padding: 1.5rem; }
}

.lh-gallery { display: grid; grid-template-columns: repeat(auto-fit,minmax(180px,1fr)); gap: 1rem; margin: 1.5rem 0; }
.lh-gallery img { display: block; width: 100%; height: auto; }

.lh-news-card { display: grid; grid-template-columns: minmax(100px, 180px) 1fr; gap: 1rem; padding: 1.25rem 0; border-bottom: 1px solid #ddd; }
.lh-news-card img { width: 100%; height: auto; }
.lh-news-card time { color: #555; font-size: .9rem; }
.lh-news-card h2 { margin: .35rem 0; }
@media (max-width: 600px) { .lh-news-card { grid-template-columns: 1fr; } }
.lh-section-clowns .lh-main { width: min(75%, 980px); max-width: none; margin-left: auto !important; margin-right: 0 !important; }
.lh-clown-profile { display: grid; grid-template-columns: minmax(0, 300px) minmax(0, 1fr); align-items: start; gap: 40px; margin-top: 20px; }
.lh-clown-profile > * { margin-block-start: 0 !important; }
.lh-clown-portrait { display: flex; align-items: flex-start; justify-content: center; min-width: 0; margin: 0; padding: 12px; background: #f7f4f2; border-radius: 4px; }
.lh-clown-portrait img { display: block; width: auto; height: auto !important; max-width: 100%; max-height: 480px; object-fit: contain; }
.lh-clown-story { min-width: 0; overflow-wrap: break-word; }
.lh-clown-story > p:first-child { padding-top: 0; }
.lh-clown-story h2 { margin-top: 24px; }
@media (max-width: 1000px) {
  .lh-section-clowns .lh-main { width: 100%; }
  .lh-clown-profile { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .lh-clown-portrait img { max-height: 380px; }
}
/* Layout dimensions and colors follow the original site's local CSS. */
html { scroll-behavior: smooth; }
body { margin: 0; color: #000; font-size: 16px; line-height: 1.5; }
.wp-site-blocks { min-height: 100vh; display: flex; flex-direction: column; padding: 0 !important; }
.wp-site-blocks > .lh-header,
.wp-site-blocks > .lh-footer { margin-block-start: 0 !important; }
.lh-header { position: fixed; top: 0; left: 0; width: 100%; height: 91px; z-index: 100; background: #ee0329; box-shadow: 0 0 3px #000; }
.lh-top { height: 46px; background: #fff; padding: 0 20px; gap: 0 !important; box-sizing: border-box; }
.lh-social-link { display: inline-flex; align-items: center; min-height: 40px; width: 160px; margin-right: 12px; color: #ee0329 !important; border: 2px solid transparent; font-size: 14px; line-height: 19px; text-decoration: none !important; box-sizing: border-box; }
.lh-social-link > span:first-child { display: block; width: 40px; height: 40px; flex: none; margin-right: 9px; background: url('assets/img/sprite.png') no-repeat; }
.lh-fb > span:first-child { background-position: 0 -60px; }
.lh-yt > span:first-child { background-position: -40px -60px; }
.lh-dt > span:first-child { background-position: -80px -60px; }
.lh-in > span:first-child { background-position: -120px -60px; }
.lh-social-link:hover { color: #ee0329 !important; background-color: #fedc01; border-color: #fedc01; }
.lh-main-bar { height: 45px; padding: 0 20px; box-sizing: border-box; align-items: stretch !important; gap: 0 !important; }
.lh-brand { position: relative; min-width: 300px; height: 45px; align-items: center !important; gap: 0 !important; }
.lh-brand .wp-block-site-logo { margin: 0 12px 0 0 !important; width: 110px; height: 45px; flex: none; }
.lh-brand .wp-block-site-logo img { position: relative; width: 110px !important; height: 110px !important; max-width: none; margin-top: -37px; object-fit: contain; }
.lh-brand .wp-block-site-title { margin: 0 !important; color: #fff; font-size: 18px; line-height: 1.05; font-weight: 400; }
.lh-brand .wp-block-site-title a { color: #fff !important; text-decoration: none !important; }
.lh-nav { height: 45px; margin: 0 !important; background: #ee0329; }
.lh-nav .wp-block-navigation__container { height: 45px; gap: 0 !important; }
.lh-nav .wp-block-navigation-item { background: none; padding: 0; margin: 0; }
.lh-nav .wp-block-navigation-item__content { display: flex; align-items: center; height: 45px; padding: 0 15px; color: #fff !important; font-size: 17px; line-height: 1; text-decoration: none !important; }
.lh-nav .wp-block-navigation-item:hover > .wp-block-navigation-item__content,
.lh-nav .current-menu-item > .wp-block-navigation-item__content,
.lh-nav .current-menu-ancestor > .wp-block-navigation-item__content,
.lh-nav .wp-block-navigation-item__content.lh-current-link { background: #fedc01; color: #ee0329 !important; }
.lh-nav .wp-block-navigation__submenu-icon { color: #fff; margin-left: -8px; margin-right: 8px; }
.lh-nav .wp-block-navigation__submenu-container { min-width: 190px !important; background: #ee0329 !important; border: 0 !important; box-shadow: 0 2px 5px #0005; }
.lh-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content { height: auto; min-height: 38px; padding: 8px 15px; font-size: 16px; line-height: 1.25; }
.lh-main { flex: none; width: 60%; max-width: none; min-height: 250px; box-sizing: border-box; margin: 400px 0 40px auto !important; padding: 30px; background: rgba(255,255,255,.92); }
.lh-main :where(p) { line-height: 1.5; margin: 0; padding: 10px 0; }
.lh-main :where(h1,h2,h3,h4,h5,h6) { margin: 0 0 8px; padding: 0; font-weight: 400; color: #ee0329; }
.lh-main h1 { font-size: 36px; line-height: 1.16; padding-bottom: 20px; }
.lh-main h2 { font-size: 20px; line-height: 1.2; margin-bottom: 20px; }
.lh-main h3 { font-size: 16px; line-height: 1.25; margin: 15px 0; font-weight: 700; color: #000; }
.lh-main a { color: #ee0329; text-decoration: none; }
.lh-main a:hover { text-decoration: underline; }
.lh-main img { max-width: 100%; height: auto; }
.lh-main iframe { max-width: 100%; }
.lh-main :is(iframe[src*="youtube.com/embed/"], iframe[src*="youtube-nocookie.com/embed/"], video) {
  display: block; width: 100% !important; height: auto !important; aspect-ratio: 16 / 9;
  border: 0; background: #000; object-fit: contain;
}
.lh-main .wp-block-embed.is-provider-youtube { width: 100%; max-width: 100%; }
.lh-main .wp-block-embed.is-provider-youtube .wp-block-embed__wrapper iframe { height: 100% !important; }
.lh-main .youtube-embed-wrapper { height: auto !important; padding: 0 !important; overflow: visible !important; }
.lh-main a[href*="youtube.com/"] > img,
.lh-main a[href*="youtu.be/"] > img { display: block; width: 100% !important; height: auto !important; aspect-ratio: 16 / 9; object-fit: contain; background: #000; }
.lh-eh-pdf { max-width: 420px; margin: 24px auto; }
.lh-eh-pdf .wp-block-file__embed { display: block; width: 100%; border: 1px solid #ddd; }
.lh-main table { border: 0; }
.lh-main ul { padding-left: 0; }
.lh-main li { padding-left: 25px; margin-left: 5px; background: url('assets/img/li.png') no-repeat 0 5px; list-style: none; }
.lh-child-page { margin: 0 0 30px; }
.lh-child-page h1 { margin-top: 0; }
.lh-footer { width: 100%; min-height: 60px; margin-top: auto !important; padding: 0; background: #ee0329; color: #fff; box-shadow: 0 0 3px #000; }
.lh-footer-inner { display: flex !important; flex-wrap: nowrap !important; justify-content: space-between !important; align-items: center !important; width: 100%; min-height: 60px; gap: 10px; padding: 8px 20px; box-sizing: border-box; }
.lh-footer-social { display: flex; flex-wrap: nowrap; align-items: center; }
.lh-footer .lh-social-link { width: 126px; margin-right: 0; color: #fff !important; font-size: 12px; line-height: 1.25; }
.lh-footer .lh-social-link:hover { color: #ee0329 !important; }
.lh-footer-association { width: 100px; min-width: 100px; }
.lh-footer-association img { width: 100%; height: auto; display: block; }
.lh-footer-links { text-align: right; font-size: 14px; line-height: 1.4; }
.lh-footer-links a { color: #fff !important; white-space: nowrap; }
.lh-footer-links a:hover { text-decoration: underline; }
.lh-clown-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; margin: 20px 0; }
.lh-clown-section + .lh-clown-section { margin-top: 50px; }
.lh-clown-section > h2 { margin-bottom: 12px; }
.lh-clown-without-profile { color: #444; font-size: 15px; }
.lh-clown-card { position: relative; aspect-ratio: 3 / 4; overflow: hidden; padding: 0; box-shadow: none; background: #eee; }
.lh-clown-card > a { display: block; width: 100%; height: 100%; color: #000 !important; }
.lh-clown-card img { width: 100%; height: 100%; object-fit: cover; object-position: center 20%; transition: transform .5s ease; }
.lh-clown-card:hover img { transform: scale(1.1); }
.lh-clown-card-caption { position: absolute; left: 0; right: 0; bottom: 0; padding: 5px 10px; background: rgba(255,255,255,.9); }
.lh-clown-card-caption strong { display: block; color: #ee0329; font-size: 16px; font-weight: 700; }
.lh-clown-card-caption small { display: block; font-size: 14px; }
.lh-news-card { grid-template-columns: minmax(100px,180px) 1fr; }
@media (min-width: 1500px) {
  .lh-header { height: 106px; box-shadow: 0 0 5px #000; }
  .lh-top { padding: 0 30px; }
  .lh-main-bar, .lh-brand, .lh-nav, .lh-nav .wp-block-navigation__container { height: 60px; }
  .lh-main-bar { padding: 0 40px 0 60px; }
  .lh-brand { min-width: 375px; }
  .lh-brand .wp-block-site-logo { width: 160px; height: 60px; margin-right: 20px !important; }
  .lh-brand .wp-block-site-logo img { width: 160px !important; height: 160px !important; margin-top: -50px; }
  .lh-brand .wp-block-site-title { font-size: 22px; }
  .lh-nav .wp-block-navigation-item__content { height: 60px; padding: 0 25px; font-size: 20px; }
  .lh-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content { height: auto; padding: 12px 20px; font-size: 18px; }
  .lh-main { min-height: 400px; margin-top: 500px !important; padding: 45px; }
  .lh-main h1 { font-size: 40px; line-height: 1.22; padding-bottom: 30px; }
  .lh-footer, .lh-footer-inner { min-height: 75px; }
  .lh-footer-inner { padding: 15px 30px 15px 60px; }
  .lh-footer .lh-social-link { width: 160px; font-size: 14px; }
  .lh-footer-association { width: 130px; min-width: 130px; }
}
@media (max-width: 1199px) and (min-width: 1001px) {
  .lh-footer .lh-social-link { width: 100px; }
  .lh-footer-links { font-size: 12px; }
}
@media (max-width: 1000px) {
  .lh-header { height: 91px; }
  .lh-main-bar { position: relative; }
  .lh-brand { min-width: 0; }
  .lh-nav .wp-block-navigation__responsive-container-open { display: flex !important; align-items: center; justify-content: center; width: 40px; height: 39px; margin-top: 3px; background: #fff; color: #ee0329; }
  .lh-nav .wp-block-navigation__responsive-container:not(.is-menu-open) { display: none !important; }
  .lh-nav .wp-block-navigation__responsive-container.is-menu-open { display: flex !important; background: #ee0329 !important; color: #fff; }
  .lh-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content { color: #fff !important; }
  .lh-main { width: 100%; min-height: 250px; margin: 91px 0 0 !important; padding: 45px 15px 15px; background: rgba(255,255,255,.87); }
  .lh-main h1 { font-size: 24px; line-height: 1.1; padding-bottom: 15px; }
  .lh-main h2 { font-size: 18px; }
  .lh-main table, .lh-main iframe { width: 100% !important; max-width: 100%; }
  .lh-main table td { display: block; width: 100% !important; }
  .lh-footer-inner { flex-wrap: wrap !important; justify-content: center !important; padding: 10px; }
  .lh-footer-social { width: 100%; justify-content: center; flex-wrap: wrap; }
  .lh-footer-association { order: 2; width: 80px; min-width: 80px; }
  .lh-footer-links { order: 3; width: 100%; text-align: center; }
  .lh-clown-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 700px) {
  .lh-top .lh-social-link { width: 40px; margin-right: 8px; }
  .lh-top .lh-social-label { display: none; }
  .lh-clown-grid { gap: 15px; }
}
@media (max-width: 600px) {
  .lh-clown-grid { grid-template-columns: 1fr; }
  .lh-clown-card { width: min(100%, 360px); justify-self: center; }
  .lh-eh-pdf .wp-block-file__embed { height: 440px !important; }
}
@media print {
  .lh-header, .lh-footer { display: none !important; }
  .lh-main { width: 100%; margin: 0 !important; padding: 0; background: #fff; }
  .lh-section-clowns .lh-main { width: 100%; margin: 0 !important; }
  body { background: #fff !important; }
}
/* Home video and news navigation */
.lh-home-video { width: 100%; margin-top: 91px; background: #000; text-align: center; }
.lh-video-frame { position: relative; width: min(100%, calc((100vh - 160px) * 1.77)); aspect-ratio: 16 / 9; margin: 0 auto; background: #111 url('assets/img/video-poster.jpg') center / cover no-repeat; }
.lh-video-frame iframe { display: block; width: 100%; height: 100%; border: 0; }
.lh-video-play { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; width: 100%; border: 0; background: rgba(0,0,0,.12); color: #fff; font: inherit; font-size: 18px; cursor: pointer; text-shadow: 0 2px 4px #000; }
.lh-video-play > span:first-child { display: grid; place-items: center; width: 82px; height: 82px; padding-left: 5px; box-sizing: border-box; border-radius: 50%; background: #ee0329; color: #fff; font-size: 36px; box-shadow: 0 2px 12px #0009; }
.lh-video-play:hover > span:first-child, .lh-video-play:focus-visible > span:first-child { background: #fedc01; color: #ee0329; }
.lh-video-play:focus-visible { outline: 3px solid #fedc01; outline-offset: -3px; }
.lh-video-footer { position: relative; min-height: 62px; padding: 8px 48px; box-sizing: border-box; border-top: 5px solid #000; background: #ee0329; color: #fff; }
.lh-video-footer a { color: #fff !important; text-decoration: none; }
.lh-video-footer a:first-child { font-size: 20px; }
.lh-video-footer a:hover { text-decoration: underline; }
.lh-scroll-down { display: block; font-size: 28px; line-height: 28px; }
.home .lh-main { margin-top: 60px !important; }
.lh-home-intro { margin-bottom: 44px; }
.lh-home-intro p { max-width: 62ch; }
.lh-home-news-heading { margin-top: 0; padding-top: 22px !important; border-top: 1px solid #ddd; font-size: 28px !important; }
.lh-news-card { display: grid; grid-template-columns: minmax(100px,180px) 1fr; align-items: start; gap: 1rem; padding: 1.25rem 0; border-bottom: 1px solid #ddd; }
.lh-news-card h2 { margin: .35rem 0 .5rem; font-size: 20px; }
.lh-news-card p { padding: 0; }
.lh-news-card img { display: block; width: 100%; height: auto; }
.lh-news-card time { color: #555; font-size: 14px; }
.lh-button { display: inline-block; padding: 8px 18px; border-radius: 3px; border-bottom: 3px solid #bb0020; background: linear-gradient(#f32f4f,#ee0329); color: #fff !important; font-size: 16px; text-decoration: none !important; }
.lh-button:hover { background: linear-gradient(#ee0329,#f32f4f); }
.lh-all-news { padding-top: 22px !important; text-align: right; }
.lh-pagination { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 30px 0 10px; }
.lh-pagination a, .lh-pagination span { display: inline-block; min-width: 36px; padding: 6px 10px; box-sizing: border-box; text-align: center; background: #fff; color: #ee0329; border: 1px solid #ee0329; }
.lh-pagination [aria-current="page"] { background: #ee0329; color: #fff; }
.lh-pagination a:hover { background: #fedc01; text-decoration: none; }
.lh-post-neighbors { display: flex; justify-content: space-between; gap: 20px; margin: 40px 0 0; padding-top: 20px; border-top: 1px solid #ddd; }
.lh-post-neighbors a { max-width: 50%; }
.lh-post-neighbors a:last-child { text-align: right; margin-left: auto; }
@media (min-width: 1500px) { .lh-home-video { margin-top: 106px; } }
@media (max-width: 800px) {
  .lh-news-card { grid-template-columns: minmax(90px,140px) 1fr; }
  .lh-video-play > span:first-child { width: 64px; height: 64px; font-size: 28px; }
  .lh-video-footer a:first-child { font-size: 17px; }
}
@media (max-width: 600px) {
  .lh-news-card { grid-template-columns: 1fr; }
  .lh-news-image img { max-height: 260px; object-fit: cover; }
  .lh-post-neighbors { flex-direction: column; }
  .lh-post-neighbors a { max-width: 100%; }
  .lh-post-neighbors a:last-child { margin-left: 0; text-align: left; }
  .lh-video-play { font-size: 14px; }
  .lh-video-play > span:first-child { width: 54px; height: 54px; font-size: 24px; }
}
