.elementor-kit-207{--e-global-color-primary:#DC261A;--e-global-color-secondary:#FFFFFF;--e-global-color-text:#000000;--e-global-color-accent:#191919;--e-global-typography-primary-font-family:"IBM Plex Sans";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"IBM Plex Sans";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"IBM Plex Sans";--e-global-typography-text-font-size:18px;--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"IBM Plex Sans";--e-global-typography-accent-font-weight:500;--e-global-typography-0fbd011-font-family:"IBM Plex Sans";--e-global-typography-0fbd011-font-size:50px;--e-global-typography-0fbd011-font-weight:700;font-family:"IBM Plex Sans", Sans-serif;}.elementor-kit-207 button,.elementor-kit-207 input[type="button"],.elementor-kit-207 input[type="submit"],.elementor-kit-207 .elementor-button{background-color:#DC261A;text-transform:uppercase;color:#FFFFFF;}.elementor-kit-207 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-207{--e-global-typography-text-font-size:18px;--e-global-typography-0fbd011-font-size:35px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-207{--e-global-typography-text-font-size:18px;--e-global-typography-0fbd011-font-size:25px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS */.product {
  transition: all 0.35s ease;
  border-radius: 20px;
}

product:hover {
  transform: translateY(-10px) scale(1.02);
  box-shadow: 0 25px 60px rgba(0,0,0,0.15);
}

:root {
    --ct-red: #CA3A2A;
    --ct-red-hover: #A82F22;
    --ct-black: #000000;
    --ct-white: #FFFFFF;
    --ct-bg: #F6F6F6;
    --ct-font: 'IBM Plex Sans', Arial, sans-serif;
}

/* Generische Resets für Theme-Wrapper, damit volle Höhe zur Zentrierung nutzbar ist */
body.post-password-required #content,
body.post-password-required .site-content,
body.post-password-required main,
body.post-password-required .entry-content {
    padding: 0 !important;
    margin: 0 !important;
}

/* Passwort Sektion */
.post-password-required {
    min-height: 100vh !important;
    height: auto !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    background-color: var(--ct-bg) !important;
    max-width: 100% !important;
    padding: 80px 20px !important;
    box-sizing: border-box !important;
    font-family: var(--ct-font) !important;
}

/* Formular-Container als weiße Card */
.post-password-form {
    margin-top: 0 !important;
    background: var(--ct-white) !important;
    padding: 50px 55px !important;
    max-width: 480px !important;
    width: 100% !important;
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.08) !important;
    box-sizing: border-box !important;
}

/* Überschrift */
.post-password-required h1 {
    text-align: center !important;
    color: var(--ct-black) !important;
    font-family: var(--ct-font) !important;
    font-weight: 700 !important;
    margin-bottom: 30px !important;
    letter-spacing: -0.5px !important;
}

/* Alle Inhalte / Beschreibung */
.post-password-form p {
    justify-content: center !important;
    text-align: center !important;
}

.post-password-form p:nth-child(3) {
    font-size: 18px !important;
    text-align: center !important;
    color: var(--ct-black) !important;
    font-family: var(--ct-font) !important;
}

/* Input Form Block */
.post-password-form p:nth-child(4) {
    margin-top: 30px !important;
}

/* Input Label */
.post-password-form label {
    font-size: 15px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    color: var(--ct-black) !important;
    font-family: var(--ct-font) !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 10px !important;
}

/* Input Feld – eckig */
.post-password-form label input {
    border: 1px solid #ccc !important;
    border-radius: 0 !important;
    padding: 14px 16px !important;
    margin-top: 0 !important;
    width: 100% !important;
    max-width: 300px !important;
    font-size: 16px !important;
    font-family: var(--ct-font) !important;
    transition: border-color 0.2s ease;
}

.post-password-form label input:focus {
    outline: none !important;
    border-color: var(--ct-red) !important;
}

/* Button */
.post-password-form input[type="submit"] {
    font-size: 15px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    padding: 14px 34px !important;
    margin-top: 22px !important;
    background-color: var(--ct-red) !important;
    color: var(--ct-white) !important;
    border: none !important;
    border-radius: 0 !important;
    cursor: pointer !important;
    transition: background-color 0.2s ease;
    font-family: var(--ct-font) !important;
}

.post-password-form input[type="submit"]:hover {
    background-color: var(--ct-red-hover) !important;
}

/* Mobile Anpassung */
@media only screen and (max-width: 767px) {
    .post-password-required {
        padding: 40px 20px !important;
    }
    .post-password-required h1 {
        font-size: 32px !important;
    }
    .post-password-form {
        padding: 32px 28px !important;
    }
}

/* Entferne Entry Title auf Inhaltsseite */
.post-password-protected .entry-title {
    display: none !important;
}/* End custom CSS */