/**
 * Theme Name: cw-b
 * Template: frontis
 */

/* ================================
   1) Lokale Schriften einbinden
   ================================ */


@font-face {
  font-family: "Aptos";
  src:
    url("assets/fonts/Aptos.woff2") format("woff2"),
    url("assets/fonts/Aptos.woff") format("woff"),
    url("assets/fonts/Aptos.ttf") format("truetype"),
    url("assets/fonts/Aptos.otf") format("opentype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Aptos";
  src:
    url("assets/fonts/Aptos-Bold.woff2") format("woff2"),
    url("assets/fonts/Aptos-Bold.woff") format("woff"),
    url("assets/fonts/Aptos-Bold.ttf") format("truetype"),
    url("assets/fonts/Aptos-Bold.otf") format("opentype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

body {
  font-family: "Aptos", sans-serif;
}

/* ================================
   2) Utilities / Editor parity
   ================================ */

/* JUSTIFY-KLASSE */
p.text-justify,
.wp-block-paragraph.text-justify,
.wp-block-paragraph.text-justify.has-text-align-left,
.wp-block-paragraph.text-justify.has-text-align-center,
.wp-block-paragraph.text-justify.has-text-align-right {
  text-align: justify !important;
}

/* Für Gutenberg */
.editor-styles-wrapper p.text-justify,
.editor-styles-wrapper .wp-block-paragraph.text-justify,
.editor-styles-wrapper .wp-block-paragraph.text-justify.has-text-align-left,
.editor-styles-wrapper .wp-block-paragraph.text-justify.has-text-align-center,
.editor-styles-wrapper .wp-block-paragraph.text-justify.has-text-align-right {
  text-align: justify !important;
}

@media (min-width: 782px) {
  .wp-block-paragraph.text-justify.has-text-align-left,
  .editor-styles-wrapper .wp-block-paragraph.text-justify.has-text-align-left {
    text-align: left !important;
  }

  .wp-block-paragraph.text-justify.has-text-align-right,
  .editor-styles-wrapper .wp-block-paragraph.text-justify.has-text-align-right {
    text-align: right !important;
  }
}

/* ================================
   3) Global block tweaks
   ================================ */

/* Hover im Menü */
.wp-block-navigation .wp-block-navigation-item__content:hover {
  color: var(--wp--preset--color--base);
}

/* Aktiver Link im Menü */
.wp-block-navigation .wp-block-navigation-item.current-menu-item > a.wp-block-navigation-item__content {
  color: var(--wp--preset--color--base);
}

/* Optional: aktuelle Seite + Hover */
.wp-block-navigation .wp-block-navigation-item.current-menu-item > a.wp-block-navigation-item__content:hover {
  color: var(--wp--preset--color--white);
}

/* Social Icons: alle Icons weiß */
.wp-block-social-links.is-style-logos-only .wp-social-link { color: var(--wp--preset--color--white); }
.wp-block-social-links.is-style-logos-only svg { fill: currentColor; }

/* Elemente gleiche Höhe */
.wp-block-columns.equal-height-columns {
  display: flex !important;
  align-items: stretch !important;
  flex-wrap: nowrap;
}

.wp-block-columns.equal-height-columns .wp-block-column {
  display: flex !important;
  flex-direction: column;
}

.wp-block-columns.equal-height-columns .wp-block-column > * {
  flex: 1;
}

/* Button im Inhalt Hover-Farbwechsel */
.wp-site-blocks .wp-block-button__link:hover {
  transition: background-color 0.3s ease;
  color: var(--wp--preset--color--white) !important;
  background-color: var(--wp--preset--color--primary) !important;
}

.wp-site-blocks .has-background .wp-block-button__link:hover {
  background-color: var(--wp--preset--color--white) !important;
  color: var(--wp--preset--color--primary) !important;
}

/* ================================
   4) Header & Layout (global)
   ================================ */

.cwb-header {
   padding:0 var(--wp--preset--spacing--spacing-32);
}

.cwb-header > .wp-block-group {
    margin-top:var(--wp--preset--spacing--spacing-24);
    margin-bottom:0;
    padding:0;
}

.cwb-header > .wp-block-group  > .wp-block-group {
    border-radius:100px;
    margin-top:0;
    margin-bottom:0;
    padding-top:var(--wp--preset--spacing--spacing-16);
    padding-right:var(--wp--preset--spacing--spacing-16);
    padding-bottom:var(--wp--preset--spacing--spacing-16);
    padding-left:var(--wp--preset--spacing--spacing-32);
}

.cwb-header .intranet-button {
   font-style:normal;
    font-weight:500;
}

/* page.html Styles*/
.main-page{
    margin: var(--wp--preset--spacing--spacing-64) 0;
    padding: 0 var(--wp--preset--spacing--spacing-32);
}
.main-page .wp-block-group {
    padding:var(--wp--preset--spacing--spacing-32);
}

/* Wrapper (<aside ...>) */
header aside.country-selector.weglot-dropdown.weglot-shortcode{
  position: relative;
  flex: 0 0 auto;
  align-self: center;              /* verhindert "Stretch" im Flex-Header */
  height: 30px !important;
  min-height: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  overflow: visible;               /* Dropdown darf darunter aufgehen */
}

/* Weglot-Defaults neutralisieren (sonst 37px Höhe + Padding + 100% Breite) */
header .country-selector.weglot-dropdown a,
header .country-selector.weglot-dropdown span{
  height: auto !important;         /* Weglot: height: 37px */
  line-height: 0 !important;       /* Weglot: line-height: 36px */
  padding: 0 !important;           /* Weglot: padding: 0 10px */
  width: auto !important;          /* Weglot: width: 100% */
}

/* Aktuelle Sprache (label.wgcurrent) */
header .country-selector.weglot-dropdown .wgcurrent{
  width: 50px;
  height: 30px !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  overflow: hidden;
}

/* Pfeil entfernen (Weglot nutzt .wgcurrent:after) */
header .country-selector.weglot-dropdown .wgcurrent:after{
  display: none !important;
  content: none !important;
}

/* Flagge über ::before (laut deinem Inspector: auf a:before bzw. span:before) */
header .country-selector.weglot-dropdown .weglot-flags.flag-0 > a:before,
header .country-selector.weglot-dropdown .weglot-flags.flag-0 > span:before{
  width: 50px !important;
  height: 30px !important;
  background-size: auto 30px !important;
  background-position: center !important;
  margin-right: 0 !important;      /* Weglot default 10px */
  display: block !important;
}

/* Dropdown-Liste: exakt Flaggenbreite + kein weißer Hintergrund/Border */
header .country-selector.weglot-dropdown ul{
  width: 50px !important;
  min-width: 0 !important;         /* Weglot: min-width: 100% */
  margin: 6px 0 0 0 !important;
  padding: 0 !important;
  list-style: none;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* Dropdown-Items/Links: exakt Flaggenmaß */
header .country-selector.weglot-dropdown ul li,
header .country-selector.weglot-dropdown ul li a{
  width: 50px !important;
  min-width: 50px !important;
  height: 30px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

/* Projekte Schriftfarbe und -größe */
.has-body-lightblue-background-color .import-projekt-content h3, 
.editor-styles-wrapper .has-body-lightblue-background-color .import-projekt-content h3,
.has-body-lightblue-background-color.cwb-projekte-inhalt h3, 
.editor-styles-wrapper .has-body-lightblue-background-color.cwb-projekte-inhalt h3{
    font-size: var(--wp--preset--font-size--h-4-p);
    color: var(--wp--preset--color--base);   
}

.has-body-lightblue-background-color .import-projekt-content b,
.has-body-lightblue-background-color .import-projekt-content strong, 
.editor-styles-wrapper .has-body-lightblue-background-color .import-projekt-content b,
.editor-styles-wrapper .has-body-lightblue-background-color .import-projekt-content strong,
.has-body-lightblue-background-color.cwb-projekte-inhalt b,
.has-body-lightblue-background-color.cwb-projekte-inhalt strong, 
.editor-styles-wrapper .has-body-lightblue-background-color.cwb-projekte-inhalt b,
.editor-styles-wrapper .has-body-lightblue-background-color.cwb-projekte-inhalt strong{
    color: var(--wp--preset--color--base);
}

.has-body-lightblue-background-color .import-projekt-content > ul, 
.editor-styles-wrapper .has-body-lightblue-background-color .import-projekt-content > ul,
.has-body-lightblue-background-color.cwb-projekte-inhalt > ul, 
.editor-styles-wrapper .has-body-lightblue-background-color.cwb-projekte-inhalt > ul {
    padding-inline-start: 20px;
    margin-top: -1em;
}

.has-body-lightblue-background-color .import-projekt-content figure,
.has-body-lightblue-background-color.cwb-projekte-inhalt figure {
    line-height: 1.3;
}

.has-body-lightblue-background-color .import-projekt-content a,
.has-body-lightblue-background-color.cwb-projekte-inhalt a {
    color: var(--wp--preset--color--base);
}

.only-mobil {display:none;} 
@media (max-width: 768px) {
.only-mobil {
    display:block;
} 
}

.cwb-text.has-primary-background-color *{
    color: var(--wp--preset--color--white);
}

.cwb-text.has-primary-background-color *{
    color: var(--wp--preset--color--white);
}

.cwb-text a, .wp-block-page-list a {
    color: var(--wp--preset--color--base);
}


.cwb-text-image-wrapper .cwb-read-more-link a{
    color: var(--wp--preset--color--primary);

}

/* ================================
   Menü (mobile first)
   ================================ */

/* 1) Hamburger-Button: Core-SVG aus, eigenes PNG rein */
header .wp-block-navigation__responsive-container-open svg{
  display: none !important;
}

header .wp-block-navigation__responsive-container-open, 
header .no-js-menu-sitemap{
  height: 30px !important;
  min-height: 30px !important;
  padding: 0 !important;
  line-height: 0 !important;
  display: flex;
  align-items: center !important;
  justify-content: center !important;
}

header .no-js-menu-sitemap {
    background:none;
    border:0 ;
    colum-gap:0;
}

header .wp-block-navigation__responsive-container-open::before,
header .no-js-menu-sitemap{
  width: 41px;
  height: 30px;
  display: block;
  margin: 0;
}

header .wp-block-navigation__responsive-container-open::before {
  content: '';
  background: url('./assets/images/CW-B-Mobil-Menu-Icon.png') center/contain no-repeat;
}
/* 2) Intranet: Mobile = nur Menüpunkt, Desktop = Button */
.btn-intranet-login{
  display: none !important;
}

header .wp-block-navigation .intranet-mobile-only{
  margin-top: auto;
}

header .wp-block-navigation .intranet-mobile-only a{
  background-color: var(--wp--preset--color--white) !important;
  color: var(--wp--preset--color--primary) !important;
  transition: all 0.3s ease;
  border-radius: var(--wp--preset--spacing--spacing-104) !important;
  padding: var(--wp--preset--spacing--spacing-16) var(--wp--preset--spacing--spacing-32) !important;
}

header .wp-block-navigation .intranet-mobile-only a:hover{
  background-color: var(--wp--preset--color--base) !important;
  color: var(--wp--preset--color--white) !important;
}

/* 3) Header fix + Layout */
header.wp-block-template-part{
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000;
  background: var(--wp--preset--color--white);
}


.cwb-main{
  margin-bottom: 0 !important;
  padding-top: 108px;
}

.flex-basis-25{
    flex-basis:25%;
}
.flex-basis-40{
 flex-basis:40%;
}
header .wp-block-group.alignwide.has-primary-background-color{
  flex-wrap: nowrap !important;
  gap: var(--wp--preset--spacing--spacing-16);
}

/* 4) Mobile: Header-Reihenfolge & Mobile-Menü Schrift */
@media (max-width: 1147px){
  .cwb-main{
    padding-top:0;
  }
  header .wp-block-group.alignwide.has-primary-background-color{
    justify-content: flex-start !important;
  }

  header .wp-block-group.alignwide.has-primary-background-color > nav.wp-block-navigation, 
  header .no-js-menu-sitemap {
    flex: 0 0 auto !important;
    width: auto !important;
    margin-left: 0 !important;
    order: 30 !important;
  }

  header .wp-block-group.alignwide.has-primary-background-color > aside.country-selector.weglot-dropdown{
    flex: 0 0 auto !important;
    margin-left: auto !important;
    order: 29 !important;
  }

  header .wp-block-group.alignwide.has-primary-background-color > nav.wp-block-navigation,
  header .wp-block-group.alignwide.has-primary-background-color > aside.country-selector.weglot-dropdown{
    align-self: center;
  }

  body .wp-block-navigation__responsive-container.is-menu-open 
    .wp-block-navigation-item__content{
    font-size: 1.5rem !important;
    line-height: 1.4;
    text-align: center;
  }

  /* WP-Close (X) an Hamburger-Position + Größe */
  body .wp-block-navigation__responsive-container.is-menu-open
    .wp-block-navigation__responsive-container-close{
    position: fixed !important;
    top: 40px !important;    /* feinjustieren */
    right: 35px !important;  /* feinjustieren */
    z-index: 10003 !important;
  }

  body .wp-block-navigation__responsive-container.is-menu-open
    .wp-block-navigation__responsive-container-close svg{
    width: 40px !important;
    height: 40px !important;
  }

  body .wp-block-navigation__responsive-container.is-menu-open
    ul.wp-block-navigation__container{
    margin-top: 3rem;
  }
}
@media (max-width: 782px){
  body .wp-block-navigation__responsive-container.is-menu-open
    ul.wp-block-navigation__container{
    margin-top: 0;
  }
}

/* 5) Header-Elemente (global) */
header .wp-block-image{
  flex: 0 0 130px;
  max-width: 130px;
}

header .btn-intranet-login{
  flex: 0 1 160px;
  max-width: 160px;
}

header .wp-block-navigation{
  flex: 1 1 auto;
  overflow: hidden;
}

header .wp-block-navigation{
  gap: 24px;
}

@media (min-width: 1244px){
    header .wp-block-navigation{
    gap: 40px;
  }
}

/* Button im Header Hover-Farbwechsel */

.btn-intranet-login .wp-block-button__link.has-white-background-color{
  transition: background-color 0.3s ease, color 0.3s ease;
}

.btn-intranet-login .wp-block-button__link.has-white-background-color:hover{
  color: var(--wp--preset--color--white) !important;
  background-color: var(--wp--preset--color--base) !important;
}

/* 6) Core Navigation Block: Breakpoint anpassen (600px -> 1148px) */
@media (min-width: 600px){
  header .wp-block-navigation__responsive-container-open:not(.always-shown), 
  header .no-js .no-js-menu-sitemap {
    display: flex !important;
  }
  
  header .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open){
    display: none !important;
  }
}

@media (min-width: 1148px){

  /* Desktop-Button zeigen, Mobile-Menüpunkt weg */
  .btn-intranet-login{
    display: block !important;
  }
  body.is-menu-open .btn-intranet-login{
    display: none !important;
  }
  .wp-block-navigation .intranet-mobile-only{
    display: none !important;
  }

  /* Desktop: Hamburger aus, normales Menü an */
  header .wp-block-navigation__responsive-container-open:not(.always-shown), 
  header .no-js-menu-sitemap {
    display: none !important;
  }
  header .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open){
    display: flex !important;
    flex-wrap: nowrap !important;
  }
}

@media (max-width: 1147px){

  /* Overlay: Startzustand */
  body .wp-block-navigation__responsive-container{
    opacity: 0;
    transform: translateY(8px);
    transition: opacity .18s ease-out, transform .18s ease-out;
  }

  /* Overlay: sichtbar sobald geöffnet */
  body.cwb-menu-open .wp-block-navigation__responsive-container{
    opacity: 1;
    transform: translateY(0);
  }

  /* Items: Startzustand wie Enfold (unsichtbar + leicht versetzt) */
  body.cwb-menu-open .wp-block-navigation__responsive-container
    .wp-block-navigation__container > li{
    opacity: 0;
    position: relative;
    top: 18px;
    transition: opacity .3s ease-out, top .3s ease-out;
    transform: translate3d(0,0,0);
  }

  /* Items: werden erst nach Overlay-Timer animiert */
  body.cwb-menu-open.cwb-menu-items-in .wp-block-navigation__responsive-container
    .wp-block-navigation__container > li.cwb-active-burger-item{
    opacity: 1;
    top: 0;
    left: 0;
  }
}

/* ================================
   5) 404-Seite (mobile first)
   ================================ */
.content-404 {
    padding-bottom:var(--wp--preset--spacing--spacing-140);
}
p.error-page {
  font-size: 100px !important;
  margin-top: -60px !important;
  white-space: nowrap;
}

p.error-page,
.error-info p {
  text-align: center;
}

/* Desktop-Upgrade */
@media (min-width: 782px) {
  p.error-page {
    font-size: 180px !important;
    text-align: left;
  }

  p.error-page,
  .error-info p {
    text-align: left;
  }
}

.cwb-main.page-404 .pad-lr-15 {
    padding-top:var(--wp--preset--spacing--spacing-120);
    padding-bottom:var(--wp--preset--spacing--spacing-32);
}

/* ================================
   6) Footer (mobile first)
   ================================ */

.cwb-zertifikate {
    margin-top:0;
    margin-bottom:0;
    padding-top:var(--wp--preset--spacing--spacing-80);
    padding-bottom:var(--wp--preset--spacing--spacing-80);
}
#footer {
    margin-top:0;
    margin-bottom:0;
    padding-top:var(--wp--preset--spacing--spacing-32);
    padding-bottom:var(--wp--preset--spacing--medium);
}
#footer > .wp-block-columns {
    margin-top:0;
    margin-bottom:0;
    padding:0 var(--wp--preset--spacing--spacing-32);
}

.footer-blue-block {
    margin:0;
    padding:var(--wp--preset--spacing--spacing-120) 0;
}

/* Mobile (Basis): zentrieren */
footer .wp-block-columns.alignwide {
  justify-content: center;
  text-align: center;
}

footer .wp-block-columns.alignwide > .wp-block-column {
  flex-basis: 100% !important;
  max-width: 520px;
  margin-left: auto;
  margin-right: auto;
}

footer .wp-block-social-links {
  justify-content: center;
}

footer .wp-block-navigation__container {
  align-items: center;
}

/* Navigation-Block selbst */
footer .wp-block-navigation.is-vertical {
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
}

/* UL im Navigation-Block */
footer .wp-block-navigation.is-vertical .wp-block-navigation__container {
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
  align-items: center;
  justify-content: center;
}

/* Links/Items ebenfalls mittig ausrichten */
footer.wp-block-navigation.is-vertical .wp-block-navigation-item,
footer .wp-block-navigation.is-vertical .wp-block-navigation-item__content {
  justify-content: center;
  text-align: center;
}

/* Mobile: Bild/Logo sauber mittig */
footer .wp-block-columns:not(.is-not-stacked-on-mobile) .wp-block-image {
  margin-left: auto;
  margin-right: auto;
}

footer .wp-block-columns.alignwide .wp-block-image {
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

footer .wp-block-columns.alignwide .wp-block-image img {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/* Mobile: Headline im Columns-Stack zentrieren */
footer .wp-block-columns:not(.is-not-stacked-on-mobile) .wp-block-heading,
footer .wp-block-columns.alignwide .wp-block-heading {
  text-align: center !important;
}

/* Basis (mobil): H1 Zentriert */
h1.wp-block-heading.alignwide.has-text-align-right {
  text-align: center !important;
}

/* Complianz: Button von rechts nach links verschieben */
#cmplz-manage-consent .cmplz-manage-consent {
  right: unset !important;
  background-color:var(--wp--preset--color--base) !important;
  color:var(--wp--preset--color--white) !important;
  font-size: 12px;
  left:0;
}


/* Nur wenn wirklich geblockt */
.cmplz-blocked-content-container.cmplz-placeholder-element {
  /*background-image: url('./assets/images/complianz-placeholder.jpg') !important;*/
  background-size: cover !important;
  background-position: center !important;
  min-height: 200px;
}

/* Wenn aktiviert: kein Placeholder-Hintergrund */
.cmplz-activated.cmplz-placeholder-element {
  background-image: none !important;
  min-height: unset !important;
}

/*Complianz Ich stimme zu Button */
.cmplz-blocked-content-container .cmplz-blocked-content-notice {
    font-size:var(--wp--preset--font-size--p-1);
    background-color: var(--wp--preset--color--primary);
    border-radius:16px;
    padding:1em 0;
}

.cmplz-blocked-content-notice .cmplz-accept-service {
    background-color: var(--wp--preset--color--base);
    font-size:inherit;
    
    color: #fff;
    border: 0;
    border-radius: 5px;
    margin-top:0.5em;
    padding:10px;
    
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow: none;
    cursor: pointer;
}

/* Ab Desktop: alles wieder links/Standard */
@media (min-width: 782px) {
  h1.wp-block-heading.alignwide.has-text-align-right {
    text-align: right !important;
  }
  footer .wp-block-columns.alignwide {
    justify-content: flex-start;
    text-align: left;
  }

  footer .wp-block-social-links {
    justify-content: flex-start;
  }

  footer .wp-block-navigation.is-vertical {
    width: auto;
    margin-left: 0;
    margin-right: 0;
  }

  footer .wp-block-navigation.is-vertical .wp-block-navigation__container {
    width: auto;
    margin-left: 0;
    margin-right: 0;
    justify-content: flex-start;
    align-items: flex-start;
  }

  footer .wp-block-navigation.is-vertical .wp-block-navigation-item,
  footer .wp-block-navigation.is-vertical .wp-block-navigation-item__content {
    justify-content: flex-start;
    text-align: left;
  }
  #cmplz-manage-consent .cmplz-manage-consent {
    font-size: var(--wp--preset--font-size--p-1);
    left:20px;
 }
}

/* ================================
   Blöcke
   ================================ */

/* Icon-Kachel */
.cwb-service-icon{
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Bild in der Icon-Kachel */
.cwb-service-icon img{
  width: 36px;
  height: auto;
  object-fit: contain;
  display: block;
}

/* Button Standort in Projekte*/
.cwb-standort-p-wrapper{
    background-color:var(--wp--preset--color--white) !important;
}
p.cwb-standort-p {
  display: inline-block;
  border-width: 2px;
  border-radius: 100px;
  border-color: var(--wp--preset--color--base);
  border-style: solid;  
  padding: var(--wp--preset--spacing--spacing-16) var(--wp--preset--spacing--spacing-32) var(--wp--preset--spacing--spacing-16) var(--wp--preset--spacing--spacing-32);
  font-style: normal;
  font-weight: 500;
  color: var(--wp--preset--color--base);
  font-size: var(--wp--preset--font-size--h-4);   
}




/* ================================
   7) Logo-Wall (mobile first)
   ================================ */
.cwb-logo-wall {
    margin-top:0;
    margin-bottom:0;
    padding-top:var(--wp--preset--spacing--spacing-80);
    padding-bottom:var(--wp--preset--spacing--spacing-80);
}

.cwb-logo-wall .wp-block-group.alignwide {
    margin-top:0;
    margin-bottom:0;
    padding-top:0;
    padding-bottom:0;
}

/* Footer-Abschnitt für Navigation */
#footer p.has-neutral-50-color.has-text-color.has-link-color {
  margin-bottom: var(--wp--preset--spacing--spacing-16);
}


/* Alle Footer-Spalten - gemeinsame Padding */
#footer .wp-block-column {
  padding: 0 0 var(--wp--preset--spacing--spacing-40) 0 !important;
}

/* Foorer Navigation */
#footer .wp-block-column:nth-child(1),
#footer .wp-block-column:nth-child(3) { flex-basis: 40%; }
#footer .wp-block-column:nth-child(2) { flex-basis: 25%; }

/* Mobile (Basis): untereinander + zentriert */
.cwb-logo-wall .wp-block-columns {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
  align-items: center !important;
}

.cwb-logo-wall .wp-block-column {
  flex: none !important;
  width: 100% !important;
  margin: 0 !important;
  display: flex;
  justify-content: center;
}

.cwb-logo-wall .wp-block-image {
  width: 100%;
}

.cwb-logo-wall .wp-block-image img {
  display: block;
  margin: 0 auto;
  max-height: 100px;
  width: 100%;
  object-fit: contain;
}

.cwb-logo-wall .wp-block-group.is-nowrap.is-layout-flex {
  justify-content: center !important;
}

.cwb-logo-wall .wp-block-group.is-nowrap.is-layout-flex > p {
  text-align: center !important;
  margin-bottom: 2rem;
}

/* Ab Desktop: wieder „normal“ (Columns nebeneinander wie vom Block vorgesehen) */
@media (min-width: 782px) {
  .cwb-logo-wall .wp-block-columns {
    display: flex !important;
    flex-direction: row !important;
    align-items: stretch !important;
  }

  .cwb-logo-wall .wp-block-column {
    flex: 1 1 0 !important;
    width: auto !important;
    justify-content: flex-start;
  }

  .cwb-logo-wall .wp-block-group.is-nowrap.is-layout-flex {
    justify-content: flex-start !important;
  }

  .cwb-logo-wall .wp-block-group.is-nowrap.is-layout-flex > p {
    text-align: left !important;
  }
}
/* ================================
   9) Global helper(s)
   ================================ */

.wp-block-group.alignfull.has-body-lightblue-background-color.has-background{
  padding: 4rem var(--wp--preset--spacing--spacing-32);
}

h2.has-h-2-projekte-font-size{
  padding-left:var(--wp--preset--spacing--spacing-32);
  padding-right:var(--wp--preset--spacing--spacing-32);
}

/* Mehr Innenabstand bei kleineren Viewports */
@media (max-width: calc(1290px + 4rem)) {
  .pad-lr-15 {
    padding-left: var(--wp--preset--spacing--spacing-32);
    padding-right: var(--wp--preset--spacing--spacing-32);
  }
}



/* NO JS */
.no-js .wp-block-navigation__responsive-container-open {
    display:none;
}

.js .no-js-menu-sitemap {
    display:none !important;
}