.blog-hero{background:var(--deep);color:#fff;text-align:center;padding:88px 20px 94px}.blog-hero span,.post-meta{color:var(--gold);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.blog-hero h1{font-size:45px;text-transform:uppercase;max-width:800px;margin:16px auto}.blog-hero p{max-width:630px;margin:auto;line-height:1.6}.blog-list{max-width:1120px;margin:auto;padding:68px 20px 80px}.cms-note{color:#7a6f5d;text-align:center;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin:0 0 28px}.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.post-grid article{background:#fff;border:1px solid #e1dfd7;box-shadow:0 5px 18px #172a3a13}.post-grid img{width:100%;height:200px;object-fit:cover}.post-grid article>div{padding:23px}.post-grid h2{font-size:21px;line-height:1.25;margin:12px 0}.post-grid h2 a:hover,.text-link{color:var(--gold)}.post-grid article div>p:not(.post-meta){font-size:13px;line-height:1.6;color:#5f656a}.text-link{font-size:13px;font-weight:800}.article-page{background:#faf7ef;padding:68px 20px 85px}.article-page article{max-width:810px;margin:auto;background:#fff;padding:55px;box-shadow:0 5px 20px #172a3a18}.article-page h1{font-size:43px;line-height:1.14;margin:16px 0 20px}.article-lead{font-size:18px;line-height:1.6;color:#5d6470}.article-image{width:100%;margin:25px 0 28px;max-height:430px;object-fit:cover}.article-page h2{font-size:25px;margin:28px 0 10px}.article-page article>p:not(.post-meta):not(.article-lead){font-size:15px;line-height:1.75;color:#4f5961}.article-page .gold-button{margin-top:20px;color:var(--deep)}@media(max-width:800px){.blog-hero{padding:60px 20px}.blog-hero h1,.article-page h1{font-size:31px}.post-grid{grid-template-columns:1fr;max-width:480px;margin:auto}.article-page{padding:42px 15px}.article-page article{padding:30px 24px}.article-page h2{font-size:22px}}

/* Journal hero: two lines with the approved capitalization */
.blog-hero h1{text-transform:none;line-height:1.15;max-width:900px}

/* Keep the footer at the bottom of the viewport on short pages */
body{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh}
body>main{flex:1 0 auto}

/* Large desktop */
@media(min-width:1900px){.blog-hero{padding:110px 20px 116px}.blog-hero span,.post-meta{font-size:14px}.blog-hero h1{font-size:58px;max-width:1100px;margin:20px auto}.blog-hero p{max-width:820px;font-size:19px}.blog-list{max-width:1500px;padding:90px 20px 110px}.cms-note{font-size:13px;margin-bottom:36px}.post-grid{gap:38px}.post-grid img{height:280px}.post-grid article>div{padding:30px}.post-grid h2{font-size:27px}.post-grid article div>p:not(.post-meta),.text-link{font-size:16px}.article-page article{max-width:1000px}.article-page h1{font-size:52px}.article-lead{font-size:21px}.article-page article>p:not(.post-meta):not(.article-lead){font-size:17px}}

/* Ultrawide: scale the >=1900px layout proportionally so 2560px+ stays readable */
@media (min-width: 2200px) { body { --uw-zoom: 1.15; } }
@media (min-width: 2400px) { body { --uw-zoom: 1.3; } }
@media (min-width: 2800px) { body { --uw-zoom: 1.45; } }
@media (min-width: 3400px) { body { --uw-zoom: 1.75; } }
@media (min-width: 2200px) {
  body {
    zoom: var(--uw-zoom);
    min-height: calc(100dvh / var(--uw-zoom));
  }
}
