.contact-wrap { padding: 28px 16px 60px; }
.contact-grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: 40px; align-items: start; margin-top: 36px; }
@media (max-width: 860px) { .contact-grid { grid-template-columns: 1fr; gap: 24px; } }
.eyebrow { display: inline-block; font-size: .74rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: #2b1cf5; }
.contact-intro h1 { font-size: clamp(2.1rem, 4.6vw, 3.4rem); margin: 8px 0 14px; }
.perks { list-style: none; padding: 0; margin: 26px 0 0; display: grid; gap: 14px; }
.perks li { display: flex; flex-direction: column; padding: 14px 16px; border-radius: 14px; background: var(--surface); border: 1px solid var(--line); animation: up .5s cubic-bezier(.2,.8,.2,1) both; }
.perks li:nth-child(2) { animation-delay: .08s; } .perks li:nth-child(3) { animation-delay: .16s; }
.perks b { font-size: 1rem; } .perks span { color: var(--muted); font-size: .92rem; }
@keyframes up { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: none; } }
.contact-card { padding: 26px; animation: up .5s cubic-bezier(.2,.8,.2,1) both; }
.hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.sent { text-align: center; padding: 30px 10px; animation: up .4s both; }
.tick { width: 64px; height: 64px; margin: 0 auto 14px; border-radius: 50%; display: grid; place-items: center; font-size: 2rem; color: #fff; background: var(--live); animation: pop .5s cubic-bezier(.2,.8,.2,1); }
@keyframes pop { 0% { transform: scale(.3); } 70% { transform: scale(1.12); } 100% { transform: scale(1); } }
