:root { --timber-pine:#d4a74e; --timber-gum:#2e8465; --timber-other:#8e7a62; --timber-ink:#e8e5dc; --timber-paper:#171a18; --timber-panel:#222722; --timber-line:#414941; }
.timber-page { max-width:1240px; padding-left:24px; padding-right:24px; }
.timber-page article { width:100%; }
.timber-header { max-width:900px; margin:0 auto 3rem; padding-top:3rem; }
.timber-header h1 { max-width:900px; font-size:clamp(2.8rem,7vw,6.7rem); line-height:.94; letter-spacing:-.055em; margin:.35rem 0 1.4rem; }
.timber-header .post-meta { display:flex; gap:1rem; align-items:center; }
.timber-kicker,.eyebrow { color:#c8a55d; text-transform:uppercase; letter-spacing:.14em; font-size:.72rem; font-weight:600; }
.timber-subtitle { max-width:700px; color:#b7bcb6; font-size:clamp(1.2rem,2.4vw,1.65rem); line-height:1.45; }
.timber-content > p,.timber-content > h2,.timber-content > h3 { max-width:720px; margin-left:auto; margin-right:auto; }
.timber-content > p { font-size:1.08rem; line-height:1.8; }
.timber-content > h2 { margin-top:4.5rem; font-size:2rem; letter-spacing:-.025em; }
.atlas-launch { max-width:900px; margin:4rem auto 5rem; padding:2rem; display:flex; align-items:center; justify-content:space-between; gap:2rem; background:linear-gradient(115deg,#1b2d20,#28372a); border:1px solid #435347; border-radius:14px; }
.atlas-launch p { margin:0; color:#b8c3ba; line-height:1.55; }.atlas-launch strong { color:#fff; font-size:1.35rem; }.atlas-launch a { flex:0 0 auto; padding:.85rem 1.1rem; border-radius:99px; background:#e9c36c; color:#182019!important; text-decoration:none!important; font-weight:700; }
.timber-atlas { margin:4rem 0 5rem; padding:2rem; border:1px solid var(--timber-line); background:var(--timber-paper); box-shadow:0 30px 80px rgba(0,0,0,.22); }
.atlas-heading { display:flex; align-items:end; justify-content:space-between; gap:2rem; margin-bottom:1.5rem; }
.atlas-heading h2 { margin:.25rem 0 0; font-size:clamp(1.7rem,3vw,2.7rem); letter-spacing:-.035em; }
.atlas-total { text-align:right; flex:0 0 auto; }
.atlas-total strong { display:block; color:#f0c76e; font-size:2rem; }
.atlas-total span,.atlas-source { color:#929a92; font-size:.78rem; }
.atlas-controls { display:flex; justify-content:space-between; gap:1rem; margin-bottom:.75rem; flex-wrap:wrap; }
.segmented,.focus-buttons { display:flex; flex-wrap:wrap; gap:.4rem; }
.atlas-controls button { border:1px solid #4c554d; background:#252b26; color:#d9ded9; padding:.55rem .8rem; border-radius:99px; cursor:pointer; font:inherit; font-size:.78rem; }
.atlas-controls button:hover,.atlas-controls button:focus,.atlas-controls button.is-active { background:#e2c276; border-color:#e2c276; color:#171a18; }
.atlas-map-wrap { position:relative; }
#timber-map { height:min(68vh,680px); min-height:470px; background:#c9d1c8; z-index:1; }
.leaflet-container { font-family:inherit; }
.leaflet-tile-pane { filter:saturate(.55) contrast(.92) brightness(.82); }
.atlas-legend { position:absolute; z-index:500; left:12px; bottom:12px; display:flex; gap:.75rem; flex-wrap:wrap; max-width:calc(100% - 24px); padding:.55rem .7rem; background:rgba(23,26,24,.92); color:#e5e8e4; font-size:.72rem; border-radius:3px; }
.atlas-legend span { display:flex; align-items:center; gap:.35rem; }
.swatch { width:13px; height:8px; display:inline-block; }
.swatch.softwood { background:var(--timber-pine); }.swatch.hardwood { background:var(--timber-gum); }.swatch.other { background:var(--timber-other); }
.dot { width:8px; height:8px; border-radius:50%; display:inline-block; background:#fff; border:1px solid #222; }.dot.port { background:#65b8c2; }
.map-status { position:absolute; z-index:550; inset:0; display:grid; place-items:center; background:rgba(23,26,24,.84); color:#ece9dd; font-size:.9rem; transition:opacity .25s; pointer-events:none; }
.map-status.is-hidden { opacity:0; }
.atlas-detail { display:grid; grid-template-columns:150px 1fr auto; gap:1.5rem; align-items:center; padding:1.2rem 0 .25rem; }
.detail-label { display:block; color:#8f978f; text-transform:uppercase; letter-spacing:.1em; font-size:.65rem; }
.atlas-detail p { margin:0; color:#b5bbb5; font-size:.9rem; line-height:1.5; }
.layer-toggles { display:flex; gap:1rem; font-size:.78rem; white-space:nowrap; }
.layer-toggles label { cursor:pointer; }
.atlas-source { margin:1rem 0 0; line-height:1.5; }
.timber-stats { max-width:900px; margin:4rem auto; display:grid; grid-template-columns:1fr 1.8fr; gap:2.5rem; padding:2rem; background:var(--timber-panel); border-left:4px solid var(--timber-pine); }
.stat-lead span { color:#a7ada7; font-size:.78rem; text-transform:uppercase; letter-spacing:.1em; }
.stat-lead strong { display:block; font-size:2.8rem; color:#f0c76e; line-height:1.1; margin:.4rem 0; }
.stat-lead p,.source-bars > p { color:#aeb5ae; font-size:.8rem; line-height:1.5; margin:.5rem 0 0; }
.bar-row { display:grid; grid-template-columns:145px 1fr 62px; align-items:center; gap:.7rem; margin:.7rem 0; font-size:.78rem; }
.bar-row strong { text-align:right; }
.bar-track { height:12px; background:#333934; }.bar-track i { display:block; height:100%; background:var(--timber-pine); }
.hardwood-bar .bar-track i { background:var(--timber-gum); }.native-bar .bar-track i { background:#728174; }
.timber-marker { border:2px solid #171a18; border-radius:50%; width:13px!important; height:13px!important; margin-left:-6px!important; margin-top:-6px!important; background:#f6f2e6; box-shadow:0 1px 4px rgba(0,0,0,.45); }
.timber-marker.port { background:#65b8c2; transform:rotate(45deg); border-radius:2px; }
@media (max-width:760px) {
  .timber-page { padding-left:14px; padding-right:14px; }
  .timber-atlas { margin-left:-14px; margin-right:-14px; padding:1rem; border-left:0; border-right:0; }
  .atlas-heading { align-items:start; }.atlas-total { text-align:left; }.atlas-heading { flex-direction:column; gap:.8rem; }
  #timber-map { min-height:480px; height:62vh; }
  .atlas-detail { grid-template-columns:1fr; gap:.65rem; }
  .layer-toggles { white-space:normal; }
  .timber-stats { grid-template-columns:1fr; padding:1.25rem; gap:1rem; }
  .bar-row { grid-template-columns:118px 1fr 54px; }
  .atlas-launch { flex-direction:column; align-items:flex-start; padding:1.4rem; }.atlas-launch a { width:100%; box-sizing:border-box; text-align:center; }
}
