.fem {
  --bg: #002543;
  --accent: #eb3478;
  --text: #fff;
  max-width: 1080px;
  margin: auto;
  padding: 34px;
  border-radius: 12px;
  background: var(--bg);
  color: var(--text);
}
.fem * { box-sizing: border-box; }
.fem__header { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:18px; }
.fem__header h2,.fem h3,.fem h4 { margin:0; color:#fff; }
.fem__counter { font-weight:700; color:#fff; white-space:nowrap; }
.fem__progress { display:grid; grid-template-columns:repeat(6,1fr); gap:7px; margin-bottom:32px; }
.fem__progress span { height:5px; border-radius:5px; background:rgb(255 255 255 / 22%); }
.fem__progress span.is-active { background:var(--accent); }
.fem__step { display:none; }
.fem__step.is-active { display:grid; gap:24px; animation:fem-in .25s ease; }
.fem__grid,.fem__socials { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px 32px; }
.fem label,.fem legend { display:block; color:#fff; font-size:13px; text-transform:uppercase; }
.fem input,.fem select,.fem textarea {
  width:100%; margin-top:7px; padding:14px; border:1px solid transparent;
  border-radius:6px; background:#fff; color:#202020; font:inherit;
}
.fem input:focus,.fem select:focus,.fem textarea:focus { border-color:var(--accent); outline:3px solid rgb(235 52 120 / 20%); }
.fem textarea { min-height:130px; resize:vertical; }
.fem fieldset { margin:0; padding:0; border:0; }
.fem__choice,.fem__switch { display:inline-flex!important; align-items:center; gap:9px; margin:9px 20px 0 0; text-transform:none!important; }
.fem__choice input,.fem__switch input { width:auto; margin:0; flex:0 0 auto; }
.fem__switch a { color:#fff; text-decoration:underline; }
.fem__phone { display:grid; grid-template-columns:minmax(205px,42%) 1fr; }
.fem__phone select { border-radius:6px 0 0 6px; }
.fem__phone input { border-radius:0 6px 6px 0; }
.fem__check-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px 24px; }
.fem__check-grid .fem__choice { padding:12px; border:1px solid rgb(255 255 255 / 22%); border-radius:6px; }
.fem__search { max-width:420px; }
.fem__models { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.fem__models article,.fem__pack { padding:22px; border:1px solid rgb(255 255 255 / 22%); border-radius:8px; background:rgb(255 255 255 / 6%); }
.fem__models p,.fem__pack p { margin-bottom:0; }
.fem__models strong { display:block; margin-top:14px; color:#ff7ead; }
.fem__actions { display:flex; justify-content:space-between; gap:16px; margin-top:8px; }
.fem__actions--end { justify-content:flex-end; }
.fem button { min-width:150px; padding:14px 28px; border:0; border-radius:7px; background:var(--accent); color:#fff; font-weight:700; cursor:pointer; }
.fem button:hover { filter:brightness(.92); }
.fem button.fem__secondary { border:1px solid #fff; background:transparent; }
.fem__notice { margin-bottom:24px; padding:16px; border-radius:8px; }
.fem__notice--success { background:#dff7e8; color:#135c2d; }
.fem__notice--error { background:#ffe0e0; color:#8b1717; }
.fem__honeypot { position:absolute; left:-9999px; }
.fem [hidden] { display:none!important; }
@keyframes fem-in { from { opacity:0; transform:translateX(10px); } to { opacity:1; transform:none; } }
@media(max-width:700px) {
  .fem { padding:22px 18px; }
  .fem__grid,.fem__socials,.fem__check-grid,.fem__models { grid-template-columns:1fr; }
  .fem__phone { grid-template-columns:135px 1fr; }
  .fem__header h2 { font-size:21px; }
  .fem__actions button { min-width:0; flex:1; padding:13px; }
}
