:root{
  --rdc-gravy:#7a3e12;
  --rdc-gold:#f4b400;
  --rdc-sage:#2f6f4e;
  --rdc-cream:#fff7ef;
  --rdc-ink:#1f2328;
}

html{scroll-behavior:smooth;}
body{
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Inter, Arial, sans-serif;
  color: var(--rdc-ink);
  background: radial-gradient(1200px 700px at 20% -10%, rgba(244,180,0,.12), transparent 60%),
              radial-gradient(1000px 600px at 90% 10%, rgba(47,111,78,.10), transparent 55%),
              linear-gradient(180deg, #ffffff, #fff9f3);
}

.navbar{
  backdrop-filter: blur(10px);
  background: rgba(255,255,255,.75);
  border-bottom: 1px solid rgba(0,0,0,.06);
}

.brand-mark{width:32px;height:32px;}
.brand-title{letter-spacing:.2px;}

.btn-primary{
  --bs-btn-bg: var(--rdc-gravy);
  --bs-btn-border-color: var(--rdc-gravy);
  --bs-btn-hover-bg: #5f2f0e;
  --bs-btn-hover-border-color: #5f2f0e;
  --bs-btn-active-bg: #5f2f0e;
  --bs-btn-active-border-color: #5f2f0e;
}

.badge-rdc{
  background: rgba(244,180,0,.16);
  color: #5a3a00;
  border: 1px solid rgba(244,180,0,.35);
}

.hero{
  position: relative;
  overflow: hidden;
  border-bottom: 1px solid rgba(0,0,0,.06);
}

.hero::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(120deg, rgba(122,62,18,.85), rgba(122,62,18,.55) 45%, rgba(47,111,78,.30)),
    url('https://source.unsplash.com/1600x900/?sunday-roast,roast-dinner') center/cover no-repeat;
  filter:saturate(1.05);
  transform: scale(1.04);
}

.hero .container{
  position: relative;
  z-index: 1;
}

.hero-card{
  background: rgba(255,255,255,.92);
  border: 1px solid rgba(255,255,255,.55);
  box-shadow: 0 10px 30px rgba(0,0,0,.18);
  border-radius: 20px;
}

.section-title{
  font-weight: 750;
  letter-spacing: -0.02em;
}

.muted{color: rgba(31,35,40,.72);}

.card{
  border-radius: 18px;
  border: 1px solid rgba(0,0,0,.08);
  box-shadow: 0 10px 30px rgba(0,0,0,.06);
}

.card-img-top{
  border-top-left-radius: 18px;
  border-top-right-radius: 18px;
  height: 190px;
  object-fit: cover;
}

.kpi{
  background: rgba(255,255,255,.8);
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 18px;
  padding: 18px;
  height: 100%;
}

.kpi .num{font-size: 2rem; font-weight: 800; letter-spacing:-.03em;}

.quote{
  background: rgba(255,255,255,.85);
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 18px;
  padding: 18px;
}

.footer{
  background: #0f1411;
  color: rgba(255,255,255,.86);
}

.footer a{color: rgba(255,255,255,.86);}
.footer a:hover{color:#fff;}

.divider{
  height:1px;
  background: rgba(0,0,0,.08);
}

.article-hero{
  position: relative;
  overflow: hidden;
  border-bottom: 1px solid rgba(0,0,0,.06);
}

.article-hero::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(120deg, rgba(15,20,17,.78), rgba(15,20,17,.35)),
    var(--hero-image) center/cover no-repeat;
  transform: scale(1.03);
}

.article-hero .container{position:relative; z-index:1;}

.pro-tip{
  border-left: 4px solid var(--rdc-gold);
  background: rgba(244,180,0,.10);
  padding: 14px 14px;
  border-radius: 12px;
}

.smallprint{font-size:.92rem; color: rgba(31,35,40,.70);}
