
.zv-form-wrap{margin:2rem auto;max-width:920px;padding:clamp(1.2rem,3vw,2.5rem);background:#f7f4ed;border:1px solid #dfd2b7;border-radius:14px}
.zv-form{display:grid;gap:1.1rem}.zv-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.zv-form label{display:grid;gap:.4rem;font-weight:600;color:#1c3046}
.zv-form input:not([type=checkbox]),.zv-form textarea,.zv-form select{font:inherit;color:#14283c;padding:.8rem;border:1px solid #b8bdc5;border-radius:6px;width:100%;background:white;box-sizing:border-box}
.zv-form .zv-consent{display:flex;align-items:flex-start;gap:.6rem;font-weight:400;line-height:1.5}
.zv-form .zv-consent input{margin-top:.35rem}.zv-form .btn{cursor:pointer;justify-self:start}
.zv-form-note{font-size:.9rem;line-height:1.6;color:#4c5965;grid-column:1/-1}
.zv-hp{position:absolute;left:-9999px;opacity:0;pointer-events:none}
.zv-form-success{padding:1rem;border-left:4px solid #2f7850;background:#eaf7ed}
.zv-form-error{padding:1rem;border-left:4px solid #b42d2d;background:#fff0f0}
.zv-resource-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1.4rem;margin:2rem 0}
.zv-resource{background:#f7f4ed;border:1px solid #e1d7c4;border-radius:10px;padding:1.4rem;overflow:hidden}
.zv-resource img{width:100%;height:auto;object-fit:cover;border-radius:6px}
.zv-resource audio{width:100%;margin-top:1rem}
@media(max-width:700px){.zv-form-grid{grid-template-columns:1fr}}
