presidential-innovation-fellows/hack-the-paygap

View on GitHub
css/main.scss

Summary

Maintainability
Test Coverage
---
# Only the main Sass file needs front matter (the dashes are enough)
---
@charset "utf-8";

// Import partials from `sass_dir` (defaults to `_sass`)
// These are the U.S. Design Standards variables (color definitions, etc.)
@import "all";

@media screen and (max-width: 600px) { .ood-mobile-hide { display: none; } }
@media screen and (max-width: 1200px) { .ood-narrow-hide { display: none; } }
@media screen and (min-width: 1201px) { .ood-wide-hide { display: none; } }

h1, h2, h3, h4, h5, h6 {
  color: $color-primary-darker;
}

h2 {
  font-size: 4rem;
}

h3 {
  color: $color-secondary;
}

.action-tile h2 { margin-top: .5em;  }
.action-tile-left h2 { position: relative; left: -50px}
.action-tile-middle h2 { position: relative; left: -40px}
.action-tile-right h2 { position: relative; left: -30px}


.action { padding: 0; text-align: center; }
.action > div { padding: 1.5em 0; }
.action h2 { color: #212121; font-family: 'Source Sans Pro'; font-weight: 700; font-size: 34px; line-height: 1.3em/44px; }
.action a { text-decoration: none; }
.action a p { color: #5b616b; }
.action p { text-align: center; margin-left: auto; margin-right: auto}

.action i.fa { position: relative; display: inline-block; width: 9em; padding: 1.75em 0 0.75em 0; margin-bottom: 1.5em; border-top-left-radius: 5px; border-top-right-radius: 5px; background-color: #cd2026; }
.action i.fa.ood-first { background-color: #112e51; }
.action i.fa.ood-first:after { border-top-color: #112e51; }
.action i.fa.ood-last { background-color: #757575; }
.action i.fa.ood-last:after { border-top-color: #757575; }
.action i.fa:before { -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; font-family: FontAwesome; font-style: normal; font-weight: normal; text-transform: none !important; font-size: 4.5em; line-height: 1em; color: #ffffff; }
.action i.fa:after { content: ''; position: absolute; bottom: -2.00em; left: 0; border-top: solid 2em #cd2026; border-left: solid 4.5em transparent; border-right: solid 4.5em transparent; }
@media screen and (min-width: 600px) { .ood-nav .ood-middle { position: relative; }
  .ood-nav .ood-middle:before, .ood-nav .ood-middle:after { content: ''; width: 32px; height: 100%; position: absolute; top: 0; display: block; z-index: -1; }
  .ood-nav .ood-middle:before { left: -24px; box-shadow: 32px 0 0 0 #fff, 0 -32px 0 0 #fff, 0 32px 0 0 #fff, 32px 32px 0 0 #fff, 32px -32px 0 0 #fff, 0 0 32px 0 rgba(0, 0, 0, 0.15); }
  .ood-nav .ood-middle:after { right: -24px; box-shadow: -32px 0 0 0 #fff, 0 -32px 0 0 #fff, 0 32px 0 0 #fff, -32px 32px 0 0 #fff, -32px -32px 0 0 #fff, 0 0 32px 0 rgba(0, 0, 0, 0.15); } }



.build label {
  display: block;
  margin-top: 3rem;
  max-width: 100rem;
}

.build .build-col {
  margin:auto; max-width: 53rem
}


i.fa-github {
  margin-left: 0.15em;
}

main > article,
main > section,
main > div.section {
  overflow: auto; /* defeat margin collapse */
}

.usa-disclaimer,
main > section > * ,
main > div.section > * ,
body > footer {
  padding-left: $site-margins;
  padding-right: $site-margins;
}

body {
  color: $color-base;
}

header.ood-main {
  text-align: center;

  p {
    margin-left: auto;
    margin-right: auto;
  }
}

main > section,
main > div.section {
  padding-bottom: $grid-margins;
}

main > .ood-alt {
  background-color: $color-gray-cool-light;
}

main > .ood-alt2 {
  background-color: $color-gray-lightest;
}

.gender-banner {
  background-image: linear-gradient(to bottom, $brand-red, darken($brand-red, 5));
  background-repeat: no-repeat;
  background-size: cover;
  padding: 0;

  h1 {
    color: $color-white;
    font-size: 4em;
    font-weight: 100;
  }

  .banner-content {
    left: 0;
    max-width: 35em;
    padding-left: 3rem;
    position: absolute;
    z-index: 1000;
  }

  .logo {
    width: 350px;
  }

  .usa-grid {
    @include clearfix;
    box-sizing: border-box;
    min-height: 500px;
    position: relative;
  }

  .woman {
    bottom: 0;
    position: absolute;
    right: 0;
    width: 34em;
    z-index: 0;

    img {
      margin: 0;
      vertical-align: bottom;
    }
  }
}

.hackathon {
  padding: 5em 0;

  h1 {
    font-size: 2.75em;
    margin-top: 0;
  }

  p {
    font-size: 1.2em;
  }
}

.pledge {
  padding-bottom: 4em;

  h1 {
    color: $brand-red;
  }

  i {
    margin-left: 0.2em;
  }

  img {
    border-radius: 0.5em;
  }

  li {

    &::after {
      display: none;
    }

    &::before {
      display: none;
    }
  }

  .hackpaygap-tweets {
    font-size: 0.85em;
    margin-right: 0;

    li {
      background-color: $color-white;
      border-radius: 0.25em;
      display: block;
      margin-bottom: 1em;
      padding: 0.75em 1em;
    }

    p {
      margin: 0;
    }

    .interact {
      display: none;
    }

    .timePosted {
      display: none;
    }

    .user {
      @include clearfix;
      line-height: 1em;
      margin-bottom: 0.25em;

      img {
        margin-right: 0.5em;
        width: 40px;
      }

      span {
        display: block;
        float: left;

        &:nth-child(2),
        &:nth-child(3),
        &:nth-child(4) {
          padding-top: 0.75em;
        }

        &:nth-child(3) {
          margin-left: 0.3em;
        }

        &:last-child {
          color: lighten($color-primary, 30);
        }
      }
    }
  }

  .pledge-content {
    padding-top: 2em;
  }

  .usa-button {
    background-color: $brand-red;

    &:hover {
      background-color: darken($brand-red, 15);
    }

    &.usa-button-outline {
      box-shadow: inset 0 0 0 2px $brand-red;
      color: $brand-red;

      &:hover {
        background-color: $color-white;
        box-shadow: inset 0 0 0 2px darken($brand-red, 15);
        color: darken($brand-red, 15);
      }
    }
  }
}

.ood-youtube {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 51%;

  iframe {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
  }
}

.ood-join {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}

.ood-fact-sheet {
  padding: 1em;
  background-color: #FFF;
}

.ood-nav {
  padding: 0;
  text-align: center;

  & > div {
    padding: 1.5em 0;
  }

  h2 {
    color: $color-base;
    font-family: 'Source Sans Pro';
    font-weight: 700;
    font-size: 34px;
    line-height: 1.3em/44px;
  }

  a {
    text-decoration: none;

    p {
      color: $color-gray;
    }
  }

  i.fa {
    position: relative;
    display: inline-block;
    width: 9em;
    padding: 1.75em 0 0.75em 0;
    margin-bottom: 1.5em;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
    background-color: $color-secondary-dark;

    &.ood-first {
      background-color: $color-primary-darkest;

      &:after {
        border-top-color: $color-primary-darkest;
      }
    }

    &.ood-last {
      background-color: $color-gray-medium;

      &:after {
        border-top-color: $color-gray-medium;
      }
    }

    &:before {
      -moz-osx-font-smoothing: grayscale;
      -webkit-font-smoothing: antialiased;
      font-family: FontAwesome;
      font-style: normal;
      font-weight: normal;
      text-transform: none !important;
      font-size: 4.5em;
      line-height: 1em;
      color: $color-white;
    }

    &:after {
      content: '';
      position: absolute;
      bottom: -2.00em;
      left: 0;
      border-top: solid 2em $color-secondary-dark;
      border-left: solid 4.5em transparent;
      border-right: solid 4.5em transparent;
    }
  }

  @media screen and (min-width: 600px) {
    .ood-middle {
      position: relative;

      &:before,
      &:after {
        content: '';
        width: 32px;
        height: 100%;
        position: absolute;
        top: 0;
        display: block;
        z-index: -1;
      }

      &:before {
        left: -24px;
        box-shadow: 32px 0 0 0 #fff, 0 -32px 0 0 #fff, 0 32px 0 0 #fff, 32px 32px 0 0 #fff, 32px -32px 0 0 #fff, 0 0 32px 0 rgba(0, 0, 0, 0.15);
      }

      &:after {
        right: -24px;
        box-shadow: -32px 0 0 0 #fff, 0 -32px 0 0 #fff, 0 32px 0 0 #fff, -32px 32px 0 0 #fff, -32px -32px 0 0 #fff, 0 0 32px 0 rgba(0, 0, 0, 0.15);
      }
    }
  }
}

.ood-nav-spacer {
  height: 3.5em;
  padding: 0;
  margin: 0;
}

.usa-font-lead {
  color: $color-gray-dark;
}

.usa-grid-full {
  max-width: none;
}

.ood-repo {
  margin: 0;
  font-size: smaller;

  @media screen and (max-width: 480px) {
    margin-top: 1em;
  }

  @media screen and (min-width: 480px) {
    float: right;
  }

  @media screen and (min-width: 481px) and (max-width: 600px) {
    // ugly hack, but no simple IU that looks good in this width band
    display: none;
  }
}

.ood-gallery-item {
  background-color: $color-white;
  border-bottom: 1px solid $color-gray-light;
  margin-bottom: $grid-margins;
}

.ood-gallery-item-image-container {
  overflow: hidden;
  background-repeat: no-repeat;
  background-position: center center;

  &:before {
    display: block;
    content: "";
    width: 100%;
  }
}

.ood-gallery-item-content {
  color: $color-gray;
}

.ood-gallery-item-commitment {
  padding: $grid-margins;

  .ood-gallery-item-image-container {
    background-color: $color-white;
    background-size: contain;

    &:before {
      padding-top: 346px / 957px * 100%; /* images should be 957 x 346 px */
    }
  }
}

.ood-gallery-item-data-consumer {
  .ood-gallery-item-content {
    padding: 0 $grid-margins $grid-margins;
  }

  .ood-gallery-item-image-container {
    background-color: $color-gray-lightest;
    background-size: cover;
    border-bottom: 1px solid $color-gray-lighter;

    &:before {
      padding-top: 442px / 623px * 100%; /* images should be 623 x 442 px */
    }
  }
}

.ood-quotation {
  color: $color-primary-alt-darkest;
  margin: $grid-margins*1.5 auto 0;
  padding: 0 $site-margins;
}

.ood-bg-icon {
  font-size: 15vw;
  color: $color-gray-lightest;
  text-align: center;
  padding-top: .1em;
}

.usa-background-dark {
  h1, h2, h3, h4, h5, h6 {
    color: $color-white;
  }
}

body > footer {
  .usa-footer-secondary_section {
    background-color: $color-gray-dark;
    color: $color-white;
    padding-bottom: 0;

    a {
      color: $color-gray-lighter;
    }
  }

  address > :last-child {
    margin-bottom: $site-margins;
  }

  .usa-footer-logo-img {
    max-height: 10rem;
    max-width: 10rem;
    vertical-align: middle;
    margin-right: $grid-margins;
    margin-bottom: $grid-margins;
  }
}