/* Slide div back and forward */
#content {
    position: relative;
    min-height: 100px;
}
.page {
    top:0;
    height: 100%;  
    width: 100%;
}

/*Forward*/
.page1 {
    left:-100%;
    -webkit-animation: page1-to-page2 0.5s linear forwards;
    animation: page1-to-page2 0.5s linear forwards;				
    position: relative;            
}

.page2 {      
    left:0;    
    -webkit-animation: page2-to-page3 0.5s linear forwards;
    animation: page2-to-page3 0.5s linear forwards;
    position: absolute; 
}

.page3 {      
    left:100%;    
    -webkit-animation: page3-to-page2 0.5s linear forwards;
    animation: page3-to-page2 0.5s linear forwards;
    position: absolute; 
}

@-webkit-keyframes page1-to-page2{
    from{left:-100%}
    to{left:0}
}
@keyframes page1-to-page2{
    from{left:-100%}
    to{left:0}
}

@-webkit-keyframes page2-to-page1{
    from{left:0}
    to{left:100%}
}

@keyframes page2-to-page1{
    from{left:0}
    to{left:100%}
}

/*Back*/
.page1-back {
    left:-100%;
    -webkit-animation: page1-to-page2-back 0.5s linear forwards;
    animation: page1-to-page2-back 0.5s linear forwards;
    position: relative;            
}

.page2-back {      
    left:0;    
    -webkit-animation: page2-to-page1-back 0.5s linear forwards;
    animation: page2-to-page1-back 0.5s linear forwards;
    position: absolute;            
}

@-webkit-keyframes page1-to-page2-back{
    from{left:0}
    to{left:-100%}
}
@keyframes page1-to-page2-back{
    from{left:0}
    to{left:-100%}
}

@-webkit-keyframes page2-to-page1-back{
    from{left:100%}
    to{left:0}
}

@keyframes page2-to-page1-back{
    from{left:100%}
    to{left:0}
}

.wrapper {
    position: relative;
}

.wrapper .bottom {
    position: absolute;
    bottom: 0px;
    height: 50px;
}

.my-arrow {
    border: solid #fff;
    border-width: 0 3px 3px 0;
    display: inline-block;
    padding: 3px;
    color:#fff;
}

.right-arrow {
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
}

.left-arrow {
    transform: rotate(135deg);
    -webkit-transform: rotate(135deg);
}

.checkout-parent-container {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100vh;
    position: fixed;
    top:0%;
    left:0%;
}

.checkout-container {
    overflow-y: auto;
    overflow-x: hidden;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    max-height: 90%;
    min-height: 30%;

    width:90%;
    max-width:800px;
    min-width: 320px;
}

.bg-gradient {
    background-image: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0))!important;
}

.bg-secondary {
    --vz-bg-opacity: 1;
    background-color: rgba(71,136,255,1)!important;
}

h3, h5, h2, label, input, select, textarea{
    font-family: Saira,sans-serif;
}

label{
    text-align: left;
}

.absoluteCenter {
    /* Must manually set width/height */
    width:1024px;
    height:560px;

    /* The magic centering code */
    margin:auto;
    position:fixed;
    top:0;bottom:0; /* Aligns Vertically - Remove for Horizontal Only */
    left:0;right:0; /* Aligns Horizontally - Remove for Vertical Only  */

    /* Prevent div from overflowing main window */
    max-width:100%;
    max-height:100%;
    overflow:auto;
    z-index:2000;
}

.cardtypes_container{text-align:center;}
.cardtypes_container img{display:inline-block;}

/* IE 7 and Below */
:first-child+html .absoluteCenter,
* html .absoluteCenter {
/* Place code here to override all above values, and add IE friendly centering */
}
@media only screen and (max-width: 600px) {
 .absoluteCenter {
        min-height:100%px;
   }
   .checkout-container {
        width:100%;
        min-height:100%;
    }
}

.text-danger {
    color: #A00!important;
}

.invalid-feedback {
    display: none;
    width: 100%;
    margin-top: 0rem;
    margin-bottom: 0.25rem;
    font-size: .875em;
    color: #ee6352;
}

.field-col{
    margin-bottom:5px;
}
.form-label {
    font-size:9pt;
    margin-bottom: 0.2rem;
}
.md-shadow{
    box-shadow: 8px 9px 17px -4px rgba(13,65,109,0.46);
    -webkit-box-shadow: 8px 9px 17px -4px rgba(13,65,109,0.46);
    -moz-box-shadow: 8px 9px 17px -4px rgba(13,65,109,0.46);
}
.md-overlay {
    position: fixed;
    width: 100%;
    height: 100%;
    visibility: hidden;
    top: 0;
    left: 0;
    z-index: 1000;
    opacity: 0;
    background: rgb(33 150 243 / 80%);
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
}

.fiserv_test_card_link{
    color:#000;
}

.form-control{
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    box-sizing: border-box;
    margin: 0;
    font: inherit;
    font-family: inherit;
    display: block;
    width: 100%;
    padding: 6px 12px;
    font-size: 14px;
    line-height: 1.42857143;
    color: #555;
    background-color: #fff;
    background-image: none;
    box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
    transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
    height: 44px;
    border-radius: 25px;
    border: 1px solid #95befc!important;
}

.form-control-sm{
    line-height: 1.22857143;
    height: 36px;
}
.subcribe-form{
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    line-height: 1.42857143;
    font-family: 'Open Sans', sans-serif;
    color: #2a3b71;
    font-size: 16px;
    text-align: center;
    box-sizing: border-box;
    max-width: 500px;
    margin: 0 auto;
    position: relative;
}
.subcribe-form > input{
    border-radius: 50px!important;
}

.btn-btn-default {
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    box-sizing: border-box;
    margin: 0;
    font: inherit;
    overflow: visible;
    -webkit-appearance: button;
    font-family: inherit;
    display: inline-block;
    margin-bottom: 0;
    font-weight: 400;
    line-height: 1.42857143!important;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    touch-action: manipulation;
    cursor: pointer;
    user-select: none;
    border-radius: 50px;
    border: 2px solid #fff;
    text-transform: uppercase;
    letter-spacing: 4px;
    transition: all 0.3s ease;
    padding: 10px 10px;
    min-width: 150px;
    font-size: 12px;
    border-bottom-left-radius: 0;
    border-top-left-radius: 0;
    background: #1209bf;
    color: #fff;
    border-color: #1209bf;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
}

.btn-btn-default:hover {
    background-color: #237dff;
}

.btn-btn-back {
    background: #646472;
}

.btn.btn-btn-back:hover {
    background-color: #939393!important;
}

.btn.btn-primary {
    background-color: #1209bf!important;
}

.btn.btn-primary:hover:not([disabled]) {
    background-color: #237dff!important;
}

.btn {
    color: white;
    padding: 12px;
    margin: 10px 0;
    border: none;
    width: 100%;
    border-radius: 3px;
    cursor: pointer;
    font-size: 17px;
    line-height: 0!important;
    min-height: 40px!important;
}

.btn:hover {
    background-color: #2f73e2;
}

.btn-primary:disabled,
.btn-primary[disabled],
.btn:disabled,
.btn[disabled]{
  border: 1px solid #999999!important;
  background-color: #cccccc!important;
  color: #666666;
}

.col-25,
.col-50,
.col-75 {
    padding: 0 0px;
    margin: 0 0px;
}

.bm-container {
    background-color: #f2f2f2;
    padding: 5px 20px 15px 20px;
    border: 1px solid lightgrey;
    border-radius: 3px;
}

.bm-row {
    --vz-gutter-x: 1.5rem;
    --vz-gutter-y: 0;
    margin-right: calc(0.5 * var(--vz-gutter-x));
    margin-left: calc(0.5 * var(--vz-gutter-x));
}

.form-control-sm input[type=text], .form-control-sm input[type=email], .form-control-sm input[type=tel], .form-control-sm select {
    width: 100%;
    margin-bottom: 10px;
    padding: 12px;
    border: 1px solid #ccc;
    border-radius: 3px;
}

label {
    margin-bottom: 10px;
    display: block;
}

.icon-container {
    margin-bottom: 20px;
    padding: 7px 0;
    font-size: 24px;
}

span.price {
    float: right;
    color: grey;
}

/* Floating column for labels: 25% width */
.col-25 {
    float: left;
    width: 25%;
    margin-top: 6px;
}
.col-50 {
    float: left;
    width: 48%;
    margin-top: 6px;
    margin-left:1%;
    margin-right:1%;
}

/* Floating column for inputs: 75% width */
.col-75 {
    float: left;
    width: 75%;
    margin-top: 6px;
}

/* Clear floats after the columns */
.checkrow:after {
    content: "";
    display: table;
    clear: both;
}

/* Responsive layout - when the screen is less than 600px wide, make the two columns stack on top of each other instead of next to each other */
@media screen and (max-width: 600px) {
    .col-25, .col-50, .col-75, input[type=submit] {
        width: 100%;
        margin-top: 0;
        margin-bottom: 10px;
        margin-left:0%;
        margin-right:0%;
    }
    .col-25 {
        margin-bottom: 20px;
    }

    .bm-row {
        --vz-gutter-x: 0.5rem;
        margin-right: calc(0.5 * var(--vz-gutter-x));
        margin-left: calc(0.5 * var(--vz-gutter-x));
    }
}

.stop-scrolling {
    height: 100%;
    overflow: hidden;
}

.ribbon {
    padding: 5px 12px;
    -webkit-box-shadow: 2px 5px 10px rgba(33,37,41,.15);
    box-shadow: 2px 5px 10px rgba(33,37,41,.15);
    color: #fff;
    font-size: .8512rem;
    font-weight: 600;
    position: absolute;
    left: -1px;
    top: 5px;
}

.ribbon-box{
    border-radius: 5px;
    position: relative;
    padding: 5px 12px;
    -webkit-box-shadow: 2px 5px 10px rgba(33,37,41,.15);
    box-shadow: 2px 5px 10px rgba(33,37,41,.15);
    
    font-size: .8512rem;            
    left: -1px;
    top: 5px;
}

.round-shape {
    border-radius: 0 30px 30px 0;
}

.ribbon-primary {
    background: #8c68cd;
}

.ribbon-box.ribbon-success {
    border: 1px solid #308c62;
}

.ribbon-success .ribbon{
    background: #308c62;
}

.ribbon-box, .ribbon-content {
    clear: both;
}

.box{            
    border-radius: 0px;
    border: 1px solid #d4d4d4;;
}

.alert{            
    border-radius: 10px;
}

.alert-body {
    padding: 0.2rem 1rem;
}

.alert-warning {
    border: 1px solid #bf9844;
    background-color:#fff7e6;;
}

.alert-success {
    border: 1px solid #308c62;
    background-color:#e2f5ec;
}

.alert-heading {
    font-weight:bold;
}

.alert-warning .alert-heading {
    color: #bf9844;
    font-weight:bold;
}
.alert-warning .alert-content {
    color: #bf9844;
}

.alert-success .alert-heading {
    color: #308c62;
    font-weight:bold;
}
.alert-success .alert-content {
    color: #005f4b;
}

#company_bottom_links{
    border-top:1px solid #ccc;
    background-color:#eee;
}

.company_slogan_text{
        font-size:11pt;
}

.company_image_size{
    width:80px
}

.avatar-lg {
    height: 6rem;
    width: 6rem;
}
@media screen and (max-width: 600px) {
    .company_name_text{
        font-size:12pt;
    }
    .company_slogan_text{
        font-size:10pt;
    }
    .company_image_size{
        width:65px
    }

    .alert-body {
        padding: 0.2rem 0rem;
    }

    .alert-content.h6{
        font-size: 0.9rem;
    }
}

/**** MEssages Classes **************/

.yellow-message-simple-1{
    border:1px solid #9f5f00!important;
    background-color: #fdfadc!important;
}

.yellow-message-simple-1 .alert-heading{
    color:#ff9800!important;
    font-weight: bold!important;
}

.yellow-message-simple-1 .alert-content{
    color:#9f5f00;
}
/**/
.red-message-simple-1{
    border:1px solid #9f0000!important;
    background-color: #fddedc!important;
}

.red-message-simple-1 .alert-heading{
    color:#9f0000!important;
    font-weight: bold!important;
}

.red-message-simple-1 .alert-content{
    color:#6e2c22;
}

/**/
.orange-message-simple-1{
    border:1px solid #9f0000!important;
    background-color: #ffe1b5!important;
}

.orange-message-simple-1 .alert-heading{
    color:#9f0000!important;
    font-weight: bold!important;
}

.orange-message-simple-1 .alert-content{
    color:#6e2c22;
}

/**/
.blue-message-simple-1{
    border:1px solid #2446d0!important;
    background-color: #d8eaff!important;
}

.blue-message-simple-1 .alert-heading{
    color:#2446d0!important;
    font-weight: bold!important;
}

.blue-message-simple-1 .alert-content{
    color:#2446d0;
}



/**** Buttons Classes **************/
@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Koulen&family=Lato&family=Nunito&family=Playfair+Display:ital@1&family=Prata&family=Raleway:ital,wght@1,100&family=Roboto&family=Roboto+Condensed&family=Teko&display=swap');

.blue-gradient-animi-1{
    font-family: Roboto, sans-serif;
    font-weight: 0;
    font-size: 14px;
    color: #fff;
    background: linear-gradient(90deg, #0066CC 0%, #c500cc 100%);
    padding: 10px 30px;
    border: 2px solid #0066cc;
    box-shadow: rgb(0, 0, 0) 0px 0px 0px 0px;
    border-radius: 50px;
    transition : 1000ms;
    transform: translateY(0);
    align-items: center;
    cursor: pointer;
}

.blue-gradient-animi-1:hover{
    transition : 1000ms;
    padding: 10px 30px;
    transform : translateY(-0px);
    background: linear-gradient(90deg, #0066CC 0%, #c500cc 100%);
    color: #0066cc;
    border: solid 2px #0066cc;
}


.blue-gradient-2 {
    font-size:15px;
    font-family:Arial;
    padding: 10px 30px;
    border-width:1px;
    color:#fff!important;
    border-color:#4e6096!important;
    border-top-left-radius:10px;
    border-top-right-radius:10px;
    border-bottom-left-radius:10px;
    border-bottom-right-radius:10px;
    box-shadow: 0px 0px 0px 2px #9fb4f2;
    text-shadow: 0px 1px 0px #283966;
    background:linear-gradient(rgb(120, 146, 194), #476e9e);
  }
  
  .blue-gradient-2:hover {
    background: linear-gradient(#476e9e, rgb(120, 146, 194));
  }

  
.light-green-flat-rounded-1 {
    font-size:15px;
    font-family:Arial;
    padding: 10px 30px;
    border-width:1px;
    color:#fff!important;
    border-color:#18ab29!important;
    border-top-left-radius:28px;
    border-top-right-radius:28px;
    border-bottom-left-radius:28px;
    border-bottom-right-radius:28px;
    text-shadow: 1px 1px 0px #2f6627;
    background:#44c767;
  }
  
  .light-green-flat-rounded-1:hover {
    background: #5cbf2a
  }

  
.yellow-flat-1 {
    font-size:15px;
    font-family:Arial;
    padding: 10px 30px;
    border-width:1px;
    color: #333 !important;
    border-color:#ffaa22!important;
    font-weight:bold;
    border-top-left-radius:6px;
    border-top-right-radius:6px;
    border-bottom-left-radius:6px;
    border-bottom-right-radius:6px;
    box-shadow: 0px 1px 0px 0px #fff6af;
    text-shadow: 0px 1px 0px #ffee66;
    background:linear-gradient(#ffec64, #ffab23);
  }
  
  .yellow-flat-1:hover {
    background: linear-gradient(#ffab23, #ffec64);
  }

  
.brown-rectangle-1 {
    font-size:15px;
    font-family:Arial;
    padding: 10px 30px;
    border-width:1px;
    color:#ffffff!important;
    border-color:#54381e!important;
    border-top-left-radius:3px;
    border-top-right-radius:3px;
    border-bottom-left-radius:3px;
    border-bottom-right-radius:3px;
    box-shadow:inset 0px 1px 0px 0px #a6827e;
    text-shadow:inset 0px 1px 0px #54381e;
    background:linear-gradient(#7d5d3b, #634b30);
  }
  
  .brown-rectangle-1:hover {
    background: linear-gradient(#634b30, #7d5d3b);
  }


                
                
                
                