.elementor-kit-8{--e-global-color-primary:#FFFFFF;--e-global-color-secondary:#CC8314;--e-global-color-text:#00030C;--e-global-color-accent:#FFFFFF;--e-global-color-1b9a5fb:#FFFFFF;--e-global-color-8700abe:#CC8314;--e-global-color-287f38a:#EAA130;--e-global-color-46a3029:#CC8314;--e-global-typography-primary-font-family:"Arvo";--e-global-typography-secondary-font-family:"Arvo";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Arvo";--e-global-typography-accent-font-family:"Arvo";color:var( --e-global-color-text );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;overscroll-behavior:auto;}.elementor-kit-8 e-page-transition{background-color:#FFBC7D;}.elementor-kit-8 a{color:var( --e-global-color-text );font-family:"Arvo", Sans-serif;}.elementor-kit-8 a:hover{font-family:"Arvo", Sans-serif;}.elementor-kit-8 h1{color:var( --e-global-color-secondary );font-family:"Arvo", Sans-serif;font-size:61px;font-weight:700;font-style:normal;text-decoration:none;line-height:1.1em;letter-spacing:-1px;word-spacing:0px;}.elementor-kit-8 h2{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;}.elementor-kit-8 h3{color:var( --e-global-color-text );font-size:39px;line-height:1.2em;letter-spacing:-0.015px;}.elementor-kit-8 h4{color:var( --e-global-color-text );font-size:31px;letter-spacing:-0.012px;}.elementor-kit-8 h5{color:var( --e-global-color-1b9a5fb );font-size:25px;line-height:1.4em;}.elementor-kit-8 h6{color:var( --e-global-color-1b9a5fb );font-size:20px;line-height:1.5em;letter-spacing:-0.005px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1500px;}.e-con{--container-max-width:1500px;}.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);}@media(max-width:1024px){.elementor-kit-8 h1{font-size:41px;line-height:1.2em;letter-spacing:-1px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-8 h1{font-size:22px;line-height:1.2em;letter-spacing:-1px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* ==========================================================================
   MASTER CSS - KJP WIEN (Update V3 - Compact & Readable)
   P = 18px, Headings = -25% (Smaller)
   ========================================================================== */

/* 1. KONFIGURATION
   -------------------------------------------------------------------------- */
:root {
    /* --- BASIS --- */
    --kjp-font: "Arvo", serif;
    --kjp-weight-bold: 700;
    --kjp-weight-normal: 400;

    /* --- H1 (Haupttitel) - Kompakt --- */
    /* Vorher ~41px/61px -> Jetzt 34px */
    --h1-sz-d: 34px; --h1-sz-t: 30px; --h1-sz-m: 26px;
    --h1-lh-d: 1.1em; --h1-lh-t: 1.2em; --h1-lh-m: 1.2em;
    --h1-ls: -0.5px;

    /* --- H2 (Sektionen) --- */
    /* Vorher ~31px/49px -> Jetzt 28px */
    --h2-sz-d: 28px; --h2-sz-t: 26px; --h2-sz-m: 24px;
    --h2-lh-d: 1.2em; --h2-lh-t: 1.25em;--h2-lh-m: 1.3em;
    --h2-ls: -0.3px;

    /* --- H3 (Karten) --- */
    /* Vorher ~39px -> Jetzt 24px (Harmonisch zu H2) */
    --h3-sz-d: 24px; --h3-sz-t: 22px; --h3-sz-m: 21px;
    --h3-lh-d: 1.3em; --h3-lh-t: 1.3em; --h3-lh-m: 1.3em;
    --h3-ls: 0px;

    /* --- H4 bis H6 (Feinabstimmung nahe am Text) --- */
    --h4-sz-d: 22px; --h4-sz-t: 21px; --h4-sz-m: 20px;
    --h5-sz-d: 20px; --h5-sz-t: 19px; --h5-sz-m: 18px;
    --h6-sz-d: 19px; --h6-sz-t: 18px; --h6-sz-m: 17px;

    /* --- FLIESSTEXT (P) - VERGRÖSSERT --- */
    /* Desktop jetzt 18px für gute Lesbarkeit */
    --p-sz-d:  18px; 
    --p-sz-t:  18px; 
    --p-sz-m:  16px; /* Mobil 16px, damit es nicht zu riesig wirkt */
}

/* 2. GLOBALE SCHRIFTART & GEWICHTE
   -------------------------------------------------------------------------- */
:root {
    --e-global-typography-primary-font-family: "Arvo", serif !important;
    --e-global-typography-secondary-font-family: "Arvo", serif !important;
    --e-global-typography-text-font-family: "Arvo", serif !important;
    --e-global-typography-accent-font-family: "Arvo", serif !important;
}

body, p, h1, h2, h3, h4, h5, h6,
.elementor-widget-heading .elementor-heading-title,
.entry-content, div, span, a, li {
    font-family: var(--kjp-font) !important;
}

/* 3. DESKTOP REGELN (Standard)
   -------------------------------------------------------------------------- */
/* H1 */
body h1, body .entry-content h1, .elementor-widget-heading h1.elementor-heading-title { 
    font-size: var(--h1-sz-d) !important; 
    line-height: var(--h1-lh-d) !important;
    letter-spacing: var(--h1-ls) !important;
    font-weight: var(--kjp-weight-bold) !important;
}

/* H2 */
body h2, body .entry-content h2, .elementor-widget-heading h2.elementor-heading-title { 
    font-size: var(--h2-sz-d) !important; 
    line-height: var(--h2-lh-d) !important;
    letter-spacing: var(--h2-ls) !important;
    font-weight: var(--kjp-weight-bold) !important;
}

/* H3 */
body h3, body .entry-content h3, .elementor-widget-heading h3.elementor-heading-title { 
    font-size: var(--h3-sz-d) !important; 
    line-height: var(--h3-lh-d) !important;
    letter-spacing: var(--h3-ls) !important;
    font-weight: var(--kjp-weight-bold) !important;
}

/* H4 - H6 + P */
body h4, body .entry-content h4, .elementor-widget-heading h4.elementor-heading-title { 
    font-size: var(--h4-sz-d) !important; font-weight: var(--kjp-weight-bold) !important; line-height: 1.4em !important;
}
body h5, body .entry-content h5, .elementor-widget-heading h5.elementor-heading-title { 
    font-size: var(--h5-sz-d) !important; font-weight: var(--kjp-weight-bold) !important; line-height: 1.5em !important;
}
body h6, body .entry-content h6, .elementor-widget-heading h6.elementor-heading-title { 
    font-size: var(--h6-sz-d) !important; font-weight: var(--kjp-weight-bold) !important; line-height: 1.5em !important;
}
body p, body .entry-content p, .elementor-widget-text-editor { 
    font-size: var(--p-sz-d) !important; line-height: 1.6em !important;
}


/* 4. TABLET REGELN (max-width: 1024px)
   -------------------------------------------------------------------------- */
@media (max-width: 1024px) {
    body h1, body .entry-content h1, .elementor-widget-heading h1.elementor-heading-title { 
        font-size: var(--h1-sz-t) !important; line-height: var(--h1-lh-t) !important;
    }
    body h2, body .entry-content h2, .elementor-widget-heading h2.elementor-heading-title { 
        font-size: var(--h2-sz-t) !important; line-height: var(--h2-lh-t) !important;
    }
    body h3, body .entry-content h3, .elementor-widget-heading h3.elementor-heading-title { 
        font-size: var(--h3-sz-t) !important; line-height: var(--h3-lh-t) !important;
    }
    body h4, .elementor-widget-heading h4.elementor-heading-title { font-size: var(--h4-sz-t) !important; }
    body h5, .elementor-widget-heading h5.elementor-heading-title { font-size: var(--h5-sz-t) !important; }
    body h6, .elementor-widget-heading h6.elementor-heading-title { font-size: var(--h6-sz-t) !important; }
    body p,  .elementor-widget-text-editor                        { font-size: var(--p-sz-t) !important; }
}


/* 5. MOBILE REGELN (max-width: 767px)
   -------------------------------------------------------------------------- */
@media (max-width: 767px) {
    body h1, body .entry-content h1, .elementor-widget-heading h1.elementor-heading-title { 
        font-size: var(--h1-sz-m) !important; line-height: var(--h1-lh-m) !important;
    }
    body h2, body .entry-content h2, .elementor-widget-heading h2.elementor-heading-title { 
        font-size: var(--h2-sz-m) !important; line-height: var(--h2-lh-m) !important;
    }
    body h3, body .entry-content h3, .elementor-widget-heading h3.elementor-heading-title { 
        font-size: var(--h3-sz-m) !important; line-height: var(--h3-lh-m) !important;
    }
    body h4, .elementor-widget-heading h4.elementor-heading-title { font-size: var(--h4-sz-m) !important; }
    body h5, .elementor-widget-heading h5.elementor-heading-title { font-size: var(--h5-sz-m) !important; }
    body h6, .elementor-widget-heading h6.elementor-heading-title { font-size: var(--h6-sz-m) !important; }
    body p,  .elementor-widget-text-editor                        { font-size: var(--p-sz-m) !important; }
}


/* ==========================================================================
   6. CTA BUTTON STYLES
   ========================================================================== */
:root {
    --btn-bg-color: #2e7d32;
    --btn-bg-hover: #1b5e20;
    --btn-text-color: #ffffff;
    --btn-radius: 6px;
}

.kjp-cta-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    
    font-family: "Arvo", serif !important;
    font-weight: 700 !important;
    font-size: 18px !important; /* Passt jetzt zur neuen Textgröße */
    line-height: 1.2em !important;
    text-decoration: none !important;
    
    background-color: var(--btn-bg-color) !important;
    color: var(--btn-text-color) !important;
    
    padding: 15px 30px;
    border-radius: var(--btn-radius);
    border: none !important;
    
    transition: all 0.3s ease-in-out;
    box-shadow: 0 4px 6px rgba(0,0,0,0.1);
    cursor: pointer;
}

.kjp-cta-btn:hover {
    background-color: var(--btn-bg-hover) !important;
    transform: translateY(-3px);
    box-shadow: 0 8px 15px rgba(0,0,0,0.2);
    color: #ffffff !important;
}

@media (max-width: 767px) {
    .kjp-cta-btn {
        width: 100%;
        font-size: 16px !important;
        padding: 12px 20px;
    }
}

/* Erzwingt Arvo im Cookie Banner */
#rcb-app-container,
#rcb-app-container * {
    font-family: "Arvo", serif !important;
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Arvo';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: url('https://kjp.wien/wp-content/uploads/arvo-v23-latin-regular.woff2') format('woff2');
}
/* End Custom Fonts CSS */