:root {
	--navy: #0a3473;
	--navy-dark: #06265c;
	--blue: #0d62c9;
	--blue-soft: #e5f4ff;
	--sky: #cfeeff;
	--green: #45a857;
	--green-soft: #eaf9ef;
	--orange: #f58220;
	--orange-soft: #fff0e4;
	--ink: #102347;
	--text: #2f3d55;
	--muted: #65748a;
	--line: #d7e6f4;
	--bg: #f4fbff;
	--card: #ffffff;
	--shadow: 0 18px 38px rgba(10, 52, 115, .12);
	--shadow-strong: 0 26px 70px rgba(10, 52, 115, .18);
	--radius: 18px;
}

* {
	box-sizing: border-box
}

html {
	scroll-behavior: smooth
}

body {
	margin: 0;
	font-family: "Segoe UI", Inter, Arial, sans-serif;
	background: linear-gradient(180deg, #f2f9ff 0, #ffffff 45%, #f6fbff 100%);
	color: var(--text);
	line-height: 1.65;
	overflow-x: hidden
}

a {
	color: var(--navy);
	text-decoration: none
}

a:hover {
	color: var(--orange)
}

img,
video {
	max-width: 100%;
	height: auto;
	display: block
}

.wrap {
	width: min(1160px, 92%);
	margin: auto
}

.top-strip {
	background: linear-gradient(90deg, #0a3473, #0d62c9);
	color: #eef8ff;
	font-size: 13px;
	font-weight: 600;
	position: relative;
	z-index: 80
}

.top-strip-grid {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	min-height: 38px
}

.top-left,
.top-social {
	display: flex;
	align-items: center;
	gap: 22px
}

.top-social a {
	color: #eef8ff;
	font-weight: 800;
	opacity: .95
}

.top-social a:hover {
	color: #ffe2c7
}

.site-header {
	position: relative;
	z-index: 85;
	background: rgba(255, 255, 255, .98);
	box-shadow: 0 5px 24px rgba(10, 52, 115, .06);
	border-bottom: 1px solid rgba(215, 230, 244, .85)
}

.header-brand-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 22px;
	min-height: 106px
}

.brand {
	display: block
}

.brand img {
	max-height: 86px;
	max-width: 100%;
	object-fit: contain;
	object-position: left center
}

.header-quick {
	text-align: right;
	color: var(--navy);
	font-weight: 750
}

.header-quick span {
	display: block;
	color: var(--orange);
	font-size: 13px;
	letter-spacing: .8px;
	text-transform: uppercase;
	font-weight: 900
}

.header-quick strong {
	display: block;
	font-size: 20px;
	color: var(--navy)
}

.menu-bar {
	position: sticky;
	top: 0;
	z-index: 95;
	background: rgba(255, 255, 255, .97);
	backdrop-filter: blur(13px);
	box-shadow: 0 10px 28px rgba(10, 52, 115, .10);
	border-bottom: 1px solid rgba(215, 230, 244, .95);
	transition: .2s
}

.menu-bar.scrolled {
	box-shadow: 0 14px 36px rgba(10, 52, 115, .18)
}

.menu-grid {
	display: grid;
	grid-template-columns: 1fr auto;
	align-items: center;
	gap: 18px;
	min-height: 68px
}

.main-nav {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 7px;
	flex-wrap: wrap
}

.main-nav a {
	padding: 13px 15px;
	border-radius: 12px;
	color: var(--ink);
	font-weight: 780;
	font-size: 14px;
	position: relative;
	background: linear-gradient(180deg, rgba(255, 255, 255, .88), rgba(229, 244, 255, .48));
	border: 1px solid transparent
}

.main-nav a:after {
	content: "";
	position: absolute;
	left: 15px;
	right: 15px;
	bottom: 6px;
	height: 3px;
	border-radius: 4px;
	background: linear-gradient(90deg, var(--navy), var(--green), var(--orange));
	transform: scaleX(0);
	transition: .2s
}

.main-nav a:hover,
.main-nav a.active {
	color: var(--navy);
	border-color: var(--line);
	box-shadow: 0 8px 20px rgba(10, 52, 115, .10)
}

.main-nav a:hover:after {
	transform: scaleX(1)
}

.register-top {
	white-space: nowrap;
	background: linear-gradient(135deg, var(--navy), var(--blue));
	color: #eef8ff;
	font-weight: 800;
	padding: 13px 18px;
	border-radius: 9px;
	box-shadow: 0 10px 20px rgba(10, 52, 115, .20)
}

.register-top:hover {
	color: #fff;
	background: linear-gradient(135deg, var(--blue), var(--navy-dark))
}

.menu-toggle {
	display: none;
	width: 48px;
	height: 44px;
	border: 1px solid var(--line);
	background: #fff;
	border-radius: 12px;
	box-shadow: 0 8px 18px rgba(10, 52, 115, .10);
	cursor: pointer
}

.menu-toggle span {
	display: block;
	width: 24px;
	height: 3px;
	background: var(--navy);
	border-radius: 5px;
	margin: 5px auto
}

.hero-home {
	position: relative;
	overflow: hidden;
	background: linear-gradient(105deg, #eef9ff 0 48%, #d9f0ff 48% 100%);
	min-height: 520px
}

.hero-home:before {
	content: "";
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 16% 20%, rgba(13, 98, 201, .13), transparent 32%), radial-gradient(circle at 80% 24%, rgba(69, 168, 87, .12), transparent 30%)
}

.hero-bg-dots {
	position: absolute;
	right: 10%;
	top: 110px;
	width: 165px;
	height: 165px;
	background-image: radial-gradient(rgba(13, 98, 201, .26) 2px, transparent 2px);
	background-size: 22px 22px
}

.hero-grid {
	position: relative;
	z-index: 2;
	display: grid;
	grid-template-columns: 1.02fr .98fr;
	gap: 35px;
	align-items: center;
	padding: 72px 0 106px
}

.hero-copy {
	max-width: 600px
}

.eyebrow,
.section-label {
	display: inline-block;
	color: var(--orange);
	font-size: 14px;
	letter-spacing: .8px;
	font-weight: 900;
	text-transform: uppercase;
	margin-bottom: 12px
}

.hero-copy h1 {
	margin: 0;
	color: var(--navy);
	font-size: 48px;
	line-height: 1.16;
	letter-spacing: -.8px;
	font-weight: 900
}

.hero-copy p {
	font-size: 17px;
	color: #3f5068;
	max-width: 560px;
	margin: 18px 0 0
}

.hero-actions {
	display: flex;
	gap: 18px;
	flex-wrap: wrap;
	margin-top: 28px
}

.btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
	border: 1px solid transparent;
	border-radius: 8px;
	padding: 14px 22px;
	background: linear-gradient(135deg, var(--navy), var(--blue));
	color: #eef8ff;
	font-weight: 850;
	box-shadow: 0 12px 25px rgba(10, 52, 115, .18);
	cursor: pointer;
	text-decoration: none
}

.btn:hover {
	color: #fff;
	transform: translateY(-2px);
	box-shadow: 0 18px 30px rgba(10, 52, 115, .25)
}

.btn-secondary {
	background: #ffffff;
	color: var(--navy);
	border-color: var(--navy);
	box-shadow: none
}

.btn-secondary:hover {
	background: var(--blue-soft);
	color: var(--navy)
}

.btn-light {
	background: #fff;
	color: var(--navy)
}

.btn-outline {
	background: transparent;
	color: #eef8ff;
	border-color: rgba(255, 255, 255, .65)
}

.hero-visual {
	min-height: 375px;
	position: relative
}

.hero-visual:before {
	content: "";
	position: absolute;
	inset: auto -60px -45px 0;
	height: 155px;
	background: #fff;
	border-radius: 55% 45% 0 0;
	z-index: 0
}

.hero-visual img {
	position: relative;
	z-index: 1;
	width: 100%;
	height: 410px;
	object-fit: cover;
	border-radius: 0 0 0 80px;
	filter: drop-shadow(0 20px 35px rgba(10, 52, 115, .16))
}

.theme-wave {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 98px;
	overflow: hidden
}

.theme-wave span {
	position: absolute;
	left: -6%;
	right: -6%;
	height: 92px;
	border-radius: 50% 50% 0 0;
	transform: rotate(2deg)
}

.wave-blue {
	bottom: -48px;
	background: #0a3473
}

.wave-green {
	bottom: -56px;
	background: #45a857;
	transform: rotate(3.3deg) !important
}

.wave-orange {
	bottom: -64px;
	background: #f58220;
	transform: rotate(4.6deg) !important
}

.quick-info-wrap {
	position: relative;
	z-index: 4;
	margin-top: -54px
}

.quick-info-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	background: #fff;
	border: 1px solid var(--line);
	border-radius: 13px;
	box-shadow: var(--shadow-strong);
	overflow: hidden
}

.quick-info-card {
	display: flex;
	align-items: center;
	gap: 17px;
	padding: 24px 28px;
	border-right: 1px solid var(--line)
}

.quick-info-card:last-child {
	border-right: 0
}

.quick-icon,
.tile-icon {
	width: 58px;
	height: 58px;
	border-radius: 50%;
	display: grid;
	place-items: center;
	font-size: 27px;
	font-weight: 900;
	flex: 0 0 auto
}

.quick-icon.blue,
.tile-icon.blue {
	background: #e8f2ff;
	color: var(--navy)
}

.quick-icon.green,
.tile-icon.green {
	background: var(--green-soft);
	color: var(--green)
}

.quick-icon.orange,
.tile-icon.orange {
	background: var(--orange-soft);
	color: var(--orange)
}

.quick-info-card small {
	display: block;
	color: #6b7686;
	font-weight: 750
}

.quick-info-card b {
	display: block;
	color: var(--navy);
	font-size: 20px;
	line-height: 1.2
}

.quick-info-card span {
	display: block;
	color: #526277;
	font-size: 13px;
	font-weight: 650
}

.section {
	padding: 72px 0;
	background: linear-gradient(180deg, #ffffff, #f5fbff)
}

.section.alt {
	background: linear-gradient(180deg, #f1f9ff, #ffffff)
}

.inner-section {
	padding: 38px 0;
	border-top: 1px solid var(--line)
}

.section-head {
	text-align: center;
	max-width: 780px;
	margin: 0 auto 34px
}

.section-head h2,
.about-block h2,
.highlight-list h2,
.page-title h1 {
	margin: 0 0 10px;
	color: var(--navy);
	font-size: 32px;
	line-height: 1.2;
	font-weight: 900
}

.section-head p,
.page-title p {
	margin: 0;
	color: #647388;
	font-weight: 650
}

.feature-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 22px
}

.advanced-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px
}

.screenshot-cards {
	margin-top: -4px
}

.info-tile,
.research-card,
.profile-card,
.news-card,
.contact-card,
.content-card,
.form-card,
.sidebar-box,
.logo-card {
	background: #fff;
	border: 1px solid var(--line);
	border-radius: 14px;
	box-shadow: var(--shadow);
	transition: .22s
}

.info-tile {
	padding: 30px 26px;
	text-align: center;
	min-height: 226px
}

.info-tile h3 {
	margin: 15px 0 10px;
	color: var(--ink);
	font-size: 17px
}

.info-tile p {
	margin: 0;
	color: #526277;
	font-size: 14px
}

.info-tile a {
	display: inline-block;
	margin-top: 16px;
	font-weight: 800;
	color: var(--blue)
}

.info-tile a.green-link {
	color: var(--green)
}

.info-tile a.orange-link {
	color: var(--orange)
}

.info-tile:hover,
.research-card:hover,
.profile-card:hover,
.news-card:hover,
.contact-card:hover {
	transform: translateY(-7px);
	box-shadow: 0 25px 48px rgba(10, 52, 115, .16)
}

.two-col {
	display: grid;
	grid-template-columns: 1.05fr .95fr;
	gap: 50px;
	align-items: start
}

.about-block {
	padding-right: 34px;
	border-right: 1px solid var(--line)
}

.about-block p {
	font-size: 16px;
	color: #4d5d72
}

.highlight-list {
	padding-left: 10px
}

.mini-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px 30px
}

.mini-item {
	display: grid;
	grid-template-columns: 42px 1fr;
	gap: 12px;
	align-items: start
}

.mini-item:before {
	content: "▧";
	width: 36px;
	height: 36px;
	border-radius: 9px;
	display: grid;
	place-items: center;
	background: #e8f2ff;
	color: var(--navy);
	font-weight: 900
}

.mini-item:nth-child(2n):before {
	background: var(--green-soft);
	color: var(--green)
}

.mini-item:nth-child(3n):before {
	background: var(--orange-soft);
	color: var(--orange)
}

.mini-item b {
	display: block;
	color: var(--ink);
	font-size: 15px
}

.mini-item span {
	display: block;
	font-size: 13px;
	color: #5f6f84
}

.research-card {
	overflow: hidden
}

.card-media {
	height: 130px;
	background: linear-gradient(135deg, #dff2ff, #eaf9ef);
	display: grid;
	place-items: center;
	overflow: hidden
}

.card-media img {
	width: 100%;
	height: 100%;
	object-fit: cover
}

.track-mark {
	font-size: 50px;
	font-weight: 900;
	color: var(--navy);
	opacity: .85
}

.card-body {
	padding: 22px
}

.card-body h3,
.profile-card h3,
.news-card h3,
.contact-card h3 {
	margin: 0 0 8px;
	color: var(--ink);
	font-size: 18px
}

.card-body p,
.profile-card p,
.news-card p,
.contact-card p {
	margin: 0;
	color: #55667b;
	font-size: 14px
}

.date-timeline {
	display: grid;
	gap: 14px;
	max-width: 900px;
	margin: auto
}

.date-item {
	display: grid;
	grid-template-columns: 210px 1fr;
	gap: 18px;
	align-items: center;
	background: #fff;
	border: 1px solid var(--line);
	border-radius: 14px;
	padding: 18px 22px;
	box-shadow: 0 12px 24px rgba(10, 52, 115, .08)
}

.date-item b {
	color: var(--navy);
	font-size: 17px
}

.date-item span {
	font-weight: 750;
	color: #34465f
}

.table-wrap {
	overflow: auto;
	border: 1px solid var(--line);
	border-radius: 14px;
	box-shadow: var(--shadow)
}

.cms-table {
	width: 100%;
	border-collapse: collapse;
	background: #fff
}

.cms-table th {
	background: #e8f2ff;
	color: var(--navy);
	text-align: left
}

.cms-table th,
.cms-table td {
	padding: 15px;
	border-bottom: 1px solid var(--line)
}

.profile-card {
	text-align: center;
	padding: 26px 20px
}

.profile-card img {
	width: 118px;
	height: 118px;
	border-radius: 50%;
	object-fit: cover;
	margin: 0 auto 15px;
	border: 5px solid #e8f2ff
}

.profile-card small {
	display: block;
	color: #67788c;
	font-weight: 700
}

.profile-card a {
	display: inline-block;
	margin-top: 9px;
	font-weight: 800
}

.accordion-list {
	display: grid;
	gap: 14px
}

.accordion-list details {
	background: #fff;
	border: 1px solid var(--line);
	border-radius: 14px;
	padding: 18px 20px;
	box-shadow: 0 10px 22px rgba(10, 52, 115, .07)
}

.accordion-list summary {
	cursor: pointer;
	color: var(--navy);
	font-size: 17px;
	font-weight: 850
}

.download-list {
	display: grid;
	gap: 12px
}

.download-item {
	display: flex;
	justify-content: space-between;
	align-items: center;
	background: #fff;
	border: 1px solid var(--line);
	border-radius: 12px;
	padding: 17px 19px;
	box-shadow: 0 9px 20px rgba(10, 52, 115, .06)
}

.download-item b {
	color: var(--ink)
}

.download-item span {
	color: var(--blue);
	font-weight: 850
}

.contact-grid,
.logo-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px
}

.contact-card {
	padding: 24px
}

.logo-card {
	padding: 22px;
	text-align: center
}

.logo-card img {
	height: 80px;
	width: 100%;
	object-fit: contain;
	margin-bottom: 12px
}

.gallery-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 15px
}

.gallery-grid img {
	width: 100%;
	height: 170px;
	object-fit: cover;
	border-radius: 13px;
	border: 1px solid var(--line);
	background: #fff
}

.page-hero {
	background: linear-gradient(135deg, #e5f4ff, #ffffff);
	position: relative;
	overflow: hidden
}

.page-hero:before {
	content: "";
	position: absolute;
	right: 0;
	bottom: 0;
	width: 52%;
	height: 120px;
	background: linear-gradient(135deg, var(--navy), var(--blue));
	border-radius: 90% 0 0 0;
	opacity: .15
}

.page-title {
	position: relative;
	padding: 62px 0 54px
}

.page-title h1 {
	font-size: 40px
}

/* Full Width Page Content */
/* Single-column page layout */
.page-layout{
    display:block;
}

/* Content fills the container (.wrap) */
.content{
    width:100%;
    padding:32px;
    background:#fff;
    border:1px solid var(--line);
    border-radius:14px;
    box-shadow:var(--shadow);
    margin-bottom:24px;
}

.content-card,
.form-card{
    width:100%;
    padding:28px;
}

/* Sidebar removed */
.sidebar-box{
    display:none;
}



.content h1,
.content h2,
.content h3 {
	color: var(--navy)
}

.page-banner {
	border-radius: 14px;
	border: 1px solid var(--line);
	background: #f8fcff;
	overflow: hidden;
	margin-bottom: 22px
}

.page-banner img {
	width: 100%;
	max-height: 330px;
	object-fit: contain;
	padding: 10px
}

.page-video {
	width: 100%;
	max-height: 360px;
	border-radius: 14px;
	margin-bottom: 22px;
	background: #000
}

.notice-card {
	margin-bottom: 18px;
	background: #eaf9ef;
	color: #235b38
}

.sidebar-box {
	position: sticky;
	top: 142px;
	align-self: start;
	padding: 22px
}

.sidebar-box h3 {
	margin: 0 0 14px;
	color: var(--navy)
}

.sidebar-box a {
	display: block;
	padding: 10px 0;
	border-bottom: 1px solid var(--line);
	font-weight: 750
}

.form-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px
}

.form-control {
	width: 100%;
	padding: 12px 13px;
	border: 1px solid var(--line);
	border-radius: 9px;
	background: #fff;
	color: #283950
}

label {
	display: block;
	color: var(--ink);
	font-weight: 800;
	margin-bottom: 6px
}

.cta-band {
	background: linear-gradient(135deg, var(--navy), var(--blue));
	position: relative;
	overflow: hidden
}

.cta-band:after {
	content: "";
	position: absolute;
	right: -40px;
	bottom: -52px;
	width: 310px;
	height: 150px;
	background: linear-gradient(135deg, var(--green), var(--orange));
	border-radius: 70% 0 0 0;
	opacity: .92
}

.cta-grid {
	position: relative;
	z-index: 2;
	display: grid;
	grid-template-columns: 86px 1fr auto;
	gap: 22px;
	align-items: center;
	padding: 28px 0;
	color: #eef8ff
}

.cta-icon {
	width: 86px;
	height: 86px;
	border-radius: 50%;
	background: #fff;
	color: var(--navy);
	display: grid;
	place-items: center;
	font-size: 40px
}

.cta-grid h2 {
	margin: 0;
	font-size: 24px;
	color: #eef8ff
}

.cta-grid p {
	margin: 4px 0 0;
	color: #d7e8ff
}

.cta-actions {
	display: flex;
	gap: 16px;
	flex-wrap: wrap
}

.site-footer {
	position: relative;
	background: linear-gradient(135deg, #06265c, #0a3473 58%, #0e4c96);
	color: #dfeeff;
	overflow: hidden
}

.footer-pattern {
	position: absolute;
	inset: 0;
	opacity: .08;
	background-image: linear-gradient(45deg, #fff 1px, transparent 1px), linear-gradient(-45deg, #fff 1px, transparent 1px);
	background-size: 36px 36px
}

.footer-grid {
	position: relative;
	display: grid;
	grid-template-columns: 1.3fr .8fr .9fr 1fr;
	gap: 36px;
	padding: 56px 0 35px
}

.footer-brand img {
	max-height: 74px;
	max-width: 260px;
	object-fit: contain;
	background: #fff;
	border-radius: 9px;
	padding: 7px;
	margin-bottom: 18px
}

.site-footer h4 {
	margin: 0 0 16px;
	color: #fff;
	font-size: 16px
}

.site-footer p {
	color: #dcecff;
	margin: 0 0 12px
}

.site-footer a {
	display: block;
	color: #dcecff;
	margin: 8px 0
}

.site-footer a:hover {
	color: #ffd7b7
}

.social-row {
	display: flex;
	gap: 12px
}

.social-row a {
	display: grid;
	place-items: center;
	width: 31px;
	height: 31px;
	border-radius: 50%;
	background: rgba(255, 255, 255, .12);
	font-weight: 800
}

.secretariat {
	display: inline-block !important;
	border: 1px solid rgba(255, 255, 255, .28);
	border-radius: 8px;
	padding: 10px 13px;
	margin-top: 8px !important
}

.copy {
	position: relative;
	border-top: 1px solid rgba(255, 255, 255, .15);
	font-size: 13px
}

.copy-grid {
	display: flex;
	justify-content: space-between;
	gap: 16px;
	padding: 15px 0;
	color: #dcecff
}

.copy a {
	display: inline;
	color: #dcecff
}

.stat-band,
.stats-grid,
.stat {
	display: none
}

@media(max-width:1100px) {
	.menu-grid {
		grid-template-columns: 48px 1fr;
		min-height: 64px
	}

	.register-top {
		display: none
	}

	.menu-toggle {
		display: block;
		justify-self: start
	}

	.main-nav {
		display: none;
		position: absolute;
		left: 4%;
		right: 4%;
		top: 64px;
		background: #fff;
		border: 1px solid var(--line);
		border-radius: 14px;
		box-shadow: var(--shadow);
		padding: 12px;
		flex-direction: column;
		align-items: stretch
	}

	.main-nav.open {
		display: flex
	}

	.main-nav a {
		border-bottom: 1px solid var(--line)
	}

	.hero-grid,
    .two-col{
        grid-template-columns:1fr;
    }

    .page-layout{
        display:block;
    }

	.about-block {
		border-right: 0;
		padding-right: 0
	}

	.quick-info-grid {
		grid-template-columns: repeat(2, 1fr)
	}

	.quick-info-card:nth-child(2) {
		border-right: 0
	}

	.feature-grid {
		grid-template-columns: repeat(2, 1fr)
	}

	.advanced-grid,
	.contact-grid,
	.logo-grid {
		grid-template-columns: repeat(2, 1fr)
	}

	.footer-grid {
		grid-template-columns: 1fr 1fr
	}

	.sidebar-box {
		position: static
	}

	.hero-copy h1 {
		font-size: 42px
	}
}

@media(max-width:700px) {

	.top-strip-grid,
	.top-left,
	.top-social {
		flex-direction: column;
		align-items: flex-start;
		gap: 6px;
		padding: 8px 0
	}

	.top-social {
		flex-direction: row
	}

	.header-brand-row {
		min-height: 82px
	}

	.brand img {
		max-height: 62px
	}

	.header-quick {
		display: none
	}

	.main-nav {
		top: 64px
	}

	.hero-grid {
		padding: 46px 0 88px
	}

	.hero-copy h1 {
		font-size: 34px
	}

	.hero-visual img {
		height: 255px;
		border-radius: 0 0 0 42px
	}

	.quick-info-grid,
	.feature-grid,
	.advanced-grid,
	.contact-grid,
	.logo-grid,
	.mini-grid,
	.footer-grid,
	.form-grid {
		grid-template-columns: 1fr
	}

	.quick-info-card {
		border-right: 0;
		border-bottom: 1px solid var(--line)
	}

	.quick-info-card:last-child {
		border-bottom: 0
	}

	.quick-info-wrap {
		margin-top: -38px
	}

	.section {
		padding: 54px 0
	}

	.section-head h2,
	.about-block h2,
	.highlight-list h2,
	.page-title h1 {
		font-size: 28px
	}

	.cta-grid {
		grid-template-columns: 1fr;
		text-align: left
	}

	.cta-actions {
		display: block
	}

	.cta-actions .btn {
		margin: 6px 0
	}

	.copy-grid {
		flex-direction: column
	}

	.date-item {
		grid-template-columns: 1fr
	}

	.gallery-grid {
		grid-template-columns: 1fr 1fr
	}

	.sidebar-box {
		top: auto
	}
}

/* CKEditor public content rendering */
.cms-html {
	line-height: 1.75;
	color: #102A43;
	word-break: break-word;
	overflow-wrap: anywhere;
}

.cms-html p {
	margin: 0 0 12px;
}

.cms-html ul,
.cms-html ol {
	margin: 0 0 14px 22px;
	padding: 0;
}

.cms-html li {
	margin: 6px 0;
}

.cms-html table {
	width: 100%;
	max-width: 100%;
	border-collapse: collapse;
	margin: 16px 0;
	background: #fff;
	display: block;
	overflow-x: auto;
}

.cms-html th,
.cms-html td {
	border: 1px solid rgba(18, 60, 105, .18);
	padding: 10px 12px;
	vertical-align: top;
}

.cms-html th {
	background: #eaf5ff;
	color: #123c69;
}

.cms-html img {
	max-width: 100%;
	height: auto;
	border-radius: 14px;
	display: block;
	margin: 12px 0;
}

.cms-html a {
	color: #0b5fc7;
	text-decoration: none;
	font-weight: 700;
}

.cms-html a:hover {
	text-decoration: underline;
}

.cms-html.compact p {
	margin-bottom: 8px;
}

/* Remove the default arrow from the summary */
.accordion-list summary {
	list-style: none;
	cursor: pointer;
}

.accordion-list summary::-webkit-details-marker {
	display: none;
}

.accordion-list summary::marker {
	content: "";
}

/* Optional: add an arrow before the description */
.accordion-list .cms-html::before {
	
	display: inline-block;
	margin-right: 8px;
	color: #666;
}