/**
 * All of the CSS for your public-facing functionality should be
 * included in this file.
 */

.checkfront-lightbox {
   background: #fff none repeat scroll 0 0;
   margin: 20px auto;
   max-width: 600px;
   padding: 20px;
   position: relative;
   width: auto;
}

.mfp-content .checkfront-lightbox .mfp-close {
   top: -10px !important;
   right: -10px;
}


/**
 * All of the CSS for your public-facing functionality should be
 * included in this file.
 */

.wm-checkfront-schedule {

   display: flex;

   flex-direction: column;
}

.wm-checkfront-schedule section:nth-of-type(2n+1) {
   background-color: #eee;
}

section.product-details {
   display: -webkit-box;
   display: -moz-box;
   display: -ms-flexbox;
   display: -webkit-flex;
   display: flex;
   flex-flow: row wrap;
   padding: 10px 20px;
   padding: 15px 20px;
   border: solid 1px #c7c7c7;
   border-width: 0px 1px 1px 1px;
   background-color: #fff;
   opacity: 1;
   transition-duration: 0.5s;
}

.product-spacer {
   width: 100%;
   border-top: solid 1px #c7c7c7;
}

.product-details .product-date {
   flex: 1 auto;
   order: 1;
   background-color: #bdbdbd;
   padding: 10px;
   align-items: center;
   display: flex;
   justify-content: center;
   line-height: initial;
   font-size: 16px;
   flex-basis: 100%;
}

.product-details .product-description {
   flex: 100%;
   order: 0;
   padding-top: 10px;
   font-size: 14px;
}

.product-description p {
   margin: 0;
}

.product-links {
   display: flex;
}

.product-details .product-status {
   flex: 1 auto;
   order: 2;
   /* padding: 0 10px; */
   display: -webkit-box;
   display: -moz-box;
   display: -ms-flexbox;
   display: -webkit-flex;
   display: flex;
   align-items: center;
   justify-content: center;
   text-align: center;
   flex-basis: 100%;
   margin-top: 10px;
}

.product-details h3 {
   display: flex;
   font-weight: 600;
   font-size: 16px;
   margin: 0;
}

.product-details h1 i {

   margin-left: 8px;

   font-size: 0.8em;
}

.wm-checkfront-schedule section:nth-of-type(1) {
   border-top: solid 1px #c7c7c7;
}

#wm-checkfront-schedule>div:nth-of-type(2) {
   border-top: none;
}

.product-year {
   padding: 0 20px;
   font-size: 18px;
   border-bottom: solid 1px #c7c7c7;
   /* display: none; */
}

.product-status a {
   flex: 1;
}

.product-status a i {
   margin-right: 0px !important;
}

.product-price,
.request-itinerary,
.product-availability {
   padding: 10px 0px;
   font-weight: 400;
   font-size: 14px;
   flex-grow: 1;
}

.request-itinerary i {
   margin-right: 5px;
   font-size: 1.2em;
}

#load-more {
   align-self: center;
   margin: 20px 0px;
   display: none;
}

section.hide-product,
div.hide-product {
   display: none;
   transform: translate3d(0px, 60px, 0px);
   opacity: 0;
}

.checkfront-btn-row {
   display: flex;
   justify-content: center;
   align-items: center;
   padding: 0px 20px;
}

.checkfront-btn-row a i {
   margin: 0px !important;
}

/* Accordion */
#wm-checkfront-schedule .accordion-content {
   display: none;
}

#wm-checkfront-schedule .accordion-toggle:before {
   font-family: "Font Awesome 6 Pro";
   content: "\f054";
}

#wm-checkfront-schedule .accordion .accordion-toggle.focused:before {
   content: "\f078";
}

#wm-checkfront-schedule .accordion .accordion-toggle {
   margin-bottom: 10px;
}

.wm-checkfront-schedule .accordion-content {
   margin-bottom: 20px;
}


@media screen and (min-width: 768px) {
   .product-details {
      align-items: center;
   }

   .product-details .product-date {
      flex: 2 1;
      order: 1;
      font-size: 14px;
   }

   .product-details .product-description {
      flex: 10 1;
      order: 2;
      padding: 0 20px 0 30px;
   }

   .product-details .product-status {
      flex: 2 1;
      order: 3;
      padding: 0;
   }

   .product-details .product-date .product-status {
      display: none;
   }

   .product-status a {}

   .product-status a.button-icon {
      /* max-width: 120px!important; */
   }

   .product-price,
   .request-itinerary,
   .product-availability {
      padding: 5px 20px 5px 0px;
      font-size: 14px;
      flex: 0 auto;
      min-width: 115px;
   }
}