.cms-hero-actions { margin-top: 24px; }
.cms-alert { width: min(1440px, calc(100% - 56px)); margin: 18px auto 0; padding: 14px 18px; border-radius: 14px; font-family: var(--heading-font); font-weight: 700; border: 1px solid var(--border); }
.cms-alert.success { color: #0f5132; background: #d8f3e6; }
.cms-alert.error { color: #842029; background: #f8d7da; }
.cms-filter-bar { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)) auto; gap: 12px; align-items: end; margin-bottom: 28px; padding: 18px; background: linear-gradient(180deg, var(--white), #f7faff); border: 1px solid rgba(31,101,232,.16); border-radius: 18px; box-shadow: 0 18px 52px rgba(1,22,56,.08); }
.cms-filter-bar label, .cms-mini-form label { display: grid; gap: 7px; color: var(--primary-navy); font-family: var(--heading-font); font-size: 12px; font-weight: 800; }
.cms-filter-bar input, .cms-filter-bar select, .cms-mini-form input { min-height: 46px; padding: 10px 12px; border: 1px solid var(--border); border-radius: 12px; background: var(--white); color: var(--text); }
.cms-job-card { display: flex; flex-direction: column; gap: 14px; }
.cms-job-card h3 { font-family: "Poppins", Arial, sans-serif !important; font-weight: 800; letter-spacing: 0; }
.cms-meta-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin: 14px 0 20px; }
.cms-meta-list div { padding: 11px; border-radius: 12px; background: var(--soft-bg); border: 1px solid var(--border); }
.cms-meta-list dt { color: var(--primary-navy); font-family: var(--heading-font); font-size: 11px; font-weight: 900; text-transform: uppercase; }
.cms-meta-list dd { margin: 3px 0 0; color: var(--secondary); font-size: 14px; }
.cms-detail-meta { grid-template-columns: repeat(3, minmax(0, 1fr)); max-width: 860px; }
.cms-empty { padding: 34px; background: linear-gradient(180deg, var(--white), #f8fbff); border: 1px solid rgba(31,101,232,.18); border-radius: 22px; box-shadow: 0 24px 68px rgba(1,22,56,.09); }
.cms-empty p { margin: 10px 0 20px; }
.cms-consent { display: flex !important; grid-template-columns: auto 1fr; align-items: flex-start; gap: 10px; color: var(--secondary) !important; font-family: var(--body-font) !important; font-size: 14px !important; }
.cms-blog-filter input[type='search'] { min-height: 42px; min-width: min(280px, 100%); padding: 9px 12px; border-radius: 999px; border: 1px solid var(--border); margin-left: auto; }
.blog-filter-row a.is-active { color: var(--white); background: var(--primary-navy); }
.cms-featured-post .button { margin-top: 24px; }
.cms-pagination { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 28px; }
.cms-pagination a { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 50%; border: 1px solid var(--border); color: var(--primary-navy); font-family: var(--heading-font); font-weight: 800; }
.cms-pagination a.active, .cms-pagination a:hover { color: var(--white); background: var(--primary-navy); }
.cms-author-line { margin-top: 18px; color: var(--secondary); font-family: var(--heading-font); font-size: 14px; font-weight: 700; }
.cms-toc { display: grid; gap: 8px; margin: 0; padding: 0; list-style: none; }
.cms-toc a { color: var(--primary-navy); font-family: var(--heading-font); font-size: 13px; font-weight: 800; }
.cms-toc .level-3 { padding-left: 12px; }
.cms-mini-form { display: grid; gap: 10px; margin-top: 14px; }
.cms-prev-next { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.cms-prev-next span { display: block; color: var(--royal-blue); font-family: var(--heading-font); font-size: 12px; font-weight: 900; text-transform: uppercase; }
.cms-prev-next strong { display: block; margin-top: 8px; color: var(--text); font-family: var(--title-font) !important; font-size: 20px; font-weight: 400; line-height: 1.2; }
.cms-location-section.alt { background: var(--soft-bg); margin-inline: calc(50% - 50vw); padding-inline: calc(50vw - 50%); }
.split.image-left .image-panel { order: -1; }
.cms-bullet-list { display: grid; gap: 10px; margin: 18px 0 22px; padding-left: 20px; color: var(--secondary); }
@media (max-width: 1180px) { .cms-filter-bar { grid-template-columns: repeat(2, minmax(0, 1fr)); } .cms-filter-bar .button { grid-column: 1 / -1; } }
@media (max-width: 768px) { .cms-filter-bar, .cms-detail-meta, .cms-meta-list, .cms-prev-next { grid-template-columns: 1fr; } .cms-blog-filter input[type='search'] { margin-left: 0; width: 100%; } }
