.elementor-2766 .elementor-element.elementor-element-c0955fb{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:-10px;--margin-left:0px;--margin-right:0px;}.elementor-2766 .elementor-element.elementor-element-7569326{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-2766 .elementor-element.elementor-element-e1ce3e2{margin:-5px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2766 .elementor-element.elementor-element-e1ce3e2 .woocommerce-breadcrumb{color:var( --e-global-color-dafb903 );text-align:left;}.elementor-2766 .elementor-element.elementor-element-e1ce3e2 .woocommerce-breadcrumb > a{color:var( --e-global-color-06e79c1 );}.elementor-2766 .elementor-element.elementor-element-2de28eb{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2766 .elementor-element.elementor-element-616d032{--display:flex;}.elementor-2766 .elementor-element.elementor-element-0b8a981{font-size:14px;}.elementor-2766 .elementor-element.elementor-element-960a0f6{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-2766 .elementor-element.elementor-element-d057575{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;}.elementor-2766 .elementor-element.elementor-element-8523516{font-size:14px;}.elementor-2766 .elementor-element.elementor-element-9c219f0 .elementor-button:hover, .elementor-2766 .elementor-element.elementor-element-9c219f0 .elementor-button:focus{border-color:var( --e-global-color-4ffdb99 );}.elementor-2766 .elementor-element.elementor-element-9c219f0 .elementor-button{border-style:solid;border-width:2px 2px 2px 2px;border-color:var( --e-global-color-primary );padding:15px 100px 15px 100px;}.elementor-2766 .elementor-element.elementor-element-df3622d{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2766 .elementor-element.elementor-element-67f236e .elementor-repeater-item-d206f4a .swiper-slide-bg{background-color:#FFFFFF00;background-image:url(https://itsbrecht.de/wp-content/uploads/2025/08/2.jpg);background-size:cover;}.elementor-2766 .elementor-element.elementor-element-67f236e .elementor-repeater-item-321240c .swiper-slide-bg{background-color:#FFFFFF00;background-image:url(https://itsbrecht.de/wp-content/uploads/2025/08/6.jpg);background-size:cover;}.elementor-2766 .elementor-element.elementor-element-67f236e .elementor-repeater-item-f5ae466 .swiper-slide-bg{background-color:#FFFFFF00;background-image:url(https://itsbrecht.de/wp-content/uploads/2025/07/3.jpg);background-size:cover;}.elementor-2766 .elementor-element.elementor-element-67f236e .elementor-repeater-item-8b3d356 .swiper-slide-bg{background-color:#FFFFFF00;background-image:url(https://itsbrecht.de/wp-content/uploads/2025/07/6.jpg);background-size:cover;}.elementor-2766 .elementor-element.elementor-element-67f236e .swiper-slide{transition-duration:calc(5000ms*1.2);height:483px;}.elementor-2766 .elementor-element.elementor-element-67f236e .swiper-slide-contents{max-width:66%;}.elementor-2766 .elementor-element.elementor-element-67f236e .swiper-slide-inner{text-align:center;}.elementor-2766 .elementor-element.elementor-element-67f236e .elementor-swiper-button{color:var( --e-global-color-4c697a0 );}.elementor-2766 .elementor-element.elementor-element-67f236e .elementor-swiper-button svg{fill:var( --e-global-color-4c697a0 );}.elementor-2766 .elementor-element.elementor-element-e54176b{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2766 .elementor-element.elementor-element-1d62551{--display:flex;}.elementor-2766 .elementor-element.elementor-element-c82fe4e{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:10px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}.elementor-2766 .elementor-element.elementor-element-0203b04{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:64px;--margin-left:0px;--margin-right:0px;}.elementor-2766 .elementor-element.elementor-element-9db18e4{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2766 .elementor-element.elementor-element-cabd112{--display:flex;--min-height:414px;--justify-content:center;}.elementor-2766 .elementor-element.elementor-element-cabd112.e-con{--flex-grow:1;--flex-shrink:0;}.elementor-2766 .elementor-element.elementor-element-f959b6b.elementor-element{--align-self:center;}.elementor-2766 .elementor-element.elementor-element-f959b6b img{width:100%;max-width:100%;}.elementor-2766 .elementor-element.elementor-element-f776c73{--display:flex;--border-radius:16px 16px 16px 16px;--padding-top:15px;--padding-bottom:25px;--padding-left:10px;--padding-right:10px;}.elementor-2766 .elementor-element.elementor-element-f776c73:not(.elementor-motion-effects-element-type-background), .elementor-2766 .elementor-element.elementor-element-f776c73 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-d324369 );}.elementor-2766 .elementor-element.elementor-element-df76908{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + -24px) 0px;}@media(max-width:1024px){.elementor-2766 .elementor-element.elementor-element-e1ce3e2{margin:-20px 0px calc(var(--kit-widget-spacing, 0px) + 0px) -4px;}.elementor-2766 .elementor-element.elementor-element-616d032{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2766 .elementor-element.elementor-element-960a0f6{--flex-direction:column-reverse;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2766 .elementor-element.elementor-element-d057575{--padding-top:20px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2766 .elementor-element.elementor-element-df3622d{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2766 .elementor-element.elementor-element-1d62551{--padding-top:20px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2766 .elementor-element.elementor-element-c82fe4e{--padding-top:20px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2766 .elementor-element.elementor-element-0203b04{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:30px;--margin-left:0px;--margin-right:0px;}.elementor-2766 .elementor-element.elementor-element-cabd112{--min-height:200px;}.elementor-2766 .elementor-element.elementor-element-f959b6b img{width:100%;}.elementor-2766 .elementor-element.elementor-element-f776c73{--border-radius:16px 16px 16px 16px;--margin-top:20px;--margin-bottom:20px;--margin-left:0px;--margin-right:0px;--padding-top:15px;--padding-bottom:25px;--padding-left:10px;--padding-right:10px;}}@media(max-width:767px){.elementor-2766 .elementor-element.elementor-element-e1ce3e2 .woocommerce-breadcrumb{font-size:14px;}.elementor-2766 .elementor-element.elementor-element-2dea6fa .elementor-heading-title{font-size:32px;}.elementor-2766 .elementor-element.elementor-element-0b8a981{font-size:12px;}.elementor-2766 .elementor-element.elementor-element-036bcfd .elementor-heading-title{font-size:26px;}.elementor-2766 .elementor-element.elementor-element-8523516{font-size:12px;}.elementor-2766 .elementor-element.elementor-element-67f236e .swiper-slide{height:370px;}.elementor-2766 .elementor-element.elementor-element-b7bc6e2 .elementor-heading-title{font-size:26px;}.elementor-2766 .elementor-element.elementor-element-0203b04{--flex-direction:column-reverse;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2766 .elementor-element.elementor-element-cabd112{--min-height:0px;}.elementor-2766 .elementor-element.elementor-element-c467870{font-size:10px;}}@media(min-width:768px){.elementor-2766 .elementor-element.elementor-element-7569326{--width:100%;}.elementor-2766 .elementor-element.elementor-element-616d032{--width:60%;}.elementor-2766 .elementor-element.elementor-element-d057575{--width:50%;}.elementor-2766 .elementor-element.elementor-element-df3622d{--width:50%;}.elementor-2766 .elementor-element.elementor-element-9db18e4{--width:50%;}.elementor-2766 .elementor-element.elementor-element-f776c73{--width:50%;}}@media(max-width:1024px) and (min-width:768px){.elementor-2766 .elementor-element.elementor-element-d057575{--width:100%;}.elementor-2766 .elementor-element.elementor-element-df3622d{--width:100%;}.elementor-2766 .elementor-element.elementor-element-9db18e4{--width:100%;}.elementor-2766 .elementor-element.elementor-element-f776c73{--width:100%;}}/* Start custom CSS for slides, class: .elementor-element-67f236e */.elementor-33 .elementor-element.elementor-element-87dec04 .elementor-swiper-button {
    color: var( --e-global-color-4c697a0 );
    background: #ffffff80;
    border-radius: 50%;
    width: 40px;
    height: 40px;
}

.elementor-33 .elementor-element.elementor-element-87dec04 .elementor-swiper-button svg {
    fill: var( --e-global-color-4c697a0 );
    margin-top: 8px;
    margin-left: 6px;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-f6eda13 */.custom-accordion {
            width: 100%;
            max-width: 100%;       /* Используем max-width: 1620px */
            margin: 0 auto 40px;
            box-sizing: border-box;
        }

        /* 2. Одна панель (accordion-item) */
        .custom-accordion .accordion-item {
            border: 1px solid #E7E7E7;
            border-radius: 16px;
            background-color: #ffffff;
            margin-bottom: 24px;
            overflow: hidden;
            transition: border-radius 0.3s ease;
        }

        /* 3. Заголовок панели (аккордеон header) */
        .custom-accordion .accordion-header {
            display: flex;
            align-items: flex-start;
            cursor: pointer;
            padding: 20px;
            background-color: #ffffff;
            user-select: none;
            position: relative;
        }


        /* 4. Изображение слева (400×400) */
        .custom-accordion .accordion-image {
            width: 400px;
            height: 300px;
            object-fit: cover;
            border-radius: 8px;
            flex-shrink: 0;
            margin-right: 24px;
        }

        /* 5. Блок с заголовком и подзаголовком */
        .custom-accordion .accordion-title-container {
            display: flex;
            flex-direction: column;
            justify-content: center;
            flex: 1;
        }
        .custom-accordion .accordion-title {
            font-size: 1.75rem;
            font-weight: 500;
            line-height: 1.2;
            margin: 0;
            color: #121212;
        }
        .custom-accordion .accordion-subtitle {
            font-size: 1rem;
            color: #717171;
            margin: 8px 0 0;
            line-height: 1.4;
        }
        
        .custom-accordion .accordion-subtitle2 {
            font-size: 0.9rem;
            color: #717171;
            margin: 16px 0 0;
            line-height: 1.4;
        }

        /* 6. Кнопка «Computer ansehen» внутри заголовка (правый нижний угол) */
        .custom-accordion .accordion-button-header {
            position: absolute;
            bottom: 20px;      /* отступ от нижней границы header */
            right: 20px;       /* чуть левее иконки */
            background-color: #005ED0;
            color: #ffffff;
            text-decoration: none;
            font-size: 0.95rem;
            line-height: 1.2;
            padding: 15px 100px;
            border-radius: 8px;
            transition: background-color 0.2s ease;
            z-index: 10;
        }
        .custom-accordion .accordion-button-header:hover {
            background-color: #006BED;
            color: #fff;
        }

        /* 7. Контейнер для иконки (стрелки) */
        
        /* 8. Тег IMG внутри .accordion-icon-container */
        .custom-accordion .accordion-icon {
            width: 40px;
            height: 40px;
            object-fit: contain;
            transition: transform 0.3s ease;
        }
        /* Поворот или просто изменение цвета не нужен, так как мы заменяем src у IMG при открытии */
        /* Если хотим плавный разворот, можно обыграть через CSS, но заменой src обычно достаточно. */

        /* 9. Контент панели (скрыт по умолчанию) */
        .custom-accordion .accordion-content {
            max-height: 0;
            overflow: hidden;
            transition: max-height 0.3s ease, padding 0.3s ease;
            padding: 0 20px; /* сохраняем горизонтальные отступы */
            background-color: #ffffff;
        }
        /* Когда фон активен: даём нижний padding и max-height */
        .custom-accordion .accordion-item.active .accordion-content {
            max-height: 2000px; /* довольно большое значение */
            padding-bottom: 20px;
        }

        /* 10. Скругление углов при открытой панели */
        .custom-accordion .accordion-item.active {
            border-radius: 12px; /* скругляем только сверху */
        }
   

        /* 11. Стили текста и списков внутри контента */
        .custom-accordion .accordion-content p {
            margin: 16px 0;
            line-height: 1.5;
        }
        .custom-accordion .accordion-content ul {
            margin: 16px 0;
            padding-left: 20px;
        }
        .custom-accordion .accordion-content ul li {
            margin-bottom: 12px;
            line-height: 1.4;
        }
        .custom-accordion .accordion-content ul li::marker {
            color: #F27F01;
            font-size: 1.25rem;
        }
        
    .accordion-content strong {
    font-family: 'Roboto', sans-serif;
    font-size: 16px;
    color: #121212;
    font-weight: 500 !important;
    }

   .accordion-content small {
    font-family: 'Roboto', sans-serif;
    font-size: 14px;
    color: #121212;
   }

        
        
        

        /* 12. Кнопка внутри открытого контента (если понадобится) */
        .custom-accordion .accordion-button-content {
            display: inline-block;
            background-color: #1e73be;
            color: #ffffff;
            text-decoration: none;
            font-size: 1rem;
            line-height: 1.2;
            padding: 12px 24px;
            border-radius: 6px;
            transition: background-color 0.2s ease;
            margin-top: 16px;
        }
        .custom-accordion .accordion-button-content:hover {
            background-color: #155b8c;
        }
        
        
        



/* =============================
   RESPONSIVE ДЛЯ custom-accordion
   ============================= */

/* ============ ПЛАНШЕТ =========== */
/* Экраны до 1024px (рекомендуемый брейкпоинт под планшеты) */
@media screen and (max-width: 1024px) {
  /* 1. Сбрасываем max-width, чтобы аккордеон занял всю ширину экрана с небольшим отступом */
  .custom-accordion {
    max-width: 100%;
    margin-bottom: 32px;
  }

  /* 2. Переключаем header в «колонку» */
  .custom-accordion .accordion-header {
    flex-direction: column;
    align-items: center;
    padding: 16px;
    position: relative;
  }

  /* 3. Картинка на всю ширину header, сохраняем соотношение сторон */
  .custom-accordion .accordion-image {
    width: 500px;
    height: 300px;
    margin: 0 0 16px;  /* отступ снизу до текста */
  }

  /* 4. Заголовок и подзаголовок центрируем */
  .custom-accordion .accordion-title-container {
    margin-bottom: 16px; /* немного «воздуха» между текстом и кнопкой/стрелкой */
  }
  .custom-accordion .accordion-title {
    font-size: 1.5rem;  /* чуть меньше, чем десктоп */
  }
  .custom-accordion .accordion-subtitle {
    font-size: 0.95rem;
    margin-top: 8px;
  }
  .custom-accordion .accordion-subtitle2 {
    font-size: 0.9rem;
    margin-top: 8px;
  }

  /* 5. Кнопка «Computer ansehen» теперь не абсолютная, а статичная (под текстом) */
.custom-accordion .accordion-button-header {
  position: static;
  display: block;
  width: calc(100% - 20px); /* чтобы ширина = ширина контейнера минус 20px + 20px */
  margin: 20px 20px 16px;      /* 20px отступа слева и справа, 16px — снизу */
  font-size: 0.9rem;
  padding: 17px 0;           /* оставляем только вертикальный padding */
  text-align: center;        /* выравнивание текста по центру */
}

  /* 6. Стрелка (иконка) прижатая к правому краю header, чуть ниже (слегка «подтягиваем» наверх, чтобы не закрывать текст) */
  .custom-accordion .accordion-icon-container {
    position: absolute;
    top: 16px;
    right: 16px;
    width: 36px;
    height: 36px;
  }
  .custom-accordion .accordion-icon {
    width: 40px;
    height: 40px;
  }

  /* 7. Содержимое (content) — без изменений в структуре, но уменьшаем горизонтальные отступы */
  .custom-accordion .accordion-content {
    padding: 0 16px;
  }
  .custom-accordion .accordion-item.active .accordion-content {
    padding-bottom: 16px;
  }
  
  /* 8. Типографика внутри content для планшетов */
  .custom-accordion .accordion-content p {
    margin: 12px 0;
    font-size: 0.9rem;
    line-height: 1.4;
  }
  .custom-accordion .accordion-content ul {
    margin: 12px 0;
    padding-left: 20px;
  }
  .custom-accordion .accordion-content ul li {
    margin-bottom: 10px;
    font-size: 0.9rem;
    line-height: 1.4;
  }
}

/* ============ МОБИЛЬНЫЕ =========== */
/* Экраны до 480px (рекомендуемый брейкпоинт под телефоны) */
@media screen and (max-width: 480px) {
  /* 1. Отступы у общего контейнера чуть меньше */
  .custom-accordion {
    max-width: 100%;
    margin-bottom: 24px;
  }

  /* 2. Header — всё то же: «колонка», но ещё компактнее */
  .custom-accordion .accordion-header {
    padding: 12px;
  }

  /* 3. Картинка — полностью во всю ширину */
  .custom-accordion .accordion-image {
    width: 100%;
    height: auto;
    margin: 0 0 12px;
    border-radius: 6px;
  }

  /* 4. Текст внутри заголовка — ещё чуть поменьше */
  .custom-accordion .accordion-title {
    font-size: 1.25rem;
  }
  .custom-accordion .accordion-subtitle {
    font-size: 0.9rem;
    margin-top: 6px;
  }
  .custom-accordion .accordion-subtitle2 {
    font-size: 0.85rem;
    margin-top: 6px;
  }

  /* 5. Кнопка — адаптируем размер и отступы */
  .custom-accordion .accordion-button-header {
    font-size: 0.85rem;
    padding: 15px 32px;
    margin-bottom: 12px;
  }

  /* 6. Иконка — чуть мельче и прижата к углу */
  .custom-accordion .accordion-icon-container {
    top: 12px;
    right: 12px;
    width: 32px;
    height: 32px;
  }
  .custom-accordion .accordion-icon {
    width: 30px;
    height: 30px;
  }

  /* 7. Контент — ещё меньше отступы, текст помельче */
  .custom-accordion .accordion-content {
    padding: 0 12px;
  }
  .custom-accordion .accordion-item.active .accordion-content {
    padding-bottom: 12px;
  }
  .custom-accordion .accordion-content p {
    margin: 10px 0;
    font-size: 0.85rem;
    line-height: 1.4;
  }
  .custom-accordion .accordion-content ul {
    margin: 10px 0;
    padding-left: 18px;
  }
  .custom-accordion .accordion-content ul li {
    margin-bottom: 8px;
    font-size: 0.85rem;
    line-height: 1.4;
  }
}

/* =============================
   ОТМЕТКИ:
   1) Для планшета (max-width:1024px) мы:
      - «стопим» .accordion-header в колонку (картинка + заголовок + кнопка + иконка идут вертикально).
      - Убираем absolute-позиционирование кнопки и выравниваем её по центру.
      - Стрелка (иконка) остаётся в правом углу, но чуть ниже.
      - Текст внутри content и заголовков уменьшаем в размере.
   2) Для мобильных (max-width:480px) делаем всё то же, но ещё более компактно:
      - Padding-ы уменьшаем.
      - Шрифты уменьшаем.
      - Кнопка становится меньше по padding-ам, а icon-container ещё компактнее.
   3) Если вы хотите другой breakpoint (например, 768px), замените 1024px на 768px.
   4) Убедитесь, что этот CSS идёт **после** всех ваших основных стилей, 
      иначе медиазапросы могут не переопределить desktop-правила.
============================= *//* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-df76908 *//* Allgemeine Einstellungen für alle Eingabefelder, Select und Textarea */

.form-row.row0 select {
  -webkit-appearance: none!important;
  -moz-appearance: none!important;
  appearance: none!important;
  width: 100%!important;
  background-color: #12121208!important;  /* Hintergrundfarbe */
  border: 3px solid transparent!important; /* Normalerweise unsichtbare Rahmen */
  border-radius: 16px!important;           /* Abrundung */
  padding: 0 10px!important;
  font-size: 16px!important;
  box-sizing: border-box!important;
  height:  64px!important;
}

.form-row.row0 .wpcf7-not-valid-tip {
  right: 30px !important;
}

.form-row.row1 input {
  width: 100% !important;
  background-color: #12121208 !important;  /* Hintergrundfarbe */
  border: 3px solid transparent !important; /* Normalerweise unsichtbare Rahmen */
  border-radius: 16px !important;           /* Abrundung */
  padding: 0 10px !important;
  font-size: 16px !important;
  box-sizing: border-box !important;
  height:  64px !important;
  line-height: 54px !important;
}

.form-row.row1 {
  display: flex !important;
  gap: 0px !important;
  margin-top: -15px !important;
  margin-bottom: -15px !important;
}

.form-row.row1 > div {
  width: 50% !important;
}

.first-name {
  margin-right: 20px !important;
}

.form-row.row2 input {
  width: 100% !important;
  background-color: #12121208 !important;  /* Hintergrundfarbe */
  border: 3px solid transparent !important; /* Normalerweise unsichtbare Rahmen */
  border-radius: 16px !important;           /* Abrundung */
  padding: 0 10px !important;
  font-size: 16px !important;
  box-sizing: border-box !important;
  height:  64px !important;
  line-height: 54px !important;
}

.form-row.row3 input {
  width: 100% !important;
  background-color: #12121208 !important;  /* Hintergrundfarbe */
  border: 3px solid transparent !important; /* Normalerweise unsichtbare Rahmen */
  border-radius: 16px !important;           /* Abrundung */
  padding: 0 10px !important;
  font-size: 16px !important;
  box-sizing: border-box !important;
  height:  64px !important;
  line-height: 54px !important;
}

.contact-form textarea {
  width: 100% !important;
  background-color: #12121208 !important;  /* Hintergrundfarbe */
  border: 3px solid transparent !important; /* Normalerweise unsichtbare Rahmen */
  border-radius: 16px !important;           /* Abrundung */
  padding: 0 10px !important;
  font-size: 16px !important;
  box-sizing: border-box !important;
  height: 108px !important;
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

/* Platzhalter-Text in Farbe #909090 */
.contact-form ::-webkit-input-placeholder {
  color: #909090 !important;
}
.contact-form :-ms-input-placeholder {
  color: #909090 !important;
}
.contact-form ::placeholder {
  color: #909090 !important;
}

/* Fokus-Zustand: aktive Felder */
.contact-form input:focus,
.contact-form select:focus,
.contact-form textarea:focus {
  border-color: #80AFE8 !important;
  outline: none !important;
}

/* Fehler-Zustand (Contact Form 7 fügt die Klasse .wpcf7-not-valid hinzu) */
.contact-form input.wpcf7-not-valid,
.contact-form select.wpcf7-not-valid,
.contact-form textarea.wpcf7-not-valid {
  background-color: #FFF3F3 !important;
  border-color: #FF1B1B !important;
}

/* 2) Button "Absenden" in Zeile 6: 30% Breite */
.form-row.row6 input[type="submit"] {
  width: 100% !important;
  border: 3px solid transparent !important; 
  border-radius: 8px !important;           /* Abrundung */
  padding: 0 10px !important;
  font-size: 16px !important;
  box-sizing: border-box !important;
  height:  64px !important;
}

.form-row.row7 {
  margin-left: -10px !important;
  margin-top: 30px !important;
}

.wpcf7-form-control.wpcf7-acceptance input[type="checkbox"] {
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  box-sizing: border-box !important;
  width: 24px !important;
  height: 24px !important;
  background: #FFFFFF !important;
  border: 1px solid #A0A0A0 !important;
  border-radius: 4px !important;
  vertical-align: middle !important;
  position: relative !important;
  margin-right: 5px !important;
  cursor: pointer !important;
}

.wpcf7-form-control.wpcf7-acceptance input[type="checkbox"]:hover {
  border-color: #005ED0 !important;
}

.wpcf7-form-control.wpcf7-acceptance input[type="checkbox"]:checked {
  background-color: #005ED0 !important;
  border-color: #005ED0 !important;
}

.wpcf7-form-control.wpcf7-acceptance input[type="checkbox"]:checked::after {
  content: "" !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  width: 10px !important;
  height: 5px !important;
  border: solid #FFFFFF !important;
  border-width: 0 0 2px 2px !important;
  transform: translate(-50%, -50%) rotate(-45deg) !important;
}

.wpcf7-not-valid-tip {
  margin-top: 1px !important;
  margin-left: 5px !important;
}

.form-row {
  position: relative !important;
}

.wpcf7-not-valid-tip {
  position: absolute !important;
  right: 10px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  background: #FFF3F3 !important;
  padding: 5px 10px !important;
  font-size: 14px !important;
  white-space: nowrap !important;
}

.form-row.row4 {
  position: relative !important;
}

.form-row.row4 .wpcf7-not-valid-tip {
  position: absolute !important;
  top: -76px !important; /* Fehlernachricht oben ausrichten */
  right: 10px !important; /* Abstand zum rechten Rand */
  transform: none !important; /* keine vertikale Zentrierung */
}

.form-row.row5 {
  position: relative !important;
}

.form-row.row5 .wpcf7-not-valid-tip {
  position: absolute !important;
  top: 10px !important;
  right: revert-layer !important;
  background-color: rgba(255, 255, 255, 0) !important;
  padding-top: 1px !important;
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
  width: 100% !important;
  border-color: #FF1B1B !important;
  border-radius: 8px !important;
  background-color: #FFF3F3 !important;
  color: #dc3232 !important;
}

.form-row.row0 .wpcf7-not-valid-tip {
    display: none!important;
}

@media (max-width: 600px) {
  .form-row.row1 {
    flex-direction: column !important;
  }
  .form-row.row1 > div {
    width: 100% !important;
  }

  .first-name {
    margin-bottom: -9px !important;
  }
}/* End custom CSS */