/* CSS Reset and Base Styles */ * { margin: 0; padding: 0; box-sizing: border-box; } body { font-family: 'Courier New', 'Courier', 'Monaco', 'Lucida Console', monospace; line-height: 1.7; color: #3e2723; background-color: #f4ecd8; } /* Navbar Styles */ .navbar { background-color: #5d4037; box-shadow: 0 2px 4px rgba(62, 39, 35, 0.3); position: sticky; top: 0; z-index: 1000; border-bottom: 2px solid #4e342e; } .nav-container { max-width: 1200px; margin: 0 auto; padding: 1rem 2rem; display: flex; justify-content: space-between; align-items: center; } .nav-brand { color: #f4ecd8; text-decoration: none; font-size: 1.5rem; font-weight: bold; } .nav-brand:hover { color: #d7ccc8; } .nav-menu { list-style: none; display: flex; gap: 2rem; } .nav-menu a { color: #f4ecd8; text-decoration: none; font-size: 1rem; transition: color 0.3s ease; } .nav-menu a:hover { color: #d7ccc8; } /* Main Container */ .container { max-width: 1200px; margin: 0 auto; padding: 2rem; } /* Hero Section */ .hero { background-color: #efebe9; padding: 3rem 2rem; border-radius: 4px; box-shadow: 0 2px 8px rgba(62, 39, 35, 0.2); margin-bottom: 2rem; text-align: center; border: 1px solid #d7ccc8; } .hero h1 { font-size: 2.5rem; color: #4e342e; margin-bottom: 1rem; } .hero p { font-size: 1.2rem; color: #6d4c41; } /* Content Section */ .content-section { background-color: #efebe9; padding: 2rem; margin-bottom: 2rem; border-radius: 4px; box-shadow: 0 2px 8px rgba(62, 39, 35, 0.2); border: 1px solid #d7ccc8; } .content-section h2 { color: #4e342e; font-size: 2rem; margin-bottom: 1.5rem; border-bottom: 3px solid #8d6e63; padding-bottom: 0.5rem; } .contact-info p, .genealogy-blurb p { margin-bottom: 1rem; line-height: 1.8; color: #5d4037; } .contact-info strong { color: #4e342e; } /* Footer */ .footer { background-color: #5d4037; color: #f4ecd8; text-align: center; padding: 2rem; margin-top: 3rem; border-top: 2px solid #4e342e; } .footer p { font-size: 0.9rem; } /* Blog Styles */ .section-description { color: #6d4c41; font-style: italic; margin-bottom: 1.5rem; } .blog-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 1.5rem; margin-top: 1.5rem; } .blog-card { background-color: #faf8f3; border: 1px solid #d7ccc8; border-radius: 4px; padding: 1.5rem; transition: transform 0.2s ease, box-shadow 0.2s ease; position: relative; } .blog-card:hover { transform: translateY(-2px); box-shadow: 0 4px 12px rgba(62, 39, 35, 0.25); } .blog-card h3 { color: #4e342e; margin-bottom: 0.5rem; font-size: 1.3rem; } .blog-card h3 a { color: #4e342e; text-decoration: none; transition: color 0.3s ease; } .blog-card h3 a:hover { color: #6d4c41; } .blog-meta { color: #8d6e63; font-size: 0.9rem; margin-bottom: 0.75rem; } .blog-card p { color: #5d4037; line-height: 1.6; } .blog-card.private { border-color: #a1887f; background-color: #f5f5f0; } .private-badge { display: inline-block; background-color: #8d6e63; color: #f4ecd8; padding: 0.25rem 0.75rem; border-radius: 4px; font-size: 0.85rem; margin-top: 0.5rem; } /* Resume Styles */ .skills-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 2rem; margin-top: 1.5rem; } .skill-category h3 { color: #4e342e; margin-bottom: 1rem; font-size: 1.2rem; border-bottom: 2px solid #8d6e63; padding-bottom: 0.5rem; } .skill-category ul { list-style: none; padding-left: 0; } .skill-category li { padding: 0.5rem 0; color: #5d4037; position: relative; padding-left: 1.5rem; } .skill-category li:before { content: "▸"; position: absolute; left: 0; color: #8d6e63; font-weight: bold; } .experience-item { margin-bottom: 2rem; } .experience-item:last-child { margin-bottom: 0; } .experience-item h3 { color: #4e342e; font-size: 1.4rem; margin-bottom: 0.5rem; } .job-meta { color: #8d6e63; font-size: 0.95rem; margin-bottom: 1rem; font-style: italic; } .experience-item ul { margin-top: 1rem; padding-left: 1.5rem; } .experience-item li { color: #5d4037; margin-bottom: 0.5rem; line-height: 1.7; } .experience-item p { color: #5d4037; line-height: 1.7; } /* Recipe Page Styles */ .recipe-card { background-color: #faf8f3; border: 1px solid #d7ccc8; border-radius: 4px; padding: 1.5rem; margin-bottom: 1.5rem; } .recipe-card h3 { color: #4e342e; border-bottom: 2px solid #8d6e63; padding-bottom: 0.5rem; margin-bottom: 1rem; } .recipe-year { color: #8d6e63; font-style: italic; font-size: 0.9rem; } /* Responsive Design */ @media (max-width: 768px) { .nav-container { flex-direction: column; gap: 1rem; } .nav-menu { flex-direction: column; gap: 1rem; text-align: center; } .container { padding: 1rem; } .hero h1 { font-size: 2rem; } .content-section h2 { font-size: 1.5rem; } .blog-grid { grid-template-columns: 1fr; } .skills-grid { grid-template-columns: 1fr; } }