/* ─── CONTACT PAGE STYLES ─── */

/* Hero layout: two-column grid */
.page-hero {
    padding: 160px 5% 100px; max-width: 1280px; margin: 0 auto;
    display: grid; grid-template-columns: 1fr 1.4fr; gap: 80px; align-items: start;
}
@media(max-width: 900px) { .page-hero { grid-template-columns: 1fr; gap: 50px; padding: 140px 5% 60px; } }

.hero-left h1 {
    font-size: clamp(2.5rem, 5vw, 4rem); font-weight: 800;
    line-height: 1.05; letter-spacing: -0.04em; margin-bottom: 20px;
}
.hero-left p {
    color: var(--text-muted); font-size: 1.1rem; line-height: 1.7; margin-bottom: 35px;
    border-left: 2px solid var(--accent); padding-left: 20px;
}

/* Contact info box */
.contact-info {
    display: flex; flex-direction: column; gap: 16px; margin-top: 40px; padding: 30px;
    background: var(--bg-surface); border: 1px solid var(--border); border-radius: 16px;
}
.contact-item { display: flex; align-items: center; gap: 14px; font-size: 0.95rem; color: var(--text-muted); }
.contact-item a { color: var(--accent-light); transition: 0.3s; }
.contact-item a:hover { color: #fff; }

/* "Other" input reveal */
.other-input { display: none; margin-top: 10px; }
.other-input.show { display: block; }

/* ─── MOBILE ─── */
@media(max-width: 768px) {
    .page-hero { padding: 100px 5% 50px; }
    .hero-left h1 { font-size: clamp(2.2rem, 8vw, 3.5rem); }
    .contact-info { padding: 20px; }
    .contact-item { font-size: 0.88rem; }
}
