<style>
.card p { color: #58626a; margin-bottom: 14px; }
.read-more { color: var(--brand); font-weight: 700; }
.read-more:hover { color: var(--brand-600); }


/* Категории */
.categories { background: #f1f8ff; }
.grid-cat { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 18px; }
.cat { background: var(--card); border-radius: var(--radius); padding: 26px; text-align: center; box-shadow: 0 5px 15px rgba(0,0,0,.05); transition: transform .2s ease; }
.cat:hover { transform: translateY(-4px); }
.cat .ico { font-size: 34px; margin-bottom: 8px; color: var(--brand); }
.cat h3 { margin: 6px 0 6px; }
.cat p { color: var(--muted); font-size: 14px; }


/* Подписка */
.newsletter { color: #fff; background-image: linear-gradient(rgba(0,0,0,.7), rgba(0,0,0,.7)), url('https://images.unsplash.com/photo-1493558103817-58b2924bce98?q=80&w=1600&auto=format&fit=crop'); background-size: cover; background-position: center; text-align: center; }
.newsletter .container { padding-top: 64px; padding-bottom: 64px; }
.newsletter h2 { font-size: clamp(22px, 3vw, 36px); margin-bottom: 10px; }
.newsletter p { max-width: 640px; margin: 0 auto 18px; }
.form { display: flex; gap: 0; max-width: 520px; margin: 0 auto; }
.form input[type=email] { flex: 1; padding: 14px 16px; border: 0; border-radius: 999px 0 0 999px; }
.form button { border: 0; padding: 14px 22px; border-radius: 0 999px 999px 0; background: var(--brand); color: #fff; font-weight: 800; cursor: pointer; }
.form button:hover { background: var(--brand-600); }
@media (max-width: 560px){
.form { flex-direction: column; gap: 10px; }
.form input[type=email], .form button { border-radius: 999px; }
}


/* Футер */
footer { background: #2c3e50; color: #ecf0f1; }
.footer { padding: 56px 0 28px; }
.f-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px,1fr)); gap: 32px; margin-bottom: 32px; }
.footer h3 { font-size: 18px; margin-bottom: 10px; position: relative; padding-bottom: 10px; }
.footer h3:after { content: ""; position: absolute; left: 0; bottom: 0; width: 42px; height: 2px; background: var(--brand); }
.footer p { color: #bdc3c7; }
.f-links { list-style: none; display: grid; gap: 8px; margin-top: 6px; }
.f-links a { color: #bdc3c7; }
.f-links a:hover { color: #fff; }
.social { display: flex; gap: 12px; margin-top: 14px; }
.social a { display: inline-grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; background: rgba(255,255,255,.12); }
.social a:hover { background: var(--brand); color: #fff; transform: translateY(-2px); }
.copy { text-align: center; border-top: 1px solid rgba(255,255,255,.12); padding: 18px 0; font-size: 14px; color: #bdc3c7; }


/* Снижаем анимации если надо */
@media (prefers-reduced-motion: reduce) {
* { transition: none !important; animation: none !important; }
}
</style>