
.contacts[data-v-8ce67723] {
  background: var(--color-beige-light);
}
.contacts--dark[data-v-8ce67723] {
  background: var(--color-dark) !important;
}
.contacts--dark .section-title[data-v-8ce67723],
.contacts--dark .section-subtitle[data-v-8ce67723],
.contacts--dark h2[data-v-8ce67723],
.contacts--dark h3[data-v-8ce67723],
.contacts--dark h4[data-v-8ce67723],
.contacts--dark p[data-v-8ce67723],
.contacts--dark span[data-v-8ce67723] {
  color: var(--color-white) !important;
}
.contacts--dark .contact-card[data-v-8ce67723] {
  background: var(--color-darker);
  border-color: transparent;
}
.contacts--dark .contact-details h4[data-v-8ce67723],
.contacts--dark .contact-details p[data-v-8ce67723],
.contacts--dark .contact-details a[data-v-8ce67723] {
  color: var(--color-white) !important;
}
.contacts--dark .social-link[data-v-8ce67723] {
  background: var(--color-darker);
  border-color: var(--color-darker);
}
.contacts--dark .booking-form[data-v-8ce67723] {
  background: var(--color-darker);
}
.contacts--dark .booking-form h3[data-v-8ce67723],
.contacts--dark .booking-form > p[data-v-8ce67723] {
  color: var(--color-white) !important;
}
.contacts--dark .form-group label[data-v-8ce67723] {
  color: var(--color-text-light-secondary);
}
.contacts--dark .form-group input[data-v-8ce67723],
.contacts--dark .form-group select[data-v-8ce67723],
.contacts--dark .form-group textarea[data-v-8ce67723] {
  background: var(--color-dark);
  border-color: var(--color-gray-dark);
  color: var(--color-white);
}
.contacts--dark .map-container[data-v-8ce67723] {
  background: var(--color-darker);
  border-color: var(--color-darker);
}
.contacts--dark .map-placeholder p[data-v-8ce67723] {
  color: var(--color-white);
}

/* Единые стили для светлой секции контактов */
.section-title[data-v-8ce67723] {
  color: var(--color-text-dark);
}
.section-subtitle[data-v-8ce67723] {
  color: var(--color-text-medium);
}
.contacts-grid[data-v-8ce67723] {
  display: grid;
  grid-template-columns: 1fr 1.2fr;
  gap: 60px;
  margin-bottom: 60px;
}
.contacts-info[data-v-8ce67723] {
  display: flex;
  flex-direction: column;
  gap: 25px;
}
.contact-card[data-v-8ce67723] {
  display: flex;
  gap: 20px;
  background: var(--color-white);
  padding: 25px;
  border-radius: var(--radius);
  border: 1px solid #E8E2DA;
  transition: all 0.3s ease;
}
.contact-card[data-v-8ce67723]:hover {
  transform: translateY(-4px);
  border-color: var(--color-gold);
  box-shadow: 0 15px 35px rgba(196, 148, 72, 0.15);
}
.contact-icon[data-v-8ce67723] {
  width: 50px;
  height: 50px;
  background: rgba(196, 148, 72, 0.1);
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.contact-icon svg[data-v-8ce67723] {
  color: var(--color-gold);
}
.contact-details h4[data-v-8ce67723] {
  font-size: 14px;
  font-weight: 600;
  color: var(--color-text-dark);
  margin-bottom: 8px;
}
.contact-details p[data-v-8ce67723],
.contact-details a[data-v-8ce67723] {
  font-size: 14px;
  color: var(--color-text-medium);
  text-decoration: none;
  transition: color 0.3s ease;
}
.contact-details a[data-v-8ce67723]:hover {
  color: var(--color-gold);
}
.social-links[data-v-8ce67723] {
  display: flex;
  gap: 15px;
  margin-top: 20px;
}
.social-link[data-v-8ce67723] {
  width: 48px;
  height: 48px;
  background: var(--color-white);
  border: 1px solid #E8E2DA;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-text-dark);
  transition: all 0.3s ease;
}
.social-link[data-v-8ce67723]:hover {
  background: var(--color-gold);
  border-color: var(--color-gold);
  color: var(--color-white);
  transform: translateY(-3px);
  box-shadow: 0 8px 20px rgba(196, 148, 72, 0.25);
}
.booking-form[data-v-8ce67723] {
  background: var(--color-white);
  padding: 40px;
  border-radius: var(--radius);
  border: 1px solid #E8E2DA;
  transition: all 0.3s ease;
}
.booking-form[data-v-8ce67723]:hover {
  box-shadow: 0 15px 35px rgba(196, 148, 72, 0.15);
  border-color: var(--color-gold);
}
.booking-form h3[data-v-8ce67723] {
  font-size: 24px;
  color: var(--color-text-dark);
  margin-bottom: 10px;
}
.booking-form > p[data-v-8ce67723] {
  font-size: 14px;
  color: var(--color-text-medium);
  margin-bottom: 30px;
}
.form-group[data-v-8ce67723] {
  margin-bottom: 20px;
}
.form-row[data-v-8ce67723] {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}
.form-group label[data-v-8ce67723] {
  display: block;
  font-size: 13px;
  font-weight: 500;
  color: var(--color-text-medium);
  margin-bottom: 8px;
}
.form-group input[data-v-8ce67723],
.form-group select[data-v-8ce67723],
.form-group textarea[data-v-8ce67723] {
  width: 100%;
  padding: 14px 18px;
  background: var(--color-beige-light);
  border: 1px solid #E8E2DA;
  border-radius: 12px;
  color: var(--color-text-dark);
  font-size: 14px;
  font-family: var(--font-body);
  transition: all 0.3s ease;
}
.form-group input[data-v-8ce67723]::-moz-placeholder, .form-group textarea[data-v-8ce67723]::-moz-placeholder {
  color: var(--color-gray);
}
.form-group input[data-v-8ce67723]::placeholder,
.form-group textarea[data-v-8ce67723]::placeholder {
  color: var(--color-gray);
}
.form-group input[data-v-8ce67723]:focus,
.form-group select[data-v-8ce67723]:focus,
.form-group textarea[data-v-8ce67723]:focus {
  outline: none;
  border-color: var(--color-gold);
  background: var(--color-white);
  box-shadow: 0 0 0 3px rgba(196, 148, 72, 0.1);
}
.form-group select[data-v-8ce67723] {
  cursor: pointer;
}
.submit-btn[data-v-8ce67723] {
  width: 100%;
  gap: 10px;
  background: var(--color-text-dark);
  color: var(--color-white);
}
.submit-btn[data-v-8ce67723]:hover {
  background: var(--color-gold);
  transform: translateY(-2px);
  box-shadow: 0 10px 30px rgba(196, 148, 72, 0.3);
}
.map-container[data-v-8ce67723] {
  border-radius: var(--radius);
  overflow: hidden;
  background: var(--color-white);
  border: 1px solid #E8E2DA;
}
.map-container iframe[data-v-8ce67723] {
  display: block;
  border-radius: var(--radius);
}
.map-placeholder[data-v-8ce67723] {
  height: 300px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 20px;
}
.map-placeholder svg[data-v-8ce67723] {
  color: var(--color-gold);
}
.map-placeholder p[data-v-8ce67723] {
  font-size: 16px;
  color: var(--color-text-medium);
}
@media (max-width: 1024px) {
.contacts-grid[data-v-8ce67723] {
    grid-template-columns: 1fr;
    gap: 40px;
}
}
@media (max-width: 768px) {
.form-row[data-v-8ce67723] {
    grid-template-columns: 1fr;
}
.booking-form[data-v-8ce67723] {
    padding: 30px;
}
}
