.contact-layout{grid-template-columns:1fr 1.1fr;align-items:start;gap:56px;display:grid}.contact-info-col{animation:.7s cubic-bezier(.22,1,.36,1) .1s both fadeLeft}.contact-intro{color:var(--ink-soft);margin-bottom:40px;font-size:.93rem;line-height:1.8}.contact-details{flex-direction:column;gap:20px;display:flex}.contact-detail-item{background:var(--white);border:1px solid var(--border);border-radius:var(--r);align-items:flex-start;gap:16px;padding:20px 22px;transition:transform .3s,box-shadow .3s,border-color .3s;display:flex;position:relative;overflow:hidden}.contact-detail-item:before{content:"";background:linear-gradient(to bottom,var(--red),var(--gold));transform-origin:top;width:3px;transition:transform .35s cubic-bezier(.22,1,.36,1);position:absolute;top:0;bottom:0;left:0;transform:scaleY(0)}.contact-detail-item:hover{border-color:#c0392b33;transform:translate(6px);box-shadow:0 8px 28px #c0392b1a}.contact-detail-item:hover:before{transform:scaleY(1)}.detail-icon{background:#c0392b12;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.6rem;transition:transform .3s,background .3s;display:flex}.contact-detail-item:hover .detail-icon{background:#c0392b1f;transform:scale(1.1)rotate(-5deg)}.detail-label{text-transform:uppercase;letter-spacing:.12em;color:var(--red);margin-bottom:3px;font-size:.7rem;font-weight:800}.detail-value{color:var(--ink);margin-bottom:2px;font-size:.92rem;font-weight:700}.detail-sub{color:var(--ink-soft);font-size:.78rem}.contact-form-col{animation:.7s cubic-bezier(.22,1,.36,1) .2s both fadeRight}.contact-form-card{padding:40px 36px;position:relative;overflow:hidden}.contact-form-card:after{content:"";background:linear-gradient(90deg,transparent,var(--gold),var(--red),var(--gold),transparent);background-size:300% 100%;height:3px;animation:5s linear infinite shimmer;position:absolute;top:0;left:0;right:0}.form-heading{margin-bottom:28px}.form-heading h3{font-family:var(--font-d);color:var(--ink);margin-bottom:6px;font-size:1.5rem;font-weight:700}.form-heading p{color:var(--ink-soft);font-size:.85rem;line-height:1.6}.contact-form{flex-direction:column;gap:20px;display:flex}.form-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form-group{flex-direction:column;gap:7px;display:flex}.form-group label{text-transform:uppercase;letter-spacing:.12em;color:var(--ink-mid);font-size:.72rem;font-weight:800}.form-group label span{color:var(--red)}.form-group input,.form-group textarea{background:var(--bg);border:1px solid var(--border);font-family:var(--font);color:var(--ink);resize:vertical;border-radius:12px;outline:none;padding:13px 16px;font-size:.9rem;transition:border-color .25s,background .25s,box-shadow .25s}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--ink-soft)}.form-group input:focus,.form-group textarea:focus{border-color:var(--red);background:var(--white);box-shadow:0 0 0 3px #c0392b1a}.form-error{color:var(--red);background:#c0392b0f;border:1px solid #c0392b33;border-radius:10px;padding:10px 14px;font-size:.83rem}.submit-btn{background:linear-gradient(135deg,var(--red),var(--red-dark));color:#fff;font-family:var(--font);letter-spacing:.06em;cursor:pointer;border:none;border-radius:50px;align-self:flex-start;padding:15px 28px;font-size:.9rem;font-weight:700;transition:transform .25s,box-shadow .25s;position:relative;overflow:hidden}.submit-btn:after{content:"";opacity:0;background:linear-gradient(90deg,#0000,#ffffff24,#0000) 0 0/200%;transition:opacity .3s;position:absolute;inset:0}.submit-btn:hover{transform:translateY(-3px);box-shadow:0 12px 32px #c0392b66}.submit-btn:hover:after{opacity:1;animation:.7s shimmer}.submit-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.form-success{text-align:center;padding:40px 20px;animation:.5s cubic-bezier(.22,1,.36,1) both scaleIn}.success-icon{margin-bottom:16px;font-size:3.5rem;display:block}.form-success h4{font-family:var(--font-d);color:var(--ink);margin-bottom:8px;font-size:1.5rem}.form-success p{color:var(--ink-soft);margin-bottom:24px;font-size:.9rem;line-height:1.6}.reset-btn{border:2px solid var(--red);color:var(--red);font-family:var(--font);cursor:pointer;background:0 0;border-radius:50px;padding:11px 24px;font-size:.85rem;font-weight:700;transition:background .2s,color .2s}.reset-btn:hover{background:var(--red);color:#fff}@media (max-width:900px){.contact-layout{grid-template-columns:1fr;gap:40px}}@media (max-width:560px){.form-row{grid-template-columns:1fr}.contact-form-card{padding:28px 22px}}
