2025-06-06 18:12:46 +02:00
|
|
|
|
{{ define "main" }}
|
2025-07-24 00:06:23 +02:00
|
|
|
|
<header id="mainHeader">
|
2025-06-06 18:12:46 +02:00
|
|
|
|
{{ with .Params.banner }}
|
2025-07-30 00:35:15 +02:00
|
|
|
|
{{ if .enable }}
|
|
|
|
|
|
<!-- HERO / SLIDER -->
|
2025-07-31 01:33:44 +02:00
|
|
|
|
<section id="hero" class="slider {{ if .bg_overlay }}overly{{ end }} gif-background"
|
|
|
|
|
|
style="min-height: 100vh; display: flex; align-items: center; justify-content: center; position: relative;">
|
2025-07-30 00:35:15 +02:00
|
|
|
|
<div class="my-container" style="position: relative; z-index: 2;">
|
|
|
|
|
|
|
2025-08-04 19:03:47 +02:00
|
|
|
|
<!-- Logo-Zeile mit zwei Frames -->
|
2025-07-30 00:35:15 +02:00
|
|
|
|
<div class="logo-container">
|
|
|
|
|
|
<div class="frame1">
|
|
|
|
|
|
<img src="{{ .logo_image1 | relURL }}" alt="Logo Frame 1" class="banner-logo">
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div class="frame2">
|
|
|
|
|
|
<img src="{{ .logo_image2 | relURL }}" alt="Logo Frame 2" class="banner-logo">
|
|
|
|
|
|
</div>
|
|
|
|
|
|
</div>
|
2025-06-06 18:12:46 +02:00
|
|
|
|
|
2025-08-04 19:03:47 +02:00
|
|
|
|
<!-- Haupttitel + Button -->
|
2025-08-02 01:31:47 +02:00
|
|
|
|
<div class="hero-section" style="margin-top: 10rem;">
|
2025-07-30 00:35:15 +02:00
|
|
|
|
{{ with .title }}
|
2025-08-01 21:09:17 +02:00
|
|
|
|
<h1 class="hero-title fade-in-title">{{ . | markdownify }}</h1>
|
2025-07-30 00:35:15 +02:00
|
|
|
|
{{ end }}
|
|
|
|
|
|
{{ with .button }}
|
|
|
|
|
|
{{ if .enable }}
|
|
|
|
|
|
<div class="scrolldown" onclick="document.getElementById('service').scrollIntoView({ behavior: 'smooth' });"
|
|
|
|
|
|
style="--color: rgb(0, 0, 0); cursor: pointer;">
|
|
|
|
|
|
<div class="chevrons">
|
|
|
|
|
|
<div class='chevrondown'></div>
|
|
|
|
|
|
<div class='chevrondown'></div>
|
2025-06-06 18:12:46 +02:00
|
|
|
|
</div>
|
|
|
|
|
|
</div>
|
2025-07-30 00:35:15 +02:00
|
|
|
|
{{ end }}
|
|
|
|
|
|
{{ end }}
|
|
|
|
|
|
</div>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
</section>
|
|
|
|
|
|
{{ end }}
|
2025-06-06 18:12:46 +02:00
|
|
|
|
{{ end }}
|
|
|
|
|
|
</header>
|
|
|
|
|
|
|
2025-07-30 00:35:15 +02:00
|
|
|
|
<!-- Scroll/Hide Header -->
|
2025-06-06 18:12:46 +02:00
|
|
|
|
<script>
|
2025-07-31 01:33:44 +02:00
|
|
|
|
document.addEventListener('DOMContentLoaded', function () {
|
|
|
|
|
|
const hero = document.getElementById('hero');
|
2025-08-04 19:03:47 +02:00
|
|
|
|
const targetSection = document.getElementById('leistungen-fokusthemen');
|
2025-07-31 01:33:44 +02:00
|
|
|
|
const scrolldown = document.querySelector('.scrolldown');
|
|
|
|
|
|
const header = document.getElementById('mainHeader');
|
|
|
|
|
|
let lastScroll = window.scrollY;
|
2025-08-01 21:22:27 +02:00
|
|
|
|
let autoScrollDone = false;
|
|
|
|
|
|
let isAutoScrolling = false;
|
2025-07-31 01:33:44 +02:00
|
|
|
|
const offset = 120;
|
|
|
|
|
|
|
|
|
|
|
|
function scrollToTarget() {
|
2025-08-01 21:22:27 +02:00
|
|
|
|
if (!targetSection || isAutoScrolling) return;
|
|
|
|
|
|
|
|
|
|
|
|
isAutoScrolling = true;
|
2025-07-31 01:33:44 +02:00
|
|
|
|
const y = targetSection.getBoundingClientRect().top + window.pageYOffset - offset;
|
2025-08-01 21:22:27 +02:00
|
|
|
|
|
2025-07-31 01:33:44 +02:00
|
|
|
|
window.scrollTo({ top: y, behavior: 'smooth' });
|
2025-08-01 21:22:27 +02:00
|
|
|
|
|
|
|
|
|
|
setTimeout(() => {
|
|
|
|
|
|
isAutoScrolling = false;
|
|
|
|
|
|
autoScrollDone = true;
|
|
|
|
|
|
}, 1000);
|
2025-07-31 01:33:44 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
2025-08-04 19:03:47 +02:00
|
|
|
|
// Click handler für Scrolldown
|
2025-08-01 21:22:27 +02:00
|
|
|
|
scrolldown?.addEventListener('click', (e) => {
|
|
|
|
|
|
e.preventDefault();
|
|
|
|
|
|
e.stopPropagation();
|
2025-07-31 01:33:44 +02:00
|
|
|
|
scrollToTarget();
|
|
|
|
|
|
});
|
2025-07-24 00:06:23 +02:00
|
|
|
|
|
2025-08-04 19:03:47 +02:00
|
|
|
|
// Wheel handler für Auto-Scroll am Ende der Hero-Section
|
2025-08-01 21:22:27 +02:00
|
|
|
|
let wheelTimeout;
|
2025-07-31 01:33:44 +02:00
|
|
|
|
window.addEventListener('wheel', function (e) {
|
2025-08-01 21:22:27 +02:00
|
|
|
|
if (autoScrollDone || isAutoScrolling || e.deltaY <= 0 || !hero || !targetSection) return;
|
|
|
|
|
|
|
|
|
|
|
|
clearTimeout(wheelTimeout);
|
|
|
|
|
|
wheelTimeout = setTimeout(() => {
|
|
|
|
|
|
const heroBottom = hero.getBoundingClientRect().bottom;
|
|
|
|
|
|
const threshold = 50;
|
|
|
|
|
|
|
|
|
|
|
|
if (heroBottom <= window.innerHeight + threshold && heroBottom > 0) {
|
|
|
|
|
|
scrollToTarget();
|
|
|
|
|
|
}
|
|
|
|
|
|
}, 50);
|
2025-07-31 01:33:44 +02:00
|
|
|
|
}, { passive: true });
|
|
|
|
|
|
|
2025-08-04 19:03:47 +02:00
|
|
|
|
// Scroll handler für Header und Chevron
|
2025-08-01 21:22:27 +02:00
|
|
|
|
let scrollTimeout;
|
2025-07-31 01:33:44 +02:00
|
|
|
|
window.addEventListener('scroll', function () {
|
2025-08-01 21:22:27 +02:00
|
|
|
|
clearTimeout(scrollTimeout);
|
|
|
|
|
|
scrollTimeout = setTimeout(() => {
|
|
|
|
|
|
// Chevron ausblenden
|
|
|
|
|
|
if (window.scrollY > 100) {
|
|
|
|
|
|
scrolldown?.classList.add('hide');
|
|
|
|
|
|
} else {
|
|
|
|
|
|
scrolldown?.classList.remove('hide');
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// Header verstecken beim Runterscrollen
|
|
|
|
|
|
const currentScroll = window.scrollY;
|
|
|
|
|
|
if (!isAutoScrolling) {
|
|
|
|
|
|
header.style.top = (currentScroll > lastScroll && currentScroll > 100) ? '-100vh' : '0';
|
|
|
|
|
|
if (currentScroll === 0) header.style.top = '0';
|
|
|
|
|
|
lastScroll = currentScroll;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2025-08-04 19:03:47 +02:00
|
|
|
|
// Reset Auto-Scroll wenn zurück im Hero
|
2025-08-01 21:22:27 +02:00
|
|
|
|
const heroTop = hero.getBoundingClientRect().top;
|
|
|
|
|
|
const heroBottom = hero.getBoundingClientRect().bottom;
|
|
|
|
|
|
|
|
|
|
|
|
if (heroTop >= -10 && heroBottom > window.innerHeight * 0.8) {
|
|
|
|
|
|
autoScrollDone = false;
|
|
|
|
|
|
}
|
|
|
|
|
|
}, 10);
|
|
|
|
|
|
});
|
|
|
|
|
|
|
2025-08-04 19:03:47 +02:00
|
|
|
|
// Reset beim Seitenwechsel
|
2025-08-01 21:22:27 +02:00
|
|
|
|
window.addEventListener('beforeunload', () => {
|
|
|
|
|
|
window.scrollTo(0, 0);
|
2025-07-24 00:06:23 +02:00
|
|
|
|
});
|
2025-07-31 01:33:44 +02:00
|
|
|
|
});
|
2025-07-24 00:06:23 +02:00
|
|
|
|
</script>
|
|
|
|
|
|
|
2025-08-04 19:03:47 +02:00
|
|
|
|
<!-- KOMBINIERTE SECTION: Leistungen & Fokusthemen -->
|
|
|
|
|
|
<section id="leistungen-fokusthemen" class="section combined-services">
|
|
|
|
|
|
<div class="my-container">
|
|
|
|
|
|
{{ partial "section-grid.html" (dict "page" "/service" "type" "zoom" "hideSection" true) }}
|
|
|
|
|
|
<div style="margin-top: 5rem;"></div>
|
|
|
|
|
|
{{ partial "section-grid.html" (dict "page" "/focustopic" "type" "zoom" "hideSection" true) }}
|
|
|
|
|
|
</div>
|
2025-06-06 18:12:46 +02:00
|
|
|
|
</section>
|
2025-07-23 16:46:21 +02:00
|
|
|
|
|
2025-08-04 19:03:47 +02:00
|
|
|
|
<!-- DARUM AMPERION -->
|
|
|
|
|
|
<section class="whyamperion section" style="background-color:#f3f3f3;">
|
2025-07-31 13:48:18 +02:00
|
|
|
|
<div class="container my-container">
|
2025-07-23 16:46:21 +02:00
|
|
|
|
|
2025-07-31 01:33:44 +02:00
|
|
|
|
<!-- Titelblock -->
|
2025-07-30 00:35:15 +02:00
|
|
|
|
<div class="row">
|
2025-08-04 19:03:47 +02:00
|
|
|
|
<div class="text-center" data-aos="fade-up" data-aos-delay="100">
|
2025-07-30 00:35:15 +02:00
|
|
|
|
<h1>Darum AMPERION</h1>
|
2025-07-31 01:33:44 +02:00
|
|
|
|
<h2><em>Kompetenz, auf die Sie bauen können – von der Idee bis zur Inbetriebnahme.</em></h2>
|
2025-07-30 00:35:15 +02:00
|
|
|
|
</div>
|
2025-07-23 16:46:21 +02:00
|
|
|
|
</div>
|
2025-06-06 18:12:46 +02:00
|
|
|
|
|
2025-07-30 00:35:15 +02:00
|
|
|
|
<!-- Karten -->
|
2025-07-31 01:33:44 +02:00
|
|
|
|
<div class="why-grid mt-5">
|
2025-08-04 19:03:47 +02:00
|
|
|
|
{{ $delay := 0 }}
|
|
|
|
|
|
{{ $delayStep := 100 }}
|
|
|
|
|
|
|
|
|
|
|
|
<article class="service-card text-center" data-aos="zoom-in" data-aos-delay="{{ $delay = add $delay $delayStep }}">
|
2025-07-31 01:33:44 +02:00
|
|
|
|
<img src="icons/file-badge.svg" alt="Technische Planungskompetenz Icon" class="service-icon mb-3">
|
|
|
|
|
|
<h3 class="service-card-title">Technische Planungskompetenz</h3>
|
|
|
|
|
|
<p class="service-card-description">
|
|
|
|
|
|
<strong>Langjährige Erfahrung mit komplexer Energieplanung –</strong> normgerecht, effizient & zukunftssicher.
|
|
|
|
|
|
</p>
|
|
|
|
|
|
</article>
|
|
|
|
|
|
|
2025-08-04 19:03:47 +02:00
|
|
|
|
<article class="service-card text-center" data-aos="zoom-in" data-aos-delay="{{ $delay = add $delay $delayStep }}">
|
2025-07-31 01:33:44 +02:00
|
|
|
|
<img src="icons/plug-zap.svg" alt="Intelligente Energiesysteme Icon" class="service-icon mb-3">
|
|
|
|
|
|
<h3 class="service-card-title">Intelligente Energiesysteme</h3>
|
|
|
|
|
|
<p class="service-card-description">
|
|
|
|
|
|
<strong>Von PV bis Speicher und Lastmanagement –</strong> für maximale Eigenversorgung und Netzverträglichkeit.
|
|
|
|
|
|
</p>
|
|
|
|
|
|
</article>
|
|
|
|
|
|
|
2025-08-04 19:03:47 +02:00
|
|
|
|
<article class="service-card text-center" data-aos="zoom-in" data-aos-delay="{{ $delay = add $delay $delayStep }}">
|
2025-07-31 01:33:44 +02:00
|
|
|
|
<img src="icons/headset.svg" alt="Persönliche Betreuung Icon" class="service-icon mb-3">
|
|
|
|
|
|
<h3 class="service-card-title">Persönliche Betreuung</h3>
|
|
|
|
|
|
<p class="service-card-description">
|
|
|
|
|
|
<strong>Kurze Wege, schnelle Antworten –</strong> direkte Ansprechpartner, auch nach Projektabschluss.
|
|
|
|
|
|
</p>
|
|
|
|
|
|
</article>
|
|
|
|
|
|
|
2025-08-04 19:03:47 +02:00
|
|
|
|
<article class="service-card text-center" data-aos="zoom-in" data-aos-delay="{{ $delay = add $delay $delayStep }}">
|
2025-07-31 01:33:44 +02:00
|
|
|
|
<img src="icons/hard-hat.svg" alt="Reibungslose Projektabwicklung Icon" class="service-icon mb-3">
|
|
|
|
|
|
<h3 class="service-card-title">Reibungslose Projektabwicklung</h3>
|
|
|
|
|
|
<p class="service-card-description">
|
|
|
|
|
|
<strong>Wir übernehmen die technische Koordination –</strong> von Einreichung bis Ausschreibung.
|
|
|
|
|
|
</p>
|
|
|
|
|
|
</article>
|
|
|
|
|
|
|
2025-08-04 19:03:47 +02:00
|
|
|
|
<article class="service-card text-center" data-aos="zoom-in" data-aos-delay="{{ $delay = add $delay $delayStep }}">
|
2025-07-31 01:33:44 +02:00
|
|
|
|
<img src="icons/network.svg" alt="Vernetzte Energiezukunft Icon" class="service-icon mb-3">
|
|
|
|
|
|
<h3 class="service-card-title">Vernetzte Energiezukunft</h3>
|
|
|
|
|
|
<p class="service-card-description">
|
|
|
|
|
|
<strong>Wir denken Energie ganzheitlich –</strong> modular, digital und wachstumsfähig geplant.
|
|
|
|
|
|
</p>
|
|
|
|
|
|
</article>
|
|
|
|
|
|
|
2025-08-04 19:03:47 +02:00
|
|
|
|
<article class="service-card text-center" data-aos="zoom-in" data-aos-delay="{{ $delay = add $delay $delayStep }}">
|
2025-07-31 01:33:44 +02:00
|
|
|
|
<img src="icons/circuit-board.svg" alt="Präzise Systemplanung Icon" class="service-icon mb-3">
|
|
|
|
|
|
<h3 class="service-card-title">Präzise Systemplanung</h3>
|
|
|
|
|
|
<p class="service-card-description">
|
|
|
|
|
|
<strong>Alle Komponenten exakt abgestimmt –</strong> wirtschaftlich und regelkonform.
|
|
|
|
|
|
</p>
|
|
|
|
|
|
</article>
|
|
|
|
|
|
</div>
|
2025-07-30 00:35:15 +02:00
|
|
|
|
</div>
|
|
|
|
|
|
</section>
|
2025-07-23 16:46:21 +02:00
|
|
|
|
|
2025-08-04 19:03:47 +02:00
|
|
|
|
|
2025-07-31 01:33:44 +02:00
|
|
|
|
<!-- ÜBER AMPERION -->
|
2025-06-06 18:12:46 +02:00
|
|
|
|
{{ with .Params.about }}
|
|
|
|
|
|
{{ if .enable }}
|
2025-08-04 19:03:47 +02:00
|
|
|
|
<section id="about" class="about section">
|
2025-07-31 13:48:18 +02:00
|
|
|
|
<div class="container">
|
2025-08-04 19:03:47 +02:00
|
|
|
|
|
|
|
|
|
|
<!-- Titelbereich -->
|
2025-06-06 18:12:46 +02:00
|
|
|
|
<div class="row">
|
2025-08-04 19:03:47 +02:00
|
|
|
|
<div class="col-12 text-center" data-aos="fade-up" data-aos-delay="100">
|
2025-07-31 01:33:44 +02:00
|
|
|
|
<h1>Über AMPERION</h1>
|
2025-08-02 01:31:47 +02:00
|
|
|
|
{{ with .description }}<h2>{{ . | markdownify }}</h2>{{ end }}
|
2025-06-06 18:12:46 +02:00
|
|
|
|
</div>
|
|
|
|
|
|
</div>
|
2025-08-04 19:03:47 +02:00
|
|
|
|
|
|
|
|
|
|
<!-- Inhalt -->
|
2025-08-08 13:32:21 +02:00
|
|
|
|
<div class="row mt-4 d-flex align-items-stretch" style="min-height: 400px;">
|
2025-08-04 19:03:47 +02:00
|
|
|
|
|
|
|
|
|
|
<!-- Textbereich -->
|
2025-08-08 13:32:21 +02:00
|
|
|
|
<div class="col-md-7 col-sm-12 d-flex h-100" data-aos="fade-right" data-aos-delay="200">
|
|
|
|
|
|
<div class="text-left w-100 my-auto"> <!-- vertikal zentriert -->
|
2025-07-30 00:35:15 +02:00
|
|
|
|
{{ with .content }}{{ . | markdownify }}{{ end }}
|
|
|
|
|
|
</div>
|
2025-06-06 18:12:46 +02:00
|
|
|
|
</div>
|
2025-08-04 19:03:47 +02:00
|
|
|
|
|
|
|
|
|
|
<!-- Bildbereich -->
|
2025-08-08 13:32:21 +02:00
|
|
|
|
<div class="col-md-5 col-sm-12 d-flex h-100" data-aos="zoom-in" data-aos-delay="300">
|
|
|
|
|
|
<div class="w-100 d-flex align-items-end" style="padding-top: 30px;"> <!-- Bild etwas nach unten -->
|
|
|
|
|
|
<img src="{{ .image | relURL }}" class="custom-image" alt="Über AMPERION Bild"
|
|
|
|
|
|
style="width: 100%; height: auto; object-fit: contain;">
|
2025-06-06 18:12:46 +02:00
|
|
|
|
</div>
|
|
|
|
|
|
</div>
|
2025-08-04 19:03:47 +02:00
|
|
|
|
|
2025-06-06 18:12:46 +02:00
|
|
|
|
</div>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
</section>
|
|
|
|
|
|
{{ end }}
|
|
|
|
|
|
{{ end }}
|
|
|
|
|
|
|
2025-07-31 01:33:44 +02:00
|
|
|
|
|
2025-08-08 13:32:21 +02:00
|
|
|
|
|
|
|
|
|
|
|
2025-07-30 00:35:15 +02:00
|
|
|
|
<!-- CALL TO ACTION -->
|
2025-06-06 18:12:46 +02:00
|
|
|
|
{{ if .Params.cta.enable }}
|
|
|
|
|
|
{{ partial "cta.html" . }}
|
|
|
|
|
|
{{ end }}
|
2025-07-30 00:35:15 +02:00
|
|
|
|
|
|
|
|
|
|
<!-- FACTS -->
|
2025-06-06 18:12:46 +02:00
|
|
|
|
{{ with .Params.facts }}
|
|
|
|
|
|
{{ if .enable }}
|
2025-08-04 19:03:47 +02:00
|
|
|
|
<section class="facts section">
|
2025-06-06 18:12:46 +02:00
|
|
|
|
<div class="container">
|
|
|
|
|
|
<div class="row">
|
|
|
|
|
|
{{ range .fact_item }}
|
|
|
|
|
|
<div class="col-md-6">
|
|
|
|
|
|
<div class="fact-item text-center">
|
|
|
|
|
|
<img src="{{ .image | relURL }}" alt="{{ .name }}" class="fact-image">
|
|
|
|
|
|
</div>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
{{ end }}
|
|
|
|
|
|
</div>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
</section>
|
|
|
|
|
|
{{ end }}
|
|
|
|
|
|
{{ end }}
|
2025-08-04 19:03:47 +02:00
|
|
|
|
{{ end }}
|