* {
    box-sizing: border-box;
}
main {
    justify-content: flex-start;
}

/* Block: contacts */
.contacts {
  box-sizing: border-box;
  padding: 0;
}

/* Element: preview */
.contacts__preview {
    width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 24px;
}
/* Hero */
.hero {
  background: var(--accent-light);
  border-radius: var(--radius-md);
  padding: var(--spacing-md);
  box-shadow: var(--shadow-sm);
  display: flex;
  align-items: center;
  gap: 1rem;
  width: 100%;
}
.hero-text {
    width: 100%;
    text-align: center;
}

.hero-text h2 {
  margin: 0;
  font-family: var(--font-roboto);
  font-size: var(--font-size-2xl);
  color: var(--brown-dark);
}
.hero-sub {
  margin: 4px 0 0 0;
  color: var(--brown-very-light);
}

/* Card block for QR */
.contacts__card {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 24px;
  width: 100%;
  box-sizing: border-box;
  border-radius: var(--radius-md, 8px);
  box-shadow: var(--shadow-md, 0 2px 8px rgba(0,0,0,0.08));
  background: var(--accent-light, #fff);
}

/* QR element inside card */
.contacts__qr {
  width: 60%;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 24px;
  justify-content: center;
}

/* Image inside QR element */
.contacts__img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: var(--radius-sm, 8px);
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .contacts__preview {
    padding: 16px;
  }

  .contacts__title {
    font-size: 1.75rem;
  }

  .contacts__subtitle {
    font-size: 1.05rem;
  }

  .contacts__qr {
    width: 80%;
  }
}

@media (max-width: 512px) {
  .contacts__qr {
    width: 100%;
  }

  .contacts__card {
    padding: 16px;
  }
}
.spText__donate {
  display: inline-block;
  background-color: var(--brown-medium);
  color: var(--accent-light);
  font-family: var(--font-roboto);
  font-weight: 300;
  font-size: 1.3rem;
  letter-spacing: 0.1rem;
  padding: 16px 64px;
  border-radius: 8px;
  text-decoration: none;
  box-shadow: 0 6px 20px rgba(var(--shadow-lg, 61, 133, 198), 0.6);
  text-align: center;
}
.spText__donate:hover,
.spText__donate:active {
  background-color: var(--brown-light);
  box-shadow: var(--shadow-lg);
}
.text {
  font-size: 1.2rem;
  max-width: 100%;
  text-align: center;
  margin: 0;
}
@media (min-width:1000px) {
  .spText__donate {
    display: none;
  }
  .text {
    display: none;
  }
}
@media (max-width:1000px) {
  .contacts__img {
    display: none;
  }
}