/* =====================================================
           BASIS
           ===================================================== */

        .avh-footer,
        .avh-footer *,
        .avh-footer *::before,
        .avh-footer *::after {

            box-sizing:
                border-box;

        }


        /*
         * Full Width Breakout.
         *
         * Dadurch nimmt der Footer die komplette Browserbreite
         * ein, auch wenn der Shortcode innerhalb eines
         * begrenzten Elementor-Containers liegt.
         */

        .avh-footer {

            position:
                relative;

            width:
                100vw;

            max-width:
                none;

            margin-top:
                0;

            margin-bottom:
                0;

            margin-left:
                calc(
                    50%
                    -
                    50vw
                );

            margin-right:
                calc(
                    50%
                    -
                    50vw
                );

            padding:
                0;

            background:
                var(--avh-color-silver);

            color:
                var(--avh-base-warm-white);

            font-family:
                Verdana,
                Geneva,
                sans-serif;

            overflow:
                hidden;

        }



        /* =====================================================
           INNER
           ===================================================== */

        .avh-footer-inner {

            width:
                100%;

            max-width:
                1440px;

            margin:
                0 auto;

            padding:
                52px
                20px
                26px;

        }



        /* =====================================================
           TOP
           ===================================================== */

        .avh-footer-top {

            display:
                flex;

            flex-direction:
                column;

            align-items:
                flex-start;

            gap:
                38px;

            width:
                100%;

        }



        /* =====================================================
           BRAND
           ===================================================== */

        .avh-footer-brand {

            display:
                flex;

            flex-direction:
                column;

            align-items:
                flex-start;

            width:
                100%;

            max-width:
                440px;

        }


        .avh-footer-brand-name {

            display:
                block;

            margin:
                0;

            color:
                var(--avh-base-warm-white);

            font-family:
                "Cormorant Garamond",
                Georgia,
                serif;

            font-size:
                34px;

            font-weight:
                500;

            line-height:
                1;

            letter-spacing:
                -0.02em;

        }


        .avh-footer-brand-subline {

            display:
                block;

            max-width:
                360px;

            margin:
                13px
                0
                0;

            color:
                rgba(var(--avh-rgb-base-warm-white), 0.58);

            font-size:
                12px;

            font-weight:
                400;

            line-height:
                1.6;

        }



        /* =====================================================
           NAVIGATION
           ===================================================== */

        .avh-footer-navigation {

            display:
                flex;

            flex-direction:
                column;

            align-items:
                flex-start;

            width:
                100%;

        }



        /* =====================================================
           LINKS
           ===================================================== */

        .avh-footer-link {

            position:
                relative;

            display:
                inline-flex;

            align-items:
                center;

            width:
                auto;

            margin:
                0;

            padding:
                9px
                0;

            color:
                rgba(var(--avh-rgb-base-warm-white), 0.76) !important;

            background:
                rgba(var(--avh-rgb-base-gray), 0) !important;

            border:
                0;

            outline:
                none;

            font-family:
                Verdana,
                Geneva,
                sans-serif;

            font-size:
                11px;

            font-weight:
                600;

            line-height:
                1.3;

            letter-spacing:
                0.11em;

            text-decoration:
                none !important;

            text-transform:
                uppercase;

            transition:

                color
                250ms
                ease,

                transform
                350ms
                cubic-bezier(
                    0.22,
                    1,
                    0.36,
                    1
                );

        }


        /*
         * HOVER-AKZENT
         *
         * Der alte Hover wechselte die Schrift auf dieselbe
         * Holzkohlefarbe wie der Footer-Hintergrund.
         * Dadurch verschwand der Text optisch.
         *
         * Neu:
         * - Schrift: Florales Weiß
         * - Linie: Silber
         * - Fokusrahmen: Silber
         *
         * Ausschließlich Farben aus dem globalen Farbsystem.
         */

        .avh-footer-link::before {

            content:
                "";

            display:
                inline-block;

            width:
                0;

            height:
                1px;

            margin-right:
                0;

            background:
                var(--avh-base-gray);

            opacity:
                0;

            transition:

                width
                350ms
                cubic-bezier(
                    0.22,
                    1,
                    0.36,
                    1
                ),

                margin
                350ms
                cubic-bezier(
                    0.22,
                    1,
                    0.36,
                    1
                ),

                opacity
                220ms
                ease;

        }


        .avh-footer-link:hover,
        .avh-footer-link:focus-visible {

            color:
                var(--avh-color-floral-white) !important;

            transform:
                translateX(
                    4px
                );

        }


        .avh-footer-link:hover::before,
        .avh-footer-link:focus-visible::before {

            width:
                20px;

            margin-right:
                10px;

            opacity:
                1;

        }


        .avh-footer-link:focus-visible {

            outline:
                1px solid
                var(--avh-color-silver);

            outline-offset:
                5px;

        }


        /*
         * FAQ als eigener Unterpunkt der rechtlichen Navigation.
         * Auf Desktop wird er leicht nach innen versetzt,
         * auf Mobile entsprechend von links eingerückt.
         */

        .avh-footer-link--sub {

            margin-top:
                -3px;

            /*
             * Der Footer-Hintergrund ist Silber.
             * Deshalb darf der FAQ-Unterpunkt nicht ebenfalls
             * Silber verwenden, sonst ist er im Ruhezustand unsichtbar.
             * Holzkohle liefert klaren Kontrast und bleibt vollständig
             * innerhalb des globalen Farbsystems.
             */
            color:
                var(--avh-color-charcoal) !important;

            font-size:
                10px;

            font-weight:
                600;

            letter-spacing:
                0.09em;

        }


        .avh-footer-link--sub:hover,
        .avh-footer-link--sub:focus-visible {

            color:
                var(--avh-color-floral-white) !important;

        }



        /* =====================================================
           DIVIDER
           ===================================================== */

        .avh-footer-divider {

            width:
                100%;

            height:
                1px;

            margin:
                42px
                0
                22px;

            background:
                linear-gradient(

                    90deg,

                    rgba(var(--avh-rgb-base-gray), 0.75)
                    0%,

                    rgba(var(--avh-rgb-base-warm-white), 0.14)
                    30%,

                    rgba(var(--avh-rgb-base-warm-white), 0.06)
                    100%

                );

        }



        /* =====================================================
           BOTTOM
           ===================================================== */

        .avh-footer-bottom {

            display:
                flex;

            flex-direction:
                column;

            align-items:
                flex-start;

            gap:
                8px;

            width:
                100%;

        }


        .avh-footer-copyright {

            display:
                flex;

            flex-wrap:
                wrap;

            align-items:
                center;

            gap:
                6px;

            margin:
                0 !important;

            padding:
                0;

            color:
                rgba(var(--avh-rgb-base-warm-white), 0.72);

            font-size:
                10px;

            font-weight:
                600;

            line-height:
                1.4;

            letter-spacing:
                0.10em;

            text-transform:
                uppercase;

        }


        .avh-footer-note {

            margin:
                0 !important;

            padding:
                0;

            color:
                rgba(var(--avh-rgb-base-warm-white), 0.42);

            font-size:
                10px;

            font-weight:
                400;

            line-height:
                1.4;

        }



        /* =====================================================
           TABLET
           ===================================================== */

        @media
        (min-width: 768px) {


            .avh-footer-inner {

                padding:
                    64px
                    40px
                    30px;

            }


            .avh-footer-top {

                display:
                    grid;

                grid-template-columns:
                    minmax(
                        0,
                        1fr
                    )
                    auto;

                align-items:
                    start;

                gap:
                    60px;

            }


            .avh-footer-navigation {

                align-items:
                    flex-end;

            }


            .avh-footer-link--sub {

                margin-right:
                    18px;

                margin-left:
                    0;

            }


            .avh-footer-link {

                justify-content:
                    flex-end;

            }


            .avh-footer-bottom {

                flex-direction:
                    row;

                align-items:
                    center;

                justify-content:
                    space-between;

                gap:
                    30px;

            }

        }



        /* =====================================================
           DESKTOP
           ===================================================== */

        @media
        (min-width: 1200px) {


            .avh-footer-inner {

                padding:
                    78px
                    64px
                    34px;

            }


            .avh-footer-brand-name {

                font-size:
                    40px;

            }


            .avh-footer-brand-subline {

                font-size:
                    13px;

            }


            .avh-footer-link {

                font-size:
                    12px;

                padding-top:
                    10px;

                padding-bottom:
                    10px;

            }


            .avh-footer-divider {

                margin-top:
                    54px;

            }

        }



        /* =====================================================
           MOBILE
           ===================================================== */

        @media
        (max-width: 767px) {


            .avh-footer-link {

                /*
                 * Längere rechtliche Links dürfen auf
                 * kleinen Displays sauber umbrechen.
                 */

                max-width:
                    100%;

                white-space:
                    normal;

            }


            .avh-footer-link--sub {

                margin-right:
                    0;

                margin-left:
                    18px;

            }

        }



        /* =====================================================
           REDUCED MOTION
           ===================================================== */

        @media
        (prefers-reduced-motion: reduce) {


            .avh-footer *,
            .avh-footer *::before,
            .avh-footer *::after {

                transition-duration:
                    0.01ms !important;

                animation-duration:
                    0.01ms !important;

            }

        }
