/* Contract opzeggen zonder inloggen (templates/site/paginas/contract-opzeggen.php); basis uit juridisch.css. */
.pagina-juridisch .opz-form { display: grid; gap: 1.1rem; margin-top: 1.2rem; }
.pagina-juridisch .opz-veld { display: grid; gap: .35rem; border: 0; padding: 0; margin: 0; }
.pagina-juridisch .opz-veld legend { font-weight: 600; margin-bottom: .35rem; padding: 0; }
.pagina-juridisch .opz-veld > label { font-weight: 600; }
.pagina-juridisch .opz-veld input[type="text"],
.pagina-juridisch .opz-veld input[type="email"],
.pagina-juridisch .opz-veld input[type="date"],
.pagina-juridisch .opz-veld textarea { width: 100%; max-width: 520px; box-sizing: border-box; padding: .65rem .8rem; border: 1px solid #c9cfdc; border-radius: 10px; font: inherit; background: #fff; }
.pagina-juridisch .opz-veld input[type="date"] { max-width: 220px; margin-top: .3rem; }
.pagina-juridisch .opz-veld input:focus-visible,
.pagina-juridisch .opz-veld textarea:focus-visible { outline: 3px solid #1062fe; outline-offset: 1px; border-color: #1062fe; }
.pagina-juridisch .opz-veld [aria-invalid="true"] { border-color: #b42318; }
.pagina-juridisch .opz-keuze { display: flex; align-items: center; gap: .5rem; font-weight: 400; }
.pagina-juridisch .opz-hint { margin: 0; font-size: .86rem; color: #555; }
.pagina-juridisch .opz-fout { margin: .2rem 0 0; color: #b42318; font-size: .9rem; font-weight: 600; }
.pagina-juridisch .opz-verplicht { margin: 0; font-size: .86rem; color: #555; }
.pagina-juridisch .opz-knop { justify-self: start; padding: .8rem 1.6rem; border: 0; border-radius: 10px; background: #1062fe; color: #fff; font: inherit; font-weight: 700; cursor: pointer; }
.pagina-juridisch .opz-knop:hover { background: #0b4fd1; }
.pagina-juridisch .opz-knop:focus-visible { outline: 3px solid #152a80; outline-offset: 2px; }
.pagina-juridisch .opz-bevestiging { background: #eef3ff; border-radius: 12px; padding: 1.2rem 1.4rem; }
.pagina-juridisch .opz-verborgen { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.pagina-juridisch .opz-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
