/* Reset and base styles */ * { box-sizing: border-box; } body { font-family: -apple-system, system-ui, sans-serif; font-size: 16px; line-height: 1.6; color: #2c3e50; margin: 0 auto; padding: 2rem 1rem; max-width: 50rem; background: #fff; } /* Typography hierarchy */ h1 { font-size: 1.75rem; font-weight: 700; color: #2c3e50; margin: 0 0 0.5rem 0; line-height: 1.2; } h2 { font-size: 1.25rem; font-weight: 600; color: #34495e; margin: 2rem 0 1rem 0; padding-bottom: 0.5rem; border-bottom: 2px solid #e9ecef; } h3 { font-size: 1.1rem; font-weight: 600; color: #495057; margin: 1.5rem 0 0.75rem 0; } /* Header section */ #title-block-header { margin-bottom: 2rem; padding-bottom: 1rem; border-bottom: 3px solid #3498db; } /* Contact info and summary */ .contact-info { font-size: 0.95rem; color: #6c757d; margin-bottom: 1.5rem; } .contact-info a { color: #3498db; text-decoration: none; } .contact-info a:hover { text-decoration: underline; } /* Lists */ ul { margin: 1rem 0; padding-left: 1.5rem; } li { margin-bottom: 0.5rem; } /* Job tables */ table { width: 100%; margin: 1rem 0; border-collapse: collapse; } td { padding: 0.25rem 1rem 0.25rem 0; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif; font-size: 0.9rem; vertical-align: top; } td:last-child { text-align: right; font-weight: 500; color: #6c757d; } td:first-child { font-weight: 600; color: #495057; } td:nth-child(2) { color: #6c757d; } /* Links */ a { color: #3498db; text-decoration: none; transition: color 0.2s ease; } a:hover { color: #2980b9; text-decoration: underline; } /* Strong text for emphasis */ strong { font-weight: 600; color: #2c3e50; } /* Improved spacing for sections */ #experience { margin-top: 2rem; } /* Company sections */ h2[id*="roblox"], h2[id*="twitter"], h2[id*="say-media"], h2[id*="linkfluence"] { margin-top: 2.5rem; font-size: 1.3rem; color: #2c3e50; } /* Better paragraph spacing */ p { margin: 0.75rem 0; } /* Print styles */ @media print { body { font-size: 12px; line-height: 1.4; padding: 0; } h1 { font-size: 1.4rem; } h2 { font-size: 1.1rem; page-break-after: avoid; } table { page-break-inside: avoid; } a { color: inherit; text-decoration: none; } } /* Mobile responsiveness */ @media (max-width: 600px) { body { padding: 1rem 0.75rem; font-size: 15px; } h1 { font-size: 1.5rem; } table { font-size: 0.85rem; } td:last-child { text-align: left; font-size: 0.8rem; } }