:root{
  --bg:#fafcf4;
  --bg-2:#f1f3e9;
  --card:#ffffff;
  --line:#e4e6da;
  --line-soft:#eceee2;
  --ink:#0c0c0c;
  --ink-2:#3a3a36;
  --ink-dim:#6a6a62;
  --ink-faint:#9a9a90;
  --accent:#d6ff00;
  --accent-deep:#acdd24;
  --display:"Climate Crisis",sans-serif;
  --mono:"Fragment Mono",ui-monospace,monospace;
  --text:"Inter Tight",system-ui,sans-serif;
  --maxw:1280px;
}

body.blog-list-page{
  background:var(--bg) !important;
  color:var(--ink);
  font-family:var(--text);
  font-size:16px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}

body.blog-list-page main.blog-list-page,
body.blog-list-page main.blog-list-page *{
  box-sizing:border-box;
}

body.blog-list-page main.blog-list-page{
  display:block;
  width:100%;
  max-width:none;
  margin:0;
  padding:0;
  background:var(--bg);
  color:var(--ink);
  font-family:var(--text);
  overflow:hidden;
}

body.blog-list-page main.blog-list-page a{
  color:inherit;
  text-decoration:none !important;
  box-shadow:none !important;
}

body.blog-list-page main.blog-list-page img{
  display:block;
  max-width:100%;
}

body.blog-list-page main.blog-list-page button,
body.blog-list-page main.blog-list-page input{
  font:inherit;
}

body.blog-list-page main.blog-list-page .wrap{
  width:100% !important;
  max-width:var(--maxw) !important;
  margin-right:auto !important;
  margin-left:auto !important;
  padding-right:32px !important;
  padding-left:32px !important;
  float:none !important;
  clear:both !important;
  transform:none !important;
}

body.blog-list-page.ast-page-builder-template .site-content > .ast-container,
body.blog-list-page.ast-separate-container .site-content > .ast-container,
body.blog-list-page.ast-right-sidebar #primary,
body.blog-list-page.ast-left-sidebar #primary{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}

body.blog-list-page.ast-separate-container .ast-article-post,
body.blog-list-page.ast-separate-container .ast-article-single{
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
}

body.blog-list-page main.blog-list-page .mono{
  font-family:var(--mono);
  font-size:12px;
  line-height:1.4;
  letter-spacing:.04em;
  text-transform:uppercase;
  color:var(--ink-dim);
}

body.blog-list-page main.blog-list-page .hero{
  position:relative;
  width:100vw;
  min-height:clamp(460px,58vw,680px);
  margin:0 0 0 50%;
  transform:translateX(-50%);
  overflow:hidden;
  background:#8fa3a8 center/cover no-repeat;
}

body.blog-list-page main.blog-list-page .hero::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:
    linear-gradient(180deg,rgba(0,0,0,.24),rgba(0,0,0,.48)),
    radial-gradient(circle at center,rgba(0,0,0,.18),rgba(0,0,0,.5));
  pointer-events:none;
}

body.blog-list-page main.blog-list-page .hero-overlay{
  position:absolute;
  inset:0;
  z-index:1;
  background:transparent;
  pointer-events:none;
}

body.blog-list-page main.blog-list-page .hero-in{
  position:absolute;
  inset:0;
  z-index:2;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding:clamp(76px,10vw,128px) 32px;
  text-align:center;
  color:#fff;
}

body.blog-list-page main.blog-list-page .hero-copy{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  margin:auto;
}

body.blog-list-page main.blog-list-page .hero-in h1{
  margin:0;
  color:#fff;
  font-family:var(--display);
  font-size:clamp(54px,12vw,150px);
  font-weight:400;
  line-height:.9;
  letter-spacing:.01em;
  text-transform:uppercase;
  text-shadow:0 8px 36px rgba(0,0,0,.72),0 2px 8px rgba(0,0,0,.55);
}

body.blog-list-page main.blog-list-page .crumb{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  margin-top:14px;
  color:#fff;
  font-family:var(--mono);
  font-size:12px;
  line-height:1.4;
  letter-spacing:.05em;
  text-transform:uppercase;
  text-shadow:0 4px 18px rgba(0,0,0,.72),0 1px 4px rgba(0,0,0,.65);
}

body.blog-list-page main.blog-list-page .crumb a{
  color:#fff;
}

body.blog-list-page main.blog-list-page .crumb .d{
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--accent);
  flex:0 0 auto;
}

body.blog-list-page main.blog-list-page .controls{
  margin:0;
  padding:40px 0 6px;
  background:transparent;
  border:0;
  box-shadow:none;
}

body.blog-list-page main.blog-list-page .controls-row{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:20px;
}

body.blog-list-page main.blog-list-page .search{
  position:relative;
  flex:1 1 260px;
  max-width:360px;
}

body.blog-list-page main.blog-list-page .search svg{
  position:absolute;
  top:50%;
  left:15px;
  width:15px;
  height:15px;
  transform:translateY(-50%);
  stroke:var(--ink-faint);
  fill:none;
}

body.blog-list-page main.blog-list-page .search input{
  width:100%;
  min-height:48px;
  margin:0;
  padding:13px 14px 13px 42px;
  border:1px solid var(--line) !important;
  border-radius:0 !important;
  outline:none;
  background:var(--card) !important;
  color:var(--ink);
  font-family:var(--text);
  font-size:14px;
  line-height:1.4;
  transition:border-color .2s,box-shadow .2s;
  appearance:none;
}

body.blog-list-page main.blog-list-page .search input::placeholder{
  color:var(--ink-faint);
  opacity:1;
}

body.blog-list-page main.blog-list-page .search input:focus{
  border-color:var(--ink) !important;
  box-shadow:0 0 0 3px rgba(214,255,0,.22) !important;
}

body.blog-list-page main.blog-list-page .filters{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-left:auto;
}

body.blog-list-page main.blog-list-page .chip,
body.blog-list-page main.blog-list-page .filter-pill,
body.blog-list-page main.blog-list-page .clear-filters,
body.blog-list-page main.blog-list-page .btn-more{
  width:auto;
  min-width:0;
  min-height:0;
  margin:0;
  box-shadow:none !important;
  text-decoration:none;
  appearance:none;
}

body.blog-list-page main.blog-list-page .chip{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:9px 15px;
  border:1px solid var(--line) !important;
  border-radius:999px !important;
  background:transparent !important;
  color:var(--ink-dim) !important;
  font-family:var(--mono);
  font-size:11px;
  font-weight:400;
  line-height:1.4;
  letter-spacing:.05em;
  text-transform:uppercase;
  white-space:nowrap;
  cursor:pointer;
  transition:background .18s,border-color .18s,color .18s;
}

body.blog-list-page main.blog-list-page .chip:hover,
body.blog-list-page main.blog-list-page .chip:focus-visible{
  border-color:var(--ink) !important;
  color:var(--ink) !important;
}

body.blog-list-page main.blog-list-page .chip.active{
  border-color:var(--ink) !important;
  background:var(--ink) !important;
  color:#fff !important;
}

body.blog-list-page main.blog-list-page .active-filters-wrap{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:12px;
  margin-top:18px;
}

body.blog-list-page main.blog-list-page .active-filters{
  display:flex;
  flex:1 1 auto;
  flex-wrap:wrap;
  gap:8px;
}

body.blog-list-page main.blog-list-page .filter-pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 12px;
  border:1px solid var(--line) !important;
  border-radius:999px !important;
  background:var(--card) !important;
  color:var(--ink-2) !important;
  font-family:var(--mono);
  font-size:11px;
  line-height:1.4;
  letter-spacing:.05em;
  text-transform:uppercase;
  white-space:nowrap;
  cursor:pointer;
}

body.blog-list-page main.blog-list-page .pill-close{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:16px;
  height:16px;
  border-radius:50%;
  background:var(--accent);
  color:var(--ink);
  font-size:12px;
  font-weight:700;
  line-height:1;
}

body.blog-list-page main.blog-list-page .clear-filters{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:8px 14px;
  border:1px solid var(--ink) !important;
  border-radius:999px !important;
  background:transparent !important;
  color:var(--ink) !important;
  font-family:var(--mono);
  font-size:11px;
  line-height:1.4;
  letter-spacing:.05em;
  text-transform:uppercase;
  white-space:nowrap;
  cursor:pointer;
  transition:background .2s,color .2s;
}

body.blog-list-page main.blog-list-page .clear-filters:hover{
  background:var(--ink) !important;
  color:#fff !important;
}

body.blog-list-page main.blog-list-page .featured{
  padding:34px 0 6px;
}

body.blog-list-page main.blog-list-page .feat-label{
  display:flex;
  align-items:center;
  gap:14px;
  margin:0 0 22px;
}

body.blog-list-page main.blog-list-page .feat-label::after{
  content:"";
  flex:1;
  height:1px;
  background:var(--line);
}

body.blog-list-page main.blog-list-page .feat-card{
  display:grid;
  grid-template-columns:1.15fr 1fr;
  gap:0;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:0;
  background:var(--card);
  transition:box-shadow .25s,transform .25s;
}

body.blog-list-page main.blog-list-page .feat-card:hover{
  transform:translateY(-2px);
  box-shadow:0 18px 50px -24px rgba(0,0,0,.25) !important;
}

body.blog-list-page main.blog-list-page .feat-media{
  position:relative;
  min-height:330px;
  overflow:hidden;
  background:#cdd2c4;
}

body.blog-list-page main.blog-list-page .feat-media img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .5s;
}

body.blog-list-page main.blog-list-page .feat-card:hover .feat-media img{
  transform:scale(1.04);
}

body.blog-list-page main.blog-list-page .feat-fallback,
body.blog-list-page main.blog-list-page .card-fallback{
  position:absolute;
  inset:0;
  background:linear-gradient(135deg,rgba(214,255,0,.22),rgba(241,243,233,.92));
}

body.blog-list-page main.blog-list-page .feat-body{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:44px 42px;
}

body.blog-list-page main.blog-list-page .feat-meta{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:12px;
  margin:0 0 20px;
}

body.blog-list-page main.blog-list-page .tag{
  color:var(--ink-2);
  font-family:var(--mono);
  font-size:11px;
  line-height:1.4;
  letter-spacing:.05em;
  text-transform:uppercase;
}

body.blog-list-page main.blog-list-page .dot{
  width:4px;
  height:4px;
  border-radius:50%;
  background:var(--accent-deep);
  flex:0 0 auto;
}

body.blog-list-page main.blog-list-page .feat-body h2{
  margin:0 0 18px;
  color:var(--ink);
  font-family:"Inter Tight",system-ui,sans-serif !important;
  font-size:clamp(26px,3.2vw,38px);
  font-weight:700 !important;
  line-height:1.08;
  letter-spacing:-.02em;
  text-transform:none !important;
}

body.blog-list-page main.blog-list-page .feat-body p{
  max-width:50ch;
  margin:0;
  color:var(--ink-dim);
  font-family:var(--text);
  font-size:16px;
  line-height:1.6;
}

body.blog-list-page main.blog-list-page .read{
  display:inline-flex;
  align-items:center;
  align-self:flex-start;
  gap:10px;
  margin-top:28px;
  color:var(--ink);
  font-family:var(--mono);
  font-size:12px;
  line-height:1.4;
  letter-spacing:.05em;
  text-transform:uppercase;
}

body.blog-list-page main.blog-list-page .read .bar{
  width:28px;
  height:2px;
  background:var(--accent);
}

body.blog-list-page main.blog-list-page .read .arrow{
  transition:transform .2s;
}

body.blog-list-page main.blog-list-page .feat-card:hover .read .arrow{
  transform:translateX(5px);
}

body.blog-list-page main.blog-list-page .grid-sec{
  padding:46px 0 10px;
}

body.blog-list-page main.blog-list-page .grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:44px 36px;
}

body.blog-list-page main.blog-list-page .card{
  display:flex;
  min-width:0;
  flex-direction:column;
  color:var(--ink);
  transition:transform .22s;
}

body.blog-list-page main.blog-list-page .card:hover{
  transform:translateY(-4px);
}

body.blog-list-page main.blog-list-page .card-media{
  position:relative;
  aspect-ratio:16/10;
  margin:0 0 20px;
  overflow:hidden;
  border-radius:0;
  background:#d7dccb;
}

body.blog-list-page main.blog-list-page .card-media img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .5s;
}

body.blog-list-page main.blog-list-page .card:hover .card-media img{
  transform:scale(1.05);
}

body.blog-list-page main.blog-list-page .card .date{
  margin:0 0 10px;
  color:var(--ink-faint);
  font-family:var(--mono);
  font-size:12px;
  line-height:1.4;
}

body.blog-list-page main.blog-list-page .card .cats{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
  margin:0 0 14px;
}

body.blog-list-page main.blog-list-page .card .cats .pin{
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--accent-deep);
  flex:0 0 auto;
}

body.blog-list-page main.blog-list-page .card .cats .c{
  color:var(--ink-2);
  font-family:var(--mono);
  font-size:11px;
  line-height:1.4;
  letter-spacing:.04em;
  text-transform:uppercase;
}

body.blog-list-page main.blog-list-page .card .cats .sep{
  color:var(--line);
  font-family:var(--mono);
  font-size:11px;
  line-height:1.4;
}

body.blog-list-page main.blog-list-page .card h3{
  margin:0;
  color:var(--ink);
  font-family:"Inter Tight",system-ui,sans-serif !important;
  font-size:20px;
  font-weight:700;
  line-height:1.18;
  letter-spacing:-.015em;
  text-transform:none !important;
  transition:color .2s;
}

body.blog-list-page main.blog-list-page .card h3 .u{
  font-family:"Inter Tight",system-ui,sans-serif !important;
  font-weight:700 !important;
  text-transform:none !important;
}

body.blog-list-page main.blog-list-page .card:hover h3{
  color:#000;
}

body.blog-list-page main.blog-list-page .card:hover h3 .u{
  box-shadow:inset 0 -3px 0 var(--accent);
}

body.blog-list-page main.blog-list-page .no-res{
  padding:60px 0;
  color:var(--ink-dim);
  text-align:center;
}

body.blog-list-page main.blog-list-page .no-res strong{
  display:block;
  margin:0 0 10px;
  color:var(--ink);
  font-family:var(--text);
  font-size:26px;
  font-weight:700;
  line-height:1.2;
  letter-spacing:-.02em;
}

body.blog-list-page main.blog-list-page .more-wrap{
  display:flex;
  justify-content:center;
  padding:50px 0 8px;
}

body.blog-list-page main.blog-list-page .btn-more{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:15px 36px;
  border:1px solid var(--ink) !important;
  border-radius:999px !important;
  background:transparent !important;
  color:var(--ink) !important;
  font-family:var(--mono);
  font-size:12px;
  font-weight:400;
  line-height:1.4;
  letter-spacing:.06em;
  text-transform:uppercase;
  cursor:pointer;
  transition:background .2s,color .2s;
}

body.blog-list-page main.blog-list-page .btn-more:hover{
  background:var(--ink) !important;
  color:#fff !important;
}

body.blog-list-page main.blog-list-page .count{
  margin-top:4em;
  padding-bottom:20px;
  color:var(--ink-faint);
  font-family:var(--mono);
  font-size:11px;
  line-height:1.4;
  letter-spacing:.05em;
  text-align:center;
  text-transform:uppercase;
}

body.blog-list-page main.blog-list-page .hidden{
  display:none !important;
}

@media(max-width:980px){
  body.blog-list-page main.blog-list-page .grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  body.blog-list-page main.blog-list-page .feat-card{
    grid-template-columns:1fr;
  }

  body.blog-list-page main.blog-list-page .feat-media{
    min-height:220px;
  }
}

@media(max-width:640px){
  body.blog-list-page main.blog-list-page .wrap{
    padding-right:18px !important;
    padding-left:18px !important;
  }

  body.blog-list-page main.blog-list-page .hero{
    min-height:clamp(390px,100vw,520px);
  }

  body.blog-list-page main.blog-list-page .hero-in{
    padding:72px 18px;
  }

  body.blog-list-page main.blog-list-page .hero-in h1{
    font-size:clamp(36px,12vw,54px);
  }

  body.blog-list-page main.blog-list-page .crumb{
    font-size:11px;
  }

  body.blog-list-page main.blog-list-page .controls-row{
    align-items:stretch;
  }

  body.blog-list-page main.blog-list-page .search{
    max-width:none;
  }

  body.blog-list-page main.blog-list-page .filters{
    width:100%;
    margin-left:0;
    padding-bottom:4px;
    overflow-x:auto;
    flex-wrap:nowrap;
    -webkit-overflow-scrolling:touch;
  }

  body.blog-list-page main.blog-list-page .chip{
    flex:0 0 auto;
  }

  body.blog-list-page main.blog-list-page .featured{
    padding-top:34px;
  }

  body.blog-list-page main.blog-list-page .feat-body{
    padding:30px 22px;
  }

  body.blog-list-page main.blog-list-page .grid{
    grid-template-columns:1fr;
    gap:36px;
  }

  body.blog-list-page main.blog-list-page .active-filters-wrap,
  body.blog-list-page main.blog-list-page .active-filters{
    align-items:flex-start;
  }
}

@media(prefers-reduced-motion:reduce){
  body.blog-list-page main.blog-list-page *,
  body.blog-list-page main.blog-list-page *::before,
  body.blog-list-page main.blog-list-page *::after{
    transition:none !important;
    scroll-behavior:auto !important;
  }
}
