.elementor-kit-5{--e-global-color-primary:#E50000;--e-global-color-secondary:#FD0201;--e-global-color-text:#3C3C3C;--e-global-color-accent:#E50000;--e-global-color-14f6869:#E50000;--e-global-color-5687840:#FD0201;--e-global-color-e4637d4:#3C3C3C;--e-global-color-083f693:#E5E5E5;--e-global-color-15362a3:#F7F7F7;--e-global-color-89e5f30:#FFFFFF;--e-global-typography-primary-font-family:"Inter";--e-global-typography-primary-font-weight:600;--e-global-typography-primary-line-height:1.2rem;--e-global-typography-secondary-font-family:"Inter";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-size:1.3125rem;--e-global-typography-text-font-weight:400;--e-global-typography-text-text-transform:none;--e-global-typography-text-font-style:normal;--e-global-typography-text-text-decoration:none;--e-global-typography-text-line-height:1.42;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-weight:500;--e-global-typography-099c98c-font-family:"Inter";--e-global-typography-099c98c-font-size:6rem;--e-global-typography-099c98c-font-weight:900;--e-global-typography-099c98c-text-transform:none;--e-global-typography-099c98c-font-style:normal;--e-global-typography-099c98c-text-decoration:none;--e-global-typography-099c98c-line-height:1.12em;--e-global-typography-3090db5-font-family:"Inter";--e-global-typography-3090db5-font-size:3rem;--e-global-typography-3090db5-font-weight:900;--e-global-typography-3090db5-text-transform:none;--e-global-typography-3090db5-font-style:normal;--e-global-typography-3090db5-text-decoration:none;--e-global-typography-3090db5-line-height:1.2em;--e-global-typography-2ac0850-font-family:"Inter";--e-global-typography-2ac0850-font-size:2.25rem;--e-global-typography-2ac0850-font-weight:700;--e-global-typography-2ac0850-text-transform:none;--e-global-typography-2ac0850-font-style:normal;--e-global-typography-2ac0850-text-decoration:none;--e-global-typography-2ac0850-line-height:1.2em;--e-global-typography-30ec0e6-font-family:"Inter";--e-global-typography-30ec0e6-font-size:1.875rem;--e-global-typography-30ec0e6-font-weight:700;--e-global-typography-30ec0e6-text-transform:none;--e-global-typography-30ec0e6-font-style:normal;--e-global-typography-30ec0e6-text-decoration:none;--e-global-typography-30ec0e6-line-height:1.2em;--e-global-typography-d6cd202-font-size:1.5rem;--e-global-typography-d6cd202-font-weight:400;--e-global-typography-d6cd202-text-transform:none;--e-global-typography-d6cd202-font-style:normal;--e-global-typography-d6cd202-text-decoration:none;--e-global-typography-d6cd202-line-height:1.42em;--e-global-typography-ce6f787-font-family:"Inter";--e-global-typography-ce6f787-font-size:1rem;--e-global-typography-ce6f787-font-weight:400;--e-global-typography-ce6f787-text-transform:none;--e-global-typography-ce6f787-font-style:normal;--e-global-typography-ce6f787-text-decoration:none;--e-global-typography-ce6f787-line-height:1.42em;--e-global-typography-73dcabe-font-family:"Inter";--e-global-typography-73dcabe-font-size:1.3125rem;--e-global-typography-73dcabe-font-weight:700;--e-global-typography-73dcabe-text-transform:none;--e-global-typography-73dcabe-font-style:normal;--e-global-typography-73dcabe-text-decoration:none;--e-global-typography-73dcabe-line-height:1.2em;}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1240px;}.e-con{--container-max-width:1240px;--container-default-padding-top:0rem;--container-default-padding-right:0rem;--container-default-padding-bottom:0rem;--container-default-padding-left:0rem;}.elementor-widget:not(:last-child){--kit-widget-spacing:1rem;}.elementor-element{--widgets-spacing:1rem 1rem;--widgets-spacing-row:1rem;--widgets-spacing-column:1rem;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-kit-5{--e-global-typography-text-font-size:1.25rem;--e-global-typography-099c98c-font-size:5rem;--e-global-typography-3090db5-font-size:2.5rem;--e-global-typography-2ac0850-font-size:1.875rem;--e-global-typography-30ec0e6-font-size:1.5625rem;--e-global-typography-d6cd202-font-size:1.375rem;--e-global-typography-ce6f787-font-size:1rem;--e-global-typography-73dcabe-font-size:1.25rem;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-5{--e-global-typography-text-font-size:1.125rem;--e-global-typography-099c98c-font-size:3rem;--e-global-typography-3090db5-font-size:2rem;--e-global-typography-2ac0850-font-size:1.5rem;--e-global-typography-30ec0e6-font-size:1.25rem;--e-global-typography-d6cd202-font-size:1.125rem;--e-global-typography-ce6f787-font-size:1rem;--e-global-typography-73dcabe-font-size:1.125rem;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//*** Global Typography ***/
.page-content ul {
    margin: 0 0 1rem 0;
    padding: 0 0 0 1.5rem;
}
.page-content ul.sm-product-features {
    padding: 0;
}
.page-content ul li {
    margin-bottom: .25rem;
}
.page-content ul li:last-child {
    margin-bottom: 0;
} 


/**** Breadcrumb****/

/* Breadcrumb allgemeine Schriftgrösse */
#breadcrumbs span,
#breadcrumbs a {
    font-size: 1.3125rem; /* 21px in rem */
}

/* Farbe der normalen Links */
#breadcrumbs a {
    color: #3C3C3C;
    text-decoration: none;
    transition: color 0.3s ease; /* sanfte Farbänderung beim Hover */
}

/* Hover-Farbe der Links */
#breadcrumbs a:hover {
    color: #E50000;
}

/* Farbe der aktuellen Seite */
#breadcrumbs .breadcrumb_last {
    color: #E50000;
}

/* Abstand zwischen Text und Trennstrich */
#breadcrumbs span + span::before {
    content: "|";
    margin: 0 1rem; /* 16px in rem */
    color: #3C3C3C;
}

/* Abstand zum Header */
#breadcrumbs {
    margin-top: 4.5rem; /* 72px in rem */
}

/* Arrow ausblenden */
.elementor-nav-menu .sub-arrow {
    display: none !important;
}

.sm--rounded-16 {
    border-radius: 1rem;
}

.sm--rounded-16-top {
    border-radius: 1rem 1rem 0 0;
}

.sm--rounded-8 {
    border-radius: 0.5rem;
}

/*** Product List ***/
/* Container der Feature-Liste */
.product-feature-list .elementor-icon-list-items {
    border-top: 1px dashed #3C3C3C; /* Border top für die ganze Liste */
    padding-top: 6px; /* Abstand zum oberen Rand */
}

/* Alle Listeneinträge */
.product-feature-list .elementor-icon-list-item {
    position: relative;
    padding-left: 36px !important;
    padding-top: 6px;
    padding-bottom: 6px;
    border-bottom: 1px dashed #3C3C3C; /* Border bottom für alle Items, inklusive letztem */
}

/* Icon vor jedem Listeneintrag */
.product-feature-list .elementor-icon-list-item::before {
    content: '';
    position: absolute;
    left: 0;
    top: 1.275rem;
    transform: translateY(-50%);
    width: 24px;
    height: 24px;
    background-image: url("data:image/svg+xml;utf8,<svg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'><circle cx='12' cy='12' r='9' stroke='%233C3C3C'/><path d='M8 12L11 15L16 9' stroke='%233C3C3C'/></svg>");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

/*** Product CTA ***/
.product-cta .elementor-button-content-wrapper {
    display: flex;
    align-items: center; /* vertikal zentrieren */
    gap: 8px; /* Abstand zwischen Icon und Text */
    position: relative;
}

.product-cta .elementor-button-content-wrapper::before {
    content: '';
    display: inline-block;
    width: 24px;
    height: 24px;
    background-image: url("data:image/svg+xml;utf8,<svg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'><path d='M20 12L20.7071 11.2929L21.4142 12L20.7071 12.7071L20 12ZM5 13C4.44771 13 4 12.5523 4 12C4 11.4477 4.44771 11 5 11V12V13ZM14 6L14.7071 5.29289L20.7071 11.2929L20 12L19.2929 12.7071L13.2929 6.70711L14 6ZM20 12L20.7071 12.7071L14.7071 18.7071L14 18L13.2929 17.2929L19.2929 11.2929L20 12ZM20 12V13H5V12V11H20V12Z' fill='white'/></svg>");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

.product-cta a:hover {
    background-color: #fd0201 !important;
    
}


/*** HEADER ***/

/* Abstand zwischen den Menüeinträgen in Rem */
.elementor-nav-menu > li {
    margin-right: 1rem; /* 16px entspricht 1rem bei 16px Root */
}

/* Optional: Letztes List-Item keinen rechten Abstand geben */
.elementor-nav-menu > li:last-child {
    margin-right: 0;
}

/* Navi First: Icon absolut links, Abstand erzwingen */
.elementor-33 .nav-menu-first .elementor-nav-menu > li > a {
    position: relative;            /* nötig für das ::before absolut */
    padding-left: 2rem !important; /* Abstand für Icon + Text, hier 2rem = ~32px */
}

/* Grundstil Icon */
.elementor-33 .nav-menu-first .elementor-nav-menu > li > a::before {
    content: url("data:image/svg+xml;utf8,<svg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'><path d='M20 12L20.7071 11.2929L21.4142 12L20.7071 12.7071L20 12ZM5 13C4.44771 13 4 12.5523 4 12C4 11.4477 4.44771 11 5 11V12V13ZM14 6L14.7071 5.29289L20.7071 11.2929L20 12L19.2929 12.7071L13.2929 6.70711L14 6ZM20 12L20.7071 12.7071L14.7071 18.7071L14 18L13.2929 17.2929L19.2929 11.2929L20 12ZM20 12V13H5V12V11H20V12Z' fill='%233C3C3C'/></svg>");
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 24px;
    height: 24px;
    opacity: 1 !important;
    background: transparent !important;
    transition: transform 0.3s ease, filter 0.3s ease;
}

/* Letztes Menü-Item Padding entfernen */
.nav-menu-second .elementor-nav-menu > li:last-child > a,
.nav-menu-first .elementor-nav-menu > li:last-child > a {
    padding-right: 0 !important;
}

/* Hauptmenüpunkte MIT Submenu:
   Icon wird rot und dreht sich */
.elementor-33 .nav-menu-first .elementor-nav-menu > li.menu-item-has-children:hover > a::before,
.nav-menu-first .elementor-nav-menu > li.menu-item-has-children.current-menu-ancestor > a::before,
.nav-menu-first .elementor-nav-menu > li.menu-item-has-children.current-menu-parent > a::before,
.nav-menu-first .elementor-nav-menu > li.menu-item-has-children.current-product_category-ancestor > a::before,
.nav-menu-first .elementor-nav-menu > li.menu-item-has-children.current-product_category-parent > a::before {
    filter: invert(11%) sepia(97%) saturate(7026%) hue-rotate(355deg) brightness(100%) contrast(101%);
    transform: translateY(-50%) rotate(90deg);
    top: 50%;
}

/* Hauptmenüpunkte OHNE Submenu:
   Hover = Icon wird rot, dreht sich aber nicht */
.elementor-33 .nav-menu-first .elementor-nav-menu > li:not(.menu-item-has-children):hover > a::before,
.elementor-33 .nav-menu-first .elementor-nav-menu > li:not(.menu-item-has-children) > a:hover::before {
    filter: invert(11%) sepia(97%) saturate(7026%) hue-rotate(355deg) brightness(100%) contrast(101%);
    transform: translateY(-50%);
    top: 50%;
}

/* Hauptmenüpunkte OHNE Submenu:
   Active = Icon wird rot und zeigt nach unten */
.elementor-33 .nav-menu-first .elementor-nav-menu > li:not(.menu-item-has-children).current-menu-item > a::before,
.elementor-33 .nav-menu-first .elementor-nav-menu > li:not(.menu-item-has-children) > a.elementor-item-active::before {
    filter: invert(11%) sepia(97%) saturate(7026%) hue-rotate(355deg) brightness(100%) contrast(101%);
    transform: translateY(-50%) rotate(90deg);
    top: 50%;
}

/* Aktiver Hauptmenüpunkt MIT Submenu:
   Icon nach unten drehen + rot */
.elementor-33 .nav-menu-first .elementor-nav-menu > li.menu-item-has-children > a.elementor-item-active::before {
    transform: translateY(-50%) rotate(90deg);
    filter: invert(11%) sepia(97%) saturate(7026%) hue-rotate(355deg) brightness(100%) contrast(101%);
    top: 50%;
}

/* Aktiver Link: keine Unterstreichung */
.elementor-33 .nav-menu-first .elementor-nav-menu > li > a.elementor-item-active {
    border-bottom: none;
}

/* Optional: Unterpunkte aktiv */
.nav-menu-first .sub-menu li.current-menu-item > a,
.nav-menu-first .sub-menu li > a.elementor-item-active {
    color: #E50000;
    text-decoration: underline;
}

.nav-menu-first .sub-menu li.current-menu-item > a::before,
.nav-menu-first .sub-menu li > a.elementor-item-active::before {
    filter: invert(11%) sepia(97%) saturate(7026%) hue-rotate(355deg) brightness(100%) contrast(101%);
}

/* Submenu Appearence */
.elementor-nav-menu--layout-horizontal .elementor-nav-menu>li ul, .elementor-nav-menu--layout-horizontal .elementor-nav-menu>li>.scroll-down {
    box-shadow: rgba(149, 157, 165, 0.2) 0px 16px 16px;
    background-color: rgba(255,255,255,.9);
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);
    border-radius: 0 0 1rem 1rem;
    overflow: hidden;
    z-index: 9999;
}

/* Submenu Links */
.elementor-nav-menu .sub-menu li a {
    display: flex;
    align-items: center;
    gap: 0.625rem; /* 10px */

    color: #3C3C3C;
    text-decoration: none;
    background: transparent !important;
    border-bottom: 1px solid transparent;
    padding: 0.75rem 1.25rem;

    /* Submenu Schrift */
    font-weight: 700 !important;
    font-size: 1.125rem !important; /* 18px */
}

.elementor-nav-menu .sub-menu {
    border-radius: 0 0 1rem 1rem; /* 16px unten */
}

/* SVG vor Text */
.elementor-nav-menu .sub-menu li a::before {
    content: "";
    width: 1.125rem;  /* 18px */
    height: 0.875rem; /* 14px */
    display: inline-block;
    flex-shrink: 0;

    background: url("data:image/svg+xml,%3Csvg width='18' height='14' viewBox='0 0 18 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16 6.70703L16.7071 5.99992L17.4142 6.70703L16.7071 7.41414L16 6.70703ZM1 7.70703C0.447715 7.70703 0 7.25932 0 6.70703C0 6.15475 0.447715 5.70703 1 5.70703V6.70703V7.70703ZM10 0.707031L10.7071 -7.55191e-05L16.7071 5.99992L16 6.70703L15.2929 7.41414L9.29289 1.41414L10 0.707031ZM16 6.70703L16.7071 7.41414L10.7071 13.4141L10 12.707L9.29289 11.9999L15.2929 5.99992L16 6.70703ZM16 6.70703V7.70703H1V6.70703V5.70703H16V6.70703Z' fill='%233C3C3C'/%3E%3C/svg%3E") no-repeat center;

    background-size: contain;
    transition: all 0.3s ease;
}

/* Hover Zustand */
.elementor-nav-menu .sub-menu li a:hover {
    color: #E50000;
    background: transparent !important;
    text-decoration: none;
}
.elementor-nav-menu--main .elementor-nav-menu a, .elementor-nav-menu--main .elementor-nav-menu a.highlighted, .elementor-nav-menu--main .elementor-nav-menu a:focus, .elementor-nav-menu--main .elementor-nav-menu a:hover {
    padding: 12px 20px;
}

/* Default Position */
.elementor-nav-menu .sub-menu {
    transform: translateX(0);
    transition: transform 0.3s ease;
}

/* Beim Hover nach links */
.elementor-nav-menu > li:hover > .sub-menu {
    transform: translateX(-20px);
}

/* Submenu dauerhaft leicht nach links versetzen */
.elementor-nav-menu > li > .sub-menu {
    transform: translateX(-20px);
}

/* SVG wird rot */
.elementor-nav-menu .sub-menu li a:hover::before {
    background: url("data:image/svg+xml,%3Csvg width='18' height='14' viewBox='0 0 18 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16 6.70703L16.7071 5.99992L17.4142 6.70703L16.7071 7.41414L16 6.70703ZM1 7.70703C0.447715 7.70703 0 7.25932 0 6.70703C0 6.15475 0.447715 5.70703 1 5.70703V6.70703V7.70703ZM10 0.707031L10.7071 -7.55191e-05L16.7071 5.99992L16 6.70703L15.2929 7.41414L9.29289 1.41414L10 0.707031ZM16 6.70703L16.7071 7.41414L10.7071 13.4141L10 12.707L9.29289 11.9999L15.2929 5.99992L16 6.70703ZM16 6.70703V7.70703H1V6.70703V5.70703H16V6.70703Z' fill='%23E50000'/%3E%3C/svg%3E") no-repeat center;
}

/* Navi 2 Styles */
.elementor-33 .nav-menu-second .elementor-nav-menu > li > a {
    color: #C5C5C5;
    text-transform: uppercase;
}

/* Hover ohne Unterstrich */
.elementor-33 .nav-menu-second .elementor-nav-menu > li > a:hover::after {
    display: none !important;
}

.nav-menu-first .elementor-nav-menu > li > a::after {
    display: none !important;
}

/* Header Outer Container */
.elementor-33 {
    max-width: 90rem;       /* 1440px */
    margin-left: auto;
    margin-right: auto;
    width: 100%;
}

/* Innerer e-parent Container */
.elementor-33 .e-con-full.e-flex.e-con.e-parent {
    max-width: 77.5rem;     /* 1240px */
    margin-left: auto;
    margin-right: auto;
    width: 100%;
}

/*** FOOTER***/

/* Grundsetup für beide */
.link-email,
.link-phone {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem; /* Abstand Icon → Text */
}

/* EMAIL ICON */
.link-email::before {
    content: "";
    width: 24px;
    height: 24px;
    display: inline-block;

    background: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M21 12C21 10.1195 20.411 8.28625 19.3156 6.7577C18.2203 5.22915 16.6736 4.08209 14.893 3.47763C13.1123 2.87316 11.187 2.84166 9.38744 3.38754C7.58792 3.93341 6.00459 5.02925 4.85982 6.52115C3.71505 8.01304 3.06635 9.82604 3.00482 11.7055C2.94329 13.585 3.47203 15.4366 4.51677 17.0001C5.56152 18.5637 7.06979 19.7608 8.82975 20.4232C10.5897 21.0856 12.513 21.18 14.3294 20.6933' stroke='%2333363F' stroke-width='2' stroke-linecap='round'/%3E%3Ccircle cx='12' cy='12' r='4' stroke='%2333363F' stroke-width='2'/%3E%3Cpath d='M16 9V13.5C16 14.8807 17.1193 16 18.5 16C19.8807 16 21 14.8807 21 13.5V12' stroke='%2333363F' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat center;
    background-size: contain;
}

/* TELEFON ICON */
.link-phone::before {
    content: "";
    width: 24px;
    height: 24px;
    display: inline-block;

    background: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6.67962 3.32038L7.29289 2.70711C7.68342 2.31658 8.31658 2.31658 8.70711 2.70711L11.2929 5.29289C11.6834 5.68342 11.6834 6.31658 11.2929 6.70711L9.50048 8.49952C9.2016 8.7984 9.1275 9.255 9.31653 9.63307C10.4093 11.8186 12.1814 13.5907 14.3669 14.6835C14.745 14.8725 15.2016 14.7984 15.5005 14.4995L17.2929 12.7071C17.6834 12.3166 18.3166 12.3166 18.7071 12.7071L21.2929 15.2929C21.6834 15.6834 21.6834 16.3166 21.2929 16.7071L20.6796 17.3204C18.5683 19.4317 15.2257 19.6693 12.837 17.8777L11.6286 16.9714C9.88504 15.6638 8.33622 14.115 7.02857 12.3714L6.12226 11.163C4.33072 8.7743 4.56827 5.43173 6.67962 3.32038Z' fill='%23222222'/%3E%3C/svg%3E") no-repeat center;
    background-size: contain;
}

/* Email mit Underline */
.link-email {
    text-decoration: underline !important;
    color: #3C3C3C;
}

/* Telefon ohne Underline */
.link-phone {
    text-decoration: none;
    color: #3C3C3C;
}

/* Footer Menu SVG vor Links */
.footer-menu .elementor-nav-menu > li > a {
    position: relative;           /* nötig, falls wir ::before absolut nutzen wollen */
    padding-left: 2rem !important; /* Platz für das Icon */
}
.footer-menu .elementor-nav-menu > li > a:hover {
    text-decoration: underline !important;
}

.footer-menu .elementor-nav-menu > li > a::before {
    content: url("data:image/svg+xml;utf8,<svg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'><path d='M20 12L20.7071 11.2929L21.4142 12L20.7071 12.7071L20 12ZM5 13C4.44771 13 4 12.5523 4 12C4 11.4477 4.44771 11 5 11V12V13ZM14 6L14.7071 5.29289L20.7071 11.2929L20 12L19.2929 12.7071L13.2929 6.70711L14 6ZM20 12L20.7071 12.7071L14.7071 18.7071L14 18L13.2929 17.2929L19.2929 11.2929L20 12ZM20 12V13H5V12V11H20V12Z' fill='%233C3C3C'/></svg>");
    display: inline-block;
    width: 24px;
    height: 24px;
    vertical-align: middle;
    position: absolute; /* absolut links im Link */
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    opacity: 1 !important;
    background: transparent!important;
}

/***** Produkt Category Teaser *****/
.sm--category-teaser p:last-child { margin-bottom: 0; }

/**** Produkt Page****/
/* ULs für die Produktlisten */
.sm-product-features,
.sm-product-purpose,
.sm-product-specifications {
    list-style: none; /* Bullets entfernen */
    margin: 0;
    padding: 0;
}

/* LIs: Flex für Icon + Text */
.sm-product-features li,
.sm-product-purpose li,
.sm-product-specifications li {
    display: flex;
    align-items: flex-start;       /* Icon oben am Text */
    gap: 0.625rem;                 /* 10px Abstand zwischen Icon und Text */
    padding-top: 0.5rem;           /* 8px Abstand oben der Border */
    padding-bottom: 0.5rem;        /* 8px Abstand unten der Border */
    border-bottom: 1px dotted #ccc; /* Alle LIs bekommen bottom border */
}

/* Erstes LI: Border Top */
.sm-product-features li:first-child,
.sm-product-purpose li:first-child,
.sm-product-specifications li:first-child {
    border-top: 1px dotted #ccc;
}

/* SVG direkt im Flow, keine absolute Position */
.sm-product-features li svg,
.sm-product-purpose li svg,
.sm-product-specifications li svg {
    flex-shrink: 0;        /* SVG bleibt fix */
    width: 0.5rem;         /* optional: Grösse anpassen */
    height: 1rem;          /* optional: Höhe anpassen */
}

.sm-product-dimensions {
    list-style: none;
    padding-left: 0;
    margin: 0;
    border-top: 1px dashed #C5C5C5;
}

.sm-product-dimensions-item {
    display: flex;
    align-items: flex-start; /* oben ausrichten */
    border-bottom: 1px dashed #C5C5C5;
    padding: 0.5rem 0; /* Abstand oben/unten */
}

.sm-product-icon {
    display: inline-flex;
    margin-right: 0.625rem; /* 10px in rem */
    flex-shrink: 0;
}

.sm-product-dimensions-text {
    display: flex;
    flex-direction: column; /* Label über Wert */
}

.dimension-label {
    font-weight: 600; /* optional, hervorheben */
}

.dimension-value {
    font-weight: 400;
}

.sm-product-features {
    list-style: none; /* Punkte entfernen */
    margin: 0;
    padding: 0;
}

.sm-product-features .sm-feature-item {
    display: flex;
    align-items: flex-start; /* SVG oben an Text ausrichten */
    gap: 0.625rem; /* 10px Abstand zwischen SVG und Text */
    margin-bottom: 0.5rem; /* Abstand zwischen Items, optional */
}

.sm-product-features .sm-feature-item svg {
    flex-shrink: 0; /* SVG darf nicht schrumpfen */
    width: 1.5rem; /* 24px in rem */
    height: 1.5rem; /* 24px in rem */
    margin-top: 5px;
}

.sm-feature-text{
    color: #3C3C3C !important;
    font-size: 1.3125rem;
}

.btn-text-with-icon {
    display: inline-flex;       /* Flexbox für die Ausrichtung */
    align-items: center;        /* Vertikal zentrieren */
}

.btn-text-with-icon .elementor-heading-title::before {
    content: url('data:image/svg+xml;utf8,<svg width="18" height="14" viewBox="0 0 18 14" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M16 6.70703L16.7071 5.99992L17.4142 6.70703L16.7071 7.41414L16 6.70703ZM1 7.70703C0.447715 7.70703 0 7.25932 0 6.70703C0 6.15475 0.447715 5.70703 1 5.70703V6.70703V7.70703ZM10 0.707031L10.7071 -7.55191e-05L16.7071 5.99992L16 6.70703L15.2929 7.41414L9.29289 1.41414L10 0.707031ZM16 6.70703L16.7071 7.41414L10.7071 13.4141L10 12.707L9.29289 11.9999L15.2929 5.99992L16 6.70703ZM16 6.70703V7.70703H1V6.70703V5.70703H16V6.70703Z" fill="%233C3C3C"/></svg>');
    display: inline-block;
    width: 18px;
    height: 14px;
    margin-right: 0.625rem;  /* 10px Abstand in rem */
}


/****** FORMULARE****/

.elementor-form .elementor-field-label {
    font-size: 1rem !important;
    margin-bottom: 0.325rem!important;
}

/* Placeholder Schrift */
.elementor-form input::placeholder,
.elementor-form textarea::placeholder {
    font-size: 1rem !important;
}

/* Submit Button */
.elementor-form .elementor-button {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;

    border-radius: 0.5rem; /* 8px */
    font-weight: 700 !important;
    font-size: 1.3125rem !important; /* 21px */
    padding: 0.75rem 2rem; /* 12px 32px */
    margin-top: 1.75rem;

}

.elementor-form .elementor-button::before {
    content: "";
    width: 1.125rem;  /* 18px */
    height: 0.875rem; /* 14px */
    display: inline-block;

    background: url("data:image/svg+xml,%3Csvg width='18' height='14' viewBox='0 0 18 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16 6.70703L16.7071 5.99992L17.4142 6.70703L16.7071 7.41414L16 6.70703ZM1 7.70703C0.447715 7.70703 0 7.25932 0 6.70703C0 6.15475 0.447715 5.70703 1 5.70703V6.70703V7.70703ZM10 0.707031L10.7071 -7.55191e-05L16.7071 5.99992L16 6.70703L15.2929 7.41414L9.29289 1.41414L10 0.707031ZM16 6.70703L16.7071 7.41414L10.7071 13.4141L10 12.707L9.29289 11.9999L15.2929 5.99992L16 6.70703ZM16 6.70703V7.70703H1V6.70703V5.70703H16V6.70703Z' fill='white'/%3E%3C/svg%3E") no-repeat center;

    background-size: contain;
}


/**** Servie Cards ****/

/* CARD HOVER */
.service-cards a {
    transition: all 0.3s ease;
}

/* Background */
.service-cards a:hover {
    background-color: #E5E5E5 !important;
}

/* Titel */
.service-cards a:hover h3 {
    color: #E50000 !important;
}

/* Mehr erfahren */
.service-cards a:hover .btn-text-with-icon .elementor-heading-title {
    color: #E50000 !important;
    text-decoration: underline !important;
}

/* Service Cards Transition */
.service-cards a {
    transition: background-color 0.3s ease, border-color 0.3s ease;
}

.service-cards h3,
.service-cards .btn-text-with-icon .elementor-heading-title {
    transition: color 0.3s ease, text-decoration-color 0.3s ease;
}

.service-cards .btn-text-with-icon .elementor-heading-title::before {
    transition: background 0.3s ease;
}

/* Icon Default */
.service-cards .btn-text-with-icon .elementor-heading-title::before {
    content: "";
    display: inline-block;
    width: 1.125rem;
    height: 0.875rem;
    margin-right: 0.5rem;

    background: url("data:image/svg+xml,%3Csvg width='18' height='14' viewBox='0 0 18 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16 6.70703L16.7071 5.99992L17.4142 6.70703L16.7071 7.41414L16 6.70703ZM1 7.70703C0.447715 7.70703 0 7.25932 0 6.70703C0 6.15475 0.447715 5.70703 1 5.70703V6.70703V7.70703ZM10 0.707031L10.7071 -7.55191e-05L16.7071 5.99992L16 6.70703L15.2929 7.41414L9.29289 1.41414L10 0.707031ZM16 6.70703L16.7071 7.41414L10.7071 13.4141L10 12.707L9.29289 11.9999L15.2929 5.99992L16 6.70703ZM16 6.70703V7.70703H1V6.70703V5.70703H16V6.70703Z' fill='%233C3C3C'/%3E%3C/svg%3E") no-repeat center;
    background-size: contain;

    transition: all 0.3s ease;
}

/* Icon Hover */
.service-cards a:hover .btn-text-with-icon .elementor-heading-title::before {
    background: url("data:image/svg+xml,%3Csvg width='18' height='14' viewBox='0 0 18 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16 6.70703L16.7071 5.99992L17.4142 6.70703L16.7071 7.41414L16 6.70703ZM1 7.70703C0.447715 7.70703 0 7.25932 0 6.70703C0 6.15475 0.447715 5.70703 1 5.70703V6.70703V7.70703ZM10 0.707031L10.7071 -7.55191e-05L16.7071 5.99992L16 6.70703L15.2929 7.41414L9.29289 1.41414L10 0.707031ZM16 6.70703L16.7071 7.41414L10.7071 13.4141L10 12.707L9.29289 11.9999L15.2929 5.99992L16 6.70703ZM16 6.70703V7.70703H1V6.70703V5.70703H16V6.70703Z' fill='%23E50000'/%3E%3C/svg%3E") no-repeat center;
}


/* Product Cards */
.product-cards a {
    transition: all 0.3s ease;
    border: 1px solid transparent;
}

/* Ganze Card Hover */
.product-cards a:hover {
    border: 1px solid #E50000 !important;
}

/* Titel rot */
.product-cards a:hover h2,
.product-cards a:hover .elementor-heading-title {
    color: #E50000 !important;
}

/* Mehr erfahren Text rot */
.product-cards a:hover .btn-text-with-icon .elementor-heading-title {
    color: #E50000 !important;
}

/* Icon vor "Mehr erfahren" */
.product-cards .btn-text-with-icon .elementor-heading-title::before {
    content: "";
    display: inline-block;
    width: 1.125rem;   /* 18px */
    height: 0.875rem;  /* 14px */
    margin-right: 0.5rem;
    vertical-align: middle;

    background: url("data:image/svg+xml,%3Csvg width='18' height='14' viewBox='0 0 18 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16 6.70703L16.7071 5.99992L17.4142 6.70703L16.7071 7.41414L16 6.70703ZM1 7.70703C0.447715 7.70703 0 7.25932 0 6.70703C0 6.15475 0.447715 5.70703 1 5.70703V6.70703V7.70703ZM10 0.707031L10.7071 -7.55191e-05L16.7071 5.99992L16 6.70703L15.2929 7.41414L9.29289 1.41414L10 0.707031ZM16 6.70703L16.7071 7.41414L10.7071 13.4141L10 12.707L9.29289 11.9999L15.2929 5.99992L16 6.70703ZM16 6.70703V7.70703H1V6.70703V5.70703H16V6.70703Z' fill='%233C3C3C'/%3E%3C/svg%3E") no-repeat center;
    background-size: contain;

    transition: all 0.3s ease;
}

/* Icon rot beim Hover */
.product-cards a:hover .btn-text-with-icon .elementor-heading-title::before {
    background: url("data:image/svg+xml,%3Csvg width='18' height='14' viewBox='0 0 18 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16 6.70703L16.7071 5.99992L17.4142 6.70703L16.7071 7.41414L16 6.70703ZM1 7.70703C0.447715 7.70703 0 7.25932 0 6.70703C0 6.15475 0.447715 5.70703 1 5.70703V6.70703V7.70703ZM10 0.707031L10.7071 -7.55191e-05L16.7071 5.99992L16 6.70703L15.2929 7.41414L9.29289 1.41414L10 0.707031ZM16 6.70703L16.7071 7.41414L10.7071 13.4141L10 12.707L9.29289 11.9999L15.2929 5.99992L16 6.70703ZM16 6.70703V7.70703H1V6.70703V5.70703H16V6.70703Z' fill='%23E50000'/%3E%3C/svg%3E") no-repeat center;
    background-size: contain;
}

.product-cards .btn-text-with-icon .elementor-heading-title {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem; /* 🔥 8px */
}

/* Smooth Transition für Titel + CTA */
.product-cards h2,
.product-cards .btn-text-with-icon .elementor-heading-title,
.product-cards .btn-text-with-icon .elementor-heading-title::before,
.product-cards a {
    transition: color 0.3s ease, border-color 0.3s ease, background 0.3s ease;
}

.nav-menu-first .elementor-nav-menu > li.current-menu-ancestor > a,
.nav-menu-first .elementor-nav-menu > li.current-menu-parent > a,
.nav-menu-first .elementor-nav-menu > li.current-product_category-ancestor > a,
.nav-menu-first .elementor-nav-menu > li.current-product_category-parent > a {
    color: #E50000;
}

.nav-menu-first .elementor-nav-menu > li.current-menu-ancestor > a::before,
.nav-menu-first .elementor-nav-menu > li.current-menu-parent > a::before,
.nav-menu-first .elementor-nav-menu > li.current-product_category-ancestor > a::before,
.nav-menu-first .elementor-nav-menu > li.current-product_category-parent > a::before {
    filter: invert(11%) sepia(97%) saturate(7026%) hue-rotate(355deg) brightness(100%) contrast(101%);
    transform: rotate(90deg);
    /* top: unset !important; */
}

/* Text */
.nav-menu-first .sub-menu li.current-menu-item > a,
.nav-menu-first .sub-menu li > a.elementor-item-active {
    color: #E50000;
    text-decoration: underline;
}

/* Icon (::before) */
.nav-menu-first .sub-menu li.current-menu-item > a::before,
.nav-menu-first .sub-menu li > a.elementor-item-active::before {
    filter: invert(11%) sepia(97%) saturate(7026%) hue-rotate(355deg) brightness(100%) contrast(101%);
}

.product-card__title {
    font-weight: 900;
    font-size: 3rem; /* 48px */
    line-height: 1.2;
    letter-spacing: 0;
}

/* --- Fade in on viewport ---*/
html.reveal-js-enabled .side-spacer {
  opacity: 0;
  transform: translateY(24px);
  transition:
  opacity 700ms ease,
  transform 700ms ease;
  will-change: opacity, transform;
}

html.reveal-js-enabled .side-spacer.is-visible {
  opacity: 1;
  transform: translateY(0);
}

/* Accessibility */
@media (prefers-reduced-motion: reduce) {
  html.reveal-js-enabled .side-spacer {
    opacity: 1;
    transform: none;
    transition: none;
  }
}



/* Tablet */

@media (max-width: 1024px) {
    .product-card__title {
        font-size: 2.5rem; /* 40px */
    }
}
/* Mobile */
@media (max-width: 767px) {
    .product-card__title {
        font-size: 2rem; /* 32px */
    }
}

.btn-text-with-icon {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    font-weight: 700;
    font-size: 1.3125rem; /* 21px */
    line-height: 1.2;
    letter-spacing: 0.01em;
    text-align: right;
}

/* Laptop */
@media (max-width: 1240px) {
    .side-spacer {
        padding-left: 1rem;
        padding-right: 1rem;
    }   
}


/* Tablet */

@media (max-width: 1024px) {
    .btn-text-with-icon {
        font-size: 1.1875rem; /* 19px */
    }
}

/* Mobile */

@media (max-width: 767px) {
    .elementor-heading-title {
        hyphens: auto;
    }
    .btn-text-with-icon {
        font-size: 1.0625rem; /* 17px */
        margin-top: 0;
    }
    .disclaimer-link {
        border: 0 !important;
        padding-left: 0 !important;
    }
}



/* Responsive Styles Header */
@media (min-width: 1024px) and (max-width: 1240px) {

    .elementor-nav-menu > li {
        margin-right: 0;
    }
    header .nav-menu-first .elementor-nav-menu > li.menu-item > a {
        font-size: 1.125rem !important;
        padding-left: 1.75rem !important;
    }

}

/* Google reCAPTCHA */


.grecaptcha-badge {

    display: none !important;

}

.grecaptcha-info {

    color: #fff;

    font-size: 14px;

    line-height: 1.5;

    overflow-wrap: break-word;

    word-break: break-word;

}

.grecaptcha-link,

.grecaptcha-link:visited,

.grecaptcha-link:hover,

.grecaptcha-link:focus,

.grecaptcha-link:active {

    color: #fff !important;

    text-decoration: underline !important;

}

/* Google reCAPTCHA END *//* End custom CSS */