.kontakt-page { overflow-x:hidden; }

.kontakt-hero { display:flex; justify-content:center; }
.kontakt-hero__inner { max-width:720px; text-align:center; display:flex; flex-direction:column; gap:var(--space-4); margin-inline:auto; }
.kontakt-hero__inner p { max-width:520px; margin-inline:auto; }

.kontakt-values__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--space-5); margin-top:var(--space-5); }
.kontakt-card { transition:transform var(--transition-smooth); }
.kontakt-card:hover { transform:translateY(-6px); }

.kontakt-process__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--space-5); margin-top:var(--space-5); }
.kontakt-step { min-width:0; display:flex; flex-direction:column; gap:var(--space-3); }

.kontakt-form-section { display:flex; justify-content:center; }
.kontakt-form-wrapper { max-width:800px; width:100%; background:var(--color-bg-soft); color:var(--color-text-on-light); padding:var(--space-6); border-radius:var(--radius-lg); display:flex; flex-direction:column; gap:var(--space-5); }
.kontakt-form-intro { max-width:560px; }

.kontakt-form { display:flex; flex-direction:column; gap:var(--space-4); }
.kontakt-form__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--space-4); }
.kontakt-field { min-width:0; display:flex; flex-direction:column; gap:var(--space-2); }
.kontakt-field--full { grid-column:1 / -1; }
.kontakt-form__feedback { font-size:var(--fs-7); }

.kontakt-alt__inner { max-width:720px; margin-inline:auto; text-align:center; }
.kontakt-alt__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--space-5); margin-top:var(--space-5); }
.kontakt-alt__grid > div { display:flex; flex-direction:column; gap:var(--space-3); }

.kontakt-faq__container { max-width:720px; }
.kontakt-faq__list { display:flex; flex-direction:column; gap:var(--space-3); }
.faq-item { border-bottom:1px solid var(--color-border-subtle); }
.faq-question { width:100%; text-align:left; padding:var(--space-3) 0; font-size:var(--fs-5); }
.faq-answer { display:none; padding-bottom:var(--space-3); }
.faq-item.active .faq-answer { display:block; }

@media (max-width: 900px) {
  .kontakt-values__grid, .kontakt-process__grid { grid-template-columns:1fr; }
  .kontakt-form__grid { grid-template-columns:1fr; }
  .kontakt-alt__grid { grid-template-columns:1fr; }
}
