/**
Theme Name: Astra Child
Author: RietschDesign
Author URI: https://www.rietsch-design.de
Description: Astra Child Theme fuer Dr. Johannes R. Gerstner Beratungsgesellschaft mbH
Version: 1.0
Text Domain: astra-child
Template: astra
*/

/*****************************/
/*** Überschriften ***/
/*****************************/
/* Fluid-Schriftgrößen (skalieren mit Viewport) */
h1 { font-size: clamp(1.8rem, 1.2rem + 1.5vw, 2rem) !important; }
h2 { font-size: clamp(1.6rem, 1.1rem + 1.2vw, 1.8rem) !important; }
h3 { font-size: clamp(1.4rem, 1.0rem + 1.0vw, 1.5rem) !important; }
h4 { font-size: clamp(1.2rem, 1.0rem + 0.6vw, 1.3rem) !important; }
h5 { font-size: clamp(1.0rem, 0.95rem + 0.4vw, 1.2rem) !important; }
h6 { font-size: 1.0rem !important; }

/* Spezial-Überschrift mit farbiger Akzentlinie links.
   Schriftgröße ist fix 2rem auf allen Geräten – nur padding-left
   wird pro Breakpoint angepasst (siehe Media Queries unten). */
h2.spezial,
.entry-content :where(h2.spezial) {
    font-size: 2rem !important;
    border-left: 3px solid var(--ast-global-color-0);
    padding-left: 1.3rem;
}

/*****************************/
/*** Listen (Content) ***/
/*****************************/
/* Abstände für UL/OL im Content korrigieren */
.entry-content ol,
.entry-content ul {
    margin: 0 0 1.5em 1.5em !important;
}
/* Verschachtelte Listen ohne zusätzlichen unteren/rechten Abstand */
.entry-content li > ul,
.entry-content li > ol {
    margin: 0 0 0 1.5em !important;
}

/*****************************/
/*** Telefon Links nicht unterstreichen ***/
/*****************************/
.entry-content a[href^="tel:"] {
    text-decoration: none;
}

/*****************************/
/*** GTranslate Plugin ***/
/*****************************/
.gtranslate_wrapper {
    display: flex !important;
    align-items: center;
    gap: 1.2rem;
    text-transform: uppercase;
}
/* Sprach-Reihenfolge: DE vor EN */
.gtranslate_wrapper a[data-gt-lang="de"] { order: 1; }
.gtranslate_wrapper a[data-gt-lang="en"] { order: 2; }
/* Link-Optik */
.gtranslate_wrapper .glink {
    text-decoration: none;
    margin: 0;
}
/* Hover: Unterstreichung (gilt auf allen Geräten) */
.gtranslate_wrapper .glink:hover {
    text-decoration: underline;
}
/* Sprachumschalter im mobilen Menü zentriert, horizontal */
.ast-mobile-popup-content .gtranslate_wrapper {
    display: flex;
    justify-content: center;
    flex-direction: row;
    margin-top: 20px;
}

/*****************************/
/*** Spectra Plugin ***/
/*****************************/
/* Vertikale Ausrichtung der Icon-Listen-Labels korrigieren */
.uagb-icon-list__label { margin-top: -5px; }

/*****************************/
/*** Spotify Wrapper Überlagerung Korrektur ***/
/*****************************/
.wp-block-embed__wrapper {
    position: sticky;
}

/*****************************/
/*** Footer Text (Farben) ***/
/*****************************/
.site-footer,
.site-footer a {
    color: #fff !important;
}

.site-footer a:hover {
    text-decoration: underline !important;
}

.ast-footer-copyright.site-footer-focus-item {
    color: #fff !important;
}

/*****************************/
/*** Footer-Menü ***/
/*****************************/
#astra-footer-menu {
    margin: 0 !important;
}

/*****************************/
/*** Footer: Untere Reihe (Copyright + Menü) ***/
/*** Ausrichtung am 3er-Raster der oberen Adress-Reihe ***/
/*****************************/
.site-below-footer-wrap.ast-builder-grid-row-3-equal .site-below-footer-inner-wrap.ast-builder-grid-row {
    grid-template-columns: 1fr 1fr 1fr !important;
}
/* Copyright über Spalte 1 + 2 spannen */
.site-below-footer-wrap .site-footer-below-section-1 {
    grid-column: 1 / 3 !important;
}
/* Menü in Spalte 3 (unter drittem Adressblock) */
.site-below-footer-wrap .site-footer-below-section-3 {
    grid-column: 3 / 4 !important;
}
/* Leere mittlere Sektion ausblenden */
.site-below-footer-wrap .site-footer-below-section-2 {
    display: none !important;
}

/*****************************/
/*** Media Queries ***/
/*** Reihenfolge: groß ? klein (max-width) ***/
/*****************************/

/* --- TABLET (bis 921px) --- */
@media (max-width: 921px) {

    /* Hover im mobilen Astra-Menü (Hamburger) */
    .ast-builder-menu-mobile .main-navigation .main-header-menu .menu-item > .menu-link:hover {
        text-decoration: underline;
    }

    /* Spezial-Überschrift: kleinerer linker Abstand */
    h2.spezial,
    .entry-content :where(h2.spezial) {
        padding-left: 1.2rem;
    }

    /* Untere Footer-Reihe: Sektionen untereinander */
    .site-below-footer-wrap.ast-builder-grid-row-3-equal .site-below-footer-inner-wrap.ast-builder-grid-row {
        grid-template-columns: 1fr !important;
    }
    /* Spannen/Positionierung zurücksetzen, damit jede Sektion eine eigene Zeile bekommt */
    .site-below-footer-wrap .site-footer-below-section-1,
    .site-below-footer-wrap .site-footer-below-section-3 {
        grid-column: auto !important;
    }

    /* Footer-Menü-Links untereinander */
    .footer-widget-area[data-section="section-footer-menu"] .astra-footer-mobile-vertical-menu {
        display: flex;
        justify-content: flex-start;
    }
    /* Footer-Menü-Items linksbündig */
    #astra-footer-menu .menu-item {
        align-items: flex-start !important;
    }
    /* Footer-Menü-Links: nur rechts 20px Abstand */
    #astra-footer-menu .menu-link {
        padding: 0 20px 0 0 !important;
    }
}

/* --- SMARTPHONE (bis 544px) --- */
@media (max-width: 544px) {

    /* Spezial-Überschrift: noch kleinerer linker Abstand */
    h2.spezial,
    .entry-content :where(h2.spezial) {
        padding-left: 1.0rem;
    }

    /* Texte per CSS mittig ausrichten auf dem Smartphone */
    .mobil-zentriert { text-align: center; }

    /* Footer-Copyright linksbündig */
    .ast-footer-copyright {
        text-align: left !important;
    }
}

/*********************************************/