*{box-sizing:border-box;}
html,body{margin:0;background:var(--site-paper);}
body{
  min-height:100vh;color:var(--site-ink);font-family:var(--site-ui);
  background:
    radial-gradient(80% 55% at 92% 4%,rgba(197,46,61,.07),transparent 60%),
    radial-gradient(70% 52% at 4% 14%,rgba(23,49,38,.07),transparent 62%),
    var(--site-paper);
}

.home{
  width:min(100% - 36px,1180px);margin:0 auto;
  padding:calc(var(--site-header-height) + clamp(42px,7vw,84px)) 0 48px;
}
.home-top{max-width:900px;}
.home-eyebrow{
  display:flex;align-items:center;gap:10px;color:var(--site-muted);
  font-family:var(--site-cond);font-weight:700;letter-spacing:.2em;text-transform:uppercase;
  font-size:clamp(10px,1.1vw,12px);
}
.home-eyebrow::before{content:"";width:28px;height:3px;background:var(--site-accent);}
.home-title{
  margin:.16em 0 .2em;color:var(--site-ink);font-family:var(--site-display);
  font-size:clamp(68px,12vw,132px);font-weight:400;line-height:.82;letter-spacing:-.015em;
}
.home-title em{font-style:normal;color:var(--site-accent);}
.home-dek{
  max-width:52ch;margin:0;color:var(--site-muted);font-size:clamp(16px,1.65vw,20px);line-height:1.58;
}

.stories{margin-top:clamp(58px,8vw,96px);}
.stories-head{
  display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:4px 28px;
  padding-bottom:16px;border-bottom:2px solid var(--site-ink);
}
.stories-count{
  grid-column:1/3;color:var(--site-accent);font-family:var(--site-cond);font-size:10px;
  font-weight:700;letter-spacing:.18em;text-transform:uppercase;
}
.stories-head h2{
  margin:0;color:var(--site-ink);font-family:var(--site-display);font-size:clamp(34px,5vw,52px);
  font-weight:400;line-height:1;text-transform:uppercase;
}
.stories-head p{max-width:38ch;margin:0;color:var(--site-muted);font-size:13px;line-height:1.5;text-align:right;}

.story-grid{list-style:none;padding:0;margin:24px 0 0;display:grid;gap:18px;}
.story-card{
  position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;
  grid-template-areas:"kicker go" "title go" "dek go";gap:10px 36px;align-items:center;
  min-height:240px;padding:clamp(28px,4vw,48px);
  color:inherit;text-decoration:none;background:rgba(255,253,248,.84);
  border:1px solid var(--site-rule);border-radius:18px;
  box-shadow:0 18px 46px rgba(46,55,49,.09);
  overflow:hidden;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.story-card::before{
  content:"";position:absolute;inset:0 auto 0 0;width:6px;background:var(--site-accent);
}
.story-card:hover,.story-card:focus-visible{
  transform:translateY(-3px);border-color:#bcb3a1;box-shadow:0 24px 56px rgba(46,55,49,.14);
}
.story-card:focus-visible{outline:2px solid var(--site-gold);outline-offset:4px;}
.card-kicker{
  grid-area:kicker;color:var(--site-accent);font-family:var(--site-cond);font-weight:700;
  letter-spacing:.17em;text-transform:uppercase;font-size:11px;
}
.card-title{
  grid-area:title;color:var(--site-ink);font-family:var(--site-display);
  font-size:clamp(40px,6vw,66px);line-height:.9;
}
.card-title em{font-style:normal;color:var(--site-accent);}
.card-dek{grid-area:dek;max-width:60ch;color:var(--site-muted);font-size:14px;line-height:1.56;}
.card-go{
  grid-area:go;display:grid;place-items:center;width:112px;height:112px;border-radius:50%;
  color:#fff;background:var(--site-ink);font-family:var(--site-cond);font-weight:700;
  letter-spacing:.08em;text-align:center;text-transform:uppercase;font-size:11px;
  transition:background .18s ease,transform .18s ease;
}
.story-card:hover .card-go{background:var(--site-accent);transform:scale(1.04);}

.home-foot{
  margin-top:clamp(40px,6vw,70px);padding-top:18px;border-top:1px solid var(--site-rule);
  color:var(--site-muted);font-family:var(--site-cond);font-weight:500;
  font-size:11px;line-height:1.55;letter-spacing:.03em;
}
.home-foot a{color:var(--site-ink);text-underline-offset:3px;}

@media (max-width:700px){
  .home{width:min(100% - 24px,1180px);padding-top:calc(var(--site-header-height) + 34px);}
  .home-title{font-size:clamp(64px,21vw,92px);}
  .stories-head{grid-template-columns:1fr;gap:7px;}
  .stories-count{grid-column:1;}
  .stories-head p{text-align:left;}
  .story-card{
    grid-template-columns:1fr;grid-template-areas:"kicker" "title" "dek" "go";
    gap:12px;min-height:0;padding:28px 24px 24px;
  }
  .card-go{display:flex;justify-content:center;gap:6px;width:auto;height:auto;padding:11px 15px;border-radius:8px;justify-self:start;}
}

@media (prefers-reduced-motion:reduce){
  .story-card,.card-go{transition:none;}
}
