#cloud-site .full-bleed-right {
  margin-right: -10000px;
  padding-right: 10000px;
}

.flex {
  display: flex;
}

.disp-b {
  display: block;
}

.disp-ib {
  display: inline-block;
}

.flex-c {
  flex-direction: column;
}

.flex-r {
  flex-direction: row;
}

.flex-ac {
  align-items: center;
}

.flex-as {
  align-items: flex-start;
}

.flex-jc {
  justify-content: center;
}

.flex-1 {
  flex: 1;
}

.flex-2 {
  flex: 2;
}

.flex-3 {
  flex: 3
}

.flex-5 {
  flex: 5;
}

.w-300 {
  width: 300px;
}

.w-400 {
  width: 400px;
}

.min-w-150 {
  min-width: 150px;
}

.min-w-180 {
  min-width: 180px;
}

.min-w-200 {
  min-width: 200px;
}

.min-w-250 {
  min-width: 250px;
}

.min-w-300 {
  min-width: 300px;
}

.max-w-800 {
  max-width: 800px;
}

.border-bottom {
  border-bottom: 1px solid #e4e4e4;
}

.bg-gray,
.flex-card.bg-gray {
  background-color: #f6f6f6;
}

.bg-blue {
  background-color: #448aff;
}

.bg-white {
  background-color: #fff;
}

.color-gray {
  color: #939393;
}

blockquote.text-light {
  color: #fff;
  font-size: 24px;
  font-weight: 300;
  line-height: 1.8em;
  margin: 0;
  padding: 50px 10%;
}

blockquote.text-light em {
  color: #fff;
  font-size: 12px;
  opacity: 0.87;
}

.with-padding {
  padding-left: 8%;
  padding-right: 8%;
}

.section.alternate .title {
  color: #424242;
  font-size: 40px;
  font-weight: 300;
  line-height: 1.2em;
}

.section.alternate .title {
  margin-bottom: 16px;
}

.section.alternate .desc {
  color: #616161;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.8em;
}

.section.alternate .alternate-left,
.section.alternate .alternate-right {
  padding: 50px 0;
}

.section.alternate .spacer {
  width: 8%;
}

.section.alternate .alternate-left {
  flex-wrap: wrap-reverse;
}

.section.alternate .alternate-right {
  flex-wrap: wrap;
}

.alternate-left > *,
.alternate-right > * {
  margin: 20px 0;
}

.alternate-left.wrap-250 > div:not(.spacer),
.alternate-right.wrap-250 > div:not(.spacer) {
  min-width: 250px;
}

.section .link {
  font-size: 14px;
  padding-right: 24px;
  position: relative;
  text-transform: uppercase;
}

.section .link:after {
  background-color: #039be5;
  background-image: url('//www.gstatic.com/images/icons/material/system/1x/arrow_upward_white_24dp.png');
  background-repeat: no-repeat;
  background-size: contain;
  border-radius: 50%;
  content: '';
  height: 15px;
  position: absolute;
  right: 0;
  top: calc(50% - 7.5px);
  transform: rotateZ(90deg);
  width: 15px;
}

.flex-card-container {
  clear: both;
  display: flex;
}

.flex-card-container.wrap,
.wrap {
  flex-wrap: wrap;
}

.flex-card-container.wrap .flex-card {
  margin-bottom: 20px;
  margin-top: 20px;
}

.flex-card {
  background: #fff;
  border-radius: 2px;
  box-sizing: border-box;
  margin-right: 20px;
  position: relative;
}



.flex-card.hover {
  cursor: pointer;
  transition: all 0.3s;
}

#cloud-site a.flex-card.hover {
  text-decoration: none;
}

.flex-card.hover.no-pointer {
  cursor: default;
}

.flex-card.hover:hover {
  box-shadow: 0 4px 4px rgba(1,67,163,0.24),
              0 0 4px rgba(1,67,163,0.12),
              0 6px 18px rgba(43,133,231,0.12);
  text-decoration: none;
  transform: translate3d(0, -2px, 0);
}

.flex-card.shadow {
  box-shadow: 0 2px 2px rgba(0,0,0,0.24),0 0 2px rgba(0,0,0,0.12);
}

.card-pad-standard {
  padding-left: 36px;
  padding-right: 36px;
}

.flex-card.padding {
  padding: 16px;
}

.flex-card.border-top {
  border-top: 2px solid #0091EA;
}

.flex-card .title {
  color: #414141;
  font-size: 22px;
}

.flex-card .desc {
  color: #545454;
  font-size: 14px;
  line-height: 1.4;
}

.nowrap {
  white-space: nowrap;
}

/* Left sidebar */

.left-sidebar-container {
  background: #fff;
  bottom: 0;
  box-shadow: 2px 0 2px #bababa;
  line-height: 1.6em;
  position: absolute;
  top:0;
  z-index: 1;
}

.left-sidebar-container,
.left-sidebar {
  min-width: 210px;
  width: 210px;
}

.left-sidebar {
  overflow: auto;
  padding-bottom: 30px;
  position: fixed;
}

.left-sidebar::-webkit-scrollbar {
  height: 16px;
  width: 8px;
}
.left-sidebar::-webkit-scrollbar-button {
  height: 0px;
  width: 0px;
}

.left-sidebar::-webkit-scrollbar-button:start:decrement,
.left-sidebar::-webkit-scrollbar-button:end:increment {
  display: block;
}

.left-sidebar::-webkit-scrollbar-button:vertical:start:increment,
.left-sidebar::-webkit-scrollbar-button:vertical:end:decrement {
  display: none;
}

.left-sidebar::-webkit-scrollbar-track:vertical {
  background-clip: padding-box;
  border: 0 solid transparent;
}

.left-sidebar::-webkit-scrollbar-thumb {
  -webkit-box-shadow: inset 1px 1px 0px rgba(0,0,0,0.1),
                      inset 0px -1px 0px  rgba(0,0,0,0.07);
  background-color: rgba(0, 0, 0, .2);
  min-height: 28px;
  padding-top: 100px;
}

.left-sidebar::-webkit-scrollbar-thumb:hover {
  -webkit-box-shadow: inset 1px 1px 1px rgba(0, 0, 0, .25);
  background-color: rgba(0, 0, 0, .4);
}

.left-sidebar::-webkit-scrollbar-thumb:active {
  -webkit-box-shadow: inset 1px 1px 3px rgba(0, 0, 0, .35);
  background-color: rgba(0, 0, 0, .5);
}

.left-sidebar::-webkit-scrollbar-thumb:vertical {
  border: 0 solid transparent;
  border-right: 5px solid transparent;
}

.left-sidebar::-webkit-scrollbar-track:hover {
   -webkit-box-shadow: inset 1px 0px 0px rgba(0, 0, 0, .1);
  background-color: rgba(0, 0, 0, .05);
}

.left-sidebar::-webkit-scrollbar-track:active {
  -webkit-box-shadow: inset 1px 0px 0px rgba(0, 0, 0, .14),
                      inset -1px -1px 0px  rgba(0, 0, 0, .07);
  background-color: rgba(0, 0, 0, .05);
}

.left-sidebar .title {
  color: #414141;
  font-size: 24px;
  font-weight: 500;
  line-height: 1.2em;
  min-height: 130px;
  padding: 5px 20px;
}

.left-sidebar .subheader {
  color: #414141;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.2em;
  margin-top: 24px;
  min-height: 54px;
}

.left-sidebar .subheader,
.left-sidebar .nav-links a {
  border-bottom: 1px solid #f5f5f5;
  padding: 5px 20px;
}

#cloud-site .left-sidebar .nav-links a,
#cloud-site  .left-sidebar .nav-links a:visited {
  align-items: center;
  color: #757575;
  cursor: pointer;
  display: flex;
  font-size: 14px;
  font-weight: 500;
  min-height: 54px;
  text-decoration: none;
}

#cloud-site  .left-sidebar .nav-links a:hover {
  background: #f5f5f5;
  color: #0091ea;
  text-decoration: none;
}

#cloud-site .left-sidebar .nav-links a.selected {
  color: #0091ea;
}

.article-content {
  margin-left: 210px;
}

.training-circle-logo {
  background: #f5f5f5 url(/images/certifications/cloud_lockup.png) no-repeat 50%;
  background-size: 40px;
  border: 3px solid;
  border-radius: 100px;
  height: 75px;
  width: 75px;
}

.training-circle-logo-bg-white {
  background: #fff url(/images/certifications/cloud_lockup.png) no-repeat 50%;
}

.training-circle-logo-w150 {
  background-size: 90px;
  height: 150px;
  width: 150px;
}

.partners img {
  max-width: 150px;
  max-height: 70px;
}

.devsite-footer-linkboxes-all-backup {
  position: relative;
  z-index: 2;
}

@media handheld and (max-width: 720px),
screen and (max-device-width: 720px),
screen and (max-width: 720px) {

  .left-sidebar-container {
    display: none !important;
  }

  .article-content {
    margin-left: 0px;
  }

  .headline .title,
  .section.alternate .title {
    font-size: 32px;
  }

  blockquote {
    font-size: 20px;
  }

  .flex-card.w-400 {
    margin-right: 0;
  }
}

@media handheld and (max-width: 320px),
screen and (max-device-width: 320px),
screen and (max-width: 320px) {
  .alternate-left.wrap-250 > div:not(.spacer),
  .alternate-right.wrap-250 > div:not(.spacer) {
    min-width: 150px;
  }
}

@media all and (min-width: 781px) {
  .is-hidden-desktop {
    display: none !important;
  }
}

@media all and (min-width: 900px) {
  .is-hidden-desktop-large {
    display: none !important;
  }
}

@media all and (max-width: 899px) {
  .is-hidden-tablet-large {
    display: none !important;
  }
}

@media all and (max-width: 780px) {
  .is-hidden-tablet {
    display: none !important;
  }
}
/**************/

.f-regular {
  font-weight: 400;
}

.section .link.f-medium,
.f-medium {
  font-weight: 500;
}

.w-270 {
  width: 270px;
}

.w-370 {
  width: 370px;
}

.min-w-150 {
  min-width: 150px;
}

.min-w-300 {
  min-width: 300px;
}

.headline {
  align-items: center;
  display: flex;
  margin: 80px 0 20px;
}

.headline .title {
  color: #424242;
  font-size: 40px;
  font-weight: 300;
  line-height: 1.2em;
}

.section {
  padding-top: 1px;
}

.home-link-container {
  font-size: 11px;
  padding-left: 20px;
  padding-top: 36px;
}

.home-link-container .material-icons {
  font-size: 14px;
  vertical-align: middle;
}

#cloud-site a.home-link,
#cloud-site a.home-link:visited {
  color: #757575;
  font-weight: 300;
  line-height: 1.6em;
}

header.header.alternate {
  flex-wrap: wrap;
}

header.header.no-border {
  border: 0;
}

.header .hero-title {
  color: #424242;
  font-size: 48px;
  font-weight: 300;
  line-height: 1.2em;
  margin-bottom: 20px;
  margin-top: 0;
}

.header .hero-subtitle {
  color: #616161;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.8em;
}

.step-card {
  display: flex;
  flex-direction: row;
  min-height: 210px;
}

.step-card .title {
  line-height: 1.4em;
}

.step-card .desc {
  line-height: 1.6em;
}

.step-card .step-container {
  color: #fff;
  display: flex;
  flex-direction: column;
  font-size: 14px;
  overflow: hidden;
  width: 155px;
}

.step-card .duration {
  color: #212121;
  font-size: 10px;
}

.step-container .step {
  align-items: center;
  display: flex;
  flex-direction: column;
  flex: 1;
  font-size: 22px;
  font-weight: 500;
  justify-content: center;
  line-height: 1.8em;
  padding-bottom: 10px;
  padding-top: 10px;
}

.step-container .step-no {
  font-size: 48px;
}

.step-container .course-id {
  background: rgba(0,0,0,0.15);
  line-height: 1.8em;
}

.step > * {
  margin-bottom: 8px;
  margin-top: 8px;
  padding-right: 5px;
}

.bg-step-1 {
  background-color: #498DFC;
}

.bg-step-2 {
  background-color: #1FBCD2;
}

.bg-step-3 {
  background-color: #1697A5;
}

.bg-step-4 {
  background-color: #52AE81;
}

cloud-zippy {
  border-bottom: 1px solid #f5f5f5;
}

.zippy-container.expanded .toggle-zippy {
  margin-bottom: 10px;
}

.toggle-zippy {
  margin-bottom: 0;
  overflow: hidden;
  transition: all 0.278s ease-in-out;
}

.toggle-zippy > :last-child {
  padding: 5px 0;
}

.zippy-title {
  /*white-space: nowrap;*/
  cursor: pointer;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.6em;
  min-height: 40px;
  outline: none;
  padding: 8px 28px 8px 0;
  position: relative;
  text-overflow: ellipsis;
}

.zippy-title::after {
  background: url('/images/support/down_arrow.svg') no-repeat;
  background-position: 50% 50%;
  background-size: 70%;
  content: '';
  display: block;
  height: 100%;
  position: absolute;
  right: 0;
  top: 0;
  transition: all 0.278s linear;
  width: 40px;
}

.zippy-content {
  border: none;
  box-sizing: border-box;
  padding: 0 20px;
}

.zippy-container.expanded .zippy-title::after {
  transform: rotateX(180deg);
}

.modules {
  color: #545454;
}

.modules .zippy-title {
  font-weight: 400;
}

.modules h2 {
  font-size: 14px;
  font-weight: 500;
  margin-bottom: 16px;
  margin-top: 0;
}

.modules .zippy-container {
  border-bottom: 1px solid #c7c7c7;
  padding: 20px 0;
}

.modules .zippy-content {
  font-size: 14px;
  padding: 0;
}

.article-content {
  font-size: 16px;
}

.course-details h2 {
  color: #414141;
  font-size: 20px;
  font-weight: 500;
}

.course-details h2.main {
  font-size: 24px;
}

.course-details {
  color: #757575;
  font-size: 16px;
  line-height: 1.6em;
}

.border-top {
  border-top: 1px solid;
}

.border-top-3 {
  border-top: 3px solid;
}

.border-color-teal {
  border-color: #00BFA5;
}

.border-color-blue {
  border-color: #5591F6;
}

.border-color-c7 {
  border-color: #c7c7c7;
}

.border-color-grey {
  border-color: #9b9b9b;
}

.border-color-yellow {
  border-color: #fbbc04;
}

.paginator-wrapper {
  color: #2B85E7;
  margin: 20px;
  text-align: center;
}

.paginator-wrapper .page-item-number {
  cursor: pointer;
  display: inline-block;
  list-style-type: none;
  margin-left: 15px;
}

.paginator-wrapper .page-item-number.active a,
.paginator-wrapper .page-item-number a[disabled] {
  cursor: default;
  color: #000;
}

.bottom-certification img {
  background: #fff;
  margin-top: 2.5%;
  max-width: 300px;
  min-width: 250px;
  padding: 30px;
  width: 70%;
}

.section.bottom-certification .title {
  font-size: 32px;
}

.filter-box {
  align-items: center;
  color: #414141;
  display: flex;
  font-size: 14px;
  white-space: nowrap;
}

.filter-box .filter-text {
  font-size: 22px;
  font-weight: 500;
}

.filter-box .show-online {
  padding-left: 20px;
}

.filter-wrapper {
  border-right: 1px solid #c7c7c7;
  padding: 0 25px;
}

.filter-wrapper .dropdown {
  border-bottom: 1px solid #c7c7c7;
  padding: 5px 10px;
  position: relative;
}

.filter-wrapper a {
  cursor: pointer;
  display: block;
  padding-right: 20px;
  position: relative;
}

.filter-box .icon-caret {
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 5px solid;
  position: absolute;
  right: 0;
  top: calc(50% - 2.5px);
}

.filter-box .is-active > .dropdown-menu {
  display: block;
}

.filter-box .dropdown-menu {
  background-color: #fff;
  border-radius: 2px;
  border: none;
  box-shadow: 0 2px 5px 0 rgba(0,0,0,.16),0 2px 5px 0 rgba(0,0,0,.23);
  color: #757575;
  display: none;
  font-size: 16px;
  list-style: none;
  max-height: 300px;
  overflow: auto;
  padding: 4px 18px;
  position: absolute;
  top: 100%;
  z-index: 10;
}

.filter-box .dropdown-menu li a {
  font-size: 13px;
}

.partners {
  padding-bottom: 80px;
  padding-top: 8px;
}

#cloud-site .training-section-title,
#cloud-site .training-subhead {
  color: inherit;
  margin-bottom: 40px;
  max-width: 515px;
}

#cloud-site .training-subhead {
  font-weight: 500;
  opacity: .82;
}

.training-section {
  padding-left: 24px;
  padding-right: 24px;
}

.training-section--blue {
  background: #1a73e8;
  color: white;
}

.training-section--gray {
  background: #f8f9fa;
}

.training-section--yellow {
  background: #fbbc04;
}

.training-section--shapes {
  background: url(/images/why-google/why-google_bg.svg) no-repeat right 90px bottom -50px/40%;
}

.training-card {
  color: #202124;
}

.training-card__container--2up {
  margin-left: auto;
  margin-right: auto;
  max-width: 978px;
}

.training-card__container--2up .training-card {
  flex-basis: 100%;
}

.track {
  counter-reset: track-step;
}

.track__title {
  margin-bottom: 64px !important;
}

.track:not(:last-child) {
  margin-bottom: 96px;
}

.track .course-block {
  max-width: 800px;
  padding-left: 56px;
  position: relative;
}

.track .course-block:before {
  align-items: center;
  border: 2px solid #1A73E8;
  border-radius: 50%;
  color: #1A73E8;
  content: counter(track-step);
  counter-increment: track-step;
  display: flex;
  font-family: 'Google Sans', 'Roboto', sans-serif;
  font-size: 22px;
  font-weight: 500;
  height: 32px;
  justify-content: center;
  left: 0;
  position: absolute;
  top: 0;
  width: 32px;
}

.track .course-block:not(:last-child) {
  margin-bottom: 64px;
}

.course-block {
  max-width: 800px;
}

.course-block__buttons .cloud-button:not(:last-child) {
  margin-right: 40px;
}

#cloud-site .zippy-mig-content .cloud-collapse__panel .cloud-headline4 {
  font-size: 16px;
}

@media handheld and (max-width: 900px),
screen and (max-device-width: 900px),
screen and (max-width: 900px) {
  .filter-box {
    align-items: initial;
    background-color: #fff;
    flex-direction: column;
    margin: auto;
    max-width: 500px;
    white-space: initial;
  }

  .filter-box > * {
    border-bottom: 1px solid #e6e6e6;
    margin-left: 0;
    margin-right: 0;
    padding: 20px 20px;
  }

  .filter-wrapper {
    border-right: none;
  }

  .filter-wrapper .dropdown {
    border: none;
    padding: 0;
  }

  .partners img {
    display: block;
    margin-left: auto;
    margin-right: auto;
    padding-bottom: 20px;
  }

  .partners img.last {
    padding-bottom: 0;
  }
}

@media screen and (max-width: 930px) {
  .certification-section .flex-card {
    width: 315px;
  }
}

@media screen and (max-width: 800px) {
  .certification-section .flex-card {
    width: 100%;
  }
}

@media all and (max-width: 899px) {
  .headline {
     display: block;
  }

  .headline .title {
     padding-bottom: 15px;
  }
}

@media handheld and (max-width: 720px),
screen and (max-device-width: 720px),
screen and (max-width: 720px) {
  .header .hero-title {
    font-size: 36px;
  }

  .step-card {
    flex-direction: column;
  }

  .step-card .step-container {
    flex-direction: row;
    width: initial;
  }

  .step-container .step {
    flex-direction: row;
    font-size: 18px;
    justify-content: flex-start;
    line-height: 1.2em;
  }

  .step-container .step-no {
    font-size: 18px;
  }

  .step-card .course-id {
    line-height: 1.4em;
    padding: 16px;
  }
}

@media (min-width: 600px) {
  #cloud-site .training-section-title,
  #cloud-site .training-subhead {
    margin-bottom: 72px;
  }

  .training-section {
    padding-left: 40px;
    padding-right: 40px;
  }

  .training-card__container--2up .training-card {
    flex-basis: calc(50% - 24px);
  }

  #welcome .training-card__container,
  #welcome .training-card {
    max-width: 100%;
  }
}

@media (min-width: 1024px) {
  .training-section {
    padding-left: 80px;
    padding-right: 80px;
  }
}
