html { scroll-behavior: smooth; }
[hidden], .p-fen9632 { display: none !important; }
.pagelayer-wow { visibility: visible !important; animation: none !important; }
.screen-reader-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.skip-link:focus { position: fixed; top: 8px; left: 8px; width: auto; height: auto; clip-path: none; background: #fff; padding: 12px; z-index: 10000; }
:focus-visible { outline: 3px solid #a3a847; outline-offset: 4px; }
#kontakt { scroll-margin-top: 20px; }
.balt-header { position: relative; }
.balt-menu-toggle { display: none; }
.balt-mobile-menu { position: absolute; top: 100%; right: 30px; z-index: 100; width: min(290px, calc(100% - 60px)); padding: 15px; background: #fdfbf7; box-shadow: 0 8px 22px #0002; }
.balt-mobile-menu a { display: block; padding: 14px 10px; color: #2c2c2c; }
.balt-honeypot { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.balt-contact-result { line-height: 1.6; color: #fff; padding: 10px 5px 0; }
.balt-contact-result:empty { display: none; }
.pagelayer-contact-submit-btn[disabled] { opacity: .7; cursor: wait; }
.balt-lightbox:not([open]) { display: none; }
.balt-lightbox { border: 0; padding: 48px 60px; width: min(1200px, 98vw); max-width: 98vw; height: min(900px, 96dvh); max-height: 96dvh; color: #fff; background: #151515; overflow: hidden; }
.balt-lightbox::backdrop { background: #000d; }
.balt-lightbox figure { margin: 0; height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; }
.balt-lightbox figure img { display: block; width: auto; height: auto; max-width: 100%; max-height: calc(100% - 30px); object-fit: contain; }
.balt-lightbox button { position: absolute; border: 0; padding: 8px 14px; color: #fff; background: #2e7d32; cursor: pointer; font-size: 28px; }
.balt-lightbox-close { top: 5px; right: 5px; }
.balt-lightbox-previous { left: 5px; top: calc(50% - 25px); }
.balt-lightbox-next { right: 5px; top: calc(50% - 25px); }
body.balt-gallery-open { overflow: hidden; }
.balt-video-consent { padding: 25px; background: #f6f1e9; color: #2c2c2c; line-height: 1.6; text-align: center; }
.balt-video-consent iframe { display: block; width: 100%; aspect-ratio: 16 / 9; height: auto; border: 0; }
.balt-video-consent button, .balt-native button, .balt-native input[type=submit] { border: 0; background: #2e7d32; color: #fff; padding: 12px 18px; cursor: pointer; }
.balt-video-consent button { margin-top: 12px; }
.pagelayer-accordion .pagelayer-accordion-panel { display: block; }
.pagelayer-accordion button.pagelayer-accordion-tabs { display: block; width: 100%; border: 0; border-radius: 0; font: inherit; text-align: left; cursor: pointer; }
.pagelayer-accordion button.pagelayer-accordion-tabs[aria-expanded=false] .pagelayer-accordion-icon::before { content: '+'; }
.pagelayer-accordion button.pagelayer-accordion-tabs[aria-expanded=true] .pagelayer-accordion-icon::before { content: '-'; }
.balt-native { max-width: 1170px; margin: 0 auto; padding: 60px 20px 80px; color: #2c2c2c; line-height: 1.7; }
.balt-native h1, .balt-native h2, .balt-native h3 { font-family: Marcellus, Georgia, serif; line-height: 1.2; }
.balt-native h1 { font-size: clamp(32px, 5vw, 50px); }
.balt-native h2 { font-size: 30px; }
.balt-native a { color: #2e7d32; }
.balt-page-heading { padding-bottom: 35px; }
.balt-post-layout { display: grid; grid-template-columns: minmax(0, 3fr) minmax(230px, 1fr); gap: 40px; }
.balt-post-layout article { min-width: 0; }
.balt-post-card { margin-bottom: 45px; }
.balt-post-card img { max-width: 100%; height: auto; }
.balt-post-meta { color: #7a7a7a; font-size: 14px; }
.balt-sidebar ul { padding-left: 20px; }
.balt-sidebar h2 { font-size: 24px; margin: 30px 0 15px; }
.balt-search input { width: 100%; margin: 8px 0; }
.balt-native input:not([type=checkbox]), .balt-native textarea { border: 1px solid #d3d3d3; border-radius: 0; max-width: 100%; padding: 10px; }
.balt-native textarea { display: block; width: 100%; }
.balt-native .comment-list { padding-left: 20px; }
.balt-native .comment-body { padding: 20px 0; }
.balt-native .comment-meta img { border-radius: 50%; vertical-align: middle; }
.balt-native .nav-links { display: flex; justify-content: space-between; gap: 20px; margin: 30px 0; }
@media (max-width: 768px) {
    .balt-menu-toggle { display: inline-flex; gap: 12px; align-items: center; position: absolute; top: 32px; right: 40px; border: 0; padding: 10px 12px; background: #2e7d32; color: #fff; cursor: pointer; }
    .balt-post-layout { grid-template-columns: 1fr; }
    .balt-sidebar { border-top: 1px solid #d3d3d3; padding-top: 20px; }
    .p-6af3440 .pagelayer-grid-gallery-ul { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 500px) {
    .pagelayer-header #logo-blt { max-width: min(180px, calc(100% - 110px)); margin-right: auto; }
    .balt-menu-toggle { top: 30px; right: 30px; }
    .balt-lightbox { padding: 48px 40px; }
    .balt-lightbox button { padding: 6px 10px; }
    .p-6af3440 .pagelayer-grid-gallery-ul { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; }
}
