.authored-post{
  color:#183c37;
  background:#fff;
  font-size:18px;
  line-height:1.7
}
.authored-post *{
  box-sizing:border-box
}
.authored-container{
  max-width:1200px;
  margin:0 auto;
  padding:0 28px
}
.authored-hero{
  background:#202c2a;
  color:#fff;
  padding:120px 0 64px
}
.authored-breadcrumb{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  font-size:14px;
  margin-bottom:24px
}
.authored-breadcrumb a{
  color:#ddebcd
}
.authored-hero h1{
  max-width:1020px;
  font-size:clamp(32px,4vw,54px);
  line-height:1.14;
  letter-spacing:-1.5px;
  margin:0 0 24px;
  font-weight:700;
  color:#fff
}
.authored-byline{
  display:flex;
  gap:12px 24px;
  flex-wrap:wrap;
  font-size:15px;
  margin:0 0 36px
}
.authored-cover{
  display:block;
  width:100%;
  height:auto;
  border-radius:16px
}
.authored-layout{
  display:grid;
  grid-template-columns:245px minmax(0,1fr);
  gap:56px;
  padding-top:64px;
  padding-bottom:64px
}
.authored-layout aside{
  min-width:0
}
.authored-toc{
  position:sticky;
  top:110px;
  max-height:calc(100vh - 140px);
  overflow-y:auto;
  font-size:14px;
  line-height:1.5;
  border:1px solid #dce7df;
  border-radius:12px;
  padding:20px
}
.authored-toc summary{
  font-size:17px;
  font-weight:700;
  cursor:pointer
}
.authored-toc ol{
  list-style:none;
  padding:0;
  margin:18px 0 0
}
.authored-toc li+li{
  margin-top:12px
}
.authored-toc a{
  color:#31564e;
  text-decoration:none
}
.authored-toc a:hover{
  text-decoration:underline
}
.authored-content{
  min-width:0;
  color:#273f39;
  overflow-wrap:break-word
}
.authored-content p{
  font-size:18px;
  line-height:1.75;
  margin:0 0 22px
}
.authored-content h2{
  font-size:32px;
  line-height:1.25;
  margin:52px 0 22px;
  color:#123c33
}
.authored-content h3{
  font-size:25px;
  line-height:1.3;
  margin:36px 0 16px;
  color:#123c33
}
.authored-content h4{
  font-size:19px;
  line-height:1.4;
  margin:26px 0 12px;
  color:#123c33
}
.authored-content :is(h2,h3,h4){
  scroll-margin-top:110px
}
.authored-content ul,.authored-content ol{
  padding-left:26px;
  margin:16px 0 28px
}
.authored-content li{
  margin-bottom:10px
}
.authored-content li p{
  margin-bottom:10px
}
.authored-content a{
  color:#14775c;
  text-decoration:underline;
  text-underline-offset:3px;
  overflow-wrap:anywhere
}
.authored-content img{
  display:block;
  width:100%;
  height:auto;
  margin:32px auto 12px;
  border-radius:10px
}
.authored-content code{
  font-size:.88em;
  white-space:normal;
  overflow-wrap:anywhere;
  background:#edf4ef;
  padding:2px 5px;
  border-radius:4px
}
.authored-table{
  max-width:100%;
  overflow-x:auto;
  margin:28px 0;
  border:1px solid #cbded1;
  border-radius:10px
}
.authored-table table{
  width:100%;
  border-collapse:collapse;
  font-size:15px;
  line-height:1.5
}
.authored-table th,.authored-table td{
  padding:16px;
  vertical-align:top;
  text-align:left;
  border-bottom:1px solid #dce7df
}
.authored-table th{
  background:#174d3c;
  color:white;
  font-weight:600
}
.authored-table tr:nth-child(even){
  background:#f3f7f3
}
.authored-table tr:last-child td{
  border-bottom:0
}
.authored-author{
  border-top:1px solid #dce7df;
  margin-top:40px;
  padding-top:24px;
  font-size:16px
}
.authored-related{
  padding-top:24px;
  padding-bottom:72px
}
.authored-related>h2{
  font-size:32px;
  margin:0 0 28px
}
.authored-related-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px
}
.authored-related-card{
  display:block;
  border:1px solid #dce7df;
  border-radius:12px;
  overflow:hidden;
  color:#183c37;
  text-decoration:none;
  padding-bottom:24px
}
.authored-related-card img{
  width:100%;
  height:auto;
  aspect-ratio:1200/630;
  object-fit:cover
}
.authored-related-card h3{
  font-size:21px;
  line-height:1.3;
  margin:20px 20px 12px
}
.authored-related-card p{
  font-size:15px;
  line-height:1.5;
  margin:0 20px 18px
}
.authored-related-card span{
  margin:0 20px;
  font-size:15px;
  font-weight:600
}
.authored-cta{
  text-align:center;
  padding:64px 28px;
  background:#e3efdf
}
.authored-cta h2{
  font-size:clamp(28px,3vw,40px);
  line-height:1.2;
  margin:0 0 18px
}
.authored-cta p{
  margin-bottom:24px
}
.authored-post a:focus-visible,.authored-post summary:focus-visible,.authored-table:focus-visible{
  outline:3px solid #27865e;
  outline-offset:4px
}
@media(max-width:900px){
  .authored-layout{
    grid-template-columns:1fr;
    gap:32px;
    padding-top:32px
  }
  .authored-toc{
    position:static;
    max-height:none;
    overflow:visible
  }
  .authored-related-grid{
    grid-template-columns:1fr 1fr
  }
}
@media(max-width:600px){
  .authored-container{
    padding-left:20px;
    padding-right:20px
  }
  .authored-hero{
    padding:110px 0 32px
  }
  .authored-hero h1{
    letter-spacing:-.7px
  }
  .authored-byline{
    gap:8px 16px
  }
  .authored-content h2{
    font-size:27px
  }
  .authored-content h3{
    font-size:23px
  }
  .authored-content p{
    font-size:17px
  }
  .authored-related-grid{
    grid-template-columns:1fr
  }
  .authored-table th,.authored-table td{
    padding:12px
  }
  .authored-related{
    padding-bottom:40px
  }
}

.authored-table-wide table{min-width:680px}
.authored-figure{margin:32px 0}
.authored-figure img{margin:0 0 12px}
.authored-figure figcaption{font-size:15px;line-height:1.5;color:#52665f}
.authored-image-link{display:inline-block;margin-top:6px;font-size:14px}

.authored-byline{color:#dce8e1}
.authored-byline strong{color:inherit}
.authored-content p,.authored-related-card p,.authored-cta p{color:inherit}
