/* CCFNT Static Site - Based on WordPress Chateau Theme */
* { margin: 0; padding: 0; box-sizing: border-box; }

body {
    font-family: Georgia, "Bitstream Charter", serif;
    font-size: 16px;
    line-height: 1.6;
    color: #333;
    background: #f5f5f5;
}

a { color: #8b0000; text-decoration: none; }
a:hover { color: #c00; text-decoration: underline; }

#page {
    max-width: 1060px;
    margin: 20px auto;
    background: #fff;
    border: 1px solid #ddd;
}

/* Header */
#branding {
    padding: 20px 30px 10px;
    border-bottom: 1px solid #eee;
}

#site-title { font-size: 28px; font-weight: bold; }
#site-title a { color: #333; text-decoration: none; }
#site-description { font-size: 14px; color: #777; font-style: italic; margin-bottom: 10px; }
#header-image { width: 100%; height: auto; display: block; margin-top: 10px; }

/* Navigation */
#menu {
    background: #fff;
    border-bottom: 3px solid #8b0000;
    padding: 0 30px;
}

#menu .menu { list-style: none; display: flex; flex-wrap: wrap; }
#menu .menu > li { position: relative; }

#menu .menu > li > a {
    display: block;
    padding: 10px 15px;
    color: #333;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 1px;
    text-decoration: none;
    border-bottom: 3px solid transparent;
    margin-bottom: -3px;
}

#menu .menu > li > a:hover,
#menu .menu > li.current > a {
    border-bottom-color: #8b0000;
    color: #8b0000;
}

#menu .menu > li:hover .children { display: block; }

#menu .children {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    background: #fff;
    border: 1px solid #ddd;
    list-style: none;
    min-width: 220px;
    z-index: 100;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}

#menu .children li a {
    display: block;
    padding: 8px 15px;
    color: #333;
    font-size: 13px;
    text-decoration: none;
    border-bottom: 1px solid #eee;
}

#menu .children li a:hover,
#menu .children li.current a {
    color: #8b0000;
    background: #f9f9f9;
}

/* Main Content Area */
#wrapper { display: flex; padding: 30px; gap: 30px; }
#content { flex: 1; min-width: 0; }

/* Sidebar */
#secondary {
    width: 280px;
    flex-shrink: 0;
    border-left: 1px solid #eee;
    padding-left: 30px;
}

.sidebar-widget { margin-bottom: 25px; }

.widget-title {
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #8b0000;
    margin-bottom: 10px;
    padding-bottom: 5px;
    border-bottom: 1px solid #eee;
}

/* Article Content */
.entry-title {
    font-size: 28px;
    color: #8b0000;
    font-weight: normal;
    margin-bottom: 15px;
    padding-bottom: 15px;
    border-bottom: 1px solid #eee;
}

.entry-content { line-height: 1.8; }
.entry-content p { margin-bottom: 1em; }
.entry-content ul, .entry-content ol { margin: 0.5em 0 1em 1.5em; }
.entry-content li { margin-bottom: 0.3em; }
.entry-content h3 { font-size: 20px; color: #555; margin: 1.5em 0 0.5em; }
.entry-content h4 { font-size: 17px; color: #666; margin: 1em 0 0.3em; }

/* Footer */
#colophon {
    border-top: 3px solid #8b0000;
    padding: 15px 30px;
    text-align: center;
    font-size: 13px;
    color: #777;
    background: #fafafa;
}

/* Responsive */
@media (max-width: 768px) {
    #wrapper { flex-direction: column; }
    #secondary { width: 100%; border-left: none; padding-left: 0; border-top: 1px solid #eee; padding-top: 20px; }
    #menu .menu { flex-direction: column; }
    #menu .children { position: static; box-shadow: none; border: none; padding-left: 20px; display: block; }
    #page { margin: 0; border: none; }
}
