.contact-terminal-layout {
    display: grid;
    flex: 1;
    min-height: 0;
    grid-template-columns: minmax(230px, 0.62fr) minmax(360px, 1.38fr);
    gap: 1px;
    padding: clamp(0.55rem, 1vw, 0.8rem);
    background: rgba(120, 255, 235, 0.1);
}

.contact-terminal-info,
.contact-form-panel {
    display: flex;
    min-height: 0;
    flex-direction: column;
}

.contact-terminal-copy {
    padding: clamp(1rem, 3vw, 2rem);
    color: rgba(184, 252, 232, 0.72);
    font-size: 0.82rem;
    line-height: 1.7;
}

.contact-terminal-prompt {
    margin: 1.25rem 0 0.25rem;
    color: #ff8994;
    font-size: 0.68rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.contact-terminal-prompt:first-child { margin-top: 0; }

.contact-terminal-copy p:not(.contact-terminal-prompt) { margin: 0; }

.contact-socials { display: grid; grid-template-columns: repeat(auto-fit, minmax(108px, 1fr)); gap: 0.5rem; }
.contact-socials a { position: relative; display: flex; align-items: center; gap: 0.5rem; min-width: 0; padding: 0.55rem 0.6rem; border: 1px solid rgba(120, 255, 235, 0.22); background: rgba(2, 13, 16, 0.62); color: #b8fce8; font-size: 0.7rem; text-decoration: none; overflow: hidden; transition: border-color 0.16s ease, background 0.16s ease, color 0.16s ease, transform 0.16s ease; }
.contact-socials a::before { position: absolute; inset: 0; content: ''; background: radial-gradient(circle at 18% 50%, rgba(255, 119, 131, 0.55), transparent 22%), linear-gradient(90deg, transparent, rgba(118, 245, 217, 0.45), transparent); opacity: 0; transform: translateX(-110%); pointer-events: none; }
.contact-socials a:hover, .contact-socials a:focus-visible { border-color: #76f5d9; background: rgba(22, 140, 114, 0.2); color: #fff; transform: translateY(-1px); }
.contact-socials a:active { border-color: #ff7783; background: rgba(226, 0, 26, 0.32); color: #fff; transform: scale(0.96); }
.contact-socials a:active::before { animation: contact-social-signal 0.5s ease-out; }
.contact-social-icon { flex: 0 0 1.1rem; width: 1.1rem; height: 1.1rem; fill: currentColor; }

@keyframes contact-social-signal { from { opacity: 1; transform: translateX(-110%); } to { opacity: 0; transform: translateX(110%); } }

@media (prefers-reduced-motion: reduce) {
    .contact-socials a { transition: none; }
    .contact-socials a:active::before { animation: none; }
}

.contact-terminal-form {
    position: relative;
    display: flex;
    flex: 1;
    min-height: 0;
    flex-direction: column;
    gap: 0.65rem;
    padding: clamp(1rem, 3vw, 2rem);
}

.contact-terminal-form label {
    color: #a5ffe8;
    font-size: 0.72rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.contact-terminal-form label span { color: #ff7783; }

.contact-terminal-form input,
.contact-terminal-form textarea {
    width: 100%;
    border: 1px solid rgba(120, 255, 235, 0.34);
    border-radius: 0;
    outline: 0;
    background: rgba(1, 9, 11, 0.82);
    color: #d3fff4;
    font: inherit;
    font-size: 0.86rem;
}

.contact-terminal-form input { min-height: 44px; padding: 0 0.8rem; }
.contact-terminal-form textarea { flex: 1; min-height: 150px; padding: 0.8rem; resize: vertical; line-height: 1.55; }

.contact-terminal-form input:focus,
.contact-terminal-form textarea:focus {
    border-color: #76f5d9;
    box-shadow: 0 0 0 2px rgba(118, 245, 217, 0.12), inset 0 0 18px rgba(22, 140, 114, 0.08);
}

.contact-terminal-form button {
    align-self: flex-start;
    min-height: 42px;
    padding: 0 1rem;
    border: 1px solid #ff7783;
    border-radius: 0;
    background: rgba(226, 0, 26, 0.16);
    color: #ffabb2;
    font: inherit;
    font-size: 0.72rem;
    letter-spacing: 0.1em;
    cursor: pointer;
}

.contact-terminal-form button:hover,
.contact-terminal-form button:focus-visible { background: rgba(226, 0, 26, 0.42); color: #fff; }

.contact-alert {
    padding: 0.7rem 0.8rem;
    border-left: 3px solid #ff7783;
    background: rgba(226, 0, 26, 0.12);
    color: #ffc2c7;
    font-size: 0.75rem;
    line-height: 1.45;
}

.contact-alert-success { border-color: #57d895; background: rgba(87, 216, 149, 0.1); color: #a5ffe8; }
.contact-honeypot { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }

@media (max-width: 760px) {
    .contact-terminal-layout { grid-template-columns: 1fr; }
    .contact-terminal-info { min-height: auto; }
    .contact-terminal-copy { display: grid; grid-template-columns: auto 1fr; gap: 0.4rem 1rem; }
    .contact-terminal-prompt { margin: 0; }
    .contact-terminal-form textarea { min-height: 220px; }
}

@media (max-width: 480px) {
    .contact-terminal-copy { display: block; }
    .contact-terminal-prompt { margin-top: 1rem; }
    .contact-terminal-form button { width: 100%; }
}