/* Shared reading layout for news, about and policy articles. */
.reading-page{background:#f5f7f6!important;min-height:100vh;color:#263d34;padding-bottom:32px;box-sizing:border-box}
.reading-page .article{box-sizing:border-box;width:calc(100% - 32px);max-width:820px;margin:20px auto 0!important;padding:28px 24px 34px!important;background:#fff;border:1px solid #e7eeea;border-radius:16px;box-shadow:0 6px 24px #244d3505}
.reading-page .article>.title{display:block!important;font-size:25px!important;line-height:1.5!important;font-weight:650!important;letter-spacing:.02em;color:#1f3d2f!important;margin:0 0 24px!important;padding:0 0 22px!important;border-bottom:1px solid #e9efeb;overflow-wrap:anywhere;text-align:left}
.reading-page .html{display:block;min-width:0;font-size:16px!important;line-height:1.95!important;color:#40534a!important}
.portal-page .portal-section-content{box-sizing:border-box;max-width:860px;margin:20px auto 32px;width:calc(100% - 32px);padding:28px 26px;border:1px solid #e5ede8;box-shadow:0 6px 24px #244d3505}
.portal-page .portal-section-content>h2{font-size:21px;line-height:1.5;color:#204932;margin-bottom:8px;padding-left:12px;border-left:4px solid #168565}
.portal-page .portal-section-desc{margin:0 0 24px;font-size:13px;line-height:1.7;color:#84958a;padding-left:16px}
.portal-page .portal-article{border-top:1px solid #e8eeea;padding-top:24px;margin-top:26px;min-width:0}
.portal-page .portal-article>h3{font-size:21px;line-height:1.55;color:#253f31;letter-spacing:.01em;margin:0 0 20px;overflow-wrap:anywhere}
.portal-page .portal-rich-content{font-size:16px;line-height:1.95;color:#40534a}
:is(.reading-page .html,.portal-rich-content){overflow-wrap:anywhere;word-break:normal;max-width:100%;text-align:left}
:is(.reading-page .html,.portal-rich-content) :is(p,div,section){box-sizing:border-box;max-width:100%;line-height:inherit;white-space:normal}
:is(.reading-page .html,.portal-rich-content) p{font-size:inherit;line-height:1.95;margin:0 0 1.15em;color:inherit;white-space:normal}
:is(.reading-page .html,.portal-rich-content)>:first-child{margin-top:0}
:is(.reading-page .html,.portal-rich-content)>:last-child{margin-bottom:0}
:is(.reading-page .html,.portal-rich-content) :is(h1,h2,h3,h4,h5,h6){line-height:1.6;color:#254635;font-weight:650;margin:1.6em 0 .75em;overflow-wrap:anywhere}
:is(.reading-page .html,.portal-rich-content) h1{font-size:1.45em}
:is(.reading-page .html,.portal-rich-content) h2{font-size:1.3em}
:is(.reading-page .html,.portal-rich-content) h3{font-size:1.15em}
:is(.reading-page .html,.portal-rich-content) :is(h4,h5,h6){font-size:1em}
:is(.reading-page .html,.portal-rich-content) :is(img,video){display:block;max-width:100%!important;height:auto!important;box-sizing:border-box;margin:20px auto;border-radius:8px;object-fit:contain}
:is(.reading-page .html,.portal-rich-content) :is(ul,ol){padding-left:1.6em;margin:.8em 0 1.2em}
:is(.reading-page .html,.portal-rich-content) li{margin:.45em 0;line-height:1.85}
:is(.reading-page .html,.portal-rich-content) li p{margin:.4em 0}
:is(.reading-page .html,.portal-rich-content) blockquote{margin:20px 0;padding:14px 18px;background:#f2f8f4;border-left:3px solid #88b69a;color:#587260;border-radius:0 8px 8px 0}
:is(.reading-page .html,.portal-rich-content) a{color:#138064;text-decoration:underline;text-underline-offset:3px}
:is(.reading-page .html,.portal-rich-content) table{display:block;width:max-content!important;max-width:100%!important;overflow-x:auto;border-collapse:collapse;margin:20px 0;font-size:14px;-webkit-overflow-scrolling:touch}
:is(.reading-page .html,.portal-rich-content) :is(th,td){padding:10px 12px;border:1px solid #dde8e1;line-height:1.7;min-width:70px}
:is(.reading-page .html,.portal-rich-content) th{background:#f2f7f4;color:#355641;font-weight:600}
:is(.reading-page .html,.portal-rich-content) pre{white-space:pre-wrap;padding:14px;background:#f3f6f4;border-radius:8px;overflow-x:auto}
:is(.reading-page .html,.portal-rich-content) hr{border:0;border-top:1px solid #e6ede8;margin:26px 0}
.portal-page .portal-category-grid{max-width:860px;width:calc(100% - 32px);margin:18px auto;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.portal-page:has(.portal-category-grid button:nth-child(4):last-child) .portal-category-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.portal-page .portal-category-grid button{min-width:0;justify-content:center;flex-direction:column;gap:8px;font-size:14px;padding:14px 8px}
@media(max-width:600px){.reading-page .article{width:calc(100% - 24px);margin-top:12px!important;padding:22px 18px 28px!important;border-radius:12px}.reading-page .article>.title{font-size:22px!important;margin-bottom:20px!important;padding-bottom:18px!important}.reading-page .html,.portal-page .portal-rich-content{font-size:15px!important;line-height:1.95!important}.portal-page .portal-section-content{width:calc(100% - 24px);padding:22px 18px;margin-top:16px;border-radius:12px}.portal-page .portal-article>h3{font-size:20px;margin-bottom:18px}.portal-page .portal-category-grid{width:calc(100% - 24px);gap:8px}.portal-page .portal-category-grid button{font-size:12px;padding:13px 5px}.portal-page .portal-category-grid img{width:26px;height:26px}}
/* Portal category navigation and editorial body. */
.portal-editorial .portal-intro{padding:26px max(20px,calc((100vw - 860px)/2));background:linear-gradient(115deg,#e8f3ed,#f5f8f6)}
.portal-editorial .portal-intro h1{font-size:26px;line-height:1.4;margin:9px 0}.portal-editorial .portal-intro p{font-size:13px;line-height:1.8}
.portal-editorial .portal-category-grid,.portal-editorial:has(.portal-category-grid button:nth-child(4):last-child) .portal-category-grid{display:flex;gap:10px;overflow-x:auto;overscroll-behavior-x:contain;padding:2px 0 8px;scrollbar-width:thin;-webkit-overflow-scrolling:touch}
.portal-editorial .portal-category-grid button{flex:1 0 112px;flex-direction:row;gap:9px;padding:14px 12px;border-radius:10px;white-space:nowrap;font-size:14px;min-height:55px}
.portal-editorial .portal-category-grid img{width:24px;height:24px}.portal-editorial .portal-category-grid button.is-active{background:#e4f3eb;border-color:#55a583;box-shadow:0 3px 10px #2973530a}
.portal-editorial .portal-section-content{padding:28px 30px;margin-top:8px}.portal-editorial .portal-section-desc{margin-bottom:20px}
.portal-editorial .portal-article{margin-top:24px;padding-top:26px}.portal-editorial .portal-article:first-of-type{margin-top:0;padding-top:22px}
.portal-editorial .portal-article>h3{font-size:22px;line-height:1.65;margin:0 0 24px;letter-spacing:.02em}
.portal-editorial .portal-rich-content{color:#3b4d43;font-size:16px;line-height:2;text-align:left}
.portal-editorial .portal-rich-content :is(p,li){font-size:inherit;line-height:2;font-weight:400;color:inherit}
.portal-editorial .portal-rich-content h4{font-size:17px;line-height:1.7;margin:26px 0 10px;color:#245239}
.portal-editorial .portal-rich-content :is(h1,h2,h3,h4)+p{margin-top:0}
.portal-editorial .portal-rich-content .portal-image-paragraph{margin:20px 0;line-height:0}
.portal-editorial .portal-rich-content .portal-image-paragraph img{margin:0 auto!important;border-radius:8px;width:auto!important;max-width:100%!important;height:auto!important}
.portal-editorial .portal-rich-content>br{display:none}
.portal-editorial .portal-table-wrap{max-width:100%;overflow:auto;margin:22px 0;border-radius:8px}.portal-editorial .portal-table-wrap table{margin:0;max-width:none!important;display:table}
@media(max-width:600px){.portal-editorial .portal-intro{padding:22px 18px}.portal-editorial .portal-intro h1{font-size:24px}.portal-editorial .portal-category-grid{margin-top:14px;margin-bottom:10px}.portal-editorial .portal-category-grid button{flex:0 0 auto;padding:11px 13px;min-height:46px;font-size:13px;gap:7px}.portal-editorial .portal-category-grid img{width:22px;height:22px}.portal-editorial .portal-section-content{padding:22px 18px 28px}.portal-editorial .portal-article>h3{font-size:20px;margin-bottom:20px}.portal-editorial .portal-rich-content :is(p,li){line-height:1.95}.portal-editorial .portal-rich-content h4{font-size:16px}.portal-editorial .portal-rich-content .portal-image-paragraph{margin:16px 0}}
