/* === ELEMENTOR KIT GLOBAL SETTINGS (from original .elementor-kit-9) === */
.elementor-kit-7 {
  --e-global-color-primary: #00437A;
  --e-global-color-secondary: #88B79D;
  --e-global-color-text: #585858;
  --e-global-color-accent: #88B79D;
  --e-global-color-25be3fa: #FFFFFF;
  --e-global-color-2c358de: #2D2E30;
  --e-global-color-b74fb4e: #E6EFF9;
  --e-global-typography-primary-font-family: "TTRoundsNeue";
  --e-global-typography-primary-font-weight: normal;
  --e-global-typography-primary-line-height: 1.4em;
  --e-global-typography-secondary-font-family: "TTRoundsNeue";
  --e-global-typography-secondary-font-weight: normal;
  --e-global-typography-secondary-line-height: 1.4em;
  --e-global-typography-text-font-family: "Poppins";
  --e-global-typography-text-font-size: 18px;
  --e-global-typography-text-font-weight: normal;
  --e-global-typography-text-text-transform: none;
  --e-global-typography-text-line-height: 1.4em;
  background-color: var(--e-global-color-25be3fa);
  color: var(--e-global-color-text);
  font-family: var(--e-global-typography-text-font-family), Sans-serif;
  font-size: var(--e-global-typography-text-font-size);
  font-weight: var(--e-global-typography-text-font-weight);
  line-height: var(--e-global-typography-text-line-height);
}
.elementor-kit-7 h1, body.elementor-kit-7 h1 {
  font-family: "TTRoundsNeue", Sans-serif !important;
  font-size: 50px !important;
  font-weight: 700 !important;
  line-height: 1.4em;
}
.elementor-kit-7 h2 {
  font-family: "TTRoundsNeue", Sans-serif !important;
  font-size: 40px !important;
  font-weight: 700 !important;
  line-height: 1.4em;
}
.elementor-kit-7 h3 {
  font-family: "TTRoundsNeue", Sans-serif !important;
  font-size: 24px !important;
  font-weight: 700 !important;
  line-height: 1.4em;
}
.elementor-kit-7 h4 {
  color: var(--e-global-color-primary);
  font-family: "TTRoundsNeue", Sans-serif !important;
  font-size: 40px !important;
  font-weight: 700 !important;
  line-height: 1.3em;
}
.elementor-kit-7 h5,
.elementor-kit-7 h6 {
  font-family: "TTRoundsNeue", Sans-serif !important;
  font-size: 25px !important;
  font-weight: 400;
  line-height: 1.4em;
}
.elementor-kit-7 a {
  color: #000;
  font-family: "Poppins", Sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.4em;
}
@media(max-width:1024px) {
  .elementor-kit-7 h1, body.elementor-kit-7 h1 { font-size: 40px !important; }
}

/* === POPPINS LOCAL FONTS === */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('https://jan.philflow.me/wp-content/uploads/signo/fonts/poppins-regular.woff2') format('woff2');
}
@font-face {
  font-family: 'Poppins';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url('https://jan.philflow.me/wp-content/uploads/signo/fonts/poppins-italic.woff2') format('woff2');
}
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('https://jan.philflow.me/wp-content/uploads/signo/fonts/poppins-medium.woff2') format('woff2');
}
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('https://jan.philflow.me/wp-content/uploads/signo/fonts/poppins-semibold.woff2') format('woff2');
}
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('https://jan.philflow.me/wp-content/uploads/signo/fonts/poppins-bold.woff2') format('woff2');
}

/* === FIX: Elementor scroll animation visibility === */
.elementor-invisible {
  visibility: visible !important;
  opacity: 1 !important;
}
[class*="elementor-element"] {
  visibility: visible !important;
}

/* === HERO IMAGE === */
.elementor-element-7abd9a0 {
  background-image: url('https://jan.philflow.me/wp-content/uploads/2026/04/signo-media-wissensdatenbank-seo-768x578-1.jpg') !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}

/* === FEATURE ICONS SECTION — transparent so cards stand out === */
.elementor-element-94720a0 {
  background-color: transparent !important;
  padding-top: 60px !important;
  padding-bottom: 40px !important;
}
.elementor-element-94720a0 + .e-con,
.elementor-element-3a3b03b {
  background-color: transparent !important;
}

/* === HANDWERKER SECTION === */
.elementor-element-d433458 {
  background-color: #00437A !important;
  background-image: url('https://jan.philflow.me/wp-content/uploads/signo/signo-media-wissensdatenbank-impression-02-scaled.jpg.webp') !important;
  background-position: center center !important;
  background-size: cover !important;
  position: relative !important;
}
.elementor-element-d433458::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background-color: rgba(0, 67, 122, 0.85) !important;
  z-index: 0 !important;
}
.elementor-element-d433458 > * {
  position: relative !important;
  z-index: 1 !important;
}
.elementor-element-5f2dc49 {
  background-color: rgba(255, 255, 255, 0.18) !important;
  border: 1px solid rgba(230, 239, 249, 0.35) !important;
  border-radius: 25px !important;
}

/* === SERVICE FLIP CARDS === */
.elementor-element-37590d7 .elementor-flip-box__front {
  background-image: url('https://jan.philflow.me/wp-content/uploads/signo/signo-media-wissensdatenbank-einwilligungs-management-min-scaled.jpeg.webp') !important;
  background-size: cover !important;
  background-position: center !important;
}
.elementor-element-6c36c13 .elementor-flip-box__front {
  background-image: url('https://jan.philflow.me/wp-content/uploads/signo/signo-media-wissensdatenbank-impression-02-scaled.jpg.webp') !important;
  background-size: cover !important;
  background-position: center !important;
}
.elementor-element-77796ec .elementor-flip-box__front {
  background-image: url('https://jan.philflow.me/wp-content/uploads/2026/04/signo-media-wissensdatenbank-seo-768x578-1.jpg') !important;
  background-size: cover !important;
  background-position: center !important;
}
.elementor-element-9eb0604 .elementor-flip-box__front {
  background-image: url('https://jan.philflow.me/wp-content/uploads/2026/04/signo-grafik-teamwork.webp') !important;
  background-size: cover !important;
  background-position: center !important;
}
.elementor-element-37590d7 .elementor-flip-box__front::before,
.elementor-element-6c36c13 .elementor-flip-box__front::before,
.elementor-element-77796ec .elementor-flip-box__front::before,
.elementor-element-9eb0604 .elementor-flip-box__front::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(to bottom, rgba(0,67,122,0) 30%, rgba(0,67,122,0.85) 100%) !important;
  z-index: 1 !important;
}
.elementor-flip-box__front .elementor-flip-box__layer__inner {
  position: relative !important;
  z-index: 2 !important;
}

/* === CARDS: Image-box widgets === */
.elementor-widget-image-box {
  background-color: #E6EFF9 !important;
  border-radius: 10px !important;
  padding: 30px !important;
}
.elementor-element-73989c3 {
  background-color: #E6EFF9 !important;
  border-radius: 10px !important;
  padding: 30px !important;
}

/* === WP ROCKET BG VARIABLES === */
:root {
  --wpr-bg-cb3b0f3f-fec9-444f-b5c5-b53e5a930f49: url('https://jan.philflow.me/wp-content/uploads/2026/04/signo-media-wissensdatenbank-seo-768x578-1.jpg');
  --wpr-bg-c585452c-844d-4ba9-ade4-a6a663e1a779: url('https://jan.philflow.me/wp-content/uploads/signo/signo-media-wissensdatenbank-impression-02-scaled.jpg.webp');
  --wpr-bg-516bf163-c388-4c3b-ac5e-5874496abf2d: url('https://jan.philflow.me/wp-content/uploads/signo/signo-media-wissensdatenbank-personalisierung-scaled.jpeg.webp');
  --wpr-bg-eeb8b260-d680-4eb3-8810-ca0b1fe9fe61: url('https://jan.philflow.me/wp-content/uploads/signo/signo-media-wissensdatenbank-impression-02-scaled.jpg.webp');
  --wpr-bg-60be5e82-2d68-4754-844d-827409aaee64: url('https://jan.philflow.me/wp-content/uploads/signo/signo-media-wissensdatenbank-einwilligungs-management-min-scaled.jpeg.webp');
}

/* ================================================================
   BUTTONS — MUST BE LAST
   ================================================================ */

/* CTA Buttons: outlined, 64px, icon 50px */
.elementor .custom_btn.elementor-element .elementor-button.elementor-size-sm {
  position: relative !important;
  border: 2px solid #00437A !important;
  border-radius: 50px !important;
  background-color: #00437A !important;
  color: white !important;
  padding: 20px 64px 20px 20px !important;
  min-height: auto !important;
  font-weight: 600 !important;
  font-family: 'Poppins', sans-serif !important;
  display: inline-flex !important;
  align-items: center !important;
  }
.elementor .custom_btn.elementor-element .elementor-button.elementor-size-sm:hover {
  background-color: #0A4479 !important;
  color: white !important;
}
.elementor .custom_btn.elementor-element .elementor-button-content-wrapper {
  display: flex !important;
  align-items: center !important;
  gap: 0 !important;
  width: 100% !important;
}
.elementor .custom_btn.elementor-element .elementor-button-icon {
  position: absolute !important;
  right: 6px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 50px !important;
  height: 50px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.elementor .custom_btn.elementor-element .elementor-button-icon svg,
.elementor .custom_btn.elementor-element .elementor-button-icon i {
  width: 50px !important;
  height: 50px !important;
}

/* Header Button: filled, compact, 54px, icon 45px */
body .main_header .custom_btn.elementor-element .elementor-button.elementor-size-sm {
  background-color: #00437A !important;
  color: white !important;
  border-color: #00437A !important;
  padding: 17px 64px 16px 20px !important;
  min-height: 54px !important;
}
body .main_header .custom_btn.elementor-element .elementor-button.elementor-size-sm:hover {
  background-color: #0A4479 !important;
  color: white !important;
}
body .main_header .custom_btn.elementor-element .elementor-button-icon {
  right: 5px !important;
  width: 45px !important;
  height: 45px !important;
}
body .main_header .custom_btn.elementor-element .elementor-button-icon svg,
body .main_header .custom_btn.elementor-element .elementor-button-icon i {
  width: 45px !important;
  height: 45px !important;
}
