/* ===== Навигация: якоря не прячутся под фиксированным меню (логотип 5rem ≈ 80px) ===== */
html {
  scroll-behavior: smooth;
}

section {
  scroll-margin-top: 80px;
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  .features1 .card,
  .features1 .card:hover {
    transition: none;
    transform: none;
  }
}

/* ===== Карточки услуг (#features1-5): обратная связь при наведении ===== */
.features1 .card {
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.features1 .card:hover {
  transform: translateY(-4px);
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.12);
}

/* ===== Фокус WCAG AA: тёмный бирюзовый контур ≥ 3:1 к белому фону ===== */
input.form-control:focus,
textarea.form-control:focus,
button:focus,
.btn:focus {
  outline: 3px solid #14685c;
  outline-offset: 2px;
  border-color: #14685c;
  box-shadow: none;
}

input.form-control,
textarea.form-control,
button.btn,
.btn {
  min-height: 48px;
  transition: all 0.2s ease;
}

/* Телефон — основной канал связи в форме заявки (#form4-d) */
#phone-form4-d {
  border-width: 2px;
  font-weight: 500;
}

#phone-form4-d:hover,
#phone-form4-d:focus {
  border-color: #14685c;
}

/* Спиннер на кнопке отправки (класс задаёт custom.js, не тема Mobirise) */
@keyframes kyocera-spin {
  to {
    transform: rotate(360deg);
  }
}

.kyocera-btn-loading {
  pointer-events: none;
  opacity: 0.85;
}

.kyocera-btn-loading::after {
  content: "";
  display: inline-block;
  width: 1em;
  height: 1em;
  margin-left: 0.5em;
  border: 2px solid currentColor;
  border-right-color: transparent;
  border-radius: 50%;
  vertical-align: middle;
  animation: kyocera-spin 0.6s linear infinite;
}

.kyocera-hp {
  position: absolute;
  left: -10000px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

[data-form-error] {
  color: #8b1e1e;
  margin-bottom: 0.75rem;
}

[data-form-alert] {
  margin-bottom: 0.75rem;
}

#footer4-8 [data-form-error] {
  color: #ffd6d6;
}

#footer4-8 [data-form-alert] {
  color: #c6f5e8;
}

/* Футер: поле и кнопка одной ширины, в колонку */
#footer4-8 .form-inline {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  width: 100%;
}

#footer4-8 .form-inline .form-group,
#footer4-8 .form-inline .input-group-btn {
  display: block;
  width: 100%;
  margin: 0 0 0.5rem 0 !important;
}

#footer4-8 #email-footer4-8,
#footer4-8 .form-inline .btn[type="submit"] {
  display: block;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
  margin-left: 0 !important;
  margin-right: 0 !important;
  font-size: 1.5rem;
  min-height: 96px;
  height: 96px;
  padding: 0.75rem 1.25rem !important;
}
