/**
 * KALIPSO — страница «Услуги»
 * Премиальный стиль, золотой акцент точечно
 */

/* ========== Секции ========== */
.services-section__title {
  margin: 0 0 var(--s-2);
  padding-bottom: var(--s-2);
  font-size: var(--fs-h2);
  font-weight: 700;
  line-height: 1.25;
  color: var(--text);
  border-bottom: 3px solid var(--gold-accent);
  display: inline-block;
}
.services-section__sub {
  margin: 0 0 var(--s-6);
  font-size: var(--fs-body);
  line-height: var(--lh-loose);
  color: var(--muted);
  max-width: 600px;
}

/* ========== 1. Hero ========== */
.services-hero {
  padding-block: 80px;
  background: var(--bg);
}
@media (max-width: 768px) {
  .services-hero { padding-block: 56px; }
}
.services-hero__breadcrumbs {
  margin-bottom: var(--s-6);
  font-size: 15px;
  line-height: var(--lh-body);
  color: var(--muted);
}
.services-hero__breadcrumbs a {
  color: var(--brand-blue);
  text-decoration: none;
}
.services-hero__breadcrumbs a:hover {
  text-decoration: none;
  color: var(--brand-blue-700);
}
.services-hero__sep { margin: 0 var(--s-2); color: var(--border); }
.services-hero__title {
  margin: 0 0 var(--s-4);
  font-size: var(--fs-h1);
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: -0.02em;
  color: var(--text);
}
.services-hero__lead {
  margin: 0 0 var(--s-6);
  font-size: var(--fs-body);
  line-height: var(--lh-loose);
  color: var(--muted);
  max-width: 560px;
}
.services-hero__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--s-3);
}
.services-hero__actions .btn-outline:hover {
  border-color: var(--gold-accent);
  box-shadow: 0 0 0 1px rgba(201, 162, 39, 0.2);
}
.services-hero__hint {
  width: 100%;
  margin: var(--s-2) 0 0;
  font-size: 0.8125rem;
  color: var(--muted);
}

/* ========== 2. Включено в «под ключ» ========== */
.services-included {
  padding-block: 80px;
  background: var(--surface);
  border-top: 1px solid var(--border);
}
@media (max-width: 768px) {
  .services-included { padding-block: 56px; }
}
.included-list {
  margin: 0 0 var(--s-4);
  padding: 0;
  list-style: none;
}
.included-item {
  display: flex;
  align-items: flex-start;
  gap: var(--s-4);
  margin-bottom: var(--s-5);
}
.included-item:last-child { margin-bottom: 0; }
.included-item__icon {
  flex-shrink: 0;
  width: 20px;
  height: 20px;
  margin-top: 4px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C9A227' stroke-opacity='0.55' stroke-width='2'%3E%3Cpath d='M9 12l2 2 4-4'/%3E%3Cpath d='M21 12a9 9 0 11-18 0 9 9 0 0118 0z'/%3E%3C/svg%3E") center/contain no-repeat;
}
.included-item__title {
  margin: 0 0 var(--s-1);
  font-size: 1rem;
  font-weight: 700;
  color: var(--text);
}
.included-item__text {
  margin: 0;
  font-size: 0.9375rem;
  line-height: 1.6;
  color: var(--muted);
}
.services-included__note {
  margin: var(--s-5) 0 0;
  font-size: 0.8125rem;
  color: var(--muted);
  line-height: 1.5;
}

/* ========== 3. Дополнительные услуги (Markopolis style) ========== */
.services-prices {
  padding-block: 80px;
  background: var(--bg);
  border-top: 1px solid var(--border);
}
@media (max-width: 768px) {
  .services-prices { padding-block: 56px; }
}
.price-list {
  margin: 0 0 var(--s-4);
}
.services-prices__disclaimer {
  margin: 0 0 var(--s-5);
  font-size: 0.8125rem;
  color: var(--muted);
  line-height: 1.5;
}
.price-list__row {
  display: flex;
  align-items: baseline;
  gap: var(--s-3);
  padding: var(--s-3) 0;
  border-bottom: 1px solid var(--border);
}
.price-list__row:last-of-type { border-bottom: none; }
.price-list__name {
  flex: 1;
  min-width: 0;
  font-size: 1rem;
  color: var(--text);
}
.price-list__dash {
  flex-shrink: 0;
  flex: 0 1 40px;
  min-width: 16px;
  height: 0;
  border-bottom: 1px dotted var(--border);
  margin: 0 var(--s-2);
}
.price-list__price {
  flex-shrink: 0;
  font-size: 1rem;
  color: var(--text);
  font-variant-numeric: tabular-nums;
}
.price-list__value {
  font-weight: 700;
  color: var(--gold-accent);
}
.price-list__currency {
  font-weight: 600;
  color: var(--gold-accent);
  margin-left: 2px;
}
.services-prices__cta {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--s-2);
}
.services-prices__cta-hint {
  margin: 0;
  font-size: 0.8125rem;
  color: var(--muted);
}

@media (max-width: 768px) {
  .price-list__row {
    flex-wrap: wrap;
    gap: var(--s-2);
  }
  .price-list__name { width: 100%; }
  .price-list__dash { display: none; }
  .price-list__price { margin-left: 0; }
}

/* ========== 4. FAQ (спокойный, премиальный) ========== */
.services-faq {
  padding-block: 48px;
  background: var(--surface);
  border-top: 1px solid var(--border);
}
@media (max-width: 768px) {
  .services-faq { padding-block: 40px; }
}
.faq-list {
  margin: 0;
  padding: 0;
  list-style: none;
  max-width: 720px;
}
.faq-item {
  border-bottom: 1px solid var(--border);
}
.faq-item__trigger {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--s-3);
  width: 100%;
  padding: var(--s-4) 0;
  font-family: inherit;
  font-size: 1rem;
  font-weight: 600;
  color: var(--text);
  text-align: left;
  background: none;
  border: none;
  cursor: pointer;
  transition: color var(--transition);
}
.faq-item__trigger:hover { color: var(--brand-blue); }
.faq-item__trigger:focus-visible {
  outline: none;
  box-shadow: var(--focus-ring);
}
.faq-item.is-open .faq-item__trigger { color: var(--brand-blue); }
.faq-item__icon {
  flex-shrink: 0;
  width: 20px;
  height: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1;
  color: var(--muted);
  transition: transform 180ms ease, color var(--transition);
}
.faq-item.is-open .faq-item__icon {
  transform: rotate(45deg);
  color: var(--gold-accent);
}
.faq-item__content {
  max-height: 0;
  overflow: hidden;
  transition: max-height 180ms ease;
}
.faq-item__inner {
  padding: 0 0 var(--s-4);
  font-size: 0.9375rem;
  line-height: 1.6;
  color: var(--muted);
}
