@import url("https://fonts.googleapis.com/css?family=Raleway:400,700&display=swap");
.wrap {
  max-width: 1336px;
  margin: 0 auto;
  padding: 0 20px;
  font-family: "Raleway", sans-serif; }
  @media (min-width: 1200px) {
    .wrap {
      padding: 0 280px; } }

.flex {
  display: block; }
  @media (min-width: 768px) {
    .flex {
      display: flex; } }

.banner {
  width: 100%;
  padding: 30px 0;
  color: #fff; }
  .banner.green {
    background: #8CC63F; }
    .banner.green path {
      fill: #0F3D25; }
  .banner.blue {
    background: #1ABEE5; }
    .banner.blue path {
      fill: #0A3D4A; }
  .banner.purple {
    background: #C49EF2; }
    .banner.purple path {
      fill: #281F67; }
  .banner .cta-text {
    flex: 1 1 66.6666666%; }
    @media (min-width: 768px) {
      .banner .cta-text {
        padding-left: 20px; } }
    .banner .cta-text h3 {
      font-size: 1.7em;
      margin-bottom: 5px; }
    .banner .cta-text p {
      line-height: 1.7em; }
  .banner .cta-img {
    flex: 1 1 33.3333333%;
    display: flex;
    justify-content: center;
    min-width: 250px; }
  .banner svg {
    max-width: 300px;
    max-height: 300px; }
    @media (min-width: 768px) {
      .banner svg {
        max-width: 400px;
        max-height: 300px; } }

.btn {
  width: 300px;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 15px;
  color: #fff;
  background: #0F3D25;
  text-decoration: none;
  font-weight: bold;
  text-transform: uppercase;
  transition: all 0.25s; }
  .blue .btn {
    background: #0A3D4A; }
  .purple .btn {
    background: #281F67; }

.b1 .btn {
  background: #fff;
  padding: 0; }
  .b1 .btn span {
    width: 100%;
    padding: 15px;
    background: #0A3D4A;
    transition: all 0.25s; }
  .b1 .btn:hover {
    transform: translateX(10px) translateY(10px) scale(1.1); }
    .b1 .btn:hover span {
      transform: translateX(-20px) translateY(-20px); }

.b2 .btn {
  background: #fff;
  padding: 0;
  transition: all 0.25s cubic-bezier(0.42, 0, 0, 2.71); }
  .b2 .btn span {
    width: 100%;
    padding: 15px;
    background: #0A3D4A;
    transition: all 0.25s cubic-bezier(0.42, 0, 0, 2.71); }
  .b2 .btn:hover {
    transform: translateX(10px) translateY(10px) scale(1.1); }
    .b2 .btn:hover span {
      transform: translateX(-20px) translateY(-20px); }

.b3 .btn {
  background: #fff;
  padding: 0;
  transition: all 0.25s;
  border: solid 2px #0A3D4A; }
  .b3 .btn span {
    width: 100%;
    padding: 15px;
    background: #0A3D4A;
    transition: all 0.25s; }
  .b3 .btn:hover {
    transform: scale(1);
    border-color: #fff;
    background: none; }
    .b3 .btn:hover span {
      transform: scale(0.8); }

.b4 .btn {
  background: none;
  padding: 0;
  height: 50px; }
  .b4 .btn .flip-contain {
    transition: all 0.7s ease-out;
    position: relative;
    display: flex;
    width: 100%;
    height: 50px; }
    .b4 .btn .flip-contain span {
      width: 100%;
      -webkit-backface-visibility: hidden;
      backface-visibility: hidden;
      position: absolute;
      top: 0;
      left: 0;
      box-sizing: border-box; }
      .b4 .btn .flip-contain span.front {
        background: #0F3D25;
        z-index: 2;
        padding: 15px; }
      .b4 .btn .flip-contain span.back {
        background: #fff;
        color: #0A3D4A;
        z-index: 1;
        padding: 15px; }
  .b4 .btn:hover .flip-contain {
    -webkit-transform: rotateY(360deg);
    transform: rotateY(360deg); }

.b5 .btn {
  background: #fff;
  padding: 0;
  transition: all 0.25s;
  border: solid 2px #0A3D4A;
  position: relative;
  overflow: hidden;
  height: 50px; }
  .b5 .btn span {
    width: 100%;
    padding: 15px;
    height: 50px;
    box-sizing: border-box;
    transition: all 0.25s;
    position: absolute;
    top: 0;
    left: 0; }
    .b5 .btn span.front {
      background: #0A3D4A;
      z-index: 2; }
    .b5 .btn span.back {
      background: #fff;
      color: #0A3D4A;
      z-index: 1; }
  .b5 .btn:hover .front {
    left: 110%; }

.b6 .btn {
  background: #fff;
  padding: 0;
  transition: all 0.25s;
  border: solid 2px #0A3D4A;
  position: relative;
  overflow: hidden;
  height: 50px; }
  .b6 .btn span {
    width: 100%;
    padding: 15px;
    height: 50px;
    box-sizing: border-box;
    transition: all 0.25s;
    position: absolute;
    top: 0;
    left: 0; }
    .b6 .btn span.front {
      background: #0A3D4A;
      z-index: 2; }
    .b6 .btn span.back {
      background: #fff;
      color: #0A3D4A;
      z-index: 1; }
  .b6 .btn:hover .front {
    top: 110%; }

.b7 .btn {
  background: #fff;
  padding: 0;
  transition: all 0.25s;
  border: solid 2px #281F67;
  position: relative;
  overflow: hidden;
  height: 50px; }
  .b7 .btn span {
    width: 100%;
    padding: 15px;
    height: 50px;
    box-sizing: border-box;
    transition: all 0.3s;
    position: absolute;
    top: 0;
    left: 0; }
    .b7 .btn span.front {
      background: #281F67;
      z-index: 2;
      transform-origin: 0 0; }
    .b7 .btn span.back {
      background: #fff;
      color: #281F67;
      z-index: 1; }
  .b7 .btn:hover .front {
    transform: rotate(-90deg); }

.b8 .btn {
  background: #fff;
  padding: 0;
  transition: all 0.25s;
  border: solid 2px #0A3D4A;
  position: relative;
  overflow: hidden;
  height: 50px;
  background: #0A3D4A; }
  .b8 .btn:hover {
    border-radius: 30px; }

.b9 .btn {
  background: #fff;
  padding: 0;
  transition: all 0.25s;
  border: solid 2px #0A3D4A;
  position: relative;
  height: 50px;
  background: #0A3D4A; }
  .b9 .btn .pulse {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    opacity: 0;
    border: solid 2px #fff; }
  .b9 .btn:hover {
    border-radius: 40px; }
    .b9 .btn:hover .pulse {
      border-radius: 40px;
      animation: pulse 1s infinite; }

@keyframes pulse {
  0% {
    opacity: 0;
    transform: scale(1); }
  50% {
    opacity: 0.8; }
  100% {
    opacity: 0;
    transform: scaleY(1.5) scaleX(1.2); } }

.b10 .btn {
  background: #fff;
  padding: 0;
  transition: all 0.25s;
  border: solid 2px #0A3D4A;
  position: relative;
  overflow: hidden;
  height: 50px;
  background: #0A3D4A; }
  .b10 .btn:hover {
    animation: colors 5s infinite; }

@keyframes colors {
  0% {
    color: #fff; }
  25% {
    color: #1ABEE5; }
  50% {
    color: #8CC63F; }
  75% {
    color: #C49EF2; }
  100% {
    color: #fff; } }

.b11 .btn {
  background: #fff;
  padding: 0;
  transition: all 0.25s;
  border: solid 2px #0A3D4A;
  position: relative;
  overflow: hidden;
  height: 50px;
  background: #0A3D4A; }
  .b11 .btn:hover {
    animation: bg-colors 5s infinite; }

@keyframes bg-colors {
  0% { }
  25% {
    background: #1ABEE5;
    color: #0A3D4A; }
  50% {
    background: #8CC63F;
    color: #0F3D25; }
  75% {
    background: #C49EF2;
    color: #281F67; }
  100% { } }

.b12 .btn {
  background: #fff;
  padding: 0;
  transition: all 0.25s;
  border: solid 2px #0A3D4A;
  position: relative;
  overflow: hidden;
  height: 50px;
  background: #fff; }
  .b12 .btn .text {
    visibility: hidden; }
  .b12 .btn .front, .b12 .btn .back {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    -webkit-transform-style: flat;
    transform-style: flat;
    -webkit-transition: -webkit-transform .3s ease-out;
    -o-transition: -o-transform .3s ease-out;
    transition: transform .3s ease-out;
    display: flex;
    justify-content: center;
    align-items: center; }
  .b12 .btn .front {
    background: #0A3D4A;
    transform: rotateX(0deg) translateZ(25px); }
  .b12 .btn .back {
    background: #fff;
    color: #0A3D4A;
    transform: rotateX(-90deg) translateZ(25px); }
  .b12 .btn:hover .front {
    transform: rotateX(90deg) translateZ(25px); }
  .b12 .btn:hover .back {
    transform: rotateX(0deg) translateZ(25px); }

.b13 .btn {
  background: #fff;
  padding: 0;
  transition: all 0.25s;
  border: solid 2px #0A3D4A;
  position: relative;
  overflow: hidden;
  height: 50px;
  background: #fff; }
  .b13 .btn .text {
    visibility: hidden; }
  .b13 .btn .front, .b13 .btn .back {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    -webkit-transform-style: flat;
    transform-style: flat;
    -webkit-transition: -webkit-transform .3s ease-out;
    -o-transition: -o-transform .3s ease-out;
    transition: transform .3s ease-out;
    display: flex;
    justify-content: center;
    align-items: center; }
  .b13 .btn .front {
    background: #0A3D4A;
    transform: rotateY(0deg) translateZ(299px); }
  .b13 .btn .back {
    background: #fff;
    color: #0A3D4A;
    transform: rotateY(-90deg) translateZ(299px); }
  .b13 .btn:hover .front {
    transform: rotateY(90deg) translateZ(299px); }
  .b13 .btn:hover .back {
    transform: rotateY(0deg) translateZ(299px); }

.b14 .btn {
  background: #0A3D4A;
  padding: 0;
  transition: all 0.25s;
  border: solid 2px #0A3D4A;
  position: relative;
  overflow: hidden;
  height: 50px; }
  .b14 .btn span {
    min-width: 6px; }

.b15 .btn {
  background: #0A3D4A;
  padding: 0;
  transition: all 0.25s;
  border: solid 2px #0A3D4A;
  position: relative;
  overflow: hidden;
  height: 50px; }
  .b15 .btn span {
    min-width: 6px; }

.b16 .btn {
  background: #0A3D4A;
  padding: 0;
  transition: all 0.25s;
  border: solid 2px #0A3D4A;
  position: relative;
  overflow: hidden;
  height: 50px; }
  .b16 .btn span {
    min-width: 6px; }

.b17 .cta-text {
  position: relative; }

.b17 .satan {
  position: absolute;
  top: 0;
  opacity: 0;
  overflow: hidden;
  width: 100%; }

.b17 .btn {
  background: #0A3D4A;
  padding: 0;
  transition: all 0.25s;
  border: solid 2px #0A3D4A;
  position: relative;
  overflow: hidden;
  height: 50px; }

.b18 .btn {
  background: none;
  padding: 0;
  transition: all 0.25s;
  position: relative;
  overflow: hidden;
  height: 50px;
  display: flex;
  background: linear-gradient(to right, #0A3D4A 50%, #1687a4) 60%;
  background-size: 300% 100%;
  background-position: left;
  transition: all 0.5s; }
  .b18 .btn:hover {
    background-position: right; }

.b19 .btn {
  background: none;
  padding: 0;
  transition: all 0.25s;
  position: relative;
  overflow: hidden;
  height: 50px;
  display: flex;
  background: linear-gradient(to right, #0A3D4A 0%, #0A3D4A 50%, #199aba 50%, #199aba 100%);
  background-size: 200% 100%;
  background-position: left;
  transition: all 0.5s;
  border: solid 2px #0A3D4A; }
  .b19 .btn:hover {
    background-position: right; }
