/*
 * Site-Wide CSS
 * Copyright 2019 EZN Investments & Mitch Jackson
 */

body {
 /* background-color: #fff; */
  background-color: rgb(248, 249, 250);

}
.page-container {
  min-height: 75vh;
}

.large-icon {
  font-size: 2.5rem;
}

/*
 * Page Header
 */
#page-header-company-info {
  line-height: .92;
  color: #345;
}
#page-header-company-info h1 {
  color: #17a2b8;
  font-size: 1.1rem;
  margin: 0;
  font-weight: bold;
}
#page-header-company-phone {
  color: #446;
}
#page-header-container {
  border-bottom: solid 2px #b9b9b9;
  /* background-color: rgb(248, 249, 250); */
  background-color: #fff;
}
.page-alert {
  max-width: 1000px;
  border-radius: 0;
  border-top-left-radius: 10px;
  border-bottom-width: 3px;
  border-right-width: 1px;
}
#navbar-company-logo {
  max-width: 100px;
  max-height: 40px;
  padding: 0;
  margin: 0;
}
@media (min-width: 768px) {
  #navbar-company-logo {
    max-width: 150px;
    max-height: 75px;
  }
}

/*
 * Page Footer
 */
.page-footer {
  background-color: #003;
}
.page-footer-row {
  margin: 0 auto;
  max-width: 1280px;
}
.page-footer h4 {
  font-size: 1.2em;
  color: #eee;
  font-variant: small-caps;
  font-weight: bold;
}
.page-footer ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.page-footer ul a {
  color: #aaa;
}
.page-footer ul a:hover {
  color: #fff;
}
.container-copyright {
  background-color: #000;
  color: #999;
}

/*
 * Main menu navigation items
 */
 .main-menu-button-container {
  border-top: solid 1px #999;
  border-right: solid 1px #666;
  border-bottom: solid 1px #345;
  border-left: solid 1px #999;
  min-height: 85px;
}
.main-menu-button {
  color: #345;
}
.main-menu-button:hover {
  color: inherit;
  text-decoration: none;
}
.main-menu-button h1 {
  color: #17a2b8;
  font-size: 1.15em;
  font-weight: bold;
  margin: 0;
}
.main-menu-button:hover h1 {
  color: #a44;
}
.btn-main-menu {
  border: solid 1px #333 !important;
  box-shadow: 5px 5px 6px #333 !important;
}

/* *** *** *** *** ***
   Authentication
** *** *** *** *** ***/
.auth-container {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
  border: solid 2px #666 !important;
  background-color: white;
  width: 300px;
}
.btn-group-login {
  position: relative;
  bottom: -1px;
}
.btn-group-login button {
  border-bottom: 0;
}
.btn-group-login button:focus {
  outline: none !important;
  box-shadow: none !important;
}
.btn-group-login button:hover {
  color: #000;
  text-decoration: underline;
}
.btn-group-login :first-child {
  border-bottom-left-radius: 0;
}
.btn-group-login :last-child {
  border-bottom-right-radius: 0;
}
.btn-group-login .login-active {
  background-color: #fff;
  text-decoration: underline;
}
.btn-group-login .login-inactive {
  background-color: #ccc;
  border-bottom: solid 1px #666;
  margin-top: 2px;
}

/*
 * Estimate status box
 */
#estimate-status-box {
  background-color: #fff;
  border: solid 1px #666;
}

/*
 * Speech bubbles
 */

.speech-bubble {
  position: relative;
  background: #FFFEDF;
  border-radius: .4em;
  margin-bottom: 40px;
}

.speech-bubble:after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 0;
  height: 0;
  border: 20px solid transparent;
  border-top-color: #FFFEDF;
  border-bottom: 0;
  border-left: 0;
  margin-left: -10px;
  margin-bottom: -20px;
}

/*
 *  Vehicle type accordians
 */
a.vehicle-toggle {
  color: #333;
}
a.vehicle-toggle:hover {
  color: #66a;
  text-decoration: none;
}
.btn-vehicle {
  background-color: #fff;
}

#vehicle-image {
  max-width: 325px;
  padding: 0;
  margin: 0;
}

/*
 * Package selection cards v2
 */
.package-card2 {
  border-radius: .5rem;
  border: solid 1px #333;
  box-shadow: 3px 3px 4px #446;
}
.package-card2 h2 {
  font-size: 1.1rem;
}
.package-card2 h3 {
  font-size: 1.3rem;
}
.package-card2 .btn {
  border-radius: 1rem;
  border: solid 4px white !important;
}
/*
 * Package selection cards
 */
.package-card {
  border: solid 1px #aaa;
  background-color: white;
  min-height: 300px;
  min-width: 250px;
  margin: 10px;
}
.package-card-header {
  background-color: #eee;
  border-top: solid 1px #bbb;
  border-bottom: solid 2px #ccc;
  margin: 0 0 10px 0;
  padding: .25em;
  text-align: center;
}
.package-card-header > h1 {
  font-size: 1.4em;
  margin: 0;
}
.package-card-header > h2 {
  font-size: .1.2em;
  margin: 0;
}
.package-card-body {
  margin: 10px 10px auto 10px;
}
.package-card-body ul {
  margin: 0;
  padding-left: 1.25em;
  font-size: .9em;
}
.package-card-body li {
  list-style: none;
  margin: 0;
  padding: 0;
}
.package-card-body li:before {
  content: '\2611';
  margin-left: -20px;
  margin-right: 10px;
}
.package-card-body td:first-child {
  width: 10px;
}
.package-card-body th {
  font-variant: small-caps;
  font-size: 1.2em;
  font-weight: normal;
  padding-left: 25px;
}
.package-card-body label {
  margin: 0;
}
.packages-scroller-form:first-child {
  margin-left: auto;
}
.packages-scroller-form:last-child {
  margin-right: auto;
}


/*
 * Profile page cards
 */
.profile-card {
  border-top-left-radius: 11px;;
}
.profile-card-left-image {
  border-top-left-radius: 12px;
  min-height: 60px;
}

/*
 * Invoice formatting
 */
.invoice {
  border: solid 1px black;
  background-color: white;

  margin: 0 auto;
  padding: .5em;
  max-width: 800px;
}

.table-invoice {
  margin: .5em;
  border: solid 2px #666;
}

.table-invoice tr > td:last-child,
.table-invoice tr > th:last-child {
  border-left: solid 2px #666 !important;
}

/*
 * User Profile
 */
.profile-menu-button {
  border: solid 1px #000;
  border-top-right-radius: 10px;
  max-height: 150px; /* Fix for safari flexbox problem, where height:100% sets
                      * height to page height 100%, not container height 100% */
}
.profile-menu-button:hover {
  text-decoration: none;
  background-color: #eef;
}
.profile-menu-button i {
  font-size: 1.6em;
}

/* *** *** *** *** ***
   Forms (For The Hoard)
** *** *** *** *** ***/
.formb > h1 {
  text-align: center;
  border-bottom: solid 1px #ccc;
  font-size: 1.8em;
  font-variant: small-caps;
}

.formb .form-row input[type='text'],
.formb .form-row input[type='phone'],
.formb .form-row select {
  width: 100%;
}

.formb h1.form-row-title {
  border-bottom: solid 1px #aaa;
  font-variant: small-caps;
  font-size: 2rem;
  color: #444;
}

@media (min-width: 768px) {
  .formb .form-row input[type='text'],
  .formb .form-row input[type='phone'],
  .formb .form-row select {
    width: 75%;
  }
}

/*
 * Appointment picker
 */
.ui-datepicker {
  font: 14pt Arial, sans-serif;
  -webkit-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, .4);
  -moz-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, .4);
  box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, .4);
}
.ui-datepicker-inline {
  border: solid 3px red;
  margin: 0 auto;
}
.ui-datepicker-title {
    text-align: center;
}
.ui-datepicker-today a {
    background-color: #ddd !important;
    color: black !important;
}
.ui-datepicker-month {
  margin-right: 2px !important;

}
.ui-datepicker-prev,
.ui-datepicker-next {
  margin-top: 3px;
}
.date-selectable a {
    border-color: #669 !important;
    font-weight: bold;
}
.progress-bar, .progress {
  // border-bottom-right-radius: 0px !important;
  // border-bottom-left-radius: 0px !important;
}

/*
 * General utility
 */
.alert-banner {
  border-radius: 1px;
  border-bottom-width: 3px;
  border-right-width: 2px;
}
.bg-white {
  background-color: white;
}
.bg-offwhite {
  background-color: #fffefa;
}
.text-smallcaps {
  font-variant: small-caps;
}
.border-bottom-black {
  border-bottom: solid 1px black;
}
.img-fill {
  background-position: 50% 50%;
  background-size: cover;
  background-repeat: no-repeat;
}
.more-shadow {
  box-shadow: 2px 2px 5px rgba(0,0,0,0.6);
}
.text-nowrap {
  white-space: nowrap;
}
.text-underline {
  text-decoration: underline;
}

/* *** *** *** *** ***
   intl-tel-input cfg
** *** *** *** *** ***/
.iti__flag {background-image: url("/dist/intl-tel-input-17.0.0/flags.png");}

@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
  .iti__flag {background-image: url("/dist/intl-tel-input-17.0.0/flags@2x.png");}
}

/* *** *** *** *** ***
  parsed markdown
** *** *** *** *** ***/
.markdown *:last-child {
  margin-bottom: 0;
}

.markdown ul {
  padding-left: 1rem;
}

.form-control::placeholder {
  color: #aaa;
}