/* --- BASE --- */
.submit-event-page { background-color: #0c70c2 !important; margin: 0; padding: 0; min-height: 100vh; }
.site-header { width: 100%; background-color: #fff; }
.banner-img { width: 100%; height: auto; display: block; }

/* --- NAV (UNDERLINED) --- */
.nav-bar { width: 100%; background-color: #fff; border-top: 1px solid #ccc; padding: 15px 0; position: relative; }
.nav-links { display: flex; justify-content: center; list-style: none; gap: 30px; margin: 0; padding: 0; transition: 0.3s; }
.nav-links a { 
    font-family: "Times New Roman", Times, serif; color: #222 !important; 
    font-weight: 900; text-transform: uppercase; 
    text-decoration: underline; font-size: 14px; 
}

/* Hamburger UI */
.hamburger { display: none; flex-direction: column; cursor: pointer; gap: 5px; margin-left: 20px; }
.bar { width: 25px; height: 3px; background-color: #222; }

/* --- GRID --- */
.submit-event-main-wrapper { width: 95%; max-width: 1300px; margin: 40px auto; }
.index-grid-row { display: flex; gap: 30px; align-items: flex-start; }
.index-col { flex: 1; }

/* --- COLUMN 1 (DIVI STYLE) --- */
.submission-guidelines-large, .next-steps-clipping, .reach-clipping {
    background-color: #fffdf6 !important; box-shadow: 10px 10px 0px #222;
    margin-bottom: 25px; box-sizing: border-box; width: 100%;
}
.submission-guidelines-large { padding: 45px; border: 3px double #222; }
.guidelines-masthead { text-align: center; border-bottom: 3px solid #222; margin-bottom: 30px; padding-bottom: 15px; }
.guidelines-masthead h2 { font-family: "Times New Roman", serif; font-weight: 900; text-transform: uppercase; font-size: 28px; color: #d9534f; margin: 0; }
.rule-section { font-family: "Times New Roman", serif; font-size: 18px; line-height: 1.7; color: #222; }
.rule-item { margin-bottom: 20px; padding-left: 25px; position: relative; }
.rule-item::before { content: "✔"; position: absolute; left: 0; color: #d9534f; font-weight: bold; }
.editor-signature { margin-top: 40px; padding-top: 20px; border-top: 1px solid #222; font-family: "Times New Roman", serif; font-style: italic; }
.disclaimer-box { margin-top: 20px; font-size: 13px; color: #666; text-align: center; }

.next-steps-clipping { padding: 20px; border: 1px solid #222; box-shadow: 6px 6px 0px #222; }
.step-row { display: flex; align-items: center; margin-bottom: 10px; }
.step-num { 
    background: #222; color: #fff; width: 25px; height: 25px; border-radius: 50%; 
    display: flex; align-items: center; justify-content: center; margin-right: 15px; font-size: 12px; 
}
.reach-clipping { padding: 25px; border: 1px dashed #d9534f; box-shadow: 6px 6px 0px #222; text-align: center; }

/* --- COLUMN 2 (FORM) --- */
.wf-wrapper { background-color: #fffdf6 !important; border: 2px solid #222 !important; box-shadow: 10px 10px 0px #000; padding: 40px; width: 100%; }
.wf-header {
    font-family: "Times New Roman", serif; font-size: 32px; font-weight: 900; 
    text-transform: uppercase; text-align: center; border-top: 4px solid #222; 
    border-bottom: 2px solid #222; padding: 15px 0; margin-bottom: 25px;
}
.wf-label {
    font-family: "Times New Roman", serif; font-weight: bold; font-size: 14px; 
    text-transform: uppercase; color: #222; margin-bottom: 8px; display: block; 
    border-bottom: 1px solid #ccc;
}
.wf-field-input { 
    width: 100%; border: 1px solid #222; padding: 12px; font-size: 16px; 
    background-color: #ffffff; margin-bottom: 15px; box-sizing: border-box; 
}
.wf-text-area-input { height: 100px; resize: vertical; }
.wf-btn { 
    width: 100%; background-color: #222; color: #fff; padding: 20px; 
    font-family: "Times New Roman", serif; font-weight: bold; 
    text-transform: uppercase; border: none; cursor: pointer; 
    font-size: 22px; letter-spacing: 2px; 
}

/* --- FOOTER (USER STYLE) --- */
.site-footer { background-color: #fff; padding: 20px; text-align: center; border-top: 1px solid #ccc; }
.site-footer p { margin: 5px 0; font-family: Arial, sans-serif; font-size: 14px; }
.footer-link { color: #222; text-decoration: underline; font-weight: bold; }

/* Mobile */
@media (max-width: 900px) {
    .index-grid-row { flex-direction: column; }
    .hamburger { display: flex; }
    .nav-links { 
        display: none; flex-direction: column; gap: 15px; 
        padding: 20px; border-top: 1px solid #ccc; width: 100%; 
    }
    .nav-links.open { display: flex; }
}
