/* Link Hovers */
 a:hover, button:hover, button:hover svg path, .button:hover, .button:hover svg path, form input:focus, form textarea:focus{
     text-decoration: none;
     transition: all 0.3s ease-in;
     -webkit-transition: all 0.3s ease-in;
     -moz-transition: all 0.3s ease-in;
     -ms-transition: all 0.3s ease-in;
     -o-transition: all 0.3s ease-in;
}
 a:hover{
     color: #2e34ae;
     text-decoration: underline;
}
 button:hover, .button:hover{
     color: #ffffff;
     background-color: #2e34ae;
}
 .overflow-hidden{
     overflow: hidden;
}
/* Form States */
 input:hover, textarea:hover{
     border: 1px solid #94a3b8;
     transition: all 0.3s ease-in;
     -webkit-transition: all 0.3s ease-in;
     -moz-transition: all 0.3s ease-in;
     -ms-transition: all 0.3s ease-in;
     -o-transition: all 0.3s ease-in;
}
 input:focus, textarea:focus{
     border: 1px solid #2c2e2d;
     transition: all 0.3s ease-in;
     -webkit-transition: all 0.3s ease-in;
     -moz-transition: all 0.3s ease-in;
     -ms-transition: all 0.3s ease-in;
     -o-transition: all 0.3s ease-in;
}
 input:focus::-webkit-input-placeholder, textarea:focus::-webkit-input-placeholder{
     color: transparent;
     transition: all 0.3s ease-in;
     -webkit-transition: all 0.3s ease-in;
     -moz-transition: all 0.3s ease-in;
     -ms-transition: all 0.3s ease-in;
     -o-transition: all 0.3s ease-in;
}
 input:focus:-moz-placeholder, textarea:focus:-moz-placeholder{
     color: transparent;
     transition: all 0.3s ease-in;
     -webkit-transition: all 0.3s ease-in;
     -moz-transition: all 0.3s ease-in;
     -ms-transition: all 0.3s ease-in;
     -o-transition: all 0.3s ease-in;
}
 input:focus::-moz-placeholder, textarea:focus::-moz-placeholder{
     color: transparent;
     transition: all 0.3s ease-in;
     -webkit-transition: all 0.3s ease-in;
     -moz-transition: all 0.3s ease-in;
     -ms-transition: all 0.3s ease-in;
     -o-transition: all 0.3s ease-in;
}
 input:focus:-ms-input-placeholder, textarea:focus:-ms-input-placeholder{
     color: transparent;
     transition: all 0.3s ease-in;
     -webkit-transition: all 0.3s ease-in;
     -moz-transition: all 0.3s ease-in;
     -ms-transition: all 0.3s ease-in;
     -o-transition: all 0.3s ease-in;
}
 input:focus::placeholder, textarea:focus::placeholder{
     color: transparent;
     transition: all 0.3s ease-in;
     -webkit-transition: all 0.3s ease-in;
     -moz-transition: all 0.3s ease-in;
     -ms-transition: all 0.3s ease-in;
     -o-transition: all 0.3s ease-in;
}
 @-webkit-keyframes spin {
     from {
         -webkit-transform: rotate(0deg);
         transform: rotate(0deg);
    }
     to {
         -webkit-transform: rotate(360deg);
         transform: rotate(360deg);
    }
}
 @-moz-keyframes spin {
     from {
         -moz-transform: rotate(0deg);
         transform: rotate(0deg);
    }
     to {
         -moz-transform: rotate(360deg);
         transform: rotate(360deg);
    }
}
 @-o-keyframes spin {
     from {
         -o-transform: rotate(0deg);
         transform: rotate(0deg);
    }
     to {
         -o-transform: rotate(360deg);
         transform: rotate(360deg);
    }
}
 @keyframes spin {
     from {
         -webkit-transform: rotate(0deg);
         -moz-transform: rotate(0deg);
         -o-transform: rotate(0deg);
         transform: rotate(0deg);
    }
     to {
         -webkit-transform: rotate(360deg);
         -moz-transform: rotate(360deg);
         -o-transform: rotate(360deg);
         transform: rotate(360deg);
    }
}
 @-webkit-keyframes gradient {
     0% {
         background-position: 0% 50%;
    }
     50% {
         background-position: 100% 50%;
    }
     100% {
         background-position: 0% 50%;
    }
}
 @-moz-keyframes gradient {
     0% {
         background-position: 0% 50%;
    }
     50% {
         background-position: 100% 50%;
    }
     100% {
         background-position: 0% 50%;
    }
}
 @-o-keyframes gradient {
     0% {
         background-position: 0% 50%;
    }
     50% {
         background-position: 100% 50%;
    }
     100% {
         background-position: 0% 50%;
    }
}
 @keyframes gradient {
     0% {
         background-position: 0% 50%;
    }
     50% {
         background-position: 100% 50%;
    }
     100% {
         background-position: 0% 50%;
    }
}
 @-webkit-keyframes pulse {
     0% {
         -webkit-transform: scale(1);
         transform: scale(1);
    }
     50% {
         -webkit-transform: scale(0.9);
         transform: scale(0.9);
    }
     100% {
         -webkit-transform: scale(1);
         transform: scale(1);
    }
}
 @-moz-keyframes pulse {
     0% {
         -moz-transform: scale(1);
         transform: scale(1);
    }
     50% {
         -moz-transform: scale(0.9);
         transform: scale(0.9);
    }
     100% {
         -moz-transform: scale(1);
         transform: scale(1);
    }
}
 @-o-keyframes pulse {
     0% {
         -o-transform: scale(1);
         transform: scale(1);
    }
     50% {
         -o-transform: scale(0.9);
         transform: scale(0.9);
    }
     100% {
         -o-transform: scale(1);
         transform: scale(1);
    }
}
 @keyframes pulse {
     0% {
         -webkit-transform: scale(1);
         -moz-transform: scale(1);
         -o-transform: scale(1);
         transform: scale(1);
    }
     50% {
         -webkit-transform: scale(0.9);
         -moz-transform: scale(0.9);
         -o-transform: scale(0.9);
         transform: scale(0.9);
    }
     100% {
         -webkit-transform: scale(1);
         -moz-transform: scale(1);
         -o-transform: scale(1);
         transform: scale(1);
    }
}
 @-webkit-keyframes pulse_1 {
     from {
         opacity: 1;
         -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
         -webkit-transform: scale(0.9, 0.9);
         transform: scale(0.9, 0.9);
    }
     to {
         opacity: 0;
         -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
         -webkit-transform: scale(1.3, 1.3);
         transform: scale(1.3, 1.3);
    }
}
 @-moz-keyframes pulse_1 {
     from {
         opacity: 1;
         -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
         -moz-transform: scale(0.9, 0.9);
         transform: scale(0.9, 0.9);
    }
     to {
         opacity: 0;
         -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
         -moz-transform: scale(1.3, 1.3);
         transform: scale(1.3, 1.3);
    }
}
 @-o-keyframes pulse_1 {
     from {
         opacity: 1;
         -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
         -o-transform: scale(0.9, 0.9);
         transform: scale(0.9, 0.9);
    }
     to {
         opacity: 0;
         -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
         -o-transform: scale(1.3, 1.3);
         transform: scale(1.3, 1.3);
    }
}
 @keyframes pulse_1 {
     from {
         opacity: 1;
         -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
         -webkit-transform: scale(0.9, 0.9);
         -moz-transform: scale(0.9, 0.9);
         -o-transform: scale(0.9, 0.9);
         transform: scale(0.9, 0.9);
    }
     to {
         opacity: 0;
         -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
         -webkit-transform: scale(1.3, 1.3);
         -moz-transform: scale(1.3, 1.3);
         -o-transform: scale(1.3, 1.3);
         transform: scale(1.3, 1.3);
    }
}
 @-webkit-keyframes pulse_2 {
     from {
         opacity: 1;
         -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
         -webkit-transform: scale(0.8, 0.8);
         transform: scale(0.8, 0.8);
    }
     to {
         opacity: 0;
         -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
         -webkit-transform: scale(1.5, 1.5);
         transform: scale(1.5, 1.5);
    }
}
 @-moz-keyframes pulse_2 {
     from {
         opacity: 1;
         -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
         -moz-transform: scale(0.8, 0.8);
         transform: scale(0.8, 0.8);
    }
     to {
         opacity: 0;
         -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
         -moz-transform: scale(1.5, 1.5);
         transform: scale(1.5, 1.5);
    }
}
 @-o-keyframes pulse_2 {
     from {
         opacity: 1;
         -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
         -o-transform: scale(0.8, 0.8);
         transform: scale(0.8, 0.8);
    }
     to {
         opacity: 0;
         -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
         -o-transform: scale(1.5, 1.5);
         transform: scale(1.5, 1.5);
    }
}
 @keyframes pulse_2 {
     from {
         opacity: 1;
         -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
         -webkit-transform: scale(0.8, 0.8);
         -moz-transform: scale(0.8, 0.8);
         -o-transform: scale(0.8, 0.8);
         transform: scale(0.8, 0.8);
    }
     to {
         opacity: 0;
         -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
         -webkit-transform: scale(1.5, 1.5);
         -moz-transform: scale(1.5, 1.5);
         -o-transform: scale(1.5, 1.5);
         transform: scale(1.5, 1.5);
    }
}
 @-webkit-keyframes pulse_3 {
     from {
         opacity: 1;
         -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
         -webkit-transform: scale(0.8, 0.8);
         transform: scale(0.8, 0.8);
    }
     to {
         opacity: 0;
         -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
         -webkit-transform: scale(1.7, 1.7);
         transform: scale(1.7, 1.7);
    }
}
 @-moz-keyframes pulse_3 {
     from {
         opacity: 1;
         -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
         -moz-transform: scale(0.8, 0.8);
         transform: scale(0.8, 0.8);
    }
     to {
         opacity: 0;
         -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
         -moz-transform: scale(1.7, 1.7);
         transform: scale(1.7, 1.7);
    }
}
 @-o-keyframes pulse_3 {
     from {
         opacity: 1;
         -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
         -o-transform: scale(0.8, 0.8);
         transform: scale(0.8, 0.8);
    }
     to {
         opacity: 0;
         -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
         -o-transform: scale(1.7, 1.7);
         transform: scale(1.7, 1.7);
    }
}
 @keyframes pulse_3 {
     from {
         opacity: 1;
         -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
         -webkit-transform: scale(0.8, 0.8);
         -moz-transform: scale(0.8, 0.8);
         -o-transform: scale(0.8, 0.8);
         transform: scale(0.8, 0.8);
    }
     to {
         opacity: 0;
         -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
         -webkit-transform: scale(1.7, 1.7);
         -moz-transform: scale(1.7, 1.7);
         -o-transform: scale(1.7, 1.7);
         transform: scale(1.7, 1.7);
    }
}
@-webkit-keyframes fadeEffect {
  from {opacity: 0;-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";}
  to {opacity: 1;-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";}
}
@-moz-keyframes fadeEffect {
  from {opacity: 0;-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";}
  to {opacity: 1;-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";}
}
@-o-keyframes fadeEffect {
  from {opacity: 0;-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";}
  to {opacity: 1;-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";}
}
@keyframes fadeEffect {
  from {opacity: 0;-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";}
  to {opacity: 1;-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";}
}
@-webkit-keyframes phone-wiggle {
  0%, 100% { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
  20% { -webkit-transform: rotate(3.5deg); transform: rotate(3.5deg); }
  40% { -webkit-transform: rotate(-3.5deg); transform: rotate(-3.5deg); }
  60% { -webkit-transform: rotate(3.5deg); transform: rotate(3.5deg); }
  80% { -webkit-transform: rotate(-3.5deg); transform: rotate(-3.5deg); }
}

@-moz-keyframes phone-wiggle {
  0%, 100% { -moz-transform: rotate(0deg); transform: rotate(0deg); }
  20% { -moz-transform: rotate(3.5deg); transform: rotate(3.5deg); }
  40% { -moz-transform: rotate(-3.5deg); transform: rotate(-3.5deg); }
  60% { -moz-transform: rotate(3.5deg); transform: rotate(3.5deg); }
  80% { -moz-transform: rotate(-3.5deg); transform: rotate(-3.5deg); }
}

@-o-keyframes phone-wiggle {
  0%, 100% { -o-transform: rotate(0deg); transform: rotate(0deg); }
  20% { -o-transform: rotate(3.5deg); transform: rotate(3.5deg); }
  40% { -o-transform: rotate(-3.5deg); transform: rotate(-3.5deg); }
  60% { -o-transform: rotate(3.5deg); transform: rotate(3.5deg); }
  80% { -o-transform: rotate(-3.5deg); transform: rotate(-3.5deg); }
}

@keyframes phone-wiggle {
  0%, 100% { -webkit-transform: rotate(0deg); -moz-transform: rotate(0deg); -o-transform: rotate(0deg); transform: rotate(0deg); }
  20% { -webkit-transform: rotate(3.5deg); -moz-transform: rotate(3.5deg); -o-transform: rotate(3.5deg); transform: rotate(3.5deg); }
  40% { -webkit-transform: rotate(-3.5deg); -moz-transform: rotate(-3.5deg); -o-transform: rotate(-3.5deg); transform: rotate(-3.5deg); }
  60% { -webkit-transform: rotate(3.5deg); -moz-transform: rotate(3.5deg); -o-transform: rotate(3.5deg); transform: rotate(3.5deg); }
  80% { -webkit-transform: rotate(-3.5deg); -moz-transform: rotate(-3.5deg); -o-transform: rotate(-3.5deg); transform: rotate(-3.5deg); }
}