:root {
  --bgk-ink: #14231d;
  --bgk-muted: #5c6c65;
  --bgk-green: #1e5a43;
  --bgk-green-2: #2f7a5d;
  --bgk-lime: #dbe9a6;
  --bgk-cream: #f6f3ea;
  --bgk-paper: #ffffff;
  --bgk-line: #dfe6e1;
  --bgk-shadow: 0 18px 60px rgba(20, 35, 29, .10);
}

.bgk-rrh { color: var(--bgk-ink); background: #fff; font-family: inherit; overflow: hidden; }
.bgk-rrh * { box-sizing: border-box; }
.bgk-shell { width: min(1180px, calc(100% - 36px)); margin: 0 auto; }
.bgk-section { padding: 88px 0; }
.bgk-eyebrow { display: inline-block; letter-spacing: .14em; font-size: 12px; font-weight: 800; color: var(--bgk-green-2); margin-bottom: 14px; }
.bgk-rrh h1, .bgk-rrh h2, .bgk-rrh h3, .bgk-rrh p { margin-top: 0; }
.bgk-rrh h1 { font-size: clamp(42px, 6vw, 78px); line-height: .98; letter-spacing: -.045em; max-width: 900px; margin-bottom: 24px; }
.bgk-rrh h2 { font-size: clamp(32px, 4vw, 52px); line-height: 1.02; letter-spacing: -.035em; margin-bottom: 18px; }
.bgk-rrh h3 { font-size: 22px; line-height: 1.15; letter-spacing: -.02em; }
.bgk-rrh p { color: var(--bgk-muted); line-height: 1.7; }

.bgk-hero { position: relative; background: radial-gradient(circle at 82% 12%, rgba(219,233,166,.30), transparent 24%), linear-gradient(135deg, #f8f5eb 0%, #f4f6f1 58%, #edf5ef 100%); padding: 96px 0 64px; border-bottom: 1px solid var(--bgk-line); }
.bgk-hero:before { content:""; position:absolute; inset:0; opacity:.28; background-image: linear-gradient(rgba(30,90,67,.08) 1px, transparent 1px), linear-gradient(90deg, rgba(30,90,67,.08) 1px, transparent 1px); background-size: 42px 42px; mask-image: linear-gradient(to bottom, black, transparent 75%); pointer-events:none; }
.bgk-hero-grid { position:relative; display:grid; grid-template-columns: 1.6fr .8fr; gap: 56px; align-items:end; }
.bgk-lead { font-size: 19px; max-width: 780px; }
.bgk-hero-actions { display:flex; gap:12px; flex-wrap:wrap; margin-top: 30px; }
.bgk-btn { display:inline-flex; align-items:center; justify-content:center; min-height:50px; padding: 0 22px; border-radius: 10px; text-decoration:none !important; font-weight:800; border:1px solid transparent; transition:.2s ease; }
.bgk-btn:hover { transform: translateY(-2px); }
.bgk-btn-primary { background: var(--bgk-green); color:#fff !important; box-shadow:0 10px 26px rgba(30,90,67,.22); }
.bgk-btn-secondary { background:#fff; color:var(--bgk-ink) !important; border-color:var(--bgk-line); }
.bgk-trust-row { display:flex; flex-wrap:wrap; gap:18px; margin-top:32px; font-size:13px; font-weight:700; color:#466056; }
.bgk-hero-panel { background:rgba(20,35,29,.97); color:#fff; border-radius:20px; padding:30px; box-shadow:var(--bgk-shadow); }
.bgk-hero-panel h2 { font-size:34px; margin-bottom:18px; }
.bgk-hero-panel ul { padding-left:20px; color:#dce7e1; line-height:1.9; margin:0 0 22px; }
.bgk-panel-kicker { color:var(--bgk-lime); font-weight:800; font-size:12px; text-transform:uppercase; letter-spacing:.12em; margin-bottom:14px; }
.bgk-text-link { color:var(--bgk-green) !important; font-weight:800; text-decoration:none !important; }
.bgk-hero-panel .bgk-text-link { color:var(--bgk-lime) !important; }

.bgk-quick-services { border-bottom:1px solid var(--bgk-line); background:#fff; }
.bgk-service-strip { display:grid; grid-template-columns:repeat(6,1fr); }
.bgk-service-chip { min-height:72px; display:flex; align-items:center; justify-content:center; text-align:center; gap:8px; padding:10px; border-right:1px solid var(--bgk-line); font-size:13px; font-weight:800; }
.bgk-service-chip:first-child { border-left:1px solid var(--bgk-line); }
.bgk-dot { width:8px; height:8px; background:var(--bgk-green-2); border-radius:99px; flex:0 0 auto; }

.bgk-section-head { display:grid; grid-template-columns: 1fr .8fr; gap:70px; align-items:end; margin-bottom:40px; }
.bgk-section-head p { font-size:17px; margin-bottom:4px; }
.bgk-section-head-narrow { grid-template-columns: 1fr .65fr; }

.bgk-heatmap-section { background:var(--bgk-cream); }
.bgk-heatmap-layout { display:grid; grid-template-columns:minmax(0,1.65fr) minmax(280px,.7fr); gap:26px; align-items:start; }
.bgk-heatmap-card, .bgk-opportunity-card { background:#fff; border:1px solid var(--bgk-line); border-radius:18px; box-shadow:0 14px 40px rgba(20,35,29,.06); }
.bgk-heatmap-card { padding:22px; }
.bgk-heatmap-toolbar { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; border-bottom:1px solid var(--bgk-line); padding-bottom:18px; margin-bottom:18px; }
.bgk-heatmap-toolbar > div { padding:12px; background:#f7f9f7; border-radius:10px; }
.bgk-label { display:block; color:#7b8882; font-size:11px; text-transform:uppercase; letter-spacing:.08em; margin-bottom:4px; }
.bgk-heatmap-toolbar strong { font-size:14px; }
.bgk-grid-wrap { position:relative; aspect-ratio:1/1; min-height:520px; border:1px solid #cfd8d3; border-radius:14px; overflow:hidden; background: linear-gradient(135deg,#eef1ed,#fbfbf8); }
.bgk-grid-lines { position:absolute; inset:0; background-image:linear-gradient(rgba(20,35,29,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(20,35,29,.06) 1px,transparent 1px); background-size:14.2857% 14.2857%; }
.bgk-grid { position:absolute; inset:6%; display:grid; grid-template-columns:repeat(7,1fr); grid-template-rows:repeat(7,1fr); }
.bgk-grid-cell { display:flex; align-items:center; justify-content:center; position:relative; }
.bgk-grid-cell.is-center:after { content:""; position:absolute; width:62%; height:62%; border:2px dashed rgba(20,35,29,.20); border-radius:50%; }
.bgk-rank { position:relative; z-index:2; width:46px; height:46px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-weight:900; font-size:15px; color:#fff; border:4px solid rgba(255,255,255,.88); box-shadow:0 4px 16px rgba(20,35,29,.16); }
.bgk-rank-top3 { background:#1f7a4e !important; }
.bgk-rank-top7 { background:#68a943 !important; }
.bgk-rank-top10 { background:#c5ad2a !important; }
.bgk-rank-top20 { background:#d9782f !important; }
.bgk-rank-low { background:#ba443b !important; }
.bgk-rank-unknown { background:#98a49e !important; }
.bgk-center-label { position:absolute; left:50%; top:51.8%; transform:translate(-50%, 31px); font-size:9px; letter-spacing:.12em; font-weight:900; color:#4d5e56; }
.bgk-legend { display:flex; flex-wrap:wrap; gap:14px 18px; align-items:center; padding-top:16px; font-size:12px; font-weight:700; color:#54645d; }
.bgk-legend span { display:flex; align-items:center; gap:6px; }
.bgk-legend i { display:inline-block; width:12px; height:12px; border-radius:50%; }
.bgk-heatmap-note { font-size:12px; margin:12px 0 0 !important; }
.bgk-opportunity-card { padding:30px; position:sticky; top:24px; }
.bgk-opportunity-card h3 { font-size:30px; margin-bottom:16px; }
.bgk-opportunity-card ol { margin:22px 0 26px; padding-left:24px; color:#56665f; }
.bgk-opportunity-card li { padding:7px 0; }

.bgk-services-section { background:#fff; }
.bgk-card-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.bgk-service-card { border:1px solid var(--bgk-line); border-radius:16px; padding:28px; min-height:230px; transition:.2s ease; background:#fff; }
.bgk-service-card:hover { transform:translateY(-3px); box-shadow:0 14px 36px rgba(20,35,29,.08); }
.bgk-service-card > span { display:inline-flex; align-items:center; justify-content:center; width:34px; height:34px; border-radius:50%; background:var(--bgk-cream); color:var(--bgk-green); font-size:11px; font-weight:900; margin-bottom:42px; }
.bgk-service-card p { margin-bottom:0; }

.bgk-area-section { background:#10231b; color:#fff; }
.bgk-area-section p { color:#cad8d1; }
.bgk-area-section .bgk-eyebrow { color:var(--bgk-lime); }
.bgk-area-banner { display:flex; justify-content:space-between; gap:30px; align-items:end; margin-bottom:36px; }
.bgk-area-banner > div { max-width:760px; }
.bgk-area-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; }
.bgk-area-card { display:grid; grid-template-columns:auto 1fr; grid-template-rows:auto auto; column-gap:12px; background:#183329; border:1px solid rgba(255,255,255,.10); border-radius:14px; padding:18px; text-decoration:none !important; color:#fff !important; transition:.2s; }
.bgk-area-card:hover { background:#214638; transform:translateY(-2px); }
.bgk-pin { grid-row:1 / span 2; color:var(--bgk-lime); font-size:24px; }
.bgk-area-card span:last-child { font-size:12px; color:#afc8bd; margin-top:5px; }

.bgk-process-section { background:#f7f7f3; }
.bgk-process-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.bgk-process-grid > div { padding:28px 0; border-top:2px solid var(--bgk-ink); }
.bgk-process-grid > div > span { font-weight:900; color:var(--bgk-green-2); }
.bgk-process-grid h3 { margin-top:34px; }

.bgk-faq-section { background:#fff; }
.bgk-faq-layout { display:grid; grid-template-columns:.7fr 1.3fr; gap:72px; }
.bgk-faq-list details { border-top:1px solid var(--bgk-line); }
.bgk-faq-list details:last-child { border-bottom:1px solid var(--bgk-line); }
.bgk-faq-list summary { cursor:pointer; list-style:none; padding:22px 0; font-weight:800; display:flex; align-items:center; justify-content:space-between; gap:16px; }
.bgk-faq-list summary::-webkit-details-marker { display:none; }
.bgk-faq-list summary span { font-size:24px; font-weight:400; }
.bgk-faq-list details[open] summary span { transform:rotate(45deg); }
.bgk-faq-list details p { padding:0 0 22px; margin:0; }

.bgk-final-cta { background:var(--bgk-green); color:#fff; padding:58px 0; }
.bgk-final-cta p { color:#dbe8e1; margin-bottom:0; }
.bgk-final-cta .bgk-eyebrow { color:var(--bgk-lime); }
.bgk-final-inner { display:flex; align-items:center; justify-content:space-between; gap:30px; }
.bgk-final-inner h2 { margin-bottom:12px; }
.bgk-btn-light { background:#fff; color:var(--bgk-green) !important; }
.bgk-btn-outline-light { border-color:rgba(255,255,255,.45); color:#fff !important; }

.bgk-mobile-bar { display:none; }

@media (max-width: 980px) {
  .bgk-hero-grid, .bgk-section-head, .bgk-section-head-narrow, .bgk-heatmap-layout, .bgk-faq-layout { grid-template-columns:1fr; gap:30px; }
  .bgk-service-strip { grid-template-columns:repeat(3,1fr); }
  .bgk-card-grid { grid-template-columns:repeat(2,1fr); }
  .bgk-area-grid { grid-template-columns:repeat(2,1fr); }
  .bgk-opportunity-card { position:static; }
  .bgk-grid-wrap { min-height:0; }
}

@media (max-width: 680px) {
  .bgk-shell { width:min(100% - 24px,1180px); }
  .bgk-section { padding:64px 0; }
  .bgk-hero { padding:72px 0 46px; }
  .bgk-rrh h1 { font-size:44px; }
  .bgk-rrh h2 { font-size:36px; }
  .bgk-hero-panel { padding:24px; }
  .bgk-service-strip { grid-template-columns:repeat(2,1fr); }
  .bgk-service-chip:nth-child(odd) { border-left:1px solid var(--bgk-line); }
  .bgk-card-grid, .bgk-area-grid, .bgk-process-grid { grid-template-columns:1fr; }
  .bgk-heatmap-toolbar { grid-template-columns:1fr; }
  .bgk-grid-wrap { min-height:0; }
  .bgk-grid { inset:2%; }
  .bgk-rank { width:34px; height:34px; font-size:12px; border-width:3px; }
  .bgk-center-label { display:none; }
  .bgk-area-banner, .bgk-final-inner { display:block; }
  .bgk-area-banner .bgk-btn { margin-top:12px; }
  .bgk-final-inner .bgk-hero-actions { margin-top:22px; }
  .bgk-mobile-bar { position:fixed; z-index:99999; left:10px; right:10px; bottom:10px; display:grid; grid-template-columns:repeat(3,1fr); background:#0e2119; color:#fff; border:1px solid rgba(255,255,255,.16); border-radius:14px; overflow:hidden; box-shadow:0 12px 40px rgba(0,0,0,.28); }
  .bgk-mobile-bar a { color:#fff !important; text-decoration:none !important; display:flex; flex-direction:column; gap:2px; align-items:center; justify-content:center; min-height:60px; font-size:12px; font-weight:800; border-right:1px solid rgba(255,255,255,.12); }
  .bgk-mobile-bar a:last-child { border-right:0; background:var(--bgk-green-2); }
  .bgk-mobile-bar span { font-size:16px; }
  body { padding-bottom:78px; }
}
