:root { --bg: #f4f6f8; --ink: #1c2530; --muted: #6b7785; --accent: #2f6f9f; }
* { box-sizing: border-box; }
body { margin: 0; font: 16px/1.6 Georgia, "Times New Roman", serif; color: var(--ink); background: var(--bg); }
a { color: var(--accent); text-decoration: none; }
.top { display: flex; justify-content: space-between; align-items: center; max-width: 1080px; margin: 0 auto; padding: 22px 20px; }
.logo { font: 600 24px/1 "Helvetica Neue", Arial, sans-serif; letter-spacing: .5px; color: var(--ink); }
.logo span { color: var(--accent); }
nav a { margin-left: 22px; font: 15px "Helvetica Neue", Arial, sans-serif; color: var(--muted); }
.hero { max-width: 760px; margin: 30px auto 40px; padding: 0 20px; text-align: center; }
.hero h1 { font-size: 40px; font-weight: 400; margin: 0 0 12px; }
.hero p, .page p { color: var(--muted); }
.grid { max-width: 1080px; margin: 0 auto; padding: 0 20px 40px; display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 34px; }
.post h2 { font-size: 21px; font-weight: 400; margin: 14px 0 2px; }
.meta { font: 13px "Helvetica Neue", Arial, sans-serif; color: var(--muted); margin: 0 0 8px; }
.ph { aspect-ratio: 4 / 3; border-radius: 4px; }
.ph1 { background: linear-gradient(180deg, #f7d9b9 0%, #dfe6ee 45%, #b9c7d6 70%, #8ea1b5 100%); }
.ph2 { background: radial-gradient(ellipse at 30% 30%, #6effb4 0%, transparent 45%), linear-gradient(180deg, #0b1630 0%, #13304a 60%, #e6edf3 61%, #b7c3cf 100%); }
.ph3 { background: linear-gradient(180deg, #2a4a7b 0%, #5d7fb0 50%, #c9d8ea 51%, #8fa7c4 100%); }
.ph4 { background: linear-gradient(180deg, #c9d3dd 0%, #eef2f6 40%, #7d8f86 41%, #f4f6f8 100%); }
.ph5 { background: linear-gradient(180deg, #3c3f6b 0%, #c47c9a 45%, #f2c6b4 55%, #e9eef3 56%, #aebbc8 100%); }
.ph6 { background: linear-gradient(180deg, #9aa7b4 0%, #d9e0e6 55%, #ffffff 56%, #e3e8ed 100%); }
.page { max-width: 720px; margin: 30px auto 60px; padding: 0 20px; }
.foot { text-align: center; font: 13px "Helvetica Neue", Arial, sans-serif; color: var(--muted); padding: 30px 20px 50px; }
