/* ==========================================================================
   BASE – Variables, Resets, Typografie
   (Adapted for Verbundenleben Identity)
   ========================================================================== */

:root {
    /* TYPOGRAPHY - Passend zu deinem Theme */
    --font-body: "Lato", Helvetica, Arial, sans-serif;
    --font-heading: "Playfair Display", Georgia, serif;
    
    --wp--preset--font-size--normal: 1.05rem;
    --wp--style--global--content-size: 100%;

    /* COLORS (Verbundenleben Palette) */
    /* KORRIGIERT: Weinrot statt Grau-Grün */
    --color-primary: #8d2d48;       
    --color-primary-dark: #6b1f34;  
    --color-accent: #d4a5a5;        
    
    --color-text: #4a4a4a;          
    --color-text-dark: #2f2f2f;      
    --color-text-muted: #717171;    

    /* BACKGROUNDS */
    /* KORRIGIERT: Neutrales Off-White statt Pink-Beige */
    --bg-warm: #fcfcfc;             
    --bg-white: #ffffff;

    /* UI ELEMENTS */
    --border-soft: rgba(0,0,0,0.06);        
    --border-light: rgba(0,0,0,0.1);        
    
    --radius-md: 16px;
    --radius-lg: 24px;              

    --shadow-flat: 0 4px 20px rgba(0, 0, 0, 0.04); 
    --shadow-hover: 0 15px 30px rgba(0, 0, 0, 0.08), 0 5px 10px rgba(0,0,0,0.03);
}

/* --- Reset --- */
*,
*::before,
*::after {
    box-sizing: border-box;
    font-synthesis: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* --- Body & Typografie --- */
body,
body.wp-embed-responsive,
.wp-site-blocks,
.entry-content,
.post-content {
    /* KORRIGIERT: Lato statt Inter */
    font-family: var(--font-body);
    font-weight: 400;
    line-height: 1.7;
    /* KORRIGIERT: Neutraler Hintergrund */
    background-color: var(--bg-warm); 
    color: var(--color-text);
}

p,
span,
div,
li,
a,
label,
.wp-block-paragraph,
.wp-block-heading {
    font-kerning: normal;
}

/* Überschriften im Verbundenleben-Stil */
h1,
h2,
h3,
h4,
h5,
h6 {
    /* KORRIGIERT: Playfair Display */
    font-family: var(--font-heading);
    font-weight: 700; 
    line-height: 1.25;
    color: var(--color-primary); /* Weinrot für Überschriften */
    margin-top: 0;
}

/* --- Formular-Grundlagen --- */
input,
textarea,
select,
button {
    font-family: var(--font-body);
    box-sizing: border-box;
}

.form-group label {
    display: block;
    font-size: 0.95rem;
    font-weight: 600;
    color: var(--color-text-dark);
    margin-bottom: 0.5rem;
}

.checkbox-group label,
.newsletter-consent-row label {
    color: var(--color-text);
    font-weight: 400;
    font-size: 0.9rem;
}

/* --- Body & Layout Grundlagen --- */
body {
    margin: 0;
    padding: 0;
}

#main-content {
    max-width: 1200px;
    margin: 0 auto;
    padding: 2rem 1.5rem;
    min-height: 60vh;
}

/* Fix für Bilder */
img {
    max-width: 100%;
    height: auto;
    border-style: none;
}

[inert] {
    pointer-events: none;
    cursor: default;
}