/*
To change this license header, choose License Headers in Project Properties.
To change this template file, choose Tools | Templates
and open the template in the editor.
*/
/*
    Created on : Jun 25, 2019, 3:26:05 PM
    Author     : arjun
*/
.visually-hidden {
    position: absolute !important;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
    width: 1px;
    height: 1px;
    word-wrap: normal;
}

/* Use the same styles for submit buttons and links with the "button" class. */
.form-submit,
a.button {
    background: #378f3c;
    color: #ffffff;
    box-shadow: 0 2px 4px 0 rgba(37, 36, 35, 0.12);
    border: none;
    border-radius: 23px;
    font-weight: 700;
    border-width: 2px;
    text-transform: uppercase;
    font-size: 16px;
    line-height: 1.63;
    padding: 11px;
    min-width: 223px;
}
/* "Button" links need a little more horizontal padding. */
a.button {
  padding-left: 1.5em;
  padding-right: 1.5em;
}
/* Copied button style overrides from the base.css file. */
.form-submit,
a.button:hover {
  background: #235b26;
  box-shadow: 0 2px 4px 0 rgba(37, 36, 35, 0.12);
  border: none;
  color: #fff;
}
.user-pass .form-text, .user-login-form .form-text {
    display: block;
    height: calc(1.5em + 0.75rem + 2px);
    padding: 0.375rem 0.75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #495057;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #ced4da;
    border-radius: 0.25rem;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

#views-exposed-form-product-list-block-1 .form-submit, #views-exposed-form-destination-tours-block-1 .form-submit,#views-exposed-form-heritage-products-heritage-details-products .form-submit{
    display: none;
}
.sort-list ul li label {
    font-size: 14px;
    line-height: 1.71;
    color: #252423;
    display: block;
    padding: 5px 10px 5px 20px;
}
.surname-search .views-row{
    display: none;
}
.customCheckbox[type="checkbox"] + label {
    display: table !important;
}
.form-field label.error {
    position: absolute;
    left: 20px;
    top: 120%;
    transform: translateY(-50%);
    font-size: 14px;
    font-weight: 300;
    line-height: 1.5;
    color: red;
    display: none;
    z-index: 1;
}
#views-exposed-form-acquia-search-page label {
    display: none;
}
/* this is temporary for language dropdown */
@media (min-width: 1200px) {
    .speak-expert {
        margin: 4px 0;
    }
}
.cie-surname-search-form .form-group {
    margin-bottom: 0;
}
.ui-autocomplete  { margin-left: -2px; }
.destination-detail .ui-autocomplete, .heritage-detail .ui-autocomplete, .page-surname-search .ui-autocomplete { max-width: 845px; }
.page-offers .ui-autocomplete { max-width: 301px; border-color: #d8d8d8 !important; border-radius: 0 0 23px 23px; padding: 15px !important; }
.page-offers .ui-autocomplete .ui-menu-item { margin-bottom: 15px; }
.page-offers .ui-autocomplete .ui-menu-item-wrapper { font-size: 14px; font-weight: 400; }
/*Css for Hotel popup to be opend respectively*/
.hotel-gallery-popup.modal { background: #f1f1f1; }
.hotel-gallery-popup .modal-xl { margin-top: 0; margin-left: 0; margin-right: 0; }
.hotel-gallery-popup .modal-content { border-radius: 0; border: none; background: none; }
@media (min-width:576px) {
    .hotel-gallery-popup .modal-xl { margin-top: 0; margin-left: auto; margin-right: auto; }
}

/*promotions css*/
.deals-list .load-more-btn {
    position: relative;
}
.ajax-progress {display: inline-block;padding: 1px 5px 2px 5px;}
.language-switcher ul li a { padding: 3px 10px; cursor: pointer;color: #000; }
.language-switcher ul li a:hover { background: #378f3c; color: #fff; }
.morecontent span { display: none;}
.morelink { display: block; }
.popup-captcha-error { display: block;width:175px; }
/*loginpopup-registration background*/
.login-pop-new { background-color: #fff;}
/*bdm task form*/
#edit-bdm-task-what-days-best-for-you, #edit-bdm-task-what-time-bests-for-you { padding-top: 5px;}
#contact-us-popup .request-quote-actions {margin-top: 60px;text-align: left;}
#contact-us-popup .request-quote-title p {
    font-size: 16px;
    margin-top: 13px;
}
#contact-us-popup .required-tag {
    display: block;
    font-size: 14px;
    line-height: 1.71;
    color: #cc0d0d;
}
#contact-us-popup .request-quote-form .form-group textarea.form-control {
    min-height: 100px;
}
/* Travel Types*/
.travel-type-block-con h4 {
    max-width: 232px;
    margin: 0 auto;
}
.travel-type-block-con.pricing-info label {
    padding-bottom: 20px;
}
.terms-condition-popup{ margin-top: 0px;}

#request-quote-thankyou-travel-type .quote-thankyou-contact {margin-top:20px !important}
.toolbar-tray-open .top-header{
    margin-top: 80px;
}
.request-quote-form .form-group textarea.form-control {
   margin-bottom: 15px;
}
#contactus-widget { padding-top: 10px;}
.request-quote-actions .close{text-decoration: underline;}
.reservations-list .table td img { display: inline-block; vertical-align: top; }
.her-src{color:red;}

/* 9-nov-2019 */
.banner-con a#homepagepromoimage {float: left;}
span.select-tour-date-title-small-font {font-size: 13px;}
.trips-ideas.faq-wrap {overflow: visible;}
.f-a-item-con{ z-index: 9;}
@media (min-width: 768px) {
  .sldr-paginationenj {min-width: 80px; }
.banner-offer a:nth-child(2) {
    margin-left: 40px;
}
}
@media (min-width: 1200px) {
.banner-offer a {font-size: 29px;}
.banner-dropdown a {font-size: 23px;}
.banner-offer a:nth-child(2) { margin-left: 60px;    }
}

/* Fix z-index issue with banner dropdown going behind the promo banner */
.banner-dropdown.show {
  z-index: 10;
}
/*11-nov-2019 - the cie-difference enjoy slider related start*/
.sldr-paginationenj.eia-sldr-pagination { padding: 25px 10px; }
@media (min-width: 1200px) {
  .sldr-paginationenj, .pt-sldr-pagination { font-size: 24px;  padding: 35px 10px; }
}
.sldr-paginationenj { font: 400 22px/1.27 "ProzaLibre"; padding: 20px; width: 25%; text-align: center; }
/*11-nov-2019 - the cie-difference enjoy slider related start*/
.popular-tours-slide-con{position: relative;z-index: 9;}
/*13-nov-2019 - home tour widget*/
@media (max-width: 767px) {
 .banner-offer a:nth-child(2) { margin-left: 30px;    }
}
/*------travel trips filter css--*/
section.trips-ideas.pad-top-110 {
    overflow: visible;
}
section.tours-wrap.all-tours-list {
    overflow: visible;
    position: relative; z-index: inherit;
}
section.tours-wrap.all-tours-list.active { z-index: 9; }
.media {
  display: block !important;
  align-items: unset;
}
/*14-11-2019 blazy loading*/
.media--loading::before {
    content: '';
    display: block;
    width: 30px;
    height: 30px;
    max-width: 30px;
    background: url("../images/loading.svg") no-repeat center !important;
    background-size: 100% !important;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -15px;
    margin-top: -15px;
    font-size: 0;
    z-index: 22;
    -webkit-animation: none;
    animation: none!important;
}
/*15-nov-2019 balzy loader center*/
.fea-blazy article, .fea-blazy .blazy, .fea-blazy .gallery-img,  .fea-blazy div, .fea-blazy .blazy div, .fea-blazy .media {height:100%;}
/* calendar arrows grayout */
.grayout{
    background: #D8D8D8 !important;
    pointer-events:none !important;
}
/* 09-12-2019 pop-up overlay issue */
.exit-pop-close {background: none;border: none;}
/* For News views filters */
.betterexp-all-sel + label.bef-toggle { margin: 0 0 17px; }

@media (min-width:992px) {
    .betterexp-all-sel + label.bef-toggle { margin: 0 10px; }
}

/* Footer bottom */
.footer > .container > .row:last-child {
  display: flex;
  flex-direction: column;
}

.footer > .container > .row:last-child > div.copy-right {
  flex: 1 0 100%;
  order: 5;
}

.footer > .container > .row:last-child > div.language-switcher-container {
  flex: 1 0 100%;
  order: 2;
  text-align: center;
}

.footer > .container > .row:last-child > div {
  flex: 1 0 100%;
  margin: 12px 0;
}

.language-switcher-container .language-switcher {
  display: inline-block;
}

.footer .pay-options {
  margin-top: 0;
}
@media (min-width:768px) {
  .footer > .container > .row:last-child {
    flex-direction: row;
  }
  .footer > .container > .row:last-child > div.social-share-container,
  .footer > .container > .row:last-child > div.pay-options-container {
    flex: 1 0 340px;
  }
}

@media (min-width:1024px) {
  .footer > .container > .row:last-child {
    align-items: center;
  }

  .footer > .container > .row:last-child > div.copy-right,
  .footer > .container > .row:last-child > div.language-switcher-container {
    order: initial;
  }
  .footer > .container > .row:last-child > div.language-switcher-container {
    flex: 0 0 120px;
  }
}

.footer > .container > .row:last-child > div.contextual {
  display: none;
}

/* @TO-DO: move this to SCSS once gulp is setup */
.banner-title .banner-title__link {
  transition: all 0.3s ease-in-out;
  color: #fff;
}

.banner-title .banner-title__link:hover,
.banner-title .banner-title__link:focus {
  color: #252423;
}

/* move this out to a partial after theme updates get merged in */
.inline-block--basic {
  margin: 60px auto;
}

.inline-block--basic .block-title {
  text-align: center;
  margin-bottom: 16px;
}

.inline-block--basic p {
  display: block;
  margin: 0 0 16px;
}

/* move this out to a partial also */
p.large-txt {
  font-size: 20px;
}

p.medium-txt {
  color: #333230;
  font-size: 16px;
}

p.small-txt {
  font-size: 14px;
}

h5.bold {
  font-weight: 600;
}

.text-align-left {
  text-align: left;
}

.text-align-center {
  text-align: center;
}

.text-align-right {
  text-align: right;
}

/* Tour links need to be black, not the default green color. */
.tours-item h3 a {
  color: #252423;
}

/* Standard image positioning per CKEditor. */
img[data-align="right"],
img.align-right {
  float: right;
  margin: 0 0 1.5rem 1.5rem;
}
img[data-align="left"],
img.align-left {
  float: left;
  margin: 0 1.5rem 1.5rem 0;
}
img[data-align="center"],
img.align-center {
  display: block;
  margin: 0 auto 1.5rem;
}


/*
  11/4/2024 - Print Styles
  The styles were designed to target text heavy pages like /terms-conditions, /privacy-policy, and /trip-protection.
  The styles are not specifically designed to focus on more complex page views such as /tours or /tours/ireland.

  We deployed a strategy of creating some basic print styles/settings and removing the unnecessary elements
  from the header and footer, simplifying the printed page for the user. While we were not trying to focus on the
  more complex pages (above), this strategy and the base element styles included below will help improved the printing
  of those page types.
*/

@media print {
  @page {
    margin: .75in 1in;
    size: letter;
  }

  @supports (-webkit-appearance:none) {
    body {
      padding: .75in 1in !important; /* Match @page margins */
      margin: 0 !important;
    }

    /* Ensure first and last elements don't add extra space */
    body > *:first-child {
      margin-top: 0 !important;
    }

    body > *:last-child {
      margin-bottom: 0 !important;
    }
  }

  /* Reset all elements to respect page boundaries */
  * {
    color: black !important;
    transform: none !important;
    left: 0 !important;
    right: 0 !important;
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow-x: visible !important;
    text-overflow: ellipsis !important;
  }

  /* Ensure text wrapping */
  p, td, th, li {
    width: calc(100% - 1rem) !important;
    max-width: calc(100% - 1rem) !important;
    break-inside: avoid !important;
    /* Ensure text stays within bounds */
    word-break: break-word !important;
    overflow-wrap: break-word !important;
    -webkit-hyphens: auto !important;
    -ms-hyphens: auto !important;
    hyphens: auto !important;
  }

  /* Force page breaks */
  .page-break {
    page-break-before: always;
  }

  /* Prevent elements from being split across pages */
  p, h1, h2, h3, h4, h5, table, figure {
    page-break-inside: avoid;
  }

  /* Header styles */
  header.header {position: static;}
  .cie-tours-logo {
    text-align: left !important;
  }

  /* Hide non-essential elements */
  .top-header, .bottom-nav, .nav-open-icon, .search-icon,
  .vacation-help, .footer-links, .footer-logos-list,
  .social-share-container, .language-switcher-container,
  .pay-options-container,
  iframe#launcher, iframe[title="Close message"], iframe[title="Message from company"]  {
    display: none !important;
  }

  .row > div {width: 100% !important; margin: auto !important; flex: auto !important;}

  /* Table styles */
  .table {
    border-collapse: collapse !important;
    width: 100% !important;
    max-width: 100% !important;
    table-layout: fixed !important;
  }

  .table tr {
    border-bottom: 1px solid #dddddd !important;
    background-color: #fff !important;
  }

  .table td, .table th {
    max-width: 100% !important;
    overflow-wrap: break-word !important;
  }

  /* Ensure images fit within page bounds */
  img {
    max-width: 100% !important;
    height: auto !important;
  }

  /* Ensure links are readable */
  a {
    word-wrap: break-word !important;
  }
}


/* Center alignment on confirmation messages. */
.webform-confirmation,
.webform__modal .webform-confirmation__message {
  margin: 0 auto;
}
