@import url(https://fonts.googleapis.com/css?family=Comfortaa:400,700|Open+Sans:400,400i,600,600i,700);@charset "UTF-8";

html {
  font-family: "Open Sans", sans-serif;
  color: #343a40;
}

html img {
  max-width: 100%;
}

html h1,
html h2,
html h3 {
  font-family: "Comfortaa", cursive;
  font-weight: 700;
}

html h1 {
  font-size: 40px;
}

html h2 {
  font-size: 32px;
}

html h3 {
  font-size: 30px;
}

html a {
  color: #2f4c9e;
}

html .cta-purple {
  font-weight: 600;
  font-size: 12px;
  line-height: 16px;
  padding: 7px 36px;
  color: #fff;
  display: inline-block;
  background-image: linear-gradient(#90a1c3, #64789f);
  background-color: #64789f;
  border: 1px solid #64789f;
  margin-bottom: 5px;
  margin-top: 10px;
}

html .cta-purple:hover {
  text-decoration: none;
}

html .borderb {
  padding-bottom: 60px;
  border-bottom: 4px solid #f2f2f2;
}

html .side-menu-L {
  background-color: #ebeff7;
  border-radius: 10px;
  padding: 20px;
  margin-top: 40px;
}

@media screen and (min-width: 992px) {
  html .side-menu-L {
    margin-top: 0;
  }
}

html .side-menu-L ul {
  padding-left: 0;
}

html .side-menu-L ul li {
  list-style-type: none;
  padding-top: 20px;
  font-family: "Open Sans";
  font-size: 15px;
  color: #3e3e3e;
}

html .side-menu-L ul li:before {
  content: "\F105";
  font-family: "Font Awesome 5 Free";
  padding-right: 10px;
  font-weight: bold;
}

html .side-menu-L a {
  color: #c62127;
  text-decoration: underline;
}

.paymentlogos-alt div {
  overflow: hidden;
  width: 60px;
  height: 34px;
  display: inline-block;
  margin-right: 5px;
  margin-top: 15px;
  background-size: contain;
  background-position: top left;
  background-repeat: no-repeat;
}

@media screen and (min-width: 768px) {
  .paymentlogos-alt div {
    margin-top: 0;
  }
}

.paymentlogos-alt div.visa {
  background-image: url("/images/cc-logos/visa.png");
}

.paymentlogos-alt div.visadebit {
  background-image: url("/images/cc-logos/visa-debit.png");
}

.paymentlogos-alt div.mastercard {
  background-image: url("/images/cc-logos/mc.png");
}

.paymentlogos-alt div.amex {
  background-image: url("/images/cc-logos/amex.png");
}

@media screen and (min-width: 768px) {
  .footer-pci-notice-bar .paymentlogos-alt {
    text-align: right;
  }
}

.section.top-header {
  padding: 30px 0 30px 70px;
}

@media screen and (min-width: 768px) {
  .section.top-header {
    padding: 0;
  }
}

.section.top-header .logos .logo {
  width: 200px;
  max-width: 100%;
  height: auto;
  float: right;
}

@media screen and (min-width: 768px) {
  .section.top-header .logos .logo {
    width: 250px;
    float: none;
    padding: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    margin-top: -7px;
  }
}

@media screen and (min-width: 992px) {
  .section.top-header .logos .logo {
    width: 300px;
  }
}

.section.top-header .flag div img {
  position: absolute;
  left: -20px;
  bottom: 0;
}

.section.top-header .flag div h4 {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  font-size: 18px;
  color: #2f4c9e;
  font-style: italic;
  padding-left: 100px;
}

.section.top-header .flag div h4 span {
  color: #c62127;
}

@media screen and (min-width: 1200px) {
  .section.top-header .flag div h4 {
    padding-left: 0;
  }
}

.section.top-header .contact {
  text-align: right;
  padding-bottom: 10px;
}

.section.top-header .contact p {
  font-size: 14px;
  font-style: italic;
  color: #2f4c9e;
  font-weight: 500;
}

.section.top-header .contact p span {
  color: #c62127;
  font-style: normal;
  font-weight: 700;
}

.section.top-header .contact p a {
  color: #2f4c9e;
  text-decoration: underline;
}

@media screen and (min-width: 1200px) {
  .section.top-header .contact p {
    font-size: 18px;
  }

  .section.top-header .contact p span {
    font-size: 15px;
  }
}

@media screen and (min-width: 768px) {
  .section.main-menu {
    background-image: linear-gradient(#90a1c3, #64789f);
    border-top: 1px solid #7284a8;
  }
}

.section.main-menu .navbar {
  background-image: linear-gradient(#90a1c3, #64789f);
  margin-left: -15px;
  margin-right: -15px;
  padding: 0;
  z-index: 10;
}

.section.main-menu .navbar .container {
  background-image: linear-gradient(#90a1c3, #64789f);
}

@media screen and (min-width: 768px) {
  .section.main-menu .navbar {
    background: none;
    position: relative;
    top: unset;
    left: unset;
    margin-left: 0;
    margin-right: 0;
  }
}

.section.main-menu .navbar .navbar-collapse .navbar-nav a {
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
  padding: 19px 15px;
  font-size: 15px;
  color: #fff;
  line-height: 20px;
  border-right: 1px solid #7284a8;
  border-left: 1px solid #8c9ec0;
  border-bottom: 1px solid rgba(204, 217, 245, 0.3490196078);
}

@media screen and (min-width: 768px) {
  .section.main-menu .navbar .navbar-collapse .navbar-nav a {
    border-bottom: 0;
  }
}

.section.main-menu .navbar .navbar-toggler {
  padding: 2px 5px;
  background-image: linear-gradient(#90a1c3, #64789f);
  position: absolute;
  top: -70px;
  left: 30px;
}

.section.main-menu .navbar .navbar-toggler .menu-title {
  color: #fff;
  text-transform: uppercase;
  font-size: 9px;
  display: block;
  padding: 0;
  margin: 0 0 5px 0;
  font-weight: 600;
}

.section.countdown-bar {
  padding: 5px 0 10px;
  background-color: #292929;
  color: #fff;
  text-align: center;
  font-size: 18px;
  font-weight: 600;
}

.section.countdown-bar .message {
  color: #9fbaef;
}

.section.countdown-bar .divider {
  margin: 0 10px;
  display: none;
}

@media screen and (min-width: 992px) {
  .section.countdown-bar .divider {
    display: inline-block;
  }
}

.section.countdown-bar div {
  display: inline-block;
}

.section.countdown-bar div .countdown .hours,
.section.countdown-bar div .countdown .minutes,
.section.countdown-bar div .countdown .seconds {
  color: #9fbaef;
  font-size: 30px;
  font-weight: 700;
  margin-left: 5px;
  line-height: 30px;
  position: relative;
  top: 4px;
  left: 2px;
}

.section.footer-quote-bar {
  background-image: linear-gradient(#8fa1c3, #63779e);
  border-top: 1px solid #64789f;
  padding: 15px 0;
}

.section.footer-quote-bar .btn-social-bottom {
  width: 45px;
  height: 45px;
  border: 1px solid #fff;
  margin-right: 5px;
  display: inline-block;
  text-align: center;
  padding-top: 12px;
  margin-top: 15px;
}

@media screen and (min-width: 768px) {
  .section.footer-quote-bar .btn-social-bottom {
    margin-top: 0;
  }
}

.section.footer-quote-bar .btn-social-bottom i {
  color: #fff;
  font-size: 20px;
}

@media screen and (min-width: 768px) {
  .section.footer-quote-bar .btn {
    padding: 10px 50px;
  }
}

.section.footer-links-bar {
  padding: 20px 0;
  background-color: #44577d;
  color: white;
}

.section.footer-links-bar h4 {
  font-weight: 600;
  font-size: 18px;
  margin-top: 20px;
}

@media screen and (min-width: 768px) {
  .section.footer-links-bar h4 {
    margin-top: 0;
    margin-bottom: 30px;
  }
}

.section.footer-links-bar .footer-column-container {
  padding-left: 15px;
}

@media screen and (min-width: 768px) {
  .section.footer-links-bar .footer-column-container {
    border-left: 1px solid #667aa1;
    min-height: 140px;
  }
}

.section.footer-links-bar .footer-column-container a {
  font-size: 15px;
  padding-bottom: 5px;
  color: #fff;
}

.section.footer-links-bar .footer-column-container a:before {
  content: "\2022";
  margin-right: 5px;
}

@media screen and (min-width: 768px) {
  .section.footer-links-bar .footer-column-container a:before {
    display: none;
  }
}

.section.footer-links-bar .footer-column-container a:hover {
  text-decoration: none;
}

.section.footer-links-bar .trustpilot-widget {
  padding-bottom: 30px;
}

@media screen and (min-width: 768px) {
  .section.footer-links-bar .trustpilot-widget {
    padding: 0;
  }
}

.section.footer-pci-notice-bar {
  background-color: #44577d;
  color: white;
  padding-top: 50px;
  padding-bottom: 30px;
}

.section.footer-pci-notice-bar em {
  padding-right: 5px;
}

.section.footer-links-bar-2 {
  background-color: #324263;
  color: #8a9bbe;
  padding-top: 25px;
  padding-bottom: 25px;
  font-size: 13px;
}

.section.footer-links-bar-2 a {
  color: #8a9bbe;
}

.section.hero #owl-hero .item img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
}

.section.hero #owl-hero .owl-dots {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%);
}

.section.featured-products {
  padding-top: 60px;
  padding-bottom: 60px;
  background: #ebeff7;
  text-align: center;
}

.section.featured-products h3 {
  font-family: "Open Sans", sans-serif;
  color: #2f4c9e;
  font-style: italic;
  font-size: 20px;
  font-weight: 400;
}

.section.featured-products .featured-product-wrapper {
  background: #fff;
  padding: 15px;
  margin-top: 40px;
}

.section.featured-products .featured-product-wrapper h5 {
  font-size: 16px;
  font-weight: 700;
  margin-top: 20px;
}

.section.featured-products .featured-product-wrapper .row-price {
  margin-top: 20px;
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
}

.section.featured-products .featured-product-wrapper .row-price > [class^=col] {
  padding-top: 20px;
  padding-bottom: 20px;
}

.section.featured-products .featured-product-wrapper .row-price > [class^=col]:nth-child(2) {
  border-top: 1px solid #ddd;
}

.section.featured-products .featured-product-wrapper .price {
  font-size: 22px;
  line-height: 1.3em;
  color: #2f4c9e;
  font-weight: 700;
}

.section.featured-products .featured-product-wrapper .price--with-vat span {
  display: block;
  font-size: 12px;
  line-height: 1.3em;
}

.section.featured-products .featured-product-wrapper .price--without-vat {
  margin-top: 10px;
  font-size: 12px;
  line-height: 1.3em;
}

.section.featured-products .featured-product-wrapper .excluding-delivery-collection {
  font-size: 14px;
  line-height: 16px;
  font-weight: 700;
  margin-top: 20px;
  margin-bottom: 20px;
}

.section.featured-products .featured-product-wrapper .cta-view-more {
  text-decoration: underline;
  font-weight: 600;
  color: #2f4c9e;
  margin-top: 20px;
  margin-bottom: 10px;
  display: block;
}

@media screen and (min-width: 576px) {
  .section.featured-products .featured-product-wrapper .row-price > [class^=col]:nth-child(2) {
    border-top: 0;
    border-left: 1px solid #ddd;
  }
}

@media screen and (min-width: 992px) {
  .section.featured-products .featured-product-wrapper .row-price > [class^=col]:nth-child(2) {
    border-top: 1px solid #ddd;
    border-left: 0;
  }
}

@media screen and (min-width: 1200px) {
  .section.featured-products .featured-product-wrapper .row-price > [class^=col]:nth-child(2) {
    border-top: 0;
    border-left: 1px solid #ddd;
  }
}

.section.page-content {
  margin-top: 60px;
  margin-bottom: 60px;
}

.section.page-content h2 {
  font-family: "Open Sans", sans-serif;
  font-size: 20px;
  color: #2f4c9e;
  font-weight: 400;
}

.section.page-content h3 {
  font-size: 24px;
  margin: 2em 0 0.5em;
}

.section.page-content .banners {
  margin-top: 20px;
}

.section.page-content .banners a {
  display: block;
  margin-bottom: 40px;
}

.section.page-content .side-menu-R {
  margin-top: 40px;
}

@media screen and (min-width: 992px) {
  .section.page-content .side-menu-R {
    margin-top: 0;
  }
}

.section.page-content .side-menu-R a {
  color: #343a40;
}

.section.page-content .side-menu-R a.active {
  color: #fff;
  background: linear-gradient(to bottom, #428bca 0, #3278b3 100%);
  text-shadow: 0 -1px 0 #3071a9;
  border-color: #3278b3;
}

.section.page-content blockquote {
  padding-right: 15px;
  padding-left: 0;
  padding-top: 20px;
  text-align: right;
  border-right: 5px solid #eee;
  border-left: 0;
}

.section.page-content blockquote small {
  display: block;
  font-size: 80%;
  line-height: 1.42857143;
  color: #777;
}

.section.page-content .enquiry-form h2 {
  font-size: 32px;
  border-bottom: 1px solid #f2f2f2;
  padding-bottom: 20px;
  margin-top: 40px;
}

.section.page-content form {
  margin-top: 40px;
}

.section.page-content .address .line {
  font-size: 15px;
  display: block;
  line-height: 22px;
  font-family: "Open Sans";
}

.section.page-content .address .red-bold-italic {
  color: #c62127;
  font-style: italic;
  font-weight: 700;
  margin-top: 20px;
}

.section.products {
  padding-top: 60px;
  padding-bottom: 60px;
  text-align: center;
}

.section.products .banners a {
  display: block;
  margin-bottom: 40px;
}

.section.products .featured-product-wrapper {
  border: 1px solid #ccd4e3;
  margin-bottom: 40px;
}

.section.products .featured-product-wrapper h5 {
  font-size: 16px;
  font-weight: 700;
  margin-top: 20px;
}

.section.products .featured-product-wrapper .row-price {
  margin: 20px 0;
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
}

.section.products .featured-product-wrapper .row-price > [class^=col] {
  padding-top: 20px;
  padding-bottom: 20px;
}

.section.products .featured-product-wrapper .row-price > [class^=col]:nth-child(2) {
  border-top: 1px solid #ddd;
}

.section.products .featured-product-wrapper .price {
  font-size: 22px;
  line-height: 1.3em;
  color: #2f4c9e;
  font-weight: 700;
}

.section.products .featured-product-wrapper .price--with-vat span {
  display: block;
  font-size: 12px;
  line-height: 1.3em;
}

.section.products .featured-product-wrapper .price--without-vat {
  margin-top: 10px;
  font-size: 12px;
  line-height: 1.3em;
}

.section.products .featured-product-wrapper .excluding-delivery-collection {
  font-size: 14px;
  line-height: 16px;
  font-weight: 700;
  margin-top: 20px;
  margin-bottom: 20px;
}

.section.products .featured-product-wrapper .cta-view-more {
  text-decoration: underline;
  font-weight: 600;
  color: #2f4c9e;
  margin-top: 15px;
  margin-bottom: 20px;
  display: block;
}

@media screen and (min-width: 576px) {
  .section.products .featured-product-wrapper .row-price > [class^=col]:nth-child(2) {
    border-top: 0;
    border-left: 1px solid #ddd;
  }
}

@media screen and (min-width: 992px) {
  .section.products .featured-product-wrapper .row-price > [class^=col]:nth-child(2) {
    border-top: 1px solid #ddd;
    border-left: 0;
  }
}

.section.products .page-details {
  text-align: left;
}

.section.product-details {
  margin-top: 60px;
  margin-bottom: 60px;
}

.section.product-details #gallery .list-inline {
  white-space: nowrap;
  overflow-x: auto;
}

.section.product-details #gallery .carousel-inner {
  text-align: center;
}

.section.product-details #gallery .carousel-inner img {
  padding: 4px;
  border: 1px solid #ddd;
  border-radius: 4px;
}

.section.product-details #gallery .carousel-indicators {
  position: static;
  left: initial;
  width: initial;
  margin: 35px 0;
}

.section.product-details #gallery .carousel-indicators li {
  width: initial;
  height: initial;
  text-indent: initial;
  max-width: 100px;
}

.section.product-details #gallery .carousel-indicators li img {
  padding: 4px;
  border: 1px solid #ddd;
  border-radius: 4px;
}

.section.product-details #gallery .carousel-indicators li.active img {
  opacity: 1;
}

.section.product-details .description .text-red {
  color: #c62127;
  text-decoration: none;
  margin-top: 20px;
}

.section.product-details .description .price-box {
  background: #ebeff7;
  border: 2px solid #dde2ec;
  border-bottom: 0;
  margin-top: 16px;
}

.section.product-details .description .price-box--weekly,
.section.product-details .description .price-box--daily {
  padding: 10px 20px;
}

.section.product-details .description .price-box--daily {
  border-bottom: 2px solid #dde2ec;
}

.section.product-details .description .price-box .main-price {
  color: #2f4c9e;
  font-size: 22px;
  font-weight: bold;
}

.section.product-details .description .price-box .exvat {
  color: #2f4c9e;
  font-size: 15px;
  font-weight: bold;
}

.section.product-details .description .price-box .exvat.smallprice {
  font-size: 12px;
}

.section.product-details .description .qty-box {
  border: 2px solid #dce2ec;
  padding: 20px;
}

.section.product-details .description .countdown-block {
  margin-top: 35px;
  border: 7px solid #e1e6ef;
  padding: 10px 0;
  text-align: center;
  font-size: 18px;
}

.section.product-details .description .countdown-block .message {
  color: #3e3e3e;
  font-weight: 700;
}

.section.product-details .description .countdown-block .countdown {
  color: #2f4c9e;
  font-weight: 700;
  margin-bottom: 10px;
}

.section.product-details .description .countdown-block .countdown .hours,
.section.product-details .description .countdown-block .countdown .minutes,
.section.product-details .description .countdown-block .countdown .seconds {
  font-size: 30px;
  line-height: 30px;
  position: relative;
  top: 4px;
  margin-left: 10px;
}

.section.product-details .description .countdown-block .countdown .unit {
  font-size: 13px;
  text-transform: uppercase;
  font-weight: 600;
}

.section.product-details .description .countdown-block .charges {
  font-size: 16px;
}

.section.product-details .nav-item a {
  background: #7f91b5;
  color: #fff;
  position: relative;
  top: 1px;
  border: 1px solid #7f91b5;
  padding: 10px 15px;
  margin: 0 2px;
  border-radius: 0;
}

.section.product-details .nav-item a.active {
  color: #313131;
  cursor: default;
  background-color: #fff;
  border: 1px solid #7f91b5;
  border-top: 3px solid #7f91b5;
  border-bottom-color: transparent;
}

.section.instantquote {
  padding-top: 60px;
  padding-bottom: 60px;
}

.section.instantquote .get-quote {
  margin-top: 40px;
}

.section.instantquote .get-quote .card-body {
  padding: 40px;
}

.section.instantquote .get-quote .card-link {
  font-size: 22px;
}

.section.instantquote form span.input-group-addon span {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 5;
}

.product-page-min-hire {
  font-size: 12px;
  font-weight: bold;
  line-height: 1.3em;
  background: #dce2ec;
  color: #2f4c9e;
  padding: 10px 20px;
}

.price--daily .text-note {
  line-height: 1.3em;
  margin-top: 10px;
}

.map img {
  width: 100vw;
  height: auto;
}

.skype-button img {
  margin: 10px 0 0 !important;
  vertical-align: 0 !important;
}

@media screen and (min-width: 768px) {
  .navbar-expand-md .navbar-nav {
    margin-left: auto;
    margin-right: auto;
  }
}

.form--quote--edit .payment-method-selector,
.form--quote--edit .card-details {
  display: none;
}

.form--quote--edit.diff-refund .hide-for-diff-refund {
  display: none;
}

.form--quote--edit.diff-payment .payment-method-selector {
  display: block;
}

.form--quote .label--quantity .input-group {
  max-width: 150px;
}

.form--quote .label--quantity .input-group .product-quantity {
  font-weight: bold;
}

.form--quote .summary {
  font-weight: bold;
}

.form .show--no-vat {
  display: none;
}

.form .show--with-vat {
  display: inline-block;
}

.form .show--with-vat--block {
  display: block;
}

.form .with-vat--bold {
  font-weight: bold;
}

.form .inc-exc-vat:after {
  content: " (Exc. VAT)";
}

.form.is-vat-exempt .inc-exc-vat:after {
  content: " (VAT Exempt)";
}

.form.is-vat-exempt .inc-exc-vat--bold {
  font-weight: bold;
}

.form.is-vat-exempt .with-vat {
  display: none;
}

.form.is-vat-exempt .show--no-vat {
  display: inline-block;
}

.form.is-vat-exempt .show--no-vat--block {
  display: block;
}

.form.is-vat-exempt .show--with-vat {
  display: none;
}

.form .form-group {
  margin-bottom: 5px;
}

.form fieldgroup {
  display: block;
}

.form .valid-feedback,
.form .invalid-feedback {
  font-weight: 300;
}

/* Chrome, Safari, Edge, Opera */

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox */

input[type=number] {
  -moz-appearance: textfield;
}

.google-maps-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 100%;
  background: #eee;
}

.google-maps-container .fas {
  font-size: 48px;
  line-height: 1em;
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -24px 0 0 -24px;
  opacity: 0.25;
}

.google-maps-container iframe,
.google-maps-container object,
.google-maps-container embed {
  position: absolute;
  top: 1px;
  left: 0;
  width: 100%;
  height: 100%;
}

@media screen and (min-width: 768px) {
  .google-maps-container {
    padding-bottom: 100%;
  }
}

@media screen and (min-width: 992px) {
  .google-maps-container {
    height: 100%;
    padding-bottom: 0;
  }

  .google-maps-container iframe,
  .google-maps-container object,
  .google-maps-container embed {
    right: 0;
    bottom: 0;
  }
}

.table thead th,
.table .pseudo-thead th {
  border-top: 0;
}

.table .pseudo-thead th {
  vertical-align: bottom;
  border-bottom: 2px solid #dee2e6;
}

.table--bookings td {
  vertical-align: middle;
}

.table--bookings__name {
  font-weight: bold;
}

.table--driver-jobs tr:nth-child(even) {
  background: #f0f3f5;
}

@media screen and (min-width: 768px) {
  .table--driver-jobs tr:nth-child(even) {
    background: none;
  }
}

.table--links tbody tr {
  cursor: pointer;
}

.table--card-body th:first-child,
.table--card-body td:first-child {
  padding-left: 1.25rem !important;
}

.table--card-body th:last-child,
.table--card-body td:last-child {
  padding-right: 1.25rem !important;
}

.table .cell--toggle-status {
  padding: 5px 10px;
  vertical-align: middle;
  text-align: center;
}

.table--rental-info .featured-img {
  max-width: 120px;
}

.table--rental-info .price {
  font-weight: normal;
}

.table--rental-info td {
  vertical-align: middle;
}

.comments {
  position: relative;
}

.comments__body {
  font-style: italic;
}

.comments__body:before,
.comments__body:after {
  content: '"';
}

.accordion .card-header a,
.accordion .card-header a:hover,
.accordion .card-header a:focus,
.accordion .card-header a:active,
.accordion .card-header a:visited {
  text-decoration: none;
  display: block;
}

@media screen and (min-width: 768px) {
  .accordion #deliveryInfo .text-note {
    margin-top: 12px !important;
  }
}

.accordion--dac .card-header,
.accordion--dac .card-header a {
  color: #fff;
}

.accordion--dac > .card .card-header {
  margin-bottom: 0;
}

.accordion--dac > .card--status-pending .card-header {
  background: #c62127;
}

.accordion--dac > .card--status-pending .card-header .badge {
  background: #fff;
  color: #c62127;
}

.accordion--dac > .card--status-complete .card-header {
  background: #28a645;
}

.accordion--dac > .card--status-complete .card-header .badge {
  background: #fff;
  color: #28a645;
}

.accordion--get-quote .card {
  border-radius: 0;
}

.accordion--postcodes .card {
  border-radius: 0;
}

.accordion--postcodes .card-header {
  padding: 0;
}

.accordion--postcodes .table th:last-child {
  text-align: center;
}

.accordion--postcodes .btn-link {
  color: #2f4c9e;
  display: block;
  width: 100%;
  text-align: left;
  padding: 0.75rem 1.25rem;
  font-weight: bold;
}

.accordion--postcodes .btn-link:hover {
  text-decoration: none;
}

.accordion #dac-details .card-body {
  position: relative;
}

@media screen and (min-width: 768px) {
  .accordion #dac-details .card-body:before {
    content: "";
    position: absolute;
    top: 30px;
    left: 50%;
    bottom: 30px;
    border-left: 1px solid #ced4da;
  }
}

.accordion #quote-summary .vat-removed-notice {
  animation: flash2 1s 0.5s ease-out forwards;
}

.accordion #your-details .card--copy-details-from-delivery-details {
  background-color: #f8f9fa;
}

.accordion #your-details.show .card--copy-details-from-delivery-details {
  animation: flash 1s 0.5s ease-out forwards;
}

@keyframes flash {
  0%, 100% {
    background-color: #f8f9fa;
  }

  50% {
    background-color: #ffef9f;
  }
}

@keyframes flash2 {
  0%, 100% {
    background-color: #d1ecf1;
  }

  50% {
    background-color: #ffef9f;
  }
}

.card {
  position: relative;
}

.card .card-header,
.card .card-body {
  border-radius: 0;
}

.card--green {
  color: #155724;
  background-color: #d4edda;
  border-color: #c3e6cb;
}

.card--internal-notes .confirm-delete {
  color: #343a40;
  transition: all 0.25s ease-out;
}

.card--internal-notes .confirm-delete:hover {
  color: #c62127;
}

.card table:first-child tbody:first-child:first-child th,
.card table:first-child tbody:first-child:first-child td {
  padding-top: 0;
  border-top: 0;
}

.card table:first-child tr th:first-child,
.card table:first-child tr td:first-child {
  padding-left: 0;
}

.card table:first-child tr th:last-child,
.card table:first-child tr td:last-child {
  padding-right: 0;
}

.card table tr.total td {
  border-top-width: 2px;
}

.card table tr.grand-total td {
  font-weight: bold;
  border-top-width: 2px;
}

.card table.table-sm th,
.card table.table-sm td {
  vertical-align: middle;
}

.card--order-details--with-images td {
  vertical-align: middle;
}

.card--order-details--with-images .card--order-details__product-image {
  display: none;
  width: 200px;
  max-width: 100%;
}

@media screen and (min-width: 768px) {
  .card--order-details--with-images .card--order-details__product-image {
    display: inline-block;
    margin-right: 1rem;
  }
}

.card-flag {
  background: #636a80;
  color: #fff;
  padding: 2px 8px;
  font-size: 12px;
  border-bottom-left-radius: 5px;
  border-top-right-radius: 5px;
  position: absolute;
  top: 0;
  right: 0;
}

.alert {
  border-radius: 0;
}

.alert-danger {
  background: #c62127;
  color: #fff;
  border: none;
}

.admin-index .nav-tabs {
  border-bottom: 0;
}

.admin-index .nav-tabs .nav-item {
  border-bottom: 0;
  margin-bottom: 0;
}

.admin-index .nav-tabs .nav-item .nav-link {
  border: 1px solid #ddd;
  border-bottom: 0;
  background: #eee;
}

.admin-index .nav-tabs .nav-item .nav-link.active {
  border-color: #000;
  background: #343a40;
  color: #fff;
}

.admin-index #tabs-jobs .tab-pane .list-group-item:first-child {
  border-radius: 0;
}

.admin-index table {
  margin-bottom: 0;
}

[data-toggle=tooltip] {
  cursor: help;
}

.badge-booking-status {
  font-size: 16px;
  font-weight: normal;
  vertical-align: middle;
}

.section.flash {
  font-weight: bold;
  margin-top: 20px;
}

.section.flash .alert {
  margin-bottom: 0;
}

.section.flash + .page-content {
  margin-top: 20px;
}

.alert {
  padding: 30px;
}

.toggle-status,
.toggle-status:hover {
  text-decoration: none;
}

.toggle-status {
  display: inline-block;
}

.toggle-status:before {
  content: "\F0C8";
  font-family: "Font Awesome 5 Free";
  font-size: 20px;
  font-weight: 500;
  color: #343a40;
}

.toggle-status--checked:before {
  content: "\F14A";
  color: #28a645;
  font-weight: 400;
}

.toggle-status--loading {
  animation: fa-spin 2s linear infinite;
}

.toggle-status--loading:before {
  content: "\F110";
  color: #343a40;
  font-weight: 600;
}

.pseudo-checkbox label {
  display: none;
  cursor: pointer;
}

.pseudo-checkbox input[type=radio] {
  display: none;
}

.pseudo-checkbox input[type=radio]:checked + label {
  display: inline-block;
}

.pseudo-checkbox__yes:before,
.pseudo-checkbox__no:before {
  content: "\F0C8";
  display: inline-block;
  font-family: "Font Awesome 5 Free";
  font-size: 20px;
  font-weight: 500;
  color: #343a40;
  margin-right: 10px;
  line-height: 1em;
  position: relative;
  top: 1px;
}

.pseudo-checkbox__no:before {
  content: "\F14A";
  color: #28a645;
  font-weight: 400;
}

.list-products {
  margin-bottom: 0;
}

.list-products li {
  border-top: 1px solid #ccc;
  padding-top: 20px;
  margin-top: 20px;
  overflow: hidden;
}

.list-products li:first-child {
  border-top: 0;
  margin-top: 0;
  padding-top: 0;
}

.list-products label {
  display: block;
  font-weight: bold;
  background: #ebeff7;
  padding: 5px 5px 5px 10px;
  line-height: 30px;
}

.list-products label input {
  float: right;
  text-align: center;
  line-height: 24px;
  max-width: 100px;
}

@media screen and (min-width: 768px) {
  .list-products li {
    padding-left: 150px;
    position: relative;
  }

  .list-products li:first-child .featured-img {
    top: 0;
  }

  .list-products .featured-img {
    width: 120px;
    position: absolute;
    top: 20px;
    left: 0;
  }
}

.list-steps {
  padding-left: 1em;
  margin-bottom: 0;
}

.list-steps li {
  margin-top: 10px;
}

.list-steps li:first-child {
  margin-top: 0;
}

.list--changes li {
  margin-top: 1em;
}

.list--changes li:first-child {
  margin-top: 0;
}

.modal h6 {
  font-weight: bold;
}

.hh-modal {
  display: none;
  position: absolute;
  top: 0;
  left: 50%;
  right: 0;
  bottom: auto;
  transform: translateX(-50%);
  width: 800px;
  max-width: 90%;
  z-index: 51;
}

.hh-modal .close {
  position: relative;
  top: -5px;
}

.hh-modal__overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: #000;
  background: rgba(0, 0, 0, 0.5);
  z-index: 50;
  display: none;
}

.hh-modal__overlay:before {
  content: "Loading";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -100%);
  background: #333;
  color: #fff;
  padding: 10px 20px;
  border-radius: 0 0 5px 5px;
  font-weight: bold;
  transition: all 0.3s ease-out;
}

.hh-modal--notifications__list {
  position: relative;
}

.hh-modal--notifications .action-icon {
  background: #2f4c9e;
  color: #fff;
  width: 30px;
  height: 30px;
  line-height: 30px;
  text-align: center;
}

.hh-modal--notifications .action-icon--same-day-or-urgent {
  background: #c62127;
}

.hh-modal--notifications__mark-all-read {
  display: none;
}

.hh-modal--notifications__legend:before {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  background: #c62127;
  margin-right: 5px;
  vertical-align: middle;
  border-radius: 50px;
}

.hh-modal--notifications--loading .hh-modal--notifications__list:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
  background: rgba(0, 0, 0, 0.5);
}

.hh-modal--notifications--loading .hh-modal--notifications__list:after {
  content: "Marking as read...";
  font-weight: bold;
  color: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.hh-modal--advanced-search .advanced-search {
  border: none;
}

.hh-modal--advanced-search .card-header {
  display: none !important;
}

.hh-modal--advanced-search .card-body {
  display: block !important;
  padding: 0;
}

.hh-modal--saved-bookings .table--saved-bookings tr th:first-child,
.hh-modal--saved-bookings .table--saved-bookings tr td:first-child {
  padding-left: 0;
}

.hh-modal--saved-bookings .table--saved-bookings tr th:last-child,
.hh-modal--saved-bookings .table--saved-bookings tr td:last-child {
  padding-right: 0;
}

.hh-modal--saved-bookings .table--saved-bookings tr:first-child th,
.hh-modal--saved-bookings .table--saved-bookings tr:first-child td {
  border-top: 0;
  padding-top: 0;
}

.hh-modal--show .hh-modal__overlay {
  display: block;
}

.hh-modal--show .hh-modal__overlay:before {
  content: "Loading";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -100%);
  background: #333;
  color: #fff;
  padding: 10px 20px;
  border-radius: 0 0 5px 5px;
  font-weight: bold;
  transition: all 0.3s ease-out;
}

.hh-modal--loading .hh-modal__overlay {
  z-index: 100;
}

.hh-modal--loading .hh-modal__overlay:before {
  transform: translate(-50%, 0);
}

.show-notifications .hh-modal--notifications {
  display: block;
}

.notifications-require-attention .hh-modal--notifications__none {
  display: none;
}

.notifications-require-attention .hh-modal--notifications__mark-all-read {
  display: block;
  text-align: right;
}

.show-advanced-search .hh-modal--advanced-search {
  display: block;
}

.show-saved-bookings .hh-modal--saved-bookings {
  display: block;
}

.btn-primary,
.btn-increment,
.btn-decrement {
  background-image: linear-gradient(#d82e34, #b20f15) !important;
  background-color: #b20f15;
  border: 1px solid #b20f15;
  color: #fff;
  font-weight: 700;
}

.btn-primary:hover,
.btn-primary:active,
.btn-increment:hover,
.btn-increment:active,
.btn-decrement:hover,
.btn-decrement:active {
  color: #fff !important;
  border-color: #400 !important;
}

.btn-primary:focus,
.btn-increment:focus,
.btn-decrement:focus {
  box-shadow: none !important;
}

.btn-primary:active,
.btn-increment:active,
.btn-decrement:active {
  background-image: linear-gradient(#d82e34, #b20f15) !important;
  box-shadow: inset 1px 1px 3px #730005 !important;
}

.btn-primary:not(.btn-sm) {
  font-size: 17px;
  padding: 7px 36px;
}

.text-primary {
  color: #c62127 !important;
}

.bd-highlight {
  font-weight: bold;
  background: #cbddea;
  padding: 2px 5px;
  border-radius: 3px;
  border: 1px solid #94b2c7;
}

.bd-highlight--field-old-value {
  background: #f3cccd;
  border-color: #c27174;
}

.bd-highlight--field-new-value {
  background: #ccf3cf;
  border-color: #7cd183;
}

.vat_exempt_declaration__terms {
  height: 300px;
  border: 1px solid #ccc;
  padding: 20px;
  margin: 20px 0;
  overflow: scroll;
}

.page-item .page-link {
  color: #c62127;
  border-radius: 0 !important;
}

.page-item .page-link:hover {
  color: #c62127;
}

.page-item.active .page-link {
  background: #c62127;
  color: #fff;
  border-color: #c62127;
}

.google-reviews {
  background: #212d49;
  color: #fff;
  padding: 20px;
  margin-bottom: 10px;
  box-shadow: 2px 2px 0 #111a31;
}

.google-reviews .btn {
  margin-top: 20px;
  padding-left: 20px;
  padding-right: 20px;
  font-size: 14px;
  display: block;
}

.list-errors {
  text-align: left;
  color: #c62127;
}

.booking-index #form-my-booking {
  margin-top: 20px;
}

.booking-index #form-my-booking .btn {
  margin-top: 20px;
}

.search-toggle {
  color: #fff;
  opacity: 0.8;
  transition: all 0.2s ease-out;
}

.search-toggle:hover {
  color: #fff;
  opacity: 1;
}

.driver-index .table .badge {
  font-size: 14px;
  font-weight: normal;
}

.card-search {
  margin-left: -1.25rem;
  margin-right: -1.25rem;
  margin-bottom: 1.25rem;
  background: #eee;
  border: none;
  border-radius: 0;
}

.card-search .form-group {
  margin-bottom: 0;
}

input.datepicker {
  width: 100%;
}

input.datepicker[readonly] {
  background-color: transparent;
}

.search-row {
  background: #f0f0f0;
  padding: 20px 5px;
  margin-left: -20px;
  margin-right: -20px;
}

.delivery-option-types {
  align-items: center;
}

.delivery-option-types input[type=radio] {
  display: none;
}

.delivery-option-types input[type=radio]:checked + label {
  border: 4px solid #2f4c9e;
  padding-top: 8px;
  padding-bottom: 8px;
}

.delivery-option-types > [class^=col] {
  display: flex;
}

.delivery-option-types > [class^=col] > label {
  display: flex;
  border: 2px solid #dce2ec;
  cursor: pointer;
  transition: border-color 0.3s ease-out;
  align-items: center;
  flex: 1;
  justify-content: center;
  text-align: center;
  padding: 10px;
  flex-direction: column;
}

.delivery-option-types > [class^=col].help-text {
  display: block;
  margin-bottom: 0.5rem;
  color: #c62127;
  font-weight: bold;
  padding: 0 15px;
}

.delivery-option-types > [class^=col].help-text > div {
  padding: 10px;
  background: #ffe2e4;
}

@media screen and (min-width: 768px) {
  .delivery-option-types > [class^=col].help-text > div {
    padding: 14px;
  }
}

@media screen and (min-width: 992px) {
  .delivery-option-types > [class^=col].help-text > div {
    padding: 24px;
  }
}

.delivery-option-types__title,
.delivery-option-types__subtitle,
.delivery-option-types__price {
  margin-bottom: 0;
}

.delivery-option-types__title {
  font-weight: bold;
}

.delivery-option-types__price {
  color: #c62127;
}

.required-field {
  color: #c62127;
  font-weight: bold;
}

.text-note {
  color: #c62127;
  font-weight: bold;
  margin: 0;
}

.text-note--xs {
  font-size: 12px;
  font-weight: normal;
}

.text-note--sm {
  font-size: 14px;
}

.price {
  font-weight: bold;
}

.price--daily {
  margin: 0 0 5px;
}

.price--weekly {
  margin: 0;
}

.price__inc-vat {
  font-size: 10px;
}

.phone {
  font-weight: bold;
  white-space: nowrap;
}

.iti {
  display: block;
}

.iti .iti__flag {
  background-image: url("/images/flags/flags.png");
}

@media (min-resolution: 192dpi) {
  .iti .iti__flag {
    background-image: url("/images/flags/flags@2x.png");
  }
}

.grecaptcha-badge {
  visibility: hidden;
}

.highlight {
  font-weight: bold;
  display: inline-block;
  background: #ffd807;
  padding: 5px 20px;
}

.driver-index .job-filter {
  border: 1px solid #dee2e6;
  padding: 20px;
}

