/* Actiedownloads — productkaart + bestelformulier (frontend/modules/producten/product.blade.php) */
.actieproduct {
    --ap-blauw: #025da4;
    --ap-oranje: #f47543;
    --ap-oranje-donker: #d9592a;
    --ap-rand: #e3e8ee;
    --ap-tekst: #1f2933;
    --ap-grijs: #5b6570;

    background: #fff;
    border: 1px solid var(--ap-rand);
    border-radius: 12px;
    box-shadow: 0 2px 12px rgba(2, 93, 164, .06);
    overflow: hidden;
    margin: 0 0 24px;
    color: var(--ap-tekst);
}

.actieproduct__beeld {
    height: 100%;
    min-height: 200px;
    background: #f4f7fa;
    display: flex;
    align-items: center;
    justify-content: center;
}
.actieproduct__beeld img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    padding: 16px;
}
.actieproduct__pdf {
    font-family: "Varela Round", sans-serif;
    font-size: 28px;
    font-weight: 700;
    color: var(--ap-blauw);
    border: 2px solid var(--ap-blauw);
    border-radius: 8px;
    padding: 18px 16px;
}

.actieproduct__inhoud { padding: 24px 28px; }
.actieproduct__titel {
    color: var(--ap-blauw);
    font-size: 1.5rem;
    margin: 0 0 8px;
}
.actieproduct__intro { color: var(--ap-grijs); }
.actieproduct__intro p:last-child { margin-bottom: 0; }
.actieproduct__prijs {
    font-size: 1.6rem;
    font-weight: 700;
    color: var(--ap-tekst);
    margin: 16px 0;
}
.actieproduct__meer { margin-bottom: 16px; }

.actieproduct__knoppen { display: flex; flex-wrap: wrap; gap: 10px; }
.actieproduct__btn {
    border-radius: 10px;
    padding: 10px 24px;
    font-weight: 700;
    font-size: 16px;
    border: 1px solid transparent;
}
.actieproduct__btn--actie { background: var(--ap-oranje); border-color: var(--ap-oranje); color: #fff; }
.actieproduct__btn--actie:hover,
.actieproduct__btn--actie:focus { background: var(--ap-oranje-donker); border-color: var(--ap-oranje-donker); color: #fff; }
.actieproduct__btn--licht { background: #fff; border-color: var(--ap-blauw); color: var(--ap-blauw); }
.actieproduct__btn--licht:hover,
.actieproduct__btn--licht:focus { background: var(--ap-blauw); color: #fff; }
.actieproduct__btn:focus-visible { outline: 3px solid rgba(2, 93, 164, .35); outline-offset: 2px; }

.actieproduct__form {
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px solid var(--ap-rand);
}
.actieproduct__uitleg { color: var(--ap-grijs); font-size: .95rem; }
.actieproduct__form .form-label { font-weight: 700; margin-bottom: 4px; }
.actieproduct__form .form-control { border-radius: 8px; padding: 10px 12px; }
.actieproduct__form .form-control:focus { border-color: var(--ap-blauw); box-shadow: 0 0 0 .2rem rgba(2, 93, 164, .15); }

.actieproduct__methodes { margin-top: 16px; }
.actieproduct__methodelijst { display: flex; flex-wrap: wrap; gap: 8px; }
.actieproduct__methodelabel {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    border: 1px solid var(--ap-rand);
    border-radius: 8px;
    cursor: pointer;
    background: #fff;
}
.btn-check:checked + .actieproduct__methodelabel { border-color: var(--ap-blauw); box-shadow: 0 0 0 2px rgba(2, 93, 164, .2); }
.btn-check:focus-visible + .actieproduct__methodelabel { outline: 3px solid rgba(2, 93, 164, .35); outline-offset: 2px; }

.actieproduct__akkoord { margin: 16px 0; }
.actieproduct__afrekenen { width: 100%; }

@media (min-width: 576px) {
    .actieproduct__afrekenen { width: auto; }
}
@media (max-width: 767.98px) {
    .actieproduct__beeld { min-height: 160px; }
    .actieproduct__inhoud { padding: 20px; }
}

/* Status- en downloadpagina */
.actiedownload-pagina { padding: 48px 0; }
.actiedownload-kaart { max-width: 720px; margin: 0 auto; padding: 32px; }
.actiedownload-klein { color: #5b6570; font-size: .9rem; }
.actiedownload-lijst { list-style: none; padding: 0; margin: 16px 0; }
.actiedownload-lijst li + li { margin-top: 8px; }
.actiedownload-bestand {
    display: flex; align-items: center; gap: 14px;
    padding: 12px 16px; border: 1px solid #e3e8ee; border-radius: 10px;
    color: #1f2933; text-decoration: none; font-weight: 700;
}
.actiedownload-bestand:hover, .actiedownload-bestand:focus { border-color: #025da4; color: #025da4; }
.actiedownload-icoon { font-size: 12px; padding: 6px 8px; border-width: 1px; }
@media (max-width: 575.98px) { .actiedownload-kaart { padding: 20px; } }

/* Referenties-slider: "Lees meer" + modal (frontend/modules/referenties/slider.blade.php) */
.refslider-leesmeer {
    background: none;
    border: 0;
    padding: 0;
    font-weight: 700;
    color: #025da4;
    text-decoration: underline;
    cursor: pointer;
}
.refslider-leesmeer:hover { color: #f47543; }
.refslider-leesmeer:focus-visible { outline: 3px solid rgba(2, 93, 164, .35); outline-offset: 2px; }
.refmodal .modal-content { border-radius: 12px; border: 0; }
.refmodal .modal-header { align-items: flex-start; border-bottom-color: #e3e8ee; padding: 20px 24px; }
.refmodal .modal-title { color: #025da4; font-size: 1.4rem; margin: 8px 0 0; }
.refmodal .modal-body { padding: 20px 24px 28px; line-height: 1.6; }
.refmodal .stars { display: flex; gap: 2px; }
