/* Override a few things from the core stylesheet */
.main-navigation {
  background-color: #fff; }

.main-nav > .wrapper {
  padding-left: 30px;
  padding-right: 30px; }
  @media only screen and (min-width: 60em) {
    .main-nav > .wrapper {
      padding-left: 40px;
      padding-right: 40px;
      margin: auto;
      max-width: 1400px; } }

nav .main-menu.mobile-menu > li > a {
  margin-left: 30px; }

.main-nav.off-canvas {
  top: -77px; }

/* The header is the area included in header.inc - including navigation and all that. */
#header {
  height: auto;
  background: #333;
  z-index: 45; }
  #header:before, #header:after {
    content: "";
    display: table; }
  #header:after {
    clear: both; }
  #header > div {
    position: relative;
    padding: 10px 20px 4px; }

#logo {
  width: 100px;
  height: auto;
  padding: 0;
  text-align: center;
  font-size: 120%;
  margin: 0 auto 15px; }

@media only screen and (min-width: 60em) {
  #header > div {
    padding: 18px 40px 0;
    max-width: 1200px; }
    #header > div:before, #header > div:after {
      content: "";
      display: table; }
    #header > div:after {
      clear: both; }

  #header {
    background: #fff;
    overflow: visible;
    position: relative; }

  #logo {
    margin-right: 10px;
    margin-top: 0;
    width: 120px;
    min-height: 45px;
    float: left; }

  .menu-link {
    display: none; } }
/* Breadcrumbs */
.breadcrumb {
  float: none;
  text-transform: uppercase;
  font-weight: normal;
  padding: 0;
  display: none;
  font-size: 85%;
  margin-top: 10px;
  margin-bottom: 10px; }
  @media only screen and (min-width: 48em) {
    .breadcrumb {
      display: block; } }
  .breadcrumb a {
    color: #fff;
    text-decoration: none; }
  .breadcrumb a:hover {
    text-decoration: underline;
    color: #fff; }
  .breadcrumb ul {
    padding-left: 0px;
    margin: 0px; }

.mainnav {
  display: none;
  font-family: "Roboto Condensed", sans-serif; }
  .mainnav ul {
    position: relative;
    list-style-type: none;
    margin: 0;
    padding: 0;
    z-index: 1001; }
    .mainnav ul > li {
      position: relative;
      float: left;
      color: #404041;
      font-weight: 300;
      font-size: 120%;
      margin: 0; }
      .mainnav ul > li a {
        color: #404041;
        padding: 7px 15px; }
      .mainnav ul > li:hover {
        border-bottom: 3px solid #3FAD2A;
        padding-bottom: 10px; }
        .mainnav ul > li:hover > ul {
          visibility: visible;
          opacity: 1; }
        .mainnav ul > li:hover > a {
          color: #3FAD2A; }
      .mainnav ul > li ul,
      .mainnav ul > li ul li ul {
        visibility: hidden;
        opacity: 0;
        position: absolute;
        width: 200px;
        background: #555;
        z-index: 1001;
        box-shadow: 0 2px 2px -1px rgba(0, 0, 0, 0.055);
        -webkit-transition: opacity 0.2s linear, visibility 0.2s linear;
        -moz-transition: opacity 0.2s linear, visibility 0.2s linear;
        -o-transition: opacity 0.2s linear, visibility 0.2s linear;
        transition: opacity 0.2s linear, visibility 0.2s linear; }
      .mainnav ul > li ul {
        top: 32px;
        left: 1px; }
        .mainnav ul > li ul li {
          clear: both;
          width: 100%;
          border: 0 none;
          text-transform: initial; }
          .mainnav ul > li ul li a {
            background: none;
            color: #fff;
            text-decoration: none;
            display: inline-block;
            border: 0 none;
            float: left;
            clear: both;
            width: 200px; }
          .mainnav ul > li ul li:hover > a {
            background-color: #3FAD2A;
            color: #fff; }
          .mainnav ul > li ul li:last-child {
            border-bottom: 0 none; }
          .mainnav ul > li ul li.latest {
            font-weight: bold; }
          .mainnav ul > li ul li i {
            display: block;
            float: right; }
      .mainnav ul > li ul li ul {
        top: 0px;
        left: 200px;
        border-left: 1px solid #fff; }
    .mainnav ul a.first {
      border-left: 0 none; }
    .mainnav ul a.last {
      border-right: 0 none; }
  .mainnav > ul > li:last-of-type a {
    padding-right: 0px; }
  @media only screen and (min-width: 60em) {
    .mainnav {
      float: right;
      margin-top: 15px;
      display: block; } }

/* TITLEBAR STYLES */
.ps.titlebar {
  text-align: left;
  background-color: #333;
  color: #fff;
  /* Cuz sometimes you want a regular subtitle... like when there's a menu in the black area */
  /* Titlebar Featured Image  */ }
  .ps.titlebar > div {
    padding: 10px 30px 5px; }
  @media only screen and (min-width: 60em) {
    .ps.titlebar {
      min-height: 80px;
      padding-bottom: 0px; }
      .ps.titlebar > div {
        padding: 30px 40px 40px;
        text-align: left; } }
  .ps.titlebar .subtitle p {
    margin: 0px; }
  .ps.titlebar .basic_subtitle {
    font-size: 115%;
    font-weight: 300; }
    @media only screen and (min-width: 60em) {
      .ps.titlebar .basic_subtitle {
        font-size: 125%;
        font-family: "Roboto Condensed", sans-serif;
        margin-bottom: 10px;
        margin-top: 0px; } }
  .ps.titlebar .featured_image {
    display: none; }
    @media only screen and (min-width: 60em) {
      .ps.titlebar .featured_image {
        display: block;
        position: absolute;
        right: 50px;
        bottom: 0;
        height: 220px;
        width: 250px;
        padding: 30px;
        background-image: url(../img/white-book-bg.png);
        background-position: center;
        background-repeat: no-repeat;
        background-size: contain;
        text-align: center; }
        .ps.titlebar .featured_image img {
          width: 90%;
          -ms-transform: skew(0, -3deg);
          /* IE 9 */
          -webkit-transform: skew(0, -3deg);
          /* Safari */
          transform: skew(0, -3deg); } }
  .ps.titlebar .bg-fa {
    font-size: 200px;
    overflow: hidden;
    position: absolute;
    right: 100px;
    top: -100px;
    opacity: 0.25; }
  .ps.titlebar h1 {
    color: #fff;
    margin-bottom: 10px; }
    @media only screen and (min-width: 60em) {
      .ps.titlebar h1 {
        margin-bottom: 0px;
        padding-right: 300px; } }
    .ps.titlebar h1 + .subtitle {
      background-color: #000;
      color: #fff;
      width: auto;
      padding: 5px 20px 10px;
      margin: 10px -20px -20px; }
      @media only screen and (min-width: 48em) {
        .ps.titlebar h1 + .subtitle {
          padding: 5px 40px;
          margin: 10px -40px -30px; } }

.ps.cta-bar {
  background-color: #2ec093;
  background-image: -webkit-linear-gradient(to right, #2ec093, #3bb7d9);
  background-image: -moz-linear-gradient(to right, #2ec093, #3bb7d9);
  background-image: -ms-linear-gradient(to right, #2ec093, #3bb7d9);
  background-image: -o-linear-gradient(to right, #2ec093, #3bb7d9);
  background-image: linear-gradient(to right, #2ec093, #3bb7d9); }
  .ps.cta-bar > div {
    height: 80px;
    padding: 20px 30px; }

/* Version Selector... same structure used in drop down on version pages as the home page. */
@media only screen and (min-width: 60em) {
  .doctools {
    text-align: center; } }

/* VERSION PULL DOWN ON PRODUCT PAGES */
.titlebar .versions {
  vertical-align: top;
  text-align: left;
  font-family: "Roboto Condensed", sans-serif; }
  .titlebar .versions .selector {
    position: absolute;
    z-index: 100;
    display: none;
    border: 1px solid #666; }
  .titlebar .versions .this {
    margin-top: -5px;
    font-size: 130%;
    color: #fff;
    padding: 1px 8px 2px 0px;
    margin-bottom: 2px;
    cursor: pointer; }
    .titlebar .versions .this:after {
      content: "\F107";
      font-family: FontAwesome;
      margin-left: 15px;
      font-size: 140%; }
    .titlebar .versions .this.active:after {
      content: "\00D7";
      margin-top: -2px; }
  .titlebar .versions ul.major {
    min-width: 130px;
    margin-left: 0px;
    background-color: #444;
    border-top: 0px;
    margin-bottom: 0px;
    padding: 0; }
    .titlebar .versions ul.major > li {
      font-weight: bold; }
      .titlebar .versions ul.major > li > a {
        background-color: #555; }
    .titlebar .versions ul.major li {
      list-style-type: none;
      border-bottom: 1px solid #444; }
      .titlebar .versions ul.major li a {
        display: block;
        color: #fff;
        padding: 5px 8px;
        margin: 0; }
      .titlebar .versions ul.major li a:hover {
        color: #45aaf2;
        background-color: #EFEfEf; }
    .titlebar .versions ul.major .minor {
      margin-left: 0px;
      margin-bottom: 0px;
      font-weight: normal; }
      .titlebar .versions ul.major .minor li a {
        padding-left: 10px; }
      .titlebar .versions ul.major .minor .type {
        background-color: #999;
        color: #fff;
        padding: 0px 5px;
        display: inline-block;
        margin-top: 2px;
        border-radius: 2px;
        float: right;
        font-size: 90%; }
        .titlebar .versions ul.major .minor .type.latest {
          background-color: #45aaf2; }
  .titlebar .versions a {
    color: #555; }
  .titlebar .versions a:hover {
    color: #45aaf2; }
  @media only screen and (min-width: 60em) {
    .titlebar .versions {
      position: relative;
      margin-right: 20px; }
      .titlebar .versions .this {
        background-color: transparent;
        color: #fff; } }

.search {
  text-align: left;
  position: relative; }
  .search input {
    display: inline-block;
    border-radius: 0;
    padding: 10px;
    height: auto;
    font-size: 120%;
    border: 0;
    position: relative;
    color: #999;
    width: 100%; }
  .search i.submit {
    font-size: 120%;
    position: absolute;
    top: 10px;
    right: 10px;
    color: #3FAD2A;
    cursor: pointer; }
  @media only screen and (min-width: 60em) {
    .search {
      margin-right: -25px;
      display: inline-block;
      max-height: 40px; }
      .search input[type=text] {
        width: auto; } }

/* FOOTER STYLES */
.docs-footer > div {
  overflow: auto;
  padding-right: 20px; }
.docs-footer .product-section {
  width: 100%; }
  .docs-footer .product-section > div {
    background-color: #EFEfEf;
    overflow: auto; }
  .docs-footer .product-section h2 {
    margin-top: 0px;
    color: #777;
    text-align: left; }
  .docs-footer .product-section .post-meta {
    font-size: 85%;
    color: #999; }
  .docs-footer .product-section ul {
    margin-left: 0px;
    width: 50%;
    float: left;
    list-style-type: none; }
@media only screen and (min-width: 60em) {
  .docs-footer {
    position: absolute;
    bottom: 100px;
    height: 80px;
    width: 100%;
    /* Height of the footer */ }
    .docs-footer .product-section {
      width: 50%;
      float: left; } }

.post .post-meta {
  margin: 0 0 40px;
  font-size: 120%;
  color: #999; }

.loading-sections {
  text-align: center;
  padding: 10%;
  font-size: 400%;
  color: #999; }

.product-sections > div {
  visibility: hidden;
  overflow: auto;
  padding-bottom: 0px; }
  @media only screen and (min-width: 48em) {
    .product-sections > div {
      padding-right: 20px; } }

.product-section {
  padding-bottom: 20px; }
  .product-section > div {
    position: relative;
    background-color: #fff;
    width: 100%; }
  .product-section .section_content {
    padding: 10px 13px; }
  .product-section .icon {
    display: none;
    text-align: center;
    margin-top: 15px; }
    .product-section .icon img {
      width: 80px; }
  .product-section h2 {
    font-size: 125%;
    line-height: 1.3;
    text-transform: uppercase;
    margin: 10px 0 30px; }
  .product-section i.fa {
    font-size: 80%; }
  .product-section .pdf-link {
    float: right;
    position: relative;
    top: -2px;
    padding-right: 2px; }
    .product-section .pdf-link img {
      height: 20px; }
  .product-section .title {
    margin-bottom: 5px; }
    .product-section .title:hover {
      background-color: #f9f8f8; }
    .product-section .title .desktop {
      display: none; }
  @media only screen and (min-width: 48em) {
    .product-section {
      padding-right: 20px;
      float: left;
      width: 50%; }
      .product-section .icon {
        display: block; }
      .product-section h2 {
        text-align: center; }
      .product-section .title .pdf-link {
        visibility: hidden;
        opacity: 0; }
      .product-section .title:hover .pdf-link {
        visibility: visible;
        opacity: 1; }
      .product-section .title .mobile {
        display: none; }
      .product-section .title .desktop {
        display: inline-block; } }
  @media only screen and (min-width: 60em) {
    .product-section {
      width: 33.3%; } }

#section-releasenotes {
  width: 100%;
  clear: both; }
  #section-releasenotes h2 {
    display: none; }
  #section-releasenotes .title {
    margin-bottom: 0px; }
  #section-releasenotes .icon {
    display: none; }

.bk_contents {
  display: none;
  padding-left: 250px;
  width: 800px;
  padding-top: 10px; }
  .bk_contents h3 {
    margin-bottom: 15px;
    margin-top: 0px; }
  .bk_contents .cover {
    float: left;
    width: 200px;
    margin-left: -230px; }
  .bk_contents .cover img {
    box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.2); }
  .bk_contents .pdf .btn {
    width: 200px;
    margin-top: 20px; }
  .bk_contents ol {
    margin-left: 25px;
    padding-left: 0px; }
  .bk_contents ol > li {
    padding-bottom: 5px;
    font-weight: 400; }
  .bk_contents ol ol {
    padding-top: 5px;
    margin-left: 0px; }
  .bk_contents ol ol > li {
    padding-bottom: 0px;
    margin-bottom: 0px;
    font-weight: 300;
    font-size: 85%;
    list-style-type: none; }

.related-projects {
  bottom: 0px;
  padding: 10px;
  border-top: 10px solid #fff;
  background-color: #EFEfEf;
  width: 100%;
  overflow: auto;
  display: none; }
  .related-projects h3 {
    background-color: #aaa;
    color: #fff;
    font-size: 100%;
    text-transform: uppercase;
    padding: 5px 10px;
    margin: -10px -10px 20px; }
  .related-projects ul {
    margin-left: 0px;
    width: 50%;
    float: left;
    list-style-type: none;
    padding-left: 15px; }

/* These provide exceptions and overrides to the standard web CSS */
body.docs {
  background-color: #f9f8f8; }
  body.docs .bg-fa {
    display: none; }
  body.docs .titlebar .subtitle {
    display: none; }
  body.docs .lowerbody .ps > div {
    background-color: transparent; }
  body.docs h2 {
    font-weight: bold;
    color: #404041; }
  body.docs .product-section .related-projects {
    border-top: 0px;
    background: #fff; }
    body.docs .product-section .related-projects h3 {
      background-color: #f9f8f8;
      color: #f9f8f8;
      font-size: 90%; }
  body.docs #section-data_access .related-projects h3 {
    color: #555; }
  body.docs .shared_links a {
    color: #000; }
    body.docs .shared_links a:hover {
      color: #45aaf2; }

body.posts .lowerbody .ps > div {
  background-color: #fff; }

/* GENERAL OVERRIDES TO THE OVERLAY */
.top-form .cta-block {
  height: 130px; }
  @media only screen and (min-width: 60em) {
    .top-form .cta-block {
      height: 300px; } }

/* LUCENE SEARCH OVERLAY */
.lucene-overlay {
  position: fixed;
  z-index: 1;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  background: white;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  transition: all 0.5s ease;
  -moz-transform: translateY(100%);
  -o-transform: translateY(100%);
  -ms-transform: translateY(100%);
  -webkit-transform: translateY(100%);
  transform: translateY(100%);
  visibility: hidden; }

.lucene-active {
  overflow: hidden !important; }
  .lucene-active .hw-wrapper {
    -moz-transform: scale(0.9);
    -o-transform: scale(0.9);
    -ms-transform: scale(0.9);
    -webkit-transform: scale(0.9);
    transform: scale(0.9); }
  .lucene-active .lucene-overlay {
    -moz-transform: none;
    -o-transform: none;
    -ms-transform: none;
    -webkit-transform: none;
    transform: none;
    visibility: visible;
    z-index: 21;
    overflow-y: scroll; }

.lucene-container .top-form {
  overflow-y: auto; }
.lucene-container .close-btn {
  width: 37px;
  height: 37px;
  position: fixed;
  top: 23px;
  right: 24px;
  z-index: 11;
  border: none;
  border-radius: 50%;
  overflow: hidden;
  color: white;
  background: white;
  text-align: center;
  -webkit-transition: all 0.3s;
  transition: all 0.3s; }
.lucene-container .close-btn:hover {
  color: #1fa4d4;
  background: white; }
.lucene-container .close-btn:hover span {
  top: 0; }
.lucene-container .close-btn:after {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  opacity: 0;
  visibility: hidden;
  content: "";
  height: 2px;
  background: #1fa4d4;
  -webkit-transform: translateY(15px);
  -ms-transform: translateY(15px);
  transform: translateY(15px);
  -webkit-transition: all 0.3s;
  transition: all 0.3s; }
.lucene-container .close-btn span {
  position: relative;
  top: -36px;
  float: left;
  background: url(https://hortonworks.com/wp-content/themes/hortonworks/images/close-icon.png);
  height: 64px;
  width: 100%; }

.lucene-overlay .lucene-results {
  padding-top: 20px; }
.lucene-overlay .bg-img {
  height: 150px; }
.lucene-overlay .search {
  margin: auto;
  display: block;
  margin-bottom: 20px;
  padding: 0 10px; }
  .lucene-overlay .search form {
    margin-top: 0;
    text-align: left; }
  .lucene-overlay .search input {
    border: 1px solid #e6e6e6;
    width: 100%; }
  .lucene-overlay .search .submit {
    right: 25px; }
.lucene-overlay .waiting {
  text-align: center;
  margin-top: 150px; }
.lucene-overlay .fail {
  max-width: 980px;
  margin: auto;
  border: 3px solid #e6e6e6;
  background-color: #f9f8f8;
  padding: 20px;
  border-radius: 10px; }
.lucene-overlay .more-results {
  text-align: center;
  font-weight: bold; }
  .lucene-overlay .more-results i {
    display: block;
    font-size: 300%; }
.lucene-overlay .filters {
  margin: auto;
  margin-bottom: 60px;
  font-size: 90%;
  color: #777;
  padding: 0 10px; }
  .lucene-overlay .filters .product {
    background-color: #f9f8f8;
    padding: 2px 5px;
    margin-right: 5px;
    margin-bottom: 5px;
    border: 1px solid #ccc;
    border-radius: 3px;
    display: inline-block;
    position: relative; }
    .lucene-overlay .filters .product.active {
      border-color: #45aaf2; }
    .lucene-overlay .filters .product.inactive {
      background-color: #fff;
      color: #bbb;
      border-color: #f6f6f6; }
  .lucene-overlay .filters .name {
    display: inline-block; }
  .lucene-overlay .filters .versions {
    display: inline-block;
    position: relative; }
  .lucene-overlay .filters .this {
    display: inline; }
  .lucene-overlay .filters .selector {
    position: absolute;
    top: 0;
    left: -2px;
    background-color: #fff;
    border: 1px solid #e6e6e6;
    display: none;
    z-index: 15; }
    .lucene-overlay .filters .selector ul.major {
      margin-left: 0px;
      color: #444;
      border-top: 0px;
      margin-bottom: 0px;
      padding: 0;
      width: 50px; }
      .lucene-overlay .filters .selector ul.major > li {
        position: relative; }
        .lucene-overlay .filters .selector ul.major > li .expand {
          display: inline;
          padding: 0 4px;
          color: #fff; }
        .lucene-overlay .filters .selector ul.major > li .minor {
          display: none;
          border-left: 1px solid #999;
          margin-left: 0px;
          position: absolute;
          top: 0px;
          left: 50px;
          margin-left: 0px;
          margin-bottom: 0px;
          font-weight: normal; }
          .lucene-overlay .filters .selector ul.major > li .minor li a {
            padding: 5px 7px; }
        .lucene-overlay .filters .selector ul.major > li:hover .minor {
          display: block; }
      .lucene-overlay .filters .selector ul.major li {
        list-style-type: none;
        border-bottom: 1px solid #444;
        padding: 0 2px;
        background-color: #555; }
        .lucene-overlay .filters .selector ul.major li a {
          color: #fff;
          padding: 5px 3px;
          margin: 0; }
        .lucene-overlay .filters .selector ul.major li:hover {
          background-color: #333; }
          .lucene-overlay .filters .selector ul.major li:hover a {
            color: #45aaf2; }
        .lucene-overlay .filters .selector ul.major li.current {
          font-weight: bold; }
  .lucene-overlay .filters .filter {
    display: inline-block;
    border-left: 1px solid #e6e6e6;
    padding-left: 5px; }
.lucene-overlay .results {
  margin: auto;
  padding: 0 10px; }
.lucene-overlay .book-group {
  position: relative;
  border-radius: 2px;
  border-top-left-radius: 0;
  background-color: #f9f8f8;
  margin: 30px 0 60px;
  border: 1px solid #e9e9e9;
  padding: 20px; }
  .lucene-overlay .book-group .book {
    position: absolute;
    top: -36px;
    left: 8px;
    font-weight: bold;
    font-size: 90%;
    padding: 3px 10px 8px;
    border-top-left-radius: 2px;
    background-color: #f9f8f8;
    border-top-right-radius: 2px;
    border: 1px solid #e9e9e9;
    border-bottom: 0; }
    .lucene-overlay .book-group .book a {
      color: #555; }
    .lucene-overlay .book-group .book a:hover {
      text-decoration: underline; }
    .lucene-overlay .book-group .book:before {
      font-family: FontAwesome;
      content: "\f02d";
      padding-right: 8px;
      font-weight: normal; }
  .lucene-overlay .book-group .product {
    position: absolute;
    top: -30px;
    right: 10px;
    font-weight: bold;
    color: #999;
    font-size: 90%; }
.lucene-overlay .result {
  margin-bottom: 20px; }
  .lucene-overlay .result .title {
    font-family: "Roboto Condensed", sans-serif;
    font-size: 120%; }
  .lucene-overlay .result .chapter {
    display: inline-block;
    font-weight: bold; }
  .lucene-overlay .result .section {
    display: inline-block;
    font-weight: bold; }
    .lucene-overlay .result .section:before {
      content: " | ";
      font-weight: 100; }
  .lucene-overlay .result .excerpt {
    font-size: 90%; }
    .lucene-overlay .result .excerpt b {
      font-weight: 300; }
  .lucene-overlay .result .url {
    font-size: 90%; }
    .lucene-overlay .result .url a {
      color: #3FAD2A; }
@media only screen and (min-width: 60em) {
  .lucene-overlay .bg-img {
    height: auto; }
  .lucene-overlay .search,
  .lucene-overlay .filters,
  .lucene-overlay .results {
    width: 75%;
    max-width: 1000px; } }

/* Layout for the Docs Home Page */
body.indexpages .titlebar {
  background: #000; }
  body.indexpages .titlebar > div {
    background: url(../img/docs_header_bg.jpg) center left no-repeat;
    background-size: auto 100%;
    padding: 80px 40px 80px; }
    @media only screen and (min-width: 48em) {
      body.indexpages .titlebar > div {
        background-position: center right; } }
  body.indexpages .titlebar .featured_image {
    display: none; }
  body.indexpages .titlebar .breadcrumb {
    display: none; }

.mainindex {
  /* PULL DOWN MECHANISM - STYLES FOR SELECTOR ON HOME PAGE */ }
  .mainindex > div {
    padding-right: 10px; }
  .mainindex .section.products {
    overflow: auto; }
    .mainindex .section.products .product {
      text-align: center;
      width: calc(100% - 10px);
      background-color: #fff;
      padding: 10px 20px;
      border: 2px solid #e6e6e6;
      float: left;
      margin: 0 30px 30px 0px;
      margin-bottom: 30px; }
      .mainindex .section.products .product:hover {
        border-color: #45aaf2; }
      .mainindex .section.products .product .icon img {
        width: 80%; }
    @media only screen and (min-width: 48em) {
      .mainindex .section.products .product {
        width: calc(50% - 30px);
        padding: 20px 20px; } }
    @media only screen and (min-width: 60em) {
      .mainindex .section.products .product {
        width: calc(33.3% - 30px);
        padding: 20px 20px; } }
  @media only screen and (min-width: 60em) {
    .mainindex h3 {
      padding-top: 20px; }
    .mainindex ul.products > li {
      float: left;
      padding: 20px 0px; }
      .mainindex ul.products > li a {
        border-right: 1px solid #d6d6d6; }
    .mainindex .section.archive {
      display: block; } }
  .mainindex .versions {
    display: none;
    margin-top: -20px;
    vertical-align: top;
    font-family: "Roboto Condensed", sans-serif; }
    .mainindex .versions .this {
      margin-top: -5px;
      font-size: 130%;
      padding: 1px 8px 2px 0px;
      margin-bottom: 2px;
      cursor: pointer; }
      .mainindex .versions .this:after {
        content: "\F107";
        font-family: FontAwesome;
        margin-left: 15px;
        font-size: 140%; }
      .mainindex .versions .this.active:after {
        content: "\00D7";
        margin-top: -2px; }
    .mainindex .versions h3 {
      padding-top: 0;
      margin-top: 0;
      margin-bottom: 20px; }
    .mainindex .versions .selector {
      position: absolute;
      z-index: 100;
      display: none;
      left: 0;
      padding-top: 21px;
      width: 100%; }
      .mainindex .versions .selector > div {
        display: inline-block;
        min-width: 450px;
        width: auto;
        margin: auto;
        border: 1px solid #45aaf2;
        box-shadow: 0 5px 15px rgba(0, 0, 0, 0.25);
        background-color: #fff;
        padding: 20px 40px;
        text-align: center; }
    .mainindex .versions ul.major {
      text-align: left;
      margin-left: 0px;
      background-color: #fff;
      border-top: 0px;
      margin-bottom: 0px; }
      .mainindex .versions ul.major > li {
        position: relative;
        font-weight: bold;
        float: left;
        border-left: 2px solid #45aaf2;
        margin-right: 10px;
        padding: 0px 13px 2px; }
        .mainindex .versions ul.major > li:before {
          content: url(../img/version-hex.png);
          position: absolute;
          top: 0;
          left: -16px; }
      .mainindex .versions ul.major li {
        list-style-type: none; }
        .mainindex .versions ul.major li a {
          display: block;
          padding: 0 8px 3px;
          margin: 2px 0; }
        .mainindex .versions ul.major li a:hover {
          color: #45aaf2; }
      .mainindex .versions ul.major .minor {
        margin-left: 0px;
        margin-bottom: 0px;
        font-weight: normal; }
        .mainindex .versions ul.major .minor > li {
          background-color: #fff; }
    .mainindex .versions a {
      color: #555; }
    .mainindex .versions a:hover {
      color: #45aaf2; }
    @media only screen and (min-width: 60em) {
      .mainindex .versions .product:nth-child(3n+3) .selector {
        text-align: right; }
        .mainindex .versions .product:nth-child(3n+3) .selector .arrow_box:after, .mainindex .versions .product:nth-child(3n+3) .selector .arrow_box:before {
          left: auto;
          right: 200px; }
      .mainindex .versions .product:nth-child(3n+1) .selector {
        text-align: left; }
        .mainindex .versions .product:nth-child(3n+1) .selector .arrow_box:after, .mainindex .versions .product:nth-child(3n+1) .selector .arrow_box:before {
          left: 200px; } }
  @media only screen and (min-width: 48em) {
    .mainindex .versions {
      display: block; }
    .mainindex .product:nth-child(even) .selector {
      text-align: right; }
      .mainindex .product:nth-child(even) .selector .arrow_box:after, .mainindex .product:nth-child(even) .selector .arrow_box:before {
        left: auto;
        right: 200px; }
    .mainindex .product:nth-child(odd) .selector {
      text-align: left; }
      .mainindex .product:nth-child(odd) .selector .arrow_box:after, .mainindex .product:nth-child(odd) .selector .arrow_box:before {
        left: 200px; } }
  @media only screen and (min-width: 60em) {
    .mainindex .product:nth-child(3n+3) .selector {
      text-align: right; }
      .mainindex .product:nth-child(3n+3) .selector .arrow_box:after, .mainindex .product:nth-child(3n+3) .selector .arrow_box:before {
        left: auto;
        right: 200px; }
    .mainindex .product:nth-child(3n+2) .selector {
      text-align: center; }
      .mainindex .product:nth-child(3n+2) .selector .arrow_box:after, .mainindex .product:nth-child(3n+2) .selector .arrow_box:before {
        left: auto;
        right: auto; }
    .mainindex .product:nth-child(3n+1) .selector {
      text-align: left; }
      .mainindex .product:nth-child(3n+1) .selector .arrow_box:after, .mainindex .product:nth-child(3n+1) .selector .arrow_box:before {
        left: 200px; } }

.arrow_box {
  position: relative;
  background: #88b7d5;
  border: 1px solid #45aaf2; }

.arrow_box:after, .arrow_box:before {
  bottom: 100%;
  left: 50%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none; }

.arrow_box:after {
  border-color: rgba(136, 183, 213, 0);
  border-bottom-color: #fff;
  border-width: 20px;
  margin-left: -20px; }

.arrow_box:before {
  border-color: rgba(194, 225, 245, 0);
  border-bottom-color: #45aaf2;
  border-width: 22px;
  margin-left: -22px; }
