/* 
Theme Name: Gästehaus Antonia

Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 1.0.1
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/*
    Add your custom styles here
*/

/*================= ALLGEMEIN ====================*/
html {
  scroll-behavior: smooth;
}


body:not(.elementor-editor-active) .elementor.elementor-location-header {
    position: absolute;
    z-index: 9999;
    width: 100%;
}

/* SCROLL MARGIN */
:target {
  scroll-margin-top: 70px !important;
}

@media (max-width: 1024px) {
  :target {
    scroll-margin-top: 55px !important;
  }
}

@media (max-width: 767px) {
  :target {
    scroll-margin-top: 50px !important;
  }
}

/*================= SEITENÜBERGANG ====================*/

.e-page-transition {
  backdrop-filter: blur(5px);
  transition: backdrop-filter 0.3s ease;
}

.e-page-transition--entering {
  backdrop-filter: blur(5px);
}

.e-page-transition--exiting {
  backdrop-filter: blur(5px);
}



/*================= MENÜ KREISELEMENT ====================*/

.menu-circle .elementor-nav-menu--main > .elementor-nav-menu > li > a {
  position: relative;
  display: inline-block;
  padding-right: 44px;
  z-index: 0;
  transition: color .25s ease;
}

.menu-circle .elementor-nav-menu--main > .elementor-nav-menu > li > a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 10px;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  transform: translateY(-50%) scale(0.60);
  background: transparent;
  z-index: -1;
  transition: transform .3s ease, background-color .3s ease, opacity .3s ease;
}

/* Hover-Zustand */
.menu-circle .elementor-nav-menu--main > .elementor-nav-menu > li:hover > a::after {
  background-color: #D2E1D663;
  transform: translateY(-50%) scale(1);
}

/* Aktiver Menüpunkt */
.menu-circle .elementor-nav-menu--main > .elementor-nav-menu > li.current-menu-item > a {
  font-weight: 700 !important;
}
.menu-circle .elementor-nav-menu--main > .elementor-nav-menu > li.current-menu-item > a::after {
  background-color: #d2e1d645;
  transform: translateY(-50%) scale(1);
}

.menu-circle .elementor-nav-menu--main > .elementor-nav-menu {
  overflow: visible;
}




/*================ BUTTON ==================*/


.kreis-button {
  position: relative;
  background: transparent;
  border: none;
  overflow: visible;
  z-index: 0;
  cursor: pointer;
}

.kreis-button::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(10%, -50%) scale(1);
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background-color: #CAAA8E40;
  transition: transform 0.3s ease, background-color 0.3s ease;
  z-index: -1;
}

.kreis-button:hover::before {
  background-color: #CAAA8E26;
  transform: translate(10%, -50%) scale(0.85);
}

.kreis-button:hover {
  text-decoration: none;
}




/*================ Galerie Startseite – jedes 2. Bild versetzt ==================*/

.galerie-versetzt .elementor-gallery-item:nth-child(even) {
  padding-top: 50px;
}

@media (max-width: 767px) {
  .galerie-versetzt .elementor-gallery-item:nth-child(even) {
    padding-top: 0px;
  }
}


/*================ AUSSTATTUNG ICONLIST ==================*/


.kreis-ausstattung {
  position: relative;
  background: transparent;
  border: none;
  overflow: visible;
  z-index: 0;
}

.kreis-ausstattung::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(10%, -50%) scale(1);
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background-color: #D2E1D663;
  transition: transform 0.3s ease, background-color 0.3s ease;
  z-index: -1;
}


/*================ FORMULARE ==================*/
.gfield_description.gfield_consent_description {
    border: none !important;
    padding: 0px !important;
    overflow: hidden !important;
    line-height: 18px !important;
    margin-bottom: 11px;
    font-size: 14px !important;
}
