    /* Body-text bump */
    #main-content .fs-7 { font-size: 1.2rem !important; }
    #main-content .fs-8 { font-size: 1rem !important; }

    .ophaling-chip {
        background-color: rgba(255, 255, 255, .2);
        border: 1px solid rgba(255, 255, 255, .3);
    }

    /* ── Gemeente-hero ── */
    .gemeente-hero__title {
        font-size: clamp(2rem, 5vw, 3.2rem);
        line-height: 1.1;
    }
    .gemeente-hero__lead {
        max-width: 42rem;
        line-height: 1.55;
        opacity: .9;
    }
    .gemeente-hero__form,
    .gemeente-hero__alert {
        max-width: 520px;
    }
    .gemeente-hero__postcodes > span:first-child {
        opacity: .85;
        letter-spacing: .04em;
        text-transform: uppercase;
    }
    /* Helper-tekst toont na resolve de stadnaam — in de hero overbodig
       want de h1 toont de stadnaam al groot. */
    .gemeente-hero .postcode-input-helper {
        display: none;
    }
    .gemeente-hero .postcode-input-label {
        color: #fff;
    }

    .ophaling-search-group .form-control { border-right: 0; }
    .ophaling-search-group .btn-light {
        border-left: 0;
        border-right: 0;
        background-color: var(--bs-card-bg, var(--bs-body-bg));
    }

    /* ── Sectie-scheiding in resultaten ── */
    .diensten-sectie + .diensten-sectie {
        border-top: 1px solid var(--bs-border-color);
        padding-top: 2.5rem;
    }

    /* ── Resultaat-kaart ── */
    .dienst-card {
        transition: border-color .15s ease, transform .15s ease, box-shadow .15s ease;
    }
    .dienst-card:hover {
        border-color: var(--kringwinkel-oranje, #eb6b20) !important;
        transform: translateY(-2px);
        box-shadow: 0 6px 16px rgba(0,0,0,.06);
        text-decoration: none;
    }

    /* ── Landing-tegels ── */
    .dienst-tile {
        transition: border-color .15s ease, transform .15s ease, box-shadow .15s ease;
    }
    .dienst-tile:hover {
        border-color: var(--kringwinkel-oranje, #eb6b20) !important;
        transform: translateY(-2px);
        box-shadow: 0 6px 16px rgba(0,0,0,.06);
        text-decoration: none;
    }
    .dienst-tile__icon {
        transition: transform .15s ease;
    }
    .dienst-tile:hover .dienst-tile__icon { transform: scale(1.08); }

    .dienst-tile__icon--orange  { background: rgba(243,110,34,.12); color: var(--kringwinkel-oranje, #eb6b20); }
    .dienst-tile__icon--success { background: rgba(76,175,80,.12);  color: #2e7d32; }
    .dienst-tile__icon--primary { background: rgba(54,153,255,.12); color: #1976d2; }
    .dienst-tile__icon--info    { background: rgba(114,57,234,.12); color: #7239ea; }
    .dienst-tile__icon--danger  { background: rgba(244,67,54,.12);  color: #c62828; }
    .dienst-tile__icon--warning { background: rgba(255,152,0,.12);  color: #e65100; }
    .dienst-tile__icon--purple  { background: rgba(156,39,176,.12); color: #8e24aa; }
    .dienst-tile__icon--teal    { background: rgba(0,150,136,.12);  color: #00796b; }
    .dienst-tile__icon--pink    { background: rgba(233,30,99,.12);  color: #c2185b; }

    /* ── Stat-pills (klikbaar als filter) ── */
    .stat-pill {
        display: inline-flex; align-items: center; gap: .5rem;
        padding: .45rem .9rem;
        background: var(--bs-tertiary-bg);
        border: 1px solid var(--bs-border-color);
        border-radius: 10px;
        font-size: .85rem;
        font-weight: 600;
        color: var(--bs-body-color);
        cursor: pointer;
        user-select: none;
        transition: background .15s ease, border-color .15s ease, transform .1s ease;
    }
    .stat-pill:hover:not([aria-pressed="true"]) {
        background: var(--bs-secondary-bg);
        border-color: var(--bs-secondary-border-subtle, var(--bs-border-color));
    }
    .stat-pill[aria-pressed="true"]:hover { filter: brightness(.96); }
    .stat-pill:active { transform: scale(.97); }
    .stat-pill i { font-size: .9rem; transition: color .15s ease; }
    .stat-pill[aria-pressed="true"] {
        background: var(--pill-active-bg, rgba(243,110,34,.12));
        border-color: var(--pill-active-fg, #eb6b20);
        color: var(--pill-active-fg, #eb6b20);
    }
    .stat-pill[aria-pressed="true"] i { color: inherit !important; }
    .stat-pill__clear {
        background: transparent;
        border: 0;
        color: var(--bs-secondary-color);
        font-size: .8rem;
        text-decoration: underline;
        padding: .2rem .4rem;
    }
    .stat-pill__clear:hover { color: var(--kringwinkel-oranje, #eb6b20); }

    /* ── Skeleton loader ── */
    .skeleton {
        display: block;
        background: linear-gradient(90deg, var(--bs-tertiary-bg) 0%, var(--bs-border-color) 50%, var(--bs-tertiary-bg) 100%);
        background-size: 200% 100%;
        animation: skeleton-shine 1.4s ease-in-out infinite;
        border-radius: .4rem;
    }
    .skeleton-line { height: .85rem; }
    @keyframes skeleton-shine {
        0%   { background-position: 200% 0; }
        100% { background-position: -200% 0; }
    }
    @media (prefers-reduced-motion: reduce) {
        .skeleton { animation: none; }
    }

    /* ── Sticky mini-search ── */
    .diensten-sticky {
        position: sticky;
        top: var(--bs-app-header-height, 70px);
        z-index: 50;
        background: var(--bs-body-bg);
        border-bottom: 1px solid var(--bs-border-color);
        box-shadow: 0 2px 8px rgba(0,0,0,.04);
        transition: transform .2s ease, opacity .2s ease;
        transform: translateY(-100%);
        opacity: 0;
    }
    .diensten-sticky.is-visible {
        transform: translateY(0);
        opacity: 1;
    }

    /* ── Resultaten-distance badge ── */
    .dienst-distance {
        display: inline-flex; align-items: center; gap: .35rem;
        background: rgba(243,110,34,.08);
        color: var(--kringwinkel-oranje, #eb6b20);
        padding: .2rem .55rem;
        border-radius: 10px;
        font-size: .8rem;
        font-weight: 600;
    }

    /* ── Cap alle corners op deze pagina op max 10px ── */
    .card,
    .card-rounded,
    .rounded-pill,
    .ophaling-chip,
    .symbol-label,
    .dienst-tile,
    .dienst-card,
    [class*="rounded"] {
        border-radius: 10px !important;
    }
    .card .card-img,
    .card .card-img-top {
        border-top-left-radius: 10px !important;
        border-top-right-radius: 10px !important;
    }
    .card .card-img-bottom {
        border-bottom-left-radius: 10px !important;
        border-bottom-right-radius: 10px !important;
    }
