/* Contact page only (template contact layout: split, info cards, form card). Prefix: contact- plus template form classes */
.contact-split{display:grid;grid-template-columns:.85fr 1.15fr;gap:48px;align-items:start}
.contact-aside .section-title{font-size:clamp(24px,2.6vw,36px);margin-bottom:14px}
.contact-aside .section-sub{max-width:44ch;margin-bottom:28px}
.info-cards{display:flex;flex-direction:column;gap:12px;width:100%}
.info-card{display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:var(--r);background:var(--glass-bg);border:1px solid var(--glass-border);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);transition:border-color .3s,background .3s}
a.info-card:hover,.info-card:hover{border-color:rgba(99,102,241,.3);background:var(--glass-bg-2)}
.info-card__icon{width:40px;height:40px;border-radius:10px;background:var(--primary-dim);border:1px solid rgba(99,102,241,.2);display:grid;place-items:center;flex-shrink:0}
.info-card__icon svg{width:17px;height:17px;color:var(--accent)}
.info-card__content{display:flex;flex-direction:column;gap:3px;min-width:0}
.info-card__label{font-size:11px;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--dim)}
.info-card__value{font-size:15px;color:var(--text);font-weight:500;overflow-wrap:anywhere}
.info-card__arrow{margin-left:auto;width:16px;height:16px;color:var(--accent);flex-shrink:0;transition:transform .3s cubic-bezier(.16,1,.3,1)}
a.info-card:hover .info-card__arrow{transform:translateX(3px)}
.contact-safe{margin-top:22px;font-size:13px;line-height:1.7;color:var(--muted);max-width:44ch}
.form-card{border-radius:var(--r-xl);background:linear-gradient(145deg,rgba(99,102,241,.05) 0%,rgba(26,26,28,.6) 40%,rgba(165,180,252,.03) 100%);border:1px solid var(--glass-border);padding:36px;position:relative;overflow:hidden;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.form-card::before{content:'';position:absolute;top:0;left:20%;right:20%;height:1px;background:linear-gradient(90deg,transparent,rgba(99,102,241,.5),rgba(165,180,252,.3),transparent)}
.form-card__title{font-family:var(--font-display);font-weight:400;font-size:22px;letter-spacing:-.02em;margin-bottom:6px}
.form-card__sub{font-size:14px;color:var(--muted);margin-bottom:28px;line-height:1.6}
.form-group{margin-bottom:20px}
.form-label{display:block;font-size:12px;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:8px}
.form-label .required{color:rgba(129,140,248,.9)}
.form-label .optional{color:var(--dim);text-transform:none;letter-spacing:0;margin-left:4px}
.form-input,.form-select,.form-textarea{width:100%;padding:12px 16px;border-radius:10px;background:rgba(255,255,255,.03);border:1px solid var(--glass-border);color:var(--text);font-size:14px;font-family:var(--font-body);transition:border-color .3s,box-shadow .3s,background .3s;outline:none;-webkit-appearance:none;appearance:none}
.form-input::placeholder,.form-textarea::placeholder{color:var(--dim)}
.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:rgba(99,102,241,.5);box-shadow:0 0 0 3px rgba(99,102,241,.12),0 0 24px rgba(99,102,241,.08);background:rgba(255,255,255,.05)}
.form-input.error,.form-select.error,.form-textarea.error{border-color:rgba(165,180,252,.7);box-shadow:0 0 0 3px rgba(139,92,246,.18)}
.form-error{font-size:12px;color:#C7B8FF;margin-top:6px;display:none}
.form-error.show{display:block}
.form-select{background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='rgba(245,245,242,0.45)' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:40px;cursor:pointer}
.form-select:invalid{color:var(--dim)}
.form-select option{background:var(--bg-2);color:var(--text)}
.form-textarea{resize:vertical;min-height:140px;line-height:1.6}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.btn-submit{width:100%;padding:14px 28px;border-radius:12px;font-size:15px;font-weight:500;background:linear-gradient(135deg,var(--primary),var(--primary-deep));color:#fff;border:none;cursor:pointer;box-shadow:0 0 24px rgba(99,102,241,.35);transition:all .25s cubic-bezier(.16,1,.3,1);display:inline-flex;align-items:center;justify-content:center;gap:8px;position:relative;overflow:hidden;font-family:var(--font-body)}
.btn-submit:hover{box-shadow:0 0 40px rgba(99,102,241,.55);transform:translateY(-2px)}
.btn-submit:active{transform:translateY(0)}
.btn-submit:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.btn-submit svg{width:18px;height:18px;transition:transform .3s}
.btn-submit:hover svg{transform:translateX(3px)}
.form-fine{margin-top:16px;font-size:12px;line-height:1.7;color:var(--dim);text-align:center}
.form-fine a{color:var(--accent);border-bottom:1px solid rgba(165,180,252,.3)}
.form-status{margin-top:14px;font-size:13px;line-height:1.6;color:var(--accent);text-align:center;min-height:1em}
@media(max-width:1024px){.contact-split{grid-template-columns:1fr;gap:40px}.contact-aside .section-sub,.contact-safe{max-width:none}}
@media(max-width:768px){.form-row{grid-template-columns:1fr;gap:0}.form-card{padding:24px}.form-card__title{font-size:18px}.form-card__sub{font-size:13px;margin-bottom:22px}.form-label{font-size:11px}.form-input,.form-select,.form-textarea{font-size:16px;padding:11px 14px}}
@media(max-width:480px){.form-card{padding:22px 16px}.info-card{padding:14px}}
