@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;700&display=swap');
html {
  height: 100%;
}
body {
  display: flex;
  flex-flow: column nowrap;
  font-family: 'Montserrat';
  font-size: 1.7rem;
  height: 100%;
  line-height: 1.2;
  min-width: 350px;
}

h1,
.banner h2 {
  font-size: 4.8rem;
  font-weight: bold;
  line-height: 1.01;
}
h2 {
  font-size: 3.6rem;
  font-weight: bold;
}
h3 {
  font-size: 2.8rem;
  font-weight: bold;
}
h4 {
  font-size: 2.3rem;
  font-weight: bold;
  line-height: 2.8rem;
}
h6 {
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1.7rem;
}
.with-subheading {
  margin-bottom: 0.5rem;
}
p {
  font-size: 1.7rem;
  line-height: 1.2;
  margin-bottom: 2.0rem;
}
a {
  /*color: #E5007E;*/
  color: #79BF59;
  text-decoration: none;
}
a:hover {
  /*color: #E5007E;*/
  color: #79BF59;
  cursor: pointer;
  text-decoration: underline;
}
.marketplace a,
.marketplace a:hover {
  color: #5090F6;
}
a.help {
  background: url(../images/help.svg) no-repeat left center;
  display: inline-block;
  height: 2.4rem;
  line-height: 2.4rem;
  padding-left: 3rem;
}
table {
  border-collapse: separate;
  font-size: 1.1rem;
  width: 100%;
}
th {
  padding: 1.2rem 0.8rem;
  vertical-align: middle;
}
thead th {
  border: none;
}
thead tr:last-child th {
  border-bottom: 0.1rem solid #C4C4C4;
  padding: 0.5rem 0.8rem;
}
td {
  border: 0.1rem solid white;
  padding: 0.5rem 0.8rem;
  vertical-align: middle;
}
tr:first-child td {
  border-top: none;
}
tbody,
tr,
tr.even,
tr.odd {
  background-color: transparent;
  border: none;
}
tbody tr:nth-child(2n) td {
  background-color: #EDEDED;
}


.banner .content > p > a,
.button,
button,
input[type="submit"],
input[type="reset"],
input[type="button"] {
  background-color: transparent;
  border: 0.2rem solid #79BF59;
  border-radius: 4px;
  box-sizing: border-box;
  color: #79BF59;
  cursor: pointer;
  display: inline-block;
  font-size: 1.8rem;
  font-weight: bold;
  height: auto;
  letter-spacing: 0;
  line-height: 4.8rem;
  margin-right: 3.3rem;
  min-width: 15.7rem;
  overflow: hidden;
  padding: 0 2.5rem;
  text-align: center;
  text-decoration: none;
  text-transform: none;
  white-space: nowrap;
}
.marketplace .banner .content > p > a,
.marketplace .button,
.marketplace button,
.marketplace input[type="submit"],
.marketplace input[type="reset"],
.marketplace input[type="button"] {
  border-color: #5090F6;
  color: #5090F6;
}
.alt .banner .content > p > a,
.alt .button,
.alt button,
.alt input[type="submit"],
.alt input[type="reset"],
.alt input[type="button"] {
  border-color: white;
  color: white;
}
.button:hover,
button:hover,
input[type="submit"]:hover,
input[type="reset"]:hover,
input[type="button"]:hover,
.button:focus,
button:focus,
input[type="submit"]:focus,
input[type="reset"]:focus,
input[type="button"]:focus {
  border-color: #79BF59;
  color: #79BF59;
  outline: 0;
  text-decoration: none;
}
.marketplace .button:hover,
.marketplace button:hover,
.marketplace input[type="submit"]:hover,
.marketplace input[type="reset"]:hover,
.marketplace input[type="button"]:hover,
.marketplace .button:focus,
.marketplace button:focus,
.marketplace input[type="submit"]:focus,
.marketplace input[type="reset"]:focus,
.marketplace input[type="button"]:focus {
  border-color: #5090F6;
  color: #5090F6;
}
.alt .button:hover,
.alt button:hover,
.alt input[type="submit"]:hover,
.alt input[type="reset"]:hover,
.alt input[type="button"]:hover,
.alt .button:focus,
.alt button:focus,
.alt input[type="submit"]:focus,
.alt input[type="reset"]:focus,
.alt input[type="button"]:focus {
  border-color: white;
  color: white;
}
.banner .content > p > a,
.banner .content > p > a:hover,
.banner .content > p > a:focus,
.button.button-primary,
.button.button-primary:hover,
.button.button-primary:focus,
.alt .button.button-primary,
button.button-primary,
button.button-primary:hover,
button.button-primary:focus,
input[type="submit"].button-primary,
input[type="submit"].button-primary:hover,
input[type="submit"].button-primary:focus,
input[type="reset"].button-primary,
input[type="reset"].button-primary:hover,
input[type="reset"].button-primary:focus,
input[type="button"].button-primary,
input[type="button"].button-primary:hover,
input[type="button"].button-primary:focus {
  background-color: #79BF59;
  border-color: #79BF59;
  color: white;
}
.banner .button.button-primary,
.banner .button.button-primary:hover,
.banner .button.button-primary:focus,
.banner button.button-primary,
.banner button.button-primary:hover,
.banner button.button-primary:focus,
.banner input[type="submit"].button-primary,
.banner input[type="submit"].button-primary:hover,
.banner input[type="submit"].button-primary:focus,
.banner input[type="reset"].button-primary,
.banner input[type="reset"].button-primary:hover,
.banner input[type="reset"].button-primary:focus,
.banner input[type="button"].button-primary,
.banner input[type="button"].button-primary:hover,
.banner input[type="button"].button-primary:focus {
  background-color: #E5007E;
  border-color: #E5007E;
  color: white;
}

input[type="date"],
input[type="email"],
input[type="number"],
input[type="password"],
input[type="search"],
input[type="tel"],
input[type="text"],
input[type="url"],
textarea,
select {
  background-color: rgba(200,200,200,0.33);
  border: none;
  border-radius: 0;
  color: #434750;
  font-size: 1.3rem;
  height: 4.3rem;
  margin: 0;
  padding: 0.5rem 1rem 0.5rem;
  width: 100%;
}
.alt input[type="date"],
.alt input[type="email"],
.alt input[type="number"],
.alt input[type="password"],
.alt input[type="search"],
.alt input[type="tel"],
.alt input[type="text"],
.alt input[type="url"],
.alt textarea,
.alt select {
  background-color: white;
}
textarea {
  height: 20rem;
  padding: 1.2rem 1rem;
}

/*
 * Bootstrap compatibility
 */
.card {
  color: #434750;
}

/*
 * Drupal template elements
 */
.resizable-textarea {
  width: 100%;
}
#header {
  background-color: white;
  box-sizing: content-box;
  height: 2.6rem;
  min-height: 2.6rem;
  overflow: hidden;
  padding: 2.8rem 2rem;
}
#header-logo {
  background: url(../images/ce-logo.svg) no-repeat white;
  display: inline-block;
  height: 4.6rem;
  margin: -1.3rem 3.2rem -0.7rem 2.9%;
  width: 19.4rem;
}
.container,
body > .main-content-wrapper > .block-views,
body > .main-content-wrapper > .box,
body > .main-content-wrapper > .node,
body > .main-content-wrapper > .view,
body > .main-content-wrapper > .wiki-page,
body > .main-content-wrapper > form {
  color: #434750;
  padding: 7.7rem 11% 10rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  max-width: none;
  width: 100%;
}
body > .main-content-wrapper > .block-views,
body > .main-content-wrapper > .box,
body > .main-content-wrapper > .node,
body > .main-content-wrapper > .view,
body > .main-content-wrapper > .wiki-page,
body > .main-content-wrapper > form {
  width: auto;
}
.container,
body > .main-content-wrapper > .block-views,
body > .main-content-wrapper > .box,
body > .main-content-wrapper > .node,
body > .main-content-wrapper > .view,
body > .main-content-wrapper > form {
  background-color: white;
}
.legal .container,
.container.pane-post-to-forum {
  background: transparent;
}
body > .block-views,
body > .main-content-wrapper,
body > .node,
body > .not-found.banner,
body > .pane-search-result.container,
body > .view,
body > .wiki-page,
body > form {
  background-color: #EDEDED;
  flex-grow: 1;
}
body > .main-content-wrapper > h1 {
  background-color: #EDEDED;
  color: #79BF59;
  font-size: 4.8rem;
  line-height: 1.25;
  margin: 0;
  padding: 7.7rem 11% 0;
}
body > .main-content-wrapper > .box,
body > .main-content-wrapper > .node,
body > .main-content-wrapper > form,
.community-profile .container {
  background-color: #EDEDED;
  margin: 0;
  padding-top: 6rem;
}
body > .main-content-wrapper > .view {
  background-color: #EDEDED;
  padding-top: 7.7rem;
}
#grants .container:not(.alt),
body > .main-content-wrapper > .block-views {
  background-color: #EDEDED;
}
body > .main-content-wrapper > .box > .content,
body > .main-content-wrapper > .node > .content,
body > .main-content-wrapper > .view > .view-content.full-content,
body > .main-content-wrapper > .block-views > .content,
body > .main-content-wrapper > form > div,
.community-profile .container > .profile {
  background-color: white;
  margin: 0;
  padding: 3.2rem 2.7rem;
}
body > .main-content-wrapper > .view > h2:first-child {
  margin-bottom: 6rem;
}
body > .main-content-wrapper > .content-with-tabs + .block {
  padding: 0 11% 4rem;
}
.community-profile .block-views {
  padding-top: 0;
}
.marketplace .container {
  /*background: transparent;*/
  color: #434750;
}
.container.alt {
  /*background: transparent;*/
  background: rgba(75, 170, 35, 0.75);
  color: white;
}
.marketplace .container.alt {
  background: rgba(0, 105, 254, 0.75);
}
.banner {
  background: url(../images/Flame.png) no-repeat left bottom;
}
.banner .container {
  background: rgba(75, 170, 35, 0.75);
  color: white;
}
.banner.container.alt {
  /* use gradient to tint the underlying background image */
  background:
    linear-gradient(
      rgba(255, 255, 255, 0.1),
      rgba(255, 255, 255, 0.1)
    ),
    linear-gradient(
      rgba(75, 170, 35, 0.8),
      rgba(75, 170, 35, 0.8)
    ),
    url(../images/Flame.png) no-repeat left bottom;
  padding-bottom: 15rem;
}
.marketplace .banner.container.alt {
  /* use gradient to tint the underlying background image */
  background:
    linear-gradient(
      rgba(255, 255, 255, 0.1),
      rgba(255, 255, 255, 0.1)
    ),
    linear-gradient(
      rgba(0, 105, 254, 0.75),
      rgba(0, 105, 254, 0.75)
    ),
    url(../images/Flame.png) no-repeat left bottom;
  padding-bottom: 15rem;
}
.not-found.banner.container.alt {
  /* use gradient to tint the underlying background image */
  background:
    linear-gradient(
      rgba(255, 255, 255, 0.1),
      rgba(255, 255, 255, 0.1)
    ),
    linear-gradient(
      rgba(128, 128, 128, 0.8),
      rgba(128, 128, 128, 0.8)
    ),
    url(../images/Flame.png) no-repeat left bottom;
  height: 100%;
  justify-content: center;
}
.banner a {
  color: inherit;
  text-decoration: underline;
}
.banner a:hover {
  color: inherit;
}
.not-found h1 {
  padding: 0!important;
  margin: 0 0 4.3rem 0!important;
}
.not-found a {
  color: #F4F4F4;
}
.banner.container h2 {
  letter-spacing: 0;
}
.marketplace .banner .container {
  background: rgba(0, 105, 254, 0.75);
}
.banner h1 {
  font-size: 3rem;
  margin-bottom: 4.3rem;
}
.banner p {
  font-size: 2rem;
  margin-bottom: 2.0rem;
}
.banner .button {
  margin: 3rem 3rem 0 0;
  text-decoration: none;
}
.banner .learn-more {
  background: url(../images/caret-down.svg) no-repeat center bottom;
  bottom: 0;
  color: white;
  font-size: 1.8rem;
  font-weight: bold;
  left: 50%;
  letter-spacing: -0.017rem;
  line-height: 2.2rem;
  margin: 0 0 6rem -10rem;
  padding-bottom: 2.6rem;
  position: absolute;
  text-align: center;
  text-decoration: none;
  width: 20rem;
}
.banner.container .view .learn-more {
  margin-bottom: -7rem;
}
.banner .learn-more:hover {
  color: white;
  text-decoration: none;
}
.banner .learn-more .text {
  display: none;
}
.container h2,
body > .view h2 {
  color: #79BF59;
}
.container.blurb {
  color: #79BF59;
  text-align: center;
}
.marketplace .container h2,
.marketplace .container.blurb {
  color: #5090F6;
}
.alt.container h2 {
  color: white;
}
.container.blurb h2 {
  font-size: 3.8rem;
  font-weight: normal;
  margin-bottom: 0;
}
.container.blurb .detail {
  font-size: 3.8rem;
  font-weight: bold;
}
.container .form-item {
  color: #000;
  display: inline-block;
  width: 48%;
}
.container .form-item#edit-body-wrapper {
  width: 100%;
}
.container .form-submit {
  margin-right: 0;
}

.content-with-tabs {
  display: flex;
  flex-direction: column;
  padding: 5rem 11% 4rem;
}
.content-with-tabs > *:not(.tabs) {
  background-color: white;
  flex-grow: 1;
  margin: 0;
  padding: 2.4rem 3rem;
}
ul.tabs.primary {
  background-color: white;
  border: none;
  margin: 0 0 2rem 0;
  padding: 0;
}
ul.tabs.primary li {
  display: block;
  font-size: 2.3rem;
  font-weight: bold;
  line-height: 4.4rem;
  margin: 0;
}
ul.tabs.primary li a {
  background-color: transparent;
  border: none;
  color: #C4C4C4;
  display: block;
  margin: 0;
  padding: 0 2.6rem;
}
ul.tabs.primary li a:hover {
  color: #4D4D4D;
}
ul.tabs.primary li:first-child a {
  padding-top: 1rem;
}
ul.tabs.primary li:last-child a {
  padding-bottom: 1rem;
}
ul.tabs.primary li.active a {
  background-color: transparent;
  border: none;
  color: #4D4D4D;
}

.icons li {
  background-repeat: no-repeat;
}
.icons li {
  background-position: top center;
  font-size: 1.6rem;
}
.icons li .qty {
  display: block;
  font-size: 3.8rem;
  font-weight: bold;
  line-height: 1.2;
  white-space: nowrap;
}
.form-item {
  margin: 0 0 1.5rem 0;
}
.form-item input.error {
  border: none;
}
.form-item input.error + .field-suffix:before {
  color: #E5007E;
  content: "*";
  left: 5rem;
  position: absolute;
}
div.messages {
  background: none;
  border: none;
  font-size: 1.6rem;
  font-style: italic;
  line-height: 1.4;
  margin: 7rem 11% 0;
}
body > .notifications {
  background-color: #EDEDED;
  padding: 3.2rem 11%;
}
body > .notifications > div.messages {
  margin: 0;
}
.overlay div.messages {
  margin: 0 0 4rem 0;
}
.messages.error {
  color: #434750;
}
.messages ul {
  margin: 0;
}
.messages ul li {
  line-height: 1.2;
  list-style: none;
}
.notifications .messages::before,
.messages ul li::before {
  color: #E5007E;
  content: '* ';
  line-height: 1.6;
  margin-left: -2rem;
  position: absolute;
}
.note {
  color: #4D4D4D;
  font-size: 1.3rem;
}
.footer {
  background-color: #434750;
  color: #999999;
  font-size: 1.2rem;
  padding: 2.5rem 3.5rem 3.0rem;
  text-align: center;
}
.block > .content > .footer {
  overflow: auto;
}
.footer .columns {
  display: none;
}
.footer .copyright {
  font-size: 1.0rem;
  display: contents;
}
.footer .footer-links a:hover {
  text-decoration: underline;
}
ul.icons li {
  display: inline-block;
  margin-bottom: 0;
}
ul.icons li a {
  display: block;
  height: 100%;
  width: 100%;
}
.item-list .pager {
  margin: 8rem 0;
}
.item-list .pager li {
  border: 0.2rem solid #79BF59;
  border-radius: 0.5rem;
  color: #79BF59;
  display: inline-block;
  font-size: 1.8rem;
  font-weight: bold;
  margin: 0 0 0 0.9rem;
  padding: 0;
}
.item-list .pager li.pager-current {
  background-color: #79BF59;
  color: white;
  line-height: 3.4rem;
  margin-left: 0.9rem;
  min-width: 1.4rem;
  padding: 0 1rem;
}
.item-list .pager li.pager-ellipsis {
  border: none;
}
.marketplace .item-list .pager li {
  border-color: #5090F6;
}
.marketplace .item-list .pager li.pager-current {
  background-color: #5090F6;
  color: white;
}
.item-list .pager li a {
  color: #79BF59;
  display: inline-block;
  line-height: 3.4rem;
  min-width: 1.4rem;
  padding: 0 1rem;
  text-decoration: none;
}
.marketplace .item-list .pager li a {
  color: #5090F6;
}

.toc {
  margin: -1rem -3rem 7rem;
  padding: 3rem;
}
.toc-title {
  text-align: left;
}
.toc-toggle-message {
  font-size: 1.3rem;
  margin-left: 0.5rem;
  vertical-align: text-top;
}
.toc-list {
  margin-left: 3rem;
}
.toc-list ul {
  margin: 0;
}
.toc-list ul li {
  line-height: 1.2;
  margin-bottom: 0;
  margin-top: 0.5rem;
}

tr.collapsible {
  display: table-row;
}
tr.collapsible.collapsed,
.show-more-rows {
  display: none;
}

.view {
  position: relative;
}
.views-row .control-links {
  bottom: 1rem;
  margin-left: -1rem;
  position: absolute;
  right: 2rem;
}
.views-row .control-links > div {
  display: inline-block;
  margin-left: 1rem;
}
.view-footer {
  display: flex;
  justify-content: space-between;
}
.view-footer a:not(.button) {
  color: #434750;
}
.view-footer .clearfix {
  display: none;
}

.panel-pane .admin-links {
  position: absolute;
  right: 0;
  top: 2rem;
}
.panel-pane .admin-links .links li {
  background: rgba(255,255,255,0.9);
}
.panel-pane .admin-links .links li a {
  color: #999;
}
.pane-content .clear-block .links {
  display: none;
}
.pane-content {
  z-index: 1;
}

/*
 * Overlay for login, register, etc
 */
.overlay {
  background-color: rgba(0, 0, 0, 0.5);
  bottom: 0;
  display: flex;
  justify-content: center;
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 999;
}
.overlay > .overlay-wrapper {
  align-self: center;
  /*background-color: rgba(0, 0, 0, 0.25);
  border-radius: 0.4rem;
  padding: 0.6rem;*/
  background-color: white;
  border-radius: 0.4rem;
  height: 5rem;
  margin-top: -10rem;
  overflow: hidden;
  padding: 6rem 7rem;
  position: relative;
  transition: width 400ms ease-in-out, height 400ms ease-in-out;
  width: 33rem;
}
.overlay > .overlay-wrapper > .overlay-content {
}
.overlay > .overlay-wrapper > .overlay-content #overlay-target {
  width: 33rem;
}
.overlay a.close {
  background-color: #DADADA;
  border-radius: 50%;
  color: white;
  display: block;
  font-family: 'Varela Round', sans-serif;
  font-size: 1.7rem;
  line-height: 3.4rem;
  height: 3.4rem;
  position: absolute;
  text-align: center;
  top: 1.25rem;
  /*transition: all 400ms ease;*/
  right: 1.25rem;
  width: 3.4rem;
}
.overlay a.close:hover {
  background-color: black;
  cursor: pointer;
  text-decoration: none;
}
/*
 * Draw an X rather than using a letter for the close button
 */
.overlay-close-x {
  display: block;
  margin-top: -2px;
  transform: translate3d(0, 10px, 0) rotate(-45deg);
  left: 0.85rem;
  top: 0.85rem;
}
.overlay-close-x,
.overlay-close-x::before,
.overlay-close-x::after {
  width: 1.7rem;
  height: 0.1rem;
  background-color: white;
  position: absolute;
}
.overlay-close-x::before,
.overlay-close-x::after {
  content: "";
  display: block;
}
.overlay-close-x::before {
}
.overlay-close-x::after {
  top: 20px;
  transform: translate3d(0, -20px, 0) rotate(90deg);
}

.overlay h2 {
  font-size: 2.8rem;
}
.overlay p {
  font-size: 1.6rem;
}
.overlay form {
  margin: 0;
}
.overlay .form-item label,
.overlay .form-item .description {
  display: none;
  font-size: 1.3rem;
  font-weight: normal;
}
.overlay .options {
  background-color: #EDEDED;
  margin-top: 2rem;
  padding: 1.3rem;
}
.overlay .options label {
  display: inline;
}
.overlay .options .form-checkboxes,
.overlay .options .form-radios,
.overlay .options .form-checkboxes .form-item,
.overlay .options .form-radios .form-item,
.overlay .options input[type="checkbox"] {
  display: inline-block;
  line-height: 1;
  margin: -0.7rem 0 0 0;
}
.overlay .options > .form-item {
  align-items: center;
  display: flex;
  justify-content: space-between;
}
.overlay .options > .form-item:last-child {
  margin-bottom: 0;
}
.overlay .options > .form-item label {
  width: 60%;
}
.overlay .options > .form-item div {
}
.overlay .login-links {
  font-size: 1.2rem;
  line-height: 1.25;
}
.overlay .login-links li {
  margin: 0;
  list-style: none;
}
.overlay .button {
  margin-right: 1rem;
  margin-top: 1rem;
}
.overlay .button:last-child {
  margin-right: 0;
}
/**
 * Fancy radio buttons
 */
.form-radios .form-item input[type=radio] {
  display: none;
  margin: 10px;
}
.form-radios .form-item {
  padding: 0 2px 0 8px;
  border-left: 1px solid #C4C4C4;
  cursor: pointer;
  display: inline-block;
  margin: 2px 0;
  width: auto;
}
.form-radios .form-item:first-child {
  border-left: 0;
  padding-left: 0;
}
.form-radios .form-item input[type=radio] + span {
  color: #434750;
  cursor: pointer;
  letter-spacing: 0.1rem;
  line-height: 2rem;
  text-transform: uppercase;
}
.form-radios .form-item input[type=radio]:checked + span {
  font-weight: bold;
}

#stats {
  padding: 7.7rem 0;
}
#stats .icons {
  align-items: center;
  display: flex;
  flex-direction: column;
  margin: 0 auto;
  max-width: 50rem;
}

/*
 * Login / Register
 */
.overlay > div[id^='overlay-register-'],
.overlay > div[id^='overlay-add-computer'] {
  padding-top: 8rem;
}
.overlay > div[id^='overlay-register-'] > .overlay-content > #overlay-target,
.overlay > div[id^='overlay-add-computer'] > .overlay-content > #overlay-target {
  width: 45rem;
}
.overlay > div[id^='overlay-register-'] form > div,
.overlay > div[id^='overlay-add-computer'] form > div {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.overlay > div[id^='overlay-register-'] h2 {
  display: inline-block;
}
.overlay > div[id^='overlay-register-'] h2 + h2 {
  color: #C4C4C4;
  float: right;
}
.overlay > div[id^='overlay-register-download'],
.overlay > div[id^='overlay-add-computer'] {
  padding-bottom: 20rem;
}
.overlay > div[id^='overlay-register-download'] h2 {
  color: #C4C4C4;
}
.overlay > div[id^='overlay-register-download'] h2 + h2 {
  color: inherit;
  float: right;
}
.overlay > div[id^='overlay-register-download'],
.overlay > div[id^='overlay-add-computer'] a.help {
  margin-top: 1rem;
}
.overlay > div[id^='overlay-register-'] .instructions,
.overlay > div[id^='overlay-add-computer'] .instructions {
  color: #4D4D4D;
  font-size: 1.3rem;
  margin-bottom: 1.5rem;
}
div[id^='overlay-register-download'] .instructions,
div[id^='overlay-add-computer'] .instructions {
  background: url(../images/download.svg) no-repeat top center / 20%;
  margin: 2rem 0 3rem;
  padding-top: 11.5rem;
}
div[id^='overlay-register-download'] #edit-os-wrapper,
div[id^='overlay-add-computer'] #edit-os-wrapper {
  margin: 0;
  width: 25rem;
}
div[id^='overlay-register-download'] #edit-os,
div[id^='overlay-add-computer'] #edit-os {
  background: transparent;
  border: 0.2rem solid #C4C4C4;
  font-size: 1.6rem;
  font-weight: normal;
  height: 5.2rem;
  padding: 0 1.5rem;
}
div[id^='overlay-register-download'] #edit-submit,
div[id^='overlay-add-computer'] #edit-submit {
  display: block;
  margin: 0;
  width: 18rem;
}
.overlay > div[id^='overlay-register-'] #edit-email-wrapper,
.overlay > div[id^='overlay-register-'] #edit-email-confirm-wrapper,
.overlay > div[id^='overlay-register-'] #edit-password-wrapper,
.overlay > div[id^='overlay-register-'] #edit-password-confirm-wrapper {
  width: 48%;
}
.overlay > div[id^='overlay-register-'] #edit-email-confirm-wrapper,
.overlay > div[id^='overlay-register-'] #edit-password-confirm-wrapper {
  float: right;
}
.overlay > div[id^='overlay-register-'] .note {
  margin-top: -0.8rem;
}
/*.overlay > div[id^='overlay-register-'] #edit-submit {
  display: block;
  margin: 5rem auto 0;
}*/
.register-confirm .overlay .overlay-content > #overlay-target {
  width: 40rem;
}
.register-confirm .overlay .overlay-content > #overlay-target p:last-child {
  margin-bottom: 0;
}
.overlay > div[id^='overlay-register-download'] .alt-download-wrapper,
.overlay > div[id^='overlay-add-computer'] .alt-download-wrapper {
  background-color: #F4F4F4;
  bottom: 0;
  left: 0;
  position: absolute;
  width: 100%;
}
.overlay > div[id^='overlay-register-download'] .alt-download,
.overlay > div[id^='overlay-add-computer'] .alt-download {
  display: grid;
  grid-template-columns: 25rem auto;
  margin: 3rem 7rem 6rem;
}
.overlay > div[id^='overlay-register-download'] .alt-download p,
.overlay > div[id^='overlay-register-download'] .alt-download #edit-os-wrapper,
.overlay > div[id^='overlay-add-computer'] .alt-download p,
.overlay > div[id^='overlay-add-computer'] .alt-download #edit-os-wrapper {
  grid-column: 1;
  justify-self: start;
}
.overlay > div[id^='overlay-register-download'] .alt-download  .button,
.overlay > div[id^='overlay-add-computer'] .alt-download .button {
  grid-column: 2;
  justify-self: end;
}


/*
 * Front page
 */
html.front-page, html.front-page body,
html.landing-page, html.landing-page body {
  font-family: 'Montserrat';
  height: 100%;
}
html.front-page body {
  display: flex;
  flex-flow: column;
}
.front-page #header .login.button {
  visibility: hidden;
}
#entryway {
  background: linear-gradient(rgba(255,255,255,0.75),rgba(255,255,255,0.75)),
    url(../images/Flame.png) left bottom / 120% no-repeat;
  display: flex;
  flex-flow: wrap;
  flex-grow: 1;
}
.overlay-page #entryway {
  background:
    linear-gradient(
      rgba(255, 255, 255, 0.75),
      rgba(255, 255, 255, 0.75)
    ),
    url(../images/Flame.png) left center / 80% no-repeat;
}
.overlay-page #header .content,
.overlay-page .overlay .close {
  display: none;
}
.entrypoint {
  color: white;
  padding: 4rem 2rem;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  justify-content: space-around;
  min-width: 33.5rem;
}
.front-page .entrypoint {
  align-items: center;
  text-align: center;
}
.marketplace.entrypoint {
  background: rgba(0, 105, 254, 0.75);
}
.entrypoint h2 {
  font-size: 3.9rem;
  font-weight: bold;
  letter-spacing: -0.017em;
}
.entrypoint p {
  font-size: 1.8rem;
  margin-bottom: 4rem;
  width: 27rem;
}
.entrypoint .icons {
  display: flex;
  flex-flow: wrap;
  justify-content: space-evenly;
  margin-bottom: 4rem;
  max-height: 18rem;
  width: 25rem;
}
.community.entrypoint {
  background: rgba(75, 170, 35, 0.75);
}
.community.entrypoint .icons {
  margin-bottom: 4rem;
  width: 26rem;
}
.entrypoint .icons li {
  margin: 0.2rem 0;
}
.marketplace.entrypoint .icons li {
  background-position: top center;
  font-size: 1.4rem;
  height: 2.1rem;
  padding-top: 4.6rem;
  white-space: nowrap;
  width: 10rem;
}
.community.entrypoint .icons li {
  background-position: center;
  height: 6.7rem;
  width: 13rem;
}
.entrypoint .icons li.computing {
  background-image: url(../images/computing.svg);
}
.entrypoint .icons li.storage {
  background-image: url(../images/storage.svg);
}
.entrypoint .icons li.crawling {
  background-image: url(../images/crawling.svg);
}
.entrypoint .icons li.blockchain {
  background-image: url(../images/blockchain.svg);
}
.entrypoint .icons li.oxfam {
  background-image: url(../images/oxfam.svg);
}
.entrypoint .icons li.unicef {
  background-image: url(../images/unicef.svg);
}
.entrypoint .icons li.care {
  background-image: url(../images/care.svg);
}
.entrypoint .icons li.sightsavers {
  background-image: url(../images/sightsavers.svg);
  background-size: contain;
}
.entrypoint .button {
  min-width: 22.7rem;
  padding: 0 4.5rem;
}


/*
 * marketplace landing page
 */
.marketplace.landing-page .banner.container {
  /* use gradient to tint the underlying background image */
  background:
    url(../images/global30.png) bottom right / 33rem no-repeat,
    linear-gradient(
      rgba(255, 255, 255, 0.1),
      rgba(255, 255, 255, 0.1)
    ),
    linear-gradient(
      rgba(0, 105, 254, 0.75),
      rgba(0, 105, 254, 0.75)
    ),
    url(../images/Flame.png) no-repeat left bottom;
  padding-bottom: 15rem;
}
#stats .icons li {
  background-position: center top;
  font-size: 2.1rem;
  height: 9rem;
  margin-bottom: 3rem;
  padding-top: 10.2rem;
  text-align: center;
  width: 24rem;
}
#stats .icons li.cpu {
  background-image: url(../images/stats-cpu.svg);
}
#stats .icons li.gpu {
  background-image: url(../images/stats-gpu.svg);
}
#stats .icons li.storage {
  background-image: url(../images/stats-storage.svg);
}
#stats .icons li.network {
  background-image: url(../images/stats-network.svg);
}
#stats .footnote {
  display: block;
  font-size: 1.2rem;
  margin: 2rem auto -6rem;
  max-width: 50rem;
  opacity: 0.8;
  padding: 0 2rem;
}
#stats .footnote .last-updated {
  font-style: italic;
}
#solutions {
  padding: 8.2rem 8% 14.9rem;
}
#solutions h2 {
  margin-bottom: 9.5rem;
  text-align: center;
}
#solutions .icons li {
  background-position: top center;
  font-size: 2.4rem;
  height: auto;
  line-height: 3.0rem;
  margin-bottom: 4.8rem;
  padding-top: 116px;
  text-align: center;
  white-space: normal;
  width: 87%;
}
#solutions .icons li h4 {
  font-size: 2.8rem;
  font-weight: bold;
  margin-bottom: 0.5rem;
}
#solutions .icons li.computing {
  background-image: url(../images/solutions-computing.svg);
}
#solutions .icons li.storage {
  background-image: url(../images/solutions-storage.svg);
}
#solutions .icons li.software {
  background-image: url(../images/solutions-software.svg);
}
#solutions .icons li.crawling {
  background-image: url(../images/solutions-crawling.svg);
}
#solutions .icons li.blockchain {
  background-image: url(../images/solutions-blockchain.svg);
}
.container > .buttons,
.container > .pane-content > .buttons {
  display: flex;
  flex-flow: wrap;
  justify-content: center;
  margin-bottom: -2rem;
}
.buttons > .button {
  margin-bottom: 2rem;
}
#solutions .footnote {
  bottom: 3.8rem;
  position: absolute;
}
#interfaces {
  padding: 17.9rem 3% 17.1rem;
}
#interfaces > h2 {
  margin-bottom: 2rem;
}
#testimonials h2 {
  margin-bottom: 7rem;
  text-align: center;
}
#testimonials .main-carousel {
  width: 30rem;
  margin: 0 auto;
}
#testimonials .flickity-viewport {
  background-color: white;
  border-radius: 0.5rem;
  color: black;
  padding: 4rem 0 6.5rem;
  /*box-shadow: 0 0.4rem 0.4rem rgba(0, 0, 0, 0.25);*/
}
#testimonials .carousel-cell {
  padding: 0 4.5rem 0 10.5rem;
  width: 17rem;
}
#testimonials .carousel-cell p {
  font-size: 1.6rem;
  line-height: 2rem;
  margin-top: 2.6rem;
  margin-bottom: 0;
}
#testimonials .carousel-cell p:before {
  content: '\0201C';
  position: absolute;
  left: 3.3rem;
  font-size: 9.8rem;
  color: #5090F6;
  font-weight: bold;
  top: 11.9rem;
}

.flickity-prev-next-button {
  background: transparent;
  border: 0.2rem solid white;
  color: white;
  height: 2.4rem;
  min-width: unset;
  padding: 0;
  width: 2.4rem;
}
button.flickity-prev-next-button:hover {
  background: rgba(255, 255, 255, 0.25);
}
.flickity-prev-next-button.previous {
  left: -3.4rem;
}
.flickity-prev-next-button.next {
  right: -6.7rem;
}
.flickity-page-dots .dot {
  background: white;
}
.flickity-page-dots .dot.is-selected {
  opacity: 0.9;
}

#affiliations.container {
  align-content: center;
  flex-flow: column wrap;
  text-align: center;
}
#affiliations .section:not(:first-child) {
  margin-top: 7rem;
}
#affiliations h2 {
  margin: 5rem 0 5rem;
}
#affiliations .icons {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-evenly;
}
#affiliations .icons li {
  height: 109px;
  width: 218px;
  margin: 0 1rem 5rem;
}
#affiliations .icons li.idgf {
  background: url(../images/partners-idgf.svg) center no-repeat;
}
#affiliations .icons li.iic {
  background: url(../images/partners-iic.svg) center no-repeat;
}
#affiliations .icons li.boinc {
  background: url(../images/partners-boinc.svg) center no-repeat;
}
#affiliations .icons li.ipfs {
  background: url(../images/partners-ipfs.svg) center no-repeat;
}
#affiliations .icons li.wolfram {
  background: url(../images/partners-wolfram.svg) center no-repeat;
}
#affiliations .icons li.gov-uk {
  background: url(../images/partners-gov-uk.png) center no-repeat;
  background-size: contain;
}
#affiliations .icons li.oxfam {
  background: url(../images/charities-oxfam.svg) center no-repeat;
}
#affiliations .icons li.unicef {
  background: url(../images/charities-unicef.svg) center no-repeat;
}
#affiliations .icons li.care {
  background: url(../images/charities-care.svg) center no-repeat;
}
#affiliations .icons li.sightsavers {
  background: url(../images/charities-sightsavers.svg) center no-repeat;
  background-size: contain;
}

#contact-us.container {
  align-content: center;
  flex-flow: column wrap;
}
#contact-us .pane-title,
#contact-us .pane-content .node > h2:first-child{
  display: none;
}
#contact-us .pane-content .content {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -5rem;
}
#contact-us.container .form-item {
  width: 100%;
}
#contact-us #edit-category-wrapper,
#contact-us #edit-subject-wrapper {
  float: left;
}
#contact-us #edit-name-wrapper,
#contact-us #edit-email-wrapper {
}
#actions {
  padding-bottom: 8.1rem;
  padding-top: 8.2rem;
}

/*
 * Volunteer landing page
 */
#our-goal.banner:after {
  background: url(../images/cloud.svg) no-repeat right bottom / 38%;
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
#our-goal.banner p {
  font-size: 2.1rem;
}
#our-goal.banner p:last-child {
  margin-top: 5rem;
}
#how-it-works .node h4 {
  background: url(../images/Diagram.svg) no-repeat top center / 75%;
  font-size: 2.1rem;
  margin-top: 5rem;
  padding-top: 70%;
}
#how-it-works .node h4:nth-of-type(2) {
  background: url(../images/Prize.svg) no-repeat top center / 43%;
  padding-top: 47%;
}
#how-it-works .node h4:nth-of-type(3) {
  background: url(../images/Money.svg) no-repeat top center / 43%;
  padding-top: 43%;
}
#how-it-works > h2,
#about-us > h2 {
  text-align: center;
}
#how-it-works .node > h2:first-child,
#about-us .node > h2:first-child {
  display: none;
}
#how-it-works p {
  font-size: 1.6rem;
}
#about-us .icons {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-evenly;
  margin: 0 auto;
  max-width: 100rem;
}
#about-us .icons li {
  background-position: left top;
  background-repeat: no-repeat;
  margin-top: 5rem;
  padding-left: 0;
  padding-top: 11.6rem;
  width: 60%;
}
#about-us .icons li.team {
  background-image: url(../images/team.svg);
}
#about-us .icons li.partners {
  background-image: url(../images/partners.svg);
}
#about-us .icons li.advisors {
  background-image: url(../images/advisors.svg);
}
#about-us .icons li.company {
  background-image: url(../images/company.svg);
}
#about-us h3 {
  font-size: 2.8rem;
  margin-bottom: 0;
}
#about-us dd {
  margin-left: 0;
}
#about-us dd,
#about-us p {
  font-size: 1.6rem;
  line-height: 1.3;
}

/*
 * Charities page
 */
#charities.banner ul {
  margin: 3.2rem 0 0 0;
}
#charities.banner li {
  list-style: none;
  margin: 0;
}
#charities.banner li > .logo {
  display: block;
  margin: 5rem 0 2.5rem;
}
#charities.banner li > .description {
  margin: 2.5rem 0 5rem;
}
#charities.banner li > .logo img {
  width: 80%;
}
#charities.banner .description p:last-child {
  margin-bottom: 0;
}
#charities.panel-pane .view-footer .admin-links {
  right: 0;
  top: -9rem;
}

#research h2 {
  margin-bottom: 7rem;
  text-align: center;
}
#research > .pane-content > .node > h2 {
  display: none; /* hack to hide empty title */
}
#research .pane-content p,
#research .pane-content span,
#research .pane-content li {
  font-size: 1.8rem;
  line-height: 1.2;
}
#research .pane-content .button {
  margin-top: 2rem;
}
#research .pane-content li {
  list-style: none;
  margin: 2rem 0 0 0;
}
#research .pane-content li .views-field-delete-node,
#research .pane-content li .views-field-edit-node {
  display: none;
}
#research .pane-content li .views-field-title {
  font-weight: bold;
}

/*
 * Grants page
 */
#grants .banner:after {
  background: url(../images/grants.svg) no-repeat right bottom / 38%;
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
#grants .container:not(.alt) {
  padding-bottom: 0;
  padding-top: 1rem;
}
#grants .container:not(.alt):last-child {
  margin-bottom: 11.3rem;
}
#grants .container:not(.alt) .pane-content {
  background-color: white;
  padding: 4rem 3.2rem;
}
#grants #recent-activity h2 {
  margin: 9.2rem 0 7rem;
  text-align: center;
}
#grants #recent-activity h3 {
  display: inline-block;
  font-size: 2.8rem;
  line-height: 3.4rem;
  margin-bottom: 0;
}
#grants #recent-activity h3 + span {
  display: inline-block;
  font-size: 1.6rem;
  line-height: 1.95rem;
}
#grants #recent-activity h4 {
  font-size: 1.6rem;
  line-height: 1.95rem;
  margin: 3.3rem 0 1rem;
}
#grants #recent-activity .stats {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  margin: 0 -2rem;
}
#grants #recent-activity .stats dl {
  margin: 0 2rem;
}
#grants #recent-activity .stats dt {
  font-size: 1.6rem;
  font-weight: bold;
}
#grants #recent-activity .stats dd {
  color: #79BF59;
  font-size: 3.6rem;
  font-weight: bold;
  margin: 1.3rem 0 0;
}
.marketplace #grants #recent-activity .stats dd {
  color: #5090F6;
}
#grants #recent-activity #chart-compute {
  height: 33rem;
  margin: 0 0 0 -1.2rem;
}
#grants #contributions-by-project table {
  border-top: 1px solid #C4C4C4;
}
#grants #contributions-by-project table > tbody > tr > th {
  border-color: white;
  border-style: solid;
  border-width: 0.3rem;
  font-size: 1.2rem;
  padding-top: 0.5rem;
}
#grants #contributions-by-project table > tbody > tr > td {
  background-color: #F4F4F4;
  border-color: white;
  border-style: solid;
  border-width: 0.3rem;
  color: #4D4D4D;
  padding: 0.6rem 0.8rem;
}
#grants #contributions-by-project table > tbody > tr > .numeric {
  text-align: center;
}
#grants #contributions-by-project table > tbody > tr > td:nth-child(n+2):nth-child(-n+3),
#grants #contributions-by-project table > tbody > tr > th:nth-child(n+2):nth-child(-n+3),
#grants #contributions-by-project table > tbody > tr > td:nth-child(5),
#grants #contributions-by-project table > tbody > tr > th:nth-child(5) {
  display: none;
}
#grants #contributions-by-project table > tbody > tr > th:first-child,
#grants #contributions-by-project table > tbody > tr > td:first-child {
  border-left: none;
  padding-left: 0.8rem;
}
#grants #contributions-by-project table > tbody > tr > th:last-child,
#grants #contributions-by-project table > tbody > tr > td:last-child {
  border-right: none;
}
#grants #contributions-by-project table > tbody > tr.subtotal > td {
  font-weight: bold;
}
#grants #contributions-by-project table > tbody > tr.total > td {
  background-color: #E4F2DE;
  font-weight: bold;
}
.marketplace #grants #contributions-by-project table > tbody > tr.total > td {
  background-color: #DCE9FD;
}
#grants #contributions-by-project .misc,
#grants #contributions-by-project .show-more-rows,
#grants #contributions-by-project .show-less-rows {
  font-style: italic;
  font-weight: normal;
}
#grants #contributions-by-project .show-less-rows.total {
  font-style: normal;
}
#grants #contributions-by-project .caret {
  border-bottom: 0.4rem solid transparent;
  border-left: 0.4rem solid #79BF59;
  border-top: 0.4rem solid transparent;
  display: inline-block;
  height: 0;
  margin-right: 0.4rem;
  vertical-align: middle;
  width: 0;
}
.marketplace #grants #contributions-by-project .caret {
  border-left-color: #5090F6;
}
#grants #contributions-by-project .show-less-rows .caret {
  border-bottom: 0.4rem solid #79BF59;
  border-left: 0.4rem solid transparent;
  border-right: 0.4rem solid transparent;
  border-top: none;
}
.marketplace #grants #contributions-by-project .show-less-rows .caret {
  border-bottom-color: #5090F6;
  border-left-color: transparent;
}
#grants #contributions-by-project ul.footnotes {
  list-style: none;
  margin: 3.4rem 0 0;
}
#grants #contributions-by-project ul.footnotes li {
  color: #4D4D4D;
  font-size: 1.0rem;
  line-height: 1.2rem;
  margin: 0;
}
#grants #more-info .pane-content {
  background: white url(../images/stats-cpu-volunteer.svg) no-repeat center 3.6rem;
  display: flex;
  flex-flow: wrap;
  justify-content: space-between;
  padding-top: 14rem;
}
.marketplace #grants #more-info .pane-content {
  background-image: url(../images/stats-cpu.svg);
}
#grants #more-info h2 {
  font-size: 2.1rem;
  font-weight: bold;
  line-height: 2.56rem;
}
#grants #more-info p {
  font-size: 2.1rem;
  line-height: 2.56rem;
  margin: 0;
}
#grants #more-info .button {
  height: fit-content;
  margin: 2rem auto 0;
  width: fit-content;
}
#grants .pane-news {
  margin-top: 11.4rem;
}
#grants .news h2.pane-title {
  text-align: center;
}

/*
 * Discussions page
 */
#discussion-forums.banner:after,
#wiki-heading.banner:after {
  background: url(../images/discussion.svg) no-repeat right bottom / 35%;
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
#wiki-heading.banner:after {
  background: url(../images/wiki.svg) no-repeat right bottom / 33%;
}
#discussion-forums.banner .pane-node .pane-content,
#wiki-heading.banner .pane-node .pane-content {
  margin-top: 5.7rem;
}
#discussion-forums.banner .search,
#wiki-heading.banner .search {
  margin-top: 5rem;
  max-width: 60rem;
}
#discussion-forums.banner .search h2,
#wiki-heading.banner .search h2 {
  display: none;
}
#discussion-forums.banner .search #search-block-form .container-inline,
#wiki-heading.banner .search #search-block-form .container-inline {
  display: flex;
  flex-wrap: wrap;
}
#discussion-forums.banner .search .form-item,
#wiki-heading.banner .search .form-item {
  width: 100%;
}
#discussion-forums.banner .search .search-form-box,
#wiki-heading.banner .search .search-form-box {
  height: 5.2rem;
  padding: 0.5rem 1.5rem;
}
#discussion-forums.banner .search .form-submit,
#wiki-heading.banner .search .form-submit {
  margin-left: 0;
  margin-top: 2rem;
  vertical-align: bottom;
}

#forum-topics.container {
  padding-left: 0;
  padding-right: 0;
}
#forum-topics .topic-list {
  border-spacing: 0.3rem;
  display: table;
}
#forum-topics .topic-list > .topic,
#forum-topics .topic-list > .heading {
  display: table-row;
}
#forum-topics .topic-list > .heading {
  font-weight: bold;
  white-space: nowrap;
}
#forum-topics .topic-list > a:hover {
  color: inherit;
  text-decoration: inherit;
}
#forum-topics .topic-list > a.topic:nth-child(2n+1) span {
  background-color: #EDEDED;
}
#forum-topics .topic-list span {
  color: #434750;
  display: table-cell;
  height: 4.6rem;
  padding: 1.8rem 2.2rem;
  vertical-align: middle;
}
#forum-topics .views-field-comment-count {
  text-align: right;
  white-space: nowrap;
}
#forum-topics .views-field-last-updated {
  white-space: nowrap;
}
#forum-topics .topic-list span.views-field-value,
#forum-topics .topic-list span.views-field-comment-count,
#forum-topics .topic-list span.views-field-last-updated {
  display: none;
}
#forum-topics .topic-list span.new-comments ~ span {
  color: #79BF59;
}
#forum-topics .views-field-new-comments .status {
  background: url(../images/topic.svg) no-repeat center;
  height: 2.2rem;
  width: 2.3rem;
}
#forum-topics .views-field-new-comments.new-comments .status {
  background-image: url(../images/topic-new.svg);
}
#forum-topics .topic-list
#forum-topics .views-field-comment-count {
  text-align: right;
}

/*
 * Discussion topic
 */
.forum-show-topic body {
  background-color: #EDEDED;
}
.forum-show-topic .container {
  padding-top: 11.2rem;
  position: relative;
}
.forum-show-topic .container .breadcrumb {
  font-size: 1.8rem;
  position: absolute;
  top: 5.7rem;
}
.forum-show-topic .container .breadcrumb a {
  text-decoration: underline;
}
.forum-show-topic .container > h2 {
  margin-bottom: 6rem;
}
.comment:not(html) {
  background-color: white;
  display: flex;
  flex-wrap: wrap;
  font-size: 1.7rem;
  margin-bottom: 0.6rem;
  padding: 3rem 3.6rem;
}
.comment .picture {
  height: 8.6rem;
  width: 8.6rem;
}
.comment .picture:hover,
.picture.profile-pic:hover {
  text-decoration: none;
}
.comment .picture img {
  border-radius: 50%;
}
.comment .picture .default,
.picture.profile-pic .default {
  background-color: #EDEDED;
  border-radius: 50%;
  color: rgba(255, 255, 255, 0.75);
  display: block;
  font-size: 2.8rem;
  font-weight: bold;
  height: 100%;
  line-height: 8.6rem;
  text-align: center;
  text-transform: uppercase;
}
.comment .details a {
  font-weight: bold;
}
.comment .variation-1 .details a {
  color: #79BF59;
}
.comment .variation-1 .picture .default,
.picture.profile-pic .default.variation-1 {
  background-color: #79BF59;
}
.comment .variation-2 .details a {
  color: #F2994A;
}
.comment .variation-2 .picture .default,
.picture.profile-pic .default.variation-2 {
  background-color: #F2994A;
}
.comment .variation-3 .details a {
  color: #EB5757;
}
.comment .variation-3 .picture .default,
.picture.profile-pic .default.variation-3 {
  background-color: #EB5757;
}
.comment .variation-4 .details a {
  color: #2D9CDB;
}
.comment .variation-4 .picture .default,
.picture.profile-pic .default.variation-4 {
  background-color: #2D9CDB;
}
.comment-author {
  display: flex;
}
.comment-author .details {
  margin-left: 3rem;
}
.comment-author .details span {
  display: block;
}
.comment-content {
  margin-top: 5rem;
  overflow: auto;
  overflow-wrap: break-word;
  width: 100%;
}
.comment-header {
  margin-bottom: 1.5rem;
}
.comment-date {
  font-weight: bold;
}
#comments {
  margin-bottom: 4rem;
}
#comments + form #edit-comment-wrapper {
  width: 100%;
}
#comments + form .forum-bottom {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 4rem;
}
#comments + form .forum-bottom .button {
  margin-right: 2rem;
}
#comments + form .forum-bottom > .button:last-child {
  margin-right: 0;
}
.captcha legend,
.captcha .description {
  display: none;
}
body#tinymce {
  height: auto;
  margin: 1rem;
}


/*
 * Wiki
 */
.wiki-page h1,
.wiki-page h2,
.wiki-page h3,
.wiki-page h4,
.wiki-page h5,
.wiki-page h6 {
  color: black;
  font-size: 2.1rem;
  margin-bottom: 0.2rem;
}
.wiki-page h1 {
  font-size: 2.8rem;
}
.wiki-page h2 {
  font-size: 2.3rem;
}
.wiki-page a {
  color: #79BF59;
}
.wiki-page ul li {
  line-height: 1.2;
  margin-bottom: 0;
}
.wiki-page .forum-bottom .button,
.wiki-page .forum-bottom .admin-controls {
  display: inline-block;
  margin-top: 2rem;
}

body > .wiki-page {
  background-color: #EDEDED;
}
.node > body > .main-content-wrapper > .wiki-page .page-title,
.help > body > .main-content-wrapper > .wiki-page .page-title,
.community-wiki body > .main-content-wrapper > h1 {
  display: none;
}
.wiki-page .page-title {
  color: #79BF59;
  font-size: 4.8rem;
  font-weight: bold;
  line-height: 1.25;
  margin: 0 0 6rem;
}
.wiki-page .page-body {
  background-color: white;
  padding: 3.2rem 2.7rem;
}
.wiki-page .toc {
  margin: 1rem 0 3rem;
}
.wiki-page p {
  font-size: 1.8rem;
  line-height: 1.25;
}
.wiki-page p:last-child {
  margin-bottom: 0;
}
.wiki-page .forum-bottom {
  margin-top: 2rem;
  position: relative;
}


/*
 * News page
 */
.news .banner > .container {
  padding-bottom: 16rem;
}
.news .banner > .container > h1 {
  margin-bottom: 7rem;
}
.news body {
  background-color: #EDEDED;
}
.news body > .main-content-wrapper > h1 {
  display: none;
}
.news select[name="filter"] {
  background-color: white;
}
.view-News .view-header {
  display: none;
}
.view-News .view-filters {
  height: 4.8rem;
  margin-top: 0.5rem;
  position: absolute;
  right: 11%;
  top: 7.7rem;
}
.view-News .view-filters .views-exposed-form .views-exposed-widget {
  padding: 0;
}
.view-News .view-filters .views-exposed-form .views-exposed-widget label {
  display: inline-block;
  margin-right: 1rem;
}
.view-News .view-filters .views-exposed-form .views-exposed-widget .views-widget {
  display: inline-block;
}
.view-News .view-filters .views-exposed-form .views-exposed-widget .form-item {
  width: auto;
}

.news .views-row {
  background-color: white;
  font-size: 1.8rem;
  margin-top: 4.3rem;
  overflow: auto;
  padding: 3rem 4rem;
  position: relative;
}
.news .views-row:first-child {
  margin-top: 0;
}
.news .views-row .icon {
  background-image: url(../images/news.svg);
  background-position: 11% center;
  background-repeat: no-repeat;
  background-size: 10rem;
  left: 8%;
  min-height: 13rem;
  position: absolute;
  width: 30%;
}
.news .carousel .views-row .icon {
  background-size: initial;
}
.news .views-row .icon.press_release {
  background-image: url(../images/press.svg);
}
.news .views-row .icon.story {
  background-image: url(../images/blog.svg);
}
.news .views-row .icon.winner{
  background-image: url(../images/winner.svg);
}
.marketplace .news .views-row .icon,
.marketplace.news .views-row .icon {
  background-image: url(../images/marketplace-news.svg);
}
.marketplace .news .views-row .icon.press_release,
.marketplace.news .views-row .icon.press_release {
  background-image: url(../images/marketplace-press.svg);
}
.marketplace .news .views-row .icon.story,
.marketplace.news .views-row .icon.story {
  background-image: url(../images/marketplace-blog.svg);
}
.marketplace .news .views-row .icon.winner,
.marketplace.news .views-row .icon.winner{
  background-image: url(../images/marketplace-winner.svg);
}
.news .views-row h4 a {
  color: inherit;
  /*font-size: 2.8rem;*/
  line-height: 3.4rem;
  text-decoration: inherit;
}
.news .views-row .views-field-created {
  font-style: italic;
}
.news .views-row p {
  font-size: 1.8rem;
  line-height: 1.2;
  margin: 1.5rem 0;
  width: auto;
}

.news .views-row.carousel-cell,
.container .block .views-row.carousel-cell {
  color: #434750;
  padding: 3rem;
  overflow: hidden;
  width: 27rem;
  height: 44rem;
  margin: 0 3rem 0 0;
}
.news .views-row .icon,
.news .block .carousel .views-row .icon {
  background-position: left top;
  left: unset;
  min-height: 12rem;
  position: unset;
  width: unset;
}

.news h2 {
  margin: 0 0 6rem;
}
.news .full-content .views-row {
  padding: 0;
}
.news .full-content .views-row > div.icon {
  display: none;
}
.news .full-content #comments-header {
  font-size: 3.9rem;
  margin-top: 5rem;
}
.news .full-content form #edit-comment-wrapper {
  width: 100%;
}


/*
 * Search results page
 */
.search .banner.container h2 {
  font-size: 4.8rem;
  margin: -2rem 0 5.2rem;
}
.search #search-block-form .form-item {
  margin: 0;
}
.search #search-block-form input {
  height: 5.2rem;
}
.search #search-block-form .button {
  margin: 0 0 0 3rem;
}
.search #search-results {
  display: table;
}
.search #search-results .search-header {
  display: table-row;
}
.search #search-results .search-header span {
  border-bottom: 0.2rem solid black;
  display: table-cell;
  font-weight: bold;
  padding: 1.7rem;
}
.search #search-results .search-header span:first-child {
  padding-left: 0;
}
.search #search-results .result {
  display: table-row;
}
.search #search-results .result:hover {
  text-decoration: none;
}
.search #search-results .result span {
  border: 0.2rem solid white;
  display: table-cell;
  padding: 1.7rem;
  vertical-align: middle;
}
.search #search-results .result span strong {
  color: #79BF59;
}
.search #search-results .result span,
.search #search-results .result span p {
  color: black;
  font-size: 1.7rem;
  line-height: 1.3;
  margin: 0;
}
.search #search-results .result.even span {
  background-color: #EDEDED;
}
.search #search-results .result .icon {
  background-position: center;
  background-repeat: no-repeat;
  width: 6.3rem;
}
.search #search-results .result .icon.forum-topic,
.search #search-results .result .icon.welcome-item {
  background-image: url(../images/topic-new.svg);
}
.search #search-results .result .icon.about,
.search #search-results .result .icon.legal,
.search #search-results .result .icon.news,
.search #search-results .result .icon.wiki-page {
  background-image: url(../images/file.svg);
}

/*
 * Terms and conditions
 */
.legal body {
  background-color: #EDEDED;
}
.legal .container > h2 {
  margin: 1.5rem 0 6rem;
}
.legal .node {
  background-color: white;
  padding: 3.2rem 2.7rem;
}
.legal h4 {
  font-size: 1.9rem;
  letter-spacing: 0;
  line-height: 1.25;
  margin-bottom: 0;
}
.legal .toc { /* where does this come from? */
  display: none;
}
.legal p {
  font-size: 1.8rem;
  line-height: 1.25;
}
.legal ol {
  list-style: decimal outside;
  padding-left: 3.9rem;
}
.legal ol li {
  font-size: 1.8rem;
  line-height: 1.25;
  margin-bottom: 2.5rem;
  padding-left: 1.8rem;
}
.legal p:last-child,
.legal ol:last-child,
.legal ol li:last-child {
  margin-bottom: 0;
}

/**
 * User dashboard pages
 */

.dashboard > body {
  background-color: #EDEDED;
}
.dashboard > body > .main-content-wrapper > h1 {
  padding: 4.9rem 11%;
}
#dashboard,
#computers {
  margin: 0 11% 19.4rem;
  position: relative;
}
#dashboard .panel-region-separator,
#computers .panel-region-separator {
  display: none;
}
#dashboard,
#dashboard p,
#computers,
#computers p,
#computers .item-list .pager li {
  font-size: 1.4rem;
}
#dashboard .button,
#computers .computer-list .button,
.account form .button,
.account #user-jackpot-info .button {
  font-size: 1.4rem;
  line-height: 3.8rem;
  min-width: 10rem;
}
#computers .item-list .pager {
  margin: 2rem 0;
}
#computers .item-list .pager li.pager-current,
#computers .item-list .pager li a {
  font-size: 1.3rem;
  line-height: 2.6rem;
  min-width: 0.6rem;
}
#computers .item-list .pager li.pager-first,
#computers .item-list .pager li.pager-last {
  display: none;
}
#dashboard p:last-child,
#computers p:last-child {
  margin-bottom: 0;
}
#dashboard > .panel-panel > div,
#computers > .panel-panel > div {
  display: flex;
  flex-flow: wrap;
  justify-content: space-between;
}
#dashboard .container,
#computers .container {
  background-color: white;
  border-radius: 0.5rem;
  flex-grow: 1;
  margin-bottom: 0.8rem;
  padding: 1.2rem 1.5rem;
}
#dashboard .container > .pane-content,
#computers .container > .pane-content {
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: space-between;
}
#dashboard .container.user-stats-overview {
}
#dashboard .container.user-stats-overview > .pane-content {
  display: flex;
  flex-flow: wrap;
}
.user-stats-overview h3 {
  width: 100%;
}
.user-stats-overview dd,
.user-total-points dd,
.user-avg-points dd {
  color: #79BF59;
  font-size: 3.8rem;
  font-weight: bold;
  line-height: 1;
  margin: 0;
}
.user-stats-overview dd {
  padding-bottom: 1.6rem;
}
.user-stats-overview #total-points,
.user-stats-overview #average-points {
  display: flex;
  flex-direction: column-reverse;
}
.user-stats-overview #average-points {
  min-width: 16rem;
}
.user-stats-overview #user-stats-chart {
  border-top: 1px solid #C4C4C4;
  margin: 2rem 0;
  overflow: hidden;
  padding: 2rem 0;
  width: 100%;
}
.user-stats-overview #lifetime-points {
  display: flex;
  align-items: flex-end;
}
.user-stats-overview #lifetime-points dd {
  padding: 0 0 0 0.8rem;
}
.user-stats-overview #lifetime-points dt::after {
  content: ':';
}
.circular-chart {
  display: block;
}
.circle {
  stroke: #79BF59;
  fill: none;
  stroke-width: 0.28rem;
  stroke-linecap: butt;
  animation: progress 1s ease-out forwards;
}
.marketplace .circle {
  stroke: #5090F6;
}
.circle-ends {
  stroke: white;
  fill: none;
  stroke-width: 0.28rem;
  stroke-linecap: butt;
  animation: progress 1s ease-out forwards;
  transform: rotate(-1.8deg);
  transform-origin: 50% 50%;
}
.circle-bg {
  fill: none;
  stroke: #DADADA;
  stroke-width: 0.28rem;
}
.percentage {
  fill: #79BF59;
  font-family: 'Montserrat';
  font-size: 0.7rem;
  font-weight: bold;
  text-anchor: middle;
}
.marketplace .percentage {
  fill: #5090F6;
}
@keyframes progress {
  0% {
    stroke-dasharray: 0 100;
  }
}

.user-toolbox > .pane-content > * {
  position: relative;
}
.user-toolbox > .pane-content > a:not(.my-account):not(.add-computer):not(.add-computer-linux):not(.confirm-email):not(.twitter):not(.facebook) {
  cursor: default;
  pointer-events: none;
}
.user-toolbox > .pane-content > a:not(.my-account):not(.add-computer):not(.add-computer-linux):not(.confirm-email):not(.twitter):not(.facebook)::after,
.wiki-page .forum-bottom .admin-controls::after { /* temporary */
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 100;
  background: rgba(255,255,255,0.8);
  text-align: center;
  padding: 0.3rem 0 0;
  top: -2rem;
  top: 0;
  left: 0;
  padding: 0;
  font-style: italic;
  border-radius: 0.4rem;
}
.wiki-page .forum-bottom .admin-controls::after { /* temporary */
  background: rgba(237,237,237,0.8);
}
#wiki-home .wiki-page .forum-bottom .admin-controls::after { /* temporary */
  background: rgba(255,255,255,0.8);
}
#dashboard .container.user-toolbox > .pane-content,
#computers .container.user-toolbox > .pane-content {
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: start;
}
.user-toolbox h3 {
  width: 100%;
}
.user-toolbox a {
  color: black;
  line-height: 5.4rem;
  margin: 0.9rem 0;
  padding-left: 7rem;
  width: 13rem;
}
.user-toolbox a.confirm-email {
  background: url(../images/email.svg) center left no-repeat;
  color: #E5007E;
}
.user-toolbox a.invite-friends {
  background: url(../images/invite-friends.svg) center left no-repeat;
}
.user-toolbox a.add-computer,
.user-toolbox a.add-computer-linux {
  background: url(../images/add-computer.svg) center left no-repeat;
}
.user-toolbox a.facebook {
  background: url(../images/facebook.svg) center left no-repeat;
}
.user-toolbox a.twitter {
  background: url(../images/tweet.svg) center left no-repeat;
}
.user-toolbox a.my-account {
  background: url(../images/account.svg) center left no-repeat;
}

#computers .pane-user-stats-compact {
  width: 100%;
}
#computers .pane-user-stats-compact .pane-content,
#computers #mini-panel-user_stats_compact,
#computers #mini-panel-user_stats_compact > .panel-panel {
  height: 100%;
}
#computers .container.computer-list {
  min-width: 54.8rem;
}
#computers .container.computer-list > .pane-content,
#computers .container.user-toolbox > .pane-content {
  justify-content: start;
}
#computers .computer-list td .os-icon {
  background: url(../images/inactive.svg) center no-repeat;
  height: 1.2rem;
  width: 1.2rem;
}
#computers .computer-list td .os-icon.windows {
  background-image: url(../images/windows-inactive.svg);
}
#computers .computer-list td .os-icon.mac {
  background-image: url(../images/apple-inactive.svg);
}
#computers .computer-list td .os-icon.active {
  background-image: url(../images/active.svg);
}
#computers .computer-list td .os-icon.windows.active {
  background-image: url(../images/windows.svg);
}
#computers .computer-list td .os-icon.mac.active {
  background-image: url(../images/apple.svg);
}
#computers .computer-list td .status-field {
  background: url(../images/inactive.svg) center no-repeat;
  height: 1.2rem;
  margin: 0 auto;
  width: 1.2rem;
}
#computers .computer-list td .status-field.active {
  background-image: url(../images/active.svg);
}
#computers .computer-list td.views-field-phpcode {
  text-align: center;
}
#computers .button-container {
  bottom: -9.2rem;
  left: 0;
  position: absolute;
}
.account form,
.account p {
  font-size: 1.4rem;
  line-height: 1.25;
}
.account h6 {
  margin-bottom: 0.2rem;
}
.account .account-info-value {
  color: #79BF59;
  display: block;
  font-size: 2.3rem;
  font-weight: bold;
}
.account .account-info-instructions {
  margin-bottom: 2.5rem;
}
.account .button {
  margin: 1.3rem 0 2.8rem;
}
.account form > div > span,
.account #user-jackpot-info > span {
  display: block;
  margin-top: 1.5rem;
}
.account label {
  font-weight: normal;
  margin: 2rem 0 1rem 0;
}
.account .form-item label {
  margin: 0;
}
.account #user-jackpot-info dt {
  font-weight: bold;
  margin-top: 1.5rem;
}
.account #user-jackpot-info dd,
.account .email-confirmed dd {
  margin: 0;
}
.account #user-jackpot-info h3 + span {
  margin-bottom: 2.4rem;
}
.account .email-confirmed dt {
  display: inline-block;
  font-weight: normal;
  margin: 0.6rem 0 1.8rem;
}
.account #user-jackpot-info .email-confirmed dt {
  font-weight: normal;
  margin-top: 5rem;
}
.account .email-confirmed dd {
  color: #79BF59;
  display: inline-block;
  font-weight: bold;
}
.account .form-item > label {
  font-weight: normal;
}
.account .wrapper {
  align-items: center;
  display: flex;
  margin-bottom: 1rem;
}
.account .wrapper.button-wrapper {
  justify-content: space-between;
}
.account a.picture.profile-pic {
  display: inline-block;
  height: 8.6rem;
  position: relative;
  width: 8.6rem;
}
.account a.picture.profile-pic .default {
  height: 8.6rem;
  width: 8.6rem;
}
.account a.picture.profile-pic:after {
  background: url(../images/edit.svg) bottom right no-repeat;
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
.account .profile-pic + p {
  margin: 0 2.7rem;
}
.account #edit-bio-wrapper + fieldset {
  display: none;
}

/**
 * User profiles
 */
.profile-pic img {
  border-radius: 50%;
}

/**
 * Wolfram/NKS landing page
 */
#wolfram.banner:after {
  background: url(../images/cloud.svg) no-repeat right bottom / 38%;
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
#wolfram.banner p {
  font-size: 2.1rem;
}
#wolfram.banner p:last-child {
  margin-top: 5rem;
}
#wolfram #detail h3 {
  margin-top: 5rem;
}
#wolfram #detail .button {
  margin: 1rem 1rem 1rem 0;
}
#wolfram #detail .pane-content .section {
  margin-top: 5rem;
}
#wolfram #detail .pane-content .section:first-child {
  margin-top: 0;
}
#wolfram #detail .press-links {
  position: relative;
}
#wolfram #detail .press-links ul {
  display: flex;
  flex-flow: row wrap;
  list-style: none;
  margin-left: -2rem;
}
#wolfram #detail .press-links ul:after {
  background-color: white;
  content: '';
  height: 100%;
  position: absolute;
  width: 1.5rem;
}
#wolfram #detail .press-links ul li {
  margin-bottom: 0;
  margin-left: 1rem;
}
#wolfram #detail .press-links ul li:before {
  content: '\b7\a0\a0';
}

/**
 * Install stats page
 */
#ce-stats .filters label {
  align-items: center;
  display: flex;
  font-weight: normal;
  justify-content: right;
}
#ce-stats .filters input[type="submit"] {
  grid-column: 2;
  margin-top: 1rem;
  width: max-content;
}
#ce-stats select {
  min-width: max-content;
  width: 44%;
}
#ce-stats ul.report-params {
  list-style: none;
  margin-bottom: 2rem;
}
#ce-stats ul.report-params li {
  margin-bottom: 0.2rem;
}
#ce-stats ul.report-params li.primary {
  font-weight: bold;
}
#ce-stats .filters,
#ce-stats dl {
  column-gap: 1rem;
  display: grid;
  grid-template-columns: 16rem auto;
  row-gap: 0.5rem;
}
#ce-stats dl dt {
  grid-column: 1;
}
#ce-stats .filters label:after,
#ce-stats dl dt:after {
  content: ':';
}
#ce-stats dl dd {
  grid-column: 2;
  margin-left: 0;
}
#ce-stats table th {
  text-align: center;
  white-space: nowrap;
}
#ce-stats table thead tr th.row-label {
  left: 0;
  position: sticky;
  text-align: left;
}
#ce-stats table td {
  text-align: right;
}
#ce-stats table td.row-label {
  left: 0;
  padding-left: 0.5rem;
  position: sticky;
  text-align: left;
  z-index: 1;
}
#ce-stats table td:last-child {
  padding-right: inherit;
}
#ce-stats table tr:nth-child(2n-1) td.row-label {
  background-color: #FFF;
}
#ce-stats table.installs td.row-label + td {
  font-style: italic;
  position: relative;
}
#ce-stats table.installs td.row-label + td:before {
  background-color: RGBA(121,191,89,0.08);
  color: transparent;
  content: '.';
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  
}
#ce-stats .expanded table.installs,
#ce-stats .expanded table.activity {
  display: block;
  overflow-x: auto;
}
#ce-stats .expanded table.installs thead tr:first-child  +tr th.row-label,
#ce-stats .expanded table.installs td.row-label {
  box-sizing: border-box;
  min-width: 6.4rem;
  max-width: 6.4rem;
}
#ce-stats .expanded table.installs thead tr:first-child + tr th.row-label + th,
#ce-stats .expanded table.installs td.row-label + td {
  left: 6.4rem;
  position: sticky;
}
#ce-stats .expanded table.installs thead tr:first-child  +tr th.row-label,
#ce-stats .expanded table.installs thead tr:first-child + tr th.row-label + th,
#ce-stats .expanded table.installs tr:nth-child(2n-1) td.row-label + td {
  background-color: #FFF;
}
#ce-stats.filtered-geo table.installs .new_user_accounts td {
  color: #ccc;
}
#ce-stats.filtered-geo table.installs .new_user_accounts td:not(.row-label) {
  line-height: 0;
  text-align: left;
  text-indent: -9999px;
}
#ce-stats.filtered-geo table.installs .new_user_accounts td:not(.row-label):after {
  content: 'n/a';
  display: block;
  line-height: initial;
  text-align: right;
  text-indent: 0;
}
#ce-stats table.lifetime td.percent,
#ce-stats table.lifetime td.percent_vtx,
#ce-stats table.lifetime td.percent_vtx_total,
#ce-stats table.lifetime td.percent_vtx_untested {
  width: 4.8rem;
}
#ce-stats table.lifetime td.percent:not(.total_days):not(.total_runtime):after,
#ce-stats table.lifetime td.percent_vtx:not(.total_days):not(.total_runtime):after,
#ce-stats table.lifetime td.percent_vtx_total:not(.total_days):not(.total_runtime):after,
#ce-stats table.lifetime td.percent_vtx_untested:not(.total_days):not(.total_runtime):after {
  content: ' %';
}

/**
 * BOINC AV monitoring
 */
.vt-file-list {
  max-width: 64em;
}
.vt-file-list tbody tr th {
  border: none;
}
.vt-file-list tbody tr.bg-success {
  background-color: #dff0d8 !important;
}
.vt-file-list tbody tr.bg-danger {
  background-color: #f2dede !important;
}
.vt-file-list tbody tr td {
  border-width: 0 0 1px 0;
  vertical-align: middle;
}
.vt-file-list tbody tr:nth-child(2n) td {
  background-color: transparent;
}

@media (min-width: 400px) {
  .banner h1 {
    font-size: 4rem;
  }
  #contact-us .section:not(:first-child) {
    margin-top: 4rem;
  }
}

@media (min-width: 550px) {
  h1,
  .banner h2 {
    font-size: 6.8rem;
  }
  h2 {
    font-size: 4.8rem;
  }
  h3 {
    font-size: 2.8rem;
  }
  h4 {
    font-size: 2.3rem;
    line-height: 2.8rem;
  }
  h6 {
    font-size: 1.4rem;
    line-height: 1.7rem;
  }
  #about-us .icons li {
    padding-left: 11.6rem;
    padding-top: 0;
    width: 38%;
  }
  #discussion-forums.banner .search #search-block-form .container-inline,
  #wiki-heading.banner .search #search-block-form .container-inline {
    flex-wrap: nowrap;
  }
  #discussion-forums.banner .search .form-item,
  #wiki-heading.banner .search .form-item {
    width: 68%;
  }
  #discussion-forums.banner .search .form-submit,
  #wiki-heading.banner .search .form-submit {
    margin-left: 2rem;
    margin-top: 0;
  }
  #forum-topics .topic-list span.views-field-last-updated {
    display: table-cell;
  }
  #grants .banner > .pane-content {
    padding-bottom: 10rem;
  }
  #grants #recent-activity h3 {
    margin-bottom: 2rem;
  }
  #grants #recent-activity h3 + span {
    margin-left: 1rem;
  }
  #grants #recent-activity .stats dd {
    font-size: 4.8rem;
  }
  #grants #recent-activity #chart-compute {
    margin: 0 -2.4rem 0 -1.2rem;
  }
  #grants #contributions-by-project table > tbody > tr > td:nth-child(5),
  #grants #contributions-by-project table > tbody > tr > th:nth-child(5) {
    display: table-cell;
  }
}

@media (min-width: 750px) {
  .button {
    margin-bottom: 0;
  }
  #entryway {
    background-size: 80%;
  }
  .banner h1 {
    font-size: 6.8rem;
    width: 60rem;
  }
  .banner p {
    font-size: 2.3rem;
    width: 60rem;
  }
  .content-with-tabs {
    flex-direction: row;
  }
  ul.tabs.primary {
    margin: 0 2rem 0 0;
  }
  .marketplace.landing-page .banner.container {
    /* use gradient to tint the underlying background image */
    background:
      url(../images/global40.png) bottom right / 45% no-repeat,
      linear-gradient(
        rgba(255, 255, 255, 0.1),
        rgba(255, 255, 255, 0.1)
      ),
      linear-gradient(
        rgba(0, 105, 254, 0.75),
        rgba(0, 105, 254, 0.75)
      ),
      url(../images/Flame.png) no-repeat left bottom;
  }
  .marketplace.landing-page .banner p {
    width: 48rem;
  }
  #stats {
    padding: 7.7rem 8%;
  }
  #stats .icons {
    display: flex;
    flex-flow: column wrap;
    margin: 0 0 -3rem;
    max-height: 50rem;
    max-width: none;
  }
  #stats .icons li {
    margin: 0 auto 3rem;
  }
  #solutions .icons li {
    background-position: top left;
    padding-left: 116px;
    padding-top: 0;
    text-align: left;
  }
  #stats .footnote {
    margin: 4rem 0 -5rem;
    max-width: initial;
  }
  #how-it-works .node {
    background:
      url(../images/Diagram.svg) no-repeat 0% 7% / 43%,
      url(../images/Prize.svg) no-repeat 2% 48% / 25%,
      url(../images/Money.svg) no-repeat 23% 82% / 28%;
    max-width: 52rem;
    padding-left: 50%;
  }
  #how-it-works .node h4 {
    background: none;
    margin-top: 5rem;
    padding-top: 0;
    width: 90%;
  }
  #how-it-works .node h4:nth-of-type(2),
  #how-it-works .node h4:nth-of-type(3) {
    background: none;
    padding-top: 0;
  }
  #testimonials .main-carousel {
    width: 50rem;
  }
  #testimonials .carousel-cell {
    width: 33rem;
  }
  #contact-us .section:not(:first-child) {
    text-align: right;
  }
  #contact-us.container .form-item:not(#edit-body-wrapper) {
    width: 48%;
  }
  #contact-us .captcha {
    float: left;
    text-align: left;
  }
  #contact-us .captcha .g-recaptcha {
    transform: scale(0.68);
    transform-origin: top left;
  }
  .flickity-prev-next-button {
    background: transparent;
    border: 0.2rem solid white;
    color: white;
    height: 5.4rem;
    min-width: unset;
    padding: 0;
    width: 5.4rem;
  }
  button.flickity-prev-next-button:hover {
    background: rgba(255, 255, 255, 0.25);
  }
  .flickity-prev-next-button.previous {
    left: -8.4rem;
  }
  .flickity-prev-next-button.next {
    right: -11.7rem;
  }
  #charities.banner li > .logo img {
    width: 40rem;
  }
  #charities.banner li > .description p {
    width: auto;
  }
  .news .views-row {
    padding: 3rem 4rem 3rem 30%;
  }
  .news .views-row .icon {
	background-size: 50%;
	background-position: 50% top;
	left: 0;
	min-height: 12rem;
	position: absolute;
	width: 30%;
  }
  .news .carousel .views-row .icon {
	background-position: left top;
    position: relative;
	min-height: 12rem;
	width: auto;
  }
  .user-stats-overview #average-points {
    border-left: 1px solid #C4C4C4;
    margin-top: -4.4rem;
    padding-left: 2.6rem;
  }
  #computers #mini-panel-user_stats_compact > .panel-panel > div {
    display: flex;
    flex-direction: row;
  }
  #computers #mini-panel-user_stats_compact > .panel-panel .container {
    margin-left: 0.8rem;
  }
  #computers #mini-panel-user_stats_compact > .panel-panel .container:first-child {
    margin-left: 0;
  }
  .account form input:not(.button .form-file),
  .account form select {
    width: 75%;
  }
  #discussion-forums.banner .pane-node,
  #wiki-heading.banner .pane-node {
    width: 50rem;
  }
  #forum-topics.container {
    padding-left: 3%;
	  padding-right: 3%;
  }
  #forum-topics .topic-list span.views-field-value,
  #forum-topics .topic-list span.views-field-comment-count {
    display: table-cell;
  }
  .forum-show-topic .container {
    padding-top: 9.2rem;
  }
  #comments + form .forum-bottom .admin-controls {
    margin-left: auto;
  }
  #grants .banner h1,
  #grants .banner p {
    width: 50rem;
  }
  #grants #more-info .pane-content {
    background-position: 3.6rem center;
	padding-left: 14rem;
	padding-top: 4rem;
    text-align: left;
  }
  #grants #more-info .button {
    margin: 2rem 0 0;
  }
  #wolfram.banner h1,
  #wolfram.banner p {
    width: 55rem;
  }
  .footer .column,
  .footer .columns {
    display: block;
    min-width: 16rem;
    text-align: left;
  }
  .footer h6 {
    color: white;
    font-size: 1.2rem;
    font-weight: bold;
    margin-bottom: 0;
    margin-top: 1.5rem;
    white-space: nowrap;
  }
  .footer .footer-links,
  .footer .icons {
    margin-bottom: 0;
    padding: 0;
  }
  .footer .footer-links li {
    line-height: 1.6rem;
    list-style: none;
    margin-bottom: 0;
  }
  .footer .footer-links a {
    color: #999999;
    text-decoration: none;
  }
  .footer .copyright {
    background: url(../images/ce-logo-alt.svg) no-repeat;
    font-size: 1.0rem;
    min-height: 7rem;
    min-width: 185px;
    width: 22%;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
  }
  .footer .copyright {
    margin-bottom: 5rem;
  }
  .footer .icons li {
    display: block;
  }
  .footer .icons li a {
    background-repeat: no-repeat;
    background-position: center left;
    display: inline-block;
    height: 36px;
    padding-top: 0px;
    width: 90px;
  }
  .footer .icons li a.idgf {
    background-image: url(../images/idgf.svg);
  }
  .footer .icons li a.iic {
    background-image: url(../images/iic.svg);
  }
  .footer .icons li a.gov-uk {
    background-image: url(../images/gov-uk.png);
	background-size: contain;
  }
}

@media (min-width: 1000px) {
  ul.tabs.primary li {
    font-size: 2.8rem;
    line-height: 5rem;
  }
  .banner.container.alt {
    background-size: 120%;
  }
  #entryway {
    height: 93%;
  }
  .entrypoint p,
  .entrypoint .icons,
  .community.entrypoint .icons {
    width: auto;
  }
  .marketplace.landing-page .banner.container {
    /* use gradient to tint the underlying background image */
    background:
      url(../images/global50.png) bottom right / 45% no-repeat,
      linear-gradient(
        rgba(255, 255, 255, 0.1),
        rgba(255, 255, 255, 0.1)
      ),
      linear-gradient(
        rgba(0, 105, 254, 0.75),
        rgba(0, 105, 254, 0.75)
      ),
      url(../images/Flame.png) no-repeat left bottom;
  }
  .landing-page .banner .learn-more .text {
    display: inline;
  }
  #stats {
    padding: 7.7rem 0;
  }
  #stats .icons {
    display: flex;
    flex-direction: row;
    justify-content: space-evenly;
    max-width: none;
  }
  #stats .footnote {
    margin: 4rem 5% -5rem;
  }
  #solutions .icons {
    display: flex;
    flex-flow: column wrap;
    max-height: 100rem;
  }
  #solutions .icons li {
    margin-right: 4.0rem;
    max-width: 50rem;
    width: 38%;
  }
  #interfaces > h2 {
    margin-bottom: 0;
  }
  #affiliations.container {
    max-height: 120rem;
    padding: 6.5rem 11% 4.5rem;
  }
  #contact-us.container {
    padding: 4.2rem 11% 5.2rem;
  }
  #contact-us.container > .pane-content {
	display: flex;
    flex-flow: row;
	justify-content: space-between;
  }
  #contact-us.container .section {
    margin-right: 10rem;
	max-width: 40rem;
  }
  #contact-us.container .section:last-child {
    margin-right: 0;
    max-width: 50rem;
    position: relative;
  }
  #contact-us.container form {
    margin-bottom: 0;
  }
  #contact-us.container .captcha > .form-item {
    height: 5.2rem;
    margin-bottom: 0;
  }
  #contact-us.container input.action-button {
    margin-bottom: 0;
  }
  #contact-us.container .captcha + input.action-button {
    bottom: 0;
    position: absolute;
    right: 0;
  }
  #contact-us.container:after {
    content: none;
  }
  #our-goal {
    padding-right: 50%;
  }
  #our-goal.banner p {
    width: 54rem;
  }
  #charities.banner li {
    align-items: center;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    min-height: 20rem;
  }
  #charities.banner li > .logo {
    margin: 2.5rem 5rem 2.5rem 0;
  }
  #charities.banner li > .description {
    margin: 2.5rem 0 2.5rem 5rem;
  }
  #research > .pane-content > .node > .content {
	margin: 0 auto;
	max-width: 100rem;
  }
  #dashboard .container,
  #computers .container {
    margin-bottom: 0.8rem;
    width: 26rem;
  }
  #dashboard .jackpot-progress {
    flex-grow: 0;
    width: 26rem;
  }
  #computers .pane-user-stats-compact {
    /* min-height: 52.5rem;*/
    width: auto;
  }
  #computers #mini-panel-user_stats_compact > .panel-panel > div {
    display: flex;
    flex-direction: column;
    height: 100%;
  }
  #computers #mini-panel-user_stats_compact > .panel-panel .container {
    margin-left: 0;
  }
  #dashboard .container.user-stats-overview,
  #computers .container.computer-list {
    flex-grow: 1;
    margin-left: 0.8rem;
    min-width: 50rem;
  }
  #dashboard .user-toolbox,
  #computers .user-toolbox  {
    width: 100%;
  }
  .account form input:not(.button .form-file),
  .account form select {
    width: 50%;
  }
  #forum-topics.container {
    padding-left: 5%;
    padding-right: 5%;
  }
  #forum-topics .topic-list span {
    padding: 1.8rem 3.2rem;
  }
  .comment:not(html) {
    flex-wrap: nowrap;
  }
  .comment-author .details {
    width: 16.8rem;
  }
  .comment-content {
    margin-left: 3rem;
    margin-top: 0;
  }
  .news .views-row .icon {
	background-size: 12rem;
  }
  #grants .banner:after {
	background-position: right 72%;
    background-size: 38%;
  }
  #grants .banner > .pane-content {
    padding-bottom: 0rem;
  }
  #grants #contributions-by-project table > tbody > tr > td:nth-child(n+2):nth-child(-n+3),
  #grants #contributions-by-project table > tbody > tr > th:nth-child(n+2):nth-child(-n+3) {
    display: table-cell;
  }
  #grants #more-info .pane-content {
    background-position: 6% center;
	flex-wrap: nowrap;
    padding-left: 18%;
  }
  #grants #more-info .button {
    margin: auto 0 auto 2rem;
  }
  #wolfram #detail .pane-content .section {
    margin-top: 5rem;
  }
  #wolfram #detail .pane-content .section:first-child {
    margin-top: 0;
  }
  .footer .column,
  .footer .columns {
    min-width: inherit;
  }
  .footer .copyright {
    margin-bottom: 0;
    min-height: 13rem;
    min-width: 185px;
  }
}

@media (min-width: 1400px) {
  .marketplace.landing-page .banner.container {
    /* use gradient to tint the underlying background image */
    background:
      url(../images/global.png) bottom right / 45% no-repeat,
      linear-gradient(
        rgba(255, 255, 255, 0.1),
        rgba(255, 255, 255, 0.1)
      ),
      linear-gradient(
        rgba(0, 105, 254, 0.75),
        rgba(0, 105, 254, 0.75)
      ),
      url(../images/Flame.png) no-repeat left bottom;
  }
  #how-it-works .node {
    margin: 0 auto;
    padding-left: 54rem;
  }
  #dashboard .container,
  #computers .container {
    margin-bottom: 1.6rem;
    padding: 2.4rem 2.6rem;
  }
  #dashboard .container.user-stats-overview,
  #computers .container.computer-list {
    margin-left: 1.6rem;
    padding: 2.4rem 3rem;
  }
  #dashboard .user-toolbox,
  #computers .user-toolbox {
    flex-grow: 0;
    margin-left: 1.6rem;
    width: 26rem;
  }
  #forum-topics.container {
    padding-left: 11%;
    padding-right: 11%;
  }
  #grants .banner:after {
    background-size: 64rem;
  }
  #wolfram #detail .pane-content {
    display: flex;
  }
  #wolfram #detail .pane-content .section {
    margin-right: 10rem;
	margin-top: 0;
    width: 55rem;
  }
  #wolfram #detail .pane-content .section:last-child {
    margin-right: 0;
  }
  #wolfram #detail .pane-content .section h2 {
    width: 44rem;
  }
}