/* Odstúpenie od zmluvy — withdrawal-from-contract form */
.wf { padding: 30px 0 50px; }
.wf__card {
    max-width: 760px;
    margin: 0 auto;
    background: #fff;
    border: 1px solid #e6e6e6;
    border-radius: 8px;
    padding: 30px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, .05);
}
.wf__intro { margin: 0 0 24px; color: #555; line-height: 1.5; }
.wf__form { display: block; }
.wf__row { display: flex; gap: 20px; flex-wrap: wrap; }
.wf__row > .wf__field { flex: 1 1 240px; }
.wf__field { display: block; margin-bottom: 18px; }
.wf__label { display: block; margin-bottom: 6px; font-weight: 600; font-size: .9em; color: #333; }
.wf__input {
    width: 100%;
    padding: 10px 12px;
    border: 1px solid #cfcfcf;
    border-radius: 5px;
    font-size: 1em;
    box-sizing: border-box;
    transition: border-color .15s ease;
}
.wf__input:focus { border-color: #f24049; outline: none; }
.wf__input--error { border-color: #f24049; background: #fff5f5; }
textarea.wf__input { resize: vertical; min-height: 90px; }
.wf__error { display: block; margin-top: 5px; color: #f24049; font-size: .82em; }
.wf__actions { margin-top: 10px; text-align: right; }
.wf__alert { padding: 14px 18px; border-radius: 6px; margin-bottom: 20px; }
.wf__alert--error { background: #fff5f5; border: 1px solid #f24049; color: #b3000c; }
.wf__success {
    text-align: center;
    padding: 20px 10px;
}
.wf__success h2 { color: #1a8f3c; margin: 0 0 12px; }
.wf__success p { color: #555; line-height: 1.5; }
/* honeypot — skryté pred ľuďmi, viditeľné pre botov */
.wf__hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

@media (max-width: 600px) {
    .wf__card { padding: 20px; }
    .wf__row { gap: 0; }
}