/*!
Theme Name: compass-2019
Theme URI: http://underscores.me/
Author: Alasdair Blackwell
Author URI: https://www.aliblackwell.com
Description: Description
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: compass-2019
Tags: Tags
*/
/*--------------------------------------------------------------
# Core colours
--------------------------------------------------------------*/

:root {
  --purple: #6520ff;
  --purple-muted: #490ecb;
  --pink: #ff0058;
  --pink-muted: #e60050;
  --green: #45ffb9;
  --green-muted: #108459;
  --dark-blue: #000845;
  --dark-blue-muted: #010310;
  --grey: #f7f5f5;
  --grey-muted: #efeded;
  --content-width: 1100px;
  --inner-content-width: 981px;
  --inner-content-post-padding: 3rem 9rem;
  --inner-content-page-padding: 0 8rem 3rem 9rem;
  --button-padding: 0.2em 0.5em 0.3em 0.5em;
  --tile-padding: 1.2rem;
  --grid-gutter: 1.5rem;
  --line-height: 1.3;
  --line-height-tight: 0.875;
  --line-height-tightest: 0.8125;
  --default-20px: 20px;
  --px-219: 9rem;
  --px-109: 5.45rem;
  --px-90: 7.78571429rem;
  --px-65: 3.25rem;
  --px-70: 3.4rem;
  --px-60: 3rem;
  --px-44: 2.2rem;
  --px-30: 1.5rem;
  --px-30-lh: 1.2;
  --px-27: 1.35rem;
  --px-27-lh: 1.2235;
  --px-26: 1.3rem;
  --px-26-lh: 1.3;
  --px-24: 1.2rem;
  --px-23: 1.15rem;
  --px-20: 1rem;
  --px-16: 0.8rem;
  --px-14: 0.7rem;
  --bild-condensed: "BildCondensed", sans-serif;
  --bild-variable: "BildCondensed";
  --founders-condensed: "FoundersCondensed";
  --founders-regular: "FoundersRegular";
  --founders-long-text: "FoundersText";
  --founders-mono: "FoundersMono";
}

/*
Core breakpoints
*/

@media (max-width: 1050px) {
  :root {
    --px-109: 4.45rem;
  }
}

@media (max-width: 1050px) {
  :root {
    --content-width: 90%;
    --inner-content-width: 80%;
    --inner-content-post-padding: 3rem 5%;
    --inner-content-page-padding: 0rem 5% 3rem 5%;
  }
}

@media (max-width: 900px) {
  :root {
    --default-20px: 18px;
    --px-219: 7.45rem;
  }
}

@media (max-width: 800px) {
  :root {
    --default-20px: 18px;
    --px-219: 6.45rem;
  }
}

@media (max-width: 700px) {
  :root {
    --default-20px: 18px;
    --px-219: 6.45rem;
    --px-70: 2rem;
  }
}

@media (max-width: 600px) {
  :root {
    --px-109: 3.45rem;
    --px-90: 3.2rem;
    --px-219: 18vw;
    --inner-content-width: 100%;
    --inner-content-post-padding: 1.5rem 5%;
    --inner-content-page-padding: 0 9% 1.5rem 9%;
  }
}

@media (max-width: 480px) {
  :root {
    --default-20px: 16px;
    --px-27: 1.25rem;
    --px-219: 18vw;
  }
}

@media (max-width: 450px) {
  :root {
    --px-109: 2.45rem;
    --px-90: 2.2rem;
    
  }
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  25% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  25% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}

/*--------------------------------------------------------------
# Core fonts
--------------------------------------------------------------*/

@font-face {
  font-family: "BildCondensed";
  src: url("./fonts/BildV2-CondensedBlack.woff2") format("woff2"),
    url("./fonts/BildV2-CondensedBlack.woff") format("woff"),
    url("./fonts/BildV2-CondensedBlack.otf") format("opentype");
}

@font-face {
  font-family: "BildVariable";
  src: url("./fonts/BildVariableV2-VF.woff2") format("woff2-variations"),
    url("./fonts/BildVariableV2-VF.woff2") format("woff2"),
    url("./fonts/BildVariableV2-VF.woff") format("woff");
  font-style: normal;
  font-stretch: 60 100;
  font-weight: 1 999;
}

@font-face {
  font-family: "FoundersCondensed";
  font-weight: 400;
  src: url("./fonts/FoundersGroteskCondensedWeb-Semibold.eot");
  src: url("./fonts/FoundersGroteskCondensedWeb-Semibold.eot?#iefix")
      format("embedded-opentype"),
    url("./fonts/FoundersGroteskCondensedWeb-Semibold.woff2") format("woff2"),
    url("./fonts/FoundersGroteskCondensedWeb-Semibold.woff") format("woff"),
    url("./fonts/FoundersGroteskCondensed-Semibold.otf") format("opentype");
}

@font-face {
  font-family: "FoundersRegular";
  font-weight: 400;
  src: url("./fonts/FoundersGroteskWeb-Regular.eot");
  src: url("./fonts/FoundersGroteskWeb-Regular.eot?#iefix")
      format("embedded-opentype"),
    url("./fonts/FoundersGroteskWeb-Regular.woff2") format("woff2"),
    url("./fonts/FoundersGroteskWeb-Regular.woff") format("woff"),
    url("./fonts/FoundersGrotesk-Regular.otf") format("opentype");
}

@font-face {
  font-family: "FoundersText";
  font-weight: 400;
  src: url("./fonts/FoundersGroteskTextWeb-Regular.eot");
  src: url("./fonts/FoundersGroteskTextWeb-Regular.eot?#iefix")
      format("embedded-opentype"),
    url("./fonts/FoundersGroteskTextWeb-Regular.woff2") format("woff2"),
    url("./fonts/FoundersGroteskTextWeb-Regular.woff") format("woff"),
    url("./fonts/FoundersGroteskText-Regular.otf") format("opentype");
}

@font-face {
  font-family: "FoundersMono";
  font-weight: 400;
  src: url("./fonts/FoundersGroteskMonoWeb-Regular.eot");
  src: url("./fonts/FoundersGroteskMonoWeb-Regular.eot?#iefix")
      format("embedded-opentype"),
    url("./fonts/FoundersGroteskMonoWeb-Regular.woff2") format("woff2"),
    url("./fonts/FoundersGroteskMonoWeb-Regular.woff") format("woff"),
    url("./fonts/FoundersGroteskMonoTest-Regular.otf") format("opentype");
}

.block-heading {
  font-family: var(--bild-condensed);
  font-weight: 400;
  font-size: 7.78571429rem;
}

.headline-1 {
  font-family: var(--bild-condensed);
  font-weight: 400;
  font-size: var(--px-109);
  text-align: center;
  text-transform: uppercase;
  color: var(--dark-blue);
  margin: 1.4rem 0 2rem;
  line-height: 1;
}

.headline-2 {
  font-family: var(--bild-condensed);
  font-weight: 400;
  font-size: var(--px-70);
  text-align: center;
  color: var(--dark-blue);
  max-width: 37rem;
  line-height: var(--px-70);
  margin: 0 auto;
}

.headline-3,
#primary-menu a {
  font-family: var(--bild-variable);
  font-weight: 400;
  font-size: 2.3rem;
  color: white;
  text-transform: uppercase;
  display: block;
  font-variation-settings: "wdth" 91;
}



#primary-menu .current_page_item a,
#primary-menu .current-menu-item a {
  color: var(--green);
}

#primary-menu a:hover,
#primary-menu a:active {
  text-decoration: none;
  color: var(--green);
  font-variation-settings: "wdth" 90;
}

.tags .headline-3 {
  text-align: center;
  color: var(--dark-blue);
  margin: 2rem 0 1rem 0;
}

.tags {
  margin-bottom: 2.6rem;
}

.subheading,
.page-submenu a,
.page-content h3 {
  font-family: var(--founders-condensed);
  font-weight: 400;
  text-transform: uppercase;
  font-size: var(--px-27);
  line-height: var(--px-27-lh);
  color: var(--dark-blue);
  display: block;
  margin: 0;
  margin-top: 2rem;
}
.publications .subheading {
  margin-top: 0.6rem; 
  margin-bottom: 0rem;
}

.publications p, .publications li {
  color: var(--dark-blue)
}

.publications p.meta {
  margin: 0.5rem 0 1rem;
  font-family: var(--founders-regular);
  font-size: var(--px-23);
}

.publications .cta,
.publications .inline-cta {
  font-size: var(--px-26);
  margin-bottom: 0.5rem;
}
.post-type-archive-publications select {
  display: block;
  margin: 0 auto 1rem auto;
  max-width: 90%;
}

.page-submenu a {
  margin-top: 0;
}

.site-section-title {
  font-size: var(--px-109);
  font-family: var(--bild-condensed);
  font-weight: 400;
  text-align: center;
  color: var(--dark-blue);
  text-transform: uppercase;
  line-height: 1;
  margin: 3.2rem 0 0.5rem 0;
}

p.main-intro {
  max-width: var(--inner-content-width);
  margin: 0 auto 3.4rem;
  font-size: var(--px-24);
  color: var(--dark-blue-muted);
  text-align: center;
  display: block;
}

.post-type-archive-campaigns .site-section-title,
.page-template-page-past-campaigns .site-section-title {
  margin: 3.7rem 0 3.4rem;
}

.page-banner strong {
  font-family: var(--bild-variable);
  font-size: var(--px-219);
  color: white;
  text-transform: uppercase;
  line-height: var(--line-height-tight);
  display: block;
  max-width: 90%;
}

.home .page-banner strong {
  line-height: 0.8125;
}

.page-id-120 .page-banner strong,
.page-template-page-about .page-banner strong {
  font-size: var(--px-109);
  max-width: 100%;
}



.page-banner p {
  color: white;
  font-size: var(--px-30);
  line-height: var(--px-30-lh);
  line-height: 1.2;
  font-family: var(--founders-condensed);
  font-weight: 400;
  margin: 0.7rem 0 0.9rem;
  max-width: 75%;
}

@media (max-width: 950px) {
  .page-banner p {
    max-width: 100%;
  }
}

.page-banner .cta {
  font-size: var(--px-23);
}

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text {
  color: black;
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  clip-path: none;
  color: #21759b;
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
  /* Above WP toolbar. */
}

*:focus {
  outline: 4px solid #ffbf47;
}

button.menu-toggle:focus {
  padding: 2px;
}


/* Do not show the outline on the skip link target. */
#content[tabindex="-1"]:focus {
  outline: 0;
}

/*
# Utility classes
*/

.single-publications .right-column {
  width: 50%;
}

.single-publications h1 a {
  color: var(--dark-blue);
}
.single-publications h1 a:hover {
  color: var(--dark-blue);
}
.single-section {
  margin-top: 1rem;
}

.publication-sharer {
  margin: 0.5rem 0 3rem;
}

.right-column {
  float: right;
  max-width: 50%;
  margin-right: 10%;
  padding-left: 3rem;
}

.left-column {
  float: left;
  max-width: 40%;
}

.page-id-136 .left-column {
  max-width: 60%;
}

.page-id-136 .right-column {
  margin-right: 0;
  max-width: 40%;
}

.clear-left {
  clear: left;
}

.center {
  text-align: center;
  display: inline-block;
  margin: 0 auto;
}

.page-id-9532 .page-content img {
  max-width: 15rem;
  margin-left: 0;
}



@media (max-width: 480px) {

  .page-id-9532 .page-content img {
    width: 100%;
    display: block;
    margin: 0 auto 1rem;
    float: none;
  }
}


/*--------------------------------------------------------------
# Foundations
--------------------------------------------------------------*/
* {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

html {
  box-sizing: border-box;
  font-size: var(--default-20px);
  line-height: var(--line-height);
  text-rendering: optimizeLegibility;
}
*,
*:before,
*:after {
  /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see https://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
  box-sizing: inherit;
}

body.single,
body.tag,
body.blog,
body.post-type-archive-events,
body.page-template-page-campaigns,
body.page,
body.post-type-archive,
body.page-template-page-past-campaigns {
  background: var(--grey);
}

body.post-type-archive-publications {
  background: white;
}

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

img {
  border-style: none;
  max-width: 100%;
  height: auto;
}

.site-panel {
  width: var(--content-width);
  position: relative;
  margin: 0px auto;
}

.menu-toggle {
  float: right;
}

.site-title {
  margin: 0;
  padding: 0;
  line-height: 1;
  font-size: 1rem;
  text-align: center;
  width: 100%;
  position: absolute;
  top: 0.6rem;
  z-index: 0;
}

@media (max-width: 600px) {
  .site-title {
    text-align: left;
  }
}

.site-title a {
  display: inline-block;
}

.site-title img {
  display: block;
  height: 1.25rem;
}

#primary.fixed {
  padding-top: 2.5rem;
}

/*--------------------------------------------------------------
# Core Typography
--------------------------------------------------------------*/

body,
button,
input,
select,
optgroup,
textarea {
  color: #404040;
  font-family: var(--founders-regular);
  font-weight: 400;
  font-size: 16px;
  font-size: 1rem;
  line-height: var(--line-height);
}

body {
  margin: 0;
  background: #fff;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  clear: both;
}

p {
  margin-bottom: 1.5em;
}

dfn,
cite,
em,
i {
  font-style: italic;
}

blockquote {
  margin: 0 1.5em;
}

/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/
.alignleft {
  display: inline;
  float: left;
  margin-right: 1.5em;
}

.alignright {
  display: inline;
  float: right;
  margin-left: 1.5em;
}

.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
  text-align:center;
}

.aligncenter iframe {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.aligncenter div {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/*--------------------------------------------------------------
# Buttons and CTAs
--------------------------------------------------------------*/

.cta {
  display: inline-block;
}

input[type="submit"].filter-button {
  border-radius: 0px;
  font-size: 1rem;
  padding: var(--button-padding);
}

.cta a,
.cta a:visited,
.wp-block-button a:visited,
.inline-cta,
.sign-up-component input[type=submit],
.wp-block-button a {
  font-size: 1em;
  line-height: 1em;
  padding: var(--button-padding);
  font-family: var(--founders-condensed);
  font-weight: 400;
  text-decoration: none;
  text-transform: uppercase;
  display: inline-block;
  color: white;
  background: transparent;
  cursor: pointer;
}

.cta a:hover,
.cta a:active,
.inline-cta:hover,
.wp-block-button a:hover,
.sign-up-component input[type=submit]:hover {
  text-decoration: none;
}

.cta, .inline-cta, .sign-up-component input[type=submit] {
  font-size: 1rem;
}

.cta.white a,
.cta.white a:visited,
.white .inline-cta,
.white .inline-cta:visited {
  border: 1px solid white;
  background: white;
  color: white;
}
.cta.white a:hover,
.cta.white a:active,
.white .inline-cta:hover,
.white .inline-cta:active {
  border: 1px solid var(--grey);
  background: white;
  color: var(--dark-blue);
}

.cta.pink a,
.wp-block-button a.has-pink-background-color,
.wp-block-button a.has-pink-background-color:visited,
.cta.pink a:visited,
.pink .inline-cta,
.pink .inline-cta:visited {
  border: 1px solid var(--pink);
  background: var(--pink-muted);
}

.cta.pink.transparent a,
.cta.pink.transparent a:visited,
.pink .inline-cta.transparent,
.pink .inline-cta.transparent:visited {
  color: var(--dark-blue);
}

.cta.pink.transparent a:active,
.cta.pink.transparent a:hover,
.pink .inline-cta.transparent:active,
.pink .inline-cta.transparent:hover {
  color: white;
  background: var(--pink);
}

.cta.pink a:hover,
.cta.pink a:active,
.pink .inline-cta:active,
.pink .inline-cta:hover {
  border: 1px solid var(--pink-muted);
  background: var(--pink);
}

.cta.dark-blue a,
.cta.dark-blue a:visited,
.dark-blue .inline-cta,
.dark-blue .inline-cta:visited {
  border: 1px solid var(--dark-blue);
  background: var(--dark-blue);
}

.cta.dark-blue a:hover,
.cta.dark-blue a:active,
.dark-blue .inline-cta:hover,
.dark-blue .inline-cta:active {
  border: 1px solid var(--dark-blue-muted);
  background: var(--dark-blue-muted);
  color: white;
}

.cta.green a,
.cta.green a:visited,
.green .inline-cta,
.green .inline-cta:visited {
  color: var(--dark-blue);
  border: 1px solid var(--green);
  background: var(--green);
}

.green-wide .inline-cta,
.green-wide .inline-cta:visited,
.sign-up-component input[type=submit] {
  color: white;
  border: 1px solid var(--dark-blue);
  background: var(--dark-blue);
}

.cta.green.transparent a,
.cta.green.transparent a:visited,
.green .inline-cta.transparent,
.green .inline-cta.transparent:visited {
  color: var(--dark-blue);
  border: 1px solid var(--green-muted);
}

.cta.green.transparent a:hover,
.cta.green.transparent a:active,
.green .inline-cta.transparent:hover,
.green .inline-cta.transparent:active {
  color: var(--dark-blue);
  border: 1px solid var(--green);
  background: var(--green);
}

.cta.green a:hover,
.cta.green a:active,
.green .inline-cta:hover,
.green .inline-cta:active,
.sign-up-component input[type=submit]:hover,
.sign-up-component input[type=submit]:active {
  color: var(--dark-blue);
  border: 1px solid var(--green-muted);
  background: var(--green-muted);
}

.cta.purple a,
.cta.purple a:visited,
.wp-block-button a.has-purple-background-color,
.wp-block-button a.has-purple-background-color:visited,
.purple .inline-cta,
.purple .inline-cta:visited {
  border: 1px solid var(--purple);
  background: var(--purple);
  color: white;
}

.cta.transparent.purple a,
.cta.transparent.purple a:visited,
.purple .inline-cta.transparent,
.purple .inline-cta.transparent:visited {
  color: var(--dark-blue);
}

.cta.purple a:hover,
.cta.purple a:active,
.purple .inline-cta:hover,
.purple .inline-cta:active {
  color: white;
  border: 1px solid var(--purple-muted);
  background: var(--purple-muted);
}
.cta.transparent.purple a:hover,
.purple .inline-cta.transparent:hover {
  color: white;
}

.cta.transparent a,
.cta.transparent a:visited,
.inline-cta.transparent,
.inline-cta.transparent:visited {
  background: transparent;
}

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

.header-container {
  position: relative;
}
.site-header {
  width: 100%;
  height: 2.5rem;
  background: var(--purple);
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
  transition: all 2s ease-in;
  position: relative;
  top: 0;
  transition: none;  
}

.fixed .site-header {
  top: 2.5rem;
  transition: all 0.2s ease-in;
}

.fixed .header-container {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 30;
  width: 100%;
  top: -2.5rem;
}

.site-header .alignright {
  position: relative;
  z-index: 2;
}

.site-header .cta {
  margin-top: 0.5rem;
  font-size: var(--px-20);
}

.site-header.pink-header {
  background: var(--pink);
}

.site-header.purple-header {
  background: var(--purple);
}

.site-header.grey-header {
  background: var(--grey);
}

/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/
a {
  color: var(--pink-muted);
  text-decoration: none;
}

a:visited {
  color: var(--pink-muted);
}

a:hover,
a:focus,
a:active {
  text-decoration: underline;
}

a:focus {
  outline: thin dotted;
}

a:hover,
a:active {
  outline: 0;
}

/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/

button.menu-toggle {
  background: none;
  border: none;
  cursor: pointer;
  margin: 0.65rem 0 0 0.5rem;
  padding: 0;
}
.menu-toggle img {
  height: 1.24rem;
}
.main-navigation {
  display: inline-block;
}

.main-navigation ul {
  list-style: none;
  margin: 0;
  padding-left: 0;
}

#site-navigation {
  float: right;
}

.nav-container {
  opacity: 0;
  visibility: hidden;
  position: absolute;
  /* min-height: calc(100vh - 2.5rem); */
  background: var(--dark-blue);
  padding: 2rem;
  top: -5rem;
  right: 0;
  width: 320px;
  transition: all 0.5s ease;
  animation: fadeOut 0.25s both;
}

.toggled .nav-container {
  visibility: visible;
  top: 2.5rem;
  opacity: 1;
  animation: fadeIn 0.5s both;
}

@media (max-width: 450px) {

  .nav-container {
    right: -1rem;
  }
  .toggled .nav-container {
    right: -1rem;
  }
}


.main-navigation ul ul {
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
  float: left;
  position: absolute;
  top: 100%;
  left: -999em;
  z-index: 99999;
}

.main-navigation ul ul ul {
  left: -999em;
  top: 0;
}

.main-navigation ul ul li:hover > ul,
.main-navigation ul ul li.focus > ul {
  left: 100%;
}

.main-navigation ul ul a {
  width: 200px;
}

.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
  left: auto;
}

.main-navigation li {
  position: relative;
}

.main-navigation a,
.main-navigation a:visited {
  display: block;
  text-decoration: none;
  color: white;
}

/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
  display: block;
}

@media screen and (min-width: 37.5em) {
  .menu-toggle {
    display: block;
  }
  .nav-container {
    /* display: none; */
  }
}

.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation {
  margin: 0 0 1.5em;
  overflow: hidden;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
  float: left;
  width: 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
  float: right;
  text-align: right;
  width: 50%;
}

/* MENUS */

.page-submenu-container {
  text-align: center;
  margin-top: 1.5rem;
}

#blog-menu {
  margin: 0rem 0 1.5rem;
}

.about-submenu-container {
  float: right;

  margin: 0 -4rem 2rem 2rem;
  background: var(--grey-muted);
  padding: 1rem 1rem 1rem 2rem;
}

ul.about-submenu {
  margin: 0;
  padding: 0;
  text-align: left;
}

ul.about-submenu li {
  margin: 0;
  padding: 0;
}
ul.about-submenu li a {
  display: inline-block;
  text-decoration: none;
}

ul.about-submenu li a:hover,
ul.about-submenu li a:active {
  text-decoration: underline;
}

.page-content h1,
.page-content h2,
.page-content h3,
.page-content h4,
.page-content h5 {
  display: inline-block;
}

.page-submenu {
  display: inline-block;
}

.page-submenu,
.page-submenu li {
  list-style: none;
  list-style-type: none;
  padding: 0;
  margin: 0;
  text-align: center;
}

.page-submenu li {
  margin: 0 0.75rem 0 0;
  float: left;
}

@media (max-width: 680px) {
  .page-submenu li {
    float: none;
    display: inline-block;
    margin-bottom: 0.75rem;
  }

  .page-submenu li:nth-child(3) {
    border-right: 0;
  }
  .page-submenu li a {
    margin-bottom: 0;
  }
  .page-submenu-container {
    margin: 1.5rem auto 0;
  }
}

.page-submenu li a {
  text-decoration: none;
  padding: 0.1rem 0.1rem 0.5rem;
  line-height: 1;
}

.page-submenu li a:visited {
  color: var(--dark-blue);
}

.page-submenu li {
  padding-right: 0.75rem;
  border-right: 0.1rem solid var(--dark-blue);
}

.page-submenu li:last-child {
  border-right: none;
  padding-right: 0;
  margin-right: 0;
}

.page-submenu li:first-child a {
  border-bottom: 0.1rem solid var(--purple);
}

.page-submenu li:first-child a:hover {
  color: var(--purple-muted);
  border-bottom-color: var(--purple-muted);
}

.page-submenu li:nth-child(5) a {
  border-bottom: 0.1rem solid var(--purple);
}

.page-submenu li:nth-child(5) a:hover {
  color: var(--purple-muted);
  border-bottom-color: var(--purple-muted);
}

.page-submenu li:nth-child(2) a {
  border-bottom: 0.1rem solid var(--pink);
}

.page-submenu li:nth-child(2) a:hover {
  color: var(--pink-muted);
  border-bottom-color: var(--pink-muted);
}

.page-submenu li:nth-child(3) a {
  border-bottom: 0.1rem solid var(--green);
}
.page-submenu li:nth-child(3) a:hover {
  color: var(--green-muted);
}
.page-submenu li:nth-child(4) a {
  border-bottom: 0.1rem solid var(--dark-blue);
}
.page-submenu li:nth-child(4) a:hover {
  color: var(--dark-blue);
  border-bottom-color: var(--dark-blue-muted);
}

.page-submenu li.current-menu-item a,
.page-submenu li.current_page_parent a {
  border-bottom-width: 0.2rem;
}

.page-submenu li:first-child.current-menu-item a,
.page-submenu li:first-child.current_page_parent a,
.page-submenu li:nth-child(5).current-menu-item a,
.page-submenu li:nth-child(5).current_page_parent a {
  color: var(--purple-muted);
}

.page-submenu li:nth-child(2).current-menu-item a,
.page-submenu li:nth-child(2).current_page_parent a {
  color: var(--pink-muted);
}

.page-submenu li:nth-child(3).current-menu-item a,
.page-submenu li:nth-child(3).current_page_parent a {
  color: var(--green-muted);
}
/* Posts / Pages */

.page-banner.pink {
  background: var(--pink);
}

.page-banner.purple {
  background: var(--purple);
}

.page-banner {
  width: 100%;
  padding: 4rem 0 3.35rem;
}

.page-banner strong {
  font-variation-settings: "wdth" 84.67;
  transition: all 0.15s ease-out;
}

.page-banner strong span:nth-child(1) {
  font-variation-settings: "wdth" 75;
}
.page-banner strong span:nth-child(2) {
  font-variation-settings: "wdth" 80;
}
.page-banner strong span:nth-child(3) {
  font-variation-settings: "wdth" 70;
}
.page-banner strong span:nth-child(4) {
  font-variation-settings: "wdth" 80;
}
.page-banner strong span:nth-child(5) {
  font-variation-settings: "wdth" 90;
}
.page-banner strong span:nth-child(6) {
  font-variation-settings: "wdth" 80;
}
.page-banner strong span:nth-child(7) {
  font-variation-settings: "wdth" 100;
}
.page-banner strong span:nth-child(8) {
  font-variation-settings: "wdth" 100;
}
.page-banner strong span:nth-child(9) {
  font-variation-settings: "wdth" 90;
}
.page-banner strong span:nth-child(10) {
  font-variation-settings: "wdth" 87;
}
.page-banner strong span:nth-child(11) {
  font-variation-settings: "wdth" 76;
}
.page-banner strong span:nth-child(12) {
  font-variation-settings: "wdth" 63;
}
.page-banner strong span:nth-child(13) {
  font-variation-settings: "wdth" 65;
}
.page-banner strong span:nth-child(14) {
  font-variation-settings: "wdth" 60;
}
.page-banner strong span:nth-child(15) {
  font-variation-settings: "wdth" 60;
}
.page-banner strong span:nth-child(16) {
  font-variation-settings: "wdth" 60;
}
.page-banner strong span:nth-child(17) {
  font-variation-settings: "wdth" 60;
}
.page-banner strong span:nth-child(18) {
  font-variation-settings: "wdth" 60;
}
.page-banner strong span:nth-child(19) {
  font-variation-settings: "wdth" 60;
}
.page-banner strong span:nth-child(20) {
  font-variation-settings: "wdth" 60;
}
.page-banner strong span:nth-child(21) {
  font-variation-settings: "wdth" 60;
}

.post-date {
  font-family: var(--founders-mono);
  font-weight: 400;
  color: var(--dark-blue);
  font-size: 1rem;
  text-align: center;
}

.single-post .post-date {
  margin: 2.1rem 0 0.2rem 0;
}

.post-author {
  text-align: center;
  color: var(--dark-blue);
  font-size: var(--px-23);
  font-family: var(--founders-regular);
  font-weight: 400;
}

.page-content {
  width: var(--inner-content-width);
  padding: var(--inner-content-page-padding);
  position: relative;
}

.post-content,
.page-content {
  margin: 0 auto;
  background: white;
}

.post-content {
  padding: var(--inner-content-post-padding);
  border-top: 0.25rem solid var(--purple);
  margin-bottom: 3rem;
}

.single-events .post-content {
  border-top: 0.25rem solid var(--pink);
}

.page-content p,
.page-content li {
  font-size: 1rem;
  font-family: var(--founders-long-text);
  color: var(--dark-blue);
  margin-bottom: 1rem;
}

.post-content p:first-child strong {
  font-weight: 400;
  font-family: var(--founders-regular);
  font-weight: 400;
  font-size: var(--px-27);
  line-height: var(--px-27-lh);
}

.page-content ul {
  margin-left: 0;
}

.page-content img {
/*   width: 120%;
  margin-left: -10%;
  max-width: 120%; */
}

/* Responsive grid for blog/event pages */

a.card-link {
  display: block;
  text-decoration: none;
  width: 100%;
  height: 100%;
}

a.card-link:hover,
a.card-link:active {
  background: var(--grey-muted);
}

.site-panel .compass-grid-item {
  margin-bottom: 2rem;
}

.compass-grid-item .post-heading {
  margin: 1rem 0 0;
  line-height: 1.1;
  font-size: var(--px-27);
  color: white;
}

.event .location {
  text-align: center;
  color: var(--dark-blue);
  max-width: 15rem;
  margin: 1rem auto 3rem;
  font-family: var(--founders-regular);
}


/* Campaigns */

.compass-featured-homepage {
  width: 100%;
  position: relative;
}

.compass-featured-homepage .content {
  width: 100%;
  height: 100%;
  content: "";
  left: 0;
  top: 0;
  position: absolute;
  z-index: 0;
  background: url("./img/featured-banner.jpg") no-repeat center center;
}

.compass-featured-homepage .site-panel {
  position: relative;
  z-index: 30;
  padding: 3rem 0 2rem;
}

.compass-featured-homepage:after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 20;
  background: rgba(0,0,0,.45);
}

@media (min-width: 1522px) {
  .compass-featured-homepage:after,
  .compass-featured-homepage:before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 20;
    background: linear-gradient(
      0.25turn,
      rgb(0, 0, 0),
      rgb(0, 0, 0) 10%,
      rgba(0, 0, 0, 0.5) 40%,
      rgba(0, 0, 0, 0) 60%
    );
  }

  .compass-featured-homepage:before {
    background: linear-gradient(
      0.75turn,
      rgb(0, 0, 0),
      rgb(0, 0, 0) 10%,
      rgba(0, 0, 0, 0.5) 40%,
      rgba(0, 0, 0, 0) 60%
    );
  }
}

@media (max-width: 600px) {
  .compass-featured-homepage .site-panel {
    padding: 2rem 0 2rem;
  }
}

.compass-featured-homepage h1 {
  margin: 0 0 0.5rem;
  color: white;
  font-size: var(--px-65);
  color: white;
  text-transform: uppercase;
  font-family: var(--bild-variable);
  max-width: 60%;
  line-height: var(--line-height-tight);
}

.compass-featured-homepage p {
  color: white;
  font-size: var(--px-30);
  font-family: var(--founders-condensed);
  margin: 0 0 1rem;
  line-height: var(--line-height-tight);
}

@media (max-width: 900px) {
  .compass-featured-homepage h1 {
    max-width: 80%;
  }
}

@media (max-width: 600px) {
  .compass-featured-homepage h1 {
    max-width: 100%;
  }
}

.constrained-content {
  width: var(--inner-content-width);
  margin: 0 auto;
}

.campaign-grid-item {
  text-align: center;
  background: white;
  border-bottom: 0.2rem solid var(--green);
  width: 100%;
  padding: 0rem;
  margin-bottom: 2rem;
  float: left;
  clear: left;
}

.campaign-grid-item a h1 {
  color: var(--dark-blue);
  margin: 0;
  font-family: var(--bild-variable);
  font-size: var(--px-60);
  text-transform: uppercase;
  padding: 2rem 2rem 0;
  margin-bottom: 1rem;
  line-height: 0.89;
  z-index: 100;
}

.campaign-grid-item a.card-link:hover {
  background: transparent;
}

.campaign-grid-item img {
  display: block;
  width: 100%;
}

.campaign-grid-item .left-column {
  max-width: 50%;
  width: 50%;
  margin: 0;
  padding: 0;
}

.campaign-grid-item .right-column {
  margin-right: 0;
  width: 50%;
  margin: 0;
  padding: 0;
}

@media (max-width: 600px) {
  .campaign-grid-item .right-column,
  .campaign-grid-item .left-column {
    width: 100%;
    max-width: 100%;
  }
  .campaign-grid-item img {
    margin-top: 2rem;
  }
}

.campaign-grid-item p {
  margin: 0 0 1.5rem;
  font-family: var(--founders-condensed);
  font-size: var(--px-27);
  line-height: var(--px-27-lh);
  padding: 0 2rem;
  line-height: 1;
  color: var(--dark-blue);
}

/* Homepage cards */

body.home .compass-grid-item .post-date {
  color: var(--dark-blue);
}

body.home .compass-grid-item .post-heading {
  color: var(--dark-blue);
  text-decoration: none;
}

body.home .compass-grid-item a.card-link:hover .post-heading,
body.home .compass-grid-item a.card-link:active .post-heading {
  color: var(--purple-muted);
}

body.home .compass-grid-item:nth-child(3) a.card-link:hover .post-heading,
body.home .compass-grid-item:nth-child(3) a.card-link:active .post-heading {
  color: var(--pink-muted);
}

body.home .compass-grid-item .entry-header {
  background: white;
}
body.home .compass-grid-item a.card-link:hover .entry-header,
body.home .compass-grid-item a.card-link:active .entry-header {
  background: var(--grey-muted);
}

.compass-grid-item .post-date {
  color: var(--dark-blue);
  text-align: left;
  font-family: var(--founders-regular);
  font-weight: 400;
  margin-bottom: 0;
  font-size: var(--px-16);
  line-height: 1;
}

.compass-grid-item .post-heading {
  color: var(--dark-blue);
  text-decoration: none;
}

/* Thinkpiece page top track hover states */

.compass-grid-item a.card-link:hover .post-heading {
  color: var(--purple-muted);
}

.compass-grid-item:nth-child(1) a.card-link:hover .post-heading,
.compass-grid-item:nth-child(1) a.card-link:active .post-heading,
.compass-grid-item:nth-child(2) a.card-link:hover .post-heading,
.compass-grid-item:nth-child(2) a.card-link:active .post-heading,
.compass-grid-item:nth-child(3) a.card-link:hover .post-heading,
.compass-grid-item:nth-child(3) a.card-link:active .post-heading {
  color: white;
}

.compass-grid-item:nth-child(1) a.card-link:hover .entry-header,
.compass-grid-item:nth-child(1) a.card-link:active .entry-header,
.compass-grid-item:nth-child(2) a.card-link:hover .entry-header,
.compass-grid-item:nth-child(2) a.card-link:active .entry-header,
.compass-grid-item:nth-child(3) a.card-link:hover .entry-header,
.compass-grid-item:nth-child(3) a.card-link:active .entry-header {
  background: var(--purple-muted);
}

/* Events page top track hover states */

.post-type-archive-events .compass-grid-item a.card-link:hover .post-heading {
  color: var(--pink-muted);
}

.post-type-archive-events
  .compass-grid-item:nth-child(1)
  a.card-link:hover
  .post-heading,
.post-type-archive-events
  .compass-grid-item:nth-child(1)
  a.card-link:active
  .post-heading,
.post-type-archive-events
  .compass-grid-item:nth-child(2)
  a.card-link:hover
  .post-heading,
.post-type-archive-events
  .compass-grid-item:nth-child(2)
  a.card-link:active
  .post-heading,
.post-type-archive-events
  .compass-grid-item:nth-child(3)
  a.card-link:hover
  .post-heading,
.post-type-archive-events
  .compass-grid-item:nth-child(3)
  a.card-link:active
  .post-heading {
  color: white;
}

.compass-grid-item:nth-child(1) .post-date,
.compass-grid-item:nth-child(2) .post-date,
.compass-grid-item:nth-child(3) .post-date,
.post-type-archive-events .compass-grid-item:nth-child(1) .post-date,
.post-type-archive-events .compass-grid-item:nth-child(2) .post-date,
.post-type-archive-events .compass-grid-item:nth-child(3) .post-date {
  color: white;
}

.compass-grid-item:nth-child(1) .post-heading,
.compass-grid-item:nth-child(2) .post-heading,
.compass-grid-item:nth-child(3) .post-heading,
.post-type-archive-events .compass-grid-item:nth-child(1) .post-heading,
.post-type-archive-events .compass-grid-item:nth-child(2) .post-heading,
.post-type-archive-events .compass-grid-item:nth-child(3) .post-heading {
  color: white;
}

.compass-grid-item:nth-child(1) .entry-header,
.compass-grid-item:nth-child(2) .entry-header,
.compass-grid-item:nth-child(3) .entry-header {
  background: var(--purple);
}

.post-type-archive-events .compass-grid-item:nth-child(1) .entry-header,
.post-type-archive-events .compass-grid-item:nth-child(2) .entry-header,
.post-type-archive-events .compass-grid-item:nth-child(3) .entry-header {
  background: var(--pink);
}

.post-type-archive-events
  .compass-grid-item:nth-child(1)
  a.card-link:hover
  .entry-header,
.post-type-archive-events
  .compass-grid-item:nth-child(2)
  a.card-link:hover
  .entry-header,
.post-type-archive-events
  .compass-grid-item:nth-child(3)
  a.card-link:hover
  .entry-header,
.post-type-archive-events
  .compass-grid-item:nth-child(1)
  a.card-link:active
  .entry-header,
.post-type-archive-events
  .compass-grid-item:nth-child(2)
  a.card-link:active
  .entry-header,
.post-type-archive-events
  .compass-grid-item:nth-child(3)
  a.card-link:active
  .entry-header {
  background: var(--pink-muted);
}

.post-heading {
  font-family: var(--founders-condensed);
  font-weight: 400;
}

.compass-grid-item .card-bar {
  text-align: left;
  font-size: var(--px-20);
  border: 1px solid var(--dark-blue);
  border-left: none;
  border-right: none;
  padding: 0.2rem 0 0.35rem 0;
  line-height: 1;
  margin: 1rem;
  color: var(--dark-blue);
}

.compass-grid-item .entry-content p {
  font-size: var(--px-20);
  margin: 0;
  font-family: var(--founders-regular);
  font-weight: 400;
  color: var(--dark-blue);
}

.compass-grid-item .entry-content {
  color: var(--dark-blue);
  padding: 0rem var(--tile-padding) var(--tile-padding);
}

.site-panel .compass-grid-item {
  background: white;
}

.page .entry-header {
  background: var(--pink);
  padding: 5rem 0;
}

.green.page .entry-header {
  background: var(--green);
}

.purple.page .entry-header {
  background: var(--purple);
}

.page .entry-header div {
  width: var(--inner-content-width);
  margin: 0 auto;
}

.page .entry-header .entry-title {
  color: white;
  text-transform: uppercase;
}

.green.page .entry-header .entry-title {
  color: var(--dark-blue);
}

.compass-tile .entry-header {
  padding: 1rem var(--tile-padding);
  background: white;
  position: relative;
}

.compass-tile a.card-link:active .entry-header,
.compass-tile a.card-link:hover .entry-header {
  background: var(--grey-muted);
}

.entry-header span.tag {
  position: absolute;
  top: 1.8rem;
  right: 1rem;
  line-height: 1;
  font-size: var(--px-14);
  font-family: var(--founders-mono);
  font-weight: 400;
}

.entry-header span.pink {
  color: var(--pink-muted);
}

.entry-header span.purple {
  color: var(--purple);
}

.entry-header span.green {
  color: var(--purple);
}

@media (max-width: 900px) {
  .compass-grid-item:nth-child(3) .post-date {
    color: var(--dark-blue);
  }

  body .compass-grid-item:nth-child(3) .post-heading,
  body.post-type-archive-events .compass-grid-item:nth-child(3) .post-heading {
    color: var(--dark-blue);
  }
  body.post-type-archive-events
    .compass-grid-item:nth-child(3)
    a.card-link:hover
    .post-heading,
  body.post-type-archive-events
    .compass-grid-item:nth-child(3)
    a.card-link:active
    .post-heading {
    color: var(--pink-muted);
  }
  .compass-grid-item:nth-child(3) a.card-link:hover .post-heading,
  .compass-grid-item:nth-child(3) a.card-link:hover .post-heading {
    color: var(--purple-muted);
  }

  body .compass-grid-item:nth-child(3) .entry-header,
  body.post-type-archive-events .compass-grid-item:nth-child(3) .entry-header,
  body.post-type-archive-events
    .compass-grid-item:nth-child(3)
    a.card-link:hover
    .entry-header,
  body.post-type-archive-events
    .compass-grid-item:nth-child(3)
    a.card-link:active
    .entry-header,
  .compass-grid-item:nth-child(3) a.card-link:hover .entry-header,
  .compass-grid-item:nth-child(3) a.card-link:active .entry-header {
    background: var(--grey-muted);
  }
}

@media (max-width: 600px) {
  .compass-grid-item:nth-child(2) .post-date {
    color: var(--dark-blue);
  }

  body .compass-grid-item:nth-child(2) .post-heading,
  body.post-type-archive-events .compass-grid-item:nth-child(2) .post-heading {
    color: var(--dark-blue);
  }

  body.post-type-archive-events
    .compass-grid-item:nth-child(2)
    a.card-link:active
    .post-heading,
  body.post-type-archive-events
    .compass-grid-item:nth-child(2)
    a.card-link:hover
    .post-heading {
    color: var(--pink-muted);
  }

  .compass-grid-item:nth-child(2) a.card-link:active .post-heading,
  .compass-grid-item:nth-child(2) a.card-link:hover .post-heading {
    color: var(--purple-muted);
  }

  body .compass-grid-item:nth-child(2) .entry-header,
  body.post-type-archive-events .compass-grid-item:nth-child(2) .entry-header,
  body.post-type-archive-events
    .compass-grid-item:nth-child(2)
    a.card-link:active
    .entry-header,
  body.post-type-archive-events
    .compass-grid-item:nth-child(2)
    a.card-link:hover
    .entry-header,
  .compass-grid-item:nth-child(2) a.card-link:active .entry-header,
  .compass-grid-item:nth-child(2) a.card-link:hover .entry-header {
    background: var(--grey-muted);
  }
}

.site-panel .grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-column-gap: var(--grid-gutter);
}

/* Responsive grid for library */

.home-grid-container {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-column-gap: var(--grid-gutter);
}

.publications-container {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-column-gap: var(--grid-gutter);
}

@media (max-width: 900px) {
  .site-panel .grid,
  .publications-container,
  .home-grid-container {
    grid-template-columns: 1fr 1fr;
  }
  .home-grid-container .compass-grid-item:nth-child(3),
  .home-grid-container .publication-listing:nth-child(3) {
    display: none;
  }
}

@media (max-width: 600px) {
  .site-panel .grid,
  .publications-container,
  .home-grid-container {
    grid-template-columns: 1fr;
  }
}

.library-listing-img {
  padding: 2rem 1.5rem;
  background: var(--grey);
}

.library-listing-img img {
  width: auto;
  margin: 0 auto;
  display: block;
  max-height: 17rem;
}

.sorting {
  font-family: var(--founders-mono);
  font-weight: 400;
  font-size: var(--px-16);
  color: var(--dark-blue);
}

.sorting a,
.sorting a:visited {
  text-decoration: none;
  padding-bottom: 0.1rem;
  color: var(--dark-blue);
  border-bottom: 0.1rem solid var(--pink);
}

.sorting a:hover {
  color: var(--pink);
  border-bottom: 0.1rem solid var(--pink);
}

.sorting a:active {
  color: var(--dark-blue);
  border-bottom: 0.2rem solid var(--pink);
}

.green .sorting {
  color: var(--dark-blue);
}

.green .sorting a,
.green .sorting a:visited {
  border-bottom: 0.1rem solid var(--green);
}

.green .sorting a:hover {
  color: var(--dark-blue);
  border-bottom: 0.1rem solid var(--green-muted);
}

.green .sorting a:active {
  color: var(--green-muted);
  border-bottom: 0.2rem solid var(--green-muted);
}

@media (max-width: 600px) {
  .right-column {
    float: none;
    max-width: 100%;
    padding-left: 0rem;
  }

  .left-column {
    float: none;
    max-width: 100%;
  }

  .clear-left {
    clear: left;
  }
}

nav.publications-back {
  text-align: left;
  margin: 3.7rem 0 1.5rem;
}

nav.publications-back a,
nav.publications-back a:visited {
  text-transform: uppercase;
  font-size: var(--px-26);
  font-family: var(--founders-condensed);
  font-weight: 400;
  color: var(--dark-blue);
  text-decoration: none;
  border-bottom: solid 1px var(--purple);
}

nav.publications-back a:active,
nav.publications-back a:hover {
  color: var(--purple);
  border-bottom: solid 1px var(--purple-muted);
}
