/* Publication layer reuses the original type, palette and photo treatment. */
body.editorial {
  background:#f4f1e9;
  overflow-x:visible;
}
.editorial {
  --paper:#f4f1e9;
  --muted:#56544f;
  --edge:#b2afa6;
}
.editorial .wrap {
  width:min(100% - 4rem,84rem);
  margin-inline:auto;
}
.review-note {
  padding:.4rem 1rem;
  color:var(--paper);
  background:var(--ink);
  text-align:center;
  font-size:.75rem;
}
.editorial .site-header {
  background:var(--paper);
  border-bottom:2px solid;
}
.editorial .site-header .frame {
  max-width:92rem;
  margin:auto;
  min-height:6rem;
  padding-inline:2rem;
}
.editorial .wordmark {
  font-size:1.45rem;
}
.editorial .wordmark span:last-child {
  color:#aa2c14;
}
.editorial .site-nav a {
  font-size:.9rem;
  letter-spacing:0;
  text-transform:none;
  padding:.9rem 1rem;
}
.editorial .site-nav a:hover {
  text-decoration:underline;
  text-underline-offset:.3em;
}
.editorial h1,.editorial h2,.editorial h3 {
  font-family:var(--display);
  font-weight:700;
  text-wrap:balance;
}
.editorial p {
  line-height:1.65;
}
.kicker,.eyebrow,.story-meta {
  font-size:.78rem;
  font-weight:600;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.kicker,.eyebrow {
  margin:0 0 1rem;
}
.editorial figure {
  margin:0;
}
.editorial img {
  display:block;
  width:100%;
  height:auto;
}
.editorial figcaption {
  font-size:.75rem;
  line-height:1.5;
  padding-block:.6rem;
  color:var(--muted);
}
.read-link,.back-link {
  display:inline-flex;
  align-items:center;
  min-height:2.75rem;
  gap:1rem;
  text-decoration:underline;
  text-underline-offset:.25em;
  font-weight:600;
}
.read-link:hover,.prose a:hover {
  text-decoration-thickness:3px;
}
.cover {
  display:grid;
  grid-template-columns:1.1fr 1fr;
  background:var(--signal);
  border-bottom:2px solid;
}
.cover-copy {
  padding:clamp(2rem,4.4vw,5rem);
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.cover h1 {
  font-size:clamp(3.6rem,6.6vw,7.1rem);
  text-transform:uppercase;
  line-height:.93;
  letter-spacing:-.035em;
  margin:0;
  max-width:12ch;
}
.cover-deck {
  max-width:43ch;
  font-size:1.06rem;
  margin-top:1.5rem;
}
.cover-deck p {
  margin:0 0 .8rem;
}
.cover-photo {
  min-height:35rem;
  border-left:2px solid;
  position:relative;
}
.cover-photo img {
  height:100%;
  position:absolute;
  object-fit:cover;
  object-position:50% 43%;
}
.cover-photo figcaption {
  position:absolute;
  bottom:0;
  left:0;
  color:white;
  background:#050505;
  padding:.5rem .8rem;
}
.cover-links {
  display:flex;
  flex-wrap:wrap;
  gap:.25rem 1.6rem;
}
.section-heading {
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:1.5rem;
  margin-bottom:2rem;
}
.section-heading h2 {
  font-size:2.3rem;
  text-transform:uppercase;
  margin:0;
}
.section-heading p {
  max-width:51ch;
  margin:0;
}
.writing-section {
  padding-block:4.5rem;
}
.lead-story {
  display:grid;
  grid-template-columns:1.05fr 1fr;
  gap:3rem;
  align-items:center;
  padding-bottom:3rem;
  border-bottom:1px solid var(--edge);
}
.lead-story img {
  aspect-ratio:1.24;
  object-fit:cover;
  object-position:center 43%;
}
.lead-story h2 {
  font-size:clamp(2.7rem,4.1vw,4.7rem);
  line-height:1;
  letter-spacing:-.025em;
  margin:1rem 0;
  max-width:16ch;
}
.lead-story p {
  max-width:43ch;
  font-size:1.08rem;
}
.story-pair {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:3rem;
  margin-top:2.7rem;
}
.story-card {
  min-width:0;
}
.story-card .story-image {
  aspect-ratio:1.9;
  object-fit:cover;
  object-position:center 45%;
  margin-bottom:1.3rem;
}
.story-card h3 {
  font-size:clamp(2rem,3vw,3rem);
  line-height:1.08;
  margin:.75rem 0;
  max-width:22ch;
}
.story-card p {
  max-width:53ch;
}
.story-card h3 a:hover,.lead-story h2 a:hover {
  text-decoration:underline;
  text-underline-offset:.12em;
  text-decoration-thickness:2px;
}
.watch-feature {
  display:grid;
  grid-template-columns:.85fr 1fr;
  background:#dfddd4;
  border-block:2px solid;
}
.watch-feature figure {
  min-height:31rem;
  position:relative;
}
.watch-feature img {
  height:100%;
  position:absolute;
  object-fit:cover;
  object-position:center 40%;
}
.watch-feature .feature-copy {
  padding:clamp(2rem,5vw,6rem);
}
.feature-copy h2,.resource-home h2,.community-home h2 {
  font-size:clamp(2.7rem,4.4vw,5rem);
  line-height:1;
  letter-spacing:-.025em;
  margin:.8rem 0 1.5rem;
}
.feature-copy p {
  max-width:45ch;
  font-size:1.1rem;
}
.resource-home {
  background:var(--ink);
  color:var(--paper);
  padding-block:4.5rem;
}
.resource-home .wrap {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:4rem;
}
.resource-home p {
  max-width:47ch;
  font-size:1.08rem;
}
.resource-index {
  margin:0;
  padding:0;
  list-style:none;
  align-self:center;
}
.resource-index li {
  border-top:1px solid #706e67;
}
.resource-index li:last-child {
  border-bottom:1px solid #706e67;
}
.resource-index a {
  padding-block:1.7rem;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  font-family:var(--display);
  font-size:2.1rem;
}
.resource-index a:hover {
  color:var(--signal);
}
.resource-index span {
  color:var(--signal);
}
.community-home {
  padding-block:4.5rem;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:4rem;
}
.community-home h2 {
  max-width:13ch;
}
.community-home p {
  font-size:1.1rem;
  margin-top:0;
  max-width:49ch;
}
.editorial .site-footer {
  color:var(--ink);
  background:var(--signal);
  padding:2.5rem max(2rem,calc((100% - 84rem)/2));
  border-top:2px solid;
}
.footer-signoff {
  font-family:var(--display);
  font-size:2rem;
  font-weight:700;
  margin:0 0 1rem;
}
.editorial-footer-links {
  display:flex;
  gap:.3rem 1.8rem;
  flex-wrap:wrap;
}
.editorial-footer-links a {
  min-height:2.75rem;
  display:inline-flex;
  align-items:center;
  text-decoration:underline;
  text-underline-offset:.2em;
}
.editorial .footer-bottom {
  padding:1.5rem 0 0;
  margin-top:1rem;
  border-top:1px solid;
  text-transform:none;
  letter-spacing:0;
}
.page-opening {
  padding-block:3.5rem;
  border-bottom:2px solid;
  background:var(--signal);
}
.page-opening h1,.archive-intro h1 {
  font-size:clamp(3.5rem,7vw,7rem);
  text-transform:uppercase;
  line-height:.98;
  letter-spacing:-.03em;
  margin:0 0 1.5rem;
  max-width:16ch;
}
.page-opening p {
  max-width:57ch;
  font-size:1.18rem;
  margin:0 0 1rem;
}
.page-opening p:last-child {
  margin-bottom:0;
}
.page-jumps {
  display:flex;
  gap:.5rem 2rem;
  flex-wrap:wrap;
  padding-block:1rem;
  border-bottom:1px solid;
}
.page-jumps a {
  display:inline-flex;
  align-items:center;
  min-height:2.75rem;
  text-decoration:underline;
  text-underline-offset:.2em;
}
.desk-section {
  display:grid;
  grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr);
  gap:4rem;
  padding-block:3.5rem;
  border-bottom:1px solid var(--edge);
}
.desk-section>h2 {
  min-width:0;
  overflow-wrap:anywhere;
  font-size:2.7rem;
  line-height:1.03;
  margin:0;
}
.prose {
  min-width:0;
  max-width:65ch;
  font-size:1.1rem;
  line-height:1.8;
}
.prose p {
  margin:0 0 1.5rem;
}
.prose h2 {
  font-size:2.25rem;
  line-height:1.12;
  letter-spacing:-.02em;
  margin:2.75rem 0 1.2rem;
}
.prose li {
  margin-bottom:.8rem;
  padding-left:.25rem;
}
.prose ul {
  padding-left:1.3rem;
}
.prose a {
  text-decoration:underline;
  text-underline-offset:.2em;
}
.prose blockquote {
  margin:2rem 0;
  padding:1.4rem 1.6rem;
  border-left:4px solid #aa2c14;
  background:#e8e3d7;
}
.prose blockquote p {
  margin:0;
}
.status-note {
  border-top:1px solid var(--edge);
  padding-top:1rem;
  font-size:.9rem;
}
.about-opening {
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:4rem;
  padding-block:4rem;
  align-items:start;
}
.about-opening h1 {
  font-size:clamp(3.3rem,5.5vw,6rem);
  text-transform:uppercase;
  line-height:.97;
  letter-spacing:-.03em;
  margin:0 0 2rem;
}
.about-opening .prose {
  font-size:1.18rem;
}
.about-opening img {
  aspect-ratio:.86;
  object-fit:cover;
  object-position:center;
}
.about-body {
  border-top:2px solid;
  padding-block:1rem 4rem;
}
.about-body .prose {
  margin-left:auto;
  margin-right:auto;
}
.editorial .reading {
  max-width:70rem;
  padding-block:3rem 4.5rem;
}
.reading header {
  margin-bottom:2rem;
}
.reading h1 {
  font-size:clamp(3rem,5.4vw,5.8rem);
  line-height:1;
  letter-spacing:-.025em;
  margin:0;
  max-width:19ch;
}
.back-link {
  margin-bottom:1.5rem;
}
.article-deck {
  max-width:53ch;
  font-size:1.25rem;
}
.byline {
  font-size:.9rem;
}
.reading>.prose {
  margin-inline:auto;
}
.article-photo {
  margin-block:2rem 3rem!important;
}
.article-photo img {
  max-height:33rem;
  object-fit:cover;
  object-position:center 43%;
}
.article-note {
  border-top:1px solid var(--edge);
  padding-top:1.5rem;
  margin-top:3rem;
  font-size:.9rem;
}
/* Keep the subject visible when portrait archive images fill wide slots. */
.editorial img[src$="/cafe.jpg"] {
  object-position:center 22%;
}
.editorial img[src$="/mountain.jpg"] {
  object-position:center 70%;
}
.related {
  padding-top:1rem;
}
.table-wrap {
  overflow-x:auto;
  margin-block:2rem;
  border:1px solid var(--edge);
}
.table-wrap:focus-visible {
  outline-offset:3px;
}
.prose table {
  border-collapse:collapse;
  min-width:38rem;
  width:100%;
  font-size:.9rem;
  line-height:1.5;
}
.prose th,.prose td {
  text-align:left;
  vertical-align:top;
  padding:.8rem;
  border-bottom:1px solid var(--edge);
}
.prose th {
  background:#e8e3d7;
}
.archive-intro {
  padding-block:3rem;
}
.archive-intro p {
  max-width:59ch;
  font-size:1.15rem;
}
.archive-list {
  padding-bottom:4rem;
}
.archive-row {
  display:grid;
  grid-template-columns:17rem 1fr;
  gap:2.5rem;
  border-top:1px solid;
  padding-block:2rem;
  align-items:center;
}
.archive-row img {
  aspect-ratio:1.4;
  object-fit:cover;
}
.archive-row h2 {
  font-size:2.5rem;
  line-height:1.1;
  margin:.6rem 0;
}
.archive-row p {
  max-width:57ch;
  margin-block:.8rem;
}
.archive-small {
  border-top:1px solid var(--edge);
  padding-top:2rem;
}
.archive-small h2 {
  font-size:1.8rem;
}
@media(min-width:1550px) {
  .cover {
    padding-inline:max(0px,calc((100% - 96rem)/2));
  }
}
@media(max-width:980px) {
  .cover-copy {
    padding:2rem;
  }
  .cover h1 {
    font-size:clamp(3.4rem,7.4vw,5.5rem);
  }
  .cover-photo {
    min-height:36rem;
  }
  .lead-story,.story-pair {
    gap:2rem;
  }
  .resource-home .wrap,.community-home {
    gap:2.5rem;
  }
  .desk-section {
    gap:2.5rem;
    grid-template-columns:.7fr 1.3fr;
  }
  .about-opening {
    gap:2rem;
  }
}
@media(max-width:700px) {
  .editorial .wrap {
    width:calc(100% - 2rem);
  }
  .editorial .site-header .frame {
    display:flex;
    flex-wrap:wrap;
    padding:.85rem 1rem .4rem;
    gap:.5rem;
  }
  .editorial .wordmark {
    font-size:1.15rem;
  }
  .editorial .site-nav {
    display:flex;
    width:auto;
    flex:1;
    justify-content:flex-end;
    gap:0;
  }
  .editorial .site-nav a {
    font-size:.82rem;
    padding:.7rem .6rem;
  }
  .cover {
    display:grid;
    grid-template-columns:1fr;
  }
  .cover-copy {
    display:contents;
  }
  .cover-copy>.kicker {
    grid-row:1;
    padding:1.5rem 1rem 0;
    margin-bottom:.8rem;
  }
  .cover h1 {
    grid-row:2;
    font-size:clamp(3.7rem,12vw,5.8rem);
    padding:0 1rem 1.6rem;
    max-width:13ch;
  }
  .cover-photo {
    grid-row:3;
    min-height:0;
    height:21rem;
    border-left:0;
    border-block:2px solid;
  }
  .cover-photo img {
    object-position:center 49%;
  }
  .cover-deck {
    grid-row:4;
    margin:0;
    padding:1.5rem 1rem .5rem;
    max-width:none;
    font-size:1.05rem;
  }
  .cover-links {
    grid-row:5;
    padding:0 1rem 1.5rem;
  }
  .section-heading {
    display:block;
    margin-bottom:1.8rem;
  }
  .section-heading p {
    margin-top:1rem;
  }
  .writing-section {
    padding-block:2.5rem;
  }
  .lead-story,.story-pair,.watch-feature,.resource-home .wrap,.community-home,.desk-section,.about-opening {
    grid-template-columns:minmax(0,1fr);
    gap:1.5rem;
  }
  .lead-story {
    padding-bottom:2rem;
  }
  .lead-story h2 {
    font-size:3rem;
    max-width:18ch;
  }
  .story-pair {
    margin-top:2rem;
    gap:2rem;
  }
  .story-card+.story-card {
    border-top:1px solid var(--edge);
    padding-top:2rem;
  }
  .story-card h3 {
    font-size:2.25rem;
  }
  .watch-feature {
    gap:0;
  }
  .watch-feature figure {
    min-height:23rem;
  }
  .watch-feature .feature-copy {
    padding:2rem 1rem;
  }
  .feature-copy h2,.resource-home h2,.community-home h2 {
    font-size:3rem;
  }
  .resource-home {
    padding-block:2.5rem;
  }
  .resource-index a {
    padding-block:1.2rem;
    font-size:1.8rem;
  }
  .community-home {
    padding-block:2.5rem;
  }
  .community-home h2 {
    max-width:16ch;
  }
  .editorial .site-footer {
    padding:2rem 1rem;
  }
  .editorial-footer-links {
    gap:.3rem 1.5rem;
  }
  .page-opening {
    padding-block:2.5rem;
  }
  .page-opening h1,.archive-intro h1 {
    font-size:clamp(2.5rem,12vw,3.5rem);
  }
  .page-opening p {
    font-size:1.08rem;
  }
  .page-jumps {
    gap:.2rem 1.3rem;
  }
  .desk-section {
    padding-block:2.5rem;
  }
  .desk-section>h2 {
    font-size:2.5rem;
  }
  .prose {
    font-size:1.06rem;
  }
  .about-opening {
    padding-block:2.5rem;
  }
  .about-opening h1 {
    font-size:3.5rem;
  }
  .about-opening img {
    max-height:27rem;
    object-position:center 43%;
  }
  .reading h1 {
    font-size:3rem;
  }
  .editorial .reading {
    padding-top:1.5rem;
  }
  .article-photo img {
    max-height:23rem;
  }
  .archive-row {
    grid-template-columns:1fr;
    gap:1.3rem;
  }
  .archive-row img {
    max-height:20rem;
  }
  .archive-row h2 {
    font-size:2.3rem;
  }
}
@media(max-width:390px) {
  .editorial .site-nav {
    flex-basis:100%;
    justify-content:space-between;
  }
  .editorial .site-nav a {
    padding-inline:.7rem;
  }
  .cover h1 {
    font-size:3.6rem;
  }
}
@media print {
  .site-header,.site-footer,.review-note,.page-jumps,.back-link {
    display:none!important;
  }
  body.editorial {
    background:white;
  }
  .editorial .wrap {
    width:100%;
  }
  .prose {
    max-width:none;
    font-size:11pt;
  }
  .table-wrap {
    overflow:visible;
  }
  .prose table {
    min-width:0;
    font-size:9pt;
  }
  .article-photo {
    display:none;
  }
}
