/* **************************************************************************
   PROJEKT: Swiss Cave Diving (ClubDesk Custom CSS)
   AUTOR:   Martin Grob (MGR)
   --------------------------------------------------------------------------
   VERSION HISTORY:
   Datum       Kürzel   Veränderungen
   ----------  ------   -----------------------------------------------------
   2026-05-25  MGR      + CSS-Grid Klassen für Label und Content
   2026-05-21  MGR      + Boutique Mailclient Modalauswahl
   2026-04-12  MGR      ~ Hero Homepage: Crossfade-Block ersetzt alten Block
                          - #section_1000001 / #block_1000004 Regeln entfernt
                          + :has(.scd-hero-crossfade) für transparenten Header
   2026-03-20  MGR      + Neue Hero-Banner mit Modulen "Externer Inhalt"
   2026-02-28  MGR      + Cookie-Consent Icon-Steuerung (accept/deny)
                        ~ To-Top-Button: Pfeil-Icon
                        + Roboto Condensed lokal gehostet (DSGVO-konform)
                        - Google Fonts @import entfernt
   2026-02-21  MGR      ~ Arrow Marker für UL-Listen
   2026-02-17  MGR      ~ Schwarzer Streifen schmaler, Logo überstehend
   2026-02-14  MGR      + Genereller Blocksatz für Absätze
                        + Hero Banner inkl. korrektem Header
                        + TOC-Listen
                        + Schlagschatten Bilder und H1-H4
   2026-02-06  MGR      + Textarea Placeholder-Text in Formularen
                          (eg. Motivationstext Instructor-Bewerbung)
   2026-02-04  MGR      + Sticky Order Button für Boutique
   2026-01-19  MGR      + SVG Image-Map responsive
   2026-01-08  MGR      + Variablen
   2026-01-02  MGR      + Tabellen-Styling, Anker-Scrolling
   2025-12-30  MGR      + Listen gelb
   2025-12-29  MGR      + Terminliste Zebrastreifung
                        + Abschnittsabstände optimiert
                        + Schriften Kontaktdetailseite
   2025-12-27  MGR      + Font-weight bold statt bolder
                        + Close-Icon Hamburger
   2025-12-26  MGR      + Überschriften unterstrichen ganze Breite
                        + Mouse-over-Glossar
   2025-12-24  MGR      + Hero-Banner randlos
   2025-11-20  MGR      Initialversion   ************************************************************************** */

/* **************************************************************************
   INHALT:
   0. IMPORTS & VARIABLEN
   1. GLOBALE ELEMENTE (Desktop Standard)
   2. HEADER & NAVIGATION
   3. LISTEN & TOC
   4. ANKER-SCROLLING
   5. TERMINE & EVENTS
   6. BEITRÄGE
   7. FORMULARE
   8. SPEZIFISCHE SEITEN
   9. RESPONSIVE (Tablet & Mobile)
   ************************************************************************** */

/* ==========================================================================
   0. IMPORTS & VARIABLEN
   ========================================================================== */

/* Roboto Condensed komplett (alle Schriftschnitte) */
/*@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@100;300;400;700&family=Roboto+Condensed:wght@100;200;300;400;700&display=swap');*/

/* ==========================================================================
   ROBOTO CONDENSED – lokal gehostet (DSGVO-konform, kein Google-Aufruf)
   Ersetzt: @import url('https://fonts.googleapis.com/css2?family=Roboto+Condensed...')
   Weights: 100, 200, 300, 400, 500, 600, 700, 800, 900
   Stile:   normal, italic
   Subsets: latin, latin-ext
   ========================================================================== */

/* --- Weight 100 – normal --- */
@font-face {
    font-family: 'Roboto Condensed';
    font-style: normal;
    font-weight: 100;
    font-display: swap;
    src: url('fileservlet?type=file&id=1000358&s=djEtWVNkDupWee6u8Ab5ACCjOpNFCuVvhXAHuykEU-sXtDs=') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
    font-family: 'Roboto Condensed';
    font-style: normal;
    font-weight: 100;
    font-display: swap;
    src: url('fileservlet?type=file&id=1000340&s=djEty2l989wclVdPKRwW7LdP4unvHoRzG4TCbH4HSZs8gbw=') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* --- Weight 100 – italic --- */
@font-face {
    font-family: 'Roboto Condensed';
    font-style: italic;
    font-weight: 100;
    font-display: swap;
    src: url('fileservlet?type=file&id=1000357&s=djEtIOnA0ZPI_X-NhWJKidXa-HTAWHY2oomO5GpEpzWdsLY=') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
    font-family: 'Roboto Condensed';
    font-style: italic;
    font-weight: 100;
    font-display: swap;
    src: url('fileservlet?type=file&id=1000339&s=djEtq4FB1XfVp8rqP8G91uaC_r0TujQjwWsZcH1Hh8cc0Q8=') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* --- Weight 200 – normal --- */
@font-face {
    font-family: 'Roboto Condensed';
    font-style: normal;
    font-weight: 200;
    font-display: swap;
    src: url('fileservlet?type=file&id=1000360&s=djEt-MQ4eZrBTa3Q97ktqeEP9yUqrboVRTYhtJsUSAv4A6M=') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
    font-family: 'Roboto Condensed';
    font-style: normal;
    font-weight: 200;
    font-display: swap;
    src: url('fileservlet?type=file&id=1000342&s=djEt40G7PGL4udx4dG7WXWAtWkGMwaco2DPSh72ogiJRrX8=') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* --- Weight 200 – italic --- */
@font-face {
    font-family: 'Roboto Condensed';
    font-style: italic;
    font-weight: 200;
    font-display: swap;
    src: url('fileservlet?type=file&id=1000359&s=djEtpD-0g8DLN_EU8njwuOo-GmJq6SpyQ_FrN0L2H3HxJbQ=') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
    font-family: 'Roboto Condensed';
    font-style: italic;
    font-weight: 200;
    font-display: swap;
    src: url('fileservlet?type=file&id=1000341&s=djEtETQh_3v0HCg6DOMSdHoOQCm1m4T-HXSfjBlpeHw63wY=') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* --- Weight 300 – normal --- */
@font-face {
    font-family: 'Roboto Condensed';
    font-style: normal;
    font-weight: 300;
    font-display: swap;
    src: url('fileservlet?type=file&id=1000362&s=djEtkcwEKGakJPyHqTjdBfb9C1OjVIzM9YeGAoWUKwzaS6E=') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
    font-family: 'Roboto Condensed';
    font-style: italic;
    font-weight: 300;
    font-display: swap;
    src: url('fileservlet?type=file&id=1000615&s=djEtZBRZby8voQRZYemkA0iwOR86UjWw85anbFKOBOacXQU=') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* --- Weight 300 – italic --- */
@font-face {
    font-family: 'Roboto Condensed';
    font-style: italic;
    font-weight: 300;
    font-display: swap;
    src: url('fileservlet?type=file&id=1000361&s=djEtnQeh4tX6NVxhfQYPnGSnSG7Uzws6D8qyZf1tATdDt_Q=') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
    font-family: 'Roboto Condensed';
    font-style: italic;
    font-weight: 300;
    font-display: swap;
    src: url('fileservlet?type=file&id=1000343&s=djEtJi2PkBewWmjKmWLntjWSURFDqyFSji3oy-g_pk6dfNQ=') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* --- Weight 400 – normal --- */
@font-face {
    font-family: 'Roboto Condensed';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('fileservlet?type=file&id=1000364&s=djEtcGUEVRNNGCMQT7EdfudqViRJG1VVdNOmvhTsFx7tODk=') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
    font-family: 'Roboto Condensed';
    font-style: italic;
    font-weight: 400;
    font-display: swap;
    src: url('fileservlet?type=file&id=1000346&s=djEtL42wBrZlHlv35W_w1giZqr0vhprXHjKE3BF3LGMueYg=') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* --- Weight 400 – italic --- */
@font-face {
    font-family: 'Roboto Condensed';
    font-style: italic;
    font-weight: 400;
    font-display: swap;
    src: url('fileservlet?type=file&id=1000363&s=djEtKbK2xjeN_4sloIUXv4vyr17kfxt6rRrUxo2a6Z8F2JA=') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
    font-family: 'Roboto Condensed';
    font-style: italic;
    font-weight: 400;
    font-display: swap;
    src: url('fileservlet?type=file&id=1000345&s=djEtxnDEZKiMy3RMPrN9M5xYOXakZwwFXJSGVy9e3BiBCXE=') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* --- Weight 500 – normal --- */
@font-face {
    font-family: 'Roboto Condensed';
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url('fileservlet?type=file&id=1000366&s=djEtwIlE42oE5MAtgNiy_CzdyvKSg0UPiIXwiQfmpgSbrYA=') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
    font-family: 'Roboto Condensed';
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url('fileservlet?type=file&id=1000348&s=djEtvG7-3ZZhN5pnV2jrrAY4B0B1LSB2Au8j-J9Ta3unq54=') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* --- Weight 500 – italic --- */
@font-face {
    font-family: 'Roboto Condensed';
    font-style: italic;
    font-weight: 500;
    font-display: swap;
    src: url('fileservlet?type=file&id=1000365&s=djEtTxM6ylPK0xT0Wc6q2zhgwPuNmAwhYfrFJHO_YlG6VLg=') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
    font-family: 'Roboto Condensed';
    font-style: italic;
    font-weight: 500;
    font-display: swap;
    src: url('fileservlet?type=file&id=1000347&s=djEt4vPMN0zsRQ_nF_r_qIhvwarOiUhd3-pRNt4ly7QhLpo=') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* --- Weight 600 – normal --- */
@font-face {
    font-family: 'Roboto Condensed';
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url('fileservlet?type=file&id=1000368&s=djEtxCQ8IkHlIVuow9p-ErLkZQBc6ZOKTBOnhYUsbXxNZGE=') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
    font-family: 'Roboto Condensed';
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url('fileservlet?type=file&id=1000350&s=djEtMX7OCEpP44OJfar7RkJ_5AKNj7BSivYd51LvVpn3JFI=') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* --- Weight 600 – italic --- */
@font-face {
    font-family: 'Roboto Condensed';
    font-style: italic;
    font-weight: 600;
    font-display: swap;
    src: url('fileservlet?type=file&id=1000367&s=djEtHkCPcuDYVI2lxdx1H9oQRxvAL0qn_vhDHXEysOwqffE=') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
    font-family: 'Roboto Condensed';
    font-style: italic;
    font-weight: 600;
    font-display: swap;
    src: url('fileservlet?type=file&id=1000349&s=djEtwVW7xMIkbs-QZnAs6jygddqGsUKWRegBvWxSOKrAfqc=') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* --- Weight 700 – normal --- */
@font-face {
    font-family: 'Roboto Condensed';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('fileservlet?type=file&id=1000370&s=djEtN_1XexpPnwImO9dbjBttmHUc-MS-hL5uE_NG3dolyKI=') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
    font-family: 'Roboto Condensed';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('fileservlet?type=file&id=1000352&s=djEtu78_iZh9faUkibQkzmUsK7NjyhFdVAKe9ObgrAQeEnA=') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* --- Weight 700 – italic --- */
@font-face {
    font-family: 'Roboto Condensed';
    font-style: italic;
    font-weight: 700;
    font-display: swap;
    src: url('fileservlet?type=file&id=1000369&s=djEtoY0scxEex_J46__fEI0GLvzym1tA2bE2fKomiDmakqM=') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
    font-family: 'Roboto Condensed';
    font-style: italic;
    font-weight: 700;
    font-display: swap;
    src: url('fileservlet?type=file&id=1000351&s=djEtGPBFYinKWba3pWoNy3jBBi6z0OaclwaG56CdYJhpXH8=') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* --- Weight 800 – normal --- */
@font-face {
    font-family: 'Roboto Condensed';
    font-style: normal;
    font-weight: 800;
    font-display: swap;
    src: url('fileservlet?type=file&id=1000372&s=djEtjvIXqOQbH9zzBOen3eauPbXGs5M2ntAxw7qeksKhmAE=') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
    font-family: 'Roboto Condensed';
    font-style: normal;
    font-weight: 800;
    font-display: swap;
    src: url('fileservlet?type=file&id=1000354&s=djEtYOMcFj0r1nl6vXDe6ESkvElXp56ffyNL-HSJBx7-rcI=') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* --- Weight 800 – italic --- */
@font-face {
    font-family: 'Roboto Condensed';
    font-style: italic;
    font-weight: 800;
    font-display: swap;
    src: url('fileservlet?type=file&id=1000371&s=djEtrdJePumOBBZpRhprK0vLPYmSFfFhUDdROPPx_sIq6R4=') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
    font-family: 'Roboto Condensed';
    font-style: italic;
    font-weight: 800;
    font-display: swap;
    src: url('fileservlet?type=file&id=1000353&s=djEt1RjEfhcERC7fA_NZcBdAQGHI0nTkbRl-h_2LA4MEkts=') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* --- Weight 900 – normal --- */
@font-face {
    font-family: 'Roboto Condensed';
    font-style: normal;
    font-weight: 900;
    font-display: swap;
    src: url('fileservlet?type=file&id=1000374&s=djEtciCx-JCEKnHiESiBseJQVuAlwOxR0CrfBT9RI0qhtD4=') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
    font-family: 'Roboto Condensed';
    font-style: normal;
    font-weight: 900;
    font-display: swap;
    src: url('fileservlet?type=file&id=1000356&s=djEt6dhWW9jtCP9bU5sJ8bMcxfdb2GaoqnkDV-ta5QS1nZ8=') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* --- Weight 900 – italic --- */
@font-face {
    font-family: 'Roboto Condensed';
    font-style: italic;
    font-weight: 900;
    font-display: swap;
    src: url('fileservlet?type=file&id=1000373&s=djEtlU2alF3aDLR1UtT8_19OlXm1iT7zKfWyiw2Nj6SSLHo=') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
    font-family: 'Roboto Condensed';
    font-style: italic;
    font-weight: 900;
    font-display: swap;
    src: url('fileservlet?type=file&id=1000355&s=djEtllZHUyyo4obSL9nPBNq2XxuVSIzRlW50cmQvllq1pko=') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
    /* SVGs */
    --avif-home-hero-mobile: url('fileservlet?type=file&id=1000210&s=djEtmOIyd82u2V4rRSB8VOD8adpcvJg7ZpqW4-wrasgTaMU=');

    --icon-totop: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 4L4 14h5v6h6v-6h5L12 4z' fill='%23f7e63e'/%3E%3C/svg%3E");

    --icon-totop-hover: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 4L4 14h5v6h6v-6h5L12 4z' fill='%23c8a62a'/%3E%3C/svg%3E");

    --icon-cookies-accepted: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2L4 5.5v5.8c0 5.1 3.5 9.8 8 11.2 4.5-1.4 8-6.1 8-11.2V5.5L12 2z' fill='%23f7e63e'/%3E%3Cpolyline points='9,11.5 11,13.5 15,9.5' fill='none' stroke='%23333' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");

    --icon-cookies-denied: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2L4 5.5v5.8c0 5.1 3.5 9.8 8 11.2 4.5-1.4 8-6.1 8-11.2V5.5L12 2z' fill='%23f7e63e'/%3E%3Crect x='9.5' y='11.5' width='5' height='4' rx='0.8' fill='%23333'/%3E%3Cpath d='M10.5 11.5V10a1.5 1.5 0 0 1 3 0v1.5' fill='none' stroke='%23333' stroke-width='1.4' stroke-linecap='round'/%3E%3C/svg%3E");

    --icon-cookies-accepted-hover: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2L4 5.5v5.8c0 5.1 3.5 9.8 8 11.2 4.5-1.4 8-6.1 8-11.2V5.5L12 2z' fill='%23c8a62a'/%3E%3Cpolyline points='9,11.5 11,13.5 15,9.5' fill='none' stroke='%23333' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");

    --icon-cookies-denied-hover: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2L4 5.5v5.8c0 5.1 3.5 9.8 8 11.2 4.5-1.4 8-6.1 8-11.2V5.5L12 2z' fill='%23c8a62a'/%3E%3Crect x='9.5' y='11.5' width='5' height='4' rx='0.8' fill='%23333'/%3E%3Cpath d='M10.5 11.5V10a1.5 1.5 0 0 1 3 0v1.5' fill='none' stroke='%23333' stroke-width='1.4' stroke-linecap='round'/%3E%3C/svg%3E");

    --icon-external-link: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6'%3E%3C/path%3E%3Cpolyline points='15 3 21 3 21 9'%3E%3C/polyline%3E%3Cline x1='10' y1='14' x2='21' y2='3'%3E%3C/line%3E%3C/svg%3E");

    --icon-arrow-fill: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 195 116'%3E%3Cpath fill='black' d='M0,45.39073333L0.01269275,45.65868441L0.05065732,45.92423587L0.11355374,46.18500958L0.20081872,46.4386702L0.31167079,46.68294609L0.4451172,46.91564964L0.59996288,47.1346969L0.77482113,47.33812619L0.96812602,47.52411573L1.17814641,47.6909999L1.40300147,47.83728416L1.64067754,47.96165849L1.88904612,48.06300906L2.14588295,48.14042822L2.89477391,48.32801564L3.02779402,48.36836685L3.83966007,48.65885717L3.96808455,48.71205233L4.7475682,49.08072064L4.87016024,49.14624745L5.60975466,49.58954329L5.72533364,49.66677069L6.41791611,50.18042486L6.52536894,50.26860911L7.16426953,50.84767486L7.26256136,50.94596669L7.84162711,51.58486729L7.92981136,51.69232011L8.44346553,52.38490258L8.52069293,52.50048156L8.96398877,53.24007598L9.02951558,53.36266802L9.39818389,54.14215167L9.45137905,54.27057615L9.74186937,55.0824422L9.78222058,55.21546231L9.99173532,56.05189203L10.01885397,56.18822672L10.14537539,57.04116484L10.15900033,57.17950114L10.20130995,58.0407334L10.20130995,58.17973905L10.15900033,59.0409713L10.14537539,59.1793076L10.01885397,60.03224572L9.99173532,60.16858041L9.78222058,61.00501013L9.74186937,61.13803025L9.45137905,61.94989629L9.39818389,62.07832077L9.02951558,62.85780442L8.96398877,62.98039646L8.52069293,63.71999088L8.44346553,63.83556986L7.92981136,64.52815233L7.84162711,64.63560516L7.26256136,65.27450575L7.16426953,65.37279759L6.52536894,65.95186333L6.41791611,66.04004758L5.72533364,66.55370175L5.60975466,66.63092915L4.87016024,67.07422499L4.7475682,67.1397518L3.96808455,67.50842011L3.83966007,67.56161527L3.02779402,67.85210559L2.89477391,67.8924568L2.14588295,68.08004422L1.88904612,68.15746338L1.64067754,68.25881395L1.40300147,68.38318828L1.17814641,68.52947254L0.96812602,68.69635671L0.77482113,68.88234625L0.59996288,69.08577554L0.4451172,69.3048228L0.31167079,69.53752635L0.20081872,69.78180224L0.11355374,70.03546286L0.05065732,70.29623657L0.01269275,70.56178803L0,70.82973911L0,112.38249544L0.00336545,112.5205838L0.00652971,112.58546185L0.03340539,112.86032777L0.08690162,113.13127376L0.16651062,113.39572789L0.27147668,113.65117985L0.40080344,113.89520478L0.55326326,114.1254863L0.72740894,114.33983849L0.92158742,114.53622661L1.13395546,114.71278649L1.3624972,114.86784213L1.60504321,114.99992169L1.85929115,115.10777141L2.12282759,115.19036754L2.39315094,115.24692604L2.66769518,115.27691004L2.94385421,115.28003491L3.21900663,115.25627099L3.49054057,115.20584386L3.5537502,115.19088671L3.68735276,115.15581425L62.12586801,98.28272182L62.3918177,98.19141752L62.64741304,98.07421369L62.89013899,97.9322636L63.11760714,97.76696402L63.32757925,97.57994148L63.5179892,97.37303628L63.68696338,97.14828432L63.8328391,96.90789716L63.95418095,96.65424017L64.04979496,96.38980932L75.67591028,58.44838758L75.73528078,58.22152636L75.77569667,57.9905341L75.79688135,57.75699165L75.81501445,57.38788404L75.82863938,57.24954774L75.9245478,56.60298568L75.95166646,56.46665098L76.11048722,55.83260296L76.15083843,55.69958285L76.371042,55.0841551L76.42423716,54.95573063L76.70370286,54.36485005L76.76922967,54.24225802L77.10526608,53.68161513L77.18249349,53.56603615L77.57186441,53.04103024L77.66004866,52.93357742L78.09900423,52.44926457L78.19729607,52.35097274L78.68160891,51.91201716L78.78906173,51.82383291L79.31406765,51.43446199L79.42964662,51.35723459L79.99028951,51.02119817L80.11288155,50.95567136L80.70376212,50.67620567L80.8321866,50.62301051L81.44761434,50.40280694L81.58063446,50.36245573L82.21468248,50.20363497L82.35101717,50.17651631L82.99757923,50.08060789L83.13591553,50.06698295L83.78876489,50.03491052L83.92777054,50.03491052L84.5806199,50.06698295L84.7189562,50.08060789L85.36551826,50.17651631L85.50185296,50.20363497L86.13590097,50.36245573L86.26892109,50.40280694L86.88434884,50.62301051L87.01277331,50.67620567L87.60365388,50.95567136L87.72624592,51.02119817L88.28688881,51.35723459L88.40246779,51.43446199L88.9274737,51.82383291L89.03492652,51.91201716L89.51923936,52.35097274L89.6175312,52.44926457L90.05648677,52.93357742L90.14467102,53.04103024L90.53404195,53.56603615L90.61126935,53.68161513L90.94730577,54.24225802L91.01283258,54.36485005L91.29229827,54.95573063L91.34549343,55.0841551L91.565697,55.69958285L91.60604821,55.83260296L91.76486897,56.46665098L91.79198763,56.60298568L91.88789605,57.24954774L91.90152099,57.38788404L91.93359342,58.0407334L91.93359342,58.17973905L91.90152099,58.8325884L91.88789605,58.9709247L91.79198763,59.61748676L91.76486897,59.75382146L91.60604821,60.38786948L91.565697,60.52088959L91.34549343,61.13631734L91.29229827,61.26474182L91.01283258,61.85562239L90.94730577,61.97821442L90.61126935,62.53885732L90.53404195,62.65443629L90.14467102,63.1794422L90.05648677,63.28689502L89.6175312,63.77120787L89.51923936,63.8694997L89.03492652,64.30845528L88.9274737,64.39663953L88.40246779,64.78601045L88.28688881,64.86323785L87.72624592,65.19927427L87.60365388,65.26480108L87.01277331,65.54426678L86.88434884,65.59746194L86.26892109,65.8176655L86.13590097,65.85801671L85.50185296,66.01683748L85.36551826,66.04395613L84.75908914,66.1339114L84.47491485,66.19104693L84.19806113,66.27690444L83.93142287,66.39058615L83.67778815,66.53090337L83.43980907,66.69638888L83.21997405,66.88531229L83.02058176,67.09569815L82.84371713,67.32534657L82.69122954,67.57185626L82.56471346,67.83264962L82.46549178,68.10499967L75.80686767,89.76693162L75.73852824,90.03529231L75.69670063,90.30904071L75.68178405,90.58556419L75.69392086,90.86222362L75.73299522,91.13637856L75.79863422,91.4054125L75.89021139,91.66675779L76.00685273,91.91792016L76.14744502,92.15650253L76.31064644,92.38022788L76.49489942,92.58696099L76.69844546,92.7747288L76.91934191,92.94173927L77.15548056,93.08639845L77.4046077,93.20732573L77.66434567,93.30336698L77.93221556,93.37360559L78.20566082,93.4173712L78.4820717,93.43424612L78.75881015,93.42406929L79.033235,93.38693784L79.30272713,93.32320616L191.76002654,60.85314083L191.89409584,60.81080154L191.9509173,60.79129484L192.21193889,60.68694987L192.46134208,60.55726491L192.69667419,60.40351531L192.91562091,60.22721309L193.11602906,60.03009204L193.2959278,59.81409069L193.45354795,59.58133324L193.58733945,59.3341087L193.69598655,59.07484831L193.77842079,58.80610171L193.8338315,58.53051181L193.86167376,58.25078883L193.86167376,57.96968361L193.8338315,57.68996063L193.77842079,57.41437073L193.69598655,57.14562413L193.58733945,56.88636375L193.45354795,56.6391392L193.2959278,56.40638176L193.11602906,56.1903804L192.91562091,55.99325935L192.69667419,55.81695713L192.46134208,55.66320753L192.21193889,55.53352257L191.9509173,55.4291776L191.89409584,55.4096709L191.76002654,55.36733161L64.87303627,18.73094709L64.60514101,18.667512L64.3323556,18.63036361L64.05725308,18.61985232L63.78242835,18.63607728L63.51047368,18.67888544L63.24395427,18.74787303L62.98538405,18.84238932L62.73720199,18.96154278L62.50174905,19.10420951L62.28124613,19.26904381L62.07777312,19.45449088L61.89324927,19.6588015L61.72941509,19.88004852L61.58781594,20.11614503L61.46978745,20.36486407L61.37644293,20.6238596L49.99338105,57.77208486L49.93401056,57.99894608L49.89359467,58.22993834L49.87240999,58.46348079L49.85427689,58.8325884L49.84065196,58.9709247L49.74474353,59.61748676L49.71762488,59.75382146L49.55880412,60.38786948L49.51845291,60.52088959L49.29824934,61.13631734L49.24505418,61.26474182L48.96558848,61.85562239L48.90006167,61.97821442L48.56402525,62.53885732L48.48679785,62.65443629L48.09742693,63.1794422L48.00924268,63.28689502L47.57028711,63.77120787L47.47199527,63.8694997L46.98768243,64.30845528L46.8802296,64.39663953L46.35522369,64.78601045L46.23964472,64.86323785L45.67900183,65.19927427L45.55640979,65.26480108L44.96552922,65.54426678L44.83710474,65.59746194L44.22167699,65.8176655L44.08865688,65.85801671L43.45460886,66.01683748L43.31827417,66.04395613L42.6717121,66.13986455L42.5333758,66.15348949L41.88052645,66.18556192L41.7415208,66.18556192L41.08867144,66.15348949L40.95033514,66.13986455L40.30377308,66.04395613L40.16743838,66.01683748L39.53339036,65.85801671L39.40037025,65.8176655L38.7849425,65.59746194L38.65651803,65.54426678L38.06563746,65.26480108L37.94304542,65.19927427L37.38240253,64.86323785L37.26682355,64.78601045L36.74181764,64.39663953L36.63436482,64.30845528L36.15005198,63.8694997L36.05176014,63.77120787L35.61280457,63.28689502L35.52462031,63.1794422L35.13524939,62.65443629L35.05802199,62.53885732L34.72198557,61.97821442L34.65645876,61.85562239L34.37699307,61.26474182L34.32379791,61.13631734L34.10359434,60.52088959L34.06324313,60.38786948L33.90442237,59.75382146L33.87730371,59.61748676L33.78139529,58.9709247L33.76777035,58.8325884L33.73569792,58.17973905L33.73569792,58.0407334L33.76777035,57.38788404L33.78139529,57.24954774L33.87730371,56.60298568L33.90442237,56.46665098L34.06324313,55.83260296L34.10359434,55.69958285L34.32379791,55.0841551L34.37699307,54.95573063L34.65645876,54.36485005L34.72198557,54.24225802L35.05802199,53.68161513L35.13524939,53.56603615L35.52462031,53.04103024L35.61280457,52.93357742L36.05176014,52.44926457L36.15005198,52.35097274L36.63436482,51.91201716L36.74181764,51.82383291L37.26682355,51.43446199L37.38240253,51.35723459L37.94304542,51.02119817L38.06563746,50.95567136L38.65651803,50.67620567L38.7849425,50.62301051L39.40037025,50.40280694L39.53339036,50.36245573L40.16743838,50.20363497L40.30377308,50.17651631L40.90985642,50.08661234L41.19406922,50.02946698L41.47095905,49.9435919L41.73762983,49.82988527L41.9912924,49.68953639L42.22929363,49.5240132L42.44914418,49.33504697L42.6485446,49.12461412L42.82540929,48.89491565L42.97788838,48.64835403L43.10438704,48.38750811L43.20358221,48.11510615L52.41429014,18.13423491L52.48343338,17.86168525L52.52523408,17.58362625L52.53928094,17.30279393L52.52543574,17.02195159L52.48383472,16.74386265L52.41488721,16.4712634L52.31927164,16.20683616L52.19792884,15.95318279L52.05205279,15.71279917L51.88307885,15.48805062L51.69266969,15.28114857L51.48269887,15.09412889L51.25523244,14.9288318L51.0125086,14.78688376L50.75691568,14.66968151L50.49096865,14.57837827L3.68735276,1.06465819L3.5537502,1.02958573L3.49054057,1.01462858L3.21900663,0.96420145L2.94385421,0.94043753L2.66769518,0.9435624L2.39315094,0.9735464L2.12282759,1.0301049L1.85929115,1.11270103L1.60504321,1.22055075L1.3624972,1.35263031L1.13395546,1.50768595L0.92158742,1.68424583L0.72740894,1.88063396L0.55326326,2.09498614L0.40080344,2.32526766L0.27147668,2.56929259L0.16651062,2.82474455L0.08690162,3.08919868L0.03340539,3.36014467L0.00652971,3.63501059L0.00336545,3.69988864L0,3.837977L0,45.39073333Z' /%3E%3C/svg%3E");

    /* Farben */
    --primary-color:       #f7e63e;   /* rgba(247, 230,  62, 1.0)  |  #f7e63eff */
    --h1-color:            #f7e63ed8; /* rgba(247, 230,  62, 0.85)              */
    --h2-color:            #ccc;      /* rgba(204, 204, 204, 1)    |  #ccccccff */
    --a-hover-color:       #c8a62a;   /* rgba(200, 166,  42, 1.0)  |  #c8a62aff */
    --list-oddrow-color:   #d7d7d7;   /* rgba(215, 215, 215, 1.0)  |  #d7d7d7ff */
    --input-product-count: #fcf5b2;   /* rgba(252, 245, 178, 1.0)  |  #fcf5b2ff */
    --glossary-bg-color:   #333;
    --glossary-fg-color:   #fff;
    --btn-bg-color:        #000;
}

/* ==========================================================================
   1. GLOBALE ELEMENTE (Desktop Standard)
   ========================================================================== */

/* --- Text & Typografie --- */

/* Automatische Silbentrennung */
body {
    hyphens: auto;
    -webkit-hyphens: auto;
    -webkit-font-smoothing: antialiased;
    text-rendering: geometricPrecision;
    -webkit-text-stroke: 0.2px currentColor;
}

/* Automatischer Blocksatz */
p,
li,
.cd-tile-h-detail-value {
    text-align: justify;
}

/* Schriftschnitt für Fettschrift bold statt bolder */
b,
strong {
    font-weight: bold;
}

/* Cookie Blocker Text */
.cd-additional-hiddenBlockText {
    color: rgb(240, 240, 240, 0.5) !important;
    font-style: italic;
}

/* --- Links --- */

/* Basis-Styling für das Icon bei externen Links */
/* Gilt für alle Links im Text (p, li), die mit http/https starten, target=_blank haben und NICHT deine Domain sind */
main :is(
    p a[href^="http"][target="_blank"]:not([href*="swisscavediving"]):not([href*="swiss-cave-diving"]),
    p a[href*="archiv.swisscavediving"][target="_blank"],
    li a[href^="http"][target="_blank"]:not([href*="swisscavediving"]):not([href*="swiss-cave-diving"]),
    li a[href*="archiv.swisscavediving"][target="_blank"]
)::after {
    content: "";
    display: inline-block;
    top: -1px;
    width: 12px;
    height: 12px;
    margin-left: 6px;
    vertical-align: middle;

    /* Masken-Logik */
    -webkit-mask-image: var(--icon-external-link);
    mask-image: var(--icon-external-link);
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;

    /* Standard-Farbe & Sichtbarkeit */
    background-color: var(--primary-color);
    opacity: 0.8;
    transition: opacity 0.2s, background-color 0.2s;
}

/* Beim Hovern wird das Icon deutlicher */
main :is(
    p a[href^="http"][target="_blank"]:not([href*="swisscavediving"]):not([href*="swiss-cave-diving"]),
    p a[href*="archiv.swisscavediving"][target="_blank"],
    li a[href^="http"][target="_blank"]:not([href*="swisscavediving"]):not([href*="swiss-cave-diving"]),
    li a[href*="archiv.swisscavediving"][target="_blank"]
    ):hover::after {
        opacity: 1;
}

/* Besuchte Links dunkelgelb */
main a:visited:not(.button):not(.btn):not(.cd-button) {
    color: var(--a-hover-color) !important;
}

/* Besuchte Links mouse-over standardgelb */
main a:visited:hover:not(.button):not(.btn):not(.cd-button) {
    color: var(--primary-color) !important;
}

/* Unbesuchter Link: Beim Hovern Icon-Farbe auf Dunkelgelb anpassen */
a[href^="http"][target="_blank"]:not([href*="swisscavediving"]):not([href*="swiss-cave-diving"]):not(:visited):hover::after {
    background-color: var(--a-hover-color);
    opacity: 1;
}

/* Das Icon bei besuchten Links auf die "Besucht-Farbe" umstellen */
main a:visited[href^="http"][target="_blank"]:not([href*="swisscavediving"]):not([href*="swiss-cave-diving"])::after {
    background-color: var(--a-hover-color);
    opacity: 0.5;
}

/* Falls das Icon beim Hovern über einen besuchten Link wieder hell werden soll */
main a:visited[href^="http"][target="_blank"]:not([href*="swisscavediving"]):not([href*="swiss-cave-diving"]):hover::after {
    background-color: var(--primary-color);
    opacity: 1.0;
}

/* --- Überschriften --- */

/* Schlagschatten */
h1,
h2,
h3,
h4,
h5,
h6 {
    text-shadow: 2px 2px 3px rgba(0, 0, 0, 0.5);
}

/* Unterstrich */
h1,
h2 {
    border-bottom: 2px solid;
}

h3 {
    border-bottom: 1px solid;
}

/* --- Abschnitte --- */

/* Hinweisfarbe im Backend für leere Abschnitte */
body :not(.cd-min-height-set).cd-empty-section .cd-section-content::before {
    color: #ccc !important;
}

/* Desktop: Erste Überschrift ohne Hero-Banner */
.cd-content > .cd-section:first-of-type:not(:has(.cd-backgroundPane)) .cd-block:first-of-type .cd-block-content:has(h1, h2, h3) {
    padding-top: 0 !important;
}

/* --- Bilder --- */

/* Schlagschatten */
.cd-image-block img,
svg {
    filter: drop-shadow(4px 4px 8px rgba(51, 51, 51, 0.7));
}

/* Ausnahme: Cookie-Icon nicht überschreiben */
.cc-revoke::before {
    filter: drop-shadow(0 2px 6px rgba(0,0,0,0.6)) !important;
}

/* Ausnahme: To-Top-Icon nicht überschreiben */
.cd-totop-button::before {
    filter: drop-shadow(0 1px 2px rgba(0,0,0,0.3)) !important;
}

/* Nur verkleinern, nie vergrößern */
.cd-image-contain {
    object-fit: scale-down !important;
}

/* --- Hilfsklassen --- */
.all-space-0 {
    margin: 0;
    padding: 0;
}

.top-space-0 {
    margin-top: 0;
    padding-top: 0;
}

.top-margin-10
{
    margin-top: 10px;
}

.bottom-space-0 {
    margin-bottom: 0;
    padding-bottom: 0;
}

.course-disclaimer {
    margin-top: -1px;
    text-align: right;
    font-size: 0.8em;
    color: var(--primary-color) !important;
}

/* --- Tabellen --- */

/* Kopfzeilen */
.cd-block-content table thead td {
    font-weight: bold;
    color: var(--h2-color) !important;
    background-color: var(--glossary-bg-color);
}

/* Abstände von Listen in Tabellenzellen */
.table-ul-nospace ul,
.table-ol-nospace ol {
    margin: 1px 0;
    padding-left: 20px;
}

/* --- Glossar Tooltip --- */

/* Glossar - Mouseover-Effekte */
.mouseover-glossary-container {
    position: relative;
    display: inline-block;
    cursor: pointer;
    text-decoration: underline dotted var(--primary-color);
    text-underline-offset: 3px;
}

.mouseover-glossary-text {
    /* Verwendung:
    <span class="glossary-container">
        Wort mit glossary
        <span class="glossary-text">
            Dies ist der gestylte glossary!
        </span>
    </span>
    */

    /* Positionierung */
    position: absolute;
    bottom: 125%;
    left: 50%;
    z-index: 1;

    /* Box-Modell & Visuelles */
    width: 120px;
    margin-left: -60px;
    padding: 5px 0;
    background-color: var(--glossary-bg-color);
    color: var(--glossary-fg-color);
    border-radius: 6px;

    /* Status & Animation */
    visibility: hidden;
    opacity: 0;
    text-align: center;
    transition: opacity 0.3s;
}

/* Einblenden bei mouse-over */
.mouseover-glossary-container:hover .mouseover-glossary-text {
    visibility: visible;
    opacity: 1;
}

/* --- To-Top-Button --- */
.cd-totop-button {
    right: -100px !important;
    bottom: 63px !important;
    width: 48px !important;
    height: 48px !important;
    background: transparent !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    transition: all 0.4s ease !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
}

.cd-scroll .cd-totop-button {
    right: -5px !important;
    bottom: 63px !important;
}

.cd-totop-button:hover {
    background: transparent !important;
    box-shadow: none !important;
    transform: scale(1.1) !important;
}

/* FontAwesome ausblenden */
.cd-totop-button i {
    display: none !important;
}

/* Unser Pfeil */
.cd-totop-button::before {
    content: "" !important;
    display: block !important;
    width: 40px !important;
    height: 40px !important;
    background-image: var(--icon-totop) !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: contain !important;
    filter: drop-shadow(0 2px 6px rgba(0,0,0,0.5)) !important;
    transition: background-image 0.2s ease !important;
}

.cd-totop-button:hover::before {
    background-image: var(--icon-totop-hover) !important;
}

/* --- Cookie Banner --- */

/* Transparentes Cookie-Banner Icon rechts unten */
.cc-revoke {
    position: fixed !important;
    bottom: 5px !important;
    right: -5px !important;
    left: auto !important;
    top: auto !important;
    width: 48px !important;
    height: 48px !important;
    padding: 0 !important;
    margin: 0 !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    outline: none !important;

    /* Text ausblenden */
    font-size: 0 !important;
    color: transparent !important;

    opacity: 1 !important;
    visibility: visible !important;
    cursor: pointer !important;
    z-index: 10000001 !important;
    transition: transform 0.3s ease !important;
}

.cc-revoke:hover,
.cc-revoke:focus,
.cc-revoke:active {
    transform: scale(1.15) !important;
    background: transparent !important;
    outline: none !important;
    box-shadow: none !important;
}

/* SVG Schild-Icon – Standard (wird per JS ersetzt) */
.cc-revoke::before {
    content: "" !important;
    display: block !important;
    width: 32px !important;
    height: 32px !important;
    background-image: var(--icon-cookies-denied) !important; /* Fallback */
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: contain !important;
    filter: drop-shadow(0 2px 6px rgba(0,0,0,0.6)) !important;
    transition: filter 0.25s ease !important;
    pointer-events: none !important;
}

/* Hover NUR wenn keine Klasse gesetzt (Fallback) */
.cc-revoke:not(.cookie-accepted):not(.cookie-denied):hover::before {
    background-image: var(--icon-cookies-accepted-hover) !important;
}

.cc-revoke:hover::before {
    filter: drop-shadow(0 2px 8px rgba(0,0,0,0.8)) !important;
    background-image: var(--icon-cookies-accepted-hover) !important;
}

/* Schild + Häkchen (Cookies akzeptiert) */
.cc-revoke.cookie-accepted::before {
    background-image: var(--icon-cookies-accepted) !important;
}

.cc-revoke.cookie-accepted:hover::before {
    background-image: var(--icon-cookies-accepted-hover) !important;
}

/* Schild + Schloss (Cookies abgelehnt) */
.cc-revoke.cookie-denied::before {
    background-image: var(--icon-cookies-denied) !important;
}
.cc-revoke.cookie-denied:hover::before {
    background-image: var(--icon-cookies-denied-hover) !important;
}

/* Popup rechts unten, passend zum Icon-Button */
.cc-window.cc-banner,
.cc-window.cc-floating {
    right: -5px !important;
    left: auto !important;
    bottom: 60px !important;  /* über dem Icon-Button */
    top: auto !important;
    max-width: 420px !important;
    border-radius: 12px !important;
}

/* Falls es als volle Leiste kommt: auch einschränken */
.cc-window.cc-banner {
    max-width: 420px !important;
    border-radius: 12px !important;
}

/* Buttons im Popup sichtbar gestalten */
.cc-btn:first-child {
    background-color: rgba(80, 80, 80, 1.0) !important;
    color: rgba(255, 255, 255, 1.0) !important;
    border: 1px solid rgba(255, 255, 255, 0.4) !important;
}
.cc-btn:first-child:hover {
    background-color: rgba(110, 110, 110, 1.0) !important;
}
.cc-btn.cc-allow {
    background-color: rgba(247, 230, 62, 1.0) !important;
    color: rgba(51, 51, 51, 1.0) !important;
    font-weight: 700 !important;
}
.cc-btn.cc-allow:hover {
    background-color: rgba(220, 205, 40, 1.0) !important;
}

/* ==========================================================================
   2. HEADER & NAVIGATION
   ========================================================================== */

/* --- Navigation Bar (Desktop) --- */

/* Schwarzer Balken im Header um 1/2 schmaler
   Die Balkenhöhe setzt sich zusammen aus:
   - Höhe Logo: 150px
   - Margin Top und Bottom Logo: je 20px
   = 190 px
   Ziel: nur noch halb so hoch und Logo steht und darüber hinaus.
*/

#cd-navigation-element,
.cd-navigation-bar-content,
.cd-navigation-bar,
.scroll-offset-desktop,
.scroll-offset-mobile {
    height: 95px;
}

.cd-club-logo {
    margin-top: 115px;
}

.cd-megamenu-button {
    border-radius: 40%;
}
/* Hamburger Close Icon */
.cd-megamenu-button-open .fa-bars:before,
.cd-megamenu-button-open .fa-navicon:before {
    content: "\f057";
}

/* --- Hero Banners --- */

/* Generell für Hero Banner mit Modul "Externer Inhalt" */
.scd-hero-banner {
    width: 100%;
    aspect-ratio: 2560 / 600;
    overflow: hidden;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}

/* Hero Banner auf Startseite */
.scd-hero-banner--home {
    aspect-ratio: 2560 / 800;
}

/* Transparenter Header bei Hero Banner und Seite ganz oben (no-scroll) */
body:not(.cd-scroll):has(.cd-backgroundPane[style*="background-image"]) .cd-navigation-bar-container,
body:not(.cd-scroll):has(.scd-hero-banner) .cd-navigation-bar-container,
body:not(.cd-scroll):has(.scd-hero-crossfade) .cd-navigation-bar-container {
    background: none;
    border-bottom: none;
}

/* Buttons für besseren Kontrast mit dunklem Hintergrund */
body:not(.cd-scroll):has(.cd-backgroundPane[style*="background-image"]) .cd-button-login,
body:not(.cd-scroll):has(.cd-backgroundPane[style*="background-image"]) .cd-megamenu-button,
body:not(.cd-scroll):has(.scd-hero-banner) .cd-button-login,
body:not(.cd-scroll):has(.scd-hero-banner) .cd-megamenu-button,
body:not(.cd-scroll):has(.scd-hero-crossfade) .cd-button-login,
body:not(.cd-scroll):has(.scd-hero-crossfade) .cd-megamenu-button {
    background-color: var(--btn-bg-color);
}

body:not(.cd-scroll):has(.cd-backgroundPane[style*="background-image"]) .cd-megamenu-button,
body:not(.cd-scroll):has(.scd-hero-banner) .cd-megamenu-button,
body:not(.cd-scroll):has(.scd-hero-crossfade) .cd-megamenu-button {
    margin: 0 10px;
    padding: 4px 10px;
}

/* Header beim Scrollen wieder abgedunkelt und gelber unterer Rand */
body.cd-scroll .cd-navigation-bar-container {
    background: rgba(0, 0, 0, 0.90);
    border-bottom: 1px solid var(--primary-color);
}

/* Hero-Block Unser Team */
.cd-block-content:has(.scd-hero-crossfade),
.cd-block-content:has(.scd-hero-banner) {
    padding: 0 !important;
}

/* CONTAINER QUERY VERSION (für Zukunft):
#block_1000004 {
    container-type: size;
}

@container (min-width: 992px) {
    #block_1000004 {
        background-size: 100% 800px !important;
    }
}
*/

/* ==========================================================================
   3. LISTEN & TOC (Desktop: horizontal)
   ========================================================================== */

/* Standard UL-Listen im Content-Bereich mit Arrow-Icon */
.cd-block-content ul:not([class*="toc"]):not(.cave-zones),
.cd-news-text ul:not([class*="toc"]):not(.cave-zones),
main ul:not([class*="toc"]):not(.cave-zones) {
    list-style: none;
    padding-left: 0;
}

.cd-block-content ul:not([class*="toc"]):not(.cave-zones) > li,
.cd-news-text ul:not([class*="toc"]):not(.cave-zones) > li,
main ul:not([class*="toc"]):not(.cave-zones) > li {
    padding-left: 1.5em;
    position: relative;
}

.cd-block-content ul:not([class*="toc"]):not(.cave-zones) > li::before,
.cd-news-text ul:not([class*="toc"]):not(.cave-zones) > li::before,
main ul:not([class*="toc"]):not(.cave-zones) > li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.35em; /* Vertikale Ausrichtung anpassen */
    width: 1em;
    height: 1em;
    background-color: color-mix(in srgb, var(--primary-color), transparent 25%);
    -webkit-mask-image: var(--icon-arrow-fill);
    mask-image: var(--icon-arrow-fill);
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
}

.cd-block-content ul:not([class*="toc"]):not(.cave-zones) > li:hover::before,
.cd-news-text ul:not([class*="toc"]):not(.cave-zones) > li:hover::before,
main ul:not([class*="toc"]):not(.cave-zones) > li:hover::before {
    transform: translateX(3px);
}

/* Verschachtelte Listen (ul in ul) - kleinere Icons */
.cd-block-content ul:not([class*="toc"]):not(.cave-zones) ul > li::before,
.cd-news-text ul:not([class*="toc"]):not(.cave-zones)  ul > li::before,
main ul:not([class*="toc"]):not(.cave-zones) ul > li::before {
    width: 0.8em;
    height: 0.8em;
/*    opacity: 0.7;*/
}

/* Listen in Personen-Tiles - keine Icons */
.cd-tile-container ul li::before,
.cd-contact-detail ul li::before {
    display: none;
}

/* --- TOC (Desktop: horizontal) --- */

/* Basiseinstellungen für alle TOC-ULs */
ul[class*="toc"] {
    list-style: none;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    margin-block-start: 0.5em;
    margin-block-end: 0.5em;
}

ul[class*="toc"] li {
    display: inline;
}

/* Trennstrich: symmetrisch links und rechts, nur zwischen Items */
ul[class*="toc"] li:not(:first-child)::before {
    content: "|";
    color: #999;
    margin: 0 0.5em;
}

/* Standard TOC */
ul.toc li:not(:first-child)::before {
    margin: 0 20px;
}

/* Condensed TOC */
ul.toc.condensed li:not(:first-child)::before {
    margin: 0 10px;
}

/* Paging TOC (Footer) */
/* Weniger Abstand und Condensed Schrift für mehr Platz in der Breite */
ul.toc-paging,
ul.toc-paging-right,
.paging {
    font-family: "Roboto Condensed", sans-serif;
}

ul.toc-paging li:not(:first-child)::before,
ul.toc-paging-right li:not(:first-child)::before {
    margin: 0 10px;
}

/* Linke Seite rechtsbündig zur Mitte hin */
ul.toc-paging {
    justify-content: flex-end;
}

.paging-arrow {
    opacity: 0.75;
    margin: 0 20px;
}

.paging-center {
    display: flex;
    justify-content: center;
    align-items: center;
}

/* Mitglieder-only Inhalte */
.members-only {
    display: none !important;
}

body.scd-logged-in .members-only {
    display: inline !important;
}

/* CONTAINER QUERY VERSION (für Zukunft):
.cd-section {
    container-type: inline-size;
}

@container (min-width: 768px) {
    ul[class*="toc"] {
        flex-direction: row;
        gap: 20px;
    }
}
*/

/* CSS 
/* ==========================================================================
   4. ANKER-SCROLLING (Desktop)
   ========================================================================== */

/* Unsichtbarer Spacer mit Offset VOR jedem Anker-Ziel */
a.cd-section-anchor::before {
    content: "";
    display: block;
    height: 75px;
    margin-top: -75px;
    visibility: hidden;
    pointer-events: none;
}

/* CONTAINER QUERY VERSION (für Zukunft):
@container (min-width: 992px) {
    a.cd-section-anchor::before {
        height: 75px;
        margin-top: -75px;
    }
}

/* --- CSS Grid --- */
.alignment-grid {
  display: grid;
  /* Die erste Spalte passt sich dem Inhalt an (max-content), die zweite nimmt den Rest (1fr) */
  grid-template-columns: max-content 1fr;
  /* Abstand zwischen Spalten und Zeilen */
  gap: 0.25rem 0.5rem; 
}

.label {
  color: var(--primary-color) !important;
}

/* ==========================================================================
   5. TERMINE & EVENTS
   ========================================================================== */

/* Zebrastreifung Tabellenzeilen */
.event-list table tbody tr:nth-child(even),
.cd-file-list table tbody tr:nth-child(even) {
    background-color: var(--list-oddrow-color) !important;
}

.event-list table tbody tr:nth-child(even):hover,
.cd-file-list table tbody tr:nth-child(even):hover {
    background-color: var(--primary-color) !important;
}

/* Tabellen-Footer (ICS Export) (falls eingeblendet) */
.icsFooter .icsText {
    color: var(--h2-color) !important;
}

.icsFooter .icsText a {
    color: var(--primary-color) !important;
}

.icsFooter .icsText a:hover {
    color: var(--a-hover-color) !important;
}

/* ==========================================================================
   6. BEITRÄGE
   ========================================================================== */

/* --- Beitrags-Detailseite (News) --- */
.cd-news-text {
    max-width: none;
    margin-right: auto;
    margin-left: 0;
}

/* ==========================================================================
   7. FORMULARE
   ========================================================================== */

/* Textarea-Feld im gleichen Stil wie die anderen Felder */
textarea[name="col_4"] {
    background-color: #333;
    color: #fff;
    border: 1px solid #aaa;
    border-radius: 5px;
    padding: 5px 10px;
    font-family: inherit;
    font-size: inherit;
    font-weight: 300;
}

/* Placeholder-Text hellgrau */
textarea[name="col_4"]::placeholder {
    color: #888;
    font-weight: 300;
    opacity: 1;
}

/* Kein Rand bei Fokus */
textarea[name="col_4"]:focus {
    outline: none;
}

/* ==========================================================================
   8. SPEZIFISCHE SEITEN
   ========================================================================== */

/* --- (Sub-)Seite: Unser Team --- */
.cd-group-detail img.cd-group-image {
    display:none;
}

/* --- Seite: Boutique --- */

/* Inputfelder (Anzahl Produkte) */
.produkt-menge {
    background-color: var(--input-product-count);
}

/* Container für schwebenden Button */
.sticky-anfrage-container {
    position: fixed;
    bottom: 100px; /* Direkt am Rand wie die Fusszeile */
    right: 30px;   /* Etwas Abstand vom rechten Rand */
    z-index: 9999;
}

/* Button-Styling im Swiss Cave Diving Stil */
.btn-sticky {
    padding: 10px 20px;
    background-color: var(--primary-color);
    color: black;
    font-family: Roboto, sans-serif;
    font-size: 22px;
    font-weight: 400;
    border: none;
    border-radius: 25px;
    cursor: pointer;
    transition: transform 0.2s, background-color 0.2s;
}

/* Hover-Effekt wie andere Buttons */
.btn-sticky:hover {
    background-color: #f7e63eb3;
}

/* Alert Modal */
#custom-alert-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.7);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9999;
}

#custom-alert-box {
    background: #ccc;
    padding: 15px;
    border-radius: 8px;
    max-width: 380px;
    text-align: center;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
    font-family: Roboto, sans-serif;
}

#custom-alert-box p {
    font-size: 16px;
    line-height: 1.5;
    margin-bottom: 20px;
}

#custom-alert-box button {
    background: var(--primary-color);
    color: black;
    border: none;
    padding: 10px 25px;
    border-radius: 25px;
    cursor: pointer;
    font-weight: bold;
}

#custom-alert-box button:hover {
    background-color: #f7e63eb3;
}

/* Webmailer-Auswahl-Modal */
#mailer-auswahl-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.7);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 10000;
}

#mailer-auswahl-box {
    background: #ccc;
    padding: 20px;
    border-radius: 8px;
    max-width: 380px;
    width: 90%;
    text-align: center;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
    font-family: Roboto, sans-serif;
}

#mailer-auswahl-titel {
    font-size: 17px;
    font-weight: bold;
    margin-bottom: 16px;
}

#mailer-auswahl-optionen {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-bottom: 16px;
}

.mailer-btn {
    display: flex;
    align-items: center;
    gap: 12px;
    background: #fff;
    border: 2px solid transparent;
    border-radius: 8px;
    padding: 10px 14px;
    cursor: pointer;
    text-decoration: none;
    color: #333;
    transition: border-color 0.15s, background 0.15s;
    text-align: left;
}

.mailer-btn:hover {
    border-color: var(--primary-color);
    background: #f9f9f9;
}

.mailer-icon {
    width: 24px;
    height: 24px;
    display: inline-block;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    flex-shrink: 0;
}

.mailer-label {
    font-size: 15px;
    font-weight: bold;
    display: block;
}

.mailer-sub {
    font-size: 12px;
    color: #666;
    display: block;
}

#mailer-auswahl-abbrechen {
    background: var(--primary-color);
    color: black;
    border: none;
    padding: 8px 22px;
    border-radius: 25px;
    cursor: pointer;
    font-weight: bold;
}

#mailer-auswahl-abbrechen:hover {
    background-color: #f7e63eb3;
}

/* --- Seite: Höhlenzonen --- */

/* Liste ohne Aufzählungszeichen, dafür Text mit Nummerierung */
.cave-zones {
    list-style: none;
}

.cave-zones li::before {
    content: "Zone " counter(list-item) ": ";
}

/* --- SEITE: Kontaktdetailseiten (Unser Team) --- */

/* Überschriften nicht fett */
.cd-contact-detail .cd-data-label {
    color: var(--h2-color) !important;
}

/* Texte nicht fett */
.cd-contact-detail .cd-data-value {
    font-weight: 300;
}

/* --- SVG Image Map --- */

/* 1. SVG zentrieren und responsive */
.responsive-map {
    width: 100% !important;
    height: auto !important;
    max-width: 1470px;
    display: block;
    margin: 0 auto;
}

/*  Kein Dark-Mode Zwang */
.responsive-map * {
    color-scheme: light !important;
}

/* ForeignObject Korrektur: Erlaubt dem Text, den ganzen Platz zu nutzen */
.responsive-map foreignObject {
    overflow: visible !important;
}

/* SVGs in custom lightbox */
#scd-svg-inner svg,
#scd-svg-trigger svg {
    filter: none !important;
}

/* ==========================================================================
   9. RESPONSIVE: TABLET & MOBILE (Desktop-First)
   ========================================================================== */

/* --- TABLET (max-width: 991px) --- */
@media (max-width: 991px) {

    .cd-club-logo {
    height: 120px;
    margin: 60px 5px 10px 5px;
    }

    /* --- Hero Banner Mobile --- */
    .scd-hero-banner {
        aspect-ratio: 1080 / 1350;
        max-height: 55dvw;
    }

    /* Navigation */
    .cd-megamenu-content {
        margin-top: 70px;
    }
}

/* CONTAINER QUERY VERSION (für Zukunft - Tablet):
.cd-content {
    container-type: inline-size;
}

@container (max-width: 991px) {
    /* Tablet Anpassungen hier
}
*/

/* --- MOBILE & TABLET (max-width: 768px) --- */
@media (max-width: 768px) {

    /* --- Hero Banner Mobile --- */
    .scd-hero-banner {
        max-height: 70dvw;
    }

    /* --- Header kleiner --- */
    #cd-navigation-element,
    .cd-navigation-bar-content,
    .cd-navigation-bar,
    .scroll-offset-desktop,
    .scroll-offset-mobile {
        height: 60px;
    }

    .cd-club-logo {
        height: 80px;
        margin: 60px 5px 10px 5px;
    }

    .cd-megamenu-content {
        margin-top: 30px;
    }

    /* --- TOC Listen: vertikal --- */
    ul[class*="toc"] {
        flex-direction: column;
        gap: 10px;
    }

    ul[class*="toc"] li {
        display: block;
    }

    ul[class*="toc"] li:not(:first-child)::before {
        content: none;
    }

    /* 3-Spalten-Layout bei paging (nur wenn schmale Spalten) */
    .cd-content .cd-section:last-of-type:has(ul[class*="paging"]) .cd-row,
    .cd-content .cd-section:last-of-type:has(ul[class*="paging"]) .cd-columns-container,
    .cd-content .cd-section:last-of-type:has(ul[class*="paging"]) [class*="cd-columns"] {
        display: flex !important;
        flex-wrap: nowrap !important;
        gap: 5px !important;
    }

    .cd-content .cd-section:last-of-type:has(ul[class*="paging"]) .cd-column,
    .cd-content .cd-section:last-of-type:has(ul[class*="paging"]) [class*="cd-col"] {
        flex: 1 !important;
        min-width: 0 !important;
        max-width: 33.33% !important;
    }

    .cd-content .cd-section:last-of-type:has(ul[class*="paging"]) ul[class*="toc"] {
        gap: 5px;
    }

    /* --- Boutique: Sticky Button volle Breite --- */
    .sticky-anfrage-container {
        right: 0;
        left: 0;
        bottom: 0;
        padding: 5px;
        background-color: #cccccce6;
        box-shadow: 0 -5px 15px rgba(0, 0, 0, 0.1);
    }

    .btn-sticky {
        width: 100%;
        padding: 8px;
        font-size: 18px;
        border-radius: 0;
    }
}

/* CONTAINER QUERY VERSION (für Zukunft):
@container (max-width: 768px) {
    ul[class*="toc"] {
        flex-direction: column;
    }

    .cd-content .cd-section:last-of-type:has(ul[class*="paging"]) .cd-column {
        max-width: 33.33%;
    }
}
*/

/* --- MOBILE (max-width: 576px) --- */
@media (max-width: 576px) {

    /* Erster Abschnitt mit Abstand, wenn KEIN Hero-Banner */
    .cd-content > .cd-section:first-of-type:not(:has(.cd-backgroundPane)) {
        padding-top: 75px;
    }

    /* Kein Innenabstand bei erster Überschrift */
    .cd-content > .cd-section:first-of-type:not(:has(.cd-backgroundPane)) .cd-block:first-of-type .cd-block-content:has(h1, h2, h3) {
        padding-top: 0 !important;
    }

    /* --- Anker-Scrolling --- */
    /* WENIGER Offset (scrollt weiter nach oben) */
    a.cd-section-anchor::before {
        height: 50px;
        margin-top: -50px;
    }
}

/* CONTAINER QUERY VERSION (für Zukunft - Mobile):
@container (max-width: 576px) {
    a.cd-section-anchor::before {
        height: 50px;
        margin-top: -50px;
    }

    #cd-navigation-element {
        height: 50px;
    }
}
*/