.contact-page .contact-hero-inner{
max-width:600px;
margin-inline:auto;
text-align:center;
display:flex;
flex-direction:column;
gap:var(--space-2);
}

.contact-form-wrapper{
max-width:800px;
margin-inline:auto;
display:flex;
flex-direction:column;
gap:var(--space-3);
border:var(--border-accent);
}

.form-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:var(--space-3);
}

.form-field{
display:flex;
flex-direction:column;
gap:var(--space-1);
}

.form-field.full{
grid-column:1 / -1;
}

.form-field input,
.form-field textarea{
padding:0.7em;
background:var(--color-bg-primary);
border:1px solid var(--color-divider);
color:var(--color-text-primary);
}

.error{
color:#ff4d4d;
font-size:var(--fs-xs);
min-height:1em;
}

.form-success{
color:var(--color-accent);
}

.contact-grid > *{
grid-column:span 4;
}

.contact-grid{
align-items:stretch;
}

.contact-email{
color:var(--color-accent);
}

.why-grid > *{
grid-column:span 4;
}

.newsletter-box{
max-width:500px;
margin-inline:auto;
display:flex;
flex-direction:column;
gap:var(--space-2);
text-align:center;
border:var(--border-accent);
}

.newsletter-form{
display:flex;
gap:var(--space-2);
}

.newsletter-form input{
flex:1;
padding:0.7em;
background:var(--color-bg-primary);
border:1px solid var(--color-divider);
}

.faq-wrapper{
max-width:600px;
margin-inline:auto;
display:flex;
flex-direction:column;
gap:var(--space-2);
}

.faq-item{
border-bottom:1px solid var(--color-divider);
padding-bottom:var(--space-2);
}

.faq-question{
width:100%;
text-align:left;
font-family:var(--font-heading);
font-style:italic;
}

.faq-answer{
display:none;
margin-top:var(--space-1);
}

.faq-item.active .faq-answer{
display:block;
}

.contact-cta-inner{
max-width:500px;
margin-inline:auto;
text-align:center;
display:flex;
flex-direction:column;
gap:var(--space-2);
}

@media(max-width:700px){
.form-grid{
grid-template-columns:1fr;
}
.contact-grid > *,
.why-grid > *{
grid-column:span 12;
}
.newsletter-form{
flex-direction:column;
}
}