.contact{display:grid;grid-template-columns:1fr 1fr;gap:3.5rem;align-items:start}.contact__info{display:flex;flex-direction:column;gap:1rem}.contact__card{background:var(--noir-3);border:1px solid var(--hairline);border-radius:var(--radius);padding:1.5rem 1.7rem;transition:border-color .3s,transform .3s var(--ease)}.contact__card:hover{border-color:var(--line);transform:translate(4px)}.contact__label{display:block;font-family:var(--font-display);font-size:.68rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);margin-bottom:.35rem}.contact__value{font-size:1.1rem;font-weight:600;color:var(--ivory)}a.contact__value:hover{color:var(--gold-bright)}.contact__sub{font-size:.88rem;color:var(--ivory-faint);margin-top:.3rem}.contact__map{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);margin-top:.4rem;border:1px solid var(--hairline)}.contact__map iframe{width:100%;height:260px;border:0;display:block;filter:grayscale(.4) contrast(1.05)}.contact__form-wrap{background:var(--noir-3);border:1px solid var(--hairline);border-radius:var(--radius);padding:2.4rem;box-shadow:var(--shadow);position:relative;overflow:hidden}.contact__form-wrap:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}.contact__form-wrap h2{font-size:1.9rem;margin-bottom:1.6rem}.contact__form{display:flex;flex-direction:column;gap:1.1rem}.contact__form label{display:flex;flex-direction:column;gap:.35rem}.contact__form label span{font-size:.85rem;font-weight:600;color:var(--ivory-dim)}.contact__form input,.contact__form textarea{border:1px solid var(--hairline);border-radius:10px;padding:.85rem 1rem;font-family:var(--font-sans);font-size:.95rem;color:var(--ivory);background:var(--noir-2);transition:border-color .25s,box-shadow .25s;resize:vertical}.contact__form input::placeholder,.contact__form textarea::placeholder{color:var(--ivory-faint)}.contact__form input:focus,.contact__form textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px #c9a9621f}.contact__form .btn{align-self:flex-start;margin-top:.4rem}.contact__status{font-size:.92rem;font-weight:600}.contact__status--ok{color:#7fb069}.contact__status--err{color:#e07a7a}@media(max-width:860px){.contact{grid-template-columns:1fr;gap:2.5rem}}
