.public-submission { color: var(--navy); }
.public-submission .breadcrumbs { margin-bottom: 16px; }
.public-submission__header { display: flex; align-items: center; gap: 18px; padding: 23px 28px; border-radius: 11px; background: var(--navy); color: #fff; }
.public-submission__header > span { display: inline-flex; flex: 0 0 54px; color: var(--gold); }
.public-submission__header svg { width: 54px; height: 54px; stroke-width: 1.5; }
.public-submission__header h1 { margin: 0 0 5px; color: #fff; font: 400 clamp(30px,4vw,45px)/1.1 Georgia,serif; }
.public-submission__header p { margin: 0; font-size: 16px; line-height: 1.4; }
.public-submission__layout { display: grid; grid-template-columns: minmax(0,2fr) minmax(230px,1fr); align-items: start; gap: 20px; margin-top: 18px; }
.public-submission__card, .public-submission__aside { padding: 26px; border: 1px solid #d7dce5; border-radius: 10px; background: #fff; }
.public-submission__card h2, .public-submission__aside h2 { margin: 0 0 8px; font: 700 25px/1.2 Georgia,serif; }
.public-submission__card > p, .public-submission__aside p { color: #48576a; font-size: 14px; line-height: 1.6; }
.public-submission form { display: grid; gap: 8px; }
.public-submission form label:not(.public-submission__consent) { margin-top: 9px; font-size: 14px; font-weight: 700; }
.public-submission form input:not([type=checkbox]), .public-submission form textarea { width: 100%; min-width: 0; min-height: 44px; padding: 10px 12px; border: 1px solid #aeb9c9; border-radius: 5px; background: #fff; color: #162a44; font: 16px/1.45 Arial,sans-serif; }
.public-submission form textarea { resize: vertical; }
.public-submission__row { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.public-submission__row > div { display: grid; gap: 8px; }
.public-submission__row label { margin-top: 9px; }
.public-submission__consent { display: flex; align-items: flex-start; gap: 10px; margin-top: 12px; color: #35465a; font-size: 13px; line-height: 1.45; }
.public-submission__consent input { flex: 0 0 auto; margin-top: 3px; accent-color: var(--navy); }
.public-submission__privacy { color: var(--navy); text-decoration: underline; font-size: 13px; }
.public-submission form button { display: inline-flex; align-items: center; justify-content: center; gap: 16px; width: fit-content; min-height: 46px; margin-top: 7px; padding: 10px 22px; border: 0; border-radius: 5px; background: var(--gold); color: var(--navy); font: 700 15px/1.2 Arial,sans-serif; cursor: pointer; }
.public-submission form button:hover { background: #d9ad5b; }
.public-submission__notice, .public-submission__errors { display: block; padding: 14px; border-radius: 6px; font-size: 14px; line-height: 1.45; }
.public-submission__notice { border: 1px solid #8ebda0; background: #edf8f0; color: #1e5936; }
.public-submission__errors { border: 1px solid #d58f91; background: #fff1f1; color: #8a1f28; }
.public-submission__errors ul { margin: 8px 0 0; padding-left: 20px; }
.public-submission__honeypot { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.public-submission__aside { border-top: 4px solid var(--gold); }
.public-submission__aside a { display: inline-flex; align-items: center; gap: 8px; margin-top: 12px; color: #8a641f; font-size: 14px; font-weight: 700; text-decoration: underline; }
@media (max-width: 740px) { .public-submission__layout { grid-template-columns: 1fr; } .public-submission__header, .public-submission__card, .public-submission__aside { padding: 20px; } }
@media (max-width: 470px) { .public-submission__row { grid-template-columns: 1fr; } .public-submission__header > span { flex-basis: 42px; } .public-submission__header svg { width: 42px; height: 42px; } }
