/* V4.0: Wide editorial reading layout for article detail only. */
.wrap:has(> .article-detail){max-width:1400px;width:100%;padding-inline:clamp(16px,3vw,46px)}
.wrap > .article-detail{max-width:1180px;width:100%;margin:0 auto;padding:clamp(24px,4vw,58px) clamp(24px,5vw,76px);border-radius:22px}
.article-detail h1{font-size:clamp(30px,3.5vw,48px);line-height:1.23;letter-spacing:-.025em;max-width:1100px;margin:22px 0 20px}
.article-detail .lead{max-width:1050px;font-size:clamp(17px,1.5vw,20px);line-height:1.75}
.article-detail .article-featured-image{display:block;width:100%;height:auto;max-height:520px;object-fit:contain;background:#f0f6fb;border-radius:16px;margin:26px auto 32px}
.article-detail p,.article-detail li{font-size:17px;line-height:1.85}
.article-detail h2{font-size:clamp(24px,2.3vw,32px);line-height:1.35;margin-top:36px}
.article-detail h3{font-size:clamp(20px,1.9vw,25px);margin-top:25px}
.article-detail img:not(.article-featured-image),.article-detail video,.article-detail iframe{max-width:100%;height:auto}
.article-detail table{display:block;max-width:100%;overflow-x:auto}
@media(max-width:760px){.wrap:has(> .article-detail){padding-inline:12px;margin-top:15px}.wrap > .article-detail{padding:22px 18px;border-radius:15px}.article-detail h1{font-size:clamp(28px,7vw,37px)}.article-detail .article-featured-image{margin:18px auto 25px;max-height:none}.article-detail p,.article-detail li{font-size:16px}}

/* V4.1 editorial typography: readable text hierarchy without oversized headings */
.wrap > .article-detail{max-width:1140px;padding:clamp(24px,3.5vw,48px) clamp(22px,4.4vw,64px)}
.article-detail{color:#24435e;font-size:16px;line-height:1.75}
.article-detail h1{font-size:clamp(30px,2.85vw,42px);line-height:1.27;letter-spacing:-.018em;font-weight:800;margin:18px 0 18px;color:#0b3865}
.article-detail .lead{font-size:clamp(16px,1.25vw,18px);line-height:1.7;color:#55738e;margin-bottom:20px}
.article-detail p,.article-detail li{font-size:16px;line-height:1.8;margin-bottom:15px}
.article-detail h2{font-size:clamp(22px,1.9vw,27px);line-height:1.35;margin:34px 0 13px;font-weight:800;color:#0a497b}
.article-detail h3{font-size:clamp(19px,1.5vw,22px);line-height:1.4;margin:24px 0 10px;font-weight:750;color:#165984}
.article-detail h4{font-size:18px;line-height:1.45;margin:20px 0 9px}
.article-detail ul,.article-detail ol{padding-left:26px;margin:10px 0 19px}
.article-detail .article-featured-image{max-height:490px;margin:24px auto 28px}
.article-detail .tag{font-size:12px;letter-spacing:.035em}
.article-detail .notice{font-size:14px;line-height:1.7}
.related-articles{max-width:1140px;margin:34px auto 54px}
.related-heading{display:flex;justify-content:space-between;align-items:end;gap:18px;margin:0 0 21px}
.related-eyebrow{font-size:11px;font-weight:850;letter-spacing:1.5px;color:#0879d0}
.related-heading h2{font-size:clamp(24px,2.1vw,30px);color:#0c3d6c;margin:5px 0 4px;line-height:1.3}
.related-heading p{font-size:14px;color:#668098;margin:0}
.related-all{font-size:14px;color:#0874b8;font-weight:750;text-decoration:none;white-space:nowrap}
.related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.related-grid .related-card{padding:0!important;margin:0;max-width:none;border:1px solid #dbe9f4;border-radius:15px;background:#fff;overflow:hidden;box-shadow:0 8px 26px #0b3b6110;display:flex;flex-direction:column}
.related-image{display:block;aspect-ratio:16/9;overflow:hidden;background:#eaf3fb}
.related-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s ease}
.related-card:hover .related-image img{transform:scale(1.035)}
.related-card-content{padding:17px 19px 20px;display:flex;flex-direction:column;flex:1}
.related-category{font-size:11px;font-weight:800;text-transform:uppercase;color:#0782c6}
.related-card h3{font-size:18px;line-height:1.4;margin:8px 0 10px;color:#103c65}
.related-card h3 a{color:inherit;text-decoration:none}
.related-card p{font-size:14px;line-height:1.65;color:#668097;margin:0 0 14px;flex:1}
.related-read{font-size:14px;font-weight:800;color:#0874c2;text-decoration:none}
@media(max-width:950px){.related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.wrap > .article-detail{padding:21px 18px}.article-detail h1{font-size:clamp(27px,7vw,34px)}.article-detail .lead{font-size:16px}.article-detail h2{font-size:22px}.article-detail h3{font-size:19px}.article-detail p,.article-detail li{font-size:15.5px;line-height:1.8}.related-grid{grid-template-columns:1fr;gap:14px}.related-heading{align-items:start;flex-direction:column;gap:9px}.related-articles{margin:26px 4px 40px}.related-card h3{font-size:18px}}

/* V4.2: natural editorial typography; explicit headings and normal-weight body text */
.article-detail{font-size:16px;line-height:1.72;font-weight:400;color:#29465e}
.article-detail > p:not(.tag):not(.lead),.article-detail li{font-size:16px;line-height:1.76;font-weight:400;color:#29465e;letter-spacing:0;margin:0 0 17px}
.article-detail > h2{font-size:clamp(21px,1.8vw,25px);line-height:1.38;font-weight:750;color:#104d7c;margin:29px 0 11px}
.article-detail > h3{font-size:clamp(18px,1.45vw,21px);line-height:1.42;font-weight:700;color:#185b84;margin:23px 0 9px}
.article-detail > h4{font-size:17px;line-height:1.45;font-weight:700;margin:20px 0 8px}
.article-detail > h1{font-size:clamp(28px,2.7vw,39px);line-height:1.28}
.article-detail > .lead{font-size:17px;line-height:1.7;font-weight:400}
@media(max-width:620px){.article-detail > h1{font-size:clamp(26px,6.5vw,33px)}.article-detail > h2{font-size:21px}.article-detail > h3{font-size:18px}.article-detail > p:not(.tag):not(.lead),.article-detail li{font-size:15.5px;line-height:1.72}.article-detail > .lead{font-size:16px}}
