/*
Theme Name:   Nimmo Child
Theme URI:    https://case-themes.com/nimmo/
Description:  Child Theme für Nimmo. Hier landen alle eigenen Anpassungen, damit sie Theme-Updates überstehen.
Author:       Antonia Vogl
Author URI:   https://newcomer.de/
Template:     Nimmo
Version:      1.0.0
Text Domain:  Nimmo-child
*/

/* =========================================================
   Tierarztpraxis Hiendl
   ========================================================= */

html {
  scroll-padding-top: 140px;   /* = Höhe deines Sticky-Headers */
  scroll-behavior: smooth;      /* optional: sanftes Scrollen */
}

#kontakt, #ueber-uns { scroll-margin-top: 50px; }
#team { scroll-margin-top: 300px; }

/* Header */
/* Sticky-Header bleibt dauerhaft im sichtbaren Zustand */
#pxl-header-elementor .pxl-header-elementor-sticky { transition: none !important; }
#pxl-header-elementor .pxl-header-elementor-sticky { transform: translateY(0) !important; visibility: visible !important; transition: none !important; }
#pxl-header-elementor .pxl-header-elementor-sticky.pxl-hide-up { transform: translateY(-100%) !important; }
.admin-bar #pxl-header-elementor .pxl-header-elementor-sticky { top: 32px; }

@media screen and (max-width: 782px){
  .admin-bar #pxl-header-elementor .pxl-header-elementor-sticky{ top: 46px; }
}
@media screen and (max-width: 600px){
  .admin-bar #pxl-header-elementor .pxl-header-elementor-sticky{ top: 0; }
}

/* Mobiler Header */
#pxl-header-elementor { min-height:50px !important; }
#pxl-header-mobile { background-color:#ffffff !important;  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.25); }
#pxl-header-mobile .pxl-header-main,
#pxl-header-mobile .pxl-header-mobile-default { height:50px !important; min-height:50px !important; display:flex !important; align-items:center !important; }
#pxl-header-mobile .container,
#pxl-header-mobile .row { height:100%; align-items:center;}

/* Burger-Icon */
#pxl-header-elementor #pxl-nav-mobile .pxl-nav-mobile-button .pxl-icon-line,
#pxl-header-elementor #pxl-nav-mobile .pxl-nav-mobile-button::before,
#pxl-header-elementor #pxl-nav-mobile .pxl-nav-mobile-button::after { background-color:#A33032 !important;  }

/* Slider */
.sr7-btn.sr7-layer a { color: #ffffff; text-decoration: none; }
.sr7-btn.sr7-layer a i { margin-right: 10px;}
.sr7-btn.sr7-layer:hover a { color: #a33032; text-decoration: none; }
.cta-button-hero i { margin-right: 8px; }

@media screen and (max-width: 600px){
.cta-button-hero i { margin-right: 0; }
}

/* Menüs */
.pxl-nav-menu.menu_angled::before { display: none !important; }
.pxl-nav-menu.pxl-nav-horizontal.fr-style-default .pxl-menu-primary > li > a::before,
.pxl-nav-menu.pxl-nav-vertical.fr-style-default .pxl-menu-primary > li > a span::before { display: none; }
.main-header .pxl-menu-primary > li { margin-right: 20px !important;}
.main-header .pxl-menu-primary > li:last-child { margin-right: 0 !important;}
.main-header .pxl-menu-primary > li a { color: #222222 !important; }
.main-header .pxl-menu-primary > li a:hover { color: #a33032 !important; }

/* Compliance Buttons */
.cmplz-manage-consent,
.cmplz-buttons > button,
.cmplz-buttons > button:hover { background-image: none !important; text-transform: none !important; font-weight: 500 !important; font-family: 'Nunito Sans', sans-serif; transition: 0.2s; }
.cmplz-buttons > button:hover { background-color: #a33032 !important; border-color: #a33032 !important; color: #ffffff !important; }
#cmplz-manage-consent .cmplz-manage-consent { box-shadow: rgba(0, 0, 0, 0.5) 0px 10px 20px, rgba(0, 0, 0, 0.5) 0px 6px 6px !important; }

/* Buttons */
button, button.btn, input[type="submit"].btn-default,
button:not(.btn), .button:not(.btn), input[type="submit"]:not(.btn).btn-default { background-image: none !important; }

/* Nach oben Button */
.pxl-scroll-top { background-color: #ffffff; color: #A33032; background-image: none !important; box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.25); }
.pxl-scroll-top:hover, .pxl-scroll-top:focus { background-color: #A33032 !important; color: #ffffff !important; }

/* Team */
.pxl-team-grid1 .pxl-item--inner .pxl-item--image .pxl-item-link::before { background-color: transparent !important; } 
.pxl-team-grid1 .pxl-item--inner .pxl-item--image .pxl-item-link img { width: 300px !important;  }
.pxl-team-grid1 .pxl-item--inner .pxl-item--image { max-width: 300px !important;  }
.pxl-team-grid1 .pxl-item--inner .pxl-item--image .pxl-item-shape { display: none !important; }
.elementor-2 .elementor-element.elementor-element-bebf31f .pxl-team-grid .pxl-item--position { font-size: 18px !important; }

@media (max-width: 767px){
	.pxl-team-grid1 .pxl-item--inner { margin-bottom: 0 !important; }
	.pxl-team-grid1 .pxl-item--inner .pxl-item--image { max-width: 80% !important; margin-bottom: 25px !important; }
}

/* Kontaktformular */
div.wpforms-container-full:not(:empty) { margin: 0 !important; }

@media (max-width: 767px){
  .email-button,
	.email-button .elementor-button { width: 100% !important; display: flex !important; } 
  .email-button .elementor-button-text { font-size: 0 !important; }
  .email-button .elementor-button-text::after { content: "E-Mail senden"; font-size: 16px; }
}

/* Labels */
#wpforms-80 .wpforms-field-label, #wpforms-80 legend.wpforms-field-label, #wpforms-80 .wpforms-field-sublabel { color: #fff !important; margin-bottom: 5px; }
#wpforms-80 .wpforms-field-label { font-weight: 600; letter-spacing: .2px; }
#wpforms-80 .wpforms-field-sublabel { font-weight: 400; opacity: .8; }
#wpforms-80 .wpforms-required-label { color: #ffd5d5 !important; }

/* Felder */
#wpforms-80 input[type="text"], #wpforms-80 input[type="email"], #wpforms-80 textarea { border: 1px solid transparent !important; border-radius: 10px !important;
																box-shadow: 0 4px 14px rgba(0,0,0,.10) !important; transition: box-shadow .2s ease, border-color .2s ease; }
#wpforms-80 input:focus, #wpforms-80 textarea:focus { outline: none !important; border-color: #fff !important; box-shadow: 0 0 0 3px rgba(255,255,255,.4) !important; }
#wpforms-80 .wpforms-field input, #wpforms-80 .wpforms-field textarea { width: 100% !important; max-width: 100% !important; box-sizing: border-box !important; }
#wpforms-80 textarea { height: 90px !important; min-height: 90px !important; resize: vertical; }
#wpforms-80 ::placeholder { color: #555 !important; opacity: 1 !important; }

/* Layout: E-Mail + Telefon nebeneinander, Name & Kommentar volle Breite */
#wpforms-80 .wpforms-field-container { display: flex; flex-wrap: wrap; gap: 0 20px; }
#wpforms-80 .wpforms-field { margin-bottom: 0 !important; padding: 10px 0; }
#wpforms-80-field_1-container, #wpforms-80-field_3-container { flex: 0 0 100%; }
#wpforms-80-field_2-container, #wpforms-80-field_4-container { flex: 0 0 calc(50% - 10px); }
@media (max-width: 600px) { #wpforms-80-field_2-container, #wpforms-80-field_4-container { flex: 0 0 100%; } }

/* Cloudflare mittig */
#wpforms-80 .wpforms-recaptcha-container { text-align: center; }
#wpforms-80 .wpforms-turnstile { display: inline-block; }

/* Button: volle Breite + Hover-Invertierung */
#wpforms-80 .wpforms-submit-container button.wpforms-submit { background:#A33032 !important; color:#ffffff !important; border: 1px solid #ffffff !important; 
																border-radius:28px !important; text-transform:uppercase !important; letter-spacing:.5px; width: 100% !important; }
#wpforms-80 button.wpforms-submit:hover { background:#ffffff !important; color:#A33032 !important; }
#wpforms-80 button.wpforms-submit::before {
  content:"\f1d8";                       /* fa-paper-plane */
  font-family:"Font Awesome 6 Pro","Font Awesome 5 Pro","Font Awesome 6 Free","Font Awesome 5 Free";
  font-weight:600;
  font-style:normal;
  margin-right:10px;
  vertical-align:-1px;
}


/* Termin-Button */
#tb-fab {
  position:fixed; right:40px; bottom:105px; z-index:9999;
  display:inline-flex; align-items:center; justify-content:flex-end;
  height:48px; border-radius:24px;
  background:#571A1B; color:#ffffff; text-decoration:none;
  box-shadow:0 6px 15px rgba(0,0,0,.25);
  overflow:hidden; white-space:nowrap;
  transition:opacity .35s ease, transform .35s ease, background-color .2s ease;
}
#tb-fab:hover { background:#87282a; }
#tb-fab .tb-icon { flex:0 0 48px; width:48px; height:48px; display:flex; align-items:center; justify-content:center; font-size:22px; }
#tb-fab .tb-text { max-width:0; opacity:0; overflow:hidden; padding-left:0; font-size:16px; font-weight:600; line-height:1; transition:max-width .3s ease, opacity .3s ease, padding-left .3s ease;}
#tb-fab:hover .tb-text,
#tb-fab:focus-visible .tb-text{ max-width:220px; opacity:1; padding-left:20px; }

/* ausgeblendet, wenn ganz oben oder ganz unten */
#tb-fab.tb-hide { opacity:0; transform:translateY(12px); pointer-events:none; }

@media (max-width:600px) { #tb-fab{ right:23px; bottom:85px; } }


/* Lightbox */
.goverlay {background: rgba(0, 0, 0, 0.45) !important; }
.glightbox-clean .gslide-image img { box-shadow:0 8px 20px rgba(0,0,0,.20) !important; background-color: #ffffff; }
.glightbox-clean .gclose.gbtn { opacity:1 !important; padding-right: 10px !important; padding-left: 15px !important; text-align: center !important; width: 50px !important;}


/* === Mobiles Off-Canvas-Menü === */

/* Panel */
#pxl-header-elementor #pxl-header-mobile .pxl-header-menu{
  background-color:#ffffff !important;
  width:300px !important;
  padding:70px 0 40px !important;
}

/* Innere Container neutralisieren (der Kasten hinter der Liste) */
#pxl-header-elementor .pxl-header-menu-scroll,
#pxl-header-elementor .pxl-header-nav,
#pxl-header-elementor .pxl-header-nav .pxl-menu-primary{
  background:transparent !important;
  box-shadow:none !important;
  border:0 !important;
}

/* Liste zurücksetzen */
#pxl-header-elementor .pxl-header-nav .pxl-menu-primary { list-style:none !important; margin:0 !important; padding:0 !important; }
#pxl-header-elementor .pxl-header-nav .pxl-menu-primary > li { margin:0 !important; padding:0 !important; width:100%; }

/* Menüpunkte */
#pxl-header-elementor .pxl-header-nav .pxl-menu-primary > li > a {display:block !important; padding:10px !important; border-bottom: none; }
#pxl-header-elementor .pxl-header-nav .pxl-menu-primary > li > a span {	font-family: 'Baloo 2', 'Nunito Sans', sans-serif; font-weight: 400 !important; font-size: 20px; color: #222222 !important;  }
#pxl-header-elementor .pxl-header-nav .pxl-menu-primary > li > a:hover span,
#pxl-header-elementor .pxl-header-nav .pxl-menu-primary > li > a:focus span,
#pxl-header-elementor .pxl-header-nav .pxl-menu-primary > li > a:active span { color: #A33032 !important;}

/* Graue Hinterlegung der Menüpunkte entfernen */
#pxl-header-elementor #pxl-header-mobile.style-light .pxl-menu-primary > li.current-menu-item > a { background-color:transparent !important; }

/* Schließen-Button */
#pxl-header-elementor .pxl-menu-close.pxl-close { background: none !important; top:14px !important; right:14px !important;}
#pxl-header-elementor .pxl-menu-close.pxl-close:before,
#pxl-header-elementor .pxl-menu-close.pxl-close:after { background-color:#A33032 !important; }

/* Abdunkelung dahinter */
.pxl-header-menu-backdrop{ background-color:rgba(0,0,0,.5) !important;}

.pxl-mobile-cta { margin-top: 10px;}
.pxl-mobile-cta-btn { display:flex; align-items:center; justify-content:center; gap:10px; background:#A33032; color:#ffffff !important; border-radius:28px; border: none;
						padding:10px 12px; font-size:18px; font-weight:500; text-transform:uppercase; letter-spacing:.3px; text-decoration:none !important; transition:background-color .2s ease;
					font-family: 'Baloo 2', 'Nunito Sans', sans-serif; }
.pxl-mobile-cta-btn:hover { background: #571A1B; }
.pxl-mobile-cta-btn i { font-size:17px; }


/* Kontatkbereich */
@media (max-width:1440px) and (min-width:1025px) {
	.contact-section .hiendl-image-container .contact-drive { padding-left: 30%; align-items: stretch !important; justify-content: start; } 
	.contact-section .hiendl-image-container .contact-data { width: 60%; } 
	.contact-section .email-button .elementor-button-text  {text-align: left; }
}
@media (max-width:600px) {
	.contact-section .hiendl-image-container { background-image: none !important; } 
	.contact-section .hiendl-image-container .contact-drive  { background-image: url(https://www.tierarztpraxis-dr-hiendl.de/wp-content/uploads/AdobeStock_524587897.jpg);
    																background-position: top left; background-repeat: no-repeat;  background-size: cover;}
}