/**
 * NAbSA native page styles. Section values are measured from production's Elementor
 * templates (uploads/elementor/css/post-*.css) and live computed styles.
 *
 * @package astra-child
 */

.nabsa-main { display: block; }
.nabsa-wrap { max-width: 1140px; margin: 0 auto; padding: 0 20px; box-sizing: content-box; }
.nabsa-native h1, .nabsa-native h2, .nabsa-native h3, .nabsa-native h4, .nabsa-native h5, .nabsa-native h6 { font-family: var(--nabsa-head); font-weight: 600; }

/* Buttons — Elementor kit: Nunito 500, blue, square-ish (per-widget radius set where used) */
.nabsa-btn {
	display: inline-block;
	padding: 10px 20px;
	border: 0;
	background: var(--nabsa-blue);
	color: #fff !important;
	font: 500 .9em/1 var(--nabsa-accent);
	text-decoration: none;
	cursor: pointer;
	transition: background-color .2s ease, transform .2s ease, box-shadow .2s ease;
}
.nabsa-btn:hover, .nabsa-btn:focus-visible { background: #00265a; transform: translateY(-1px); box-shadow: 0 6px 16px rgba(0, 52, 120, .2); }

/* Generic page */
.nabsa-pagehead { padding: 60px 0 30px; }
.nabsa-pagehead__title { margin: 0; color: var(--nabsa-blue); font-size: 2.5em; }
.nabsa-prose { padding-bottom: 60px; }

/* 404 */
.nabsa-404__inner { padding: 90px 20px 110px; text-align: center; }
.nabsa-404__code { margin: 0; font: 700 120px/1 var(--nabsa-head); color: var(--nabsa-yellow); }
.nabsa-404__title { margin: 10px 0 14px; color: var(--nabsa-blue); font-size: 2.4em; }
.nabsa-404__text { max-width: 560px; margin: 0 auto 26px; color: #4b5563; }
.nabsa-404__search { display: flex; gap: 10px; max-width: 520px; margin: 0 auto 28px; }
.nabsa-404__search input { flex: 1; height: 46px; border: 1px solid #ccd3dc; border-radius: 6px; padding: 0 14px; }
.nabsa-404__search .nabsa-btn { padding: 0 24px; }
.nabsa-404__links { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 10px 26px; justify-content: center; }
.nabsa-404__links a { color: var(--nabsa-blue); font-weight: 600; }

/* ======================================================================== Front page (#25) */
/* Hero — 650px, video over poster, 0.3 black overlay, content vertically centred. */
.nabsa-hero {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	min-height: 650px;
	padding: 0 10px;
	overflow: hidden;
	background: #1b2a1b center / cover no-repeat;
	box-sizing: border-box;
}
.nabsa-hero__video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.nabsa-hero::before { content: ""; position: absolute; inset: 0; z-index: 1; background: #000; opacity: .3; }
.nabsa-hero__box { position: relative; z-index: 2; display: flex; flex-direction: column; align-items: center; gap: 20px; width: 100%; padding: 30px; box-sizing: border-box; text-align: center; }
.nabsa-native .nabsa-hero__title {
	margin: 16px 0 0;
	font: 700 6em/1em var(--nabsa-head);
	letter-spacing: -3.5px;
	color: #fff;
	text-shadow: 2px 2px 2px rgba(0, 0, 0, .26);
}
.nabsa-native .nabsa-hero__lead {
	max-width: 822px;
	margin: 0;
	font: 300 1.7em/1.3em var(--nabsa-head);
	color: #fff;
}
.nabsa-hero__btn {
	margin-left: 20px;
	padding: 12px 24px;
	border-radius: 3px;
	font-size: 15px;
	text-transform: uppercase;
}

/* Who we are — 45 / 55 split, stats right. */
.nabsa-who { position: relative; z-index: 10; background: #fff; padding: 40px 0 30px 15px; }
.nabsa-who__inner { display: flex; align-items: center; max-width: 1140px; margin: 0 auto; }
.nabsa-who__text { flex: 0 0 45%; padding: 10px; box-sizing: border-box; }
.nabsa-native .nabsa-who__title { margin: 0 0 10px; font-size: 2.5em; line-height: 31px; color: #000; }
.nabsa-who__lead { margin-top: 10px; font: 300 1.3rem/1.65 var(--nabsa-body); color: #000; }
.nabsa-who__lead p { margin: 0; }
.nabsa-who__stats { flex: 0 0 55%; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 10px; padding: 0 10px; box-sizing: border-box; }
.nabsa-stat { padding: 10px 20px; text-align: center; }
.nabsa-native .nabsa-stat__value { margin: 0 0 0; font: 600 4em/1em var(--nabsa-head); color: var(--nabsa-blue); }
.nabsa-stat__label { margin: 0; font: 400 1em/1.65em var(--nabsa-body); color: #000; }

/* Blocks — staggered two columns, 1140 container. */
.nabsa-blocks { max-width: 1140px; margin: 0 auto 60px; padding: 10px; box-sizing: content-box; }
.nabsa-blocks__rule { width: 60%; margin: 15px auto 35px; border: 0; border-top: 1px solid #000; height: 0; }
.nabsa-blocks__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; align-items: start; }
.nabsa-blocks__col { display: flex; flex-direction: column; gap: 20px; }
.nabsa-tile { display: flex; flex-direction: column; align-items: flex-start; gap: 20px; padding: 10px; }
.nabsa-tile__img { display: block; width: 100%; height: 480px; object-fit: cover; }
.nabsa-tile.is-short .nabsa-tile__img { height: 330px; }
.nabsa-tile.is-shorter .nabsa-tile__img { height: 290px; }
.nabsa-native .nabsa-tile__title { margin: 0 0 -15px 20px; font-size: 2em; line-height: 1.3; color: var(--nabsa-yellow); }
.nabsa-tile__title span { color: #000; }
.nabsa-tile__text { margin: 0; padding: 0 0 0 20px; font-size: 16px; line-height: 1.65; color: #000; }
.nabsa-tile__btn { margin-left: 20px; padding: 12px 24px; border-radius: 3px; font-size: 15px; }

.nabsa-home-slider { max-width: 1140px; margin: 0 auto 60px; padding: 10px 0; }

@media (max-width: 1024px) {
	.nabsa-native .nabsa-hero__lead { max-width: 548px; }
	.nabsa-who__inner { flex-direction: column; align-items: stretch; gap: 30px; }
	.nabsa-who__text, .nabsa-who__stats { flex: 1 1 auto; }
	.nabsa-tile__img { height: 380px; }
}
@media (max-width: 767px) {
	.nabsa-native .nabsa-hero__title { font-size: 4em; }
	.nabsa-hero__btn { margin-left: 0; }
	.nabsa-who { margin: 30px 0 60px; padding: 10px; }
	.nabsa-native .nabsa-who__title { font-size: 2em; }
	.nabsa-who__lead { max-width: 479px; }
	.nabsa-native .nabsa-stat__value { font-size: 50px; }
	.nabsa-stat { padding: 0; }
	.nabsa-blocks__grid { grid-template-columns: 1fr; gap: 20px; }
	.nabsa-tile__img, .nabsa-tile.is-short .nabsa-tile__img, .nabsa-tile.is-shorter .nabsa-tile__img { height: 260px; }
}

/* ======================================================================== Shared page parts */
/* Page hero (About, archives) — photo + black overlay, centred title (Elementor 6em/700). */
.nabsa-pagehero {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	min-height: 650px;
	padding: 50px 20px;
	box-sizing: border-box;
	background: #2b3a2b center / cover no-repeat;
	text-align: center;
}
.nabsa-pagehero::before { content: ""; position: absolute; inset: 0; background: #000; opacity: var(--nabsa-overlay, .45); }
.nabsa-pagehero__box { position: relative; z-index: 1; display: flex; flex-direction: column; align-items: center; gap: 20px; width: 100%; padding: 30px; box-sizing: border-box; }
.nabsa-native .nabsa-pagehero__title { margin: 16px 0 0; font: 700 6em/1em var(--nabsa-head); letter-spacing: -3.5px; color: #fff; text-shadow: 2px 2px 2px rgba(0, 0, 0, .26); }
.nabsa-native .nabsa-pagehero__intro { max-width: 822px; margin: 0; font: 300 1.7em/1.3em var(--nabsa-head); color: #fff; }

/* Pill buttons (Elementor: Nunito 500, radius 80, padding 20/60). */
.nabsa-pill {
	display: inline-block;
	padding: 20px 60px;
	border-radius: 80px;
	font: 500 1.1em/1 var(--nabsa-accent);
	text-decoration: none;
	text-align: center;
	transition: color .2s ease, background-color .2s ease, transform .2s ease, box-shadow .2s ease;
}
.nabsa-pill--white { background: #fff; color: #000 !important; }
.nabsa-pill--white:hover, .nabsa-pill--white:focus-visible { color: var(--nabsa-blue) !important; transform: translateY(-1px); box-shadow: 0 8px 20px rgba(0, 0, 0, .15); }
.nabsa-pill--blue { background: var(--nabsa-blue); color: #fff !important; }
.nabsa-pill--blue:hover, .nabsa-pill--blue:focus-visible { background: #00265a; transform: translateY(-1px); }
.nabsa-pill--block { display: block; box-sizing: border-box; width: 100%; }

/* Coloured 40/60 bands (About). Padding 0 10%, columns padded 50px. */
.nabsa-band { display: flex; padding: 0 10%; color: #fff; }
.nabsa-band--green { background: var(--nabsa-green); }
.nabsa-band--blue { background: var(--nabsa-blue); }
.nabsa-band__label { flex: 0 0 40%; padding: 50px; box-sizing: border-box; }
.nabsa-band__label--center { display: flex; flex-direction: column; align-items: center; }
.nabsa-band__body { flex: 0 0 60%; display: flex; flex-direction: column; gap: 20px; padding: 50px; box-sizing: border-box; }
.nabsa-band__body--center { justify-content: center; align-self: center; }
.nabsa-native .nabsa-band__title { margin: 0; font-size: 2em; line-height: 1.3; text-transform: capitalize; color: #fff; }
.nabsa-band__text { font: 300 18px/1.65 var(--nabsa-body); color: #fff; }
.nabsa-band__text p { margin: 0 0 1em; }
.nabsa-band__text p:last-child { margin-bottom: 0; }

/* Chevron list (Elementor icon-list, fa-chevron-right 14px, 18px/300 text, 20px rows). */
.nabsa-chevlist { list-style: none; margin: 0 0 0 -3px; padding: 0; display: grid; gap: 20px; }
.nabsa-chevlist li { position: relative; margin: 0; padding-left: 22px; font: 300 18px/1.65 var(--nabsa-body); color: #fff; }
.nabsa-chevlist li::before {
	content: ""; position: absolute; left: 0; top: 6px; width: 14px; height: 14px;
	background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'%3E%3Cpath d='M285.5 273L91.1 467.3c-9.4 9.4-24.6 9.4-33.9 0l-22.7-22.7c-9.4-9.4-9.4-24.5 0-33.9L188.5 256 34.5 101.3c-9.3-9.4-9.3-24.5 0-33.9l22.7-22.7c9.4-9.4 24.6-9.4 33.9 0L285.5 239c9.4 9.4 9.4 24.6 0 34z'/%3E%3C/svg%3E") center / contain no-repeat;
	        mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'%3E%3Cpath d='M285.5 273L91.1 467.3c-9.4 9.4-24.6 9.4-33.9 0l-22.7-22.7c-9.4-9.4-9.4-24.5 0-33.9L188.5 256 34.5 101.3c-9.3-9.4-9.3-24.5 0-33.9l22.7-22.7c9.4-9.4 24.6-9.4 33.9 0L285.5 239c9.4 9.4 9.4 24.6 0 34z'/%3E%3C/svg%3E") center / contain no-repeat;
}

/* 16:9 video box (consent placeholder fills it). */
.nabsa-video { position: relative; width: 100%; aspect-ratio: 16 / 9; background: #0b1b2f; }
.nabsa-video iframe, .nabsa-video .nabsa-yt-placeholder { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }

/* ======================================================================== About (#474) */
.nabsa-infographic { margin: 50px 0; text-align: center; }
.nabsa-infographic img { display: inline-block; max-width: 90%; height: auto; box-shadow: 6px 6px 20px rgba(0, 0, 0, .25); vertical-align: top; }
.nabsa-about-video { width: 85%; margin: 30px auto; padding-bottom: 30px; }
.nabsa-about-video .nabsa-video { width: 86%; margin: 0 auto 30px; }

@media (max-width: 1024px) {
	.nabsa-native .nabsa-pagehero__intro { max-width: 548px; }
}
@media (max-width: 767px) {
	.nabsa-pagehero { min-height: 520px; padding: 20px; }
	.nabsa-native .nabsa-pagehero__title { font-size: 4em; }
	.nabsa-native .nabsa-pagehero__intro { max-width: 100%; }
	.nabsa-infographic { margin: 0; }
	.nabsa-infographic img { max-width: 100%; }
	.nabsa-band { flex-direction: column; padding: 0; }
	.nabsa-band__label, .nabsa-band__body { flex: 1 1 auto; padding: 40px; }
	.nabsa-band__label { padding-bottom: 0; }
	.nabsa-band__label--center { align-items: flex-start; }
	.nabsa-band__text { font-size: 1em; }
	.nabsa-about-video { width: 100%; margin: 0; padding: 0; }
	.nabsa-about-video .nabsa-video { width: 100%; margin: 0; }
}

/* ======================================================================== Projects archive (#518) */
.nabsa-pagehero--archive { padding: 0 10px; }
.nabsa-pagehero--archive .nabsa-pagehero__box { max-width: 1140px; padding: 0; }
.nabsa-pagehero--archive .nabsa-pagehero__title { text-transform: uppercase; }
.nabsa-projects .nabsa-pagehero__intro { max-width: 801px; }
.nabsa-counters { display: flex; flex-wrap: wrap; justify-content: space-around; gap: 20px 0; max-width: 1140px; margin: 40px auto 0; }
.nabsa-counter { display: flex; flex-direction: column; align-items: center; color: var(--nabsa-blue); }
.nabsa-counter__num { font: 600 4em/1 var(--nabsa-head); }
.nabsa-counter__label { margin-top: -20px; font: 400 1.5em/2.5 var(--nabsa-body); }
.nabsa-counters__note { position: relative; z-index: 2; width: 120px; margin: -10px auto 40px; padding-right: 39px; box-sizing: content-box; text-align: center; font: 600 1em/1 var(--nabsa-head); color: var(--nabsa-blue); text-transform: capitalize; }
.nabsa-projects__map { --content-width: 1140px; min-height: 75vh; padding-bottom: 90px; }
.nabsa-bluerule { height: 30px; background: var(--nabsa-blue); }
@media (max-width: 1024px) { .nabsa-projects .nabsa-pagehero__intro { max-width: 548px; } }
@media (max-width: 767px) {
	.nabsa-counters { justify-content: space-between; margin-top: 15px; padding: 15px; }
	.nabsa-counter__num { font-size: 3em; }
	.nabsa-counters__note { margin-top: -23px; padding-right: 40px; }
}

/* ======================================================================== Resources (#2642 + loop #2612) */
.nabsa-res { display: flex; align-items: flex-start; max-width: 1310px; margin: 0 auto; padding: 30px 15px 1px; box-sizing: border-box; }
.nabsa-res__filters { flex: 0 0 33.3333%; position: sticky; top: calc(var(--nabsa-header-h) + 10px); padding: 10px; box-sizing: border-box; }
.nabsa-res__panel { display: flex; flex-direction: column; gap: 20px; }
.nabsa-res__toggle { display: none; }
.nabsa-res__list { flex: 0 0 66.6666%; padding: 10px; box-sizing: border-box; }
.nabsa-res__empty { padding: 40px 20px; font-size: 18px; color: #4b5563; }

/* Filter cards (FacetWP look) */
.nabsa-fcard { background: #fff; padding: 20px; box-shadow: 0 2px 12px rgba(0, 0, 0, .1); }
.nabsa-fcard__label { display: block; margin-bottom: 10px; font-size: 1.1em; font-weight: 600; color: rgb(51, 65, 85); }
.nabsa-fsearch { position: relative; }
.nabsa-fsearch input { width: 100%; height: 40px; box-sizing: border-box; padding: 12px 30px 12px 16px; border: 1px solid #ccc; border-radius: 4px; font-size: 16px; color: rgb(71, 85, 105); background: #fff; }
.nabsa-fsearch input:focus { outline: 2px solid var(--nabsa-sky); outline-offset: 0; }
.nabsa-fsearch svg { position: absolute; right: 8px; top: 50%; width: 18px; height: 18px; transform: translateY(-50%); color: #888; pointer-events: none; }
.nabsa-fcard--acc { padding: 10px 20px; }
.nabsa-acc + .nabsa-acc { border-top: 1px solid #e5e5e5; }
.nabsa-acc__title { display: flex; justify-content: space-between; align-items: center; padding: 20px 10px; cursor: pointer; list-style: none; font-size: 1.1em; font-weight: 600; color: #1f2124; }
.nabsa-acc__title::-webkit-details-marker { display: none; }
.nabsa-acc__title::after { content: ""; border: 5px solid transparent; border-left-color: currentColor; margin-right: 2px; transition: transform .2s ease; transform-origin: 25% 50%; }
.nabsa-acc[open] > .nabsa-acc__title::after { transform: rotate(90deg); }
.nabsa-acc__body { padding: 0 10px 20px 15px; }
.nabsa-check { position: relative; display: flex; align-items: center; gap: 4px; margin: 0 0 15px; padding-left: 25px; cursor: pointer; font-size: .95em; line-height: 18px; letter-spacing: -.5px; color: rgb(51, 65, 85); }
.nabsa-check:last-child { margin-bottom: 0; }
.nabsa-check input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.nabsa-check__box { position: absolute; left: 0; top: 1px; width: 14px; height: 14px; border: 1px solid #888; border-radius: 2px; background: #fff; }
.nabsa-check input:checked + .nabsa-check__box { background: var(--nabsa-blue); border-color: var(--nabsa-blue); }
.nabsa-check input:checked + .nabsa-check__box::after { content: ""; position: absolute; left: 4px; top: 1px; width: 4px; height: 8px; border: solid #fff; border-width: 0 2px 2px 0; transform: rotate(45deg); }
.nabsa-check input:focus-visible + .nabsa-check__box { outline: 2px solid var(--nabsa-sky); outline-offset: 2px; }
.nabsa-check:hover .nabsa-check__label { color: var(--nabsa-blue); }

/* Year range (FacetWP noUiSlider look: 14px track, 20px square handles) */
.nabsa-range { padding: 30px 30px 26px; }
.nabsa-range__track { position: relative; height: 14px; border: 1px solid #d3d3d3; border-radius: 4px; background: #fafafa; }
.nabsa-range__fill { position: absolute; top: 0; bottom: 0; background: #ddd; }
.nabsa-range input[type=range] { position: absolute; left: -10px; right: -10px; top: -4px; width: calc(100% + 20px); height: 20px; margin: 0; background: none; pointer-events: none; -webkit-appearance: none; appearance: none; }
.nabsa-range input[type=range]::-webkit-slider-thumb { pointer-events: auto; -webkit-appearance: none; width: 20px; height: 20px; border: 1px solid #d9d9d9; border-radius: 3px; background: #fff; box-shadow: inset 0 0 1px #fff, inset 0 1px 7px #ebebeb, 0 3px 6px -3px #bbb; cursor: grab; }
.nabsa-range input[type=range]::-moz-range-thumb { pointer-events: auto; width: 18px; height: 18px; border: 1px solid #d9d9d9; border-radius: 3px; background: #fff; cursor: grab; }
.nabsa-range input[type=range]::-webkit-slider-runnable-track { background: none; }
.nabsa-range input[type=range]::-moz-range-track { background: none; }
.nabsa-range__labels { display: flex; justify-content: space-between; margin-top: 20px; font-size: 1.1em; font-weight: 600; color: rgb(51, 65, 85); }

.nabsa-fselected { padding: 0 4px; }
.nabsa-fselected__label { margin: 0 0 8px; font-weight: 600; color: rgb(51, 65, 85); }
.nabsa-fselected__list { list-style: none; margin: 0 0 10px; padding: 0; display: flex; flex-wrap: wrap; gap: 6px; }
.nabsa-fselected__list button, .nabsa-fselected__reset { padding: 5px 10px; border: 1px solid #d0d7e2; border-radius: 3px; background: #fff !important; color: var(--nabsa-blue) !important; font-size: 13px; line-height: 1.2; cursor: pointer; }
.nabsa-fselected__list button:hover, .nabsa-fselected__reset:hover { border-color: var(--nabsa-blue); }
.nabsa-fselected__reset { background: var(--nabsa-blue) !important; color: #fff !important; border-color: var(--nabsa-blue); }

/* Resource rows */
.nabsa-resrow { display: flex; padding: 0 0 30px; margin: 0 0 29px; border-bottom: 1px solid #ededed; }
.nabsa-resrow[hidden] { display: none; }
.nabsa-resrow__body { flex: 0 0 66.6666%; display: flex; flex-direction: column; align-items: flex-start; gap: 5px; padding: 20px 20px 10px; box-sizing: border-box; }
.nabsa-resrow__meta { display: flex; align-items: center; gap: 5px; margin: 0; font-size: 16px; line-height: 26.4px; font-style: italic; color: #959595; }
.nabsa-resrow__meta svg { flex: 0 0 auto; margin-right: 5px; color: #3F444B; font-style: normal; }
.nabsa-native .nabsa-resrow__title { margin: 0; font-size: 1.5em; line-height: 1.2; color: #000; }
.nabsa-resrow__title a { color: #000 !important; text-decoration: none; }
.nabsa-resrow__title a::after { content: ""; display: inline-block; width: .6em; height: .6em; margin-left: .3em; vertical-align: .05em; background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M432 320h-32a16 16 0 0 0-16 16v112H64V128h144a16 16 0 0 0 16-16V80a16 16 0 0 0-16-16H48a48 48 0 0 0-48 48v352a48 48 0 0 0 48 48h352a48 48 0 0 0 48-48V336a16 16 0 0 0-16-16zM488 0H360c-21.4 0-32.1 25.9-17 41l35.7 35.7L135 320.4a24 24 0 0 0 0 34L157.7 377a24 24 0 0 0 34 0l243.6-243.7L471 169c15 15 41 4.5 41-17V24a24 24 0 0 0-24-24z'/%3E%3C/svg%3E") center / contain no-repeat;
	        mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M432 320h-32a16 16 0 0 0-16 16v112H64V128h144a16 16 0 0 0 16-16V80a16 16 0 0 0-16-16H48a48 48 0 0 0-48 48v352a48 48 0 0 0 48 48h352a48 48 0 0 0 48-48V336a16 16 0 0 0-16-16zM488 0H360c-21.4 0-32.1 25.9-17 41l35.7 35.7L135 320.4a24 24 0 0 0 0 34L157.7 377a24 24 0 0 0 34 0l243.6-243.7L471 169c15 15 41 4.5 41-17V24a24 24 0 0 0-24-24z'/%3E%3C/svg%3E") center / contain no-repeat; }
.nabsa-resrow__title a:hover { color: var(--nabsa-blue) !important; }
.nabsa-resrow__text { font-size: 16px; line-height: 1.65; color: #000; }
.nabsa-resrow__text p { margin: 0; }
.nabsa-resrow__btns { display: flex; flex-wrap: wrap; gap: 10px 20px; margin-top: 10px; }
.nabsa-resrow__btn { min-width: 120px; padding: 12px 24px; border-radius: 3px; font-size: 15px; text-align: center; box-sizing: border-box; }
.nabsa-resrow .resource-tags-list { margin-top: 10px; font-size: 16px; color: #000; }
.nabsa-resrow .resource-tag-item { font-style: italic; color: #959595; }
.nabsa-resrow__media { flex: 0 0 33.3333%; padding: 20px 10px; box-sizing: border-box; text-align: center; }
.nabsa-resrow__media img { width: 200px; max-width: 100%; height: auto; box-shadow: 0 2px 8px rgba(0, 0, 0, .08); }

@media (max-width: 1024px) {
	.nabsa-res { flex-direction: column; align-items: stretch; }
	.nabsa-res__filters { position: static; flex: 1 1 auto; }
	.nabsa-res__toggle { display: inline-flex; gap: 8px; align-items: center; padding: 10px 18px; border: 1px solid #d0d7e2; border-radius: 3px; background: #fff !important; color: var(--nabsa-blue) !important; font: 500 15px/1 var(--nabsa-accent); cursor: pointer; }
	.nabsa-res__panel { display: none; margin-top: 16px; }
	.filters-open .nabsa-res__panel { display: flex; }
	.nabsa-res__list { flex: 1 1 auto; }
}
@media (max-width: 767px) {
	.nabsa-resrow { flex-direction: column-reverse; }
	.nabsa-resrow__body { padding: 10px 0; }
	.nabsa-resrow__media { padding: 10px 0; text-align: left; }
}

/* ======================================================================== Dialogues (#1803 + loop #1799) */
.nabsa-pagehero--dialogues .nabsa-pagehero__title { font-size: 7em; }
.nabsa-tabs { display: flex; flex-wrap: wrap; align-items: center; max-width: 1140px; margin: 0 auto; padding: 60px 15px 10px; box-sizing: content-box; }
.nabsa-tabs__tab {
	margin: 0 0 4px; padding: 3px 20px; border: 0; border-radius: 5px;
	background: transparent !important; color: rgb(51, 65, 85) !important;
	font: 400 16px/26.4px var(--nabsa-body); cursor: pointer; transition: background-color .2s ease, color .2s ease;
}
.nabsa-tabs__tab:hover { color: var(--nabsa-blue) !important; }
.nabsa-tabs__tab.is-active { background: var(--nabsa-blue) !important; color: var(--nabsa-yellow) !important; font-weight: 550; }
.nabsa-dialogues__body { display: flex; align-items: flex-start; gap: 20px; max-width: 1140px; margin: 0 auto; padding: 0 15px; box-sizing: content-box; }
.nabsa-dialogues__menu { flex: 0 0 320px; position: sticky; top: calc(var(--nabsa-header-h) + 10px); max-height: calc(100vh - var(--nabsa-header-h) - 20px); overflow-y: auto; }
.nabsa-dialogues__grid { flex: 0 1 800px; min-width: 0; }
.nabsa-dlg { padding-bottom: 30px; margin-bottom: 31px; border-bottom: 1px solid #ededed; }
.nabsa-dlg[hidden] { display: none; }
.nabsa-dlg__card { display: flex; flex-direction: column; gap: 10px; padding: 40px; border-radius: 2px; background: #fff; box-shadow: 0 0 8px 2px rgba(0, 0, 0, .06); scroll-margin-top: calc(var(--nabsa-header-h) + 20px); }
.nabsa-native .nabsa-dlg__title { margin: 0; font-size: 2em; line-height: 1.3; }
.nabsa-dlg__title a { color: var(--nabsa-blue) !important; text-decoration: none; }
.nabsa-dlg__title a:hover { color: #00265a !important; text-decoration: underline; text-underline-offset: 4px; }
.nabsa-dlg__meta { display: flex; flex-wrap: wrap; gap: 0 16px; margin: -10px 0 0; padding: 0; list-style: none; color: var(--nabsa-grey); font-size: 16px; line-height: 26.4px; }
.nabsa-dlg__meta li { display: inline-flex; align-items: center; margin: 0; }
.nabsa-dlg__meta svg { width: 14px; margin-right: 5px; }
.nabsa-dlg__intro { font: 300 1.3rem/1.65 var(--nabsa-body); color: #000; }
.nabsa-dlg__intro p, .nabsa-dlg__desc p { margin: 0; }
.nabsa-dlg__desc { font-size: 16px; line-height: 1.65; color: #000; }
.nabsa-dlg__desc p + p { margin-top: 1em; }
.nabsa-dlg__btns { display: flex; flex-wrap: wrap; gap: 20px; }
.nabsa-dlg__btn { display: inline-flex; align-items: center; gap: 14px; padding: 12px 24px; border-radius: 3px; font: 700 15px/1 var(--nabsa-accent); }

/* Video language tabs: panel left, flag column right (Elementor nested tabs, heading 20px). */
.nabsa-vtabs { display: flex; gap: 10px; padding: 10px 0; }
.nabsa-vtabs__panels { flex: 1 1 auto; min-width: 0; }
.nabsa-vtabs__flags { flex: 0 0 47px; display: flex; flex-direction: column; gap: 4px; }
.nabsa-vtabs__flag { padding: 0 2px; border: 2px solid transparent; border-radius: 2px; background: #fff !important; font: 500 32px/1.1 var(--nabsa-accent); cursor: pointer; opacity: .55; transition: opacity .2s ease; }
.nabsa-vtabs__flag[aria-selected="true"] { opacity: 1; border-color: var(--nabsa-border); }
.nabsa-vtabs__flag:hover { opacity: 1; }

@media (max-width: 1024px) {
	.nabsa-dialogues__menu { display: none; }
	.nabsa-dialogues__grid { flex: 1 1 auto; }
}
@media (max-width: 767px) {
	.nabsa-pagehero--dialogues .nabsa-pagehero__title { font-size: 4em; }
	.nabsa-tabs { padding-top: 30px; }
	.nabsa-dlg__card { padding: 20px; }
	.nabsa-vtabs { flex-direction: column-reverse; }
	.nabsa-vtabs__flags { flex-direction: row; justify-content: flex-end; }
}

/* ======================================================================== Events (#3664 + loop #3666) */
.nabsa-events__sec { max-width: 1440px; margin: 0 auto; padding: 60px; box-sizing: border-box; }
.nabsa-events__sec--up { padding-bottom: 60px; }
.nabsa-events__filters { display: flex; flex-wrap: wrap; gap: 20px; margin-bottom: 20px; }
.nabsa-select { width: auto; height: 40px; padding: 6px 10px; border: 1px solid #ccc; border-radius: 4px; background: #fff; color: rgb(71, 85, 105); font-size: 16px; }
.nabsa-native .nabsa-events__heading { margin: 0 0 20px; font-size: 2em; line-height: 1.3; color: #000; }
.nabsa-events__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 30px; }
.nabsa-events__grid:empty { display: none; }
.nabsa-events__none { margin: 0; padding: 30px 0; text-align: center; }
.nabsa-event { display: flex; flex-direction: column; border: 1px solid #ededed; background: #fff; box-shadow: 0 0 8px 2px rgba(0, 0, 0, .04); transition: transform .25s ease, box-shadow .25s ease; }
.nabsa-event:hover { transform: translateY(-3px); box-shadow: 0 10px 24px rgba(0, 0, 0, .1); }
.nabsa-event[hidden] { display: none; }
.nabsa-event__img { display: block; line-height: 0; }
.nabsa-event__img img { display: block; width: 100%; height: 198px; object-fit: cover; }
.nabsa-event__body { padding: 20px; }
.nabsa-native .nabsa-event__type { margin: 0; font: 800 1em/1.25 var(--nabsa-head); text-transform: uppercase; color: #000; }
.nabsa-native .nabsa-event__title { margin: 0; font: 500 1.4em/1.1em var(--nabsa-head); }
.nabsa-event__title a { color: var(--nabsa-green) !important; text-decoration: none; }
.nabsa-event__title a:hover { text-decoration: underline; text-underline-offset: 3px; }
.nabsa-event__sub { margin-top: 20px; color: #000; }
.nabsa-event__sub p { margin: 0; }
.nabsa-event__foot { display: flex; align-items: center; gap: 5px; margin-top: auto; padding: 20px; font-size: 16px; }
.nabsa-event__area { display: inline-flex; align-items: center; gap: 5px; margin-bottom: -3px; font: 300 1em/1.2 var(--nabsa-head); color: #000; }
.nabsa-event__area svg { color: #6C6C6C; }
.nabsa-event__site { display: inline-flex; align-items: center; gap: 6px; margin-left: auto; font-size: .9em; color: var(--nabsa-green) !important; text-decoration: none; }
.nabsa-event__site svg { color: #6C6C6C; }
.nabsa-event__site:hover { text-decoration: underline; }
@media (max-width: 1024px) { .nabsa-events__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .nabsa-events__sec { padding: 40px 20px; } }
@media (max-width: 767px) { .nabsa-events__grid { grid-template-columns: 1fr; } }

/* ======================================================================== Task Forces (#2851 + loop #2848) */
.nabsa-tflist { max-width: 1140px; margin: 0 auto; padding: 60px 0; box-sizing: content-box; }
.nabsa-tfrow { display: flex; gap: 20px; padding: 10px 10px 40px; margin-bottom: 30px; border-bottom: 1px solid #ededed; }
.nabsa-tfrow:last-child { margin-bottom: 0; border-bottom: 0; padding-bottom: 10px; }
.nabsa-tfrow__img { flex: 0 0 254px; display: block; background: #e8eef5 center / cover no-repeat; transition: opacity .2s ease; }
.nabsa-tfrow__img:hover { opacity: .9; }
.nabsa-tfrow__body { flex: 1 1 auto; display: flex; flex-direction: column; gap: 5px; }
.nabsa-native .nabsa-tfrow__num { margin: 0; font: 400 1em/1.2 var(--nabsa-head); color: #959595; }
.nabsa-native .nabsa-tfrow__title { margin: 0; font: 600 1.5em/1.3 var(--nabsa-head); }
.nabsa-tfrow__title a { color: var(--nabsa-blue) !important; text-decoration: none; }
.nabsa-tfrow__title a:hover { text-decoration: underline; text-underline-offset: 3px; }
.nabsa-tfrow__text { color: #000; }
.nabsa-tfrow__text p { margin: 0 0 1.75em; }
@media (max-width: 767px) {
	.nabsa-tflist { padding: 40px 20px; }
	.nabsa-tfrow { flex-direction: column; }
	.nabsa-tfrow__img { flex-basis: 200px; }
}

/* ======================================================================== FAQs (#3920, #3796) — component CSS is prod's (style.css .nabsa-faq-*) */
.nabsa-pagehero--faqs .nabsa-pagehero__title { font-size: 7em; }
.nabsa-faqwrap { --content-width: 1140px; max-width: 1140px; margin: 0 auto; padding: 3em 1em; display: flex; flex-direction: column; gap: 20px; box-sizing: content-box; }
.nabsa-faqwrap__rule { width: 100%; margin: 15px 0; border: 0; border-top: 1px solid #000; height: 0; }
@media (max-width: 767px) { .nabsa-pagehero--faqs .nabsa-pagehero__title { font-size: 4em; } }

/* ======================================================================== News (#407, Elementor Posts "cards" skin) */
.nabsa-news__sec { max-width: 1440px; margin: 0 auto; padding: 60px; box-sizing: border-box; }
.nabsa-radios { display: flex; align-items: center; margin-bottom: 20px; border-bottom: 1px solid #e8e8e8; }
.nabsa-radios__opt { margin: 0 10px 4px 0; padding: 0 0 0 10px; border: 0; background: none !important; color: rgb(51, 65, 85) !important; font: 400 16px/26.4px var(--nabsa-body); cursor: pointer; }
.nabsa-radios__opt:first-child { padding-left: 0; }
.nabsa-radios__opt.is-active { font-weight: 700; color: var(--nabsa-blue) !important; }
.nabsa-radios__opt:hover { color: var(--nabsa-blue) !important; }
.nabsa-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 35px 30px; }
.nabsa-pcard { display: flex; flex-direction: column; overflow: hidden; border-radius: 3px; background: #fff; box-shadow: 0 0 10px 0 rgba(0, 0, 0, .15); transition: box-shadow .25s ease, transform .25s ease; }
.nabsa-pcard:hover { box-shadow: 0 0 30px 0 rgba(0, 0, 0, .15); }
.nabsa-pcard[hidden] { display: none; }
.nabsa-pcard__thumb { position: relative; display: block; padding-bottom: 50%; overflow: hidden; background: #eef2f6; }
.nabsa-pcard__thumb img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.nabsa-pcard:hover .nabsa-pcard__thumb img { transform: scale(1.04); }
.nabsa-pcard__text { flex: 1 1 auto; display: flex; flex-direction: column; padding: 40px 30px 0; }
.nabsa-native .nabsa-pcard__title { margin: 0 0 25px; font: 500 1.3em/1.3 var(--nabsa-head); }
.nabsa-pcard__title a { font-size: 1.3em; line-height: 1; color: var(--nabsa-blue) !important; text-decoration: none; }
.nabsa-pcard__excerpt { margin-bottom: 25px; font-size: 16px; line-height: 1.5; color: #777; }
.nabsa-pcard__excerpt p { margin: 0; }
.nabsa-pcard__more { align-self: flex-start; margin-bottom: 20px; font: 500 12px/19.8px var(--nabsa-accent); text-transform: uppercase; color: var(--nabsa-sky) !important; text-decoration: none; }
.nabsa-pcard__more:hover { color: var(--nabsa-blue) !important; }
.nabsa-pcard__meta { margin-top: auto; padding: 15px 30px; border-top: 1px solid #eaeaea; font-size: 16px; line-height: 1.3; color: #adadad; }
@media (max-width: 1024px) { .nabsa-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } .nabsa-news__sec { padding: 40px 20px; } }
@media (max-width: 767px) { .nabsa-cards { grid-template-columns: 1fr; } }

/* ======================================================================== Single project (#185) */
.nabsa-phero { position: relative; display: flex; align-items: center; min-height: 552px; overflow: hidden; }
.nabsa-phero__img { position: absolute; top: 0; bottom: 0; left: 37.7%; right: -2.7%; background: #dfe7ee center / cover no-repeat; }
.nabsa-phero__box { position: relative; z-index: 1; width: 720px; max-width: 50%; margin: 80px 0 80px -11px; padding: 40px 70px; box-sizing: border-box; background: var(--nabsa-blue); }
/* Production's box is half the viewport wide, so on wide screens it keeps overlapping the photo. */
@media (min-width: 1441px) { .nabsa-phero__box { width: 50%; } }
.nabsa-native .nabsa-phero__title { margin: 0 0 0 10%; font: 600 3em/1.3 var(--nabsa-head); color: #fff; }

.nabsa-pinfo { display: flex; align-items: flex-start; width: 90%; margin: 50px auto; padding-top: 10px; box-sizing: border-box; }
.nabsa-pinfo__main { flex: 0 0 60%; display: flex; flex-direction: column; align-items: center; gap: 20px; padding: 0 40px; box-sizing: border-box; }
.nabsa-native .nabsa-pinfo__heading, .nabsa-native .nabsa-psec-title { margin: 0; font-size: 2em; line-height: 1.3; color: #000; text-align: center; }
.nabsa-pinfo__text { width: 100%; font: 300 18px/1.65 var(--nabsa-body); color: #000; text-align: justify; }
.nabsa-pinfo__text p { margin: 0 0 1.5em; }
.nabsa-pinfo__data { flex: 0 0 34%; position: sticky; top: calc(var(--nabsa-header-h) + 10px); display: flex; flex-direction: column; align-items: flex-start; gap: 20px; margin-left: 20px; padding-left: 60px; border-left: 1px solid #d5d8dc; box-sizing: border-box; color: #000; }
.nabsa-pinfo__data .project-logos-container { width: 80%; margin-bottom: 30px; }
.nabsa-native .nabsa-pinfo__dataheading { margin: 0; font-size: 1.5em; line-height: 1.2; color: #000; }
.nabsa-pinfo__row p { margin: 0; }
.nabsa-pinfo__row a { color: var(--e-global-color-accent, #046bd2); }

.nabsa-pmap { display: flex; flex-direction: column; align-items: center; gap: 20px; }
.nabsa-pmap #single_project_wrap { width: 100%; }

.nabsa-pnews { max-width: 1140px; margin: 0 auto -7px; padding: 80px 45px; box-sizing: content-box; }
.nabsa-pnews .nabsa-psec-title { margin-bottom: 30px; }
.nabsa-pnews__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px 20px; padding: 0 10px; }
.nabsa-pnews__card { display: flex; min-height: 181px; color: #fff; }
.nabsa-pnews__card.is-blue { background: #003478; }
.nabsa-pnews__card.is-green { background: #3F9C35; }
.nabsa-pnews__card.is-gold { background: rgb(228, 178, 35); }
.nabsa-pnews__text { flex: 0 0 60%; display: flex; flex-direction: column; justify-content: space-between; align-items: flex-start; gap: 20px; padding: 20px; box-sizing: border-box; }
.nabsa-native .nabsa-pnews__source { margin: 0; font: 300 14px/1.2 Poppins, var(--nabsa-head); color: #fff; }
.nabsa-pnews__title { width: 89%; margin: 0; font: 400 16px/1.3 Poppins, var(--nabsa-head); color: #fff; }
.nabsa-pnews__btn { display: inline-block; padding: 12px 24px; border: 2px solid #fff; border-radius: 3px; color: #fff !important; font: 500 15px/1 var(--nabsa-accent); text-decoration: none; transition: background-color .2s ease, color .2s ease; }
.nabsa-pnews__btn:hover, .nabsa-pnews__btn:focus-visible { background: #fff; color: #000 !important; }
.nabsa-pnews__img { flex: 0 0 40%; position: relative; }
.nabsa-pnews__img img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }

.nabsa-pgallery { padding: 69px; background: var(--nabsa-blue); }
.nabsa-native .nabsa-psec-title--yellow { margin-bottom: 30px; color: var(--nabsa-yellow); }
.nabsa-pgallery__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; max-width: 1140px; margin: 0 auto; }
.nabsa-pgallery__grid.is-odd .nabsa-pgallery__item:last-child { grid-column: 1 / 3; }
.nabsa-pgallery__item { position: relative; display: block; aspect-ratio: 3 / 2; overflow: hidden; }
.nabsa-pgallery__item img { width: 100%; height: 100%; object-fit: cover; transition: transform .8s ease; }
.nabsa-pgallery__item::after { content: ""; position: absolute; inset: 0; background: rgba(0, 0, 0, .21); opacity: 0; transition: opacity .8s ease; }
.nabsa-pgallery__item:hover img { transform: scale(1.05); }
.nabsa-pgallery__item:hover::after { opacity: 1; }

.nabsa-pres { display: flex; max-width: 1140px; margin: 0 auto; padding: 80px 0; }
.nabsa-pres__label { flex: 0 0 50%; display: flex; flex-direction: column; align-items: center; }
.nabsa-native .nabsa-psec-title--left { text-align: left; }
.nabsa-pres__list { flex: 0 0 50%; list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 20px; }
.nabsa-pres__item { margin: 0; display: flex; flex-direction: column; gap: 10px; }
.nabsa-native .nabsa-pres__sub { margin: 0; font-size: 15px; color: #000; }
.nabsa-native .nabsa-pres__title { margin: 0; font-size: 23px; color: #000; }
.nabsa-pres__link { color: var(--nabsa-blue) !important; transition: transform .2s ease; }
.nabsa-pres__link:hover { transform: translateX(4px); }

.nabsa-pnav { max-width: 1280px; margin: 0 auto; padding: 60px 30px; }

@media (max-width: 1024px) {
	.nabsa-pinfo { flex-direction: column; width: 100%; padding: 0 20px; }
	.nabsa-pinfo__main, .nabsa-pinfo__data { flex: 1 1 auto; width: 100%; }
	.nabsa-pinfo__data { position: static; margin: 40px 0 0; padding: 30px 0 0; border-left: 0; border-top: 1px solid #d5d8dc; }
	.nabsa-phero__box { max-width: 70%; }
}
@media (max-width: 767px) {
	.nabsa-phero { flex-direction: column; min-height: 0; }
	.nabsa-phero__img { position: relative; left: 0; right: 0; height: 280px; width: 100%; }
	.nabsa-phero__box { width: 100%; max-width: 100%; margin: 0; padding: 30px 20px; }
	.nabsa-native .nabsa-phero__title { margin: 0; font-size: 2em; }
	.nabsa-pinfo__main { padding: 0; }
	.nabsa-pnews { padding: 60px 20px; }
	.nabsa-pnews__grid, .nabsa-pgallery__grid { grid-template-columns: 1fr; padding: 0; }
	.nabsa-pgallery { padding: 50px 20px; }
	.nabsa-pgallery__grid.is-odd .nabsa-pgallery__item:last-child { grid-column: auto; }
	.nabsa-pres { flex-direction: column; gap: 30px; padding: 60px 20px; }
}

/* ======================================================================== Single dialogue (#2803) */
.nabsa-dlgsingle__inner { display: flex; flex-direction: column; gap: 10px; max-width: 1400px; margin: 0 auto; padding: 60px; box-sizing: border-box; }
.nabsa-native .nabsa-dlgsingle__title { margin: 0; font-size: 2em; line-height: 1.3; color: var(--nabsa-blue); }
.nabsa-dlgsingle__intro { margin-top: 5px; }
.nabsa-dlgsingle__text { font-size: 16px; line-height: 1.65; color: #000; }
.nabsa-dlgsingle__text p { margin: 0 0 1.2em; }
.nabsa-dlgsingle__full { margin-top: -10px; }
.nabsa-dlgsingle__full img { height: auto; max-width: 100%; }
.nabsa-dlgsingle__full a { color: var(--e-global-color-accent, #046bd2); }
.nabsa-dlgsingle .nabsa-vtabs__panels { max-width: 1100px; }
.nabsa-dlgsingle .nabsa-video { border-radius: 4px; overflow: hidden; }
.nabsa-native .nabsa-dlgsingle__gtitle { margin: 20px 0 10px; font-size: 1.5em; color: #000; }
.nabsa-dlgsingle__grid { max-width: none; grid-template-columns: repeat(3, 1fr); }
.nabsa-dlgsingle__nav { margin-top: 20px; }
@media (max-width: 767px) { .nabsa-dlgsingle__inner { padding: 30px 20px; } .nabsa-dlgsingle__grid { grid-template-columns: 1fr 1fr; } }

/* ======================================================================== Single event (#3668) / task force (#2859) */
.nabsa-evsingle__img { display: flex; justify-content: center; padding: 10px; }
.nabsa-evsingle__img img { max-width: 600px; width: 100%; height: auto; }
.nabsa-evsingle__body { display: flex; flex-direction: column; gap: 10px; max-width: 920px; margin: 0 auto; padding: 20px 60px 60px; box-sizing: border-box; }
.nabsa-native .nabsa-evsingle__title { margin: 0; font-size: 2em; line-height: 1.3; color: var(--nabsa-blue); }
.nabsa-evsingle__date { margin-top: -15px; font-size: 1.5em; }
.nabsa-evsingle__sub { font-weight: 600; color: #000; }
.nabsa-evsingle__sub p { margin: 0; }
.nabsa-evsingle__content { color: #000; }
.nabsa-evsingle__content table { width: 100%; border-collapse: collapse; margin: 0 0 1.5em; }
.nabsa-evsingle__content td, .nabsa-evsingle__content th { border: 1px solid #d5d8dc; padding: 15px; vertical-align: top; }
.nabsa-evsingle__content a { color: var(--e-global-color-accent, #046bd2); }
.nabsa-evsingle__foot { padding: 0; gap: 10px; }
.nabsa-evsingle__rule { margin-top: 60px; }

.nabsa-tfsingle__inner { display: flex; flex-direction: column; gap: 10px; max-width: 1140px; margin: 0 auto; padding: 60px; box-sizing: content-box; }
.nabsa-native .nabsa-tfsingle__title { margin: 0; font-size: 2em; line-height: 1.3; color: var(--nabsa-blue); }
.nabsa-tfsingle__img img { width: 100%; height: auto; display: block; }
.nabsa-tfsingle__text { color: #000; }
.nabsa-tfsingle__text a { color: var(--e-global-color-accent, #046bd2); }
@media (max-width: 767px) { .nabsa-evsingle__body, .nabsa-tfsingle__inner { padding: 30px 20px; } }

/* ======================================================================== Contact (page 1627) */
.nabsa-contact__body { display: flex; align-items: flex-start; gap: 30px; max-width: 1140px; margin: 0 auto; padding: 50px 0; box-sizing: content-box; }
.nabsa-contact__staff { flex: 0 0 745px; display: grid; grid-template-columns: 1fr 1fr; gap: 30px 20px; }
.nabsa-contact__staff.is-odd .nabsa-person:last-child { grid-column: 1 / 3; justify-self: center; }
.nabsa-person { margin: 0; display: flex; flex-direction: column; align-items: center; text-align: center; }
.nabsa-person__img { width: 200px; height: 200px; border-radius: 50%; object-fit: cover; }
.nabsa-person figcaption { display: flex; flex-direction: column; align-items: center; margin-top: 20px; }
.nabsa-person__name { font: 600 32px/48px var(--nabsa-head); color: var(--nabsa-blue); }
.nabsa-person__job { margin-top: -7px; padding: 0 40px 10px; font-size: 15px; line-height: 17px; text-transform: uppercase; color: #000; }
.nabsa-contact__form { flex: 0 0 365px; position: sticky; top: calc(var(--nabsa-header-h) + 10px); padding: 10px; box-sizing: border-box; }
.nabsa-native .nabsa-contact__title { margin: 0 0 18px; font-size: 32px; line-height: 1.2; color: var(--nabsa-blue); }
.nabsa-cf7 p { margin: 0 0 18px; }
.nabsa-cf7 input[type=text], .nabsa-cf7 input[type=email], .nabsa-cf7 textarea { width: 100%; box-sizing: border-box; padding: 8px 10px; border: 1px solid #ccd3dc; border-radius: 8px; background: #fff; color: rgb(29, 41, 57); font: 400 14px/1.3 var(--nabsa-body); }
.nabsa-cf7 input[type=text], .nabsa-cf7 input[type=email] { height: 40px; }
.nabsa-cf7 textarea { height: 130px; resize: vertical; }
.nabsa-cf7 input:focus, .nabsa-cf7 textarea:focus { outline: 2px solid var(--nabsa-sky); outline-offset: 0; border-color: var(--nabsa-blue); }
.nabsa-cf7 input[type=submit] { padding: 8px 16px; border: 1px solid #012350; border-radius: 50px; background: var(--nabsa-blue) !important; color: #fff !important; font: 400 14px/1.3 var(--nabsa-body); cursor: pointer; }
.nabsa-cf7 input[type=submit]:hover { background: #00265a !important; }
.nabsa-contact .wpcf7-response-output { margin: 10px 0 0 !important; font-size: 14px; }

/* ======================================================================== Privacy (page 3) */
.nabsa-privacy__inner { max-width: 1140px; margin: 0 auto; padding: 80px; box-sizing: content-box; }
.nabsa-native .nabsa-privacy__title { margin: 0 0 20px; font-size: 2em; color: var(--nabsa-blue); }
.nabsa-privacy__text { color: #000; }
.nabsa-privacy__text a { color: var(--e-global-color-accent, #046bd2); }
@media (max-width: 1024px) {
	.nabsa-contact__body { flex-direction: column; padding: 50px 20px; }
	.nabsa-contact__staff { flex: 1 1 auto; width: 100%; }
	.nabsa-contact__form { position: static; flex: 1 1 auto; width: 100%; max-width: 520px; }
	.nabsa-privacy__inner { padding: 50px 20px; }
}
@media (max-width: 600px) {
	.nabsa-contact__staff { grid-template-columns: 1fr; }
	.nabsa-contact__staff.is-odd .nabsa-person:last-child { grid-column: auto; }
	.nabsa-person__name { font-size: 26px; line-height: 1.4; }
}
.nabsa-cf7 ::placeholder { color: rgb(29, 41, 57); opacity: .85; }

/* ======================================================================== Operational Framework (page 3981) */
.nabsa-framework__sub { max-width: 903px; font-family: var(--nabsa-head); }
.nabsa-framework__intro { max-width: 1380px; margin: 50px auto; padding: 30px; box-sizing: border-box; font: 300 18px/1.65 var(--nabsa-body); color: #000; }
.nabsa-framework__intro p:last-child { margin-bottom: 0; }
.nabsa-framework__video { max-width: 1140px; margin: 0 auto; padding: 20px 20px 60px; box-sizing: content-box; }
.nabsa-framework .nabsa-video { border-radius: 4px; overflow: hidden; }
.nabsa-framework__summary { display: flex; max-width: 850px; margin: 0 auto; padding: 10px; box-sizing: content-box; gap: 20px; }
.nabsa-framework__cover { flex: 0 0 38%; display: block; padding: 10px; box-sizing: border-box; }
.nabsa-framework__cover img { display: block; width: 100%; height: auto; }
.nabsa-framework__sumtext { flex: 1 1 auto; display: flex; flex-direction: column; align-items: flex-start; gap: 20px; padding: 10px; }
.nabsa-native .nabsa-framework__kicker { margin: 0; font: 500 1.5em/1.2 var(--nabsa-head); color: var(--nabsa-blue); }
.nabsa-native .nabsa-framework__title { margin: -15px 0 0; font: 600 2em/.95em var(--nabsa-head); color: var(--nabsa-blue); }
.nabsa-framework__text { color: #000; }
.nabsa-framework__text p { margin: 0; }
.nabsa-framework__btn { padding: 12px 24px; border-radius: 3px; font-size: 15px; }
.nabsa-framework__pdf { padding-top: 60px; }
.nabsa-framework .pdf-embed-wrapper { display: flex; width: 100%; aspect-ratio: 4 / 3; max-height: 85vh; }
.nabsa-framework .pdf-embed-wrapper iframe { width: 100%; height: 100%; border: 0; }
.nabsa-framework__dl { margin: 1rem 0 0; text-align: center; }
.nabsa-framework__dl .nabsa-btn { padding: 12px 24px; border-radius: 3px; background: #69727d; font-size: 15px; }
@media (max-width: 767px) { .nabsa-framework__summary { flex-direction: column; } .nabsa-framework__intro { margin: 20px auto; padding: 20px; } }

/* ======================================================================== Search (#3584) */
.nabsa-searchlist { max-width: 900px; margin: 0 auto; padding: 30px 0 60px; display: flex; flex-direction: column; gap: 30px; }
.nabsa-scard .nabsa-pcard__text { padding: 20px 20px 0; }
.nabsa-scard .nabsa-pcard__title { margin-bottom: 15px; }
.nabsa-scard .nabsa-pcard__title a { color: #000 !important; font-size: 1.15em; line-height: 1.3; }
.nabsa-scard .nabsa-pcard__excerpt { margin-bottom: 15px; font-size: 14px; }
.nabsa-pager { display: flex; justify-content: center; gap: 10px; font-size: 14px; }
.nabsa-pager .page-numbers { color: var(--nabsa-sky); text-decoration: none; }
.nabsa-pager .current { color: #333; font-weight: 600; }
.nabsa-searchlist__none { text-align: center; font-size: 18px; }
@media (max-width: 960px) { .nabsa-searchlist { padding: 30px 20px 60px; } }
.nabsa-radios__opt { text-decoration: none; }
.nabsa-radios__opt span { margin-left: 1px; }
.nabsa-pager--news { margin-top: 40px; font-size: 16px; }
.nabsa-pager--news .page-numbers { padding: 0 4px; }
.nabsa-pagehero--search .nabsa-pagehero__title { text-transform: none; }
.nabsa-pagehero--radial::before { background: radial-gradient(at center center, #000 54%, #434343 100%); }
.nabsa-res__toggle::before { content: "\2630"; }
