.kapcsolat-main{overflow:hidden}

.kapcsolat-hero-inner{max-width:600px;margin-inline:auto;text-align:center;display:flex;flex-direction:column;gap:var(--space-4)}
.kapcsolat-hero-cta{display:flex;gap:var(--space-3);justify-content:center;flex-wrap:wrap}

.kapcsolat-info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-5)}
.kapcsolat-card{background:var(--color-surface-elevated);border:1px solid var(--color-border-subtle);padding:var(--space-5);border-radius:var(--radius-sm);min-width:0}

.kapcsolat-form-grid{display:grid;grid-template-columns:0.3fr 0.7fr;gap:var(--space-6);align-items:start}
.kapcsolat-form-intro{max-width:420px}
.kapcsolat-form-card{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4);padding:var(--space-5);background:#fff;border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm)}
.kapcsolat-full{grid-column:span 2}
.kapcsolat-submit{grid-column:span 2}
.kapcsolat-consent{grid-column:span 2;font-size:var(--fs-xs);color:var(--color-text-secondary)}

.kapcsolat-map-wrap iframe{width:100%;height:320px;border:0;border-radius:var(--radius-lg)}
.kapcsolat-map-text{max-width:800px;margin-inline:auto;margin-top:var(--space-4);text-align:center}

.kapcsolat-hours-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-6)}
.kapcsolat-note{grid-column:span 2;background:var(--color-surface-secondary);padding:var(--space-4);border-left:2px solid var(--color-accent-gold)}

.kapcsolat-access-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-6)}

.kapcsolat-faq-wrap{max-width:800px;margin-inline:auto}
.faq-item{border-bottom:1px solid var(--color-border-subtle)}
.faq-question{width:100%;text-align:left;padding:var(--space-4);font-family:var(--font-heading)}
.faq-answer{display:none;padding:0 var(--space-4) var(--space-4)}

.kapcsolat-cta-inner{max-width:600px;margin-inline:auto;text-align:center;display:flex;flex-direction:column;gap:var(--space-4)}
.kapcsolat-cta-buttons{display:flex;gap:var(--space-3);justify-content:center;flex-wrap:wrap}

@media(max-width:1000px){
.kapcsolat-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:900px){
.kapcsolat-form-grid{grid-template-columns:1fr}
.kapcsolat-hours-grid{grid-template-columns:1fr}
.kapcsolat-note{grid-column:span 1}
.kapcsolat-access-grid{grid-template-columns:1fr}
}

@media(max-width:640px){
.kapcsolat-info-grid{grid-template-columns:1fr}
.kapcsolat-form-card{grid-template-columns:1fr}
.kapcsolat-full,.kapcsolat-submit,.kapcsolat-consent{grid-column:span 1}
}
