/*
* common
*/
* {
  margin: 0;
  padding: 0;
}
html, body {
  color: #272525;
  background-color: slategray;
  font-family: 'Montserrat', sans-serif;
  font-size: 14px;
}
/* h1, h2, h3, h4, h5, h6 {
  font-size: 90% !important;
} */
a {
  transition: all 0.3s ease;
}
.smtext {
  font-size: small;
}

h2 {
  font-weight: 800;
  letter-spacing: 0.1rem;
  color: #272525;

}

a.silentlink {
  text-decoration: none;
}
a.silentlink:hover {
  text-decoration: none;
}
a.silentlink:visited {
  text-decoration: none;
}

.breadcrumb {
  margin-left: 0.4rem;
  margin-right: 0.4rem;
  background-color: transparent!important;
}

.custom-shadow {
  box-shadow:
    0 1px 1px hsl(0deg 0% 0% / 0.075),
    0 2px 2px hsl(0deg 0% 0% / 0.075),
    0 4px 4px hsl(0deg 0% 0% / 0.075),
    0 8px 8px hsl(0deg 0% 0% / 0.075),
    0 16px 16px hsl(0deg 0% 0% / 0.075)
  ;
}

.fw-bold {
  font-weight: 700!important;
}

.border-between > [class*='col']:before {
  background: #e3e3e3;
  bottom: 0;
  content: " ";
  left: 0;
  position: absolute;
  width: 1px;
  top: 0;
}

.border-between > [class*='col']:first-child:before {
  display: none;
}

/*
* navbar
*/
.nav-container {
  padding-top: 1rem;
  padding-bottom: 1rem;
  background-color: #fff;

}
.navbar {
  background-color: transparent;
}
.navbar-brand>img {
  width: 4rem;
  height: auto;
}

.navbar-light .navbar-nav .active>.nav-link, .navbar-light .navbar-nav .nav-link.active, .navbar-light .navbar-nav .nav-link.show, .navbar-light .navbar-nav .show>.nav-link {
  color: #1b5aa7;
}
.login-btn, .login-btn:visited, .login-btn:hover {
  margin: 0;
  color: #272525;
  padding: 5px 30px;
  background: #cfd3d2;
  border: none;
  border-radius: 100px 100px 100px 100px;
}
.search-head-btn, .search-head-btn:visited, .search-head-btn:hover {
  margin: 0;
  margin-right:1rem;
  color: #fff;
  padding: 5px 30px;
  background: #1b5aa7;
  border: none;
  border-radius: 0 100px 100px 0;
}
.search-btn {
  margin: 0;
  color: #1b5aa7;
  padding: 5px 16px;
  background: #fec700;
  border: none;
  border-radius: 100px 0 0 100px;
}
.search-input {
  border: 0;
  background-color: transparent;
  width: 120px;
  outline: 0;
  color: #1b5aa7;
  margin-left: 10px;
}

.bd-callout {
  padding: 1.25rem;
  margin-top: 1.25rem;
  margin-bottom: 1.25rem;
  border: 1px solid #e9ecef;
  border-left-width: 0.25rem;
  border-radius: 0.25rem;
}
.bd-callout-info {
  border-left-color: #fec700;
}


.round-blue-button, .round-blue-button:visited, .round-blue-button:hover {
  margin: 0;
  margin-right:1rem;
  color: #fff;
  padding: 5px 30px;
  background: #1b5aa7;
  text-decoration: none;
  border: none;
  border-radius: 100px;
}

@media (min-width: 992px)
{
  .navbar-expand-lg .navbar-nav .nav-link {
      padding-right: 1.0rem;
      padding-left: 1.0rem;
  }
}



/*
* carousel
*/
.car01-container {

}
.img-fluide {
  min-height: 20rem !important;
}
.carousel-caption {
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  text-align: left;
  color: #272525;
}
.carousel-caption-back {
  background-color: rgba(255, 255, 255, 0.8);
  border-radius: 0.6rem;
  color: #000;

}
.carousel .display-4 {
  font-weight: 800;
  font-size: 3.0rem;
  letter-spacing: 0.1rem;
  line-height: 2.8rem;
  text-shadow: 0 1px 3px rgb(0 0 0 / 50%);
  color: #fff;
}
.btn-tr {
  border: 1px solid #1b5aa7;
  background-color: transparent;
  outline: 0;
  color: #1b5aa7;
  padding: 0.4rem;
  padding-left: 1rem;
  padding-right: 1rem;
  border-radius: 1rem;
  text-decoration: none;
}
.btn-tr:hover {
  color: #fff;
  background-color: #1b5aa7; 
  text-decoration: none;
}

.carousel-indicators li {
  width: 10px;
  height: 10px;
  border-radius: 4px;
  border-top: none;
  border-bottom: none;
  background-color: #7f867f;
  opacity: 1;
}

.carousel-indicators .active {
  background-color: #fff;
}

.carousel-indicators {
  justify-content: flex-end;
  margin-right: 5%;
}

.carousel-indicators-hotel-cart {
  display: grid;
  justify-content: end;
  margin-right: 5%;
  gap: 8px;
  margin-bottom: 10%;  
}



/*
* destinations
*/
.destinations-container
{
  position: relative;
  top: 0;
}
.destinations-container .card {
  border: none;
  transition: all 0.3s ease;
  cursor:pointer;
  max-width: 16rem;
}
.destinations-container .card:hover {
  box-shadow: 0 .5rem 1rem rgba(0,0,0,.15)!important;
  background-color: #f8f9fa!important;
  border-radius: 00.25rem;
}
.destinationrow {
  overflow-x: auto;
  overflow-y: hidden;
}

.destinations-container .card-img-top 
{
  border-radius: 0.25rem;
}
.more-destinations {
  margin-top: 8rem;  
}

.stars {
color: #1b5aa7;
}



/*
* we are
*/
.weare {
  /* margin-top:3rem;  */
  background-color: #fff;

}

.weareline {
  background-color: #fec700;
}

.wacard svg {
  height: 3.0rem;
  color: #272525;
  transition: all 0.3s ease;
}
.wacard {
  padding-top:2rem;
  padding-bottom: 2rem;
  cursor: pointer;
  border-top: 2px solid transparent;
}
.wacard h3 {
  transition: all 0.3s ease;
  color: #272525;
}
.wacard:hover h3 {
  color: #1b5aa7; 
}
.wacard:hover svg {
  color: #1b5aa7; 
}
.wacard:hover 
{
  border-top: 2px solid #1b5aa7;
}


/*
* Services
*/
.services {
  padding-top: 5rem;
  padding-left: 1rem;
  padding-right: 1rem;  
  padding-bottom: 1rem;
}
.services h2 {
  padding-left: 1rem;
}
.servline {
  border-bottom: 4px solid #1b5aa7;
  margin-left: 1rem;
  margin-right: 1rem;  
  padding-top: 2rem; 
  /* cursor: pointer; */
  transition: all 0.3s ease;
}

.servline:hover {
  box-shadow: 0 .5rem 1rem rgba(0,0,0,.15)!important;
  background-color: #f8f9fa!important;
  border-radius: 0.25rem; 
}

.servline img {
  max-width: 20rem;
}


/*
* News
*/
.news {
  padding-top: 5rem;
  padding-left: 1rem;
  padding-right: 1rem;  
}
.news h2 {
  padding-left: 1rem;
}
.newscard {
  border: none;
  border-radius: 0;
  border-top: 4px solid transparent;
  cursor: pointer;
  transition: all 0.3s ease;
}
.newscard .card-header {
  background-color: transparent;
  border: 1px solid rgba(0,0,0,.125);
  border-top: 1px solid rgba(0,0,0,.125);
}
.newscard:hover {
  border-top: 4px solid #1b5aa7;
}

.newsrow {
  overflow-x: auto;
  overflow-y: hidden;
}
.newscardbody {
  /* color: #fff; */
  background-color: #fdc700;
  height: 20rem;
  background-size: cover;
  background-repeat: no-repeat;
}
.newscardlink {
  position: absolute;
  bottom: 1rem;
}



/*
* Subscribe
*/
.subscribe {
  padding-top: 5rem;
  padding-left: 1rem;
  padding-right: 1rem;  
}
.subscribe h2 {
  padding-left: 1rem;
}

.social a:link, .social a:visited {
  text-decoration: none;
  color: #1b5aa7;
  transition: all 0.3s ease;
}

.social a:hover {
  color: #fec700;
}

.social svg {
  height: 1.2rem;
}

.socialcard {
  min-width: 10rem;
  border: none;
  padding: 1rem;
}

.socialcards {
  padding-bottom: 3rem;
}



/*
* Footer
*/

.footer {
  border-top: 1px solid #e1e1e1;
  padding-top: 1rem;
  padding-left: 1rem;
  padding-right: 1rem;  
  background-color: #fec700;
}
.btmfooter {
  background-color: #e1e1e1;
  padding-top:1rem;
  padding-bottom:0.2rem;
}
#chevron {
  cursor:pointer;
  transition: all 0.3s ease;

}
#chevron:hover {
  color: #1b5aa7;
  font-weight: 600;
}



/*
* Hotel page
*/

.hotelcoreimg {
  border-radius: 0.25rem; 
}

.previewHotelImagesCarousel {
  max-width: 24rem; 
  margin: 0.4rem;
}
.places-img {
  max-width: 40px;
  height: auto;
}
.places-list {
  display: flex;
  gap: 20px;
}



/*
* Seacrh hotel
*/

.forms {
  background-color: #f9f9f9;
  border-radius: 0.25rem;
  margin-top: 2rem;  
}


.card-img-top-hotel {
  position: relative;
  transition: all 0.3s ease;
  overflow: hidden;
  width: 100%;
  height: 16rem;
}
.card-img-top {
  transition: all 0.3s ease;
}

.card-img-top-hotel-img {
  width: 100%;
  height: 16rem;
  object-fit: cover;
}

.card-hotel {
  transition: all 0.3s ease;
}
.card-hotel:hover {
  box-shadow: 0 .5rem 1rem rgba(0,0,0,.15)!important;
  background-color: #f8f9fa!important;
  border-radius: 00.25rem;
  cursor: pointer;
}
.card-hotel:hover  .card-img-top {
  transform: scale(1.1);
}

/*
Hotel cart
*/

.hotelslideimage {
  height: 20rem;
  max-height: 20rem;
  object-fit:fill;
}
.carousel-indicators-hotel {
  margin-bottom: 60px;
}
.hoteltitlerow {
  box-shadow: 0 .5rem 1rem rgba(0,0,0,.15)!important;
  background-color: #f8f9fa!important;
  border-radius: 00.25rem; 
  margin-left: 10%;
  margin-right: 10%;

}

.map-responsive{
  overflow:hidden;
  padding-bottom:50%;
  position:relative;
  height:0;
}
.map-responsive iframe{
  left:0;
  top:0;
  height:100%;
  width:100%;
  position:absolute;
}

.hotelcoredataandmap {
  background-color: #fff7da;
  /* margin-top: 2rem; */
}

#coremap {
  height: 20vh; 
  width: 100%; 
}

#justmap {
  height: 60vh; 
  width: 100%; 
}

.hotelAddress, .hotelSite, .hotelPhone, .hotelEmail {
  font-size: 1rem;
  color: #272525;
  margin-bottom: 1rem;
} 
.hotelAddress a:link, .hotelSite a:link, .hotelPhone a:link, .hotelEmail a:link {
  color: #272525;
}
.hoteldistances {
  background-color: #e7f4ff;
  padding-top: 2rem;
  padding-bottom: 2rem;   
}
.hoteldistances div.col {
  margin-top: 1rem;
  padding-top: 1rem;
}
.hotelinfostructure {
  background-color: #f9f8f8;
  padding-top: 2rem;
  padding-bottom: 2rem;  
}
.hotelinfostructure div.col {
  margin-top: 1rem;
  padding-top: 1rem;
}
.hotelmeals {
  background-color: #e7f4ff;
  padding-top: 2rem;
  padding-bottom: 2rem;   
}

.listinline {
  font-weight: 500;
  font-style: italic;
}
.listinline span:before {
  content: ", ";

}
.listinline span:first-child:before {
  display: none;
}
.restbutton {
  border: none;
  background-color: transparent;
  font-size: medium;
}
.propinline {
  margin-top:0.5rem;
  margin-bottom:0.5rem;
  font-weight: normal;
}
.propinline span{
  padding-left: 0.5rem;
  font-weight: bold;
}


.horizontal-scrollable {
  overflow-x: scroll;
  overflow-y: hidden;
  white-space: nowrap;
}

.news-image-slide {
  display: inline-block;
  width: 200px;
  max-width: 220px;
}

::-webkit-scrollbar {
  -webkit-appearance: none;
  width: 4px;
  height: 4px;
}

::-webkit-scrollbar-thumb {
  border-radius: 4px;
  background-color: rgba(0, 0, 0, .5);
  box-shadow: 0 0 1px rgba(255, 255, 255, .5);
}

/*
* querys
*/
/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) { 
  .destinations-container
  {
    position: relative;
    top: -6rem;
    margin-bottom: -7rem;
    z-index: 100;
  } 
  .hotelslideimage {
    height: 60rem;
    max-height: 60rem;
  }  
  .hotelAddress, .hotelSite, .hotelPhone, .hotelEmail {
    font-size: 1.4rem;
  }   
}
 
/* Extra large devices (large desktops, 1200px and up) */
/* @media (min-width: 1200px) {  
  .destinations-container
  {
    position: relative;
    top: -6rem;
    margin-bottom: -4rem;
  }    
} */
