/* Renfrew County Guide - Custom Overrides */
@import url('https://fonts.googleapis.com/css2?family=Source+Serif+4:wght@400;600;700&family=Inter:wght@400;500;600&display=swap');

:root {
    --rc-forest: #2e5339;
    --rc-forest-light: #3d7a4f;
    --rc-brown: #6b4423;
    --rc-slate: #2c3e50;
    --rc-cream: #faf8f4;
    --rc-warm: #f3efe8;
    --rc-text: #383838;
    --rc-muted: #6b7280;
}

body { font-family: 'Inter', sans-serif; background: var(--rc-cream); color: var(--rc-text); }
h1,.h1,h2,.h2,h3,.h3,h4,.h4 { font-family: 'Source Serif 4', Georgia, serif; color: var(--rc-slate); }
a { color: var(--rc-forest); }
a:hover { color: var(--rc-forest-light); }

/* Navbar */
.navbar { background-color: var(--rc-slate) !important; }
.navbar-brand { font-family: 'Source Serif 4', serif; font-weight: 700; font-size: 1.15rem; }

/* Header */
.page-header { background-size: cover; background-position: center; position: relative; padding: 4rem 0; margin-bottom: 2rem; }
.page-header::before { content:''; position:absolute; inset:0; background: linear-gradient(135deg, rgba(44,62,80,0.7), rgba(46,83,57,0.5)); }
.page-header .container { position: relative; }
.page-header h1 { color: #fff; font-size: 2.4rem; text-shadow: 1px 1px 4px rgba(0,0,0,0.3); }
.page-header p { color: rgba(255,255,255,0.9); font-size: 1.1rem; }

/* Cards */
.card { border: none; box-shadow: 0 1px 6px rgba(0,0,0,0.06); transition: transform 0.2s, box-shadow 0.2s; }
.card:hover { transform: translateY(-2px); box-shadow: 0 4px 16px rgba(0,0,0,0.1); }
.card-img-top { height: 200px; object-fit: cover; }
.card-title a { color: var(--rc-slate); text-decoration: none; }
.card-title a:hover { color: var(--rc-forest); }

/* Sidebar */
.sidebar .card { background: #fff; }
.sidebar .card-header { background: var(--rc-forest); color: #fff; font-weight: 600; font-size: 0.85rem; text-transform: uppercase; letter-spacing: 0.04em; border: none; }
.sidebar a { color: var(--rc-forest); }

/* Article pages */
.article-body h2 { font-size: 1.5rem; margin: 2rem 0 0.75rem; padding-bottom: 0.4rem; border-bottom: 2px solid var(--rc-forest); }
.article-body p { font-size: 1.05rem; line-height: 1.8; margin-bottom: 1.2rem; }
.article-body ul { margin-bottom: 1.2rem; }
.article-body ul li { margin-bottom: 0.3rem; }
.article-body img { border-radius: 6px; margin: 1.5rem 0; width: 100%; }
.article-body .caption { font-size: 0.82rem; color: var(--rc-muted); font-style: italic; text-align: center; margin-top: -1rem; margin-bottom: 1.5rem; }

/* Related box */
.related-box { background: var(--rc-warm); border-radius: 6px; padding: 1.25rem; margin-top: 2rem; }
.related-box h4 { font-size: 0.9rem; text-transform: uppercase; letter-spacing: 0.04em; color: var(--rc-forest); margin-bottom: 0.75rem; }
.related-box ul { list-style: none; padding: 0; margin: 0; }
.related-box ul li { padding: 0.3rem 0; border-bottom: 1px solid rgba(0,0,0,0.06); }
.related-box ul li:last-child { border-bottom: none; }

/* Disclaimer */
.disclaimer { background: var(--rc-warm); border-radius: 4px; padding: 0.8rem 1rem; font-size: 0.82rem; color: var(--rc-muted); margin: 1.5rem 0; font-style: italic; }

/* Footer */
footer { background-color: var(--rc-slate) !important; }

/* Btn */
.btn-primary { background-color: var(--rc-forest); border-color: var(--rc-forest); }
.btn-primary:hover { background-color: var(--rc-forest-light); border-color: var(--rc-forest-light); }

/* Badge */
.badge-town { background: var(--rc-forest); font-size: 0.7rem; font-weight: 600; }
.badge-guide { background: var(--rc-brown); font-size: 0.7rem; font-weight: 600; }
