@font-face {
  font-family: 'Roboto';
  src: url("/fonts/Roboto-Light.woff2") format("woff2"), url("/fonts/Roboto-Light.woff") format("woff");
  font-weight: 300;
  font-style: normal; }
@font-face {
  font-family: 'Roboto';
  src: url("/fonts/Roboto-LightItalic.woff2") format("woff2"), url("/fonts/Roboto-LightItalic.woff") format("woff");
  font-weight: 300;
  font-style: italic; }
@font-face {
  font-family: 'Roboto';
  src: url("/fonts/Roboto-Regular.woff2") format("woff2"), url("/fonts/Roboto-Regular.woff") format("woff");
  font-weight: 400;
  font-style: normal; }
@font-face {
  font-family: 'Roboto';
  src: url("/fonts/Roboto-Medium.woff2") format("woff2"), url("/fonts/Roboto-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal; }
@font-face {
  font-family: 'Roboto';
  src: url("/fonts/Roboto-Bold.woff2") format("woff2"), url("/fonts/Roboto-Bold.woff") format("woff");
  font-weight: 700;
  font-style: normal; }
*, *:before, *:after {
  margin: 0;
  padding: 0;
  box-sizing: border-box; }

body {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
          flex-direction: column;
  min-width: 1080px;
  height: 100%;
  min-height: 100vh;
  line-height: 1;
  overflow-y: scroll;
  color: #333;
  font-family: 'Roboto', sans-serif;
  font-size: 16px;
  font-weight: 300; }

a {
  color: #347CAB; }
  a:hover, a:active {
    color: #195F8D; }

.content-link {
  border-bottom: 1px solid rgba(52, 124, 171, 0.3);
  cursor: pointer;
  outline: 0;
  text-decoration: none;
  transition: all .2s ease; }
  .content-link:hover, .content-link:active {
    border-bottom: 1px solid #0D476C; }

.external:after {
  content: " ";
  background-image: url("/images/ui/external.svg");
  padding-right: 20px;
  background-position: 5px 0px;
  background-size: 15px 15px;
  background-repeat: no-repeat; }

ul, ol {
  list-style: none; }

dt {
  font-weight: bold; }

dt, dd {
  float: left; }

dt {
  width: 70px;
  clear: left; }
  dt:after {
    content: ":"; }

img {
  max-width: 100%; }

iframe {
  vertical-align: top; }

.pull-left {
  float: left; }

.pull-right {
  float: right; }

.spacer-left {
  margin-left: 8px; }

.spacer-right {
  margin-right: 8px; }

.spacer-top {
  margin-top: 8px; }

.big-spacer-top {
  margin-top: 16px; }

.clearfix:before, .clearfix:after {
  display: table;
  content: "";
  line-height: 0; }
.clearfix:after {
  clear: both; }

.page-wrapper {
  -webkit-flex: 1 0 auto;
          flex: 1 0 auto;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
          flex-direction: column; }

.page-container {
  width: 100%;
  min-width: 960px;
  max-width: 1220px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px; }

.page-icon {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
          justify-content: center;
  -webkit-align-items: center;
          align-items: center;
  -webkit-flex-shrink: 0;
          flex-shrink: 0;
  width: 70px;
  height: 70px;
  border: 2px solid white;
  border-radius: 9px; }
  .page-icon span {
    display: inline-block;
    width: 35px;
    height: 35px; }

#navbar {
  background-color: #fff;
  position: fixed;
  top: -100px;
  width: 100%;
  display: block;
  transition: top 0.3s;
  font-size: 16px;
  font-weight: normal; }

.page-header {
  background-color: #f9f9fb;
  height: 81px;
  width: 100%;
  z-index: 10;
  padding-top: 20px;
  border-top: 5px solid #499cd2; }
  .page-header > .page-container {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
            justify-content: space-between;
    -webkit-align-items: center;
            align-items: center; }
  .page-header a {
    display: -webkit-flex;
    display: flex;
    text-decoration: none;
    cursor: pointer; }

.page-header-logo {
  height: 60px; }

.page-header-logo-scroll {
  height: 90px; }
  .page-header-logo-scroll img {
    margin-top: 13px; }

.page-header-nav {
  display: -webkit-flex;
  display: flex;
  margin: 0 -30px 0 auto; }
  .page-header-nav > li {
    line-height: 1;
    border: none;
    background: none;
    font-family: inherit;
    font-size: inherit;
    -webkit-appearance: none;
    padding: 0; }
    .page-header-nav > li > .active.page-header-nav-section {
      color: #347CAB; }
    .page-header-nav > li > .external::after {
      transition: all .2s ease;
      opacity: 0; }
    .page-header-nav > li > .external:hover::after {
      opacity: 1; }
  .page-header-nav > li:hover,
  .page-header-nav > li:active,
  .page-header-nav > li:focus {
    outline: none; }
    .page-header-nav > li:hover .page-sub-header,
    .page-header-nav > li:active .page-sub-header,
    .page-header-nav > li:focus .page-sub-header {
      display: block; }
    .page-header-nav > li:hover .page-header-nav-section,
    .page-header-nav > li:active .page-header-nav-section,
    .page-header-nav > li:focus .page-header-nav-section {
      color: #347CAB; }
  .page-header-nav > li:hover .page-sub-header {
    z-index: 200; }
  .page-header-nav > li:hover .page-header-nav-section {
    border-bottom-color: transparent; }

.page-header-js {
  background-color: #f9f9fb;
  height: 60px;
  width: 100%;
  z-index: 10;
  border-bottom: 1px solid #cfd3d7; }
  .page-header-js > .page-container {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
            justify-content: space-between;
    -webkit-align-items: center;
            align-items: center; }
  .page-header-js a {
    display: -webkit-flex;
    display: flex;
    text-decoration: none;
    cursor: pointer; }

.page-header-logo {
  height: 90px; }
  .page-header-logo img {
    margin-top: 13px; }

.page-header-nav {
  display: -webkit-flex;
  display: flex;
  margin: -23px -30px 0 auto; }
  .page-header-nav > li {
    line-height: 1;
    border: none;
    background: none;
    font-family: inherit;
    font-size: inherit;
    -webkit-appearance: none;
    padding: 0; }
    .page-header-nav > li > .active.page-header-nav-section {
      color: #347CAB; }
    .page-header-nav > li > .external::after {
      transition: all .2s ease;
      opacity: 0; }
    .page-header-nav > li > .external:hover::after {
      opacity: 1; }
  .page-header-nav > li:hover,
  .page-header-nav > li:active,
  .page-header-nav > li:focus {
    outline: none; }
    .page-header-nav > li:hover .page-sub-header,
    .page-header-nav > li:active .page-sub-header,
    .page-header-nav > li:focus .page-sub-header {
      display: block; }
    .page-header-nav > li:hover .page-header-nav-section,
    .page-header-nav > li:active .page-header-nav-section,
    .page-header-nav > li:focus .page-header-nav-section {
      color: #347CAB; }
  .page-header-nav > li:hover .page-sub-header {
    z-index: 200; }
  .page-header-nav > li:hover .page-header-nav-section {
    border-bottom-color: transparent; }

.page-header-nav-section {
  display: block;
  padding: 16px 20px;
  border-bottom: 5px solid transparent;
  color: #191919;
  font-weight: 500;
  text-transform: uppercase;
  cursor: default;
  max-height: 50px; }

.page-sub-header {
  position: absolute;
  z-index: 100;
  left: inherit;
  display: none;
  background-color: #434447;
  text-align: left;
  min-width: 9em; }
  .page-sub-header:before {
    content: "";
    position: relative;
    display: inline-block;
    line-height: 0;
    width: 0;
    height: 0;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-bottom: 8px solid #434447;
    left: 35px;
    bottom: 11px; }
  .page-sub-header:after {
    display: table;
    content: "";
    line-height: 0;
    clear: both; }

.page-sub-header-nav {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
          flex-direction: column;
  vertical-align: top;
  margin-top: -13px;
  white-space: nowrap; }
  .page-sub-header-nav > li > a {
    display: inline-block;
    width: 100%;
    height: 100%;
    padding: 0.8em 20px;
    color: white;
    font-weight: 400; }
    .page-sub-header-nav > li > a:hover, .page-sub-header-nav > li > a:active {
      background-color: rgba(138, 140, 143, 0.2); }

/*
 * Imported from https://github.com/benschwarz/gallery-css
 *
 * Copyright (c) 2012 Ben Schwarz
 * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 *
 */
.gallery .control-operator:target ~ .controls .control-button, .gallery .control-button {
  color: #ccc;
  color: rgba(255, 255, 255, 0.4); }

.gallery .control-button:first-of-type, .gallery .control-button:hover, .gallery .control-operator:nth-of-type(1):target ~ .controls .control-button:nth-of-type(1), .gallery .control-operator:nth-of-type(2):target ~ .controls .control-button:nth-of-type(2) {
  color: white;
  color: rgba(255, 255, 255, 0.8); }

.gallery .item:first-of-type {
  position: static;
  pointer-events: auto;
  opacity: 1; }
.gallery .item {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  opacity: 0;
  transition: opacity .5s; }
.gallery .control-operator {
  display: none; }
.gallery .control-operator:target ~ .item {
  pointer-events: none;
  opacity: 0;
  -webkit-animation: none;
          animation: none; }
.gallery .control-operator:target ~ .controls .control-button {
  -webkit-animation: none;
          animation: none; }

.gallery {
  position: relative; }
  .gallery .item {
    height: 370px;
    text-align: center;
    background: transparent; }
    .gallery .item img {
      border-radius: 10px;
      box-shadow: 0 0 32px 19px rgba(7, 7, 6, 0.1); }
  .gallery .controls {
    position: absolute;
    bottom: 0;
    width: 100%;
    text-align: center; }
  .gallery .control-button {
    display: inline-block;
    margin: 0 .02em;
    font-size: 3em;
    text-align: center;
    text-decoration: none;
    transition: color .1s; }

@-webkit-keyframes controlAnimation-2 {
  0% {
    color: #ccc;
    color: rgba(255, 255, 255, 0.4); }
  12.5%,
	  50% {
    color: white;
    color: rgba(255, 255, 255, 0.8); }
  62.5%,
	  100% {
    color: #ccc;
    color: rgba(255, 255, 255, 0.4); } }

@keyframes controlAnimation-2 {
  0% {
    color: #ccc;
    color: rgba(255, 255, 255, 0.4); }
  12.5%,
	  50% {
    color: white;
    color: rgba(255, 255, 255, 0.8); }
  62.5%,
	  100% {
    color: #ccc;
    color: rgba(255, 255, 255, 0.4); } }
@-webkit-keyframes galleryAnimation-2 {
  0% {
    opacity: 0; }
  12.5%,
	  50% {
    opacity: 1; }
  62.5%,
	  100% {
    opacity: 0; } }
@keyframes galleryAnimation-2 {
  0% {
    opacity: 0; }
  12.5%,
	  50% {
    opacity: 1; }
  62.5%,
	  100% {
    opacity: 0; } }
.gallery .control-operator:nth-of-type(1):target ~ .item:nth-of-type(1) {
  pointer-events: auto;
  opacity: 1; }
.gallery .control-operator:nth-of-type(2):target ~ .item:nth-of-type(2) {
  pointer-events: auto;
  opacity: 1; }

.items-2.autoplay .control-button {
  -webkit-animation: controlAnimation-2 8s infinite;
          animation: controlAnimation-2 8s infinite; }
.items-2.autoplay .item {
  -webkit-animation: galleryAnimation-2 8s infinite;
          animation: galleryAnimation-2 8s infinite; }
.items-2 .control-button:nth-of-type(1),
.items-2 .item:nth-of-type(1) {
  -webkit-animation-delay: -1s;
          animation-delay: -1s; }
.items-2 .control-button:nth-of-type(2),
.items-2 .item:nth-of-type(2) {
  -webkit-animation-delay: 3s;
          animation-delay: 3s; }

.page-content {
  -webkit-flex: 1 0 auto;
          flex: 1 0 auto;
  line-height: 1.5;
  overflow: hidden; }

.page-content-stretch {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: stretch;
          align-items: stretch; }

.text-center {
  text-align: center; }

.text-excerpt {
  line-height: 1.2;
  font-size: 21px;
  font-weight: 400; }

.text-small {
  font-size: 75%; }

.styled {
  line-height: 1.5; }
  .styled h2 {
    line-height: 40px;
    font-size: 36px;
    font-weight: 400;
    overflow: hidden; }
    .styled h2 > strong {
      display: block;
      color: #4b9fd5; }
  .styled h3 {
    font-weight: 300;
    overflow: hidden;
    text-transform: uppercase; }
  .styled p {
    margin-top: 1em;
    overflow: hidden; }
  .styled pre {
    margin-top: 1em; }
  .styled ul, .styled ol {
    padding-left: 20px;
    overflow: hidden; }
  .styled li {
    position: relative;
    margin-top: 0.5em;
    padding-left: 15px;
    /* bullet point */ }
    .styled li:before {
      position: absolute;
      top: 0.45em;
      left: 0;
      display: block;
      width: 5px;
      height: 5px;
      border-radius: 5px;
      background: #439ccd;
      content: ""; }
    .styled li > *:first-child {
      margin-top: 0; }
  .styled hr {
    height: 0;
    margin: 1.5em 0;
    border: none;
    border-top: 1px solid #e0e4e8;
    background: none; }
  .styled .image-left {
    float: left;
    max-width: 50%;
    margin-top: 0;
    margin-right: 50px; }
  .styled .image-right {
    float: right;
    max-width: 50%;
    margin-top: 0;
    margin-left: 50px; }
  .styled .can-do, .styled .cannot-do {
    list-style-type: none; }
    .styled .can-do > li, .styled .cannot-do > li {
      padding-left: 25px;
      background-size: 18px;
      background-repeat: no-repeat;
      background-position: 0 2px; }
      .styled .can-do > li:before, .styled .cannot-do > li:before {
        display: none; }
  .styled .can-do > li {
    background-image: url("/images/ui/check.svg"); }
  .styled .cannot-do > li {
    background-image: url("/images/ui/cross.svg"); }

/* row 1 */
.page-lead {
  margin: 0 auto !important;
  font-size: 18px;
  font-weight: 300;
  font-style: italic;
  text-align: center;
  color: #262626;
  background-color: #f9f9fb;
  border-bottom: 1px solid #cfd3d7;
  padding-top: 30px;
  padding-bottom: 90px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
          align-items: center;
  -webkit-flex-direction: column;
          flex-direction: column;
  /* row 1 title */ }
  .page-lead > * {
    -webkit-flex: 0;
            flex: 0;
    width: 850px; }
  .page-lead h2 {
    font-size: 35px;
    font-weight: 300;
    font-style: normal; }

/* row 3 */
.mini-page-lead {
  font-size: 16px;
  font-weight: 300;
  text-align: center;
  color: #262626;
  padding-top: 20px;
  padding-bottom: 25px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
          align-items: center;
  -webkit-flex-direction: column;
          flex-direction: column;
  /* row 3 title */ }
  .mini-page-lead > * {
    -webkit-flex: 0;
            flex: 0;
    width: 850px; }
  .mini-page-lead h4 {
    font-size: 25px;
    font-weight: 300; }

.row {
  margin-left: -15px;
  margin-right: -15px; }
  .row:before, .row:after {
    display: table;
    content: "";
    line-height: 0; }
  .row:after {
    clear: both; }

.column {
  float: left; }

.column-6 {
  width: 50%;
  padding-left: 15px;
  padding-right: 15px; }

.article-header {
  margin-bottom: 20px;
  padding: 30px 0px 50px 0px;
  background-color: #f9f9fb;
  background-size: cover;
  border-bottom: 1px solid rgba(207, 211, 215, 0.5); }
  .article-header > .page-container {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
            justify-content: center;
    -webkit-align-items: center;
            align-items: center; }

.feature {
  padding: 10px 0px 20px 0px; }
  .feature:before, .feature:after {
    display: table;
    content: "";
    line-height: 0; }
  .feature:after {
    clear: both; }
  .feature:nth-child(odd) {
    background-color: none; }
  .feature:last-child {
    border-bottom: none; }
  .feature .page-container {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
            justify-content: space-between;
    -webkit-align-items: center;
            align-items: center;
    width: 960px;
    border-bottom: 1px solid rgba(207, 211, 215, 0.5);
    padding: 0px 0px 42px 0px; }
    .feature .page-container.no-border {
      border-bottom: none; }
    .feature .page-container.index {
      width: 100%;
      border-bottom: none;
      padding-left: 20px;
      padding-right: 20px; }

.feature-white {
  background-color: #fff !important; }

/* row 2 */
.feature-main {
  -webkit-flex-basis: 50%;
          flex-basis: 50%;
  padding-right: 30px;
  /* row 2 description lead */ }
  .feature-main.full-width {
    -webkit-flex-basis: 100%;
            flex-basis: 100%; }
  .feature-main h2 {
    font-size: 21px;
    font-weight: 400;
    color: #070706;
    text-transform: none; }
  .feature-main h3 {
    font-size: 26px;
    font-weight: 400;
    color: #499cd2;
    text-transform: none; }
  .feature-main .text-excerpt {
    font-size: 18px;
    font-weight: 500;
    color: #262626; }
  .feature-main p {
    font-size: 16px;
    font-weight: 300;
    color: #262626; }
  .feature-main .padding-txt-left {
    padding-left: 30px; }

.road-map-item {
  -webkit-flex-basis: 50%;
          flex-basis: 50%;
  padding-right: 30px;
  margin: 0 110px 0 110px;
  /* row 2 description lead */ }
  .road-map-item h3 {
    font-size: 21px;
    font-weight: 500;
    color: #070706;
    text-transform: none; }
  .road-map-item h4 {
    font-size: 18px;
    font-weight: 400;
    color: #070706;
    text-transform: none;
    padding-bottom: 25px; }
  .road-map-item .identation {
    margin-left: 20px; }
    .road-map-item .identation p {
      padding-bottom: 5px; }
  .road-map-item .text-excerpt {
    font-size: 18px;
    font-weight: 500;
    color: #262626; }
  .road-map-item p {
    font-size: 16px;
    font-weight: 300;
    margin-top: -15px;
    padding-bottom: 15px;
    color: #262626; }
  .road-map-item .padding-txt-left {
    padding-left: 30px; }

.feature-main-intro {
  -webkit-flex-basis: 50%;
          flex-basis: 50%; }
  .feature-main-intro h4 {
    font-size: 25px;
    font-weight: 300;
    padding-top: 20px;
    padding-bottom: 20px; }

ul.languages {
  -webkit-column-count: 6;
          column-count: 6;
  -moz-column-count: 5;
  padding: 17px 0px 0px 0px; }
  ul.languages li {
    padding: 0;
    margin-bottom: 6px;
    margin-top: 0px; }
    ul.languages li:before {
      display: none; }
  ul.languages a.external:after {
    background-position: 6px 2px; }

.half-half {
  -webkit-flex-basis: calc(50% - 60px / 2);
          flex-basis: calc(50% - 60px / 2);
  -webkit-align-self: stretch;
          align-self: stretch;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
          flex-direction: column;
  -webkit-justify-content: space-between;
          justify-content: space-between; }
  .half-half p {
    margin-top: 0px; }
  .half-half .btn-secondary {
    margin-top: 15px;
    margin-right: 0px; }

.feature-image img {
  max-width: 460px; }

.article-header-breadcrump {
  font-size: 16px;
  font-weight: normal;
  color: #fff; }

.article-header-parent-title {
  margin-top: 8px;
  color: #fff;
  font-size: 16px;
  font-weight: normal;
  text-transform: uppercase; }

.article-header-title {
  margin-top: 5px;
  color: #499cd2;
  font-size: 44px;
  font-weight: 300; }

.article-header-icon,
.article-header-inner {
  display: table-cell;
  vertical-align: middle; }

.article-header-icon path {
  fill: #fff; }

.article-header-contact {
  text-align: center; }
  .article-header-contact > p {
    margin-bottom: 10px;
    color: #4b9fd5; }
  .article-header-contact > a {
    display: inline-block;
    padding: 12px 25px;
    border-radius: 5px;
    background-color: #b1eb41;
    color: #223e4e;
    font-size: 16px;
    font-weight: 500;
    text-transform: uppercase;
    text-decoration: none; }
    .article-header-contact > a:hover, .article-header-contact > a:active {
      background-color: #91d311;
      color: #223e4e; }

.article-header-thumbs {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
          align-items: center; }
  .article-header-thumbs a {
    display: block; }
  .article-header-thumbs a path {
    fill: #4b9fd5; }
  .article-header-thumbs a:hover path, .article-header-thumbs a:active path {
    fill: #fff; }
  .article-header-thumbs svg {
    vertical-align: top;
    width: 45px;
    height: 29px; }

.artitcle-header-thumbs-main {
  margin-left: 70px;
  margin-right: 70px; }

.customers-list {
  margin: 0 -15px;
  padding-top: 50px;
  padding-bottom: 70px;
  font-size: 0; }

.customers-list-item {
  display: inline-block;
  vertical-align: top;
  width: 16.666666666%;
  margin-bottom: 30px;
  padding: 0 15px; }

.customers-list-inner {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
          justify-content: center;
  -webkit-align-items: center;
          align-items: center;
  width: 100%;
  height: 160px;
  padding: 50px 20px;
  border: 1px solid #cfd3d7;
  text-align: center; }

.team {
  padding: 100px 20px; }
  .team:before, .team:after {
    display: table;
    content: "";
    line-height: 0; }
  .team:after {
    clear: both; }

.team-member {
  position: relative;
  float: left;
  width: 33.3333333333%;
  padding-top: 33.3333333333%;
  background-repeat: no-repeat;
  background-size: cover; }
  .team-member:hover .team-member-inner, .team-member:active .team-member-inner, .team-member:focus .team-member-inner {
    opacity: 1; }

.team-member-inner {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: rgba(196, 30, 37, 0.6);
  color: #fff;
  opacity: 0; }

.team-member-meta {
  position: absolute;
  bottom: 15px;
  left: 15px;
  font-size: 14px; }
  .team-member-meta h4 {
    line-height: 20px;
    font-size: 18px;
    font-weight: 300; }
  .team-member-meta h5 {
    margin-bottom: 10px;
    line-height: 18px;
    font-size: 14px; }

.team-member-social {
  position: absolute;
  bottom: 15px;
  right: 15px; }
  .team-member-social a {
    display: inline-block;
    vertical-align: middle; }
    .team-member-social a:hover path, .team-member-social a:active path, .team-member-social a:focus path {
      fill: #ccc; }
  .team-member-social a + a {
    margin-left: 5px; }
  .team-member-social svg {
    vertical-align: top;
    height: 18px; }
  .team-member-social path {
    fill: #fff; }

.dropdown {
  position: relative;
  display: inline-block;
  min-width: 160px;
  height: 44px;
  line-height: 44px;
  padding: 0 10px;
  border: 1px solid #cfd3d7;
  color: #191919;
  font-size: 14px;
  cursor: default;
  transition: border-color 0.3s ease; }
  .dropdown:hover {
    border-color: #b8bdc1; }
    .dropdown:hover .dropdown-menu {
      opacity: 1;
      -webkit-transform: rotateX(0deg);
              transform: rotateX(0deg); }

.dropdown-default {
  color: #777; }

.dropdown-selected {
  position: relative; }
  .dropdown-selected:after {
    position: absolute;
    top: 50%;
    right: 0;
    display: block;
    width: 0;
    height: 0;
    margin-top: -3px;
    border-top: 4px solid #191919;
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    content: ""; }

.dropdown-menu {
  position: absolute;
  z-index: 100;
  top: calc(100% + 1px);
  left: -1px;
  right: -1px;
  border-left: 1px solid #b8bdc1;
  border-right: 1px solid #b8bdc1;
  border-bottom: 1px solid #b8bdc1;
  background-color: #fff;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.175);
  transition: all 0.3s ease;
  opacity: 0;
  -webkit-transform: rotateX(90deg);
          transform: rotateX(90deg);
  -webkit-transform-origin: 0 0;
          transform-origin: 0 0; }
  .dropdown-menu > a {
    display: block;
    padding: 8px 10px;
    line-height: 1;
    color: #191919; }
    .dropdown-menu > a:hover, .dropdown-menu > a:focus, .dropdown-menu > a:active {
      background-color: #f3f3f3; }

.footer-link,
a.footer-link {
  color: #191919;
  font-size: 14px;
  font-weight: 600;
  text-transform: uppercase; }
  .footer-link > svg,
  a.footer-link > svg {
    display: inline-block;
    vertical-align: middle;
    width: 12px;
    height: 12px; }
    .footer-link > svg > path,
    a.footer-link > svg > path {
      fill: #4b9fd5; }

a.footer-link {
  transition: color 0.3s ease; }
  a.footer-link:hover, a.footer-link:active, a.footer-link:focus {
    color: #4b9fd5; }

.index-page .page-lead {
  background: transparent;
  border: none;
  color: #898989;
  font-size: 28px;
  font-style: normal; }
.index-page .grid {
  padding: 0;
  width: 100%;
  margin: 15px auto 80px; }
.index-page .feature {
  display: block;
  text-align: center;
  margin-bottom: 35px;
  padding: 0;
  background: none;
  border: none;
  overflow: visible; }
.index-page .feature:nth-of-type(3) {
  padding-left: 20px; }
.index-page .feature:nth-of-type(4) {
  padding-left: 20px;
  padding-top: 90px;
  padding-bottom: 20px;
  background-color: #f9f9fb; }
.index-page h2 {
  padding-top: 90px;
  color: #499cd2;
  font-size: 45px;
  font-weight: 300; }
.index-page .feature-main {
  text-align: left; }
  .index-page .feature-main h3 {
    font-size: 32px;
    font-weight: 300;
    color: #070706; }
  .index-page .feature-main p {
    width: 310px;
    font-size: 18px;
    font-weight: 300;
    padding-top: 15px;
    padding-bottom: 20px; }
  .index-page .feature-main a {
    padding-top: 25px;
    font-size: 18px;
    font-weight: 500;
    text-decoration: none;
    transition: color 0.1s ease-in; }
    .index-page .feature-main a:hover {
      color: #0D476C; }
      .index-page .feature-main a:hover:after {
        background-image: url("/images/ui/arrows-dark.svg");
        background-position: 15px 6px; }
    .index-page .feature-main a:after {
      content: " ";
      background-image: url("/images/ui/arrows.svg"), url("/images/ui/arrows-dark.svg");
      padding-right: 40px;
      background-position: 10px 6px;
      background-size: 15px auto;
      background-repeat: no-repeat;
      transition: all 0.1s ease-in; }
.index-page .half-half svg {
  width: 50px;
  height: auto;
  padding-bottom: 30px; }
.index-page .half-half p {
  width: 500px;
  -webkit-flex-grow: 1;
          flex-grow: 1; }
.index-page .half-half a {
  padding-top: 0px;
  padding-bottom: 60px; }
.index-page .feature-image img {
  max-width: initial; }
.index-page .right {
  padding-left: 90px; }
  .index-page .right img {
    margin-right: -35px; }
.index-page .left {
  padding-right: 75px; }
  .index-page .left img {
    margin-left: -100px; }
.index-page .sonarqube-news {
  width: 100%;
  -webkit-flex-basis: 100%;
          flex-basis: 100%; }
  .index-page .sonarqube-news h3 {
    text-align: center;
    margin-bottom: 25px; }
  .index-page .sonarqube-news .list-of-news {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
            justify-content: space-between; }
    .index-page .sonarqube-news .list-of-news .news {
      width: 370px;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-direction: column;
              flex-direction: column;
      -webkit-align-items: stretch;
              align-items: stretch;
      border-width: 1px;
      border-color: #cfd3d7;
      border-style: solid;
      border-radius: 5px;
      padding: 25px;
      border-width: 1px;
      box-shadow: 0 1px 1px rgba(7, 7, 6, 0.1);
      transition: box-shadow 0.2s ease-in; }
      .index-page .sonarqube-news .list-of-news .news:hover {
        box-shadow: 0 10px 30px rgba(7, 7, 6, 0.2); }
      .index-page .sonarqube-news .list-of-news .news > h4 {
        color: #070706;
        font-size: 21px;
        font-weight: 400; }
      .index-page .sonarqube-news .list-of-news .news p {
        -webkit-flex-grow: 1;
                flex-grow: 1;
        width: auto; }
      .index-page .sonarqube-news .list-of-news .news .external {
        transition: color 0.1s ease-in; }
        .index-page .sonarqube-news .list-of-news .news .external:after {
          background-position: 5px 4px; }
.index-page hr {
  height: 1px;
  background-color: #cfd3d7;
  border: none; }

.corporate {
  display: block;
  text-align: center;
  background-color: transparent;
  padding: 30px 0;
  width: 100%; }
  .corporate .btn {
    margin-left: 10px;
    height: 33px;
    line-height: 33px;
    font-size: 14px; }

.jumbotron-container {
  height: 539px;
  background-color: #f9f9fb;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
          flex-direction: column;
  -webkit-align-items: center;
          align-items: center;
  margin-top: 0;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 65px;
  border-bottom: 1px solid rgba(207, 211, 215, 0.5); }

.jumbotron {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: row;
          flex-direction: row;
  -webkit-align-items: center;
          align-items: center;
  -webkit-justify-content: space-between;
          justify-content: space-between;
  height: 438px;
  width: 100%;
  color: #ffffff;
  position: relative; }
  .jumbotron .lts-link {
    position: absolute;
    top: 18px;
    left: 0;
    right: 0;
    color: #2d3032;
    font-weight: 400;
    text-decoration: none;
    padding: 10px 2px 10px 2px;
    border-radius: 2px;
    margin: 0 auto;
    width: 41%;
    text-align: center;
    border: 1px solid #cfd3d7; }
    .jumbotron .lts-link:hover {
      background-color: rgba(207, 211, 215, 0.5);
      transition: all 0.1s ease-in;
      border: 1px solid rgba(207, 211, 215, 0.5); }
    .jumbotron .lts-link em {
      font-weight: bold;
      font-style: normal;
      text-decoration: underline;
      padding-left: 10px; }
  .jumbotron .tag-new {
    background-color: #499cd2;
    padding: 4px 7px 4px 7px;
    border-radius: 2px;
    color: #ffffff;
    margin-right: 10px;
    font-size: 14px;
    font-weight: 400; }
  .jumbotron h3 {
    text-transform: none;
    font-size: 24px;
    margin-top: 52px;
    color: #2d3032; }
  .jumbotron h1 {
    margin-bottom: 25px;
    line-height: 76px;
    font-size: 74px;
    font-weight: 700;
    color: #434447; }
    .jumbotron h1 > strong {
      display: block;
      color: #347CAB; }
    .jumbotron h1 .dark {
      font-weight: 700;
      color: #499cd2; }
  .jumbotron figure {
    margin-top: 50px; }
    .jumbotron figure img {
      width: 624px;
      height: 183px;
      border-radius: 8px;
      max-width: inherit;
      margin-top: 30px; }

.opensource-logo {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: row;
          flex-direction: row;
  -webkit-align-items: center;
          align-items: center;
  margin-left: 249px;
  margin-top: -19px;
  font-size: 18px;
  color: #434447; }
  .opensource-logo img {
    width: 30px;
    height: 62px;
    margin-right: 18px;
    margin-top: 6px; }

.jumbotron-main {
  width: 50%;
  min-width: 480px;
  height: 77%; }
  .jumbotron-main .btn {
    color: #0D476C; }
  .jumbotron-main .btn-primary {
    color: #ffffff;
    background-color: #499cd2;
    margin-top: 10px;
    border: 1px solid #499cd2; }
  .jumbotron-main .btn-blue-outlined {
    color: #499cd2;
    border: 1px solid #499cd2; }
  .jumbotron-main .btn-white-outlined {
    color: #ffffff;
    border: 1px solid #ffffff; }
  .jumbotron-main .btn:active, .jumbotron-main .btn:hover {
    background-color: #347CAB;
    border: 1px solid #347CAB;
    color: white; }

.jumbotron-more {
  margin-top: 30px; }

.jumbotron-sl {
  display: block;
  margin-top: 10px; }
  .jumbotron-sl nav {
    border-top: 1px solid rgba(207, 211, 215, 0.5); }
    .jumbotron-sl nav .btn-black-outlined {
      color: #2d3032;
      border: 1px solid #2d3032;
      margin-bottom: 50px; }
      .jumbotron-sl nav .btn-black-outlined:hover {
        background: #2d3032;
        color: #fff; }
    .jumbotron-sl nav h3 {
      color: #434447;
      font-size: 21px;
      font-weight: 400;
      margin-top: 29px;
      margin-left: 18px;
      display: -webkit-flex;
      display: flex; }
      .jumbotron-sl nav h3 svg {
        height: 38px;
        width: 34px;
        margin-right: 8px;
        margin-left: 20px;
        margin-top: -5px; }
        .jumbotron-sl nav h3 svg path {
          fill: #cfd3d7; }
    .jumbotron-sl nav ol {
      display: -webkit-flex;
      display: flex;
      -webkit-justify-content: space-between;
              justify-content: space-between;
      margin-left: -22px;
      margin-right: -22px; }
      .jumbotron-sl nav ol li {
        display: -webkit-inline-flex;
        display: inline-flex;
        -webkit-align-items: center;
                align-items: center;
        white-space: nowrap; }
        .jumbotron-sl nav ol li a {
          margin-top: 7px;
          padding-left: 22px;
          padding-right: 11px;
          padding-bottom: 27px;
          text-decoration: none;
          color: #434447;
          font-size: 21px;
          font-weight: 300;
          border-bottom: 2px solid #f9f9fb;
          transition: all 0.1s ease-in;
          border-bottom-color: transparent;
          margin-top: 10px;
          display: -webkit-inline-flex;
          display: inline-flex;
          -webkit-align-items: center;
                  align-items: center; }
          .jumbotron-sl nav ol li a div img {
            height: 31px;
            width: 31px;
            margin-right: 11px; }
          .jumbotron-sl nav ol li a path {
            fill: #f9f9fb; }
          .jumbotron-sl nav ol li a svg {
            transition: all 0.1s ease-in;
            margin-left: 5px;
            height: 18px;
            width: 18px;
            margin-right: 8px;
            margin-left: 10px; }
          .jumbotron-sl nav ol li a:hover {
            color: #070706;
            border-bottom-color: #499cd2; }
            .jumbotron-sl nav ol li a:hover svg path {
              fill: #8a8c8f; }

.jumbotron-languages {
  width: 100%;
  height: 80px;
  border-top: 1px solid rgba(207, 211, 215, 0.5);
  color: #434447;
  font-size: 21px; }
  .jumbotron-languages .page-container {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
            flex-direction: row;
    margin: 0 auto;
    height: 100%;
    overflow: hidden;
    -webkit-align-items: center;
            align-items: center; }
  .jumbotron-languages p {
    white-space: nowrap; }
    .jumbotron-languages p:after {
      content: "";
      margin: 0 10px;
      padding: 17px 15px;
      background-image: url("/index/languages-chevron-right.png");
      background-repeat: no-repeat; }
  .jumbotron-languages ul {
    display: -webkit-flex;
    display: flex; }
    .jumbotron-languages ul li {
      list-style: none;
      display: inline-block; }
      .jumbotron-languages ul li a {
        padding: 30px 48px;
        color: inherit;
        text-decoration: none;
        white-space: nowrap;
        transition: all .2s ease; }
        .jumbotron-languages ul li a:hover {
          color: #070706;
          background-color: rgba(207, 211, 215, 0.2); }
        .jumbotron-languages ul li a svg {
          width: 16px;
          height: 16px;
          margin-right: -16px;
          vertical-align: middle; }
          .jumbotron-languages ul li a svg path {
            transition: all .2s ease;
            fill: #070706;
            fill-opacity: 0; }
        .jumbotron-languages ul li a:hover svg path {
          fill-opacity: 1; }
  .jumbotron-languages .btn {
    margin-left: 15px;
    border-color: #2d3032; }
  .jumbotron-languages .btn:active, .jumbotron-languages .btn:hover {
    background-color: #2d3032;
    color: #ffffff; }

.grid-item.index-feature {
  text-align: center;
  padding: 0 0 30px; }
  .grid-item.index-feature .grid-item-link {
    background: transparent;
    padding: 25px 0; }
    .grid-item.index-feature .grid-item-link h4 {
      color: #8a8c8f;
      font-size: 25px;
      margin-bottom: 0; }
    .grid-item.index-feature .grid-item-link img {
      margin: 40px 0;
      width: 100%;
      height: 100px; }
  .grid-item.index-feature .btn {
    margin: 0 auto;
    /* Fix for Safari and IE */
    -webkit-align-self: center;
            align-self: center; }
  .grid-item.index-feature + .grid-item img {
    border-left: 1px solid #cfd3d7; }

.index-header {
  line-height: 54px !important;
  margin-bottom: 0 !important;
  font-size: 50px !important; }

.index-sub-header {
  margin-bottom: 0 !important;
  font-size: 32px !important; }

.index-brands {
  height: 90px;
  padding: 15px 0;
  background-color: #f9f9fb; }

.index-brands-list {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
          justify-content: space-between;
  -webkit-align-items: center;
          align-items: center; }

.index-700 {
  width: 700px;
  margin-left: auto;
  margin-right: auto; }

.form-page {
  padding: 50px 0 200px;
  border-top: 1px solid #cfd3d7;
  background-color: #f9f9fb; }

.form-page-container {
  width: 390px;
  margin: 0 auto; }

.form-page-header {
  margin-bottom: 30px;
  font-size: 28px;
  font-weight: normal; }
  .form-page-header strong {
    color: #4b9fd5; }

.form-page-success {
  padding-top: 100px;
  text-align: center; }
  .form-page-success h1 {
    margin-bottom: 10px;
    color: #4b9fd5;
    font-size: 28px;
    font-weight: normal; }
  .form-page-success p {
    margin-bottom: 25px;
    font-weight: normal; }

.page-404 {
  height: 100vh;
  padding: 60px;
  background-color: #eeeeee;
  overflow: hidden;
  text-align: center; }
  .page-404 p + p {
    margin-top: 40px; }

.contact-page-map {
  width: 100%;
  height: 600px; }

.contact-page-card-container {
  position: relative; }

.contact-page-card {
  position: absolute;
  z-index: 9;
  top: 60px;
  left: 0;
  width: 300px;
  border-bottom: 4px solid #4b9fd5;
  background-color: #fff;
  box-shadow: 0 0 25px rgba(0, 0, 0, 0.2); }
  .contact-page-card img {
    vertical-align: top; }

.contact-page-card-address {
  padding-top: 20px;
  font-size: 14px;
  font-weight: 400;
  text-align: center; }
  .contact-page-card-address strong {
    line-height: 30px; }

.contact-page-buttons {
  padding: 30px; }
  .contact-page-buttons .btn {
    display: block;
    height: auto;
    padding-top: 9px;
    padding-bottom: 9px;
    line-height: 24px;
    text-align: center;
    white-space: normal; }
  .contact-page-buttons .btn + .btn {
    margin-top: 12px; }

.page-footer {
  color: #cfd3d7;
  background-color: #2d3032; }

.page-footer-nav {
  padding: 40px 0;
  border-top: 1px solid #070706; }
  .page-footer-highlight + .page-footer-nav {
    border-top: none; }

.page-footer-nav-column > h4 {
  margin-bottom: 28px;
  font-size: 16px;
  text-transform: uppercase;
  font-weight: 400;
  color: #ffffff; }
.page-footer-nav-column > ul > li {
  margin-top: 5px; }
  .page-footer-nav-column > ul > li > a {
    color: inherit;
    font-size: 12px;
    font-weight: 400;
    text-decoration: none; }
    .page-footer-nav-column > ul > li > a:hover, .page-footer-nav-column > ul > li > a:active, .page-footer-nav-column > ul > li > a:focus {
      color: #ffffff; }

.page-footer-nav-column.pull-left {
  margin-right: 80px; }

.page-footer-logo-bar {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
          justify-content: space-between;
  -webkit-align-items: center;
          align-items: center; }

.page-footer-copyright {
  padding: 30px 0;
  border-top: 1px solid #434447;
  line-height: 16px;
  font-size: 11px;
  text-align: center; }
  .page-footer-copyright a {
    color: #919191;
    text-decoration: underline; }
    .page-footer-copyright a:hover, .page-footer-copyright a:focus, .page-footer-copyright a:active {
      color: #666; }

.page-footer-logo {
  display: block;
  margin-top: -13px;
  margin-bottom: 18px; }

.page-footer-social {
  display: inline-block;
  width: 35px;
  height: 35px;
  text-align: center; }
  .page-footer-social:hover, .page-footer-social:focus, .page-footer-social:active {
    cursor: pointer; }
  .page-footer-social svg {
    max-width: 100%;
    max-height: 100%; }

.grid {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-align-items: stretch;
          align-items: stretch;
  margin: 0 -15px;
  padding: 50px 0; }

.grid-one-column {
  margin: 0; }
  .grid-one-column .grid-item {
    width: 100%;
    padding: 0 0 30px; }

.grid-item {
  width: 33.3333333333%;
  padding: 0 15px 30px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: stretch;
          align-items: stretch; }

.grid-item-link {
  position: relative;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
          flex-direction: column;
  width: 100%;
  padding: 25px 15px;
  background-color: #f6f6f6;
  color: #191919;
  text-decoration: none; }
  .grid-item-link:hover, .grid-item-link:active {
    color: #191919; }
    .grid-item-link:hover .grid-item-title,
    .grid-item-link:hover .footer-link, .grid-item-link:active .grid-item-title,
    .grid-item-link:active .footer-link {
      color: #4b9fd5; }

.grid-item-link-container {
  -webkit-flex-grow: 1;
          flex-grow: 1; }

.grid-item-title {
  margin-bottom: 25px;
  font-size: 26px;
  font-weight: 300; }

.grid-item-sub-title {
  margin-top: -20px;
  margin-bottom: 25px;
  font-size: 13px;
  font-weight: 400; }

.grid-item-description {
  font-size: 14px; }

.grid-item-footer {
  margin-top: 10px; }

.grid-customer-story-logo {
  float: left;
  max-width: 140px;
  height: 39px; }
  .grid-customer-story-logo > img {
    max-width: 100%;
    max-height: 100%; }

.grid-event-logo {
  position: absolute;
  width: 330px;
  top: 0;
  left: 0;
  bottom: 0;
  padding: 30px;
  border-right: 1px solid #e6e6e6;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
          justify-content: center;
  -webkit-align-items: center;
          align-items: center; }
  .grid-event-logo > img {
    max-width: 100%; }

.grid-event-container {
  padding-left: 350px; }

.grid-item-meta {
  margin-bottom: 4px;
  font-size: 12px;
  font-weight: 400; }

.grid-filter {
  padding-top: 50px;
  color: #777;
  font-weight: 400; }
  .grid-filter .dropdown {
    margin-left: 10px; }

.article {
  position: relative;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: stretch;
          align-items: stretch;
  padding-right: 0 !important; }

.article-main {
  -webkit-flex-grow: 1;
          flex-grow: 1;
  padding: 50px 20px 50px 0;
  background-color: #fff; }

.article-side {
  -webkit-flex-shrink: 0;
          flex-shrink: 0;
  width: 300px;
  padding: 50px 20px;
  border-left: 1px solid #cfd3d7;
  background-color: #f3f3f7; }
  .article-side:after {
    content: "";
    position: absolute;
    left: 100%;
    top: 0;
    bottom: 0;
    width: 100%;
    background-color: #f3f3f7; }
  .article-side h4 {
    margin-bottom: 0.5em;
    text-transform: uppercase; }
  .article-side p, .article-side dl {
    margin-bottom: 2em;
    font-size: 14px; }

.article-side-logo {
  padding-left: 35px;
  padding-bottom: 25px; }

.news {
  width: 100%; }

.news-main {
  float: left;
  width: calc(100% - 240px);
  margin: 50px 0;
  padding-right: 40px;
  border-right: 1px solid #e6e6e6; }

.news-side {
  float: right;
  width: 200px;
  margin: 50px 0; }

.product-news-subscription h4 {
  font-size: 18px;
  font-weight: 400; }
.product-news-subscription h4, .product-news-subscription p {
  margin-bottom: 16px; }

.product-news-subscription-button {
  display: block;
  width: 200px;
  height: 44px;
  line-height: 44px;
  padding: 0 15px;
  border: 1px solid #191919;
  border-radius: 3px;
  color: #191919;
  font-size: 13px;
  font-weight: 500;
  text-align: center;
  text-transform: uppercase; }
  .product-news-subscription-button:hover, .product-news-subscription-button:focus, .product-news-subscription-button:active {
    background-color: #191919;
    color: #fff; }
    .product-news-subscription-button:hover .product-news-subscription-button-icon path, .product-news-subscription-button:focus .product-news-subscription-button-icon path, .product-news-subscription-button:active .product-news-subscription-button-icon path {
      fill: #fff; }

.product-news-subscription-button-icon {
  display: inline-block;
  vertical-align: middle;
  width: 20px;
  line-height: 1;
  margin-right: 12px; }
  .product-news-subscription-button-icon path {
    fill: #191919; }

.newsletter-main-subscription,
.newsletter-page-subscription {
  font-weight: 400; }
  .newsletter-main-subscription label,
  .newsletter-page-subscription label {
    margin-right: 16px;
    font-size: 16px; }
  .newsletter-main-subscription strong,
  .newsletter-page-subscription strong {
    color: #4b9fd5; }
  .newsletter-main-subscription input[type="email"],
  .newsletter-page-subscription input[type="email"] {
    line-height: 14px;
    padding: 13px 10px;
    border: 1px solid #e0e4e8;
    font-size: 13px;
    transition: border-color 0.3s ease; }
    .newsletter-main-subscription input[type="email"]:focus,
    .newsletter-page-subscription input[type="email"]:focus {
      border-color: #191919;
      outline: none; }
  .newsletter-main-subscription input[type="submit"],
  .newsletter-page-subscription input[type="submit"] {
    line-height: 14px;
    padding: 13px 15px;
    border: 1px solid #191919;
    border-radius: 4px;
    background: none;
    color: #191919;
    font-family: inherit;
    font-size: 13px;
    font-weight: bold;
    text-transform: uppercase;
    cursor: pointer; }
    .newsletter-main-subscription input[type="submit"]:hover, .newsletter-main-subscription input[type="submit"]:active, .newsletter-main-subscription input[type="submit"]:focus,
    .newsletter-page-subscription input[type="submit"]:hover,
    .newsletter-page-subscription input[type="submit"]:active,
    .newsletter-page-subscription input[type="submit"]:focus {
      background: #191919;
      color: #fff; }

.newsletter-main-subscription {
  padding: 50px 0 0;
  font-size: 0;
  text-align: center;
  white-space: nowrap; }
  .newsletter-main-subscription label {
    vertical-align: middle; }
  .newsletter-main-subscription input[type="email"] {
    vertical-align: middle;
    width: 300px;
    border-right: none; }
  .newsletter-main-subscription input[type="submit"] {
    vertical-align: middle;
    margin-left: -2px; }

.newsletter-page-subscription label {
  display: block;
  margin-bottom: 12px; }
.newsletter-page-subscription input[type="email"] {
  width: 100%; }
.newsletter-page-subscription input[type="submit"] {
  display: block;
  width: 100%;
  margin-top: 12px; }

.deployments-grade {
  margin: 60px 40px 200px; }
  .deployments-grade table {
    width: 100%;
    table-layout: fixed;
    border-collapse: collapse;
    border-spacing: 0; }

.deployments-grade-tags {
  position: relative;
  vertical-align: middle;
  padding: 20px 100px; }
  .deployments-grade-tags > ul {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-justify-content: center;
            justify-content: center; }
    .deployments-grade-tags > ul > li {
      margin: 5px;
      padding: 4px 12px;
      font-weight: bold;
      color: #fff; }
    .deployments-grade-tags > ul:after {
      position: absolute;
      top: 100%;
      left: 50%;
      display: block;
      width: 0;
      height: 0;
      margin-left: -18px;
      border-top: 18px solid;
      border-left: 18px solid transparent;
      border-right: 18px solid transparent;
      content: ""; }
  .deployments-grade-tags.grade-team {
    background-color: #464347; }
    .deployments-grade-tags.grade-team > ul > li {
      background-color: #69666a; }
    .deployments-grade-tags.grade-team > ul:after {
      border-top-color: #464347; }
  .deployments-grade-tags.grade-enterprise {
    background-color: #4b9fd5; }
    .deployments-grade-tags.grade-enterprise > ul > li {
      background-color: #ed4148; }
    .deployments-grade-tags.grade-enterprise > ul:after {
      border-top-color: #4b9fd5; }

.deployments-grade-description {
  vertical-align: top;
  padding: 50px 50px 0;
  border-left: 1px solid #dfdfdf;
  border-right: 1px solid #dfdfdf;
  background-color: #fcfcfc;
  text-align: center; }
  .deployments-grade-description > h3 {
    font-size: 28px;
    font-weight: 300;
    text-transform: uppercase;
    white-space: nowrap; }
    .deployments-grade-description > h3 > svg {
      vertical-align: top;
      width: 35px;
      height: 35px; }
  .deployments-grade-description > p {
    margin-top: 30px;
    font-weight: normal; }
  .deployments-grade-description.grade-team > h3 path {
    fill: #464347; }
  .deployments-grade-description.grade-team > h3 > strong {
    color: #464347; }
  .deployments-grade-description.grade-enterprise > h3 path {
    fill: #4b9fd5; }
  .deployments-grade-description.grade-enterprise > h3 > strong {
    color: #4b9fd5; }

.deployments-grade-icon {
  margin-bottom: 20px;
  text-align: center; }
  .deployments-grade-icon > svg {
    vertical-align: bottom;
    width: 50px;
    height: 50px; }
    .deployments-grade-icon > svg path {
      fill: #fff; }

.deployments-grade-submit {
  vertical-align: middle;
  padding: 30px 0 40px;
  border-left: 1px solid #dfdfdf;
  border-right: 1px solid #dfdfdf;
  border-bottom: 1px solid #dfdfdf;
  background-color: #fcfcfc;
  text-align: center; }

.index-deployments-grade {
  margin-top: 50px;
  padding: 100px 0;
  background-color: #f9f9fb; }
  .index-deployments-grade h2 > strong {
    display: inline; }
  .index-deployments-grade .deployments-grade {
    margin-bottom: 0; }
  .index-deployments-grade .deployments-grade-description {
    color: #fff;
    border: none; }
    .index-deployments-grade .deployments-grade-description > h3 path {
      fill: #fff; }
    .index-deployments-grade .deployments-grade-description > h3 > strong {
      color: #fff; }
    .index-deployments-grade .deployments-grade-description.grade-team {
      background-color: #464347; }
    .index-deployments-grade .deployments-grade-description.grade-enterprise {
      background-color: #4b9fd5; }
  .index-deployments-grade .deployments-grade-submit {
    color: #fff;
    border: none; }
    .index-deployments-grade .deployments-grade-submit.grade-team {
      background-color: #464347; }
    .index-deployments-grade .deployments-grade-submit.grade-enterprise {
      background-color: #4b9fd5; }

.deployment-grade-page {
  padding: 60px 0; }

.editions,
.editions-after-table {
  width: 980px;
  margin: 0 auto;
  padding-top: 50px; }

.editions-after-table {
  border-top: 1px solid #e6e6e6;
  padding-bottom: 50px; }
  .editions-after-table h3 {
    margin-top: 0; }

.editions-table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  table-layout: fixed;
  font-weight: normal; }
  .editions-table th {
    padding: 20px 45px;
    border: 1px solid #e6e6e6; }
    .editions-table th:first-child {
      border: none; }
  .editions-table td {
    vertical-align: middle;
    line-height: 18px;
    padding: 17px 45px;
    border: 1px solid #e6e6e6; }
    .editions-table td:first-child {
      padding-left: 30px;
      padding-right: 10px; }
    .editions-table td .btn {
      margin-top: -7px;
      margin-bottom: -7px; }
  .editions-table tbody + thead th {
    padding-top: 33px;
    padding-left: 30px;
    border-left: none;
    border-right: none;
    text-align: left; }
  .editions-table svg {
    vertical-align: top;
    width: 18px;
    height: 18px; }

.edition-cell {
  vertical-align: top;
  width: 280px;
  text-align: left; }
  .edition-cell > h4 {
    font-size: 32px; }

.edition-cell-wide {
  width: 380px; }

.edition-price {
  font-size: 21px; }

.edition-price-star {
  vertical-align: super;
  font-size: 13px; }

.editions-gray td {
  background-color: #f9f9fb; }

.editions-note {
  margin-top: 13px;
  color: #919191;
  font-size: 12px; }

.editions-extra {
  display: none; }

.editions-extra-shown {
  display: table-row-group; }

.btn {
  display: inline-block;
  height: 44px;
  line-height: 44px;
  padding: 0 20px;
  border-radius: 3px;
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
  text-transform: uppercase;
  text-decoration: none;
  white-space: nowrap;
  transition: all .2s ease; }
  .btn:focus {
    outline: none; }
  .btn:active {
    box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.25); }
  .btn + .btn {
    margin-left: 10px; }

.btn-small {
  height: 32px;
  line-height: 32px;
  padding: 0 10px;
  font-size: 15px;
  font-weight: normal !important; }

.btn-red {
  border: none;
  background-color: #4b9fd5;
  color: #fff !important;
  text-shadow: 0 0 1px rgba(0, 0, 0, 0.35); }
  .btn-red:hover, .btn-red:focus {
    background-color: #3a96d1; }

.btn-red-outlined {
  border: 1px solid #4b9fd5;
  color: #4b9fd5; }
  .btn-red-outlined:hover, .btn-red-outlined:focus {
    background-color: #4b9fd5;
    color: #fff; }

.btn-red-filled {
  border: 1px solid #fff;
  background-color: #4b9fd5;
  color: #fff; }
  .btn-red-filled:hover, .btn-red-filled:focus {
    background-color: #fff;
    color: #4b9fd5; }

.btn-team-outlined {
  border: 1px solid #464347;
  color: #464347; }
  .btn-team-outlined:hover, .btn-team-outlined:focus {
    background-color: #464347;
    color: #fff; }

.btn-team-filled {
  border: 1px solid #fff;
  background-color: #464347;
  color: #fff; }
  .btn-team-filled:hover, .btn-team-filled:focus {
    background-color: #fff;
    color: #464347; }

.btn-opacity {
  opacity: 0.4; }
  .btn-opacity:hover, .btn-opacity:focus, .btn-opacity:active {
    opacity: 0.65; }

.btn-white-outlined {
  border: 1px solid #fff;
  background-color: transparent;
  color: #fff; }
  .btn-white-outlined:hover, .btn-white-outlined:focus {
    background-color: #fff;
    color: #4b9fd5; }

.btn-black-outlined {
  border: 1px solid #191919;
  background-color: transparent;
  color: #191919; }
  .btn-black-outlined:hover, .btn-black-outlined:focus {
    background-color: #191919;
    color: #fff; }

.btn-disabled {
  opacity: 0.2;
  cursor: default; }

.btn-primary {
  color: #499cd2;
  background: #ffffff;
  height: 44px;
  line-height: 44px;
  padding: 0 25px;
  font-size: 16px; }
  .btn-primary:hover {
    color: #347CAB;
    background: #cfd3d7; }

.btn-secondary {
  border: 1px solid #499cd2;
  background: transparent;
  height: 33px;
  line-height: 33px;
  padding: 0 15px;
  font-size: 14px;
  margin-top: 27px;
  margin-right: 21px; }
  .btn-secondary:hover {
    background: #499cd2;
    color: #fff; }

#download h3 {
  overflow: visible; }
#download .title {
  font-weight: bold; }
#download .version {
  padding-top: 1em;
  padding-bottom: 1em; }
#download .alinea {
  font-size: smaller;
  padding-top: 0.25em; }
#download .js-action-more {
  margin-top: 0px;
  cursor: pointer;
  text-decoration: underline; }
#download h2 {
  font-size: 24px;
  padding-top: 0.5em;
  padding-bottom: 0.5em; }
#download p {
  margin-top: 0px; }
#download p.crosslinkbar {
  margin-top: 1.5em;
  margin-bottom: 0em; }
#download .btn-edition {
  display: inline-block;
  height: 44px;
  padding: 0 20px;
  border-radius: 3px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  text-transform: uppercase;
  text-decoration: none;
  white-space: nowrap;
  transition: all .2s ease;
  border: 1px solid #499cd2;
  background: transparent;
  height: 33px;
  line-height: 33px;
  padding: 0 10px;
  margin-top: 11px;
  margin-right: 10px; }
  #download .btn-edition:hover {
    background: #499cd2;
    color: #fff; }
#download .btn {
  color: #ffffff;
  background-color: #499cd2; }
  #download .btn:hover, #download .btn:active, #download .btn:focus {
    background-color: #347CAB; }
#download .edition-info {
  position: relative;
  display: inline-block;
  text-indent: 0;
  vertical-align: middle;
  position: relative; }
  #download .edition-info svg {
    width: 16px;
    height: 21px; }
    #download .edition-info svg path {
      fill: #8a8c8f; }
    #download .edition-info svg:focus, #download .edition-info svg:hover {
      outline: none; }
      #download .edition-info svg:focus path, #download .edition-info svg:hover path {
        fill: #2d3032; }
      #download .edition-info svg:focus + .tooltip, #download .edition-info svg:hover + .tooltip {
        display: block; }
  #download .edition-info .tooltip {
    position: absolute;
    top: 40px;
    width: 400px;
    left: -193px;
    display: none;
    z-index: 4;
    padding: 5px 11px;
    font-size: 12px;
    color: #ffffff;
    background-color: #434447;
    border: 1px solid #434447;
    box-shadow: 0 0 5px 2px rgba(7, 7, 6, 0.1);
    border-radius: 3px;
    border-collapse: collapse;
    overflow: visible;
    text-align: center; }
    #download .edition-info .tooltip:after, #download .edition-info .tooltip:before {
      bottom: 100%;
      left: 50%;
      border: solid transparent;
      content: " ";
      height: 0;
      width: 0;
      position: absolute;
      pointer-events: none; }
    #download .edition-info .tooltip:after {
      border-color: rgba(67, 68, 71, 0);
      border-bottom-color: #434447;
      border-width: 5px;
      margin-left: -5px; }
    #download .edition-info .tooltip:before {
      border-color: rgba(67, 68, 71, 0);
      border-bottom-color: #434447;
      border-width: 6px;
      margin-left: -6px; }

.form-control {
  display: block;
  width: 100%;
  max-width: 100%;
  height: 44px;
  line-height: 44px;
  padding: 0 13px;
  border: 1px solid #b5b5b7;
  border-radius: 0;
  background-color: #fff;
  color: #5c5a5e;
  font-size: 16px;
  font-family: inherit;
  outline: none; }
  .form-control + .form-label {
    color: #b5b5b7; }
  .form-control:hover {
    border-color: #89888b; }
    .form-control:hover + .form-label {
      color: #89888b; }
  .form-control:focus, .form-control:not(:placeholder-shown) {
    border-color: #5c5a5e; }
    .form-control:focus + .form-label, .form-control:not(:placeholder-shown) + .form-label {
      color: #5c5a5e; }
  .form-control:invalid:not(:focus):not(:placeholder-shown) {
    border-color: #ff000b;
    color: #ff000b; }
    .form-control:invalid:not(:focus):not(:placeholder-shown) + .form-label {
      color: #ff000b; }

textarea.form-control {
  height: auto;
  min-height: 130px;
  line-height: 24px;
  padding-top: 10px;
  padding-bottom: 10px; }

.styled-select {
  position: relative; }
  .styled-select:after {
    position: absolute;
    top: 50%;
    right: 16px;
    display: block;
    width: 0;
    height: 0;
    margin-top: -3px;
    border-top: 4px solid #191919;
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    content: ""; }
  .styled-select > select {
    padding-right: 25px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none; }
    .styled-select > select:invalid {
      border-color: #b5b5b7 !important;
      color: #b5b5b7 !important; }
      .styled-select > select:invalid + .form-label {
        color: #b5b5b7 !important; }
  .styled-select > .form-label {
    top: -21px !important; }

.form-label {
  display: block;
  font-size: 14px;
  font-weight: normal; }

.form-row {
  margin: 0 -10px 23px; }
  .form-row:before, .form-row:after {
    display: table;
    content: "";
    line-height: 0; }
  .form-row:after {
    clear: both; }

.form-group {
  position: relative;
  padding: 21px 10px 0; }
  .form-group .form-label {
    position: absolute;
    top: 0;
    left: 10px; }

.form-group-half {
  float: left;
  width: 50%; }

.styled .breadcrumb {
  margin-top: -50px;
  margin-left: -20px;
  padding-bottom: 20px; }
  .styled .breadcrumb li {
    position: initial;
    margin-top: 0;
    padding-left: 0; }
    .styled .breadcrumb li:before {
      background: none; }

.breadcrumb {
  padding-top: 1em;
  list-style: none;
  font-size: 80%;
  padding-bottom: 1px; }
  .breadcrumb li {
    display: inline; }
    .breadcrumb li:first-child a {
      text-decoration: none; }
    .breadcrumb li:first-child svg {
      width: 15px;
      height: 20px;
      fill: #434447;
      top: 5px;
      margin: 0; }
    .breadcrumb li svg {
      display: inline;
      fill: #8a8c8f;
      height: 11px;
      width: 11px;
      margin: 0 6px;
      position: relative;
      top: 2px; }
    .breadcrumb li a {
      color: #499cd2;
      text-decoration: underline; }
      .breadcrumb li a :active, .breadcrumb li a :hover, .breadcrumb li a :focus {
        color: #b6b6b6; }

.breadcrumb-deployment {
  list-style: none; }
  .breadcrumb-deployment li {
    display: inline; }
    .breadcrumb-deployment li svg {
      fill: #cfd3d7;
      height: 15px;
      width: 15px;
      display: inline;
      margin: 0 12px; }
    .breadcrumb-deployment li a {
      color: #cfd3d7; }
      .breadcrumb-deployment li a :active, .breadcrumb-deployment li a :hover, .breadcrumb-deployment li a :focus {
        color: #b6b6b6; }

.lts-page header {
  background-color: #f9f9fb;
  padding-bottom: 44px; }
  .lts-page header .subtitle {
    font-weight: 400; }
  .lts-page header h1 {
    font-size: 44px;
    font-weight: 100;
    color: #499cd2;
    padding-top: 44px;
    padding-bottom: 22px;
    padding-left: 0;
    padding-right: 0;
    margin: 0 auto;
    text-align: center; }
  .lts-page header .page-container > ul {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
            flex-direction: row;
    -webkit-justify-content: space-between;
            justify-content: space-between;
    max-width: 960px;
    margin: 0 auto; }
    .lts-page header .page-container > ul > li {
      display: block;
      width: 31.5%;
      border-radius: 5px;
      border: 1px solid #cfd3d7;
      box-shadow: 0 0 2px 1px rgba(7, 7, 6, 0.1);
      background-color: #ffffff;
      padding: 16px 33px 22px;
      line-height: 2; }
      .lts-page header .page-container > ul > li h3 {
        font-weight: 400;
        font-size: 21px; }
      .lts-page header .page-container > ul > li h4 {
        font-weight: 300;
        font-size: 11px;
        border-bottom: 1px solid #cfd3d7;
        margin-top: 11px;
        margin-bottom: 4px; }
      .lts-page header .page-container > ul > li > ul {
        line-height: 1.6; }
        .lts-page header .page-container > ul > li > ul > li > a {
          text-decoration: none;
          font-weight: 400; }
          .lts-page header .page-container > ul > li > ul > li > a:hover {
            border-bottom: 1px solid #347CAB; }
.lts-page main section {
  position: relative; }
  .lts-page main section h2 {
    font-size: 36px;
    font-weight: 100;
    margin: 44px auto 22px auto;
    text-align: center; }
  .lts-page main section a[id] {
    position: absolute;
    top: -99px; }
    .lts-page main section a[id]:target + article, .lts-page main section a[id]:target + figure {
      background-color: rgba(207, 211, 215, 0.2); }
      .lts-page main section a[id]:target + article h3, .lts-page main section a[id]:target + figure h3 {
        font-weight: 500; }
      .lts-page main section a[id]:target + article p, .lts-page main section a[id]:target + article figcaption, .lts-page main section a[id]:target + figure p, .lts-page main section a[id]:target + figure figcaption {
        font-weight: 400; }
  .lts-page main section article, .lts-page main section figure {
    border-radius: 5px;
    padding: 22px; }
    .lts-page main section article h3, .lts-page main section figure h3 {
      font-size: 21px;
      font-weight: 400;
      margin-bottom: 11px; }
    .lts-page main section article img, .lts-page main section figure img {
      box-sizing: content-box;
      border: 1px solid #cfd3d7;
      border-radius: 3px;
      box-shadow: 0 0 2px 1px rgba(7, 7, 6, 0.1); }
.lts-page .subtitle {
  font-weight: 300;
  font-size: 21px;
  display: block;
  text-align: center;
  margin: 0 auto 33px auto;
  line-height: 1.3; }
.lts-page .external {
  text-decoration: none;
  border-bottom: 1px solid rgba(73, 156, 210, 0.3);
  position: relative;
  margin-bottom: 11px;
  display: inline-block; }
  .lts-page .external::after {
    display: none;
    width: 15px;
    height: 15px;
    position: absolute;
    right: -1.2em;
    top: 0; }
  .lts-page .external:hover {
    border-bottom-color: #347CAB; }
    .lts-page .external:hover:after {
      display: block; }
.lts-page .edition-tag {
  font-size: 14px;
  font-weight: bold;
  color: white;
  border-radius: 4px;
  padding: 4px;
  text-decoration: none;
  display: inline-block;
  vertical-align: middle;
  position: relative; }
  .lts-page .edition-tag:hover > .tooltip {
    display: block; }
  .lts-page .edition-tag.developer {
    background-color: #36acea; }
  .lts-page .edition-tag.enterprise {
    background-color: #ec3646; }
  .lts-page .edition-tag.data-center {
    background-color: #7a8ba5; }
.lts-page p, .lts-page figcaption {
  margin-bottom: 11px;
  line-height: 1.4; }
.lts-page .deep-code-analysis {
  padding-bottom: 44px;
  border-bottom: 1px solid rgba(207, 211, 215, 0.5); }
  .lts-page .deep-code-analysis .page-container {
    max-width: 1000px;
    padding: 0;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-justify-content: space-between;
            justify-content: space-between; }
  .lts-page .deep-code-analysis article {
    width: 47%;
    display: inline-block; }
.lts-page .greater-insights {
  padding-bottom: 33px;
  border-bottom: 1px solid rgba(207, 211, 215, 0.5); }
  .lts-page .greater-insights .page-container {
    padding: 0;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-justify-content: space-between;
            justify-content: space-between; }
  .lts-page .greater-insights figure {
    width: 390px; }
    .lts-page .greater-insights figure img {
      margin-top: 5px;
      margin-bottom: 11px;
      max-width: unset; }
.lts-page .integrated-robust .page-container {
  padding: 0;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-justify-content: space-between;
          justify-content: space-between; }
  .lts-page .integrated-robust .page-container article {
    margin-bottom: 44px; }
  .lts-page .integrated-robust .page-container figure {
    display: inline-block;
    width: 48%;
    max-width: 50%; }
    .lts-page .integrated-robust .page-container figure img {
      margin-bottom: 11px; }
  .lts-page .integrated-robust .page-container article {
    display: inline-block;
    width: 30%;
    max-width: 33%; }
.lts-page #download {
  padding-top: 33px;
  padding-bottom: 44px;
  background-color: #f9f9fb;
  text-align: center; }
  .lts-page #download > h2 {
    font-size: 36px;
    font-weight: 100;
    margin: 0 auto 11px auto;
    text-align: center; }
  .lts-page #download > .btn {
    margin-bottom: 22px; }

.tooltip {
  position: absolute;
  top: 28px;
  text-align: center;
  overflow: visible;
  width: 200px;
  left: calc(50% - 100px);
  display: none;
  z-index: 4;
  padding: 5px 11px;
  font-size: 12px;
  font-weight: 100;
  color: #ffffff;
  background-color: #434447;
  border: 1px solid #434447;
  box-shadow: 0 0 5px 2px rgba(7, 7, 6, 0.1);
  border-radius: 3px;
  border-collapse: collapse; }
  .tooltip:after, .tooltip:before {
    bottom: 100%;
    left: 50%;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none; }
  .tooltip:after {
    border-color: rgba(67, 68, 71, 0);
    border-bottom-color: #434447;
    border-width: 5px;
    margin-left: -5px; }
  .tooltip:before {
    border-color: rgba(67, 68, 71, 0);
    border-bottom-color: #434447;
    border-width: 6px;
    margin-left: -6px; }

.page-launch header {
  background-color: #f9f9fb;
  padding-bottom: 66px; }
  .page-launch header .subtitle {
    font-weight: 400; }
  .page-launch header .subtitle-header {
    font-size: 26px;
    text-align: center;
    line-height: 1.3;
    max-width: 780px;
    margin: auto; }
  .page-launch header h1 {
    font-size: 55px;
    font-weight: 100;
    color: #499cd2;
    padding-top: 66px;
    padding-bottom: 22px;
    padding-left: 0;
    padding-right: 0;
    margin: 0 auto;
    text-align: center; }
  .page-launch header .page-container > ul {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
            flex-direction: row;
    -webkit-justify-content: space-between;
            justify-content: space-between;
    max-width: 960px;
    margin: 0 auto; }
    .page-launch header .page-container > ul > li {
      display: block;
      width: 31.5%;
      border-radius: 5px;
      border: 1px solid #cfd3d7;
      box-shadow: 0 0 2px 1px rgba(7, 7, 6, 0.1);
      background-color: #ffffff;
      padding: 16px 33px 22px;
      line-height: 2; }
      .page-launch header .page-container > ul > li h3 {
        font-weight: 400;
        font-size: 21px; }
      .page-launch header .page-container > ul > li h4 {
        font-weight: 300;
        font-size: 11px;
        border-bottom: 1px solid #cfd3d7;
        margin-top: 11px;
        margin-bottom: 4px; }
      .page-launch header .page-container > ul > li > ul {
        line-height: 1.6; }
        .page-launch header .page-container > ul > li > ul > li > a {
          text-decoration: none;
          font-weight: 400; }
          .page-launch header .page-container > ul > li > ul > li > a:hover {
            border-bottom: 1px solid #347CAB; }
.page-launch main section {
  position: relative; }
  .page-launch main section h2 {
    font-size: 36px;
    font-weight: 500;
    margin: 44px auto 22px auto;
    text-align: center; }
  .page-launch main section a[id] {
    position: absolute;
    top: -99px; }
    .page-launch main section a[id]:target + article, .page-launch main section a[id]:target + figure {
      background-color: rgba(207, 211, 215, 0.2); }
      .page-launch main section a[id]:target + article h3, .page-launch main section a[id]:target + figure h3 {
        font-weight: 500; }
      .page-launch main section a[id]:target + article p, .page-launch main section a[id]:target + article figcaption, .page-launch main section a[id]:target + figure p, .page-launch main section a[id]:target + figure figcaption {
        font-weight: 400; }
  .page-launch main section article, .page-launch main section figure {
    border-radius: 5px;
    padding: 22px; }
    .page-launch main section article h3, .page-launch main section figure h3 {
      font-size: 21px;
      font-weight: 400;
      margin-bottom: 11px; }
    .page-launch main section article img, .page-launch main section figure img {
      box-sizing: content-box;
      border: 1px solid #cfd3d7;
      border-radius: 3px;
      box-shadow: 0 0 2px 1px rgba(7, 7, 6, 0.1); }
.page-launch .subtitle {
  font-weight: 300;
  font-size: 18px;
  display: block;
  text-align: center;
  margin: 0 auto 33px auto;
  line-height: 1.5; }
.page-launch .external {
  text-decoration: none;
  border-bottom: 1px solid rgba(73, 156, 210, 0.3);
  position: relative;
  margin-bottom: 11px;
  display: inline-block; }
  .page-launch .external::after {
    display: none;
    width: 15px;
    height: 15px;
    position: absolute;
    right: -1.2em;
    top: 0; }
  .page-launch .external:hover {
    border-bottom-color: #347CAB; }
    .page-launch .external:hover:after {
      display: block; }
.page-launch .edition-tag {
  font-size: 14px;
  font-weight: bold;
  color: white;
  border-radius: 4px;
  padding: 4px;
  text-decoration: none;
  display: inline-block;
  vertical-align: middle;
  position: relative; }
  .page-launch .edition-tag:hover > .tooltip {
    display: block; }
  .page-launch .edition-tag.developer {
    background-color: #36acea; }
  .page-launch .edition-tag.enterprise {
    background-color: #ec3646; }
  .page-launch .edition-tag.data-center {
    background-color: #7a8ba5; }
.page-launch p, .page-launch figcaption {
  margin-bottom: 11px;
  line-height: 1.4; }
.page-launch .go-code {
  padding-bottom: 44px;
  border-bottom: 1px solid rgba(207, 211, 215, 0.5); }
  .page-launch .go-code .language-logos {
    display: -webkit-flex;
    display: flex;
    width: 100%;
    margin: 33px auto;
    -webkit-justify-content: center;
            justify-content: center;
    -webkit-align-items: center;
            align-items: center; }
    .page-launch .go-code .language-logos > img {
      margin: 0; }
      .page-launch .go-code .language-logos > img + img {
        margin-left: 66px; }
  .page-launch .go-code .subtitle {
    margin: 0 auto;
    padding-bottom: 6px; }
  .page-launch .go-code .page-container {
    max-width: 1000px;
    padding: 0;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-justify-content: space-between;
            justify-content: space-between; }
  .page-launch .go-code figure {
    padding: 18px 0 11px 0;
    margin: 0 auto; }
  .page-launch .go-code img {
    display: block; }
  .page-launch .go-code .caption-center {
    text-align: center;
    margin: 0 auto;
    padding-top: 25px;
    font-size: 14px; }
  .page-launch .go-code .article {
    width: 47%;
    display: inline-block; }
.page-launch .external-analyzer {
  padding-bottom: 44px;
  border-bottom: 1px solid rgba(207, 211, 215, 0.5); }
  .page-launch .external-analyzer .page-container {
    max-width: 800px;
    min-width: 800px;
    padding: 0;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-justify-content: space-between;
            justify-content: space-between; }
  .page-launch .external-analyzer figure, .page-launch .external-analyzer article {
    padding: 22px 22px 22px 0; }
  .page-launch .external-analyzer img {
    margin-top: 30px;
    display: block;
    margin-left: auto;
    margin-right: auto; }
  .page-launch .external-analyzer .subtitle {
    padding: 0 20px 0 20px; }
  .page-launch .external-analyzer article {
    width: 47%;
    display: inline-block; }
.page-launch .rules-php-developer {
  padding-bottom: 44px;
  border-bottom: 1px solid rgba(207, 211, 215, 0.5); }
  .page-launch .rules-php-developer .page-container {
    max-width: 800px;
    min-width: 1196px;
    padding: 0;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-justify-content: space-between;
            justify-content: space-between; }
  .page-launch .rules-php-developer figure, .page-launch .rules-php-developer article {
    padding: 22px 22px 22px 0; }
  .page-launch .rules-php-developer img {
    margin-top: 30px;
    display: block;
    margin-left: auto;
    margin-right: auto; }
  .page-launch .rules-php-developer .subtitle {
    padding: 0 190px 0 190px; }
  .page-launch .rules-php-developer article {
    width: 47%;
    display: inline-block; }
.page-launch .security {
  padding-bottom: 44px;
  border-bottom: 1px solid rgba(207, 211, 215, 0.5); }
  .page-launch .security .page-container {
    max-width: 800px;
    min-width: 800px;
    padding: 0;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-justify-content: space-between;
            justify-content: space-between;
    margin: auto;
    min-width: 0; }
  .page-launch .security figure {
    padding: 22px 0 30px 0; }
  .page-launch .security article {
    padding: 11px 0 11px 0; }
  .page-launch .security img {
    display: block;
    margin-left: auto;
    margin-right: auto; }
  .page-launch .security .subtitle {
    padding: 0 20px 0 20px; }
  .page-launch .security article {
    width: 47%;
    display: inline-block; }
.page-launch .pull-request-analyze .page-container {
  padding: 0;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-justify-content: space-between;
          justify-content: space-between; }
  .page-launch .pull-request-analyze .page-container article {
    margin-bottom: 44px; }
  .page-launch .pull-request-analyze .page-container .subtitle {
    padding: 0 100px 0 100px; }
  .page-launch .pull-request-analyze .page-container figure {
    display: inline-block;
    width: 48%;
    max-width: 50%;
    padding-bottom: 40px; }
    .page-launch .pull-request-analyze .page-container figure h3 {
      text-align: center;
      margin-bottom: 14px; }
    .page-launch .pull-request-analyze .page-container figure figcaption {
      text-align: center; }
    .page-launch .pull-request-analyze .page-container figure img {
      margin-bottom: 11px; }
  .page-launch .pull-request-analyze .page-container article {
    display: inline-block;
    width: 30%;
    max-width: 33%; }
.page-launch .ux-improve {
  border-top: 1px solid rgba(207, 211, 215, 0.5); }
  .page-launch .ux-improve h2 {
    min-width: 600px; }
  .page-launch .ux-improve .page-container {
    padding: 0;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-justify-content: space-between;
            justify-content: space-between; }
    .page-launch .ux-improve .page-container .subtitle {
      padding: 0 100px 0 100px; }
    .page-launch .ux-improve .page-container article {
      margin-bottom: 44px; }
    .page-launch .ux-improve .page-container figure {
      display: inline-block;
      width: 48%;
      max-width: 50%; }
      .page-launch .ux-improve .page-container figure img {
        margin-bottom: 11px; }
    .page-launch .ux-improve .page-container article {
      display: inline-block;
      width: 30%;
      max-width: 33%; }
.page-launch #download {
  padding-top: 33px;
  padding-bottom: 44px;
  background-color: #f9f9fb;
  text-align: center; }
  .page-launch #download > h2 {
    font-size: 36px;
    font-weight: 100;
    margin: 0 auto 11px auto;
    text-align: center; }
  .page-launch #download > .btn {
    margin-bottom: 22px; }

.tooltip {
  position: absolute;
  top: 28px;
  text-align: center;
  overflow: visible;
  width: 200px;
  left: calc(50% - 100px);
  display: none;
  z-index: 4;
  padding: 5px 11px;
  font-size: 12px;
  font-weight: 100;
  color: #ffffff;
  background-color: #434447;
  border: 1px solid #434447;
  box-shadow: 0 0 5px 2px rgba(7, 7, 6, 0.1);
  border-radius: 3px;
  border-collapse: collapse; }
  .tooltip:after, .tooltip:before {
    bottom: 100%;
    left: 50%;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none; }
  .tooltip:after {
    border-color: rgba(67, 68, 71, 0);
    border-bottom-color: #434447;
    border-width: 5px;
    margin-left: -5px; }
  .tooltip:before {
    border-color: rgba(67, 68, 71, 0);
    border-bottom-color: #434447;
    border-width: 6px;
    margin-left: -6px; }

.page-announcement .menu-nav-header {
  width: 20%;
  display: inline-block; }
.page-announcement header {
  background-color: #f9f9fb;
  padding-bottom: 66px; }
  .page-announcement header .subtitle {
    font-weight: 400; }
  .page-announcement header .subtitle-header {
    font-size: 26px;
    text-align: center;
    line-height: 1.3;
    max-width: 780px;
    margin: auto; }
  .page-announcement header h1 {
    font-size: 55px;
    font-weight: 100;
    color: #499cd2;
    padding-top: 66px;
    padding-bottom: 22px;
    padding-left: 0;
    padding-right: 0;
    margin: 0 auto;
    text-align: center; }
  .page-announcement header ul, .page-announcement header li {
    list-style: red; }
  .page-announcement header .page-container > ul {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
            flex-direction: row;
    -webkit-justify-content: space-between;
            justify-content: space-between;
    max-width: 960px;
    margin: 0 auto; }
    .page-announcement header .page-container > ul > li {
      display: block;
      width: 31.5%;
      border-radius: 5px;
      border: 1px solid #cfd3d7;
      box-shadow: 0 0 2px 1px rgba(7, 7, 6, 0.1);
      background-color: #ffffff;
      padding: 16px 33px 22px;
      line-height: 2; }
      .page-announcement header .page-container > ul > li h3 {
        font-weight: 400;
        font-size: 21px; }
      .page-announcement header .page-container > ul > li h4 {
        font-weight: 300;
        font-size: 11px;
        border-bottom: 1px solid #cfd3d7;
        margin-top: 11px;
        margin-bottom: 4px; }
      .page-announcement header .page-container > ul > li > ul {
        line-height: 1.6; }
        .page-announcement header .page-container > ul > li > ul > li > a {
          text-decoration: none;
          font-weight: 400; }
          .page-announcement header .page-container > ul > li > ul > li > a:hover {
            border-bottom: 1px solid #347CAB; }
.page-announcement main section {
  position: relative; }
  .page-announcement main section h2 {
    font-size: 36px;
    font-weight: 500;
    margin: 44px auto 22px auto;
    text-align: center; }
  .page-announcement main section a[id] {
    position: absolute;
    top: -99px; }
    .page-announcement main section a[id]:target + article, .page-announcement main section a[id]:target + figure {
      background-color: rgba(207, 211, 215, 0.2); }
      .page-announcement main section a[id]:target + article h3, .page-announcement main section a[id]:target + figure h3 {
        font-weight: 500; }
      .page-announcement main section a[id]:target + article p, .page-announcement main section a[id]:target + article figcaption, .page-announcement main section a[id]:target + figure p, .page-announcement main section a[id]:target + figure figcaption {
        font-weight: 400; }
  .page-announcement main section article, .page-announcement main section figure {
    border-radius: 5px;
    padding: 22px; }
    .page-announcement main section article h3, .page-announcement main section figure h3 {
      font-size: 21px;
      font-weight: 400;
      margin-bottom: 11px; }
    .page-announcement main section article img, .page-announcement main section figure img {
      box-sizing: content-box;
      border: 1px solid #cfd3d7;
      border-radius: 3px;
      box-shadow: 0 0 2px 1px rgba(7, 7, 6, 0.1); }
.page-announcement .subtitle {
  font-weight: 300;
  font-size: 18px;
  display: block;
  text-align: center;
  margin: 0 auto 33px auto;
  line-height: 1.5; }
.page-announcement .external {
  text-decoration: none;
  border-bottom: 1px solid rgba(73, 156, 210, 0.3);
  position: relative;
  margin-bottom: 11px;
  display: inline-block; }
  .page-announcement .external::after {
    display: none;
    width: 15px;
    height: 15px;
    position: absolute;
    right: -1.2em;
    top: 0; }
  .page-announcement .external:hover {
    border-bottom-color: #347CAB; }
    .page-announcement .external:hover:after {
      display: block; }
.page-announcement .edition-tag {
  font-size: 14px;
  font-weight: bold;
  color: white;
  border-radius: 4px;
  padding: 4px;
  text-decoration: none;
  display: inline-block;
  vertical-align: middle;
  position: relative; }
  .page-announcement .edition-tag:hover > .tooltip {
    display: block; }
  .page-announcement .edition-tag.developer {
    background-color: #36acea; }
  .page-announcement .edition-tag.enterprise {
    background-color: #ec3646; }
  .page-announcement .edition-tag.data-center {
    background-color: #7a8ba5; }
.page-announcement p, .page-announcement figcaption {
  margin-bottom: 11px;
  line-height: 1.4; }
.page-announcement .image-title {
  display: inline !important;
  vertical-align: middle; }
.page-announcement .screenshot-center {
  margin: 0 auto;
  display: block; }
.page-announcement .caption-center {
  text-align: center;
  margin: 0 auto;
  padding-top: 25px;
  font-size: 14px; }
.page-announcement .subtitle {
  margin: 0 auto;
  padding-bottom: 6px;
  max-width: 780px; }
.page-announcement .no-shadow {
  box-shadow: none;
  border: none; }
.page-announcement .one-column {
  padding-bottom: 44px;
  border-bottom: 1px solid rgba(207, 211, 215, 0.5); }
  .page-announcement .one-column .page-container {
    max-width: 1000px;
    padding: 0;
    -webkit-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-justify-content: space-between;
            justify-content: space-between; }
  .page-announcement .one-column figure {
    margin: 0 auto; }
  .page-announcement .one-column img {
    display: block;
    margin-left: auto;
    margin-right: auto; }
  .page-announcement .one-column .article {
    width: 47%;
    display: inline-block; }
.page-announcement .two-columns {
  padding-bottom: 44px;
  border-bottom: 1px solid rgba(207, 211, 215, 0.5); }
  .page-announcement .two-columns .page-container {
    max-width: 800px;
    min-width: 920px;
    padding: 0;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-justify-content: space-between;
            justify-content: space-between; }
  .page-announcement .two-columns .subtitle {
    padding-bottom: 40px; }
  .page-announcement .two-columns img {
    display: block;
    margin-left: auto;
    margin-right: auto; }
  .page-announcement .two-columns article {
    width: 50%;
    display: inline-block; }
.page-announcement .three-columns {
  border-top: 1px solid rgba(207, 211, 215, 0.5); }
  .page-announcement .three-columns .page-container {
    padding: 0;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-justify-content: space-between;
            justify-content: space-between; }
    .page-announcement .three-columns .page-container .subtitle {
      padding: 0 100px 0 100px;
      max-width: none;
      margin-bottom: 30px; }
    .page-announcement .three-columns .page-container figure {
      display: inline-block;
      width: 48%;
      max-width: 50%; }
      .page-announcement .three-columns .page-container figure img {
        margin-bottom: 11px; }
    .page-announcement .three-columns .page-container article {
      display: inline-block;
      width: 30%;
      max-width: 33%; }
.page-announcement .bullet-image article {
  padding: 11px; }
.page-announcement .bullet-image img {
  display: block;
  margin-left: auto;
  margin-right: auto;
  box-shadow: none;
  padding-right: 7px;
  border: none;
  vertical-align: middle;
  padding-bottom: 3px; }
.page-announcement .bullet-image ul, .page-announcement .bullet-image li, .page-announcement .bullet-image ol {
  list-style-type: disc;
  margin: 0 0 7px 27px;
  line-height: 21px; }
.page-announcement .spacer {
  padding-bottom: 44px; }
.page-announcement #download {
  padding-top: 33px;
  padding-bottom: 44px;
  background-color: #f9f9fb;
  text-align: center; }
  .page-announcement #download > h2 {
    font-size: 36px;
    font-weight: 100;
    margin: 0 auto 11px auto;
    text-align: center; }
  .page-announcement #download > .btn {
    margin-bottom: 22px; }

.tooltip {
  position: absolute;
  top: 28px;
  text-align: center;
  overflow: visible;
  width: 200px;
  left: calc(50% - 100px);
  display: none;
  z-index: 4;
  padding: 5px 11px;
  font-size: 12px;
  font-weight: 100;
  color: #ffffff;
  background-color: #434447;
  border: 1px solid #434447;
  box-shadow: 0 0 5px 2px rgba(7, 7, 6, 0.1);
  border-radius: 3px;
  border-collapse: collapse; }
  .tooltip:after, .tooltip:before {
    bottom: 100%;
    left: 50%;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none; }
  .tooltip:after {
    border-color: rgba(67, 68, 71, 0);
    border-bottom-color: #434447;
    border-width: 5px;
    margin-left: -5px; }
  .tooltip:before {
    border-color: rgba(67, 68, 71, 0);
    border-bottom-color: #434447;
    border-width: 6px;
    margin-left: -6px; }
