/*
*
* generic / global
*
*
*/
:root {
	--color-blue: #364366;
	--color-bright-blue: #0E2C5E;
	--color-dark-blue: #091C3A;
	--color-yellow: #FFB800;
	--color-bright-yellow: #FFDD00;
	--color-orange: #FF9900;
	--color-black: #000000;
	--color-white: #FFFFFF;
	--color-gray: #F2F2F2;
	--color-medium-gray: #787878;
}

body {
	box-sizing: border-box;
	color: var(--color-blue);
	font-smoothing: antialiased;
	-webkit-font-smoothing: antialiased;
}

.visually-hidden {
	clip: rect(0 0 0 0); 
  clip-path: inset(50%);
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap; 
  width: 1px;
}

.row {
	max-width: 1320px;
	padding: 0 20px;
	margin: 0 auto;
	box-sizing: border-box;
}

.row-flex {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
}

.row-narrow {
	max-width: 1080px;
}

@media screen and (min-width: 780px) {
	.row {
		padding: 0 40px;
	}
}

main {
	background-color: var(--color-gray);
	padding: 40px 0;
}

@media screen and (min-width: 780px) {
	main {
		padding: 60px 0;
	}
}

@keyframes rotate{
	from { transform: rotate(-360deg); }
	to { transform: rotate(360deg); }
}

.multiply-img {
	mix-blend-mode: multiply;
}
/*
*
* type, links, buttons
*
*/

h1 {
	font-weight: normal;
	color: var(--color-blue);
}

p {
	color: var(--color-blue);
}

h1.small {
	font-size: 3.5rem;
}

h2.small {
	font-size: 2.5rem;
}

@media (min-width: 550px) {
	h1.small {
		font-size: 4rem;
		line-height: 5rem;
	}

	h2.small {
		font-size: 2.7rem;
	}
}

button.yellow,
a.button.yellow {
	background-color: var(--color-yellow);
	padding: 5px 20px;
	width: 100%;
	box-shadow: 0px 2px 8px rgba(0, 0, 0, 0.25);
	line-height: 1.1;
	font-family: 'Gotham', sans-serif;
	font-size: 14px;
	font-weight: bold;
	color: var(--color-black);
}

button.yellow svg,
a.button.yellow svg {
	max-width: 15px;
	vertical-align: sub;
	margin-right: 5px;
}

button.yellow:active svg {
	animation-name: rotate;
  animation-duration: 4s;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
}

.button.outline {
	padding: 5px 18px;
	height: auto;
	white-space: unset;
	line-height: 1.5;
	border-radius: 0px;
}

.button.outline svg {
	vertical-align: middle;
	margin-left: 5px;
	margin-right: -5px;
	transition: all 0.2s ease;
}

.button.outline:hover,
.button.outline:focus {
	outline: 2px solid var(--color-yellow);
}

.button.outline:hover svg,
.button.outline:focus svg {
	margin-left: 12px;
	margin-right: -12px;
}

.button.outline-blue {
	border: 4px solid var(--color-bright-blue);
	color: var(--color-bright-blue);
	font-size: 1.8rem;
	font-weight: 600;
}

.button.outline-yellow {
	border: 4px solid var(--color-bright-yellow);
	color: var(--color-bright-yellow);
	font-size: 1.8rem;
	font-weight: 600;
}

.button.outline-yellow svg path {
	fill: var(--color-bright-yellow);
}


/*
*
* forms
*
*/
select {
	border-radius: 0;
	background: var(--color-white);
	border: 1px solid var(--color-black);
	color: var(--color-black);
	font-family: 'Gotham', sans-serif;
	font-size: 14px;
}


.small-label {
	color: var(--color-medium-gray);
	font-size: 12px;
	text-transform: uppercase;
	font-weight: bold;
	font-family: 'Gotham', sans-serif;
}

/*
*
* header
*  
*/ 
.site-header {
	margin: 0;
	padding: 10px 0;
}

.site-header #logo {
	max-width: 233px;
}

.site-header .menu {
	margin: 1em 0 !important;
}

.site-header .menu li a {
	color: var(--color-blue);
	border-right: 0;
	border-bottom: 2px solid var(--color-blue);
	margin: 0 7px;
	padding: 2px 5px;
	font-size: 1.5rem;
}
@media screen and (max-width: 720px) {
	.site-header .eight {
		display: none;
	}
}

@media screen and (min-width: 900px) {
	.site-header .menu li a {
		font-size: 1.6rem;
	}
}

.site-header .white-nav .menu li a {
	color: var(--color-white);
	border-bottom-color: var(--color-white);
}

.site-header .menu li.current-menu-item a {
	color: var(--color-orange);
	border-bottom-color: var(--color-orange);
}

.site-header .menu li:last-child a {
	margin-right: 0;
}

.site-header .menu li a:hover,
.site-header .menu li a:focus {
	color: var(--color-yellow);
	border-bottom-color: var(--color-yellow);
	text-decoration: none;
}

/* mobile nav */

@keyframes hover {
  50% {
    transform: translateX(10px);
  }
}
.offcanvas-menu > label {
  top: 30px;
  right: 30px;
  position: absolute;
  width: 40px;
  height: 40px;
  cursor: pointer;
  transition: 0.3s ease;
  display: flex;
  align-items: center;
  z-index: 9999;
}

@media screen and (min-width: 721px) {
	.offcanvas-menu > label {
		display: none;
	}
}
.offcanvas-menu label span,
.offcanvas-menu label span::before,
.offcanvas-menu label span::after {
  transition: background 0.3s, transform 0.3s;
}
.offcanvas-menu label span,
.offcanvas-menu label span::before,
.offcanvas-menu label span::after {
  content: "";
  position: absolute;
  height: 4px;
  width: 40px;
  background: var(--color-orange);
}
.offcanvas-menu label span::before {
  transform: translateY(-12px);
}
.offcanvas-menu label span::after {
  transform: translateY(12px);
}
.offcanvas-menu nav {
  position: fixed;
  height: 100%;
  width: 350px;
  right: -420px;
  overflow: hidden;
  background: var(--color-gray);
  transition: 0.3s ease;
  padding: 40px 30px;
  top: 0;
}
.offcanvas-menu nav > div {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.offcanvas-menu nav > div a {
  font-size: 2.5rem;
  font-weight: 500;
  display: flex;
  align-items: center;
  background: linear-gradient(-90deg, #49a4ed 30%, #3d00a9 110%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.offcanvas-menu nav > div a i {
  font-size: 4rem;
  background: linear-gradient(120deg, #49a4ed 30%, #3d00a9 110%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.offcanvas-menu nav > div label {
  width: 30px;
  height: 30px;
  display: flex !important;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: 0.3s ease;
  margin-left: auto;
}
.offcanvas-menu nav > div label span,
.offcanvas-menu nav > div label span:before,
.offcanvas-menu nav > div label span:after {
  background: #4d4d4d;
}
.offcanvas-menu nav ul {
  margin-top: 30px;
  width: 100%;
}
.offcanvas-menu nav ul li {
  cursor: pointer;
  padding: 10px 0;
  transform: translateX(-30px);
  opacity: 0;
  transition: 0.4s ease;
  display: block;
  width: 100%;
}
.offcanvas-menu nav ul li a {
  font-size: 2.5rem;
  line-height: 1.5;
  font-weight: 400;
  color: #333333;
  display: block;
}
.offcanvas-menu input[type=checkbox] {
  display: none;
}
.offcanvas-menu input[type=checkbox]:checked ~ label {
  opacity: 0;
  pointer-events: none;
}
.offcanvas-menu input[type=checkbox]:checked ~ nav {
  right: 0;
  z-index: 99999;
}
.offcanvas-menu input[type=checkbox]:checked ~ nav label span {
  background: transparent;
}
.offcanvas-menu input[type=checkbox]:checked ~ nav label span:before {
  transform: rotate(-45deg);
}
.offcanvas-menu input[type=checkbox]:checked ~ nav label span:after {
  transform: rotate(45deg);
}
.offcanvas-menu input[type=checkbox]:checked ~ nav label span:before,
.offcanvas-menu input[type=checkbox]:checked ~ nav label span:after {
  transition-delay: 0.2s;
}
.offcanvas-menu input[type=checkbox]:checked ~ nav ul li {
  opacity: 1;
  transform: translateX(0px);
}



/*
*
* footer
*
*/
.site-footer {
	background-color: var(--color-bright-blue);
	color: var(--color-white);
	text-align: center;
	margin: 0;
	padding: 40px 20px;
}

.site-footer .menu-main-menu-container {
	font-weight: bold;
	margin-bottom: -15px;
}

.site-footer .menu a {
	color: var(--color-white);
	font-size: 14px;
}

.site-footer .menu-footer-container {
	margin-top: 30px;
}

#google_translate_element {
	max-width: 300px;
	margin: 20px auto 0;
}

.site-footer #logo-footer {
	max-width: 175px;
}

/*
*
* home
*
*/
.home .site-header {
	background-color: transparent;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	width: 100%;
	border-bottom: 0;
}

@media screen and (min-width: 780px) {

}

.home main {
	padding: 0;
}

.hero {
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	background-color: var(--color-dark-blue);
	display: flex;
	align-items: center;
	box-sizing: border-box;
	padding: 130px 0 60px;
}

@media screen and (min-width: 780px) {
	.hero  {
		min-height: 100vh;
		padding: 100px 0;
	}
}

.home-hero h1 {
	color: var(--color-white);
	font-weight: bold;
	margin-bottom: 0;
}

.callout {
	font-size: 3rem;
	color: var(--color-black);
	font-weight: normal;
	width: 100%;
}

@media screen and (min-width: 780px) {
	.callout {
		font-size: 3rem;
		line-height: 1.4;
	}
}

@media screen and (min-width: 1080px) {
	.callout {
		font-size: 3.4rem;
	}
}

.before-bar {
	position: relative;
	padding-top: 20px;
}

.before-bar::before {
	content: '';
	height: 5px;
	width: 95px;
	background-color: var(--color-blue);
	position: absolute;
	top: 0;
	left: 0;
}

.text-center.before-bar::before {
	right: 0;
	margin: auto;
}

.two-column {
	margin: 50px 0;
	font-size: 1.6rem;
	color: var(--color-blue);
}

.two-column .blue-bg {
	background-color: var(--color-blue);
	margin-left: 0;
	position: relative;
}

.two-column .callout {
	margin-bottom: 40px;
}

.two-column .blue-bg .callout {
	color: var(--color-white);
	margin-bottom: 0;
}

.two-column .full-width-image {
	width: 100%;
}

.two-column figure {
	margin: 2.5rem 0 40px;
}

.two-column figure figcaption img {
	max-width: 100px;
	display: inline-block;
	vertical-align: middle;
}

.two-column figure figcaption img + cite {
	max-width: calc(100% - 120px);
	margin-left: 20px;
	display: inline-block;
	vertical-align: middle;
}

.two-column blockquote {
	margin: 0 0 2.5rem;
}

.two-column cite {
	font-weight: bold;
	font-size: 1.8rem;
	font-style: normal;
}

.two-column cite span {
	font-weight: normal;
	font-size: 1.6rem;
	display: block;
}

.two-column svg {
	vertical-align: middle;
}

.two-column ul {
	list-style: disc;
	list-style-position: inside;
}

.two-column ul li {
	margin-bottom: 1px;
}

.two-column form {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}

.two-column form h4 {
	width: 100%;
	margin-bottom: 10px;
	margin-top: 30px;
	color: var(--color-black);
}

.two-column form select {
	background-color: var(--color-yellow);
	color: var(--color-black);
}

@media screen and (min-width: 780px) {
	.two-column .blue-bg::before {
		content: '';
		position: absolute;
		top: 0;
		bottom: 0;
		height: 100%;
		width: 100%;
		right: 100%;
		background-color: var(--color-blue);
	}
}

@media screen and (min-width: 900px) {
	.two-column {
		margin: 60px 0;
		overflow: hidden;
	}
	.two-column form select {
		width: 30%;
	}
}

.two-column.color-bg .row-flex {
	align-items: center;
}

.two-column .has-color-bg {
	padding: 30px 25px;
}

@media screen and (min-width: 780px) {
	.two-column .has-color-bg {
		padding: 60px 40px 60px 0px;
	}
}

@media screen and (min-width: 900px) {
	.two-column .has-color-bg {
		padding: 80px 60px 80px 40px;
	}
}

.home .document-related-posts .row-flex{
	padding: 0 20px;
}

.partners {
	margin: 50px 0;
}

.partners img {
	mix-blend-mode: multiply;
	margin: 15px;
}

.partners .twelve {
	display: flex;
	align-items: center;
	justify-content: space-around;
	flex-wrap: wrap;
}

.text-callout-section {
	padding: 40px 0;
	background-color: var(--color-dark-blue);
	color: var(--color-white);
}

.text-callout-section p {
	font-size: 1.6rem;
}

.text-callout-section > .row {
	max-width: 1000px;
}

.text-callout-section .row > *:not(.button) {
	color: var(--color-white);
}

@media screen and (min-width: 900px) {
	.text-callout-section p {
		font-size: 1.8rem;
	}

}

/*
*
* archive
*
*/


@media screen and (min-width: 780px) {
	.search-results aside {
		padding-top: 40px;
	}
}

.archive .filter-bar {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding-bottom: 15px;
}

.archive .results-text {
	font-family: 'Gotham', sans-serif;
	font-style: normal;
	font-weight: 400;
	font-size: 1.8rem;
	line-height: 21px;
	margin-bottom: 0;
}

.archive .filter-bar select {
	max-width: 125px;
	margin-bottom: 0;
	background-color: transparent;
	border: 0;
	font-weight: bold;
	text-align: right;
}

.archive .search-item {
	background-color: var(--color-white);
	box-shadow: 0px 4px 16px rgba(0, 0, 0, 0.15);
	padding: 30px 30px 40px;
	position: relative;
	margin-bottom: 40px;
}

.archive .search-item h5 {
	font-size: 27px;
	font-weight: 400;
	color: var(--color-blue);
}

.archive .search-item h5 a {
	color: var(--color-blue);
	text-decoration: underline;
}

.archive .search-item h5 a:hover,
.archive .search-item h5 a:focus {
	color: var(--color-orange);
}

.archive .search-item p {
	font-size: 16px;
}

.archive .search-item .download-link {
	color: var(--color-orange);
	font-weight: bold;
	position: absolute;
	bottom: 10px;
	right: 10px;
	font-family: 'Gotham', sans-serif;
	font-smoothing: antialiased;
	-webkit-font-smoothing: antialiased;
}

.archive .search-item .download-link svg {
	display: inline-block;
	vertical-align: top;
	margin-left: 6px;
}

.archive .search-item .download-link:hover,
.archive .search-item .download-link:focus {
	color: var(--color-blue);
	text-decoration: none;
}

.archive .search-item .download-link:hover svg path,
.archive .search-item .download-link:focus svg path {
	fill: var(--color-blue);
}

/*
*
* search
*
*/
.search .menu a[href="/?s="] {
	color: var(--color-orange);
	border-bottom-color: var(--color-orange);
}

/*
*
* item single page
*
*/
.single main .item {
	position: relative;
}

.document-details {
	background-color: var(--color-white);
	box-shadow: 0px 4px 16px rgba(0, 0, 0, 0.15);
	padding: 40px;
	//position: relative;
	box-sizing: border-box;
}

.document-details p {
	margin-bottom: 6px;
	font-size: 1.8rem;
	color: var(--color-blue);
}

.document-details .meta {
	border-top: 1px solid #D7D7D7;
	margin-top: 30px;
	padding-top: 20px;
}

.document-details .meta p {
	font-size: 1.6rem;
}

.document-details .meta span,
.document-details .meta a {
	color: var(--color-blue);
	font-size: 1.5rem;
	font-weight: normal;
}

.document-details .meta p a:not(:last-of-type)::after {
	content: ', ';
}

@media screen and (min-width: 780px) {
	.document-details {
		max-width: 90%;
		padding: 60px 120px 60px 60px;
	}

	.document-details h1 {
		margin-bottom: 30px;
	}

	.document-details p {
		font-size: 1.8rem;
	}
}

.download-button {
	background-color: var(--color-orange);
	box-shadow: 0px 4px 16px rgba(0, 0, 0, 0.15);
	padding: 10px 20px;
	color: var(--color-white);
	text-align: center;
	line-height: 1.4;
	box-sizing: border-box;
	transition: all 0.2s ease;
	margin-top: 20px;
	display: block;
}

.download-button:hover,
.download-button:focus {
	color: var(--color-white);
	background-color: var(--color-bright-blue);
	text-decoration: none;
}

.download-button svg {
	vertical-align: middle;
	width: 20px;
	margin-right: 7px;
}

@media screen and (max-width: 779px) {
	.download-button br {
		display: none;
	}
}

@media screen and (min-width: 780px) {

	.download-button {
		position: absolute;
		right: 0;
		width: 180px;
		top: 20px;
		margin-top: 0;
		padding: 20px;
	}

	.download-button svg {
		display: block;
		margin: 0 auto 5px;
		width: 27px;
	}

}

.document-related-posts {
	margin: 4rem 0;
}

.document-related-posts .row-flex{
	align-items: stretch;
	padding: 0;
}

.document-related-posts .row-flex::after {
	content: '';
	width: 30.6666666667%;
}

.document-related-posts h3 {
	width: 100%;
	color: var(--color-blue);
	font-family: 'Gotham', sans-serif;
	font-size: 2.7rem;
}

.document-related-posts h3 a {
	color: var(--color-blue);
	text-decoration: underline;
}

.document-related-posts h3 a:hover,
.document-related-posts h3 a:focus {
	color: var(--color-orange);
}

.document-related-posts .search-item {
	background-color: var(--color-white);
	margin-left: 0;
	padding: 25px;
}

.document-related-posts .search-item h4 {
	font-weight: 400;
	line-height: 1.6;
}

.document-related-posts .search-item h4 a {
	color: var(--color-blue);
	text-decoration: underline;
}

.document-related-posts .search-item h4 a:hover,
.document-related-posts .search-item h4 a:focus {
	color: var(--color-orange);
}

@media screen and (min-width: 780px) {
	.document-related-posts {
		margin-top: 6rem;
	}

	.document-related-posts .search-item {
		min-height: 200px;
		padding: 40px;
	}
}

/* used throughout the site, not just on the document page */
.related-country-map {
	background-color: var(--color-white);
	margin-left: 0;
	padding: 25px;
	border: 1px solid #ddd;
	border-radius: 4px;
}

.related-country-map.map-search {
	margin-bottom: 4rem;
	min-height: 0px;
}

@media screen and (min-width: 780px) {

	.related-country-map {
		min-height: 200px;
		padding: 40px;
	}

	.related-country-map.map-search {
		margin-bottom: 6rem;
	}
}

/*
*
* page 
*
*
*/
.page .site-header.has-hero-image {
	background-color: transparent;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	width: 100%;
	border-bottom: 0;
}

.page main {
	padding-top: 0;
}

.page .entry-content {
	padding: 40px 0;
}

.page .entry-content a {
	color: var(--color-bright-blue); 
  text-decoration: none; 
  border-bottom: 2px solid var(--color-yellow); 
  transition: all 0.2s ease;
}

.page .entry-content a:hover,
.page .entry-content a:focus {
	border-bottom-color: #364366;
}

.page .entry-content .wp-block-image a {
	border-bottom-color: transparent;
}

@media screen and (min-width: 900px) {
	.page .entry-content {
		padding: 60px 0 40px;
	}

	.page .entry-content p {
		font-size: 1.8rem;
	}
}

.page .dark-blue-bg {
	background-color: var(--color-dark-blue);
}

.page .dark-blue-bg > *:not(.btn) {
	color: var(--color-white);
}

.page .hero-text-callout {
	padding: 40px;
	margin-top: 40px;
}

@media screen and (min-width: 900px) {
	.page .hero-text-callout {
		margin-top: 70px;
	}

}

.page .hero-text-callout blockquote,
.page .hero-text-callout blockquote p {
	margin: 0;
	color: var(--color-white);
	font-weight: bold;
	font-size: 1.8rem;
}

@media screen and (min-width: 900px) {
	.page .hero-text-callout blockquote,
	.page .hero-text-callout blockquote p {
		font-size: 2rem;
	}
}

.page .hero-text-callout cite {
	font-weight: bold;
	font-style: normal;
	margin-top: 25px;
	display: block;
}

.page .hero-text-callout cite span {
	font-weight: normal;
}

.page .hero-text-callout p:last-of-type {
	margin-bottom: 0;
}

.c-accordion__item {
	border-top: 1px solid var(--color-medium-gray);
} /* The accordion item container */
.c-accordion__item.is-open {} /* is-open is added to open accordion items */
.c-accordion__item.is-read {} /* is-read is added to accordion items that have been opened at least once */
.c-accordion__title {
	font-size: 2rem;
	font-weight: 400;
	color: var(--color-black);
	letter-spacing: 0;
	padding: 2rem 2rem 0 0;
} /* An accordion item title */
.c-accordion__title::after {
	content: url("data:image/svg+xml,%3Csvg width='14' height='9' viewBox='0 0 14 9' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6.89844 8.09375C7.09375 8.28906 7.36719 8.28906 7.5625 8.09375L13.3438 2.35156C13.5391 2.19531 13.5391 1.88281 13.3438 1.6875L12.5625 0.945312C12.4062 0.75 12.0938 0.75 11.8984 0.945312L7.25 5.55469L2.5625 0.945312C2.36719 0.75 2.09375 0.75 1.89844 0.945312L1.11719 1.6875C0.921875 1.88281 0.921875 2.19531 1.11719 2.35156L6.89844 8.09375Z' fill='black'/%3E%3C/svg%3E%0A")!important;
	transition: all 0.2s ease;
	line-height: 0;
}
.is-open>.c-accordion__title:after {
	transform: rotate(180deg);
}
.c-accordion__title--button {} /* An accordion item title that is using a `<button>` tag */
.c-accordion__title:hover {} /* To modify the style when hovering over an accordion item title */
.c-accordion__title:focus {} /* To modify the style when an accordion item title currently has broswer focus */
.c-accordion__content {} /* An accordion item content container */