
.imfimo-sp{
  --sp-red:#812621;
  --sp-red-dark:#631c18;
  --sp-red-soft:#f4e8e6;
  --sp-ink:#202326;
  --sp-muted:#666d72;
  --sp-cream:#f7f4f0;
  --sp-line:#e6e0db;
  color:var(--sp-ink);
  max-width:980px;
  margin:0 auto;
}
.imfimo-sp-intro{max-width:780px;margin-bottom:34px}
.imfimo-sp-kicker{
  color:var(--sp-red);
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
  margin:0 0 10px;
}
.imfimo-sp-intro h2{font-size:clamp(1.8rem,4vw,3rem);line-height:1.1;margin:0 0 14px;letter-spacing:-.03em}
.imfimo-sp-intro p{color:var(--sp-muted);font-size:1.08rem}
.imfimo-sp-message{padding:18px 20px;border:1px solid var(--sp-line);border-radius:14px;background:#fff;margin:0 0 24px}
.imfimo-sp-message.is-success{background:#f3f8f3;border-color:#cfe3cf}
.imfimo-sp-message.is-error{background:#fff4f2;border-color:#efc8c1}
.imfimo-sp-form{display:grid;gap:22px}
.imfimo-sp-form fieldset{border:1px solid var(--sp-line);border-radius:20px;padding:24px;background:#fff;margin:0}
.imfimo-sp-form legend{font-size:1.16rem;font-weight:800;padding:0 8px;color:var(--sp-ink)}
.imfimo-sp-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.imfimo-sp-span-2{grid-column:1/-1}
.imfimo-sp-field{display:grid;gap:7px;font-weight:700;font-size:.95rem}
.imfimo-sp-field input,.imfimo-sp-field select,.imfimo-sp-field textarea{
  width:100%;border:1px solid #d8d2ce;border-radius:12px;background:#fff;color:var(--sp-ink);
  padding:12px 13px;outline:none;transition:border-color .15s ease,box-shadow .15s ease;
}
.imfimo-sp-field textarea{resize:vertical;min-height:120px}
.imfimo-sp-field input:focus,.imfimo-sp-field select:focus,.imfimo-sp-field textarea:focus{
  border-color:var(--sp-red);box-shadow:0 0 0 3px rgba(129,38,33,.10)
}
.imfimo-sp-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.imfimo-sp-check,.imfimo-sp-consent{
  display:flex;align-items:flex-start;gap:10px;border:1px solid var(--sp-line);border-radius:12px;padding:12px 13px;background:#fff;
  font-weight:600;line-height:1.45
}
.imfimo-sp-check input,.imfimo-sp-consent input{margin-top:4px;accent-color:var(--sp-red)}
.imfimo-sp-consents{background:var(--sp-cream)!important}
.imfimo-sp-consent{margin-bottom:10px;background:#fff;font-weight:500}
.imfimo-sp-consent a{color:var(--sp-red)}
.imfimo-sp-small{color:var(--sp-muted);font-size:.9rem;margin:12px 0 0}
.imfimo-sp-submit{
  border:0;border-radius:999px;background:var(--sp-red);color:#fff;font-weight:800;padding:14px 22px;
  cursor:pointer;justify-self:start;transition:background .15s ease,transform .15s ease
}
.imfimo-sp-submit:hover{background:var(--sp-red-dark);transform:translateY(-1px)}
.imfimo-sp-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:720px){
  .imfimo-sp-grid,.imfimo-sp-check-grid{grid-template-columns:1fr}
  .imfimo-sp-span-2{grid-column:auto}
  .imfimo-sp-form fieldset{padding:19px}
  .imfimo-sp-submit{width:100%}
}

.imfimo-sp-error-list{margin:10px 0 0;padding-left:1.25rem}
.imfimo-sp-error-list li{margin:5px 0}
