/*
Theme Name: Gründerhelden Responsive Orange Breiter Header
Theme URI: https://gruenderhelden.de/
Author: Gründerhelden
Description: Responsives WordPress-Theme für Gründerhelden mit zuverlässigem Desktop- und Mobilmenü, globalem Header, Kontaktleiste und Footer.
Version: 4.4.0
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: gruenderhelden-responsive
*/

:root{
  --gh-primary:#00737c;
  --gh-primary-dark:#04545b;
  --gh-accent:#1abc9c;
  --gh-ink:#10283d;
  --gh-muted:#607487;
  --gh-line:#d8eef1;
  --gh-soft:#f2fbfc;
  --gh-footer:#071f22;
  --gh-orange:#f08a26;
  --gh-orange-light:#f6ad2f;
  --gh-shadow:0 16px 42px rgba(16,83,94,.11);
  --gh-container:1240px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:#fff;
  color:var(--gh-ink);
  font-family:"Instrument Sans",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  line-height:1.62;
  overflow-x:hidden;
}
body.gh-menu-open{overflow:hidden}
a{color:var(--gh-primary);text-decoration:none}
a:hover{color:var(--gh-primary-dark)}
img{max-width:100%;height:auto}
button,input,textarea,select{font:inherit}

.gh-container{
  width:min(calc(100% - 48px),var(--gh-container));
  margin-inline:auto;
}

/* Obere Kontaktleiste */
.gh-topbar{
  background:#f08a26!important;
  background-image:linear-gradient(90deg,#f6ad2f 0%,#f08a26 100%)!important;
  color:#fff;
  font-size:.82rem;
}
.gh-topbar__inner{
  min-height:36px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}
.gh-topbar__contacts,.gh-topbar__right{display:flex;align-items:center;gap:18px}
.gh-topbar__contacts a{display:inline-flex;align-items:center;gap:6px}
.gh-topbar__icon{font-size:1rem;line-height:1;filter:saturate(1.15)}
.gh-topbar a{color:#fff;font-weight:400}
.gh-topbar__right{font-weight:400}
.gh-topbar a:hover{text-decoration:underline;color:#fff}

/* Header */
.gh-site-header{
  position:relative;
  z-index:1000;
  background:#fff;
  border-bottom:1px solid rgba(0,115,124,.10);
  box-shadow:0 8px 26px rgba(19,85,96,.055);
}
.gh-site-header>.gh-container{
  width:min(calc(100% - 40px),1460px);
}
.gh-header__inner{
  min-height:82px;
  display:grid;
  grid-template-columns:auto 1fr auto auto;
  align-items:center;
  gap:28px;
}
.gh-brand{display:flex;align-items:center;min-width:0}
.gh-brand img{display:block;width:auto;max-width:210px;max-height:44px;object-fit:contain}
.gh-brand__text{font-size:1.28rem;font-weight:850;color:var(--gh-ink)}

.gh-desktop-nav{justify-self:center}
.gh-menu,.gh-menu ul{list-style:none;margin:0;padding:0}
.gh-menu{display:flex;align-items:center;gap:5px}
.gh-menu>li{position:relative}
.gh-menu>li>a,.gh-menu>li>button{
  min-height:44px;
  display:flex;
  align-items:center;
  gap:7px;
  padding:0 12px;
  border:0;
  background:transparent;
  color:var(--gh-ink);
  font-size:.93rem;
  font-weight:730;
  cursor:pointer;
  border-radius:10px;
  white-space:nowrap;
}
.gh-menu>li>a:hover,.gh-menu>li>button:hover,.gh-menu>li.current-menu-item>a,.gh-menu>li.current-menu-ancestor>a{
  color:var(--gh-primary);
  background:var(--gh-soft);
}
.gh-menu .menu-item-has-children>a:after{
  content:"";
  width:7px;height:7px;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
  transform:rotate(45deg) translateY(-2px);
  margin-left:2px;
}
.gh-menu .sub-menu{
  position:absolute;
  left:0;
  top:calc(100% + 8px);
  z-index:30;
  width:260px;
  padding:10px;
  border:1px solid var(--gh-line);
  border-radius:16px;
  background:#fff;
  box-shadow:0 18px 48px rgba(16,83,94,.16);
  opacity:0;
  visibility:hidden;
  transform:translateY(6px);
  transition:opacity .18s ease,transform .18s ease,visibility .18s ease;
}
.gh-menu li:hover>.sub-menu,.gh-menu li:focus-within>.sub-menu{
  opacity:1;visibility:visible;transform:translateY(0)
}
.gh-menu .sub-menu a{
  display:block;
  padding:10px 12px;
  border-radius:10px;
  color:var(--gh-ink);
  font-size:.89rem;
  font-weight:650;
}
.gh-menu .sub-menu a:hover{background:var(--gh-soft);color:var(--gh-primary)}

.gh-header-contact{
  min-height:44px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 10px;
  color:var(--gh-ink);
  font-size:.93rem;
  font-weight:730;
  border-radius:10px;
  white-space:nowrap;
}
.gh-header-contact:hover{background:var(--gh-soft);color:var(--gh-primary)}

.gh-header-cta{
  min-height:46px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 18px;
  border-radius:13px;
  background:var(--gh-primary);
  color:#fff;
  font-size:.88rem;
  font-weight:800;
  box-shadow:0 10px 24px rgba(0,115,124,.18);
  white-space:nowrap;
}
.gh-header-cta:hover{background:var(--gh-primary-dark);color:#fff}

/* Mobilmenü */
.gh-menu-toggle{
  display:none;
  width:46px;height:46px;
  align-items:center;
  justify-content:center;
  border:1px solid var(--gh-line);
  border-radius:13px;
  background:#fff;
  color:var(--gh-ink);
  cursor:pointer;
  justify-self:end;
}
.gh-menu-toggle__icon,.gh-menu-toggle__icon:before,.gh-menu-toggle__icon:after{
  width:21px;height:2px;display:block;background:currentColor;border-radius:2px;transition:.2s ease
}
.gh-menu-toggle__icon{position:relative}
.gh-menu-toggle__icon:before,.gh-menu-toggle__icon:after{content:"";position:absolute;left:0}
.gh-menu-toggle__icon:before{top:-7px}.gh-menu-toggle__icon:after{top:7px}
.gh-menu-toggle[aria-expanded="true"] .gh-menu-toggle__icon{background:transparent}
.gh-menu-toggle[aria-expanded="true"] .gh-menu-toggle__icon:before{top:0;transform:rotate(45deg)}
.gh-menu-toggle[aria-expanded="true"] .gh-menu-toggle__icon:after{top:0;transform:rotate(-45deg)}

.gh-mobile-overlay{
  position:fixed;
  inset:0;
  z-index:1998;
  background:rgba(4,32,37,.52);
  opacity:0;
  visibility:hidden;
  transition:opacity .22s ease,visibility .22s ease;
}
.gh-mobile-drawer{
  position:fixed;
  top:0;right:0;bottom:0;
  z-index:1999;
  width:min(90vw,390px);
  background:#fff;
  box-shadow:-20px 0 60px rgba(0,0,0,.2);
  transform:translateX(105%);
  transition:transform .24s ease;
  overflow-y:auto;
  overscroll-behavior:contain;
}
body.gh-menu-open .gh-mobile-overlay{opacity:1;visibility:visible}
body.gh-menu-open .gh-mobile-drawer{transform:translateX(0)}
.gh-mobile-drawer__head{
  min-height:76px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:14px 20px;
  border-bottom:1px solid var(--gh-line);
}
.gh-mobile-drawer__logo img{max-width:170px;max-height:38px;object-fit:contain}
.gh-mobile-close{
  width:44px;height:44px;
  display:grid;place-items:center;
  border:1px solid var(--gh-line);
  border-radius:12px;
  background:#fff;
  color:var(--gh-ink);
  font-size:1.7rem;
  line-height:1;
  cursor:pointer;
}
.gh-mobile-nav{padding:18px 18px 28px}
.gh-mobile-menu,.gh-mobile-menu ul{list-style:none;margin:0;padding:0}
.gh-mobile-menu>li{border-bottom:1px solid #eaf3f4}
.gh-mobile-menu a{
  display:block;
  padding:14px 8px;
  color:var(--gh-ink);
  font-weight:760;
}
.gh-mobile-menu .sub-menu{
  padding:0 0 10px 13px;
  border-left:2px solid #dff1f3;
}
.gh-mobile-menu .sub-menu a{padding:9px 10px;font-size:.9rem;font-weight:620;color:var(--gh-muted)}
.gh-mobile-page-link{display:flex;min-height:48px;align-items:center;padding:0 8px;border-bottom:1px solid #eaf3f4;color:var(--gh-ink)!important;font-weight:760!important}
.gh-mobile-cta{display:flex;margin:18px 0 12px;min-height:50px;align-items:center;justify-content:center;border-radius:13px;background:var(--gh-primary);color:#fff!important;font-weight:820!important}
.gh-mobile-contact{display:grid;gap:8px;padding-top:10px;font-size:.88rem}
.gh-mobile-contact a{padding:8px;color:var(--gh-primary);font-weight:700}

/* Inhalts-Templates */
.gh-main{min-height:55vh;margin:0;padding:0}
.gh-main>.entry-content,.gh-main>.wp-block-post-content{margin:0;padding:0}
.gh-content-wrap{width:min(calc(100% - 48px),900px);margin:0 auto;padding:64px 0 80px}
.gh-content-wrap--wide{width:min(calc(100% - 48px),var(--gh-container))}
.gh-entry-title{font-size:clamp(2rem,4vw,3.4rem);line-height:1.08;margin:0 0 24px}
.gh-post-meta{margin:-12px 0 28px;color:var(--gh-muted);font-size:.88rem}
.entry-content:after{content:"";display:table;clear:both}
.entry-content>*:first-child{margin-top:0}
.entry-content>*:last-child{margin-bottom:0}
.alignwide{width:min(calc(100% - 48px),var(--gh-container));max-width:none;margin-left:auto;margin-right:auto}
.alignfull{width:100%;max-width:none;margin-left:0;margin-right:0}
.wp-site-blocks,.wp-block-post-content{padding:0!important;margin:0!important}

/* Footer */
.gh-site-footer{background:var(--gh-footer);color:#dceaea;margin:0}
.gh-footer-main{display:grid;grid-template-columns:1.35fr repeat(3,1fr);gap:38px;padding:68px 0 46px}
.gh-footer-logo img{max-width:205px;max-height:42px;object-fit:contain;filter:brightness(0) invert(1)}
.gh-site-footer h2,.gh-site-footer h3{color:#fff;margin:0 0 16px;font-size:1.04rem}
.gh-site-footer p{color:#a9bfc1;margin:0 0 14px}
.gh-footer-links{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.gh-footer-links a{color:#a9bfc1;font-size:.9rem}
.gh-footer-links a:hover{color:#fff}
.gh-footer-contact{display:grid;gap:8px;margin-top:18px}
.gh-footer-contact a{color:#dceaea;font-weight:680}
.gh-footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding:20px 0;display:flex;align-items:center;justify-content:space-between;gap:18px;color:#9fb4b6;font-size:.82rem}
.gh-footer-legal{border-top:1px solid rgba(255,255,255,.06);padding:17px 0 26px;color:#789092;font-size:.74rem}

.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.screen-reader-text:focus{position:fixed!important;top:10px;left:10px;width:auto;height:auto;padding:12px 16px;background:#fff;color:#000;clip:auto;z-index:99999}


/* Breiter Desktop-Header für kleinere Laptops */
@media (min-width:1101px) and (max-width:1380px){
  .gh-site-header>.gh-container{width:calc(100% - 20px);max-width:1460px}
  .gh-header__inner{gap:12px}
  .gh-brand img{max-width:200px;max-height:42px}
  .gh-brand__text{font-size:1.22rem}
  .gh-menu{gap:1px}
  .gh-menu>li>a,.gh-menu>li>button{
    padding:0 8px;
    gap:5px;
    font-size:.93rem;
    white-space:nowrap;
  }
  .gh-header-contact{padding:0 8px;font-size:.93rem;white-space:nowrap}
  .gh-header-cta{padding:0 14px;font-size:.84rem;white-space:nowrap}
}

@media(max-width:1100px){
  .gh-header__inner{gap:16px;grid-template-columns:auto 1fr auto}
  .gh-desktop-nav{display:none}
  .gh-header-contact{display:none}
  .gh-header-cta{display:none}
  .gh-menu-toggle{display:flex}
}
@media(max-width:900px){
  .gh-topbar__right{display:none}
  .gh-footer-main{grid-template-columns:1fr 1fr;gap:34px}
}
@media(max-width:620px){
  .gh-container,.gh-content-wrap,.alignwide{width:min(calc(100% - 28px),var(--gh-container))}
  .gh-topbar__inner{min-height:34px;justify-content:center}
  .gh-topbar__contacts{gap:12px;font-size:.75rem}
  .gh-topbar__contacts a:last-child{display:none}
  .gh-header__inner{min-height:70px;gap:12px}
  .gh-brand img{max-width:170px;max-height:38px}
  .gh-menu-toggle{width:44px;height:44px;margin-right:2px}
  .gh-footer-main{grid-template-columns:1fr;padding:50px 0 34px}
  .gh-footer-bottom{align-items:flex-start;flex-direction:column}
  .gh-content-wrap{padding:48px 0 64px}
}
