.contact{position:relative}.contact-card{background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);overflow:hidden;display:grid;grid-template-columns:.85fr 1.15fr}.contact-side{background:var(--grad);color:#fff;padding:54px 46px}.contact-side h2{font-size:2.2rem;margin-bottom:16px}.contact-side p{opacity:.9;margin-bottom:36px}.contact-info{list-style:none;display:flex;flex-direction:column;gap:22px}.contact-info li{display:flex;align-items:center;gap:15px;font-weight:600}.contact-info .ci-ico{width:44px;height:44px;border-radius:8px;background:rgba(255,255,255,.16);display:grid;place-items:center;flex-shrink:0}.contact-info .ci-ico svg{width:21px;height:21px}.contact-info small{display:block;font-weight:500;opacity:.8;font-size:.8rem}.contact-form{padding:54px 46px}.field{margin-bottom:20px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-form label{display:block;font-weight:700;font-size:.9rem;margin-bottom:8px}.contact-form input,.contact-form select,.contact-form textarea{width:100%;font-family:inherit;font-size:1rem;padding:14px 16px;border:1.5px solid var(--line);border-radius:var(--radius-sm);background:#fcfcff;color:var(--ink);transition:border-color .2s ease,box-shadow .2s ease}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#a3a8bd}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 4px rgba(47,107,255,.14)}.contact-form textarea{resize:vertical;min-height:130px}.contact-submit{width:100%}.form-note{margin-top:16px;font-size:.85rem;color:var(--muted)}.form-success{display:none;margin-top:16px;padding:14px 18px;border-radius:var(--radius-sm);background:var(--grad-soft);color:var(--indigo);font-weight:700;font-size:.95rem}.form-success.show{display:block}@media (max-width:980px){.contact-card{grid-template-columns:1fr}}@media (max-width:560px){.contact-form,.contact-side{padding:36px 26px}.field-row{grid-template-columns:1fr}}.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s ease}.reveal.in{opacity:1;transform:none}.reveal-group>*{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease;transition-delay:calc(var(--i, 0) * 90ms)}.reveal-group.in>*{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.reveal,.reveal-group>*{opacity:1;transform:none}}