/*!
Theme Name: Bistronomie
Theme URI: https://www.digitalengineers.be
Author: Digital Engineers
Author URI: https://www.digitalengineers.be
Description: 
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: bistronomie
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready
*/

/* REMOVE ELEMENTOR SMOOTH SCROLL */
@media (prefers-reduced-motion: no-preference) {
  html {
    scroll-behavior: inherit !important;
  }
}

/* Hide navigation on home */
.home #site-navigation,
.home header.entry-header {
  display: none;
}

/* Base Styles */
body {
  background-color: #fff;
  margin: 0;
  position: relative;
  overflow-x: hidden;
}

a {
  color: #000;
  transition: all 400ms;
}
a:hover {
  color: var(--e-global-color-accent);
}

/* Remove tap highlight & focus outlines */
* {
  -webkit-tap-highlight-color: transparent;
}
*:focus:not(.focus-visible) {
  outline: none;
}
.focus-visible {
  outline-color: lightgreen;
}

/* Jet AJAX Search */
.jet-ajax-search__field {
  outline: none;
}

/* Buttons */
button,
body .elementor-widget-container .elementor-button {
  background: var(--e-global-color-primary);
  padding: 10px 30px;
  border-radius: 0;
  color: #fff;
  font: inherit;
  cursor: pointer;
}
button:hover,
body .elementor-widget-button .elementor-button:hover {
  background: var(--e-global-color-primary);
}

/* Header */
#header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 99;
  transition: transform 0.2s ease-out, background 0.2s ease-out;
}
body:not(.home) #header {
  background: #fff;
}
.header-hide {
  transform: translateY(-100%);
}
.logo img {
  transition: all 0.3s ease-out;
}

/* Header Logo Sizes */
@media only screen and (max-width: 779px) {
  .header-show .elementor-element.logo .elementor-widget-container img,
  .header-hide .elementor-element.logo .elementor-widget-container img {
    width: 165px;
  }
}
@media only screen and (min-width: 780px) {
  .header-show .elementor-element.logo .elementor-widget-container img,
  .header-hide .elementor-element.logo .elementor-widget-container img {
    width: 195px;
  }
}

/* Hamburger Menu */
.hamburger {
  float: left;
  margin-top: 10px;
  cursor: pointer;
  padding: 10px 0 5px;
}
.hamburger span {
  display: block;
  width: 38px;
  height: 3px;
  margin-bottom: 6px;
  background: var(--e-global-color-primary);
  transition: all 300ms ease;
}
.hamburger span:nth-child(2) {
  width: 28px;
}
.hamburger:hover span:nth-child(2) {
  width: 100%;
}

/* Dropdown Menu (Header Navigation) */
#header nav.elementor-nav-menu--dropdown {
  width: 75%;
  right: -650px;
  max-width: 650px;
  position: fixed;
  top: 0;
  height: 100%;
  z-index: 999;
  text-align: right;
  transition: right 0.5s ease;
}
@media screen and (max-width: 890px) {
  #header nav.elementor-nav-menu--dropdown {
    width: 100%;
  }
}

/* Overlay */
#overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.3);
}

/* Close Buttons for Menu & Filters */
.close-menu,
.close-filters {
  padding: 10px;
  display: inline-block;
  cursor: pointer;
  transition: transform 0.3s;
}
.close-filters {
  float: right;
  position: relative;
  z-index: 1;
}
.close-menu:hover,
.close-filters:hover,
.close-search a:hover {
  transform: rotate(90deg);
}

/* Filters Section */
section#filters {
  position: fixed;
  top: 0;
  left: -400px;
  width: 400px;
  height: 100%;
  z-index: 101;
  transition: left 0.3s ease;
  box-shadow: -7px -8px 25px 0 #878787;
}
div#filters-block {
  position: absolute;
  width: 300px;
}

/* Mobile Widget */
.mobile-widget {
  text-align: center;
  margin-top: 100px;
  font-size: initial;
}
.mobile-widget .phonemail span {
  display: block;
  padding: 3px;
}
.mobile-widget .widget.social {
  margin: 10px;
}
.mobile-widget i {
  font-size: 1.75rem;
}
.mobile-widget a:hover {
  background-color: inherit !important;
}

/* Main Content & Footer */
main#primary {
  min-height: 500px;
}
footer#colophon {
  display: none;
}

/* Contact Widget */
.contact-widget-text div {
  padding: 3px 0;
}

/* Back to Top Button */
.back-to-top {
  position: fixed;
  bottom: 76px;
  right: 20px;
  display: none;
  background: var(--e-global-color-primary);
  padding: 12px 12px 6px;
  cursor: pointer;
  z-index: 4;
  border-radius: 8px;
}
.back-to-top svg {
  fill: #fff;
  width: 16px;
  height: 16px;
}

/* Lightbox & Dialog */
.elementor-lightbox .dialog-lightbox-close-button,
.elementor-lightbox .elementor-swiper-button {
  text-decoration: none;
}

/* Cookie / Consent Banner */
.cmplz-show-banner a {
  cursor: pointer;
}
.cmplz-btn {
  background: var(--e-global-color-primary);
  color: #fff;
  padding: 12px 25px;
  border: 0;
  font-family: inherit;
  cursor: pointer;
  transition: all 200ms ease;
}
.cmplz-btn:hover {
  background: var(--e-global-color-secondary);
}

/* Form Elements */
.elementor-field-type-acceptance label {
  font-size: 85%;
  font-weight: 400;
  color: #666 !important;
}
select:focus,
input[type="text"]:focus,
input[type="number"]:focus,
textarea:focus,
button:focus {
  outline: none;
  -webkit-tap-highlight-color: transparent;
}
input,
select,
textarea {
  font-family: inherit;
}

/* Read More Button */
.elementor-post__read-more {
  border: 1px solid var(--e-global-color-primary);
  padding: 10px 25px;
  width: 100%;
  display: inline-block;
  text-align: center;
}
.dialog-close-button {
  text-decoration: none;
}

/* Arrow Decoration */
#with-arrow .elementor-button-text::after {
  content: '';
  display: inline-block;
  width: 100%;
  max-width: 53px;
  height: 27px;
  margin-left: 20px;
  margin-top: -5px;
  position: absolute;
  background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 356 144' fill='%23fff'><line x1='.5' y1='72.26' x2='349.49' y2='72.26' stroke='%23fff' stroke-miterlimit='10' stroke-width='6px'/><polygon points='329.61 96.8 325.52 92.4 347.19 72.27 325.52 52.12 329.61 47.73 356 72.27 329.61 96.8' fill='%23fff'/></svg>") no-repeat center center;
}

/* Bistro Navigation */
#bistro-nav .elementor-post-navigation {
    align-items: center;
    position: relative;
    top: -8px;
	height: 80px;
}
#bistro-nav .elementor-post-navigation__prev,
#bistro-nav .elementor-post-navigation__next {
  display: flex;
  flex-direction: column;
}
#bistro-nav .post-navigation__prev--label,
#bistro-nav .post-navigation__next--label {
}
#bistro-nav .elementor-post-navigation .elementor-post-navigation__separator-wrapper {
  height: 50px;
}
.elementor-post-navigation-borders-yes .elementor-post-navigation__separator {
    top: 30px;
    position: absolute;
}
#bistro-nav span.elementor-post-navigation__link__prev,
#bistro-nav span.elementor-post-navigation__link__next {
  position: absolute;
}
#bistro-nav span.elementor-post-navigation__link__prev, #bistro-nav span.elementor-post-navigation__link__next {
  margin-top: 45px;
}
#bistro-nav .elementor-post-navigation .post-navigation__arrow-wrapper {

}
#bistro-nav .post-navigation__arrow-prev::before,
#bistro-nav .post-navigation__arrow-next::before {
  content: '';
  display: block;
  width: 53px;
  height: 27px;
  margin-bottom: 5px;
  fill: #000;
}
#bistro-nav .post-navigation__arrow-prev::before,
.jet-listing-grid__slider-icon.prev-arrow::before,
.jet-listing-grid__slider-icon.next-arrow::before {
  content: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='53' height='27' viewBox='0 0 356 144' fill='%23000'><line x1='349.49' y1='72.26' x2='.5' y2='72.26' stroke='%23000' stroke-miterlimit='10' stroke-width='6px'/><polygon points='26.39 96.8 30.48 92.4 8.81 72.27 30.48 52.12 26.39 47.73 .01 72.27 26.39 96.8' fill='%23000'/></svg>");
}
#bistro-nav .post-navigation__arrow-next::before {
  content: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='53' height='27' viewBox='0 0 356 144' fill='%23000'><line x1='.5' y1='72.26' x2='2000' y2='72.26' stroke='%23000' stroke-miterlimit='10' stroke-width='6px'/><polygon points='329.61 96.8 325.52 92.4 347.19 72.27 325.52 52.12 329.61 47.73 356 72.27 329.61 96.8' fill='%23000'/></svg>");
}
.jet-listing-grid__slider-icon.prev-arrow.slick-arrow {
  margin-left: -70px;
}
.jet-listing-grid__slider-icon.next-arrow.slick-arrow {
  margin-right: -70px;
}
@media screen and (max-width: 1024px) {
  .jet-listing-grid__slider-icon.slick-arrow {
    display: none !important;
    margin: 0;
  }
}

/* Gallery & CTA Thumbnails */
.e-gallery-image,
.elementor-cta__bg-wrapper,
.elementor-post__thumbnail__link {
  position: relative;
  overflow: hidden;
}
.e-gallery-image::before,
.e-gallery-image::after,
.elementor-cta__bg-wrapper::before,
.elementor-cta__bg-wrapper::after,
.elementor-post__thumbnail__link::before,
.elementor-post__thumbnail__link::after {
  content: '';
  position: absolute;
  z-index: 2;
  top: 50%;
  left: 50%;
  width: 40px;
  height: 2px;
  background-color: #fff;
  opacity: 0;
  transition: transform 0.2s ease, opacity 0.2s ease;
}
.e-gallery-image::before,
.elementor-cta__bg-wrapper::before,
.elementor-post__thumbnail__link::before {
  transform: translate(-50%, -50%);
}
.e-gallery-image::after,
.elementor-cta__bg-wrapper::after,
.elementor-post__thumbnail__link::after {
  transform: translate(-50%, -50%) rotate(90deg);
}
.e-gallery-item:hover .e-gallery-image::before,
.e-gallery-item:hover .e-gallery-image::after,
.elementor-cta__bg-wrapper:hover::before,
.elementor-cta__bg-wrapper:hover::after,
.elementor-post__thumbnail__link:hover::before,
.elementor-post__thumbnail__link:hover::after {
  opacity: 1;
}
.nocross .elementor-post__thumbnail__link::before,
.nocross .elementor-post__thumbnail__link::after {
  display: none;
}

/* Google Maps */
.gm-style iframe + div {
  border: none !important;
}

/* Ajax Search */
.jet-ajax-search__results-holder .jet-ajax-search__results {
  margin: 0;
  padding: 0;
}
.jet-ajax-search__field-wrapper {
  border-radius: 0;
}

/* Search Button */
.widget_search .search-submit,
.jet-search .jet-search__submit {
  background: var(--e-global-color-primary);
  padding: 15px;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  color: #fff;
  font-size: 18px;
  cursor: pointer;
  margin-left: 5px;
  transition: background 0.3s ease;
}
.widget_search .search-submit:hover,
.jet-search .jet-search__submit:hover {
  background: var(--e-global-color-secondary);
}

/* Mainmenu & WPML */
#mainmenu ul {
  text-align: center;
}
#mainmenu li.wpml-ls-menu-item {
  width: 45px;
  display: inline-block;
  border-top: 1px dotted #000;
  margin: 30px -2px 0;
  padding-top: 7px;
}
#mainmenu li.wpml-ls-item a {
  font-size: 1.2rem;
  font-weight: 600;
}

/* Location Distance Adjustments */
.jsf-location-distance__location-input {
  padding-right: 50px !important;
}
.jsf-location-distance__location-clear,
.jsf-location-distance__location-locate,
.jsf-location-distance__location-loading {
  margin: -12px 0 0 !important;
  width: 40px !important;
  height: 40px !important;
  top: 14px !important;
}

/* jQuery UI Autocomplete */
.ui-autocomplete {
  background-color: #fff;
  border: 1px solid #ccc;
  border-radius: 4px;
  max-height: 250px;
  overflow-y: auto;
  font-size: 14px;
  z-index: 1000;
  padding: 0;
  margin-top: 2px;
  width: fit-content;
}
.ui-menu-item {
  padding: 8px 12px;
  cursor: pointer;
}
.ui-menu-item:hover,
.ui-state-active {
  background-color: var(--e-global-color-primary);
  color: #fff;
}

.extra-info-field p {
    margin: 0;
}

.grecaptcha-badge { 
    visibility: hidden;
}
