@font-face {
  font-family: Fa;
  src: url('../fonts/fa-regular-400.woff2') format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Fa Brands 400";
  src: url('../fonts/fa-brands-400.woff2') format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Fa;
  src: url('../fonts/fa-solid-900.woff2') format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Generalsans;
  src: url('../fonts/GeneralSans-Bold.otf') format("opentype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Generalsans;
  src: url('../fonts/GeneralSans-Medium.otf') format("opentype");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Generalsans;
  src: url('../fonts/GeneralSans-BoldItalic.otf') format("opentype");
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: Generalsans;
  src: url('../fonts/GeneralSans-Light.otf') format("opentype");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Generalsans;
  src: url('../fonts/GeneralSans-ExtralightItalic.otf') format("opentype");
  font-weight: 200;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: Generalsans;
  src: url('../fonts/GeneralSans-LightItalic.otf') format("opentype");
  font-weight: 300;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: Generalsans;
  src: url('../fonts/GeneralSans-Semibold.otf') format("opentype");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Generalsans;
  src: url('../fonts/GeneralSans-Italic.otf') format("opentype");
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: Generalsans;
  src: url('../fonts/GeneralSans-Regular.otf') format("opentype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Generalsans;
  src: url('../fonts/GeneralSans-SemiboldItalic.otf') format("opentype");
  font-weight: 600;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: Generalsans;
  src: url('../fonts/GeneralSans-Extralight.otf') format("opentype");
  font-weight: 200;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Generalsans;
  src: url('../fonts/GeneralSans-MediumItalic.otf') format("opentype");
  font-weight: 500;
  font-style: italic;
  font-display: swap;
}

:root {
  --slate: #242424;
  --coal: #080808;
  --white: white;
  --ciff-red: #e90051;
  --light-blue: #deeff4;
  --teal: #189cac;
  --warm: #f2f2eb;
  --light-purple: #d3c7d8;
  --warm-red: #ffe6ea;
  --transparent: #fff0;
  --orange-hover: #e84728;
  --mint: #9df7e5;
  --yellow: #ffbd00;
  --purple: #ae8dba;
  --light-grey: #e9e9e9;
  --tlg--video-control-1: 0px;
  --tlg--video-control-3: 0px;
  --tlg--video-control-2: 0px;
  --light-mint: #dbefea;
  --green: #32b24d;
  --red: #d00048;
  --teal-light: #abd2d6;
  --pink: #ffb3bb;
}

body {
  color: var(--slate);
  font-family: Generalsans, Arial, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 28px;
}

h1 {
  margin-top: 20px;
  margin-bottom: 10px;
  font-family: Playfair Display, sans-serif;
  font-size: 3.5em;
  font-weight: 400;
  line-height: 1.2em;
}

h2 {
  margin-top: 20px;
  margin-bottom: 10px;
  font-family: Playfair Display, sans-serif;
  font-size: 3em;
  font-weight: 400;
  line-height: 1.2em;
}

h3 {
  margin-top: 20px;
  margin-bottom: 10px;
  font-size: 1.4em;
  font-weight: 400;
  line-height: 1.4em;
}

h4 {
  margin-top: 20px;
  margin-bottom: 10px;
  font-size: 1.2em;
  font-weight: 400;
  line-height: 1.4em;
}

h5 {
  text-transform: uppercase;
  margin-top: 10px;
  margin-bottom: 10px;
  font-size: 1em;
  font-weight: 500;
  line-height: 1.2em;
}

p {
  margin-top: 20px;
  margin-bottom: 10px;
}

a {
  color: inherit;
  text-decoration: underline;
}

li {
  margin-top: 10px;
  margin-bottom: 10px;
}

img {
  max-width: 100%;
  display: inline-block;
}

strong {
  font-size: 1em;
  font-weight: 600;
}

blockquote {
  float: left;
  clear: left;
  border-left: 3px solid #00000040;
  width: 100%;
  margin: 20px 20px 40px -27px;
  padding: 10px 20px;
  font-size: 1.2em;
  font-weight: 600;
  line-height: 1.7em;
  position: relative;
  overflow: visible;
}

figure {
  width: 100%;
  margin: 10px 0;
}

figcaption {
  opacity: .8;
  text-align: right;
  margin-top: 15px;
  font-size: .9em;
  line-height: 1em;
}

.home-hero {
  background-color: var(--coal);
  color: var(--white);
  text-align: left;
  border-bottom-right-radius: 40px;
  border-bottom-left-radius: 40px;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  min-height: 60vh;
  padding-top: 240px;
  padding-bottom: 180px;
  display: flex;
  position: relative;
  overflow: clip;
}

.home-hero.alt-hero {
  border-radius: 0;
  min-height: 100vh;
  padding-top: 200px;
  padding-bottom: 110px;
}

.container {
  width: 100%;
  max-width: 1300px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 40px;
  padding-right: 40px;
  position: relative;
}

.container.hero-c {
  z-index: 4;
  pointer-events: auto;
  text-align: center;
  justify-content: center;
  align-items: center;
  position: relative;
}

.container.menu-container {
  justify-content: space-between;
  display: flex;
  position: static;
}

.container.hero-d {
  z-index: 2;
}

.container.footer-lower {
  grid-column-gap: 30px;
  grid-row-gap: 30px;
  flex-flow: row;
  justify-content: flex-end;
  align-items: center;
  padding-left: 0;
  padding-right: 0;
  display: flex;
}

.column {
  flex-flow: column;
  flex: 1;
  align-items: flex-start;
  width: 100%;
  max-width: 75%;
  position: relative;
}

.column.quote-col {
  aspect-ratio: 1;
  background-color: var(--white);
  color: var(--coal);
  text-align: center;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  padding: 0 20px;
  display: flex;
}

.column.footer-col {
  flex: 1;
  max-width: none;
}

.column.footer-col.bottom-fc {
  flex: 1;
  margin-top: 10px;
}

.column.footer-col.sub-col {
  min-width: 130px;
}

.column.title-col {
  max-width: 66%;
  padding-right: 40px;
}

.column.button-col {
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  max-width: 25%;
  padding-top: 20px;
  padding-bottom: 10px;
  padding-left: 2%;
  display: flex;
}

.column.quote-left-col {
  max-width: 33%;
  margin-right: -20px;
}

.column.section-title-col {
  max-width: 25%;
  position: relative;
  top: -10px;
}

.column.page-title-col {
  border-left: 3px solid var(--ciff-red);
  max-width: 60%;
  padding-bottom: 10px;
  padding-left: 20px;
}

.column.slider-col {
  align-self: flex-start;
  max-width: 40%;
}

.column.quote-right-col {
  align-self: center;
  padding-bottom: 5px;
}

.column.g-col {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  flex-flow: column;
  display: flex;
}

.column.cycle-col-v2 {
  aspect-ratio: 1;
  justify-content: center;
  align-items: center;
  display: flex;
}

.column.button-col-2 {
  grid-column-gap: 19px;
  grid-row-gap: 19px;
  flex-flow: row;
  justify-content: center;
  align-items: flex-start;
  width: auto;
  max-width: none;
  margin-left: auto;
  margin-right: auto;
  padding-top: 0;
  padding-bottom: 0;
  display: flex;
}

.column.article-col {
  justify-content: center;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.column.article-title-col {
  border-left: 3px solid var(--ciff-red);
  max-width: 840px;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 10px;
  padding-left: 20px;
}

.column.related-col {
  max-width: 25%;
}

.column.orbit-col {
  max-width: 45%;
  font-size: 16px;
}

.column.profile-hero {
  align-self: center;
}

.column.nav-col {
  max-width: 23%;
}

.column.nav-col.nc-left {
  border-right: 1px solid var(--slate);
  max-width: 23%;
  padding-right: 20px;
}

.column.menu-search-col {
  justify-content: center;
  align-items: flex-end;
  margin-left: auto;
  margin-right: 0;
  display: flex;
}

.column.mapcol {
  justify-content: flex-end;
  align-items: flex-end;
  display: flex;
}

.row {
  grid-column-gap: 40px;
  grid-row-gap: 40px;
  flex-flow: wrap;
  width: 100%;
  padding-top: 30px;
  padding-bottom: 30px;
  display: flex;
  position: relative;
}

.row.y-centre {
  justify-content: flex-start;
  align-items: center;
}

.row.x-centre {
  text-align: center;
  flex-flow: column;
  justify-content: center;
  align-items: center;
}

.row.footer-row {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
}

.row.slider-row {
  justify-content: flex-start;
  align-items: stretch;
}

.row.nav-row {
  min-height: 40vh;
  padding-top: 20px;
  padding-bottom: 30px;
}

.row.search-row {
  padding-top: 30px;
  padding-bottom: 30px;
}

.row.sub_row {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  flex-flow: row;
  flex: 1;
  padding-top: 0;
}

.section {
  background-color: var(--white);
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-top: 60px;
  padding-bottom: 60px;
  position: relative;
}

.section.light-blue-s {
  background-color: var(--light-blue);
}

.section.explore-s {
  background-color: var(--slate);
  color: var(--white);
  padding-top: 30px;
}

.section.l-blue-s {
  background-color: var(--light-blue);
  background-image: linear-gradient(180deg, var(--light-blue), white);
}

.section.teal-s {
  background-color: var(--teal);
  color: var(--coal);
}

.section.newsletter-s {
  background-color: var(--ciff-red);
  color: var(--white);
  padding-top: 10px;
  padding-bottom: 10px;
}

.section.light-sand {
  background-color: var(--warm);
}

.section.black-s {
  background-color: var(--slate);
  color: var(--white);
}

.section.full-height-s {
  justify-content: center;
  align-items: center;
  min-height: 100vh;
  display: flex;
}

.section.l-purple-s {
  background-color: var(--light-purple);
  background-image: linear-gradient(180deg, var(--light-purple), white);
}

.section.sand-grad-s {
  background-image: linear-gradient(180deg, var(--warm), white);
}

.section.l-pink-s {
  background-image: linear-gradient(180deg, var(--warm-red), white);
}

.section.purple-s {
  background-color: var(--light-purple);
}

.brand {
  z-index: 100;
  max-width: 260px;
  padding-top: 10px;
  padding-bottom: 10px;
  padding-left: 0;
}

.brand:hover {
  filter: brightness(84%);
}

.navbar {
  background-color: var(--white);
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  position: fixed;
  inset: 0% 0% auto;
}

.navbar.pre-nav {
  background-color: var(--slate);
  border-radius: 0;
  padding-top: 8px;
  padding-bottom: 8px;
}

.nav-link {
  border-bottom: 3px solid var(--transparent);
  background-color: var(--transparent);
  color: var(--slate);
  text-align: center;
  vertical-align: middle;
  padding: 10px 0 7px;
  font-weight: 600;
  line-height: 26px;
  text-decoration: none;
  display: inline-block;
  position: relative;
}

.nav-link:hover {
  border-bottom: 3px solid var(--ciff-red);
}

.nav-link.special-nl {
  background-color: var(--ciff-red);
  color: var(--white);
  padding-left: 15px;
  padding-right: 15px;
}

.nav-link.special-nl:hover {
  background-color: var(--orange-hover);
}

.nav-link.top-nl {
  border: 1px solid var(--mint);
  color: var(--mint);
  padding: 6px 12px;
}

.nav-link.top-nl:hover {
  color: var(--slate);
}

.nav-link.ddnl {
  padding-right: 30px;
}

.nav-link.ddnl.search-ddnl {
  padding-left: 20px;
  padding-right: 20px;
}

.inner-body {
  z-index: 5;
  background-color: var(--white);
  width: 100%;
  position: relative;
  overflow: clip;
}

.top-nav-row {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  text-align: right;
  flex: 1;
  justify-content: flex-end;
  align-items: center;
  display: flex;
}

.top-nav-row.mobile-nav-top {
  display: none;
}

.nav-menu {
  grid-column-gap: 50px;
  grid-row-gap: 50px;
  justify-content: flex-start;
  align-items: center;
  display: flex;
  position: static;
}

.form {
  background-color: var(--white);
  justify-content: center;
  align-items: center;
  display: flex;
}

.text-field {
  background-color: var(--white);
  color: var(--slate);
  border: 1px #000;
  height: 55px;
  margin-bottom: 0;
  padding: 10px 20px;
  font-size: 1em;
  font-weight: 500;
  line-height: 1em;
}

.text-field.btf {
  border-style: solid;
  border-color: var(--slate);
  background-color: var(--white);
  height: 50px;
}

.text-field.btf::placeholder {
  color: var(--slate);
}

.text-field.search-tf {
  height: 70px;
  font-size: 1.2em;
}

.form-block {
  width: 100%;
  max-width: 660px;
  margin: 10px auto;
  padding-top: 10px;
  padding-bottom: 10px;
  position: relative;
}

.form-block.filter-search {
  max-width: 320px;
  margin: 0 10px 0 0;
}

.form-block.menu-search {
  flex: none;
  margin-top: 0;
  margin-bottom: 40px;
  margin-left: auto;
  padding-left: 10px;
  padding-right: 10px;
}

.search-submit {
  border: 1px solid var(--slate);
  background-color: var(--slate);
  justify-content: center;
  align-items: center;
  height: 50px;
  padding: 10px 15px;
  font-family: Fa, Arial, sans-serif;
  font-size: .9em;
  font-weight: 700;
  line-height: 1em;
  display: flex;
}

.search-submit:hover {
  border-color: var(--coal);
  background-color: var(--coal);
}

.card-row {
  z-index: 1;
  grid-column-gap: 3%;
  grid-row-gap: 3%;
  opacity: 1;
  flex-flow: wrap;
  justify-content: flex-start;
  align-items: stretch;
  margin-bottom: 20px;
  padding-top: 10px;
  padding-bottom: 0;
  display: flex;
  position: relative;
}

.card-row.theme-row {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  justify-content: center;
  align-items: stretch;
  padding-bottom: 20px;
}

.card-row.big-theme {
  grid-column-gap: 0%;
  grid-row-gap: 0%;
}

.s-card-int {
  background-color: var(--transparent);
  opacity: 1;
  color: var(--slate);
  flex-flow: column;
  flex: 1;
  justify-content: space-between;
  align-items: stretch;
  min-width: 23%;
  max-width: 400px;
  height: 100%;
  margin-bottom: 2%;
  padding: 0;
  line-height: 23px;
  text-decoration: none;
  transition: transform .2s;
  display: flex;
  position: relative;
  overflow: hidden;
}

.s-card-int.profile {
  border-bottom-style: none;
  flex: 1;
  justify-content: flex-start;
  width: 12.3%;
  min-width: 13%;
  max-width: 174px;
  height: auto;
  padding: 0 0 10px;
  font-size: .9em;
  font-weight: 700;
  line-height: 1.2em;
  overflow: visible;
}

.s-card-int.profile.exec-prof {
  flex: 1;
  min-width: 22%;
  max-width: 22%;
}

.s-card-int.theme-card {
  background-color: var(--white);
  border-bottom-style: none;
  flex: 1;
  justify-content: flex-start;
  align-self: stretch;
  align-items: stretch;
  min-width: 200px;
  height: auto;
  margin-bottom: 1%;
  padding-bottom: 0;
  padding-left: 0;
  padding-right: 0;
}

.s-card-int.theme-card.tb {
  border-left: 3px solid var(--teal);
  background-color: var(--white);
  justify-content: center;
  align-items: stretch;
  max-width: none;
  padding-top: 0;
  padding-bottom: 0;
}

.s-card-int.theme-card.tb.wg {
  border-left-color: var(--yellow);
}

.s-card-int.theme-card.tb.ca {
  border-left-color: var(--purple);
}

.s-card-int.theme-card.big-tc {
  max-width: none;
  min-height: 70vh;
  padding-top: 30px;
}

.card-image {
  aspect-ratio: 3 / 2;
  background-color: var(--light-grey);
  object-fit: cover;
  object-position: 50% 50%;
  flex: 0 auto;
  width: 100%;
  height: 100%;
}

.card-image.bt-ci {
  aspect-ratio: 1;
}

.card-image-wrapper {
  z-index: 1;
  aspect-ratio: 3 / 2;
  flex-flow: row;
  flex: 0 auto;
  justify-content: flex-end;
  align-items: flex-end;
  min-height: 30px;
  position: relative;
  overflow: hidden;
}

.button {
  background-color: var(--white);
  color: var(--white);
  white-space: nowrap;
  mix-blend-mode: multiply;
  background-image: url('../images/Coal-Chevron-Right-fat.svg');
  background-position: 0%;
  background-repeat: no-repeat;
  background-size: auto 15px;
  flex-flow: row;
  justify-content: flex-start;
  align-items: center;
  width: auto;
  margin-top: 0;
  margin-bottom: 0;
  margin-right: 8px;
  padding: 10px 15px 10px 20px;
  font-weight: 600;
  text-decoration: none;
  display: inline-flex;
  position: relative;
}

.button.filter-button {
  border-color: var(--teal);
  color: var(--coal);
  text-align: left;
  background-color: #00000014;
  background-image: none;
  justify-content: center;
  align-items: center;
  height: 50px;
  margin-right: 10px;
  padding-left: 15px;
  line-height: 1.2em;
  display: flex;
}

.button.filter-button:hover {
  border-bottom-width: 3px;
  border-bottom-color: var(--light-grey);
  background-color: #00000029;
}

.button.reset-button {
  color: var(--coal);
  background-image: none;
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 15px;
}

.button.all-slider-button {
  margin-top: 0;
  margin-bottom: 0;
  margin-right: 0;
  padding-top: 7px;
  padding-bottom: 7px;
  position: absolute;
  inset: -58px 0 auto auto;
}

.button.sign-up-b {
  min-height: 55px;
  margin-top: 0;
  margin-bottom: 0;
  margin-right: 0;
  padding-right: 20px;
}

.button.s-button {
  background-position: 20px;
  padding-left: 40px;
}

.button.search-b-hover {
  text-align: center;
  justify-content: center;
  align-items: center;
  min-width: 15%;
  min-height: 70px;
  margin-top: 0;
  margin-bottom: 0;
  margin-right: 0;
  padding-right: 20px;
}

.button.header-button {
  background-position: 15px;
  border: 1px solid #000;
  margin-top: 15px;
  padding-left: 35px;
}

.button.red-button {
  background-color: var(--coal);
  mix-blend-mode: normal;
}

.tag-row {
  z-index: 2;
  grid-column-gap: 3px;
  grid-row-gap: 3px;
  opacity: .9;
  flex-flow: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  margin-bottom: 11px;
  padding-top: 20px;
  padding-left: 20px;
  display: flex;
  position: absolute;
  inset: 0% auto auto 0%;
}

.tag-row.title-sec {
  z-index: 0;
  margin-bottom: 10px;
  padding-left: 0;
  position: relative;
}

.tag-row.impact-stories {
  z-index: 0;
  padding-top: 10px;
  padding-left: 0;
  padding-right: 20px;
  position: relative;
}

.tag-row.search-tr {
  margin-bottom: -7px;
  position: relative;
}

.tag {
  grid-column-gap: 5px;
  grid-row-gap: 5px;
  background-color: var(--white);
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  color: var(--slate);
  justify-content: flex-start;
  align-items: center;
  padding: 6px 7px;
  font-size: .8em;
  font-weight: 600;
  line-height: 1em;
  display: flex;
}

.tag._w-tag, .tag.c-tag, .tag.h-tag {
  background-color: var(--white);
}

.tag.t-tag {
  background-color: var(--slate);
  color: var(--white);
}

.quote-author {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  margin-top: 10px;
  margin-bottom: 10px;
  font-family: Playfair Display, sans-serif;
  font-size: 1.5em;
  line-height: 1.2em;
  display: block;
}

.quote-pix {
  object-fit: cover;
  border-radius: 200px;
  width: 70px;
  height: 70px;
  margin-bottom: 7px;
}

.quote-text {
  margin-top: 10px;
  position: relative;
}

.footer {
  background-color: var(--slate);
  color: var(--white);
  text-align: left;
  margin-bottom: 40px;
  margin-left: auto;
  margin-right: auto;
  padding-top: 60px;
  padding-bottom: 60px;
  display: flex;
  position: relative;
  overflow: hidden;
}

.footer-logo {
  width: 220px;
  margin-top: 10px;
  margin-bottom: 10px;
}

.footer-link {
  color: var(--white);
  margin-bottom: 8px;
  padding-bottom: 0;
  font-size: .9em;
  font-weight: 500;
  line-height: 1.4em;
  text-decoration: none;
  display: block;
}

.footer-link:hover {
  color: var(--ciff-red);
}

.footer-link.lower {
  margin-bottom: 0;
  padding-bottom: 0;
}

.nav-wrap {
  z-index: 1000;
  margin-left: auto;
  margin-right: auto;
  position: fixed;
  inset: 0% 0% auto;
}

.bg-vid {
  z-index: 1;
  opacity: .4;
  pointer-events: none;
  object-fit: cover;
  object-position: 50% 50%;
  width: 100%;
  height: 100%;
  margin-left: auto;
  margin-right: 0;
  position: absolute;
  inset: 0%;
  overflow: visible;
}

.hero-grad {
  z-index: 1;
  pointer-events: none;
  background-image: linear-gradient(360deg, #000c, #004a6300);
  height: 100%;
  position: absolute;
  inset: auto 0% 0%;
}

.card-title {
  z-index: 1;
  flex: 0 auto;
  max-width: 600px;
  margin-top: 5px;
  margin-bottom: 10px;
  font-size: 1.2em;
  font-weight: 600;
  line-height: 1.3em;
  position: relative;
}

.card-title.small-card-title {
  flex: 0 auto;
  margin-bottom: 0;
  font-size: 1.2em;
}

.card-title.theme-title {
  flex: 0 auto;
  margin-top: 0;
  font-family: Playfair Display, sans-serif;
  font-size: 2em;
  font-weight: 400;
}

.card-title.theme-title.ltt {
  font-size: 2.5em;
}

.card-summary {
  z-index: 4;
  text-align: left;
  flex: 1;
  max-width: 600px;
  margin-top: 0;
  margin-bottom: 5px;
}

.fa {
  font-family: Fa, Arial, sans-serif;
  font-size: .9em;
  font-weight: 700;
  line-height: 1em;
}

.hero-grid {
  pointer-events: none;
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.slide-nav {
  display: none;
}

.slide-row {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  width: calc(30% - 10px);
  padding-top: 10px;
  padding-bottom: 10px;
  display: flex;
  overflow: visible;
}

.slide-card-wrap {
  flex-shrink: 0;
  height: auto;
  margin-right: 20px;
}

.slider {
  background-color: var(--transparent);
  flex-flow: row;
  height: 100%;
  margin-bottom: 40px;
  display: flex;
  overflow: visible;
}

.slide-arrow {
  border: 2px solid var(--coal);
  background-color: var(--coal);
  color: var(--white);
  border-radius: 50px;
  width: 40px;
  height: 40px;
  padding: 10px;
  font-size: 18px;
  inset: -57px 130px auto auto;
}

.slide-arrow:hover {
  background-color: var(--transparent);
  color: var(--coal);
}

.slide-arrow.sar {
  right: 178px;
}

.person-profile {
  aspect-ratio: 1;
  object-fit: cover;
  border-radius: 1000px;
  width: 100%;
  max-width: 90%;
  margin-bottom: 10px;
  margin-left: -5px;
}

.person-profile.kid-img {
  width: 100%;
  position: absolute;
}

.card-trigger {
  flex: 1;
  display: flex;
}

.more-pop {
  z-index: 5;
  grid-column-gap: 5px;
  grid-row-gap: 5px;
  color: var(--coal);
  white-space: nowrap;
  border-top-left-radius: 0;
  flex-flow: row;
  flex: 0 auto;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  margin-bottom: 0;
  padding-top: 8px;
  padding-bottom: 8px;
  padding-right: 10px;
  font-size: .9em;
  font-weight: 600;
  line-height: 1.2em;
  text-decoration: none;
  display: flex;
  position: relative;
  left: 0;
  overflow: hidden;
}

.more-pop.ex-pop {
  background-color: var(--mint);
  padding-left: 15px;
}

.more-pop.nav-pop {
  background-color: var(--transparent);
  color: var(--slate);
  justify-content: center;
  align-items: center;
  height: 100%;
  font-size: .9em;
  inset: 0% 0% 0% auto;
}

.explore-image-wrapper {
  object-fit: cover;
  object-position: 50% 0%;
  justify-content: center;
  align-items: flex-end;
  width: 100%;
  display: flex;
  position: relative;
  overflow: clip;
}

.stats-row {
  z-index: 3;
  grid-column-gap: 2%;
  grid-row-gap: 2%;
  flex-flow: wrap;
  justify-content: center;
  align-items: stretch;
  margin-top: 20px;
  margin-bottom: 20px;
  display: flex;
  position: relative;
  overflow: hidden;
}

.stats-row.tabs-sr {
  flex-flow: column;
}

.highlight {
  color: var(--ciff-red);
  margin-bottom: 10px;
  font-family: Playfair Display, sans-serif;
  font-size: 2em;
  font-weight: 400;
  line-height: 1em;
  display: inline-block;
}

.stat-link {
  border-left-style: solid;
  border-left-width: 3px;
  border-left-color: var(--ciff-red);
  color: inherit;
  flex-flow: column;
  flex: 1;
  justify-content: flex-start;
  align-items: flex-start;
  min-width: 23%;
  margin-bottom: 20px;
  padding-top: 0;
  font-weight: 400;
  text-decoration: none;
  display: flex;
  position: relative;
  overflow: hidden;
}

.icon {
  margin-right: 0;
}

.dropdown {
  position: static;
}

.dropdown-list {
  padding-bottom: 20px;
  inset: 0% 0% auto;
}

.dropdown-list.w--open {
  background-color: var(--white);
  box-shadow: 0 20px 10px -20px var(--coal);
  border-bottom-right-radius: 10px;
  border-bottom-left-radius: 10px;
  flex-flow: wrap;
  padding: 20px 10px 10px;
  display: flex;
  top: 61px;
}

.dd-col {
  flex: 0 auto;
  width: 25%;
  padding: 10px;
}

.dd-link {
  color: var(--slate);
  white-space: pre-wrap;
  border-radius: 5px;
  padding: 8px 40px 8px 10px;
  font-size: .9em;
  font-weight: 600;
  line-height: 1.2em;
  text-decoration: none;
  display: flex;
  position: relative;
  overflow: hidden;
}

.dd-link:hover {
  background-color: var(--light-grey);
}

.dd-link.hero-dd {
  background-color: var(--light-grey);
  color: var(--slate);
  margin-bottom: 5px;
  padding: 15px 10px;
}

.dd-link.hero-dd:hover {
  background-color: var(--ciff-red);
}

.dd-link.hero-dd.wiki-dd {
  background-color: var(--teal);
  color: var(--white);
}

.dd-link.hero-dd.wiki-dd:hover {
  background-color: var(--mint);
  color: var(--slate);
}

.menu-title-row {
  width: 100%;
  padding: 2px 10px 10px;
}

.menu-tite {
  border-top: 1px solid var(--ciff-red);
  padding-top: 10px;
  font-family: Playfair Display, sans-serif;
  font-size: 2em;
  font-weight: 500;
  line-height: 1.2em;
}

.dd-row {
  flex-flow: wrap;
  width: 100%;
  max-width: 1280px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.dd-row.centre-search {
  text-align: center;
  flex: 0 auto;
  justify-content: center;
  align-items: center;
}

.social-row {
  grid-column-gap: 14px;
  grid-row-gap: 14px;
  width: 100%;
  margin-top: 5px;
  margin-bottom: 5px;
  padding-top: 3px;
  padding-bottom: 3px;
  font-size: .9em;
  display: inline-flex;
}

.social-link {
  color: inherit;
  font-family: "Fa Brands 400", Arial, sans-serif;
  font-size: 1.5em;
  text-decoration: none;
}

.social-link:hover {
  color: var(--ciff-red);
}

.hero {
  background-color: var(--coal);
  color: var(--white);
  flex-flow: column;
  justify-content: flex-end;
  align-items: flex-start;
  min-height: 60vh;
  padding-top: 210px;
  display: flex;
  position: relative;
  overflow: hidden;
}

.hero.no-image {
  background-color: var(--light-blue);
  color: var(--slate);
  min-height: 40vh;
  padding-top: 120px;
  padding-bottom: 40px;
}

.datapage-hero-image {
  z-index: 2;
  object-fit: cover;
  object-position: 50% 100%;
  border-radius: 20px;
  max-width: 350px;
  height: calc(100% + 190px);
  position: absolute;
  top: -50%;
  left: auto;
  right: 0;
  overflow: hidden;
}

.onpage-menu {
  z-index: 100;
  border-bottom: 1px solid var(--light-grey);
  background-color: var(--white);
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  color: var(--coal);
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  position: sticky;
  top: 50px;
  overflow: hidden;
}

.page-menu-row {
  background-color: var(--white);
  justify-content: flex-start;
  align-items: stretch;
  width: 100%;
  display: flex;
}

.on-page-link {
  border-bottom: 3px solid var(--white);
  background-color: var(--white);
  color: var(--slate);
  flex: 0 auto;
  margin-left: 0;
  margin-right: 0;
  padding: 20px 10px 16px;
  font-size: 1em;
  font-weight: 600;
  line-height: 1em;
  text-decoration: none;
  position: relative;
}

.on-page-link:hover {
  border-bottom-color: var(--light-grey);
}

.on-page-link.w--current {
  border-bottom-color: var(--ciff-red);
  color: var(--slate);
}

.title-section {
  justify-content: flex-start;
  align-items: flex-end;
  width: 100%;
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
  padding-top: 0;
  padding-bottom: 0;
  display: flex;
}

.title-section.small-ts {
  padding-top: 160px;
  padding-bottom: 40px;
}

.person-details {
  flex-flow: column;
  justify-content: flex-start;
  align-items: stretch;
  height: 100%;
  margin-bottom: 5px;
  display: flex;
}

.person-position {
  flex: 1;
  justify-content: flex-start;
  align-items: flex-start;
  margin-top: 0;
  margin-bottom: -10px;
  font-weight: 400;
  display: flex;
}

.mega-title {
  width: 60%;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 3vw;
  font-weight: 400;
  line-height: 1.3em;
  display: inline-block;
}

.mega-image {
  flex-flow: row;
  justify-content: center;
  width: 100%;
  min-height: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-top: 20px;
  padding-bottom: 20px;
  display: flex;
}

.mega-inner {
  flex-flow: column;
  flex: 1;
  justify-content: center;
  align-items: center;
  min-width: 25%;
  max-width: 30%;
  margin-left: -5%;
  margin-right: -5%;
  display: flex;
}

.mega-inner.mi-big {
  min-width: 50%;
  max-width: 70%;
  margin-left: 0%;
  margin-right: 0%;
}

.mega-image-img {
  aspect-ratio: 1;
  object-fit: cover;
  border-radius: 100%;
  width: 100%;
  margin-top: 20px;
  position: relative;
}

.back-top {
  z-index: 10;
  border: 1px solid var(--white);
  border-radius: 100%;
  justify-content: center;
  align-items: center;
  width: 70px;
  height: 70px;
  margin-top: 40px;
  padding: 20px;
  display: flex;
  position: fixed;
  bottom: 20px;
  right: 20px;
}

.link-table-col {
  border-bottom: 1px solid var(--warm);
  color: var(--teal);
  width: 100%;
  padding: 10px;
  line-height: 1.3em;
  text-decoration: none;
  position: relative;
  overflow: hidden;
}

.link-table-col.first-ltc {
  background-color: var(--slate);
  color: var(--white);
  flex-flow: row;
  justify-content: space-between;
  align-items: center;
  padding-top: 0;
  padding-bottom: 0;
  padding-right: 0;
  font-weight: 700;
  display: flex;
}

.accordion {
  border-bottom: 2px solid var(--slate);
  justify-content: flex-start;
  width: 100%;
  position: relative;
}

.accordion-toggle {
  z-index: 2;
  white-space: normal;
  cursor: pointer;
  color: inherit;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  padding: 20px 40px 20px 0;
  font-weight: 600;
  line-height: 1.2em;
  display: flex;
  position: relative;
}

.accordion-content {
  z-index: 1;
  height: 0%;
  position: relative;
  overflow: hidden;
}

.accordion-content.w--open {
  background-color: var(--transparent);
  margin-top: -20px;
  padding-bottom: 20px;
  position: relative;
}

.breadcrumbs {
  grid-column-gap: 6px;
  grid-row-gap: 6px;
  text-align: left;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  max-width: 1300px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
  position: absolute;
  inset: 0 0% auto;
}

.crumb {
  grid-column-gap: 6px;
  grid-row-gap: 6px;
  color: inherit;
  justify-content: flex-start;
  align-items: center;
  margin-right: 6px;
  font-size: 15px;
  text-decoration: none;
  display: inline-flex;
}

.crumb:hover {
  opacity: .85;
}

.inner-bread {
  z-index: 2;
  max-width: 65%;
  position: relative;
}

.filter-row {
  flex-flow: wrap;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.filter-dropdown {
  color: var(--white);
  flex: 1;
  max-width: 250px;
  margin-left: 0;
  margin-right: 10px;
}

.filter-dropdown:hover {
  color: var(--white);
}

.dropdown-toggle {
  text-align: left;
  justify-content: flex-start;
  align-items: center;
  min-height: 50px;
  padding: 10px 40px 10px 20px;
  font-weight: 500;
  line-height: 1.2em;
  display: flex;
}

.dropdown-toggle:hover {
  border-bottom-width: 1px;
  border-bottom-color: var(--ciff-red);
}

.dropdown-toggle.w--open {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.dd-icon-2 {
  margin-right: 10px;
}

.filter-buttons {
  display: flex;
}

.dl-filter-list {
  background-color: #ddd;
}

.dl-filter-list.w--open {
  background-color: var(--white);
  color: var(--white);
  border: 1px solid #000;
  max-height: 50vh;
  overflow: auto;
}

.filter-list {
  background-color: var(--white);
  color: var(--coal);
  padding-top: 7px;
  padding-bottom: 7px;
}

.filter-list:hover {
  background-color: var(--warm);
}

.download-card {
  background-color: var(--warm);
  color: var(--slate);
  cursor: pointer;
  border-radius: 0 10px 10px;
  flex-flow: column;
  width: 23.5%;
  min-height: 100px;
  margin-bottom: 1.5%;
  padding: 17px 20px 0;
  transition: transform .2s;
  display: flex;
  position: relative;
}

.download-card:hover {
  transform: scale(1.02);
}

.add-all-row {
  background-color: var(--teal);
  color: var(--white);
  cursor: pointer;
  border-radius: 0 10px 10px;
  justify-content: flex-start;
  align-items: center;
  margin-bottom: 5px;
  padding-top: 20px;
  padding-bottom: 20px;
  padding-left: 20px;
  font-weight: 700;
  line-height: 1.2em;
  display: inline-flex;
  position: relative;
  overflow: hidden;
}

.number-row {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  justify-content: flex-start;
  align-items: center;
  margin-top: 20px;
  display: flex;
}

.page-number {
  border: 1px solid var(--transparent);
  border-radius: 50px;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  text-decoration: none;
  display: flex;
}

.page-number:hover {
  background-color: #00000014;
  border-radius: 20px;
}

.page-number.pn-ends {
  width: auto;
  font-weight: 600;
}

.page-number.pn-ends:hover {
  background-color: var(--transparent);
  color: var(--coal);
}

.page-number.pn-ends:active {
  color: var(--coal);
}

.page-number.pn-active {
  background-color: var(--slate);
  color: var(--white);
  border-radius: 20px;
}

.article-image {
  filter: blur(20px);
  mix-blend-mode: multiply;
  object-fit: cover;
  width: 58%;
  height: 100%;
  position: absolute;
  inset: -10% -5% 0% auto;
}

.article-image-front {
  z-index: 2;
  object-fit: cover;
  border-radius: 0 10px 10px;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.rtb-article {
  width: 100%;
  max-width: 800px;
}

.rtb-article img {
  border-radius: 0 10px 10px;
}

.report-image {
  opacity: .35;
  pointer-events: none;
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.wikilink {
  border: 1px solid #0000001a;
  border-radius: 0 10px 10px;
  width: 100%;
  max-width: 49%;
  margin-bottom: 10px;
  padding: 15px 100px 15px 20px;
  font-weight: 700;
  line-height: 1.2em;
  text-decoration: none;
  transition: transform .2s;
  position: relative;
  overflow: hidden;
}

.wikilink:hover {
  transform: scale(1.01);
}

.mega-title-wrapper {
  border-left: 5px solid var(--ciff-red);
  color: var(--slate);
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  width: 50%;
  padding: 0 40px 0 20px;
  display: flex;
  overflow: hidden;
}

.cycle-wrapper {
  aspect-ratio: 1;
  background-image: radial-gradient(circle closest-side, #90c3d7ba, #e8f4f700);
  flex-flow: wrap;
  max-height: 80vh;
  margin: 0 auto;
  display: flex;
  position: relative;
}

.cycle-section {
  text-align: center;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 50%;
  height: 50%;
  padding: 0;
  display: flex;
  position: relative;
}

.cycle-image {
  aspect-ratio: 1;
  object-fit: cover;
  border-radius: 100%;
  max-width: 57%;
  margin-left: -10px;
  margin-right: -10px;
  position: relative;
}

.cycle-image.small-ci {
  max-width: 30%;
  position: relative;
  top: -40px;
}

.cycle-image.small-cb {
  max-width: 30%;
  position: relative;
  top: 40px;
  bottom: 0;
}

.cycle-title {
  z-index: 4;
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  color: var(--coal);
  background-color: #ffffffe6;
  border-radius: 3px;
  max-width: 80%;
  margin-top: -25px;
  margin-bottom: -25px;
  padding: 5px 8px;
  font-size: 1em;
  line-height: 1.2em;
  display: block;
  position: relative;
}

.cycle {
  opacity: .73;
  width: 100%;
  padding: 9%;
  position: absolute;
  inset: 0%;
}

.row-title {
  opacity: .8;
  text-align: left;
  flex: none;
  width: 100%;
  padding-top: 10px;
  padding-bottom: 20px;
  font-weight: 500;
  line-height: 1.2em;
}

.image-bg-slider {
  opacity: .25;
  flex-flow: row;
  justify-content: space-around;
  align-items: center;
  width: 150%;
  height: 100%;
  display: flex;
  position: absolute;
  inset: 0%;
}

.slide-bg-image {
  aspect-ratio: 1;
  object-fit: cover;
  border-radius: 100%;
  align-self: center;
  width: 10%;
  position: relative;
}

.slide-bg-image.sbi2 {
  width: 12%;
  top: -20%;
  right: -21px;
}

.slide-bg-image.sbi3 {
  top: 25%;
}

.slide-bg-image.sbi4 {
  width: 8%;
  top: -10%;
  left: -27px;
}

.slide-bg-image.sbi5 {
  width: 11%;
  top: -25%;
  right: -32px;
}

.slide-bg-image.sbi6 {
  width: 8%;
  top: 10%;
}

.slide-bg-image.sbi7 {
  top: 20%;
}

.slide-bg-image.sbi8 {
  width: 13%;
}

.quote-slider-nav {
  text-align: right;
  padding-left: 100px;
  padding-right: 100px;
  bottom: 8px;
}

.quote-slider {
  background-color: var(--transparent);
  height: 100%;
  margin-top: 40px;
  margin-bottom: 40px;
  padding-bottom: 60px;
}

.quote-arrow {
  border: 2px solid var(--coal);
  background-color: var(--coal);
  color: var(--white);
  border-radius: 100%;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  padding: 10px;
  font-size: 18px;
  display: flex;
  inset: auto 47px 10px auto;
}

.quote-arrow:hover {
  background-color: var(--white);
  color: var(--coal);
}

.quote-arrow.right-qa {
  right: 0;
}

.open-quote {
  justify-content: flex-start;
  align-items: flex-end;
  margin-bottom: 0;
  margin-left: 0;
  margin-right: 5px;
  font-family: Playfair Display, sans-serif;
  font-size: 5em;
  line-height: 10px;
  display: inline-block;
  position: relative;
  bottom: -38px;
}

.mask {
  height: 100%;
}

.quote-slide {
  vertical-align: middle;
  height: 100%;
  margin-right: 40px;
}

.quote-wrapper {
  flex-flow: column;
  align-items: flex-start;
  display: block;
}

.quote-image-wrapper {
  justify-content: center;
  align-items: center;
  padding: 30px;
  display: flex;
  position: relative;
}

.profile-image {
  aspect-ratio: 1;
  object-fit: cover;
  border-radius: 100%;
  width: 100%;
  position: relative;
}

.profile-spinner {
  aspect-ratio: 1;
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.sub-q {
  font-family: Generalsans, Arial, sans-serif;
  font-size: .7em;
  font-weight: 400;
  display: block;
}

.world-map-wrapper {
  aspect-ratio: 16 / 9;
  margin-bottom: 40px;
  position: relative;
  right: 10%;
  transform: scale(1.7);
}

.worldmap {
  aspect-ratio: 16 / 9;
  opacity: .1;
  width: 100%;
}

.worldmap.v2map {
  opacity: 100;
  color: var(--teal);
}

.mapdot {
  box-sizing: border-box;
  aspect-ratio: 1;
  background-color: var(--ciff-red);
  color: var(--white);
  text-align: center;
  mix-blend-mode: darken;
  border-radius: 100%;
  justify-content: center;
  align-items: center;
  width: 8%;
  padding: 10px;
  font-family: Playfair Display, sans-serif;
  font-size: .6em;
  line-height: 1em;
  text-decoration: none;
  transition: transform .2s;
  display: flex;
  position: absolute;
  inset: 29% auto auto 46%;
}

.mapdot:hover {
  transform: scale(1.1);
}

.mapdot.africa-md {
  width: 16%;
  top: 47%;
  left: 46%;
}

.mapdot.india-md {
  width: 7%;
  top: 45%;
  left: 65%;
}

.mapdot.asia-md {
  width: 15%;
  top: 42%;
  left: 73%;
}

.mapdot.asia-md.a-big {
  width: 17%;
  top: 39%;
}

.mapdot.china-md {
  width: 7%;
  top: 38%;
  left: 73%;
}

.mapdot.china-md.altmd {
  z-index: 1;
}

.mapdot.text-version {
  background-color: var(--transparent);
  color: var(--ciff-red);
  font-size: .7em;
  font-weight: 500;
}

.mapdot.altmd {
  border: 1px dotted var(--ciff-red);
  color: var(--ciff-red);
  mix-blend-mode: normal;
  background-color: #ffffffa6;
}

.mapdot.noint:hover {
  transform: none;
}

.card-bg {
  pointer-events: none;
  background-color: #0000000f;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.card-bg.bg-green {
  background-color: var(--teal);
}

.card-bg.bg-yellow {
  background-color: var(--yellow);
}

.card-bg.bg-purple {
  background-color: var(--purple);
}

.card-bg.card-blue {
  background-color: #abd2d666;
}

.date {
  z-index: 4;
  opacity: .7;
  text-align: left;
  flex: 0 auto;
  justify-content: flex-start;
  align-items: flex-end;
  margin-top: 5px;
  margin-bottom: 5px;
  font-size: .9em;
  line-height: 1.5em;
  display: flex;
  overflow: hidden;
}

.menu-wrap {
  width: 100%;
  max-width: 1300px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
  position: relative;
}

.menu-wrap.menu-container {
  justify-content: space-between;
  padding-left: 40px;
  padding-right: 40px;
  display: flex;
  position: static;
}

.up-arrow {
  width: 100%;
  height: 100%;
  margin-left: auto;
  margin-right: auto;
}

.footer-foot {
  z-index: 2;
  width: 100%;
  height: 10px;
  position: absolute;
  inset: auto 0% 0%;
}

.card-text-block {
  flex-flow: column;
  flex: 1;
  justify-content: flex-start;
  align-items: flex-start;
  padding: 10px 20px;
  display: flex;
}

.card-text-block.feat-wrap {
  justify-content: center;
  align-self: center;
  align-items: flex-start;
  min-width: 50%;
  padding: 40px;
  display: flex;
  position: relative;
}

.stat {
  flex: 1;
  font-size: 1.4em;
}

.static-container {
  z-index: 2;
  width: 100%;
  max-width: 1300px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 40px;
  padding-right: 40px;
  position: relative;
}

.b-hover {
  background-color: var(--coal);
  width: 73%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.b-hover.red-b-hover {
  background-color: var(--ciff-red);
  mix-blend-mode: normal;
}

.b-text {
  mix-blend-mode: difference;
  margin-right: 8px;
  position: relative;
}

.b-text.red-b-text {
  mix-blend-mode: normal;
}

.b-arrow-on {
  z-index: 3;
  height: 15px;
  position: relative;
}

.mega-title-inner {
  flex-flow: column;
  align-items: center;
}

.pop-arrow {
  flex: none;
  height: 13px;
  position: relative;
  bottom: 1px;
}

.corner-shape {
  z-index: 1;
  pointer-events: none;
  width: 150px;
  height: 150px;
  position: absolute;
  inset: auto -50px -50px auto;
}

.corner-shape.left-cs {
  z-index: 2;
  inset: auto auto -100px -50px;
}

.corner-shape.top-cs {
  z-index: 2;
  inset: 0% -50px auto auto;
}

.title-slider {
  background-color: var(--transparent);
  width: 60%;
  height: auto;
  margin-left: auto;
  margin-right: auto;
  display: block;
}

.hide-arrow {
  opacity: 0;
  display: none !important;
}

.title-mask {
  height: auto;
}

.title-slide {
  text-align: center;
  height: auto;
}

.slider-title {
  background-color: var(--ciff-red);
  margin-top: 0;
  margin-bottom: 0;
  padding: 0 5px 2px;
  font-family: Generalsans, Arial, sans-serif;
  font-size: 3vw;
  font-weight: 600;
  line-height: 1.3em;
  display: inline;
}

.accordion-wrapper {
  margin-bottom: 40px;
  padding-top: 10px;
}

.otp-title {
  border-left: 6px solid var(--ciff-red);
  text-transform: uppercase;
  justify-content: flex-start;
  align-items: center;
  padding-left: 10px;
  padding-right: 10px;
  font-size: .8em;
  display: flex;
}

.caption {
  opacity: .8;
  text-align: center;
  width: 100%;
  margin-top: 10px;
  font-size: .8em;
  line-height: 1em;
}

.caption.overcap {
  opacity: 100;
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  color: var(--white);
  text-align: left;
  background-color: #000000b3;
  flex: none;
  width: auto;
  padding: 3px 5px;
  display: inline-flex;
  position: absolute;
  inset: auto 0% 0% auto;
}

.caption.left-cap {
  z-index: 4;
  text-align: left;
  position: relative;
}

.rich-text-block {
  text-align: left;
}

.kf-tab-title {
  flex: 1;
  justify-content: flex-start;
  align-items: center;
  font-size: .9em;
  font-weight: 600;
}

.kf-tab-title.big-text {
  font-size: 1.2em;
  line-height: 1.4em;
}

.tab-timer {
  background-color: var(--light-grey);
  height: 3px;
  display: none;
  position: absolute;
  inset: auto 0% 0;
  overflow: hidden;
}

.tab-timer-bar {
  background-color: var(--slate);
  width: 100%;
  height: 3px;
  margin-left: 0;
  margin-right: 0;
  position: relative;
}

.kf-section {
  background-image: linear-gradient(180deg, var(--warm-red), #ffe6ea00);
  border-radius: 0;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
  display: block;
  position: relative;
}

.tab-link {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  border-bottom: 3px solid var(--ciff-red);
  opacity: .65;
  filter: grayscale();
  color: var(--slate);
  text-align: left;
  background-color: #fff;
  flex-flow: wrap;
  flex: 1;
  justify-content: flex-start;
  align-items: flex-start;
  padding: 20px 15px 20px 20px;
  font-weight: 500;
  line-height: 1.2em;
  display: flex;
  position: relative;
}

.tab-link:hover {
  opacity: 100;
  filter: grayscale(0%);
}

.tab-link.w--current {
  background-color: var(--white);
  opacity: 100;
  filter: grayscale(0%);
  color: var(--slate);
}

.tabs-menu {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  flex-flow: row;
  justify-content: flex-start;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-top: 10px;
  padding-bottom: 0;
  display: flex;
}

.tabs {
  padding-top: 0;
  padding-bottom: 40px;
}

.figure {
  border: 1px solid var(--light-grey);
  border-radius: 5px;
  width: 100%;
  padding: 20px;
}

.figure-image {
  width: 100%;
}

.accordion-drop {
  z-index: 1;
  height: 0%;
  margin-top: -10px;
  padding-bottom: 10px;
  position: relative;
  overflow: hidden;
}

.accordion-drop.w--open {
  background-color: var(--transparent);
  margin-top: -20px;
  padding-bottom: 20px;
  position: relative;
}

.accordion-title {
  z-index: 2;
  white-space: normal;
  cursor: pointer;
  color: inherit;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  padding: 20px 40px 20px 0;
  font-weight: 600;
  line-height: 1.2em;
  display: flex;
  position: relative;
}

.accordion-manual {
  flex-flow: column;
  justify-content: flex-start;
  width: 100%;
  display: flex;
  position: relative;
}

.acc-underline {
  background-color: var(--white);
  opacity: .3;
  mix-blend-mode: exclusion;
  width: 100%;
  height: 2px;
}

.tab-img {
  aspect-ratio: 1;
  object-fit: cover;
  border-radius: 100%;
  flex: 0 auto;
  width: 55px;
}

.tabs-content {
  width: 100%;
  overflow: visible;
}

.big-text-tabs {
  z-index: 0;
  opacity: 1;
  color: var(--transparent);
  -webkit-text-stroke-width: .5px;
  -webkit-text-stroke-color: var(--ciff-red);
  mix-blend-mode: multiply;
  font-family: Playfair Display, sans-serif;
  font-size: 5em;
  line-height: 1em;
  position: absolute;
  inset: -50px auto auto -10px;
}

.big-text-tabs.font-btt {
  z-index: 1;
  -webkit-text-stroke-width: .7px;
  -webkit-text-stroke-color: var(--coal);
  left: auto;
  right: -12px;
}

.column-quote {
  aspect-ratio: 1;
  color: var(--slate);
  text-align: left;
  background-color: #ffffffb3;
  flex-flow: column;
  justify-content: space-between;
  align-items: flex-start;
  margin-top: 20px;
  margin-bottom: 20px;
  padding: 20px;
  display: flex;
  position: relative;
}

.column-stat {
  text-align: center;
  border-radius: 10000px;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  margin-top: 20px;
  margin-bottom: 20px;
  padding: 0 20px;
  display: flex;
  position: relative;
}

.stat-shape {
  aspect-ratio: 1;
  opacity: .29;
  pointer-events: none;
  height: 100%;
  position: absolute;
}

.filter-title {
  text-align: left;
  border-top: 1px solid #00000040;
  flex: none;
  width: 100%;
  padding-top: 20px;
  padding-bottom: 20px;
  line-height: 1.2em;
}

.card {
  background-color: var(--white);
  opacity: 1;
  color: var(--slate);
  flex-flow: column;
  flex: 1;
  justify-content: space-between;
  align-items: stretch;
  min-width: 23%;
  max-width: 400px;
  margin-bottom: 3%;
  padding: 0;
  line-height: 23px;
  text-decoration: none;
  transition: transform .2s;
  display: flex;
  position: relative;
  overflow: hidden;
}

.card.feature-card {
  background-color: var(--transparent);
  color: var(--slate);
  border: 1px solid #00000026;
  flex-flow: row;
  justify-content: space-between;
  align-items: stretch;
  width: 100%;
  min-width: auto;
  max-width: none;
  height: 100%;
  min-height: 360px;
  margin-top: 20px;
  margin-bottom: 20px;
}

.card.search-card {
  flex-flow: row;
  max-width: 1100px;
  margin-bottom: 20px;
}

.card.menu-card {
  max-width: 300px;
  margin: 20px 0 0% auto;
  left: auto;
  right: 0;
}

.card.search-card-v2 {
  background-color: var(--light-grey);
  flex-flow: column;
  max-width: 1100px;
  margin-bottom: 20px;
}

.globe-wrap {
  flex-flow: wrap;
  justify-content: center;
  align-items: center;
  display: flex;
}

.img-g {
  z-index: 2;
  aspect-ratio: 1;
  object-fit: cover;
  border-radius: 500px;
  position: relative;
  transform: scale(.8);
}

.spinnerv2 {
  aspect-ratio: 1;
  border: 1px dashed #000000c7;
  border-radius: 500px;
  width: 60%;
  margin-top: 50%;
  margin-left: auto;
  margin-right: auto;
  padding: 20px;
  position: absolute;
  inset: 0%;
  transform: translate(0, -50%);
}

.g-img-wrap {
  z-index: 2;
  width: 50%;
  margin: -7% -4%;
  position: relative;
}

.globe-icons {
  z-index: 1;
  max-width: 40%;
  position: absolute;
  inset: auto 0% 0% auto;
}

.globe-icons.gi3 {
  inset: auto auto 30% -10%;
}

.globe-icons.gi2 {
  inset: -7% auto 0% 0%;
}

.large-image {
  width: 100%;
}

.large-image-wrap {
  position: relative;
}

.large-image-wrap.article-hero {
  z-index: 3;
  margin-top: -130px;
}

.mega-ring {
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 100vw;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  inset: 0%;
}

.ring-image {
  z-index: 1;
  aspect-ratio: 1;
  object-fit: cover;
  border-radius: 100%;
  justify-content: center;
  align-items: center;
  width: 100%;
  display: flex;
  position: relative;
}

.ring {
  aspect-ratio: 1;
  background-color: var(--warm);
  border-radius: 100%;
  justify-content: center;
  align-items: center;
  height: 100vh;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  position: absolute;
  inset: 50% 0% 0%;
  transform: translate(0, -50%);
}

.ring-image-wrapper {
  z-index: 2;
  flex-flow: column;
  justify-content: space-between;
  align-items: center;
  width: 200px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  position: absolute;
  inset: -5% 0%;
}

.sticky-inner {
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100vh;
  display: flex;
  position: sticky;
  top: 0;
}

.stickwrap {
  height: 100%;
  position: absolute;
  inset: 0%;
}

.mega-frame {
  z-index: 2;
  justify-content: center;
  align-items: center;
  height: 200vh;
  display: flex;
}

.sticky-frame {
  justify-content: center;
  align-items: center;
  width: 100vh;
  height: 100vh;
  display: flex;
  position: sticky;
  top: 0;
}

.ring-text {
  z-index: 1;
  aspect-ratio: 1;
  background-color: var(--teal);
  text-align: center;
  object-fit: cover;
  border-radius: 100%;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  font-family: Playfair Display, sans-serif;
  font-size: 29px;
  font-weight: 500;
  display: flex;
  position: absolute;
  inset: 0%;
}

.ring-text.yellow-rt {
  background-color: var(--yellow);
}

.ring-text.purple-rt {
  background-color: var(--purple);
}

.ring-counter {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  justify-content: center;
  align-items: center;
  padding-top: 10px;
  display: flex;
}

.rc-dot {
  background-color: #00000021;
  border-radius: 100px;
  width: 20px;
  height: 20px;
}

.rc-dot.rc-on {
  background-color: #000c;
}

.dotted-ring {
  z-index: 1;
  aspect-ratio: 1;
  border: 1px dashed #000c;
  border-radius: 500%;
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  position: absolute;
  inset: 5vh 0% 0%;
}

.ring-end-spacer {
  height: 25vh;
}

.outline {
  color: var(--transparent);
  -webkit-text-stroke-width: .7px;
  -webkit-text-stroke-color: var(--coal);
  font-size: 1.3em;
}

.hero-article-image {
  object-fit: cover;
  width: 100%;
}

.article-image-wrap {
  justify-content: center;
  align-items: center;
  max-height: 60vh;
  margin-top: -130px;
  display: flex;
  position: relative;
  overflow: clip;
}

.bold-text {
  font-weight: 600;
}

.side-quote {
  background-color: #fff9;
  padding: 10px 15px;
}

.side-quote.l-blue {
  background-color: var(--light-blue);
}

.profile-image-wrapper {
  justify-content: center;
  align-items: center;
  padding: 30px;
  display: flex;
  position: relative;
}

.back-arrow {
  transform-style: preserve-3d;
  flex: none;
  height: 13px;
  position: relative;
  bottom: 1px;
  transform: rotateX(0)rotateY(180deg)rotateZ(0);
}

.search-card {
  background-color: var(--transparent);
  opacity: 1;
  color: var(--slate);
  flex-flow: row;
  flex: 1;
  justify-content: space-between;
  align-items: stretch;
  min-width: 23%;
  margin-bottom: 2%;
  padding: 0;
  line-height: 23px;
  text-decoration: none;
  transition: transform .2s;
  display: flex;
  position: relative;
  overflow: hidden;
}

.card-image-wrap-search {
  z-index: 1;
  aspect-ratio: 3 / 2;
  flex-flow: row;
  flex: 0 auto;
  justify-content: flex-end;
  align-items: flex-end;
  max-width: 30%;
  min-height: 30px;
  position: relative;
  overflow: hidden;
}

.search-results-wrapper {
  flex-flow: column;
  flex: 1;
  align-items: flex-start;
  width: 100%;
  margin-top: 20px;
  margin-bottom: 20px;
  position: relative;
}

.default-no-image {
  background-image: linear-gradient(180deg, var(--warm-red) 25%, #ffe6ea00);
}

.timeline-wrap {
  flex-flow: wrap;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  padding-top: 40px;
  padding-bottom: 40px;
  display: flex;
  position: relative;
}

.timeline-left {
  text-align: right;
  flex-flow: column;
  flex: 0 auto;
  align-items: flex-start;
  width: 18%;
  max-width: 18%;
  padding-left: 20px;
  padding-right: 20px;
  position: relative;
}

.timeline-right {
  flex-flow: row;
  flex: 1;
  align-items: flex-start;
  width: 80%;
  max-width: 80%;
  padding: 80px 60px;
  display: flex;
}

.timeline-centre {
  text-align: center;
  flex-flow: wrap;
  flex: 0 auto;
  justify-content: center;
  align-items: flex-start;
  width: 2%;
  max-width: 2%;
  display: flex;
}

.timelineitem {
  opacity: .2;
  flex-flow: row;
  justify-content: flex-start;
  align-items: stretch;
  width: 100%;
  display: flex;
  position: relative;
}

.timeline-block-left {
  flex-flow: column;
  justify-content: center;
  align-items: flex-end;
  min-height: 100px;
  display: flex;
  position: sticky;
  top: 45vh;
}

.timeline-dot {
  background-color: var(--ciff-red);
  border-radius: 100%;
  width: 20px;
  height: 20px;
  position: relative;
}

.timeline-block-right {
  flex-flow: column;
  justify-content: center;
  align-items: flex-end;
  max-width: 600px;
  padding: 20px 20px 30px;
}

.timeline-progress {
  z-index: 0;
  background-image: linear-gradient(180deg, #24242400, var(--slate) 10%, var(--slate) 90%, #24242400 104%);
  width: 3px;
  height: 97%;
  position: absolute;
  left: 18.9%;
}

.progress-bar {
  background-image: linear-gradient(180deg, #e9005100, #c0265c 48%, var(--ciff-red) 104%);
  opacity: 0;
  width: 3px;
  height: 50vh;
  position: sticky;
  top: 0;
}

.v2tabs {
  padding-top: 0;
  padding-bottom: 40px;
}

.tabs-menu-v2 {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  flex-flow: row;
  justify-content: flex-start;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-top: 10px;
  padding-bottom: 0;
  display: flex;
}

.tab-linkv2 {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  border-bottom: 3px solid var(--ciff-red);
  opacity: .65;
  filter: grayscale();
  color: var(--slate);
  text-align: left;
  cursor: pointer;
  background-color: #fff;
  flex-flow: row;
  flex: 1;
  justify-content: flex-start;
  align-items: flex-start;
  height: 100%;
  padding: 20px 15px 20px 40px;
  font-weight: 500;
  line-height: 1.2em;
  display: flex;
  position: relative;
}

.tab-linkv2:hover {
  opacity: 100;
  filter: grayscale(0%);
}

.tab-linkv2.w--current {
  background-color: var(--white);
  opacity: 100;
  filter: grayscale(0%);
  color: var(--slate);
}

.tab-pane-v2 {
  display: none;
}

.tab-arrow-down {
  width: 20px;
  position: absolute;
  inset: 23px auto auto 12px;
}

.tab-arrow-up {
  width: 20px;
  position: absolute;
  inset: 23px auto auto 12px;
  transform: rotate(180deg);
}

.tab-arrow-up.tau {
  display: none;
}

.close-tab-button {
  z-index: 3;
  background-color: var(--ciff-red);
  opacity: .82;
  width: 100%;
  height: 100%;
  display: none;
  position: absolute;
  inset: 0%;
}

.mob-tabs-wrap {
  display: none;
}

.tab-link-wrap {
  flex: 1;
  position: relative;
}

.close-tabs-hitbox {
  cursor: pointer;
  width: 100%;
  height: 100%;
  display: none;
  position: absolute;
  inset: 0%;
}

.slide-title {
  width: 100%;
  margin-top: -4px;
  margin-bottom: 0;
  font-size: 3vw;
  font-weight: 700;
  line-height: 1.3em;
  display: inline-block;
}

.timeline-image-wrap {
  position: relative;
}

.timeline-number {
  font-family: Playfair Display, sans-serif;
  font-size: 3.5vw;
  font-weight: 400;
  line-height: 1em;
}

.nav-link-ddt {
  border-bottom: 3px solid var(--transparent);
  background-color: var(--transparent);
  color: var(--slate);
  text-align: center;
  vertical-align: middle;
  justify-content: center;
  align-items: center;
  padding: 27px 20px 26px 0;
  font-weight: 600;
  line-height: 26px;
  text-decoration: none;
  display: inline-flex;
  position: relative;
}

.nav-link-ddt:hover {
  border-bottom: 3px solid var(--ciff-red);
}

.nav-link-ddt.w--open {
  border-bottom-color: var(--ciff-red);
}

.nav-link-ddt.search-dd {
  padding-right: 0;
}

.nav-drop.w--open {
  z-index: 5;
  border-bottom: 3px solid var(--ciff-red);
  background-image: linear-gradient(180deg, var(--white), var(--light-blue));
  width: 100%;
  position: absolute;
  bottom: auto;
  left: 0%;
  right: 0%;
}

.nav-bar-drop-wrap {
  position: static;
}

.menu-link {
  opacity: .8;
  flex-flow: row;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  padding-top: 10px;
  padding-bottom: 10px;
  padding-right: 30px;
  font-weight: 600;
  line-height: 1em;
  text-decoration: none;
  display: flex;
  position: relative;
}

.menu-link:hover {
  opacity: 100;
}

.menu-link.ml-title {
  border-bottom: 1px solid var(--slate);
  margin-top: 18px;
  margin-bottom: 10px;
  padding-bottom: 13px;
  font-size: 1.2em;
}

.menu-arrow-right {
  width: 8px;
  position: absolute;
  inset: auto 0% auto auto;
}

.nav-open-cover {
  -webkit-backdrop-filter: blur(2px);
  backdrop-filter: blur(2px);
  background-color: #00000080;
  width: 100%;
  height: 100%;
  display: none;
  position: fixed;
}

.menu-search {
  text-align: right;
  width: 100%;
  min-width: 50%;
  margin-bottom: 0;
  padding-top: 40px;
  padding-bottom: 40px;
}

.heading {
  font-weight: 400;
}

.red {
  color: var(--ciff-red);
}

.div-block, .div-block-2 {
  display: flex;
}

.line {
  border: 1px solid #fff;
  border-bottom-width: .5px;
  margin-bottom: 8px;
}

.social-link-2 {
  color: inherit;
  font-family: "Fa Brands 400", Arial, sans-serif;
  font-size: 1.5em;
  text-decoration: none;
}

.social-link-2:hover {
  color: #e90051;
}

.column-2 {
  flex-flow: column;
  flex: 1;
  align-items: flex-start;
  width: 100%;
  max-width: 75%;
  position: relative;
}

.column-2.footer-col {
  flex: 1;
  max-width: none;
}

.column-2.footer-col.bottom-fc {
  flex: 0 auto;
  margin-top: 10px;
}

.social-row-2 {
  grid-column-gap: 14px;
  grid-row-gap: 14px;
  width: 100%;
  margin-top: 5px;
  margin-bottom: 5px;
  padding-top: 3px;
  padding-bottom: 3px;
  font-size: .9em;
  display: inline-flex;
}

.static-container-2 {
  z-index: 2;
  width: 100%;
  max-width: 1300px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
  position: relative;
}

.footer-link-2 {
  color: #fff;
  font-size: .9em;
  font-weight: 500;
  text-decoration: none;
  display: block;
}

.footer-link-2:hover {
  color: #e90051;
}

.list {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  flex-flow: wrap;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  padding-left: 18px;
  display: grid;
}

.paragraph {
  margin-bottom: 0;
}

.list-item {
  margin-bottom: 4px;
}

.block-quote {
  float: left;
  width: 50%;
  margin-top: 20px;
  margin-left: -25px;
  margin-right: 30px;
  font-weight: 600;
}

.mapkey {
  grid-column-gap: 25px;
  grid-row-gap: 25px;
  background-color: var(--white);
  justify-content: center;
  align-items: center;
  margin-top: 40px;
  margin-left: auto;
  margin-right: 0;
  padding: 7px 10px;
  display: inline-flex;
  position: relative;
  box-shadow: 0 0 15px -5px #0003;
}

.keyitem {
  grid-column-gap: 5px;
  grid-row-gap: 5px;
  justify-content: center;
  align-items: center;
  font-weight: 600;
  display: flex;
}

.keydot {
  background-color: var(--ciff-red);
  border-radius: 100px;
  width: 20px;
  height: 20px;
}

.keydot.citykd {
  background-color: var(--teal);
}

.over-stat {
  z-index: 1;
  font-size: 1.2em;
  line-height: 1.4em;
  position: relative;
}

.block-quote-2 {
  clear: left;
}

.leads {
  opacity: .8;
  font-size: .9em;
}

.stats-row-long {
  z-index: 3;
  grid-column-gap: 2%;
  grid-row-gap: 2%;
  flex-flow: wrap;
  justify-content: center;
  align-items: stretch;
  margin-top: 20px;
  margin-bottom: 20px;
  display: flex;
  position: relative;
  overflow: hidden;
}

.stats-row-long.tabs-sr {
  flex-flow: column;
}

.card-text-block-long {
  flex-flow: column;
  flex: 1;
  justify-content: flex-start;
  align-items: flex-start;
  padding: 10px 20px;
  display: block;
}

.card-text-block-long.feat-wrap {
  justify-content: center;
  align-self: center;
  align-items: flex-start;
  min-width: 50%;
  padding: 40px;
  display: flex;
  position: relative;
}

.stat-link-long {
  border-left-style: solid;
  border-left-width: 3px;
  border-left-color: var(--ciff-red);
  color: inherit;
  flex-flow: column;
  flex: 1;
  justify-content: flex-start;
  align-items: flex-start;
  min-width: 23%;
  margin-bottom: 20px;
  padding-top: 0;
  font-weight: 400;
  text-decoration: none;
  display: flex;
  position: relative;
  overflow: hidden;
}

.ctl-title {
  color: var(--ciff-red);
  flex: 1;
  margin-bottom: 10px;
  font-family: Playfair Display, sans-serif;
  font-size: 2em;
  line-height: 1em;
}

.ctl-text {
  flex: 1;
  font-size: 1.4em;
  line-height: 1.2em;
}

@media screen and (min-width: 1440px) {
  body {
    font-size: 18px;
    line-height: 32px;
  }

  .container {
    max-width: 1600px;
  }

  .column.orbit-col {
    font-size: 15px;
  }

  .section {
    padding-top: 80px;
    padding-bottom: 80px;
  }

  .card-row {
    grid-column-gap: 3%;
    grid-row-gap: 3%;
  }

  .s-card-int {
    max-width: 500px;
  }

  .s-card-int.profile {
    min-width: 13%;
    max-width: 189px;
  }

  .s-card-int.theme-card.tb.ca {
    font-size: 17px;
  }

  .button.all-slider-button {
    font-size: 16px;
    line-height: 28px;
  }

  .tag {
    font-size: .7em;
  }

  .card-title.small-card-title {
    font-size: 1.2em;
  }

  .card-summary {
    font-size: .9em;
  }

  .card-summary.norm-cs {
    font-size: 1em;
  }

  .slide-row {
    width: calc(28% - 10px);
  }

  .slide-arrow.sar:hover {
    background-color: var(--transparent);
  }

  .menu-tite {
    font-family: Playfair Display, sans-serif;
    font-weight: 500;
  }

  .dd-row {
    max-width: none;
  }

  .title-section {
    max-width: 1600px;
  }

  .mega-image {
    margin-left: auto;
    margin-right: auto;
  }

  .breadcrumbs {
    max-width: 1600px;
  }

  .wikilink {
    margin-bottom: 10px;
  }

  .quote-image-wrapper {
    margin-left: auto;
    margin-right: auto;
    position: relative;
  }

  .date {
    font-size: .9em;
  }

  .menu-wrap {
    max-width: 1600px;
  }

  .card-text-block.ct1, .card-text-block.ct2 {
    font-size: 17px;
  }

  .static-container {
    max-width: 1600px;
  }

  .corner-shape {
    width: 200px;
    height: 200px;
  }

  .caption {
    font-size: .7em;
  }

  .kf-tab-title {
    font-size: 1em;
  }

  .kf-section {
    background-image: linear-gradient(180deg, var(--warm-red), #ffe6ea00);
  }

  .tabs-menu {
    grid-column-gap: 30px;
    grid-row-gap: 30px;
  }

  .card {
    max-width: 500px;
  }

  .card.feature-card {
    max-width: none;
  }

  .card.menu-card {
    max-width: 380px;
  }

  .large-image-wrap.article-hero {
    margin-top: -120px;
  }

  .hero-article-image {
    display: block;
  }

  .profile-image-wrapper {
    margin-left: auto;
    margin-right: auto;
    position: relative;
  }

  .search-card {
    max-width: 1100px;
  }

  .tabs-menu-v2 {
    grid-column-gap: 30px;
    grid-row-gap: 30px;
  }

  .static-container-2 {
    max-width: 1600px;
  }

  .list {
    margin-bottom: 40px;
  }

  .card-text-block-long.ct1, .card-text-block-long.ct2 {
    font-size: 17px;
  }
}

@media screen and (max-width: 991px) {
  h2 {
    font-size: 2.5em;
  }

  h3 {
    font-size: 1.4em;
  }

  blockquote {
    width: 100%;
    margin-top: 40px;
    margin-left: 0;
    margin-right: 0;
  }

  figcaption {
    line-height: 1.2em;
  }

  .home-hero {
    border-bottom-right-radius: 20px;
    border-bottom-left-radius: 20px;
    min-height: 50vh;
    padding-top: 180px;
    padding-bottom: 100px;
  }

  .container {
    padding-left: 20px;
    padding-right: 20px;
  }

  .container.hero-c {
    width: 100%;
  }

  .container.menu-container {
    flex-flow: wrap;
  }

  .column {
    min-width: 45%;
    max-width: 100%;
  }

  .column.button-col {
    padding-left: 0%;
  }

  .column.section-title-col {
    flex: 0 auto;
    max-width: 100%;
    display: block;
  }

  .column.page-title-col {
    max-width: none;
    padding-left: 10px;
  }

  .column.button-col-2 {
    padding-left: 0%;
  }

  .column.article-title-col {
    max-width: none;
    padding-left: 10px;
  }

  .column.orbit-col {
    font-size: 13px;
  }

  .column.nav-col {
    max-width: none;
    margin-top: -10px;
    margin-bottom: -10px;
  }

  .column.nav-col.nc-left {
    min-width: 47%;
    max-width: 23%;
    font-size: .9em;
    line-height: 1.2em;
  }

  .section {
    padding-top: 60px;
    padding-bottom: 60px;
  }

  .section.full-height-s {
    min-height: auto;
  }

  .brand {
    max-width: 230px;
    padding-top: 10px;
    padding-bottom: 10px;
  }

  .navbar {
    padding-top: 0;
    padding-bottom: 0;
  }

  .navbar.pre-nav {
    max-width: calc(100% - 20px);
  }

  .nav-link {
    background-color: var(--white);
    text-align: center;
    flex: 0 auto;
    display: block;
  }

  .nav-link.special-nl {
    margin-left: 0;
  }

  .nav-link.top-nl {
    background-color: var(--transparent);
  }

  .nav-link.top-nl:hover {
    background-color: var(--warm);
  }

  .nav-link.ddnl {
    padding-left: 30px;
  }

  .nav-link.ddnl.w--open {
    background-color: var(--white);
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
  }

  .nav-menu {
    background-color: var(--white);
    flex-flow: column;
    flex: none;
    justify-content: flex-start;
    align-items: flex-end;
    width: 100%;
    margin-top: 0;
    margin-bottom: 0;
    padding: 10px 0;
    display: flex;
  }

  .form-block.menu-search {
    margin-bottom: 0;
  }

  .card-row {
    flex-flow: wrap;
  }

  .s-card-int {
    min-width: 45%;
  }

  .s-card-int.profile {
    min-width: 19%;
  }

  .tag-row.search-tr {
    padding-top: 10px;
    padding-left: 10px;
  }

  .card-title.small-card-title {
    font-size: 1em;
  }

  .card-title.theme-title {
    flex: 0 auto;
    font-size: 1.4em;
    line-height: 1.2em;
  }

  .card-summary {
    font-size: .8em;
    line-height: 1.4em;
  }

  .slide-row {
    width: calc(45% - 10px);
  }

  .menu-button {
    flex-flow: row;
    justify-content: center;
    align-self: center;
    align-items: center;
    padding: 19px;
    font-size: 38px;
  }

  .menu-button.w--open {
    background-color: var(--ciff-red);
    color: var(--white);
  }

  .explore-image-wrapper.feat-wrap {
    justify-content: center;
    align-items: center;
  }

  .stats-row {
    flex-flow: wrap;
  }

  .icon {
    margin-right: 30px;
  }

  .dropdown {
    text-align: center;
    display: block;
  }

  .dropdown-list.w--open {
    box-shadow: none;
    margin-bottom: 10px;
    padding-top: 0;
    position: relative;
    top: 0;
  }

  .dd-col {
    padding: 5px;
  }

  .dd-link {
    display: none;
  }

  .dd-link.hero-dd {
    text-align: left;
    justify-content: flex-start;
    align-items: center;
    height: 100%;
    padding-right: 30px;
    display: flex;
  }

  .menu-title-row {
    padding-bottom: 0;
    display: none;
  }

  .menu-tite {
    text-transform: uppercase;
    border-top-style: none;
    padding-top: 0;
    font-size: 1em;
  }

  .dd-row {
    justify-content: center;
    align-items: stretch;
  }

  .hero {
    padding-top: 140px;
  }

  .hero.no-image {
    padding-top: 80px;
    padding-bottom: 20px;
  }

  .datapage-hero-image {
    max-width: 250px;
  }

  .onpage-menu {
    position: relative;
    top: 0;
    overflow: visible;
  }

  .page-menu-row {
    padding-left: 20px;
    padding-right: 0;
    display: block;
    position: relative;
    overflow: auto;
  }

  .on-page-link {
    min-width: 120px;
    padding-top: 8px;
    padding-bottom: 9px;
    font-size: .9em;
  }

  .mega-title {
    width: 70%;
    font-size: 2em;
  }

  .back-top {
    width: 50px;
    height: 50px;
    padding: 10px;
    bottom: 20px;
    right: 10px;
  }

  .back-top.w--current {
    width: 80px;
    height: 80px;
  }

  .breadcrumbs {
    padding-left: 30px;
  }

  .filter-row {
    margin-right: -10px;
  }

  .download-card {
    width: 32.3%;
  }

  .page-number.pn-ends {
    flex: 0 auto;
    width: auto;
    padding-left: 10px;
    padding-right: 10px;
  }

  .rtb-article {
    font-size: 1em;
  }

  .wikilink {
    max-width: none;
  }

  .mega-title-wrapper {
    max-width: 100%;
    padding-right: 20px;
  }

  .cycle-title {
    padding: 5px;
    font-size: .7em;
  }

  .quote-image-wrapper {
    padding: 20px;
  }

  .mapdot {
    font-size: .5em;
  }

  .mapdot.india-md, .mapdot.china-md {
    width: 8%;
  }

  .menu-wrap.menu-container {
    flex-flow: wrap;
    padding-left: 20px;
    padding-right: 0;
  }

  .card-text-block {
    padding-left: 10px;
    padding-right: 10px;
  }

  .card-text-block.feat-wrap {
    min-width: 100%;
    padding: 0 10px 20px;
  }

  .card-text-block.ct1, .card-text-block.ct2, .card-text-block.ct3 {
    font-size: 16px;
  }

  .stat {
    font-size: 1em;
  }

  .static-container {
    padding-left: 20px;
    padding-right: 20px;
  }

  .corner-shape {
    width: 100px;
    height: 100px;
    right: -10px;
  }

  .corner-shape.left-cs {
    width: 100px;
    height: 100px;
    bottom: -50px;
    left: -25px;
  }

  .corner-shape.top-cs {
    width: 100px;
    height: 100px;
    top: 59px;
    right: -43px;
  }

  .title-slider {
    width: 75%;
  }

  .slider-title {
    font-size: 2em;
  }

  .otp-title {
    vertical-align: middle;
    border-left-style: none;
    padding-left: 0;
    font-size: 14px;
    line-height: 1em;
    display: inline-block;
  }

  .kf-tab-title {
    order: 9999;
    line-height: 1em;
  }

  .tab-link {
    grid-column-gap: 8px;
    grid-row-gap: 8px;
    justify-content: flex-start;
    align-items: center;
    padding: 10px;
  }

  .tabs-menu {
    grid-column-gap: 15px;
    grid-row-gap: 15px;
  }

  .m {
    align-self: center;
  }

  .on-page-menu-button {
    float: none;
    justify-content: center;
    align-items: center;
    padding: 10px 0;
    display: block;
  }

  .on-page-menu-button.w--open {
    background-color: var(--ciff-red);
  }

  .otp-icon {
    vertical-align: middle;
    display: inline-block;
  }

  .tab-img {
    width: 50px;
    display: none;
  }

  .big-text-tabs {
    font-size: 4em;
    top: -40px;
  }

  .card {
    min-width: 45%;
  }

  .card.feature-card {
    flex-flow: column;
    justify-content: flex-start;
    min-height: auto;
  }

  .card.menu-card {
    min-width: 48%;
  }

  .ring {
    width: 100vw;
    height: 100vw;
    max-height: 100vw;
  }

  .ring-image-wrapper {
    width: 140px;
  }

  .sticky-inner {
    aspect-ratio: 1;
    width: 100vw;
    height: 100vw;
    margin-left: auto;
    margin-right: auto;
    top: 5vh;
  }

  .ring-text {
    font-size: 21px;
    line-height: 22px;
  }

  .dotted-ring {
    width: 90vw;
    height: 90vw;
    display: none;
  }

  .profile-image-wrapper {
    padding: 20px;
  }

  .search-card {
    min-width: 45%;
  }

  .search-results-wrapper {
    min-width: 45%;
    max-width: 100%;
  }

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

  .timeline-right {
    padding: 60px 0 60px 20px;
  }

  .tabs-menu-v2 {
    grid-column-gap: 15px;
    grid-row-gap: 15px;
  }

  .tab-linkv2 {
    grid-column-gap: 8px;
    grid-row-gap: 8px;
    padding: 10px 10px 10px 24px;
  }

  .tab-arrow-down, .tab-arrow-up.tau {
    width: 15px;
    top: 13px;
    left: 5px;
  }

  .slide-title {
    width: 70%;
    margin-top: 0;
    font-size: 2em;
  }

  .nav-link-ddt {
    background-color: var(--white);
    text-align: center;
    border-bottom-width: 1px;
    flex: 0 auto;
    padding-top: 10px;
    padding-bottom: 10px;
    padding-left: 20px;
    display: block;
  }

  .nav-link-ddt:hover {
    border-bottom-width: 1px;
  }

  .nav-link-ddt.w--open {
    border-bottom-color: var(--slate);
    background-color: var(--light-blue);
  }

  .nav-drop.w--open {
    background-image: linear-gradient(180deg, var(--light-blue), var(--white));
    text-align: left;
    position: relative;
  }

  .nav-bar-drop-wrap {
    text-align: center;
    width: 100%;
  }

  .menu-link {
    padding-top: 8px;
    padding-bottom: 8px;
  }

  .menu-link.ml-title {
    margin-bottom: 5px;
    padding-bottom: 10px;
    font-size: 1.1em;
  }

  .menu-search {
    padding-top: 10px;
    padding-bottom: 10px;
  }

  .column-2 {
    min-width: 45%;
    max-width: 100%;
  }

  .mapkey {
    font-size: .8em;
  }

  .stats-row-long {
    flex-flow: wrap;
  }

  .card-text-block-long {
    padding-left: 10px;
    padding-right: 10px;
  }

  .card-text-block-long.feat-wrap {
    min-width: 100%;
    padding: 0 10px 20px;
  }

  .card-text-block-long.ct1, .card-text-block-long.ct2, .card-text-block-long.ct3 {
    font-size: 16px;
  }
}

@media screen and (max-width: 767px) {
  body {
    font-size: 14px;
    line-height: 26px;
  }

  h2 {
    font-size: 2.5em;
  }

  blockquote {
    background-image: none;
    margin-top: 20px;
    margin-bottom: 20px;
  }

  figcaption {
    font-size: .8em;
  }

  .home-hero {
    padding-bottom: 70px;
  }

  .container.hero-c {
    margin-top: -70px;
    padding-right: 20px;
  }

  .column {
    min-width: 100%;
    max-width: 100%;
  }

  .column.quote-col {
    margin-left: 0;
    padding-bottom: 10px;
  }

  .column.footer-col {
    min-width: 50%;
    max-width: 50%;
    padding-bottom: 20px;
    padding-right: 40px;
  }

  .column.footer-col.bottom-fc {
    flex: 1;
    min-width: auto;
  }

  .column.title-col {
    max-width: none;
    margin-bottom: 20px;
    padding-right: 0;
  }

  .column.button-col {
    flex-flow: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    max-width: none;
    padding-top: 0;
    padding-bottom: 0;
  }

  .column.quote-left-col {
    align-self: flex-start;
  }

  .column.section-title-col {
    border-top: 1px solid #0003;
    margin-top: 20px;
    margin-bottom: 0;
    padding-top: 20px;
  }

  .column.slider-col {
    order: 9999;
  }

  .column.g-col {
    grid-column-gap: 0px;
    grid-row-gap: 0px;
  }

  .column.cycle-col-v2 {
    order: -9999;
  }

  .column.button-col-2 {
    flex-flow: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    max-width: none;
    padding-top: 0;
    padding-bottom: 0;
  }

  .column.orbit-col {
    background-color: var(--white);
    padding: 20px;
  }

  .column.prio-title {
    border-top: 1px solid #0000002b;
    order: -9999;
    margin-top: 20px;
    padding-top: 20px;
  }

  .column.nav-col {
    margin-top: 0;
    margin-bottom: 0;
  }

  .column.nav-col.nc-left {
    min-width: auto;
    max-width: none;
    margin-top: 0;
    margin-bottom: 0;
    display: none;
  }

  .row {
    grid-column-gap: 0px;
    grid-row-gap: 0px;
    flex-flow: column;
    padding-top: 0;
    padding-bottom: 0;
  }

  .row.y-centre {
    flex-flow: column;
  }

  .row.reverse-row {
    flex-flow: column-reverse;
  }

  .row.slider-row {
    flex-flow: column;
  }

  .row.nav-row, .row.search-row {
    min-height: auto;
    padding-top: 0;
    padding-bottom: 10px;
  }

  .row.footer-row {
    flex-flow: wrap;
  }

  .section {
    padding-top: 40px;
    padding-bottom: 40px;
  }

  .brand {
    max-width: 230px;
  }

  .navbar {
    padding-top: 0;
    padding-bottom: 0;
  }

  .nav-menu {
    height: calc(100vh - 76px);
    padding-top: 20px;
    overflow: auto;
  }

  .text-field.btf {
    font-size: .9em;
  }

  .form-block {
    max-width: none;
    margin-top: 0;
    margin-bottom: 10px;
  }

  .form-block.filter-search {
    max-width: none;
    margin-bottom: 0;
    padding-bottom: 0;
  }

  .form-block.menu-search {
    max-width: none;
    margin-bottom: 0;
    padding-bottom: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .card-row {
    grid-column-gap: 4%;
    grid-row-gap: 4%;
  }

  .s-card-int.profile {
    min-width: 27%;
  }

  .s-card-int.profile.exec-prof {
    min-width: 27%;
    max-width: 174px;
  }

  .s-card-int.theme-card {
    flex-flow: row;
    flex: 0 auto;
    justify-content: flex-start;
    align-items: stretch;
    width: 100%;
    max-width: none;
    margin-bottom: 2%;
  }

  .card-image {
    align-self: center;
  }

  .card-image.feat-image {
    align-self: auto;
  }

  .button.filter-button {
    margin-top: 5px;
    margin-bottom: 5px;
  }

  .button.all-slider-button {
    margin-top: 0;
    margin-bottom: 0;
    inset: auto 100px 0% auto;
  }

  .tag-row {
    padding-top: 10px;
    padding-left: 10px;
  }

  .footer {
    padding-top: 40px;
    padding-bottom: 40px;
  }

  .bg-vid {
    border-bottom-left-radius: 0;
  }

  .card-title {
    margin-bottom: 10px;
    font-size: 1.2em;
  }

  .card-title.theme-title {
    flex: 0 auto;
  }

  .card-summary {
    font-size: .9em;
  }

  .slide-row {
    width: calc(60% - 10px);
  }

  .slide-card-wrap {
    margin-right: 0;
  }

  .slider {
    padding-bottom: 50px;
  }

  .slide-arrow {
    inset: auto 0% 0% auto;
  }

  .slide-arrow.sar {
    right: 46px;
  }

  .person-profile {
    max-width: 90%;
  }

  .more-pop {
    font-size: .9em;
    left: 0;
  }

  .explore-image-wrapper {
    flex: 1;
    max-height: 140px;
    margin: 0;
  }

  .explore-image-wrapper.feat-wrap {
    max-height: none;
  }

  .stat-link {
    border-bottom: 1px solid #ffffff26;
    min-width: 180px;
    margin-bottom: 10px;
  }

  .icon {
    margin-right: 28px;
  }

  .dd-col {
    width: 33%;
  }

  .hero {
    padding-bottom: 30px;
  }

  .datapage-hero-image {
    border-top-left-radius: 0;
    width: 100%;
    max-width: 100%;
    height: auto;
    max-height: 200px;
    position: relative;
    top: 0%;
    right: auto;
  }

  .on-page-link {
    padding-right: 10px;
  }

  .title-section {
    padding-top: 20px;
    padding-bottom: 20px;
  }

  .title-section.small-ts {
    padding-top: 120px;
    padding-bottom: 0;
  }

  .mega-title {
    width: 100%;
  }

  .mega-inner {
    align-items: flex-start;
  }

  .mega-inner.mi-big {
    align-items: flex-end;
  }

  .breadcrumbs {
    padding-left: 20px;
    top: -35px;
  }

  .inner-bread {
    max-width: none;
  }

  .filter-row {
    margin-right: -10px;
  }

  .filter-dropdown {
    min-width: 200px;
    margin-top: 0;
    margin-bottom: 0;
  }

  .download-card {
    width: 49%;
  }

  .number-row {
    grid-column-gap: 0px;
    grid-row-gap: 0px;
  }

  .article-image-front {
    height: auto;
    position: relative;
  }

  .mega-title-wrapper {
    background-color: var(--white);
    width: 100%;
    padding-top: 10px;
    padding-bottom: 10px;
  }

  .cycle-image.small-ci, .cycle-image.small-cb {
    z-index: 1;
  }

  .cycle-title {
    font-size: .9em;
  }

  .row-title {
    text-align: left;
  }

  .quote-slider-nav {
    padding-left: 0;
  }

  .open-quote {
    margin-right: 0;
  }

  .quote-image-wrapper {
    max-width: 200px;
    margin-bottom: -40px;
    padding: 20px;
    position: relative;
  }

  .world-map-wrapper {
    margin-top: 20px;
    margin-bottom: 70px;
    right: 28%;
  }

  .mapdot.china-md {
    width: 7%;
  }

  .card-text-block {
    justify-content: center;
    align-items: stretch;
    position: relative;
  }

  .card-text-block.feat-wrap {
    padding-left: 10px;
    padding-right: 10px;
  }

  .title-slider {
    width: 100%;
  }

  .kf-tab-title {
    min-width: auto;
  }

  .kf-section {
    padding-top: 0;
    padding-bottom: 0;
  }

  .tab-link {
    line-height: 1em;
  }

  .tabs-menu {
    grid-column-gap: 0px;
    grid-row-gap: 0px;
  }

  .tabs {
    padding-top: 20px;
    padding-bottom: 20px;
  }

  .figure {
    padding: 10px;
  }

  .tab-img {
    display: none;
  }

  .big-text-tabs {
    margin-bottom: -20px;
    margin-right: -5px;
    font-size: 2.5em;
    position: relative;
    top: 0;
    left: 0;
  }

  .column-quote {
    top: 0%;
    transform: translate(0);
  }

  .column-stat {
    border-left: 1px solid var(--slate);
    text-align: left;
    border-radius: 0;
  }

  .stat-shape {
    inset: 0% auto 0% 0%;
  }

  .card {
    max-width: none;
  }

  .card.menu-card {
    width: 100%;
    min-width: auto;
    max-width: none;
  }

  .card.search-card-v2 {
    margin-bottom: 10px;
  }

  .profile-image-wrapper {
    max-width: 200px;
    margin-bottom: -15px;
    padding: 20px;
    position: relative;
  }

  .search-results-wrapper {
    min-width: 100%;
    max-width: 100%;
  }

  .timeline-wrap {
    padding-top: 0;
    padding-bottom: 0;
  }

  .timeline-right {
    padding: 20px 0;
  }

  .timelineitem {
    padding-top: 0;
    padding-bottom: 0;
  }

  .timeline-block-right {
    padding-right: 0;
  }

  .timeline-progress {
    left: 18.7%;
  }

  .v2tabs {
    padding-top: 20px;
    padding-bottom: 20px;
  }

  .tabs-menu-v2 {
    grid-column-gap: 0px;
    grid-row-gap: 0px;
  }

  .tab-linkv2 {
    padding-top: 29px;
    padding-left: 5px;
    padding-right: 10px;
    line-height: 1em;
  }

  .tab-arrow-down, .tab-arrow-up.tau {
    top: 12px;
  }

  .slide-title {
    width: 100%;
  }

  .timeline-number {
    font-size: 5vw;
  }

  .nav-link-ddt {
    font-size: 1.3em;
  }

  .nav-link-ddt.w--open {
    border-bottom-style: none;
  }

  .menu-link {
    text-align: center;
    justify-content: center;
    align-items: center;
    padding-left: 20px;
    padding-right: 20px;
    font-weight: 500;
  }

  .menu-link.ml-title {
    margin-top: 10px;
    font-size: 1.3em;
  }

  .menu-arrow-right {
    width: 6px;
  }

  .menu-search {
    padding-bottom: 40px;
  }

  .column-2 {
    min-width: 100%;
    max-width: 100%;
  }

  .column-2.footer-col {
    min-width: 50%;
    max-width: 50%;
    padding-bottom: 20px;
    padding-right: 40px;
  }

  .column-2.footer-col.bottom-fc {
    flex: 0 auto;
    min-width: auto;
  }

  .mapkey {
    margin-top: 0;
    margin-bottom: 20px;
  }

  .card-text-block-long {
    justify-content: center;
    align-items: stretch;
    position: relative;
  }

  .card-text-block-long.feat-wrap {
    padding-left: 10px;
    padding-right: 10px;
  }

  .stat-link-long {
    border-bottom: 1px solid #ffffff26;
    min-width: 180px;
    margin-bottom: 10px;
  }
}

@media screen and (max-width: 479px) {
  h1 {
    font-size: 2.5em;
  }

  h2 {
    font-size: 2.1em;
  }

  h3 {
    font-size: 1.2em;
  }

  blockquote {
    padding-right: 15px;
    font-size: 1em;
  }

  .home-hero {
    padding-top: 140px;
    padding-bottom: 60px;
  }

  .container {
    padding-left: 15px;
    padding-right: 15px;
  }

  .container.hero-c {
    margin-top: -50px;
    padding-left: 10px;
    padding-right: 10px;
  }

  .container.menu-container {
    padding-left: 0;
    padding-right: 0;
  }

  .container.footer-lower {
    grid-column-gap: 10px;
    grid-row-gap: 10px;
    flex-flow: column;
    margin-top: 30px;
  }

  .column {
    flex-flow: column;
    display: flex;
  }

  .column.quote-col {
    display: block;
  }

  .column.footer-col {
    text-align: left;
    min-width: 180px;
    max-width: 100%;
    padding-bottom: 10px;
    padding-right: 0;
  }

  .column.quote-left-col {
    max-width: 50%;
  }

  .column.quote-right-col {
    padding-bottom: 5px;
  }

  .column.cycle-col-v2 {
    order: -9999;
  }

  .row {
    grid-column-gap: 0px;
    grid-row-gap: 0px;
    flex-flow: column;
  }

  .row.footer-row, .row.sub_row {
    flex-flow: column;
  }

  .section.newsletter-s {
    padding-bottom: 30px;
  }

  .brand {
    max-width: 150px;
    padding-left: 0;
  }

  .navbar {
    border-radius: 0;
    max-width: none;
  }

  .navbar.pre-nav {
    display: none;
  }

  .nav-link.top-nl {
    border-color: var(--teal);
    color: var(--teal);
    justify-content: center;
    align-items: center;
    line-height: 1em;
    display: flex;
  }

  .inner-body {
    padding-left: 0;
    padding-right: 0;
  }

  .top-nav-row.mobile-nav-top {
    flex-flow: row;
    justify-content: flex-end;
    align-items: stretch;
    display: flex;
  }

  .nav-menu {
    padding-top: 15px;
  }

  .form {
    background-color: var(--white);
    flex-flow: row;
    justify-content: center;
    align-items: center;
  }

  .text-field {
    border-bottom-style: solid;
    padding-left: 10px;
  }

  .text-field.btf {
    height: 45px;
  }

  .text-field.search-tf {
    height: 50px;
    padding-right: 0;
    font-size: 1em;
  }

  .form-block {
    margin-bottom: 0;
    padding-top: 0;
    padding-bottom: 10px;
  }

  .form-block.filter-search {
    margin-right: 0;
  }

  .form-block.menu-search {
    margin-right: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .search-submit {
    height: 45px;
  }

  .card-row.theme-row {
    padding-bottom: 0;
  }

  .s-card-int {
    min-width: 100%;
    margin-bottom: 1%;
  }

  .s-card-int.profile {
    flex: 0 auto;
    min-width: 47%;
    max-width: 47%;
    margin-bottom: 20px;
    padding-bottom: 0;
  }

  .s-card-int.profile.exec-prof {
    min-width: 47%;
    max-width: 47%;
  }

  .s-card-int.theme-card {
    margin-bottom: 3%;
  }

  .card-image-wrapper {
    aspect-ratio: auto;
    min-height: 36px;
    margin-bottom: 0;
  }

  .button.filter-button {
    width: 100%;
    height: auto;
    padding-top: 12px;
    padding-bottom: 12px;
  }

  .button.search-b-hover {
    min-height: 50px;
  }

  .tag-row {
    padding-top: 10px;
    padding-left: 10px;
    display: none;
  }

  .tag {
    padding-top: 4px;
    padding-bottom: 4px;
  }

  .footer {
    text-align: center;
  }

  .footer-link {
    margin-bottom: 8px;
    padding-bottom: 0;
    font-size: 1em;
  }

  .card-title {
    font-size: 1em;
  }

  .card-summary {
    display: none;
  }

  .slide-row {
    width: 90%;
    max-width: 240px;
  }

  .person-profile {
    max-width: 80%;
    margin-bottom: 5px;
    margin-left: -2px;
  }

  .menu-button {
    padding: 13px;
    font-size: 30px;
  }

  .more-pop {
    font-size: .8em;
  }

  .explore-image-wrapper.feat-wrap {
    margin-bottom: 10px;
  }

  .icon {
    margin-right: 19px;
  }

  .dd-col {
    width: 100%;
  }

  .social-row.social_icons {
    flex-flow: row;
  }

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

  .on-page-link {
    flex: none;
    min-height: auto;
    padding-top: 12px;
    padding-bottom: 12px;
  }

  .title-section.small-ts {
    padding-top: 60px;
  }

  .mega-title {
    font-size: 2em;
  }

  .mega-image {
    grid-column-gap: 10px;
    grid-row-gap: 10px;
  }

  .mega-inner {
    grid-column-gap: 10px;
    grid-row-gap: 10px;
    position: absolute;
    inset: 0% 0% 0% auto;
  }

  .mega-inner.mi-big {
    max-width: 90%;
    margin-left: auto;
    margin-right: auto;
    position: relative;
  }

  .mega-image-img {
    width: 100%;
  }

  .back-top {
    margin-top: 20px;
    bottom: 20px;
    right: 5px;
  }

  .accordion-toggle {
    padding: 13px 30px 13px 15px;
  }

  .breadcrumbs {
    padding-left: 20px;
    top: -49px;
  }

  .crumb {
    font-size: 12px;
  }

  .filter-row {
    margin-right: 0;
  }

  .filter-dropdown {
    min-width: 100%;
  }

  .dropdown-toggle {
    min-height: 40px;
  }

  .filter-buttons {
    width: 100%;
    display: block;
  }

  .download-card {
    width: 100%;
    margin-bottom: 1%;
  }

  .add-all-row {
    padding-top: 10px;
    padding-bottom: 10px;
  }

  .number-row {
    justify-content: space-between;
    align-items: center;
  }

  .page-number {
    display: none;
  }

  .page-number.pn-ends {
    display: block;
  }

  .wikilink {
    margin-bottom: 0;
    padding: 10px 20px 10px 10px;
  }

  .mega-title-wrapper {
    padding-left: 10px;
    padding-right: 10px;
  }

  .cycle-section {
    padding: 0;
  }

  .cycle-title {
    font-size: .7em;
  }

  .quote-slider-nav {
    padding-left: 0;
  }

  .quote-image-wrapper {
    max-width: 150px;
  }

  .world-map-wrapper {
    margin-top: 10px;
    margin-bottom: 40px;
    right: 30%;
  }

  .mapdot {
    width: 10%;
  }

  .mapdot.india-md {
    width: 10%;
    top: 43%;
    left: 63%;
  }

  .mapdot.china-md {
    width: 9%;
    top: 37%;
    left: 72%;
  }

  .menu-wrap {
    padding-left: 15px;
    padding-right: 15px;
  }

  .menu-wrap.menu-container {
    padding-left: 15px;
    padding-right: 0;
  }

  .card-text-block.feat-wrap {
    padding-left: 10px;
    padding-right: 10px;
  }

  .static-container {
    padding-left: 15px;
    padding-right: 15px;
  }

  .pop-arrow {
    height: 10px;
  }

  .corner-shape.top-cs {
    top: 13px;
  }

  .slider-title {
    font-size: 2em;
  }

  .kf-section {
    padding-left: 10px;
    padding-right: 10px;
  }

  .tab-link {
    padding-top: 13px;
    padding-bottom: 12px;
  }

  .tabs-menu {
    grid-column-gap: 0px;
    grid-row-gap: 0px;
    flex-flow: column;
    padding-top: 0;
  }

  .accordion-title {
    padding: 13px 30px 13px 15px;
  }

  .card {
    min-width: 100%;
    margin-bottom: 20px;
  }

  .card.search-card {
    flex-flow: column;
  }

  .card.search-card-v2 {
    flex-flow: column;
    margin-bottom: 10px;
  }

  .profile-image-wrapper {
    max-width: 150px;
  }

  .back-arrow {
    height: 10px;
  }

  .search-card {
    flex-flow: column;
    min-width: 100%;
    margin-bottom: 1%;
  }

  .card-image-wrap-search {
    aspect-ratio: auto;
    max-width: 100%;
    min-height: 36px;
    margin-bottom: 0;
  }

  .timeline-left {
    padding-right: 10px;
  }

  .timeline-centre {
    width: 2%;
    max-width: 2%;
  }

  .timeline-dot {
    width: 15px;
    height: 15px;
  }

  .timeline-block-right {
    padding-right: 0;
  }

  .timeline-progress {
    width: 2px;
  }

  .tabs-menu-v2 {
    grid-column-gap: 0px;
    grid-row-gap: 0px;
    flex-flow: column;
    padding-top: 0;
    display: none;
  }

  .tab-linkv2 {
    max-width: none;
    padding-top: 13px;
    padding-bottom: 12px;
    padding-left: 25px;
  }

  .tab-arrow-down, .tab-arrow-up.tau {
    top: 14px;
  }

  .mob-tabs-wrap {
    display: block;
    position: relative;
  }

  .slide-title {
    font-size: 2em;
  }

  .timeline-number {
    font-size: 6vw;
  }

  .menu-search {
    padding-bottom: 20px;
  }

  .line {
    min-width: 100%;
  }

  .column-2.footer-col {
    text-align: left;
    min-width: 180px;
    max-width: 100%;
    padding-bottom: 10px;
    padding-right: 0;
  }

  .static-container-2 {
    padding-left: 15px;
    padding-right: 15px;
  }

  .footer-link-2 {
    padding-bottom: 0;
    font-size: 1em;
  }

  .mapkey {
    grid-column-gap: 15px;
    grid-row-gap: 15px;
    padding-top: 2px;
    padding-bottom: 2px;
  }

  .keydot {
    width: 15px;
    height: 15px;
  }

  .card-text-block-long.feat-wrap {
    padding-left: 10px;
    padding-right: 10px;
  }
}


@font-face {
  font-family: 'Fa';
  src: url('../fonts/fa-regular-400.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Fa Brands 400';
  src: url('../fonts/fa-brands-400.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Fa';
  src: url('../fonts/fa-solid-900.woff2') format('woff2');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Generalsans';
  src: url('../fonts/GeneralSans-Bold.otf') format('opentype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Generalsans';
  src: url('../fonts/GeneralSans-Medium.otf') format('opentype');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Generalsans';
  src: url('../fonts/GeneralSans-BoldItalic.otf') format('opentype');
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: 'Generalsans';
  src: url('../fonts/GeneralSans-Light.otf') format('opentype');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Generalsans';
  src: url('../fonts/GeneralSans-ExtralightItalic.otf') format('opentype');
  font-weight: 200;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: 'Generalsans';
  src: url('../fonts/GeneralSans-LightItalic.otf') format('opentype');
  font-weight: 300;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: 'Generalsans';
  src: url('../fonts/GeneralSans-Semibold.otf') format('opentype');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Generalsans';
  src: url('../fonts/GeneralSans-Italic.otf') format('opentype');
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: 'Generalsans';
  src: url('../fonts/GeneralSans-Regular.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Generalsans';
  src: url('../fonts/GeneralSans-SemiboldItalic.otf') format('opentype');
  font-weight: 600;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: 'Generalsans';
  src: url('../fonts/GeneralSans-Extralight.otf') format('opentype');
  font-weight: 200;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Generalsans';
  src: url('../fonts/GeneralSans-MediumItalic.otf') format('opentype');
  font-weight: 500;
  font-style: italic;
  font-display: swap;
}