/* Shared property/project typography, scoped to article pages. */
.article-tools{padding:20px;background:#f0f3ed;border:1px solid #dce2d8;border-radius:16px}
.article-search{display:grid;grid-template-columns:minmax(0,1fr) 210px auto;gap:16px;align-items:end}
.article-search label{display:grid;gap:8px;font-size:14px;color:#465342;min-width:0}
.article-search input,.article-search select{width:100%;min-width:0;height:46px;border:1px solid #cbd3c6;border-radius:8px;padding:0 14px;background:#fff;color:#202c22;font:inherit;font-size:15px;box-sizing:border-box}
.article-search select{appearance:none;padding-right:46px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%23202c22' stroke-width='1.7'%3E%3Cpath d='m4 6 4 4 4-4'/%3E%3C/svg%3E") no-repeat right 16px center}
.article-search button{min-height:46px;border:0;border-radius:8px;padding:0 20px;background:#193025;color:white;font:inherit;font-size:15px;cursor:pointer;display:flex;gap:20px;align-items:center;justify-content:center}
.article-tools .cat-filter{position:static;z-index:auto;height:auto;padding:0;background:transparent;border:0;margin:18px 0 0;flex-wrap:wrap}
.article-results{display:flex;justify-content:space-between;gap:16px;margin:24px 0 16px;font-size:14px;color:#465342;flex-wrap:wrap}
.article-results a{text-decoration:underline;text-underline-offset:4px}
.article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}
.article-grid .blog-card{display:flex;flex-direction:column;gap:0;margin:0;padding:0;border:1px solid #dce2d8;border-radius:16px;background:white;overflow:hidden;min-width:0}
.article-grid .blog-thumb{display:block;aspect-ratio:4/3;overflow:hidden;width:100%;align-self:stretch;border-radius:0}
.article-grid .blog-img{display:block;width:100%;height:100%;object-fit:cover;border-radius:0}
.article-grid .blog-card-body{padding:18px 18px 16px;display:flex;flex:1;flex-direction:column;align-items:flex-start;gap:10px}
.article-grid .blog-cat,body .article-header .container .article-cat{display:inline-block;font-family:var(--font);font-size:13px;font-weight:400;line-height:1.5;letter-spacing:0;text-transform:none;background:#f3f4ef;color:#4c5748;padding:5px 10px;border-radius:99px;margin:0 0 2px}
.article-grid .blog-date{font-family:var(--font);font-size:14px;font-weight:400;line-height:1.5;letter-spacing:0;color:#53614c;text-transform:none;margin:0}
.article-grid .blog-title{font-family:var(--font);font-size:21px;font-weight:500;line-height:1.3;letter-spacing:0;color:#202c22;margin:0}
.article-grid .blog-excerpt{font-family:var(--font);font-size:15px;font-weight:400;line-height:1.65;letter-spacing:0;color:#465342;margin:0 0 6px}
.article-grid .blog-meta{display:block;width:100%;padding-top:14px;margin-top:auto;border-top:1px solid #e1e5dc}
.article-grid .blog-read{font:500 14px/1.5 var(--font);letter-spacing:0;text-transform:none;color:#203a2a}
.article-grid .blog-cat{font-size:12px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;background:transparent;padding:0;border-radius:0}
.article-tags{position:static;z-index:auto;height:auto;display:flex;gap:8px;flex-wrap:wrap;margin:0 0 14px;padding:0;border:0;background:transparent}
.article-tags a{font-size:14px;padding:6px 12px;border:1px solid #dce2d8;border-radius:99px;color:#465342}
.article-empty{grid-column:1/-1;padding:32px;background:#f0f3ed;border-radius:16px;font-size:17px;line-height:1.65}
.article-empty a{text-decoration:underline}
.article-search :focus-visible,.article-grid a:focus-visible,.article-tags a:focus-visible{outline:2px solid #31583f;outline-offset:4px}
body .article-header .container .article-cat{margin-bottom:14px}
.article-layout .article-content{color:#283129;font-size:16px;line-height:1.8}
.article-layout .article-content h2{font-family:var(--font);font-weight:500;font-size:24px;line-height:1.35;color:#202c22;letter-spacing:0}
.article-layout .art-g{border-radius:12px;overflow:hidden}
.article-layout .art-gal-controls button{width:44px;height:44px}
.article-layout .article-sidebar:empty{display:none}
body .article-header .article-lead{font-family:var(--font);font-size:17px;line-height:1.7;color:#465342;max-width:680px}
.article-opening{display:grid;grid-template-columns:256px minmax(0,1fr);gap:32px;align-items:center;padding:24px;background:#f0f3ed;border:1px solid #dce2d8;border-radius:16px;margin-bottom:32px}
.article-opening .art-gallery--lead{margin:0}
.article-opening .art-gal{padding:0;margin:0}
.article-opening-text{font:400 18px/1.8 var(--font);color:#283129;max-width:65ch;min-width:0}
.article-opening-text p{margin:0 0 16px}
.article-opening-text > :last-child{margin-bottom:0}
.article-layout .article-content .art-intro{max-width:none;margin:0 0 32px;padding:24px 28px;background:#f0f3ed;border:1px solid #dce2d8;border-radius:16px;font:400 18px/1.8 var(--font);color:#283129;box-sizing:border-box}
.article-layout .article-content .art-intro > *{max-width:74ch}
.article-layout .article-content .art-intro > :first-child{margin-top:0}
.article-layout .article-content .art-intro > :last-child{margin-bottom:0}
.article-content .art-sec{padding-top:22px;border-top:1px solid #dce2d8}
.article-content .art-sec:last-child:nth-child(odd){grid-column:1/-1}
.article-content .art-sec:last-child:nth-child(odd) p{max-width:80ch}
@media(max-width:700px){.article-opening{grid-template-columns:minmax(0,1fr);gap:20px;padding:18px}.article-opening-text{font-size:16px}.article-opening .art-g{max-width:100%}.article-layout .article-content .art-intro{padding:18px;font-size:16px;margin-bottom:24px}}
.article-content .article-attribution{margin-top:28px;padding:14px 18px;border-left:2px solid #dce2d8;color:#53614c}
.article-content .article-attribution p{margin:0}
.article-content .article-attribution small{font-size:14px;line-height:1.6}
#relatedSection .related-grid{gap:24px;background:transparent}
#relatedSection .rel-card{min-width:0;border:0;border-radius:16px;overflow:hidden;isolation:isolate;background:white}
#relatedSection .rel-media{display:block;aspect-ratio:4/3;overflow:hidden;border-radius:0;line-height:0;background:transparent}
#relatedSection .rel-media .rel-img{display:block;width:100%;height:100%;max-width:100%;margin:0;padding:0;border:0;border-radius:0;object-fit:cover}
#relatedSection .rel-body{padding:18px}
#relatedSection .rel-title{font:500 21px/1.3 var(--font);color:#202c22;letter-spacing:0}
#relatedSection .rel-date{font:400 14px/1.5 var(--font);color:#53614c;letter-spacing:0;text-transform:none}
@media(max-width:1000px){.article-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.article-search{grid-template-columns:minmax(0,1fr) 185px}.article-search button{grid-column:1/-1}}
@media(max-width:600px){.article-grid{grid-template-columns:1fr;gap:20px}.article-search{grid-template-columns:1fr}.article-tools{padding:16px}.article-grid .blog-title{font-size:22px}.article-grid .blog-card-body{padding:18px}.article-layout .article-content h2{font-size:22px}}
