﻿.message-page { min-height:calc(100vh - 136px); padding:24px 14px 80px; background:#172044 url('../Resources/main_bg.png') center / cover; position:relative; }
.message-page::before { content:""; position:fixed; inset:0; z-index:101; background:rgba(0,0,0,.4); pointer-events:none; }
.message-card { position:relative; z-index:102; background:white; border-radius:8px; padding:18px 24px 10px; color:#111; font-family:Arial,Helvetica,sans-serif; }
.message-card * { box-sizing:border-box; }
.message-card h1 { display:flex; align-items:center; gap:18px; margin:0 40px 34px 0; color:#a0cf52; font:700 24px/1.3 Arial,Helvetica,sans-serif; }
.message-card h1::before { content:""; width:72px; height:2px; background:#a0cf52; flex:none; }
.message-close { position:absolute; right:32px; top:17px; color:#222; font-size:38px; line-height:1; text-decoration:none; }
.message-close:hover { color:#222; text-decoration:none; }
.message-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:32px 24px; }
.message-card label { display:block; color:#a0cf52; font-size:16px; font-weight:700; text-transform:uppercase; margin-bottom:6px; }
.message-card .required { color:#df1727; }
.message-card input[type=text], .message-card textarea { width:100%; max-width:none; border:1px solid #aaa; border-radius:8px; padding:8px; background:white; color:#222; font:16px/1.4 Arial,Helvetica,sans-serif; }
.message-card input[type=text] { height:40px; }
.message-card textarea { min-height:178px; resize:vertical; }
.message-card input:focus, .message-card textarea:focus { outline:2px solid #a0cf52; outline-offset:2px; }
.field-Subject, .message-wide { grid-column:1 / -1; }
.message-attachments { grid-column:1 / 4; align-self:center; }
.message-attachments input { width:100%; max-width:100%; font:16px Arial,Helvetica,sans-serif; }
.message-attachments input::file-selector-button,.message-attachments input::-webkit-file-upload-button { border:0; border-radius:6px 0 6px 0; background:#a0cf52; color:#fff; padding:8px 16px; margin-right:10px; font:700 14px Arial,Helvetica,sans-serif; cursor:pointer; }.message-attachments input::file-selector-button:hover,.message-attachments input::-webkit-file-upload-button:hover { background:#8cbb3e; }
.message-attachments small { display:block; margin-top:8px; color:#555; }
.message-card .message-send { justify-self:end; align-self:center; display:inline-block; width:auto; max-width:100%; min-width:179px; min-height:77px; padding:24px; background:#a0cf52; color:white; border:0; border-radius:14px 0 14px 0; font:700 20px/1.4 Arial,Helvetica,sans-serif; cursor:pointer; text-align:center; }
.message-card .message-send:hover { background:#8cbb3e; }
.message-error { color:#b42318; font-size:14px; }
.message-card > .message-error:not(:empty) { display:block; margin-bottom:20px; }
.message-consent { text-align:center; margin:20px 0 0; font-size:13px; }
.message-consent a { color:#8fbe3e; text-decoration:underline; }
.message-confirmation { text-align:center; padding:60px 0 100px; }
@media(max-width:900px) { .message-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .message-attachments { grid-column:1; } }
@media(max-width:550px) {
 .message-page { padding:16px 10px 40px; }
 .message-card { padding:20px 16px; }
 .message-card h1 { font-size:20px; margin:0 24px 32px 0; gap:10px; }
 .message-card h1::before { width:30px; }
 .message-close { right:12px; top:12px; }
 .message-grid { grid-template-columns:minmax(0,1fr); gap:24px; }
 .message-card .message-send { justify-self:stretch; }
}
