.modular-page{background:#f9f7f2;color:#1a1714}
.modular-block{scroll-margin-top:90px}
.modular-hero{position:relative;min-height:570px;display:flex;align-items:center;background:#202723;color:#fff;overflow:hidden}
.modular-hero>img,.modular-hero-shade{position:absolute;inset:0;width:100%;height:100%}
.modular-hero>img{object-fit:cover;filter:saturate(.65)}
.modular-hero-shade{background:linear-gradient(90deg,#111916e8 0%,#1119169e 48%,#11191622 80%),linear-gradient(0deg,#11191655,transparent 55%)}
.modular-hero-content{position:relative;z-index:1;padding-block:80px;display:block}
.modular-hero-content>.eyebrow{color:#e8e6e0}
.modular-hero-copy{max-width:760px}
.modular-hero-copy h1,.modular-hero-copy h2{font:400 clamp(43px,5vw,70px)/1.08 "Playfair Display",Georgia,serif;letter-spacing:-.035em;margin:18px 0 25px;color:#fff}
.modular-hero-copy h3{max-width:680px;margin:10px 0;color:#f0ede5;font:400 18px/1.65 Arial,Helvetica,sans-serif}
.modular-copy{padding-block:75px}
.modular-copy-with-image{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}
.modular-copy-with-image.align-left figure{order:-1}
.modular-copy figure{margin:0}
.modular-copy figure img{width:100%;height:auto;max-height:620px;object-fit:cover;filter:saturate(.75)}
.modular-prose{max-width:780px;color:#3d3830;font-size:17px;line-height:1.85}
.modular-prose h2,.modular-prose h3,.modular-prose h4{color:#1a1714;font-weight:400;line-height:1.3}
.modular-prose h2{font-size:36px;margin:1.4em 0 .55em}
.modular-prose h3{font-size:27px;margin:1.35em 0 .5em}
.modular-prose h2:first-child,.modular-prose h3:first-child{margin-top:0}
.modular-prose p{color:#3d3830;margin:0 0 1.3em}
.modular-prose a{color:var(--stoa-accent);text-decoration:underline;text-underline-offset:3px}
.modular-prose blockquote{margin:35px 0;padding:20px 25px;border-left:3px solid #acc6ac;background:#f0ede5;font:italic 22px/1.65 "Playfair Display",Georgia,serif}
.modular-freeform{padding-block:55px}
.modular-freeform:empty{display:none}
.modular-blog{padding-block:72px 85px}
.modular-blog .section-heading h2{margin-top:12px}
@media(max-width:760px){
  .modular-hero{min-height:520px}
  .modular-hero-shade{background:linear-gradient(90deg,#111916dc,#11191668)}
  .modular-hero-content{padding-block:60px}
  .modular-hero-copy h1,.modular-hero-copy h2{font-size:43px}
  .modular-hero-copy h3{font-size:16px}
  .modular-copy{padding-block:52px}
  .modular-copy-with-image{grid-template-columns:1fr;gap:35px}
  .modular-copy-with-image.align-left figure{order:0}
  .modular-freeform{padding-block:40px}
  .modular-blog{padding-block:52px}
}
