/* Corremonts — outdoor trail-running theme over Bulma
   Palette: crimson #B31E22, pine #3E7D53, charcoal #242424 */

:root {
  --bk-bg: #FFFFFF;
  --bk-ink: #242424;
  --bk-text: #3A3A3A;
  --bk-red: #B31E22;
  --bk-lime: #3E7D53;
  --bk-subtle: #E4E4E4;
}

body { background: #fafafa; color: var(--bk-text); font-family: 'Inter', system-ui, sans-serif; font-size: 1rem; line-height: 1.65; }
h1, h2, h3, h4, .title, .navbar-brand .brandmark { font-family: 'Oswald', sans-serif; color: var(--bk-ink); font-weight: 700; }
h1, .title.is-1 { font-size: clamp(1.9rem, 4vw, 2.8rem); }
a { color: var(--bk-red); }
a:hover { color: #8f181b; }

.container-wide { max-width: 1180px; margin-inline: auto; padding-inline: 1rem; }
main { min-height: 60vh; padding-block: 1.5rem; }

/* ---------- Navbar ---------- */
.navbar { background: var(--bk-bg); border-bottom: 3px solid var(--bk-red); }
.navbar-brand .brandmark { font-family: 'Oswald'; font-weight: 800; font-size: 1.4rem; color: var(--bk-ink); text-transform: uppercase; letter-spacing: 0.03em; }
.navbar-item, .navbar-link { color: var(--bk-ink); font-weight: 500; }
.navbar-item:hover, .navbar-link:hover { background: #fafafa !important; color: var(--bk-red) !important; }
.navbar-item.has-dropdown:hover .navbar-link { background: #fafafa; color: var(--bk-red); }
.navbar-dropdown { border-top: 2px solid var(--bk-red); }
.navbar-dropdown .navbar-item:hover { color: var(--bk-red); }

/* ---------- Hero ---------- */
.bk-hero { background: linear-gradient(120deg, var(--bk-ink), #333); color: #fff; padding: 3rem 1.5rem; }
.bk-hero .title { color: #fff; }
.bk-hero .btn-cta { display: inline-block; background: var(--bk-red); color: #fff; font-weight: 700; padding: 0.6rem 1.4rem; border-radius: 4px; margin-top: 1rem; }
.bk-hero .btn-cta:hover { background: #fff; color: var(--bk-red); }

/* ---------- Product cards ---------- */
.card { border: 1px solid var(--bk-subtle); box-shadow: none; transition: box-shadow .2s ease, transform .2s ease; height: 100%; }
.card:hover { box-shadow: 0 8px 20px rgba(0,0,0,.1); transform: translateY(-3px); }
.card .card-image img { aspect-ratio: 1/1; object-fit: contain; background: #fff; padding: 0.5rem; }
.card .card-content { padding: 0.9rem; }
.card .card-title { font-family: 'Oswald'; font-weight: 600; font-size: 1.05rem; }
.card:hover .card-title a { color: var(--bk-red); }
.tag-red { background: var(--bk-red); color: #fff; font-weight: 600; text-transform: uppercase; font-size: 0.7rem; }
.read-more { color: var(--bk-red); font-weight: 600; }

/* ---------- Prose ---------- */
.content img, .prose img { max-width: 100%; height: auto; }
.content a, .prose a { color: var(--bk-red); text-decoration: underline; }
.content a:hover { color: #8f181b; }
.article-meta { color: var(--bk-red); font-family: 'Oswald'; font-weight: 600; font-size: 0.85rem; }
.article-lead { font-size: 1.15rem; color: #555; border-left: 4px solid var(--bk-red); padding-left: 1rem; }
.toc-top { border: 1px solid var(--bk-subtle); background: #fff; padding: 0.8rem 1rem; margin-bottom: 1.5rem; border-radius: 6px; }
.toc-top ul { list-style: none; display: flex; flex-wrap: wrap; gap: 0.4rem 1.2rem; margin: 0.4rem 0 0; padding: 0; }
.bk-gallery { display: grid; grid-template-columns: repeat(auto-fill, minmax(170px,1fr)); gap: 0.6rem; }
.bk-gallery img { width: 100%; height: 100%; object-fit: cover; border: 1px solid var(--bk-subtle); }
table td, table th { border: 1px solid var(--bk-subtle); }

/* ---------- Footer ---------- */
.footer { background: var(--bk-ink); color: #cfcfcf; }
.footer a { color: #cfcfcf; }
.footer a:hover { color: var(--bk-lime); }
.footer .brandmark { color: #fff; font-family: 'Oswald'; font-weight: 800; font-size: 1.3rem; }
.footer-copy { color: #8a8a8a; font-size: 0.82rem; margin-top: 1rem; border-top: 1px solid #333; padding-top: 1rem; }

@media print { .navbar, .footer, .bk-hero { display: none; } a { color: #000; } }
