.abpp-site-header { position: relative; z-index: 10; background: var(--abpp-color-white); }
.abpp-site-header__inner { display: flex; min-height: 8.5rem; align-items: center; gap: var(--abpp-space-4); justify-content: space-between; }
.abpp-brand { display: inline-flex; align-items: center; color: var(--abpp-color-navy); font-size: 1.05rem; font-weight: 850; letter-spacing: -.045em; line-height: 1; text-decoration: none; text-transform: uppercase; }
.abpp-brand__logo { display: block; width: clamp(9.75rem, 14vw, 12rem); height: auto; }
.abpp-primary-nav ul { display: flex; flex-wrap: wrap; gap: 1.25rem; margin: 0; padding: 0; list-style: none; }
.abpp-primary-nav a { color: var(--abpp-color-text); font-size: .96rem; font-weight: 750; text-decoration: none; }
.abpp-primary-nav a[aria-current="page"], .abpp-primary-nav a:hover { color: var(--abpp-color-teal-dark); text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: .35rem; }
.abpp-menu-toggle { display: none; border: 1px solid var(--abpp-color-border); border-radius: var(--abpp-radius-small); background: var(--abpp-color-white); color: var(--abpp-color-navy); font: inherit; font-weight: 750; padding: .7rem 1rem; }
.abpp-button { display: inline-flex; min-height: 3.6rem; align-items: center; justify-content: center; padding: .85rem 1.45rem; border: 1px solid transparent; border-radius: var(--abpp-radius-pill); font-weight: 800; text-align: center; text-decoration: none; }
.abpp-button--primary { background: var(--abpp-color-teal); color: var(--abpp-color-white); }
.abpp-button--primary:hover { background: var(--abpp-color-teal-dark); color: var(--abpp-color-white); }
.abpp-button--secondary { border-color: currentColor; background: transparent; color: var(--abpp-color-white); }
.abpp-button--secondary:hover { background: rgb(255 255 255 / 14%); color: var(--abpp-color-white); }
.abpp-text-link { color: var(--abpp-color-teal-dark); font-weight: 800; text-decoration-thickness: 2px; text-underline-offset: .24rem; }
.abpp-text-link--light { color: var(--abpp-color-white); }
.abpp-card { display: flex; min-height: 15rem; flex-direction: column; padding: 1.5rem; border: 1px solid var(--abpp-color-border); border-radius: var(--abpp-radius-card); background: var(--abpp-color-white); box-shadow: var(--abpp-shadow-card); }
.abpp-card:hover { box-shadow: var(--abpp-shadow-hover); transform: translateY(-2px); }
.abpp-card h3 { margin-bottom: .65rem; }
.abpp-card p { margin: 0; color: var(--abpp-color-muted); font-size: .96rem; }
.abpp-card a, .abpp-article-card a { margin-top: auto; padding-top: 1rem; color: var(--abpp-color-teal-dark); font-weight: 800; }
.abpp-category-card, .abpp-situation-card { min-height: 9.5rem; padding: 1.35rem; border-radius: var(--abpp-radius-card); background: var(--abpp-color-white); }
.abpp-category-card h3 { margin-bottom: .55rem; }
.abpp-category-card p { margin: 0; color: var(--abpp-color-muted); font-size: .95rem; }
.abpp-situation-card { display: flex; align-items: center; justify-content: space-between; color: var(--abpp-color-navy); font-weight: 800; text-decoration: none; }
.abpp-situation-card:hover { background: #d7f1ef; color: var(--abpp-color-teal-dark); }
.abpp-situation-card span { color: var(--abpp-color-teal); font-size: 1.4rem; }
.abpp-check-list { display: grid; gap: .7rem; margin: 1.4rem 0; padding: 0; list-style: none; }
.abpp-check-list li { display: flex; gap: .65rem; align-items: start; }
.abpp-check-list li::before { color: var(--abpp-color-success); content: "✓"; font-weight: 900; }
.abpp-article-card { overflow: hidden; display: flex; min-height: 21rem; flex-direction: column; border-radius: var(--abpp-radius-card); background: var(--abpp-color-white); box-shadow: var(--abpp-shadow-card); }
.abpp-article-card h3, .abpp-article-card p, .abpp-article-card a { margin-inline: 1.35rem; }
.abpp-article-card h3 { margin-top: .65rem; margin-bottom: .25rem; }
.abpp-article-card__media, .abpp-article-card__image { aspect-ratio: 16 / 9; margin: 0; overflow: hidden; background: linear-gradient(135deg, #b9e8e5, #f3d6ad); }
.abpp-article-card__media img { width: 100%; height: 100%; object-fit: cover; }
.abpp-article-card__image--two { background: linear-gradient(135deg, #d1f0ee, #8fc6cf); }
.abpp-article-card__image--three { background: linear-gradient(135deg, #f7dfbd, #a9ded6); }
.abpp-card__meta { margin-top: 1.2rem; color: var(--abpp-color-muted); font-size: .74rem; font-weight: 800; letter-spacing: .06em; }
.abpp-faq details { border-bottom: 1px solid var(--abpp-color-border); }
.abpp-faq summary { display: flex; min-height: 4.3rem; align-items: center; justify-content: space-between; cursor: pointer; color: var(--abpp-color-navy); font-weight: 800; list-style: none; }
.abpp-faq summary::after { color: var(--abpp-color-teal); content: "+"; font-size: 1.65rem; }
.abpp-faq details[open] summary::after { content: "−"; }
.abpp-faq summary::-webkit-details-marker { display: none; }
.abpp-faq details p { max-width: 48rem; margin: 0 0 1.25rem; color: var(--abpp-color-muted); }
.abpp-main a:focus-visible, .abpp-menu-toggle:focus-visible, .abpp-faq summary:focus-visible { outline: 3px solid var(--abpp-color-focus); outline-offset: 3px; }
