.se-form-wrap { width:100%; }
.se-offer-wrap { max-width:920px; margin:0 auto; }
.se-form [hidden] { display:none!important; }
.se-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem 1.5rem; }
.se-field { min-width:0; margin:0; padding:0; border:0; }
.se-field-wide { grid-column:1/-1; }
.se-field > label,.se-field > legend { display:block; float:none; width:100%; margin:0 0 .45rem; font-weight:600; font-size:1rem; }
.se-offer-form .se-field > legend { font-size:1.35rem; }
.se-offer-form .se-field { margin-bottom:.7rem; }
.se-form .form-control { width:100%; min-height:44px; padding:.5rem .75rem; border:1px solid #c4c5b7; border-radius:6px; background:#fff; color:#1b1c07; font:inherit; }
.se-form textarea.form-control { min-height:106px; resize:vertical; }
.se-form .form-control:focus { outline:2px solid #737420; outline-offset:2px; box-shadow:none; }
.se-form [aria-invalid=true] { border-color:#ad2424; }
.se-required { color:#b22a2a; }
.se-required-note,.se-privacy-note { font-size:.875rem; color:#515244; }
.se-required-note { margin:0 0 1.4rem; }
.se-privacy-note { margin:1.1rem 0; }
.se-choice-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:.5rem; }
.se-columns-3 { grid-template-columns:repeat(3,minmax(0,1fr)); }
.se-columns-4 { grid-template-columns:repeat(4,minmax(0,1fr)); }
.se-choice { position:relative; display:flex; flex-wrap:wrap; align-content:start; min-width:0; min-height:46px; margin:0; padding:.55rem 2rem .55rem .8rem; border:1px solid #c4c5b7; border-radius:6px; background:transparent; color:inherit; cursor:pointer; transition:background-color .18s,border-color .18s; }
.se-choice:hover { background:#f5f5d6; border-color:#85862b; }
.se-choice:has(input:checked) { background:#f3f3c3; border-color:#737420; box-shadow:inset 0 0 0 1px #737420; }
.se-choice:focus-within { outline:2px solid #737420; outline-offset:2px; }
.se-choice input { position:absolute; top:.8rem; right:.65rem; width:17px; height:17px; margin:0; accent-color:#777817; }
.se-choice-title { display:block; width:100%; overflow-wrap:anywhere; }
.se-choice img { display:block; width:100%; height:145px; object-fit:contain; margin:.8rem auto .25rem; }
.se-consent { display:flex!important; align-items:flex-start; gap:.65rem; font-weight:400!important; }
.se-consent input { flex:0 0 auto; width:18px; height:18px; margin-top:.25rem; accent-color:#777817; }
.se-form a { text-underline-offset:3px; }
.se-field-help { margin:-.3rem 0 .5rem; color:#626350; font-size:.95rem; }
.se-field-error { margin:.35rem 0 0; color:#a12626; font-size:.9rem; }
.se-form-notice { margin:0 0 1.4rem; padding:1rem 1.2rem; border:1px solid #b75959; border-radius:6px; background:#fff2f2; color:#782323; scroll-margin-top:130px; }
.se-form-notice.se-notice-success { border-color:#78913b; background:#f0f6e6; color:#354d17; }
.se-form-actions { display:flex; justify-content:flex-end; gap:.75rem; margin-top:1.2rem; }
.se-form-actions .se-prev { margin-right:auto; }
.se-form button { min-height:44px; }
.se-form button:disabled { cursor:wait; opacity:.65; }
.se-honeypot { position:absolute!important; width:1px!important; height:1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; clip-path:inset(50%)!important; white-space:nowrap!important; }
.se-progress { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.75rem; margin:0 0 2rem; padding:0; list-style:none; }
.se-progress li { border-bottom:3px solid #deded1; padding:.5rem 0 .8rem; color:#666757; font-size:.95rem; }
.se-progress li span { display:inline-flex; justify-content:center; align-items:center; width:24px; height:24px; margin-right:.2rem; border-radius:50%; background:#eaeade; }
.se-progress [aria-current=step] { color:#1b1c07; border-color:#dbdc38; font-weight:600; }
.se-progress [aria-current=step] span,.se-progress .se-step-complete span { background:#dbdc38; color:#1b1c07; }
.se-progress .se-step-complete { border-color:#a8aa37; }
.se-step h2 { margin:0 0 1.5rem; scroll-margin-top:130px; }
.se-step h2:focus { outline:none; }
.se-offer-intro { padding:1.5rem 0 2rem; }
.se-offer-intro p { font-size:1.2rem; margin-bottom:1.4rem; }
.se-form .visually-hidden { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
@media(max-width:767px) {
 .se-form-grid { grid-template-columns:minmax(0,1fr); gap:1rem; }
 .se-columns-3,.se-columns-4 { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .se-progress { gap:.45rem; }
 .se-progress li { font-size:.78rem; }
 .se-progress li span { display:flex; margin-bottom:.3rem; }
 .se-choice img { height:112px; }
 .se-offer-form .se-field > legend { font-size:1.15rem; }
}
@media(max-width:480px) {
 .se-contact-form .se-choice-grid { grid-template-columns:minmax(0,1fr); }
 .se-form-actions .btn { padding-left:.9rem; padding-right:.9rem; }
}
@media(prefers-reduced-motion:reduce) { .se-choice { transition:none; } }
