
/* naturalbornloser.net - main stylesheet */
* { margin: 0; padding: 0; box-sizing: border-box; }

body {
    font-family: Georgia, "Times New Roman", Times, serif;
    background-color: #f5f0e8;
    color: #333;
    line-height: 1.7;
    font-size: 16px;
}

a { color: #8B0000; text-decoration: underline; }
a:hover { color: #cc3300; }
a:visited { color: #660033; }

/* HEADER */
#site-header {
    background: #1a1a2e;
    background-image: linear-gradient(180deg, #1a1a2e 0%, #16213e 100%);
    border-bottom: 4px solid #cc3300;
    padding: 20px 0;
    text-align: center;
}
#site-header h1 {
    font-family: "Courier New", Courier, monospace;
    color: #cc3300;
    font-size: 2.2em;
    letter-spacing: 2px;
    margin-bottom: 2px;
}
#site-header h1 a { color: #cc3300; text-decoration: none; }
#site-header h1 a:hover { color: #ff6633; }
#site-header h1 a:visited { color: #cc3300; }
#site-header .tagline {
    color: #a0a0b8;
    font-style: italic;
    font-size: 0.95em;
}

/* NAV */
#main-nav {
    background: #222;
    border-bottom: 2px solid #444;
    text-align: center;
    padding: 8px 0;
}
#main-nav a {
    color: #ddd;
    text-decoration: none;
    font-family: Verdana, Geneva, sans-serif;
    font-size: 0.8em;
    padding: 4px 12px;
    display: inline-block;
    text-transform: uppercase;
    letter-spacing: 1px;
}
#main-nav a:hover { color: #cc3300; }
#main-nav a:visited { color: #ddd; }
#main-nav a.active { color: #cc3300; font-weight: bold; }

/* LAYOUT */
#page-wrap {
    max-width: 820px;
    margin: 0 auto;
    padding: 25px 20px 40px;
}

/* CONTENT */
h2 {
    font-family: "Courier New", Courier, monospace;
    color: #1a1a2e;
    font-size: 1.8em;
    border-bottom: 2px dashed #cc3300;
    padding-bottom: 6px;
    margin-bottom: 18px;
    margin-top: 30px;
}
h2:first-of-type { margin-top: 5px; }

h3 {
    font-family: Verdana, Geneva, sans-serif;
    color: #333;
    font-size: 1.15em;
    margin-top: 25px;
    margin-bottom: 8px;
}

p { margin-bottom: 14px; }

blockquote {
    border-left: 4px solid #cc3300;
    background: #ede8dc;
    margin: 18px 0;
    padding: 14px 18px;
    font-style: italic;
    color: #555;
}

.highlight-box {
    background: #1a1a2e;
    color: #e0ddd5;
    border: 2px solid #cc3300;
    padding: 18px 20px;
    margin: 20px 0;
    font-family: "Courier New", Courier, monospace;
    font-size: 0.95em;
    line-height: 1.6;
}
.highlight-box a { color: #ff9966; }

/* ARTICLE LIST / LINK LISTS */
.article-list {
    list-style: none;
    padding: 0;
}
.article-list li {
    background: #fff;
    border: 1px solid #ccc;
    border-left: 4px solid #cc3300;
    margin-bottom: 12px;
    padding: 12px 16px;
}
.article-list li a {
    font-family: Verdana, Geneva, sans-serif;
    font-size: 0.95em;
    font-weight: bold;
    text-decoration: none;
}
.article-list li a:hover { text-decoration: underline; }
.article-list li .desc {
    display: block;
    font-size: 0.85em;
    color: #666;
    margin-top: 4px;
    font-style: italic;
}

/* SIDEBAR-STYLE BOXES */
.see-also {
    background: #fff;
    border: 2px solid #999;
    padding: 14px 18px;
    margin: 28px 0;
}
.see-also h4 {
    font-family: Verdana, Geneva, sans-serif;
    font-size: 0.9em;
    color: #1a1a2e;
    text-transform: uppercase;
    margin-bottom: 8px;
    letter-spacing: 1px;
}
.see-also ul {
    list-style: square;
    padding-left: 20px;
}
.see-also ul li {
    font-size: 0.9em;
    margin-bottom: 4px;
}

/* JARGON DEFINITION BOX */
.jargon-card {
    background: #fff;
    border: 2px solid #1a1a2e;
    margin-bottom: 20px;
    padding: 0;
}
.jargon-card .jargon-header {
    background: #1a1a2e;
    color: #cc3300;
    padding: 10px 16px;
    font-family: "Courier New", Courier, monospace;
    font-size: 1.3em;
}
.jargon-card .jargon-body {
    padding: 16px;
}
.jargon-card .label {
    font-family: Verdana, Geneva, sans-serif;
    font-size: 0.75em;
    text-transform: uppercase;
    color: #999;
    letter-spacing: 1px;
    margin-bottom: 2px;
}

/* QUIZ STYLES */
.quiz-option {
    background: #fff;
    border: 1px solid #ccc;
    padding: 10px 14px;
    margin-bottom: 8px;
    cursor: default;
    font-size: 0.95em;
}
.quiz-option strong { color: #1a1a2e; }

/* HOME FEATURED */
.home-intro {
    background: #1a1a2e;
    color: #e0ddd5;
    padding: 25px;
    margin-bottom: 25px;
    border: 2px solid #cc3300;
    font-size: 1.05em;
    text-align: center;
}
.home-intro .manifesto {
    font-family: "Courier New", Courier, monospace;
    font-size: 1.15em;
    color: #cc3300;
    margin-bottom: 12px;
}

.section-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    margin: 20px 0;
}
.section-card {
    background: #fff;
    border: 1px solid #ccc;
    border-top: 3px solid #cc3300;
    padding: 16px;
}
.section-card h3 {
    margin-top: 0;
    font-size: 1em;
}
.section-card h3 a { text-decoration: none; color: #1a1a2e; }
.section-card h3 a:hover { color: #cc3300; }
.section-card p {
    font-size: 0.85em;
    color: #666;
    margin-bottom: 0;
}

/* FOOTER */
#site-footer {
    background: #222;
    border-top: 3px solid #cc3300;
    color: #888;
    text-align: center;
    padding: 20px;
    font-family: Verdana, Geneva, sans-serif;
    font-size: 0.75em;
}
#site-footer a { color: #aaa; }
#site-footer a:hover { color: #cc3300; }
#site-footer .footer-nav {
    margin-bottom: 10px;
}
#site-footer .footer-nav a {
    padding: 0 8px;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 1px;
}
#site-footer .copyright {
    color: #555;
    margin-top: 8px;
}

/* BREADCRUMB */
.breadcrumb {
    font-family: Verdana, Geneva, sans-serif;
    font-size: 0.75em;
    color: #999;
    margin-bottom: 15px;
    text-transform: uppercase;
    letter-spacing: 1px;
}
.breadcrumb a { color: #888; text-decoration: none; }
.breadcrumb a:hover { color: #cc3300; }

/* BACK LINK */
.back-link {
    margin-top: 25px;
    font-family: Verdana, Geneva, sans-serif;
    font-size: 0.85em;
}
.back-link a { text-decoration: none; }
.back-link a:before { content: "\2190 "; }

/* EXTERNAL LINK MARKER */
a.ext:after { content: " \2197"; font-size: 0.7em; }

/* RESPONSIVE */
@media (max-width: 700px) {
    #site-header h1 { font-size: 1.5em; }
    #site-header .tagline { font-size: 0.8em; }
    #main-nav a { font-size: 0.7em; padding: 4px 6px; }
    #page-wrap { padding: 15px 12px 30px; }
    h2 { font-size: 1.4em; }
    .section-grid { grid-template-columns: 1fr; }
    .highlight-box { padding: 12px 14px; font-size: 0.85em; }
}

@media (max-width: 480px) {
    #site-header h1 { font-size: 1.2em; letter-spacing: 0; }
    #main-nav { padding: 6px 0; }
    #main-nav a { display: inline-block; margin: 2px 0; padding: 4px 5px; font-size: 0.65em; }
    h2 { font-size: 1.2em; }
    .article-list li { padding: 10px 12px; }
}

/* COUNTER / HIT COUNTER RETRO */
.hit-counter {
    display: inline-block;
    background: #000;
    color: #0f0;
    font-family: "Courier New", Courier, monospace;
    padding: 2px 8px;
    font-size: 0.8em;
    border: 1px inset #555;
}

/* HR */
hr {
    border: none;
    border-top: 1px dashed #aaa;
    margin: 25px 0;
}
