/* Native Elementor adaptation of the ORIGINAL startseite.css; visual widgets retained. */
body.gvn-elementor-native .elementor .e-con.hero{position: relative; height: clamp(460px, 62vh, 680px); overflow: hidden; display: flex; align-items: center; padding-bottom: 60px;}
body.gvn-elementor-native .elementor .e-con.hero-slides{position: absolute; inset: 0; z-index: 2;}
body.gvn-elementor-native .elementor .e-con.hero-slide{position: absolute; inset: 0; opacity: 0; visibility: hidden; transition: opacity .65s ease; display: flex; align-items: center;}
body.gvn-elementor-native .elementor .e-con.hero-slide.active{opacity: 1; visibility: visible;}
body.gvn-elementor-native .elementor .hero-slide-bg{position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 45%; transform: scale(1.02); transition: transform 7s ease; z-index: 0;}
body.gvn-elementor-native .elementor .e-con.hero-slide::before{content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(105deg, rgba(8,22,50,.68) 0%, rgba(10,28,60,.54) 28%, rgba(10,28,60,.28) 55%, rgba(10,28,60,0) 100%);}
body.gvn-elementor-native .elementor .e-con.hero-slide.active .hero-slide-bg{transform: scale(1.08);}
body.gvn-elementor-native .elementor .e-con.hero-overlay{display: none;}
body.gvn-elementor-native .elementor .e-con.hero-inner{position: relative; max-width: 1200px; margin: 0 auto; padding-left: 0; padding-right: 0; width: 100%;}
body.gvn-elementor-native .elementor .e-con.hero-slide .hero-inner{z-index: 2;}
body.gvn-elementor-native .elementor .hero-kicker{display: inline-flex; align-items: center; gap: 8px; font-size: 11.5px; font-weight: 600; letter-spacing: 1.2px; text-transform: uppercase; color: rgba(255,255,255,.75); margin-bottom: 18px;}
body.gvn-elementor-native .elementor .hero-kicker::before{content: ""; display: block; width: 24px; height: 2px; background: var(--green);}
body.gvn-elementor-native .elementor .e-con.hero h1{font-family: "Montserrat", sans-serif; font-size: clamp(40px, 4.8vw, 68px); font-weight: 800; line-height: 1.1; letter-spacing: -.8px; color: #fff; margin-bottom: 24px;}
body.gvn-elementor-native .elementor .hero-sub{font-size: 17px; color: rgba(255,255,255,.8); max-width: 460px; line-height: 1.7; margin-bottom: 44px;}
body.gvn-elementor-native .elementor .e-con.hero-btns{display: flex; gap: 12px; flex-wrap: wrap;}
body.gvn-elementor-native .elementor .e-con.hero-dots{position: absolute; left: 0; right: 0; bottom: 26px; z-index: 4; display: flex; justify-content: center; gap: 10px;}
body.gvn-elementor-native .elementor .hero-dot{width: 10px; height: 10px; border-radius: 50%; border: none; background: rgba(255,255,255,.35); cursor: pointer; transition: transform .2s, background .2s;}
body.gvn-elementor-native .elementor .hero-dot:hover{background: rgba(255,255,255,.65); transform: scale(1.08);}
body.gvn-elementor-native .elementor .hero-dot.active{background: #fff;}
body.gvn-elementor-native .elementor .btn{display: inline-flex; align-items: center; gap: 8px; font-size: 13.5px; font-weight: 700; padding: 12px 28px; border-radius: 50px; border: 2px solid transparent; cursor: pointer; transition: background .2s, color .2s, border-color .2s, transform .12s; letter-spacing: .3px; text-transform: uppercase;}
body.gvn-elementor-native .elementor .btn:active{transform: scale(.97);}
body.gvn-elementor-native .elementor .btn-green{background: var(--green); color: #fff; border-color: var(--green);}
body.gvn-elementor-native .elementor .btn-green:hover{background: var(--green-d); border-color: var(--green-d);}
body.gvn-elementor-native .elementor .btn-ghost{background: transparent; color: #fff; border-color: rgba(255,255,255,.5);}
body.gvn-elementor-native .elementor .btn-ghost:hover{background: rgba(255,255,255,.1); border-color: #fff;}
body.gvn-elementor-native .elementor .btn-blue{background: var(--blue); color: #fff; border-color: var(--blue);}
body.gvn-elementor-native .elementor .btn-blue:hover{background: var(--blue-dark); border-color: var(--blue-dark);}
body.gvn-elementor-native .elementor .stats{background: linear-gradient(90deg, var(--blue-dark) 0%, var(--blue) 100%); padding: 0 32px;}
body.gvn-elementor-native .elementor .stats-inner{max-width: 1200px; margin: 0 auto; display: flex; justify-content: center;}
body.gvn-elementor-native .elementor .stat{flex: 1; max-width: 280px; padding: 26px 0; text-align: center; border-right: 1px solid rgba(255,255,255,.12);}
body.gvn-elementor-native .elementor .stat:last-child{border-right: none;}
body.gvn-elementor-native .elementor .stat-n{font-family: "Montserrat", sans-serif; font-size: 40px; font-weight: 800; color: #fff; line-height: 1; letter-spacing: -1px;}
body.gvn-elementor-native .elementor .stat-l{font-size: 12px; color: rgba(255,255,255,.65); margin-top: 5px; text-transform: uppercase; letter-spacing: .6px;}
body.gvn-elementor-native .elementor .e-con.section{padding: 80px 32px;}
body.gvn-elementor-native .elementor .e-con.section-inner{max-width: 1200px; margin: 0 auto;}
body.gvn-elementor-native .elementor .e-con.sh{margin-bottom: 48px;}
body.gvn-elementor-native .elementor .sh-label{font-size: 11px; font-weight: 700; letter-spacing: 1.4px; text-transform: uppercase; color: var(--green); margin-bottom: 14px; display: inline-block; background: rgba(58,156,92,.1); padding: 5px 14px; border-radius: 50px;}
body.gvn-elementor-native .elementor .sh-title{font-family: "Montserrat", sans-serif; font-size: clamp(22px, 2.4vw, 32px); font-weight: 700; color: var(--text); line-height: 1.2; letter-spacing: -.3px;}
body.gvn-elementor-native .elementor .sh-desc{margin-top: 12px; color: var(--muted); font-size: 15px; max-width: 520px;}
body.gvn-elementor-native .elementor .e-con.sh.center{text-align: center;}
body.gvn-elementor-native .elementor .e-con.sh.center .sh-desc{margin: 12px auto 0;}
body.gvn-elementor-native .elementor .e-con.about{background: #f8f8f8;}
body.gvn-elementor-native .elementor .e-con.about-cols{display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px;}
body.gvn-elementor-native .elementor .e-con.about-col{padding: 30px; background: var(--white); border-radius: 14px; box-shadow: none; border: 1px solid rgba(221,228,237,.6);}
body.gvn-elementor-native .elementor .e-con.about-icon{width: 50px; height: 50px; background: linear-gradient(135deg, var(--green) 0%, var(--blue) 100%); border-radius: 50%; display: flex; align-items: center; justify-content: center; margin-bottom: 20px;}
body.gvn-elementor-native .elementor .e-con.about-icon svg{width: 22px; height: 22px; fill: none; stroke: #fff; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round;}
body.gvn-elementor-native .elementor .e-con.about-col h3{font-size: 16px; font-weight: 600; margin-bottom: 10px;}
body.gvn-elementor-native .elementor .e-con.about-col p{font-size: 14px; color: var(--muted); line-height: 1.65;}
body.gvn-elementor-native .elementor .e-con.about-col.highlight{background: linear-gradient(145deg, var(--green) 0%, var(--blue) 100%); border-color: transparent; box-shadow: none;}
body.gvn-elementor-native .elementor .e-con.about-col.highlight h3{color: #fff;}
body.gvn-elementor-native .elementor .e-con.about-col.highlight p{color: rgba(255,255,255,.75);}
body.gvn-elementor-native .elementor .e-con.about-col.highlight .about-icon{background: rgba(255,255,255,.15);}
body.gvn-elementor-native .elementor .about-phone{display: inline-flex; align-items: center; gap: 8px; margin-top: 18px; font-size: 20px; font-weight: 700; color: #fff; letter-spacing: -.3px;}
body.gvn-elementor-native .elementor .about-phone svg{width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round;}
body.gvn-elementor-native .elementor .e-con.about-partners{margin-top: 52px;}
body.gvn-elementor-native .elementor .e-con.services{background: var(--white);}
body.gvn-elementor-native .elementor .e-con.services-grid{display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px;}
body.gvn-elementor-native .elementor .e-con.scard{background: var(--white); border-radius: 10px; border: 1px solid var(--border); overflow: hidden; display: flex; flex-direction: column; transition: box-shadow .25s, transform .25s;}
body.gvn-elementor-native .elementor .e-con.scard:hover{box-shadow: none; transform: translateY(-5px); border-color: rgba(26,84,150,.2);}
body.gvn-elementor-native .elementor .scard-img{width: 100%; height: 190px; object-fit: cover;}
body.gvn-elementor-native .elementor .e-con.scard-body{padding: 20px 22px 24px; flex: 1; display: flex; flex-direction: column;}
body.gvn-elementor-native .elementor .scard-title{font-size: 15.5px; font-weight: 600; margin-bottom: 14px; line-height: 1.35;}
body.gvn-elementor-native .elementor .scard-links{list-style: none; margin-top: auto; display: flex; flex-direction: column; gap: 8px;}
body.gvn-elementor-native .elementor .scard-links li{display: flex; align-items: flex-start; gap: 8px; font-weight: 600;}
body.gvn-elementor-native .elementor .scard-links li::before{content: ""; display: block; width: 18px; height: 18px; background: url("../../img/list-style-1.png") center / contain no-repeat; flex-shrink: 0; margin-top: 1px;}
body.gvn-elementor-native .elementor .scard-links a{font-size: 13px; color: var(--blue); line-height: 1.45; transition: color .2s;}
body.gvn-elementor-native .elementor .scard-links a:hover{color: var(--green-d);}
body.gvn-elementor-native .elementor .e-con.news-section{background: #fff;}
body.gvn-elementor-native .elementor .e-con.news-section .sh-title{color: var(--text);}
body.gvn-elementor-native .elementor .e-con.news-section .sh-label{background: rgba(58,156,92,.1); color: var(--green);}
body.gvn-elementor-native .elementor .e-con.news-grid{display: grid; grid-template-columns: 1fr 1fr; gap: 28px; align-items: start;}
body.gvn-elementor-native .elementor .e-con.news-grid div{display: flex; flex-direction: column; align-self: start;}
body.gvn-elementor-native .elementor .news-col-label{font-size: 10.5px; font-weight: 700; letter-spacing: 1.6px; text-transform: uppercase; color: var(--muted); margin-bottom: 16px;}
body.gvn-elementor-native .elementor .e-con.event-list{display: flex; flex-direction: column; gap: 12px;}
body.gvn-elementor-native .elementor .e-con.event-card{background: linear-gradient(180deg, #fff 0%, #f9fbff 100%); border: 1px solid #d5e1ee; border-radius: 12px; overflow: hidden; transition: background .2s, border-color .2s; display: flex; flex-direction: column;}
body.gvn-elementor-native .elementor .e-con.event-card:hover{background: linear-gradient(180deg, #fff 0%, #f5f9ff 100%); border-color: #b8cce4;}
body.gvn-elementor-native .elementor .e-con.event-head{padding: 20px 22px; display: flex; align-items: center; gap: 18px; border-bottom: 1px solid #e7eef6;}
body.gvn-elementor-native .elementor .e-con.event-datebox{background: linear-gradient(135deg, var(--green) 0%, var(--blue) 100%); border-radius: 10px; padding: 10px 14px; text-align: center; flex-shrink: 0;}
body.gvn-elementor-native .elementor .e-con.event-datebox .dd{font-family: "Montserrat", sans-serif; font-size: 26px; font-weight: 800; line-height: 1; letter-spacing: -1px; color: #fff;}
body.gvn-elementor-native .elementor .e-con.event-datebox .mm{font-size: 10px; text-transform: uppercase; letter-spacing: 1px; color: rgba(255,255,255,.8); margin-top: 2px;}
body.gvn-elementor-native .elementor .event-info-title{font-size: 15px; font-weight: 600; margin-bottom: 3px; line-height: 1.3; color: var(--text);}
body.gvn-elementor-native .elementor .event-info-sub{font-size: 12.5px; color: var(--muted);}
body.gvn-elementor-native .elementor .e-con.event-foot{padding: 12px 22px 16px;}
body.gvn-elementor-native .elementor .link-arrow{display: inline-flex; align-items: center; gap: 7px; font-size: 13px; font-weight: 500; color: var(--blue); transition: gap .2s, color .2s;}
body.gvn-elementor-native .elementor .link-arrow:hover{gap: 11px; color: var(--green-d);}
body.gvn-elementor-native .elementor .link-arrow svg{width: 13px; height: 13px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round;}
body.gvn-elementor-native .elementor .link-all{display: inline-flex; align-items: center; gap: 7px; margin-top: 16px; font-size: 12.5px; font-weight: 600; color: var(--blue); transition: gap .2s, color .2s;}
body.gvn-elementor-native .elementor .link-all:hover{gap: 11px; color: var(--green-d);}
body.gvn-elementor-native .elementor .link-all svg{width: 13px; height: 13px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round;}
body.gvn-elementor-native .elementor .e-con.post-card{background: #fff; border: 1px solid var(--border); border-radius: 12px; overflow: hidden; transition: background .2s, border-color .2s; display: flex; flex-direction: column;}
body.gvn-elementor-native .elementor .e-con.post-card:hover{background: #fff; border-color: #b8cce4;}
body.gvn-elementor-native .elementor .e-con.post-body{padding: 22px 24px 0; flex: 1;}
body.gvn-elementor-native .elementor .post-date{font-size: 11.5px; font-weight: 700; color: var(--green); letter-spacing: .6px; margin-bottom: 8px; text-transform: uppercase;}
body.gvn-elementor-native .elementor .post-title{font-size: 17px; font-weight: 700; line-height: 1.35; margin-bottom: 10px; color: var(--text);}
body.gvn-elementor-native .elementor .post-excerpt{font-size: 13.5px; color: var(--muted); line-height: 1.65; padding-bottom: 18px; border-bottom: 1px solid var(--border);}
body.gvn-elementor-native .elementor .e-con.post-foot{padding: 14px 24px;}
body.gvn-elementor-native .elementor .e-con.partners-section{background: transparent;}
body.gvn-elementor-native .elementor .e-con.slider-wrap{overflow: hidden; position: relative; margin-top: 44px; padding: 8px 0;}
body.gvn-elementor-native .elementor .e-con.slider-wrap::before,
body.gvn-elementor-native .elementor .e-con.slider-wrap::after{content: ""; position: absolute; top: 0; bottom: 0; width: 120px; z-index: 2; pointer-events: none;}
body.gvn-elementor-native .elementor .e-con.slider-wrap::before{left: 0; background: linear-gradient(to right, var(--white), transparent);}
body.gvn-elementor-native .elementor .e-con.slider-wrap::after{right: 0; background: linear-gradient(to left,  var(--white), transparent);}
body.gvn-elementor-native .elementor .e-con.slider-track{display: flex; animation: slide-logos 36s linear infinite; align-items: center;}
body.gvn-elementor-native .elementor .e-con.slider-track:hover{animation-play-state: paused;}
body.gvn-elementor-native .elementor .e-con.slide-card{width: 184px; height: 100px; background: var(--white); border: 1px solid var(--border); border-radius: 12px; display: flex; align-items: center; justify-content: center; padding: 14px 20px; flex-shrink: 0; margin-right: 18px; transition: border-color .25s, box-shadow .25s, transform .25s;}
body.gvn-elementor-native .elementor .e-con.slide-card:hover{border-color: #b8cce4; box-shadow: none; transform: translateY(-2px);}
body.gvn-elementor-native .elementor .e-con.slide-card img{max-height: 64px; max-width: 148px; object-fit: contain;}
body.gvn-elementor-native .elementor .nutzen-section{background: var(--light);}
body.gvn-elementor-native .elementor .nutzen-grid{display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; border-top: 1px solid var(--border);}
body.gvn-elementor-native .elementor .nutzen-card{padding: 40px 28px; text-align: center; border-right: 1px solid var(--border); transition: background .2s;}
body.gvn-elementor-native .elementor .nutzen-card:last-child{border-right: none;}
body.gvn-elementor-native .elementor .nutzen-card:hover{background: rgba(26,84,150,.04);}
body.gvn-elementor-native .elementor .nutzen-icon{width: 46px; height: 46px; border-radius: 50%; background: linear-gradient(135deg, var(--green) 0%, var(--blue) 100%); display: flex; align-items: center; justify-content: center; margin: 0 auto 18px;}
body.gvn-elementor-native .elementor .nutzen-icon svg{width: 20px; height: 20px; fill: none; stroke: #fff; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round;}
body.gvn-elementor-native .elementor .nutzen-n{font-family: "Montserrat", sans-serif; font-size: 48px; font-weight: 800; color: var(--blue); line-height: 1; letter-spacing: -2px;}
body.gvn-elementor-native .elementor .nutzen-label{font-size: 11.5px; font-weight: 700; text-transform: uppercase; letter-spacing: 1px; color: var(--muted); margin: 8px 0 12px;}
body.gvn-elementor-native .elementor .nutzen-desc{font-size: 13px; color: var(--muted); line-height: 1.6;}
body.gvn-elementor-native .elementor .hero-kicker{opacity: 0; animation: fadeUp .7s .1s ease forwards;}
body.gvn-elementor-native .elementor .e-con.hero h1{opacity: 0; animation: fadeUp .75s .3s ease forwards;}
body.gvn-elementor-native .elementor .hero-sub{opacity: 0; animation: fadeUp .7s .5s ease forwards;}
body.gvn-elementor-native .elementor .e-con.hero-btns{opacity: 0; animation: fadeUp .7s .7s ease forwards;}
body.gvn-elementor-native .elementor .e-con.fade-up{opacity: 0; transform: translateY(28px); transition: opacity .65s ease, transform .65s ease; will-change: opacity, transform;}
body.gvn-elementor-native .elementor .e-con.fade-up.in{opacity: 1; transform: none;}
@media (prefers-reduced-motion: reduce){body.gvn-elementor-native .elementor .hero-slide-bg,
body.gvn-elementor-native .elementor .hero-kicker,
body.gvn-elementor-native .elementor .e-con.hero h1,
body.gvn-elementor-native .elementor .hero-sub,
body.gvn-elementor-native .elementor .e-con.hero-btns{animation: none; opacity: 1; transition: none;}
body.gvn-elementor-native .elementor .e-con.fade-up{opacity: 1; transform: none; transition: none;}}
@media (max-width: 1024px){body.gvn-elementor-native .elementor .e-con.services-grid{grid-template-columns: repeat(2, 1fr);}
body.gvn-elementor-native .elementor .e-con.about-cols{grid-template-columns: repeat(2, 1fr);}}
@media (max-width: 768px){body.gvn-elementor-native .elementor .e-con.hero{height: clamp(360px, 55vh, 560px); padding-bottom: 40px;}
body.gvn-elementor-native .elementor .e-con.section{padding: 56px 20px;}
body.gvn-elementor-native .elementor .e-con.services-grid{grid-template-columns: 1fr;}
body.gvn-elementor-native .elementor .e-con.about-cols{grid-template-columns: 1fr;}
body.gvn-elementor-native .elementor .e-con.news-grid{grid-template-columns: 1fr;}
body.gvn-elementor-native .elementor .stats-inner{flex-wrap: wrap;}
body.gvn-elementor-native .elementor .stat{min-width: 45%; border-right: none; border-bottom: 1px solid rgba(255,255,255,.12);}
body.gvn-elementor-native .elementor .stat:last-child{border-bottom: none;}
body.gvn-elementor-native .elementor .nutzen-grid{grid-template-columns: repeat(2, 1fr);}}
body.gvn-elementor-native .elementor .e-con.hero-slide--bright .hero-slide-bg{filter:brightness(1.14)}
body.gvn-elementor-native .elementor .e-con.hero-slide--bright::before{background:linear-gradient(105deg,rgba(8,22,50,.56) 0%,rgba(10,28,60,.42) 28%,rgba(10,28,60,.20) 55%,rgba(10,28,60,0) 100%)}
body.gvn-elementor-native .elementor .scard-img--contain{object-fit:contain;background:#f7f7f7;padding:8px}
body.gvn-elementor-native .elementor .scard-img--coming{object-fit:cover!important;object-position:center!important;background:#f7f7f7;padding:0!important}
body.gvn-elementor-native .elementor .scard-links span{font-size:13px;color:var(--text);line-height:1.45;font-weight:600}
