/*
Theme Name: Astra Child
Theme URI: https://wpastra.com/
Template: astra
Author: Brainstorm Force
Author URI: https://wpastra.com/about/?utm_source=theme_preview&utm_medium=author_link&utm_campaign=astra_theme
Description: The Astra WordPress theme is lightning-fast and highly customizable. It has over 1 million downloads and the only theme in the world with 6,000+ five-star reviews! It’s ideal for professional web designers, solopreneurs, small businesses, eCommerce, membership sites and any type of website. It offers special features and templates so it works perfectly with all page builders like Spectra, Elementor, Beaver Builder, etc. Fast performance, clean code, mobile-first design and schema markup are all built-in, making the theme exceptionally SEO-friendly. It’s fully compatible with WooCommerce, SureCart and other eCommerce plugins and comes with lots of store-friendly features and templates. Astra also provides expert support for free users. A dedicated team of fully trained WordPress experts are on hand to help with every aspect of the theme. Try the live demo of Astra: https://zipwp.org/themes/astra/
Tags: custom-menu,custom-logo,entertainment,one-column,two-columns,left-sidebar,e-commerce,right-sidebar,custom-colors,editor-style,featured-images,full-width-template,microformats,post-formats,rtl-language-support,theme-options,threaded-comments,translation-ready,blog
Version: 4.13.5.1783093663
Updated: 2026-07-03 17:47:43

*/

/* ===============================
   MITTE SCHMIEDE - Grundwerte
   =============================== */


/* Schriften ----------------------------------------------------------------------------- */
@font-face {
    font-family: 'Myriad Pro Regular';
    font-style: normal;
    font-weight: normal;
    font-display: swap;
    src: local('Myriad Pro Regular'), url('fonts/MYRIADPRO-REGULAR.woff') format('woff');
}

@font-face {
    font-family: 'Myriad Pro Condensed';
    font-style: normal;
    font-weight: normal;
    font-display: swap;
    src: local('Myriad Pro Condensed'), url('fonts/MYRIADPRO-COND.woff') format('woff');
}

@font-face {
    font-family: 'Ubuntu Regular';
    font-style: normal;
    font-weight: normal;
    font-display: swap;
    src: local('Ubuntu Regular'), url('fonts/Ubuntu-R.woff') format('woff');
}

@font-face {
    font-family: 'Ubuntu Medium';
    font-style: normal;
    font-weight: normal;
    font-display: swap;
    src: local('Myriad Pro Condensed'), url('fonts/Ubuntu-M.woff') format('woff');
}

/* Variablen ----------------------------------------------------------------------------- */
:root {
    --gesund_white: rgb(255, 255, 255);
    --gesund_black: rgb(0, 0, 0);
    --gesund_font_grey: rgb(60, 60, 59);
    --gesund_violett: rgb(214, 11, 82);
    --gesund_white_transparent: rgba(255, 255, 255, 0.82);

    --font-regular: 'Myriad Pro Regular', sans-serif;
    --font-condensed: 'Myriad Pro Condensed', sans-serif;
    --font-ubuntu: 'Ubuntu Regular', sans-serif;
    --font-ubuntu-semi: 'Ubuntu Medium', sans-serif;
}

body {
    font-family: var(--font-ubuntu);
}

a {
    cursor: pointer;
    text-decoration: none !important;
    color: var( --gesund_violett);
}

.ast-builder-menu-1 {
    position: absolute;
    bottom: 20px;
}

h4 {
    color: var(--gesund_white) !important;
    background-color: var( --gesund_violett);
}

/* Weißer Kreis rechts im pinken Button */
.hero-buttonbox::after {
    content: "➜";
    position: absolute;
    right: 10px;
    top: 50%;

    width: 34px;
    height: 34px;

    display: flex;
    align-items: center;
    justify-content: center;

    background: #fff;
    color: #d5005b;
    border-radius: 50%;

    font-size: 30px;
    font-weight: 400;
    line-height: 1;

    transform: translateY(-50%);
    padding-bottom: 1px;
    box-sizing: border-box;
}

/* Bild-/Link-Boxen -------------------------------------------------- */

/* Gemeinsame Basis */
.image-link-box,
.image-link-box-small,
.image-link-box-left,
.image-link-box-absolute {
    position: relative;
    gap: 0 !important;
}

.image-link-box > *,
.image-link-box-small > *,
.image-link-box-left > *,
.image-link-box-absolute > * {
    margin-block-start: 0 !important;
    margin-block-end: 0 !important;
}

.image-link-box figure,
.image-link-box-small figure,
.image-link-box-left figure,
.image-link-box-absolute figure {
    margin: 0 !important;
}

.image-link-box figure a,
.image-link-box-small figure a,
.image-link-box-left figure a,
.image-link-box-absolute figure a {
    display: block;
    line-height: 0;
}

.image-link-box img,
.image-link-box-small img,
.image-link-box-left img,
.image-link-box-absolute img {
    display: block;
    width: 100%;
    margin-bottom: 0 !important;
}

/* Pinke Linkflächen */
.image-link-box p,
.image-link-box-small p,
.image-link-box-absolute p {
    margin: 0;
    padding: 0;
    background: var(--gesund_violett);
}

.image-link-box p,
.image-link-box-small p {
    position: relative;
}

.image-link-box-absolute p {
    position: absolute;
}

/* Einzelne Linkliste links im Hero */
.image-link-box-left {
    position: relative;
    width: 320px;
    max-width: calc(100% - 16%);
    margin-left: 8% !important;
    margin-right: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    background: var(--gesund_violett);
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.18);
    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        background-color 0.25s ease;
}

/* Gutenberg-Zentrierung und globale Blockabstände überschreiben */
.is-layout-constrained > .image-link-box-left,
:root :where(.is-layout-flow) > .image-link-box-left {
    width: 320px;
    max-width: calc(100% - 16%);
    margin-left: 4% !important;
    margin-right: 0 !important;
    margin-block-start: 0 !important;
    margin-block-end: 0 !important;
}

/* Kleiner Abstand nur zwischen aufeinanderfolgenden Links */
.image-link-box-left + .image-link-box-left {
    margin-top: 6px !important;
}

/* Dezente Bewegung beim Überfahren */
.image-link-box-left:hover,
.image-link-box-left:focus-within {
    background: #c00052;
    /*transform: translateX(6px);*/
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.24);
}

/* Gemeinsame Link-Basis */
.image-link-box p a,
.image-link-box-small p a,
.image-link-box-left > a,
.image-link-box-left p a,
.image-link-box-absolute p a {
    position: relative;
    display: block;
    color: #fff !important;
    text-decoration: none;
    line-height: 1.15;
}

.image-link-box p a:hover,
.image-link-box-small p a:hover,
.image-link-box-absolute p a:hover,
.image-link-box p a:focus,
.image-link-box-small p a:focus,
.image-link-box-absolute p a:focus {
    color: #fff !important;
    background: #c00052;
}

.image-link-box-left > a:hover,
.image-link-box-left > a:focus,
.image-link-box-left p a:hover,
.image-link-box-left p a:focus {
    color: #fff !important;
}

/* Große Variante */
.image-link-box p a {
    padding: 9px 58px 10px 18px;
    font-size: 16px;
    font-weight: 600;
}

/* Kleine Variante und Linkliste links */
.image-link-box-small p a,
.image-link-box-left > a,
.image-link-box-left p a {
    padding: 5px 48px 5px 12px;
    font-size: 18px;
    font-weight: 500;
}

.page-id-264 .image-link-box-small p a {
    padding: 8px 38px 8px 12px !important;
    font-size: 15px !important;
    font-weight: 500 !important;
}

/* Absolute Variante */
.image-link-box-absolute p a {
    padding: 4px 50px 4px 10px;
    font-size: 13px;
    line-height: 1.2;
    font-weight: 600;
}

/* Gemeinsamer Pfeil */
.image-link-box p a::after,
.image-link-box-small p a::after,
.image-link-box-left > a::after,
.image-link-box-left p a::after,
.image-link-box-absolute p a::after {
    content: "➜";
    position: absolute;
    right: 10px;
    top: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    background: #fff;
    color: var(--gesund_violett);
    border-radius: 50%;

    font-weight: 400;
    line-height: 1;

    transform: translateY(-50%);
    padding-bottom: 1px;
    box-sizing: border-box;
}

/* Pfeil der Hero-Linkliste */
.image-link-box-left > a::after,
.image-link-box-left p a::after {
    transition: transform 0.25s ease;
}

.image-link-box-left:hover > a::after,
.image-link-box-left:focus-within > a::after,
.image-link-box-left:hover p a::after,
.image-link-box-left:focus-within p a::after {
    transform: translateY(-50%) scale(1.08);
}

/* Großer Pfeil */
.image-link-box p a::after {
    width: 34px;
    height: 34px;
    font-size: 30px;
}

/* Kleiner Pfeil */
.image-link-box-small p a::after,
.image-link-box-left > a::after,
.image-link-box-left p a::after,
.image-link-box-absolute p a::after {
    width: 24px;
    height: 24px;
    font-size: 20px;
}

/*Der pinke Link-Button Position "absolute" im Bild */

/* Einzelner pinker Button als WordPress-Absatz linksbuendig variable Weite */
.gz-pink-button,
.gz-pink-button-center {
    margin: 0;
}

.gz-pink-button a,
.gz-pink-button-center a {
    position: relative;
    display: inline-block;
    background: #d5005b;
    color: #ffffff;
    text-decoration: none;
    font-size: 20px;
    line-height: 1.15;
    font-weight: 700;
    padding: 9px 58px 9px 18px;
}

.gz-pink-button a:hover,
.gz-pink-button a:focus,
.gz-pink-button-center a:hover,
.gz-pink-button-center a:focus {
    color: #ffffff;
    background: #c00052;
    text-decoration: none;
}

.gz-pink-button a::after,
.gz-pink-button-center a::after {
    content: "➜";
    position: absolute;

    right: 10px;
    top: 50%;

    width: 34px;
    height: 34px;

    display: flex;
    align-items: center;
    justify-content: center;

    background: #ffffff;
    color: #d5005b;
    border-radius: 50%;

    font-size: 30px;
    font-weight: 400;
    line-height: 1;

    transform: translateY(-50%);
    padding-bottom: 1px;
    box-sizing: border-box;
}

.wp-block-column p.gz-pink-button-center:first-of-type {
    margin-top: -1.4rem !important;
}

.gz-pink-button-center a {
    display: block;
    width: 85%;
    margin-left: 7.5%;
}


:root :where(.is-layout-flow) > * {
    margin-block-start: 12px !important;
}

/* Hero-Bereich ------------------------------------------------------*/
.hero-start {
    position: relative;
    padding: 0 !important;
}

.wp-block-cover__inner-container {
    position: unset !important;
}

/* Die Textboxen im Header -------------------------------------------*/
/* Weiße Textfläche */
.hero-textbox {
    position: absolute;
    left: 0;
    bottom: 14% !important;
    width: fit-content;
    padding: 15px 25px 15px 90px;
    background: var(--gesund_white_transparent);
    z-index: 2;
}

/* Text innerhalb der weißen Fläche */
.hero-textbox p {
    margin: 0;
    font-size: 38px;
    line-height: 1.1;
    font-weight: 400;
}

/* Grosser weisser Text im Bild */
.hero-textbox_h3 {
    position: absolute;
    left: 8%;
    top: 5% !important;
    width: fit-content;
    z-index: 2;
}

.has-x-large-font-size {
    margin: 0;
    font-size: 3.5rem !important;
    line-height: 1.1;
    font-weight: 400;
    color: var(--gesund_white) !important;
    font-weight: 600;
}

body .wp-block-cover:not(.has-text-color.has-link-color) p.hero-textbox_h3 {
    color: var(--gesund_white) !important;
}

/* Pinke Fläche rechts unten */
.hero-buttonbox {
    position: absolute;
    right: 5%;
    bottom: 14%;
    width: fit-content;
    padding: 6px 50px 6px 12px;
    background: var(--gesund_violett);
    z-index: 2;
}

/* Text */
.hero-buttonbox p {
    margin: 0;
    line-height: 1.15;
}

.hero-buttonbox a {
    color: #fff;
    font-size: 18px;
    font-weight: 600;
    text-decoration: none !important;
}

/* Die Vierspaltigkeit -----------------------------------------------*/
.wp-block-columns_4 {
    padding-left: 0;

}
.wp-block-columns_4:where(.is-layout-flex) {
    gap: 10px !important;

}

/* Der Footer */
.site-primary-footer-wrap[data-section="section-primary-footer-builder"],
.site-above-footer-wrap[data-section="section-above-footer-builder"] {
    background-color: var(--gesund_white);
}

/* Die Aufzaehlung im Footer */
.footer-seiteninhalt {
    font-family: var(--font-regular);
    font-size: 13px;
    line-height: 1.35;
    text-decoration: underline;
    padding-top: 1.4rem;
    border-top: 2px #d5005b solid;
}

.footer-seiteninhalt p {
    margin: 0 0 4px;
}

.footer-seiteninhalt a {
    text-decoration: underline;
}

.footer-seiteninhalt .wp-block-columns {
    margin-bottom: 18px;
    text-align: left;
}

.footer-seiteninhalt ol.wp-block-list {
    padding: 0;
    margin: 0 0 0 1rem;
}

.footer-seiteninhalt,
.footer-seiteninhalt a {
    color: var(--gesund_black);
}

.footer-seiteninhalt .link-pfeile,
.footer-seiteninhalt a .link-pfeile {
    color: var(--gesund_violett);
}

.site-primary-footer-wrap {
    padding-top: 0;
    padding-bottom: 45px;
}

.ast-desktop .main-header-menu>.menu-item .sub-menu:before {
    /*    display: none;*/
    height: 5px !important;
}

.entry-content ul {
    list-style: disc;
    /*list-style-position: inside;*/
    padding-left: 0;
    margin-left: 1.2rem;
}

.wp-block-column ul {
    padding-left: 0;
}

.wpcf7-submit {
    background-color: var(--gesund_violett) !important;
}

/* Beitragsbilder in der Liste einheitlich darstellen */
.wp-block-latest-posts__featured-image img {
    width: 300px !important;
    max-width: 100%;
    height: auto !important;
}

/* Die Media-Queries ====================================================*/

@media (max-width: 768px) {
    h1,
    h2 {
        font-size: 1.5rem;
        padding-bottom: 0.45rem;
    }

    .entry-content :where(h1,h2,h3,h4,h5,h6) {
        margin-bottom: 1px;
        margin-top: 20px;
    }

    .wp-block-columns .wp-block-column:not(:last-child) {
        margin-bottom: 0;
    }

    body .wp-block-cover:not(.has-text-color.has-link-color) p.hero-textbox_h3 {
        text-align: left;
    }

    .has-x-large-font-size {
        font-size: 2.5rem !important;
    }

    .wp-block-cover__inner-container {
        padding-top: 50%;
    }

    .image-link-box {
        margin-bottom: 2rem !important;
    }

    .wp-block-spacer {
        height: 10px !important;
    }

    .entry-content > .wp-block-group,
    .entry-content > .wp-block-cover,
    .entry-content > .wp-block-columns {
        padding-top: 0;
        padding-right: 0 !important;
        padding-bottom: 0;
        padding-left: 0 !important;
    }

    .image-link-box-left,
    .is-layout-constrained > .image-link-box-left,
    :root :where(.is-layout-flow) > .image-link-box-left {
        width: 84%;
        max-width: 84%;
        margin-left: 8% !important;
        margin-right: 8% !important;
    }

    .image-link-box-left:hover,
    .image-link-box-left:focus-within {
        transform: none;
    }

    #content {
        margin-top: -3rem;
    }

    .site-above-footer-wrap {
        padding-left: 20px;
        padding-right: 20px;
    }

    :root :where(.is-layout-flex) {
        gap: 0;
    }

    .wp-block-latest-posts__featured-image,
    .wp-block-latest-posts__featured-image img {
        width: 90vw !important;
    }

    .page-id-264 .image-link-box-small p a {
        padding: 8px 30vw 8px 12px !important;
    }
}

@media (min-width: 768px) and (max-width: 992px) {
    h1 {
        padding-left: 2rem;
    }

    .site-above-footer-wrap {
        padding-left: 20px;
        padding-right: 20px;
    }

    .entry-content > .wp-block-group, .entry-content > .wp-block-cover,
    .entry-content > .wp-block-columns {
        padding-top: 5px;
    }

    .has-x-large-font-size {
        font-size: 3rem !important;
    }

    .wp-block-cover__inner-container {
        msrgin-top: 12rem;
    }
}



@media (max-width: 992px) {
    .orientierung-popup {
        display: none;
    }

    /* Die Textboxen im Header -------------------------------------------*/
    /* Weiße Textfläche */
    .hero-textbox {
        bottom: 30% !important;
        padding: 10px 15px 10px 20px;
    }

    /* Text innerhalb der weißen Fläche */
    .hero-textbox p {
        font-size: 26px;
        line-height: 1.1;
        font-weight: 400;
    }

    /* Pinke Fläche rechts unten */
    .hero-buttonbox {
        right: 5%;
        bottom: 7%;
        width: fit-content;
        padding: 4px 50px 4px 10px;
    }

    /* Text */
    .hero-buttonbox p {
        margin: 0;
        line-height: 1.15;
    }

    .hero-buttonbox a {
        font-size: 18px;
    }


    .wp-block-cover {
        margin-bottom: 1.2rem
    }
}

@media (min-width: 993px) {

    body {
        font-size: 1.0rem;
        line-height: 1.35rem;
    }

    h1 {
        color: var(--gesund_font_grey) !important;
        padding-left: 3rem;
        font-size: 1.6rem !important;
        padding-top: 1rem;
    }

    h4 {
        padding: 3px 10px 3px 12px;
        min-height: 46px;
        font-size: 1.1rem !important;
    }


    .wp-block-cover {
        margin-bottom: 1.2rem
    }
    .indent {
        padding-left: 3rem !important;
    }

    /*    ul {
            list-style: disc;
            list-style-position: inside;
            padding-left: 3rem !important;
            margin-left: 0;
        }*/

    .ast-builder-menu-1 {
        position: absolute;
        bottom: 23px;
    }

    .ast-desktop:not(:has(.ast-header-sticked)) .ast-primary-header-bar .main-header-menu > .menu-item {
        line-height: 24px;
    }

    #ast-hf-menu-1 > li:not(:last-child)::after,
    #astra-footer-menu > li:not(:last-child)::after {
        content: "";
        position: absolute;
        right: 0;
        top: 50%;
        transform: translateY(-50%);
        width: 1px;
        height: 16px;
        background-color: #333;
    }

    #ast-hf-menu-1 > li,
    #astra-footer-menu > li {
        position: relative;
    }

    #ast-hf-menu-1 > li > .menu-link {
        padding-left: 14px;
        padding-right: 14px;
    }

    .entry-content > .wp-block-group,
    .entry-content > .wp-block-cover,
    .entry-content > .wp-block-columns {
        padding-top: 0;
        padding-right: 0;

    }

    /*Das "Orientierung finden" - Popup*/
    .orientierung-popup {
        display: none;
        position: absolute;
        top: 105px;
        left: 40%;
        transform: translateX(-10%);
        width: 620px;
        background: rgba(255, 255, 255, 0.88);
        padding: 18px 22px;
        z-index: 9999;
        font-size: 16px;
        line-height: 1.35;
    }

    body:has(.has-orientierung-popup:hover) .orientierung-popup,
    .orientierung-popup:hover {
        display: block;
    }

    .orientierung-popup p {
        margin: 0 0 10px;
    }

    .orientierung-popup .footer-seiteninhalt,
    .orientierung-popup .footer-seiteninhalt a {
        color: #222;
        text-decoration: none;
    }

    .orientierung-popup .footer-seiteninhalt a:hover {
        text-decoration: underline !important;
    }


    .ast-icon {
        display: none;
    }


    #ast-scroll-top  .ast-icon {
        display: block;
    }

    /*Das Dropdownmenu in der Hauptnavigation*/
    .ast-builder-menu-1 .main-header-menu > .menu-item > .sub-menu,
    .ast-builder-menu-1 .main-header-menu > .menu-item > .astra-full-megamenu-wrapper {
        margin-top: 5px;
        border: none;
    }

    .main-header-menu .sub-menu .menu-link {
        padding: 4px 12px 4px 12px;
        ;
        display: block;
        word-wrap: normal;
    }

    .main-header-menu .sub-menu {
        width: fit-content;
        white-space: nowrap
    }
    
    .page-id-264 .image-link-box-small p a {
        padding: 8px 35px 8px 12px !important;
        font-size:11px !important;
    }
}

@media (min-width: 1200px) {
    .ast-plain-container.ast-no-sidebar #primary {
        margin-top: -2rem;
    }

    h1 {
        padding-left: 3rem;
        font-size: 1.7rem !important;
    }

    a.ast-logo-title-inline .site-logo-img {
        padding-bottom: 40px;
    }

    .page-id-264 .image-link-box-small p a {
        padding: 8px 38px 8px 12px !important;
        font-size: 14px !important;
    }
}

@media (min-width: 1400px) {
    h1,
    h2 {
        padding-left: 3rem;
        padding-bottom: 1rem;
        font-size: 1.7rem !important;
    }

    .ast-logo-title-inline .site-logo-img {
        padding-bottom: 0;
    }

    .page-id-264 .image-link-box-small p a {
        padding: 8px 38px 8px 12px !important;
        font-size: 15px !important;
    }
}