/* Own article layer. Existing UI2/CSS4 remain byte-identical. */
.article-section,.article-main{box-sizing:border-box;width:min(1120px,100%);margin:0 auto;padding:40px 20px;color:#292929;background:#fff}
.article-main{min-height:55vh}.article-section h2,.article-main h1{font-size:clamp(25px,4vw,38px);line-height:1.25;text-align:left;margin:0 0 24px;overflow-wrap:anywhere}
.article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;list-style:none;margin:0;padding:0}
.article-card{box-sizing:border-box;min-width:0;padding:24px;border:1px solid #ddd;border-top:3px solid currentColor;border-radius:4px;background:#fff;display:flex;flex-direction:column}
.article-card h2,.article-card h3{font-size:21px;line-height:1.4;margin:0 0 18px;text-transform:none;overflow-wrap:anywhere;font-weight:600}
.article-card a{color:inherit}.article-read{margin-top:auto;display:inline-flex;align-items:center;min-height:44px;text-decoration:underline}
.article-pagination,.article-more{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:28px 0 0}
.article-pagination a,.article-pagination span,.article-more a{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px 12px;border:1px solid #777;color:inherit;background:white;text-decoration:none}
.article-pagination [aria-current]{background:#292929;color:white}.article-section a:focus-visible,.article-main a:focus-visible{outline:3px solid #236ba6;outline-offset:3px}
.article-breadcrumb{display:inline-block;margin-bottom:20px;color:inherit;min-height:44px}
@media(max-width:700px){.article-grid{grid-template-columns:1fr}.article-section,.article-main{padding:30px 16px}.article-card{padding:20px}}

/* Own mobile menu glyph: independent of legacy icon fonts; UI2 owns state. */
@media (max-width: 900px) {
  body .menu-container .menu-button:not([hidden])::before {
    content: "" !important;
    display: block;
    position: static;
    flex: 0 0 24px;
    width: 24px;
    height: 18px;
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    transform: none;
    color: #fff;
    border: 0;
    border-top: 3px solid currentColor;
    border-bottom: 3px solid currentColor;
    background: linear-gradient(currentColor, currentColor) center / 100% 3px no-repeat;
    pointer-events: none;
  }
  body .menu-container .menu-button:not([hidden])::after { content: none !important; }
  /* Legacy content headings must fit the content column, including long words. */
  body .wrapper h1 {
    max-width: 100%;
    font-size: clamp(26px, 7vw, 36px);
    line-height: 1.3;
    overflow-wrap: anywhere;
    word-break: normal;
  }
  body .wrapper h1 strong { font-size: inherit; line-height: inherit; }
}
