/* TM EWE Farben – EWE/ premiumstore Variante, Layout wie tm-service */
:root{
  --tm-ewe-bg:#FFFAE5;
  --tm-ewe-accent:#FFD200;
  --tm-ewe-header:#575C5C;
  --tm-ewe-header-border:rgba(255,210,0,.22);
}

html,body{background:var(--tm-ewe-bg) !important;}
body{
  background:var(--tm-ewe-bg) !important;
  color:#1a1a1a;
}

/* Oberer Balken wie in Bild 2 */
.tm-header,
.tm-header--mobile{
  background:var(--tm-ewe-header) !important;
  border-bottom:1px solid var(--tm-ewe-header-border) !important;
}
.tm-header-inner,
.tm-header-inner--mobile{
  background:transparent !important;
}

/* Logo: rechteckig breiter, oben/unten kompakter */
.tm-logo,
.tm-brand-logo .custom-logo,
.tm-mobile-logo,
.tm-header--mobile .custom-logo{
  width:190px !important;
  max-width:190px !important;
  height:auto !important;
  max-height:56px !important;
}

.tm-brand-logo img,
.tm-mobile-logo,
.tm-header--mobile .tm-brand-logo img,
.tm-header--mobile img.tm-mobile-logo{
  width:190px !important;
  max-width:190px !important;
  height:auto !important;
  max-height:56px !important;
  object-fit:contain;
}

/* Claim */
.tm-header-claim,
.tm-header-claim .tm-claim-company,
.tm-header-claim .tm-claim-locations,
.tm-brand-name--mobile,
.tm-brand-geo--mobile{
  color:var(--tm-ewe-accent) !important;
}

/* Menü oben */
.tm-topnav-trigger{color:var(--tm-ewe-accent) !important;}
.tm-topnav-trigger:hover,
.tm-topnav-item.is-open .tm-topnav-trigger,
.tm-topnav-item.has-dropdown:hover .tm-topnav-trigger{
  border-color:rgba(255,210,0,.55) !important;
  background:rgba(255,210,0,.10) !important;
}

/* Dropdown grau, damit gelb hervorsteht */
.tm-topnav-dropdown{
  background:var(--tm-ewe-header) !important;
  border:1px solid rgba(255,210,0,.35) !important;
}

.tm-dropdown-menu a,
.tm-dropdown-menu .menu-item > a{
  color:var(--tm-ewe-accent) !important;
}
.tm-dropdown-menu a:hover,
.tm-dropdown-menu .menu-item > a:hover{
  background:rgba(255,210,0,.10) !important;
  border-color:rgba(255,210,0,.35) !important;
  text-decoration:none;
}

/* Mobile Buttons bleiben auf grauem Balken lesbar */
.tm-header--mobile .tm-topnav-trigger{
  color:var(--tm-ewe-accent) !important;
}

/* Content bleibt hell */
.tm-main,
.tm-content,
.site,
.site-main{
  background:transparent;
}


/* Header kompakter in der Hoehe, mehr Querformat fuer das Logo */
.tm-header-inner,
.tm-header-inner--mobile{
  padding-top:12px !important;
  padding-bottom:12px !important;
  min-height:88px;
}

.tm-brand-link,
.tm-brand-link--image,
.tm-brand-logo,
.tm-brand-logo .custom-logo-link{
  display:inline-flex !important;
  align-items:center;
}

@media (max-width: 980px){
  .tm-header-inner.tm-header-inner--mobile{
    padding-top:10px !important;
    padding-bottom:10px !important;
    min-height:82px;
  }

  .tm-brand.tm-brand--mobile{
    gap:4px;
  }
}


/* v5 logo fix: crop logo and use full horizontal space */
.tm-brand-link--ewe{
  display:inline-flex !important;
  align-items:center;
  justify-content:flex-start;
  line-height:0;
}

.tm-logo--ewe{
  display:block !important;
  width:260px !important;
  max-width:min(260px, 42vw) !important;
  height:auto !important;
  max-height:none !important;
  object-fit:contain;
}

.tm-header-inner,
.tm-header-inner--mobile{
  min-height:94px !important;
}

@media (max-width: 980px){
  .tm-header-inner.tm-header-inner--mobile{
    min-height:86px !important;
    padding-top:8px !important;
    padding-bottom:8px !important;
  }
  .tm-header--mobile .tm-brand-logo,
  .tm-header--mobile .tm-brand-link--ewe{
    width:100%;
    justify-content:center;
  }
  .tm-header--mobile .tm-logo--ewe{
    width:min(280px, 78vw) !important;
    max-width:min(280px, 78vw) !important;
  }
}


/* v6: Ueberschriften in Balken-Grau statt Himmelblau */
.tm-main h1,
.tm-main h2,
.tm-main h3,
.tm-main h4,
.tm-main h5,
.tm-main h6,
.tm-h1,
.tm-h2,
.tm-h3,
.tm-h4,
.tm-h5,
.tm-h6,
.entry-title,
.page-title,
.site-main h1,
.site-main h2,
.site-main h3,
.site-main h4,
.site-main h5,
.site-main h6{
  color:var(--tm-ewe-header) !important;
}

/* v7: Footer wie Referenzbilder */
:root{
  --tm-ewe-footer-text:#efe59a;
  --tm-ewe-footer-copy:#FFD200;
}

.tm-footer.tm-footer--ewe{
  background:var(--tm-ewe-header) !important;
  border-top:1px solid rgba(255,250,229,.28) !important;
  margin-top:24px;
}

.tm-footer--ewe .tm-footer-inner{
  max-width:1200px;
  margin:0 auto;
  padding:18px 14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}

.tm-footer--ewe .tm-footer-left{
  display:flex;
  align-items:center;
  gap:10px;
  color:var(--tm-ewe-footer-text) !important;
  font-size:15px;
  line-height:1.35;
  flex-wrap:wrap;
}


.tm-footer--ewe .tm-footer-copy,
.tm-footer--ewe .tm-footer-copy:visited,
.tm-footer--ewe .tm-footer-copy:hover,
.tm-footer--ewe .tm-footer-copy:focus{
  color:var(--tm-ewe-footer-copy) !important;
  text-decoration:none;
}

.tm-footer--ewe .tm-footer-right .tm-menu a,
.tm-footer--ewe .tm-footer-right .tm-menu a:visited{
  display:inline-block;
  padding:6px 8px;
  color:var(--tm-ewe-footer-text) !important;
  border:0 !important;
  background:transparent !important;
  line-height:1;
  text-decoration:none;
}


.tm-footer--ewe .tm-footer-copy:visited,
.tm-footer--ewe .tm-footer-copy:hover,
.tm-footer--ewe .tm-footer-copy:focus{
  color:var(--tm-ewe-footer-text) !important;
  text-decoration:none;
}

.tm-footer--ewe .tm-footer-rainbow{
  display:inline-flex;
  align-items:center;
  font-size:16px;
  line-height:1;
}

.tm-footer--ewe .tm-footer-right .tm-menu{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  align-items:center;
  gap:14px;
}

.tm-footer--ewe .tm-footer-right .tm-menu a,
.tm-footer--ewe .tm-footer-right .tm-menu a:visited{
  display:inline-block;
  padding:6px 8px;
  color:var(--tm-ewe-footer-text) !important;
  border:0 !important;
  background:transparent !important;
  line-height:1;
  text-decoration:none;
}

.tm-footer--ewe .tm-footer-right .tm-menu a:hover,
.tm-footer--ewe .tm-footer-right .tm-menu a:focus{
  color:var(--tm-ewe-footer-text) !important;
  text-decoration:none;
  opacity:.92;
}

@media (max-width: 900px){
  .tm-footer--ewe .tm-footer-inner{
    flex-direction:column;
    align-items:flex-start;
  }
}


/* v9: Logo-Rahmen optisch entfernen, Canvas enger, Header flacher */
.tm-brand-link--ewe,
.tm-brand-link--image.tm-brand-link--ewe{
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  border-radius: 0 !important;
}

.tm-logo--ewe{
  width: 300px !important;
  max-width: min(300px, 45vw) !important;
  height: auto !important;
  max-height: none !important;
  object-fit: contain !important;
}

.tm-header-inner,
.tm-header-inner--mobile{
  min-height: 82px !important;
  padding-top: 8px !important;
  padding-bottom: 8px !important;
}

@media (max-width: 980px){
  .tm-header-inner.tm-header-inner--mobile{
    min-height: 72px !important;
    padding-top: 6px !important;
    padding-bottom: 6px !important;
  }
  .tm-header--mobile .tm-logo--ewe{
    width: min(300px, 86vw) !important;
    max-width: min(300px, 86vw) !important;
  }
}

/* v10 header slimmer */
.tm-logo--ewe{
  width:240px !important;
  max-width:min(240px,40vw) !important;
}

.tm-header-inner,
.tm-header-inner--mobile{
  min-height:70px !important;
  padding-top:6px !important;
  padding-bottom:6px !important;
}

.tm-header-wave,
.tm-header-divider,
.tm-header-curve{
  height:26px !important;
  max-height:26px !important;
  overflow:hidden;
}

@media (max-width:980px){
  .tm-header-inner.tm-header-inner--mobile{
    min-height:62px !important;
    padding-top:4px !important;
    padding-bottom:4px !important;
  }
}
