/* Centrale aanmeldpagina - opbouw gelijk aan activiteiten */
.flaeijel-aanmelden-overzicht {
    display: grid;
    gap: 1.5rem;
}

.flaeijel-aanmelden-hero {
    max-width: 920px;
    margin: 0 auto .25rem;
    text-align: center;
}

.flaeijel-aanmelden-hero__eyebrow {
    margin: 0 0 .35rem;
    font-size: .8rem;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--flaeijel-geel, #f0ca0e);
}

.flaeijel-aanmelden-hero h2 {
    margin: 0 0 .5rem;
    font-size: clamp(1.75rem, 3.5vw, 2.6rem);
    line-height: 1.1;
}

.flaeijel-aanmelden-hero p:last-child {
    margin: 0 auto;
    max-width: 720px;
}

.flaeijel-aanmelden-list {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 340px));
    justify-content: center;
    gap: 1.25rem;
}

/* Houd kaarten even breed, ook wanneer er maar 1 aanmeldmogelijkheid is. */
.flaeijel-aanmelden-list > .flaeijel-aanmelden-item {
    width: 100%;
    max-width: 340px;
}

.flaeijel-aanmelden-item {
    scroll-margin-top: 110px;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    padding: 0 !important;
}

.flaeijel-aanmelden-item.is-selected,
.flaeijel-aanmelden-item:target {
    outline: 2px solid var(--flaeijel-geel, #f0ca0e);
    outline-offset: 3px;
}

.flaeijel-aanmelden-item__media {
    position: relative;
    height: 220px;
    min-height: 220px;
    background: #111;
}

.flaeijel-aanmelden-item__media img,
.flaeijel-aanmelden-item__image {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.flaeijel-aanmelden-item__media .flaeijel-activiteit-card__overlay {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    gap: .35rem;
}

.flaeijel-aanmelden-item__title {
    margin-bottom: .25rem;
}

.flaeijel-aanmelden-item__meta {
    margin: 0;
    font-weight: 700;
}

.flaeijel-aanmelden-item__body {
    flex: 1;
}

.flaeijel-aanmelden-item__excerpt > :last-child {
    margin-bottom: 0;
}

.flaeijel-aanmelden-item__actions {
    margin-top: auto;
}

.flaeijel-aanmelden-item__button {
    width: 100%;
    justify-content: center;
    text-align: center;
    white-space: nowrap;
}

.flaeijel-aanmelden-item__button.is-disabled {
    opacity: .75;
    cursor: not-allowed;
    pointer-events: none;
    background: #777 !important;
    color: #fff !important;
}

.flaeijel-aanmelden-overzicht__notice,
.flaeijel-aanmelden-overzicht__empty {
    text-align: center;
}

.flaeijel-activiteit-aanmeldformulier {
    max-width: 920px;
    margin-inline: auto;
}

@media (max-width: 700px) {
    .flaeijel-aanmelden-list {
        grid-template-columns: 1fr;
        justify-content: stretch;
    }

    .flaeijel-aanmelden-list > .flaeijel-aanmelden-item {
        max-width: none;
    }
}

/* Aanmeldformulier als popup, geïnspireerd op de trekkers-formulierlayout. */
html.flaeijel-modal-lock,
body.flaeijel-modal-lock {
    overflow: hidden;
}

.flaeijel-aanmelden-modal {
    position: fixed;
    inset: 0;
    z-index: 99999;
    display: none;
    align-items: center;
    justify-content: center;
    padding: clamp(1rem, 3vw, 2rem);
}

.flaeijel-aanmelden-modal.is-open {
    display: flex;
}

.flaeijel-aanmelden-modal__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,.58);
    backdrop-filter: blur(4px);
}

.flaeijel-aanmelden-modal__panel {
    position: relative;
    z-index: 1;
    width: min(980px, 100%);
    max-height: min(88vh, 920px);
    overflow: auto;
    border-radius: 24px;
    box-shadow: 0 22px 70px rgba(0,0,0,.32);
    background: #fffdf6;
}

.flaeijel-aanmelden-popup-form {
    width: 100%;
    max-width: none;
    margin: 0;
    font-family: inherit;
}

.flaeijel-aanmelden-popup-form .form-step {
    position: relative;
    width: 100%;
    margin: 0;
    padding: clamp(1.25rem, 3vw, 2.25rem);
    border: 0;
    border-radius: 24px;
    background:
        radial-gradient(circle at 0 0, rgba(240,202,14,.18), transparent 34%),
        linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,250,235,.94));
    box-shadow: none;
}

.flaeijel-aanmelden-popup-form .form-step::before {
    content: "";
    display: block;
    height: 5px;
    margin: calc(clamp(1.25rem, 3vw, 2.25rem) * -1) calc(clamp(1.25rem, 3vw, 2.25rem) * -1) 1.25rem;
    border-radius: 24px 24px 0 0;
    background: linear-gradient(90deg, var(--flaeijel-geel, #f0ca0e), #f7df54);
}

.flaeijel-aanmelden-modal__close {
    position: absolute;
    top: .85rem;
    right: .85rem;
    z-index: 2;
    width: 42px;
    height: 42px;
    border: 1px solid rgba(0,0,0,.12);
    border-radius: 999px;
    background: #fff;
    color: #111;
    font-size: 1.6rem;
    line-height: 1;
    cursor: pointer;
}

.flaeijel-aanmelden-popup-form .flaeijel-step-kicker {
    display: inline-flex;
    align-items: center;
    margin: 0 0 .85rem;
    padding: .35rem .7rem;
    border-radius: 999px;
    background: var(--flaeijel-zwart, #101010);
    color: var(--flaeijel-geel, #f0ca0e);
    font-size: .72rem;
    font-weight: 900;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.flaeijel-aanmelden-popup-form h2 {
    margin: 0 3rem .6rem 0;
    color: var(--flaeijel-zwart, #101010);
    font-family: inherit;
    font-size: clamp(2rem, 4.5vw, 3.4rem);
    font-weight: 950;
    line-height: 1.02;
    letter-spacing: -.035em;
    text-shadow: none;
}

.flaeijel-aanmelden-popup-form .flaeijel-aanmelden-item__meta,
.flaeijel-aanmelden-popup-form .flaeijel-form-intro {
    max-width: 760px;
}

.flaeijel-aanmelden-popup-form .flaeijel-form-grid,
.flaeijel-aanmelden-popup-form .flaeijel-form-extra-vragen {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .9rem 1rem;
    margin-top: 1rem;
}

.flaeijel-aanmelden-popup-form label {
    display: grid;
    gap: .35rem;
    font-weight: 800;
}

.flaeijel-aanmelden-popup-form .flaeijel-form-extra-vraag,
.flaeijel-aanmelden-popup-form .flaeijel-form-bericht {
    margin-top: 1rem;
}

.flaeijel-aanmelden-popup-form .flaeijel-form-bericht,
.flaeijel-aanmelden-popup-form .flaeijel-form-extra-vraag:has(textarea),
.flaeijel-aanmelden-popup-form .flaeijel-form-extra-vraag:has(input[type="file"]) {
    grid-column: 1 / -1;
}

.flaeijel-aanmelden-popup-form input[type="text"],
.flaeijel-aanmelden-popup-form input[type="email"],
.flaeijel-aanmelden-popup-form input[type="tel"],
.flaeijel-aanmelden-popup-form input[type="number"],
.flaeijel-aanmelden-popup-form input[type="date"],
.flaeijel-aanmelden-popup-form input[type="file"],
.flaeijel-aanmelden-popup-form select,
.flaeijel-aanmelden-popup-form textarea {
    width: 100%;
    min-height: 48px;
    padding: .75rem .85rem;
    border: 1px solid rgba(0,0,0,.14);
    border-radius: 14px;
    background: #fff;
    color: #111;
    font: inherit;
    font-weight: 500;
}

.flaeijel-aanmelden-popup-form textarea {
    min-height: 120px;
}

.flaeijel-aanmelden-popup-form input:focus,
.flaeijel-aanmelden-popup-form select:focus,
.flaeijel-aanmelden-popup-form textarea:focus {
    outline: 2px solid rgba(240,202,14,.55);
    border-color: var(--flaeijel-geel, #f0ca0e);
}

.flaeijel-aanmelden-popup-form .flaeijel-honeypot {
    position: absolute;
    left: -9999px;
}

.flaeijel-aanmelden-popup-form .flaeijel-actions {
    display: flex;
    justify-content: flex-end;
    gap: .8rem;
    margin-top: 1.25rem;
}

.flaeijel-aanmelden-popup-form .button,
.flaeijel-aanmelden-popup-form button {
    min-height: 48px;
    border-radius: 999px;
}

.flaeijel-aanmelden-popup-form .button-primary,
.flaeijel-aanmelden-popup-form .button--primary,
.flaeijel-aanmelden-popup-form .flaeijel-form-button {
    background: var(--flaeijel-zwart, #101010);
    color: var(--flaeijel-geel, #f0ca0e);
    border-color: var(--flaeijel-zwart, #101010);
}

.flaeijel-aanmelden-popup-form .button-secondary,
.flaeijel-aanmelden-popup-form .button--ghost {
    background: #fff;
    color: var(--flaeijel-zwart, #101010);
    border-color: rgba(0,0,0,.18);
}

@media (max-width: 720px) {
    .flaeijel-aanmelden-modal {
        align-items: stretch;
        justify-content: stretch;
        padding: 0;
    }

    .flaeijel-aanmelden-modal__panel {
        width: 100%;
        max-height: none;
        min-height: 100svh;
        border-radius: 0;
        box-shadow: none;
    }

    .flaeijel-aanmelden-popup-form .form-step {
        min-height: 100svh;
        padding: max(1rem, env(safe-area-inset-top)) 1rem calc(5.8rem + env(safe-area-inset-bottom));
        border-radius: 0;
        background:
            radial-gradient(circle at top left, rgba(240,202,14,.24), transparent 34%),
            linear-gradient(180deg, #fffdf6 0%, #fff7da 100%);
    }

    .flaeijel-aanmelden-popup-form .form-step::before {
        position: sticky;
        top: 0;
        z-index: 4;
        height: 4px;
        margin: -1rem -1rem 1rem;
        border-radius: 0;
    }

    .flaeijel-aanmelden-modal__close {
        top: max(.75rem, env(safe-area-inset-top));
        right: .75rem;
    }

    .flaeijel-aanmelden-popup-form h2 {
        margin-right: 3rem;
        text-align: left;
        font-size: clamp(2rem, 12vw, 3.05rem);
        line-height: .98;
        letter-spacing: -.055em;
    }

    .flaeijel-aanmelden-popup-form .flaeijel-form-grid,
    .flaeijel-aanmelden-popup-form .flaeijel-form-extra-vragen {
        grid-template-columns: 1fr;
        gap: .78rem;
    }

    .flaeijel-aanmelden-popup-form input[type="text"],
    .flaeijel-aanmelden-popup-form input[type="email"],
    .flaeijel-aanmelden-popup-form input[type="tel"],
    .flaeijel-aanmelden-popup-form input[type="number"],
    .flaeijel-aanmelden-popup-form input[type="date"],
    .flaeijel-aanmelden-popup-form input[type="file"],
    .flaeijel-aanmelden-popup-form select,
    .flaeijel-aanmelden-popup-form textarea {
        min-height: 52px;
        border-radius: 16px;
        font-size: 16px;
    }

    .flaeijel-aanmelden-popup-form .flaeijel-actions {
        align-items: stretch;
        flex-direction: column-reverse;
    }

    .flaeijel-aanmelden-popup-form .button,
    .flaeijel-aanmelden-popup-form button {
        width: 100% !important;
        max-width: none;
    }
}

/* 1.8.99 - Compactere popup, dichter bij de trekkers-formulierervaring. */
.flaeijel-aanmelden-modal {
    padding: 1rem;
}

.flaeijel-aanmelden-modal__backdrop {
    background: rgba(0, 0, 0, .48);
    backdrop-filter: blur(2px);
    -webkit-backdrop-filter: blur(2px);
}

.flaeijel-aanmelden-modal__panel {
    width: min(720px, 100%);
    max-height: min(86vh, 820px);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 18px 48px rgba(0,0,0,.28);
}

.flaeijel-aanmelden-popup-form .form-step {
    padding: 1.35rem 1.45rem 1.45rem;
    border-radius: 18px;
    background: #fff;
}

.flaeijel-aanmelden-popup-form .form-step::before {
    height: 4px;
    margin: -1.35rem -1.45rem 1rem;
    border-radius: 18px 18px 0 0;
    background: var(--flaeijel-geel, #f0ca0e);
}

.flaeijel-aanmelden-popup-form .flaeijel-step-kicker {
    display: none;
}

.flaeijel-aanmelden-popup-form h2 {
    margin: 0 2.6rem .45rem 0;
    font-size: clamp(1.45rem, 3vw, 2.05rem);
    line-height: 1.12;
    letter-spacing: -.02em;
}

.flaeijel-aanmelden-popup-form .flaeijel-aanmelden-item__meta,
.flaeijel-aanmelden-popup-form .flaeijel-form-intro {
    max-width: 620px;
    font-size: .95rem;
    line-height: 1.5;
}

.flaeijel-aanmelden-popup-form .flaeijel-form-grid,
.flaeijel-aanmelden-popup-form .flaeijel-form-extra-vragen {
    gap: .72rem .85rem;
    margin-top: .85rem;
}

.flaeijel-aanmelden-popup-form label {
    gap: .25rem;
    font-size: .92rem;
    font-weight: 800;
}

.flaeijel-aanmelden-popup-form .flaeijel-form-extra-vraag,
.flaeijel-aanmelden-popup-form .flaeijel-form-bericht {
    margin-top: .75rem;
}

.flaeijel-aanmelden-popup-form input[type="text"],
.flaeijel-aanmelden-popup-form input[type="email"],
.flaeijel-aanmelden-popup-form input[type="tel"],
.flaeijel-aanmelden-popup-form input[type="number"],
.flaeijel-aanmelden-popup-form input[type="date"],
.flaeijel-aanmelden-popup-form input[type="file"],
.flaeijel-aanmelden-popup-form select,
.flaeijel-aanmelden-popup-form textarea {
    min-height: 42px;
    padding: .58rem .72rem;
    border-radius: 10px;
    font-size: .95rem;
}

.flaeijel-aanmelden-popup-form textarea {
    min-height: 96px;
}

.flaeijel-aanmelden-modal__close {
    top: .65rem;
    right: .65rem;
    width: 36px;
    height: 36px;
    font-size: 1.35rem;
}

.flaeijel-aanmelden-popup-form .flaeijel-actions {
    margin-top: 1rem;
}

.flaeijel-aanmelden-popup-form .button,
.flaeijel-aanmelden-popup-form button {
    min-height: 42px;
}

.flaeijel-aanmelden-mobile-appbar {
    display: none;
}

@media (max-width: 720px) {
    .flaeijel-aanmelden-modal {
        padding: 0;
        background:
            radial-gradient(circle at top, rgba(240,202,14,.22), transparent 34%),
            linear-gradient(180deg, #050505 0%, #111 54%, #050505 100%);
    }

    .flaeijel-aanmelden-modal__backdrop {
        display: none;
    }

    .flaeijel-aanmelden-modal__panel {
        width: 100%;
        max-height: none;
        min-height: 100dvh;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
    }

    .flaeijel-aanmelden-popup-form {
        min-height: 100dvh;
        padding: calc(.7rem + env(safe-area-inset-top)) .72rem calc(88px + env(safe-area-inset-bottom));
        background: transparent;
    }

    .flaeijel-aanmelden-mobile-appbar {
        position: sticky;
        top: 0;
        z-index: 20;
        display: grid;
        grid-template-columns: 42px 1fr;
        align-items: center;
        gap: .65rem;
        margin: -.1rem -.2rem .75rem;
        padding: .55rem .65rem;
        color: #fff;
        background: rgba(5,5,5,.78);
        border: 1px solid rgba(240,202,14,.28);
        border-radius: 18px;
        box-shadow: 0 10px 28px rgba(0,0,0,.24), 0 0 18px rgba(240,202,14,.12);
        backdrop-filter: blur(14px);
        -webkit-backdrop-filter: blur(14px);
    }

    .flaeijel-aanmelden-mobile-appbar strong {
        display: block;
        overflow: hidden;
        color: #fff;
        font-size: .98rem;
        font-weight: 900;
        line-height: 1.05;
        white-space: nowrap;
        text-overflow: ellipsis;
    }

    .flaeijel-aanmelden-mobile-appbar span {
        display: block;
        margin-top: .12rem;
        color: var(--flaeijel-geel, #f0ca0e);
        font-size: .72rem;
        font-weight: 900;
        letter-spacing: .08em;
        text-transform: uppercase;
    }

    .flaeijel-aanmelden-appbar-back {
        width: 42px !important;
        height: 42px !important;
        min-height: 42px !important;
        padding: 0 !important;
        border: 1px solid rgba(240,202,14,.45) !important;
        border-radius: 999px !important;
        background: #0b0b0b !important;
        color: var(--flaeijel-geel, #f0ca0e) !important;
        font-size: 2rem !important;
        line-height: 1 !important;
        box-shadow: none !important;
    }

    .flaeijel-aanmelden-modal__close,
    .flaeijel-aanmelden-popup-form .flaeijel-step-kicker,
    .flaeijel-aanmelden-popup-form h2 {
        display: none !important;
    }

    .flaeijel-aanmelden-popup-form .form-step {
        width: 100% !important;
        min-height: calc(100dvh - 106px - env(safe-area-inset-top));
        margin: 0 !important;
        padding: 1rem .95rem 1.15rem !important;
        border-radius: 24px 24px 0 0;
        background: #fffdf6;
    }

    .flaeijel-aanmelden-popup-form .form-step::before {
        display: none;
    }

    .flaeijel-aanmelden-popup-form .flaeijel-aanmelden-item__meta,
    .flaeijel-aanmelden-popup-form .flaeijel-form-intro {
        max-width: 330px;
        margin-left: auto;
        margin-right: auto;
        text-align: center;
        font-size: .94rem;
        line-height: 1.45;
        color: rgba(16,16,16,.74);
        font-weight: 650;
    }

    .flaeijel-aanmelden-popup-form .flaeijel-form-grid,
    .flaeijel-aanmelden-popup-form .flaeijel-form-extra-vragen {
        grid-template-columns: 1fr;
        gap: .65rem;
        margin-top: .85rem;
    }

    .flaeijel-aanmelden-popup-form label {
        font-size: .9rem;
    }

    .flaeijel-aanmelden-popup-form input[type="text"],
    .flaeijel-aanmelden-popup-form input[type="email"],
    .flaeijel-aanmelden-popup-form input[type="tel"],
    .flaeijel-aanmelden-popup-form input[type="number"],
    .flaeijel-aanmelden-popup-form input[type="date"],
    .flaeijel-aanmelden-popup-form input[type="file"],
    .flaeijel-aanmelden-popup-form select,
    .flaeijel-aanmelden-popup-form textarea {
        min-height: 46px;
        padding: .62rem .72rem;
        border-radius: 13px;
        font-size: 16px;
    }

    .flaeijel-aanmelden-popup-form textarea {
        min-height: 104px;
    }

    .flaeijel-aanmelden-popup-form .flaeijel-actions {
        position: sticky;
        bottom: 0;
        z-index: 15;
        flex-direction: column-reverse;
        gap: .55rem;
        margin: 1rem -.95rem -1.15rem;
        padding: .75rem .95rem calc(.75rem + env(safe-area-inset-bottom));
        background: rgba(5,5,5,.86);
        border-top: 1px solid rgba(240,202,14,.24);
        box-shadow: 0 -10px 28px rgba(0,0,0,.22);
    }

    .flaeijel-aanmelden-popup-form .button,
    .flaeijel-aanmelden-popup-form button {
        width: 100% !important;
        min-height: 46px;
        max-width: none;
    }

    .flaeijel-aanmelden-popup-form .button-secondary,
    .flaeijel-aanmelden-popup-form .button--ghost {
        background: rgba(255,255,255,.10);
        color: #fff;
        border-color: rgba(255,255,255,.28);
    }
}

/* Generieke formulierpagina: /aanmelden/formulier/ met [flaeijel_aanmeldformulier] */
.flaeijel-aanmelden-form-page {
    max-width: 960px;
    margin: 0 auto;
}

.flaeijel-aanmelden-form-page__media {
    border-radius: 18px 18px 0 0;
    overflow: hidden;
    background: #111;
}

.flaeijel-aanmelden-form-page__image {
    display: block;
    width: 100%;
    height: min(38vw, 320px);
    object-fit: cover;
}

.flaeijel-aanmelden-form-page__content {
    background: #fff;
    border: 1px solid rgba(0,0,0,.08);
    border-radius: 0 0 18px 18px;
    padding: 24px;
    box-shadow: 0 10px 30px rgba(0,0,0,.08);
}

.flaeijel-aanmelden-form-page__media + .flaeijel-aanmelden-form-page__content {
    border-top: 0;
}

.flaeijel-aanmelden-form-page__content > h1 {
    margin: 0 0 8px;
    font-size: clamp(1.8rem, 4vw, 2.6rem);
    line-height: 1.05;
}

.flaeijel-aanmelden-page-form {
    margin-top: 18px;
}

.flaeijel-aanmelden-page-form .form-step {
    box-shadow: none;
    border: 0;
    padding: 0;
}

.flaeijel-aanmelden-page-form .form-step::before,
.flaeijel-aanmelden-page-form > .form-step > .flaeijel-step-kicker,
.flaeijel-aanmelden-page-form > .form-step > h2,
.flaeijel-aanmelden-page-form > .form-step > .flaeijel-aanmelden-item__meta {
    display: none;
}

@media (max-width: 700px) {
    .flaeijel-aanmelden-form-page {
        margin-left: -12px;
        margin-right: -12px;
    }

    .flaeijel-aanmelden-form-page__media,
    .flaeijel-aanmelden-form-page__content {
        border-radius: 0;
    }

    .flaeijel-aanmelden-form-page__image {
        height: 220px;
    }

    .flaeijel-aanmelden-form-page__content {
        padding: 18px 14px 22px;
        border-left: 0;
        border-right: 0;
        box-shadow: none;
    }
}


/* 1.8.101 - Generieke aanmeldformulierpagina dichter bij trekkers-plugin (desktop + mobiel). */
.flaeijel-aanmeldformulier-mobile-appbar {
    display: none;
}

.flaeijel-aanmelden-form-page {
    --ft-yellow: var(--flaeijel-geel, #f0ca0e);
    --ft-black: var(--flaeijel-zwart, #101010);
    max-width: 780px;
    margin: 0 auto;
    font-family: inherit;
}

.flaeijel-aanmelden-form-page__media {
    max-width: 780px;
    margin: 0 auto;
    border-radius: 22px 22px 0 0;
    overflow: hidden;
    background: #111;
}

.flaeijel-aanmelden-form-page__image {
    height: clamp(190px, 26vw, 270px);
}

.flaeijel-aanmelden-form-page__content {
    border: 0;
    border-radius: 0 0 22px 22px;
    padding: clamp(1.25rem, 3vw, 2rem);
    background:
        radial-gradient(circle at 0 0, rgba(240,202,14,.16), transparent 34%),
        linear-gradient(180deg, rgba(255,255,255,.96), rgba(255,250,235,.92));
    box-shadow: 0 10px 30px rgba(0,0,0,.08);
}

.flaeijel-aanmelden-form-page__media + .flaeijel-aanmelden-form-page__content {
    border-top: 0;
}

.flaeijel-aanmelden-form-page .flaeijel-clean-form-header {
    max-width: 680px;
    margin: 0 auto 1rem;
    text-align: center;
}

.flaeijel-aanmelden-form-page .flaeijel-step-kicker {
    display: none !important;
}

.flaeijel-aanmelden-form-page .flaeijel-form-title,
.flaeijel-aanmelden-form-page__content > h1 {
    margin: 0 0 .65rem;
    text-align: center;
    font-size: clamp(2.05rem, 5vw, 3.55rem);
    line-height: 1;
    font-weight: 950;
    letter-spacing: -.04em;
    color: var(--ft-black);
}

.flaeijel-aanmelden-form-page .flaeijel-intro-text,
.flaeijel-aanmelden-page-form .flaeijel-form-intro {
    max-width: 650px;
    margin: 0 auto;
    text-align: center;
    font-size: clamp(.98rem, 1.8vw, 1.06rem);
    line-height: 1.55;
    color: rgba(16,16,16,.76);
}

.flaeijel-aanmelden-page-form {
    width: 100%;
    max-width: none;
    margin: 0;
}

.flaeijel-aanmelden-page-form .form-step {
    overflow: visible;
    width: 100%;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.flaeijel-aanmelden-page-form .form-step::before,
.flaeijel-aanmelden-page-form > .form-step > .flaeijel-step-kicker,
.flaeijel-aanmelden-page-form > .form-step > h2,
.flaeijel-aanmelden-page-form > .form-step > .flaeijel-aanmelden-item__meta {
    display: none !important;
}

.flaeijel-aanmelden-page-form .flaeijel-form-grid,
.flaeijel-aanmelden-page-form .flaeijel-form-extra-vragen {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .82rem 1rem;
    margin-top: 1rem;
}

.flaeijel-aanmelden-page-form label {
    display: grid;
    gap: .28rem;
    font-size: .94rem;
    font-weight: 800;
}

.flaeijel-aanmelden-page-form .flaeijel-form-extra-vraag,
.flaeijel-aanmelden-page-form .flaeijel-form-bericht {
    margin-top: .85rem;
}

.flaeijel-aanmelden-page-form .flaeijel-form-bericht,
.flaeijel-aanmelden-page-form .flaeijel-form-extra-vraag:has(textarea),
.flaeijel-aanmelden-page-form .flaeijel-form-extra-vraag:has(input[type="file"]) {
    grid-column: 1 / -1;
}

.flaeijel-aanmelden-page-form input[type="text"],
.flaeijel-aanmelden-page-form input[type="email"],
.flaeijel-aanmelden-page-form input[type="tel"],
.flaeijel-aanmelden-page-form input[type="number"],
.flaeijel-aanmelden-page-form input[type="date"],
.flaeijel-aanmelden-page-form input[type="file"],
.flaeijel-aanmelden-page-form select,
.flaeijel-aanmelden-page-form textarea {
    width: 100%;
    min-height: 48px;
    padding: .72rem .82rem;
    border: 1px solid rgba(0,0,0,.14);
    border-radius: 14px;
    background: #fff;
    color: #111;
    font: inherit;
    font-weight: 500;
}

.flaeijel-aanmelden-page-form textarea {
    min-height: 112px;
}

.flaeijel-aanmelden-page-form input:focus,
.flaeijel-aanmelden-page-form select:focus,
.flaeijel-aanmelden-page-form textarea:focus {
    outline: 2px solid rgba(240,202,14,.55);
    border-color: var(--ft-yellow);
}

.flaeijel-aanmelden-page-form .flaeijel-actions {
    display: flex;
    justify-content: flex-end;
    gap: .75rem;
    margin-top: 1.15rem;
}

.flaeijel-aanmelden-page-form .button,
.flaeijel-aanmelden-page-form button {
    min-height: 48px;
    border-radius: 999px;
}

.flaeijel-aanmelden-page-form .button-primary,
.flaeijel-aanmelden-page-form .button--primary,
.flaeijel-aanmelden-page-form .flaeijel-form-button {
    background: var(--ft-black);
    color: var(--ft-yellow);
    border-color: var(--ft-black);
}

.flaeijel-aanmelden-page-form .button-secondary,
.flaeijel-aanmelden-page-form .button--ghost {
    background: #fff;
    color: var(--ft-black);
    border-color: rgba(0,0,0,.18);
}

@media (max-width: 768px) {
    body:has(.flaeijel-aanmelden-form-page) .site-header,
    body:has(.flaeijel-aanmelden-form-page) header.site-header,
    body:has(.flaeijel-aanmelden-form-page) .main-navigation,
    body:has(.flaeijel-aanmelden-form-page) .header-image-bar,
    body:has(.flaeijel-aanmelden-form-page) .hero-top-navigation,
    body:has(.flaeijel-aanmelden-form-page) .breadcrumb,
    body:has(.flaeijel-aanmelden-form-page) .breadcrumbs,
    body:has(.flaeijel-aanmelden-form-page) .entry-header,
    body:has(.flaeijel-aanmelden-form-page) .page-header,
    body:has(.flaeijel-aanmelden-form-page) .site-footer,
    body:has(.flaeijel-aanmelden-form-page) footer.site-footer,
    body:has(.flaeijel-aanmelden-form-page) .footer-card,
    body:has(.flaeijel-aanmelden-form-page) .site-info {
        display: none !important;
    }

    body:has(.flaeijel-aanmelden-form-page) {
        min-height: 100vh;
        overflow-x: hidden;
        background:
            radial-gradient(circle at top, rgba(240,202,14,.22), transparent 34%),
            linear-gradient(180deg, #050505 0%, #111 54%, #050505 100%) !important;
    }

    body:has(.flaeijel-aanmelden-form-page) .site,
    body:has(.flaeijel-aanmelden-form-page) .site-main,
    body:has(.flaeijel-aanmelden-form-page) main,
    body:has(.flaeijel-aanmelden-form-page) article,
    body:has(.flaeijel-aanmelden-form-page) .entry-content,
    body:has(.flaeijel-aanmelden-form-page) .content-shell,
    body:has(.flaeijel-aanmelden-form-page) .single-page-main,
    body:has(.flaeijel-aanmelden-form-page) .single-page-card,
    body:has(.flaeijel-aanmelden-form-page) .single-page-content {
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    .flaeijel-aanmelden-form-page {
        width: 100% !important;
        max-width: none !important;
        min-height: 100vh;
        margin: 0 !important;
        padding: calc(.7rem + env(safe-area-inset-top)) .72rem calc(92px + env(safe-area-inset-bottom));
        background: transparent;
    }

    .flaeijel-aanmeldformulier-mobile-appbar {
        position: sticky;
        top: 0;
        z-index: 60;
        display: grid;
        grid-template-columns: 42px 1fr;
        align-items: center;
        gap: .65rem;
        margin: -.1rem -.2rem .75rem;
        padding: .55rem .65rem;
        color: #fff;
        background: rgba(5,5,5,.78);
        border: 1px solid rgba(240,202,14,.28);
        border-radius: 18px;
        box-shadow: 0 10px 28px rgba(0,0,0,.24), 0 0 18px rgba(240,202,14,.12);
        backdrop-filter: blur(14px);
        -webkit-backdrop-filter: blur(14px);
    }

    .flaeijel-aanmeldformulier-mobile-appbar strong {
        display: block;
        overflow: hidden;
        color: #fff;
        font-size: .98rem;
        font-weight: 900;
        line-height: 1.05;
        white-space: nowrap;
        text-overflow: ellipsis;
    }

    .flaeijel-aanmeldformulier-mobile-appbar span {
        display: block;
        margin-top: .12rem;
        color: var(--ft-yellow, #f0ca0e);
        font-size: .72rem;
        font-weight: 900;
        letter-spacing: .08em;
        text-transform: uppercase;
    }

    .flaeijel-aanmeldformulier-mobile-appbar .flaeijel-appbar-back {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-width: 0 !important;
        width: 42px !important;
        height: 42px !important;
        min-height: 42px !important;
        padding: 0 !important;
        border: 1px solid rgba(240,202,14,.45) !important;
        border-radius: 999px !important;
        background: #0b0b0b !important;
        color: var(--ft-yellow, #f0ca0e) !important;
        font-size: 2rem !important;
        line-height: 1 !important;
        text-decoration: none !important;
        box-shadow: none !important;
    }

    .flaeijel-aanmelden-form-page__media {
        display: none;
    }

    .flaeijel-aanmelden-form-page__content {
        width: 100% !important;
        min-height: calc(100vh - 106px - env(safe-area-inset-top));
        margin: 0 !important;
        padding: 1rem .95rem 0 !important;
        border-radius: 24px 24px 0 0;
        border: 0;
        background:
            radial-gradient(circle at top left, rgba(240,202,14,.24), transparent 34%),
            linear-gradient(180deg, #fffdf6 0%, #fff7da 100%);
        box-shadow: none;
    }

    .flaeijel-aanmelden-form-page .flaeijel-clean-form-header {
        padding: .35rem .35rem .1rem;
        margin: 0 auto .8rem;
        text-align: center;
    }

    .flaeijel-aanmelden-form-page .flaeijel-form-title {
        margin-bottom: .55rem;
        text-align: center;
        font-size: clamp(2rem, 12vw, 3.1rem);
        line-height: .98;
        letter-spacing: -.055em;
    }

    .flaeijel-aanmelden-form-page .flaeijel-intro-text,
    .flaeijel-aanmelden-page-form .flaeijel-form-intro {
        max-width: 330px;
        text-align: center;
        font-size: .94rem;
        line-height: 1.45;
        color: rgba(16,16,16,.74);
        font-weight: 650;
    }

    .flaeijel-aanmelden-page-form .flaeijel-form-grid,
    .flaeijel-aanmelden-page-form .flaeijel-form-extra-vragen {
        grid-template-columns: 1fr;
        gap: .65rem;
        margin-top: .85rem;
    }

    .flaeijel-aanmelden-page-form label {
        font-size: .9rem;
    }

    .flaeijel-aanmelden-page-form input[type="text"],
    .flaeijel-aanmelden-page-form input[type="email"],
    .flaeijel-aanmelden-page-form input[type="tel"],
    .flaeijel-aanmelden-page-form input[type="number"],
    .flaeijel-aanmelden-page-form input[type="date"],
    .flaeijel-aanmelden-page-form input[type="file"],
    .flaeijel-aanmelden-page-form select,
    .flaeijel-aanmelden-page-form textarea {
        min-height: 52px;
        padding: .68rem .78rem;
        border-radius: 16px;
        font-size: 16px;
    }

    .flaeijel-aanmelden-page-form textarea {
        min-height: 104px;
    }

    .flaeijel-aanmelden-page-form .flaeijel-actions {
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 50;
        display: grid;
        grid-template-columns: .72fr 1fr;
        gap: .55rem;
        margin: 0;
        padding: .75rem 1rem calc(.75rem + env(safe-area-inset-bottom));
        background: rgba(5,5,5,.86);
        border-top: 1px solid rgba(240,202,14,.24);
        box-shadow: 0 -10px 28px rgba(0,0,0,.28);
        backdrop-filter: blur(14px);
        -webkit-backdrop-filter: blur(14px);
    }

    .flaeijel-aanmelden-page-form .flaeijel-actions .button,
    .flaeijel-aanmelden-page-form .flaeijel-actions button {
        width: 100% !important;
        min-width: 0;
        min-height: 50px;
    }

    .flaeijel-aanmelden-page-form .flaeijel-actions .button-secondary,
    .flaeijel-aanmelden-page-form .flaeijel-actions .button--ghost {
        order: 1;
        background: rgba(255,255,255,.10);
        color: #fff;
        border-color: rgba(255,255,255,.28);
    }

    .flaeijel-aanmelden-page-form .flaeijel-actions .button-primary,
    .flaeijel-aanmelden-page-form .flaeijel-actions .button--primary {
        order: 2;
    }
}

/* 1.8.102 - Aanmeldformulierpagina visueel gelijker aan trekkers-plugin. */
.flaeijel-aanmelden-form-page {
    --ft-yellow: var(--flaeijel-geel, #f0ca0e);
    --ft-yellow-light: var(--flaeijel-geel-licht, #f7df54);
    --ft-black: var(--flaeijel-zwart, #101010);
    --ft-border: var(--flaeijel-rand, rgba(0,0,0,.12));
    --ft-shadow: var(--flaeijel-schaduw, 0 16px 40px rgba(0,0,0,.08));
    --ft-radius: var(--flaeijel-radius, 22px);
    width: min(100% - 2rem, 1040px);
    max-width: 1040px;
    margin: clamp(1.25rem, 4vw, 3rem) auto;
    padding: clamp(1.25rem, 3vw, 2.25rem);
    border: 1px solid var(--ft-border);
    border-radius: calc(var(--ft-radius) + 4px);
    background:
        radial-gradient(ellipse at left center, rgba(240,202,14,.18), transparent 55%),
        radial-gradient(ellipse at right center, rgba(157,78,221,.12), transparent 58%),
        linear-gradient(180deg, rgba(255,255,255,.94), rgba(255,250,234,.90));
    box-shadow: var(--ft-shadow), 0 0 22px rgba(240,202,14,.12);
    color: var(--ft-black);
    overflow: hidden;
    position: relative;
}

.flaeijel-aanmelden-form-page::before {
    content: "";
    position: absolute;
    inset: 0 0 auto 0;
    height: 5px;
    background: linear-gradient(90deg, var(--ft-yellow), var(--ft-yellow-light));
}

.flaeijel-aanmelden-form-page__media {
    display: none !important;
}

.flaeijel-aanmelden-form-page__content {
    width: min(100%, 780px);
    margin: 0 auto !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.flaeijel-aanmelden-form-page .flaeijel-clean-form-header {
    margin: 0 auto 1.15rem;
    padding: 0;
    text-align: center;
}

.flaeijel-aanmeldformulier-progress {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: .5rem;
    margin: 0 auto 1rem;
}

.flaeijel-aanmeldformulier-progress span {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: .4rem .72rem;
    border-radius: 999px;
    border: 1px solid rgba(240,202,14,.34);
    background: rgba(255,255,255,.72);
    color: rgba(16,16,16,.74);
    font-size: .84rem;
    font-weight: 900;
}

.flaeijel-aanmeldformulier-progress span.is-active {
    background: #0b0b0b;
    border-color: rgba(240,202,14,.75);
    color: var(--ft-yellow);
    box-shadow: 0 0 14px rgba(240,202,14,.24);
}

.flaeijel-aanmeldformulier-progress span.is-done {
    background: linear-gradient(180deg, var(--ft-yellow-light), var(--ft-yellow));
    border-color: rgba(0,0,0,.16);
    color: var(--ft-black);
}

.flaeijel-aanmelden-form-page .flaeijel-form-title {
    margin: 0 0 .5rem !important;
    text-align: center;
    font-family: var(--font_2), Arial, Helvetica, sans-serif;
    font-size: clamp(2.45rem, 6vw, 4.35rem);
    font-weight: 950;
    line-height: 1;
    letter-spacing: .01em;
    color: var(--ft-black);
    text-shadow: none;
}

.flaeijel-aanmelden-form-page .flaeijel-intro-text {
    max-width: 700px;
    margin: 0 auto;
    text-align: center;
    color: rgba(16,16,16,.72);
    font-weight: 800;
}

.flaeijel-aanmelden-page-form,
.flaeijel-aanmelden-page-form .form-step,
.flaeijel-aanmelden-page-form form,
.flaeijel-aanmelden-page-form .flaeijel-vrijwilliger-formulier {
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.flaeijel-aanmelden-page-form .form-step::before,
.flaeijel-aanmelden-page-form > .form-step > .flaeijel-step-kicker,
.flaeijel-aanmelden-page-form > .form-step > h2,
.flaeijel-aanmelden-page-form > .form-step > .flaeijel-aanmelden-item__meta {
    display: none !important;
}

.flaeijel-aanmelden-page-form .flaeijel-form-intro {
    max-width: 700px;
    margin: 0 auto 1rem;
    text-align: center;
    color: rgba(16,16,16,.72);
    font-weight: 700;
}

.flaeijel-aanmelden-page-form .flaeijel-form-grid,
.flaeijel-aanmelden-page-form .flaeijel-form-extra-vragen {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .9rem 1rem;
    margin-top: 1rem;
}

.flaeijel-aanmelden-page-form label {
    display: grid;
    gap: .35rem;
    margin: 0;
    font-size: .92rem;
    font-weight: 900;
    color: var(--ft-black);
}

.flaeijel-aanmelden-page-form .flaeijel-form-extra-vraag,
.flaeijel-aanmelden-page-form .flaeijel-form-bericht {
    margin-top: .9rem;
}

.flaeijel-aanmelden-page-form .flaeijel-form-bericht,
.flaeijel-aanmelden-page-form .flaeijel-form-extra-vraag:has(textarea),
.flaeijel-aanmelden-page-form .flaeijel-form-extra-vraag:has(input[type="file"]) {
    grid-column: 1 / -1;
}

.flaeijel-aanmelden-page-form input[type="text"],
.flaeijel-aanmelden-page-form input[type="email"],
.flaeijel-aanmelden-page-form input[type="tel"],
.flaeijel-aanmelden-page-form input[type="number"],
.flaeijel-aanmelden-page-form input[type="date"],
.flaeijel-aanmelden-page-form input[type="file"],
.flaeijel-aanmelden-page-form select,
.flaeijel-aanmelden-page-form textarea {
    width: 100%;
    max-width: none;
    min-height: 48px;
    padding: .68rem .82rem;
    border: 1px solid rgba(0,0,0,.16);
    border-radius: 16px;
    background: rgba(255,255,255,.94);
    color: var(--ft-black);
    font: inherit;
    font-size: 16px;
    box-shadow: inset 0 1px 2px rgba(0,0,0,.04);
}

.flaeijel-aanmelden-page-form textarea {
    min-height: 120px;
    resize: vertical;
}

.flaeijel-aanmelden-page-form input:focus,
.flaeijel-aanmelden-page-form select:focus,
.flaeijel-aanmelden-page-form textarea:focus {
    outline: none;
    border-color: var(--ft-yellow);
    box-shadow: 0 0 0 2px rgba(240,202,14,.18), 0 0 12px rgba(157,78,221,.10);
}

.flaeijel-aanmelden-page-form .flaeijel-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: .75rem;
    margin-top: 1.4rem;
}

.flaeijel-aanmelden-page-form .button,
.flaeijel-aanmelden-page-form button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    min-width: 170px;
    padding: .68rem 1.18rem;
    border-radius: 999px;
    font: inherit;
    font-size: .92rem;
    font-weight: 900;
    line-height: 1.1;
    letter-spacing: .035em;
    text-align: center;
    text-decoration: none;
}

.flaeijel-aanmelden-page-form .button-primary,
.flaeijel-aanmelden-page-form .button--primary,
.flaeijel-aanmelden-page-form .flaeijel-form-button {
    background: #0b0b0b !important;
    color: var(--ft-yellow) !important;
    border: 2px solid rgba(240,202,14,.75) !important;
    box-shadow: 0 0 12px rgba(240,202,14,.35), 0 0 28px rgba(240,202,14,.22) !important;
}

.flaeijel-aanmelden-page-form .button-secondary,
.flaeijel-aanmelden-page-form .button--ghost {
    background: rgba(255,255,255,.78) !important;
    color: var(--ft-black) !important;
    border: 2px solid rgba(16,16,16,.30) !important;
    box-shadow: none !important;
}

@media (max-width: 768px) {
    body:has(.flaeijel-aanmelden-form-page) {
        background:
            radial-gradient(circle at top left, rgba(240,202,14,.16), transparent 42%),
            linear-gradient(180deg, #fffdf6 0%, #fff4c7 100%) !important;
    }

    .flaeijel-aanmelden-form-page {
        width: min(100% - .8rem, 430px) !important;
        max-width: 430px !important;
        min-height: auto !important;
        margin: .35rem auto 0 !important;
        padding: .75rem .75rem calc(5.7rem + env(safe-area-inset-bottom)) !important;
        border-radius: 18px 18px 0 0;
        box-shadow: 0 14px 34px rgba(0,0,0,.10);
        background:
            radial-gradient(ellipse at left center, rgba(240,202,14,.18), transparent 58%),
            linear-gradient(180deg, rgba(255,255,255,.96), rgba(255,250,234,.92));
    }

    .flaeijel-aanmeldformulier-mobile-appbar {
        display: none !important;
    }

    .flaeijel-aanmelden-form-page__content {
        width: 100% !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    .flaeijel-aanmeldformulier-progress {
        justify-content: flex-start;
        flex-wrap: nowrap;
        overflow-x: auto;
        padding-bottom: .25rem;
        margin: .55rem -.15rem .8rem;
    }

    .flaeijel-aanmeldformulier-progress span {
        flex: 0 0 auto;
        min-height: 32px;
        padding: .36rem .68rem;
        font-size: .76rem;
    }

    .flaeijel-aanmelden-form-page .flaeijel-form-title {
        font-size: clamp(2.15rem, 12vw, 3.1rem);
        margin-bottom: .35rem !important;
    }

    .flaeijel-aanmelden-form-page .flaeijel-intro-text,
    .flaeijel-aanmelden-page-form .flaeijel-form-intro {
        max-width: 330px;
        font-size: .9rem;
        line-height: 1.4;
    }

    .flaeijel-aanmelden-page-form .flaeijel-form-grid,
    .flaeijel-aanmelden-page-form .flaeijel-form-extra-vragen {
        grid-template-columns: 1fr;
        gap: .65rem;
        margin-top: .85rem;
    }

    .flaeijel-aanmelden-page-form input[type="text"],
    .flaeijel-aanmelden-page-form input[type="email"],
    .flaeijel-aanmelden-page-form input[type="tel"],
    .flaeijel-aanmelden-page-form input[type="number"],
    .flaeijel-aanmelden-page-form input[type="date"],
    .flaeijel-aanmelden-page-form input[type="file"],
    .flaeijel-aanmelden-page-form select,
    .flaeijel-aanmelden-page-form textarea {
        min-height: 52px;
        border-radius: 16px;
    }

    .flaeijel-aanmelden-page-form .flaeijel-actions {
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 50;
        display: grid;
        grid-template-columns: .72fr 1fr;
        gap: .55rem;
        margin: 0;
        padding: .75rem 1rem calc(.75rem + env(safe-area-inset-bottom));
        background: rgba(255,253,246,.96);
        border-top: 1px solid rgba(0,0,0,.10);
        box-shadow: 0 -10px 28px rgba(0,0,0,.14);
        backdrop-filter: blur(12px);
        -webkit-backdrop-filter: blur(12px);
    }

    .flaeijel-aanmelden-page-form .flaeijel-actions .button,
    .flaeijel-aanmelden-page-form .flaeijel-actions button {
        width: 100% !important;
        min-width: 0;
        min-height: 50px;
        padding-left: .7rem;
        padding-right: .7rem;
    }

    .flaeijel-aanmelden-page-form .flaeijel-actions .button-secondary,
    .flaeijel-aanmelden-page-form .flaeijel-actions .button--ghost { order: 1; }
    .flaeijel-aanmelden-page-form .flaeijel-actions .button-primary,
    .flaeijel-aanmelden-page-form .flaeijel-actions .button--primary { order: 2; }
}

/* 1.8.103 - Wizard-pillen verwijderd; mobiel terug dichter naar de trekkers/PWA-layout. */
.flaeijel-aanmeldformulier-progress {
    display: none !important;
}

@media (max-width: 768px) {
    body:has(.flaeijel-aanmelden-form-page) .site-header,
    body:has(.flaeijel-aanmelden-form-page) header.site-header,
    body:has(.flaeijel-aanmelden-form-page) .main-navigation,
    body:has(.flaeijel-aanmelden-form-page) .header-image-bar,
    body:has(.flaeijel-aanmelden-form-page) .hero-top-navigation,
    body:has(.flaeijel-aanmelden-form-page) .breadcrumb,
    body:has(.flaeijel-aanmelden-form-page) .breadcrumbs,
    body:has(.flaeijel-aanmelden-form-page) .entry-header,
    body:has(.flaeijel-aanmelden-form-page) .page-header,
    body:has(.flaeijel-aanmelden-form-page) .site-footer,
    body:has(.flaeijel-aanmelden-form-page) footer.site-footer,
    body:has(.flaeijel-aanmelden-form-page) .footer-card,
    body:has(.flaeijel-aanmelden-form-page) .site-info {
        display: none !important;
    }

    body:has(.flaeijel-aanmelden-form-page) {
        min-height: 100vh;
        overflow-x: hidden;
        background:
            radial-gradient(circle at top, rgba(240,202,14,.22), transparent 34%),
            linear-gradient(180deg, #050505 0%, #111 54%, #050505 100%) !important;
    }

    body:has(.flaeijel-aanmelden-form-page) .site,
    body:has(.flaeijel-aanmelden-form-page) .site-main,
    body:has(.flaeijel-aanmelden-form-page) main,
    body:has(.flaeijel-aanmelden-form-page) article,
    body:has(.flaeijel-aanmelden-form-page) .entry-content,
    body:has(.flaeijel-aanmelden-form-page) .content-shell,
    body:has(.flaeijel-aanmelden-form-page) .single-page-main,
    body:has(.flaeijel-aanmelden-form-page) .single-page-card,
    body:has(.flaeijel-aanmelden-form-page) .single-page-content {
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    .flaeijel-aanmelden-form-page {
        width: 100% !important;
        max-width: none !important;
        min-height: 100vh !important;
        margin: 0 !important;
        padding: calc(.7rem + env(safe-area-inset-top)) .72rem calc(92px + env(safe-area-inset-bottom)) !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    .flaeijel-aanmeldformulier-mobile-appbar {
        position: sticky;
        top: 0;
        z-index: 60;
        display: grid !important;
        grid-template-columns: 42px 1fr;
        align-items: center;
        gap: .65rem;
        margin: -.1rem -.2rem .75rem;
        padding: .55rem .65rem;
        color: #fff;
        background: rgba(5,5,5,.78);
        border: 1px solid rgba(240,202,14,.28);
        border-radius: 18px;
        box-shadow: 0 10px 28px rgba(0,0,0,.24), 0 0 18px rgba(240,202,14,.12);
        backdrop-filter: blur(14px);
        -webkit-backdrop-filter: blur(14px);
    }

    .flaeijel-aanmeldformulier-mobile-appbar strong {
        display: block;
        overflow: hidden;
        color: #fff;
        font-size: .98rem;
        font-weight: 900;
        line-height: 1.05;
        white-space: nowrap;
        text-overflow: ellipsis;
    }

    .flaeijel-aanmeldformulier-mobile-appbar span {
        display: block;
        margin-top: .12rem;
        color: var(--ft-yellow, #f0ca0e);
        font-size: .72rem;
        font-weight: 900;
        letter-spacing: .08em;
        text-transform: uppercase;
    }

    .flaeijel-aanmeldformulier-mobile-appbar .flaeijel-appbar-back {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-width: 0 !important;
        width: 42px !important;
        height: 42px !important;
        min-height: 42px !important;
        padding: 0 !important;
        border: 1px solid rgba(240,202,14,.45) !important;
        border-radius: 999px !important;
        background: #0b0b0b !important;
        color: var(--ft-yellow, #f0ca0e) !important;
        font-size: 2rem !important;
        line-height: 1 !important;
        text-decoration: none !important;
        box-shadow: none !important;
    }

    .flaeijel-aanmelden-form-page__media {
        display: none !important;
    }

    .flaeijel-aanmelden-form-page__content {
        width: 100% !important;
        min-height: calc(100vh - 106px - env(safe-area-inset-top)) !important;
        margin: 0 !important;
        padding: 1rem .95rem 0 !important;
        border: 0 !important;
        border-radius: 24px 24px 0 0 !important;
        background:
            radial-gradient(circle at top left, rgba(240,202,14,.24), transparent 34%),
            linear-gradient(180deg, #fffdf6 0%, #fff7da 100%) !important;
        box-shadow: none !important;
    }

    .flaeijel-aanmelden-form-page .flaeijel-clean-form-header {
        padding: .35rem .35rem .1rem !important;
        margin: 0 auto .8rem !important;
        text-align: center !important;
    }

    .flaeijel-aanmelden-form-page .flaeijel-form-title {
        margin-bottom: .55rem !important;
        text-align: center !important;
        font-size: clamp(2rem, 12vw, 3.1rem) !important;
        line-height: .98 !important;
        letter-spacing: -.055em !important;
    }

    .flaeijel-aanmelden-form-page .flaeijel-intro-text,
    .flaeijel-aanmelden-page-form .flaeijel-form-intro {
        max-width: 330px !important;
        text-align: center !important;
        font-size: .94rem !important;
        line-height: 1.45 !important;
        color: rgba(16,16,16,.74) !important;
        font-weight: 650 !important;
    }

    .flaeijel-aanmelden-page-form .flaeijel-form-grid,
    .flaeijel-aanmelden-page-form .flaeijel-form-extra-vragen {
        grid-template-columns: 1fr !important;
        gap: .65rem !important;
        margin-top: .85rem !important;
    }

    .flaeijel-aanmelden-page-form label {
        font-size: .9rem !important;
    }

    .flaeijel-aanmelden-page-form input[type="text"],
    .flaeijel-aanmelden-page-form input[type="email"],
    .flaeijel-aanmelden-page-form input[type="tel"],
    .flaeijel-aanmelden-page-form input[type="number"],
    .flaeijel-aanmelden-page-form input[type="date"],
    .flaeijel-aanmelden-page-form input[type="file"],
    .flaeijel-aanmelden-page-form select,
    .flaeijel-aanmelden-page-form textarea {
        min-height: 52px !important;
        padding: .68rem .78rem !important;
        border-radius: 16px !important;
        font-size: 16px !important;
    }

    .flaeijel-aanmelden-page-form textarea {
        min-height: 104px !important;
    }

    .flaeijel-aanmelden-page-form .flaeijel-actions {
        position: fixed !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        z-index: 50 !important;
        display: grid !important;
        grid-template-columns: .72fr 1fr !important;
        gap: .55rem !important;
        margin: 0 !important;
        padding: .75rem 1rem calc(.75rem + env(safe-area-inset-bottom)) !important;
        background: rgba(5,5,5,.86) !important;
        border-top: 1px solid rgba(240,202,14,.24) !important;
        box-shadow: 0 -10px 28px rgba(0,0,0,.28) !important;
        backdrop-filter: blur(14px) !important;
        -webkit-backdrop-filter: blur(14px) !important;
    }

    .flaeijel-aanmelden-page-form .flaeijel-actions .button,
    .flaeijel-aanmelden-page-form .flaeijel-actions button {
        width: 100% !important;
        min-width: 0 !important;
        min-height: 50px !important;
    }

    .flaeijel-aanmelden-page-form .flaeijel-actions .button-secondary,
    .flaeijel-aanmelden-page-form .flaeijel-actions .button--ghost {
        order: 1 !important;
        background: rgba(255,255,255,.10) !important;
        color: #fff !important;
        border-color: rgba(255,255,255,.28) !important;
    }

    .flaeijel-aanmelden-page-form .flaeijel-actions .button-primary,
    .flaeijel-aanmelden-page-form .flaeijel-actions .button--primary {
        order: 2 !important;
    }
}

.flaeijel-actions{display:flex;gap:12px}.flaeijel-actions .button{flex:1;text-align:center;min-height:44px;display:inline-flex;align-items:center;justify-content:center;}

/* 1.8.105 - Terug- en verzendknop exact gelijk in hoogte/vorm. */
.flaeijel-aanmelden-page-form .flaeijel-actions .button,
.flaeijel-aanmelden-page-form .flaeijel-actions button,
.flaeijel-aanmelden-page-form .flaeijel-actions a.button {
    box-sizing: border-box !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 46px !important;
    min-height: 46px !important;
    max-height: 46px !important;
    padding: 0 1.18rem !important;
    border-radius: 999px !important;
    font-size: .92rem !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    text-align: center !important;
    text-decoration: none !important;
    vertical-align: middle !important;
}

@media (max-width: 768px) {
    .flaeijel-aanmelden-page-form .flaeijel-actions .button,
    .flaeijel-aanmelden-page-form .flaeijel-actions button,
    .flaeijel-aanmelden-page-form .flaeijel-actions a.button {
        height: 46px !important;
        min-height: 46px !important;
        max-height: 46px !important;
        padding: 0 .7rem !important;
    }
}


/* 1.8.106 button alignment fix */
.flaeijel-actions{
display:flex;
align-items:center;
}
.flaeijel-actions .button,
.flaeijel-actions button,
.flaeijel-actions a{
height:48px !important;
min-height:48px !important;
display:inline-flex !important;
align-items:center !important;
justify-content:center !important;
line-height:1 !important;
margin:0 !important;
box-sizing:border-box;
vertical-align:middle;
}
