:root {
    --navy: #0F2B5B;
    --navy-deep: #091D3F;
    --gold: #C9A46A;
    --gold-light: #E3C899;
    --ivory: #F7F2EB;
    --cream: #FFFDF9;
    --text: #1D2738;
    --muted: #697386;
    --border: #E6D9C8;
    --success: #0F7A51;
    --danger: #A83442;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--ivory); color: var(--text); font-family: Cairo, Tahoma, sans-serif; line-height: 1.8; }
a { color: inherit; }
.container { width: min(1120px, calc(100% - 40px)); margin: 0 auto; }
.intro-section { padding: 72px 0 56px; background: var(--cream); border-bottom: 1px solid var(--border); }
.intro-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(260px, 340px); gap: 56px; align-items: start; }
.eyebrow { display: inline-flex; margin-bottom: 12px; color: #8B6630; font-size: 0.8rem; font-weight: 800; }
h1, h2, p { margin-top: 0; }
h1, h2 { color: var(--navy); line-height: 1.3; }
h1 { max-width: 700px; margin-bottom: 20px; font-size: clamp(2rem, 5vw, 3.25rem); }
h2 { margin-bottom: 12px; font-size: clamp(1.45rem, 3vw, 2.05rem); }
.intro-copy { max-width: 760px; }
.intro-copy p { color: #39465B; font-size: 1rem; }
.editorial-note { display: grid; gap: 10px; padding: 25px; border-right: 4px solid var(--gold); border-radius: 8px; background: var(--navy); color: #fff; }
.editorial-note i { color: var(--gold-light); font-size: 1.55rem; }
.editorial-note strong { font-size: 1.12rem; }
.editorial-note span { color: rgba(255,255,255,0.76); font-size: 0.91rem; line-height: 1.75; }
.topics-section, .form-section { padding: 64px 0; }
.section-heading { max-width: 740px; margin-bottom: 28px; }
.section-heading p { color: var(--muted); }
.topic-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.topic-grid article { display: flex; align-items: flex-start; gap: 10px; min-height: 118px; padding: 18px; border: 1px solid var(--border); border-radius: 8px; background: #fff; color: #354156; font-size: 0.91rem; font-weight: 600; }
.topic-grid i { color: var(--gold); font-size: 1.1rem; }
.form-section { background: #F0E7DA; }
.form-layout { display: grid; grid-template-columns: minmax(230px, 0.7fr) minmax(0, 1.4fr); gap: 56px; align-items: start; }
.form-copy { position: sticky; top: 22px; }
.form-copy p { color: #47546A; }
.form-side-note { display: flex; gap: 10px; margin-top: 20px; padding-top: 18px; border-top: 1px solid rgba(15,43,91,0.16); color: var(--muted); font-size: 0.9rem; }
.form-side-note i { color: var(--gold); font-size: 1.15rem; }
.collaboration-form { padding: 28px; border: 1px solid var(--border); border-radius: 8px; background: #fff; box-shadow: 0 14px 34px rgba(15,43,91,0.08); }
.form-feedback { display: none; margin-bottom: 18px; padding: 11px 13px; border-radius: 6px; font-weight: 700; }
.form-feedback.visible { display: block; }
.form-feedback.success { background: #E8F6EE; color: var(--success); }
.form-feedback.error { background: #FCEDEF; color: var(--danger); }
.field-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.field { display: grid; gap: 6px; margin-bottom: 18px; }
.field span, legend, .links-heading strong { color: var(--navy); font-size: 0.92rem; font-weight: 800; }
.field b, legend b { color: var(--danger); }
.field em { color: var(--muted); font-size: 0.78rem; font-style: normal; font-weight: 600; }
input, textarea { width: 100%; border: 1px solid #D8C9B7; border-radius: 6px; outline: none; background: #fff; color: var(--text); font: inherit; line-height: 1.6; }
input { min-height: 45px; padding: 9px 11px; }
textarea { min-height: 96px; padding: 10px 11px; resize: vertical; }
input:focus, textarea:focus { border-color: var(--gold); box-shadow: 0 0 0 3px rgba(201,164,106,0.17); }
.choice-fieldset { margin: 0 0 20px; padding: 0; border: 0; }
legend { margin-bottom: 9px; }
.choice-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.choice-grid.compact { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.choice-grid label { display: flex; align-items: center; gap: 8px; min-height: 43px; padding: 8px 10px; border: 1px solid #E3D7C8; border-radius: 6px; color: #455168; font-size: 0.87rem; font-weight: 600; cursor: pointer; }
.choice-grid input, .consent-field input { width: 16px; min-height: 16px; accent-color: var(--navy); }
.inline-field { margin: 14px 0 0; }
.links-field { margin-bottom: 20px; }
.links-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; margin-bottom: 10px; }
.links-heading > div { display: grid; }
.links-heading span { color: var(--muted); font-size: 0.78rem; line-height: 1.65; }
.icon-button { display: inline-flex; align-items: center; gap: 6px; flex: 0 0 auto; min-height: 37px; border: 1px solid rgba(15,43,91,0.25); border-radius: 6px; background: #fff; color: var(--navy); font: inherit; font-size: 0.8rem; font-weight: 800; cursor: pointer; padding: 7px 10px; }
.work-links { display: grid; gap: 8px; }
.link-field { margin: 0; }
.consent-field { display: flex; align-items: flex-start; gap: 10px; margin: 6px 0 20px; color: #465268; font-size: 0.87rem; font-weight: 600; cursor: pointer; }
.consent-field input { flex: 0 0 auto; margin-top: 5px; }
.submit-button { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; border: 0; border-radius: 6px; background: var(--navy); color: #fff; cursor: pointer; font: inherit; font-weight: 800; padding: 11px 18px; }
.submit-button:hover { background: var(--navy-deep); }
.submit-button:disabled { cursor: wait; opacity: 0.7; }
.notice-section { padding: 34px 0 52px; background: #F0E7DA; }
.notice-box { display: flex; gap: 12px; max-width: 930px; padding: 18px 20px; border: 1px solid #DCC7A7; border-radius: 8px; background: #FFF9EE; color: #665033; }
.notice-box i { flex: 0 0 auto; margin-top: 3px; color: #A17834; font-size: 1.2rem; }
.notice-box p { margin: 0; font-size: 0.9rem; }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; }

@media (max-width: 860px) {
    .intro-layout, .form-layout { grid-template-columns: 1fr; gap: 30px; }
    .form-copy { position: static; }
    .topic-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 580px) {
    .container { width: min(100% - 24px, 1120px); }
    .intro-section, .topics-section, .form-section { padding: 42px 0; }
    h1 { font-size: 1.85rem; }
    .field-grid, .choice-grid, .choice-grid.compact, .topic-grid { grid-template-columns: 1fr; }
    .collaboration-form { padding: 18px; }
    .links-heading { align-items: stretch; flex-direction: column; }
    .icon-button, .submit-button { width: 100%; }
}
