-
+
{title || 'Aktuelle Stellenangebote'}
-
+
{jobs.length > 0 ? (
-
+
{jobs.map((job: any) => (
-
-
-
-
{job.type}
-
{job.department}
+
+
+
+
+ {job.type}
+ {job.department}
+
+
{job.title}
+
{job.location}
- {job.title}
- {job.location}
-
-
-
+
+
+
))}
-
+
) : (
-
+
{emptyStateMessage}
{emptyStateLinkText}
-
+
)}
)}
diff --git a/components/blocks/SupportCTA.tsx b/components/blocks/SupportCTA.tsx
index f90d8ccf9..2a6a2f2a9 100644
--- a/components/blocks/SupportCTA.tsx
+++ b/components/blocks/SupportCTA.tsx
@@ -1,6 +1,9 @@
+'use client';
+
import React from 'react';
import TrackedLink from '@/components/analytics/TrackedLink';
import { getButtonClasses, ButtonOverlay } from '@/components/ui/Button';
+import { motion } from 'framer-motion';
export interface SupportCTAProps {
title: string;
@@ -9,31 +12,62 @@ export interface SupportCTAProps {
buttonHref: string;
}
+const containerVariants = {
+ hidden: { opacity: 0, y: 30 },
+ visible: {
+ opacity: 1,
+ y: 0,
+ transition: {
+ duration: 0.8,
+ ease: [0.16, 1, 0.3, 1],
+ staggerChildren: 0.15,
+ delayChildren: 0.1,
+ },
+ },
+};
+
+const itemVariants = {
+ hidden: { opacity: 0, y: 20 },
+ visible: {
+ opacity: 1,
+ y: 0,
+ transition: { duration: 0.6, ease: [0.16, 1, 0.3, 1] },
+ },
+};
+
export const SupportCTA: React.FC
= (props) => {
const { title, description, buttonLabel, buttonHref } = props;
return (
-
-
+
+
-
{title}
-
{description}
-
-
- {buttonLabel}
-
- →
+ {title}
+ {description}
+
+
+
+ {buttonLabel}
+
+ →
+
-
-
-
+
+
+
-
+
);
};
diff --git a/components/blocks/TeamGrid.tsx b/components/blocks/TeamGrid.tsx
index 07343dae3..e43a6dae8 100644
--- a/components/blocks/TeamGrid.tsx
+++ b/components/blocks/TeamGrid.tsx
@@ -3,6 +3,7 @@
import * as React from 'react';
import { motion } from 'framer-motion';
import Image from 'next/image';
+import { HoverShineOverlay } from '@/components/ui/HoverShineOverlay';
export interface TeamMember {
id: string;
@@ -25,12 +26,12 @@ export function TeamGrid({ members }: TeamGridProps) {
if (!members || members.length === 0) return null;
return (
-
-
+
+
Persönliche Beratung
Ihre Ansprechpartner
-
+
Sprechen Sie direkt mit unseren Experten für Ihr regionales Projekt.
@@ -39,48 +40,60 @@ export function TeamGrid({ members }: TeamGridProps) {
{members.map((member, i) => (
-
-
- {member.image && typeof member.image === 'object' && member.image.url ? (
-
- ) : (
-
+
+
+
+
+
+ {member.image && typeof member.image === 'object' && member.image.url ? (
+
+ ) : (
+
+ )}
+
+
+
{member.name}
+
{member.position}
+
+ {member.branch === 'e-tib' ? 'E-TIB GmbH' : member.branch === 'ing' ? 'Ingenieurgesellschaft' : 'Bohrtechnik'}
+
+
+
+
+
-
-
{member.name}
-
{member.position}
-
{member.branch === 'e-tib' ? 'E-TIB GmbH' : member.branch === 'ing' ? 'Ingenieurgesellschaft' : 'Bohrtechnik'}
-
-
-
-
))}
diff --git a/content/de/home.mdx b/content/de/home.mdx
index 29730d47a..c3a3c552b 100644
--- a/content/de/home.mdx
+++ b/content/de/home.mdx
@@ -179,25 +179,3 @@ description: Willkommen bei E-TIB GmbH
]}
/>
-
diff --git a/content/de/ueber-uns.mdx b/content/de/ueber-uns.mdx
index 85f0138b4..c420851c4 100644
--- a/content/de/ueber-uns.mdx
+++ b/content/de/ueber-uns.mdx
@@ -1,5 +1,5 @@
---
-title: "Über E-TIB"
+title: "Über uns"
date: "2024-03-20"
excerpt: "Die E-TIB Gruppe ist Ihr kompetenter Partner für Kabeltiefbau, Bohrtechnik und Ingenieurdienstleistungen."
layout: "fullBleed"