/* ============================================================
   ANVIOLHOMES AGB & HAUSREGELN
   WP CODER SAFE / SLIM VERSION
   ============================================================ */

#ah-help-center {
    position: relative;

    width: 100vw !important;
    width: 100dvw !important;

    max-width: 100vw !important;
    max-width: 100dvw !important;

    margin-left: calc(50% - 50vw) !important;
    margin-left: calc(50% - 50dvw) !important;

    margin-right: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50dvw) !important;

    overflow-x: clip;

    background: var(--avh-color-floral-white);
    color: var(--avh-color-ink);

    font-family:
        var(
            --avh-font-family,
            Verdana,
            Geneva,
            sans-serif
        ) !important;

    --ahhc-guide-ivory: var(--avh-color-floral-white);
    --ahhc-guide-linen: var(--avh-color-soft-linen);
    --ahhc-guide-stone: var(--avh-color-dust-gray);
    --ahhc-guide-silver: var(--avh-color-silver);
    --ahhc-guide-charcoal: var(--avh-color-charcoal);
}


.ahhc-widget-fixed,
.ahhc-widget-fixed > .elementor-widget-container {
    width: 100% !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;

    overflow: visible !important;
}


.ahhc-host-fixed {
    width: 100% !important;
    max-width: none !important;

    min-height: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    gap: 0 !important;
    row-gap: 0 !important;
    column-gap: 0 !important;

    overflow: visible !important;
}


#ah-help-center,
#ah-help-center *,
#ah-help-center *::before,
#ah-help-center *::after {
    box-sizing: border-box;
}


#ah-help-center * {
    font-family:
        var(
            --avh-font-family,
            Verdana,
            Geneva,
            sans-serif
        ) !important;
}


#ah-help-center [hidden] {
    display: none !important;
}


#ah-help-center button {
    font: inherit;
    text-transform: none !important;

    -webkit-tap-highlight-color:
        rgba(var(--avh-rgb-base-gray), 0);
}


#ah-help-center .ahhc-shell {
    width:
        min(
            calc(100% - 80px),
            1320px
        );

    margin: 0 auto;
}


/* ============================================================
   READER
   ============================================================ */

#ah-help-center .ahhc-reader {
    width: 100%;
    min-height: 70vh;

    padding:
        clamp(100px, 9vw, 138px)
        0
        clamp(110px, 10vw, 160px);

    background: var(--avh-base-warm-white);
}


#ah-help-center .ahhc-reader__shell {
    max-width: 1060px;
}


#ah-help-center .ahhc-article {
    max-width: 880px;

    margin: 0 auto;
}


#ah-help-center .ahhc-article__eyebrow {
    margin:
        0
        0
        16px;

    color: var(--avh-base-gray);

    font-size: 11px !important;
    font-weight: 700 !important;
    line-height: 1.45 !important;
    letter-spacing: 0.14em !important;

    text-transform: uppercase !important;
}


#ah-help-center .ahhc-article h2 {
    margin:
        0
        0
        34px;

    color: var(--avh-base-gray);

    font-size:
        var(
            --avh-h2-size,
            36px
        ) !important;

    font-weight: 700 !important;
    line-height: 1.18 !important;
    letter-spacing: -0.03em !important;

    text-transform: none !important;
}


#ah-help-center .ahhc-legal-intro {
    max-width: 760px;

    margin-bottom: 0;
}


#ah-help-center .ahhc-article h3 {
    margin:
        34px
        0
        13px;

    color:
        var(
            --avh-color-panel-ink,
            var(--avh-base-gray)
        );

    font-size: 19px !important;
    font-weight: 700 !important;
    line-height: 1.34 !important;

    text-transform: none !important;
}


#ah-help-center .ahhc-article p,
#ah-help-center .ahhc-article li {
    color: var(--avh-base-gray);

    font-size: 15px !important;
    font-weight: 400 !important;
    line-height: 1.78 !important;
}


#ah-help-center .ahhc-article p {
    margin:
        0
        0
        18px;
}


#ah-help-center .ahhc-article ul,
#ah-help-center .ahhc-article ol {
    margin:
        18px
        0
        28px;

    padding-left: 24px;
}


#ah-help-center .ahhc-article li {
    margin-bottom: 9px;
}


/* ============================================================
   TERMS PANELS
   ============================================================ */

#ah-help-center .ahhc-terms-panels {
    --ahhc-terms-slant: 38px;
    --ahhc-terms-duration: 680ms;

    --ahhc-terms-ease:
        cubic-bezier(
            0.65,
            0,
            0.35,
            1
        );

    position: relative;

    display: flex;
    flex-direction: column;

    width: 100%;

    margin-top: 54px;

    padding:
        var(--ahhc-terms-slant)
        0;

    isolation: isolate;
}


#ah-help-center .ahhc-terms-panels.is-measuring * {
    transition: none !important;
}


#ah-help-center .ahhc-terms-panel {
    position: relative;

    display: grid;

    grid-template-columns: 1fr;

    grid-template-rows:
        auto
        auto
        auto;

    width: 100%;
    min-height: 126px;

    margin:
        calc(
            var(--ahhc-terms-slant)
            *
            -0.5
        )
        0;

    padding:
        calc(
            var(--ahhc-terms-slant)
            +
            18px
        )
        42px
        calc(
            var(--ahhc-terms-slant)
            +
            18px
        );

    overflow: hidden;

    color: var(--avh-color-ink);

    background:
        linear-gradient(
            104deg,
            rgba(
                var(--avh-rgb-base-warm-white),
                0.42
            )
            0%,
            rgba(
                var(--avh-rgb-base-warm-white),
                0.12
            )
            42%,
            rgba(
                var(--avh-rgb-panel-ink),
                0.025
            )
            100%
        ),
        var(--ahhc-terms-bg);

    clip-path:
        polygon(
            0 var(--ahhc-terms-slant),
            100% 0,
            100% calc(100% - var(--ahhc-terms-slant)),
            0 100%
        );

    z-index: var(--ahhc-terms-z);

    box-shadow:
        inset
        0
        1px
        0
        rgba(
            var(--avh-rgb-base-warm-white),
            0.58
        ),

        inset
        0
        -1px
        0
        rgba(
            var(--avh-rgb-panel-ink),
            0.065
        ),

        inset
        3px
        0
        0
        rgba(
            var(--avh-rgb-border),
            0.50
        );

    transition:
        background-color
        var(--ahhc-terms-duration)
        var(--ahhc-terms-ease),

        padding
        var(--ahhc-terms-duration)
        var(--ahhc-terms-ease);
}


#ah-help-center .ahhc-terms-radio {
    position: absolute;

    width: 1px;
    height: 1px;

    margin: -1px;

    overflow: hidden;

    clip-path: inset(50%);
}


#ah-help-center .ahhc-terms-head {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        30px;

    align-items: center;

    width: 100%;
    min-height: 42px;

    padding:
        0
        4px;

    color: inherit;

    background:
        rgba(
            var(--avh-rgb-base-gray),
            0
        );

    border: 0;

    text-align: left;

    cursor: pointer;

    transition:
        transform
        var(--ahhc-terms-duration)
        var(--ahhc-terms-ease);
}


#ah-help-center .ahhc-terms-title {
    padding-right: 14px;

    color: var(--avh-base-gray);

    font-size: 19px !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    letter-spacing: -0.012em !important;

    text-transform: none !important;
}


#ah-help-center .ahhc-terms-indicator {
    position: relative;

    width: 28px;
    height: 28px;
}


#ah-help-center .ahhc-terms-indicator span {
    position: absolute;

    top: 50%;
    left: 50%;

    width: 10px;
    height: 10px;

    border-right:
        1.5px solid
        currentColor;

    border-bottom:
        1.5px solid
        currentColor;

    transform:
        translate(-60%, -70%)
        rotate(45deg);

    transition:
        transform
        var(--ahhc-terms-duration)
        var(--ahhc-terms-ease);
}


#ah-help-center .ahhc-terms-separator {
    width: 0;
    height: 1px;

    margin: 0;

    justify-self: center;

    background:
        rgba(
            var(--avh-rgb-border),
            0.72
        );

    transition:
        width
        var(--ahhc-terms-duration)
        var(--ahhc-terms-ease),

        margin
        var(--ahhc-terms-duration)
        var(--ahhc-terms-ease);
}


#ah-help-center .ahhc-terms-content {
    display: grid;

    grid-template-rows: 0fr;

    width: 100%;

    opacity: 0;

    pointer-events: none;

    transition:
        grid-template-rows
        var(--ahhc-terms-duration)
        var(--ahhc-terms-ease),

        opacity
        420ms
        ease;
}


#ah-help-center .ahhc-terms-content-inner {
    min-height: 0;

    overflow: hidden;

    width: 100%;
    max-width: 820px;

    margin: 0 auto;
}


/* ============================================================
   OPEN STATE
   Kein CSS :has() mehr.
   JavaScript setzt stattdessen .is-open.
   ============================================================ */

#ah-help-center .ahhc-terms-panel.is-open {
    padding-top:
        calc(
            var(--ahhc-terms-slant)
            +
            24px
        );

    padding-bottom:
        calc(
            var(--ahhc-terms-slant)
            +
            38px
        );

    background:
        linear-gradient(
            104deg,
            rgba(
                var(--avh-rgb-base-warm-white),
                0.52
            )
            0%,
            rgba(
                var(--avh-rgb-base-warm-white),
                0.16
            )
            42%,
            rgba(
                var(--avh-rgb-panel-ink),
                0.03
            )
            100%
        ),
        var(--ahhc-terms-active);
}


#ah-help-center
.ahhc-terms-panel.is-open
.ahhc-terms-head {
    transform:
        translateX(4px);
}


#ah-help-center
.ahhc-terms-panel.is-open
.ahhc-terms-indicator
span {
    transform:
        translate(-50%, -25%)
        rotate(225deg);
}


#ah-help-center
.ahhc-terms-panel.is-open
.ahhc-terms-separator {
    width: 72%;

    margin:
        18px
        0
        24px;
}


#ah-help-center
.ahhc-terms-panel.is-open
.ahhc-terms-content {
    grid-template-rows: 1fr;

    opacity: 1;

    pointer-events: auto;
}


/* ============================================================
   TABLET
   ============================================================ */

@media (max-width: 1024px) {

    #ah-help-center .ahhc-shell {
        width:
            calc(
                100%
                -
                48px
            );
    }

}


/* ============================================================
   MOBILE
   ============================================================ */

@media (max-width: 767px) {

    #ah-help-center .ahhc-shell {
        width: auto !important;
        max-width: none !important;

        margin-left: 22px !important;
        margin-right: 22px !important;
    }


    #ah-help-center .ahhc-reader {
        padding:
            84px
            0
            104px;
    }


    #ah-help-center .ahhc-article h2 {
        margin-bottom: 28px;

        font-size: 29px !important;
        line-height: 1.2 !important;
    }


    #ah-help-center .ahhc-terms-panels {
        --ahhc-terms-slant: 28px;

        margin-top: 42px;
    }


    #ah-help-center .ahhc-terms-panel {
        min-height: 108px;

        padding-left: 24px;
        padding-right: 24px;
    }


    #ah-help-center .ahhc-terms-title {
        font-size: 16px !important;
        line-height: 1.3 !important;
    }

}


/* ============================================================
   VERY SMALL PHONE
   ============================================================ */

@media (max-width: 390px) {

    #ah-help-center .ahhc-shell {
        margin-left: 17px !important;
        margin-right: 17px !important;
    }


    #ah-help-center .ahhc-terms-panel {
        padding-left: 19px;
        padding-right: 19px;
    }

}


/* ============================================================
   REDUCED MOTION
   ============================================================ */

@media (prefers-reduced-motion: reduce) {

    #ah-help-center *,
    #ah-help-center *::before,
    #ah-help-center *::after {
        transition-duration:
            0.01ms !important;

        animation-duration:
            0.01ms !important;
    }

}
