/*
Theme Name:   Barth Badsanierung Child
Theme URI:    https://barth-badsanierung.de/
Description:  Child-Theme von Hello Elementor für Torsten Barth Badsanierung GmbH, Korbach. Enthält die Markenfarben, Schriften und Hilfsklassen für den Elementor-Pro-Aufbau.
Author:       Petesso
Author URI:   https://www.petesso.de/
Template:     hello-elementor
Version:      1.0.0
Text Domain:  barth-child
Tags:         elementor, custom-colors, business
*/

/* === Globale Markenfarben === */
:root {
    --barth-primary:    #afcb1f;   /* Limette / Markengrün */
    --barth-primary-d:  #94ad15;   /* dunklerer Grün-Ton für Hover */
    --barth-dark:       #525051;   /* Dunkelgrau / Text */
    --barth-darker:     #252525;   /* fast schwarz */
    --barth-light:      #faf9f1;   /* warmer Hintergrund */
    --barth-white:      #ffffff;
}

/* Body-Defaults --- fallen auf Elementor Globals zurück, dienen nur als Fallback */
body {
    font-family: 'Open Sans', system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
    color: var(--barth-dark);
    line-height: 1.7;
}
h1, h2, h3, h4, h5, h6 {
    font-family: 'Montserrat', 'Open Sans', sans-serif;
    color: var(--barth-darker);
    font-weight: 700;
    letter-spacing: -.01em;
}

/* === Buttons im Original-Look ("sppb-btn-primary sppb-btn-rounded sppb-btn-flat") === */
.barth-btn,
.elementor-button.barth-btn,
.elementor-widget-button .elementor-button.barth-btn {
    display: inline-flex;
    align-items: center;
    gap: .55em;
    background: var(--barth-primary);
    color: #fff !important;
    padding: 14px 32px;
    border-radius: 999px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .04em;
    transition: background-color .25s ease, transform .15s ease;
    box-shadow: 0 6px 16px rgba(175,203,31,.25);
}
.barth-btn:hover,
.elementor-button.barth-btn:hover {
    background: var(--barth-primary-d);
    transform: translateY(-1px);
}

/* === Link-Highlight, Akzentbalken, Headline-Unterstrich === */
a {
    color: var(--barth-primary-d);
    text-decoration: none;
}
a:hover {
    color: var(--barth-primary);
}
.barth-accent-bar::before {
    content: "";
    display: block;
    width: 56px;
    height: 4px;
    border-radius: 2px;
    background: var(--barth-primary);
    margin-bottom: 18px;
}

/* === Sektion-Padding-Defaults für ein konsistentes One-Pager-Layout === */
.barth-section { padding: 90px 0; }
@media (max-width: 767px) { .barth-section { padding: 60px 0; } }

/* === Counter-/Stats-Sektion === */
.barth-stats .elementor-counter-number-wrapper { color: var(--barth-primary); font-weight: 800; }
.barth-stats .elementor-counter-title { color: var(--barth-darker); font-weight: 600; }

/* === Service-Karten Hover === */
.barth-service .elementor-image-box-wrapper {
    background: #fff;
    border-radius: 14px;
    padding: 24px;
    transition: box-shadow .25s ease, transform .25s ease;
    box-shadow: 0 8px 24px rgba(0,0,0,.05);
}
.barth-service .elementor-image-box-wrapper:hover {
    transform: translateY(-4px);
    box-shadow: 0 14px 32px rgba(0,0,0,.10);
}

/* === Galerie/Referenzen Filter sticky look === */
.barth-gallery .elementor-portfolio__filter-item.elementor-active,
.barth-gallery .e-filter-item.e-active {
    color: var(--barth-primary-d);
    font-weight: 700;
}

/* === Footer === */
.barth-footer { background: var(--barth-darker); color: #d8d8d8; }
.barth-footer a { color: #d8d8d8; }
.barth-footer a:hover { color: var(--barth-primary); }

/* === Sticky Header beim Scrollen verkleinern (Elementor Pro Header-Behaviour) === */
.elementor-sticky--effects .elementor-element {
    transition: padding .25s ease, background-color .25s ease;
}

/* === Telefon-Klick-CTA im Header (gross sichtbar) === */
.barth-phone-cta {
    font-weight: 700;
    color: var(--barth-primary-d) !important;
    font-size: 1.05rem;
}
.barth-phone-cta:hover { color: var(--barth-primary) !important; }

/* === Cookie-/OpenStreetMap-Hinweis aus dem Original === */
.barth-consent {
    background: #f3f3f1;
    padding: 16px 20px;
    border-radius: 10px;
    color: var(--barth-dark);
    font-size: .92rem;
}
.barth-consent strong { color: var(--barth-darker); }

/* === Quick-Reset gegen Theme-Doppel-Margin bei <p> in Elementor-Image-Box === */
.elementor-image-box-content p { margin-bottom: 0; }
