/* Sticky footer styles
-------------------------------------------------- */
html {position: relative; min-height: 100%;}
body {margin-bottom: 60px; background-color: #555; font-family: 'Roboto', sans-serif; color: #ddd; font-weight: 300;}
.footer {position: absolute; bottom: 0; width: 100%; height: 60px; line-height: 40px; background-color: rgba(128,128,128,0.3); color: rgba(255,255,255,0.4); font-size: 14px; padding: 10px 0;}
.footer .links {text-align: right;}
.footer .links .link-divider {opacity: 0.6;}
/* .footer .links .link-divider:last-child {display: none;} */
.footer a, .footer a:visited {color: rgba(255,255,255,0.4);}
.footer a:hover, .footer a:active {color: rgba(255,255,255,0.6);}

/* Other styles common to all themes
--------------------------------------------------- */
pre {color: #fff; font-family: 'Roboto Mono', monospace;}
h1, h2, h3, .h1, .h2, .h3 {font-weight: 900;}
.object-dump {border: 1px #999 solid; padding: 5px 20px; margin-top: 2em; background-color: rgba(0,0,0,0.5);}
.text-muted {color: inherit !important;	opacity: 0.5;}
.cover {padding: 0 1.5rem;}
.cover .btn-lg {padding: .75rem 1.25rem; font-weight: 700;}
.offer-block p {font-size: 1.3em; margin-top: 1.7em;}
.offer-text {margin-bottom: 2em;}
input, select option, textarea {font-weight: 300;}

main.inner.cover.container {position: relative;}
.back-link {position: absolute; left: 60px; top: 15px; font-size: 36px; color: white; opacity: 0.5}
.back-link:hover, .back-link:active {color: white; opacity: 0.8;}

.alert {font-weight: 500;}

.btn.full-width {width: 100%;}
.spinner-holder {height: 20px; text-align: center;}

.form-group.row .col-form-label {padding-top: 0.1em; line-height: 1.1em; font-size: 0.9em;}
.form-control {border-width: 2px; }
.form-control {line-height: 18px;}
.was-validated .form-control:invalid {}
.was-validated .form-control:valid, .was-validated .form-control:valid:focus {border-color: white;}
.was-validated .form-check-input:valid ~ .form-check-label {color: white;}
.button-div {text-align: right;}
.form-section-holder {position: relative; }
.form-section {display: none;}
.form-section:first-child {display: block;}
.form-fine-print {font-size: 0.7em; opacity: 0.7; line-height: 1.2em; text-align: center;}

.success-message {margin-top: 2em;}

.offer-box.page-body {padding: 2em; min-height: 10em;}

.home-fine-print {margin-top: 2em; opacity: 0.7;}

/* 3 dots bounce loading effect - https://codepen.io/danielmorosan/pen/XmYBVx */
.bouncing.ball.spinner {margin: 0 auto; width: 60px; text-align: center; opacity: 0.4; display: none;}
.bouncing.ball.spinner > div {width: 10px; height: 10px; background-color: #fff; border-radius: 100%; display: inline-block;-webkit-animation: sk-bouncedelay 1.4s infinite ease-in-out both; animation: sk-bouncedelay 1.4s infinite ease-in-out both; margin-left: 5px;}
.bouncing.ball.spinner .bounce1 {-webkit-animation-delay: -0.32s; animation-delay: -0.32s;}
.bouncing.ball.spinner .bounce2 {-webkit-animation-delay: -0.16s; animation-delay: -0.16s;}
@-webkit-keyframes sk-bouncedelay {0%, 80%, 100% { -webkit-transform: scale(0) }  40% { -webkit-transform: scale(1.0) }}
@keyframes sk-bouncedelay {0%, 80%, 100% { -webkit-transform: scale(0); transform: scale(0); } 40% { -webkit-transform: scale(1.0); transform: scale(1.0); }}


@media (max-width: 767px) {
  .footer {line-height: 18px; text-align: center;}
  .footer .links {text-align: center;}
  .offer-block p {font-size: 1em; margin-top: 1.3em;}
}

@media (max-width: 575px) {
	main.inner.cover.container .form-group.row {margin-bottom: 16px;}
	.footer {line-height: 14px; font-size: 12px; text-align: center;}
	.footer .links {text-align: center;}
}