/* ------------------------------------------------------------------- 
 * ## Root
 * ------------------------------------------------------------------- */

:root {
	--irc-navy: #1C1D43;
	--irc-blue: #10a8df;
	--irc-blue-dark: #008fc9;
	--irc-blue-pale: #e8f7fc;
	--irc-blue-pale-2: #f3fbfe;
	--irc-text: #000;
	--irc-muted: #5c6577;
	--irc-white: #ffffff;
	--irc-btn-bg: #1794D3;
	--irc-btn-text: #1C1D43;
	--irc-btn-hover: #000000;
	--irc-btn-text-hover: #fff;
	--irc-border: #dce5eb;
	--irc-shadow: 0 4px 14px rgba(7, 24, 79, 0.10);
	--irc-radius: 0;
	--irc-section-space: 50px;
}

html {
	scroll-behavior: smooth;
	scroll-padding-top: 110px;
}

.nopad {
	padding-left: 0;
	padding-right: 0;
}

.mt20{
	margin-top: 20px!important;
}

/* ========================================================================
   MAIN NAV – FORCE TOP-LEVEL LINKS WHITE
   Fixes iPad / Safari link colour
   ======================================================================== */

header .navbar-nav > li > a,
header .navbar-nav > li > a:link,
header .navbar-nav > li > a:visited,
header .navbar-nav > li > a:hover,
header .navbar-nav > li > a:focus,
header .navbar-nav > li > a:active {
	color: #fff !important;
	text-decoration: none;
}
/* ------------------------------------------------------------------- 
 * ## Fonts
 * ------------------------------------------------------------------- */

// Open Sans loaded in header.php



/* ------------------------------------------------------------------- 
 * ## Menu
 * ------------------------------------------------------------------- */
 
/* Show submenu on hover */
@media (min-width: 992px) {
	.navbar-nav li.menu-item-has-children:hover > .dropdown-menu {
		display: block;
		opacity: 1;
		visibility: visible;
	}

	.navbar-nav .dropdown-menu {
		display: none;
		opacity: 0;
		visibility: hidden;
		transition: opacity 0.3s ease;
		position: absolute;
		left: 0;
		top: 100%;
		z-index: 999;
	}
}

.navbar-nav li {
  position: relative;
}

.navbar-default .navbar-header {
	justify-content: center;
	gap: 40px;
}

.navbar-nav{
	li{ 
		a {
			color: #fff;
			font-weight: bold;
		}
	}
}

/* ==========================================================================
   NAV – CENTRE DOT / SINE WAVE
   ========================================================================== */

.navbar-nav .menu-item-has-children {
	position: relative;
}

.nav-wave {
	position: absolute;
	left: 0;
	right: 0;
	top: -9px;
	z-index: 5;

	height: 24px;

	color: var(--irc-blue, #18a9df);

	opacity: 0;

	pointer-events: none;
}


/* SVG line */

.nav-wave__svg {
	position: absolute;
	inset: 0;

	display: block;
	width: 100%;
	height: 100%;

	overflow: visible;

	/* Initially reveal nothing except the centre */
	clip-path: inset(0 50% 0 50%);
}


.nav-wave__path {
	fill: none;

	stroke: currentColor;
	stroke-width: 4;

	stroke-linecap: round;
	stroke-linejoin: round;

	vector-effect: non-scaling-stroke;
}


/* Centre starting dot */

.nav-wave__dot {
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 2;

	width: 8px;
	height: 8px;

	border-radius: 50%;

	background: currentColor;

	opacity: 0;

	transform: translate(-50%, -50%);
}


/* Accessibility */

@media (prefers-reduced-motion: reduce) {

	.nav-wave__dot {
		display: none;
	}

}


/* ==========================================================================
   DROPDOWN PANEL
   ========================================================================== */

.navbar-nav .dropdown-menu {
	display: block;
	position: absolute;
	top: calc(100% + 8px);
	left: 0;
	z-index: 1000;
	min-width: 245px;
	margin: 0;
	padding: 0.55rem 0;
	border: 0;
	border-top: 3px solid var(--irc-blue, #18a9df);
	border-radius: 0;
	background: #fff;
	box-shadow:
		0 10px 28px rgba(7, 24, 79, 0.13);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transform: translateY(8px);
	transition:
		opacity 0.22s ease,
		transform 0.3s cubic-bezier(0.22, 1, 0.36, 1),
		visibility 0.22s ease;
}


/* Show dropdown */

.navbar-nav .menu-item-has-children:hover > .dropdown-menu,
.navbar-nav .menu-item-has-children:focus-within > .dropdown-menu {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transform: translateY(0);
}

.navbar-nav .menu-item-has-children::after {
	content: "";

	position: absolute;
	top: 100%;
	left: -15px;
	right: -15px;

	height: 18px;

	background: transparent;

	z-index: 999;
}

/* Force dropdown closed after selecting an item */
.navbar-nav .menu-item-has-children.is-dropdown-closed > .dropdown-menu {
	opacity: 0 !important;
	visibility: hidden !important;
	pointer-events: none !important;
}

/* ==========================================================================
   DROPDOWN LINKS
   ========================================================================== */

.navbar-nav .dropdown-menu .dropdown-item {
	position: relative;
	display: block;
	width: 100%;
	padding: 0.7rem 1.15rem;
	border: 0;
	background: transparent;
	color: var(--irc-navy, #07184f);
	font-size: 0.82rem;
	font-weight: 500;
	line-height: 1.25;
	text-decoration: none;
	transition:
		background-color 0.2s ease,
		color 0.2s ease,
		padding-left 0.25s ease;
}


.navbar-nav .dropdown-menu .dropdown-item:hover,
.navbar-nav .dropdown-menu .dropdown-item:focus {
	padding-left: 1.4rem;
	background: #eef8fc;
	color: var(--irc-blue-dark, #058fc7);
	outline: 0;
}

.navbar-nav .dropdown-menu .dropdown-item::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	width: 3px;
	height: 0;
	background: var(--irc-blue, #18a9df);
	transform: translateY(-50%);
	transition: height 0.22s ease;
}


.navbar-nav .dropdown-menu .dropdown-item:hover::before,
.navbar-nav .dropdown-menu .dropdown-item:focus::before {
	height: 55%;
}

/* ==========================================================================
   CHEVRON
   ========================================================================== */

.navbar-nav .menu-item-has-children > .dtoggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;

	margin-left: 0.25rem;

	color: inherit;

	font-size: 0.65rem;

	pointer-events: none;

	transition: transform 0.25s ease;
}


.navbar-nav .menu-item-has-children:hover > .dtoggle,
.navbar-nav .menu-item-has-children:focus-within > .dtoggle {
	transform: rotate(180deg);
}


/* ------------------------------------------------------------------- 
 * ## Header
 * ------------------------------------------------------------------- */

header {
	 background-image: url(../../images/Header.jpg);
	 background-size: cover;
	 background-position: left;
	 background-repeat: no-repeat;
 
	 padding-top: 15px;
	 height: auto;
 
	 position: sticky;
	 top: 0;
	 z-index: 9999;
 
	 transition:
		 padding 0.25s ease,
		 box-shadow 0.25s ease,
		 background-position 0.25s ease;
 }
 
 /* Sticky / scrolled state */
 header.header-scrolled {
	 padding-top: 7px;
	 box-shadow: 0 4px 14px rgba(0, 0, 0, 0.15);
 }
 
 header img {
	 transition: max-height 0.25s ease;
 }
 
 header.header-scrolled img {
	 max-height: 42px;
 }
 
 header img {
	 max-height: 55px;
 }

.navbar-brand {
	 margin: 15px 15px 8px 0 !important;
	 padding: 0 !important;
	 height: auto;
	 display: flex;
	 align-items: flex-end;
 }
 
 .nav-right {
	 display: flex;
	 flex-direction: column;
	 justify-content: center;
	 align-items: flex-end;
	 text-align: right;
	 color: #fff;
	 font-size: 13px;
	 font-weight: bold;
 }

.top-socials {
	 display: flex;
	 justify-content: flex-end;
	 margin-bottom: 20px;
	 
	 div {
		 border: 1px solid #fff;
		 border-radius: 30px;
		 padding: 2px 8px;
		 margin-left: 20px;
	 }
 }
 
 img.top-nav-logo {
	 margin-bottom: 0;
	 margin-right: 6px;
	 width: 12px;
 }
 
 @media (min-width: 768px) and (max-width: 991px) {
	 img.top-nav-logo {
		  width: 28px;
	  }
  }
 
 #who-we-are,
 #our-purpose,
 #our-history,
 #our-funding,
 #governance-and-management,
 #comment-submissions,
 #integrated-reporting,
 #integrated-thinking,
 #sustainability-reporting,
 #assurance,
 #membership-benefits-title,
 #membership-fees-title,
 #membership-members-title,
 #working-summary-title,
 #working-members-title,
 #events-current-title,
 #events-previous-title,
 #insights-blogs-title,
 #insights-awards-title,
 #insights-company-title,
 #insights-news-title,
 #insights-developments-title,
 #insights-academic-title,
 #insights-international-title,
 #advisory-services-title,
 #advisory-resources-title{
	 scroll-margin-top: 110px;
 }
 
 /* ========================================================================
	HEADER MODAL TRIGGERS
	======================================================================== */
 
 .top-socials .search, 
 .top-socials .member, 
 .top-socials .join {
	 display: flex;
	 align-items: center;
	 gap: 6px;
	 padding: 5px 10px;
	 border: 1px solid #fff;
	 background: transparent;
	 color: inherit;
	 font-family: inherit;
	 font-size: inherit;
	 font-weight: inherit;
	 line-height: inherit;
	 cursor: pointer;
	 border-radius: 30px;
	 margin-left: 20px;
 }
 
 
 .top-socials .search:hover,
 .top-socials .search:focus,
 .top-socials .member:hover,
 .top-socials .member:focus,
 .top-socials .join:hover,
 .top-socials .join:focus {
	 color: #fff;
	 outline: none;
 }
 
 
 /* ========================================================================
	STANDARD HEADER MODALS
	======================================================================== */
 
 .irc-header-modal {
	 position: fixed;
	 inset: 0;
 
	 z-index: 99999;
 
	 display: flex;
	 align-items: center;
	 justify-content: center;
 
	 padding: 30px;
 
	 opacity: 0;
	 visibility: hidden;
	 pointer-events: none;
 
	 transition:
		 opacity 0.25s ease,
		 visibility 0.25s ease;
 }
 
 
 .irc-header-modal.is-open {
	 opacity: 1;
	 visibility: visible;
	 pointer-events: auto;
 }
 
 
 /* Dark overlay */
 
 .irc-header-modal__overlay {
	 position: absolute;
	 inset: 0;
 
	 background: rgba(8, 18, 48, 0.72);
 
	 backdrop-filter: blur(3px);
	 -webkit-backdrop-filter: blur(3px);
 }
 
 
 /* Form modal box */
 
 .irc-header-modal__dialog {
	 position: relative;
	 z-index: 2;
 
	 width: min(860px, 100%);
 
	 max-height: calc(100vh - 60px);
 
	 overflow-y: auto;
 
	 padding: clamp(1.5rem, 4vw, 3rem);
 
	 background: #fff;
 
	 box-shadow:
		 0 20px 60px rgba(7, 24, 79, 0.28);
 
	 transform: translateY(18px);
 
	 transition:
		 transform 0.25s ease;
 }
 
 
 .irc-header-modal.is-open .irc-header-modal__dialog {
	 transform: translateY(0);
 }
 
 
 /* Close */
 
 .irc-header-modal__close {
	 position: absolute;
 
	 top: 18px;
	 right: 18px;
 
	 z-index: 20;
 
	 width: 36px;
	 height: 36px;
 
	 display: flex;
	 align-items: center;
	 justify-content: center;
 
	 padding: 0;
 
	 border: 0;
	 border-radius: 50%;
 
	 background: var(--irc-blue-dark, #058fc7);
 
	 color: #fff;
 
	 font-family: Arial, sans-serif;
	 font-size: 27px;
	 font-weight: 300;
	 line-height: 1;
 
	 cursor: pointer;
 
	 transition:
		 background-color 0.2s ease,
		 transform 0.2s ease;
 }
 
 
 .irc-header-modal__close:hover,
 .irc-header-modal__close:focus {
	 background: var(--irc-navy, #11164d);
 
	 transform: rotate(90deg);
 
	 outline: none;
 }
 
 
 .irc-header-modal__content {
	 width: 100%;
 }
 
 
 /* Stop body scrolling */
 
 body.irc-modal-open {
	 overflow: hidden;
 }
 
 
 /* ========================================================================
	FULL SCREEN SEARCH MODAL
	======================================================================== */
 
 .irc-header-modal--search {
	 padding: 0;
 
	 background: var(--irc-navy, #11164d);
 }
 
 
 /*
  * Search uses the entire viewport rather than a floating white box.
  */
 
 .irc-search-modal__dialog {
	 width: 100%;
	 height: 100%;
 
	 max-width: none;
	 max-height: none;
 
	 display: flex;
	 align-items: center;
	 justify-content: center;
 
	 overflow-y: auto;
 
	 padding: clamp(2rem, 6vw, 6rem);
 
	 background: var(--irc-navy, #11164d);
 
	 box-shadow: none;
 
	 transform: none;
 }
 
 
 .irc-header-modal--search.is-open .irc-search-modal__dialog {
	 transform: none;
 }
 
 
 /* Search close */
 
 .irc-search-modal__close {
	 top: 30px;
	 right: 30px;
 
	 width: 44px;
	 height: 44px;
 
	 border: 1px solid rgba(255,255,255,0.65);
 
	 background: transparent;
 
	 font-size: 32px;
 }
 
 
 .irc-search-modal__close:hover,
 .irc-search-modal__close:focus {
	 background: #fff;
 
	 color: var(--irc-navy, #11164d);
 }
 
 
 /* Content */
 
 .irc-search-modal__content {
	 width: min(900px, 100%);
 
	 text-align: center;
 }
 
 
 .irc-search-modal__title {
	 margin: 0 0 2rem;
 
	 color: #fff;
 
	 font-size: 22px;
	 font-weight: 700;
	 line-height: 1.2;
 
	 text-transform: uppercase;
 }
 
 
 /* ========================================================================
	SEARCH FORM
	======================================================================== */
 
 .irc-search-form {
	 width: 100%;
 }
 
 
 .irc-search-form__field {
	 display: grid;
 
	 grid-template-columns:
		 minmax(0, 1fr)
		 auto;
 
	 align-items: stretch;
 
	 width: 100%;
 
	 border-bottom: 2px solid #fff;
 }
 
 
 .irc-search-form__input {
	 width: 100%;
	 padding: 10px 20px 10px 0;
	 border: 0;
	 border-radius: 0;
	 background: transparent;
	 color: #fff;
	 font-family: inherit;
	 font-size: 21px;
	 font-weight: 300;
	 line-height: 1.2;
	 outline: none;
 }
 
 
 .irc-search-form__input::placeholder {
	 color: rgba(255,255,255,0.55);
 }
 
 
 .irc-search-form__input::-webkit-search-cancel-button {
	 filter: invert(1);
 }
 
 
 /* Search button */
 
 .irc-search-form__button {
	 align-self: center;
 
	 min-width: 130px;
 
	 padding: 0.72rem 1.4rem;
 
	 border: 0;
	 border-radius: 999px;
 
	 background: var(--irc-blue, #18a9df);
 
	 color: #fff;
 
	 font-family: inherit;
	 font-size: 0.88rem;
	 font-weight: 600;
	 line-height: 1;
 
	 cursor: pointer;
 
	 transition:
		 background-color 0.2s ease,
		 transform 0.2s ease;
 }
 
 
 .irc-search-form__button:hover,
 .irc-search-form__button:focus {
	 background: var(--irc-blue-dark, #058fc7);
 
	 transform: translateY(-2px);
 
	 outline: none;
 }
 
 /* ========================================================================
	SEARCH RESULTS – SEARCH + CONTENT TYPE FILTERS
	Add after the existing global/header search form styles.
	======================================================================== */
 
 .search-results-page {
	 padding-top: 40px;
	 padding-bottom: 70px;
 }
 
 .search-results-header__title {
	 margin: 0 0 1.25rem;
	 color: var(--irc-navy, #11164d);
	 font-size: 22px;
	 font-weight: 700;
	 line-height: 1.3;
 }
 
 .search-results-header__title span {
	 font-weight: 400;
 }
 
 /* Search again field – reuses the existing modal search form classes. */
 
 .irc-search-form--results {
	 max-width: 880px;
	 margin: 0 0 1.15rem;
 }
 
 .irc-search-form--results .irc-search-form__field {
	 display: grid;
	 grid-template-columns: minmax(0, 1fr) auto;
	 align-items: center;
	 gap: 6px;
	 width: 100%;
	 padding: 5px;
	 border: 1px solid var(--irc-border, #d9e7ec);
	 border-radius: 999px;
	 background: #fff;
	 box-shadow: 0 5px 18px rgba(7, 24, 79, 0.06);
	 margin-top: 20px;
 }
 
 .irc-search-form--results .irc-search-form__input {
	 min-height: 44px;
	 margin: 0;
	 padding: 8px 14px 8px 18px;
	 border: 0;
	 background: transparent;
	 color: var(--irc-navy, #11164d);
	 font-size: 16px;
	 font-weight: 400;
 }
 
 .irc-search-form--results .irc-search-form__input::placeholder {
	 color: #7a8790;
 }
 
 .irc-search-form--results .irc-search-form__input::-webkit-search-cancel-button {
	 filter: none;
 }
 
 .irc-search-form--results .irc-search-form__button {
	 min-width: 110px;
	 margin: 0;
 }
 
 /* Content type pills */
 
 .search-results-filters {
	 display: flex;
	 flex-wrap: wrap;
	 align-items: center;
	 gap: 8px;
	 margin: 0 0 1rem;
 }
 
 .search-results-filters__button {
	 display: inline-flex;
	 align-items: center;
	 justify-content: center;
	 min-height: 36px;
	 padding: 7px 15px;
	 border: 1px solid var(--irc-blue-dark, #058fc7);
	 border-radius: 999px;
	 background: #fff;
	 color: var(--irc-blue-dark, #058fc7);
	 font-size: 13px;
	 font-weight: 600;
	 line-height: 1.2;
	 text-decoration: none;
	 transition:
		 background-color 0.2s ease,
		 color 0.2s ease,
		 border-color 0.2s ease;
 }
 
 .search-results-filters__button:hover,
 .search-results-filters__button:focus,
 .search-results-filters__button.is-active {
	 border-color: var(--irc-blue-dark, #058fc7);
	 background: var(--irc-blue-dark, #058fc7);
	 color: #fff;
	 text-decoration: none;
	 outline: none;
 }
 
 .search-results-summary {
	 margin: 0 0 1.6rem;
	 color: #66747b;
	 font-size: 13px;
	 line-height: 1.4;
 }
 
 .search-results-summary strong {
	 color: var(--irc-navy, #11164d);
 }
 
 /* Pagination that keeps the active filter. */
 
 .search-results-pagination {
	 margin-top: 2.5rem;
 }
 
 .search-results-pagination .page-numbers {
	 display: flex;
	 flex-wrap: wrap;
	 gap: 6px;
	 margin: 0;
	 padding: 0;
	 list-style: none;
 }
 
 .search-results-pagination .page-numbers li::before {
	 display: none !important;
	 content: none !important;
 }
 
 .search-results-pagination a.page-numbers,
 .search-results-pagination span.page-numbers {
	 display: inline-flex;
	 align-items: center;
	 justify-content: center;
	 min-width: 36px;
	 min-height: 36px;
	 padding: 6px 11px;
	 border: 1px solid var(--irc-border, #d9e7ec);
	 border-radius: 999px;
	 background: #fff;
	 color: var(--irc-navy, #11164d);
	 font-size: 13px;
	 font-weight: 600;
	 text-decoration: none;
 }
 
 .search-results-pagination a.page-numbers:hover,
 .search-results-pagination a.page-numbers:focus,
 .search-results-pagination span.page-numbers.current {
	 border-color: var(--irc-blue-dark, #058fc7);
	 background: var(--irc-blue-dark, #058fc7);
	 color: #fff;
	 outline: none;
 }
 
 @media (max-width: 767.98px) {
 
	 .search-results-page {
		 padding-top: 28px;
		 padding-bottom: 50px;
	 }
 
	 /* Override the full-screen modal mobile rules for the results-page form. */
	 .irc-search-form--results .irc-search-form__field {
		 grid-template-columns: minmax(0, 1fr) auto;
		 border: 1px solid var(--irc-border, #d9e7ec);
	 }
 
	 .irc-search-form--results .irc-search-form__input {
		 min-height: 44px;
		 margin: 0;
		 padding: 8px 10px 8px 14px;
		 border-bottom: 0;
		 font-size: 16px;
	 }
 
	 .irc-search-form--results .irc-search-form__button {
		 width: auto;
		 min-width: 92px;
		 padding-left: 1rem;
		 padding-right: 1rem;
	 }
 
	 .search-results-filters {
		 gap: 6px;
	 }
 
	 .search-results-filters__button {
		 padding: 7px 12px;
		 font-size: 12px;
	 }
 }
 
 @media (max-width: 430px) {
	 .irc-search-form--results .irc-search-form__field {
		 grid-template-columns: 1fr;
		 padding: 6px;
		 border-radius: 18px;
	 }
 
	 .irc-search-form--results .irc-search-form__button {
		 width: 100%;
	 }
 }
 
 
 /* ========================================================================
	MOBILE
	======================================================================== */
 
 @media (max-width: 767.98px) {
 
	 /* ------------------------------------------------------------
		HEADER
		------------------------------------------------------------ */
 
	 header {
		 padding-top: 8px;
 
		 background-position: center top;
	 }
 
	 header.header-scrolled {
		 padding-top: 5px;
	 }
 
	 header img {
		 max-height: 44px;
	 }
 
	 header.header-scrolled img {
		 max-height: 36px;
	 }
 
 
	 /* Logo */
 
	 .navbar-brand {
		 margin: 6px 10px 6px 0 !important;
		 padding: 0 !important;
 
		 display: flex;
		 align-items: center;
	 }
 
	 .navbar-brand img {
		 width: auto;
		 max-width: 150px;
		 height: auto;
	 }
 
 
	 /* Right-hand header area */
 
	 .nav-right {
		 width: 100%;
 
		 align-items: stretch;
		 justify-content: center;
 
		 text-align: left;
 
		 font-size: 11px;
	 }
 
 
	 /* Top action buttons */
 
	 .top-socials {
		 display: flex;
		 flex-wrap: wrap;
		 align-items: center;
		 justify-content: flex-end;
		 gap: 6px;
		 width: 100%;
		 margin-bottom: 20px;
	 }
 
 
	 .top-socials .search,
	 .top-socials .member,
	 .top-socials .join {
		 display: inline-flex;
		 align-items: center;
		 justify-content: center;
 
		 gap: 4px;
 
		 margin-left: 0;
 
		 padding: 4px 8px;
 
		 font-size: 10px;
		 line-height: 1.15;
 
		 white-space: nowrap;
	 }
 
 
	 img.top-nav-logo {
		 flex: 0 0 auto;
 
		 width: 10px;
		 max-height: 12px;
 
		 margin-right: 3px;
		 margin-bottom: 0;
	 }
 
 
	 /* ------------------------------------------------------------
		MOBILE ANCHOR OFFSET
		Desktop is currently 110px.
		------------------------------------------------------------ */
 
	 #who-we-are,
	 #our-purpose,
	 #our-history,
	 #our-funding,
	 #governance-and-management,
	 #comment-submissions,
	 #integrated-reporting,
	 #integrated-thinking,
	 #sustainability-reporting,
	 #assurance,
	 #membership-benefits-title,
	 #membership-fees-title,
	 #membership-members-title,
	 #working-summary-title,
	 #working-members-title,
	 #events-current-title,
	 #events-previous-title,
	 #insights-blogs-title,
	 #insights-awards-title,
	 #insights-company-title,
	 #insights-news-title,
	 #insights-developments-title,
	 #insights-academic-title,
	 #insights-international-title,
	 #advisory-services-title,
	 #advisory-resources-title {
		 scroll-margin-top: 90px;
	 }
 
 
	 /* ------------------------------------------------------------
		STANDARD HEADER MODALS
		------------------------------------------------------------ */
 
	 .irc-header-modal:not(.irc-header-modal--search) {
		 align-items: flex-start;
 
		 padding: 15px;
	 }
 
 
	 .irc-header-modal:not(.irc-header-modal--search)
	 .irc-header-modal__dialog {
		 width: 100%;
 
		 max-height: calc(100vh - 30px);
 
		 padding:
			 3rem
			 1.2rem
			 1.5rem;
	 }
 
 
	 .irc-header-modal__close {
		 top: 12px;
		 right: 12px;
 
		 width: 34px;
		 height: 34px;
 
		 font-size: 25px;
	 }
 
 
	 /* ------------------------------------------------------------
		SEARCH
		------------------------------------------------------------ */
 
	 .irc-search-modal__dialog {
		 align-items: flex-start;
 
		 padding:
			 100px
			 24px
			 40px;
	 }
 
 
	 .irc-search-modal__close {
		 top: 20px;
		 right: 20px;
	 }
 
 
	 .irc-search-modal__title {
		 margin-bottom: 1.4rem;
 
		 font-size: 22px;
	 }
 
 
	 .irc-search-form__field {
		 grid-template-columns: 1fr;
 
		 border-bottom: 0;
	 }
 
 
	 .irc-search-form__input {
		 min-height: 54px;
 
		 margin-bottom: 1rem;
 
		 padding: 10px 0;
 
		 border-bottom: 2px solid #fff;
 
		 font-size: 1.3rem;
	 }
 
 
	 .irc-search-form__button {
		 width: 100%;
	 }
 
 }
 
 @media (max-width: 767.98px) {
 
	 :target {
		 scroll-margin-top: 90px;
	 }
 
 }
 
 
 @media (prefers-reduced-motion: reduce) {
 
	 .irc-header-modal,
	 .irc-header-modal__dialog,
	 .irc-header-modal__close,
	 .irc-search-form__button {
		 transition: none;
	 }
 
 }
 
 @media (max-width: 767.98px) {
 
	 /* ------------------------------------------------------------
		MOBILE NAV TOGGLER
		------------------------------------------------------------ */
 
	 .navbar-toggler {
		 top: 0;
		 display: inline-flex;
		 align-items: center;
		 justify-content: center;
		 width: 44px;
		 height: 44px;
		 margin-left: auto;
		 padding: 0;
		 border: 1px solid rgba(255, 255, 255, 0.65);
		 border-radius: 50%;
		 background: transparent;
		 color: #fff;
		 cursor: pointer;
 		 box-shadow: none;
 		 transition:
			 background-color 0.2s ease,
			 border-color 0.2s ease,
			 transform 0.2s ease;
	 }
 
 
	 .navbar-toggler:hover,
	 .navbar-toggler:focus {
		 border-color: #fff;
 
		 background: rgba(255, 255, 255, 0.1);
 
		 outline: none;
	 }
 
 
	 .navbar-toggler:active {
		 transform: scale(0.96);
	 }
 
 
	 /* SVG */
 
	 .navbar-toggler .ham {
		 display: block;
 
		 width: 34px;
		 height: 34px;
 
		 flex: 0 0 auto;
 
		 cursor: pointer;
 
		 transition: transform 0.4s ease;
	 }
 
 
	 /* Hamburger lines */
 
	 .navbar-toggler .line {
		 fill: none;
 
		 stroke: currentColor;
		 stroke-width: 5;
 
		 stroke-linecap: round;
 
		 transition:
			 stroke-dasharray 0.4s ease,
			 stroke-dashoffset 0.4s ease;
	 }
 
 
	 /* Your existing ham8 animation */
 
	 .navbar-toggler .ham8 .top {
		 stroke-dasharray: 40 160;
	 }
 
	 .navbar-toggler .ham8 .middle {
		 stroke-dasharray: 40 142;
		 transform-origin: 50%;
		 transition: transform 0.4s ease;
	 }
 
	 .navbar-toggler .ham8 .bottom {
		 stroke-dasharray: 40 85;
		 transform-origin: 50%;
		 transition:
			 transform 0.4s ease,
			 stroke-dashoffset 0.4s ease;
	 }
 
 
	 /* Open / active state */
 
	 .navbar-toggler .ham8.active {
		 transform: rotate(45deg);
	 }
 
	 .navbar-toggler .ham8.active .top {
		 stroke-dashoffset: -64px;
	 }
 
	 .navbar-toggler .ham8.active .middle {
		 transform: rotate(90deg);
	 }
 
	 .navbar-toggler .ham8.active .bottom {
		 stroke-dashoffset: -64px;
	 }
 
 
	 /* Slightly smaller once header shrinks */
 
	 header.header-scrolled .navbar-toggler {
		 width: 40px;
		 height: 40px;
	 }
 
	 header.header-scrolled .navbar-toggler .ham {
		 width: 30px;
		 height: 30px;
	 }
 
 }
 
 
 /* ------------------------------------------------------------------- 
  * ## Homepage
  * ------------------------------------------------------------------- */
  
  .page-template-page-homepage #content,
  .page-template-page-homepage #main,
  .page-template-page-homepage .post_content {
	  margin-left: 0;
	  margin-right: 0;
  }
  
  .page-template-page-homepage .post_content > .col-sm {
	  padding-left: 0;
	  padding-right: 0;
  }
  
  .page-template-page-homepage .home-hero .container,
  .page-template-page-homepage .home-latest .container,
  .page-template-page-homepage .home-register .container,
  .page-template-page-homepage .home-getting-started .container,
  .page-template-page-homepage .home-membership .container,
  .page-template-page-homepage .home-members .container {
	  width: 100%;
	  margin-left: auto;
	  margin-right: auto;
  }
  
  .page-template-page-homepage .home-hero,
  .page-template-page-homepage .home-latest,
  .page-template-page-homepage .home-register,
  .page-template-page-homepage .home-getting-started,
  .page-template-page-homepage .home-membership,
  .page-template-page-homepage .home-members {
	  position: relative;
  }
  
  .page-template-page-homepage .home-hero p:last-child,
  .page-template-page-homepage .home-register p:last-child,
  .page-template-page-homepage .home-getting-started p:last-child,
  .page-template-page-homepage .home-membership p:last-child {
	  margin-bottom: 0;
  }
  
  .home-hero__button,
  .latest-card__button,
  .home-register__button,
  .home-getting-started__button,
  .home-membership-card__button,
  .insights-button,
  .guidance-button,
  .events-button,
  .advisory-resource-card__button,
  .about-button
   {
	  display: inline-flex;
	  align-items: center;
	  justify-content: center;
	  min-height: 38px;
	  padding: 10px 30px;
	  border: 2px solid var(--irc-btn-bg);
	  border-radius: 999px;
	  background: var(--irc-btn-bg);
	  color: var(--irc-btn-text);
	  font-size: 16px;
	  font-weight: 700;
	  text-align: center;
	  text-decoration: none;
	  transition: background-color 180ms ease, border-color 180ms ease,
				  color 180ms ease, transform 180ms ease;
  }
  
  .home-hero__button:hover,
  .home-hero__button:focus,
  .latest-card__button:hover,
  .latest-card__button:focus,
  .home-register__button:hover,
  .insights-button:hover,
  .insights-button:focus,
  .about-button:hover,
  .about-button:focus,
  .guidance-button:hover,
  .guidance-button:focus,
  .events-button:hover,
  .events-button:focus,
  .advisory-resource-card__button:hover,
  .advisory-resource-card__button:focus,
  .home-register__button:focus,
  .home-getting-started__button:hover,
  .home-getting-started__button:focus,
  .home-membership-card__button:hover,
  .home-membership-card__button:focus {
	  background: var(--irc-btn-hover);
	  border-color: var(--irc-btn-hover);
	  color: var(--irc-btn-text-hover);
	  text-decoration: none;
	  transform: translateY(-1px);
  }
  
  .page-template-page-homepage a:focus-visible {
	  outline: 3px solid rgba(16, 168, 223, 0.38);
	  outline-offset: 3px;
  }
  
  /* ========================================================================
	 1. HEADER / HERO
	 ======================================================================== */
  
  .home-hero {
	  padding: 0;
	  position: relative;
	  z-index: 0;
  }
  
  .home-hero::before {
	  content: "";
	  position: absolute;
	  top: 0;
	  bottom: 0;
	  left: 50%;
	  width: 100vw;
	  transform: translateX(-50%);
	  background-color: var(--irc-blue-pale);
	  z-index: -1;
  }
  
  .home-hero.membership-hero::before{
	  display: none;
  }
  
  .home-hero .row {
	  row-gap: 2rem;
  }
  
  .home-hero__content {
	  position: relative;
	  z-index: 2;
	  padding-right: clamp(1.5rem, 4vw, 4.5rem);
  }
  
  .home-hero__heading {
	  max-width: 700px;
	  margin: 0 0 1.25rem;
	  color: var(--irc-navy);
	  font-size: 24px;
	  font-weight: 700;
  }
  
  .home-hero__copy {
	  max-width: 680px;
	  color: var(--irc-text);
	  font-size: 16px;
	  line-height: 1.6;
  }
  
  .home-hero__copy p {
	  margin: 0 0 1rem;
  }
  
  .home-hero__buttons {
	  display: flex;
	  flex-wrap: wrap;
	  gap: 0.75rem;
	  margin-top: 1.6rem;
  }
  
  .home-hero__button--secondary {
	  margin-left: 30px;
  }
  
  .home-hero__media {
	  display: flex;
	  align-items: center;
	  justify-content: center;
  }
  
  .home-hero__image {
	  display: block;
	  width: 100%;
	  height: auto;
	  max-height: 470px;
	  object-fit: contain;
	  margin-bottom: 0;
  }
  
  /* ========================================================================
	 2. LATEST NEWS / RESOURCES / GUEST BLOGS
	 ======================================================================== */
  
  .home-latest {
	  padding: var(--irc-section-space) 0;
	  background: var(--irc-white);
  }
  
  .home-latest__title {
	  margin: 0 0 1.35rem;
	  color: var(--irc-blue-dark);
	  font-size: 22px;
	  font-weight: 700;
	  line-height: 1.15;
	  letter-spacing: 0.05em;
	  text-align: center;
	  text-transform: uppercase;
  }
  
  .latest-grid {
	  display: grid;
	  grid-template-columns: repeat(3, minmax(0, 1fr));
	  gap: 0.85rem 1.15rem;
	  align-items: stretch;
  }
  
  .latest-grid__column-title {
	  margin: 0;
	  padding: 0.62rem 1rem;
	  background: var(--irc-blue);
	  color: var(--irc-white);
	  font-size: 0.9rem;
	  font-weight: 700;
	  line-height: 1.15;
	  letter-spacing: 0.08em;
	  text-align: center;
	  text-transform: uppercase;
  }
  
  /* ==========================================================================
	 LATEST GRID – STICKY COLUMN TITLES
	 ========================================================================== */
  
  .latest-grid__column-title {
	  position: sticky;
	  top: 81px;
	  z-index: 50;
  }
  
  .latest-grid {
	  align-items: stretch;
	  overflow: visible;
  }
  
  .latest-grid__column {
	  position: relative;
	  overflow: visible;
  }
  
  .latest-grid__column-title {
	  position: sticky;
	  top: 81px;
	  z-index: 50;
  }
  
  @media (max-width: 767.98px) {
  
	  .latest-grid__column-title {
		  position: static;
	  }
  
  }
  
  .latest-card {
	  min-width: 0;
	  height: 100%;
	  display: flex;
	  flex-direction: column;
	  overflow: hidden;
	  border: 1px solid var(--irc-border);
	  border-radius: var(--irc-radius);
	  background: var(--irc-white);
	  box-shadow: var(--irc-shadow);
  }
  
  .latest-card--empty {
	  min-height: 1px;
	  visibility: hidden;
	  box-shadow: none;
  }
  
  .latest-card__image-wrap {
	  width: 100%;
	  aspect-ratio: 16 / 5.6;
	  overflow: hidden;
	  background: var(--irc-blue-pale-2);
  }
  
  .latest-card__image {
	  display: block;
	  width: 100%;
	  height: 100%;
	  object-fit: cover;
  }
  
  .latest-card__body {
	  flex: 1;
	  display: flex;
	  flex-direction: column;
	  padding: 1.25rem 1.3rem 1.15rem;
  }
  
  .latest-card__title-slot {
	  min-height: 3.55em;
  }
  
  .latest-card__title {
	  margin: 0;
	  color: #1C1D43;
	  font-size: 16px;
	  font-weight: 700;
	  text-decoration: underline;
  }
  
  .latest-card__author-slot {
	  
  }
  
  .latest-card__author {
	  margin: 0;
	  color: #000;
	  font-size: 14px;
	  font-weight: 600;
	  font-style: italic;
  }
  
  .latest-card__excerpt-slot {
	  flex: 1;
	  display: flex;
	  flex-direction: column;
  }
  
  .latest-card__excerpt {
	  margin: 0.8rem 0 0;
	  color: var(--irc-text);
	  font-size: 0.88rem;
	  line-height: 1.5;
  }
  
  .latest-card__button {
	  align-self: center;
	  margin-top: 1.25rem;
	  padding-top: 0.56rem;
	  padding-bottom: 0.56rem;
	  transform: translateY(0);
  }
  
  @media (max-width: 767.98px) {
	  .latest-card__title-slot,
	  .latest-card__author-slot {
		  min-height: 0;
	  }
  
	  .latest-card__author-slot:empty {
		  display: none;
		  margin-top: 0;
	  }
  }

  
  /* ========================================================================
	 3. REGISTER / EVENT BANNER
	 ======================================================================== */
  
  .home-register {
	overflow: hidden;
	padding: clamp(2.75rem, 5vw, 4.5rem) 0;
	background-color: var(--irc-navy);
	background-image: linear-gradient(rgba(4, 17, 61, 0.74), rgba(4, 17, 61, 0.74)), var(--home-register-bg, none);
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
  }
  
  .home-register::before {
	  content: "";
	  position: absolute;
	  inset: 0;
	  pointer-events: none;
	  background:
		  radial-gradient(circle at 20% 20%, rgba(16, 168, 223, 0.16), transparent 35%),
		  radial-gradient(circle at 80% 80%, rgba(16, 168, 223, 0.11), transparent 32%);
  }
  
  .home-register__inner {
	  position: relative;
	  z-index: 1;
	  text-align: center;
  }
  
  .home-register__label {
	  margin: 0 0 30px 0;
	  color: var(--irc-white);
	  font-size: 20px;
	  font-weight: 700;
	  line-height: 1.15;
	  text-transform: uppercase;
  }
  
  .home-register__heading {
	  margin: 0 0 30px 0;
	  color: var(--irc-white);
	  font-size: 20px;
	  font-weight: 700;
  }
  
  .home-register__copy {
	  max-width: 900px;
	  margin: 0 auto;
	  color: var(--irc-white);
	  font-size: 16;
  }
  
  .home-register__copy p {
	  margin: 0 0 1rem;
  }
  
  .home-register__button {
	  margin-top: 1.3rem;
  }
  
  .home-register__button:hover,
  .home-register__button:focus {
	  background: var(--irc-white) !important;
	  border-color: var(--irc-white) !important;
	  color: var(--irc-navy) !important;
  }
  
  /* ========================================================================
	 4. GETTING STARTED
	 ======================================================================== */
  
  .home-getting-started {
	  padding: var(--irc-section-space) 15px;
	  background: var(--irc-blue-pale);
  }
  
  .home-getting-started__label {
	  margin: 0 0 1.7rem;
	  color: var(--irc-blue-dark);
	  font-size: 22px;
	  font-weight: 700;
	  line-height: 1.15;
	  letter-spacing: 0.08em;
	  text-align: center;
	  text-transform: uppercase;
  }
  
  .home-getting-started .row {
	  row-gap: 2rem;
  }
  
  .home-getting-started__content {
	  padding-right: clamp(1.5rem, 5vw, 5rem);
  }
  
  .home-getting-started__heading {
	  margin: 0 0 1.05rem;
	  color: var(--irc-text);
	  font-size: 20px;
	  font-weight: 700;
  }
  
  .home-getting-started__copy {
	  color: var(--irc-text);
	  font-size: 16px;
  }
  
  .home-getting-started__copy p {
	  margin: 0 0 1rem;
  }
  
  .home-getting-started__aside {
	  display: flex;
	  flex-direction: column;
	  align-items: center;
	  justify-content: center;
  }
  
  .home-getting-started__image-wrap {
	  width: 100%;
	  max-width: 320px;
	  margin: 0 auto 1.25rem;
  }
  
  .home-getting-started__image {
	  display: block;
	  width: 100%;
	  height: auto;
	  object-fit: contain;
  }
  
  /* ========================================================================
	 5. BECOME A MEMBER
	 ======================================================================== */
  
  .home-membership {
	  overflow: hidden;
	  padding: var(--irc-section-space) 0;
	  background-color: var(--irc-white);
	  background-image: var(--home-membership-bg, none);
	  background-position: center bottom;
	  background-size: 100% auto;
	  background-repeat: no-repeat;
  }
  
  .home-membership__heading {
	  margin: 0 0 0.85rem;
	  color: var(--irc-blue-dark);
	  font-size: 22px;
	  font-weight: 700;
	  text-align: center;
	  text-transform: uppercase;
  }
  
  .home-membership__intro {
	  max-width: 1040px;
	  margin: 0 auto 2.1rem;
	  color: var(--irc-text);
	  font-size: 0.96rem;
	  line-height: 1.6;
	  text-align: center;
  }
  
  .home-membership__intro p {
	  margin: 0 0 1rem;
  }
  
  .home-membership__cards {
	  display: grid;
	  grid-template-columns: repeat(3, minmax(0, 1fr));
	  gap: 1.25rem;
	  margin-left: 0;
	  margin-right: 0;
  }
  
  .home-membership-card {
	  width: auto;
	  max-width: none;
	  min-width: 0;
	  display: flex;
	  flex: none;
	  flex-direction: column;
	  padding: 1.8rem 1.7rem 1.55rem;
	  border: 1px solid var(--irc-border);
	  background: rgba(255, 255, 255, 0.96);
	  box-shadow: var(--irc-shadow);
	  text-align: center;
  }
  
  .home-membership-card__heading {
	  margin: 0 0 1rem;
	  color: var(--irc-text);
	  font-size: 20px;
	  font-weight: 700;
  }
  
  .home-membership-card__copy {
	  flex: 1;
	  color: var(--irc-text);
	  font-size: 16px;
  }
  
  .home-membership-card__copy p {
	  margin: 0 0 1rem;
  }
  
  .home-membership-card__button {
	  align-self: center;
	  margin-top: 1rem;
  }
  
  /* ==========================================================================
	 HOMEPAGE – BECOME A MEMBER CARD ICONS + CUT-OUT
	 ========================================================================== */
  
  .home-membership__cards {
	  align-items: start;
  }
  
  .home-membership-card {
	  position: relative;
	  padding: 46px 0 0;
	  border: 0;
	  background: transparent;
	  box-shadow: none;
	  filter: drop-shadow(0 7px 11px rgba(7, 24, 79, 0.12));
	  overflow: visible;
  }
  
  .home-membership-card__body {
	  min-height: 100%;
	  display: flex;
	  flex-direction: column;
	  align-items: center;
	  padding: 4.6rem 1.7rem 1.55rem;
	  border: 1px solid var(--irc-border);
	  background: rgba(255, 255, 255, 0.96);
	  text-align: center;
  }
  
  /*
   * Same semicircular cut-out treatment used by the Membership page.
   */
  .home-membership-card.has-icon .home-membership-card__body {
	  -webkit-mask-image: radial-gradient(
		  circle 55px at 50% 0,
		  transparent 0 53px,
		  #000 54px
	  );
	  mask-image: radial-gradient(
		  circle 55px at 50% 0,
		  transparent 0 53px,
		  #000 54px
	  );
	  -webkit-mask-repeat: no-repeat;
	  mask-repeat: no-repeat;
	  -webkit-mask-size: 100% 100%;
	  mask-size: 100% 100%;
  }
  
  .home-membership-card__icon-wrap {
	  position: absolute;
	  top: 0;
	  left: 50%;
	  z-index: 3;
	  width: 94px;
	  height: 94px;
	  display: flex;
	  align-items: center;
	  justify-content: center;
	  padding: 13px;
	  border: 4px solid #fff;
	  border-radius: 50%;
	  background: #e7f7fc;
	  box-shadow: 0 4px 10px rgba(7, 24, 79, 0.10);
	  transform: translateX(-50%);
  }
  
  .home-membership-card__icon {
	  display: block;
	  width: 100%;
	  height: 100%;
	  object-fit: contain;
	  margin-bottom: 0;
  }
  
  .home-membership-card__copy {
	  width: 100%;
  }
  
  .home-membership-card__button {
	  margin-top: auto;
  }
  
  .home-membership__cards {
	  align-items: stretch;
  }
  
  .home-membership-card {
	  height: 100%;
  }
  
  .home-membership-card__body {
	  height: 100%;
	  min-height: 100%;
  }
  
  .home-membership-card__copy {
	  flex: 1 1 auto;
	  margin-bottom: 30px;
  }
  
  .home-membership-card__button {
	  margin-top: auto;
  }
  
  /* ========================================================================
	 6. OUR MEMBERS / LOGOS
	 ======================================================================== */
  
  .home-members {
	  padding: var(--irc-section-space) 0 clamp(3.5rem, 6vw, 6rem);
	  background: var(--irc-white);
  }
  
  .home-members__title {
	  margin: 0 0 1.75rem;
	  color: var(--irc-blue-dark);
	  font-size: 22px;
	  font-weight: 700;
	  line-height: 1.15;
	  letter-spacing: 0.06em;
	  text-align: center;
	  text-transform: uppercase;
  }
  
 .member-group {
	 position: relative;
	 margin-top: 50px;
	 border: 1px solid var(--irc-blue-dark);
	 background: #fff;
	 overflow: visible;
 }
  
 .member-group__icon-wrap {
	 position: absolute;
	 left: -9px;
	 top: 50%;
	 width: 72px;
	 height: 72px;
	 display: flex;
	 align-items: center;
	 justify-content: center;
	 padding: 9px;
	 border: 4px solid #79bddd;
	 border-radius: 50%;
	 background: #fff;
	 box-shadow: 0 3px 8px rgba(7, 24, 79, 0.18);
	 transform: translateY(-50%);
 	 z-index: 2;
 }
 
 .member-group__icon {
	 display: block;
	 width: 100%;
	 height: 100%;
	 object-fit: contain;
	 margin-bottom: 0;
 }
  
 .member-group__header {
	 position: relative;
	 min-height: 42px;
	 display: flex;
	 align-items: center;
	 padding: 8px 20px 8px 90px;
	 background: var(--irc-blue-dark);
 }
  
  .member-group:first-of-type {
	  margin-top: 0;
  }
  
 .member-group__title {
	 margin: 0;
	 color: #fff;
	 font-size: 22px;
	 font-weight: 700;
	 line-height: 1.15;
	 text-transform: none;
 }
  
  .member-logo-grid {
	  display: grid;
	  grid-template-columns: repeat(5, minmax(0, 1fr));
	  gap: 1.15rem 2rem;
	  align-items: center;
	  padding: 30px 20px;
  }
  
  .member-logo {
	  min-width: 0;
	  min-height: 80px;
	  display: flex;
	  align-items: center;
	  justify-content: center;
	  padding: 10px;
  }
  
  .member-logo[href]:hover,
  .member-logo[href]:focus {
	  opacity: 0.82;
	  background: #D2D2D2;
	  text-decoration: none;
	  transform: translateY(-2px);
  }
  
  .member-logo__image {
	  display: block;
	  width: auto;
	  max-width: 100%;
	  max-height: 62px;
	  object-fit: contain;
	  margin-bottom: 0;
	  mix-blend-mode: multiply;
  }
  
  /* ========================================================================
	 RESPONSIVE
	 ======================================================================== */
  
  @media (max-width: 991.98px) {
	  :root {
		  --irc-section-space: 3.5rem;
	  }
  
	  .home-hero__content {
		  padding-right: 1rem;
	  }
  
	  .latest-card__body {
		  padding: 1rem;
	  }
  
	  .home-getting-started__content {
		  padding-right: 1rem;
	  }
  
	  .member-logo-grid {
		  grid-template-columns: repeat(4, minmax(0, 1fr));
		  gap: 1rem 1.4rem;
	  }
  }
  
  @media (max-width: 767.98px) {
	  .home-hero {
		  padding: 3rem 0;
	  }
  
	  .home-hero__content {
		  padding-right: 15px;
	  }
  
	  .home-hero__heading {
		  line-height: 1.04;
	  }
  
	  .home-hero__media {
		  margin-top: 0.5rem;
	  }
  
	  .home-hero__image {
		  max-height: none;
	  }
  
	  .latest-grid {
		  display: flex;
		  flex-direction: column;
		  gap: 0.85rem;
	  }
  
	  .latest-grid__column-title--news,
	  .latest-card--news {
		  order: 1;
	  }
  
	  .latest-grid__column-title--resources,
	  .latest-card--resources {
		  order: 2;
	  }
  
	  .latest-grid__column-title--blogs,
	  .latest-card--blogs {
		  order: 3;
	  }
  
	  .latest-grid__column-title--resources,
	  .latest-grid__column-title--blogs {
		  margin-top: 1.25rem;
	  }
  
	  .latest-card--empty {
		  display: none;
	  }
  
	  .home-register {
		  padding: 3rem 0;
	  }
  
	  .home-getting-started__content {
		  padding-right: 15px;
	  }
  
	  .home-getting-started__aside {
		  margin-top: 0.5rem;
	  }
  
	  .home-membership__cards {
		  grid-template-columns: 1fr;
	  }
  
	  .member-logo-grid {
		  grid-template-columns: repeat(3, minmax(0, 1fr));
		  gap: 0.85rem 1rem;
	  }
  
	  .member-logo {
		  min-height: 72px;
		  padding: 0.55rem;
	  }
  
	  .member-logo__image {
		  max-height: 52px;
	  }
  }
  
  @media (max-width: 575.98px) {
	  .home-hero__buttons {
		  align-items: flex-start;
		  flex-direction: column;
	  }
  
	  .home-hero__button,
	  .home-register__button,
	  .home-getting-started__button,
	  .home-membership-card__button {
		  width: auto;
		  max-width: 100%;
	  }
  
	  .latest-card__image-wrap {
		  aspect-ratio: 16 / 7;
	  }
  
	  .member-logo-grid {
		  grid-template-columns: repeat(2, minmax(0, 1fr));
	  }
  }
  
  @media (prefers-reduced-motion: reduce) {
	  .page-template-page-homepage a,
	  .page-template-page-homepage .member-logo {
		  transition: none !important;
	  }
  }  
  
  
  /* ========================================================================
	 ABOUT US PAGE
	 ======================================================================== */
  
  .about-page {
	  --about-blue: var(--irc-blue, #18a9df);
	  --about-blue-dark: var(--irc-blue-dark, #058fc7);
	  --about-navy: var(--irc-navy, #11164d);
	  --about-sky: #8ec8e6;
	  --about-pale: #d9f0f9;
	  --about-pale-2: #eef9fd;
	  --about-text: var(--irc-text, #17213a);
	  --about-border: #b7dfeF;
	  --about-white: #fff;
	  --about-shadow: 0 5px 14px rgba(7, 24, 79, 0.12);
	  --about-shadow-strong: 0 10px 24px rgba(7, 24, 79, 0.16);
  }
  
  .about-section-title {
	  margin: 0 0 1.45rem;
	  color: var(--about-blue-dark);
	  font-size: 22px;
	  font-weight: 700;
	  line-height: 1.15;
	  letter-spacing: 0.05em;
	  text-align: center;
	  text-transform: uppercase;
  }
  
  .about-section-title--small {
	  font-size: clamp(1rem, 1.5vw, 1.25rem);
  }
  
  .about-rich-text p,
  .about-rich-text ul,
  .about-rich-text ol {
	  margin-top: 0;
	  margin-bottom: 1rem;
  }
  
  .about-rich-text p:last-child,
  .about-rich-text ul:last-child,
  .about-rich-text ol:last-child {
	  margin-bottom: 0;
  }
  
  .about-rich-text ul,
  .about-rich-text ol {
	  padding-left: 0;
  }
  
  .about-rich-text a {
	  color: var(--about-blue-dark);
	  font-weight: 600;
	  text-decoration: underline;
	  text-underline-offset: 2px;
  }
  
  .about-rich-text strong,
  .about-rich-text b {
	  font-weight: 700;
  }
  
  .about-section-button-wrap {
	  display: flex;
	  justify-content: center;
	  margin-top: 1.5rem;
  }
  
  
  
  .about-button--small {
	  min-width: 130px;
	  padding: 0.58rem 1.15rem;
	  font-size: 16px;
  }
  
  
  /* ========================================================================
	 WHO WE ARE
	 ======================================================================== */
  
  .about-who {
	  padding: 50px 0;
	  background: #fff;
  }
  
  .about-who__copy {
	  max-width: 1180px;
	  margin: 0 auto;
	  text-align: left;
  }
  
  
  /* ========================================================================
	 OUR PURPOSE
	 Full-width pale-blue bleed with constrained content.
	 ======================================================================== */
  
  .about-purpose {
	  position: relative;
	  z-index: 0;
	  padding: 50px 0;
  }
  
  .about-purpose::before {
	  content: "";
	  position: absolute;
	  inset-block: 0;
	  left: 50%;
	  z-index: -1;
	  width: 100vw;
	  transform: translateX(-50%);
	  background: var(--about-pale);
  }
  
  .about-purpose__copy {
	  max-width: 1120px;
	  margin: 0 auto;
  }
  
  
  /* ========================================================================
	 OUR HISTORY TIMELINE
	 ======================================================================== */
  
  .about-history {
	  padding: 50px 0;
	  background: #fff;
  }
  
  .about-history__intro {
	  max-width: 950px;
	  margin: -0.25rem auto 2rem;
	  text-align: center;
  }
  
  .about-history__intro p {
	  margin: 0;
  }
  
  .about-history-timeline {
	  max-width: 1120px;
	  margin: 0 auto;
  }
  
  .about-history-timeline__slides {
	  position: relative;
	  min-height: 285px;
	  transition: height 0.35s ease;
  }
  
  .about-history-timeline__slide {
	  position: absolute;
	  top: 0;
	  left: 0;
	  right: 0;
	  bottom: auto;
	  display: grid;
	  grid-template-columns: minmax(140px, 0.45fr) minmax(0, 2fr);
	  gap: clamp(1.5rem, 4vw, 3.5rem);
	  align-items: center;
	  padding: clamp(1.7rem, 3vw, 2.5rem);
	  border: 1px solid var(--about-border);
	  border-radius: 16px;
	  background: #fff;
	  box-shadow: 0 4px 10px rgba(7, 24, 79, 0.06);
	  opacity: 0;
	  visibility: hidden;
	  transform: translateX(28px);
	  pointer-events: none;
	  transition:
		  opacity 0.35s ease,
		  transform 0.35s ease,
		  visibility 0.35s ease;
  }
  
  .about-history-timeline__slide.is-active {
	  opacity: 1;
	  visibility: visible;
	  transform: translateX(0);
	  pointer-events: auto;
  }
  
  .about-history-timeline__slide.is-leaving-left {
	  opacity: 0;
	  transform: translateX(-28px);
  }
  
  .about-history-timeline__slide.is-leaving-right {
	  opacity: 0;
	  transform: translateX(28px);
  }
  
  .about-history-timeline__year {
	  color: #626f76;
	  font-size: clamp(3.1rem, 7vw, 5.8rem);
	  font-weight: 300;
	  line-height: 1;
  }
  
  .about-history-timeline__main {
	  min-width: 0;
  }
  
  .about-history-timeline__body {
	  display: block;
	  min-width: 0;
  }
  
  /*
   * Most years are text-only, so the copy uses the full available width.
   * A single supporting visual automatically switches the body to two columns.
   */
  .about-history-timeline__main--has-image .about-history-timeline__body {
	  display: grid;
	  grid-template-columns: minmax(0, 1.7fr) minmax(150px, 0.55fr);
	  gap: clamp(1.5rem, 3vw, 2.75rem);
	  align-items: center;
  }
  
  .about-history-timeline__copy {
	  min-width: 0;
  }
  
  .about-history-timeline__content {
	  font-size: 0.95rem;
	  line-height: 1.5;
  }
  
  .about-history-timeline__button-wrap {
	  margin-top: 1.15rem;
  }
  
  .about-history-timeline__supporting-image-wrap {
	  display: flex;
	  align-items: center;
	  justify-content: center;
	  min-width: 0;
  }
  
  .about-history-timeline__supporting-image {
	  display: block;
	  width: auto;
	  height: auto;
	  max-width: 100%;
	  max-height: 210px;
	  object-fit: contain;
  }
  
  .about-history-timeline__logos {
	  display: grid;
	  grid-template-columns: repeat(4, minmax(0, 1fr));
	  gap: 1rem 1.4rem;
	  align-items: center;
	  margin-top: 1.5rem;
	  padding-top: 1.25rem;
	  border-top: 1px solid rgba(7, 24, 79, 0.08);
  }
  
  .about-history-timeline__logo-item {
	  min-width: 0;
	  display: flex;
	  flex-direction: column;
	  align-items: center;
	  justify-content: center;
	  gap: 0.45rem;
	  text-align: center;
  }
  
  .about-history-timeline__logo {
	  display: block;
	  width: auto;
	  height: auto;
	  max-width: 100%;
	  max-height: 58px;
	  object-fit: contain;
  }
  
  .about-history-timeline__logo-label {
	  font-size: 0.7rem;
	  line-height: 1.25;
  }
  
  .about-history-timeline__nav {
	  position: relative;
	  display: flex;
	  align-items: flex-start;
	  justify-content: space-between;
	  gap: 0;
	  margin-top: 1.25rem;
	  padding-top: 0.1rem;
  }
  
  .about-history-timeline__nav::before {
	  content: "";
	  position: absolute;
	  top: 9px;
	  left: 0;
	  right: 0;
	  height: 1px;
	  background: #b8c3c9;
  }
  
  .about-history-timeline__dot {
	  position: relative;
	  z-index: 2;
	  min-width: 34px;
	  display: flex;
	  flex-direction: column;
	  align-items: center;
	  gap: 0.45rem;
	  padding: 0;
	  border: 0;
	  background: transparent;
	  color: #6a777e;
	  font-family: inherit;
	  cursor: pointer;
  }
  
  .about-history-timeline__dot-marker {
	  width: 9px;
	  height: 9px;
	  border-radius: 50%;
	  background: #b8c3c9;
	  box-shadow: 0 0 0 3px #fff;
	  transition:
		  width 0.25s ease,
		  height 0.25s ease,
		  background-color 0.25s ease,
		  transform 0.25s ease;
  }
  
  .about-history-timeline__dot-year {
	  font-size: 0.68rem;
	  font-weight: 500;
	  line-height: 1;
	  white-space: nowrap;
	  opacity: 0.75;
	  transition:
		  font-size 0.25s ease,
		  color 0.25s ease,
		  opacity 0.25s ease,
		  transform 0.25s ease;
  }
  
  .about-history-timeline__dot:hover .about-history-timeline__dot-marker,
  .about-history-timeline__dot:focus .about-history-timeline__dot-marker {
	  transform: scale(1.15);
  }
  
  .about-history-timeline__dot:focus {
	  outline: 0;
  }
  
  .about-history-timeline__dot.is-active .about-history-timeline__dot-marker {
	  width: 16px;
	  height: 16px;
	  background: var(--about-blue);
  }
  
  .about-history-timeline__dot.is-active .about-history-timeline__dot-year {
	  color: var(--about-blue-dark);
	  font-size: 0.9rem;
	  font-weight: 700;
	  opacity: 1;
	  transform: translateY(1px);
  }
  
  .about-history-timeline.is-dot-pulsing .about-history-timeline__dot-marker {
	  animation: about-history-dot-pulse-x 0.8s ease-in-out 2;
	  transform-origin: center;
  }
  
  /* Slight stagger so the dots pulse across the timeline. */
  .about-history-timeline.is-dot-pulsing .about-history-timeline__dot:nth-child(2n) .about-history-timeline__dot-marker {
	  animation-delay: 0.08s;
  }
  
  .about-history-timeline.is-dot-pulsing .about-history-timeline__dot:nth-child(3n) .about-history-timeline__dot-marker {
	  animation-delay: 0.16s;
  }
  
  .about-history-timeline.is-dot-pulsing .about-history-timeline__dot:nth-child(4n) .about-history-timeline__dot-marker {
	  animation-delay: 0.24s;
  }
  
  @keyframes about-history-dot-pulse-x {
	  0%,
	  100% {
		  transform: scaleX(1) scaleY(1);
	  }
  
	  50% {
		  transform: scaleX(1.7) scaleY(0.92);
	  }
  }
  
  @media (prefers-reduced-motion: reduce) {
	  .about-history-timeline.is-dot-pulsing .about-history-timeline__dot-marker {
		  animation: none;
	  }
  }
  
  
  /* ========================================================================
	 OUR FUNDING
	 Background image is supplied through the ACF custom property.
	 ======================================================================== */
  
  .about-funding {
	  position: relative;
	  z-index: 0;
	  padding: 0 0 50px 0;
  }
  
  .about-funding::before {
	  content: "";
	  position: absolute;
	  inset-block: 0;
	  left: 50%;
	  z-index: -1;
	  width: 100vw;
	  transform: translateX(-50%);
	  background-color: #f6fbfd;
	  background-image: var(--about-funding-bg, none);
	  background-position: center;
	  background-size: cover;
	  background-repeat: no-repeat;
  }
  
  .about-funding__copy {
	  max-width: 1150px;
	  margin: 0 auto 3.2rem;
  }
  
  .about-funding__grid {
	  display: grid;
	  grid-template-columns: repeat(2, minmax(0, 1fr));
	  gap: 2rem 2.5rem;
	  max-width: 840px;
	  margin: 0 auto;
  }
  
  .about-funding-card {
	  position: relative;
	  padding-top: 46px;
	  filter: drop-shadow(0 7px 11px rgba(7, 24, 79, 0.12));
  }
  
  .about-funding-card__body {
	  min-height: 275px;
	  display: flex;
	  flex-direction: column;
	  align-items: center;
	  padding: 4.6rem 2rem 2rem;
	  background: #fff;
	  text-align: center;
  }
  
  /*
   * Semicircular cutout at the top edge of the card.
   * The icon/image sits in that opening.
   */
  .about-funding-card.has-image .about-funding-card__body {
	  -webkit-mask-image: radial-gradient(
		  circle 55px at 50% 0,
		  transparent 0 53px,
		  #000 54px
	  );
	  mask-image: radial-gradient(
		  circle 55px at 50% 0,
		  transparent 0 53px,
		  #000 54px
	  );
	  -webkit-mask-repeat: no-repeat;
	  mask-repeat: no-repeat;
	  -webkit-mask-size: 100% 100%;
	  mask-size: 100% 100%;
  }
  
  .about-funding-card__icon-wrap {
	  position: absolute;
	  top: 0;
	  left: 50%;
	  z-index: 3;
	  width: 94px;
	  height: 94px;
	  display: flex;
	  align-items: center;
	  justify-content: center;
	  padding: 13px;
	  border: 4px solid #fff;
	  border-radius: 50%;
	  background: var(--about-pale);
	  box-shadow: 0 4px 10px rgba(7, 24, 79, 0.10);
	  transform: translateX(-50%);
  }
  
  .about-funding-card__icon {
	  display: block;
	  width: 100%;
	  height: 100%;
	  object-fit: contain;
	  margin-bottom: 0;
  }
  
  .about-funding-card__title {
	  margin: 0 0 1rem;
	  color: #111;
	  font-size: 1.05rem;
	  font-weight: 700;
	  line-height: 1.25;
  }
  
  .about-funding-card__copy {
	  flex: 1;
	  margin: 0;
	  color: var(--about-text);
	  font-size: 0.9rem;
	  line-height: 1.45;
  }
  
  .about-funding-card__button-wrap {
	  margin-top: 1.35rem;
  }
  
  
  /* ========================================================================
	 GOVERNANCE & MANAGEMENT ACCORDIONS
	 ======================================================================== */
  
  .about-governance {
	  padding: 50px 0;
	  background: #fff;
  }
  
  .about-governance__intro {
	  max-width: 1120px;
	  margin: -0.25rem auto 2rem;
	  text-align: left;
  }
  
  .about-governance__accordions {
	  max-width: 1100px;
	  margin: 0 auto;
  }
  
  .about-governance-accordion {
	  --accordion-colour: var(--about-blue);
	  margin-bottom: 0.75rem;
  }
  
  .about-governance-accordion--navy {
	  --accordion-colour: var(--about-navy);
  }
  
  .about-governance-accordion--blue {
	  --accordion-colour: var(--about-blue);
  }
  
  .about-governance-accordion--sky {
	  --accordion-colour: #6baed2;
  }
  
  .about-governance-accordion--pale {
	  --accordion-colour: #b8ddec;
  }
  
  .about-governance-accordion__toggle {
	  position: relative;
	  width: 100%;
	  display: flex;
	  align-items: center;
	  justify-content: center;
	  gap: 1rem;
	  padding: 14px 1rem;
	  border: 1px solid var(--accordion-colour);
	  background: #fff;
	  color: #17213a;
	  font-family: inherit;
	  font-size: 16px;
	  font-weight: 700;
	  line-height: 1.2;
	  letter-spacing: 0.04em;
	  text-align: center;
	  text-transform: uppercase;
	  cursor: pointer;
	  transition:
		  background-color 0.2s ease,
		  color 0.2s ease;
  }
  
  .about-governance-accordion.is-open .about-governance-accordion__toggle {
	  background: var(--accordion-colour);
	  color: #fff;
  }
  
  .about-governance-accordion__chevron {
	  position: absolute;
	  right: max(1rem, calc((100% - 1080px) / 2));
	  width: 9px;
	  height: 9px;
	  border-right: 1.5px solid currentColor;
	  border-bottom: 1.5px solid currentColor;
	  transform: rotate(45deg);
	  transition: transform 0.25s ease;
  }
  
  .about-governance-accordion.is-open .about-governance-accordion__chevron {
	  transform: rotate(225deg);
  }
  
  .about-governance-accordion__panel {
	  display: grid;
	  grid-template-rows: 0fr;
	  transition: grid-template-rows 0.3s ease;
  }
  
  .about-governance-accordion.is-open .about-governance-accordion__panel {
	  grid-template-rows: 1fr;
  }
  
  .about-governance-accordion__panel-inner {
	  min-height: 0;
	  overflow: hidden;
  }
  
  .about-governance-accordion__grid {
	  display: grid;
	  grid-template-columns: repeat(3, minmax(0, 1fr));
	  gap: 0.75rem;
	  padding: 1rem 0 1.25rem;
  }
  
  
  /* Text / list version used for the Working Group accordion. */
  .about-governance-accordion__text {
	  padding: 1.25rem 1.4rem 1.5rem;
	  border: 1px solid var(--accordion-colour);
	  border-top: 0;
	  background: #fff;
	  color: var(--about-text);
	  font-size: 0.9rem;
	  line-height: 1.5;
  }
  
  .about-governance-accordion__text p {
	  margin: 0 0 0.85rem;
  }
  
  .about-governance-accordion__text p:last-child {
	  margin-bottom: 0;
  }
  
  .about-governance-accordion__text ul,
  .about-governance-accordion__text ol {
	  margin: 0.5rem 0 0;
	  padding-left: 1.35rem;
  }
  
  .about-governance-accordion__text li {
	  margin-bottom: 0.35rem;
  }
  
  .about-governance-card {
	  min-height: 95px;
	  display: flex;
	  flex-direction: column;
	  align-items: center;
	  justify-content: center;
	  padding: 1rem;
	  border: 1px solid var(--accordion-colour);
	  background: #fff;
	  text-align: center;
  }
  
  .about-governance-card__title {
	  margin: 0 0 0.4rem;
	  color: #111;
	  font-size: 0.88rem;
	  font-weight: 700;
	  line-height: 1.25;
  }
  
  .about-governance-card__detail {
	  margin: 0;
	  color: var(--about-text);
	  font-size: 14px;
	  line-height: 1.35;
  }
  
  
  /* ========================================================================
	 PREVIOUS ROTATING BOARD MEMBERS TABS
	 ======================================================================== */
  
  .about-rotating-board {
	  padding: 0 0 50px 0;
	  background: #fff;
  }
  
  .about-board-tabs {
	  max-width: 1100px;
	  margin: 0 auto;
  }
  
  .about-board-tabs__nav {
	  display: grid;
	  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
	  gap: 0;
  }
  
  .about-board-tabs__tab {
	  padding: 14px 0.85rem;
	  border: 1px solid #b7dfee;
	  border-right: 0;
	  background: #dff2fa;
	  color: #45758e;
	  font-family: inherit;
	  font-size: 16px;
	  font-weight: 600;
	  cursor: pointer;
	  transition:
		  background-color 0.2s ease,
		  color 0.2s ease;
  }
  
  .about-board-tabs__tab:last-child {
	  border-right: 1px solid #b7dfee;
  }
  
  .about-board-tabs__tab:nth-child(2n) {
	  background: #cfe9f5;
  }
  
  .about-board-tabs__tab:nth-child(3n) {
	  background: #bddfed;
  }
  
  .about-board-tabs__tab.is-active {
	  background: var(--about-blue);
	  color: #fff;
  }
  
  .about-board-tabs__tab:focus {
	  outline: 2px solid var(--about-navy);
	  outline-offset: -2px;
  }
  
  .about-board-tabs__panels {
	  border: 1px solid var(--about-blue-dark);
	  border-top: 0;
	  background: #fff;
  }
  
  .about-board-tabs__panel {
	  display: none;
	  padding: 1.35rem 1.5rem;
  }
  
  .about-board-tabs__panel.is-active {
	  display: block;
  }
  
  
  /* ========================================================================
	 COMMENT SUBMISSIONS
	 Different accordion control: circular plus / minus button.
	 ======================================================================== */
  
  .about-comments {
	  padding: 0 0 50px 0;
	  background: #fff;
  }
  
  .about-comments__intro {
	  max-width: 1050px;
	  margin: -0.2rem auto 2rem;
	  text-align: left;
  }
  
  .about-comments__list {
	  max-width: 1100px;
	  margin: 0 auto;
  }
  
  .about-comment-accordion {
	  margin-bottom: 0.85rem;
	  border: 1px solid var(--about-blue-dark);
	  background: #fff;
	  box-shadow: 0 3px 8px rgba(7, 24, 79, 0.06);
  }
  
  .about-comment-accordion__toggle {
	  width: 100%;
	  display: flex;
	  align-items: center;
	  justify-content: space-between;
	  gap: 1rem;
	  padding: 1rem 1.1rem;
	  border: 0;
	  background: #fff;
	  color: #111;
	  font-family: inherit;
	  text-align: left;
	  cursor: pointer;
  }
  
  .about-comment-accordion__heading {
	  min-width: 0;
	  display: flex;
	  flex-direction: column;
	  gap: 0.25rem;
  }
  
  .about-comment-accordion__title {
	  font-size: 0.9rem;
	  font-weight: 700;
	  line-height: 1.25;
  }
  
  .about-comment-accordion__date {
	  color: #59666d;
	  font-size: 14px;
	  line-height: 1.2;
  }
  
  .about-comment-accordion__icon {
	  position: relative;
	  width: 28px;
	  height: 28px;
	  flex: 0 0 28px;
	  border-radius: 50%;
	  background: var(--about-blue-dark);
  }
  
  .about-comment-accordion__icon-line {
	  position: absolute;
	  top: 50%;
	  left: 50%;
	  width: 12px;
	  height: 2px;
	  background: #fff;
	  transform: translate(-50%, -50%);
	  transition: transform 0.25s ease;
  }
  
  .about-comment-accordion__icon-line:last-child {
	  transform: translate(-50%, -50%) rotate(90deg);
  }
  
  .about-comment-accordion.is-open .about-comment-accordion__icon-line:last-child {
	  transform: translate(-50%, -50%) rotate(0);
  }
  
  .about-comment-accordion__panel {
	  display: grid;
	  grid-template-rows: 0fr;
	  transition: grid-template-rows 0.3s ease;
  }
  
  .about-comment-accordion.is-open .about-comment-accordion__panel {
	  grid-template-rows: 1fr;
  }
  
  .about-comment-accordion__panel-inner {
	  min-height: 0;
	  overflow: hidden;
  }
  
  .about-comment-accordion__copy {
	  padding: 0 1.1rem 1rem;
	  font-size: 0.9rem;
	  line-height: 1.5;
  }
  
  .about-comment-accordion__button-wrap {
	  padding: 0 1.1rem 1.2rem;
  }
  
  
  /* ========================================================================
	 TABLET
	 ======================================================================== */
  
  @media (max-width: 991.98px) {
  
	  .about-history-timeline__slide {
		  grid-template-columns: minmax(120px, 0.4fr) minmax(0, 1.7fr);
	  }
  
	  .about-history-timeline__logos {
		  grid-template-columns: repeat(3, minmax(0, 1fr));
	  }
  
	  .about-governance-accordion__grid {
		  grid-template-columns: repeat(2, minmax(0, 1fr));
	  }
  
  }
  
  
  /* ========================================================================
	 MOBILE
	 ======================================================================== */
  
  @media (max-width: 767.98px) {
  
	  .about-history-timeline__slides {
		  min-height: 0;
	  }
  
	  .about-history-timeline__slide {
		  grid-template-columns: 1fr;
		  gap: 1.1rem;
	  }
  
	  .about-history-timeline__year {
		  font-size: 3.2rem;
	  }
  
	  .about-history-timeline__main--has-image .about-history-timeline__body {
		  grid-template-columns: 1fr;
	  }
  
	  .about-history-timeline__supporting-image-wrap {
		  justify-content: flex-start;
	  }
  
	  .about-history-timeline__supporting-image {
		  max-height: 180px;
	  }
  
	  .about-history-timeline__logos {
		  grid-template-columns: repeat(2, minmax(0, 1fr));
	  }
	  
	  .about-history-timeline__logo{
		  margin-bottom: 0;
	  }
  
	  .about-history-timeline__nav {
		  justify-content: flex-start;
		  gap: 1.25rem;
		  overflow-x: auto;
		  padding-bottom: 0.45rem;
		  scrollbar-width: thin;
	  }
  
	  .about-history-timeline__nav::before {
		  display: none;
	  }
  
	  .about-history-timeline__dot {
		  flex: 0 0 auto;
	  }
  
	  .about-funding__grid,
	  .about-governance-accordion__grid {
		  grid-template-columns: 1fr;
	  }
  
	  .about-funding-card {
		  max-width: 470px;
		  margin: 0 auto;
		  width: 100%;
	  }
  
	  .about-board-tabs__nav {
		  display: flex;
		  overflow-x: auto;
	  }
  
	  .about-board-tabs__tab {
		  flex: 0 0 160px;
	  }
	  
	  /* Let the active timeline card determine its own height */
	  .about-history-timeline__slides {
		  height: auto !important;
		  min-height: 0;
	  }
	  
	  
	  /* Inactive slides remain layered */
	  .about-history-timeline__slide {
		  position: absolute;
		  inset: 0;
	  
		  align-items: start;
	  }
	  
	  
	  /* Active slide goes back into normal flow */
	  .about-history-timeline__slide.is-active {
		  position: relative;
		  inset: auto;
	  
		  width: 100%;
		  height: auto;
	  }
	  
	  
	  /* Give the logo area a little more breathing room */
	  .about-history-timeline__logos {
		  padding-bottom: 0.35rem;
	  }
	  
	  
	  .about-history-timeline__logo-item {
		  min-height: 0;
	  }
	  
	  
	  .about-history-timeline__logo-label {
		  margin-bottom: 0;
	  }
  
  }
  
  
  /* ========================================================================
	 REDUCED MOTION
	 ======================================================================== */
  
  @media (prefers-reduced-motion: reduce) {
  
	  .about-button,
	  .about-history-timeline__slide,
	  .about-history-timeline__dot-marker,
	  .about-history-timeline__dot-year,
	  .about-governance-accordion__panel,
	  .about-governance-accordion__chevron,
	  .about-comment-accordion__panel,
	  .about-comment-accordion__icon-line {
		  transition: none;
	  }
  
  }
  
  
  /* ========================================================================
	 INSIGHTS PAGE
	 ======================================================================== */
  
  .insights-page {
	  --insights-blue: var(--irc-blue, #19a9df);
	  --insights-blue-dark: var(--irc-blue-dark, #058fc7);
	  --insights-navy: var(--irc-navy, #11164d);
	  --insights-pale: #dff3fb;
	  --insights-pale-2: #eef9fd;
	  --insights-white: #fff;
	  --insights-text: var(--irc-text, #17213a);
	  --insights-line: #cfe2ea;
	  --insights-border: #5ab8dd;
	  --insights-shadow: 0 5px 14px rgba(7, 24, 79, 0.10);
	  --insights-shadow-strong: 0 10px 24px rgba(7, 24, 79, 0.15);
  }
  
  .insights-section-title {
	  margin: 0 0 1.35rem;
	  color: var(--insights-blue-dark);
	  font-size: 22px;
	  font-weight: 700;
	  line-height: 1.15;
	  letter-spacing: 0.05em;
	  text-align: center;
	  text-transform: uppercase;
  }
  
  .insights-section-intro {
	  max-width: 1120px;
	  margin: 0 auto 2rem;
	  line-height: 1.55;
  }
  
  .insights-rich-text p,
  .insights-rich-text ul,
  .insights-rich-text ol {
	  margin-top: 0;
	  margin-bottom: 0.9rem;
  }
  
  .insights-rich-text p:last-child,
  .insights-rich-text ul:last-child,
  .insights-rich-text ol:last-child {
	  margin-bottom: 0;
  }
  
  .insights-rich-text ul,
  .insights-rich-text ol {
	  padding-left: 1.3rem;
  }
  
  .insights-rich-text h3,
  .insights-rich-text h4 {
	  margin: 1.2rem 0 0.45rem;
	  color: #111;
	  font-size: 0.95rem;
	  font-weight: 700;
	  line-height: 1.3;
  }
  
  .insights-rich-text a {
	  color: var(--insights-blue-dark);
	  font-weight: 600;
	  text-decoration: underline;
	  text-underline-offset: 2px;
  }
  
  .insights-rich-text strong,
  .insights-rich-text b {
	  font-weight: 700;
  }
  
  
  /* ========================================================================
	 BUTTONS
	 ======================================================================== */
  
  
  
  .insights-button--small {
	  min-width: 145px;
	  padding: 0.58rem 1.15rem;
	  font-size: 0.8rem;
  }
  
  .insights-button--table {
	  min-width: 120px;
	  padding: 0.48rem 0.95rem;
	  font-size: 0.74rem;
  }
  
  .insights-button--paper {
	  width: 100%;
	  min-height: 52px;
	  padding: 0.7rem 1.1rem;
	  line-height: 1.25;
  }
  
  
  /* ========================================================================
	 BLOGS
	 ======================================================================== */
  
  .insights-blogs {
	  padding: 50px 0;
	  background: #fff;
  }
  
  .insights-blog-grid {
	  display: grid;
	  grid-template-columns: repeat(3, minmax(0, 1fr));
	  gap: 1.25rem 1.5rem;
  }
  
  .insights-blog-card {
	  min-width: 0;
	  display: flex;
	  flex-direction: column;
	  overflow: hidden;
	  border: 1px solid rgba(7, 24, 79, 0.06);
	  background: #fff;
	  box-shadow: var(--insights-shadow);
  }
  
  .insights-blog-card__image-wrap {
	  width: 100%;
	  aspect-ratio: 16 / 5.7;
	  overflow: hidden;
	  background: var(--insights-pale-2);
  }
  
  .insights-blog-card__image {
	  display: block;
	  width: 100%;
	  height: 100%;
	  object-fit: cover;
  }
  
  .insights-blog-card__body {
	  flex: 1;
	  display: flex;
	  flex-direction: column;
	  padding: 1.15rem 1.2rem 1.1rem;
  }
  
  .insights-blog-card__title {
	  margin: 0 0 0.65rem;
	  color: var(--insights-navy);
	  font-size: 1rem;
	  font-weight: 700;
	  line-height: 1.25;
  }
  
  .insights-blog-card__author {
	  display: flex;
	  flex-direction: column;
	  gap: 0.15rem;
	  margin-bottom: 0.55rem;
	  color: var(--insights-text);
	  font-size: 16px;
  }
  
  .insights-blog-card__author strong {
	  font-weight: 700;
  }
  
  .insights-blog-card__date {
	  margin-bottom: 0.65rem;
	  color: #65727a;
	  font-size: 14px;
	  line-height: 1.3;
  }
  
  .insights-blog-card__excerpt {
	  margin: 0;
	  color: var(--insights-text);
	  font-size: 0.84rem;
	  line-height: 1.48;
  }
  
  .insights-blog-card__button-wrap {
	  margin-top: auto;
	  padding-top: 1.15rem;
	  text-align: center;
  }
  
  .insights-blog-card__image-wrap {
	  position: relative;
  }
  
  /* Title sits inside the featured image, matching the supplied reference. */
  .insights-blog-card__title--overlay {
	  position: absolute;
	  inset: 0;
	  z-index: 2;
	  display: flex;
	  align-items: center;
	  justify-content: center;
	  margin: 0;
	  padding: 1.2rem 1.4rem;
	  color: #fff;
	  font-size: 1rem;
	  font-weight: 700;
	  line-height: 1.25;
	  text-align: center;
	  text-shadow: 0 1px 4px rgba(0, 0, 0, 0.28);
	  pointer-events: none;
  }
  
  /* Normal body title is retained only as a fallback when no image is supplied. */
  .insights-blog-card__body > .insights-blog-card__title {
	  margin: 0 0 0.65rem;
	  color: var(--insights-navy);
  }
  
  
  /* ========================================================================
	 AWARDS
	 ======================================================================== */
  
  .insights-awards {
	  padding: 0;
	  background: #fff;
  }
  
  .insights-award-programmes {
	  max-width: 1120px;
	  margin: 0 auto;
  }
  
  .insights-award-programme + .insights-award-programme {
	  margin-top: 2rem;
  }
  
  .insights-award-programme__title {
	  margin: 0 0 0.45rem;
	  color: var(--insights-blue-dark);
	  font-size: 18px;
	  font-weight: 700;
	  line-height: 1.25;
  }
  
  .insights-award-programme__subtitle {
	  margin: 0 0 0.5rem;
	  color: #222;
	  font-size: 0.88rem;
	  font-style: italic;
	  line-height: 1.35;
  }
  
  .insights-award-programme__intro {
	  margin-bottom: 1rem;
	  line-height: 1.5;
  }
  
  
  /* ========================================================================
	 SHARED ACCORDIONS
	 ======================================================================== */
  
  .insights-accordion {
	  border: 1px solid var(--insights-blue);
	  background: #fff;
	  box-shadow: none;
  }
  
  .insights-accordion + .insights-accordion {
	  margin-top: 0.7rem;
  }
  
  .insights-accordion__toggle {
	  width: 100%;
	  display: flex;
	  align-items: center;
	  justify-content: space-between;
	  gap: 1rem;
	  min-height: 48px;
	  padding: 0.65rem 0.8rem 0.65rem 1rem;
	  border: 0;
	  background: #fff;
	  color: var(--insights-blue-dark);
	  font-family: inherit;
	  font-weight: 600;
	  text-align: left;
	  cursor: pointer;
  }
  
  .insights-accordion.is-open .insights-accordion__toggle {
	  background: #fff;
	  color: var(--insights-blue-dark);
  }
  
  /*
   * Closed = dark-blue circle with a white plus.
   * Open   = dark-blue circle with a white X, matching the design.
   */
  .insights-accordion__icon {
	  position: relative;
	  width: 30px;
	  height: 30px;
	  flex: 0 0 30px;
	  border-radius: 50%;
	  background: var(--insights-blue-dark);
  }
  
  .insights-accordion__icon::before,
  .insights-accordion__icon::after {
	  content: "";
	  position: absolute;
	  top: 50%;
	  left: 50%;
	  width: 14px;
	  height: 2px;
	  background: #fff;
	  transform-origin: center;
	  transition: transform 0.25s ease;
  }
  
  .insights-accordion__icon::before {
	  transform: translate(-50%, -50%);
  }
  
  .insights-accordion__icon::after {
	  transform: translate(-50%, -50%) rotate(90deg);
  }
  
  .insights-accordion.is-open .insights-accordion__icon::before {
	  transform: translate(-50%, -50%) rotate(45deg);
  }
  
  .insights-accordion.is-open .insights-accordion__icon::after {
	  transform: translate(-50%, -50%) rotate(-45deg);
  }
  
  .insights-accordion__panel {
	  display: grid;
	  grid-template-rows: 0fr;
	  transition: grid-template-rows 0.32s ease;
  }
  
  .insights-accordion.is-open .insights-accordion__panel {
	  grid-template-rows: 1fr;
  }
  
  .insights-accordion__panel-inner {
	  min-height: 0;
	  overflow: hidden;
	  padding: 0 1rem;
  }
  
  .insights-accordion.is-open .insights-accordion__panel-inner {
	  padding-top: 0.5rem;
	  padding-bottom: 1.1rem;
  }
  
  
  /* ========================================================================
	 AWARDS TABLE
	 ======================================================================== */
  
  .insights-award-table {
	  width: 100%;
	  border-top: 1px solid var(--insights-line);
	  border-left: 1px solid var(--insights-line);
  }
  
  .insights-award-table__head,
  .insights-award-table__row {
	  display: grid;
	  align-items: stretch;
  }
  
  .insights-award-table.has-secondary .insights-award-table__head,
  .insights-award-table.has-secondary .insights-award-table__row {
	  grid-template-columns: 70px minmax(150px, 0.75fr) minmax(0, 1.7fr) 145px;
  }
  
  .insights-award-table.no-secondary .insights-award-table__head,
  .insights-award-table.no-secondary .insights-award-table__row {
	  grid-template-columns: 70px minmax(0, 2fr) 145px;
  }
  
  .insights-award-table__head {
	  background: var(--insights-blue-dark);
	  color: #fff;
	  font-size: 0.75rem;
	  font-weight: 700;
  }
  
  .insights-award-table__head > div,
  .insights-award-table__row > div {
	  padding: 0.58rem 0.7rem;
	  border-right: 1px solid var(--insights-line);
	  border-bottom: 1px solid var(--insights-line);
  }
  
  .insights-award-table__row {
	  background: #fff;
	  color: var(--insights-text);
	  font-size: 16px;
  }
  
  .insights-award-table__row:nth-child(odd) {
	  background: #fbfdfe;
  }
  
  .insights-award-table__year {
	  font-weight: 700;
  }
  
  .insights-award-table__cta {
	  display: flex;
	  align-items: center;
	  justify-content: center;
  }
  
  
  /* ========================================================================
	 SOUTH AFRICAN COMPANY REPORTS
	 ======================================================================== */
  
  .insights-company-reports {
	  position: relative;
	  z-index: 0;
	  padding: 50px 0;
  }
  
  .insights-company-reports::before {
	  content: "";
	  position: absolute;
	  inset-block: 0;
	  left: 50%;
	  z-index: -1;
	  width: 100vw;
	  transform: translateX(-50%);
	  background: linear-gradient(180deg, #fff 0%, #fff 72%, #f6fbfd 100%);
  }
  
  .insights-paper-links {
	  display: grid;
	  grid-template-columns: repeat(3, minmax(0, 1fr));
	  gap: 1rem 1.4rem;
	  max-width: 980px;
	  margin: 0 auto 2.1rem;
  }
  
  .insights-company-accordions {
	  max-width: 1100px;
	  margin: 0 auto;
  }
  
  .insights-company-accordion + .insights-company-accordion {
	  margin-top: 0.75rem;
  }
  
  .insights-report-table {
	  border-top: 1px solid var(--insights-line);
	  border-left: 1px solid var(--insights-line);
  }
  
  .insights-report-table__row {
	  display: grid;
	  grid-template-columns: minmax(190px, 0.75fr) minmax(0, 1.8fr);
  }
  
  .insights-report-table__row > div {
	  padding: 0.58rem 0.75rem;
	  border-right: 1px solid var(--insights-line);
	  border-bottom: 1px solid var(--insights-line);
  }
  
  .insights-report-table__label {
	  background: #f7fbfd;
	  color: #111;
	  font-weight: 700;
  }
  
  .insights-report-table__button-wrap {
	  margin-top: 1rem;
	  text-align: center;
  }
  
  
  /* ========================================================================
	 LOCAL & INTERNATIONAL NEWS
	 ======================================================================== */
  
  .insights-news {
	  padding: 0;
	  background: #fff;
  }
  
  .insights-news-list {
	  display: grid;
	  gap: 25px;
	  max-width: 1100px;
	  margin: 0 auto;
  }
  
  .insights-news-card {
	  display: grid;
	  grid-template-columns: minmax(220px, 0.7fr) minmax(0, 2fr);
	  min-height: 180px;
	  overflow: hidden;
	  border: 1px solid rgba(7, 24, 79, 0.06);
	  background: #fff;
	  box-shadow: var(--insights-shadow);
  }
  
  .insights-news-card__image-wrap {
	  min-height: 180px;
	  overflow: hidden;
	  background: var(--insights-pale-2);
  }
  
  .insights-news-card__image {
	  display: block;
	  width: 100%;
	  height: 100%;
	  object-fit: cover;
  }
  
  .insights-news-card__body {
	  display: flex;
	  flex-direction: column;
	  padding: 1.3rem 1.5rem;
  }
  
  .insights-news-card__title {
	  margin: 0 0 0.35rem;
	  color: var(--insights-navy);
	  font-weight: 700;
	  font-size: 22px;
	  line-height: 1.3;
  }
  
  .insights-news-card__date {
	  margin-bottom: 0.6rem;
	  color: #6f7c83;
	  font-size: 14px;
	  line-height: 1.25;
  }
  
  .insights-news-card__copy {
	  margin: 0;
	  color: var(--insights-text);
	  line-height: 1.48;
  }
  
  .insights-news-card__buttons {
	  display: flex;
	  flex-wrap: wrap;
	  gap: 0.65rem;
	  margin-top: 1rem;
  }
  
  
  /* ========================================================================
	 INTERNATIONAL DEVELOPMENTS
	 ======================================================================== */
  
  .insights-developments {
	  padding: 50px 0;
	  background: #fff;
  }
  
  .insights-development-accordions {
	  max-width: 1100px;
	  margin: 0 auto;
  }
  
  .insights-development-accordion__content {
	  font-size: 16px;
  }
  
  .insights-development-accordion__buttons {
	  display: flex;
	  flex-wrap: wrap;
	  gap: 0.75rem;
	  margin-top: 1.1rem;
  }
  
  
  /* ========================================================================
	 ACADEMIC RESEARCH
	 ======================================================================== */
  
  .insights-academic {
	  position: relative;
	  z-index: 0;
	  padding: 50px 0;
  }
  
  .insights-academic::before {
	  content: "";
	  position: absolute;
	  inset-block: 0;
	  left: 50%;
	  z-index: -1;
	  width: 100vw;
	  transform: translateX(-50%);
	  background: var(--insights-pale);
  }
  
  .insights-academic__subheading {
	  margin: 0 0 0.65rem;
	  color: #111;
	  font-size: 1rem;
	  font-weight: 700;
	  line-height: 1.25;
	  text-align: center;
  }
  
  .insights-research-library {
	  max-width: 1100px;
	  margin: 0 auto;
  }
  
  .insights-research-years {
	  display: grid;
	  grid-template-columns: repeat(4, minmax(0, 1fr));
	  gap: 0.55rem 1.4rem;
	  max-width: 760px;
	  margin: 0 auto 2rem;
  }
  
  .insights-research-years__button {
	  width: 100%;
	  padding: 0.55rem 0.8rem;
	  border: 0;
	  border-radius: 999px;
	  background: var(--insights-blue);
	  color: #fff;
	  font-family: inherit;
	  font-weight: 600;
	  line-height: 1;
	  cursor: pointer;
	  box-shadow: 0 3px 7px rgba(7, 24, 79, 0.08);
	  transition:
		  transform 0.2s ease,
		  background-color 0.2s ease;
  }
  
  .insights-research-years__button:hover,
  .insights-research-years__button:focus,
  .insights-research-years__button.is-active {
	  background: var(--insights-blue-dark);
	  transform: translateY(-1px);
	  outline: 0;
  }
  
  .insights-research-panel {
	  display: none;
  }
  
  .insights-research-panel.is-active {
	  display: block;
  }
  
  .insights-research-panel__year {
	  margin: 0 0 0.75rem;
	  padding: 0.65rem 1rem;
	  background: var(--insights-navy);
	  color: #fff;
	  font-size: 1rem;
	  font-weight: 700;
	  line-height: 1.2;
	  text-align: center;
  }
  
  .insights-research-table {
	  border-left: 1px solid var(--insights-line);
	  border-top: 1px solid var(--insights-line);
	  background: #fff;
  }
  
  .insights-research-table__head,
  .insights-research-table__row,
  .insights-research-table__subheading {
	  display: grid;
  }
  
  .insights-research-table.has-topic .insights-research-table__head,
  .insights-research-table.has-topic .insights-research-table__row,
  .insights-research-table.has-topic .insights-research-table__subheading {
	  grid-template-columns: minmax(0, 2.2fr) minmax(180px, 0.8fr) 135px;
  }
  
  .insights-research-table.no-topic .insights-research-table__head,
  .insights-research-table.no-topic .insights-research-table__row,
   .insights-research-table.has-topic .insights-research-table__subheading{
	  grid-template-columns: minmax(0, 1fr) 135px;
  }
  
  .insights-research-table__head,
  .insights-research-table__subheading {
	  background: #f7fbfd;
	  color: #111;
	  font-size: 16px;
	  font-weight: 700;
  }
  
  .insights-research-table__head > div,
  .insights-research-table__row > div,
  .insights-research-table__subheading {
	  padding: 0.62rem 14px;
	  border-right: 1px solid var(--insights-line);
	  border-bottom: 1px solid var(--insights-line);
  }
  
  .insights-research-table__row {
	  font-size: 16px;
	  line-height: 1.4;
  }
  
  .insights-research-table__citation {
	  color: var(--insights-text);
  }
  
  .insights-research-table__topic {
	  color: #33444d;
  }
  
  .insights-research-table__button {
	  display: flex;
	  align-items: center;
	  justify-content: center;
  }
  
  /* Research + Broad topic + Button */
  .insights-research-table.has-topic.has-button .insights-research-table__head,
  .insights-research-table.has-topic.has-button .insights-research-table__row {
	  grid-template-columns: minmax(0, 2.2fr) minmax(180px, 0.8fr) 135px;
  }
  
  /* Research + Broad topic only */
  .insights-research-table.has-topic.no-button .insights-research-table__head,
  .insights-research-table.has-topic.no-button .insights-research-table__row {
	  grid-template-columns: minmax(0, 2.2fr) minmax(180px, 0.8fr);
  }
  
  /* Research + Button only */
  .insights-research-table.no-topic.has-button .insights-research-table__head,
  .insights-research-table.no-topic.has-button .insights-research-table__row {
	  grid-template-columns: minmax(0, 1fr) 135px;
  }
  
  /* Research only */
  .insights-research-table.no-topic.no-button .insights-research-table__head,
  .insights-research-table.no-topic.no-button .insights-research-table__row {
	  grid-template-columns: minmax(0, 1fr);
  }
  
  @media (max-width: 991.98px) {
  
	  .insights-research-table.has-topic.has-button .insights-research-table__head,
	  .insights-research-table.has-topic.has-button .insights-research-table__row {
		  grid-template-columns: minmax(0, 1.8fr) minmax(160px, 0.7fr) 120px;
	  }
  
	  .insights-research-table.has-topic.no-button .insights-research-table__head,
	  .insights-research-table.has-topic.no-button .insights-research-table__row {
		  grid-template-columns: minmax(0, 1.8fr) minmax(160px, 0.7fr);
	  }
  
	  .insights-research-table.no-topic.has-button .insights-research-table__head,
	  .insights-research-table.no-topic.has-button .insights-research-table__row {
		  grid-template-columns: minmax(0, 1fr) 120px;
	  }
  
	  .insights-research-table.no-topic.no-button .insights-research-table__head,
	  .insights-research-table.no-topic.no-button .insights-research-table__row {
		  grid-template-columns: minmax(0, 1fr);
	  }
  }
  
  @media (max-width: 767.98px) {
  
	  .insights-research-table.has-topic.has-button .insights-research-table__row,
	  .insights-research-table.has-topic.no-button .insights-research-table__row,
	  .insights-research-table.no-topic.has-button .insights-research-table__row,
	  .insights-research-table.no-topic.no-button .insights-research-table__row {
		  grid-template-columns: 1fr;
	  }
  }
  
  
  /* ------------------------------------------------------------------------
	 INTERESTED IN DOING SPECIFIC RESEARCH
	 ------------------------------------------------------------------------ */
  
  .insights-research-interest {
	  max-width: 1100px;
	  margin: 3rem auto 0;
	  padding-top: 2.2rem;
	  border-top: 1px solid rgba(7, 24, 79, 0.12);
  }
  
  .insights-research-interest__heading {
	  margin: 0 0 0.65rem;
	  color: #111;
	  font-size: 1rem;
	  font-weight: 700;
	  line-height: 1.25;
	  text-align: center;
  }
  
  .insights-research-interest__intro {
	  max-width: 950px;
	  margin: 0 auto;
	  text-align: center;
	  font-size: 0.88rem;
	  line-height: 1.5;
  }
  
  .insights-research-interest__button-wrap {
	  margin: 1rem 0 1.6rem;
	  text-align: center;
  }
  
  .insights-research-idea-accordions {
	  max-width: 1050px;
	  margin: 0 auto;
  }
  
  
  
  /* ========================================================================
	 INTERNATIONAL RESEARCH & SURVEYS
	 ======================================================================== */
  
  .insights-international-research {
	  padding: 50px 0;
	  background: #fff;
  }
  
  .insights-international-research__list {
	  display: grid;
	  gap: 1.5rem;
	  max-width: 1100px;
	  margin: 0 auto;
  }
  
  .insights-international-card {
	  padding: 1.6rem 1.7rem;
	  border: 1px solid rgba(7, 24, 79, 0.06);
	  background: #fff;
	  box-shadow: var(--insights-shadow);
  }
  
  .insights-international-card__title {
	  margin: 0 0 0.75rem;
	  color: #111;
	  font-size: 1rem;
	  font-weight: 700;
	  line-height: 1.35;
	  text-align: center;
  }
  
  .insights-international-card__byline {
	  margin-bottom: 0.45rem;
	  color: #48565e;
	  font-weight: 600;
	  line-height: 1.4;
	  text-align: center;
  }
  
  .insights-international-card__date {
	  margin-bottom: 1rem;
	  color: #6b787f;
	  font-size: 16px;
	  line-height: 1.3;
	  text-align: center;
  }
  
  .insights-international-card__content {
	  font-size: 16px;
  }
  
  .insights-international-card__button-wrap {
	  margin-top: 1.25rem;
	  text-align: center;
  }
  
  
  /* ========================================================================
	 TABLET
	 ======================================================================== */
  
  @media (max-width: 991.98px) {
  
	  .insights-blog-grid {
		  grid-template-columns: repeat(2, minmax(0, 1fr));
	  }
  
	  .insights-paper-links {
		  grid-template-columns: 1fr;
		  max-width: 560px;
	  }
  
	  .insights-award-table.has-secondary .insights-award-table__head,
	  .insights-award-table.has-secondary .insights-award-table__row {
		  grid-template-columns: 65px minmax(130px, 0.7fr) minmax(0, 1.3fr) 125px;
	  }
  
	  .insights-news-card {
		  grid-template-columns: minmax(190px, 0.65fr) minmax(0, 1.8fr);
	  }
  
	  .insights-research-table.has-topic .insights-research-table__head,
	  .insights-research-table.has-topic .insights-research-table__row {
		  grid-template-columns: minmax(0, 1.8fr) minmax(160px, 0.7fr) 120px;
	  }
  
	  .insights-research-table.no-topic .insights-research-table__head,
	  .insights-research-table.no-topic .insights-research-table__row {
		  grid-template-columns: minmax(0, 1fr) 120px;
	  }
  
  }
  
  
  /* ========================================================================
	 MOBILE
	 ======================================================================== */
  
  @media (max-width: 767.98px) {
  
	  .insights-blog-grid {
		  grid-template-columns: 1fr;
	  }
  
	  .insights-award-table__head {
		  display: none;
	  }
  
	  .insights-award-table.has-secondary .insights-award-table__row,
	  .insights-award-table.no-secondary .insights-award-table__row {
		  grid-template-columns: 1fr;
		  padding: 0.6rem 0;
	  }
  
	  .insights-award-table__row > div {
		  border-right: 1px solid var(--insights-line);
	  }
  
	  .insights-award-table__row > div::before {
		  display: block;
		  margin-bottom: 0.2rem;
		  color: var(--insights-blue-dark);
		  font-size: 0.66rem;
		  font-weight: 700;
		  text-transform: uppercase;
	  }
  
	  .insights-award-table__year::before {
		  content: "Year";
	  }
  
	  .insights-award-table__cta::before {
		  content: "";
	  }
  
	  .insights-report-table__row {
		  grid-template-columns: 1fr;
	  }
  
	  .insights-report-table__label {
		  border-bottom: 0 !important;
	  }
  
	  .insights-news-card {
		  grid-template-columns: 1fr;
	  }
  
	  .insights-news-card__image-wrap {
		  min-height: 0;
		  aspect-ratio: 16 / 7;
	  }
  
	  .insights-news-card__buttons {
		  align-items: stretch;
	  }
  
	  .insights-news-card__buttons .insights-button {
		  width: 100%;
	  }
  
	  .insights-research-years {
		  grid-template-columns: repeat(2, minmax(0, 1fr));
		  gap: 0.55rem;
	  }
  
	  .insights-research-table__head {
		  display: none;
	  }
  
	  .insights-research-table__row {
		  grid-template-columns: 1fr;
		  padding: 0.55rem 0;
	  }
  
	  .insights-research-table__row > div {
		  border-right: 1px solid var(--insights-line);
	  }
  
	  .insights-research-table__citation::before,
	  .insights-research-table__topic::before {
		  display: block;
		  margin-bottom: 0.25rem;
		  color: var(--insights-blue-dark);
		  font-size: 0.67rem;
		  font-weight: 700;
		  text-transform: uppercase;
	  }
  
	  .insights-research-table__citation::before {
		  content: "Research";
	  }
  
	  .insights-research-table__topic::before {
		  content: "Broad topic";
	  }
  
	  .insights-research-table__button .insights-button {
		  width: 100%;
	  }
  
  }
  
  
  /* ========================================================================
	 SMALL MOBILE
	 ======================================================================== */
  
  @media (max-width: 479.98px) {
  
	  .insights-research-years {
		  grid-template-columns: 1fr 1fr;
	  }
  
	  .insights-button {
		  width: 100%;
	  }
  
  }
  
  
  /* ========================================================================
	 REDUCED MOTION
	 ======================================================================== */
  
  @media (prefers-reduced-motion: reduce) {
  
	  .insights-button,
	  .insights-accordion__panel,
	  .insights-accordion__icon::after,
	  .insights-research-years__button {
		  transition: none;
	  }
  
  }

  


/* ========================================================================
	 GUIDANCE PAGE
	 ======================================================================== */
  
  .guidance-page {
	  --guidance-blue: var(--irc-blue, #18a9df);
	  --guidance-blue-dark: var(--irc-blue-dark, #058fc7);
	  --guidance-navy: var(--irc-navy, #11164d);
	  --guidance-pale: #dff3fb;
	  --guidance-pale-2: #eef9fd;
	  --guidance-white: #fff;
	  --guidance-text: var(--irc-text, #17213a);
	  --guidance-line: #d8e6ec;
	  --guidance-shadow: 0 5px 14px rgba(7, 24, 79, 0.10);
	  --guidance-shadow-strong: 0 10px 24px rgba(7, 24, 79, 0.16);
  }
  
  .guidance-section-title {
	  margin: 0 0 1.35rem;
	  color: var(--guidance-blue-dark);
	  font-size: 22px;
	  font-weight: 700;
	  line-height: 1.15;
	  letter-spacing: 0.05em;
	  text-align: center;
	  text-transform: uppercase;
  }
  
  .guidance-content-heading {
	  margin: 0 0 1rem;
	  color: #111;
	  font-size: 18px;
	  font-weight: 700;
	  line-height: 1.25;
  }
  
  h3.guidance-content-heading {
	  margin-top: 20px;
  }
  
  .guidance-content-heading--spaced {
	  margin-top: 2.5rem;
  }
  
  .guidance-body-copy {
	  max-width: 1120px;
	  margin-left: auto;
	  margin-right: auto;
  }
  
  .guidance-rich-text {
	  color: var(--guidance-text);
	  line-height: 1.55;
  }
  
  .guidance-rich-text p,
  .guidance-rich-text ul,
  .guidance-rich-text ol,
  .guidance-rich-text blockquote {
	  margin-top: 0;
	  margin-bottom: 0.95rem;
  }
  
  .guidance-rich-text p:last-child,
  .guidance-rich-text ul:last-child,
  .guidance-rich-text ol:last-child,
  .guidance-rich-text blockquote:last-child {
	  margin-bottom: 0;
  }
  
  .guidance-rich-text ul,
  .guidance-rich-text ol {
	  padding-left: 1.35rem;
  }
  
  .guidance-rich-text h3,
  .guidance-rich-text h4 {
	  margin: 1.2rem 0 0.45rem;
	  color: #111;
	  font-weight: 700;
	  line-height: 1.3;
  }
  
  .guidance-rich-text a {
	  color: var(--guidance-blue-dark);
	  font-weight: 600;
	  text-decoration: underline;
	  text-underline-offset: 2px;
  }
  
  .guidance-rich-text strong,
  .guidance-rich-text b {
	  font-weight: 700;
  }
  
  
  /* ========================================================================
	 BUTTONS
	 ======================================================================== */
  
  
  
  .guidance-button--small {
	  min-width: 135px;
	  padding: 0.58rem 1.1rem;
	  font-size: 0.8rem;
  }
  
  .guidance-button-grid {
	  display: flex;
	  flex-wrap: wrap;
	  gap: 0.75rem 1rem;
	  margin-top: 1.3rem;
  }
  
  .guidance-button-grid--framework {
	  display: grid;
	  grid-template-columns: repeat(3, minmax(0, 1fr));
	  max-width: 1050px;
	  margin: 1.4rem auto 0;
  }
  
  .guidance-button-grid--framework .guidance-button {
	  width: 100%;
  }
  
  
  /* ========================================================================
	 TOP CAROUSEL
	 Based on the Homepage hero: copy left, image right, pale-blue background.
	 ======================================================================== */
  
  .guidance-hero {
	  position: relative;
	  z-index: 0;
	  margin-bottom: 2rem;
  }
  
  .guidance-hero::before {
	  content: "";
	  position: absolute;
	  inset-block: 0;
	  left: 50%;
	  z-index: -1;
	  width: 100vw;
	  transform: translateX(-50%);
	  background: var(--guidance-pale);
  }
  
  .guidance-carousel {
	  position: relative;
	  overflow: hidden;
	  min-height: 290px;
  }
  
  .guidance-carousel__track {
	  position: relative;
	  min-height: 290px;
  }
  
  .guidance-carousel__slide {
	  position: absolute;
	  inset: 0;
	  opacity: 0;
	  visibility: hidden;
	  transform: translateX(24px);
	  pointer-events: none;
	  transition:
		  opacity 0.45s ease,
		  transform 0.45s ease,
		  visibility 0.45s ease;
  }
  
  .guidance-carousel__slide.is-active {
	  position: relative;
	  opacity: 1;
	  visibility: visible;
	  transform: translateX(0);
	  pointer-events: auto;
  }
  
  .guidance-carousel__layout {
	  min-height: 290px;
	  display: grid;
	  grid-template-columns: minmax(0, 1.05fr) minmax(360px, 0.95fr);
	  align-items: stretch;
  }
  
  .guidance-carousel__content {
	  display: flex;
	  flex-direction: column;
	  justify-content: flex-start;
	  padding: 2.5rem 3.5rem 2.5rem 1rem;
  }
  
  .guidance-carousel__title {
	  margin: 0 0 0.8rem;
	  color: #111;
	  font-size: 22px;
	  font-weight: 700;
	  line-height: 1.18;
  }
  
  .guidance-carousel__copy {
	  max-width: 620px;
	  margin: 0;
	  color: var(--guidance-text);
	  font-size: 0.94rem;
	  line-height: 1.5;
  }
  
  .guidance-carousel__button-wrap {
	  margin-top: 1.15rem;
  }
  
  .guidance-carousel__image-wrap {
	  position: relative;
	  min-height: 290px;
	  overflow: hidden;
  }
  
  .guidance-carousel__image {
	  display: block;
	  width: 100%;
	  height: 100%;
  }
  
  .guidance-carousel__arrow {
	  position: absolute;
	  top: 50%;
	  z-index: 5;
	  width: 36px;
	  height: 36px;
	  display: flex;
	  align-items: center;
	  justify-content: center;
	  padding: 0;
	  border: 0;
	  border-radius: 50%;
	  background: rgba(17, 22, 77, 0.86);
	  color: #fff;
	  font-size: 27px;
	  line-height: 1;
	  cursor: pointer;
	  transform: translateY(-50%);
	  transition: background-color 0.2s ease;
	  display: none;
  }
  
  .guidance-carousel__arrow:hover,
  .guidance-carousel__arrow:focus {
	  background: var(--guidance-navy);
	  outline: 0;
  }
  
  .guidance-carousel__arrow--prev {
	  left: 12px;
  }
  
  .guidance-carousel__arrow--next {
	  right: 12px;
  }
  
  .guidance-carousel__dots {
	  position: absolute;
	  left: 50%;
	  bottom: 14px;
	  z-index: 6;
	  display: flex;
	  gap: 0.5rem;
	  transform: translateX(-50%);
  }
  
  .guidance-carousel__dot {
	  width: 9px;
	  height: 9px;
	  padding: 0;
	  border: 1px solid var(--guidance-blue-dark);
	  border-radius: 50%;
	  background: #fff;
	  cursor: pointer;
	  transition:
		  transform 0.2s ease,
		  background-color 0.2s ease;
  }
  
  .guidance-carousel__dot.is-active {
	  background: var(--guidance-blue-dark);
	  transform: scale(1.25);
  }
  
  
  /* ========================================================================
	 MAIN TABS
	 ======================================================================== */
  
  .guidance-content {
	  padding-bottom: 50px;
	  background: #fff;
  }
  
  .guidance-main-tabs__nav {
	  display: grid;
	  grid-template-columns: repeat(4, minmax(0, 1fr));
	  gap: 0.55rem;
	  margin-bottom: 1.2rem;
  }
  
  .guidance-main-tabs__button {
	  min-height: 48px;
	  padding: 0.7rem 1rem;
	  border: 0;
	  background: #d9edf7;
	  color: #6795ab;
	  font-family: inherit;
	  font-size: 0.8rem;
	  font-weight: 700;
	  line-height: 1.2;
	  text-align: center;
	  text-transform: uppercase;
	  cursor: pointer;
	  transition:
		  background-color 0.2s ease,
		  color 0.2s ease;
  }
  
  .guidance-main-tabs__button:nth-child(2) {
	  background: #cbe7f3;
  }
  
  .guidance-main-tabs__button:nth-child(3) {
	  background: #b9deed;
  }
  
  .guidance-main-tabs__button:nth-child(4) {
	  background: #aad5e8;
  }
  
  .guidance-main-tabs__button:hover,
  .guidance-main-tabs__button:focus,
  .guidance-main-tabs__button.is-active {
	  background: var(--guidance-blue-dark);
	  color: #fff;
	  outline: 0;
  }
  
  .guidance-main-tabs__panel {
	  display: none;
  }
  
  .guidance-main-tabs__panel.is-active {
	  display: block;
  }
  
  .guidance-main-tabs {
	  overflow: visible;
  }
  
  .guidance-main-tabs__nav {
	  position: sticky;
	  top: 81px;
	  z-index: 60;
	  padding-top: 0.55rem;
	  padding-bottom: 0.55rem;
	  background: #fff;
  }
  
  @media (max-width: 767.98px) {
	  .guidance-main-tabs__nav {
		  top: 81px;
	  }
  }
  
  
  /* ========================================================================
	 INTEGRATED REPORTING SUBTABS
	 ======================================================================== */
  
  .guidance-subtabs__nav {
	  display: grid;
	  grid-template-columns: repeat(4, minmax(0, 1fr));
	  gap: 0.65rem 1.4rem;
	  margin-bottom: 2rem;
	  padding: 0.75rem 0;
	  border-bottom: 1px solid var(--guidance-line);
  }
  
  .guidance-subtabs__button {
	  position: relative;
	  padding: 0.45rem 0.3rem 0.65rem;
	  border: 0;
	  background: transparent;
	  color: #6f7b82;
	  font-family: inherit;
	  font-size: 16px;
	  font-weight: 600;
	  line-height: 1.25;
	  text-align: center;
	  cursor: pointer;
  }
  
  .guidance-subtabs__button::after {
	  content: "";
	  position: absolute;
	  left: 50%;
	  bottom: 0;
	  width: 0;
	  height: 2px;
	  background: var(--guidance-blue-dark);
	  transform: translateX(-50%);
	  transition: width 0.2s ease;
  }
  
  .guidance-subtabs__button:hover,
  .guidance-subtabs__button:focus,
  .guidance-subtabs__button.is-active {
	  color: var(--guidance-blue-dark);
	  outline: 0;
  }
  
  .guidance-subtabs__button.is-active::after {
	  width: 70%;
  }
  
  .guidance-subtabs__panel {
	  display: none;
  }
  
  .guidance-subtabs__panel.is-active {
	  display: block;
  }
  
  
  /* ========================================================================
	 FRAMEWORK
	 ======================================================================== */
  
  .guidance-framework-intro {
	  display: grid;
	  grid-template-columns: minmax(180px, 0.6fr) minmax(0, 2fr);
	  gap: 1.6rem 2.2rem;
	  align-items: start;
	  max-width: 1120px;
	  margin: 0 auto 1.4rem;
  }
  
  .guidance-framework-intro__image-wrap {
	  display: flex;
	  align-items: flex-start;
	  justify-content: center;
  }
  
  .guidance-framework-intro__image {
	  display: block;
	  width: auto;
	  max-width: 100%;
	  max-height: 235px;
	  object-fit: contain;
	  margin-bottom: 0;
  }
  
  .guidance-framework-disclaimer {
	  max-width: 1120px;
	  margin: 1rem auto 0;
	  color: #59656c;
	  font-size: 0.7rem;
	  line-height: 1.45;
  }
  
  .guidance-framework-panel__media {
	  text-align: center;
  }
  
  .guidance-framework-panel__media img {
	  margin: 0 auto;
	  padding: 40px;
  }
  
  .guidance-ifrs-box {
	  position: relative;
	  color: var(--irc-navy, #11164d);
	  font-size: 1.05rem;
	  font-weight: 500;
	  line-height: 1.6;
	  box-shadow: rgba(7, 24, 79, 0.06) 0px 4px 12px;
	  margin: 2rem 0px;
	  padding: 1.4rem 1.6rem 1.4rem 2rem;
	  border-left: 4px solid var(--irc-blue-dark, #058fc7);
	  background: rgb(238, 249, 253);
  }
  
  .guidance-ifrs-box__title {
	  margin: 0 0 0.55rem;
	  color: #111;
	  font-size: 1rem;
	  font-weight: 700;
	  line-height: 1.25;
  }
  
  .guidance-ifrs-box__copy {
	  font-size: 0.85rem;
  }
  
  .guidance-ifrs-box__button-wrap {
	  margin-top: 0.9rem;
  }
  
  .guidance-requirements-intro {
	  max-width: 980px;
	  margin: 2rem auto 1rem;
	  text-align: center;
	  font-weight: 600;
  }
  
  
  /* ========================================================================
	 ACCORDIONS
	 ======================================================================== */
  
  .guidance-accordion {
	  background: #fff;
  }
  
  .guidance-accordion + .guidance-accordion {
	  margin-top: 0.55rem;
  }
  
  .guidance-accordion__toggle {
	  width: 100%;
	  display: flex;
	  align-items: center;
	  justify-content: space-between;
	  gap: 1rem;
	  border: 0;
	  font-family: inherit;
	  cursor: pointer;
  }
  
  .guidance-accordion__panel {
	  display: grid;
	  grid-template-rows: 0fr;
	  transition: grid-template-rows 0.32s ease;
  }
  
  .guidance-accordion.is-open .guidance-accordion__panel {
	  grid-template-rows: 1fr;
  }
  
  .guidance-accordion__panel-inner {
	  min-height: 0;
	  overflow: hidden;
  }
  
  .guidance-accordion__chevron {
	  width: 9px;
	  height: 9px;
	  flex: 0 0 9px;
	  border-right: 1.5px solid currentColor;
	  border-bottom: 1.5px solid currentColor;
	  transform: rotate(45deg);
	  transition: transform 0.25s ease;
  }
  
  .guidance-accordion.is-open .guidance-accordion__chevron {
	  transform: rotate(225deg);
  }
  
  .guidance-accordion__plus {
	  position: relative;
	  width: 28px;
	  height: 28px;
	  flex: 0 0 28px;
	  border-radius: 50%;
	  background: var(--guidance-blue-dark);
  }
  
  .guidance-accordion__plus::before,
  .guidance-accordion__plus::after {
	  content: "";
	  position: absolute;
	  top: 50%;
	  left: 50%;
	  width: 12px;
	  height: 2px;
	  background: #fff;
	  transform: translate(-50%, -50%);
	  transition: transform 0.25s ease;
  }
  
  .guidance-accordion__plus::after {
	  transform: translate(-50%, -50%) rotate(90deg);
  }
  
  .guidance-accordion.is-open > .guidance-accordion__toggle .guidance-accordion__plus::before {
	  transform: translate(-50%, -50%) rotate(45deg);
  }
  
  .guidance-accordion.is-open > .guidance-accordion__toggle .guidance-accordion__plus::after {
	  transform: translate(-50%, -50%) rotate(-45deg);
  }
  
  
  /* Framework infographic panels */
  
  .guidance-framework-panels {
	  max-width: 1100px;
	  margin: 0 auto;
  }
  
  .guidance-framework-panel {
	  border: 1px solid var(--guidance-blue-dark);
  }
  
  .guidance-framework-panel:nth-child(2) {
	  border-color: #3286b7;
  }
  
  .guidance-framework-panel:nth-child(3) {
	  border-color: var(--guidance-blue);
  }
  
  .guidance-framework-panel__toggle {
	  min-height: 38px;
	  padding: 0.55rem 0.8rem;
	  background: var(--guidance-navy);
	  color: #fff;
	  font-weight: 700;
	  line-height: 1.2;
	  text-align: center;
	  text-transform: uppercase;
  }
  
  .guidance-framework-panel:nth-child(2) .guidance-framework-panel__toggle {
	  background: #287cad;
  }
  
  .guidance-framework-panel:nth-child(3) .guidance-framework-panel__toggle {
	  background: var(--guidance-blue);
  }
  
  .guidance-framework-panel .guidance-accordion__panel-inner {
	  padding: 0 1rem;
  }
  
  .guidance-framework-panel.is-open .guidance-accordion__panel-inner {
	  padding-top: 1rem;
	  padding-bottom: 1rem;
  }
  
  .guidance-framework-panel__content {
	  font-size: 16px;
  }
  
  .guidance-rich-text ol li ul {
	  padding-left: 0;
  }
  
  .guidance-framework-panel__media {
	  width: 100%;
  }
  
  .guidance-framework-panel__image {
	  display: block;
	  max-width: 100%;
	  height: auto;
	  margin: 0 auto;
  }
  
  /* Remove the old text-content sizing if it is still present elsewhere. */
  .guidance-framework-panel__content {
	  font-size: inherit;
  }
  
  
  /* ========================================================================
	 GETTING STARTED
	 ======================================================================== */
  
  .guidance-quote {
	  max-width: 980px;
	  margin: 1.5rem auto;
	  padding: 1.25rem 1.5rem;
	  border-left: 4px solid var(--guidance-blue-dark);
	  background: var(--guidance-pale-2);
	  color: var(--guidance-navy);
	  font-size: 1rem;
	  font-weight: 600;
	  line-height: 1.5;
  }
  
  
  /* ========================================================================
	 INFORMATION PAPER / FAQ CARDS
	 ======================================================================== */
  
  .guidance-resource-grid,
  .guidance-faq-grid {
	  display: grid;
	  grid-template-columns: repeat(3, minmax(0, 1fr));
	  gap: 1rem;
  }
  
  .guidance-resource-card,
  .guidance-faq-card {
	  min-width: 0;
	  display: flex;
	  flex-direction: column;
	  border: 1px solid var(--guidance-line);
	  background: #fff;
	  box-shadow: 0 3px 8px rgba(7, 24, 79, 0.05);
  }
  
  .guidance-resource-card__body,
  .guidance-faq-card__body {
	  flex: 1;
	  display: flex;
	  flex-direction: column;
	  padding: 1rem 1.05rem;
  }
  
  .guidance-resource-card__title,
  .guidance-faq-card__title {
	  margin: 0 0 0.75rem;
	  color: #111;
	  font-size: 16px;
	  font-weight: 700;
	  line-height: 1.3;
  }
  
  .guidance-resource-card__date,
  .guidance-faq-card__date {
	  margin-bottom: 0.8rem;
	  color: #66737a;
	  font-size: 0.74rem;
	  line-height: 1.35;
  }
  
  .guidance-resource-card__copy {
	  margin: 0;
	  color: var(--guidance-text);
	  line-height: 1.48;
  }
  
  .guidance-resource-card__buttons,
  .guidance-faq-card__button-wrap {
	  margin-top: auto;
	  padding-top: 1rem;
  }
  
  .guidance-resource-card__buttons {
	  display: flex;
	  flex-wrap: wrap;
	  gap: 0.5rem;
  }
  
  .guidance-faq-section {
	  position: relative;
	  isolation: isolate;
  }
  
  .guidance-faq-section.has-background {
	  margin-top: 1.8rem;
	  padding: clamp(2rem, 4vw, 3.25rem) 0;
  }
  
  .guidance-faq-section.has-background::before {
	  content: "";
	  position: absolute;
	  top: 0;
	  bottom: 0;
	  left: 50%;
	  z-index: -1;
	  width: 100vw;
	  background-color: #fff;
	  background-image: var(--guidance-faq-bg, none);
	  background-position: center bottom;
	  background-size: cover;
	  background-repeat: no-repeat;
	  transform: translateX(-50%);
  }
  
  .guidance-faq-section.has-background .guidance-content-heading--spaced {
	  margin-top: 0;
  }
  
  
  /* ========================================================================
	 SECTOR-SPECIFIC RESOURCES
	 ======================================================================== */
  
  .guidance-sector-accordions {
	  max-width: 1100px;
	  margin: 0 auto;
  }
  
  .guidance-sector-accordion {
	  border: 1px solid var(--guidance-blue-dark);
  }
  
  .guidance-sector-accordion__toggle {
	  min-height: 48px;
	  padding: 0.7rem 0.9rem 0.7rem 1rem;
	  background: #fff;
	  color: var(--guidance-blue-dark);
	  font-weight: 700;
	  line-height: 1.25;
	  text-align: left;
  }
  
  .guidance-sector-accordion.is-open > .guidance-sector-accordion__toggle {
	  background: var(--guidance-pale-2);
  }
  
  .guidance-sector-accordion > .guidance-accordion__panel > .guidance-accordion__panel-inner {
	  padding: 0 1rem;
  }
  
  .guidance-sector-accordion.is-open > .guidance-accordion__panel > .guidance-accordion__panel-inner {
	  padding-top: 1rem;
	  padding-bottom: 1.2rem;
  }
  
  .guidance-sector-accordion__content {
	  margin-bottom: 1.2rem;
  }
  
  
  /* Hover cards */
  
  .guidance-sector-card-grid {
	  display: grid;
	  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
	  gap: 1rem;
	  margin: 1rem 0 1.4rem;
	  align-items: start;
  }
  
  .guidance-sector-card {
	  min-width: 0;
	  border: 1px solid var(--guidance-line);
	  background: #fff;
	  box-shadow: var(--guidance-shadow);
	  outline: 0;
  }
  
  .guidance-sector-card__visible {
	  min-height: 120px;
	  display: flex;
	  flex-direction: column;
	  align-items: center;
	  justify-content: center;
	  padding: 1rem;
	  text-align: center;
  }
  
  .guidance-sector-card__image-wrap {
	  width: 100%;
	  min-height: 70px;
	  display: flex;
	  align-items: center;
	  justify-content: center;
  }
  
  .guidance-sector-card__image {
	  display: block;
	  width: auto;
	  height: auto;
	  max-width: 82%;
	  max-height: 70px;
	  object-fit: contain;
  }
  
  .guidance-sector-card__title {
	  margin: 0.7rem 0 0;
	  color: #111;
	  font-size: 0.88rem;
	  font-weight: 700;
	  line-height: 1.25;
  }
  
  .guidance-sector-card__hover {
	  max-height: 0;
	  overflow: hidden;
	  opacity: 0;
	  visibility: hidden;
	  transform: translateY(-5px);
	  transition:
		  max-height 0.45s ease,
		  opacity 0.3s ease,
		  transform 0.3s ease,
		  visibility 0s linear 0.45s;
  }
  
  .guidance-sector-card:hover .guidance-sector-card__hover,
  .guidance-sector-card:focus .guidance-sector-card__hover,
  .guidance-sector-card:focus-within .guidance-sector-card__hover {
	  max-height: 800px;
	  opacity: 1;
	  visibility: visible;
	  transform: translateY(0);
	  transition:
		  max-height 0.55s ease,
		  opacity 0.3s ease 0.05s,
		  transform 0.3s ease,
		  visibility 0s;
  }
  
  .guidance-sector-card__hover-inner {
	  padding: 0 1rem 1rem;
  }
  
  .guidance-sector-card__copy {
	  padding-top: 0.9rem;
	  border-top: 1px solid var(--guidance-line);
	  text-align: left;
  }
  
  .guidance-sector-card__button-wrap {
	  margin-top: 0.8rem;
	  text-align: center;
  }
  
  
  
  /* Sector CTA buttons directly below the opening copy */
  
  .guidance-sector-primary-buttons {
	  margin-top: 0;
	  margin-bottom: 1.35rem;
  }
  
  
  /* Optional heading above hover cards */
  
  .guidance-sector-cards-heading {
	  margin: 1.25rem 0 0.55rem;
	  color: #111;
	  font-size: 0.9rem;
	  font-weight: 700;
	  line-height: 1.25;
  }
  
  
  /* Additional plain text blocks such as the Retirement funds King V note */
  
  .guidance-sector-additional-blocks {
	  margin: 1.15rem 0;
  }
  
  .guidance-sector-additional-block + .guidance-sector-additional-block {
	  margin-top: 1.2rem;
	  padding-top: 1.2rem;
	  border-top: 1px solid var(--guidance-line);
  }
  
  .guidance-sector-additional-block__title {
	  margin: 0 0 0.55rem;
	  color: #111;
	  font-size: 0.9rem;
	  font-weight: 700;
	  line-height: 1.25;
  }
  
  .guidance-sector-additional-block__buttons {
	  margin-top: 0.8rem;
  }
  
  
  /* Guidance box */
  
  .guidance-sector-callout__title {
	  margin: 0 0 0.55rem;
	  color: #111;
	  font-size: 0.9rem;
	  font-weight: 700;
	  line-height: 1.25;
  }
  
  
  /* Nested sub-accordions */
  
  .guidance-sector-subaccordions {
	  margin: 1rem 0;
  }
  
  .guidance-sector-subaccordion {
	  border: 1px solid #b8dce9;
  }
  
  .guidance-sector-subaccordion__toggle {
	  min-height: 42px;
	  padding: 0.6rem 0.8rem;
	  background: #f8fcfd;
	  color: var(--guidance-blue-dark);
	  font-size: 0.82rem;
	  font-weight: 700;
	  text-align: left;
  }
  
  .guidance-sector-subaccordion .guidance-accordion__panel-inner {
	  padding: 0 0.9rem;
  }
  
  .guidance-sector-subaccordion.is-open .guidance-accordion__panel-inner {
	  padding-top: 0.9rem;
	  padding-bottom: 0.9rem;
  }
  
  .guidance-sector-resources {
	  margin-top: 1.2rem;
  }
  
  .guidance-sector-resources__title {
	  margin: 0 0 0.55rem;
	  color: #111;
	  font-size: 0.9rem;
	  font-weight: 700;
	  line-height: 1.25;
  }
  
  .guidance-sector-callout {
	  margin-top: 1.3rem;
	  padding: 1rem 1.1rem;
	  background: #f4f6f7;
  }
  
  .guidance-sector-callout p {
	  margin: 0 0 0.7rem;
	  line-height: 1.45;
  }
  
  h4.guidance-sector-callout__title {
	  font-size: 20px;
	  margin-top: 0;
  }
  
  
  /* ========================================================================
	 MAIN TAB CONTENT SPACING
	 ======================================================================== */
  
  #integrated-thinking,
  #sustainability-reporting,
  #assurance {
	  padding-top: 1rem;
  }
  
  
  /* ========================================================================
	 TABLET
	 ======================================================================== */
  
  @media (max-width: 991.98px) {
  
	  .guidance-carousel__layout {
		  grid-template-columns: minmax(0, 1fr) minmax(300px, 0.85fr);
	  }
  
	  .guidance-carousel__content {
		  padding-right: 2rem;
	  }
  
	  .guidance-main-tabs__nav {
		  grid-template-columns: repeat(2, minmax(0, 1fr));
	  }
  
	  .guidance-subtabs__nav {
		  grid-template-columns: repeat(2, minmax(0, 1fr));
	  }
  
	  .guidance-button-grid--framework {
		  grid-template-columns: repeat(2, minmax(0, 1fr));
	  }
  
	  .guidance-resource-grid,
	  .guidance-faq-grid {
		  grid-template-columns: repeat(2, minmax(0, 1fr));
	  }
  
  }
  
  
  /* ========================================================================
	 MOBILE
	 ======================================================================== */
  
  @media (max-width: 767.98px) {
  
	  .guidance-carousel,
	  .guidance-carousel__track {
		  min-height: 0;
	  }
  
	  .guidance-carousel__layout {
		  grid-template-columns: 1fr;
	  }
  
	  .guidance-carousel__content {
		  order: 2;
		  padding: 1.6rem 1rem 3rem;
	  }
  
	  .guidance-carousel__image-wrap {
		  order: 1;
		  min-height: 210px;
		  clip-path: none;
	  }
  
	  .guidance-carousel__image {
		  min-height: 210px;
		  max-height: 260px;
	  }
  
	  .guidance-carousel__arrow {
		  top: 105px;
	  }
  
	  .guidance-main-tabs__nav {
		  display: flex;
		  overflow-x: auto;
		  gap: 0.45rem;
		  padding-bottom: 0.35rem;
	  }
  
	  .guidance-main-tabs__button {
		  flex: 0 0 190px;
	  }
  
	  .guidance-subtabs__nav {
		  display: flex;
		  overflow-x: auto;
		  gap: 1rem;
	  }
  
	  .guidance-subtabs__button {
		  flex: 0 0 180px;
	  }
  
	  .guidance-framework-intro {
		  grid-template-columns: 1fr;
	  }
  
	  .guidance-framework-intro__image-wrap {
		  justify-content: flex-start;
	  }
  
	  .guidance-button-grid--framework {
		  grid-template-columns: 1fr;
	  }
  
	  .guidance-resource-grid,
	  .guidance-faq-grid {
		  grid-template-columns: 1fr;
	  }
  
	  .guidance-sector-card-grid {
		  grid-template-columns: 1fr;
	  }
  
  }
  
  
  /* ========================================================================
	 SMALL MOBILE
	 ======================================================================== */
  
  @media (max-width: 479.98px) {
  
	  .guidance-button,
	  .guidance-button--small {
		  width: 100%;
	  }
  
	  .guidance-button-grid {
		  display: grid;
		  grid-template-columns: 1fr;
	  }
  
  }
  
  
  /* ========================================================================
	 REDUCED MOTION
	 ======================================================================== */
  
  @media (prefers-reduced-motion: reduce) {
  
	  .guidance-button,
	  .guidance-carousel__slide,
	  .guidance-carousel__dot,
	  .guidance-accordion__panel,
	  .guidance-accordion__chevron,
	  .guidance-accordion__plus::before,
	  .guidance-accordion__plus::after,
	  .guidance-sector-card__hover {
		  transition: none;
	  }
  
  }

/* Always show the card details – no hover/focus reveal. */
  .guidance-sector-card__hover {
	  max-height: none;
	  overflow: visible;
	  opacity: 1;
	  visibility: visible;
	  transform: none;
	  transition: none;
  }
  
  .guidance-sector-card:hover .guidance-sector-card__hover,
  .guidance-sector-card:focus .guidance-sector-card__hover,
  .guidance-sector-card:focus-within .guidance-sector-card__hover {
	  max-height: none;
	  opacity: 1;
	  visibility: visible;
	  transform: none;
	  transition: none;
  }
  
  .guidance-sector-card {
	  display: flex;
	  flex-direction: column;
	  height: 100%;
  }
  
  .guidance-sector-card__hover {
	  flex: 1 1 auto;
  }
  
  .guidance-sector-card__hover-inner {
	  height: 100%;
	  display: flex;
	  flex-direction: column;
  }
  
  .guidance-sector-card__button-wrap {
	  margin-top: auto;
	  padding-top: 0.8rem;
  }
  
  /* TWO CARDS: always side by side on desktop/tablet. */
  .guidance-sector-card-grid--count-2 {
	  grid-template-columns: repeat(2, minmax(0, 1fr));
	  align-items: stretch;
  }
  
  /* ONE CARD: full width, logo/image left and text/button right. */
  .guidance-sector-card-grid--count-1 {
	  grid-template-columns: minmax(0, 1fr);
  }
  
  .guidance-sector-card-grid--count-1 .guidance-sector-card {
	  display: grid;
	  grid-template-columns: minmax(180px, 0.65fr) minmax(0, 1.6fr);
	  align-items: stretch;
  }
  
  .guidance-sector-card-grid--count-1 .guidance-sector-card__visible {
	  min-height: 180px;
	  height: 100%;
	  padding: 1.5rem;
	  border-right: 1px solid var(--guidance-line);
  }
  
  .guidance-sector-card-grid--count-1 .guidance-sector-card__image-wrap {
	  min-height: 90px;
  }
  
  .guidance-sector-card-grid--count-1 .guidance-sector-card__image {
	  max-width: 88%;
	  max-height: 105px;
  }
  
  .guidance-sector-card-grid--count-1 .guidance-sector-card__hover {
	  display: flex;
	  align-items: stretch;
  }
  
  .guidance-sector-card-grid--count-1 .guidance-sector-card__hover-inner {
	  width: 100%;
	  justify-content: center;
	  padding: 1.5rem;
  }
  
  .guidance-sector-card-grid--count-1 .guidance-sector-card__copy {
	  padding-top: 0;
	  border-top: 0;
  }
  
  .guidance-sector-card-grid--count-1 .guidance-sector-card__button-wrap {
	  text-align: left;
  }
  
  /* 3+ cards can continue using the existing responsive grid behaviour. */
  .guidance-sector-card-grid--count-3 {
	  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
	  align-items: stretch;
  }
  
  /* Mobile: stack everything cleanly. */
  @media (max-width: 767.98px) {
  
	  .guidance-sector-card-grid--count-1,
	  .guidance-sector-card-grid--count-2,
	  .guidance-sector-card-grid--count-3 {
		  grid-template-columns: 1fr;
	  }
  
	  .guidance-sector-card-grid--count-1 .guidance-sector-card {
		  grid-template-columns: 1fr;
	  }
  
	  .guidance-sector-card-grid--count-1 .guidance-sector-card__visible {
		  min-height: 120px;
		  border-right: 0;
		  border-bottom: 1px solid var(--guidance-line);
	  }
  
	  .guidance-sector-card-grid--count-1 .guidance-sector-card__hover-inner {
		  padding: 1rem;
	  }
  
	  .guidance-sector-card-grid--count-1 .guidance-sector-card__button-wrap {
		  text-align: center;
	  }
  }


  


 /* ========================================================================
	 EVENTS PAGE
	 ======================================================================== */
  
  .events-page {
	  --events-blue: var(--irc-blue, #18a9df);
	  --events-blue-dark: var(--irc-blue-dark, #058fc7);
	  --events-navy: var(--irc-navy, #11164d);
	  --events-pale: #dff3fb;
	  --events-pale-2: #eef9fd;
	  --events-white: #fff;
	  --events-text: var(--irc-text, #17213a);
	  --events-border: #6fc1e4;
	  --events-line: #d7e3e8;
	  --events-shadow: 0 5px 14px rgba(7, 24, 79, 0.10);
	  --events-shadow-strong: 0 10px 24px rgba(7, 24, 79, 0.15);
  }
  
  .events-section-title {
	  margin: 0 0 1.4rem;
	  color: var(--events-blue-dark);
	  font-size: clamp(1.35rem, 2.3vw, 2rem);
	  font-weight: 700;
	  line-height: 1.15;
	  letter-spacing: 0.05em;
	  text-align: center;
	  text-transform: uppercase;
  }
  
  .events-section-title--current {
	  margin-bottom: 1rem;
  }
  
  .events-rich-text p,
  .events-rich-text ul,
  .events-rich-text ol {
	  margin-top: 0;
	  margin-bottom: 0.9rem;
  }
  
  .events-rich-text p:last-child,
  .events-rich-text ul:last-child,
  .events-rich-text ol:last-child {
	  margin-bottom: 0;
  }
  
  .events-rich-text ul,
  .events-rich-text ol {
	  padding-left: 1.3rem;
  }
  
  .events-rich-text a {
	  color: var(--events-blue-dark);
	  font-weight: 600;
	  text-decoration: underline;
	  text-underline-offset: 2px;
  }
  
  .events-rich-text strong,
  .events-rich-text b {
	  font-weight: 700;
  }
  
  
  /* ========================================================================
	 CURRENT EVENT
	 ======================================================================== */
  
  .events-current {
	  position: relative;
	  isolation: isolate;
	  padding: clamp(2.35rem, 4.5vw, 4.25rem) 0 clamp(2.1rem, 4vw, 3.5rem);
	  color: #fff;
	  margin-bottom: 40px;
  }
  
  .events-current::before {
	  content: "";
	  position: absolute;
	  inset-block: 0;
	  left: 50%;
	  z-index: -1;
	  width: 100vw;
	  transform: translateX(-50%);
	  background-color: var(--events-navy);
	  background-image:
		  linear-gradient(135deg, rgba(17, 22, 77, 0.18), rgba(17, 22, 77, 0.02)),
		  var(--events-current-bg, linear-gradient(135deg, #11164d 0%, #142477 58%, #0b3a8b 100%));
	  background-position: center;
	  background-size: cover;
	  background-repeat: no-repeat;
  }
  
  .events-current__inner {
	  max-width: 1120px;
	  margin: 0 auto;
	  text-align: center;
  }
  
  .events-current__title {
	  margin: 0;
	  color: #fff;
	  font-size: clamp(2rem, 4.2vw, 3.35rem);
	  font-weight: 400;
	  line-height: 1.08;
	  letter-spacing: 0.015em;
	  text-align: center;
	  text-transform: none;
  }
  
  .events-current__title-year {
	  color: var(--events-blue);
	  font-weight: 600;
  }
  
  .events-current__rule {
	  width: 100%;
	  height: 3px;
	  margin: 0.8rem auto 0.9rem;
	  background: #fff;
  }
  
  .events-current__theme {
	  margin: 20px 0;
	  color: #fff;
	  font-weight: 700;
	  line-height: 1.25;
  }
  
  .events-current__intro {
	  max-width: 920px;
	  margin: 0 auto;
	  color: #fff;
	  font-size: 0.94rem;
	  line-height: 1.48;
  }
  
  .events-current__intro p {
	  margin-bottom: 0.45rem;
  }
  
  .events-current__meta {
	  display: inline-grid;
	  grid-template-columns: repeat(2, minmax(210px, 1fr));
	  align-items: stretch;
	  margin-top: 1.2rem;
	  overflow: hidden;
	  border-radius: 999px;
	  background: #fff;
	  color: var(--events-navy);
	  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.12);
	  text-align: left;
  }
  
  .events-current__meta-item {
	  min-width: 0;
	  display: grid;
	  grid-template-columns: auto minmax(0, 1fr);
	  align-items: center;
	  gap: 0.65rem;
	  padding: 20px;
  }
  
  .events-current__meta-item + .events-current__meta-item {
	  border-left: 1px solid rgba(17, 22, 77, 0.18);
  }
  
  .events-current__meta-label {
	  color: var(--events-blue-dark);
	  font-weight: 700;
	  text-transform: uppercase;
  }
  
  .events-current__meta-value {
	  color: #4d5c67;
	  font-weight: 500;
	  white-space: nowrap;
  }
  
  .events-current__buttons {
	  display: flex;
	  align-items: center;
	  justify-content: space-around;
	  gap: 1.5rem;
	  margin: 30px 0 0 0;
  }
  
  .events-current__button {
	  display: inline-flex;
	  align-items: center;
	  justify-content: center;
	  min-width: 205px;
	  padding: 15px;
	  border: 1px solid rgba(255, 255, 255, 0.82);
	  border-radius: 999px;
	  background: transparent;
	  color: #fff;
	  font-size: 0.8rem;
	  font-weight: 500;
	  line-height: 1;
	  text-align: center;
	  text-decoration: none;
	  transition:
		  background-color 0.2s ease,
		  color 0.2s ease,
		  transform 0.2s ease,
		  border-color 0.2s ease;
  }
  
  .events-current__button::before {
	  /* content: "";
	  flex: 0 0 auto;
	  width: 17px;
	  height: 12px;
	  margin-right: 0.55rem;
	  border: 1px solid currentColor;
	  border-radius: 1px;
	  opacity: 0.9; */
  }
  
  .events-current__button--secondary::before {
	  width: 15px;
	  height: 12px;
	  border-radius: 0;
	  background:
		  linear-gradient(currentColor, currentColor) 50% 33% / 100% 1px no-repeat,
		  linear-gradient(currentColor, currentColor) 50% 66% / 100% 1px no-repeat,
		  linear-gradient(currentColor, currentColor) 33% 50% / 1px 100% no-repeat;
  }
  
  .events-current__button:hover,
  .events-current__button:focus {
	  border-color: #fff;
	  background: #fff;
	  color: var(--events-navy);
	  text-decoration: none;
	  transform: translateY(-2px);
  }
  
  .events-sponsors__grid {
	  display: grid;
	  grid-template-columns: repeat(4, minmax(0, 1fr));
	  gap: 1.6rem 2.2rem;
	  max-width: 1050px;
	  margin: 0 auto;
	  align-items: center;
  }
  
  .events-sponsor-logo {
	  min-width: 0;
	  min-height: 72px;
	  display: flex;
	  align-items: center;
	  justify-content: center;
	  padding: 0.6rem;
	  text-decoration: none;
	  transition: opacity 0.2s ease;
  }
  
  .events-sponsors__intro.events-rich-text {
	  margin-bottom: 20px;
	  color: var(--irc-blue, #18a9df);
  }
  
  .events-sponsor-logo:hover,
  .events-sponsor-logo:focus {
	  opacity: 0.72;
  }
  
  .events-sponsor-logo__image {
	  display: block;
	  width: auto;
	  height: auto;
	  max-width: 100%;
	  max-height: 65px;
	  object-fit: contain;
  }
  
  
 
 
  /* ========================================================================
	 CURRENT EVENT PROGRAMME
	 ======================================================================== */
 
  .events-current-programme {
	  padding: 0 0 50px;
	  background: #fff;
  }
 
  .events-current-programme .container {
	  max-width: 1140px;
  }
 
  .events-current-programme__title {
	  margin-bottom: 1.4rem;
  }
 
  .events-current-programme__table {
	  max-width: 1100px;
	  margin: 0 auto;
	  border-top: 1px solid var(--events-line);
	  border-left: 1px solid var(--events-line);
	  background: #fff;
	  box-shadow: 0 4px 10px rgba(7, 24, 79, 0.05);
  }
 
  .events-current-programme__head,
  .events-current-programme__row {
	  display: grid;
	  grid-template-columns:
		  minmax(120px, 0.45fr)
		  minmax(220px, 0.9fr)
		  minmax(0, 1.65fr);
  }
 
  .events-current-programme__head {
	  background: #f8fbfc;
	  color: #111;
	  font-weight: 700;
  }
 
  .events-current-programme__head > div,
  .events-current-programme__cell {
	  min-width: 0;
	  padding: 0.62rem 14px;
	  border-right: 1px solid var(--events-line);
	  border-bottom: 1px solid var(--events-line);
  }
 
  .events-current-programme__cell {
	  line-height: 1.4;
  }
 
  .events-current-programme__cell--time {
	  font-weight: 700;
	  white-space: nowrap;
  }
 
  .events-current-programme__cell p {
	  margin-bottom: 0.45rem;
  }
 
  .events-current-programme__cell strong {
	  color: #2168A4;
  }
 
  .events-current-programme__cell ul,
  .events-current-programme__cell ol {
	  margin-bottom: 0.45rem;
  }
 
  .events-current-programme__row--general {
	  grid-template-columns:
		  minmax(120px, 0.45fr)
		  minmax(0, 2.55fr);
	  background: var(--events-pale-2);
  }
 
  .events-current-programme__cell--general {
	  display: flex;
	  align-items: center;
	  font-weight: 700;
  }
 
 
  /* ========================================================================
	 BUTTONS
	 ======================================================================== */
  
  
  
  .events-button--secondary {
	  background: var(--events-blue-dark);
  }
  
  .events-button--small {
	  min-width: 150px;
	  padding: 0.58rem 1.2rem;
	  font-size: 0.8rem;
  }
 
   
   
   /* ========================================================================
	  PREVIOUS CONFERENCES
	  ======================================================================== */
   
   .events-previous {
	   position: relative;
	   z-index: 0;
	   padding: 50px 0;
   }
   
   .events-previous::before {
	   content: "";
	   position: absolute;
	   inset-block: 0;
	   left: 50%;
	   z-index: -1;
	   width: 100vw;
	   transform: translateX(-50%);
	   background: var(--events-pale);
   }
   
   .events-previous__list {
	   max-width: 1100px;
	   margin: 0 auto;
   }
   
   
   /* ========================================================================
	  CONFERENCE ACCORDIONS
	  ======================================================================== */
   
   .events-conference {
	   margin-bottom: 0.85rem;
	   border: 1px solid var(--events-blue-dark);
	   background: #fff;
	   box-shadow: var(--events-shadow);
   }
   
   .events-conference__toggle {
	   width: 100%;
	   display: flex;
	   align-items: center;
	   justify-content: space-between;
	   gap: 1rem;
	   padding: 16px 1rem;
	   border: 0;
	   background: #fff;
	   color: var(--events-blue-dark);
	   font-family: inherit;
	   text-align: left;
	   cursor: pointer;
   }
   
   .events-conference__toggle-title {
	   font-weight: 700;
   }
   
   .events-conference__toggle-icon {
	   position: relative;
	   width: 28px;
	   height: 28px;
	   flex: 0 0 28px;
	   border-radius: 50%;
	   background: var(--events-blue-dark);
	   transition: transform 0.25s ease;
   }
   
   .events-conference__toggle-icon span {
	   position: absolute;
	   top: 50%;
	   left: 50%;
	   width: 12px;
	   height: 2px;
	   background: #fff;
	   transform: translate(-50%, -50%);
	   transition: transform 0.25s ease;
   }
   
   .events-conference__toggle-icon span:last-child {
	   transform: translate(-50%, -50%) rotate(90deg);
   }
   
   .events-conference.is-open .events-conference__toggle-icon {
	   transform: rotate(45deg);
   }
   
   .events-conference__panel {
	   display: grid;
	   grid-template-rows: 0fr;
	   transition: grid-template-rows 0.32s ease;
   }
   
   .events-conference.is-open .events-conference__panel {
	   grid-template-rows: 1fr;
   }
   
   .events-conference__panel-inner {
	   min-height: 0;
	   overflow: hidden;
   }
   
   .events-conference__content {
	   padding: 0 1.2rem 1.2rem;
   }
   
   .events-conference__intro {
	   padding-top: 0.4rem;
	   font-weight: 600;
   }
   
   .events-conference__meta {
	   margin-top: 1rem;
   }
   
   .events-conference__meta p {
	   margin: 0.2rem 0;
   }
   
   
   /* ========================================================================
	  EVENT RESOURCE COLUMNS
	  ======================================================================== */
   
   .events-conference__resources {
	   display: grid;
	   grid-template-columns: repeat(3, minmax(0, 1fr));
	   gap: 1.3rem 2rem;
	   margin-top: 1.5rem;
   }
   
   .events-resource {
	   min-width: 0;
	   text-align: center;
   }
   
   .events-resource__title {
	   margin: 0 0 0.55rem;
	   color: #111;
	   font-weight: 700;
	   font-size: 16px;
   }
   
   .events-resource__copy {
	   line-height: 1.4;
   }
   
   .events-resource__button-wrap {
	   margin-top: 0.7rem;
   }
   
   
   /* ========================================================================
	  PROGRAMME NESTED ACCORDION
	  ======================================================================== */
   
   .events-programme {
	   margin-top: 1.4rem;
	   border-top: 1px solid var(--events-line);
	   box-shadow: 0 4px 10px rgba(7, 24, 79, 0.05);
   }
   
   .events-programme__toggle {
	   width: 100%;
	   display: flex;
	   align-items: center;
	   justify-content: space-between;
	   gap: 1rem;
	   padding: 0.7rem 0.75rem;
	   border: 0;
	   background: #fff;
	   color: var(--events-blue-dark);
	   font-family: inherit;
	   font-weight: 600;
	   text-align: left;
	   cursor: pointer;
   }
   
   .events-programme__chevron {
	   width: 10px;
	   height: 10px;
	   flex: 0 0 10px;
	   border-right: 1.5px solid currentColor;
	   border-bottom: 1.5px solid currentColor;
	   transform: rotate(45deg);
	   transition: transform 0.25s ease;
   }
   
   .events-programme.is-open .events-programme__chevron {
	   transform: rotate(225deg);
   }
   
   .events-programme__panel {
	   display: grid;
	   grid-template-rows: 0fr;
	   transition: grid-template-rows 0.32s ease;
   }
   
   .events-programme.is-open .events-programme__panel {
	   grid-template-rows: 1fr;
   }
   
   .events-programme__panel-inner {
	   min-height: 0;
	   overflow: hidden;
   }
   
   .events-programme__table {
	   border-top: 1px solid var(--events-line);
	   background: #fff;
   }
   
   .events-programme__head,
   .events-programme__row {
	   display: grid;
	   grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.65fr);
   }
   
   .events-programme__head {
	   background: #f8fbfc;
	   color: #111;
	   font-weight: 700;
   }
   
   .events-programme__head > div,
   .events-programme__cell {
	   padding: 0.62rem 14px;
	   border-bottom: 1px solid var(--events-line);
   }
   
   .events-programme__head > div:first-child,
   .events-programme__cell:first-child {
	   border-right: 1px solid var(--events-line);
   }
   
   .events-programme__cell {
	   min-width: 0;
   }
   
   .events-programme__cell p {
	   margin-bottom: 0.45rem;
   }
   
   .events-programme__cell strong {
		 color: #2168A4;
	 }
   
   .events-programme__cell ul,
   .events-programme__cell ol {
	   margin-bottom: 0.45rem;
   }
   
   
   /* ========================================================================
	  TABLET
	  ======================================================================== */
   
   @media (max-width: 991.98px) {
   
	   .events-sponsors__grid {
		   grid-template-columns: repeat(3, minmax(0, 1fr));
	   }
   
	   .events-conference__resources {
		   gap: 1rem;
	   }
   
   }
   
   
   /* ========================================================================
	  MOBILE
	  ======================================================================== */
   
   @media (max-width: 767.98px) {
   
	   .events-current__content {
		   text-align: left;
	   }
	   
	   .events-current__meta-item + .events-current__meta-item{
		   border-left: 0;
	   }
   
	   .events-current__buttons {
		   justify-content: flex-start;
	   }
   
	   .events-sponsors__grid {
		   grid-template-columns: repeat(2, minmax(0, 1fr));
		   gap: 1.2rem;
	   }
   
	   .events-conference__resources {
		   grid-template-columns: 1fr;
	   }
   
	   .events-programme__head {
		   display: none;
	   }
   
	   .events-programme__row {
		   grid-template-columns: 1fr;
		   padding: 0.65rem 0;
		   border-bottom: 1px solid var(--events-line);
	   }
   
	   .events-programme__cell {
		   border-bottom: 0;
	   }
   
	   .events-programme__cell:first-child {
		   border-right: 0;
		   font-weight: 700;
	   }
   
	   .events-programme__cell::before {
		   display: block;
		   margin-bottom: 0.28rem;
		   color: var(--events-blue-dark);
		   font-size: 0.68rem;
		   font-weight: 700;
		   text-transform: uppercase;
	   }
   
	   .events-programme__cell:first-child::before {
		   content: "Session / Topic";
	   }
   
	   .events-programme__cell:last-child::before {
		   content: "Speaker(s) / Panellist(s)";
	   }
	   
	   .events-current__meta{
		   grid-template-columns: repeat(1, minmax(210px, 1fr));
		   padding: 15px 20px;
	   }
   
   }
   
   
 
 
  @media (max-width: 767.98px) {
 
	  .events-current-programme {
		  padding-bottom: 40px;
	  }
 
	  .events-current-programme__head {
		  display: none;
	  }
 
	  .events-current-programme__row,
	  .events-current-programme__row--general {
		  grid-template-columns: 1fr;
		  padding: 0.65rem 0;
		  border-right: 1px solid var(--events-line);
		  border-bottom: 1px solid var(--events-line);
	  }
 
	  .events-current-programme__head > div,
	  .events-current-programme__cell {
		  border-right: 0;
		  border-bottom: 0;
	  }
 
	  .events-current-programme__cell {
		  padding: 0.5rem 14px;
	  }
 
	  .events-current-programme__cell::before {
		  display: block;
		  margin-bottom: 0.28rem;
		  color: var(--events-blue-dark);
		  font-size: 0.68rem;
		  font-weight: 700;
		  text-transform: uppercase;
	  }
 
	  .events-current-programme__cell--time::before {
		  content: "Time";
	  }
 
	  .events-current-programme__cell--topic::before {
		  content: "Session / Topic";
	  }
 
	  .events-current-programme__cell--speakers::before {
		  content: "Speaker(s) / Panellist(s)";
	  }
 
	  .events-current-programme__cell--general {
		  display: block;
		  text-align: left;
	  }
 
	  .events-current-programme__cell--general::before {
		  display: none;
		  content: none;
	  }
 
  }
 
 
   /* ========================================================================
	  SMALL MOBILE
	  ======================================================================== */
   
   @media (max-width: 479.98px) {
   
	   .events-button {
		   width: 100%;
	   }
   
   }
   
   
   /* ========================================================================
	  REDUCED MOTION
	  ======================================================================== */
   
   @media (prefers-reduced-motion: reduce) {
   
	   .events-button,
	   .events-conference__toggle-icon,
	   .events-conference__toggle-icon span,
	   .events-conference__panel,
	   .events-programme__chevron,
	   .events-programme__panel {
		   transition: none;
	   }
   
   }

  
  
  /* ========================================================================
	 MEMBERSHIPS PAGE
	 ======================================================================== */
  
  .membership-page {
	  --membership-light-blue: #e7f7fc;
	  --membership-blue: var(--irc-blue, #18a9df);
	  --membership-blue-dark: var(--irc-blue-dark, #008fc9);
	  --membership-navy: var(--irc-navy, #07184f);
	  --membership-border: var(--irc-border, #dce5eb);
	  --membership-shadow: 0 8px 20px rgba(7, 24, 79, 0.10);
	  --membership-radius: 0;
  }
  
  .membership-section-title {
	  margin: 0 0 1.5rem;
	  color: var(--membership-blue-dark);
	  font-size: 22px;
	  font-weight: 700;
	  line-height: 1.15;
	  letter-spacing: 0.05em;
	  text-align: center;
	  text-transform: uppercase;
  }
  
  
  /* ========================================================================
	 MEMBER BENEFITS
	 ======================================================================== */
  
  .membership-benefits {
	  padding: 50px 0;
	  background: var(--membership-light-blue);
  }
  
  .membership-benefits__intro,
  .membership-benefits__closing {
	  max-width: 1120px;
	  margin-left: auto;
	  margin-right: auto;
	  text-align: center;
  }
  
  .membership-benefits__intro {
	  margin-bottom: 2.75rem;
  }
  
  .membership-benefits__intro p,
  .membership-benefits__closing p {
	  margin: 0 0 1rem;
  }
  
  .membership-benefits__intro p:last-child,
  .membership-benefits__closing p:last-child {
	  margin-bottom: 0;
  }
  
  .membership-benefits__closing {
	  margin-top: 2.4rem;
	  margin-bottom: 0;
  }
  
  .membership-benefits {
	  background-color: var(--membership-light-blue);
	  background-image: var(--membership-benefits-bg, none);
	  background-position: top;
	  background-size: contain;
	  background-repeat: no-repeat;
  }
  
  .membership-benefits.has-background > .container {
	  position: relative;
	  z-index: 1;
  }
  
  
  /* ------------------------------------------------------------------------
	 HOVER BENEFIT CARDS
	 ------------------------------------------------------------------------ */
  
  .membership-benefit-grid {
	  display: grid;
	  grid-template-columns: repeat(3, minmax(0, 1fr));
	  gap: 2rem;
  }
  
  .membership-benefit-card {
	  position: relative;
	  min-height: 380px;
	  overflow: hidden;
	  background-color: #fff;
	  background-image: var(--membership-benefit-bg, none);
	  background-position: center;
	  background-size: cover;
	  background-repeat: no-repeat;
	  box-shadow: var(--membership-shadow);
	  outline: 0;
	  isolation: isolate;
  }
  
  .membership-benefit-card::after {
	  content: "";
	  position: absolute;
	  inset: 0;
	  z-index: 1;
	  background:
		  linear-gradient(
			  145deg,
			  rgba(14, 17, 67, 0.97) 0%,
			  rgba(22, 38, 92, 0.95) 55%,
			  rgba(15, 123, 184, 0.92) 100%
		  );
	  opacity: 0;
	  transition: opacity 0.3s ease;
  }
  
  .membership-benefit-card__front,
  .membership-benefit-card__hover {
	  position: absolute;
	  inset: 0;
	  z-index: 2;
	  display: flex;
	  align-items: center;
	  justify-content: center;
	  padding: 2rem;
	  transition:
		  opacity 0.3s ease,
		  transform 0.3s ease;
  }
  
  .membership-benefit-card__front {
	  opacity: 1;
	  transform: translateY(0);
  }
  
  .membership-benefit-card__hover {
	  align-items: flex-start;
	  justify-content: flex-start;
	  opacity: 0;
	  transform: translateY(10px);
	  color: #fff;
  }
  
  .membership-benefit-card__title {
	  max-width: 80%;
	  margin: 0;
	  color: #111;
	  font-size: 22px;
	  font-weight: 700;
	  line-height: 1.2;
	  text-align: center;
  }
  
  .membership-benefit-card__bullets {
	  width: 100%;
	  margin: 0;
	  padding: 0;
  }
  
  .membership-benefit-card__bullets li {
	  margin: 0 0 1.6rem;
	  padding-left: 0.35rem;
	  font-size: 1rem;
	  line-height: 1.45;
  }
  
  .membership-benefit-card__bullets li:before{
	  display: none;
  }
  
  .membership-benefit-card__bullets li:last-child {
	  margin-bottom: 0;
  }
  
  .membership-benefit-card:hover::after,
  .membership-benefit-card:focus::after,
  .membership-benefit-card:focus-within::after {
	  opacity: 1;
  }
  
  .membership-benefit-card:hover .membership-benefit-card__front,
  .membership-benefit-card:focus .membership-benefit-card__front,
  .membership-benefit-card:focus-within .membership-benefit-card__front {
	  opacity: 0;
	  transform: translateY(-10px);
  }
  
  .membership-benefit-card:hover .membership-benefit-card__hover,
  .membership-benefit-card:focus .membership-benefit-card__hover,
  .membership-benefit-card:focus-within .membership-benefit-card__hover {
	  opacity: 1;
	  transform: translateY(0);
  }
  
  .membership-benefit-card__hover-content {
	  width: 100%;
	  font-size: 1rem;
	  line-height: 1.45;
  }
  
  .membership-benefit-card__hover-content > *:first-child {
	  margin-top: 0;
  }
  
  .membership-benefit-card__hover-content > *:last-child {
	  margin-bottom: 0;
  }
  
  .membership-benefit-card__hover-content p,
  .membership-benefit-card__hover-content ul,
  .membership-benefit-card__hover-content ol {
	  margin-top: 0;
	  margin-bottom: 1rem;
  }
  
  .membership-benefit-card__hover-content ul,
  .membership-benefit-card__hover-content ol {
	  padding-left: 1.4rem;
  }
  
  .membership-benefit-card__hover-content li {
	  margin-bottom: 0.75rem;
	  padding-left: 0.2rem;
  }
  
  .membership-benefit-card__hover-content li:before{
	display: none;
}
  
  .membership-benefit-card__hover-content li:last-child {
	  margin-bottom: 0;
  }
  
  .membership-benefit-card__hover-content a {
	  color: #fff;
	  font-weight: 600;
	  text-decoration: underline;
	  text-underline-offset: 2px;
  }
  
  .membership-benefit-card__hover-content a:hover,
  .membership-benefit-card__hover-content a:focus {
	  color: #fff;
	  text-decoration-thickness: 2px;
  }
  
  .membership-benefit-card__hover-content em,
  .membership-benefit-card__hover-content i {
	  font-style: italic;
  }
  
  
  /* ------------------------------------------------------------------------
	 MEMBERSHIP CATEGORY CARDS
	 ------------------------------------------------------------------------ */
  
  .membership-category-grid {
	  display: grid;
	  grid-template-columns: repeat(3, minmax(0, 1fr));
	  gap: 2rem;
	  align-items: start;
  }
  
  .membership-category-card {
	  position: relative;
	  margin-top: 45px;
	  padding-top: 46px;
	  background: transparent;
	  text-align: center;
	  filter: drop-shadow(0 7px 11px rgba(7, 24, 79, 0.12));
	  outline: 0;
	  z-index: 1;
	  transition:
		  filter 0.25s ease,
		  transform 0.25s ease;
  }
  
  .membership-category-card:hover,
  .membership-category-card:focus,
  .membership-category-card:focus-within {
	  z-index: 2;
	  filter: drop-shadow(0 11px 18px rgba(7, 24, 79, 0.17));
  }
  
  .membership-category-card__body {
	  min-height: 220px;
	  display: flex;
	  flex-direction: column;
	  align-items: center;
	  padding: 4.6rem 2rem 2rem;
	  background: #fff;
	  text-align: center;
  }
  
  .membership-category-card.has-icon .membership-category-card__body {
	  -webkit-mask-image: radial-gradient(
		  circle 60px at 50% 0,
		  transparent 0 60px,
		  #000 60px
	  );
	  mask-image: radial-gradient(
		  circle 60px at 50% 0,
		  transparent 0 60px,
		  #000 60px
	  );
	  -webkit-mask-repeat: no-repeat;
	  mask-repeat: no-repeat;
	  -webkit-mask-size: 100% 100%;
	  mask-size: 100% 100%;
  }
  
  .membership-category-card__icon-wrap {
	  position: absolute;
	  top: 0;
	  left: 50%;
	  z-index: 3;
	  width: 94px;
	  height: 94px;
	  display: flex;
	  align-items: center;
	  justify-content: center;
	  padding: 13px;
	  border: 4px solid #fff;
	  border-radius: 50%;
	  background: var(--membership-light-blue);
	  box-shadow: 0 4px 10px rgba(7, 24, 79, 0.10);
	  transform: translateX(-50%);
  }
  
  .membership-category-card__icon {
	  display: block;
	  width: 100%;
	  height: 100%;
	  object-fit: contain;
	  margin-bottom: 0;
  }
  
  .membership-category-card__title {
	  margin: 0 0 0.8rem;
	  color: #111;
	  font-size: 1.15rem;
	  font-weight: 700;
	  line-height: 1.25;
  }
  
  .membership-category-card__copy {
	  width: 100%;
	  font-size: 0.95rem;
	  line-height: 1.45;
  }
  
  .membership-category-card__copy p {
	  margin: 0;
  }
  
  .membership-category-card__hover-content {
	  width: 100%;
	  max-height: 0;
	  margin-top: 0;
	  overflow: hidden;
	  opacity: 0;
	  visibility: hidden;
	  text-align: left;
	  transform: translateY(-6px);
	  transition:
		  max-height 0.45s ease,
		  margin-top 0.35s ease,
		  opacity 0.28s ease,
		  transform 0.35s ease,
		  visibility 0s linear 0.45s;
  }
  
  .membership-category-card:hover .membership-category-card__hover-content,
  .membership-category-card:focus .membership-category-card__hover-content,
  .membership-category-card:focus-within .membership-category-card__hover-content {
	  max-height: 900px;
	  margin-top: 1.35rem;
	  opacity: 1;
	  visibility: visible;
	  transform: translateY(0);
	  transition:
		  max-height 0.55s ease,
		  margin-top 0.35s ease,
		  opacity 0.32s ease 0.08s,
		  transform 0.35s ease 0.05s,
		  visibility 0s;
  }
  
  .membership-category-card__hover-inner {
	  padding-top: 1.15rem;
	  border-top: 1px solid rgba(7, 24, 79, 0.12);
	  color: var(--membership-navy);
	  font-size: 0.9rem;
	  line-height: 1.5;
  }
  
  .membership-category-card__hover-inner p,
  .membership-category-card__hover-inner ul,
  .membership-category-card__hover-inner ol {
	  margin-top: 0;
	  margin-bottom: 0.85rem;
  }
  
  .membership-category-card__hover-inner p:last-child,
  .membership-category-card__hover-inner ul:last-child,
  .membership-category-card__hover-inner ol:last-child {
	  margin-bottom: 0;
  }
  
  .membership-category-card__hover-inner ul,
  .membership-category-card__hover-inner ol {
	  padding-left: 0;
  }
  
  .membership-category-card__hover-inner li {
	  margin-bottom: 0.35rem;
  }
  
  .membership-category-card__hover-inner a {
	  color: var(--membership-blue-dark);
	  font-weight: 600;
	  text-decoration: underline;
	  text-underline-offset: 2px;
  }
  
  .membership-category-card__hover-inner strong,
  .membership-category-card__hover-inner b {
	  font-weight: 700;
  }
  
  .membership-category-card:nth-child(1).has-icon .membership-category-card__icon-wrap {
	  border: 10px solid #2168A4;
  }
  
  .membership-category-card:nth-child(2).has-icon .membership-category-card__icon-wrap {
	  border: 10px solid #4683B5;
  }
  
  .membership-category-card:nth-child(3).has-icon .membership-category-card__icon-wrap {
	  border: 10px solid #6C9EC6;
  }
  
  /* ========================================================================
	 FEE STRUCTURE
	 ======================================================================== */
  
  .membership-fees {
	  position: relative;
	  padding: 50px 0 0 0;
	  background: #fff;
  }
  
  .membership-fees__intro {
	  max-width: 1050px;
	  margin: 0 auto 0.75rem;
	  text-align: center;
  }
  
  .membership-fees__intro p {
	  margin: 0 0 0.75rem;
  }
  
  .membership-fees__period {
	  margin: 0 auto 2rem;
	  font-weight: 700;
	  text-align: center;
  }
  
  .membership-fee-grid {
	  display: grid;
	  grid-template-columns: repeat(3, minmax(0, 1fr));
	  gap: 1.25rem;
  }
  
  .membership-fee-card {
	  position: relative;
	  min-height: 150px;
	  padding: 1.7rem 7rem 1.7rem 1.7rem;
	  overflow: hidden;
	  background: #fff;
	  border: 1px solid var(--membership-border);
	  box-shadow: var(--membership-shadow);
  }
  
  .membership-fee-card__title {
	  margin: 0 0 0.65rem;
	  color: var(--membership-blue-dark);
	  font-size: 1.1rem;
	  font-weight: 700;
	  line-height: 1.25;
  }
  
  .membership-fee-card__amount {
	  margin: 0;
	  font-size: 1rem;
	  line-height: 1.35;
  }
  
  .membership-fee-card__icon-wrap {
	  position: absolute;
	  right: 1rem;
	  bottom: 0.8rem;
	  width: 80px;
	  height: 80px;
	  display: flex;
	  align-items: center;
	  justify-content: center;
	  border-radius: 50%;
	  padding: 8px;
  }
  
  .membership-fee-card:nth-child(1) .membership-fee-card__icon-wrap{
		border: 10px solid #2168A4;
	}
  
  .membership-fee-card:nth-child(2) .membership-fee-card__icon-wrap {
		border: 10px solid #4683B5;
	}
	
	.membership-fee-card:nth-child(3) .membership-fee-card__icon-wrap {
		  border: 10px solid #6C9EC6;
	  }
  
  .membership-fee-card__icon {
	  display: block;
	  max-width: 100%;
	  max-height: 100%;
	  object-fit: cover;
	  margin-bottom: 0;
  }
  
  
  /* ========================================================================
	 OUR MEMBERS
	 Uses the same member logo classes as the homepage.
	 These fallbacks make the section self-contained if required.
	 ======================================================================== */
  
  .membership-members {
	  padding: 50px 0;
	  background: #fff;
  }
  
  .membership-members .home-members__title {
	  margin-bottom: 1rem;
  }
  
  .membership-members .home-members__intro {
	  max-width: 1050px;
	  margin: 0 auto 2rem;
	  text-align: center;
  }
  
  .membership-members .member-group {
	  margin-bottom: 1.8rem;
  }
  
  .membership-members .member-group:last-child {
	  margin-bottom: 0;
  }
  
  
  
  .membership-members .member-logo-grid {
	  display: grid;
	  grid-template-columns: repeat(5, minmax(0, 1fr));
	  gap: 1.25rem 1.5rem;
	  align-items: center;
  }
  
  .membership-members .member-logo {
	  min-width: 0;
	  min-height: 75px;
	  display: flex;
	  align-items: center;
	  justify-content: center;
	  padding: 0.75rem;
  }
  
  .membership-members .member-logo__image {
	  display: block;
	  width: auto;
	  max-width: 100%;
	  max-height: 65px;
	  object-fit: contain;
  }
  
  
  /* ========================================================================
	 TABLET
	 ======================================================================== */
  
  @media (max-width: 991.98px) {
  
	  .membership-benefit-grid,
	  .membership-category-grid,
	  .membership-fee-grid {
		  gap: 1.25rem;
	  }
  
	  .membership-benefit-card {
		  min-height: 290px;
	  }
  
	  .membership-benefit-card__front,
	  .membership-benefit-card__hover {
		  padding: 1.5rem;
	  }
  
	  .membership-fee-card {
		  padding-right: 5.5rem;
	  }
  
	  .membership-members .member-logo-grid {
		  grid-template-columns: repeat(4, minmax(0, 1fr));
	  }
  
  }
  
  
  /* ========================================================================
	 MOBILE
	 ======================================================================== */
  
  @media (max-width: 767.98px) {
  
	  .membership-benefit-grid,
	  .membership-category-grid,
	  .membership-fee-grid {
		  grid-template-columns: 1fr;
	  }
  
	  /*
	   * Mobile has no reliable hover. Show the heading and bullet list
	   * together so no content is hidden from touch users.
	   */
	  .membership-benefit-card {
		  min-height: 0;
		  background-image: var(--membership-benefit-bg, none);
	  }
  
	  .membership-benefit-card::after {
		  opacity: 0.92;
	  }
  
	  .membership-benefit-card__front,
	  .membership-benefit-card__hover {
		  position: relative;
		  inset: auto;
		  opacity: 1;
		  transform: none;
	  }
  
	  .membership-benefit-card__front {
		  padding-bottom: 0.75rem;
	  }
  
	  .membership-benefit-card__hover {
		  padding-top: 0.75rem;
	  }
  
	  .membership-benefit-card__title {
		  max-width: none;
		  color: #fff;
	  }
  
	  .membership-category-card {
		  margin-top: 55px;
	  }
  
	  .membership-fee-card {
		  min-height: 135px;
	  }
  
	  .membership-members .member-logo-grid {
		  grid-template-columns: repeat(3, minmax(0, 1fr));
	  }
  
  }
  
  
  /* ========================================================================
	 SMALL MOBILE
	 ======================================================================== */
  
  @media (max-width: 479.98px) {
  
	  .membership-members .member-logo-grid {
		  grid-template-columns: repeat(2, minmax(0, 1fr));
	  }
  
  }
  
  
  @media (prefers-reduced-motion: reduce) {
	  .membership-category-card,
	  .membership-category-card__hover-content {
		  transition: none;
	  }
  }


  
/* ========================================================================
	 WORKING GROUP PAGE
	 ======================================================================== */
  
  .working-group-page {
	  --working-blue: var(--irc-blue, #1da6d8);
	  --working-blue-dark: var(--irc-blue-dark, #1479b2);
	  --working-navy: var(--irc-navy, #111744);
	  --working-light: #d8eff8;
	  --working-white: #fff;
	  --working-text: var(--irc-text, #17213a);
	  --working-shadow: 0 7px 18px rgba(7, 24, 79, 0.10);
  }
  
  .working-section-title {
	  margin: 0 0 1.5rem;
	  color: var(--working-blue-dark);
	  font-size: 22px;
	  font-weight: 700;
	  line-height: 1.15;
	  letter-spacing: 0.05em;
	  text-align: center;
	  text-transform: uppercase;
  }
  
  
  /* ========================================================================
	 SHARED RICH TEXT
	 ======================================================================== */
  
  .working-rich-text p,
  .working-rich-text ul,
  .working-rich-text ol {
	  margin-top: 0;
	  margin-bottom: 1rem;
  }
  
  .working-rich-text p:last-child,
  .working-rich-text ul:last-child,
  .working-rich-text ol:last-child {
	  margin-bottom: 0;
  }
  
  .working-rich-text ul,
  .working-rich-text ol {
	  padding-left: 1.4rem;
  }
  
  .working-rich-text a {
	  color: inherit;
	  font-weight: 600;
	  text-decoration: underline;
	  text-underline-offset: 2px;
  }
  
  .working-rich-text a:hover,
  .working-rich-text a:focus {
	  opacity: 0.7;
  }
  

  .working-summary__content span,
  .working-timeline__content span {
	  font-family: inherit !important;
	  font-size: inherit !important;
	  font-weight: inherit;
	  line-height: inherit !important;
	  letter-spacing: inherit !important;
	  color: inherit !important;
  }
  
  
  /* ========================================================================
	 SUMMARY OF WORK
	 ======================================================================== */
  
  .working-summary {
	  padding: 50px 0;
	  background: #fff;
  }
  
  .working-summary__content {
	  max-width: 1120px;
	  margin: 0 auto;
  }
  
  .working-summary__content > p:first-of-type {
	  position: relative;
	  margin: 2rem 0;
	  padding: 1.4rem 1.6rem 1.4rem 2rem;
	  border-left: 4px solid var(--irc-blue-dark, #058fc7);
	  background: #eef9fd;
	  color: var(--irc-navy, #11164d);
	  font-size: 1.05rem;
	  font-weight: 500;
	  line-height: 1.6;
	  box-shadow: 0 4px 12px rgba(7, 24, 79, 0.06);
  }
  
  .working-summary__content ul,
  .working-summary__content ol {
	  display: inline-block;
	  text-align: left;
  }
  
  
  /* ========================================================================
	 TIMELINE
	 ======================================================================== */
  
  .working-timeline {
	  position: relative;
	  overflow: hidden;
	  padding: clamp(2.75rem, 5vw, 4.5rem) 0 2rem;
	  background-color: var(--working-navy);
	  background-image:
		  linear-gradient(rgba(13, 18, 63, 0.84), rgba(13, 18, 63, 0.84)),
		  var(--working-timeline-bg, none);
	  background-position: center;
	  background-size: cover;
	  background-repeat: no-repeat;
	  color: #fff;
	  border-radius: 16px;
  }
  
  .working-timeline__slides {
	  position: relative;
	  min-height: 245px;
	  transition: height 0.35s ease;
  }
  
  .working-timeline__slide {
	  position: absolute;
	  inset: 0;
	  display: grid;
	  grid-template-columns: minmax(220px, 0.9fr) minmax(0, 2fr);
	  gap: clamp(2rem, 5vw, 5rem);
	  align-items: center;
	  opacity: 0;
	  visibility: hidden;
	  transform: translateX(35px);
	  pointer-events: none;
	  transition:
		  opacity 0.35s ease,
		  transform 0.35s ease,
		  visibility 0.35s ease;
  }
  
  .working-timeline__slide.is-active {
	  opacity: 1;
	  visibility: visible;
	  transform: translateX(0);
	  pointer-events: auto;
  }
  
  .working-timeline__slide.is-leaving-left {
	  opacity: 0;
	  transform: translateX(-35px);
  }
  
  .working-timeline__slide.is-leaving-right {
	  opacity: 0;
	  transform: translateX(35px);
  }
  
  .working-timeline__year {
	  color: #ccecff;
	  font-size: clamp(4.5rem, 10vw, 8.5rem);
	  font-weight: 300;
	  line-height: 0.9;
	  letter-spacing: 0.02em;
  }
  
  .working-timeline__content {
	  font-size: 1rem;
	  line-height: 1.45;
  }
  
  .working-timeline__content a {
	  color: #fff;
  }
  
  .working-timeline__nav {
	  position: relative;
	  display: flex;
	  align-items: flex-start;
	  justify-content: space-between;
	  gap: 0;
	  margin-top: 1.4rem;
	  padding: 0 0.2rem;
  }
  
  /* The line runs through the centre of the fixed 23px marker area. */
  .working-timeline__nav::before {
	  content: "";
	  position: absolute;
	  top: 11.5px;
	  left: 0;
	  right: 0;
	  height: 1px;
	  background: rgba(255, 255, 255, 0.7);
  }
  
  .working-timeline__dot {
	  position: relative;
	  z-index: 2;
	  min-width: 54px;
	  display: flex;
	  flex: 1 1 0;
	  flex-direction: column;
	  align-items: center;
	  gap: 0.48rem;
	  padding: 0;
	  border: 0;
	  background: transparent;
	  color: rgba(255, 255, 255, 0.72);
	  font-family: inherit;
	  cursor: pointer;
	  outline: 0;
  }
  
  /* Fixed-height marker means the line never moves when the active dot grows. */
  .working-timeline__dot-marker {
	  width: 23px;
	  height: 23px;
	  display: flex;
	  align-items: center;
	  justify-content: center;
	  flex: 0 0 23px;
  }
  
  .working-timeline__dot-circle {
	  display: block;
	  width: 14px;
	  height: 14px;
	  border-radius: 50%;
	  background: #fff;
	  box-shadow: 0 0 0 3px transparent;
	  transition:
		  width 0.25s ease,
		  height 0.25s ease,
		  background-color 0.25s ease,
		  box-shadow 0.25s ease,
		  transform 0.25s ease;
  }
  
  .working-timeline__dot-year {
	  display: block;
	  font-size: 14px;
	  font-weight: 500;
	  line-height: 1;
	  letter-spacing: 0.02em;
	  white-space: nowrap;
	  opacity: 0.72;
	  transition:
		  font-size 0.25s ease,
		  font-weight 0.25s ease,
		  opacity 0.25s ease,
		  color 0.25s ease,
		  transform 0.25s ease;
  }
  
  .working-timeline__dot:hover .working-timeline__dot-circle,
  .working-timeline__dot:focus .working-timeline__dot-circle {
	  transform: scale(1.12);
  }
  
  .working-timeline__dot:hover .working-timeline__dot-year,
  .working-timeline__dot:focus .working-timeline__dot-year {
	  opacity: 1;
  }
  
  .working-timeline__dot.is-active .working-timeline__dot-circle {
	  width: 23px;
	  height: 23px;
	  background: var(--working-blue);
	  box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.08);
  }
  
  .working-timeline__dot.is-active .working-timeline__dot-year {
	  color: #ccecff;
	  font-size: 0.98rem;
	  font-weight: 700;
	  opacity: 1;
	  transform: translateY(1px);
  }
  
  .working-timeline.is-dot-pulsing .working-timeline__dot-circle {
	  animation: working-timeline-dot-pulse-x 0.8s ease-in-out 2;
	  transform-origin: center;
  }
  
  /* Slight stagger so the dots pulse across the timeline. */
  .working-timeline.is-dot-pulsing .working-timeline__dot:nth-child(2n) .working-timeline__dot-circle {
	  animation-delay: 0.08s;
  }
  
  .working-timeline.is-dot-pulsing .working-timeline__dot:nth-child(3n) .working-timeline__dot-circle {
	  animation-delay: 0.16s;
  }
  
  .working-timeline.is-dot-pulsing .working-timeline__dot:nth-child(4n) .working-timeline__dot-circle {
	  animation-delay: 0.24s;
  }
  
  @keyframes working-timeline-dot-pulse-x {
	  0%,
	  100% {
		  transform: scaleX(1) scaleY(1);
	  }
  
	  50% {
		  transform: scaleX(1.7) scaleY(0.92);
	  }
  }
  
  @media (prefers-reduced-motion: reduce) {
	  .working-timeline.is-dot-pulsing .working-timeline__dot-circle {
		  animation: none;
	  }
  }
  
  @media (max-width: 767.98px) {
  
	  .working-timeline__nav {
		  display: flex;
		  align-items: flex-start;
		  justify-content: flex-start;
  
		  gap: 1.25rem;
  
		  overflow-x: auto;
  
		  padding: 0 0.2rem 0.65rem;
  
		  -webkit-overflow-scrolling: touch;
		  scrollbar-width: thin;
	  }
  
  
	  /* Remove the old single line */
	  .working-timeline__nav::before {
		  display: none;
	  }
  
  
	  /* Each year becomes a proper mobile timeline item */
	  .working-timeline__dot {
		  position: relative;
  
		  flex: 0 0 58px;
		  min-width: 58px;
  
		  width: 58px;
		  height: auto;
  
		  display: flex;
		  flex-direction: column;
		  align-items: center;
  
		  gap: 0.48rem;
  
		  padding: 0;
  
		  border: 0;
		  border-radius: 0;
  
		  background: transparent;
  
		  color: rgba(255, 255, 255, 0.72);
  
		  overflow: visible;
	  }
  
  
	  /* Draw the timeline between each item */
	  .working-timeline__dot:not(:last-child)::after {
		  content: "";
  
		  position: absolute;
  
		  top: 11.5px;
		  left: 50%;
  
		  z-index: 0;
  
		  width: calc(100% + 1.25rem);
		  height: 1px;
  
		  background: rgba(255, 255, 255, 0.7);
  
		  pointer-events: none;
	  }
  
  
	  /* Fixed marker area keeps line aligned */
	  .working-timeline__dot-marker {
		  position: relative;
		  z-index: 1;
  
		  width: 23px;
		  height: 23px;
  
		  flex: 0 0 23px;
  
		  display: flex;
		  align-items: center;
		  justify-content: center;
	  }
  
  
	  .working-timeline__dot-circle {
		  display: block;
  
		  width: 11px;
		  height: 11px;
  
		  border-radius: 50%;
  
		  background: #fff;
	  }
  
  
	  .working-timeline__dot.is-active .working-timeline__dot-circle {
		  width: 18px;
		  height: 18px;
  
		  background: var(--working-blue);
	  }
  
  
	  /* Keep year visible underneath marker */
	  .working-timeline__dot-year {
		  position: relative;
		  z-index: 1;
  
		  display: block;
  
		  color: rgba(255, 255, 255, 0.72);
  
		  font-size: 0.68rem;
		  font-weight: 500;
		  line-height: 1;
  
		  white-space: nowrap;
	  }
  
  
	  .working-timeline__dot.is-active .working-timeline__dot-year {
		  color: #ccecff;
  
		  font-size: 0.86rem;
		  font-weight: 700;
	  }
  
  }

  
  /* ========================================================================
	 WORKING GROUP MEMBERS
	 ======================================================================== */
  
  .working-members {
	  padding: 50px 0;
	  background: #fff;
  }
  
  .working-members__grid {
	  display: grid;
	  grid-template-columns: repeat(3, minmax(0, 1fr));
	  gap: 0.75rem 1rem;
  }
  
  .working-member-card {
	  min-height: 128px;
	  display: flex;
	  flex-direction: column;
	  align-items: center;
	  justify-content: center;
	  width: 100%;
	  padding: 1.25rem 1rem;
	  border: 0;
	  color: #fff;
	  font-family: inherit;
	  text-align: center;
	  cursor: pointer;
	  box-shadow: var(--working-shadow);
	  transition:
		  transform 0.22s ease,
		  box-shadow 0.22s ease,
		  filter 0.22s ease;
  }
  
  /* Three cards per row: row colours alternate automatically. */
  .working-member-card:nth-of-type(6n + 1),
  .working-member-card:nth-of-type(6n + 2),
  .working-member-card:nth-of-type(6n + 3) {
	  background: var(--working-blue);
  }
  
  .working-member-card:nth-of-type(6n + 4),
  .working-member-card:nth-of-type(6n + 5),
  .working-member-card:nth-of-type(6n + 6) {
	  background: var(--working-blue-dark);
  }
  
  .working-member-card:hover,
  .working-member-card:focus {
	  transform: translateY(-3px);
	  filter: brightness(1.04);
	  box-shadow: 0 10px 24px rgba(7, 24, 79, 0.16);
	  outline: 0;
  }
  
  .working-member-card__name,
  .working-member-card__title,
  .working-member-card__qualification {
	  display: block;
  }
  
  .working-member-card__name {
	  margin-bottom: 0.4rem;
	  font-size: 1rem;
	  font-weight: 700;
	  line-height: 1.2;
  }
  
  .working-member-card__title {
	  margin-bottom: 0.25rem;
	  font-size: 16px;
	  font-weight: 600;
	  line-height: 1.25;
  }
  
  .working-member-card__qualification {
	  font-size: 16px;
	  font-weight: 400;
  }
  
  
  /* ========================================================================
	 MEMBER MODAL
	 ======================================================================== */
  
  body.working-modal-open {
	  overflow: hidden;
  }
  
  .working-member-modal[hidden] {
	  display: none !important;
  }
  
  .working-member-modal {
	  position: fixed;
	  inset: 0;
	  z-index: 10050;
	  display: flex;
	  align-items: center;
	  justify-content: center;
	  padding: 24px;
  }
  
  .working-member-modal__backdrop {
	  position: absolute;
	  inset: 0;
	  background: rgba(0, 0, 0, 0.58);
	  opacity: 0;
	  transition: opacity 0.25s ease;
  }
  
  .working-member-modal__dialog {
	  position: relative;
	  z-index: 2;
	  width: min(940px, 100%);
	  max-height: min(720px, calc(100vh - 48px));
	  overflow: auto;
	  background: #fff;
	  box-shadow: 0 22px 60px rgba(0, 0, 0, 0.28);
	  opacity: 0;
	  transform: translateY(18px) scale(0.985);
	  transition:
		  opacity 0.25s ease,
		  transform 0.25s ease;
  }
  
  .working-member-modal.is-open .working-member-modal__backdrop {
	  opacity: 1;
  }
  
  .working-member-modal.is-open .working-member-modal__dialog {
	  opacity: 1;
	  transform: translateY(0) scale(1);
  }
  
  .working-member-modal__close {
	  position: absolute;
	  top: 15px;
	  right: 15px;
	  z-index: 4;
	  width: 34px;
	  height: 34px;
	  display: flex;
	  align-items: center;
	  justify-content: center;
	  padding: 0;
	  border: 0;
	  border-radius: 50%;
	  background: var(--working-blue-dark);
	  color: #fff;
	  font-family: inherit;
	  font-size: 25px;
	  line-height: 1;
	  cursor: pointer;
  }
  
  .working-member-modal__close:hover,
  .working-member-modal__close:focus {
	  background: var(--working-navy);
	  outline: 0;
  }
  
  .working-member-modal__grid {
	  display: grid;
	  grid-template-columns: minmax(240px, 0.8fr) minmax(0, 1.8fr);
	  min-height: 340px;
  }
  
  .working-member-modal__summary {
	  display: flex;
	  flex-direction: column;
	  justify-content: center;
	  padding: clamp(2rem, 5vw, 4rem);
	  background: var(--working-blue);
	  color: #fff;
  }
  
  .working-member-modal__name {
	  margin: 0 0 0.75rem;
	  font-size: clamp(1.45rem, 2.5vw, 2rem);
	  font-weight: 700;
	  line-height: 1.15;
  }
  
  .working-member-modal__title,
  .working-member-modal__qualification {
	  margin: 0;
  }
  
  .working-member-modal__title {
	  margin-bottom: 0.65rem;
	  font-weight: 600;
  }
  
  .working-member-modal__qualification {
	  font-size: 0.9rem;
	  line-height: 1.45;
  }
  
  .working-member-modal__bio {
	  padding: clamp(2rem, 5vw, 4rem);
	  color: var(--working-text);
	  font-size: 0.95rem;
	  line-height: 1.55;
  }
  
  
  /* ========================================================================
	 OBSERVERS
	 ======================================================================== */
  
  .working-observers {
	  padding: 0 0 50px 0;
	  background: #fff;
  }
  
  .working-observers__grid {
	  display: grid;
	  grid-template-columns: repeat(2, minmax(0, 1fr));
	  gap: 1rem;
  }
  
  .working-observer-card {
	  min-height: 130px;
	  display: flex;
	  flex-direction: column;
	  align-items: center;
	  justify-content: center;
	  width: 100%;
	  padding: 1.5rem;
	  border: 0;
	  background: var(--working-light);
	  color: var(--working-text);
	  font-family: inherit;
	  text-align: center;
	  cursor: pointer;
	  box-shadow: var(--working-shadow);
	  transition:
		  transform 0.22s ease,
		  box-shadow 0.22s ease,
		  background-color 0.22s ease;
  }
  
  .working-observer-card:hover,
  .working-observer-card:focus {
	  background: #e3f4f9;
	  transform: translateY(-3px);
	  box-shadow: 0 10px 24px rgba(7, 24, 79, 0.14);
	  outline: 0;
  }
  
  .working-observer-card__name,
  .working-observer-card__title,
  .working-observer-card__qualification,
  .working-observer-card__hint {
	  display: block;
  }
  
  .working-observer-card__name {
	  margin: 0 0 0.45rem;
	  color: #111;
	  font-size: 1rem;
	  font-weight: 700;
	  line-height: 1.25;
  }
  
  .working-observer-card__title {
	  margin-bottom: 0.3rem;
	  font-size: 0.82rem;
	  font-weight: 600;
	  line-height: 1.25;
  }
  
  .working-observer-card__qualification {
	  font-size: 0.76rem;
	  font-weight: 400;
	  line-height: 1.35;
  }
  
  .working-observer-card__hint {
	  margin: 0.15rem 0 0.5rem;
	  color: var(--working-blue-dark);
	  font-style: italic;
	  font-weight: 600;
	  line-height: 1.25;
  }
  
  
  /* ========================================================================
	 TABLET
	 ======================================================================== */
  
  @media (max-width: 991.98px) {
  
	  .working-timeline__slide {
		  grid-template-columns: minmax(170px, 0.7fr) minmax(0, 1.6fr);
		  gap: 2rem;
	  }
  
	  .working-members__grid {
		  grid-template-columns: repeat(2, minmax(0, 1fr));
	  }
  
	  /* Two cards per visual row on tablet. */
	  .working-member-card:nth-child(n) {
		  background: var(--working-blue);
	  }
  
	  .working-member-card:nth-child(4n + 3),
	  .working-member-card:nth-child(4n + 4) {
		  background: var(--working-blue-dark);
	  }
  
  }
  
  
  /* ========================================================================
	 MOBILE
	 ======================================================================== */
  
  @media (max-width: 767.98px) {
  
	  .working-timeline {
		  padding-bottom: 1.7rem;
	  }
  
	  .working-timeline__slides {
		  min-height: 0;
	  }
  
	  .working-timeline__slide {
		  grid-template-columns: 1fr;
		  gap: 1.5rem;
	  }
  
	  .working-timeline__year {
		  font-size: clamp(4rem, 20vw, 6rem);
	  }
  
	  .working-timeline__content {
		  font-size: 0.95rem;
	  }
  
	  .working-timeline__dot {
		  width: 11px;
		  height: auto;
		  flex-basis: 11px;
	  }
  
	  .working-timeline__dot.is-active {
		  width: 18px;
		  height: 18px;
		  flex-basis: 18px;
	  }
  
	  .working-members__grid,
	  .working-observers__grid {
		  grid-template-columns: 1fr;
	  }
  
	  .working-member-card:nth-child(n) {
		  background: var(--working-blue);
	  }
  
	  .working-member-card:nth-child(even) {
		  background: var(--working-blue-dark);
	  }
  
	  .working-member-modal {
		  padding: 14px;
	  }
  
	  .working-member-modal__grid {
		  grid-template-columns: 1fr;
	  }
  
	  .working-member-modal__summary,
	  .working-member-modal__bio {
		  padding: 2rem;
	  }
  
  }
  
  
  /* ========================================================================
	 REDUCED MOTION
	 ======================================================================== */
  
  @media (prefers-reduced-motion: reduce) {
  
	  .working-timeline__slide,
	  .working-timeline__dot,
	  .working-member-card,
	  .working-member-modal__backdrop,
	  .working-member-modal__dialog {
		  transition: none;
	  }
  
  }

  
  
  
  /* ========================================================================
	 ADVISORY SERVICES PAGE
	 ======================================================================== */
  
  .advisory-services-page {
	  --advisory-blue: var(--irc-blue, #18a9df);
	  --advisory-blue-dark: var(--irc-blue-dark, #058fc7);
	  --advisory-navy: var(--irc-navy, #11164d);
	  --advisory-light: #d9f0f9;
	  --advisory-light-alt: #b8d1e3;
	  --advisory-white: #fff;
	  --advisory-text: var(--irc-text, #17213a);
	  --advisory-border: rgba(7, 24, 79, 0.06);
	  --advisory-shadow: 0 4px 12px rgba(7, 24, 79, 0.15);
	  --advisory-shadow-hover: 0 10px 24px rgba(7, 24, 79, 0.20);
  }
  
  .advisory-section-title {
	  margin: 0 0 2rem;
	  color: var(--advisory-blue-dark);
	  font-size: 22px;
	  font-weight: 700;
	  text-align: center;
	  text-transform: uppercase;
  }
  
  
  /* ========================================================================
	 REPORTING SERVICES OFFERED BY MEMBERS
	 ======================================================================== */
  
  .advisory-services {
	  padding: 50px 0 0 0;
	  background: #fff;
  }
  
  .advisory-services__grid {
	  display: grid;
	  grid-template-columns: repeat(3, minmax(0, 1fr));
	  gap: 1.3rem 1.5rem;
	  max-width: 980px;
	  margin: 0 auto;
  }
  
  .advisory-company-card {
	  min-width: 0;
	  min-height: 220px;
	  display: flex;
	  flex-direction: column;
	  align-items: center;
	  justify-content: space-between;
	  width: 100%;
	  padding: 1.8rem 1.5rem 1.35rem;
	  border: 1px solid var(--advisory-border);
	  background: #fff;
	  color: #111;
	  font-family: inherit;
	  text-align: center;
	  cursor: pointer;
	  box-shadow: var(--advisory-shadow);
	  transition:
		  transform 0.22s ease,
		  box-shadow 0.22s ease;
  }
  
  .advisory-company-card:hover,
  .advisory-company-card:focus {
	  transform: translateY(-3px);
	  box-shadow: var(--advisory-shadow-hover);
	  outline: 0;
  }
  
  .advisory-company-card__logo-wrap {
	  flex: 1;
	  display: flex;
	  align-items: center;
	  justify-content: center;
	  width: 100%;
	  min-height: 125px;
	  margin-bottom: 1rem;
  }
  
  .advisory-company-card__logo {
	  display: block;
	  width: auto;
	  height: auto;
	  max-width: 82%;
	  max-height: 105px;
	  object-fit: contain;
  }
  
  .advisory-company-card__name {
	  display: block;
	  min-height: 2.4em;
	  font-size: 1rem;
	  font-weight: 700;
	  line-height: 1.2;
  }
  
  
  /* ========================================================================
	 COMPANY POPUP
	 ======================================================================== */
  
  body.advisory-modal-open {
	  overflow: hidden;
  }
  
  .advisory-company-modal[hidden] {
	  display: none !important;
  }
  
  .advisory-company-modal {
	  position: fixed;
	  inset: 0;
	  z-index: 10050;
	  display: flex;
	  align-items: center;
	  justify-content: center;
	  padding: 24px;
  }
  
  .advisory-company-modal__backdrop {
	  position: absolute;
	  inset: 0;
	  background: rgba(0, 0, 0, 0.52);
	  opacity: 0;
	  transition: opacity 0.25s ease;
  }
  
  .advisory-company-modal__dialog {
	  position: relative;
	  z-index: 2;
	  width: min(940px, 100%);
	  max-height: min(720px, calc(100vh - 48px));
	  overflow: auto;
	  background: #fff;
	  box-shadow: 0 20px 55px rgba(0, 0, 0, 0.30);
	  opacity: 0;
	  transform: translateY(16px) scale(0.985);
	  transition:
		  opacity 0.25s ease,
		  transform 0.25s ease;
  }
  
  .advisory-company-modal.is-open .advisory-company-modal__backdrop {
	  opacity: 1;
  }
  
  .advisory-company-modal.is-open .advisory-company-modal__dialog {
	  opacity: 1;
	  transform: translateY(0) scale(1);
  }
  
  .advisory-company-modal__close {
	  position: absolute;
	  top: 14px;
	  right: 14px;
	  z-index: 4;
	  width: 34px;
	  height: 34px;
	  display: flex;
	  align-items: center;
	  justify-content: center;
	  padding: 0;
	  border: 0;
	  border-radius: 50%;
	  background: var(--advisory-blue-dark);
	  color: #fff;
	  font-family: inherit;
	  font-size: 25px;
	  line-height: 1;
	  cursor: pointer;
	  transition: background-color 0.2s ease;
  }
  
  .advisory-company-modal__close:hover,
  .advisory-company-modal__close:focus {
	  background: var(--advisory-navy);
	  outline: 0;
  }
  
  .advisory-company-modal__grid {
	  display: grid;
	  grid-template-columns: minmax(230px, 0.85fr) minmax(0, 1.9fr);
	  min-height: 360px;
  }
  
  .advisory-company-modal__logo-column {
	  display: flex;
	  flex-direction: column;
	  align-items: center;
	  justify-content: center;
	  padding: 30px;
	  background: #fff;
	  border-right: 1px solid var(--advisory-border);
	  text-align: center;
  }
  
  .advisory-company-modal__logo-wrap {
	  width: 100%;
	  max-width: 220px;
	  display: flex;
	  align-items: center;
	  justify-content: center;
	  margin-bottom: 1.4rem;
  }
  
  .advisory-company-modal__logo {
	  display: block;
	  width: auto;
	  height: auto;
	  max-width: 100%;
	  max-height: 160px;
	  object-fit: contain;
  }
  
  .advisory-company-modal__name {
	  margin: 0 0 1.4rem;
	  color: var(--advisory-blue-dark);
	  font-size: 20px;
	  font-weight: 700;
  }
  
  .advisory-company-modal__details {
	  padding: clamp(2rem, 4vw, 3.5rem);
	  color: var(--advisory-text);
	  font-size: 0.95rem;
	  line-height: 1.5;
  }
  
  .advisory-rich-text p,
  .advisory-rich-text ul,
  .advisory-rich-text ol {
	  margin-top: 0;
	  margin-bottom: 1rem;
  }
  
  .advisory-rich-text p:last-child,
  .advisory-rich-text ul:last-child,
  .advisory-rich-text ol:last-child {
	  margin-bottom: 0;
  }
  
  .advisory-rich-text ul,
  .advisory-rich-text ol {
	  padding-left: 1.3rem;
  }
  
  .advisory-rich-text a {
	  color: var(--advisory-blue-dark);
	  font-weight: 600;
	  text-decoration: underline;
	  text-underline-offset: 2px;
  }
  
  .advisory-rich-text strong,
  .advisory-rich-text b {
	  font-weight: 700;
  }
  
  
  /* ========================================================================
	 LOWER INFORMATION / TRAINING BLOCKS
	 ======================================================================== */
  
  .advisory-resources {
	  padding: 50px 0;
	  background: #fff;
  }
  
.advisory-resources {
	  background-color: #fff;
	  background-image: var(--advisory-resources-bg, none);
	  background-position: center bottom;
	  background-size: cover;
	  background-repeat: no-repeat;
  }
  
  .advisory-resources.has-background > .container {
	  position: relative;
	  z-index: 1;
  }
  
  .advisory-resources__intro {
	  max-width: 980px;
	  margin: -0.5rem auto 2rem;
	  text-align: center;
  }
  
  .advisory-resources__intro p {
	  margin: 0;
  }
  
  .advisory-resources__grid {
	  display: grid;
	  grid-template-columns: repeat(2, minmax(0, 1fr));
	  gap: 2.2rem 3rem;
	  max-width: 980px;
	  margin: 0 auto;
	  align-items: stretch;
  }
  
  .advisory-resource-card {
	  display: flex;
	  flex-direction: column;
	  min-width: 0;
	  background: #fff;
	  box-shadow: var(--advisory-shadow);
  }
  
  .advisory-resource-card__panel {
	  flex: 1;
	  min-height: 205px;
	  display: flex;
	  flex-direction: column;
	  align-items: center;
	  justify-content: center;
	  padding: 2rem 2.25rem;
	  background: var(--advisory-light);
	  text-align: center;
  }
  
  .advisory-resource-card:nth-child(even) .advisory-resource-card__panel {
	  background: var(--advisory-light-alt);
  }
  
  .advisory-resource-card__title {
	  max-width: 85%;
	  margin: 0 0 1.25rem;
	  color: #111;
	  font-size: 1.1rem;
	  font-weight: 700;
	  line-height: 1.25;
  }
  
  .advisory-resource-card__copy {
	  max-width: 90%;
	  color: var(--advisory-text);
	  font-size: 16px;
	  line-height: 1.45;
  }
  
  .advisory-resource-card__copy p {
	  margin: 0;
  }
  
  .advisory-resource-card__button-wrap {
	  display: flex;
	  align-items: center;
	  justify-content: center;
	  min-height: 70px;
	  padding: 0.9rem 1rem 1.2rem;
	  background: #fff;
  }
  
  .advisory-resources__grid > .advisory-resource-card:only-child {
	  grid-column: 1 / -1;
	  width: 100%;
	  max-width: calc((980px - 3rem) / 2);
	  justify-self: center;
  }
  
  
  
  
  /* ========================================================================
	 TABLET
	 ======================================================================== */
  
  @media (max-width: 991.98px) {
  
	  .advisory-services__grid {
		  grid-template-columns: repeat(2, minmax(0, 1fr));
	  }
  
	  .advisory-company-modal__grid {
		  grid-template-columns: minmax(200px, 0.75fr) minmax(0, 1.7fr);
	  }
  
  }
  
  
  /* ========================================================================
	 MOBILE
	 ======================================================================== */
  
  @media (max-width: 767.98px) {
  
	  .advisory-services__grid,
	  .advisory-resources__grid {
		  grid-template-columns: 1fr;
	  }
  
	  .advisory-company-card {
		  min-height: 200px;
	  }
  
	  .advisory-company-modal {
		  padding: 14px;
	  }
  
	  .advisory-company-modal__grid {
		  grid-template-columns: 1fr;
	  }
  
	  .advisory-company-modal__logo-column {
		  border-right: 0;
		  border-bottom: 1px solid var(--advisory-border);
		  padding: 2rem;
	  }
  
	  .advisory-company-modal__details {
		  padding: 2rem;
	  }
  
	  .advisory-resource-card__panel {
		  min-height: 180px;
	  }
  
  }
  
  
  /* ========================================================================
	 REDUCED MOTION
	 ======================================================================== */
  
  @media (prefers-reduced-motion: reduce) {
  
	  .advisory-company-card,
	  .advisory-company-modal__backdrop,
	  .advisory-company-modal__dialog,
	  .advisory-resource-card__button {
		  transition: none;
	  }
  
  }



/* ------------------------------------------------------------------- 
  * ## Body
  * ------------------------------------------------------------------- */

body {
	font-family: 'Open Sans';
	font-size: 16px;
	overflow-x: hidden;
}



/* ------------------------------------------------------------------- 
 * ## Footer
 * ------------------------------------------------------------------- */
 footer img{
	 margin-bottom: 0;
 }
 .site-footer {
	 font-size: 12px;
	 line-height: normal;
	 letter-spacing: normal;
	 color: #fff;
 }
 
 .site-footer {
	 width: 100%;
	 max-width: none;
	 margin: 0;
	 padding: 0;
 }
 
 .site-footer__main,
 .site-footer__cookie,
 .site-footer__legal,
 .site-footer__credit {
	 width: 100%;
	 max-width: none;
 }
 
 .site-footer .container {
	 width: 100%;
	 margin-left: auto;
	 margin-right: auto;
 }
 
 .site-footer p,
 .site-footer ul,
 .site-footer h2 {
	 margin-top: 0;
 }
 
 .site-footer a {
	 color: inherit;
	 text-decoration: none;
	 transition: opacity 0.2s ease;
 }
 
 .site-footer a:hover,
 .site-footer a:focus {
	 color: inherit;
	 text-decoration: none;
	 opacity: 0.7;
 }
 
 
 /* ------------------------------------------------------------------------
	MAIN FOOTER AREA
	------------------------------------------------------------------------ */
 
 .site-footer__main {
	 position: relative;
	 padding: 42px 0 34px;
	 background-color: var(--irc-navy);
	 background-position: center;
	 background-size: cover;
	 background-repeat: no-repeat;
 }
 
 .site-footer__grid {
	 display: grid;
	 grid-template-columns:
		 minmax(170px, 1.25fr)
		 minmax(230px, 2fr)
		 minmax(130px, 1fr)
		 minmax(160px, 1.2fr)
		 minmax(130px, 1fr);
	 gap: 35px;
	 align-items: start;
 }
 
 
 /* ------------------------------------------------------------------------
	BRAND / LOGO
	------------------------------------------------------------------------ */
 
 .site-footer__brand {
	 display: flex;
	 flex-direction: column;
	 align-items: flex-start;
 }
 
 .site-footer__brand-logo {
	 width: 100%;
	 max-width: 200px;
	 margin-bottom: 30px;
 }
 
 
 /* ------------------------------------------------------------------------
	SOCIAL LINKS
	------------------------------------------------------------------------ */
 
 .site-footer__social {
	 display: flex;
	 flex-wrap: wrap;
	 gap: 10px;
 }
 
 .site-footer__social-link {
	 display: inline-flex;
	 align-items: center;
	 justify-content: center;
	 gap: 5px;
	 min-height: 28px;
	 padding: 5px 13px;
	 border: 1px solid rgba(255, 255, 255, 0.9);
	 border-radius: 30px;
	 color: #fff;
	 white-space: nowrap;
 }
 
 .site-footer__social-link:hover,
 .site-footer__social-link:focus {
	 background: rgba(255, 255, 255, 0.1);
	 opacity: 1;
 }
 
 
 /* ------------------------------------------------------------------------
	INTRO COPY
	------------------------------------------------------------------------ */
 
 .site-footer__intro {
	 max-width: 320px;
 }
 
 .site-footer__intro p {
	 margin-bottom: 24px;
 }
 
 .site-footer__intro p:last-child {
	 margin-bottom: 0;
 }
 
 
 /* ------------------------------------------------------------------------
	NAVIGATION COLUMNS
	------------------------------------------------------------------------ */
 
 .site-footer__heading {
	 margin-bottom: 12px;
	 color: #fff;
	 font-size: 12px;
	 font-weight: 700;
	 line-height: normal;
	 letter-spacing: normal;
	 text-transform: uppercase;
 }
 
 .site-footer__links {
	 margin: 0;
	 padding: 0;
	 list-style: none;
 }
 
 .site-footer__links li {
	 margin: 0 0 9px;
	 padding: 0;
 }
 
 .site-footer__links li:last-child {
	 margin-bottom: 0;
 }
 .site-footer__links li:before {
	  display: none;
  }
 
 .site-footer__links a {
	 display: inline-block;
	 color: #fff;
 }
 
 
 /* ------------------------------------------------------------------------
	COOKIE STRIP
	------------------------------------------------------------------------ */
 
 .site-footer__cookie {
	 border-top: 1px solid rgba(255, 255, 255, 0.22);
	 border-bottom: 1px solid rgba(255, 255, 255, 0.22);
	 background-color: var(--irc-navy);
 }
 
 .site-footer__cookie-inner {
	 min-height: 46px;
	 display: flex;
	 align-items: center;
	 justify-content: center;
	 gap: 55px;
 }
 
 .site-footer__cookie-text {
	 margin: 0;
	 font-weight: 600;
 }
 
 .site-footer__cookie-button {
	 min-width: 90px;
	 padding: 7px 22px;
	 border: 0;
	 border-radius: 30px;
	 background: var(--irc-blue);
	 color: var(--irc-navy);
	 font-family: inherit;
	 font-size: 12px;
	 font-weight: 600;
	 line-height: normal;
	 letter-spacing: normal;
	 cursor: pointer;
	 transition:
		 background-color 0.2s ease,
		 transform 0.2s ease;
 }
 
 .site-footer__cookie-button:hover,
 .site-footer__cookie-button:focus {
	 background: #fff;
	 transform: translateY(-1px);
 }
 
 .site-footer__cookie {
	 transition:
		 opacity 0.25s ease,
		 visibility 0.25s ease;
 }
 
 .site-footer__cookie.is-hidden {
	 opacity: 0;
	 visibility: hidden;
 }
 
 
 /* ------------------------------------------------------------------------
	LEGAL ROW
	------------------------------------------------------------------------ */
 
 .site-footer__legal {
	 background-color: var(--irc-navy);
 }
 
 .site-footer__legal-inner {
	 min-height: 44px;
	 display: flex;
	 align-items: center;
	 justify-content: center;
	 gap: 60px;
 }
 
 .site-footer__copyright {
	 margin: 0;
 }
 
 .site-footer__legal-nav {
	 display: flex;
	 align-items: center;
	 gap: 45px;
	 font-weight: 600;
 }
 
 .site-footer__legal-nav a {
	 color: #fff;
 }
 
 
 /* ------------------------------------------------------------------------
	DEVELOPER CREDIT
	------------------------------------------------------------------------ */
 
 .site-footer__credit {
	 padding: 10px 0;
	 background: #fff;
	 color: #000;
 }
 
 .site-footer__credit-inner {
	 position: relative;
	 min-height: 38px;
	 display: flex;
	 align-items: center;
	 justify-content: center;
 }
 
 .site-footer__credit-logo {
	 position: absolute;
	 left: 0;
	 width: 180px;
 }
 
 .site-footer__credit-logo img {
	 display: block;
	 width: 100%;
	 height: auto;
 }
 
 .site-footer__credit-text {
	 margin: 0;
	 text-align: center;
 }
 
 .site-footer__credit-text a {
	 color: #000;
	 font-weight: 700;
	 text-decoration: underline;
 }
 
 
 /* ========================================================================
	TABLET
	======================================================================== */
 
 @media (max-width: 991.98px) {
 
	 .site-footer__main {
		 padding: 36px 0;
	 }
 
	 .site-footer__grid {
		 grid-template-columns: repeat(3, minmax(0, 1fr));
		 gap: 32px 28px;
	 }
 
	 .site-footer__brand {
		 grid-column: span 1;
	 }
 
	 .site-footer__intro {
		 grid-column: span 2;
		 max-width: none;
	 }
 
	 .site-footer__cookie-inner {
		 gap: 30px;
	 }
 
	 .site-footer__legal-inner {
		 gap: 30px;
	 }
 
	 .site-footer__legal-nav {
		 gap: 25px;
	 }
 
 }
 
 
 /* ========================================================================
	MOBILE
	======================================================================== */
 
 @media (max-width: 767.98px) {
 
	 .site-footer__main {
		 padding: 32px 0;
	 }
 
	 .site-footer__grid {
		 grid-template-columns: repeat(2, minmax(0, 1fr));
		 gap: 30px 24px;
	 }
 
	 .site-footer__brand,
	 .site-footer__intro {
		 grid-column: 1 / -1;
	 }
 
	 .site-footer__intro {
		 max-width: 500px;
	 }
 
	 .site-footer__brand-logo {
		 margin-bottom: 20px;
	 }
 
	 .site-footer__cookie-inner {
		 padding-top: 12px;
		 padding-bottom: 12px;
		 flex-direction: column;
		 gap: 10px;
		 text-align: center;
	 }
 
	 .site-footer__legal-inner {
		 padding-top: 16px;
		 padding-bottom: 16px;
		 flex-direction: column;
		 gap: 12px;
		 text-align: center;
	 }
 
	 .site-footer__legal-nav {
		 flex-wrap: wrap;
		 justify-content: center;
		 gap: 10px 22px;
	 }
 
	 .site-footer__credit-inner {
		 flex-direction: column;
		 gap: 10px;
	 }
 
	 .site-footer__credit-logo {
		 position: static;
	 }
 
 }
 
 
 /* ========================================================================
	SMALL MOBILE
	======================================================================== */
 
 @media (max-width: 479.98px) {
 
	 .site-footer__grid {
		 grid-template-columns: 1fr;
	 }
 
	 .site-footer__brand,
	 .site-footer__intro {
		 grid-column: auto;
	 }
 
	 .site-footer__social {
		 gap: 8px;
	 }
 
 }
 
 /* ========================================================================
 SINGLE PAGES
 ======================================================================== */
 
 section.post_content.single-page {
	 margin: 50px 0;
 }
 
.single-page h2 {
	 margin: 20px 0 10px 0;
	 color: var(--irc-blue-dark);
	 font-size: 22px;
	 font-weight: 700;
	 line-height: 1.15;
	 letter-spacing: 0.05em;
	 text-transform: uppercase;
 }
 
 h1.page-title {
	 color: var(--irc-navy);
	 font-size: 32px;
	 text-transform: uppercase;
	 font-weight: 700;
 }
 
 
 /* ========================================================================
	CONTACT FORM 7 – IRC FORMS
	======================================================================== */
 
 .irc-form {
	 --irc-form-blue: var(--irc-blue, #18a9df);
	 --irc-form-blue-dark: var(--irc-blue-dark, #058fc7);
	 --irc-form-navy: var(--irc-navy, #11164d);
	 --irc-form-text: var(--irc-text, #17213a);
	 --irc-form-border: #b8dce9;
	 --irc-form-bg: #ffffff;
 
	 width: 100%;
	 color: var(--irc-form-text);
 }
 
 
 /* ------------------------------------------------------------------------
	HEADING / INTRO
	------------------------------------------------------------------------ */
 
 .irc-form__heading {
	 margin-bottom: 1.8rem;
	 text-align: center;
 }
 
 .irc-form__heading h2 {
	 margin: 0 0 1rem;
 
	 color: var(--irc-form-blue-dark);
 
	 font-size: 22px;
	 font-weight: 700;
	 line-height: 1.2;
 
	 text-transform: uppercase;
 }
 
 .irc-form__heading p {
	 max-width: 900px;
	 margin: 0 auto 0.65rem;
 
	 font-size: 0.92rem;
	 line-height: 1.5;
 }
 
 .irc-form__heading p:last-child {
	 margin-bottom: 0;
 }
 
 
 /* ------------------------------------------------------------------------
	FORM GRID
	------------------------------------------------------------------------ */
 
 .irc-form__grid {
	 display: grid;
	 grid-template-columns: repeat(2, minmax(0, 1fr));
 
	 gap: 1.15rem 1.5rem;
 }
 
 .irc-form__field {
	 min-width: 0;
 }
 
 .irc-form__field--full {
	 grid-column: 1 / -1;
 }
 
 
 /* ------------------------------------------------------------------------
	LABELS
	------------------------------------------------------------------------ */
 
 .irc-form label {
	 display: block;
 
	 margin-bottom: 0.4rem;
 
	 color: var(--irc-form-navy);
 
	 font-size: 0.84rem;
	 font-weight: 600;
	 line-height: 1.3;
 }
 
 .irc-form__optional {
	 color: #78848a;
 
	 font-size: 0.75rem;
	 font-weight: 400;
 }
 
 
 /* ------------------------------------------------------------------------
	INPUTS
	------------------------------------------------------------------------ */
 
 .irc-form input[type="text"],
 .irc-form input[type="email"],
 .irc-form input[type="tel"],
 .irc-form input[type="url"],
 .irc-form select,
 .irc-form textarea {
	 width: 100%;
 
	 padding: 0.7rem 0.8rem;
 
	 border: 1px solid var(--irc-form-border);
	 border-radius: 0;
 
	 background: var(--irc-form-bg);
 
	 color: var(--irc-form-text);
 
	 font-family: inherit;
	 font-size: 0.88rem;
	 font-weight: 400;
	 line-height: 1.4;
 
	 outline: none;
 
	 transition:
		 border-color 0.2s ease,
		 box-shadow 0.2s ease;
 }
 
 
 /* Text inputs */
 
 .irc-form input[type="text"],
 .irc-form input[type="email"],
 .irc-form input[type="tel"],
 .irc-form input[type="url"],
 .irc-form select {
	 min-height: 44px;
 }
 
 
 /* Textarea */
 
 .irc-form textarea {
	 min-height: 120px;
 
	 resize: vertical;
 }
 
 
 /* Focus */
 
 .irc-form input[type="text"]:focus,
 .irc-form input[type="email"]:focus,
 .irc-form input[type="tel"]:focus,
 .irc-form input[type="url"]:focus,
 .irc-form select:focus,
 .irc-form textarea:focus {
	 border-color: var(--irc-form-blue-dark);
 
	 box-shadow:
		 0 0 0 3px rgba(5, 143, 199, 0.10);
 }
 
 
 /* ------------------------------------------------------------------------
	SELECT
	------------------------------------------------------------------------ */
 
 .irc-form select {
	 appearance: none;
	 -webkit-appearance: none;
 
	 padding-right: 2.5rem;
 
	 background-image:
		 linear-gradient(45deg, transparent 50%, var(--irc-form-blue-dark) 50%),
		 linear-gradient(135deg, var(--irc-form-blue-dark) 50%, transparent 50%);
 
	 background-position:
		 calc(100% - 16px) 50%,
		 calc(100% - 11px) 50%;
 
	 background-size:
		 5px 5px,
		 5px 5px;
 
	 background-repeat: no-repeat;
 }
 
 
 /* ------------------------------------------------------------------------
	SUBMIT BUTTON
	------------------------------------------------------------------------ */
 
 .irc-form__submit {
	 display: flex;
	 justify-content: center;
 
	 margin-top: 1.5rem;
 }
 
 .irc-form input[type="submit"],
 .irc-form .irc-form__button {
	 min-width: 175px;
 
	 padding: 0.7rem 1.5rem;
 
	 border: 0;
	 border-radius: 999px;
 
	 background: var(--irc-form-blue);
 
	 color: #fff;
 
	 font-family: inherit;
	 font-size: 0.88rem;
	 font-weight: 600;
	 line-height: 1;
 
	 cursor: pointer;
 
	 box-shadow:
		 0 3px 8px rgba(7, 24, 79, 0.10);
 
	 transition:
		 background-color 0.2s ease,
		 transform 0.2s ease,
		 box-shadow 0.2s ease;
 }
 
 .irc-form input[type="submit"]:hover,
 .irc-form input[type="submit"]:focus,
 .irc-form .irc-form__button:hover,
 .irc-form .irc-form__button:focus {
	 background: var(--irc-form-blue-dark);
 
	 transform: translateY(-2px);
 
	 box-shadow:
		 0 6px 12px rgba(7, 24, 79, 0.16);
 }
 
 
 /* ------------------------------------------------------------------------
	PRIVACY
	------------------------------------------------------------------------ */
 
 .irc-form__privacy {
	 margin-top: 1rem;
 
	 text-align: center;
 }
 
 .irc-form__privacy p {
	 margin: 0;
 
	 color: #606e75;
 
	 font-size: 0.72rem;
	 line-height: 1.4;
 }
 
 .irc-form__privacy a {
	 color: var(--irc-form-blue-dark);
 
	 font-weight: 600;
	 text-decoration: underline;
	 text-underline-offset: 2px;
 }
 
 
 /* ========================================================================
	CONTACT FORM 7 VALIDATION
	======================================================================== */
 
 .irc-form .wpcf7-not-valid {
	 border-color: #c73434 !important;
 }
 
 .irc-form .wpcf7-not-valid-tip {
	 margin-top: 0.3rem;
 
	 color: #c73434;
 
	 font-size: 0.72rem;
	 line-height: 1.3;
 }
 
 .wpcf7 form .wpcf7-response-output {
	 margin: 1.4rem 0 0;
	 padding: 0.75rem 1rem;
 
	 border-width: 1px;
 
	 font-size: 0.82rem;
	 line-height: 1.4;
 }
 
 
 /* Hide CF7's spinner from disrupting button alignment */
 
 .irc-form__submit .wpcf7-spinner {
	 position: absolute;
 }
 
 
 /* ========================================================================
	HEADER / COMPACT VERSION
	If the form is placed inside your header/modal.
	======================================================================== */
 
 header .irc-form {
	 max-width: 700px;
 }
 
 header .irc-form__heading {
	 margin-bottom: 1.2rem;
 }
 
 header .irc-form__heading h2 {
	 font-size: 22px;
 }
 
 header .irc-form__heading p {
	 font-size: 0.82rem;
 }
 
 header .irc-form__grid {
	 gap: 0.8rem 1rem;
 }
 
 header .irc-form input[type="text"],
 header .irc-form input[type="email"],
 header .irc-form select {
	 min-height: 40px;
 
	 padding: 0.55rem 0.7rem;
 
	 font-size: 0.82rem;
 }
 
 
 /* ========================================================================
	MOBILE
	======================================================================== */
 
 @media (max-width: 767.98px) {
 
	 .irc-form__grid {
		 grid-template-columns: 1fr;
	 }
 
	 .irc-form__field--full {
		 grid-column: auto;
	 }
 
	 .irc-form__heading {
		 text-align: left;
	 }
 
	 .irc-form__submit {
		 justify-content: flex-start;
	 }
 
	 .irc-form__privacy {
		 text-align: left;
	 }
 
 }
 
 
 @media (max-width: 479.98px) {
 
	 .irc-form input[type="submit"],
	 .irc-form .irc-form__button {
		 width: 100%;
	 }
 
 }
 
 /* ========================================================================
	SEARCH RESULTS
	======================================================================== */
 
 .search-results-page {
	 padding-top: 40px;
	 padding-bottom: 60px;
 }
 
 
 .search-results-header {
	 margin-bottom: 30px;
 }
 
 
 .search-results-header__title {
	 margin: 0;
 
	 color: var(--irc-blue-dark, #058fc7);
 
	 font-size: 22px;
	 font-weight: 700;
	 line-height: 1.25;
 
	 text-transform: uppercase;
 }
 
 
 .search-results-header__title span {
	 color: var(--irc-navy, #11164d);
 }
 
 
 /* ------------------------------------------------------------------------
	RESULTS
	------------------------------------------------------------------------ */
 
 .search-results-list {
	 display: grid;
	 gap: 18px;
 }
 
 
 .search-result-card {
	 position: relative;
 
	 padding: 24px 28px;
 
	 border: 1px solid #d9e8ee;
 
	 background: #fff;
 
	 box-shadow:
		 0 4px 12px rgba(7, 24, 79, 0.07);
 }
 
 
 /* Content type */
 
 .search-result-card__type {
	 margin-bottom: 7px;
 
	 color: var(--irc-blue-dark, #058fc7);
 
	 font-size: 11px;
	 font-weight: 700;
	 line-height: 1;
 
	 letter-spacing: 0.08em;
 
	 text-transform: uppercase;
 }
 
 
 /* Title */
 
 .search-result-card__title {
	 margin: 0 0 10px;
 
	 font-size: 18px;
	 font-weight: 700;
	 line-height: 1.3;
 }
 
 
 .search-result-card__title a {
	 color: var(--irc-navy, #11164d);
 
	 text-decoration: none;
 }
 
 
 .search-result-card__title a:hover,
 .search-result-card__title a:focus {
	 color: var(--irc-blue-dark, #058fc7);
 }
 
 
 /* Context */
 
 .search-result-card__excerpt {
	 max-width: 1000px;
 
	 color: var(--irc-text, #17213a);
 
	 font-size: 14px;
	 line-height: 1.6;
 }
 
 
 .search-result-card__excerpt p {
	 margin: 0;
 }
 
 
 /* Highlight searched wording */
 
 .search-result-card__excerpt mark {
	 padding: 1px 3px;
 
	 background: #dff3fb;
 
	 color: var(--irc-navy, #11164d);
 
	 font-weight: 700;
 }
 
 
 /* Footer */
 
 .search-result-card__footer {
	 margin-top: 14px;
 }
 
 
 .search-result-card__link {
	 display: inline-flex;
	 align-items: center;
 
	 color: var(--irc-blue-dark, #058fc7);
 
	 font-size: 13px;
	 font-weight: 700;
 
	 text-decoration: none;
 }
 
 
 .search-result-card__link::after {
	 content: "›";
 
	 margin-left: 6px;
 
	 font-size: 18px;
	 line-height: 1;
 }
 
 
 .search-result-card__link:hover,
 .search-result-card__link:focus {
	 color: var(--irc-navy, #11164d);
 }
 
 
 /* ------------------------------------------------------------------------
	NO RESULTS
	------------------------------------------------------------------------ */
 
 .search-no-results {
	 padding: 35px;
 
	 background: #eef9fd;
 }
 
 
 .search-no-results h2 {
	 margin: 0 0 10px;
 
	 color: var(--irc-blue-dark, #058fc7);
 
	 font-size: 22px;
 }
 
 
 .search-no-results p {
	 margin: 0;
 }
 
 
 /* ------------------------------------------------------------------------
	MOBILE
	------------------------------------------------------------------------ */
 
 @media (max-width: 767.98px) {
 
	 .search-result-card {
		 padding: 20px;
	 }
 
 }
 
 /* ABBREVIATIONS MODAL */
 .irc-abbreviations-modal__dialog {
	 width: min(900px, 100%);
 }
 
 .irc-abbreviations-modal__title {
	 margin: 0 0 1rem;
	 color: var(--irc-blue-dark, #058fc7);
	 font-size: 22px;
	 font-weight: 700;
	 line-height: 1.2;
	 text-transform: uppercase;
 }
 
 .irc-abbreviations-modal__intro {
	 margin: 0 0 1.5rem;
	 color: var(--irc-text, #17213a);
	 font-size: 0.9rem;
	 line-height: 1.5;
 }
 
 .irc-abbreviations-list {
	 margin: 0;
	 padding: 0;
 }
 
 .irc-abbreviations-list__row {
	 display: grid;
	 grid-template-columns: minmax(150px, 0.45fr) minmax(0, 1.55fr);
	 gap: 1rem 1.5rem;
	 padding: 0.8rem 0;
	 border-bottom: 1px solid #dbe8ed;
 }
 
 .irc-abbreviations-list__row:first-child {
	 border-top: 1px solid #dbe8ed;
 }
 
 .irc-abbreviations-list__term,
 .irc-abbreviations-list__meaning {
	 margin: 0;
 }
 
 .irc-abbreviations-list__term {
	 color: var(--irc-navy, #11164d);
	 font-size: 0.85rem;
	 font-weight: 700;
	 line-height: 1.4;
 }
 
 .irc-abbreviations-list__meaning {
	 color: var(--irc-text, #17213a);
	 font-size: 0.85rem;
	 line-height: 1.45;
 }
 
 .irc-abbreviations-modal__empty {
	 margin: 0;
	 color: #66737a;
	 font-size: 0.88rem;
 }
 
 @media (max-width: 575.98px) {
	 .irc-abbreviations-list__row {
		 grid-template-columns: 1fr;
		 gap: 0.25rem;
	 }
 }
 
 /* ========================================================================
	SINGLE BLOG / NEWS / RESOURCE
	======================================================================== */
 
 .irc-single-post {
	 max-width: 920px;
	 margin: 0 auto;
	 padding: 45px 0 70px;
 }
 
 
 /* --------------------------------------------------------------------------
	HEADER
	-------------------------------------------------------------------------- */
 
 .irc-single-post__header {
	 max-width: 680px;
	 margin: 0 0 2rem;
 }
 
 .irc-single-post__meta {
	 display: flex;
	 flex-wrap: wrap;
	 align-items: center;
	 gap: 0.55rem 1rem;
	 margin-bottom: 0.8rem;
 }
 
 .irc-single-post__type {
	 color: var(--irc-blue-dark, #058fc7);
	 font-size: 0.72rem;
	 font-weight: 700;
	 letter-spacing: 0.08em;
	 text-transform: uppercase;
 }
 
 .irc-single-post__categories {
	 font-size: 0.72rem;
	 line-height: 1.3;
 }
 
 .irc-single-post__categories a {
	 color: #66747b;
	 text-decoration: none;
 }
 
 .irc-single-post__categories a:hover,
 .irc-single-post__categories a:focus {
	 color: var(--irc-blue-dark, #058fc7);
 }
 
 .irc-single-post__title {
	 margin-bottom: 30px;
	 color: var(--irc-navy, #11164d);
	 font-size: 28px;
	 font-weight: 700;
 }
 
 .irc-single-post__date {
	 margin-top: 0.8rem;
	 color: #6d7a81;
	 font-size: 0.8rem;
 }
 
 
 /* --------------------------------------------------------------------------
	ARTICLE + RIGHT-HAND NAVIGATION
	-------------------------------------------------------------------------- */
 
 .irc-single-post__layout {
	 display: grid;
	 grid-template-columns: minmax(0, 640px) 220px;
	 gap: 3rem;
	 align-items: start;
 }
 
 .irc-single-post__main {
	 min-width: 0;
 }
 
 .irc-single-post__sidebar {
	 position: sticky;
	 top: 100px;
	 min-width: 0;
 }
 
 
 /* --------------------------------------------------------------------------
	FEATURED IMAGE
	-------------------------------------------------------------------------- */
 
 .irc-single-post__featured-image {
	 width: 100%;
	 max-width: 620px;
	 margin: 0 0 1.75rem;
	 overflow: hidden;
 }
 
 .irc-single-post__image {
	 display: block;
	 width: 100%;
	 height: auto;
	 max-height: 360px;
	 object-fit: cover;
	 margin-bottom: 0;
 }
 
 
 /* --------------------------------------------------------------------------
	ARTICLE CONTENT
	-------------------------------------------------------------------------- */
 
 .irc-single-post__content {
	 width: 100%;
	 max-width: 620px;
	 margin: 0;
	 color: var(--irc-text, #17213a);
	 font-size: 0.96rem;
	 line-height: 1.7;
 }
 
 .irc-single-post__content > *:first-child {
	 margin-top: 0;
 }
 
 .irc-single-post__content a {
	 color: var(--irc-blue-dark, #058fc7);
	 text-decoration: underline;
	 text-underline-offset: 2px;
 }
 
 .irc-single-post__content img {
	 max-width: 100%;
	 height: auto;
 }
 
 
 /* --------------------------------------------------------------------------
	PREVIOUS / NEXT – RIGHT SIDE
	-------------------------------------------------------------------------- */
 
 .irc-single-post-nav {
	 display: grid;
	 gap: 1rem;
 }
 
 .irc-single-post-nav__previous,
 .irc-single-post-nav__next {
	 min-width: 0;
	 text-align: left;
 }
 
 .irc-single-post-nav__link {
	 display: block;
	 padding: 1rem;
	 border: 1px solid #d9e7ec;
	 background: #fff;
	 text-decoration: none;
	 box-shadow: 0 3px 8px rgba(7, 24, 79, 0.05);
	 transition:
		 transform 0.2s ease,
		 border-color 0.2s ease,
		 box-shadow 0.2s ease;
 }
 
 .irc-single-post-nav__link:hover,
 .irc-single-post-nav__link:focus {
	 border-color: var(--irc-blue-dark, #058fc7);
	 box-shadow: 0 5px 14px rgba(7, 24, 79, 0.09);
	 transform: translateY(-2px);
	 text-decoration: none;
 }
 
 .irc-single-post-nav__eyebrow {
	 display: block;
	 margin-bottom: 0.4rem;
	 color: var(--irc-blue-dark, #058fc7);
	 font-size: 0.67rem;
	 font-weight: 700;
	 line-height: 1.3;
	 letter-spacing: 0.04em;
	 text-transform: uppercase;
 }
 
 .irc-single-post-nav__title {
	 display: block;
	 color: var(--irc-navy, #11164d);
	 font-size: 0.82rem;
	 font-weight: 700;
	 line-height: 1.4;
 }
 
 
 /* --------------------------------------------------------------------------
	TABLET
	-------------------------------------------------------------------------- */
 
 @media (max-width: 991.98px) {
 
	 .irc-single-post {
		 max-width: 820px;
	 }
 
	 .irc-single-post__layout {
		 grid-template-columns: minmax(0, 1fr) 200px;
		 gap: 2rem;
	 }
 
 }
 
 
 /* --------------------------------------------------------------------------
	MOBILE
	-------------------------------------------------------------------------- */
 
 @media (max-width: 767.98px) {
 
	 .irc-single-post {
		 padding: 30px 0 50px;
	 }
 
	 .irc-single-post__header {
		 max-width: none;
	 }
 
	 .irc-single-post__layout {
		 grid-template-columns: 1fr;
		 gap: 2rem;
	 }
 
	 .irc-single-post__featured-image,
	 .irc-single-post__content {
		 max-width: none;
	 }
 
	 .irc-single-post__image {
		 max-height: none;
	 }
 
	 .irc-single-post__sidebar {
		 position: static;
	 }
 
	 .irc-single-post-nav {
		 grid-template-columns: repeat(2, minmax(0, 1fr));
	 }
 
 }
 
 
 @media (max-width: 575.98px) {
 
	 .irc-single-post-nav {
		 grid-template-columns: 1fr;
	 }
 
 }
 
 .irc-single-post__content blockquote {
	 position: relative;
 
	 margin: 2rem 0;
	 padding: 1.4rem 1.6rem 1.4rem 2rem;
 
	 border-left: 4px solid var(--irc-blue-dark, #058fc7);
 
	 background: #eef9fd;
 
	 color: var(--irc-navy, #11164d);
 
	 font-size: 1.05rem;
	 font-weight: 500;
	 line-height: 1.6;
 
	 box-shadow:
		 0 4px 12px rgba(7, 24, 79, 0.06);
 }
 
 
 .irc-single-post__content blockquote::before {
	 content: "“";
 
	 position: absolute;
	 top: 6px;
	 left: 12px;
 
	 color: var(--irc-blue, #18a9df);
 
	 font-family: Georgia, serif;
	 font-size: 3.2rem;
	 font-weight: 700;
	 line-height: 1;
 
	 opacity: 0.28;
 }
 
 
 .irc-single-post__content blockquote p {
	 margin: 0;
 }
 
 
 .irc-single-post__content blockquote p + p {
	 margin-top: 0.8rem;
 }
 
 
 .irc-single-post__content blockquote cite {
	 display: block;
 
	 margin-top: 1rem;
 
	 color: #66747b;
 
	 font-size: 0.78rem;
	 font-style: normal;
	 font-weight: 600;
	 line-height: 1.4;
 }
 
 
 /* Optional source / author dash */
 
 .irc-single-post__content blockquote cite::before {
	 content: "— ";
 
	 color: var(--irc-blue-dark, #058fc7);
 }
 
 
 @media (max-width: 767.98px) {
 
	 .irc-single-post__content blockquote {
		 margin: 1.5rem 0;
		 padding: 1.2rem 1.2rem 1.2rem 1.6rem;
 
		 font-size: 1rem;
	 }
 
	 .irc-single-post__content blockquote::before {
		 left: 8px;
 
		 font-size: 2.7rem;
	 }
 
 }
 
 /* ==========================================================================
	BROWSE CONTENT / CONTENT LIBRARY
	========================================================================== */
 
 .irc-library-page {
	 padding: 45px 0 70px;
 }
 
 .irc-library-header {
	 max-width: 900px;
	 margin: 0 auto 2rem;
	 text-align: center;
 }
 
 .irc-library-header__title {
	 margin: 0;
	 color: var(--irc-blue-dark, #058fc7);
	 font-size: 22px;
	 font-weight: 700;
	 line-height: 1.2;
	 text-transform: uppercase;
	 margin-bottom: 30px;
 }
 
 .irc-library-header__intro {
	 max-width: 760px;
	 margin: 1rem auto 0;
	 color: var(--irc-text, #17213a);
	 font-size: 0.92rem;
	 line-height: 1.55;
 }
 
 .irc-library-header__intro > *:last-child {
	 margin-bottom: 0;
 }
 
 .irc-library-filters {
	 display: flex;
	 flex-wrap: wrap;
	 justify-content: center;
	 gap: 0.65rem;
	 margin-bottom: 2rem;
 }
 
 .irc-library-filters__button {
	 display: inline-flex;
	 align-items: center;
	 justify-content: center;
	 min-width: 120px;
	 padding: 0.65rem 1.25rem;
	 border: 1px solid var(--irc-blue-dark, #058fc7);
	 border-radius: 999px;
	 background: #fff;
	 color: var(--irc-blue-dark, #058fc7);
	 font-size: 0.8rem;
	 font-weight: 700;
	 line-height: 1;
	 text-decoration: none;
	 transition:
		 background-color 0.2s ease,
		 color 0.2s ease,
		 transform 0.2s ease;
 }
 
 .irc-library-filters__button:hover,
 .irc-library-filters__button:focus,
 .irc-library-filters__button.is-active {
	 background: var(--irc-blue-dark, #058fc7);
	 color: #fff;
	 transform: translateY(-1px);
 }
 
 .irc-library-grid {
	 display: grid;
	 grid-template-columns: repeat(3, minmax(0, 1fr));
	 gap: 1.25rem;
 }
 
 .irc-library-card {
	 min-width: 0;
	 display: flex;
	 flex-direction: column;
	 border: 1px solid #dbe8ed;
	 background: #fff;
	 box-shadow: 0 4px 12px rgba(7, 24, 79, 0.07);
	 overflow: hidden;
	 transition:
		 transform 0.2s ease,
		 box-shadow 0.2s ease;
 }
 
 .irc-library-card:hover {
	 transform: translateY(-3px);
	 box-shadow: 0 8px 20px rgba(7, 24, 79, 0.11);
 }
 
 .irc-library-card__image-wrap {
	 display: block;
	 aspect-ratio: 16 / 9;
	 overflow: hidden;
	 background: #eef6f8;
 }
 
 .irc-library-card__image {
	 display: block;
	 width: 100%;
	 height: 100%;
	 object-fit: cover;
 }
 
 .irc-library-card__body {
	 flex: 1;
	 display: flex;
	 flex-direction: column;
	 padding: 1.15rem;
 }
 
 .irc-library-card__type {
	 margin-bottom: 0.5rem;
	 color: var(--irc-blue-dark, #058fc7);
	 font-size: 0.68rem;
	 font-weight: 700;
	 letter-spacing: 0.07em;
	 line-height: 1;
	 text-transform: uppercase;
 }
 
 .irc-library-card__title {
	 margin: 0 0 0.55rem;
	 font-size: 1rem;
	 font-weight: 700;
	 line-height: 1.35;
 }
 
 .irc-library-card__title a {
	 color: var(--irc-navy, #11164d);
	 text-decoration: none;
 }
 
 .irc-library-card__title a:hover,
 .irc-library-card__title a:focus {
	 color: var(--irc-blue-dark, #058fc7);
 }
 
 .irc-library-card__date {
	 margin-bottom: 0.65rem;
	 color: #6c7980;
	 font-size: 0.72rem;
	 line-height: 1.3;
 }
 
 .irc-library-card__excerpt {
	 margin: 0;
	 color: var(--irc-text, #17213a);
	 font-size: 0.82rem;
	 line-height: 1.55;
 }
 
 .irc-library-card__footer {
	 margin-top: auto;
	 padding-top: 1rem;
 }
 
 .irc-library-card__link {
	 display: inline-flex;
	 align-items: center;
	 color: var(--irc-blue-dark, #058fc7);
	 font-size: 0.78rem;
	 font-weight: 700;
	 text-decoration: none;
 }
 
 .irc-library-card__link::after {
	 content: "›";
	 margin-left: 5px;
	 font-size: 17px;
	 line-height: 1;
 }
 
 .irc-library-card__link:hover,
 .irc-library-card__link:focus {
	 color: var(--irc-navy, #11164d);
 }
 
 .irc-library-pagination {
	 margin-top: 2.5rem;
 }
 
 .irc-library-pagination .page-numbers {
	 display: flex;
	 flex-wrap: wrap;
	 justify-content: center;
	 gap: 0.4rem;
	 margin: 0;
	 padding: 0;
	 list-style: none;
 }
 
 .irc-library-pagination .page-numbers li {
	 margin: 0;
 }
 
 .irc-library-pagination a.page-numbers,
 .irc-library-pagination span.page-numbers {
	 min-width: 36px;
	 height: 36px;
	 display: flex;
	 align-items: center;
	 justify-content: center;
	 padding: 0 0.65rem;
	 border: 1px solid #d2e2e8;
	 background: #fff;
	 color: var(--irc-blue-dark, #058fc7);
	 font-size: 0.76rem;
	 font-weight: 700;
	 text-decoration: none;
 }
 
 .irc-library-pagination .page-numbers.current,
 .irc-library-pagination a.page-numbers:hover,
 .irc-library-pagination a.page-numbers:focus {
	 border-color: var(--irc-blue-dark, #058fc7);
	 background: var(--irc-blue-dark, #058fc7);
	 color: #fff;
 }
 
 .irc-library-pagination li:before{
	 display: none;
 }
 
 .irc-library-empty {
	 padding: 2rem;
	 background: #eef9fd;
	 text-align: center;
 }
 
 .irc-library-empty h2 {
	 margin: 0 0 0.5rem;
	 color: var(--irc-blue-dark, #058fc7);
	 font-size: 22px;
 }
 
 .irc-library-empty p {
	 margin: 0;
 }
 
 @media (max-width: 991.98px) {
 
	 .irc-library-grid {
		 grid-template-columns: repeat(2, minmax(0, 1fr));
	 }
 
 }
 
 @media (max-width: 575.98px) {
 
	 .irc-library-page {
		 padding: 30px 0 50px;
	 }
 
	 .irc-library-header {
		 text-align: left;
	 }
 
	 .irc-library-filters {
		 justify-content: flex-start;
		 overflow-x: auto;
		 flex-wrap: nowrap;
		 padding-bottom: 0.35rem;
	 }
 
	 .irc-library-filters__button {
		 flex: 0 0 auto;
	 }
 
	 .irc-library-grid {
		 grid-template-columns: 1fr;
	 }
 
 }
 
 /* ==========================================================================
	CONTACT US MODAL
	========================================================================== */
 
 body.irc-contact-modal-open {
	 overflow: hidden;
 }
 
 .irc-contact-modal[hidden] {
	 display: none !important;
 }
 
 .irc-contact-modal {
	 position: fixed;
	 inset: 0;
	 z-index: 10060;
	 display: flex;
	 align-items: center;
	 justify-content: center;
	 padding: 24px;
 }
 
 .irc-contact-modal__backdrop {
	 position: absolute;
	 inset: 0;
	 background: rgba(0, 0, 0, 0.56);
	 opacity: 0;
	 transition: opacity 0.24s ease;
 }
 
 .irc-contact-modal__dialog {
	 position: relative;
	 z-index: 2;
	 width: min(820px, 100%);
	 max-height: calc(100vh - 48px);
	 overflow-y: auto;
	 background: #fff;
	 box-shadow: 0 22px 60px rgba(0, 0, 0, 0.28);
	 opacity: 0;
	 transform: translateY(16px) scale(0.985);
	 transition:
		 opacity 0.24s ease,
		 transform 0.24s ease;
 }
 
 .irc-contact-modal.is-open .irc-contact-modal__backdrop {
	 opacity: 1;
 }
 
 .irc-contact-modal.is-open .irc-contact-modal__dialog {
	 opacity: 1;
	 transform: translateY(0) scale(1);
 }
 
 .irc-contact-modal__close {
	 position: absolute;
	 top: 14px;
	 right: 14px;
	 z-index: 4;
	 width: 36px;
	 height: 36px;
	 display: flex;
	 align-items: center;
	 justify-content: center;
	 padding: 0;
	 border: 0;
	 border-radius: 50%;
	 background: var(--irc-blue-dark, #058fc7);
	 color: #fff;
	 font-family: inherit;
	 font-size: 26px;
	 line-height: 1;
	 cursor: pointer;
 }
 
 .irc-contact-modal__close:hover,
 .irc-contact-modal__close:focus {
	 background: var(--irc-navy, #11164d);
	 outline: 0;
 }
 
 .irc-contact-modal__content {
	 padding: clamp(2rem, 5vw, 3.5rem);
 }
 
 .irc-contact-modal__title {
	 margin: 0 3rem 1rem 0;
	 color: var(--irc-blue-dark, #058fc7);
	 font-size: 22px;
	 font-weight: 700;
	 line-height: 1.2;
	 text-transform: uppercase;
 }
 
 .irc-contact-modal__intro,
 .irc-contact-modal__alternative {
	 margin: 0 0 1.25rem;
	 color: var(--irc-text, #17213a);
	 font-size: 0.95rem;
	 line-height: 1.55;
 }
 
 .irc-contact-modal__contacts {
	 margin: 0 0 1.6rem;
	 border-top: 1px solid var(--irc-border, #dce5eb);
	 border-left: 1px solid var(--irc-border, #dce5eb);
 }
 
 .irc-contact-modal__contact-row {
	 display: grid;
	 grid-template-columns: minmax(130px, 0.7fr) minmax(190px, 1fr) minmax(240px, 1.45fr);
 }
 
 .irc-contact-modal__contact-row > div {
	 min-width: 0;
	 padding: 0.7rem 0.8rem;
	 border-right: 1px solid var(--irc-border, #dce5eb);
	 border-bottom: 1px solid var(--irc-border, #dce5eb);
	 font-size: 0.88rem;
	 line-height: 1.4;
 }
 
 .irc-contact-modal__contact-email a {
	 color: var(--irc-blue, #149fe3);
	 font-weight: 600;
	 text-decoration: none;
	 overflow-wrap: anywhere;
 }
 
 .irc-contact-modal__contact-email a:hover,
 .irc-contact-modal__contact-email a:focus {
	 text-decoration: underline;
 }
 
 .irc-contact-modal__form .wpcf7-form p {
	 margin: 0 0 1rem;
 }
 
 .irc-contact-modal__form label {
	 display: block;
	 margin-bottom: 0.35rem;
	 color: var(--irc-text, #17213a);
	 font-size: 0.9rem;
	 font-weight: 500;
 }
 
 .irc-contact-modal__form input[type="text"],
 .irc-contact-modal__form input[type="email"],
 .irc-contact-modal__form select,
 .irc-contact-modal__form textarea {
	 width: 100%;
	 padding: 0.7rem 0.8rem;
	 border: 1px solid var(--irc-border, #d4dce1);
	 border-radius: 0;
	 background: #fff;
	 color: var(--irc-text, #17213a);
	 font: inherit;
 }
 
 .irc-contact-modal__form textarea {
	 min-height: 170px;
	 resize: vertical;
 }
 
 .irc-contact-modal__form input:focus,
 .irc-contact-modal__form select:focus,
 .irc-contact-modal__form textarea:focus {
	 border-color: var(--irc-blue, #149fe3);
	 outline: 2px solid rgba(20, 159, 227, 0.16);
	 outline-offset: 0;
 }
 
 .irc-contact-modal__form input[type="submit"] {
	 min-width: 150px;
	 padding: 0.72rem 1.4rem;
	 border: 0;
	 border-radius: 0;
	 background: var(--irc-blue, #149fe3);
	 color: #fff;
	 font: inherit;
	 font-size: 0.82rem;
	 font-weight: 700;
	 text-transform: uppercase;
	 cursor: pointer;
 }
 
 .irc-contact-modal__form input[type="submit"]:hover,
 .irc-contact-modal__form input[type="submit"]:focus {
	 background: var(--irc-blue-dark, #058fc7);
	 outline: 0;
 }
 
 .irc-contact-modal__setup-note {
	 padding: 1rem;
	 border: 1px solid #e7c86b;
	 background: #fff9df;
	 color: #493d15;
	 font-size: 0.88rem;
	 line-height: 1.5;
 }
 
 @media (max-width: 767.98px) {
 
	 .irc-contact-modal {
		 padding: 14px;
	 }
 
	 .irc-contact-modal__dialog {
		 max-height: calc(100vh - 28px);
	 }
 
	 .irc-contact-modal__contact-row {
		 grid-template-columns: 1fr;
	 }
 
	 .irc-contact-modal__contact-row > div {
		 padding: 0.55rem 0.7rem;
	 }
 
	 .irc-contact-modal__contact-name {
		 font-weight: 700;
	 }
 
 }
 
 
 /* ==========================================================================
	CONTACT FORM 7 – CONTACT US CONTENT
	========================================================================== */
 
 .irc-contact-form__intro,
 .irc-contact-form__alternative {
	 margin: 0 0 1.25rem;
	 color: var(--irc-text, #17213a);
	 font-size: 0.95rem;
	 line-height: 1.55;
 }
 
 .irc-contact-form__intro p,
 .irc-contact-form__alternative p {
	 margin: 0;
 }
 
 .irc-contact-form__contacts {
	 margin: 0 0 1.6rem;
	 border-top: 1px solid var(--irc-border, #dce5eb);
	 border-left: 1px solid var(--irc-border, #dce5eb);
 }
 
 .irc-contact-form__contact-row {
	 display: grid;
	 grid-template-columns: minmax(130px, 0.7fr) minmax(190px, 1fr) minmax(240px, 1.45fr);
 }
 
 .irc-contact-form__contact-row > div {
	 min-width: 0;
	 padding: 0.7rem 0.8rem;
	 border-right: 1px solid var(--irc-border, #dce5eb);
	 border-bottom: 1px solid var(--irc-border, #dce5eb);
	 font-size: 0.88rem;
	 line-height: 1.4;
 }
 
 .irc-contact-form__contact-email a {
	 color: var(--irc-blue, #149fe3);
	 font-weight: 600;
	 text-decoration: none;
	 overflow-wrap: anywhere;
 }
 
 .irc-contact-form__contact-email a:hover,
 .irc-contact-form__contact-email a:focus {
	 text-decoration: underline;
 }
 
 .irc-contact-form__field {
	 margin-bottom: 1rem;
 }
 
 .irc-contact-form__field label {
	 display: block;
	 margin: 0;
	 color: var(--irc-text, #17213a);
	 font-size: 0.9rem;
	 font-weight: 500;
	 line-height: 1.4;
 }
 
 .irc-contact-form__required {
	 font-weight: 400;
 }
 
 .irc-contact-form__field .wpcf7-form-control-wrap {
	 display: block;
	 margin-top: 0.4rem;
 }
 
 .irc-contact-form input[type="text"],
 .irc-contact-form input[type="email"],
 .irc-contact-form select,
 .irc-contact-form textarea {
	 width: 100%;
	 padding: 0.7rem 0.8rem;
	 border: 1px solid var(--irc-border, #d4dce1);
	 border-radius: 0;
	 background: #fff;
	 color: var(--irc-text, #17213a);
	 font: inherit;
 }
 
 .irc-contact-form textarea {
	 min-height: 170px;
	 resize: vertical;
 }
 
 .irc-contact-form input:focus,
 .irc-contact-form select:focus,
 .irc-contact-form textarea:focus {
	 border-color: var(--irc-blue, #149fe3);
	 outline: 2px solid rgba(20, 159, 227, 0.16);
	 outline-offset: 0;
 }
 
 .irc-contact-form__submit {
	 margin-top: 1.2rem;
 }
 
 .irc-contact-form input[type="submit"] {
	 min-width: 150px;
	 padding: 0.72rem 1.4rem;
	 border: 0;
	 border-radius: 0;
	 background: var(--irc-blue, #149fe3);
	 color: #fff;
	 font: inherit;
	 font-size: 0.82rem;
	 font-weight: 700;
	 text-transform: uppercase;
	 cursor: pointer;
 }
 
 .irc-contact-form input[type="submit"]:hover,
 .irc-contact-form input[type="submit"]:focus {
	 background: var(--irc-blue-dark, #058fc7);
	 outline: 0;
 }
 
 @media (max-width: 767.98px) {
	 .irc-contact-form__contact-row {
		 grid-template-columns: 1fr;
	 }
 
	 .irc-contact-form__contact-name {
		 font-weight: 700;
	 }
 }

/* ==========================================================================
	GLOBAL LIST STYLING
	========================================================================== */
 
 #main ul {
	 list-style: circle outside !important;
	 padding-left: 1.2rem;
 }
 
 #main ul li {
	 padding-left: 0 !important;
 }
 
 /* Remove the old FontAwesome bullet */
 #main ul li::before {
	 content: none !important;
	 display: none !important;
 }
 
 /* New blue circular bullet */
 #main ul:not(.page-numbers) li::marker {
	 color: var(--irc-blue, #18a9df);
	 font-size: 1em;
 }
 
 #main ul.page-numbers {
	 list-style: none !important;
	 padding-left: 0;
 }
 
 #main ul.page-numbers li {
	 list-style: none !important;
 }
 
 #main ul.page-numbers li::marker {
	 content: none;
 }

/* ========================================================================
	MOBILE HEADER
	======================================================================== */
 
 @media (max-width: 767.98px) {
 
	 /* ------------------------------------------------------------
		HEADER
		------------------------------------------------------------ */
 
	 header {
		 padding-top: 7px;
 
		 background-position: center top;
	 }
 
	 header.header-scrolled {
		 padding-top: 5px;
 
		 box-shadow: 0 3px 10px rgba(0, 0, 0, 0.14);
	 }
 
 
	 /* ------------------------------------------------------------
		MAIN NAVBAR ROW
		Logo left / hamburger right
		------------------------------------------------------------ */
 
	 header .navbar {
		 display: flex;
		 flex-wrap: wrap;
		 align-items: center;
 
		 width: 100%;
 
		 padding-top: 0;
		 padding-bottom: 0;
	 }
 
 
	 /* ------------------------------------------------------------
		LOGO
		------------------------------------------------------------ */
 
	 .navbar-brand {
		 flex: 0 1 auto;
 
		 display: flex;
		 align-items: center;
 
		 margin: 5px 0 6px 0 !important;
		 padding: 0 !important;
 
		 height: auto;
	 }
 
	 .navbar-brand img {
		 display: block;
 
		 width: auto;
		 max-width: 175px;
		 max-height: 48px;
 
		 height: auto;
 
		 margin: 0;
	 }
 
 
	 header.header-scrolled .navbar-brand img {
		 max-height: 40px;
	 }
 
 
	 /* ------------------------------------------------------------
		MOBILE NAV TOGGLER
		------------------------------------------------------------ */
 
	 .navbar-toggler {
		 flex: 0 0 44px;
 
		 display: inline-flex;
		 align-items: center;
		 justify-content: center;
 
		 width: 44px;
		 height: 44px;
 
		 margin: 0 0 0 auto;
		 padding: 0;
 
		 align-self: center;
 
		 border: 1px solid rgba(255, 255, 255, 0.7);
		 border-radius: 50%;
 
		 background: transparent;
 
		 color: #fff;
 
		 box-shadow: none;
 
		 cursor: pointer;
 
		 transition:
			 background-color 0.2s ease,
			 border-color 0.2s ease,
			 transform 0.2s ease;
	 }
 
 
	 .navbar-toggler:hover,
	 .navbar-toggler:focus {
		 border-color: #fff;
 
		 background: rgba(255, 255, 255, 0.1);
 
		 color: #fff;
 
		 outline: none;
		 box-shadow: none;
	 }
 
 
	 .navbar-toggler:active {
		 transform: scale(0.96);
	 }
 
 
	 /* Hamburger SVG */
 
	 .navbar-toggler .ham {
		 display: block;
 
		 width: 34px;
		 height: 34px;
 
		 margin: 0;
 
		 color: inherit;
 
		 cursor: pointer;
 
		 transition: transform 0.4s ease;
	 }
 
 
	 .navbar-toggler .line {
		 fill: none;
 
		 stroke: currentColor;
		 stroke-width: 5;
 
		 stroke-linecap: round;
 
		 transition:
			 stroke-dasharray 0.4s ease,
			 stroke-dashoffset 0.4s ease;
	 }
 
 
	 /* Ham 8 animation */
 
	 .navbar-toggler .ham8 .top {
		 stroke-dasharray: 40 160;
	 }
 
	 .navbar-toggler .ham8 .middle {
		 stroke-dasharray: 40 142;
 
		 transform-origin: 50%;
 
		 transition: transform 0.4s ease;
	 }
 
	 .navbar-toggler .ham8 .bottom {
		 stroke-dasharray: 40 85;
 
		 transform-origin: 50%;
 
		 transition:
			 transform 0.4s ease,
			 stroke-dashoffset 0.4s ease;
	 }
 
 
	 .navbar-toggler .ham8.active {
		 transform: rotate(45deg);
	 }
 
	 .navbar-toggler .ham8.active .top {
		 stroke-dashoffset: -64px;
	 }
 
	 .navbar-toggler .ham8.active .middle {
		 transform: rotate(90deg);
	 }
 
	 .navbar-toggler .ham8.active .bottom {
		 stroke-dashoffset: -64px;
	 }
 
 
	 /* Slightly smaller when header shrinks */
 
	 header.header-scrolled .navbar-toggler {
		 flex-basis: 40px;
 
		 width: 40px;
		 height: 40px;
	 }
 
	 header.header-scrolled .navbar-toggler .ham {
		 width: 30px;
		 height: 30px;
	 }
 
 
	 /* ------------------------------------------------------------
		RIGHT-HAND HEADER CONTENT
		Force onto new line underneath logo / hamburger
		------------------------------------------------------------ */
 
	 .nav-right {
		 flex: 0 0 100%;
 
		 width: 100%;
 
		 display: flex;
		 flex-direction: column;
 
		 align-items: stretch;
		 justify-content: center;
 
		 margin: 0;
 
		 text-align: left;
 
		 color: #fff;
 
		 font-size: 11px;
	 }
 
 
	 /* ------------------------------------------------------------
		TOP ACTION BUTTONS
		------------------------------------------------------------ */
 
	 .top-socials {
		 display: flex;
		 flex-wrap: wrap;
 
		 align-items: center;
		 justify-content: flex-end;
 
		 gap: 6px;
 
		 width: 100%;
 
		 margin: 20px 0;
	 }
 	.navbar-toggler .ham .line{
		stroke: #fff;
	 }
 
	 .top-socials .search,
	 .top-socials .member,
	 .top-socials .join {
		 display: inline-flex;
		 align-items: center;
		 justify-content: center;
 
		 gap: 4px;
 
		 margin: 0;
 
		 padding: 4px 8px;
 
		 border: 1px solid rgba(255, 255, 255, 0.8);
		 border-radius: 30px;
 
		 background: transparent;
 
		 color: #fff;
 
		 font-family: inherit;
		 font-size: 10px;
		 font-weight: inherit;
		 line-height: 1.15;
 
		 white-space: nowrap;
	 }
 
 
	 img.top-nav-logo {
		 display: block;
 
		 flex: 0 0 auto;
 
		 width: 10px;
		 height: auto;
		 max-height: 12px;
 
		 margin: 0 3px 0 0;
	 }
 
 
	 /* ------------------------------------------------------------
		MOBILE ANCHOR OFFSET
		------------------------------------------------------------ */
 
	 :target {
		 scroll-margin-top: 90px;
	 }
 
 
	 /* ------------------------------------------------------------
		STANDARD HEADER MODALS
		------------------------------------------------------------ */
 
	 .irc-header-modal:not(.irc-header-modal--search) {
		 align-items: flex-start;
 
		 padding: 15px;
	 }
 
 
	 .irc-header-modal:not(.irc-header-modal--search)
	 .irc-header-modal__dialog {
		 width: 100%;
 
		 max-height: calc(100vh - 30px);
 
		 padding:
			 3rem
			 1.2rem
			 1.5rem;
	 }
 
 
	 .irc-header-modal__close {
		 top: 12px;
		 right: 12px;
 
		 width: 34px;
		 height: 34px;
 
		 font-size: 25px;
	 }
 
 
	 /* ------------------------------------------------------------
		SEARCH MODAL
		------------------------------------------------------------ */
 
	 .irc-search-modal__dialog {
		 align-items: flex-start;
 
		 padding:
			 100px
			 24px
			 40px;
	 }
 
 
	 .irc-search-modal__close {
		 top: 20px;
		 right: 20px;
	 }
 
 
	 .irc-search-modal__title {
		 margin-bottom: 1.4rem;
 
		 font-size: 22px;
	 }
 
 
	 .irc-search-form__field {
		 grid-template-columns: 1fr;
 
		 border-bottom: 0;
	 }
 
 
	 .irc-search-form__input {
		 min-height: 54px;
 
		 margin-bottom: 1rem;
 
		 padding: 10px 0;
 
		 border-bottom: 2px solid #fff;
 
		 font-size: 1.3rem;
	 }
 
 
	 .irc-search-form__button {
		 width: 100%;
	 }
 
 }

/* ========================================================================
	MOBILE NAVIGATION
	======================================================================== */
 
 @media (max-width: 767.98px) {
 
	 .mobile-nav.customModal {
		 position: fixed;
		 top: 0;
		 right: 0;
		 bottom: 0;
		 left: 0;
		 z-index: 9998;
		 width: 100%;
		 height: 100dvh;
		 padding:
			 90px
			 24px
			 32px;
		 overflow-x: hidden;
		 overflow-y: auto;
		 background:
			 linear-gradient(
				 180deg,
				 rgba(17, 22, 77, 0.98) 0%,
				 rgba(11, 42, 105, 0.98) 100%
			 );
 
		 color: #fff;
 
		 -webkit-overflow-scrolling: touch;
	 }
 
 
	 /* ------------------------------------------------------------
		MAIN MENU
		------------------------------------------------------------ */
 
	 .mobile-nav ul {
		 margin: 0;
		 padding: 0;
 
		 list-style: none;
	 }
 
 
	 .mobile-nav li {
		 position: relative;
 
		 margin: 0;
		 padding: 0;
 
		 border-bottom: 1px solid rgba(255, 255, 255, 0.13);
	 }
 
 
	 .mobile-nav li::before {
		 display: none !important;
 
		 content: none !important;
	 }
 
 
	 .mobile-nav a {
		 display: flex;
		 align-items: center;
 
		 min-height: 48px;
 
		 padding: 12px 6px;
 
		 color: #fff;
 
		 font-size: 15px;
		 font-weight: 500;
		 line-height: 1.25;
 
		 text-decoration: none;
 
		 transition:
			 color 0.2s ease,
			 background-color 0.2s ease,
			 padding-left 0.2s ease;
	 }
 
 
	 .mobile-nav a:hover,
	 .mobile-nav a:focus {
		 color: var(--irc-blue, #18a9df);
 
		 text-decoration: none;
 
		 outline: none;
	 }
 
 
	 /* Current page */
 
	 .mobile-nav .current-menu-item > a,
	 .mobile-nav .current-menu-ancestor > a,
	 .mobile-nav .current_page_item > a,
	 .mobile-nav .current_page_ancestor > a {
		 color: var(--irc-blue, #18a9df);
 
		 font-weight: 700;
	 }
 
 
	 /* Small blue marker for current page */
 
	 .mobile-nav .current-menu-item > a::before,
	 .mobile-nav .current_page_item > a::before {
		 content: "";
 
		 flex: 0 0 auto;
 
		 width: 6px;
		 height: 6px;
 
		 margin-right: 8px;
 
		 border-radius: 50%;
 
		 background: var(--irc-blue, #18a9df);
	 }
 
 
	 /* ------------------------------------------------------------
		SUB MENUS
		------------------------------------------------------------ */
 
	 .mobile-nav .sub-menu {
		 margin: 0 0 6px;
		 padding: 0 0 4px 18px;
 
		 border-left: 1px solid rgba(24, 169, 223, 0.45);
	 }
 
 
	 .mobile-nav .sub-menu li {
		 border-bottom: 0;
	 }
 
 
	 .mobile-nav .sub-menu a {
		 min-height: 40px;
 
		 padding:
			 8px
			 4px
			 8px
			 12px;
 
		 color: rgba(255, 255, 255, 0.78);
 
		 font-size: 13px;
		 font-weight: 400;
	 }
 
 
	 .mobile-nav .sub-menu a:hover,
	 .mobile-nav .sub-menu a:focus {
		 color: #fff;
 
		 padding-left: 16px;
	 }
 
 
	 .mobile-nav .sub-menu .current-menu-item > a {
		 color: var(--irc-blue, #18a9df);
 
		 font-weight: 600;
	 }
 
 
	 /* ------------------------------------------------------------
		MENU ITEMS WITH CHILDREN
		------------------------------------------------------------ */
 
	 .mobile-nav .menu-item-has-children > a {
		 padding-right: 38px;
	 }
 
 
	 /*
	  * If your mobile_nav() outputs a separate dropdown toggle,
	  * this styles the common WordPress toggle variations.
	  */
 
	 .mobile-nav .dropdown-toggle,
	 .mobile-nav .dtoggle,
	 .mobile-nav .submenu-toggle {
		 position: absolute;
 
		 top: 7px;
		 right: 0;
 
		 width: 36px;
		 height: 36px;
 
		 display: flex;
		 align-items: center;
		 justify-content: center;
 
		 padding: 0;
 
		 border: 0;
		 border-radius: 50%;
 
		 background: rgba(255, 255, 255, 0.08);
 
		 color: #fff;
 
		 cursor: pointer;
		 display: none!important;
	 }
 
 
	 .mobile-nav .dropdown-toggle:hover,
	 .mobile-nav .dropdown-toggle:focus,
	 .mobile-nav .dtoggle:hover,
	 .mobile-nav .dtoggle:focus,
	 .mobile-nav .submenu-toggle:hover,
	 .mobile-nav .submenu-toggle:focus {
		 background: rgba(24, 169, 223, 0.22);
 
		 color: #fff;
 
		 outline: none;
	 }
 
 
	 /* ------------------------------------------------------------
		SEARCH AREA
		------------------------------------------------------------ */
 
	 .mobile-nav .searchContainer {
		 margin-top: 26px !important;
		 padding-top: 22px;
 
		 border-top: 1px solid rgba(255, 255, 255, 0.18);
 
		 background: transparent !important;
	 }
 
 
	 .mobile-nav .searchContainer form {
		 position: relative;
 
		 display: flex;
		 align-items: stretch;
 
		 width: 100%;
 
		 margin: 0;
	 }
 
 
	 .mobile-nav .search-query {
		 flex: 1 1 auto;
 
		 width: 100%;
		 min-width: 0;
		 height: 46px;
 
		 padding:
			 0
			 52px
			 0
			 18px;
 
		 border: 1px solid rgba(255, 255, 255, 0.65);
		 border-radius: 999px;
 
		 background: rgba(255, 255, 255, 0.06);
 
		 color: #fff;
 
		 font-family: inherit;
		 font-size: 14px;
		 font-weight: 400;
 
		 box-shadow: none;
 
		 outline: none;
 
		 transition:
			 border-color 0.2s ease,
			 background-color 0.2s ease;
	 }
 
 
	 .mobile-nav .search-query:focus {
		 border-color: #fff;
 
		 background: rgba(255, 255, 255, 0.1);
 
		 box-shadow: none;
	 }
 
 
	 .mobile-nav .search-query::placeholder {
		 color: rgba(255, 255, 255, 0.6);
	 }
 
 
	 /* Search arrow */
 
	 .mobile-nav .search-button {
		 position: absolute;
 
		 top: 4px;
		 right: 4px;
 
		 width: 38px;
		 height: 38px;
 
		 display: flex;
		 align-items: center;
		 justify-content: center;
 
		 padding: 0;
 
		 border: 0;
		 border-radius: 50%;
 
		 background: var(--irc-blue, #18a9df);
 
		 color: #fff;
 
		 cursor: pointer;
 
		 transition:
			 background-color 0.2s ease,
			 transform 0.2s ease;
	 }
 
 
	 .mobile-nav .search-button:hover,
	 .mobile-nav .search-button:focus {
		 background: var(--irc-blue-dark, #058fc7);
 
		 transform: translateX(2px);
 
		 outline: none;
	 }
 
 
	 .mobile-nav .modal-search-icon {
		 margin: 0;
 
		 color: inherit;
 
		 font-size: 12px;
	 }
 
 
	 /* ------------------------------------------------------------
		SMALL PHONES
		------------------------------------------------------------ */
 
	 @media (max-width: 420px) {
 
		 .mobile-nav.customModal {
			 padding:
				 82px
				 18px
				 28px;
		 }
 
 
		 .mobile-nav a {
			 min-height: 44px;
 
			 font-size: 14px;
		 }
 
 
		 .mobile-nav .sub-menu a {
			 font-size: 12px;
		 }
 
	 }
 
 }
 
 @media (max-width: 767.98px) {
 
	 .mobile-nav.customModal {
		 position: fixed;
 
		 /* Sit below sticky header */
		 top: 185px;
		 right: 0;
		 bottom: 0;
		 left: 0;
 
		 z-index: 9998;
 
		 width: 100%;
		 height: calc(100dvh - 82px);
 
		 padding:
			 22px
			 24px
			 32px;
 
		 overflow-x: hidden;
		 overflow-y: auto;
 
		 background:
			 linear-gradient(
				 180deg,
				 rgba(17, 22, 77, 0.98) 0%,
				 rgba(11, 42, 105, 0.98) 100%
			 );
 
		 color: #fff;
 
		 -webkit-overflow-scrolling: touch;
	 }
 
 
	 /* When header is in its smaller scrolled state */
 
	 header.header-scrolled ~ .mobile-nav.customModal,
	 header.header-scrolled .mobile-nav.customModal {
		 top: 140px;
 
		 height: calc(100dvh - 140px);
	 }
 
 
	 /* ------------------------------------------------------------
		REMOVE MOBILE HOVER MOVEMENT
		------------------------------------------------------------ */
 
	 .mobile-nav a:hover,
	 .mobile-nav a:focus {
		 color: var(--irc-blue, #18a9df);
 
		 padding-left: 6px;
 
		 background: transparent;
 
		 text-decoration: none;
 
		 outline: none;
	 }
 
 
	 .mobile-nav .sub-menu a:hover,
	 .mobile-nav .sub-menu a:focus {
		 color: #fff;
 
		 padding-left: 12px;
 
		 background: transparent;
	 }
 
 
	 /* Prevent any list-item hover styling */
 
	 .mobile-nav li:hover,
	 .mobile-nav li:focus,
	 .mobile-nav li:focus-within {
		 background: transparent;
	 }
 
 
	 /* Small phones */
 
	 @media (max-width: 420px) {
 
		 .mobile-nav.customModal {
			 top: 185px;
 
			 height: calc(100dvh - 76px);
 
			 padding:
				 18px
				 18px
				 28px;
		 }
 
	 }
 
 }
 
 /* ------------------------------------------------------------
	ACTIVE MENU ITEM
	Top-level only
	------------------------------------------------------------ */
 
 .mobile-nav > ul > li.current-menu-item > a,
 .mobile-nav > ul > li.current-menu-ancestor > a,
 .mobile-nav > ul > li.current_page_item > a,
 .mobile-nav > ul > li.current_page_ancestor > a {
	 color: var(--irc-blue, #18a9df);
	 font-weight: 700;
 }
 
 
 /* Blue dot only on top-level current item */
 
 .mobile-nav > ul > li.current-menu-item > a::before,
 .mobile-nav > ul > li.current_page_item > a::before {
	 content: "";
 
	 flex: 0 0 auto;
 
	 width: 6px;
	 height: 6px;
 
	 margin-right: 8px;
 
	 border-radius: 50%;
 
	 background: var(--irc-blue, #18a9df);
 }
 
 
 /* ------------------------------------------------------------
	SUBMENU ITEMS
	Do not inherit WordPress current-page styling
	------------------------------------------------------------ */
 
 .mobile-nav .sub-menu .current-menu-item > a,
 .mobile-nav .sub-menu .current-menu-ancestor > a,
 .mobile-nav .sub-menu .current_page_item > a,
 .mobile-nav .sub-menu .current_page_ancestor > a {
	 color: rgba(255, 255, 255, 0.78);
	 font-weight: 400;
 }
 
 
 /* Remove current-page dot from submenu items */
 
 .mobile-nav .sub-menu .current-menu-item > a::before,
 .mobile-nav .sub-menu .current_page_item > a::before {
	 display: none;
	 content: none;
 }
 
 img.footer-social {
	 width: 12px;
	 margin-bottom: 3px;
 }
 
 @media (min-width: 768px) {
   .navbar-default .navbar-header .navbar-nav li.menu-item-has-children {
	 padding-right: 12px;
   }
 }
 
 /* Hidden on desktop */
 .scroll-hint {
	 display: none;
 }
 
 .click-hint {
	  display: none;
  }
 
 
 @media (max-width: 767.98px) {
 
	 .scroll-hint {
		 display: flex;
		 align-items: center;
		 justify-content: flex-end;
		 gap: 0.35rem;
 
		 margin: 0 0 0.45rem;
 
		 color: #6a777e;
 
		 font-size: 0.7rem;
		 font-style: italic;
		 line-height: 1.2;
	 }
 
 
	 .scroll-hint span {
		 color: var(--about-blue-dark);
		 font-size: 1rem;
		 font-style: normal;
		 line-height: 1;
	 }
 
 
	 .about-board-tabs__nav {
		 display: flex;
		 overflow-x: auto;
 
		 -webkit-overflow-scrolling: touch;
 
		 scrollbar-width: thin;
	 }
 
 
	 .about-board-tabs__tab {
		 flex: 0 0 160px;
	 }
	 
	 .click-hint {
		 display: block;
		  gap: 0.35rem;
		  margin: 0 0 0.45rem;
		  color: #6a777e;
		  font-size: 0.7rem;
		  font-style: italic;
		  line-height: 1.2;
	  }
	 

 
 }