/*
Theme Name: Elektro-Tremmel
Author: Elektro Tremmel
Version: 1.0
*/

/* Footer menus: keep submenus visible and styled */
footer .dropdown-menu {
  display: block;
  position: static;
  float: none;
  margin: 0;
  padding: 0;
}

footer .dropdown-toggle::after {
  display: none;
}

/* Ensure current menu item highlights in footer and header */
footer .current-menu-item > a.nav-link,
footer .current-menu-item > a.dropdown-item,
footer .current-menu-parent > a.nav-link {
  color: #F45A00;
}

nav.navbar-custom .current-menu-item > a.nav-link,
nav.navbar-custom .current-menu-parent > a.nav-link {
  color: #F45A00;
}

/* Admin bar: prevent fixed navbar from being covered */
body.admin-bar .navbar.fixed-top {
  top: 32px;
}

@media (max-width: 782px) {
  body.admin-bar .navbar.fixed-top {
    top: 46px;
  }
}

/* Gutenberg frontend normalization to preserve Bootstrap layout */
main.wp-block-group {
  margin: 0;
}

.wp-block-group {
  margin: 0;
}

/* Preserve Bootstrap container centering (Gutenberg group reset wipes auto margins) */
.wp-block-group.container {
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Match original spacing between hero and first content container */
main.wp-block-group.flex-shrink-0 > .wp-block-group__inner-container > .wp-block-group.container:first-of-type {
  margin-top: 80px;
}

/* Keep row margins neutral; inner container handles Bootstrap gutters */
.wp-block-group.row {
  margin-right: 0;
  margin-left: 0;
}

/* Fix Bootstrap grid when Gutenberg adds inner container wrappers */
.row > .wp-block-group__inner-container {
  display: flex;
  flex-wrap: wrap;
  margin-right: calc(-0.5 * var(--bs-gutter-x, 1.5rem));
  margin-left: calc(-0.5 * var(--bs-gutter-x, 1.5rem));
  padding-left: 0;
  padding-right: 0;
  /* Keep the inner container full width so row-cols utilities don't shrink it */
  flex: 0 0 calc(100% + var(--bs-gutter-x, 1.5rem)) !important;
  width: calc(100% + var(--bs-gutter-x, 1.5rem)) !important;
  max-width: calc(100% + var(--bs-gutter-x, 1.5rem)) !important;
}

.row > .wp-block-group__inner-container > * {
  padding-right: calc(var(--bs-gutter-x, 1.5rem) * 0.5);
  padding-left: calc(var(--bs-gutter-x, 1.5rem) * 0.5);
  margin-top: var(--bs-gutter-y, 0);
}

/* Support row-cols-* utilities with Gutenberg inner container */
.row.row-cols-1 > .wp-block-group__inner-container > * {
  flex: 0 0 auto !important;
  width: 100% !important;
}

.row.row-cols-2 > .wp-block-group__inner-container > * {
  flex: 0 0 auto !important;
  width: 50% !important;
}

.row.row-cols-3 > .wp-block-group__inner-container > * {
  flex: 0 0 auto !important;
  width: 33.33333333% !important;
}

.row.row-cols-4 > .wp-block-group__inner-container > * {
  flex: 0 0 auto !important;
  width: 25% !important;
}

.row.row-cols-6 > .wp-block-group__inner-container > * {
  flex: 0 0 auto !important;
  width: 16.66666667% !important;
}

@media (min-width: 576px) {
  .row.row-cols-sm-2 > .wp-block-group__inner-container > * {
    flex: 0 0 auto !important;
    width: 50% !important;
  }

  .row.row-cols-sm-3 > .wp-block-group__inner-container > * {
    flex: 0 0 auto !important;
    width: 33.33333333% !important;
  }
}

@media (min-width: 992px) {
  .row.row-cols-lg-6 > .wp-block-group__inner-container > * {
    flex: 0 0 auto !important;
    width: 16.66666667% !important;
  }
}

.wp-block-image {
  margin: 0 0 1rem;
  overflow: hidden;
}

.wp-block-image img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: inherit;
}

.wp-block-heading {
  margin: 0 0 0.5rem;
}

.wp-block-paragraph {
  margin: 0 0 1rem;
}

.wp-block-list {
  margin: 0 0 1rem;
  padding-left: 1.5rem;
}

/* Cards/tiles: keep spacing tight like the original markup */
.card .wp-block-image,
.card .wp-block-heading,
.card .wp-block-paragraph,
.card .wp-block-list {
  margin: 0;
}

/* Restore icon overlap inside teaser cards when images are wrapped in Gutenberg figures */
.card-leistungen-teaser .wp-block-image + .wp-block-image {
  margin-top: -12.5%;
}

/* Center top icons in "Exzellenz" cards */
.card-leistungen .wp-block-image.card-img-top.w-50 img {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/* Center icon images in teaser cards */
.card-leistungen-teaser .wp-block-image.w-25 {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}

.card-leistungen-teaser .wp-block-image.w-25 img {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/* Carousel images: prevent distortion, keep centered cover */
.et-carousel .carousel-item img,
#carousel-hero .carousel-item img {
  width: 100%;
  height: 65vh;
  object-fit: cover;
  object-position: center center;
}

/* Preserve the original slide-specific positioning */
.carousel-start .carousel-inner .carousel-item:nth-child(2) img,
.carousel-start .carousel-inner .carousel-item:nth-child(3) img {
  object-position: 90% center;
}

@media (min-width: 576px) {
  .carousel-start .carousel-inner .carousel-item:nth-child(1) img {
    object-position: center center;
  }
}

.carousel-sicherheitstechnik .carousel-inner .carousel-item:nth-child(1) img {
  object-position: center center;
}

@media (min-width: 576px) {
  .carousel-sicherheitstechnik .carousel-inner .carousel-item:nth-child(1) img {
    object-position: 80% top;
  }
}

.carousel-sicherheitstechnik .carousel-inner .carousel-item:nth-child(2) img,
.carousel-sicherheitstechnik .carousel-inner .carousel-item:nth-child(3) img {
  object-position: 75% top;
}

@media (min-width: 576px) {
  .carousel-sicherheitstechnik .carousel-inner .carousel-item:nth-child(2) img,
  .carousel-sicherheitstechnik .carousel-inner .carousel-item:nth-child(3) img {
    object-position: 90% top;
  }
}

.carousel-unternehmen .carousel-inner .carousel-item img {
  object-position: center top;
}
