:root{
  --journal-ink:#151719;
  --journal-muted:#62686e;
  --journal-quiet:#8a9096;
  --journal-line:#dfe3e6;
  --journal-accent:#4d6170;
  --journal-soft:#f3f5f6;
}

.journal-page{
  background:var(--ds-canvas,#fcfcfd);
  color:var(--journal-ink);
}

.journal-page .journal-masthead .wrap,
.journal-page .journal-featured,
.journal-page .journal-index,
.journal-page .journal-article-shell{
  width:min(100%,var(--ds-shell,1440px));
  margin-inline:auto;
  padding-inline:var(--ds-gutter,63px);
}

.journal-masthead{
  padding:42px 0 0;
  background:#fff;
}

.journal-heading-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(320px,430px);
  gap:64px;
  align-items:end;
}

.journal-masthead h1{
  margin:0;
  font-size:var(--ds-page-title,clamp(32px,2.8vw,40px));
  font-weight:650;
  line-height:1.12;
  letter-spacing:-.025em;
}

.journal-masthead .journal-heading-row p{
  max-width:680px;
  margin:12px 0 0;
  color:var(--journal-muted);
  font-size:16px;
  line-height:1.7;
}

.journal-search{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  min-height:46px;
  border:1px solid var(--journal-line);
  background:#fff;
}

.journal-search:focus-within{
  border-color:var(--journal-accent);
  box-shadow:0 0 0 2px rgba(77,97,112,.12);
}

.journal-search input{
  min-width:0;
  padding:0 16px;
  border:0;
  outline:0;
  background:transparent;
  color:var(--journal-ink);
  font:400 14px/1.4 inherit;
}

.journal-search input::placeholder{
  color:var(--journal-quiet);
}

.journal-search button{
  min-width:72px;
  border:0;
  background:var(--journal-ink);
  color:#fff;
  font:600 13px/1 inherit;
  cursor:pointer;
}

.journal-topics{
  display:flex;
  gap:28px;
  margin-top:34px;
  overflow-x:auto;
  scrollbar-width:none;
}

.journal-topics::-webkit-scrollbar{
  display:none;
}

.journal-filter{
  position:relative;
  flex:0 0 auto;
  min-height:44px;
  padding:0 0 14px;
  border:0;
  background:transparent;
  color:var(--journal-muted);
  font:550 14px/1.2 inherit;
  cursor:pointer;
}

.journal-filter::after{
  content:"";
  position:absolute;
  right:0;
  bottom:-1px;
  left:0;
  height:2px;
  background:var(--journal-ink);
  transform:scaleX(0);
  transform-origin:left;
  transition:transform 160ms ease-out;
}

.journal-filter[aria-pressed="true"]{
  color:var(--journal-ink);
}

.journal-filter[aria-pressed="true"]::after{
  transform:scaleX(1);
}

.journal-featured{
  padding-top:22px;
  padding-bottom:0;
  border-bottom:0;
}

.journal-feature-grid{
  display:grid;
  grid-template-columns:minmax(0,1.55fr) minmax(330px,1fr);
  grid-template-rows:repeat(2,minmax(0,1fr));
  gap:0 32px;
}

.journal-feature-lead{
  display:grid;
  grid-template-columns:260px minmax(0,1fr);
  gap:22px;
  align-items:start;
  grid-row:1 / 3;
  padding:18px 28px 18px 0;
  border-right:1px solid var(--journal-line);
}

.journal-feature-support{
  display:grid;
  grid-template-columns:104px minmax(0,1fr);
  gap:16px;
  padding:16px 0;
}

.journal-feature-support + .journal-feature-support{
  border-top:1px solid var(--journal-line);
}

.journal-feature-media{
  display:block;
  overflow:hidden;
  background:var(--journal-soft);
}

.journal-feature-lead .journal-feature-media{
  aspect-ratio:4/3;
}

.journal-feature-support .journal-feature-media{
  align-self:start;
  aspect-ratio:4/3;
}

.journal-feature-media img,
.journal-item-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform 240ms ease-out;
}

.journal-feature-media:hover img,
.journal-item-media:hover img{
  transform:scale(1.015);
}

.journal-feature-lead .journal-feature-copy{
  padding-top:0;
}

.journal-feature-meta,
.journal-item-meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px 18px;
  color:var(--journal-quiet);
  font-size:12px;
  line-height:1.4;
}

.journal-feature-meta span:first-child,
.journal-category{
  color:var(--journal-accent);
  font-weight:600;
}

.journal-feature-lead h2{
  max-width:22ch;
  margin:0;
  font-size:23px;
  font-weight:650;
  line-height:1.28;
  letter-spacing:-.02em;
}

.journal-feature-support h3{
  margin:0;
  font-size:16px;
  font-weight:650;
  line-height:1.4;
}

.journal-feature-copy h2 a,
.journal-feature-copy h3 a,
.journal-item h3 a{
  color:inherit;
  text-decoration:none;
  overflow-wrap:anywhere;
}

.journal-feature-copy h2 a:hover,
.journal-feature-copy h3 a:hover,
.journal-item h3 a:hover{
  color:var(--journal-accent);
}

.journal-feature-copy p{
  display:-webkit-box;
  margin:8px 0 0;
  overflow:hidden;
  color:var(--journal-muted);
  font-size:14px;
  line-height:1.65;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
}

.journal-feature-support .journal-feature-copy p{
  display:none;
}

.journal-feature-meta{
  margin-top:12px;
}

.journal-index{
  padding-top:0;
  padding-bottom:96px;
  border-bottom:0;
}

.journal-stream-layout{
  display:grid;
  grid-template-columns:minmax(0,900px) minmax(240px,1fr);
  gap:64px;
  align-items:start;
  border-top:1px solid var(--journal-line);
}

.journal-list{
  margin:0;
  padding:0;
  list-style:none;
}

.journal-item{
  display:grid;
  grid-template-columns:232px minmax(0,1fr);
  gap:24px;
  align-items:start;
  padding:24px 0;
  border-bottom:1px solid var(--journal-line);
}

.journal-item[hidden]{
  display:none;
}

.journal-item-no-image{
  grid-template-columns:1fr;
}

.journal-item-media{
  display:block;
  aspect-ratio:16/10;
  overflow:hidden;
  background:var(--journal-soft);
}

.journal-item-main{
  min-width:0;
}

.journal-category{
  display:block;
  margin-bottom:7px;
  font-size:12px;
  line-height:1.4;
}

.journal-item h3{
  margin:0;
  font-size:20px;
  font-weight:650;
  line-height:1.42;
  letter-spacing:-.012em;
}

.journal-item p{
  display:-webkit-box;
  max-width:680px;
  margin:8px 0 12px;
  overflow:hidden;
  color:var(--journal-muted);
  font-size:14px;
  line-height:1.65;
  overflow-wrap:anywhere;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
}

.journal-item-meta time::before{
  content:"·";
  margin-right:18px;
}

.journal-load-more{
  display:block;
  width:100%;
  min-height:48px;
  margin-top:24px;
  border:1px solid var(--journal-line);
  background:#fff;
  color:var(--journal-ink);
  font:600 14px/1 inherit;
  cursor:pointer;
}

.journal-load-more:hover{
  border-color:var(--journal-accent);
}

.journal-load-more[hidden]{
  display:none;
}

.journal-empty{
  padding:44px 0 72px;
  color:var(--journal-muted);
}

.journal-paths{
  position:sticky;
  top:24px;
}

.journal-paths h2{
  margin:0;
  padding:18px 0;
  border-bottom:1px solid var(--journal-line);
  font-size:17px;
  font-weight:650;
}

.journal-paths button,
.journal-paths a{
  display:block;
  width:100%;
  padding:18px 0;
  border:0;
  border-bottom:1px solid var(--journal-line);
  background:transparent;
  color:var(--journal-ink);
  text-align:left;
  text-decoration:none;
  cursor:pointer;
}

.journal-paths strong{
  display:block;
  font-size:14px;
  line-height:1.45;
}

.journal-paths span{
  display:block;
  margin-top:5px;
  color:var(--journal-muted);
  font-size:12px;
  line-height:1.55;
}

.journal-paths button:hover strong,
.journal-paths a:hover strong{
  color:var(--journal-accent);
}

.journal-sr-only{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}

.journal-filter:focus-visible,
.journal-search input:focus-visible,
.journal-search button:focus-visible,
.journal-feature-copy a:focus-visible,
.journal-item h3 a:focus-visible,
.journal-load-more:focus-visible,
.journal-paths button:focus-visible,
.journal-paths a:focus-visible,
.journal-back:focus-visible,
.journal-article a:focus-visible{
  outline:2px solid var(--journal-accent);
  outline-offset:3px;
}

.journal-article-page .journal-masthead{
  padding:32px 0 38px;
}

.journal-article-page .journal-masthead .wrap{
  display:block;
}

.journal-article-page .journal-back{
  display:inline-flex;
  margin-bottom:24px;
  color:var(--journal-muted);
  font-size:13px;
  text-decoration:none;
}

.journal-article-page .journal-back:hover{
  color:var(--journal-ink);
}

.journal-article-page .journal-kicker{
  margin:0 0 10px;
  color:var(--journal-accent);
  font-size:12px;
  font-weight:600;
}

.journal-article-page .journal-masthead h1{
  max-width:30ch;
  font-size:clamp(38px,3.35vw,52px);
  font-weight:600;
  line-height:1.12;
}

.journal-article-meta{
  display:flex;
  flex-wrap:wrap;
  gap:10px 24px;
  margin-top:20px;
  color:var(--journal-muted);
  font-family:var(--mono,"IBM Plex Mono",monospace);
  font-size:12px;
}

.journal-article-shell{
  display:grid;
  grid-template-columns:minmax(0,760px) 240px;
  gap:72px;
  justify-content:center;
  align-items:start;
  padding-top:48px;
  padding-bottom:104px;
}

.journal-article-page:not(.journal-has-rail) .journal-article-shell{
  grid-template-columns:minmax(0,760px);
}

.journal-article{
  min-width:0;
  color:#262a2e;
  font-size:17px;
  line-height:1.88;
}

.journal-article > :first-child{
  margin-top:0;
}

.journal-article h2,
.journal-article h3,
.journal-article h4,
.journal-article h5{
  margin:2.45em 0 .72em;
  color:var(--journal-ink);
  font-weight:600;
  line-height:1.35;
}

.journal-article h2{font-size:26px}
.journal-article h3{font-size:23px}
.journal-article h4{font-size:19px}
.journal-article h5{font-size:17px}

.journal-article p,
.journal-article ul,
.journal-article ol,
.journal-article blockquote,
.journal-article table,
.journal-article figure{
  margin:1em 0;
}

.journal-article :is(h2,h3){
  scroll-margin-top:96px;
}

.journal-article .journal-question{
  margin-top:2.15em;
  margin-bottom:.45em;
  color:var(--journal-ink);
  font-size:18px;
  line-height:1.55;
}

.journal-article .journal-prologue-label{
  margin-bottom:.45em;
  color:var(--journal-ink);
  font-size:15px;
}

.journal-article-rail{
  position:sticky;
  top:92px;
  min-width:0;
  padding-top:18px;
  border-top:2px solid var(--journal-ink);
}

.journal-article-rail > p{
  margin:0 0 15px;
  color:var(--journal-ink);
  font-size:13px;
  font-weight:650;
}

.journal-article-rail nav{
  display:grid;
  gap:2px;
}

.journal-article-rail a{
  position:relative;
  display:block;
  padding:7px 0 7px 14px;
  color:var(--journal-muted);
  font-size:12px;
  line-height:1.55;
  text-decoration:none;
  transition:color 160ms ease-out;
}

.journal-article-rail a::before{
  content:"";
  position:absolute;
  top:13px;
  left:0;
  width:4px;
  height:4px;
  background:var(--journal-line);
}

.journal-article-rail a:hover,
.journal-article-rail a[aria-current="location"]{
  color:var(--journal-ink);
}

.journal-article-rail a[aria-current="location"]::before{
  background:var(--journal-ink);
}

.journal-article ul,
.journal-article ol{
  padding-left:1.35em;
}

.journal-article a{
  color:var(--journal-accent);
  text-decoration-thickness:1px;
  text-underline-offset:3px;
}

.journal-article blockquote{
  padding:2px 0 2px 20px;
  border-left:2px solid var(--journal-line);
  color:#555c61;
}

.journal-article figure{
  display:block;
}

.journal-article img{
  display:block;
  width:auto;
  max-width:100%;
  height:auto;
  margin-inline:auto;
  background:#fff;
}

.journal-article figcaption{
  margin-top:8px;
  color:var(--journal-muted);
  font-size:12px;
  line-height:1.55;
  text-align:center;
}

.journal-article table{
  display:block;
  width:100%;
  overflow-x:auto;
  border-collapse:collapse;
  font-size:14px;
}

.journal-article th,
.journal-article td{
  min-width:120px;
  padding:12px 14px;
  border:1px solid var(--journal-line);
  text-align:left;
  vertical-align:top;
}

.journal-article pre{
  overflow:auto;
  padding:18px;
  background:#17191b;
  color:#f5f6f7;
  font-size:13px;
}

.journal-media-note{
  padding:16px;
  background:var(--journal-soft);
  color:var(--journal-muted);
  font-size:13px;
}

.journal-brief-page .journal-masthead h1{
  max-width:30ch;
}

.journal-brief-dek{
  max-width:800px;
  margin:16px 0 0;
  color:var(--journal-muted);
  font-size:17px;
  line-height:1.75;
}

.journal-research-brief > section:first-child{
  margin-top:0;
}

.research-source{
  margin:0 0 42px;
  padding:0 0 28px;
  border-bottom:1px solid var(--journal-line);
}

.research-source-heading > p,
.research-verdict > p,
.research-interpretation > p{
  margin:0 0 8px;
  color:var(--journal-accent);
  font-size:12px;
  font-weight:650;
}

.journal-article .research-source-heading h2{
  max-width:34ch;
  margin:0;
  font-size:20px;
  line-height:1.45;
}

.research-source-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  margin:24px 0 0;
  border-top:1px solid var(--journal-line);
}

.research-source-grid > div{
  display:grid;
  grid-template-columns:88px minmax(0,1fr);
  gap:14px;
  padding:12px 0;
  border-bottom:1px solid var(--journal-line);
}

.research-source-grid > div:nth-child(odd){
  padding-right:22px;
}

.research-source-grid > div:nth-child(even){
  padding-left:22px;
  border-left:1px solid var(--journal-line);
}

.research-source-grid dt{
  color:var(--journal-quiet);
  font-size:12px;
}

.research-source-grid dd{
  margin:0;
  color:var(--journal-ink);
  font-size:13px;
  line-height:1.55;
}

.research-source-links{
  display:flex;
  flex-wrap:wrap;
  gap:10px 22px;
  margin-top:18px;
  font-size:12px;
}

.research-verdict{
  margin:0 0 44px;
}

.journal-article .research-verdict h2{
  max-width:24ch;
  margin:0;
  font-size:28px;
  line-height:1.35;
}

.research-numbers{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  margin-top:26px;
  border-top:1px solid var(--journal-ink);
  border-bottom:1px solid var(--journal-line);
}

.research-numbers > div{
  padding:18px 20px 18px 0;
}

.research-numbers > div + div{
  padding-left:20px;
  border-left:1px solid var(--journal-line);
}

.research-numbers strong{
  display:block;
  font-family:var(--mono,"IBM Plex Mono",monospace);
  font-size:28px;
  font-weight:500;
  line-height:1;
}

.research-numbers span{
  display:block;
  margin-top:10px;
  color:var(--journal-muted);
  font-size:12px;
  line-height:1.55;
}

.research-interpretation{
  margin:42px 0;
  padding:26px 0;
  border-top:2px solid var(--journal-ink);
  border-bottom:1px solid var(--journal-line);
}

.journal-article .research-interpretation h2{
  margin:0 0 18px;
  font-size:24px;
}

.research-interpretation ul{
  margin-bottom:0;
}

.research-reading-note{
  margin-top:44px;
  padding:24px 0 2px;
  border-top:1px solid var(--journal-line);
}

.journal-article .research-reading-note h2{
  margin-top:0;
  font-size:20px;
}

.research-citation{
  margin-top:46px;
  padding-top:22px;
  border-top:1px solid var(--journal-line);
  color:var(--journal-muted);
  font-size:13px;
  line-height:1.7;
}

@media(max-width:1000px){
  .journal-heading-row{
    grid-template-columns:1fr;
    gap:24px;
  }

  .journal-feature-grid{
    grid-template-columns:minmax(0,1.35fr) minmax(280px,.9fr);
  }

  .journal-feature-lead{
    grid-template-columns:210px minmax(0,1fr);
  }

  .journal-feature-support{
    grid-template-columns:112px minmax(0,1fr);
  }

  .journal-stream-layout{
    grid-template-columns:minmax(0,1fr) 230px;
    gap:40px;
  }

  .journal-article-shell,
  .journal-article-page:not(.journal-has-rail) .journal-article-shell{
    grid-template-columns:minmax(0,760px);
  }

  .journal-article-rail{
    display:none;
  }

  .journal-item{
    grid-template-columns:190px minmax(0,1fr);
  }
}

@media(max-width:760px){
  .journal-page .journal-masthead .wrap,
  .journal-page .journal-featured,
  .journal-page .journal-index,
  .journal-page .journal-article-shell{
    padding-inline:20px;
  }

  .journal-masthead{
    padding-top:30px;
  }

  .journal-masthead h1{
    font-size:32px;
  }

  .journal-topics{
    gap:22px;
    margin-right:-20px;
  }

  .journal-featured{
    padding-top:16px;
    padding-bottom:0;
  }

  .journal-feature-grid{
    display:block;
  }

  .journal-feature-lead{
    display:grid;
    grid-template-columns:84px minmax(0,1fr);
    gap:12px;
    padding:12px 0;
    border-right:0;
    border-bottom:1px solid var(--journal-line);
  }

  .journal-feature-lead .journal-feature-media{
    aspect-ratio:4/3;
  }

  .journal-feature-lead .journal-feature-copy{
    padding-top:0;
  }

  .journal-feature-lead h2{
    font-size:15px;
    line-height:1.4;
  }

  .journal-feature-lead .journal-feature-copy p{
    display:none;
  }

  .journal-feature-support{
    grid-template-columns:84px minmax(0,1fr);
    gap:12px;
    padding:12px 0;
  }

  .journal-feature-lead h2,
  .journal-feature-support h3{
    display:-webkit-box;
    overflow:hidden;
    font-size:15px;
    line-height:1.4;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:3;
  }

  .journal-feature-meta{
    gap:8px 12px;
    margin-top:6px;
    font-size:11px;
  }

  .journal-stream-layout{
    display:flex;
    flex-direction:column;
    gap:48px;
  }

  .journal-item{
    grid-template-columns:112px minmax(0,1fr);
    gap:14px;
    padding:18px 0;
  }

  .journal-item.journal-item-no-image{
    grid-template-columns:1fr;
  }

  .journal-item h3{
    font-size:16px;
    line-height:1.45;
  }

  .journal-item p{
    display:none;
  }

  .journal-item-meta{
    margin-top:8px;
    font-size:11px;
  }

  .journal-item-meta time{
    display:none;
  }

  .journal-paths{
    position:static;
    width:100%;
  }

  .journal-article-page .journal-masthead{
    padding:30px 0 26px;
  }

  .journal-article-page .journal-masthead h1{
    font-size:30px;
  }

  .journal-article-shell{
    padding-top:24px;
    padding-bottom:68px;
  }

  .journal-article{
    font-size:16px;
    line-height:1.82;
  }

  .journal-brief-dek{
    font-size:16px;
  }

  .research-source-grid{
    grid-template-columns:1fr;
  }

  .research-source-grid > div:nth-child(odd),
  .research-source-grid > div:nth-child(even){
    padding-right:0;
    padding-left:0;
    border-left:0;
  }

  .research-numbers{
    grid-template-columns:1fr;
  }

  .research-numbers > div,
  .research-numbers > div + div{
    display:grid;
    grid-template-columns:72px minmax(0,1fr);
    gap:14px;
    align-items:center;
    padding:14px 0;
    border-left:0;
  }

  .research-numbers > div + div{
    border-top:1px solid var(--journal-line);
  }

  .research-numbers strong{
    font-size:24px;
  }

  .research-numbers span{
    margin-top:0;
  }
}

@media(prefers-reduced-motion:reduce){
  .journal-filter::after,
  .journal-feature-media img,
  .journal-item-media img{
    transition:none;
  }
}
