/* AMK page — responsive tweaks */
.amk-hero { min-height: 640px; display: flex; flex-direction: column; justify-content: space-between; }
.amk-hero__bg { transition: background-image .25s ease-in-out; }
.amk-color-btn { transition: transform .15s, border-color .15s; }
.amk-color-btn:hover { transform: translateY(-2px) scale(1.06); }
.amk-color-btn.is-active { box-shadow: 0 0 0 2px rgba(212,162,58,.35); }
.amk-c-tab, .amk-p-tab { transition: background .2s, border-color .2s; }
.amk-gallery-scroll::-webkit-scrollbar { height: 8px; }
.amk-gallery-scroll::-webkit-scrollbar-track { background: rgba(255,255,255,.1); border-radius: 4px; }
.amk-gallery-scroll::-webkit-scrollbar-thumb { background: #D4A23A; border-radius: 4px; }

@media (max-width: 900px) {
    .amk-about > div > div,
    .amk-constructor .amk-c-panel,
    .amk-params .amk-p-panel,
    .amk-faq > div > div { grid-template-columns: 1fr !important; }
    .amk-hero { min-height: 0; }
    .amk-hero__badge { position: static !important; margin: 0 0 24px !important; max-width: none !important; text-align: center !important; }
    .amk-hero__inner { padding: 26px 16px 24px !important; }
    .amk-hero__text { max-width: none !important; }
    .amk-hero__colors-wrap { padding: 0 12px 24px !important; }
    .amk-color-btn { min-width: 54px !important; padding: 8px 10px !important; font-size: 12px !important; }
    .amk-gallery-item { flex: 0 0 260px !important; height: 180px !important; }
}
details[open] > summary > span:last-child { transform: rotate(45deg); display: inline-block; }

/* --- FAQ accordion: keep "+" on the same line as the question --- */
.amk-faq details.amk-faq-item > summary {
  cursor: pointer;
  outline: none;
  margin: 0 !important;
  padding: 0 !important;
  font-family: Inter, sans-serif;
  font-weight: 600;
  font-size: 16px;
  color: #1E3A5F;
  line-height: 1.4;
}
.amk-faq .amk-faq-q { line-height: 1.4; }
.amk-faq .amk-faq-a {
  font-size: 14px;
  line-height: 1.7;
  color: #3a4658;
  padding-top: 12px;
  border-top: 1px solid #f0ece2;
  margin-top: 12px;
}

/* --- Параметры: «label ......... value» — leader dots, values flush right --- */
.amk-spec { display: block; font-family: Inter, sans-serif; }
.amk-spec__row {
  display: flex;
  align-items: baseline;
  gap: 8px;
  padding: 8px 0;
  font-size: 15px;
  line-height: 1.45;
}
.amk-spec__label { color: #3a4658; white-space: nowrap; flex: 0 0 auto; }
.amk-spec__dots {
  flex: 1 1 auto;
  min-width: 16px;
  align-self: center;
  height: 3px;
  background-image: radial-gradient(circle, rgba(30,58,95,.42) 1px, transparent 1px);
  background-size: 5px 3px;
  background-repeat: repeat-x;
  background-position: 0 center;
}
.amk-spec__value { color: #1E3A5F; font-weight: 700; white-space: nowrap; flex: 0 0 auto; text-align: right; }

/* --- Video facade: hard 16:9, immune to theme overrides --- */
.amk-video {
  position: relative !important;
  width: 100% !important;
  aspect-ratio: 16 / 9 !important;
  height: auto !important;
  min-height: 190px;
  display: block !important;
}
.amk-video iframe { position: absolute !important; inset: 0 !important; width: 100% !important; height: 100% !important; border: 0 !important; }
/* Fallback for browsers without aspect-ratio support */
@supports not (aspect-ratio: 16 / 9) {
  .amk-video { height: 0 !important; padding-bottom: 56.25% !important; min-height: 0; }
}
@media (max-width: 768px) {
  .amk-video { min-height: 200px; }
  .amk-video__play { width: 62px !important; height: 62px !important; }
  /* Specs: wrap long labels instead of overflowing */
  .amk-spec__row { flex-wrap: wrap; font-size: 14px; }
  .amk-spec__label { white-space: normal; }
  .amk-spec__dots { display: none; }
  .amk-spec__value { margin-left: auto; }
  .amk-faq details.amk-faq-item > summary { font-size: 15px; gap: 12px !important; }
}
