/* Final production polish: preserve the original inevion/GoodLayers design, remove search, smooth details. */
:root{--inevion-blue:#229ed9;--inevion-navy:#17263e;--inevion-text:#9b9b9b;--inevion-line:#e2e2e2;}

/* Slightly more refined rendering without changing the original layout. */
.infinite-body{ text-rendering:optimizeLegibility; -webkit-font-smoothing:antialiased; }
.gdlr-core-pbf-background{ will-change:transform; }
.gdlr-core-title-item-title,
.infinite-navigation .sf-menu > li > a{ letter-spacing:.01em; }

/* Keep image-heavy sections professional: calm contrast and smooth hover. */
.gdlr-core-personnel-list-image,
.gdlr-core-image-item-wrap,
.gdlr-core-media-image{ overflow:hidden; }
.gdlr-core-personnel-list-image img,
.gdlr-core-image-item-wrap img,
.gdlr-core-media-image img{ transition:transform .65s cubic-bezier(.22,1,.36,1), filter .65s cubic-bezier(.22,1,.36,1); filter:saturate(.98) contrast(1.02); }
.gdlr-core-personnel-list-image:hover img,
.gdlr-core-image-item-wrap:hover img,
.gdlr-core-media-image:hover img{ transform:scale(1.035); filter:saturate(1.02) contrast(1.04); }

/* Form polish, still Contact Form 7 / GoodLayers-like. */
.inevion-mail-form .inevion-hp{ position:absolute!important; left:-99999px!important; width:1px!important; height:1px!important; opacity:0!important; pointer-events:none!important; }
.inevion-mail-form input[type="text"],
.inevion-mail-form input[type="email"],
.inevion-mail-form input[type="file"],
.inevion-mail-form textarea{
  transition:border-color .22s ease, box-shadow .22s ease, background .22s ease;
}
.inevion-mail-form input[type="text"]:focus,
.inevion-mail-form input[type="email"]:focus,
.inevion-mail-form input[type="file"]:focus,
.inevion-mail-form textarea:focus{
  border-color:var(--inevion-blue)!important;
  box-shadow:0 0 0 3px rgba(34,158,217,.11);
  outline:none;
}
.inevion-mail-form input[type="file"]{ padding-top:14px!important; padding-bottom:14px!important; cursor:pointer; }
.inevion-upload-note,
.inevion-mail-form p{ font-size:14px; color:#8d8d8d; }
.inevion-form-status{ display:none; margin:0 20px 22px; padding:14px 18px; font-size:15px; line-height:1.55; border-left:4px solid var(--inevion-blue); background:#f4fbff; color:#4f6876; }
.inevion-form-status.is-visible{ display:block; }
.inevion-form-status.is-error{ border-left-color:#c84b4b; background:#fff6f6; color:#7e3636; }
.inevion-mail-form.is-sending{ opacity:.72; pointer-events:none; }

/* Application section: intentionally GoodLayers-like, not a new visual language. */
.inevion-application-wrapper{ border-top:1px solid #ececec; border-bottom:1px solid #ececec; }
.inevion-application-form-wrap{ max-width:880px; margin:0 auto; background:#fff; padding:38px 34px 28px; box-shadow:0 14px 40px rgba(0,0,0,.07); border:1px solid #eeeeee; }
.inevion-application-form-wrap .gdlr-core-input-wrap{ margin-left:-10px; margin-right:-10px; }

/* Real map instead of broken plugin placeholder. */
.inevion-map{ width:100%; height:425px; background:#f0f0f0; overflow:hidden; box-shadow:0 12px 34px rgba(0,0,0,.08); }
.inevion-map iframe{ display:block; width:100%; height:425px; filter:saturate(.92) contrast(1.02); }

/* Smooth reveal for static fallback/custom sections. Original GoodLayers animations remain intact. */
.inevion-reveal{ opacity:0; transform:translateY(18px); transition:opacity .65s cubic-bezier(.22,1,.36,1), transform .65s cubic-bezier(.22,1,.36,1); }
.inevion-reveal.is-visible{ opacity:1; transform:translateY(0); }

@media (max-width:767px){
  .inevion-application-form-wrap{ padding:28px 20px 20px; }
  .inevion-map,.inevion-map iframe{ height:360px; }
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{ animation:none!important; transition:none!important; }
  .inevion-reveal{ opacity:1; transform:none; }
}
.inevion-map{ position:relative; }
.inevion-map-link{ position:absolute; right:14px; bottom:14px; z-index:2; background:#fff; color:#17263e!important; font-size:13px; font-weight:700; padding:8px 12px; box-shadow:0 8px 22px rgba(0,0,0,.16); }
.inevion-map-link:hover{ color:#229ed9!important; }

/* Final exact header/navigation alignment: match original Infinite theme values. */
.infinite-header-container.infinite-header-full{ padding-left:30px!important; padding-right:30px!important; }
.infinite-logo{ padding-top:30px!important; padding-bottom:32px!important; }
.infinite-logo-inner{ max-width:200px!important; }
.infinite-navigation{ padding-top:36px!important; }
.infinite-navigation .sf-menu > li{ padding-left:20px!important; padding-right:20px!important; }
.infinite-navigation .sf-menu > li:first-child{ padding-left:0!important; }
.infinite-navigation .sf-menu > li:last-child{ padding-right:0!important; }
.infinite-navigation .sf-menu > li > a{
  font-family:"Raleway",sans-serif!important;
  font-size:13px!important;
  font-weight:500!important;
  text-transform:uppercase!important;
  letter-spacing:.5px!important;
  line-height:1.7!important;
  padding-bottom:34px!important;
}
.infinite-navigation-submenu-indicator .sf-menu > li > a.sf-with-ul-pre:after{ margin-left:13px!important; }
.infinite-navigation .sf-menu > .infinite-normal-menu .sub-menu{ font-size:14px!important; }
.infinite-navigation .sf-menu > .infinite-normal-menu li{ padding:1px 11px!important; }
.infinite-navigation .sf-menu > .infinite-normal-menu li:first-child{ padding-top:12px!important; }
.infinite-navigation .sf-menu > .infinite-normal-menu li:last-child{ padding-bottom:12px!important; }
.infinite-navigation .sf-menu > .infinite-normal-menu li > a{ padding:6px 12px!important; }


/* Restored original search */
.infinite-main-menu-right-wrap{ display:block; }
.infinite-main-menu-search{ display:block; }
.infinite-top-search-wrap .search-form{ display:block; }

/* Kompakter Sticky-Header beim Scrollen (1:1 wie Original) */
.infinite-fixed-navigation .infinite-logo{ padding-top:20px!important; padding-bottom:20px!important; }
.infinite-fixed-navigation .infinite-navigation{ padding-top:30px!important; }
.infinite-fixed-navigation .infinite-navigation .sf-menu > li > a{ padding-bottom:25px!important; line-height:20px!important; }
.infinite-fixed-navigation .infinite-logo-inner img{ height:35px!important; width:auto!important; }


/* Sicherheitsabfrage als Popup (Design im Stil der Seite) */
.inevion-captcha-modal{ position: fixed; inset: 0; background: rgba(18,32,44,.52); z-index: 99999; display: flex; align-items: center; justify-content: center; padding: 20px; }
.inevion-captcha-box{ background: #fff; max-width: 430px; width: 100%; padding: 34px 34px 26px; box-shadow: 0 20px 60px rgba(0,0,0,.28); border-top: 3px solid #229ed9; }
.inevion-captcha-title{ font-family: "Raleway",sans-serif; font-size: 20px; font-weight: 600; color: #16324a; letter-spacing: .5px; margin-bottom: 12px; }
.inevion-captcha-text{ font-family: "Open Sans",sans-serif; font-size: 14px; color: #555; line-height: 1.6; margin-bottom: 16px; }
.inevion-captcha-input{ width: 96px; border: 1px solid #d7d7d7; padding: 10px 12px; font-size: 16px; text-align: center; background: #fff; }
.inevion-captcha-err{ color: #b03434; font-size: 13px; min-height: 20px; margin: 8px 0 2px; font-family: "Open Sans",sans-serif; }
.inevion-captcha-actions{ display: flex; justify-content: flex-end; gap: 10px; margin-top: 10px; }
.inevion-captcha-actions button{ font-family: "Raleway",sans-serif; font-size: 13px; text-transform: uppercase; letter-spacing: .5px; padding: 11px 20px; cursor: pointer; }
.inevion-captcha-cancel{ background: none; border: 1px solid #cfd8de; color: #5a6b77; }
.inevion-captcha-ok{ background: #229ed9; border: none; color: #fff; }
.inevion-captcha-ok:hover{ background: #1b86ba; }
