:root {
	--navy: #143F6A;
	--navy-mid: #126aa5;
	--gold: #0081dc;
	--gold-light: #0397ff;
	--cream: #ecf7ff;
	--warm-white: #fafbfd;
	--gray-cool: #6b7280;
	--border: #e4dfd6;
	--accent-teal: #1c6b72
}

html {
	scroll-behavior: smooth
}

body {
	line-height: 30px;
	color: var(--gray-cool);
	font-size: 16px;
	font-family: 'DM Sans', sans-serif;
	background: var(--warm-white);
	color: var(--navy);
	overflow-x: hidden
}

ul,
ol {
	list-style: none;
	-webkit-padding-start: 0px;
	-moz-padding-start: 0px;
}

::selection {
	color: #FFF;
	background: var(--navy);
}

.margin-top-30 {
	margin-top: 30px;
}

.margin-auto {
	margin: auto;
}

a {
	text-decoration: none;
}

.bg-styles {
	background-size: cover !important;
	background-position: center !important;
}

.inline {
	display: inline-block;
}

* {
	outline: none !important;
}

.left-md-center,
.right-md-center {
	text-align: center;
}

.left-md-center img,
.right-md-center img {
	margin: auto;
}

.padding-0 {
	padding: 0;
}

.inline-img {
	float: none;
}

.text-center img {
	margin: auto;
}

/* .h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6{color:var(--pc);}*/
.valign-middle {
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.valign-baseline {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
}

.ql-btn {
	display: inline-flex;
	align-items: center;
	gap: .6rem;
	background: var(--navy);
	color: #fff;
	font-size: .78rem;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
	padding: .85rem 1.8rem;
	text-decoration: none;
	transition: background .2s;
	border: none;
}

.ql-btn:hover {
	background: var(--gold, #0081dc);
}

.ql-btn-gold {
	background: var(--gold, #0081dc);
}

.ql-btn-gold:hover {
	background: var(--gold-light, #00a2ff);
}

h1,
h2,
h3,
h4,
h5 {
	font-family: 'Playfair Display', Georgia, serif
}

.navbar {
	background: #0e395700;
	border-bottom: 1px solid #11416300;
	backdrop-filter: blur(5px);
	padding: 0;
	transition: all .3s;
}

.nav-scrolled {
	background: #ffffff7d;
	border-bottom: 1px solid #ffffff38;
	box-shadow: 0 2px 24px rgba(0, 0, 0, .09);
}

.navbar-brand {
	padding: 4px 0
}

.navbar-brand img {
	max-height: 60px;
	filter: brightness(18);
	transition: .3s;
	margin: 10px 0;
}

.navbar-toggler-icon {
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.nav-scrolled .navbar-brand img {
	max-height: 48px;
	filter: brightness(1);
	margin: 2px 0;
}

.nav-link {
	font-size: .78rem;
	font-weight: 500;
	letter-spacing: .04em;
	text-transform: uppercase;
	color: #ffffff;
	padding: 1.5rem 0.3rem !important;
	position: relative;
	transition: color .2s
}

@media (min-width: 1400px) {
	.nav-link {
		padding: .8rem 0.8rem !important;
	}
}

.nav-scrolled .nav-link {
	color: var(--navy);
}

.nav-link::before {
	content: '';
	position: absolute;
	bottom: 0;
	left: .8rem;
	right: .8rem;
	height: 2px;
	background: var(--gold);
	transform: scaleX(0);
	transition: transform .25s ease
}

.nav-link:hover,
.nav-link:focus,
.nav-link:active,
.nav-link.show {
	color: var(--gold) !important
}

.nav-link:hover::before,
.nav-link.show::before {
	transform: scaleX(1)
}

.dropdown-menu {
	border: 1px solid var(--border);
	border-radius: 0;
	box-shadow: 0 16px 48px #0000001a;
	padding: .6rem 0;
	min-width: 230px
}

.dropdown-menu.mega {
	min-width: 700px;
	padding: 1.5rem
}

.mega-col-title {
	font-family: 'DM Sans', sans-serif;
	font-size: .63rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--gold);
	padding: 0 .6rem .6rem;
	border-bottom: 1px solid var(--border);
	margin-bottom: .3rem
}

.dropdown-item {
	font-size: .79rem;
	letter-spacing: .01em;
	padding: .48rem 1rem;
	color: var(--navy);
	font-weight: 400;
	transition: background .15s, color .15s;
	display: flex;
	align-items: center;
	gap: .55rem
}

.dropdown-item i {
	color: var(--gold);
	width: 13px;
	font-size: .73rem;
	flex-shrink: 0
}

.dropdown-item:hover {
	background: var(--cream);
	color: var(--gold)
}

.dropdown-divider {
	border-color: var(--border);
	margin: .4rem 0
}

.btn-nav-cta {
	background: var(--gold);
	color: #fff !important;
	font-size: .74rem;
	font-weight: 600;
	letter-spacing: .07em;
	text-transform: uppercase;
	border-radius: 0;
	padding: .5rem 1.3rem !important;
	margin: .3rem 0 .3rem .4rem;
	transition: background .2s
}

.btn-nav-cta::before {
	display: none !important
}

.btn-nav-cta:hover {
	background: var(--navy) !important;
	color: #fff !important
}

.hero {
	min-height: 100vh;
	background: #0e3957;
	position: relative;
	display: flex;
	align-items: center;
	overflow: hidden;
	padding: 110px 0 4vh;
}

.hero-pattern {
	position: absolute;
	inset: 0;
	background-image: repeating-linear-gradient(0deg, transparent, transparent 79px, #ffffff08 80px), repeating-linear-gradient(90deg, transparent, transparent 79px, #ffffff08 80px)
}

.hero-accent {
	position: absolute;
	right: -120px;
	top: -120px;
	width: 600px;
	height: 600px;
	border-radius: 50%;
	background: radial-gradient(circle, #175681 0%, transparent 70%);
}

.hero-accent-2 {
	position: absolute;
	left: -80px;
	bottom: -80px;
	width: 400px;
	height: 400px;
	border-radius: 50%;
	background: radial-gradient(circle, #195c89 0%, transparent 70%);
}

.hero-badge {
	display: inline-block;
	background: #3a8ec926;
	border: 1px solid #3a9bc966;
	color: var(--gold-light);
	font-size: .7rem;
	font-weight: 600;
	letter-spacing: .12em;
	text-transform: uppercase;
	padding: .4rem 1rem;
	margin-bottom: 1.6rem
}

.hero h1 {
	font-size: clamp(2.6rem, 5.5vw, 4.6rem);
	color: #fff;
	line-height: 1.08;
	font-weight: 700;
	letter-spacing: -.02em;
	margin-bottom: 1.5rem
}

.hero h1 em {
	font-style: normal;
	color: var(--gold)
}

.hero p {
	font-size: 1rem;
	color: #ffffff9e;
	line-height: 1.75;
	max-width: 520px;
	margin-bottom: 2.5rem;
	font-weight: 300
}

.btn-hero-primary {
	background: var(--gold);
	color: #fff;
	font-size: .8rem;
	font-weight: 600;
	letter-spacing: .08em;
	text-transform: uppercase;
	border: none;
	border-radius: 0;
	padding: .9rem 2.2rem;
	text-decoration: none;
	display: inline-block;
	transition: background .2s, transform .15s;
	border: none;
}

.btn-hero-primary:hover {
	background: var(--gold-light);
	color: #fff;
	transform: translateY(-2px)
}

.btn-hero-outline {
	background: transparent;
	color: #fffc;
	font-size: .8rem;
	font-weight: 600;
	letter-spacing: .08em;
	text-transform: uppercase;
	border: 1px solid #ffffff40;
	border-radius: 0;
	padding: .9rem 2.2rem;
	text-decoration: none;
	display: inline-block;
	transition: border-color .2s, color .2s
}

.btn-hero-outline:hover {
	border-color: var(--gold);
	color: var(--gold-light)
}

.hero-card {
	background: #ffffff0f;
	border: 1px solid #ffffff1a;
	backdrop-filter: blur(8px);
	padding: 1.8rem;
	margin-bottom: 1rem
}

.hero-card-icon {
	width: 38px;
	height: 38px;
	background: var(--gold);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1rem;
	color: #fff;
	margin-bottom: .9rem
}

.hero-card h5 {
	font-family: 'DM Sans', sans-serif;
	font-size: .84rem;
	font-weight: 600;
	color: #fff;
	margin-bottom: .25rem
}

.hero-card p {
	font-size: .76rem;
	color: #ffffff7a;
	margin: 0
}

.accred-strip {
	border-top: 1px solid #ffffff1a;
	margin-top: 2.5rem;
	padding-top: 1.8rem;
	font-size: .72rem;
	color: #ffffff61;
	letter-spacing: .06em;
	text-transform: uppercase
}

.accred-pill {
	display: inline-block;
	border: 1px solid #fff3;
	color: #ffffffa6;
	font-size: .7rem;
	font-weight: 600;
	padding: .3rem .75rem;
	margin: .2rem .2rem 0 0
}

.services-section {
	background: var(--cream);
	border-top: 1px solid var(--border);
	border-bottom: 1px solid var(--border);
	padding: 3.5rem 0
}

.services-grid {
	display: flex;
	flex-wrap: wrap;
	gap: 0.625rem;
	justify-content: center;
}

/* .services-grid{display: grid;gap: 0.625rem;grid-template-columns: repeat(auto-fit, minmax(8.125rem, 1fr));grid-auto-rows: minmax(8.125rem, auto);} */
.service-item {
	width: 180px;
}

.service-icon {
	width: 130px;
	height: 130px;
	border-radius: 50%;
	background-color: #0081dc17;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 30px;
	margin-bottom: 20px;
	transition: .3s;
}

.service-item:hover .service-icon {
	transform: translateY(-6px);
}

.service-title {
	line-height: 1.2;
	font-weight: 500;
	color: var(--gray-cool);
}

.section-eyebrow {
	display: inline-block;
	font-size: .7rem;
	font-weight: 600;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--gold);
	margin-bottom: .9rem
}

.section-title {
	font-size: clamp(1.8rem, 3.2vw, 2.6rem);
	font-weight: 700;
	color: var(--navy);
	line-height: 1.15;
	letter-spacing: -.02em
}

.section-sub {
	font-size: .97rem;
	color: var(--gray-cool);
	line-height: 1.75;
	max-width: 540px;
	margin-top: .8rem
}

.divider-line {
	width: 40px;
	height: 2px;
	background: var(--gold);
	margin: 1.2rem 0
}

.btn-card-link {
	font-size: .76rem;
	font-weight: 600;
	letter-spacing: .07em;
	text-transform: uppercase;
	color: var(--gold);
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	gap: .4rem;
	transition: gap .2s, color .2s
}

.btn-card-link:hover {
	gap: .75rem;
	color: var(--navy)
}

.stats-section {
	background: var(--cream);
	border-top: 1px solid var(--border);
	border-bottom: 1px solid var(--border);
	padding: 3.5rem 0
}

.stat-item {
	text-align: center
}

.stat-num {
	font-family: 'Playfair Display', serif;
	font-size: 2.8rem;
	font-weight: 700;
	color: var(--navy);
	line-height: 1;
	margin-bottom: .4rem
}

.stat-num span {
	color: var(--gold)
}

.stat-label {
	font-size: .75rem;
	font-weight: 500;
	letter-spacing: .07em;
	text-transform: uppercase;
	color: var(--gray-cool)
}

.stat-divider {
	width: 1px;
	background: var(--border);
	align-self: stretch
}

.iso-section {
	padding: 6rem 0;
	background: var(--warm-white)
}

.iso-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
	gap: 1px;
	background: var(--border);
	border: 1px solid var(--border)
}

.iso-item {
	background: var(--warm-white);
	/* padding:1.5rem 1.3rem; */
	cursor: pointer;
	transition: background .2s;
	position: relative;
	border: 1px solid var(--border)
}

.iso-item:hover {
	background: var(--cream)
}

.iso-item:hover .iso-arrow {
	opacity: 1;
	transform: translate(2px, -2px)
}

.iso-tag {
	font-size: 0.76rem;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: var(--gold);
	margin: 0.4rem 1rem 0;
}

.iso-name {
	font-size: 0.93rem;
	font-weight: 500;
	color: var(--navy);
	line-height: 1.4;
	margin: 0 1rem 0.7rem 1rem;
}

.iso-arrow {
	position: absolute;
	top: 1rem;
	right: 1rem;
	font-size: .7rem;
	color: var(--gold);
	opacity: 0;
	transition: opacity .2s, transform .2s
}

.process-section {
	padding: 6rem 0;
	background: var(--navy)
}

.process-cta-box {
	background: #0d3a67;
	border: 1px solid #194b7d;
	padding: 2.5rem
}

.process-cta-box h3 {
	font-size: 1.4rem;
	color: #fff;
	margin-bottom: .6rem
}

.process-cta-box p {
	font-size: .88rem;
	color: #ffffff8c;
	margin-bottom: 1.5rem
}

.process-accordion .accordion-item {
	background: transparent;
	border: none;
	border-bottom: 1px solid #ffffff14;
	border-radius: 0;
}

.process-accordion .accordion-item:first-child {
	border-top: 1px solid #ffffff14
}

.process-accordion .accordion-button {
	background: transparent;
	color: #fff;
	font-family: 'DM Sans', sans-serif;
	font-size: .9rem;
	font-weight: 600;
	padding: 1.2rem 0;
	box-shadow: none;
	display: flex;
	align-items: center;
	gap: .9rem
}

.process-accordion .accordion-button::after {
	display: none
}

.process-accordion .accordion-button:not(.collapsed) {
	color: var(--gold-light)
}

.process-accordion .step-badge {
	font-family: 'Playfair Display', serif;
	font-size: .85rem;
	font-weight: 700;
	color: var(--gold);
	min-width: 28px
}

.process-accordion .chevron-icon {
	margin-left: auto;
	font-size: .72rem;
	color: #ffffff4d;
	transition: transform .3s, color .3s
}

.process-accordion .accordion-button:not(.collapsed) .chevron-icon {
	transform: rotate(180deg);
	color: var(--gold)
}

.process-accordion .accordion-body {
	padding: 0 0 1.4rem 2.3rem;
	font-size: .83rem;
	color: #ffffff80;
	line-height: 1.72
}

.training-section {
	padding: 6rem 0;
	background: var(--warm-white)
}

.training-card {
	border: 1px solid var(--border);
	background: #fff;
	padding: 2.4rem;
	height: 100%;
	position: relative;
	transition: box-shadow .25s, border-color .25s;
	overflow: hidden
}

.training-card::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 3px;
	background: var(--gold)
}

.training-card:hover {
	box-shadow: 0 16px 48px #00000012;
	border-color: var(--gold)
}

.training-card h4 {
	font-size: 1.05rem;
	color: var(--navy);
	margin-bottom: .7rem
}

.training-card p {
	font-size: .84rem;
	color: var(--gray-cool);
	line-height: 1.7;
	margin-bottom: 1.5rem
}

.clients-section {
	padding: 6rem 0;
	background: var(--cream)
}

.client-logo-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(190px, 1fr));
	gap: 1px;
	background: var(--border);
	border: 1px solid var(--border)
}

.client-logo-item {
	background: var(--cream);
	padding: 0.8rem 1.2rem;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 88px;
	font-size: .78rem;
	font-weight: 600;
	color: var(--gray-cool);
	text-align: center;
	line-height: 1.4;
	transition: background .2s, color .2s
}

.client-logo-item:hover {
	background: #fff;
	color: var(--navy)
}

.client-logo-item img {
	filter: grayscale(100%);
	opacity: 0.7;
	transition: all .3s ease;
	height: 80px;
	width: auto !important;
	max-width: 100% !important;
}

.client-logo-item:hover img {
	filter: grayscale(0%);
	transform: scale(1.1);
	opacity: 1;
}

.cert-strip {
	padding: 6rem 0;
	background: var(--warm-white)
}

.cert-link-item {
	display: flex;
	align-items: center;
	gap: 1rem;
	padding: 1.2rem 1.4rem;
	border: 1px solid var(--border);
	text-decoration: none;
	color: var(--navy);
	font-size: .84rem;
	font-weight: 500;
	transition: background .2s, border-color .2s;
	margin-bottom: .7rem
}

.cert-link-item i {
	color: var(--gold);
	font-size: .88rem;
	width: 18px
}

.cert-link-item:hover {
	background: var(--cream);
	border-color: var(--gold);
	color: var(--navy)
}

.news-section {
	padding: 6rem 0;
	background: var(--cream)
}

.news-featured {
	position: relative;
	overflow: hidden;
	height: 100%;
	min-height: 480px;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	text-decoration: none;
	cursor: pointer
}

.news-featured-img {
	position: absolute;
	inset: 0;
	overflow: hidden
}

.news-featured-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .45s ease
}

.news-featured:hover .news-featured-img img {
	transform: scale(1.06)
}

.news-featured-overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, #0c1b330d 0%, #0c1b33e6 65%);
	z-index: 1
}

.news-featured-body {
	position: relative;
	z-index: 2;
	padding: 2rem
}

.news-featured-body h3 {
	font-size: 1.35rem;
	color: #fff;
	line-height: 1.3;
	margin-bottom: .6rem
}

.news-featured-body p {
	font-size: .82rem;
	color: #ffffffa6;
	line-height: 1.65;
	margin-bottom: 1rem
}

.news-featured-link {
	font-size: .74rem;
	font-weight: 600;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--gold-light);
	display: inline-flex;
	align-items: center;
	gap: .4rem;
	text-decoration: none;
	transition: gap .2s
}

.news-featured-link:hover {
	gap: .75rem
}

.news-h-card {
	display: flex;
	text-decoration: none;
	background: #fff;
	border: 1px solid var(--border);
	overflow: hidden;
	transition: box-shadow .25s, border-color .25s
}

.news-h-card:hover {
	box-shadow: 0 10px 32px #00000014;
	border-color: var(--gold)
}

.news-h-card:hover .news-h-img img {
	transform: scale(1.06)
}

.news-h-img {
	width: 170px;
	flex-shrink: 0;
	overflow: hidden;
	position: relative
}

.news-h-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .45s ease;
	display: block
}

.news-h-body {
	padding: 0.4rem 1.25rem;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
}

.news-tag {
	display: inline-block;
	font-size: .63rem;
	line-height: 1.2;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: #fff;
	background: var(--gold);
	padding: 6px 10px 4px;
	margin: .55rem 0;
}

.news-tag.teal {
	background: var(--accent-teal)
}

.news-h-body h4 {
	font-size: 0.98rem;
	color: var(--navy);
	line-height: 1.4;
	margin-bottom: .4rem
}

.news-h-body p {
	font-size: .76rem;
	color: var(--gray-cool);
	line-height: 1.6;
	margin-bottom: 0;
}

footer {
	background: var(--navy);
	padding: 5rem 0 2.5rem;
	color: #ffffff80
}

.footer-brand img {
	max-height: 90px;
	max-width: 100%;
	margin-bottom: 10px;
}

.footer-desc {
	font-size: .82rem;
	line-height: 1.75;
	margin-bottom: 1.5rem;
	max-width: 300px
}

.footer-heading {
	font-family: 'DM Sans', sans-serif;
	font-size: .68rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--gold);
	margin-bottom: 1.2rem
}

footer ul {
	list-style: none;
	padding: 0;
	margin: 0
}

footer ul li {
	margin-bottom: .55rem;
	line-height: 1.3;
}

footer ul li a {
	font-size: .8rem;
	color: #ffffff80;
	text-decoration: none;
	transition: color .15s
}

footer ul li a:hover {
	color: var(--gold-light)
}

.footer-bottom {
	border-top: 1px solid #ffffff14;
	margin-top: 4rem;
	padding-top: 2rem;
	font-size: .74rem;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	gap: .75rem
}

.footer-bottom a {
	color: #ffffff73;
	text-decoration: none;
	transition: color .15s
}

.footer-bottom a:hover {
	color: var(--gold-light)
}

.social-link {
	display: inline-flex;
	width: 34px;
	height: 34px;
	border: 1px solid #ffffff26;
	align-items: center;
	justify-content: center;
	color: #ffffff73;
	font-size: .85rem;
	text-decoration: none;
	transition: border-color .2s, color .2s
}

.social-link:hover {
	border-color: var(--gold);
	color: var(--gold)
}

@media (max-width: 1200px) {
	.navbar {
		background: #0e3957 !important;
	}

	.dropdown-menu.mega {
		min-width: 100%
	}

	.news-featured {
		min-height: 340px
	}
}

@media (max-width: 767px) {
	.hero {
		min-height: auto;
		padding: 5rem 0 3.5rem
	}

	.hero h1 {
		font-size: 2.3rem
	}

	.stat-divider {
		display: none
	}

	.news-h-img {
		width: 100px
	}
}

.inner-hero {
	min-height: unset;
	padding-top: 8rem;
	padding-bottom: 6rem;
}

.inner-hero h2 {
	color: #FFF;
}

.inner-section {
	padding: 6rem 0;
	background: var(--warm-white)
}

.breadcrumb-item a {
	color: rgba(255, 255, 255, .4);
}

.breadcrumb-item+.breadcrumb-item::before {
	color: rgba(255, 255, 255, .4);
}

.breadcrumb-item.active {
	color: var(--gold)
}

.blog-post-date {
	color: var(--gray-cool);
	font-size: 0.9rem;
}

.inner-body .news-featured {
	min-height: 360px;
}

.blog-post-title {
	max-width: 900px;
	margin-bottom: 30px;
}

.blog-post-excerpt {
	color: #000000;
	line-height: 1.6;
	margin-bottom: .7rem;
	font-weight: 700;
	font-size: 1.5rem;
}

.blog-post-body {
	color: var(--gray-cool);
	font-size: 1.2rem;
}


.section-eyebrow {
	display: inline-block;
	font-size: .7rem;
	font-weight: 600;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--gold);
	margin-bottom: .9rem
}

.section-title {
	font-size: clamp(1.7rem, 3vw, 2.4rem);
	font-weight: 700;
	color: var(--navy);
	line-height: 1.15;
	letter-spacing: -.02em
}

.divider-line {
	width: 40px;
	height: 2px;
	background: var(--gold);
	margin: 1.1rem 0
}

.contact-cards-section {
	padding: 5rem 0 0;
	background: var(--warm-white)
}

.contact-info-card {
	background: #fff;
	border: 1px solid var(--border);
	padding: 2.2rem 2rem;
	height: 100%;
	position: relative;
	transition: box-shadow .25s, border-color .25s;
	overflow: hidden
}

.contact-info-card::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 3px;
	background: var(--gold)
}

.contact-info-card:hover {
	box-shadow: 0 12px 36px #00000012;
	border-color: var(--gold)
}

.contact-icon-wrap {
	width: 46px;
	height: 46px;
	background: var(--gold);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.1rem;
	color: #fff;
	margin-bottom: 1.2rem
}

.contact-info-card h5 {
	font-family: 'DM Sans', sans-serif;
	font-size: .78rem;
	font-weight: 700;
	/* letter-spacing:.1em; */
	text-transform: uppercase;
	color: var(--gold);
	margin-bottom: .5rem
}

.contact-info-card p {
	font-size: .88rem;
	color: var(--gray-cool);
	line-height: 1.7;
	margin: 0
}

.contact-info-card a {
	color: var(--navy);
	text-decoration: none;
	font-size: .93rem;
	font-weight: 500;
	transition: color .15s;
	display: inline-block;
	text-transform: none;
}

.contact-info-card a:hover {
	color: var(--gold)
}

.contact-info-card .detail-label {
	font-size: .7rem;
	font-weight: 600;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--gray-cool);
	margin-top: .9rem;
	margin-bottom: .2rem
}

.contact-main-section {
	padding: 5rem 0 6rem;
	background: var(--warm-white)
}

.form-card {
	background: #fff;
	border: 1px solid var(--border);
	padding: 3rem
}

.form-card h2 {
	font-size: 1.7rem;
	color: var(--navy);
	margin-bottom: .4rem
}

.form-card .sub {
	font-size: .88rem;
	color: var(--gray-cool);
	margin-bottom: 2rem
}

.form-label-custom {
	font-size: .72rem;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--navy);
	margin-bottom: .4rem;
	display: block
}

.form-control-custom {
	width: 100%;
	border: 1px solid var(--border);
	border-radius: 0;
	background: var(--warm-white);
	font-family: 'DM Sans', sans-serif;
	font-size: .88rem;
	color: var(--navy);
	padding: .75rem 1rem;
	transition: border-color .2s, box-shadow .2s;
	outline: none;
	appearance: none
}

.form-control-custom:focus {
	border-color: var(--gold);
	box-shadow: 0 0 0 3px #0081dc1a;
	background: #fff
}

.form-control-custom::placeholder {
	color: #6b72808c
}

textarea.form-control-custom {
	resize: vertical;
	min-height: 130px
}

select.form-control-custom {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23143F6A' d='M6 8L1 3h10z'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 1rem center;
	padding-right: 2.5rem;
	cursor: pointer
}

.form-group-custom {
	margin-bottom: 1.4rem
}

.form-hint {
	font-size: .72rem;
	color: var(--gray-cool);
	margin-top: .3rem;
	line-height: 1.5
}

.form-check-custom {
	display: flex;
	gap: .75rem;
	align-items: flex-start;
	cursor: pointer
}

.form-check-custom input[type="checkbox"] {
	width: 17px;
	height: 17px;
	flex-shrink: 0;
	margin-top: 1px;
	accent-color: var(--gold);
	cursor: pointer
}

.form-check-custom span {
	font-size: .82rem;
	color: var(--gray-cool);
	line-height: 1.55
}

.form-check-custom span a {
	color: var(--gold);
	text-decoration: none
}

.form-check-custom span a:hover {
	text-decoration: underline
}

.btn-submit {
	background: var(--gold);
	color: #fff;
	font-family: 'DM Sans', sans-serif;
	font-size: .82rem;
	font-weight: 600;
	letter-spacing: .08em;
	text-transform: uppercase;
	border: none;
	border-radius: 0;
	padding: .9rem 2.4rem;
	cursor: pointer;
	transition: background .2s, transform .15s;
	display: inline-flex;
	align-items: center;
	gap: .6rem
}

.btn-submit:hover {
	background: var(--navy);
	transform: translateY(-2px)
}

.or-divider {
	display: flex;
	align-items: center;
	gap: 1rem;
	margin: 1.8rem 0;
	color: var(--gray-cool);
	font-size: .78rem
}

.or-divider::before,
.or-divider::after {
	content: '';
	flex: 1;
	height: 1px;
	background: var(--border)
}

.sidebar-card {
	background: var(--navy);
	padding: 2.4rem;
	margin-bottom: 1.2rem
}

.sidebar-card h4 {
	font-size: 1.1rem;
	color: #fff;
	margin-bottom: .6rem
}

.sidebar-card p {
	font-size: .83rem;
	color: #ffffff85;
	line-height: 1.7;
	margin-bottom: 1.4rem
}

.sidebar-card-light {
	background: var(--cream);
	border: 1px solid var(--border);
	padding: 2rem;
	margin-bottom: 1.2rem
}

.sidebar-card-light h4 {
	font-size: 1rem;
	color: var(--navy);
	margin-bottom: .5rem
}

.sidebar-card-light p {
	font-size: .82rem;
	color: var(--gray-cool);
	line-height: 1.7;
	margin: 0
}

.btn-sidebar-gold {
	display: block;
	text-align: center;
	background: var(--gold);
	color: #fff;
	font-family: 'DM Sans', sans-serif;
	font-size: .78rem;
	font-weight: 600;
	letter-spacing: .08em;
	text-transform: uppercase;
	padding: .75rem 1rem;
	text-decoration: none;
	transition: background .2s
}

.btn-sidebar-gold:hover {
	background: var(--gold-light);
	color: #fff
}

.btn-sidebar-outline {
	display: block;
	text-align: center;
	background: transparent;
	color: #ffffffbf;
	font-family: 'DM Sans', sans-serif;
	font-size: .78rem;
	font-weight: 600;
	letter-spacing: .08em;
	text-transform: uppercase;
	padding: .75rem 1rem;
	text-decoration: none;
	border: 1px solid #fff3;
	transition: border-color .2s, color .2s;
	margin-top: .75rem
}

.btn-sidebar-outline:hover {
	border-color: var(--gold);
	color: var(--gold-light)
}

.hours-list {
	list-style: none;
	padding: 0;
	margin: 0
}

.hours-list li {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: .55rem 0;
	border-bottom: 1px solid #ffffff12;
	font-size: .82rem
}

.hours-list li:last-child {
	border-bottom: none
}

.hours-list li .day {
	color: #ffffff80
}

.hours-list li .time {
	color: #fff;
	font-weight: 500
}

.hours-list li .time.closed {
	color: #ffffff4d
}

.quick-link-item {
	display: flex;
	align-items: center;
	gap: .9rem;
	padding: .9rem 1rem;
	border: 1px solid var(--border);
	text-decoration: none;
	color: var(--navy);
	font-size: .84rem;
	font-weight: 500;
	transition: background .2s, border-color .2s;
	margin-bottom: .6rem
}

.quick-link-item .ql-icon {
	width: 36px;
	height: 36px;
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--cream);
	color: var(--gold);
	font-size: .9rem;
	transition: background .2s
}

.quick-link-item:hover {
	background: var(--cream);
	border-color: var(--gold)
}

.quick-link-item:hover .ql-icon {
	background: var(--gold);
	color: #fff
}

.map-section {
	background: var(--cream);
	padding: 5rem 0
}

.map-embed {
	width: 100%;
	aspect-ratio: 16/6;
	border: 1px solid var(--border);
	filter: grayscale(25%)
}

.offices-section {
	background: var(--navy);
	padding: 5rem 0
}

.office-card {
	border: 1px solid #ffffff17;
	padding: 2rem;
	transition: border-color .25s, background .25s;
	height: 100%;
}

.office-card:hover {
	border-color: #3a60c966;
	background: #ffffff08
}

.office-region {
	font-size: .65rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--gold);
	margin-bottom: .6rem
}

.office-card h4 {
	font-family: 'DM Sans', sans-serif;
	font-size: .95rem;
	font-weight: 600;
	color: #fff;
	margin-bottom: 1rem
}

.office-detail {
	display: flex;
	align-items: flex-start;
	gap: .7rem;
	margin-bottom: .6rem
}

.office-detail i {
	color: var(--gold);
	font-size: .8rem;
	margin-top: .2rem;
	width: 14px;
	flex-shrink: 0
}

.office-detail span {
	font-size: .8rem;
	color: #ffffff80;
	line-height: 1.55
}

.faq-section {
	background: #ffffff;
	padding: 5rem 0
}

.faq-accordion .accordion-item {
	border: none;
	border-bottom: 1px solid var(--border)
}

.faq-accordion .accordion-item:first-child {
	border-top: 1px solid var(--border)
}

.faq-accordion .accordion-button {
	background: transparent;
	color: var(--navy);
	font-family: 'DM Sans', sans-serif;
	font-size: .92rem;
	font-weight: 600;
	padding: 1.2rem 0;
	box-shadow: none;
	display: flex;
	align-items: center;
	gap: .8rem
}

.faq-accordion .accordion-button::after {
	display: none
}

.faq-accordion .accordion-button:not(.collapsed) {
	color: var(--gold)
}

.faq-accordion .faq-chevron {
	margin-left: auto;
	font-size: .72rem;
	color: var(--gray-cool);
	transition: transform .3s, color .3s
}

.faq-accordion .accordion-button:not(.collapsed) .faq-chevron {
	transform: rotate(180deg);
	color: var(--gold)
}

.faq-accordion .accordion-body {
	padding: 0 0 1.4rem;
	font-size: .85rem;
	color: var(--gray-cool);
	line-height: 1.75
}

.form-success {
	display: none;
	background: #1c6b7214;
	border: 1px solid var(--accent-teal);
	padding: 2rem;
	text-align: center
}

.form-success i {
	font-size: 2.5rem;
	color: var(--accent-teal);
	margin-bottom: 1rem;
	display: block
}

.form-success h4 {
	color: var(--navy);
	margin-bottom: .4rem
}

.form-success p {
	color: var(--gray-cool);
	font-size: .88rem;
	margin: 0
}

@media (max-width: 991px) {
	.form-card {
		padding: 2rem 1.5rem
	}
}

@media (max-width: 767px) {
	.form-card {
		padding: 1.5rem
	}
}

.about-intro-section {
	padding: 100px 0 80px;
	background: #fff
}

.about-intro-label {
	display: inline-block;
	font-size: .68rem;
	font-weight: 700;
	letter-spacing: .15em;
	text-transform: uppercase;
	color: var(--gold, #0081dc);
	margin-bottom: 1.1rem
}

.about-intro-title {
	font-family: 'Playfair Display', serif;
	font-size: clamp(2rem, 4vw, 3rem);
	font-weight: 700;
	color: var(--navy, #0b1d35);
	line-height: 1.2;
	margin-bottom: 1.5rem
}

.about-intro-title em {
	font-style: italic;
	color: var(--gold, #0081dc)
}

.about-intro-body {
	font-size: .97rem;
	color: #4a5568;
	line-height: 1.85;
	margin-bottom: 1rem
}

.about-intro-image-wrap {
	position: relative
}

.about-intro-image-wrap img {
	width: 100%;
	height: 480px;
	object-fit: cover;
	display: block
}

.about-intro-badge {
	position: absolute;
	bottom: -30px;
	left: -30px;
	background: var(--navy, #0b1d35);
	padding: 28px 32px;
	max-width: 240px
}

.about-intro-badge .big-num {
	font-family: 'Playfair Display', serif;
	font-size: 3rem;
	font-weight: 700;
	color: var(--gold, #0081dc);
	line-height: 1
}

.about-intro-badge .big-label {
	font-size: .75rem;
	color: #fff9;
	margin-top: .3rem;
	font-weight: 500;
	letter-spacing: .04em
}

.about-gold-bar {
	width: 48px;
	height: 3px;
	background: var(--gold, #0081dc);
	margin: 1.2rem 0
}

.mvv-section {
	background: var(--navy, #0b1d35);
	padding: 80px 0
}

.mvv-card {
	background: #ffffff0a;
	border: 1px solid #0081dc2e;
	padding: 44px 36px;
	height: 100%;
	position: relative;
	overflow: hidden;
	transition: border-color .3s, background .3s
}

.mvv-card::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 4px;
	height: 100%;
	background: var(--gold, #0081dc);
	opacity: 0;
	transition: opacity .3s
}

.mvv-card:hover {
	background: #0081dc0f;
	border-color: #0081dc73
}

.mvv-card:hover::before {
	opacity: 1
}

.mvv-icon {
	width: 52px;
	height: 52px;
	border-radius: 50%;
	background: #0081dc26;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 1.4rem;
	font-size: 1.2rem;
	color: var(--gold, #0081dc)
}

.mvv-title {
	font-family: 'Playfair Display', serif;
	font-size: 1.25rem;
	font-weight: 700;
	color: #fff;
	margin-bottom: .9rem
}

.mvv-body {
	font-size: .88rem;
	color: #ffffff8c;
	line-height: 1.85
}

.values-section {
	padding: 100px 0;
	background: var(--cream)
}

.value-item {
	display: flex;
	align-items: flex-start;
	gap: 1.4rem;
	margin-bottom: 2.4rem
}

.value-num {
	flex-shrink: 0;
	width: 44px;
	height: 44px;
	background: var(--navy, #0b1d35);
	color: var(--gold, #0081dc);
	font-family: 'Playfair Display', serif;
	font-size: 1.1rem;
	font-weight: 700;
	display: flex;
	align-items: center;
	justify-content: center
}

.value-text h5 {
	font-family: 'Playfair Display', serif;
	font-size: 1rem;
	font-weight: 700;
	color: var(--navy, #0b1d35);
	margin-bottom: .35rem
}

.value-text p {
	font-size: .86rem;
	color: #5a6478;
	line-height: 1.75;
	margin: 0
}

.values-image-stack {
	position: relative
}

.values-img-main {
	width: 100%;
	height: 560px;
	object-fit: cover;
	display: block
}

.values-img-accent {
	position: absolute;
	bottom: -28px;
	right: -28px;
	width: 210px;
	height: 190px;
	object-fit: cover;
	border: 5px solid #fff;
	box-shadow: 0 20px 60px #00000026
}

.history-section {
	padding: 100px 0;
	background: var(--navy, #0b1d35)
}

.timeline {
	position: relative;
	padding-left: 0
}

.timeline::before {
	content: '';
	position: absolute;
	left: 50%;
	top: 0;
	bottom: 0;
	width: 2px;
	background: #0081dc40;
	transform: translateX(-50%)
}

.tl-item {
	display: flex;
	gap: 0;
	margin-bottom: 0;
	position: relative
}

.tl-item:nth-child(odd) {
	flex-direction: row
}

.tl-item:nth-child(even) {
	flex-direction: row-reverse
}

.tl-content {
	width: calc(50% - 40px);
	background: #ffffff0a;
	border: 1px solid #0081dc26;
	padding: 32px 28px;
	margin-bottom: 28px;
	transition: border-color .3s
}

.tl-content:hover {
	border-color: #3a60c966;
}

.tl-item:nth-child(odd) .tl-content {
	margin-right: 40px;
	text-align: right
}

.tl-item:nth-child(even) .tl-content {
	margin-left: 40px
}

.tl-dot {
	position: absolute;
	left: 50%;
	top: 28px;
	transform: translateX(-50%);
	width: 14px;
	height: 14px;
	background: var(--gold, #0081dc);
	border-radius: 50%;
	border: 3px solid var(--navy, #0b1d35);
	z-index: 2
}

.tl-year {
	font-family: 'Playfair Display', serif;
	font-size: 1.5rem;
	font-weight: 700;
	color: var(--gold, #0081dc);
	margin-bottom: .45rem
}

.tl-heading {
	font-size: .92rem;
	font-weight: 600;
	color: #fff;
	margin-bottom: .4rem
}

.tl-desc {
	font-size: .81rem;
	color: #ffffff73;
	line-height: 1.75;
	margin: 0
}

@media (max-width: 767px) {
	.timeline::before {
		left: 20px
	}

	.tl-item,
	.tl-item:nth-child(even) {
		flex-direction: column !important
	}

	.tl-content,
	.tl-item:nth-child(odd) .tl-content,
	.tl-item:nth-child(even) .tl-content {
		width: 100%;
		margin-left: 44px !important;
		margin-right: 0 !important;
		text-align: left !important
	}

	.tl-dot {
		left: 20px
	}
}

.accred-section {
	padding: 100px 0;
	background: #fff
}

.accred-badge-card {
	border: 1px solid #0b1d351f;
	padding: 40px 30px;
	text-align: center;
	height: 100%;
	transition: box-shadow .3s, border-color .3s
}

.accred-badge-card:hover {
	box-shadow: 0 20px 60px #00000017;
	border-color: var(--gold, #0081dc)
}

.accred-badge-icon {
	width: 72px;
	height: 72px;
	background: var(--navy, #0b1d35);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto 1.4rem;
	font-size: 1.5rem;
	color: var(--gold, #0081dc)
}

.accred-badge-code {
	font-family: 'Playfair Display', serif;
	font-size: 1.1rem;
	font-weight: 700;
	color: var(--navy, #0b1d35);
	margin-bottom: .4rem
}

.accred-badge-name {
	font-size: .8rem;
	color: #6b7280;
	line-height: 1.65
}

.team-section {
	padding: 100px 0;
	background: var(--cream)
}

.team-card {
	background: #fff;
	overflow: hidden;
	transition: box-shadow .3s, transform .3s;
	height: 100%;
}

.team-card:hover {
	box-shadow: 0 24px 64px #0000001c;
	transform: translateY(-4px)
}

.team-img-wrap {
	position: relative;
	overflow: hidden;
	height: 280px
}

.team-img-wrap img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .5s;
	filter: grayscale(20%)
}

.team-card:hover .team-img-wrap img {
	transform: scale(1.04);
	filter: grayscale(0%)
}

.team-img-overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(to top, #0b1d358c 0%, transparent 60%)
}

.team-body {
	padding: 22px 24px 26px;
	border-top: 3px solid var(--gold, #0081dc)
}

.team-name {
	font-family: 'Playfair Display', serif;
	font-size: 1.05rem;
	font-weight: 700;
	color: var(--navy, #0b1d35);
	margin-bottom: .2rem
}

.team-role {
	font-size: .75rem;
	font-weight: 600;
	color: var(--gold, #0081dc);
	letter-spacing: .07em;
	text-transform: uppercase;
	margin-bottom: .7rem
}

.team-bio {
	font-size: .82rem;
	color: #6b7280;
	line-height: 1.7
}

.about-cta-section {
	padding: 90px 0;
	background: #0d2a47;
	position: relative;
	overflow: hidden
}

.about-cta-section::before {
	content: '';
	position: absolute;
	top: -80px;
	right: -80px;
	width: 500px;
	height: 500px;
	background: radial-gradient(circle, #0081dc1f 0%, transparent 70%);
	pointer-events: none
}

.about-cta-section::after {
	content: '';
	position: absolute;
	bottom: -100px;
	left: -100px;
	width: 400px;
	height: 400px;
	background: radial-gradient(circle, #0081dc14 0%, transparent 70%);
	pointer-events: none
}

.about-cta-title {
	font-family: 'Playfair Display', serif;
	font-size: clamp(1.8rem, 3.5vw, 2.7rem);
	font-weight: 700;
	color: #fff;
	margin-bottom: 1rem
}

.about-cta-title em {
	font-style: italic;
	color: var(--gold, #0081dc)
}

.about-cta-sub {
	font-size: .95rem;
	color: #ffffff80;
	line-height: 1.8;
	max-width: 540px
}

.btn-cta-gold {
	display: inline-flex;
	align-items: center;
	gap: .6rem;
	background: var(--gold, #0081dc);
	color: #fff;
	font-size: .82rem;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
	padding: .9rem 2rem;
	text-decoration: none;
	transition: background .25s, transform .2s
}

.btn-cta-gold:hover {
	background: #0069b4;
	color: #fff;
	transform: translateY(-2px)
}

.btn-cta-outline-white {
	display: inline-flex;
	align-items: center;
	gap: .6rem;
	background: transparent;
	color: #ffffffbf;
	border: 1px solid #ffffff40;
	font-size: .82rem;
	font-weight: 600;
	letter-spacing: .06em;
	text-transform: uppercase;
	padding: .9rem 2rem;
	text-decoration: none;
	transition: border-color .25s, color .25s
}

.btn-cta-outline-white:hover {
	border-color: var(--gold, #0081dc);
	color: var(--gold, #0081dc)
}

.about-stats-section {
	padding: 0;
	background: var(--gold, #0081dc)
}

.about-stat-item {
	padding: 44px 36px;
	text-align: center;
	border-right: 1px solid #ffffff40
}

.about-stat-item:last-child {
	border-right: none
}

.about-stat-num {
	font-family: 'Playfair Display', serif;
	font-size: 2.8rem;
	font-weight: 700;
	color: #fff;
	line-height: 1
}

.about-stat-label {
	font-size: .78rem;
	font-weight: 600;
	color: #ffffffbf;
	letter-spacing: .06em;
	text-transform: uppercase;
	margin-top: .5rem
}

@media (max-width: 767px) {
	.about-stat-item {
		border-right: none;
		border-bottom: 1px solid #fff3
	}

	.about-stat-item:last-child {
		border-bottom: none
	}

	.about-intro-badge {
		position: static;
		margin-top: 1.5rem;
		max-width: 100%
	}

	.values-img-accent {
		display: none
	}
}

.why-item {
	display: flex;
	align-items: center;
	gap: .8rem;
	margin-bottom: 1rem
}

.why-check {
	flex-shrink: 0;
	width: 28px;
	height: 28px;
	background: #0081dc26;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--gold, #0081dc);
	font-size: .75rem
}

.why-text {
	font-size: .88rem;
	color: #ffffffb3;
	line-height: 1.6
}


.blog-hero-post-section {
	padding: 80px 0 60px;
	background: #fff
}

.blog-featured-hero {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0;
	overflow: hidden;
	text-decoration: none;
	transition: box-shadow .3s;
	box-shadow: 0 8px 40px #00000014
}

.blog-featured-hero:hover {
	box-shadow: 0 24px 72px #00000024;
	text-decoration: none
}

.blog-featured-hero-img {
	position: relative;
	overflow: hidden;
	min-height: 460px
}

.blog-featured-hero-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .6s
}

.blog-featured-hero:hover .blog-featured-hero-img img {
	transform: scale(1.04)
}

.blog-featured-hero-img-overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(135deg, #0b1d3559 0%, transparent 60%)
}

.blog-featured-hero-body {
	background: var(--navy, #0b1d35);
	padding: 52px 48px;
	display: flex;
	flex-direction: column;
	justify-content: center
}

.blog-featured-hero-eyebrow {
	font-size: .65rem;
	font-weight: 700;
	letter-spacing: .15em;
	text-transform: uppercase;
	color: var(--gold, #0081dc);
	margin-bottom: 1.2rem;
	display: flex;
	align-items: center;
	gap: .6rem
}

.blog-featured-hero-eyebrow span {
	color: #ffffff59
}

.blog-featured-hero-title {
	font-family: 'Playfair Display', serif;
	font-size: clamp(1.5rem, 2.5vw, 2.1rem);
	font-weight: 700;
	color: #fff;
	line-height: 1.3;
	margin-bottom: 1.2rem
}

.blog-featured-hero-excerpt {
	font-size: .9rem;
	color: #ffffff8c;
	line-height: 1.8;
	margin-bottom: 2rem
}

.blog-featured-hero-meta {
	display: flex;
	align-items: center;
	gap: 1.2rem;
	margin-bottom: 1.8rem
}

.blog-meta-author {
	display: flex;
	align-items: center;
	gap: .55rem
}

.blog-meta-author-avatar {
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background: #0081dc33;
	border: 2px solid var(--gold, #0081dc);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: .75rem;
	color: var(--gold, #0081dc);
	font-weight: 700;
	overflow: hidden
}

.blog-meta-author-name {
	font-size: .78rem;
	font-weight: 600;
	color: #ffffffa6
}

.blog-meta-dot {
	width: 4px;
	height: 4px;
	border-radius: 50%;
	background: #fff3
}

.blog-meta-date {
	font-size: .76rem;
	color: #fff6
}

.blog-read-link {
	display: inline-flex;
	align-items: center;
	gap: .6rem;
	font-size: .78rem;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--gold, #0081dc);
	text-decoration: none;
	transition: gap .25s
}

.blog-featured-hero:hover .blog-read-link {
	gap: 1rem
}

@media (max-width: 767px) {
	.blog-featured-hero {
		grid-template-columns: 1fr
	}

	.blog-featured-hero-img {
		min-height: 260px
	}

	.blog-featured-hero-body {
		padding: 36px 28px
	}
}

.blog-filter-section {
	background: var(--cream);
	padding: 32px 0;
	border-bottom: 1px solid #0b1d3514;
	z-index: 100
}

/* @media (min-width: 991px) {
	.blog-filter-section {
		position: sticky;
		top: 78px;
	}
} */

.filter-bar {
	display: flex;
	align-items: center;
	gap: .6rem;
	flex-wrap: wrap
}

.filter-label {
	font-size: .68rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--navy, #0b1d35);
	margin-right: .4rem
}

.filter-btn {
	display: inline-flex;
	align-items: center;
	gap: .4rem;
	padding: .42rem 1.1rem;
	font-size: .76rem;
	font-weight: 600;
	letter-spacing: .04em;
	border: 1px solid #0b1d3526;
	background: transparent;
	color: #4a5568;
	cursor: pointer;
	transition: all .22s;
	text-decoration: none
}

.filter-btn:hover,
.filter-btn.active {
	background: var(--navy, #0b1d35);
	border-color: var(--navy, #0b1d35);
	color: #fff
}

.filter-btn.active-gold {
	background: var(--gold, #0081dc);
	border-color: var(--gold, #0081dc);
	color: #fff
}

.filter-count {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 18px;
	height: 18px;
	border-radius: 50%;
	font-size: .6rem;
	font-weight: 700;
	background: #ffffff40
}

.blog-search-wrap {
	margin-left: auto;
	position: relative
}

.blog-search-input {
	padding: .42rem 1rem .42rem 2.4rem;
	font-size: .8rem;
	border: 1px solid #0b1d3526;
	background: #fff;
	color: var(--navy, #0b1d35);
	outline: none;
	width: 220px;
	transition: border-color .2s, width .3s;
	font-family: 'DM Sans', sans-serif
}

.blog-search-input:focus {
	border-color: var(--gold, #0081dc);
	width: 260px
}

.blog-search-icon {
	position: absolute;
	left: .75rem;
	top: 50%;
	transform: translateY(-50%);
	font-size: .72rem;
	color: #9ca3af;
	pointer-events: none
}

.blog-main-section {
	padding: 70px 0 90px;
	background: #fff
}

.blog-card {
	background: #fff;
	border: 1px solid #0b1d3512;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	height: 100%;
	transition: box-shadow .3s, transform .3s;
	text-decoration: none
}

.blog-card:hover {
	box-shadow: 0 20px 60px #0000001a;
	transform: translateY(-4px);
	text-decoration: none
}

.blog-card-img {
	position: relative;
	overflow: hidden;
	height: 220px
}

.blog-card-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .5s;
	filter: grayscale(10%)
}

.blog-card:hover .blog-card-img img {
	transform: scale(1.06);
	filter: grayscale(0%)
}

.blog-card-tag-wrap {
	position: absolute;
	top: 14px;
	left: 14px
}

.blog-card-body {
	padding: 26px 24px 28px;
	flex: 1;
	display: flex;
	flex-direction: column;
	border-top: 3px solid transparent;
	transition: border-color .3s
}

.blog-card:hover .blog-card-body {
	border-top-color: var(--gold, #0081dc)
}

.blog-card-meta {
	display: flex;
	align-items: center;
	gap: .8rem;
	margin-bottom: .85rem
}

.blog-card-date {
	font-size: .72rem;
	color: #9ca3af
}

.blog-card-read-time {
	font-size: .72rem;
	color: #9ca3af;
	display: flex;
	align-items: center;
	gap: .3rem
}

.blog-card-title {
	font-family: 'Playfair Display', serif;
	font-size: 1.05rem;
	font-weight: 700;
	color: var(--navy, #0b1d35);
	line-height: 1.4;
	margin-bottom: .7rem;
	flex: 1
}

.blog-card-excerpt {
	font-size: .82rem;
	color: #6b7280;
	line-height: 1.75;
	margin-bottom: 1.2rem
}

.blog-card-footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-top: 1rem;
	border-top: 1px solid #0b1d350f;
	margin-top: auto
}

.blog-card-author {
	display: flex;
	align-items: center;
	gap: .5rem
}

.blog-author-avatar {
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: #0b1d3514;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: .65rem;
	font-weight: 700;
	color: var(--navy, #0b1d35);
	overflow: hidden
}

.blog-author-name {
	font-size: .73rem;
	font-weight: 600;
	color: #4a5568
}

.blog-card-arrow {
	width: 32px;
	height: 32px;
	background: #0b1d350d;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: .72rem;
	color: var(--navy, #0b1d35);
	transition: background .2s, color .2s
}

.blog-card:hover .blog-card-arrow {
	background: var(--gold, #0081dc);
	color: #fff
}

.blog-h-card {
	display: flex;
	gap: 0;
	background: #fff;
	border: 1px solid #0b1d3512;
	overflow: hidden;
	text-decoration: none;
	transition: box-shadow .25s, transform .25s;
	margin-bottom: 1px
}

.blog-h-card:hover {
	box-shadow: 0 12px 40px #00000017;
	transform: translateX(4px);
	text-decoration: none
}

.blog-h-img {
	flex-shrink: 0;
	width: 110px;
	overflow: hidden
}

.blog-h-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .4s
}

.blog-h-card:hover .blog-h-img img {
	transform: scale(1.08)
}

.blog-h-body {
	padding: 18px 20px;
	display: flex;
	flex-direction: column;
	justify-content: center
}

.blog-h-date {
	font-size: .69rem;
	color: #9ca3af;
	margin-bottom: .3rem
}

.blog-h-title {
	font-family: 'Playfair Display', serif;
	font-size: .88rem;
	font-weight: 700;
	color: var(--navy, #0b1d35);
	line-height: 1.4;
	margin-bottom: 0
}

.blog-sidebar-section {
	background: var(--cream);
	padding: 32px 28px;
	margin-bottom: 2rem
}

.sidebar-section-title {
	font-family: 'Playfair Display', serif;
	font-size: 1rem;
	font-weight: 700;
	color: var(--navy, #0b1d35);
	margin-bottom: 1.2rem;
	padding-bottom: .75rem;
	border-bottom: 2px solid var(--gold, #0081dc)
}

.sidebar-tag-cloud {
	display: flex;
	flex-wrap: wrap;
	gap: .5rem
}

.sidebar-tag {
	display: inline-flex;
	align-items: center;
	gap: .3rem;
	padding: .32rem .85rem;
	font-size: .73rem;
	font-weight: 600;
	border: 1px solid #0b1d3521;
	color: #4a5568;
	text-decoration: none;
	transition: all .2s
}

.sidebar-tag:hover {
	background: var(--navy, #0b1d35);
	border-color: var(--navy, #0b1d35);
	color: #fff;
	text-decoration: none
}

.sidebar-newsletter {
	background: var(--navy, #0b1d35);
	padding: 32px 28px;
	margin-bottom: 2rem
}

.sidebar-newsletter h4 {
	font-family: 'Playfair Display', serif;
	font-size: 1.05rem;
	font-weight: 700;
	color: #fff;
	margin-bottom: .6rem
}

.sidebar-newsletter p {
	font-size: .8rem;
	color: #ffffff80;
	line-height: 1.7;
	margin-bottom: 1.2rem
}

.sidebar-email-input {
	width: 100%;
	padding: .7rem 1rem;
	font-size: .8rem;
	background: #ffffff12;
	border: 1px solid #ffffff26;
	color: #fff;
	outline: none;
	font-family: 'DM Sans', sans-serif;
	margin-bottom: .7rem;
	transition: border-color .2s
}

.sidebar-email-input::placeholder {
	color: #ffffff4d
}

.sidebar-email-input:focus {
	border-color: var(--gold, #0081dc)
}

.btn-sidebar-subscribe {
	width: 100%;
	padding: .7rem;
	font-size: .77rem;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
	background: var(--gold, #0081dc);
	color: #fff;
	border: none;
	cursor: pointer;
	transition: background .2s;
	font-family: 'DM Sans', sans-serif
}

.btn-sidebar-subscribe:hover {
	background: #b8852e
}

.cert-cta {
	background: var(--navy, #0b1d35);
	padding: 32px 28px
}

.cert-cta-title {
	font-size: .62rem;
	font-weight: 700;
	letter-spacing: .13em;
	text-transform: uppercase;
	color: var(--gold);
	margin-bottom: .7rem
}

.cert-cta-subtitle {
	font-family: 'Playfair Display', serif;
	font-size: 1.05rem;
	font-weight: 700;
	color: #fff;
	margin-bottom: .6rem
}

.cert-cta-desc {
	font-size: .79rem;
	color: rgba(255, 255, 255, .45);
	line-height: 1.7;
	margin-bottom: 1.3rem
}

.trending-item {
	display: flex;
	align-items: flex-start;
	gap: .85rem;
	padding: .9rem 0;
	border-bottom: 1px solid #0b1d3512;
	text-decoration: none
}

.trending-item:last-child {
	border-bottom: none;
	padding-bottom: 0
}

.trending-item:hover {
	text-decoration: none
}

.trending-num {
	flex-shrink: 0;
	font-family: 'Playfair Display', serif;
	font-size: 1.6rem;
	font-weight: 700;
	color: #0b1d3561;
	line-height: 1;
	width: 28px
}

.trending-title {
	font-size: .82rem;
	font-weight: 600;
	color: var(--navy, #0b1d35);
	line-height: 1.5;
	transition: color .2s
}

.trending-item:hover .trending-title {
	color: var(--gold, #0081dc)
}

.trending-meta {
	font-size: .69rem;
	color: #9ca3af;
	margin-top: .25rem
}

.blog-banner-section {
	background: #072c51;
	padding: 70px 0;
	position: relative;
	overflow: hidden
}

.blog-banner-section::before {
	content: '';
	position: absolute;
	right: -100px;
	top: -100px;
	width: 500px;
	height: 500px;
	background: radial-gradient(circle, #0081dc1a 0%, transparent 70%);
	pointer-events: none
}

.blog-banner-eyebrow {
	font-size: .65rem;
	font-weight: 700;
	letter-spacing: .15em;
	text-transform: uppercase;
	color: var(--gold, #0081dc);
	margin-bottom: .8rem
}

.blog-banner-title {
	font-family: 'Playfair Display', serif;
	font-size: clamp(1.6rem, 3vw, 2.4rem);
	font-weight: 700;
	color: #fff;
	line-height: 1.25;
	margin-bottom: 1rem
}

.blog-banner-title em {
	font-style: italic;
	color: var(--gold, #0081dc)
}

.blog-banner-sub {
	font-size: .9rem;
	color: #ffffff80;
	line-height: 1.8;
	max-width: 480px
}

.blog-banner-card {
	background: #ffffff0d;
	border: 1px solid #0081dc33;
	padding: 30px 28px;
	display: flex;
	align-items: center;
	gap: 1.2rem;
	text-decoration: none;
	transition: border-color .25s, background .25s
}

.blog-banner-card:hover {
	border-color: var(--gold, #0081dc);
	background: #0081dc12;
	text-decoration: none
}

.blog-banner-card-icon {
	flex-shrink: 0;
	width: 48px;
	height: 48px;
	background: #0081dc26;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.1rem;
	color: var(--gold, #0081dc)
}

.blog-banner-card-text h5 {
	font-family: 'Playfair Display', serif;
	font-size: .95rem;
	font-weight: 700;
	color: #fff;
	margin-bottom: .25rem
}

.blog-banner-card-text p {
	font-size: .78rem;
	color: #ffffff73;
	margin: 0;
	line-height: 1.6
}

.blog-pagination {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: .4rem;
	margin-top: 3rem
}

.pg-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	font-size: .78rem;
	font-weight: 600;
	border: 1px solid #0b1d351f;
	background: #fff;
	color: var(--navy, #0b1d35);
	text-decoration: none;
	transition: all .2s
}

.pg-btn:hover,
.pg-btn.active {
	background: var(--navy, #0b1d35);
	border-color: var(--navy, #0b1d35);
	color: #fff;
	text-decoration: none
}

.pg-btn.active {
	background: var(--gold, #0081dc);
	border-color: var(--gold, #0081dc)
}

.blog-stats-strip {
	background: var(--gold, #0081dc);
	padding: 0
}

.bss-item {
	padding: 30px 24px;
	text-align: center;
	border-right: 1px solid #ffffff38
}

.bss-item:last-child {
	border-right: none
}

.bss-num {
	font-family: 'Playfair Display', serif;
	font-size: 2rem;
	font-weight: 700;
	color: #fff;
	line-height: 1
}

.bss-label {
	font-size: .72rem;
	font-weight: 600;
	letter-spacing: .06em;
	text-transform: uppercase;
	color: #ffffffb8;
	margin-top: .35rem
}

@media (max-width: 575px) {
	.bss-item {
		border-right: none;
		border-bottom: 1px solid #fff3
	}

	.bss-item:last-child {
		border-bottom: none
	}
}

.blog-card-col {
	transition: opacity .25s ease, transform .25s ease
}

.blog-card-col[style*="display: none"] {
	opacity: 0;
	pointer-events: none
}

.section-divider-heading {
	display: flex;
	align-items: center;
	gap: 1.2rem;
	margin-bottom: 2rem
}

.section-divider-heading h3 {
	font-family: 'Playfair Display', serif;
	font-size: 1.3rem;
	font-weight: 700;
	color: var(--navy, #0b1d35);
	margin: 0;
	white-space: nowrap
}

.section-divider-heading::after {
	content: '';
	flex: 1;
	height: 1px;
	background: #0b1d351a
}



#readProgress {
	position: fixed;
	top: 0;
	left: 0;
	height: 3px;
	width: 0;
	background: var(--gold, #0081dc);
	z-index: 9999;
	transition: width .1s linear
}

.post-header-section {
	padding: 72px 0 60px;
	background: #fff;
	border-bottom: 1px solid #0b1d3512
}

.post-category-row {
	display: flex;
	align-items: center;
	gap: .75rem;
	margin-bottom: 1.4rem
}

.post-read-time {
	font-size: .72rem;
	font-weight: 600;
	color: #9ca3af;
	letter-spacing: .04em;
	display: flex;
	align-items: center;
	gap: .35rem
}

.post-title {
	font-family: 'Playfair Display', serif;
	font-size: clamp(1.9rem, 4vw, 3rem);
	font-weight: 700;
	color: var(--navy, #0b1d35);
	line-height: 1.2;
	margin-bottom: 1.4rem
}

.post-excerpt {
	font-size: 1.08rem;
	color: #4a5568;
	line-height: 1.8;
	max-width: 720px;
	margin-bottom: 2rem;
	border-left: 4px solid var(--gold, #0081dc);
	padding-left: 1.4rem
}

.post-meta-bar {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 1.8rem;
	padding-top: 1.4rem;
	border-top: 1px solid #0b1d3514
}

.post-author-block {
	display: flex;
	align-items: center;
	gap: .8rem
}

.post-author-avatar {
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: var(--navy, #0b1d35);
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: 'Playfair Display', serif;
	font-size: 1rem;
	font-weight: 700;
	color: var(--gold, #0081dc);
	flex-shrink: 0;
	overflow: hidden
}

.post-author-name {
	font-size: .85rem;
	font-weight: 700;
	color: var(--navy, #0b1d35)
}

.post-author-role {
	font-size: .72rem;
	color: #9ca3af;
	margin-top: .1rem
}

.post-meta-item {
	display: flex;
	align-items: center;
	gap: .45rem;
	font-size: .77rem;
	color: #9ca3af
}

.post-meta-item i {
	color: var(--gold, #0081dc);
	font-size: .7rem
}

.post-share-row {
	margin-left: auto;
	display: flex;
	align-items: center;
	gap: .5rem
}

.share-label {
	font-size: .7rem;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: #9ca3af;
	margin-right: .2rem
}

.share-btn {
	width: 34px;
	height: 34px;
	border-radius: 50%;
	border: 1px solid #0b1d351f;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: .78rem;
	color: #4a5568;
	text-decoration: none;
	transition: all .2s
}

.share-btn:hover {
	background: var(--navy, #0b1d35);
	border-color: var(--navy, #0b1d35);
	color: #fff
}

.post-hero-image {
	width: 100%;
	max-height: 520px;
	object-fit: cover;
	display: block
}

.post-image-caption {
	font-size: .73rem;
	color: #9ca3af;
	text-align: center;
	padding: .7rem 1rem;
	background: var(--cream);
	border-bottom: 1px solid #0b1d350f
}

.post-body-section {
	padding: 70px 0 90px;
	background: #fff
}

.article-body {
	font-size: .97rem;
	color: #374151;
	line-height: 1.9
}

.article-body h2 {
	font-family: 'Playfair Display', serif;
	font-size: 1.6rem;
	font-weight: 700;
	color: var(--navy, #0b1d35);
	margin: 2.5rem 0 1rem;
	padding-top: .5rem
}

.article-body h3 {
	font-family: 'Playfair Display', serif;
	font-size: 1.2rem;
	font-weight: 700;
	color: var(--navy, #0b1d35);
	margin: 2rem 0 .8rem
}

.article-body p {
	margin-bottom: 1.4rem
}

.article-body ul,
.article-body ol {
	margin: 0 0 1.4rem 1.2rem;
	padding: 0
}

.article-body li {
	margin-bottom: .55rem
}

.article-body ul li::marker {
	color: var(--gold, #0081dc)
}

.article-body strong {
	color: var(--navy, #0b1d35)
}

.article-body a {
	color: var(--gold, #0081dc);
	text-decoration: underline;
	text-underline-offset: 3px
}

/* .article-body a:hover{color:var(--navy,#0b1d35)} */
.pull-quote {
	margin: 2.5rem 0;
	padding: 2rem 2.4rem;
	border-left: 5px solid var(--gold, #0081dc);
	background: var(--cream);
	position: relative
}

.pull-quote::before {
	content: '\201C';
	font-family: 'Playfair Display', serif;
	font-size: 5rem;
	color: var(--gold, #0081dc);
	opacity: .2;
	position: absolute;
	top: -1rem;
	left: 1.5rem;
	line-height: 1
}

.pull-quote p {
	font-family: 'Playfair Display', serif;
	font-size: 1.2rem;
	font-style: italic;
	color: var(--navy, #0b1d35);
	line-height: 1.65;
	margin: 0
}

.pull-quote cite {
	display: block;
	margin-top: .8rem;
	font-size: .75rem;
	font-style: normal;
	font-weight: 700;
	color: var(--gold, #0081dc);
	letter-spacing: .06em;
	text-transform: uppercase
}

.article-img-wrap {
	margin: 2rem 0
}

.article-img-wrap img {
	width: 100%;
	display: block
}

.article-img-wrap figcaption {
	font-size: .73rem;
	color: #9ca3af;
	text-align: center;
	margin-top: .6rem
}

.key-points-box {
	background: var(--navy, #0b1d35);
	padding: 2rem 2.2rem;
	margin: 2.5rem 0
}

.key-points-box h4 {
	font-family: 'Playfair Display', serif;
	font-size: 1rem;
	font-weight: 700;
	color: var(--gold, #0081dc);
	margin-bottom: 1rem;
	letter-spacing: .05em;
	text-transform: uppercase
}

.key-points-box ul {
	margin: 0;
	padding-left: 1.2rem;
	list-style: none
}

.key-points-box ul li {
	color: #ffffffbf;
	font-size: .87rem;
	line-height: 1.75;
	margin-bottom: .55rem;
	padding-left: 1.4rem;
	position: relative
}

.key-points-box ul li::before {
	content: '';
	position: absolute;
	left: 0;
	top: .6rem;
	width: 6px;
	height: 6px;
	background: var(--gold, #0081dc);
	border-radius: 50%
}

.post-info-table {
	width: 100%;
	border-collapse: collapse;
	margin: 2rem 0;
	font-size: .87rem
}

.post-info-table th {
	background: var(--navy, #0b1d35);
	color: var(--gold, #0081dc);
	font-weight: 700;
	padding: .85rem 1.2rem;
	text-align: left;
	letter-spacing: .04em;
	font-size: .78rem;
	text-transform: uppercase
}

.post-info-table td {
	padding: .75rem 1.2rem;
	color: #374151;
	border-bottom: 1px solid #0b1d3512
}

.post-info-table tr:nth-child(even) td {
	background: var(--cream)
}

.post-info-table td:first-child {
	font-weight: 600;
	color: var(--navy, #0b1d35)
}

.post-tags-row {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: .5rem;
	margin-top: 2.5rem;
	padding-top: 1.5rem;
	border-top: 1px solid #0b1d3514
}

.post-tag-label {
	font-size: .7rem;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: #9ca3af;
	margin-right: .3rem
}

.post-tag {
	display: inline-flex;
	align-items: center;
	padding: .3rem .85rem;
	font-size: .73rem;
	font-weight: 600;
	border: 1px solid #0b1d3521;
	color: #4a5568;
	text-decoration: none;
	transition: all .2s
}

.post-tag:hover {
	background: var(--navy, #0b1d35);
	border-color: var(--navy, #0b1d35);
	color: #fff;
	text-decoration: none
}

.author-bio-card {
	display: flex;
	align-items: flex-start;
	gap: 1.4rem;
	padding: 2rem 2.2rem;
	background: var(--cream);
	border-left: 4px solid var(--gold, #0081dc);
	margin-top: 2.5rem
}

.author-bio-avatar {
	flex-shrink: 0;
	width: 72px;
	height: 72px;
	border-radius: 50%;
	background: var(--navy, #0b1d35);
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: 'Playfair Display', serif;
	font-size: 1.5rem;
	font-weight: 700;
	color: var(--gold, #0081dc);
	overflow: hidden
}

.author-bio-name {
	font-family: 'Playfair Display', serif;
	font-size: 1.05rem;
	font-weight: 700;
	color: var(--navy, #0b1d35);
	margin-bottom: .15rem
}

.author-bio-role {
	font-size: .72rem;
	font-weight: 700;
	color: var(--gold, #0081dc);
	letter-spacing: .07em;
	text-transform: uppercase;
	margin-bottom: .6rem
}

.author-bio-text {
	font-size: .84rem;
	color: #6b7280;
	line-height: 1.75;
	margin: 0
}

.toc-card {
	background: var(--cream);
	padding: 1.6rem 1.8rem;
	margin-bottom: 1.6rem;
	position: sticky;
	top: 90px
}

.toc-title {
	font-family: 'Playfair Display', serif;
	font-size: .95rem;
	font-weight: 700;
	color: var(--navy, #0b1d35);
	margin-bottom: 1rem;
	padding-bottom: .7rem;
	border-bottom: 2px solid var(--gold, #0081dc)
}

.toc-list {
	list-style: none;
	margin: 0;
	padding: 0;
	counter-reset: toc-counter
}

.toc-list li {
	counter-increment: toc-counter;
	margin-bottom: .5rem
}

.toc-list a {
	display: flex;
	align-items: flex-start;
	gap: .6rem;
	font-size: .8rem;
	color: #4a5568;
	text-decoration: none;
	line-height: 1.5;
	transition: color .2s;
	padding: .3rem 0;
	border-left: 2px solid transparent;
	padding-left: .5rem;
	transition: all .2s
}

.toc-list a::before {
	content: counter(toc-counter, decimal-leading-zero);
	flex-shrink: 0;
	font-size: .65rem;
	font-weight: 700;
	color: var(--gold, #0081dc);
	margin-top: .1rem
}

.toc-list a:hover,
.toc-list a.toc-active {
	color: var(--navy, #0b1d35);
	border-left-color: var(--gold, #0081dc);
	font-weight: 600
}

.toc-progress {
	margin-top: 1.2rem;
	height: 3px;
	background: #0b1d3514
}

.toc-progress-bar {
	height: 100%;
	background: var(--gold, #0081dc);
	width: 0;
	transition: width .2s
}

.sidebar-widget {
	background: var(--cream);
	padding: 1.6rem 1.8rem;
	margin-bottom: 1.6rem
}

.sidebar-widget-title {
	font-family: 'Playfair Display', serif;
	font-size: .95rem;
	font-weight: 700;
	color: var(--navy, #0b1d35);
	margin-bottom: 1rem;
	padding-bottom: .7rem;
	border-bottom: 2px solid var(--gold, #0081dc)
}

.sidebar-post-item {
	display: flex;
	gap: .8rem;
	align-items: flex-start;
	padding: .8rem 0;
	border-bottom: 1px solid #0b1d3512;
	text-decoration: none
}

.sidebar-post-item:last-child {
	border-bottom: none;
	padding-bottom: 0
}

.sidebar-post-item:hover {
	text-decoration: none
}

.sidebar-post-thumb {
	flex-shrink: 0;
	width: 68px;
	height: 58px;
	overflow: hidden
}

.sidebar-post-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .3s
}

.sidebar-post-item:hover .sidebar-post-thumb img {
	transform: scale(1.08)
}

.sidebar-post-cat {
	font-size: .62rem;
	font-weight: 700;
	color: var(--gold, #0081dc);
	letter-spacing: .07em;
	text-transform: uppercase;
	margin-bottom: .2rem
}

.sidebar-post-title {
	font-size: .8rem;
	font-weight: 700;
	color: var(--navy, #0b1d35);
	line-height: 1.45;
	transition: color .2s
}

.sidebar-post-item:hover .sidebar-post-title {
	color: var(--gold, #0081dc)
}

.sidebar-newsletter-widget {
	background: var(--navy, #0b1d35);
	padding: 1.6rem 1.8rem;
	margin-bottom: 1.6rem
}

.sidebar-newsletter-widget h4 {
	font-family: 'Playfair Display', serif;
	font-size: 1rem;
	font-weight: 700;
	color: #fff;
	margin-bottom: .5rem
}

.sidebar-newsletter-widget p {
	font-size: .78rem;
	color: #ffffff73;
	line-height: 1.65;
	margin-bottom: 1rem
}

.sidebar-email-inp {
	width: 100%;
	padding: .65rem 1rem;
	font-size: .79rem;
	background: #ffffff12;
	border: 1px solid #ffffff26;
	color: #fff;
	outline: none;
	font-family: 'DM Sans', sans-serif;
	margin-bottom: .6rem
}

.sidebar-email-inp::placeholder {
	color: #ffffff4d
}

.sidebar-email-inp:focus {
	border-color: var(--gold, #0081dc)
}

.btn-sub {
	width: 100%;
	padding: .65rem;
	font-size: .76rem;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
	background: var(--gold, #0081dc);
	color: #fff;
	border: none;
	cursor: pointer;
	font-family: 'DM Sans', sans-serif;
	transition: background .2s
}

.btn-sub:hover {
	background: #b8852e
}

.widget-tag-cloud {
	display: flex;
	flex-wrap: wrap;
	gap: .45rem
}

.widget-tag {
	display: inline-flex;
	padding: .28rem .75rem;
	font-size: .7rem;
	font-weight: 600;
	border: 1px solid #0b1d3521;
	color: #4a5568;
	text-decoration: none;
	transition: all .2s
}

.widget-tag:hover {
	background: var(--navy, #0b1d35);
	border-color: var(--navy, #0b1d35);
	color: #fff;
	text-decoration: none
}

.related-section {
	padding: 80px 0;
	background: var(--cream)
}

.related-card {
	background: #fff;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	height: 100%;
	text-decoration: none;
	transition: box-shadow .3s, transform .3s
}

.related-card:hover {
	box-shadow: 0 20px 56px #0000001a;
	transform: translateY(-4px);
	text-decoration: none
}

.related-card-img {
	overflow: hidden;
	height: 200px;
	position: relative
}

.related-card-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .5s
}

.related-card:hover .related-card-img img {
	transform: scale(1.06)
}

.related-card-tag-wrap {
	position: absolute;
	top: 12px;
	left: 12px
}

.related-card-body {
	padding: 22px 20px 24px;
	flex: 1;
	display: flex;
	flex-direction: column;
	border-top: 3px solid transparent;
	transition: border-color .3s
}

.related-card:hover .related-card-body {
	border-top-color: var(--gold, #0081dc)
}

.related-card-date {
	font-size: .71rem;
	color: #9ca3af;
	margin-bottom: .6rem;
	display: flex;
	align-items: center;
	gap: .8rem
}

.related-card-title {
	font-family: 'Playfair Display', serif;
	font-size: .98rem;
	font-weight: 700;
	color: var(--navy, #0b1d35);
	line-height: 1.45;
	margin-bottom: .6rem;
	flex: 1
}

.related-card-link {
	font-size: .72rem;
	font-weight: 700;
	letter-spacing: .07em;
	text-transform: uppercase;
	color: var(--gold, #0081dc);
	display: flex;
	align-items: center;
	gap: .4rem;
	margin-top: auto;
	transition: gap .2s
}

.related-card:hover .related-card-link {
	gap: .7rem
}

.post-nav-section {
	background: var(--navy, #0b1d35);
	padding: 0
}

.post-nav-item {
	padding: 44px 40px;
	display: flex;
	flex-direction: column;
	text-decoration: none;
	transition: background .25s;
	border-right: 1px solid #ffffff12;
	height: 100%
}

.post-nav-item:last-child {
	border-right: none
}

.post-nav-item:hover {
	background: #ffffff0a;
	text-decoration: none
}

.post-nav-dir {
	font-size: .65rem;
	font-weight: 700;
	letter-spacing: .13em;
	text-transform: uppercase;
	color: #ffffff59;
	margin-bottom: .6rem;
	display: flex;
	align-items: center;
	gap: .4rem
}

.post-nav-dir i {
	color: var(--gold, #0081dc)
}

.post-nav-cat {
	font-size: .68rem;
	font-weight: 700;
	letter-spacing: .07em;
	text-transform: uppercase;
	color: var(--gold, #0081dc);
	margin-bottom: .4rem
}

.post-nav-title {
	font-family: 'Playfair Display', serif;
	font-size: 1rem;
	font-weight: 700;
	color: #fff;
	line-height: 1.4;
	transition: color .2s
}

.post-nav-item:hover .post-nav-title {
	color: var(--gold, #0081dc)
}

@media (max-width: 991px) {
	.toc-card {
		position: static
	}

	.post-meta-bar {
		flex-direction: column;
		align-items: flex-start;
		gap: 1rem
	}

	.post-share-row {
		margin-left: 0
	}

	.author-bio-card {
		flex-direction: column
	}
}

@media (max-width: 575px) {
	.post-title {
		font-size: 1.7rem
	}

	.post-nav-item {
		padding: 28px 20px
	}
}

label[for="search-input"] {
	font-size: 1.5rem;
	font-weight: 700;
	font-family: 'Playfair Display', serif;
}

.search-box .ql-btn {
	padding: 0.45rem 2.8rem;
	margin-top: 10px;
}

.search-results-wrapper {
	border-radius: 14px;
	overflow: hidden;
	border: 1px solid #e4e9f2;
	box-shadow: 0 4px 24px #1e326412
}

.search-results-table {
	border-collapse: collapse;
	font-family: 'DM Sans', sans-serif;
	font-size: .92rem;
	width: 100%
}

.search-results-table thead tr {
	background: #f4f6fb
}

.search-results-table thead th {
	padding: 14px 20px;
	font-weight: 600;
	font-size: .78rem;
	text-transform: uppercase;
	letter-spacing: .06em;
	color: #8592a8;
	border-bottom: 1px solid #e4e9f2;
	white-space: nowrap
}

.search-results-table tbody tr {
	background: #fff
}

.search-results-table tbody tr:not(:last-child) {
	border-bottom: 1px solid #f0f3f9
}

.search-results-table tbody tr:hover {
	background: #f8f9fd
}

.search-results-table tbody td {
	padding: 15px 20px;
	color: #2c3a52;
	vertical-align: middle
}

.search-results-table tbody td:first-child {
	font-weight: 700;
	color: #a0abbe;
	font-size: .82rem
}

.result-client-name {
	font-weight: 600;
	color: #1a2235
}

.result-cert-number {
	font-size: .88rem;
	color: #4a5a78;
	background: #f0f3fb;
	padding: 3px 9px;
	border-radius: 5px;
	display: inline-block;
	letter-spacing: .03em
}

.cert-badge {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 4px 12px;
	border-radius: 20px;
	font-size: .78rem;
	font-weight: 600;
	letter-spacing: .04em;
	text-transform: uppercase
}

.cert-badge i {
	font-size: .7rem
}

.cert-badge.active,
.cert-badge.valid,
.cert-badge.completed {
	background: #e6f9f0;
	color: #1a8a55
}

.cert-badge.expired,
.cert-badge.withdrawn,
.cert-badge.cancelled {
	background: #fdecea;
	color: #c0392b
}

.cert-badge.suspended,
.cert-badge.rejected,
.cert-badge.viewed {
	background: #fff4e0;
	color: #c07800
}

.cert-badge.pending,
.cert-badge.progressing {
	background: #eef1ff;
	color: #3651c9
}














@media (min-width:576px) {}

@media (min-width:768px) {

	.col-md-offset-1 {
		margin-right: 8.33333333%;
		margin-left: 0;
	}

	.left-md-center {
		text-align: left !important;
	}

	.right-md-center {
		text-align: right !important;
	}

	.left-md-center img {
		margin-left: 0;
	}

	.right-md-center img {
		margin-right: 0;
	}

	.inline-img {
		float: left;
		margin-right: 15px;
	}

	.inline-video {
		width: 50%;
	}

}

@media (min-width:992px) {
	.navbar {
		position: fixed;
		width: 100%;
		top: 0;
		z-index: 1020;
	}

}

@media (min-width:1200px) {
	.container {
		max-width: 1140px;
	}
}

@media (min-width: 1400px) {

	.container,
	.container-lg,
	.container-md,
	.container-sm,
	.container-xl,
	.container-xxl {
		max-width: 1420px;
	}
}

blockquote {
	position: relative;
	margin: 3rem 0;
	padding: 2.5rem 2rem;
	border-radius: 1.25rem;
	overflow: hidden;

	background:
		linear-gradient(135deg,
			rgba(10, 35, 66, 0.04),
			rgba(200, 164, 93, 0.08));

	border-left: 5px solid var(--gold);

	box-shadow:
		0 10px 30px rgba(0, 0, 0, .04),
		inset 0 1px 0 rgba(255, 255, 255, .35);

	backdrop-filter: blur(10px);
}

blockquote::before {
	content: "“";
	position: absolute;
	top: -1.2rem;
	left: 1rem;

	font-size: 7rem;
	line-height: 1;
	font-weight: 700;

	color: rgba(200, 164, 93, .18);

	font-family: Georgia, serif;

	pointer-events: none;
}

blockquote h2 {
	position: relative;
	margin: 0 0 1rem;

	font-size: clamp(1.8rem, 3vw, 3rem);
	line-height: 1.15;
	font-weight: 700;

	color: #0a2342;

	letter-spacing: -.03em;
}

blockquote p {
	position: relative;
	margin: 0;

	font-size: 1.05rem;
	line-height: 1.9;
	font-weight: 500;

	color: #5f6b7a;
}

blockquote::after {
	content: "";
	position: absolute;
	inset: 0;

	background:
		radial-gradient(circle at top right,
			rgba(200, 164, 93, .12),
			transparent 35%);

	pointer-events: none;
}
