
/* SAM-PRO Business v52 */
/* Neues Premium-Menü:
   - eigenständiger Hover-Effekt auch auf der Startseite
   - aktive Seite klar, aber Hover bleibt sichtbar
   - Unterstrich direkt am Menütext
   - kompakter, wertiger Header mit Logo links
*/

/* Header-Grundlayout */
.sampro-v7-header{
  background:#ffffff !important;
  border-bottom:1px solid #e7edf5 !important;
  box-shadow:0 8px 24px rgba(12,35,79,.035) !important;
  position:relative !important;
  z-index:60 !important;
}

.sampro-v7-topbar .container,
.sampro-v7-header .container{
  max-width:1500px !important;
  width:min(1500px, calc(100% - 92px)) !important;
}

.sampro-v7-navrow{
  min-height:94px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:46px !important;
  padding:0 !important;
}

/* Logo */
.sampro-v7-logo{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  width:260px !important;
  min-width:260px !important;
  flex:0 0 260px !important;
  height:94px !important;
  opacity:1 !important;
  visibility:visible !important;
}

.sampro-v7-logo img{
  display:block !important;
  width:auto !important;
  height:auto !important;
  max-width:260px !important;
  max-height:74px !important;
  object-fit:contain !important;
  object-position:left center !important;
  opacity:1 !important;
  visibility:visible !important;
}

/* Navigation */
.sampro-v7-nav{
  margin-left:auto !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
}

.sampro-v7-menu{
  list-style:none !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:8px !important;
  margin:0 !important;
  padding:0 !important;
}

.sampro-v7-menu > li{
  position:relative !important;
  margin:0 !important;
  padding:0 !important;
}

/* Link als dezente Premium-Pill */
.sampro-v7-menu > li > a{
  position:relative !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:44px !important;
  height:44px !important;
  padding:0 15px !important;
  color:#0b2149 !important;
  font-size:16px !important;
  font-weight:700 !important;
  line-height:1 !important;
  letter-spacing:.005em !important;
  text-decoration:none !important;
  background:transparent !important;
  border:1px solid transparent !important;
  border-radius:999px !important;
  box-shadow:none !important;
  transition:
    color .18s ease,
    background-color .18s ease,
    border-color .18s ease,
    box-shadow .18s ease,
    transform .18s ease !important;
}

/* Unterstrich direkt am Text/Pill, nicht weit darunter */
.sampro-v7-menu > li > a::after{
  content:"" !important;
  position:absolute !important;
  left:18px !important;
  right:18px !important;
  bottom:5px !important;
  height:2px !important;
  border-radius:999px !important;
  background:#c9a23a !important;
  transform:scaleX(0) !important;
  transform-origin:center !important;
  opacity:0 !important;
  transition:transform .18s ease, opacity .18s ease !important;
}

/* Hover funktioniert auch beim aktiven Startseitenpunkt */
.sampro-v7-menu > li > a:hover,
.sampro-v7-menu > li:hover > a,
body.home .sampro-v7-menu > li.current-menu-item > a:hover,
body.front-page .sampro-v7-menu > li.current-menu-item > a:hover{
  color:#0b4fa3 !important;
  background:linear-gradient(180deg,#ffffff 0%,#f3f7fc 100%) !important;
  border-color:#d9e6f5 !important;
  box-shadow:0 8px 20px rgba(12,35,79,.08) !important;
  transform:translateY(-1px) !important;
}

.sampro-v7-menu > li > a:hover::after,
.sampro-v7-menu > li:hover > a::after,
body.home .sampro-v7-menu > li.current-menu-item > a:hover::after,
body.front-page .sampro-v7-menu > li.current-menu-item > a:hover::after{
  transform:scaleX(1) !important;
  opacity:1 !important;
}

/* Aktiver Menüpunkt: klar, aber nicht so, dass Hover unsichtbar wird */
.sampro-v7-menu > li.current-menu-item > a,
.sampro-v7-menu > li.current_page_item > a,
.sampro-v7-menu > li.current-menu-ancestor > a{
  color:#0b4fa3 !important;
  background:#f7faff !important;
  border-color:#e5edf7 !important;
  box-shadow:none !important;
}

.sampro-v7-menu > li.current-menu-item > a::after,
.sampro-v7-menu > li.current_page_item > a::after,
.sampro-v7-menu > li.current-menu-ancestor > a::after{
  transform:scaleX(1) !important;
  opacity:1 !important;
  background:#c9a23a !important;
}

/* Dropdown */
.sampro-v7-menu .sub-menu{
  top:calc(100% + 10px) !important;
  margin-top:0 !important;
  border:1px solid #e5ebf3 !important;
  border-radius:12px !important;
  background:#fff !important;
  box-shadow:0 18px 42px rgba(8,32,70,.14) !important;
  overflow:hidden !important;
  padding:8px !important;
}

.sampro-v7-menu .sub-menu a{
  min-height:0 !important;
  height:auto !important;
  display:flex !important;
  justify-content:flex-start !important;
  font-size:14px !important;
  font-weight:650 !important;
  padding:11px 14px !important;
  border-radius:8px !important;
  color:#0b2149 !important;
  border:0 !important;
  box-shadow:none !important;
}

.sampro-v7-menu .sub-menu a::after{
  display:none !important;
}

.sampro-v7-menu .sub-menu a:hover{
  color:#0b4fa3 !important;
  background:#f3f7fc !important;
  transform:none !important;
  box-shadow:none !important;
}

/* Hero-Abstand sauber unter Header */
.v7-hero{
  margin-top:0 !important;
}

/* Tablet */
@media (max-width:1100px){
  .sampro-v7-topbar .container,
  .sampro-v7-header .container{
    width:min(100% - 40px, 1500px) !important;
  }

  .sampro-v7-navrow{
    min-height:auto !important;
    flex-wrap:wrap !important;
    gap:16px !important;
    padding:14px 0 !important;
  }

  .sampro-v7-logo{
    height:auto !important;
    width:220px !important;
    min-width:220px !important;
    flex-basis:220px !important;
  }

  .sampro-v7-logo img{
    max-width:220px !important;
    max-height:62px !important;
  }

  .sampro-v7-nav{
    width:100% !important;
    justify-content:center !important;
  }

  .sampro-v7-menu{
    justify-content:center !important;
    flex-wrap:wrap !important;
    gap:8px !important;
  }

  .sampro-v7-menu > li > a{
    font-size:15px !important;
    height:40px !important;
    min-height:40px !important;
    padding:0 13px !important;
  }
}

/* Mobil */
@media (max-width:700px){
  .sampro-v7-logo{
    width:205px !important;
    min-width:205px !important;
    flex-basis:205px !important;
  }

  .sampro-v7-logo img{
    max-width:205px !important;
  }

  .sampro-v7-menu{
    gap:6px !important;
  }

  .sampro-v7-menu > li > a{
    font-size:14px !important;
    height:38px !important;
    min-height:38px !important;
    padding:0 11px !important;
  }
}
