/* ============================================ Resume Stylesheet — Paul Trowbridge Usage: pandoc resume.md -o resume.html --css styles.css --standalone ============================================ */ /* --- Reset & Base --- */ *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; } :root { --blue-dark: #1F4E79; --blue-mid: #2E75B6; --blue-light: #D6E4F0; --gray-dark: #333333; --gray-mid: #595959; --gray-light: #f5f7fa; --text: #222222; --font: 'Calibri', 'Gill Sans', Arial, sans-serif; } body { font-family: var(--font); font-size: 15px; line-height: 1.6; color: var(--text); background: #ffffff; max-width: 860px; margin: 40px auto; padding: 0 40px 60px; } /* --- Name (H1) --- */ h1 { font-size: 2.6em; color: var(--blue-dark); font-weight: 700; letter-spacing: 0.5px; margin-bottom: 4px; } /* Tagline paragraph immediately after h1 */ h1 + p { color: var(--gray-mid); font-size: 1em; margin-bottom: 12px; letter-spacing: 0.3px; } /* --- Horizontal Rule (section divider under name) --- */ hr { border: none; border-top: 3px solid var(--blue-mid); margin: 16px 0 24px; } /* --- Section Headers (H2) --- */ h2 { font-size: 0.78em; font-weight: 700; text-transform: uppercase; letter-spacing: 1.8px; color: var(--blue-dark); border-bottom: 2px solid var(--blue-mid); padding-bottom: 5px; margin-top: 32px; margin-bottom: 16px; } /* --- Company Name (H3) --- */ h3 { font-size: 1.1em; font-weight: 700; color: var(--gray-dark); margin-top: 20px; margin-bottom: 2px; } /* Company subtitle (italic paragraph after h3) */ h3 + p > em { font-size: 0.88em; color: var(--gray-mid); font-style: italic; } /* --- Role Title (H4) --- */ h4 { font-size: 1em; font-weight: 700; color: var(--blue-mid); margin-top: 14px; margin-bottom: 4px; } /* Date range inside strong inside h4 — handled by pandoc as strong */ h4 > strong { font-weight: 400; color: var(--gray-mid); font-style: italic; font-size: 0.92em; } /* --- Body Paragraphs --- */ p { margin-bottom: 8px; color: var(--gray-dark); } /* --- Bullet Lists --- */ ul { margin: 6px 0 10px 0; padding-left: 20px; list-style: none; } ul li { position: relative; padding-left: 16px; margin-bottom: 5px; color: var(--gray-dark); font-size: 0.97em; line-height: 1.55; } ul li::before { content: "•"; position: absolute; left: 0; color: var(--blue-mid); font-weight: 700; } /* --- Strong / Bold --- */ strong { color: var(--gray-dark); font-weight: 600; } /* --- Code (for tech skills inline) --- */ code { font-family: 'Consolas', 'Courier New', monospace; font-size: 0.9em; background: var(--gray-light); padding: 1px 5px; border-radius: 3px; color: var(--blue-dark); } /* --- Print Styles --- */ @media print { body { margin: 0; padding: 20px 36px; font-size: 13px; max-width: 100%; } h1 { font-size: 2em; } h2 { font-size: 0.72em; } /* Avoid breaking roles across pages */ h4 { page-break-after: avoid; } ul { page-break-inside: avoid; } h3 { page-break-after: avoid; } } /* --- Responsive (mobile) --- */ @media (max-width: 600px) { body { padding: 20px; font-size: 14px; } h1 { font-size: 2em; } }