.elementor-kit-6{--e-global-color-primary:#E0E0E0;--e-global-color-secondary:#134356;--e-global-color-text:#212121;--e-global-color-accent:#6BA292;--e-global-color-1858674:#EC6225;--e-global-color-3a0a960:#FFFFFF;--e-global-color-86c24de:#625F5F;--e-global-color-920087b:#50776C;--e-global-typography-primary-font-family:"League Spartan";--e-global-typography-primary-font-size:45px;--e-global-typography-primary-font-weight:700;--e-global-typography-primary-line-height:3.2rem;--e-global-typography-primary-letter-spacing:0.1px;--e-global-typography-secondary-font-family:"K2D";--e-global-typography-secondary-font-size:30px;--e-global-typography-secondary-font-weight:600;--e-global-typography-secondary-font-style:italic;--e-global-typography-secondary-line-height:45px;--e-global-typography-secondary-letter-spacing:0.8px;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-size:30px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:49px;--e-global-typography-text-letter-spacing:-1.1px;--e-global-typography-accent-font-family:"Metrophobic";--e-global-typography-accent-font-size:35px;--e-global-typography-accent-font-weight:600;--e-global-typography-accent-font-style:italic;--e-global-typography-accent-line-height:32px;--e-global-typography-accent-letter-spacing:-1.6px;color:var( --e-global-color-text );font-family:"Roboto", Sans-serif;font-size:16px;font-weight:400;line-height:1.6rem;}.elementor-kit-6 button,.elementor-kit-6 input[type="button"],.elementor-kit-6 input[type="submit"],.elementor-kit-6 .elementor-button{background-color:var( --e-global-color-1858674 );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );color:var( --e-global-color-3a0a960 );box-shadow:5px 5px 10px 0px rgba(0,0,0,0.5);border-style:none;border-radius:60px 60px 60px 60px;padding:10px 40px 10px 40px;}.elementor-kit-6 button:hover,.elementor-kit-6 button:focus,.elementor-kit-6 input[type="button"]:hover,.elementor-kit-6 input[type="button"]:focus,.elementor-kit-6 input[type="submit"]:hover,.elementor-kit-6 input[type="submit"]:focus,.elementor-kit-6 .elementor-button:hover,.elementor-kit-6 .elementor-button:focus{background-color:var( --e-global-color-1858674 );color:var( --e-global-color-3a0a960 );border-style:none;border-radius:50px 50px 50px 50px;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 p{margin-block-end:3px;}.elementor-kit-6 h1{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-6 h2{color:var( --e-global-color-secondary );font-family:"Raleway", Sans-serif;font-size:38px;font-weight:500;}.elementor-kit-6 h3{color:#264653;font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );font-style:var( --e-global-typography-secondary-font-style );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-kit-6 h4{color:var( --e-global-color-text );font-family:"Roboto", Sans-serif;font-size:16px;font-weight:400;line-height:1.5rem;}.elementor-kit-6 h5{color:var( --e-global-color-text );}.elementor-kit-6 img{border-style:none;border-radius:14px 14px 14px 14px;}.elementor-kit-6 img:hover{opacity:0.8;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-6 h1{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-6 h3{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-kit-6 button,.elementor-kit-6 input[type="button"],.elementor-kit-6 input[type="submit"],.elementor-kit-6 .elementor-button{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-6 h1{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-6 h3{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-kit-6 button,.elementor-kit-6 input[type="button"],.elementor-kit-6 input[type="submit"],.elementor-kit-6 .elementor-button{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* =========================================================
   GRÜNENWALD – GLOBAL DESIGN CSS (bereinigt)
   ========================================================= */

/* -------------------------
   0) DESIGN-VARIABLEN
   ------------------------- */
:root{
  /* Farben */
  --gw-orange: #f38b00;
  --gw-orange-dark: #d76a00;
  --gw-blue-bg: #1b4858;
  --gw-text-light: #ffffff;
  --gw-text-dark: #333333;

  /* Flamme – Grundwerte (Desktop) */
  --gw-flame-right:  -6%;
  --gw-flame-bottom: -20%;
  --gw-flame-width:  30vw;
  --gw-flame-opacity:.08;
  --gw-flame-rotate: -6deg;

  /* Logo-Größen */
  --gw-logo-w: 260px;
  --gw-logo-h: 96px;
}

/* Tablet */
@media (max-width:1024px){
  :root{
    --gw-flame-right:  -200%;
    --gw-flame-bottom: -20%;
    --gw-flame-width:  36vw;
    --gw-flame-opacity:.06;
    --gw-flame-rotate: -8deg;

    --gw-logo-w: 220px;
    --gw-logo-h: 84px;
  }
}

/* Mobile */
@media (max-width:767px){
  :root{
    --gw-flame-right:  -14%;
    --gw-flame-bottom: -12%;
    --gw-flame-width:  64vw;
    --gw-flame-opacity:.06;
    --gw-flame-rotate: -6deg;

    --gw-logo-w: 190px;
    --gw-logo-h: 76px;
  }
}


/* =========================================================
   1) FOOTER – GRÜNENWALD
   ========================================================= */

/* Grundlayout */
.gw-footer-full{
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: 1.2fr 1fr 1fr;
  column-gap: clamp(24px,3vw,48px);
  align-items: start;
  background-color: var(--gw-blue-bg);
  color: var(--gw-text-light);
  padding: clamp(48px,6vw,80px) 5%;
}

/* Flamme als Hintergrund */
.gw-footer-full::after{
  content:"";
  position:absolute;
  right: var(--gw-flame-right);
  bottom: var(--gw-flame-bottom);
  width: clamp(320px, var(--gw-flame-width), 980px);
  aspect-ratio: 395.303 / 403.265;
  background: url(https://gruenenwald-heizung.de/wp-content/uploads/2025/09/flavicon_gruenenwald-heizung.svg)
              no-repeat center / contain;
  opacity: var(--gw-flame-opacity);
  transform: rotate(var(--gw-flame-rotate));
  transform-origin: 100% 100%;
  pointer-events: none;
  z-index: 0;
}
.gw-footer-full > *{ position:relative; z-index:1; }

/* Tablet: untereinander */
@media (min-width:768px) and (max-width:1024px){
  .gw-footer-full{
    grid-template-columns: 1fr 1fr;
    row-gap: 2rem;
  }
  .gw-col-brand{ grid-column: 1 / -1; }
}

/* Mobile: Spalten untereinander */
@media (max-width:767px){
  .gw-footer-full{
    grid-template-columns: 1fr;
    row-gap: 1.6rem;
  }
}


/* ----- Brand-Block Typo ----- */
.gw-col-brand .brand-title{
  margin: 0 0 .15em;
  font-family: "LeagueSpartan","Montserrat",system-ui,sans-serif;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .06em;
  line-height: 1.1;
  font-size: clamp(28px,3.2vw,42px);
  color: var(--gw-text-light);
}
.gw-col-brand .brand-claim{
  margin: 0 0 .6em;
  font-family: "Montserrat",system-ui,sans-serif;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
  font-size: clamp(12px,1.3vw,16px);
  line-height: 1.2;
  color: var(--gw-orange);
}
.gw-col-brand .brand-tags{
  margin: 0 0 1.2rem;
  font-family: "Metrophobic",system-ui,sans-serif;
  font-size: clamp(12px,1.2vw,15px);
  line-height: 1.35;
  color: var(--gw-text-light);
  opacity:.95;
}

/* Links im Footer */
.gw-footer-full a{
  color: var(--gw-text-light);
  text-decoration: none;
  transition: color .2s ease;
}
.gw-footer-full a:hover{
  color: var(--gw-orange);
}

/* Iconliste (Kontakt) */
.gw-address .elementor-icon-list-item{
  display:flex; align-items:flex-start;
}
.gw-address .elementor-icon-list-icon{ line-height:1; margin-top:.15em; }
.gw-address .elementor-icon-list-items{ row-gap:2px; }
@media (max-width:767px){ .gw-address .elementor-icon-list-items{ row-gap:0; } }


/* =========================================================
   2) TEAM-PORTRAITS – rund, Hover
   ========================================================= */
.gw-photo{
  width: clamp(220px,22vw,500px);
  margin-left: auto;
  margin-right: auto;
}
.gw-photo img{
  display:block;
  width:100%!important;
  height:auto!important;
  aspect-ratio:1/1;
  object-fit:cover;
  border-radius:50%;
  border:10px solid transparent;
  transition: border-color .25s ease, transform .25s ease, box-shadow .25s ease;
}
.gw-photo:hover img,
.gw-photo:focus-within img{
  border-color: var(--gw-orange);
  transform: scale(1.02);
  box-shadow: 0 8px 20px rgba(0,0,0,.18);
}


/* =========================================================
   3) HERO – Startseite (ohne Buttons)
   ========================================================= */
.gw-hero{
  max-width:1000px;
  margin:80px auto 0;
  text-align:center;
  padding:clamp(28px,4vw,56px) clamp(16px,3vw,28px);
  color:#fff;
  animation: gwFadeUp .9s ease-out both;
}
.gw-hero__title{
  font-family:'Montserrat',sans-serif;
  font-size:46px;
  font-weight:800;
  line-height:1.1;
  margin:0 0 .3em;
  color:#fff;
}
.gw-hero__text{
  font-family:'Metrophobic',sans-serif;
  font-size:24px;
  line-height:1.45;
  color:#fff;
  opacity:.95;
  margin:0 0 2.2em;
}
.gw-hero__btns{
  display:inline-flex;
  flex-wrap:wrap;
  gap:14px;
  justify-content:center;
  margin-top:2em;
}
@keyframes gwFadeUp{
  from{opacity:0;transform:translateY(10px);}
  to{opacity:1;transform:translateY(0);}
}
@media (max-width:480px){
  .gw-hero__title{font-size:34px;}
  .gw-hero__text{font-size:20px;margin-bottom:1.8em;}
  .gw-hero__btns .elementor-button{width:100%;text-align:center;}
}


/* =========================================================
   4) CTA – Kontaktblock
   ========================================================= */
.gw-cta{
  background:#f4f4f4;
  border-top:3px solid var(--gw-orange);
  text-align:center;
  padding:clamp(96px,10vh,144px) 24px;
}
.gw-cta__content{ max-width:920px; margin:0 auto; }
.gw-cta__title{
  font-family:'Montserrat',sans-serif;
  font-size:clamp(28px,3vw,38px);
  font-weight:800;
  line-height:1.25;
  letter-spacing:.2px;
  margin:0 0 .7em;
}
.gw-cta__text{
  font-family:'Metrophobic',sans-serif;
  font-size:20px;
  line-height:1.6;
  margin:0 auto 2em;
  max-width:60ch;
  color:var(--gw-text-dark);
}
.gw-cta__btns{
  display:inline-flex;
  flex-wrap:wrap;
  gap:18px 22px;
  justify-content:center;
}
@media (max-width:640px){
  .gw-cta__text{margin-bottom:1.6em;}
  .gw-cta__btns .elementor-button{width:100%;}
}


/* =========================================================
   5) HEADER – Logo flexibel
   ========================================================= */
.elementor-location-header .header-logo img,
.elementor-location-header .header-logo svg{
  width: var(--gw-logo-w);
  max-height: var(--gw-logo-h);
  height:auto;
  display:block;
}
.elementor-location-header .header-logo{flex:0 0 auto;}
.elementor-location-header .header-row{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:.75rem;
}


/* =========================================================
   6) TYPOGRAFIE – global
   ========================================================= */
.gw-headline,
.elementor-widget-heading .elementor-heading-title.gw-headline,
.gw-footer-brand{
  font-family:"LeagueSpartan","Montserrat",system-ui,sans-serif;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.06em;
  line-height:1.15;
}
.elementor-button,
.button,
.btn{
  font-family:"Montserrat",system-ui,sans-serif;
  font-weight:700;
  letter-spacing:.02em;
  text-transform:none;
  line-height:1.2;
}

.elementor-kit-6 .elementor-icon-list-icon i {
  font-size: 30px;
  color: #6BA292;
}
.elementor-kit-6 .elementor-icon-list-item {
  align-items: center;
}

/* =========================================================
   7) NAV – Mobile/Tablet Menü (gw-nav)
   ========================================================= */

/* Ab Tablet (quer) ins Hamburger-Menü: Styling fürs Dropdown/Offcanvas */
@media (max-width:1024px){

  /* Container des aufgeklappten Menüs */
  .gw-nav .elementor-nav-menu--dropdown{
    width: 100% !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
  }

  /* Menü-Links: kompakter + genug Rand, damit nichts abschneidet */
  .gw-nav .elementor-nav-menu--dropdown a{
    padding: 10px 16px !important;
    line-height: 1.2 !important;
    white-space: normal !important; /* darf umbrechen statt abschneiden */
    word-break: normal !important;
  }

  /* Optional: wenn du rechtsbündig willst (wie auf deinem Screenshot) */
  .gw-nav .elementor-nav-menu--dropdown a{
    text-align: right !important;
  }
}

@media (max-width:1024px){
  /* Dropdown/Overlay exakt in den Viewport zwingen */
  .gw-nav .elementor-nav-menu--dropdown{
    left: 0 !important;
    right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 16px !important;   /* wichtig gegen links-Cut */
  }
}

/* =========================================================
   NAV – Tablet Landscape Typo Fix
   ========================================================= */
@media (min-width: 900px) and (max-width: 1200px){

  .gw-nav .elementor-nav-menu > li > a{
    font-size: 15px;        /* ggf. 15–16px testen */
    line-height: 1.25;
    padding-top: 6px;
    padding-bottom: 6px;
  }

}/* End custom CSS */