/* ALPEG CMS – Grundgestaltung der Inhaltsblöcke (Frontend).
   Themes können Farben über CSS-Variablen anpassen: --acms-accent, --acms-accent-contrast, --acms-radius. */
:root{--acms-accent:#1f6f8b;--acms-accent-contrast:#fff;--acms-radius:10px;--acms-gap:24px}
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.screen-reader-text:focus{clip:auto;width:auto;height:auto;margin:0;padding:12px 18px;background:#fff;color:#111;z-index:100000;left:8px;top:8px}
.has-text-align-left,.text-align-left{text-align:left}.has-text-align-center,.text-align-center{text-align:center}.has-text-align-right,.text-align-right{text-align:right}
.acms-block-paragraph>:first-child{margin-top:0}.acms-block-paragraph>:last-child{margin-bottom:0}
.acms-block-paragraph{margin:0 0 1.2em}
.acms-block-heading{scroll-margin-top:90px}
.acms-block-buttons{margin:1.5em 0;display:flex;flex-wrap:wrap;gap:12px}
.acms-block-buttons.has-text-align-center{justify-content:center}.acms-block-buttons.has-text-align-right{justify-content:flex-end}
.acms-block-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:.7em 1.4em;border-radius:var(--acms-radius);background:var(--acms-accent);color:var(--acms-accent-contrast);border:2px solid var(--acms-accent);font-weight:600;text-decoration:none;line-height:1.4;transition:filter .15s,transform .15s}
.acms-block-button:hover{filter:brightness(1.08);transform:translateY(-1px);text-decoration:none}
.acms-block-button.is-style-outline{background:transparent;color:var(--acms-accent)}
.acms-block-image{margin:1.8em 0}
.acms-block-image img{display:block;max-width:100%;height:auto;border-radius:calc(var(--acms-radius) - 4px)}
.acms-block-image figcaption,.acms-block-embed figcaption,.acms-block-table figcaption{font-size:.85em;opacity:.75;margin-top:.6em;text-align:center}
.cms-image{max-width:100%}.cms-image img{width:100%}
.image-align-left{margin-left:0;margin-right:auto}.image-align-center{margin-left:auto;margin-right:auto}.image-align-right{margin-left:auto;margin-right:0}
.image-align-wide{width:min(1200px,100vw - 32px)!important;max-width:none;margin-left:50%;transform:translateX(-50%)}
.image-align-full{width:100vw!important;max-width:none;margin-left:50%;transform:translateX(-50%)}
.image-align-full img{border-radius:0}
.image-width-10{width:10%}
.image-width-11{width:11%}
.image-width-12{width:12%}
.image-width-13{width:13%}
.image-width-14{width:14%}
.image-width-15{width:15%}
.image-width-16{width:16%}
.image-width-17{width:17%}
.image-width-18{width:18%}
.image-width-19{width:19%}
.image-width-20{width:20%}
.image-width-21{width:21%}
.image-width-22{width:22%}
.image-width-23{width:23%}
.image-width-24{width:24%}
.image-width-25{width:25%}
.image-width-26{width:26%}
.image-width-27{width:27%}
.image-width-28{width:28%}
.image-width-29{width:29%}
.image-width-30{width:30%}
.image-width-31{width:31%}
.image-width-32{width:32%}
.image-width-33{width:33%}
.image-width-34{width:34%}
.image-width-35{width:35%}
.image-width-36{width:36%}
.image-width-37{width:37%}
.image-width-38{width:38%}
.image-width-39{width:39%}
.image-width-40{width:40%}
.image-width-41{width:41%}
.image-width-42{width:42%}
.image-width-43{width:43%}
.image-width-44{width:44%}
.image-width-45{width:45%}
.image-width-46{width:46%}
.image-width-47{width:47%}
.image-width-48{width:48%}
.image-width-49{width:49%}
.image-width-50{width:50%}
.image-width-51{width:51%}
.image-width-52{width:52%}
.image-width-53{width:53%}
.image-width-54{width:54%}
.image-width-55{width:55%}
.image-width-56{width:56%}
.image-width-57{width:57%}
.image-width-58{width:58%}
.image-width-59{width:59%}
.image-width-60{width:60%}
.image-width-61{width:61%}
.image-width-62{width:62%}
.image-width-63{width:63%}
.image-width-64{width:64%}
.image-width-65{width:65%}
.image-width-66{width:66%}
.image-width-67{width:67%}
.image-width-68{width:68%}
.image-width-69{width:69%}
.image-width-70{width:70%}
.image-width-71{width:71%}
.image-width-72{width:72%}
.image-width-73{width:73%}
.image-width-74{width:74%}
.image-width-75{width:75%}
.image-width-76{width:76%}
.image-width-77{width:77%}
.image-width-78{width:78%}
.image-width-79{width:79%}
.image-width-80{width:80%}
.image-width-81{width:81%}
.image-width-82{width:82%}
.image-width-83{width:83%}
.image-width-84{width:84%}
.image-width-85{width:85%}
.image-width-86{width:86%}
.image-width-87{width:87%}
.image-width-88{width:88%}
.image-width-89{width:89%}
.image-width-90{width:90%}
.image-width-91{width:91%}
.image-width-92{width:92%}
.image-width-93{width:93%}
.image-width-94{width:94%}
.image-width-95{width:95%}
.image-width-96{width:96%}
.image-width-97{width:97%}
.image-width-98{width:98%}
.image-width-99{width:99%}
.image-width-100{width:100%}
.acms-block-notice{background:color-mix(in srgb,var(--acms-accent) 9%,transparent);border-left:4px solid var(--acms-accent);border-radius:6px;padding:16px 20px;margin:1.6em 0}
.acms-block-table{margin:1.8em 0;overflow-x:auto}
.acms-block-table table{width:100%;border-collapse:collapse}
.acms-block-table th,.acms-block-table td{border:1px solid color-mix(in srgb,currentColor 18%,transparent);padding:.6em .8em;text-align:left;vertical-align:top}
.acms-block-table thead th{background:color-mix(in srgb,currentColor 6%,transparent)}
.acms-block-table.is-striped tbody tr:nth-child(odd){background:color-mix(in srgb,currentColor 4%,transparent)}
.acms-block-table caption{caption-side:bottom;font-size:.85em;opacity:.75;padding-top:8px}
.acms-block-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--acms-gap);margin:1.8em 0}
.acms-block-columns.columns-3{grid-template-columns:repeat(3,minmax(0,1fr))}.acms-block-columns.columns-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.acms-block-columns.layout-33-66{grid-template-columns:1fr 2fr}.acms-block-columns.layout-66-33{grid-template-columns:2fr 1fr}
.acms-block-columns.layout-25-75{grid-template-columns:1fr 3fr}.acms-block-columns.layout-75-25{grid-template-columns:3fr 1fr}
.acms-block-columns.layout-25-50-25{grid-template-columns:1fr 2fr 1fr}
.acms-block-column>:first-child{margin-top:0}.acms-block-column>:last-child{margin-bottom:0}
.acms-block-quote{margin:1.8em 0;padding:.4em 0 .4em 1.4em;border-left:4px solid var(--acms-accent)}
.acms-block-quote .rich-text p{font-size:1.2em;font-style:italic;margin:.3em 0}
.acms-block-quote cite{display:block;font-size:.85em;opacity:.75;font-style:normal;margin-top:.5em}
.acms-block-list{padding-left:1.4em;margin:1em 0;line-height:1.75}
.acms-block-code{background:color-mix(in srgb,currentColor 6%,transparent);border:1px solid color-mix(in srgb,currentColor 14%,transparent);border-radius:8px;padding:16px;overflow:auto;font-size:.9em;line-height:1.6;margin:1.6em 0}
.acms-block-code code{font-family:ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace;white-space:pre}
.rich-text code,.acms-block-list code{background:color-mix(in srgb,currentColor 9%,transparent);padding:1px 5px;border-radius:4px;font-size:.92em}
.acms-block-separator{border:0;border-top:2px solid color-mix(in srgb,currentColor 22%,transparent);width:120px;margin:2.4em auto}
.acms-block-separator.is-style-wide{width:100%}
.acms-block-separator.is-style-dots{border:0;width:auto;text-align:center}
.acms-block-separator.is-style-dots:before{content:"\00B7 \00B7 \00B7";font-size:28px;letter-spacing:14px;opacity:.6}
.acms-block-spacer.spacer-16{height:16px}.acms-block-spacer.spacer-32{height:32px}.acms-block-spacer.spacer-48{height:48px}.acms-block-spacer.spacer-64{height:64px}.acms-block-spacer.spacer-96{height:96px}.acms-block-spacer.spacer-128{height:128px}
.acms-block-gallery{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr));margin:1.8em 0}
.acms-block-gallery.gallery-columns-2{grid-template-columns:repeat(2,minmax(0,1fr))}.acms-block-gallery.gallery-columns-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.acms-block-gallery figure{margin:0}
.acms-block-gallery img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:6px;display:block}
.acms-block-gallery figcaption{font-size:.8em;opacity:.75;margin-top:6px;text-align:center}
.acms-block-group{margin:1.8em 0}
.acms-block-group:not(.is-style-default){padding:28px;border-radius:calc(var(--acms-radius) + 4px)}
.acms-block-group.is-style-surface{background:color-mix(in srgb,currentColor 5%,transparent)}
.acms-block-group.is-style-accent{background:color-mix(in srgb,var(--acms-accent) 12%,transparent);border-left:5px solid var(--acms-accent)}
.acms-block-group.is-style-outline{border:2px solid color-mix(in srgb,currentColor 16%,transparent)}
.acms-block-group>:first-child{margin-top:0}.acms-block-group>:last-child{margin-bottom:0}
.acms-block-details{border:1px solid color-mix(in srgb,currentColor 16%,transparent);border-radius:var(--acms-radius);padding:14px 18px;margin:1em 0}
.acms-block-details summary{font-weight:700;cursor:pointer}
.acms-block-details[open] summary{margin-bottom:10px}
.acms-block-media-text{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center;margin:2em 0}
.acms-block-media-text figure{margin:0}.acms-block-media-text.media-right figure{order:2}
.acms-block-media-text img{width:100%;height:auto;border-radius:8px;display:block}
.acms-block-file{display:flex;align-items:center;gap:16px;border:1px solid color-mix(in srgb,currentColor 16%,transparent);border-radius:var(--acms-radius);padding:14px 18px;margin:1.4em 0}
.acms-block-file>div{flex:1;min-width:0}.acms-block-file strong{display:block;overflow-wrap:anywhere}.acms-block-file small{opacity:.7}
.acms-block-file .download-icon{font-size:11px;font-weight:700;letter-spacing:.06em;border:2px solid currentColor;border-radius:6px;padding:10px 6px;min-width:44px;text-align:center;opacity:.8}
.acms-block-file .button{white-space:nowrap}
.acms-block-embed{margin:1.8em 0}
.acms-embed-wrapper{position:relative;aspect-ratio:16/9;border-radius:8px;overflow:hidden;background:#000}
.acms-embed-wrapper iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.acms-block-latest-posts{list-style:none;padding:0;margin:1.6em 0;display:grid;gap:18px}
.acms-block-latest-posts.has-images{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}
.acms-block-latest-posts li{display:flex;flex-direction:column;gap:4px}
.acms-block-latest-posts .latest-posts-title{font-weight:700}
.acms-block-latest-posts time{font-size:.85em;opacity:.7}
.acms-block-latest-posts img{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;border-radius:8px}
.acms-missing-media{display:block;padding:24px;border:1px dashed currentColor;opacity:.6;text-align:center}
.wp-caption,.acms-caption{margin:1.6em 0}
@media (max-width:781px){
 .acms-block-columns,.acms-block-columns.columns-3,.acms-block-columns.columns-4,.acms-block-columns[class*=layout-]{grid-template-columns:1fr}
 .acms-block-media-text{grid-template-columns:1fr}.acms-block-media-text.media-right figure{order:0}
 .acms-block-gallery.gallery-columns-4,.acms-block-gallery.gallery-columns-3{grid-template-columns:repeat(2,minmax(0,1fr))}
 [class*=image-width-]:not(.image-width-100){width:100%}
 .acms-block-file{flex-wrap:wrap}
}

/* Explizite Schriftwahl pro Text-/Überschriftenblock. */
 .acms-font-system, .acms-font-system p, .acms-font-system span, .acms-font-system strong, .acms-font-system em,.acms-font-system li{font-family:system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important}
 .acms-font-arial, .acms-font-arial p, .acms-font-arial span, .acms-font-arial strong, .acms-font-arial em,.acms-font-arial li{font-family:Arial, Helvetica, sans-serif !important}
 .acms-font-georgia, .acms-font-georgia p, .acms-font-georgia span, .acms-font-georgia strong, .acms-font-georgia em,.acms-font-georgia li{font-family:Georgia, "Times New Roman", serif !important}
 .acms-font-times, .acms-font-times p, .acms-font-times span, .acms-font-times strong, .acms-font-times em,.acms-font-times li{font-family:"Times New Roman", Times, serif !important}
 .acms-font-verdana, .acms-font-verdana p, .acms-font-verdana span, .acms-font-verdana strong, .acms-font-verdana em,.acms-font-verdana li{font-family:Verdana, Geneva, sans-serif !important}
 .acms-font-trebuchet, .acms-font-trebuchet p, .acms-font-trebuchet span, .acms-font-trebuchet strong, .acms-font-trebuchet em,.acms-font-trebuchet li{font-family:"Trebuchet MS", Helvetica, sans-serif !important}
 .acms-font-courier, .acms-font-courier p, .acms-font-courier span, .acms-font-courier strong, .acms-font-courier em,.acms-font-courier li{font-family:"Courier New", Courier, monospace !important}

.acms-font-roboto,.acms-font-roboto p,.acms-font-roboto span,.acms-font-roboto strong,.acms-font-roboto em,.acms-font-roboto li{font-family:Roboto,Arial,sans-serif!important}
