/* Submit page: focused navy-and-gold working surface. */
.submit-page { background:#f3f5f8; }
.submit-page .page-header { padding:42px 0 32px; text-align:left; background:var(--navy); }
.submit-page .page-header .container { max-width:1000px; }
.submit-page .page-header h1 { font-size:clamp(1.5rem,3vw,2.25rem); line-height:1.5; }
.submit-page .page-header p { font-size:1rem; color:#d4dbe5; }
.submit-page .submit-section { padding:32px 0 64px; }
.submit-page .submit-container { max-width:1000px; }
.submit-page .form-card { padding:0; border:1px solid #dce2eb; border-radius:18px; overflow:visible; box-shadow:0 12px 40px #14243b08; }
.form-intro { padding:32px 40px 24px; }
.form-eyebrow { display:block; color:#806329; font-size:.875rem; margin-bottom:8px; font-weight:600; }
.submit-page .form-intro h2 { font-size:1.5rem; margin:0 0 8px; }
.submit-page .form-intro p { margin:0; font-size:1rem; color:#536174; }
.form-jump { display:flex; gap:8px; padding:14px 40px; background:#f8fafc; border-block:1px solid #e1e6ee; flex-wrap:wrap; }
.form-jump a { padding:10px 14px; border:1px solid #dbe2ec; border-radius:8px; background:white; color:#26374f; font-size:.875rem; font-weight:600; text-decoration:none; }
.form-jump a:hover { border-color:#997b3f; background:#faf5e9; }
.submit-page #submitForm { padding:8px 40px 36px; }
.submit-page .form-section-title { font-size:1.125rem; padding:22px 0 12px; margin:16px 0 20px; border-bottom:1px solid #dce2eb; scroll-margin-top:100px; color:#16243b; flex-wrap:wrap; gap:8px; }
.submit-page .form-grid { gap:20px 24px; }
.submit-page .form-group label { display:block; color:#26374f; font-size:.9375rem; margin-bottom:8px; }
.submit-page .form-group input:not([type=checkbox]), .submit-page .form-group select, .submit-page .form-group textarea { font-size:1rem; min-height:50px; border:1px solid #bbc6d5; border-radius:9px; background:#fff; padding:12px 14px; color:#18273d; width:100%; }
.submit-page .form-group textarea { min-height:160px; line-height:1.8; resize:vertical; }
.submit-page .form-group input::placeholder, .submit-page textarea::placeholder { color:#718095; opacity:1; }
.submit-page .form-hint { display:block; font-size:.875rem; color:#5a687b; margin-top:8px; }
.submit-page .form-error { font-size:.875rem; color:#b42318; }
.submit-page [aria-invalid=true] { border-color:#c83229!important; background:#fffafa!important; }
.submit-page :focus-visible { outline:3px solid #9f7a2f; outline-offset:3px; }
.submit-page #uploadArea { border-color:#a8b6c9!important; background:#f8fafc!important; border-radius:12px!important; padding:32px 16px!important; }
.submit-page #uploadArea.dragging { border-color:#8f6c25!important; background:#f8efdc!important; }
.image-tile { position:relative; width:140px; }
.image-tile img { width:140px; height:110px; object-fit:cover; border-radius:10px; border:1px solid #dce2eb; }
.image-tile span { display:block; font-size:.875rem; color:#536174; margin-top:4px; }
.image-tile button { position:absolute; right:4px; top:4px; width:36px; height:36px; border-radius:50%; border:1px solid #ddd; color:#9d231b; background:white; font-size:24px; cursor:pointer; }
.submit-page .comm-notice-form, .submit-page .pdpa-notice { border-radius:12px; font-size:.9375rem; line-height:1.8; padding:22px; }
.submit-page .terms-check { align-items:flex-start; gap:12px; }
.submit-page .terms-check input { min-width:22px; height:22px; margin-top:4px; accent-color:#18273d; }
.submit-page .terms-check label { font-size:.9375rem; line-height:1.8; }
.submit-review-note { font-size:.875rem; color:#536174; margin:24px 0 12px; }
.submit-page .submit-btn { min-height:54px; background:#14243b; color:white; border-radius:10px; font-size:1rem; box-shadow:none; }
.submit-page .submit-btn:hover { background:#243b5a; }
.submit-page .submit-btn:disabled { opacity:.65; cursor:wait; }
.submit-page .prov-opt { font-size:1rem; padding:12px; }
.submit-page .prov-opt:focus { background:#f4efe1; outline:2px solid #997b3f; outline-offset:-2px; }
@media(max-width:640px) {
 .submit-page .page-header { padding:28px 0 22px; }
 .submit-page .submit-section { padding-top:18px; }
 .form-intro { padding:24px 20px 20px; }
 .form-jump { padding:12px 20px; display:grid; grid-template-columns:1fr 1fr; }
 .form-jump a { text-align:center; padding:10px 6px; }
 .submit-page #submitForm { padding:0 20px 24px; }
 .submit-page .form-grid { grid-template-columns:1fr; gap:18px; }
 .submit-page .col-span-2 { grid-column:auto; }
 .submit-page .comm-notice-form, .submit-page .pdpa-notice { padding:16px; }
 .submit-page .form-intro h2 { font-size:1.25rem; }
}
@media(prefers-reduced-motion:reduce) { .submit-page *, .submit-page *::before, .submit-page *::after { scroll-behavior:auto!important; transition:none!important; animation:none!important; } }
