/*!******************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[3]!./src/scss/app.scss ***!
  \******************************************************************************************************************************************************************************************************************************************/
@import url(https://fonts.googleapis.com/css2?family=Roboto+Condensed:ital,wght@0,100..900;1,100..900&display=swap);
/*!**********************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[3]!./src/scss/app.scss (1) ***!
  \**********************************************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
@keyframes underline-out-in {
  0% {
    background-size: 100% 1px;
    background-position: 100% 100%;
  }
  45% {
    background-size: 0 1px;
    background-position: 100% 100%;
  }
  46% {
    background-size: 0 1px;
    background-position: 0 100%;
  }
  100% {
    background-size: 100% 1px;
    background-position: 0 100%;
  }
}
body::before {
  content: '{"small": 0, "phone": 320, "phablet": 480, "tablet": 768, "laptop": 992, "desktop": 1200, "screen": 1400, "wide": 1600, "medium": 768, "large": 1200}';
  display: none;
}

.sticky {
  position: sticky;
  top: 100px;
  z-index: 10;
  align-self: flex-start;
  width: 100%;
}
@media screen and (min-width: 992px) {
  .sticky {
    top: 120px;
  }
}

.wp-block-column:has(.sticky),
.wp-block-columns:has(.sticky),
.wp-block-group:has(.sticky),
.wp-block-section:has(.sticky),
.entry-content:has(.sticky),
.wp-site-blocks:has(.sticky),
.section:has(.sticky),
.section__container:has(.sticky),
.container:has(.sticky),
main:has(.sticky) {
  overflow: visible !important;
}

.wp-block-columns:has(.sticky) {
  align-items: stretch !important;
  overflow: visible !important;
}

.wp-block-column:has(.sticky) {
  display: flex !important;
  flex-direction: column !important;
  height: auto !important;
  min-height: 100% !important;
  overflow: visible !important;
}

@media screen and (min-width: 992px) {
  .hide-for-laptop {
    display: none !important;
  }
}

.show-for-laptop {
  display: none !important;
}
@media screen and (min-width: 992px) {
  .show-for-laptop {
    display: inline !important;
  }
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  -webkit-tap-highlight-color: transparent;
  scroll-behavior: smooth;
  scroll-padding-top: 80px;
}
@media screen and (min-width: 768px) {
  html {
    scroll-padding-top: 100px;
  }
}

body {
  background-color: #0D2145;
  color: #0D2145;
  font-family: "Roboto Condensed", sans-serif;
  position: relative;
}

p,
h1, h2, h3, h4, h5, h6,
figure,
ul, ol,
blockquote {
  margin: 0;
}

p {
  margin: 1rem 0 0 0;
}
p:first-of-type {
  margin-top: 0;
}
p > a {
  background-image: linear-gradient(#0D2145, #0D2145);
  background-position: 0 100%;
  background-repeat: no-repeat;
  background-size: 100% 1px;
  display: inline;
  padding-bottom: 1px;
  text-decoration: none !important;
}
p > a:hover {
  animation: underline-out-in 1.1s cubic-bezier(0.32, 0.32, 0.15, 1.17) forwards;
}

:root a:not(.wp-element-button) {
  color: #0D2145;
  text-decoration: none;
}
:root :where(.is-layout-flex) {
  margin-block-start: 1.5rem;
}
@media screen and (min-width: 1200px) {
  :root :where(.is-layout-flex) {
    margin-block-start: 2rem;
  }
}
:root :where(.wp-block-columns-is-layout-flex) {
  gap: 2rem;
}
:root :where(.wp-block-image figcaption) {
  color: rgba(13, 33, 69, 0.8);
  letter-spacing: 0.01em;
  margin-top: 0.5rem;
  padding-left: 2px;
  text-align: left;
}

.no-js .header__nav {
  display: none;
}
@media screen and (min-width: 0) {
  .no-js .header-mobile__nav {
    display: none;
  }
}
@media screen and (min-width: 1200px) {
  .no-js .header-mobile__nav {
    display: none;
  }
}

.visually-hidden {
  border: 0;
  clip: rect(0, 0, 0, 0);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

.wp-site-blocks > * + * {
  margin-block-start: 0;
}

ul.wp-block-post-template.is-layout-grid.wp-block-post-template-is-layout-grid {
  margin-left: 0 !important;
}

.footer {
  color: rgba(250, 251, 253, 0.8);
  font-family: "Roboto Condensed", sans-serif;
  font-size: 1rem;
  padding-bottom: 2rem;
  padding-top: 3rem;
  position: relative;
}
@media screen and (min-width: 768px) {
  .footer {
    padding-top: 4rem;
  }
}
@media screen and (min-width: 1200px) {
  .footer {
    padding-top: 6rem;
  }
}
.footer__column {
  margin: 0 !important;
  padding-bottom: 3rem;
}
.footer__logo {
  padding-bottom: 1.5rem;
}
.footer__logo > .footer__social-wrapper {
  display: none;
}
@media screen and (min-width: 1200px) {
  .footer__logo > .footer__social-wrapper {
    display: flex;
  }
}
@media screen and (min-width: 1200px) {
  .footer__logo {
    flex: 1 1 30%;
  }
}
.footer__nav {
  display: flex;
  flex: 1 1 100%;
  flex-direction: column;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .footer__nav {
    flex-direction: row;
    gap: 2rem;
    justify-content: space-between;
  }
}
@media screen and (min-width: 1200px) {
  .footer__nav {
    flex: 1 1 70%;
    margin-top: 0;
    justify-content: flex-end;
  }
  .footer__nav .footer__column {
    flex: 0 0 260px;
    width: 260px;
  }
}
@media screen and (min-width: 768px) {
  .footer__meta-nav {
    justify-content: flex-end;
  }
}
.footer__social-wrapper {
  display: flex;
  gap: 0.75rem;
  margin-top: 1.25rem;
}
@media screen and (min-width: 1200px) {
  .footer__social-wrapper {
    margin-top: 2rem;
  }
}
.footer__social-icon {
  align-items: center;
  border: 1px solid #CBD5E1;
  border-radius: 100%;
  display: flex;
  flex: 0 0 30px;
  height: 30px;
  justify-content: center;
  margin: 0 !important;
  width: 30px;
}
.footer__social:hover {
  background-color: rgba(13, 33, 69, 0.1);
}
.footer__top {
  display: flex;
  flex-direction: column;
  padding-bottom: 1rem !important;
}
@media screen and (min-width: 768px) {
  .footer__top {
    padding-bottom: 0;
  }
}
@media screen and (min-width: 1200px) {
  .footer__top {
    flex-direction: row;
    gap: 4rem;
  }
}
.footer__top .wp-block-group {
  margin-left: 0 !important;
}
.footer__top a {
  color: rgba(250, 251, 253, 0.8) !important;
}
.footer__top a:hover {
  text-decoration: underline;
}
.footer__bottom p,
.footer__bottom a {
  color: rgba(250, 251, 253, 0.5) !important;
}
@media screen and (min-width: 1200px) {
  .footer__address > .footer__social-wrapper {
    display: none;
  }
}
.footer__address > p {
  line-height: 1.8;
}
.footer__bottom {
  padding-top: 1rem !important;
}
@media screen and (min-width: 768px) {
  .footer__bottom {
    padding-top: 1rem !important;
  }
}
@media screen and (max-width: 768px) {
  .footer__bottom .wp-block-column:first-child {
    order: 2;
  }
  .footer__bottom .wp-block-column:last-child {
    order: 1;
  }
}
.footer__heading {
  color: rgba(250, 251, 253, 0.8);
  font-family: "Roboto Condensed", sans-serif;
  font-size: 1.125rem;
  font-weight: 600;
  letter-spacing: 0;
  margin-bottom: 0;
  padding-bottom: 1rem;
  text-transform: none;
}
@media screen and (min-width: 768px) {
  .footer__heading {
    padding-bottom: 1.5rem;
  }
}
.footer__separator {
  border-bottom: 1px solid #CBD5E1;
  border-top: none !important;
  max-width: unset;
}
.footer .wp-block-navigation__container {
  align-items: flex-start;
  gap: 1rem;
  padding: 0 !important;
}
.footer .wp-block-navigation-item__label {
  font-size: 1rem;
}
.footer p {
  color: rgba(250, 251, 253, 0.8);
}
.footer svg {
  color: rgba(250, 251, 253, 0.8) !important;
}
.footer__image img {
  max-width: 225px;
  width: 100%;
}
.footer__copyright {
  color: rgba(13, 33, 69, 0.8);
  font-size: 0.8125rem;
}
@media screen and (min-width: 768px) {
  .footer__copyright {
    font-size: 0.875rem;
  }
}
.footer .icon-button__link {
  border-bottom: none;
  display: flex;
}
.footer .icon-button__link::after {
  display: none;
}

.wp-site-blocks {
  padding-top: 80px;
}
@media screen and (min-width: 768px) {
  .wp-site-blocks {
    padding-top: 100px;
  }
}

.header {
  background-color: #FAFBFD;
  left: 0;
  position: fixed;
  top: 0;
  transition: box-shadow 0.3s ease;
  width: 100%;
  z-index: 1000;
}
.header--scrolled {
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}
.admin-bar .header {
  top: 46px;
}
@media screen and (min-width: 783px) {
  .admin-bar .header {
    top: 32px;
  }
}
.header .header__logo--dark {
  display: block;
}
.header .header__logo--white {
  display: none;
}
.header .main-nav .wp-block-navigation-item:not(:last-of-type) {
  color: #0D2145;
}
.header .main-nav .wp-block-navigation-item:not(:last-of-type) a {
  color: #0D2145;
}
.header .main-nav .wp-block-navigation-item:not(:last-of-type) a::after {
  background-color: #0D2145;
}
.header .main-nav .wp-block-navigation-item:not(:last-of-type).current-menu-item > a,
.header .main-nav .wp-block-navigation-item:not(:last-of-type).current-menu-item .wp-block-navigation-item__label {
  color: #0D2145;
}
.header .main-nav .wp-block-navigation-item:not(:last-of-type).current-menu-item > a::after,
.header .main-nav .wp-block-navigation-item:not(:last-of-type).current-menu-item .wp-block-navigation-item__label::after {
  background-color: #0D2145;
  width: 20px;
}
.header .main-nav .wp-block-navigation-item:not(:last-of-type) .wp-block-navigation-item__label {
  color: #0D2145;
}
.header .main-nav .wp-block-navigation-item:not(:last-of-type) .wp-block-navigation-item__label::after {
  background-color: #0D2145;
}
.header .main-nav .wp-block-navigation__responsive-container-open svg {
  fill: #0D2145;
}
.header__logo {
  z-index: 1;
}
.header__logo--dark {
  display: block;
}
.header__logo--white {
  display: none;
}
.header__logo img {
  height: auto;
  width: 160px;
}
@media screen and (min-width: 768px) {
  .header__logo img {
    width: 150px;
  }
}
@media screen and (min-width: 1200px) {
  .header__logo img {
    width: 200px;
  }
}
.header__logo a {
  border-bottom: none;
}
.header__logo a::after {
  display: none;
}
.header__bottom {
  align-items: center;
  display: flex;
  height: 80px;
  justify-content: space-between;
  padding: 0 1rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .header__bottom {
    height: 100px;
    padding: 0;
  }
}
.header .wp-block-group-link {
  display: none;
}
@media screen and (min-width: 768px) {
  .header .wp-block-group-link {
    display: flex;
  }
}
.header-cta {
  align-items: center;
  display: flex;
  gap: 0.5rem;
}
.header-cta .wp-block-group {
  margin: 0;
}
.header-cta__icon {
  background-color: #1B4FD8;
  border-radius: 100%;
  padding: 0.5rem;
}
@media screen and (min-width: 1200px) {
  .header-cta__icon {
    padding: 0.75rem;
  }
}
.header-cta__text {
  font-size: 0.875rem;
  font-weight: 400;
  padding-bottom: 2px;
}
.header-cta__phone {
  font-size: 1rem;
  font-weight: 600;
  margin-top: 0;
}

.wp-block-site-logo.is-default-size img {
  width: 160px;
}
@media screen and (min-width: 768px) {
  .wp-block-site-logo.is-default-size img {
    width: 150px;
  }
}
@media screen and (min-width: 1200px) {
  .wp-block-site-logo.is-default-size img {
    width: 200px;
  }
}

.main-nav {
  z-index: 1;
}
.main-nav .wp-block-navigation:not(.has-background) .wp-block-navigation__responsive-container.is-menu-open {
  background-color: #FAFBFD;
}
.main-nav .wp-block-navigation-item {
  color: #0D2145;
  letter-spacing: 0.02rem;
  position: relative;
}
.main-nav .wp-block-navigation-item a::after {
  background-color: #0D2145;
  backface-visibility: hidden;
  bottom: 0;
  content: "";
  height: 2px;
  left: 0;
  position: absolute;
  transition: background-color 0.25s ease-in-out, width 0.36s cubic-bezier(0.51, 0.5, 0.07, 0.99);
  visibility: visible;
  width: 0;
}
@media screen and (min-width: 768px) {
  .main-nav .wp-block-navigation-item a::after {
    background-color: #0D2145;
  }
}
.main-nav .wp-block-navigation-item a:hover::after {
  width: 100%;
}
.main-nav .wp-block-navigation-item__label {
  font-family: "Roboto Condensed", sans-serif;
  font-size: 1rem;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  .main-nav .wp-block-navigation-item__label {
    font-size: 0.9375rem;
  }
}
@media screen and (min-width: 992px) {
  .main-nav .wp-block-navigation-item__label {
    font-size: 1.125rem;
  }
}
.main-nav .wp-block-navigation__container {
  gap: 2rem;
}
@media screen and (min-width: 768px) {
  .main-nav .wp-block-navigation__container {
    gap: 1.5rem;
    padding: 0 !important;
  }
}
@media screen and (min-width: 1200px) {
  .main-nav .wp-block-navigation__container {
    gap: 2.5rem;
  }
}
.main-nav .wp-block-navigation__responsive-container.is-menu-open {
  padding: 0 !important;
}
.main-nav .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
  display: none !important;
}
@media screen and (min-width: 768px) {
  .main-nav .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
    display: flex !important;
  }
}
.main-nav .wp-block-navigation__responsive-container-content {
  color: #0D2145;
}
@media screen and (min-width: 768px) {
  .main-nav .wp-block-navigation__responsive-container-content {
    color: #0D2145;
  }
}
.main-nav .wp-block-navigation__responsive-container-open:not(.always-shown) {
  display: flex !important;
}
@media screen and (min-width: 768px) {
  .main-nav .wp-block-navigation__responsive-container-open:not(.always-shown) {
    display: none !important;
  }
}
.main-nav .wp-block-navigation__responsive-container-open svg {
  fill: #0D2145;
}
.main-nav .wp-block-navigation__responsive-container-close {
  align-items: center;
  display: flex;
  height: 80px;
  justify-content: flex-end;
  width: 100%;
}
@media screen and (min-width: 480px) {
  .main-nav .wp-block-navigation__responsive-container-close {
    padding: 1rem 24px;
  }
}
.main-nav .wp-block-navigation__responsive-container-close svg {
  fill: #0D2145;
}
@media screen and (max-width: 480px) {
  .main-nav .wp-block-navigation-submenu__toggle {
    position: relative;
  }
  .main-nav .wp-block-navigation-submenu__toggle[aria-expanded=true]::before {
    transform: rotate(-45deg);
  }
  .main-nav .wp-block-navigation-submenu__toggle[aria-expanded=true]::after {
    transform: rotate(45deg);
  }
  .main-nav .wp-block-navigation-submenu__toggle::before, .main-nav .wp-block-navigation-submenu__toggle::after {
    background-color: #0D2145;
    border: 0;
    content: "";
    display: inline-block;
    height: 0.1rem;
    margin-top: 0;
    position: absolute;
    top: 50%;
    width: 0.55rem;
  }
  .main-nav .wp-block-navigation-submenu__toggle::before {
    right: 6px;
    transform: rotate(45deg);
  }
  .main-nav .wp-block-navigation-submenu__toggle::after {
    right: 0;
    transform: rotate(-45deg);
  }
}
@media screen and (max-width: 480px) {
  .main-nav .wp-block-navigation__submenu-container {
    gap: 1rem !important;
    padding-left: 1rem !important;
    padding-top: 1rem !important;
  }
}
@media screen and (min-width: 768px) {
  .main-nav .wp-block-navigation__submenu-container {
    border: 0 !important;
    top: 64px !important;
  }
}
.main-nav .wp-block-navigation__submenu-container .wp-block-navigation-link::after {
  display: none;
}

.main-nav--white .wp-block-navigation-item {
  color: #0D2145;
}
.main-nav--white .wp-block-navigation-item a {
  color: #0D2145;
}
.main-nav--white .wp-block-navigation-item a::after {
  background-color: #0D2145;
}
.main-nav--white .wp-block-navigation-item.current-menu-item > a, .main-nav--white .wp-block-navigation-item.current-menu-ancestor > a, .main-nav--white .wp-block-navigation-item.current-page-ancestor > a, .main-nav--white .wp-block-navigation-item.current_page_parent > a, .main-nav--white .wp-block-navigation-item.current_page_ancestor > a {
  color: #0D2145;
}
.main-nav--white .wp-block-navigation-item__label {
  color: #0D2145;
}
.main-nav--white .wp-block-navigation__responsive-content {
  color: #0D2145;
}
.main-nav--white .wp-block-navigation__responsive-container-open svg {
  fill: #0D2145;
}
@media screen and (max-width: 480px) {
  .main-nav--white .wp-block-navigation-submenu__toggle::before, .main-nav--white .wp-block-navigation-submenu__toggle::after {
    background-color: #0D2145;
  }
}

.header:has(.is-menu-open) .header__logo {
  align-items: center;
  display: flex !important;
  left: 1rem;
  z-index: 100001;
}
@media screen and (min-width: 768px) {
  .header:has(.is-menu-open) .header__logo {
    height: 100px;
  }
}
.header:has(.is-menu-open) .header__logo--dark {
  display: block !important;
}
.header:has(.is-menu-open) .header__logo--white {
  display: none !important;
}
.header:has(.is-menu-open) .header__logo img {
  max-width: 160px;
}
@media screen and (min-width: 768px) {
  .header:has(.is-menu-open) .header__logo img {
    max-width: 150px;
  }
}

body:has(.is-menu-open) {
  overflow: hidden;
}
body:has(.is-menu-open) .hero {
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease-in-out;
}

.wp-block-navigation__responsive-container.is-menu-open {
  display: flex !important;
  flex-direction: column !important;
  gap: 2rem;
  height: 100vh !important;
  left: 0 !important;
  position: fixed !important;
  top: 0 !important;
  width: 100vw !important;
  z-index: 100000 !important;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item:not(:last-of-type) .wp-block-navigation-item__label,
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item:not(:last-of-type) a {
  color: #0D2145 !important;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item:not(:last-of-type) .wp-block-navigation-item__label::after,
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item:not(:last-of-type) a::after {
  background-color: #0D2145 !important;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
  margin-bottom: auto;
  margin-top: 0;
  overflow-y: auto;
  padding: 2rem 1rem;
  width: 100%;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close {
  padding: 0 12px;
  position: relative;
}
@media screen and (min-width: 768px) {
  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close {
    height: 100px;
  }
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close svg {
  fill: #0D2145 !important;
}
.wp-block-navigation__responsive-container.is-menu-open::before {
  content: none !important;
}

body.single-reference .main-nav .wp-block-navigation-item a[href*="/referenzen"],
body.single-reference .main-nav .wp-block-navigation-item a[href*="/referenzen"] {
  color: #0D2145;
}
@media screen and (min-width: 768px) {
  body.single-reference .main-nav .wp-block-navigation-item a[href*="/referenzen"],
  body.single-reference .main-nav .wp-block-navigation-item a[href*="/referenzen"] {
    color: #0D2145;
  }
}
body.single-reference .main-nav .wp-block-navigation-item a[href*="/referenzen"]::after,
body.single-reference .main-nav .wp-block-navigation-item a[href*="/referenzen"]::after {
  width: 20px;
}
body.single-reference .main-nav--white .wp-block-navigation-item a[href*="/projekte"],
body.single-reference .main-nav--white .wp-block-navigation-item a[href*="/projekte"] {
  color: #FAFBFD;
}
body.single-reference .main-nav--white .wp-block-navigation-item a[href*="/projekte"]::after,
body.single-reference .main-nav--white .wp-block-navigation-item a[href*="/projekte"]::after {
  width: 20px;
}

.margin-top-0 {
  margin-top: 0 !important;
}
.margin-top-1 {
  margin-top: 1rem !important;
}
.margin-top-2 {
  margin-top: 2rem !important;
}
.margin-top-3 {
  margin-top: 3rem !important;
}
.margin-bottom-0 {
  margin-bottom: 0 !important;
}
.margin-bottom-1 {
  margin-bottom: 1rem !important;
}
.margin-bottom-2 {
  margin-bottom: 2rem !important;
}
.margin-bottom-3 {
  margin-bottom: 3rem !important;
}

.padding-top-0 {
  padding-top: 0 !important;
}
.padding-top-1 {
  padding-top: 1rem !important;
}
.padding-top-2 {
  padding-top: 2rem !important;
}
.padding-top-3 {
  padding-top: 3rem !important;
}
.padding-bottom-0 {
  padding-bottom: 0 !important;
}
.padding-bottom-1 {
  padding-bottom: 1rem !important;
}
.padding-bottom-2 {
  padding-bottom: 2rem !important;
}
.padding-bottom-3 {
  padding-bottom: 3rem !important;
}

.gap-1 {
  gap: 1rem !important;
}
.gap-2 {
  gap: 2rem !important;
}
.gap-3 {
  gap: 3rem !important;
}
.gap-4 {
  gap: 4rem !important;
}
@media screen and (min-width: 0) and (max-width: 767px) {
  .gap-mobile-0 {
    gap: 0 !important;
  }
}
@media screen and (min-width: 0) and (max-width: 767px) {
  .gap-mobile-1 {
    gap: 1rem !important;
  }
}
.gap-desktop-4 {
  gap: 4rem !important;
}
@media screen and (min-width: 1200px) {
  .gap-desktop-6 {
    gap: 6rem !important;
  }
}

.breadcrumbs {
  padding-bottom: 1.5rem;
}
@media screen and (min-width: 768px) {
  .breadcrumbs {
    padding-bottom: 2rem;
  }
}
.breadcrumbs span {
  color: rgba(250, 251, 253, 0.8);
  font-size: 0.75rem;
  letter-spacing: 0.02em;
}
@media screen and (min-width: 768px) {
  .breadcrumbs span {
    font-size: 0.875rem;
  }
}
.breadcrumbs a {
  background-image: linear-gradient(rgba(250, 251, 253, 0.8), rgba(250, 251, 253, 0.8));
  background-position: 0 100%;
  background-repeat: no-repeat;
  background-size: 100% 1px;
  display: inline;
  padding-bottom: 1px;
  text-decoration: none !important;
}
.breadcrumbs a:hover {
  animation: underline-out-in 1.1s cubic-bezier(0.32, 0.32, 0.15, 1.17) forwards;
}
.breadcrumbs a {
  color: rgba(250, 251, 253, 0.8) !important;
}
.breadcrumbs .current-item {
  color: rgba(250, 251, 253, 0.8);
}

/* ------------------------------------------------
| Base (shared)
------------------------------------------------ */
.wp-block-button {
  margin: 0;
}
.wp-block-button__link {
  text-decoration: none;
  text-transform: none;
}

/* ------------------------------------------------
| Button mit benutzerdefiniertem Icon
| Das Icon wird via PHP als Inline-SVG eingefügt.
| Statt absolutem ::after-Pfeil → Flex-Layout mit Gap.
------------------------------------------------ */
.wp-block-button__link.has-handyman-icon {
  padding-left: 1rem;
  gap: 0.8rem;
}
.wp-block-button__link.has-handyman-icon::after {
  display: none;
}
.wp-block-button__link.has-handyman-icon .btn-icon {
  align-items: center;
  display: flex;
  flex-shrink: 0;
  position: relative;
  z-index: 1;
}
.wp-block-button__link.has-handyman-icon .btn-icon svg {
  display: block;
  fill: currentColor;
  height: 16px;
  width: 16px;
}

/* ------------------------------------------------
| Default (kein Named Style) → Primary
------------------------------------------------ */
.wp-block-button:not(.is-style-primary):not(.is-style-secondary):not(.is-style-tertiary):not(.is-style-outline-gray):not(.is-style-outline-white):not(.is-style-outline):not(.is-style-compact):not(.is-style-outline-white-compact):not(.is-style-outline-primary) .wp-block-button__link {
  align-items: center;
  border-radius: 8px;
  display: inline-flex;
  font-size: 0.875rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  padding: 0.75rem 1rem;
  position: relative;
  text-decoration: none;
  transition: border-color 0.2s ease;
}
@media screen and (min-width: 768px) {
  .wp-block-button:not(.is-style-primary):not(.is-style-secondary):not(.is-style-tertiary):not(.is-style-outline-gray):not(.is-style-outline-white):not(.is-style-outline):not(.is-style-compact):not(.is-style-outline-white-compact):not(.is-style-outline-primary) .wp-block-button__link {
    padding: 1rem 1.5rem;
  }
}
.wp-block-button:not(.is-style-primary):not(.is-style-secondary):not(.is-style-tertiary):not(.is-style-outline-gray):not(.is-style-outline-white):not(.is-style-outline):not(.is-style-compact):not(.is-style-outline-white-compact):not(.is-style-outline-primary) .wp-block-button__link::before {
  background-color: transparent;
  border-radius: inherit;
  content: "";
  inset: 0;
  pointer-events: none;
  position: absolute;
  transition: background-color 0.2s ease;
  z-index: 0;
}
.wp-block-button:not(.is-style-primary):not(.is-style-secondary):not(.is-style-tertiary):not(.is-style-outline-gray):not(.is-style-outline-white):not(.is-style-outline):not(.is-style-compact):not(.is-style-outline-white-compact):not(.is-style-outline-primary) .wp-block-button__link .wp-block-button__label {
  position: relative;
  z-index: 1;
}
.wp-block-button:not(.is-style-primary):not(.is-style-secondary):not(.is-style-tertiary):not(.is-style-outline-gray):not(.is-style-outline-white):not(.is-style-outline):not(.is-style-compact):not(.is-style-outline-white-compact):not(.is-style-outline-primary) .wp-block-button__link:active {
  transform: scale(0.98);
  transition: transform 0.1s ease;
}
.wp-block-button:not(.is-style-primary):not(.is-style-secondary):not(.is-style-tertiary):not(.is-style-outline-gray):not(.is-style-outline-white):not(.is-style-outline):not(.is-style-compact):not(.is-style-outline-white-compact):not(.is-style-outline-primary) .wp-block-button__link {
  background-color: #0D2145;
  color: #FAFBFD;
  transition: transform 0.2s ease, border-color 0.2s ease;
}
@media (hover: hover) {
  .wp-block-button:not(.is-style-primary):not(.is-style-secondary):not(.is-style-tertiary):not(.is-style-outline-gray):not(.is-style-outline-white):not(.is-style-outline):not(.is-style-compact):not(.is-style-outline-white-compact):not(.is-style-outline-primary) .wp-block-button__link:hover, .wp-block-button:not(.is-style-primary):not(.is-style-secondary):not(.is-style-tertiary):not(.is-style-outline-gray):not(.is-style-outline-white):not(.is-style-outline):not(.is-style-compact):not(.is-style-outline-white-compact):not(.is-style-outline-primary) .wp-block-button__link:focus-visible {
    transform: translateY(-2px);
  }
  .wp-block-button:not(.is-style-primary):not(.is-style-secondary):not(.is-style-tertiary):not(.is-style-outline-gray):not(.is-style-outline-white):not(.is-style-outline):not(.is-style-compact):not(.is-style-outline-white-compact):not(.is-style-outline-primary) .wp-block-button__link:hover::before, .wp-block-button:not(.is-style-primary):not(.is-style-secondary):not(.is-style-tertiary):not(.is-style-outline-gray):not(.is-style-outline-white):not(.is-style-outline):not(.is-style-compact):not(.is-style-outline-white-compact):not(.is-style-outline-primary) .wp-block-button__link:focus-visible::before {
    background-color: rgba(0, 0, 0, 0.12);
  }
}
.wp-block-button:not(.is-style-primary):not(.is-style-secondary):not(.is-style-tertiary):not(.is-style-outline-gray):not(.is-style-outline-white):not(.is-style-outline):not(.is-style-compact):not(.is-style-outline-white-compact):not(.is-style-outline-primary) .wp-block-button__link:active {
  transform: translateY(0) scale(0.98);
}
.wp-block-button:not(.is-style-primary):not(.is-style-secondary):not(.is-style-tertiary):not(.is-style-outline-gray):not(.is-style-outline-white):not(.is-style-outline):not(.is-style-compact):not(.is-style-outline-white-compact):not(.is-style-outline-primary) .wp-block-button__link:active::before {
  background-color: rgba(0, 0, 0, 0.2);
}

/* ------------------------------------------------
| Filled Buttons
------------------------------------------------ */
.wp-block-button.is-style-primary .wp-block-button__link {
  align-items: center;
  border-radius: 8px;
  display: inline-flex;
  font-size: 0.875rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  padding: 0.75rem 1rem;
  position: relative;
  text-decoration: none;
  transition: border-color 0.2s ease;
}
@media screen and (min-width: 768px) {
  .wp-block-button.is-style-primary .wp-block-button__link {
    padding: 1rem 1.5rem;
  }
}
.wp-block-button.is-style-primary .wp-block-button__link::before {
  background-color: transparent;
  border-radius: inherit;
  content: "";
  inset: 0;
  pointer-events: none;
  position: absolute;
  transition: background-color 0.2s ease;
  z-index: 0;
}
.wp-block-button.is-style-primary .wp-block-button__link .wp-block-button__label {
  position: relative;
  z-index: 1;
}
.wp-block-button.is-style-primary .wp-block-button__link:active {
  transform: scale(0.98);
  transition: transform 0.1s ease;
}
.wp-block-button.is-style-primary .wp-block-button__link {
  background-color: #0D2145;
  color: #FAFBFD;
  transition: transform 0.2s ease, border-color 0.2s ease;
}
@media (hover: hover) {
  .wp-block-button.is-style-primary .wp-block-button__link:hover, .wp-block-button.is-style-primary .wp-block-button__link:focus-visible {
    transform: translateY(-2px);
  }
  .wp-block-button.is-style-primary .wp-block-button__link:hover::before, .wp-block-button.is-style-primary .wp-block-button__link:focus-visible::before {
    background-color: rgba(0, 0, 0, 0.12);
  }
}
.wp-block-button.is-style-primary .wp-block-button__link:active {
  transform: translateY(0) scale(0.98);
}
.wp-block-button.is-style-primary .wp-block-button__link:active::before {
  background-color: rgba(0, 0, 0, 0.2);
}

.wp-block-button.is-style-secondary .wp-block-button__link {
  align-items: center;
  border-radius: 8px;
  display: inline-flex;
  font-size: 0.875rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  padding: 0.75rem 1rem;
  position: relative;
  text-decoration: none;
  transition: border-color 0.2s ease;
}
@media screen and (min-width: 768px) {
  .wp-block-button.is-style-secondary .wp-block-button__link {
    padding: 1rem 1.5rem;
  }
}
.wp-block-button.is-style-secondary .wp-block-button__link::before {
  background-color: transparent;
  border-radius: inherit;
  content: "";
  inset: 0;
  pointer-events: none;
  position: absolute;
  transition: background-color 0.2s ease;
  z-index: 0;
}
.wp-block-button.is-style-secondary .wp-block-button__link .wp-block-button__label {
  position: relative;
  z-index: 1;
}
.wp-block-button.is-style-secondary .wp-block-button__link:active {
  transform: scale(0.98);
  transition: transform 0.1s ease;
}
.wp-block-button.is-style-secondary .wp-block-button__link {
  background-color: #1B4FD8;
  color: #FAFBFD;
  transition: transform 0.2s ease, border-color 0.2s ease;
}
@media (hover: hover) {
  .wp-block-button.is-style-secondary .wp-block-button__link:hover, .wp-block-button.is-style-secondary .wp-block-button__link:focus-visible {
    transform: translateY(-2px);
  }
  .wp-block-button.is-style-secondary .wp-block-button__link:hover::before, .wp-block-button.is-style-secondary .wp-block-button__link:focus-visible::before {
    background-color: rgba(0, 0, 0, 0.12);
  }
}
.wp-block-button.is-style-secondary .wp-block-button__link:active {
  transform: translateY(0) scale(0.98);
}
.wp-block-button.is-style-secondary .wp-block-button__link:active::before {
  background-color: rgba(0, 0, 0, 0.2);
}

.wp-block-button.is-style-tertiary .wp-block-button__link {
  align-items: center;
  border-radius: 8px;
  display: inline-flex;
  font-size: 0.875rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  padding: 0.75rem 1rem;
  position: relative;
  text-decoration: none;
  transition: border-color 0.2s ease;
}
@media screen and (min-width: 768px) {
  .wp-block-button.is-style-tertiary .wp-block-button__link {
    padding: 1rem 1.5rem;
  }
}
.wp-block-button.is-style-tertiary .wp-block-button__link::before {
  background-color: transparent;
  border-radius: inherit;
  content: "";
  inset: 0;
  pointer-events: none;
  position: absolute;
  transition: background-color 0.2s ease;
  z-index: 0;
}
.wp-block-button.is-style-tertiary .wp-block-button__link .wp-block-button__label {
  position: relative;
  z-index: 1;
}
.wp-block-button.is-style-tertiary .wp-block-button__link:active {
  transform: scale(0.98);
  transition: transform 0.1s ease;
}
.wp-block-button.is-style-tertiary .wp-block-button__link {
  background-color: #F59E0B;
  color: #0D2145;
  transition: transform 0.2s ease, border-color 0.2s ease;
}
@media (hover: hover) {
  .wp-block-button.is-style-tertiary .wp-block-button__link:hover, .wp-block-button.is-style-tertiary .wp-block-button__link:focus-visible {
    transform: translateY(-2px);
  }
  .wp-block-button.is-style-tertiary .wp-block-button__link:hover::before, .wp-block-button.is-style-tertiary .wp-block-button__link:focus-visible::before {
    background-color: rgba(0, 0, 0, 0.12);
  }
}
.wp-block-button.is-style-tertiary .wp-block-button__link:active {
  transform: translateY(0) scale(0.98);
}
.wp-block-button.is-style-tertiary .wp-block-button__link:active::before {
  background-color: rgba(0, 0, 0, 0.2);
}

/* ------------------------------------------------
| Outline Buttons
------------------------------------------------ */
.wp-block-button.is-style-outline-gray .wp-block-button__link {
  align-items: center;
  border-radius: 8px;
  display: inline-flex;
  font-size: 0.875rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  padding: 0.75rem 1rem;
  position: relative;
  text-decoration: none;
  transition: border-color 0.2s ease;
}
@media screen and (min-width: 768px) {
  .wp-block-button.is-style-outline-gray .wp-block-button__link {
    padding: 1rem 1.5rem;
  }
}
.wp-block-button.is-style-outline-gray .wp-block-button__link::before {
  background-color: transparent;
  border-radius: inherit;
  content: "";
  inset: 0;
  pointer-events: none;
  position: absolute;
  transition: background-color 0.2s ease;
  z-index: 0;
}
.wp-block-button.is-style-outline-gray .wp-block-button__link .wp-block-button__label {
  position: relative;
  z-index: 1;
}
.wp-block-button.is-style-outline-gray .wp-block-button__link:active {
  transform: scale(0.98);
  transition: transform 0.1s ease;
}
.wp-block-button.is-style-outline-gray .wp-block-button__link {
  background-color: transparent;
  border: 1px solid #CBD5E1;
  color: #0D2145;
}
@media (hover: hover) {
  .wp-block-button.is-style-outline-gray .wp-block-button__link:hover, .wp-block-button.is-style-outline-gray .wp-block-button__link:focus-visible {
    border-color: #0D2145;
  }
}
.wp-block-button.is-style-outline-gray .wp-block-button__link:active {
  border-color: #0D2145;
  transform: scale(0.98);
  transition: transform 0.1s ease, border-color 0.1s ease;
}

.wp-block-button.is-style-outline-white .wp-block-button__link {
  align-items: center;
  border-radius: 8px;
  display: inline-flex;
  font-size: 0.875rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  padding: 0.75rem 1rem;
  position: relative;
  text-decoration: none;
  transition: border-color 0.2s ease;
}
@media screen and (min-width: 768px) {
  .wp-block-button.is-style-outline-white .wp-block-button__link {
    padding: 1rem 1.5rem;
  }
}
.wp-block-button.is-style-outline-white .wp-block-button__link::before {
  background-color: transparent;
  border-radius: inherit;
  content: "";
  inset: 0;
  pointer-events: none;
  position: absolute;
  transition: background-color 0.2s ease;
  z-index: 0;
}
.wp-block-button.is-style-outline-white .wp-block-button__link .wp-block-button__label {
  position: relative;
  z-index: 1;
}
.wp-block-button.is-style-outline-white .wp-block-button__link:active {
  transform: scale(0.98);
  transition: transform 0.1s ease;
}
.wp-block-button.is-style-outline-white .wp-block-button__link {
  background-color: transparent;
  border: 1px solid #CBD5E1;
  color: #FAFBFD;
}
@media (hover: hover) {
  .wp-block-button.is-style-outline-white .wp-block-button__link:hover, .wp-block-button.is-style-outline-white .wp-block-button__link:focus-visible {
    border-color: #FAFBFD;
  }
}
.wp-block-button.is-style-outline-white .wp-block-button__link:active {
  border-color: #FAFBFD;
  transform: scale(0.98);
  transition: transform 0.1s ease, border-color 0.1s ease;
}

/* ------------------------------------------------
| Outline style = Link button
------------------------------------------------ */
.wp-block-button.is-style-outline .wp-block-button__link {
  --handyman-arrow-color: currentColor;
  align-items: center;
  background-color: transparent;
  border: 0;
  border-radius: 0;
  color: currentColor;
  display: inline-flex;
  font-size: 0.875rem;
  font-weight: 600;
  gap: 0.5rem;
  padding: 0;
  position: relative;
  transition: background-color 0.3s ease, color 0.3s ease;
}
.wp-block-button.is-style-outline .wp-block-button__link::before {
  background-color: currentColor;
  bottom: 0;
  content: "";
  height: 1px;
  left: calc(16px + 0.5 * 1rem);
  position: absolute;
  transition: width 0.36s cubic-bezier(0.51, 0.5, 0.07, 0.99);
  width: 0;
}
.wp-block-button.is-style-outline .wp-block-button__link::after {
  -webkit-mask: url("/wp-content/themes/handyman/static/icons/svg/arrow-right.svg") no-repeat center;
  -webkit-mask-size: contain;
  -webkit-mask: url("/wp-content/themes/handyman/static/icons/svg/arrow-right.svg") no-repeat center;
          mask: url("/wp-content/themes/handyman/static/icons/svg/arrow-right.svg") no-repeat center;
  mask-size: contain;
  background-color: var(--handyman-arrow-color);
  content: "";
  height: 16px;
  order: -1;
  width: 16px;
  transition: transform 500ms ease-in-out;
}
.wp-block-button.is-style-outline .wp-block-button__link:hover::before, .wp-block-button.is-style-outline .wp-block-button__link:focus-visible::before {
  width: calc(100% - (16px + 0.5 * 1rem));
}
.wp-block-button.is-style-outline .wp-block-button__link:hover::after, .wp-block-button.is-style-outline .wp-block-button__link:focus-visible::after {
  transform: translateX(-2px);
}

/* ------------------------------------------------
| Compact style = Circle icon button
------------------------------------------------ */
.wp-block-button.is-style-compact .wp-block-button__link,
.wp-block-button.is-style-outline-white-compact .wp-block-button__link {
  align-items: center;
  border-radius: 8px;
  display: inline-flex;
  height: 34px;
  justify-content: center;
  padding: 0;
  position: relative;
  transition: filter 0.2s ease, border-color 0.2s ease;
  width: 34px;
}
@media screen and (min-width: 768px) {
  .wp-block-button.is-style-compact .wp-block-button__link,
  .wp-block-button.is-style-outline-white-compact .wp-block-button__link {
    height: 44px;
    width: 44px;
  }
}
.wp-block-button.is-style-compact .wp-block-button__link,
.wp-block-button.is-style-outline-white-compact .wp-block-button__link {
  /* Arrow icon */
}
.wp-block-button.is-style-compact .wp-block-button__link::after,
.wp-block-button.is-style-outline-white-compact .wp-block-button__link::after {
  -webkit-mask: url("/wp-content/themes/handyman/static/icons/svg/arrow-right.svg") no-repeat center;
  -webkit-mask-size: contain;
  -webkit-mask: url("/wp-content/themes/handyman/static/icons/svg/arrow-right.svg") no-repeat center;
          mask: url("/wp-content/themes/handyman/static/icons/svg/arrow-right.svg") no-repeat center;
  mask-size: contain;
  background-color: var(--handyman-arrow-color, #FAFBFD);
  content: "";
  height: 14px;
  left: 50%;
  pointer-events: none;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 14px;
}
@media screen and (min-width: 768px) {
  .wp-block-button.is-style-compact .wp-block-button__link::after,
  .wp-block-button.is-style-outline-white-compact .wp-block-button__link::after {
    height: 16px;
    width: 16px;
  }
}
@media (hover: hover) {
  .wp-block-button.is-style-compact .wp-block-button__link:hover, .wp-block-button.is-style-compact .wp-block-button__link:focus-visible,
  .wp-block-button.is-style-outline-white-compact .wp-block-button__link:hover,
  .wp-block-button.is-style-outline-white-compact .wp-block-button__link:focus-visible {
    filter: brightness(0.85);
  }
}
.wp-block-button.is-style-compact .wp-block-button__link:active,
.wp-block-button.is-style-outline-white-compact .wp-block-button__link:active {
  filter: brightness(0.82);
  transform: scale(0.96);
  transition: transform 0.1s ease, filter 0.1s ease;
}

/* 1. Compact (Default/Primary) */
.wp-block-button.is-style-compact .wp-block-button__link {
  /* Gutenberg background color */
}
.wp-block-button.is-style-compact .wp-block-button__link.has-background {
  background-color: var(--wp--style--color--background, transparent);
  border: 1px solid #CBD5E1;
}
.wp-block-button.is-style-compact .wp-block-button__link.has-background.has-white-color {
  border-color: rgba(250, 251, 253, 0.8);
}
.wp-block-button.is-style-compact .wp-block-button__link {
  /* Gutenberg text color → arrow color */
}
.wp-block-button.is-style-compact .wp-block-button__link.has-text-color {
  --handyman-arrow-color: var(--wp--style--color--text, currentColor) !important;
  color: var(--wp--style--color--text, currentColor);
}
.wp-block-button.is-style-compact .wp-block-button__link.has-text-color:not(.has-background) {
  border: 1px solid var(--wp--style--color--text, currentColor);
}
.wp-block-button.is-style-compact .wp-block-button__link.has-text-color:not(.has-background).has-white-color {
  border-color: rgba(250, 251, 253, 0.8);
}
.wp-block-button.is-style-compact .wp-block-button__link {
  /* Default fallback */
}
.wp-block-button.is-style-compact .wp-block-button__link:not(.has-background):not(.has-text-color) {
  --handyman-arrow-color: #0D2145;
  background-color: rgba(13, 33, 69, 0.1);
  border: 1px solid rgba(13, 33, 69, 0.2);
}
.wp-block-button.is-style-compact .wp-block-button__link.has-primary-background-color {
  --handyman-arrow-color: #0D2145 !important;
  background-color: #0D2145 !important;
  color: #FAFBFD !important;
  border-color: #0D2145;
}
@media (hover: hover) {
  .wp-block-button.is-style-compact .wp-block-button__link.has-primary-background-color:hover, .wp-block-button.is-style-compact .wp-block-button__link.has-primary-background-color:focus-visible {
    filter: brightness(0.85);
  }
}

/* 2. Outline White Compact */
.wp-block-button.is-style-outline-white-compact .wp-block-button__link {
  background-color: transparent;
  border: 1px solid #FAFBFD;
  color: transparent;
}
.wp-block-button.is-style-outline-white-compact .wp-block-button__link::after {
  background-color: #FAFBFD;
}
@media (hover: hover) {
  .wp-block-button.is-style-outline-white-compact .wp-block-button__link:hover, .wp-block-button.is-style-outline-white-compact .wp-block-button__link:focus-visible {
    background-color: #FAFBFD;
  }
  .wp-block-button.is-style-outline-white-compact .wp-block-button__link:hover::after, .wp-block-button.is-style-outline-white-compact .wp-block-button__link:focus-visible::after {
    background-color: #0D2145;
  }
}
.wp-block-button.is-style-outline-white-compact .wp-block-button__link:active {
  background-color: #FAFBFD;
}
.wp-block-button.is-style-outline-white-compact .wp-block-button__link:active::after {
  background-color: #0D2145;
}

.cky-btn {
  border: 1px solid #0D2145 !important;
  border-radius: 8px !important;
  color: #0D2145 !important;
  font-family: "Roboto Condensed", sans-serif !important;
  font-weight: 600 !important;
  transition: transform 0.2s ease, border-color 0.2s ease;
}
.cky-btn-accept {
  background-color: #1B4FD8 !important;
  border: 1px solid #1B4FD8 !important;
  color: #FAFBFD !important;
}
.cky-btn-accept:hover {
  background-color: #1846BE !important;
  border: 1px solid #1846BE !important;
  color: #FAFBFD !important;
  opacity: 1 !important;
}
.cky-btn-reject, .cky-btn-preferences {
  border: 1px solid #0D2145 !important;
  border-radius: 100px !important;
  color: #0D2145 !important;
  font-family: "Roboto Condensed", sans-serif !important;
  font-weight: 600 !important;
  transition: background-color 0.25s ease-out, color 0.25s ease-out;
}

@media screen and (min-width: 768px) and (max-width: 991px) {
  .wp-block-columns:not(.is-not-stacked-on-mobile) {
    flex-flow: row wrap !important;
  }
}
.wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 768px) and (max-width: 991px) {
  .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
    flex-basis: calc(50% - 16px) !important;
    flex-shrink: 0;
    flex-wrap: wrap !important;
  }
}
.wp-block-columns:last-of-type {
  margin-bottom: 0;
}

@media screen and (min-width: 480px) {
  .wp-block-post-template.is-layout-grid.columns-3, .wp-block-post-template.is-layout-grid.projects {
    grid-template-columns: 1fr !important;
  }
}
@media screen and (min-width: 768px) {
  .wp-block-post-template.is-layout-grid.columns-3, .wp-block-post-template.is-layout-grid.projects {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}
@media screen and (min-width: 1200px) {
  .wp-block-post-template.is-layout-grid.columns-3, .wp-block-post-template.is-layout-grid.projects {
    grid-template-columns: repeat(3, 1fr) !important;
  }
}

@media screen and (max-width: 1200px) {
  .wp-block-columns.stack-on-tablet {
    flex-flow: column nowrap;
    gap: 2rem !important;
  }
  .wp-block-columns.stack-on-tablet > .wp-block-column {
    flex: 0 0 100% !important;
    width: 100% !important;
  }
}

@media screen and (min-width: 992px) {
  .wp-block-columns.columns-3-desktop {
    gap: 2rem !important;
    flex-wrap: wrap !important;
  }
  .wp-block-columns.columns-3-desktop > .wp-block-column {
    flex-basis: calc(33.33% - 1.3333333333rem) !important;
    flex-grow: 0 !important;
    margin-left: 0 !important;
  }
}

@media screen and (min-width: 768px) {
  .wp-block-columns.columns-4-desktop {
    gap: 2rem !important;
    flex-wrap: wrap !important;
  }
  .wp-block-columns.columns-4-desktop > .wp-block-column {
    flex-basis: calc(50% - 1rem) !important;
    flex-grow: 0 !important;
    margin-left: 0 !important;
  }
}
@media screen and (min-width: 1200px) {
  .wp-block-columns.columns-4-desktop > .wp-block-column {
    flex-basis: calc(25% - 1.5rem) !important;
  }
}

@media screen and (min-width: 768px) and (max-width: 991px) {
  .wp-block-columns.project-columns {
    flex-wrap: nowrap !important;
  }
  .wp-block-columns.project-columns > .wp-block-column {
    flex-grow: 0 !important;
    flex-shrink: 0 !important;
  }
  .wp-block-columns.project-columns > .wp-block-column:first-child {
    flex-basis: calc(70% - 16px) !important;
  }
  .wp-block-columns.project-columns > .wp-block-column:last-child {
    flex-basis: calc(30% - 16px) !important;
  }
}
@media screen and (min-width: 1200px) {
  .wp-block-columns.project-columns {
    gap: 60px !important;
  }
  .wp-block-columns.project-columns > .wp-block-column:first-child {
    flex-basis: calc(70% - 30px) !important;
  }
  .wp-block-columns.project-columns > .wp-block-column:last-child {
    flex-basis: calc(30% - 30px) !important;
  }
}

/* ------------------------------------------------
| Contact Form – Main Container
------------------------------------------------ */
.contact-form {
  align-items: flex-start;
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
}
@media screen and (min-width: 768px) {
  .contact-form {
    gap: 2rem;
  }
}
.contact-form__wrapper {
  padding: 1.5rem !important;
}
@media screen and (min-width: 768px) {
  .contact-form__wrapper {
    padding: 3rem !important;
  }
}
@media screen and (min-width: 1200px) {
  .contact-form__wrapper {
    padding: 4rem !important;
  }
}
.contact-form {
  /* ------------------------------------------------
  | Layout & Field Wrappers
  ------------------------------------------------ */
}
.contact-form .form-field {
  display: flex;
  flex-direction: column;
  gap: 0;
  padding-top: 20px;
  position: relative;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .contact-form .form-field {
    width: calc(50% - 16px);
  }
  .contact-form .form-field:has(textarea) {
    width: 100%;
  }
}
.contact-form .form-field p {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin: 0;
  width: 100%;
}
.contact-form .form-field br {
  display: none;
}
.contact-form .form-field span.wpcf7-form-control-wrap {
  width: 100%;
}
.contact-form {
  /* ------------------------------------------------
  | Input & Textarea Styling
  ------------------------------------------------ */
}
.contact-form input,
.contact-form textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  background-color: transparent !important;
  border: none;
  border-bottom: 1px solid #CBD5E1;
  border-radius: 0;
  color: #4B5563;
  font-family: "Roboto Condensed", sans-serif;
  font-size: 1rem;
  line-height: 1.5;
  padding: 12px 0;
  transition: border-color 0.3s ease;
  width: 100%;
}
.contact-form input:focus,
.contact-form textarea:focus {
  background-color: transparent !important;
  border-color: #0D2145;
  outline: none;
}
.contact-form input.wpcf7-not-valid,
.contact-form textarea.wpcf7-not-valid {
  border-color: #b42318;
}
.contact-form input::-moz-placeholder, .contact-form textarea::-moz-placeholder {
  color: transparent;
}
.contact-form input::placeholder,
.contact-form textarea::placeholder {
  color: transparent;
}
.contact-form input:-webkit-autofill, .contact-form input:-webkit-autofill:hover, .contact-form input:-webkit-autofill:focus, .contact-form input:-webkit-autofill:active,
.contact-form textarea:-webkit-autofill,
.contact-form textarea:-webkit-autofill:hover,
.contact-form textarea:-webkit-autofill:focus,
.contact-form textarea:-webkit-autofill:active {
  -webkit-background-clip: text;
  -webkit-text-fill-color: #0D2145;
  box-shadow: inset 0 0 20px 20px transparent;
  -webkit-transition: background-color 5000s ease-in-out 0s;
  transition: background-color 5000s ease-in-out 0s;
}
.contact-form textarea {
  display: block;
  height: 48px;
  line-height: 1.5;
  min-height: 48px;
  overflow: hidden;
  resize: none;
}
.contact-form {
  /* ------------------------------------------------
  | Floating Labels
  ------------------------------------------------ */
}
.contact-form label {
  color: #0D2145;
  font-size: 1rem;
  font-weight: 500;
  left: 0;
  pointer-events: none;
  position: absolute;
  top: 32px;
  transition: all 0.3s ease;
  z-index: 1;
}
.contact-form .form-field:has(input:not(:-moz-placeholder)) label, .contact-form .form-field:has(textarea:not(:-moz-placeholder)) label, .contact-form .form-field input:not(:-moz-placeholder) ~ label, .contact-form .form-field textarea:not(:-moz-placeholder) ~ label {
  color: #0D2145;
  font-size: 0.75rem;
  left: 0;
  top: 0;
}
.contact-form .form-field:has(input:focus) label,
.contact-form .form-field:has(input:not(:placeholder-shown)) label,
.contact-form .form-field:has(textarea:focus) label,
.contact-form .form-field:has(textarea:not(:placeholder-shown)) label,
.contact-form .form-field input:focus ~ label,
.contact-form .form-field input:not(:placeholder-shown) ~ label,
.contact-form .form-field textarea:focus ~ label,
.contact-form .form-field textarea:not(:placeholder-shown) ~ label {
  color: #0D2145;
  font-size: 0.75rem;
  left: 0;
  top: 0;
}
.contact-form {
  /* ------------------------------------------------
  | Submit Button
  ------------------------------------------------ */
}
.contact-form .form-submit {
  -webkit-mask-image: -webkit-radial-gradient(white, black);
  background-color: transparent;
  border: 1px solid #0D2145;
  border-radius: 100px;
  color: #0D2145;
  cursor: pointer;
  display: inline-block;
  margin-top: 16px;
  overflow: hidden;
  position: relative;
  --handyman-arrow-color: #FAFBFD;
  align-items: center;
  border-radius: 8px;
  display: inline-flex;
  font-size: 0.875rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  padding: 0.75rem 1rem;
  position: relative;
  text-decoration: none;
  transition: border-color 0.2s ease;
}
@media screen and (min-width: 768px) {
  .contact-form .form-submit {
    padding: 1rem 1.5rem;
  }
}
.contact-form .form-submit::before {
  background-color: transparent;
  border-radius: inherit;
  content: "";
  inset: 0;
  pointer-events: none;
  position: absolute;
  transition: background-color 0.2s ease;
  z-index: 0;
}
.contact-form .form-submit .wp-block-button__label {
  position: relative;
  z-index: 1;
}
.contact-form .form-submit:active {
  transform: scale(0.98);
  transition: transform 0.1s ease;
}
.contact-form .form-submit::before {
  background-color: #0D2145;
  pointer-events: none;
  z-index: 0;
}
.contact-form .form-submit::after {
  pointer-events: none;
  z-index: 2;
}
@media (hover: hover) {
  .contact-form .form-submit:hover, .contact-form .form-submit:focus-within {
    background-color: transparent;
    color: #FAFBFD !important;
    border-color: transparent;
  }
  .contact-form .form-submit:hover input[type=submit], .contact-form .form-submit:focus-within input[type=submit] {
    color: #FAFBFD !important;
  }
  .contact-form .form-submit:hover::before, .contact-form .form-submit:focus-within::before {
    transform: translate(50%, -50%) scale(20);
  }
  .contact-form .form-submit:hover::after, .contact-form .form-submit:focus-within::after {
    transform: translateY(-50%) translateX(2px);
  }
}
.contact-form .form-submit:active {
  background-color: #0D2145;
  color: #FAFBFD;
  border-color: transparent;
  filter: brightness(0.9);
  transform: scale(0.98);
}
.contact-form .form-submit:active input[type=submit] {
  color: #FAFBFD !important;
}
.contact-form .form-submit input[type=submit] {
  background: none;
  border: none;
  color: inherit;
  cursor: pointer;
  font-family: inherit;
  font-size: inherit;
  font-weight: 600;
  height: auto;
  letter-spacing: 0.02em;
  line-height: 1.2;
  margin: 0;
  padding: 0;
  position: relative;
  text-align: center;
  width: auto;
  z-index: 2;
}
.contact-form .form-submit input[type=submit]:focus {
  border: none;
  outline: none;
}
.contact-form .form-submit .wpcf7-spinner {
  left: calc(100% + 16px);
  margin: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.contact-form {
  /* ------------------------------------------------
  | Validation Tips
  ------------------------------------------------ */
}
.contact-form .wpcf7-not-valid-tip {
  color: #b42318;
  display: block;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.4;
  margin-top: 0.5rem;
}
.contact-form {
  /* ------------------------------------------------
  | Notices & reCAPTCHA Info
  ------------------------------------------------ */
}
.contact-form__notice {
  color: #0D2145;
  font-size: 0.75rem;
  margin-top: -1rem !important;
}
.contact-form__recaptcha__info {
  color: rgba(13, 33, 69, 0.8);
  font-size: 0.75rem;
  line-height: 1.8;
  margin: 0;
  opacity: 0.8;
  width: 100%;
}
.contact-form__recaptcha__info a {
  color: inherit;
  text-decoration: underline;
  transition: color 0.3s ease;
}
.contact-form__recaptcha__info a:hover {
  color: #0D2145;
}

/* ------------------------------------------------
| CF7 Global Overrides & Response Output
------------------------------------------------ */
div.wpcf7 .screen-reader-response {
  display: none !important;
}

.grecaptcha-badge {
  visibility: hidden;
}

div.wpcf7-form .wpcf7-response-output,
div.wpcf7 .wpcf7-response-output,
.wpcf7-form .wpcf7-response-output {
  border: 1px solid transparent !important;
  border-radius: 12px !important;
  clear: both;
  display: block !important;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.4;
  margin: 24px 0 0 !important;
  padding: 1rem !important;
}
div.wpcf7-form .wpcf7-response-output.wpcf7-mail-sent-ok, div.wpcf7-form .wpcf7-response-output[data-status=sent],
div.wpcf7 .wpcf7-response-output.wpcf7-mail-sent-ok,
div.wpcf7 .wpcf7-response-output[data-status=sent],
.wpcf7-form .wpcf7-response-output.wpcf7-mail-sent-ok,
.wpcf7-form .wpcf7-response-output[data-status=sent] {
  background-color: rgba(13, 33, 69, 0.06) !important;
  border-color: rgba(13, 33, 69, 0.35) !important;
  color: #0D2145 !important;
}
div.wpcf7-form .wpcf7-response-output.wpcf7-validation-errors, div.wpcf7-form .wpcf7-response-output.wpcf7-mail-sent-ng, div.wpcf7-form .wpcf7-response-output.wpcf7-aborted, div.wpcf7-form .wpcf7-response-output.wpcf7-spam-blocked, div.wpcf7-form .wpcf7-response-output[data-status=validation-failed], div.wpcf7-form .wpcf7-response-output[data-status=failed], div.wpcf7-form .wpcf7-response-output[data-status=spam],
div.wpcf7 .wpcf7-response-output.wpcf7-validation-errors,
div.wpcf7 .wpcf7-response-output.wpcf7-mail-sent-ng,
div.wpcf7 .wpcf7-response-output.wpcf7-aborted,
div.wpcf7 .wpcf7-response-output.wpcf7-spam-blocked,
div.wpcf7 .wpcf7-response-output[data-status=validation-failed],
div.wpcf7 .wpcf7-response-output[data-status=failed],
div.wpcf7 .wpcf7-response-output[data-status=spam],
.wpcf7-form .wpcf7-response-output.wpcf7-validation-errors,
.wpcf7-form .wpcf7-response-output.wpcf7-mail-sent-ng,
.wpcf7-form .wpcf7-response-output.wpcf7-aborted,
.wpcf7-form .wpcf7-response-output.wpcf7-spam-blocked,
.wpcf7-form .wpcf7-response-output[data-status=validation-failed],
.wpcf7-form .wpcf7-response-output[data-status=failed],
.wpcf7-form .wpcf7-response-output[data-status=spam] {
  background-color: rgba(180, 35, 24, 0.05) !important;
  border-color: rgba(180, 35, 24, 0.4) !important;
  color: #b42318 !important;
}

.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output,
.wpcf7 form.spam .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output {
  background-color: rgba(180, 35, 24, 0.05) !important;
  border-color: rgba(180, 35, 24, 0.35) !important;
  color: #b42318 !important;
}
.wpcf7 form.sent .wpcf7-response-output {
  background-color: rgba(13, 33, 69, 0.06) !important;
  border-color: rgba(13, 33, 69, 0.35) !important;
  color: #0D2145 !important;
}

.container {
  margin: 0 auto;
}
@media screen and (min-width: 0) {
  .container {
    padding: 0 12px;
  }
}
@media screen and (min-width: 480px) {
  .container {
    padding: 0 24px;
  }
}
.container.tiny {
  max-width: 800px;
}
.container.small {
  max-width: 960px;
}
.container {
  max-width: 1200px;
}
.container.large {
  max-width: 1400px;
}
.container.full {
  max-width: 100%;
}
.container.full {
  padding: 0;
}

.cta {
  padding: 0;
}
.cta__container {
  border-radius: 20px;
  padding-bottom: 2rem;
  padding-top: 2rem;
}
@media screen and (min-width: 768px) {
  .cta__container {
    padding-bottom: 4rem;
    padding-top: 4rem;
  }
}
@media screen and (min-width: 992px) {
  .cta__container {
    padding-bottom: 6rem;
    padding-top: 6rem;
  }
}
@media screen and (min-width: 1200px) {
  .cta__container {
    margin: 0 auto !important;
  }
}
.cta__wrapper {
  max-width: 670px;
  padding: 0 1rem;
}
.cta__heading {
  color: #FAFBFD;
  font-size: 1.5rem;
  font-weight: 500;
  padding-bottom: 1rem;
}
@media screen and (min-width: 768px) {
  .cta__heading {
    font-size: 1.875rem;
  }
}
@media screen and (min-width: 1200px) {
  .cta__heading {
    font-size: 2.375rem;
  }
}
.cta__lead {
  font-size: 1rem;
  font-weight: 400;
  margin: 0;
  padding-bottom: 0.75rem;
}
@media screen and (min-width: 768px) {
  .cta__lead {
    font-size: 1.125rem;
    padding-bottom: 1rem;
  }
}
@media screen and (min-width: 1200px) {
  .cta__lead {
    font-size: 1.3125rem;
  }
}

.counter__wrapper {
  gap: 2.5rem;
}
@media screen and (min-width: 768px) {
  .counter__wrapper {
    gap: 2rem;
  }
}
@media screen and (min-width: 1200px) {
  .counter__wrapper {
    gap: 4rem;
  }
}
.counter__row {
  gap: 2.5rem;
  margin: 0;
}
@media screen and (min-width: 768px) {
  .counter__row {
    gap: 2rem;
  }
}
@media screen and (min-width: 1200px) {
  .counter__row {
    gap: 4rem;
  }
}

@media screen and (min-width: 768px) {
  .uc_box_counter {
    width: 150px !important;
  }
}
@media screen and (min-width: 1200px) {
  .uc_box_counter {
    width: 280px !important;
  }
}

.uc_counter_box {
  align-items: flex-start !important;
  padding: 0 !important;
}
.uc_counter_box .ue_divider {
  background-color: rgba(250, 251, 253, 0.6) !important;
}
.uc_counter_box .ue_divider_holder {
  margin: 0 !important;
}
.uc_counter_box .counter_number {
  font-size: 3rem !important;
  margin-top: 0 !important;
}
@media screen and (min-width: 768px) {
  .uc_counter_box .counter_number {
    font-size: 3.375rem !important;
  }
}
@media screen and (min-width: 1200px) {
  .uc_counter_box .counter_number {
    font-size: 5rem !important;
  }
}
.uc_counter_box .counter_label {
  font-size: 1rem !important;
  font-weight: 400 !important;
}

.employee-card {
  align-items: center;
  border-radius: 20px;
  display: flex;
  flex-direction: column;
  padding: 1rem;
  text-align: center;
}
@media screen and (min-width: 1200px) {
  .employee-card {
    padding-bottom: 0;
    padding-top: 0;
  }
}
.employee-card__photo {
  border-radius: 50%;
  box-shadow: 0 0 0 6px #FAFBFD, 0 2px 12px rgba(0, 0, 0, 0.08);
  height: 180px;
  margin-bottom: 1.5rem;
  overflow: hidden;
  width: 180px;
}
@media screen and (min-width: 768px) {
  .employee-card__photo {
    height: 220px;
    width: 220px;
  }
}
.employee-card__photo .wp-post-image {
  display: block;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: top center;
     object-position: top center;
  width: 100%;
}
.employee-card__body {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.employee-card__heading {
  color: #0D2145;
  font-size: 1rem;
  font-weight: 700;
  margin: 0 0 0.4rem;
  text-transform: uppercase;
}
@media screen and (min-width: 768px) {
  .employee-card__heading {
    font-size: 1.25rem;
  }
}
.employee-card__lead {
  color: #4B5563;
  font-size: 1rem;
  font-weight: 400;
  margin: 0;
}

/* Verlinkte Gruppe */
a.wp-block-group-link {
  color: inherit;
  display: block;
  text-decoration: none;
}

/* Mobile only: force full width for groups that use Gutenberg layout containers */
@media screen and (max-width: 768px) {
  :where([class*=wp-container-core-group-is-layout-]) > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}
.wp-block-heading {
  margin: 0;
}

.hero {
  margin: 0 auto;
  padding: 0;
}
.hero__content {
  display: flex;
  flex: 1 1 100%;
  flex-direction: column;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .hero__content {
    flex-direction: row;
  }
}
.hero__body, .hero__image {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
@media screen and (min-width: 768px) {
  .hero__body, .hero__image {
    flex: 0 0 50%;
  }
}
.hero__heading {
  color: #0D2145;
  font-size: 2.375rem;
  font-weight: 700;
  hyphens: auto;
  margin: 0;
  padding-bottom: 1rem;
  text-transform: uppercase;
}
@media screen and (min-width: 768px) {
  .hero__heading {
    font-size: 2.625rem;
  }
}
@media screen and (min-width: 1200px) {
  .hero__heading {
    font-size: 3.875rem;
  }
}
.hero__heading--secondary {
  color: #1B4FD8;
}
.hero__text {
  color: #0D2145;
  font-size: 1.125rem;
  font-weight: 500;
  letter-spacing: 0.01em;
  margin: 0;
  padding-bottom: 2rem;
}
@media screen and (min-width: 768px) {
  .hero__text {
    font-size: 1.25rem;
    padding-bottom: 4rem;
  }
}
@media screen and (min-width: 1200px) {
  .hero__text {
    font-size: 1.5rem;
  }
}
.hero__buttons {
  margin-top: 0;
}

.icon-button {
  display: inline-flex;
  align-items: center;
}
.icon-button__link {
  display: flex;
  align-items: center;
  text-decoration: none;
  color: inherit;
  gap: 10px;
}
.icon-button__link:hover {
  text-decoration: none;
}
.icon-button__preview {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
}
.icon-button__icon {
  flex-shrink: 0;
}
.icon-button__icon.primary {
  fill: #0D2145;
  color: #0D2145;
}
.icon-button__icon.secondary {
  fill: #1B4FD8;
  color: #1B4FD8;
}
.icon-button__icon.tertiary {
  fill: #F59E0B;
  color: #F59E0B;
}
.icon-button__icon.white {
  fill: #FAFBFD;
  color: #FAFBFD;
}
.icon-button__icon.black {
  fill: #000000;
  color: #000000;
}
.icon-button__icon.light-gray {
  fill: #f6f8fb;
  color: #f6f8fb;
}
.icon-button__icon.light-blue {
  fill: #E8EEF6;
  color: #E8EEF6;
}
.icon-button__icon.text-secondary {
  fill: #4B5563;
  color: #4B5563;
}
.icon-button__text {
  font-weight: 500;
  white-space: nowrap;
}
.icon-button__text.primary {
  color: #0D2145;
}
.icon-button__text.secondary {
  color: #1B4FD8;
}
.icon-button__text.tertiary {
  color: #F59E0B;
}
.icon-button__text.white {
  color: #FAFBFD;
}
.icon-button__text.black {
  color: #000000;
}
.icon-button__text.light-gray {
  color: #f6f8fb;
}
.icon-button__text.light-blue {
  color: #E8EEF6;
}
.icon-button__text.text-secondary {
  color: #4B5563;
}

/* Editor Specifics */
.is-selected .icon-button__preview {
  outline: 1px dashed #ccc;
  outline-offset: 4px;
}

.link a {
  background-image: none;
  color: inherit;
  display: inline-block;
  position: relative;
  text-decoration: none !important;
}
.link a::after {
  background-color: currentColor;
  bottom: 0;
  content: "";
  height: 1px;
  left: 0;
  position: absolute;
  transition: width 0.36s cubic-bezier(0.51, 0.5, 0.07, 0.99);
  width: 0;
}
.link a:hover::after, .link a:focus-visible::after, .link a:active::after {
  width: 100%;
}
.link a:active {
  opacity: 0.7;
  transform: scale(0.98);
}

.project-navigation {
  display: grid !important;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  margin-top: 4rem;
  padding-top: 2rem;
  border-top: 1px solid #CBD5E1;
  position: relative;
  width: 100%;
  gap: 1.5rem 0.5rem;
}
@media screen and (max-width: 480px) {
  .project-navigation {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto;
  }
}
.project-navigation .wp-block-post-navigation-link {
  display: inline-flex;
  align-items: center;
  text-decoration: none;
  color: #0D2145;
  font-weight: 600;
  font-size: 0.875rem;
  position: relative;
  padding: 0;
  transition: color 0.3s ease;
  gap: 0.5rem;
}
.project-navigation .wp-block-post-navigation-link.is-navigation-previous, .project-navigation .wp-block-post-navigation-link.post-navigation-link-previous {
  grid-column: 1;
}
@media screen and (max-width: 480px) {
  .project-navigation .wp-block-post-navigation-link.is-navigation-previous, .project-navigation .wp-block-post-navigation-link.post-navigation-link-previous {
    grid-row: 2;
    grid-column: 1;
    justify-self: flex-start;
  }
}
.project-navigation .wp-block-post-navigation-link.is-navigation-next, .project-navigation .wp-block-post-navigation-link.post-navigation-link-next {
  grid-column: 3;
}
@media screen and (max-width: 480px) {
  .project-navigation .wp-block-post-navigation-link.is-navigation-next, .project-navigation .wp-block-post-navigation-link.post-navigation-link-next {
    grid-row: 2;
    grid-column: 2;
    justify-self: flex-end;
  }
}
.project-navigation .wp-block-post-navigation-link .wp-block-post-navigation-link__arrow-previous,
.project-navigation .wp-block-post-navigation-link .wp-block-post-navigation-link__arrow-next {
  display: none !important;
}
.project-navigation .wp-block-post-navigation-link a {
  text-decoration: none;
  color: inherit;
  display: inline-flex;
  align-items: center;
  gap: inherit;
  position: relative;
  width: auto;
}
.project-navigation .wp-block-post-navigation-link a .wp-block-post-navigation-link__title,
.project-navigation .wp-block-post-navigation-link a .post-navigation-link__title,
.project-navigation .wp-block-post-navigation-link a .wp-block-post-navigation-link__label,
.project-navigation .wp-block-post-navigation-link a span {
  position: relative;
  max-width: 300px;
  overflow: visible;
  text-overflow: ellipsis;
  white-space: nowrap;
  padding-bottom: 2px;
  display: inline-block;
}
.project-navigation .wp-block-post-navigation-link a .wp-block-post-navigation-link__title::before,
.project-navigation .wp-block-post-navigation-link a .post-navigation-link__title::before,
.project-navigation .wp-block-post-navigation-link a .wp-block-post-navigation-link__label::before,
.project-navigation .wp-block-post-navigation-link a span::before {
  background-color: #0D2145;
  bottom: 0;
  content: "";
  height: 1px;
  position: absolute;
  transition: width 0.36s cubic-bezier(0.51, 0.5, 0.07, 0.99);
  width: 0;
  left: 0;
  z-index: 10;
}
.project-navigation .wp-block-post-navigation-link a::after {
  -webkit-mask: url("/wp-content/themes/handyman/static/icons/svg/arrow-right.svg") no-repeat center;
  -webkit-mask-size: contain;
  -webkit-mask: url("/wp-content/themes/handyman/static/icons/svg/arrow-right.svg") no-repeat center;
          mask: url("/wp-content/themes/handyman/static/icons/svg/arrow-right.svg") no-repeat center;
  mask-size: contain;
  background-color: currentColor;
  content: "";
  height: 16px;
  width: 16px;
  flex-shrink: 0;
  transition: transform 500ms ease-in-out;
}
.project-navigation .wp-block-post-navigation-link a:hover .wp-block-post-navigation-link__title::before,
.project-navigation .wp-block-post-navigation-link a:hover .post-navigation-link__title::before,
.project-navigation .wp-block-post-navigation-link a:hover .wp-block-post-navigation-link__label::before,
.project-navigation .wp-block-post-navigation-link a:hover span::before {
  width: 100%;
}
.project-navigation .wp-block-post-navigation-link a:hover::after {
  transform: translateX(2px);
}
.project-navigation .wp-block-post-navigation-link.is-navigation-previous, .project-navigation .wp-block-post-navigation-link.post-navigation-link-previous {
  flex-direction: row;
  justify-content: flex-start;
}
.project-navigation .wp-block-post-navigation-link.is-navigation-previous a:hover::after, .project-navigation .wp-block-post-navigation-link.post-navigation-link-previous a:hover::after {
  transform: translateX(-2px);
}
.project-navigation .wp-block-post-navigation-link.is-navigation-previous a::after, .project-navigation .wp-block-post-navigation-link.post-navigation-link-previous a::after {
  order: -1;
  -webkit-mask-image: url("/wp-content/themes/handyman/static/icons/svg/arrow-left.svg");
  mask-image: url("/wp-content/themes/handyman/static/icons/svg/arrow-left.svg");
}
.project-navigation .wp-block-post-navigation-link.is-navigation-next, .project-navigation .wp-block-post-navigation-link.post-navigation-link-next {
  flex-direction: row;
  justify-content: flex-end;
}
.project-navigation .wp-block-post-navigation-link.is-navigation-next a::after, .project-navigation .wp-block-post-navigation-link.post-navigation-link-next a::after {
  order: 1;
}
.project-navigation__overview {
  grid-column: 2;
  grid-row: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 10;
  min-width: 44px;
  min-height: 44px;
}
@media screen and (max-width: 480px) {
  .project-navigation__overview {
    grid-column: 1/span 2;
    grid-row: 1;
    margin-bottom: 0.5rem;
  }
}
.project-navigation__overview-link.wp-block-button__link {
  align-items: center;
  border-radius: 8px;
  display: inline-flex;
  font-size: 0.875rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  padding: 0.75rem 1rem;
  position: relative;
  text-decoration: none;
  transition: border-color 0.2s ease;
}
@media screen and (min-width: 768px) {
  .project-navigation__overview-link.wp-block-button__link {
    padding: 1rem 1.5rem;
  }
}
.project-navigation__overview-link.wp-block-button__link::before {
  background-color: transparent;
  border-radius: inherit;
  content: "";
  inset: 0;
  pointer-events: none;
  position: absolute;
  transition: background-color 0.2s ease;
  z-index: 0;
}
.project-navigation__overview-link.wp-block-button__link .wp-block-button__label {
  position: relative;
  z-index: 1;
}
.project-navigation__overview-link.wp-block-button__link:active {
  transform: scale(0.98);
  transition: transform 0.1s ease;
}
.project-navigation__overview-link.wp-block-button__link {
  --handyman-arrow-color: #0D2145;
  background-color: #FAFBFD;
  border: 1px solid rgba(13, 33, 69, 0.2);
  color: #0D2145;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.project-navigation__overview-link.wp-block-button__link::after {
  -webkit-mask-image: url("/wp-content/themes/handyman/static/icons/svg/squares-four.svg");
  mask-image: url("/wp-content/themes/handyman/static/icons/svg/squares-four.svg");
  position: static;
  transform: none !important;
  transition: none !important;
  width: 18px;
  height: 18px;
}
.project-navigation__overview-link.wp-block-button__link:hover, .project-navigation__overview-link.wp-block-button__link:focus-visible {
  filter: brightness(0.95);
  background-color: rgba(13, 33, 69, 0.1);
  color: #0D2145;
}
.project-navigation__overview-link.wp-block-button__link:hover::after, .project-navigation__overview-link.wp-block-button__link:focus-visible::after {
  transform: none !important;
}

.project-advantage {
  display: flex;
  margin-top: 0;
  padding-bottom: 2rem;
}
.project-advantage:last-of-type {
  padding-bottom: 0;
}
.project-advantage__wrapper {
  margin-top: 0;
  padding-top: 1rem;
}
@media screen and (min-width: 1200px) {
  .project-advantage__wrapper {
    gap: 4rem;
    padding-top: 2rem;
  }
}
.project-advantage__icon {
  flex: 0 0 30px;
}
.project-advantage__content {
  flex: 1 1 320px;
  margin-top: 0;
}

.project-card {
  background-color: #FAFBFD;
  border-radius: 20px;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08);
  display: flex;
  flex-direction: column;
  height: 100%;
  overflow: hidden;
}
.project-card__image {
  aspect-ratio: 2/1;
  overflow: hidden;
  position: relative;
  width: 100%;
}
.project-card__img {
  display: block;
  height: 100%;
  left: 0;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  width: 100%;
}
.project-card__year {
  background-color: rgba(250, 251, 253, 0.92);
  border-radius: 50px;
  color: #0D2145;
  font-size: 0.8125rem;
  font-weight: 600;
  padding: 4px 12px;
  position: absolute;
  right: 1rem;
  top: 1rem;
}
.project-card__body {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  padding: 1.5rem;
}
@media screen and (min-width: 768px) {
  .project-card__body {
    padding: 2rem;
  }
}
.project-card__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  padding-bottom: 1.5rem;
}
.project-card__tag {
  background-color: rgba(13, 33, 69, 0.1);
  border-radius: 50px;
  color: #0D2145;
  font-size: 0.75rem;
  font-weight: 400;
  padding: 4px 12px;
}
.project-card__heading {
  color: #0D2145;
  font-size: 1.125rem;
  font-weight: 700;
  margin: 0;
  padding-bottom: 1rem;
  text-transform: uppercase;
}
@media screen and (min-width: 768px) {
  .project-card__heading {
    font-size: 1.25rem;
  }
}
.project-card__lead {
  color: #4B5563;
  font-size: 0.875rem;
  line-height: 1.6;
  margin: 0;
}
@media screen and (min-width: 768px) {
  .project-card__lead {
    font-size: 0.9375rem;
  }
}
.project-card__meta {
  align-items: center;
  color: #4B5563;
  display: flex;
  font-size: 0.8125rem;
  gap: 0.4rem;
  margin-top: auto;
  padding-top: 2rem;
}
.project-card__meta-icon {
  color: #0D2145;
  flex-shrink: 0;
  line-height: 0;
}
.project-card__meta-icon svg {
  display: block;
  fill: currentColor;
  height: 15px;
  width: 15px;
}

.project-services {
  margin: 0 0 1rem 0;
}
@media screen and (min-width: 1200px) {
  .project-services {
    margin-bottom: 1.5rem;
  }
}
.project-services__list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
.project-services__item {
  background: #E8EEF6;
  letter-spacing: 0.02em;
  border-radius: 100px;
  color: #0D2145;
  font-size: 0.75rem;
  font-weight: 500;
  padding: 0.35rem 0.75rem;
  white-space: nowrap;
}
@media screen and (min-width: 1200px) {
  .project-services__item {
    font-size: 0.8125rem;
  }
}

.project-slider .owl-carousel button.owl-dot {
  background: rgba(10, 62, 92, 0.4) !important;
  border-radius: 100px !important;
  margin-top: 1.5rem !important;
}
.project-slider .owl-carousel button.owl-dot.active {
  background: rgba(10, 62, 92, 0.8) !important;
  width: 24px;
}
@media (min-width: 980px) {
  .project-slider .owl-carousel button.owl-dot {
    display: none !important;
  }
}

.section {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  margin-top: 0;
  padding: 0;
}
.section__container {
  padding-bottom: 3rem;
  padding-top: 3rem;
}
@media screen and (min-width: 768px) {
  .section__container {
    padding-bottom: 4rem;
    padding-top: 4rem;
  }
}
@media screen and (min-width: 992px) {
  .section__container {
    padding-bottom: 6rem;
    padding-top: 6rem;
  }
}
.section__container--first {
  padding-bottom: 1.5rem;
  padding-top: 3rem;
}
@media screen and (min-width: 768px) {
  .section__container--first {
    padding-bottom: 2rem;
    padding-top: 4rem;
  }
}
@media screen and (min-width: 992px) {
  .section__container--first {
    padding-bottom: 3rem;
    padding-top: 6rem;
  }
}
.section__container--inner {
  padding-bottom: 1.5rem;
  padding-top: 1.5rem;
}
@media screen and (min-width: 768px) {
  .section__container--inner {
    padding-bottom: 2rem;
    padding-top: 2rem;
  }
}
@media screen and (min-width: 992px) {
  .section__container--inner {
    padding-bottom: 3rem;
    padding-top: 3rem;
  }
}
.section__container--last {
  padding-bottom: 3rem;
  padding-top: 1.5rem;
}
@media screen and (min-width: 768px) {
  .section__container--last {
    padding-bottom: 4rem;
    padding-top: 2rem;
  }
}
@media screen and (min-width: 992px) {
  .section__container--last {
    padding-bottom: 6rem;
    padding-top: 3rem;
  }
}
.section__content {
  margin-block-start: 2rem;
}
@media screen and (min-width: 768px) {
  .section__content {
    margin-block-start: 3rem;
  }
}
@media screen and (min-width: 1200px) {
  .section__content {
    margin-block-start: 5rem;
  }
}
.section__intro {
  color: #1B4FD8;
  font-size: 0.75rem;
  font-weight: 500;
  padding-bottom: 0.5rem;
}
@media screen and (min-width: 768px) {
  .section__intro {
    font-size: 0.8125rem;
  }
}
@media screen and (min-width: 1200px) {
  .section__intro {
    font-size: 0.875rem;
  }
}
.section__intro::before {
  content: "//";
  padding-right: 0.2rem;
}
.section__heading {
  font-size: 1.875rem;
  font-weight: 600;
  line-height: 1.2;
  margin: 0;
  padding-bottom: 0;
  text-transform: uppercase;
}
.section__heading:has(+ .section__lead) {
  padding-bottom: 1rem;
}
@media screen and (min-width: 768px) {
  .section__heading {
    font-size: 2.25rem;
  }
}
@media screen and (min-width: 1200px) {
  .section__heading {
    font-size: 2.875rem;
    padding-bottom: 0;
  }
  .section__heading:has(+ .section__lead) {
    padding-bottom: 1.5rem;
  }
}
.section__heading--small {
  font-size: 1.375rem;
  padding-bottom: 1rem;
}
@media screen and (min-width: 768px) {
  .section__heading--small {
    font-size: 1.75rem;
  }
}
@media screen and (min-width: 1200px) {
  .section__heading--small {
    font-size: 2rem;
  }
}
.section__lead {
  font-size: 1rem;
  font-weight: 400;
  margin-top: 0 !important;
}
.section__lead + .section__lead {
  margin-top: 1rem !important;
}
@media screen and (min-width: 768px) {
  .section__lead {
    font-size: 1.125rem;
  }
}
@media screen and (min-width: 1200px) {
  .section__lead {
    font-size: 1.3125rem;
  }
}
.section--no-padding .section__container {
  padding: 0;
}
.section__list ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
.section__list ul li {
  color: #0D2145;
  margin: 0 0 0.5rem 0;
  padding-left: 1rem;
  position: relative;
  word-wrap: break-word;
}
.section__list ul li::before {
  background-color: #0D2145;
  border-radius: 100%;
  content: "";
  display: block;
  left: 0;
  padding: 3px;
  position: absolute;
  top: 10px;
}

/* ------------------------------------------------
| Service Item Card (Gutenberg Group + Klasse)
| Aufbau: Image (Icon) → Heading → Paragraph
------------------------------------------------ */
.service-item {
  align-items: center;
  background-color: #0D2145;
  border-radius: 20px;
  display: flex !important;
  flex-direction: column;
  height: 100%;
  padding: 4rem 2rem !important;
  text-align: center;
}
.service-item > .wp-block-image {
  margin: 0 0 1.5rem;
}
.service-item > .wp-block-image img {
  display: block;
  height: 48px;
  -o-object-fit: contain;
     object-fit: contain;
  width: 48px;
}
.service-item > .wp-block-heading {
  color: #FAFBFD;
  font-size: 1.125rem;
  font-weight: 600;
  margin: 0 0 1rem;
  text-transform: uppercase;
}
@media screen and (min-width: 768px) {
  .service-item > .wp-block-heading {
    font-size: 1.25rem;
  }
}
.service-item > p {
  color: #f6f8fb;
  font-size: 1rem;
  line-height: 1.6;
  margin: 0;
}

.service-card {
  border-radius: 8px;
  display: flex !important;
  flex-direction: column;
  overflow: hidden;
  padding: 0 !important;
}
.service-card > .wp-block-image {
  margin: 0;
}
.service-card > .wp-block-image img {
  aspect-ratio: 4/3;
  border-radius: 0;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}
.service-card > .wp-block-heading {
  font-size: 1rem;
  font-weight: 600;
  margin: 0;
  padding: 0.75rem 1rem;
  text-transform: uppercase;
}
@media screen and (min-width: 768px) {
  .service-card > .wp-block-heading {
    font-size: 1.125rem;
  }
}
.service-card > p {
  color: #4B5563;
  font-size: 0.875rem;
  line-height: 1.6;
  margin: 0;
  padding: 1rem;
}
@media screen and (min-width: 768px) {
  .service-card > p {
    font-size: 0.9375rem;
  }
}

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

.step {
  display: flex;
  flex: 1 1 100%;
  flex-direction: column;
  margin: 0;
  max-width: 360px;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .step {
    width: 100%;
  }
}
.step__wrapper {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  max-width: 1000px;
}
@media screen and (min-width: 768px) {
  .step__wrapper {
    flex-direction: row;
    gap: 1.5rem;
  }
}
@media screen and (min-width: 1200px) {
  .step__wrapper {
    gap: 4rem;
  }
}
.step__header {
  display: flex;
  gap: 0.75rem;
  padding-bottom: 0.5rem;
  margin-left: 0 !important;
}
.step__body {
  margin: 0;
  text-align: left;
}
.step__number {
  color: #1B4FD8;
  font-size: 1rem;
  font-weight: 300;
  line-height: 1;
  padding-top: 5px;
}
@media screen and (min-width: 768px) {
  .step__number {
    text-align: left;
  }
}
.step__heading {
  color: #0D2145;
  font-size: 1.25rem;
  font-weight: 600;
}
@media screen and (min-width: 768px) {
  .step__heading {
    font-size: 1.3125rem;
  }
}
@media screen and (min-width: 1200px) {
  .step__heading {
    font-size: 1.375rem;
  }
}
.step__lead {
  color: #0D2145;
  font-size: 1rem;
  font-weight: 400;
  margin: 0;
  padding-bottom: 0.5rem;
}
@media screen and (min-width: 768px) {
  .step__lead {
    font-size: 1.0625rem;
    padding-bottom: 1rem;
  }
}
@media screen and (min-width: 1200px) {
  .step__lead {
    font-size: 1.125rem;
  }
}
.step__text {
  color: #4B5563;
  font-size: 1rem;
  font-weight: 400;
  margin: 0;
}

.subheader {
  display: flex;
  flex: 1 1 100%;
  flex-wrap: wrap;
  padding: 0;
  width: 100%;
}
.subheader--small::before {
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0.5) 35%, rgba(0, 0, 0, 0.3) 70%, rgba(0, 0, 0, 0.1) 100%), linear-gradient(to right, rgba(0, 0, 0, 0.68) 0%, rgba(0, 0, 0, 0.58) 42%, rgba(0, 0, 0, 0.44) 62%, rgba(0, 0, 0, 0.32) 78%, rgba(0, 0, 0, 0.18) 90%, rgba(0, 0, 0, 0) 100%) center;
  background-size: cover;
}
@media screen and (min-width: 768px) {
  .subheader--small::before {
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.64) 0%, rgba(0, 0, 0, 0.46) 35%, rgba(0, 0, 0, 0.26) 70%, rgba(0, 0, 0, 0.05) 100%), linear-gradient(to right, rgba(0, 0, 0, 0.58) 0%, rgba(0, 0, 0, 0.46) 38%, rgba(0, 0, 0, 0.34) 60%, rgba(0, 0, 0, 0.22) 78%, rgba(0, 0, 0, 0.12) 92%, rgba(0, 0, 0, 0) 100%);
  }
}
@media screen and (min-width: 1200px) {
  .subheader--small::before {
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.68) 0%, rgba(0, 0, 0, 0.46) 35%, rgba(0, 0, 0, 0.24) 70%, rgba(0, 0, 0, 0) 100%), linear-gradient(to right, rgba(0, 0, 0, 0.55) 0%, rgba(0, 0, 0, 0.4) 38%, rgba(0, 0, 0, 0.28) 55%, rgba(0, 0, 0, 0.16) 72%, rgba(0, 0, 0, 0.06) 86%, rgba(0, 0, 0, 0) 100%);
  }
}
.subheader--small::before {
  content: "";
  height: 100%;
  position: absolute;
  width: 100%;
}
.subheader--small .subheader__container {
  display: flex;
  padding-bottom: 6rem;
  padding-top: 7rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .subheader--small .subheader__container {
    padding-bottom: 8rem;
    padding-top: 10rem;
  }
}
@media screen and (min-width: 1200px) {
  .subheader--small .subheader__container {
    padding-bottom: 14rem;
    padding-top: 14rem;
  }
}
.subheader--small .subheader__content {
  max-width: 330px !important;
}
@media screen and (min-width: 768px) {
  .subheader--small .subheader__content {
    max-width: 520px !important;
  }
}
@media screen and (min-width: 1200px) {
  .subheader--small .subheader__content {
    max-width: 700px !important;
  }
}
.subheader--image::before {
  background: linear-gradient(to right, rgba(10, 62, 92, 0.98) 0%, rgba(10, 62, 92, 0.96) 25%, rgba(10, 62, 92, 0.9) 50%, rgba(10, 62, 92, 0.8) 70%, rgba(10, 62, 92, 0.7) 85%, rgba(10, 62, 92, 0.55) 100%) center;
  background-size: cover;
  content: "";
  height: 100%;
  position: absolute;
  width: 100%;
}
.subheader__container {
  display: flex;
  padding-bottom: 80px;
  padding-top: calc(80px + 2rem);
  width: 100%;
}
@media screen and (min-width: 768px) {
  .subheader__container {
    padding-bottom: 100px;
    padding-top: calc(100px + 3rem);
  }
}
@media screen and (min-width: 1200px) {
  .subheader__container {
    padding-bottom: calc(100px + 2rem);
    padding-top: calc(100px + 4rem);
  }
}
@media screen and (min-width: 768px) {
  .subheader__body {
    max-width: 700px;
  }
}
@media screen and (min-width: 1200px) {
  .subheader__body {
    max-width: 800px;
  }
}
.subheader__intro {
  font-size: 0.75rem;
  font-weight: 500;
  padding-bottom: 0.5rem;
}
@media screen and (min-width: 768px) {
  .subheader__intro {
    font-size: 0.8125rem;
  }
}
@media screen and (min-width: 1200px) {
  .subheader__intro {
    font-size: 0.875rem;
  }
}
.subheader__intro::before {
  content: "//";
  padding-right: 0.2rem;
}
.subheader__heading {
  font-size: 2.125rem;
  font-weight: 600;
  line-height: 1.2;
  margin: 0;
  padding-bottom: 1rem;
}
@media screen and (min-width: 768px) {
  .subheader__heading {
    font-size: 2.75rem;
  }
}
@media screen and (min-width: 1200px) {
  .subheader__heading {
    font-size: 3.5rem;
    padding-bottom: 1.5rem;
  }
}
.subheader__lead {
  font-size: 1.125rem;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .subheader__lead {
    font-size: 1.25rem;
  }
}
@media screen and (min-width: 1200px) {
  .subheader__lead {
    font-size: 1.375rem;
  }
}
.subheader p {
  margin: 0;
}

.testimonial-slider-wrapper {
  padding-left: 2rem;
}
@media screen and (min-width: 768px) {
  .testimonial-slider-wrapper {
    padding-left: 3rem;
  }
}
@media screen and (min-width: 1200px) {
  .testimonial-slider-wrapper {
    padding-left: 8rem;
  }
}
.testimonial-slider .uc_quote_item {
  background-color: transparent !important;
  display: flex !important;
}
.testimonial-slider .uc_quote_item .ue-text {
  color: #4B5563 !important;
  font-size: 1.25rem;
  margin: 0 !important;
  padding-bottom: 2rem;
}
@media screen and (min-width: 768px) {
  .testimonial-slider .uc_quote_item .ue-text {
    max-width: 600px !important;
  }
}
@media screen and (min-width: 1200px) {
  .testimonial-slider .uc_quote_item .ue-text {
    font-size: 1.5rem;
    max-width: 800px !important;
  }
}
.testimonial-slider .uc_quote_item .ue-image {
  height: auto !important;
}
.testimonial-slider .uc_quote_item .uc_testimonial_authorline {
  margin-top: 0;
}
.testimonial-slider .uc_quote_item .uc_testimonial_name {
  font-size: 0.875rem;
  font-weight: 600;
  padding-bottom: 0.25rem;
}
.testimonial-slider .uc_quote_item .uc_testimonial_company {
  color: #4B5563;
  font-size: 0.875rem;
  font-weight: 600;
}
.testimonial-slider .uc_quote_item .uc_testimonial_quotecontent {
  padding-top: 1.5rem;
}
.testimonial-slider .uc_quote_info {
  display: flex !important;
  flex-direction: row !important;
  gap: 1.5rem !important;
  height: auto !important;
}
.testimonial-slider .owl-carousel .owl-dots {
  display: flex !important;
  gap: 0.5rem !important;
  margin-left: calc(50px + 1.5rem) !important;
  padding-top: 1.5rem !important;
}
.testimonial-slider .owl-carousel button.owl-dot {
  background: rgba(13, 33, 69, 0.4) !important;
  margin: 0 !important;
}
.testimonial-slider .owl-carousel button.owl-dot.active {
  background: rgba(13, 33, 69, 0.8) !important;
}

.value__wrapper {
  gap: 0.5rem;
}
@media screen and (min-width: 768px) {
  .value__wrapper {
    gap: 2rem;
  }
}
.value-card {
  margin-bottom: 2.5rem;
  position: relative;
}
.value-card::before {
  background-color: rgba(13, 33, 69, 0.4);
  content: "";
  height: 100%;
  position: absolute;
  top: 0;
  width: 1px;
}
.value-card:last-of-type {
  margin-bottom: 0;
}
.value-card__icon {
  padding-bottom: 1rem;
}
.value-card__body {
  padding: 0.5rem 0 0.5rem 1rem;
}
.value-card__heading {
  font-size: 1.125rem;
  font-weight: 600;
  margin: 0;
  padding-bottom: 0.5rem;
}
@media screen and (min-width: 768px) {
  .value-card__heading {
    font-size: 1.1875rem;
  }
}
@media screen and (min-width: 1200px) {
  .value-card__heading {
    font-size: 1.25rem;
  }
}
.value-card__text {
  color: #4B5563;
  font-weight: 400;
}

/*# sourceMappingURL=style.css.map*/