/* nikiapart.com — Super5 Forms inside the home form card, skinned to the mockup (.form / .field in site-b.css).
   The plugin renders fields, consent and submit; layout by field key on the same 6-column grid as the mockup. */
.form-card .s5f-form {
  --s5f-navy: var(--ink); --s5f-ink: var(--ink); --s5f-muted: var(--muted); --s5f-line: #D5CDC1;
  --s5f-placeholder: #8A8F99; --s5f-cta: var(--dark); --s5f-cta-hover: #343944; --s5f-accent: var(--gold);
  font-family: var(--ff); margin: 0; padding: 0; max-width: none; background: none; box-shadow: none; border: 0;
}
.form-card .s5f-fields { display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; }
.form-card .s5f-field { display: flex; flex-direction: column; gap: 7px; margin: 0; }
.form-card .s5f-label { font-size: var(--fs-label); font-weight: 600; color: var(--ink); margin: 0; }
.form-card .s5f-req { color: var(--muted); }
.form-card .s5f-form .s5f-input {
  width: 100%; min-height: 52px; padding: 12px 16px; border: 1px solid #D5CDC1; border-radius: var(--radius-input);
  background: var(--bg); color: var(--ink); font: inherit; box-shadow: none;
}
.form-card .s5f-form .s5f-input--textarea { min-height: 120px; resize: vertical; }
.form-card .s5f-form .s5f-input::placeholder { color: #8A8F99; }
.form-card .s5f-form .s5f-input:focus { outline: 2px solid var(--gold); outline-offset: 0; border-color: var(--gold); box-shadow: none; }
.form-card .s5f-form .s5f-input--consent {
  width: 20px; height: 20px; min-width: 20px; min-height: 0; padding: 0; border: 1.5px solid #B9B0A3; border-radius: 4px; background-color: #FFFFFF;
}
.form-card .s5f-form .s5f-input--consent:checked {
  background: var(--dark) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center/12px no-repeat;
  border-color: var(--dark);
}
.form-card .s5f-form .s5f-input--consent:focus-visible { outline: 2px solid var(--gold); outline-offset: 2px; }
.form-card .s5f-consent { font-size: var(--fs-small); color: var(--muted); align-items: flex-start; gap: 10px; }
.form-card .s5f-submit-wrap { margin-top: 16px; }
.form-card .s5f-submit {
  width: 100%; min-height: 56px; padding: 0 28px; border-radius: var(--radius-btn); background: var(--dark); color: var(--on-dark);
  font: 600 1rem/1 var(--ff); box-shadow: none; transition: background-color .2s ease, transform .2s ease;
}
.form-card .s5f-submit:hover { background: #343944; transform: translateY(-1px); }
.form-card .s5f-success { border-radius: var(--radius-card); }
@media (min-width: 600px) {
  .form-card .s5f-fields { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .form-card .s5f-field { grid-column: span 6; }
  .form-card .s5f-field[data-key="name"], .form-card .s5f-field[data-key="phone"],
  .form-card .s5f-field[data-key="email"], .form-card .s5f-field[data-key="apartment"] { grid-column: span 3; }
  .form-card .s5f-field[data-key="checkin"], .form-card .s5f-field[data-key="nights"] { grid-column: span 3; }
}

/* Google Maps before consent: the map box shows one button that accepts the „Маркетинг“ cookies (WPConsent) */
.ap-map .map-consent {
  position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); z-index: 1;
  min-height: 44px; padding: 0 20px; border: 1px solid var(--line); border-radius: var(--radius-btn);
  background: var(--bg); color: var(--ink); font: 600 var(--fs-small)/1 var(--ff); cursor: pointer; white-space: nowrap;
}
.ap-map .map-consent:hover { background: var(--ink); border-color: var(--ink); color: #FFFFFF; }
.ap-map:has(iframe[src]) .map-consent { display: none; }
