.ujs-shading-intro { max-width:1248px; margin:36px auto 64px; padding:24px; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:48px; align-items:center; color:#202522; }
.ujs-shading-intro h1 { font-size:44px; line-height:1.15; margin:0 0 24px; }
.ujs-shading-intro p { line-height:1.8; }
.ujs-kicker { font-size:12px; font-weight:600; color:#2454d6; }
.ujs-shading-intro figure { margin:0; }
.ujs-shading-intro img { display:block; width:100%; height:auto; aspect-ratio:3/2; object-fit:cover; border-radius:4px; }
.ujs-shading-intro figcaption { font-size:11px; color:#59615c; margin-top:10px; }
.ujs-action { display:inline-flex; padding:14px 20px; min-height:48px; border-radius:3px; background:#2454d6; color:#fff !important; text-decoration:none !important; font-weight:600; }
.ujs-action:hover { background:#1c43ac; }
.ujs-inline-link { display:inline-block; margin:16px; }
.ujs-post-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:40px 28px; }
.ujs-post { min-width:0; border-bottom:1px solid #dce1db; padding-bottom:24px; display:flex; flex-direction:column; align-items:flex-start; }
.ujs-post > a:first-child { display:block; width:100%; }
.ujs-post img { display:block; width:100%; height:auto; aspect-ratio:4/3; object-fit:cover; }
.ujs-post time { font-size:12px; color:#59615c; margin:20px 0 12px; }
.ujs-post h2 { font-size:23px !important; line-height:1.4; text-transform:none !important; margin-bottom:16px; }
.ujs-post h2 a { color:#202522; text-decoration:none; }
.ujs-post p { font-size:14px; line-height:1.75; }
.ujs-post > a:last-child { margin-top:auto; color:#2454d6; text-underline-offset:4px; }
.ujs-archive-link { margin:36px 0 8px; }
.ujs-retired-notice { max-width:900px; margin:32px auto; padding:24px; background:#f3f5f2; }
@media(max-width:900px) { .ujs-post-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) { .ujs-shading-intro { grid-template-columns:1fr; gap:28px; margin:12px auto 32px; padding:20px; } .ujs-shading-intro h1 { font-size:34px; } .ujs-post-grid { grid-template-columns:1fr; } }
