body {
    font-family: 'Times New Roman', Times, serif;
    font-size: 16px;
    background: #000033;
    color: #ffffff;
    margin: 0;
    padding: 0;
}

/* Starfield-ish background */
body::before {
    content: '';
    position: fixed;
    top: 0; left: 0; right: 0; bottom: 0;
    background-image:
        radial-gradient(1px 1px at 10% 15%, #ffffff 0%, transparent 100%),
        radial-gradient(1px 1px at 25% 40%, #aaaaff 0%, transparent 100%),
        radial-gradient(1px 1px at 50% 10%, #ffffff 0%, transparent 100%),
        radial-gradient(1px 1px at 70% 60%, #ffffff 0%, transparent 100%),
        radial-gradient(1px 1px at 85% 25%, #aaaaff 0%, transparent 100%),
        radial-gradient(1px 1px at 33% 80%, #ffffff 0%, transparent 100%),
        radial-gradient(1px 1px at 60% 90%, #aaaaff 0%, transparent 100%),
        radial-gradient(1px 1px at 90% 75%, #ffffff 0%, transparent 100%),
        radial-gradient(1px 1px at 45% 55%, #ffffff 0%, transparent 100%),
        radial-gradient(1px 1px at 15% 65%, #aaaaff 0%, transparent 100%);
    pointer-events: none;
    z-index: 0;
}

#wrapper {
    max-width: 720px;
    margin: 0 auto;
    padding: 20px 16px 40px;
    position: relative;
    z-index: 1;
}

/* Site title */
#site-title {
    text-align: center;
    font-family: Georgia, 'Times New Roman', serif;
    font-size: 2.75em;
    font-weight: bold;
    color: #ff3333;
    text-shadow: 2px 2px 0px #000000;
    margin: 20px 0 4px;
}

#site-subtitle {
    text-align: center;
    font-family: Georgia, 'Times New Roman', serif;
    font-size: 1em;
    color: #ffdd00;
    font-style: italic;
    margin: 0 0 14px;
}

/* Navigation */
nav {
    text-align: center;
    margin-bottom: 10px;
    background: #000066;
    border: 2px solid #ffdd00;
    padding: 8px;
}

nav a {
    color: #ffdd00;
    text-decoration: underline;
    font-family: Georgia, 'Times New Roman', serif;
    font-weight: bold;
    font-size: 1.05em;
    margin: 0 14px;
}

nav a:visited {
    color: #ffdd00;
}

nav a:hover {
    color: #ff3333;
}

nav a.active {
    color: #ffffff;
    text-decoration: none;
}

hr {
    border: none;
    border-top: 3px solid #ffdd00;
    margin: 16px 0;
}

/* Content box */
.content-box {
    background: #ffffff;
    color: #000000;
    border: 3px solid #ffdd00;
    padding: 16px 20px;
    margin-bottom: 16px;
}

h2 {
    font-family: Georgia, 'Times New Roman', serif;
    font-size: 1.2em;
    font-weight: bold;
    color: #000066;
    margin: 0 0 10px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

p {
    margin: 0 0 10px;
    line-height: 1.6;
    color: #111111;
}

/* Experience */
.job {
    margin-bottom: 16px;
    border-bottom: 1px dashed #999999;
    padding-bottom: 12px;
}

.job:last-child {
    border-bottom: none;
    padding-bottom: 0;
    margin-bottom: 0;
}

.job-header {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
}

.job-company {
    font-family: 'Arial Black', Impact, sans-serif;
    font-weight: bold;
    color: #000066;
    font-size: 1.05em;
}

.job-date {
    font-style: italic;
    color: #555555;
    font-size: 0.9em;
}

.job-title {
    font-style: italic;
    color: #333333;
    margin-bottom: 6px;
    font-size: 0.95em;
}

/* Skills */
.skill-list {
    margin: 0 0 0 20px;
    padding: 0;
    line-height: 2;
    color: #111111;
}

.skill-list li::marker {
    color: #00aa00;
}

/* Page headers */
.page-header {
    margin-bottom: 14px;
}

.page-header h1 {
    font-family: Georgia, 'Times New Roman', serif;
    font-size: 2em;
    font-weight: bold;
    color: #000066;
    margin: 0 0 4px;
}

.page-header p {
    font-style: italic;
    color: #333;
}

/* Blog */
.blog-list {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.blog-preview {
    border-bottom: 1px dashed #999;
    padding-bottom: 14px;
}

.blog-preview time {
    font-style: italic;
    color: #555;
    font-size: 0.9em;
}

.blog-preview h2 {
    margin-top: 4px;
    text-transform: none;
    letter-spacing: 0;
}

.blog-preview h2 a {
    color: #0000cc;
}

.blog-preview h2 a:hover {
    color: #cc0000;
}

/* Contact */
.contact-links {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 10px;
}

.contact-links a {
    color: #0000cc;
    font-weight: bold;
}

.contact-links a:hover {
    color: #cc0000;
}

/* Footer */
footer {
    text-align: center;
    margin-top: 24px;
    font-family: Georgia, 'Times New Roman', serif;
    font-size: 0.85em;
    color: #aaaaaa;
    font-style: italic;
}
