.useo-breadcrumbs ol {
    display: flex;
    flex-wrap: wrap;
    gap: .45rem;
    list-style: none;
    margin: 0 0 1.5rem;
    padding: 0;
}

.useo-breadcrumbs li:not(:last-child)::after {
    content: "/";
    margin-left: .45rem;
}

.useo-grounding-section {
    margin: 0 0 2rem;
}

.useo-grounding-intro {
    font-size: 1.05em;
}

.useo-facts {
    margin: 0;
}

.useo-fact-row {
    display: grid;
    grid-template-columns: minmax(150px, 220px) 1fr;
    gap: 1rem;
    padding: .7rem 0;
    border-bottom: 1px solid rgba(0, 0, 0, .12);
}

.useo-fact-row dt {
    font-weight: 700;
}

.useo-fact-row dd {
    margin: 0;
}

@media (max-width: 640px) {
    .useo-fact-row {
        grid-template-columns: 1fr;
        gap: .25rem;
    }
}


/* Vom Core erzeugte Inhaltsbausteine klar vom Fließtext absetzen. */
.useo-list {
    margin: 1.45em 0 1.8em;
    padding: 1em 1.25em 1em 2.65em;
    background: #f7f7f4;
    border: 1px solid rgba(0, 0, 0, .12);
    border-left: 4px solid #52614e;
    border-radius: 10px;
}

.useo-list li {
    margin: 0;
    padding: .38em 0 .38em .15em;
    line-height: 1.55;
}

.useo-list li + li {
    margin-top: .2em;
}

.useo-checklist {
    list-style: none;
    padding-left: 2.15em;
    padding-right: 1.35em;
}

.useo-checklist li {
    position: relative;
    padding-left: 1.85em;
}

.useo-checklist li + li {
    border-top: 1px solid rgba(0, 0, 0, .07);
    padding-top: .7em;
    margin-top: .35em;
}

.useo-checklist li::before {
    content: "";
    position: absolute;
    left: .1em;
    top: .72em;
    width: .82em;
    height: .82em;
    border: 1.5px solid currentColor;
    border-radius: 2px;
    box-sizing: border-box;
}


/* In bereits gestalteten Inhaltsboxen keine zweite Box um Listen legen. */
section[style*="background"] .useo-list,
div[style*="background"] .useo-list {
    margin: 1em 0 1.15em;
    padding: 0 0 0 1.35em;
    background: transparent;
    border: 0;
    border-radius: 0;
}

section[style*="background"] .useo-list li,
div[style*="background"] .useo-list li {
    padding-top: .32em;
    padding-bottom: .32em;
}

/* Checklisten bekommen im eigenen Kasten bewusst mehr Innenabstand links. */
.useo-list.useo-checklist {
    padding-left: 2.15em;
}

.useo-table-wrap {
    width: 100%;
    margin: 1.55em 0 2em;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    border: 1px solid rgba(0, 0, 0, .14);
    border-radius: 11px;
    background: #fff;
}

.useo-table {
    width: 100%;
    min-width: 680px;
    margin: 0;
    border-collapse: collapse;
    border-spacing: 0;
    background: #fff;
    font-size: .97em;
}

.useo-table caption {
    caption-side: top;
    padding: .9rem 1rem;
    background: #f1f3ee;
    border-bottom: 1px solid rgba(0, 0, 0, .12);
    font-weight: 700;
    text-align: left;
}

.useo-table th,
.useo-table td {
    padding: .78rem .9rem;
    border-right: 1px solid rgba(0, 0, 0, .1);
    border-bottom: 1px solid rgba(0, 0, 0, .1);
    vertical-align: top;
    text-align: left;
    line-height: 1.45;
}

.useo-table th:last-child,
.useo-table td:last-child {
    border-right: 0;
}

.useo-table tr:last-child th,
.useo-table tr:last-child td {
    border-bottom: 0;
}

.useo-table thead th,
.useo-table tr:first-child > th {
    background: #eef1eb;
    font-weight: 700;
}

.useo-table tbody tr:nth-child(even) td,
.useo-table tbody tr:nth-child(even) th {
    background: #fafaf8;
}

.useo-table tbody th {
    font-weight: 700;
}

.useo-callout {
    margin: 1.4em 0 1.8em;
    padding: 1rem 1.1rem;
    background: #eef7f2;
    border: 1px solid #d7e9df;
    border-radius: 16px;
    box-shadow: 0 10px 28px rgba(43, 78, 62, .10);
}

.useo-callout strong:first-child {
    display: inline-block;
    margin-right: .25em;
}

.useo-pdf-download-link {
    display: inline-block;
    margin-top: .35em;
    padding: .68em 1em;
    border: 1px solid currentColor;
    border-radius: 8px;
    text-decoration: none;
    font-weight: 700;
}

@media (max-width: 720px) {
    .useo-list {
        padding: .9em 1em .9em 2.25em;
    }

    .useo-checklist {
        padding-left: 1.8em;
        padding-right: .9em;
    }

    .useo-table {
        min-width: 620px;
        font-size: .94em;
    }

    .useo-table th,
    .useo-table td {
        padding: .68rem .72rem;
    }
}


/* 0.5.5: Verschachtelte Listen erhalten keine zweite sichtbare Box. */
.useo-list .useo-list {
    margin: .65em 0 .9em !important;
    padding: .15em 0 .15em 1.45em !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

.useo-list .useo-list li {
    padding-top: .3em;
    padding-bottom: .3em;
}

/* Checklisten bewusst vom linken Boxrand abruecken. Die !important-Werte
   verhindern, dass Theme-Regeln fuer ul/li den Innenabstand wieder entfernen. */
article .useo-list.useo-checklist,
.entry-content .useo-list.useo-checklist,
.site-main .useo-list.useo-checklist,
.useo-list.useo-checklist {
    list-style: none !important;
    margin-left: 0 !important;
    padding-left: 1.6rem !important;
    padding-inline-start: 1.6rem !important;
    padding-right: 1.35rem !important;
    padding-inline-end: 1.35rem !important;
}

article .useo-list.useo-checklist > li,
.entry-content .useo-list.useo-checklist > li,
.site-main .useo-list.useo-checklist > li,
.useo-list.useo-checklist > li {
    position: relative;
    list-style: none !important;
    padding-left: 1.8rem !important;
}

article .useo-list.useo-checklist > li::marker,
.entry-content .useo-list.useo-checklist > li::marker,
.site-main .useo-list.useo-checklist > li::marker,
.useo-list.useo-checklist > li::marker {
    content: "";
}

article .useo-list.useo-checklist > li::before,
.entry-content .useo-list.useo-checklist > li::before,
.site-main .useo-list.useo-checklist > li::before,
.useo-list.useo-checklist > li::before {
    left: 0 !important;
}

/* Ist eine Checkliste selbst verschachtelt, bleibt sie ohne zweite Box,
   behaelt aber den Abstand der Checkboxen zum umgebenden Inhalt. */
.useo-list .useo-list.useo-checklist {
    padding-left: 1.6rem !important;
    padding-inline-start: 1.6rem !important;
}

/* Kategorie-Archive: Titel bleibt oben, darunter Bild links und Auszug rechts.
   Der Excerpt selbst bleibt unveraendert, damit Themes ihn weiterhin sauber ausgeben. */
.useo-category-card-body {
    display: grid;
    grid-template-columns: 250px minmax(0, 1fr);
    gap: 1.4rem;
    align-items: start;
    margin-top: 0.8rem;
}

.useo-category-card-image {
    display: block;
    width: 100%;
    margin: 0;
    text-decoration: none;
}

.useo-category-card-image__img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    border-radius: 10px;
}

.useo-category-card-text {
    min-width: 0;
}

.useo-category-card-text > :first-child {
    margin-top: 0 !important;
}

.useo-category-card-text > :last-child {
    margin-bottom: 0 !important;
}

@media (max-width: 700px) {
    .useo-category-card-body {
        grid-template-columns: 1fr;
        gap: 1rem;
    }

    .useo-category-card-image {
        width: 100%;
        max-width: 100%;
    }
}


/* Reise-Infoboxen: passend zum grünen Erscheinungsbild der Reiseprojekte.
   !important ueberschreibt alte Inline-Stile aus bereits gespeicherten Beitraegen. */
article .faktenbox,
.entry-content .faktenbox,
.site-main .faktenbox,
.faktenbox {
    background: #eef7f2 !important;
    border: 1px solid #d7e9df !important;
    border-left: 1px solid #d7e9df !important;
    border-radius: 16px !important;
    box-shadow: 0 10px 28px rgba(43, 78, 62, .10) !important;
    padding: 22px 26px !important;
}

article .faktenbox > :first-child,
.entry-content .faktenbox > :first-child,
.site-main .faktenbox > :first-child,
.faktenbox > :first-child {
    margin-top: 0 !important;
}

article .faktenbox > :last-child,
.entry-content .faktenbox > :last-child,
.site-main .faktenbox > :last-child,
.faktenbox > :last-child {
    margin-bottom: 0 !important;
}

@media (max-width: 720px) {
    article .faktenbox,
    .entry-content .faktenbox,
    .site-main .faktenbox,
    .faktenbox {
        padding: 18px 20px !important;
        border-radius: 14px !important;
        box-shadow: 0 8px 22px rgba(43, 78, 62, .09) !important;
    }
}


/* Reise-PDF-Verkaufsbox: passend zum gruenen Erscheinungsbild der Reiseprojekte. */
article .useo-pdf-product,
.entry-content .useo-pdf-product,
.site-main .useo-pdf-product,
.useo-pdf-product {
    margin: 2.2em 0 2.4em !important;
    padding: 28px 30px !important;
    background: #eef7f2 !important;
    border: 1px solid #d7e9df !important;
    border-radius: 18px !important;
    box-shadow: 0 12px 30px rgba(43, 78, 62, .12) !important;
    color: inherit;
}

article .useo-pdf-product .useo-pdf-product-kicker,
.entry-content .useo-pdf-product .useo-pdf-product-kicker,
.site-main .useo-pdf-product .useo-pdf-product-kicker,
.useo-pdf-product .useo-pdf-product-kicker {
    display: inline-block;
    margin-top: 0 !important;
    padding: .38em .72em;
    border-radius: 999px;
    background: #dceee5;
    color: #284f3d;
    font-size: .88em;
    line-height: 1.25;
}

article .useo-pdf-product h2,
.entry-content .useo-pdf-product h2,
.site-main .useo-pdf-product h2,
.useo-pdf-product h2 {
    margin-top: .2em !important;
    margin-bottom: .75em !important;
}

article .useo-pdf-product figure,
.entry-content .useo-pdf-product figure,
.site-main .useo-pdf-product figure,
.useo-pdf-product figure {
    overflow: hidden;
    border-radius: 14px;
    box-shadow: 0 8px 22px rgba(43, 78, 62, .10);
}

article .useo-pdf-product .useo-pdf-buy-link,
.entry-content .useo-pdf-product .useo-pdf-buy-link,
.site-main .useo-pdf-product .useo-pdf-buy-link,
.useo-pdf-product .useo-pdf-buy-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: .72em 1.2em;
    background: #365f4b;
    border: 1px solid #365f4b;
    border-radius: 999px;
    box-shadow: 0 7px 18px rgba(43, 78, 62, .16);
    color: #ffffff !important;
    font-weight: 700;
    line-height: 1.25;
    text-decoration: none !important;
}

article .useo-pdf-product .useo-pdf-buy-link:hover,
article .useo-pdf-product .useo-pdf-buy-link:focus,
.entry-content .useo-pdf-product .useo-pdf-buy-link:hover,
.entry-content .useo-pdf-product .useo-pdf-buy-link:focus,
.site-main .useo-pdf-product .useo-pdf-buy-link:hover,
.site-main .useo-pdf-product .useo-pdf-buy-link:focus,
.useo-pdf-product .useo-pdf-buy-link:hover,
.useo-pdf-product .useo-pdf-buy-link:focus {
    background: #294a3a;
    border-color: #294a3a;
    color: #ffffff !important;
}

article .useo-pdf-product .useo-pdf-product-note,
.entry-content .useo-pdf-product .useo-pdf-product-note,
.site-main .useo-pdf-product .useo-pdf-product-note,
.useo-pdf-product .useo-pdf-product-note {
    margin-top: .35em !important;
    color: #52645b;
    font-size: .92em;
}

@media (max-width: 720px) {
    article .useo-pdf-product,
    .entry-content .useo-pdf-product,
    .site-main .useo-pdf-product,
    .useo-pdf-product {
        padding: 22px 20px !important;
        border-radius: 15px !important;
        box-shadow: 0 9px 24px rgba(43, 78, 62, .10) !important;
    }

    article .useo-pdf-product .useo-pdf-buy-link,
    .entry-content .useo-pdf-product .useo-pdf-buy-link,
    .site-main .useo-pdf-product .useo-pdf-buy-link,
    .useo-pdf-product .useo-pdf-buy-link {
        width: 100%;
        box-sizing: border-box;
        text-align: center;
    }
}
