1484 lines
49 KiB
HTML
1484 lines
49 KiB
HTML
<!doctype html>
|
||
<html lang="de">
|
||
<head>
|
||
<meta charset="utf-8" />
|
||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||
<meta
|
||
name="description"
|
||
content="Ernährungsberatung bei Tri-hub: Essen, Trinken und Energiemanagement für deinen Triathlon ab 50."
|
||
/>
|
||
<title>Ernährung · Tri-hub</title>
|
||
|
||
<!-- Bestehende Tri-hub CSS als Basis -->
|
||
<link rel="stylesheet" href="styles.css" />
|
||
|
||
<!-- Neue Typografie für diese Unterseite -->
|
||
<link rel="preconnect" href="https://fonts.googleapis.com" />
|
||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
|
||
<link
|
||
href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Playfair+Display:wght@500;600;700&display=swap"
|
||
rel="stylesheet"
|
||
/>
|
||
|
||
<style>
|
||
:root {
|
||
--page-bg: #0d0d1a;
|
||
--page-bg-2: #1a1a2e;
|
||
--green: #10b981;
|
||
--green-dark: #059669;
|
||
--white: #ffffff;
|
||
--light: #f8fafc;
|
||
--muted: #94a3b8;
|
||
--line: rgba(248, 250, 252, 0.12);
|
||
--panel: rgba(255, 255, 255, 0.045);
|
||
--panel-strong: rgba(255, 255, 255, 0.065);
|
||
--max: 1180px;
|
||
}
|
||
|
||
* {
|
||
box-sizing: border-box;
|
||
}
|
||
|
||
html {
|
||
scroll-behavior: smooth;
|
||
}
|
||
|
||
body {
|
||
margin: 0;
|
||
min-width: 320px;
|
||
color: var(--light);
|
||
background:
|
||
radial-gradient(
|
||
circle at 12% 0%,
|
||
rgba(16, 185, 129, 0.09),
|
||
transparent 30%
|
||
),
|
||
radial-gradient(
|
||
circle at 88% 26%,
|
||
rgba(16, 185, 129, 0.055),
|
||
transparent 27%
|
||
),
|
||
linear-gradient(145deg, var(--page-bg), var(--page-bg-2));
|
||
font-family:
|
||
Inter,
|
||
system-ui,
|
||
-apple-system,
|
||
BlinkMacSystemFont,
|
||
"Segoe UI",
|
||
sans-serif;
|
||
line-height: 1.6;
|
||
}
|
||
|
||
a {
|
||
color: inherit;
|
||
text-decoration: none;
|
||
}
|
||
|
||
h1,
|
||
h2,
|
||
h3 {
|
||
margin: 0;
|
||
font-family: "Playfair Display", Georgia, sans-serif;
|
||
font-weight: 600;
|
||
letter-spacing: -0.025em;
|
||
line-height: 1.05;
|
||
}
|
||
|
||
p {
|
||
margin: 0;
|
||
}
|
||
|
||
.site-header {
|
||
position: sticky;
|
||
top: 0;
|
||
z-index: 50;
|
||
border-bottom: 1px solid rgba(248, 250, 252, 0.08);
|
||
background: rgba(13, 13, 26, 0.84);
|
||
backdrop-filter: blur(18px);
|
||
-webkit-backdrop-filter: blur(18px);
|
||
}
|
||
|
||
.nav {
|
||
width: min(var(--max), calc(100% - 40px));
|
||
min-height: 76px;
|
||
margin: 0 auto;
|
||
display: flex;
|
||
align-items: center;
|
||
justify-content: space-between;
|
||
gap: 28px;
|
||
}
|
||
|
||
.brand {
|
||
display: inline-flex;
|
||
align-items: center;
|
||
font-size: 1.3rem;
|
||
font-weight: 700;
|
||
letter-spacing: -0.04em;
|
||
}
|
||
|
||
.brand span {
|
||
color: var(--green);
|
||
}
|
||
|
||
.nav-links {
|
||
display: flex;
|
||
align-items: center;
|
||
gap: 26px;
|
||
color: var(--muted);
|
||
font-size: 0.9rem;
|
||
font-weight: 500;
|
||
}
|
||
|
||
.nav-links a {
|
||
transition: color 0.2s ease;
|
||
}
|
||
|
||
.nav-links a:hover,
|
||
.nav-links a[aria-current="page"] {
|
||
color: var(--white);
|
||
}
|
||
|
||
.nav-cta {
|
||
padding: 11px 16px;
|
||
border: 1px solid rgba(16, 185, 129, 0.42);
|
||
border-radius: 999px;
|
||
color: var(--white) !important;
|
||
background: rgba(16, 185, 129, 0.07);
|
||
}
|
||
|
||
.nav-cta:hover {
|
||
background: rgba(16, 185, 129, 0.14);
|
||
}
|
||
|
||
/* ===== Navigationsleiste ===== */
|
||
.skip-link {
|
||
position: absolute;
|
||
top: -100px;
|
||
left: 16px;
|
||
z-index: 100;
|
||
padding: 10px 16px;
|
||
border-radius: 8px;
|
||
background: var(--green);
|
||
color: #04150e;
|
||
font-weight: 700;
|
||
}
|
||
|
||
.skip-link:focus {
|
||
top: 12px;
|
||
}
|
||
|
||
.navbar {
|
||
position: sticky;
|
||
top: 0;
|
||
z-index: 50;
|
||
border-bottom: 1px solid rgba(248, 250, 252, 0.08);
|
||
background: rgba(13, 13, 26, 0.84);
|
||
backdrop-filter: blur(18px);
|
||
-webkit-backdrop-filter: blur(18px);
|
||
}
|
||
|
||
.navbar__inner {
|
||
position: relative;
|
||
width: min(var(--max), calc(100% - 40px));
|
||
min-height: 76px;
|
||
margin: 0 auto;
|
||
display: flex;
|
||
align-items: center;
|
||
justify-content: space-between;
|
||
gap: 24px;
|
||
}
|
||
|
||
.navbar__brand {
|
||
display: flex;
|
||
align-items: center;
|
||
gap: 12px;
|
||
min-width: 0;
|
||
}
|
||
|
||
.navbar__logo-img {
|
||
width: 40px;
|
||
height: 40px;
|
||
flex: none;
|
||
object-fit: contain;
|
||
}
|
||
|
||
.navbar__brand-text {
|
||
display: flex;
|
||
flex-direction: column;
|
||
line-height: 1.2;
|
||
}
|
||
|
||
.navbar__brand-title {
|
||
color: var(--white);
|
||
font-size: 1.15rem;
|
||
font-weight: 700;
|
||
letter-spacing: 0.04em;
|
||
}
|
||
|
||
.navbar__brand-tagline {
|
||
color: var(--muted);
|
||
font-size: 0.72rem;
|
||
}
|
||
|
||
.navbar__toggle {
|
||
display: none;
|
||
width: 44px;
|
||
height: 44px;
|
||
padding: 0;
|
||
border: 1px solid var(--line);
|
||
border-radius: 10px;
|
||
background: transparent;
|
||
color: var(--white);
|
||
cursor: pointer;
|
||
align-items: center;
|
||
justify-content: center;
|
||
}
|
||
|
||
.navbar__toggle-icon,
|
||
.navbar__toggle-icon::before,
|
||
.navbar__toggle-icon::after {
|
||
display: block;
|
||
width: 20px;
|
||
height: 2px;
|
||
border-radius: 2px;
|
||
background: currentColor;
|
||
transition:
|
||
transform 0.2s ease,
|
||
opacity 0.2s ease;
|
||
}
|
||
|
||
.navbar__toggle-icon {
|
||
position: relative;
|
||
}
|
||
|
||
.navbar__toggle-icon::before,
|
||
.navbar__toggle-icon::after {
|
||
content: "";
|
||
position: absolute;
|
||
left: 0;
|
||
}
|
||
|
||
.navbar__toggle-icon::before {
|
||
top: -6px;
|
||
}
|
||
|
||
.navbar__toggle-icon::after {
|
||
top: 6px;
|
||
}
|
||
|
||
.navbar__toggle[aria-expanded="true"] .navbar__toggle-icon {
|
||
background: transparent;
|
||
}
|
||
|
||
.navbar__toggle[aria-expanded="true"] .navbar__toggle-icon::before {
|
||
transform: translateY(6px) rotate(45deg);
|
||
}
|
||
|
||
.navbar__toggle[aria-expanded="true"] .navbar__toggle-icon::after {
|
||
transform: translateY(-6px) rotate(-45deg);
|
||
}
|
||
|
||
.navbar__menu {
|
||
display: flex;
|
||
align-items: center;
|
||
gap: 22px;
|
||
margin: 0;
|
||
padding: 0;
|
||
list-style: none;
|
||
color: var(--muted);
|
||
font-size: 0.9rem;
|
||
font-weight: 500;
|
||
}
|
||
|
||
.navbar__link {
|
||
display: inline-flex;
|
||
align-items: center;
|
||
gap: 6px;
|
||
transition: color 0.2s ease;
|
||
}
|
||
|
||
.navbar__link:hover,
|
||
.navbar__link[aria-current="page"] {
|
||
color: var(--white);
|
||
}
|
||
|
||
.navbar__link--home {
|
||
padding: 9px 14px;
|
||
border: 1px solid rgba(16, 185, 129, 0.42);
|
||
border-radius: 999px;
|
||
color: var(--white);
|
||
background: rgba(16, 185, 129, 0.07);
|
||
}
|
||
|
||
.navbar__link--home:hover {
|
||
background: rgba(16, 185, 129, 0.14);
|
||
}
|
||
|
||
.navbar__home-icon {
|
||
display: inline-flex;
|
||
width: 18px;
|
||
height: 18px;
|
||
}
|
||
|
||
.navbar__home-icon svg {
|
||
width: 100%;
|
||
height: 100%;
|
||
}
|
||
|
||
.navbar a:focus-visible,
|
||
.navbar__toggle:focus-visible {
|
||
outline: 2px solid var(--green);
|
||
outline-offset: 3px;
|
||
}
|
||
|
||
@media (max-width: 1024px) {
|
||
.navbar__toggle {
|
||
display: inline-flex;
|
||
}
|
||
|
||
.navbar__nav {
|
||
position: absolute;
|
||
top: 100%;
|
||
right: 0;
|
||
left: 0;
|
||
display: none;
|
||
padding: 12px 0 20px;
|
||
border-bottom: 1px solid var(--line);
|
||
background: rgba(13, 13, 26, 0.97);
|
||
}
|
||
|
||
.navbar__nav.is-open {
|
||
display: block;
|
||
}
|
||
|
||
.navbar__menu {
|
||
flex-direction: column;
|
||
align-items: stretch;
|
||
gap: 4px;
|
||
}
|
||
|
||
.navbar__link {
|
||
display: flex;
|
||
padding: 12px 4px;
|
||
font-size: 1rem;
|
||
}
|
||
|
||
.navbar__link--home {
|
||
justify-content: center;
|
||
margin-top: 8px;
|
||
}
|
||
}
|
||
|
||
@media (max-width: 600px) {
|
||
.navbar__inner {
|
||
width: min(var(--max), calc(100% - 28px));
|
||
min-height: 68px;
|
||
}
|
||
|
||
.navbar__brand-tagline {
|
||
display: none;
|
||
}
|
||
}
|
||
|
||
.container {
|
||
width: min(var(--max), calc(100% - 40px));
|
||
margin: 0 auto;
|
||
}
|
||
|
||
.eyebrow {
|
||
margin-bottom: 18px;
|
||
color: var(--green);
|
||
font-size: 0.72rem;
|
||
font-weight: 700;
|
||
letter-spacing: 0.18em;
|
||
text-transform: uppercase;
|
||
}
|
||
|
||
.hero {
|
||
padding: 92px 0 82px;
|
||
border-bottom: 1px solid var(--line);
|
||
}
|
||
|
||
.hero-grid {
|
||
display: grid;
|
||
grid-template-columns: minmax(0, 1.2fr) minmax(330px, 0.8fr);
|
||
gap: 64px;
|
||
align-items: center;
|
||
}
|
||
|
||
.hero h1 {
|
||
max-width: 820px;
|
||
font-size: clamp(3.2rem, 7vw, 6.4rem);
|
||
}
|
||
|
||
.hero h1 .accent {
|
||
color: var(--green);
|
||
}
|
||
|
||
.hero-lead {
|
||
max-width: 700px;
|
||
margin-top: 30px;
|
||
color: var(--muted);
|
||
font-size: clamp(1rem, 1.7vw, 1.18rem);
|
||
line-height: 1.8;
|
||
}
|
||
|
||
.hero-actions {
|
||
display: flex;
|
||
flex-wrap: wrap;
|
||
gap: 12px;
|
||
margin-top: 34px;
|
||
}
|
||
|
||
.button {
|
||
display: inline-flex;
|
||
min-height: 48px;
|
||
align-items: center;
|
||
justify-content: center;
|
||
padding: 0 20px;
|
||
border-radius: 999px;
|
||
border: 1px solid transparent;
|
||
font-size: 0.9rem;
|
||
font-weight: 700;
|
||
transition:
|
||
transform 0.2s ease,
|
||
background 0.2s ease,
|
||
border-color 0.2s ease;
|
||
}
|
||
|
||
.button:hover {
|
||
transform: translateY(-2px);
|
||
}
|
||
|
||
.button-primary {
|
||
color: #06130f;
|
||
background: var(--green);
|
||
box-shadow: 0 14px 32px rgba(16, 185, 129, 0.18);
|
||
}
|
||
|
||
.button-primary:hover {
|
||
background: #34d399;
|
||
}
|
||
|
||
.button-secondary {
|
||
color: var(--light);
|
||
border-color: rgba(148, 163, 184, 0.25);
|
||
background: rgba(255, 255, 255, 0.025);
|
||
}
|
||
|
||
.button-secondary:hover {
|
||
border-color: rgba(16, 185, 129, 0.55);
|
||
}
|
||
|
||
.hero-card {
|
||
position: relative;
|
||
min-height: 410px;
|
||
padding: 38px;
|
||
display: flex;
|
||
flex-direction: column;
|
||
justify-content: flex-end;
|
||
overflow: hidden;
|
||
border: 1px solid var(--line);
|
||
border-radius: 28px;
|
||
background:
|
||
radial-gradient(
|
||
circle at 72% 18%,
|
||
rgba(16, 185, 129, 0.2),
|
||
transparent 32%
|
||
),
|
||
linear-gradient(
|
||
145deg,
|
||
rgba(255, 255, 255, 0.075),
|
||
rgba(255, 255, 255, 0.025)
|
||
);
|
||
box-shadow: 0 28px 80px rgba(0, 0, 0, 0.28);
|
||
}
|
||
|
||
.hero-card::before {
|
||
content: "";
|
||
position: absolute;
|
||
width: 230px;
|
||
height: 230px;
|
||
right: -75px;
|
||
top: -75px;
|
||
border: 1px solid rgba(16, 185, 129, 0.24);
|
||
border-radius: 50%;
|
||
box-shadow:
|
||
0 0 0 34px rgba(16, 185, 129, 0.035),
|
||
0 0 0 68px rgba(16, 185, 129, 0.02);
|
||
}
|
||
|
||
.hero-card-mark {
|
||
position: absolute;
|
||
top: 42px;
|
||
left: 38px;
|
||
color: rgba(16, 185, 129, 0.88);
|
||
font-size: 4.5rem;
|
||
line-height: 1;
|
||
}
|
||
|
||
.hero-card h2 {
|
||
max-width: 420px;
|
||
font-size: clamp(2.2rem, 4vw, 3.5rem);
|
||
}
|
||
|
||
.hero-card p {
|
||
max-width: 440px;
|
||
margin-top: 18px;
|
||
color: var(--muted);
|
||
}
|
||
|
||
.section {
|
||
padding: 96px 0;
|
||
}
|
||
|
||
.section + .section {
|
||
border-top: 1px solid var(--line);
|
||
}
|
||
|
||
.section-heading {
|
||
display: grid;
|
||
grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
|
||
gap: 70px;
|
||
align-items: end;
|
||
margin-bottom: 48px;
|
||
}
|
||
|
||
.section-heading h2 {
|
||
font-size: clamp(2.4rem, 4.8vw, 4.5rem);
|
||
}
|
||
|
||
.section-intro {
|
||
max-width: 650px;
|
||
color: var(--muted);
|
||
line-height: 1.85;
|
||
}
|
||
|
||
.topic-grid {
|
||
display: grid;
|
||
grid-template-columns: repeat(3, 1fr);
|
||
gap: 16px;
|
||
}
|
||
|
||
.topic {
|
||
min-height: 280px;
|
||
padding: 30px;
|
||
border: 1px solid var(--line);
|
||
border-radius: 22px;
|
||
background: var(--panel);
|
||
transition:
|
||
transform 0.2s ease,
|
||
border-color 0.2s ease,
|
||
background 0.2s ease;
|
||
}
|
||
|
||
.topic:hover {
|
||
transform: translateY(-4px);
|
||
border-color: rgba(16, 185, 129, 0.34);
|
||
background: var(--panel-strong);
|
||
}
|
||
|
||
.topic-number {
|
||
margin-bottom: 70px;
|
||
color: var(--green);
|
||
font-size: 0.75rem;
|
||
font-weight: 700;
|
||
letter-spacing: 0.14em;
|
||
}
|
||
|
||
.topic h3 {
|
||
font-size: 1.8rem;
|
||
}
|
||
|
||
.topic p {
|
||
margin-top: 14px;
|
||
color: var(--muted);
|
||
font-size: 0.95rem;
|
||
}
|
||
|
||
.knowledge {
|
||
display: grid;
|
||
grid-template-columns: 0.85fr 1.15fr;
|
||
gap: 64px;
|
||
align-items: start;
|
||
}
|
||
|
||
.knowledge h2 {
|
||
font-size: clamp(2.5rem, 5vw, 4.7rem);
|
||
}
|
||
|
||
.knowledge-copy {
|
||
color: var(--muted);
|
||
line-height: 1.85;
|
||
}
|
||
|
||
.knowledge-list {
|
||
margin-top: 28px;
|
||
padding: 0;
|
||
list-style: none;
|
||
border-top: 1px solid var(--line);
|
||
}
|
||
|
||
.knowledge-list li {
|
||
padding: 18px 0;
|
||
display: grid;
|
||
grid-template-columns: 32px 1fr;
|
||
gap: 14px;
|
||
border-bottom: 1px solid var(--line);
|
||
}
|
||
|
||
.knowledge-list strong {
|
||
color: var(--white);
|
||
}
|
||
.knowledge-list span {
|
||
color: var(--muted);
|
||
}
|
||
|
||
.dot {
|
||
width: 10px;
|
||
height: 10px;
|
||
margin-top: 7px;
|
||
border-radius: 50%;
|
||
background: var(--green);
|
||
box-shadow: 0 0 0 5px rgba(16, 185, 129, 0.08);
|
||
}
|
||
|
||
.review-section {
|
||
background: linear-gradient(
|
||
180deg,
|
||
rgba(255, 255, 255, 0.018),
|
||
rgba(255, 255, 255, 0.035)
|
||
);
|
||
}
|
||
|
||
.review-layout {
|
||
display: grid;
|
||
grid-template-columns: 0.82fr 1.18fr;
|
||
gap: 64px;
|
||
align-items: start;
|
||
}
|
||
|
||
.review-copy h2 {
|
||
font-size: clamp(2.6rem, 5vw, 4.8rem);
|
||
}
|
||
|
||
.review-copy p {
|
||
margin-top: 22px;
|
||
color: var(--muted);
|
||
line-height: 1.85;
|
||
}
|
||
|
||
.review-form,
|
||
.review-card {
|
||
border: 1px solid var(--line);
|
||
border-radius: 22px;
|
||
background: var(--panel);
|
||
}
|
||
|
||
.review-form {
|
||
padding: 30px;
|
||
}
|
||
|
||
.review-form h3 {
|
||
font-size: 2rem;
|
||
}
|
||
|
||
.form-intro {
|
||
margin-top: 10px;
|
||
color: var(--muted);
|
||
font-size: 0.9rem;
|
||
}
|
||
|
||
.field {
|
||
margin-top: 22px;
|
||
}
|
||
|
||
.field label {
|
||
display: block;
|
||
margin-bottom: 8px;
|
||
color: var(--light);
|
||
font-size: 0.84rem;
|
||
font-weight: 600;
|
||
}
|
||
|
||
input[type="text"],
|
||
textarea,
|
||
select {
|
||
width: 100%;
|
||
border: 1px solid rgba(148, 163, 184, 0.22);
|
||
border-radius: 12px;
|
||
outline: 0;
|
||
color: var(--white);
|
||
background: rgba(13, 13, 26, 0.78);
|
||
font: inherit;
|
||
transition:
|
||
border-color 0.2s ease,
|
||
box-shadow 0.2s ease;
|
||
}
|
||
|
||
input[type="text"],
|
||
select {
|
||
height: 48px;
|
||
padding: 0 14px;
|
||
}
|
||
|
||
textarea {
|
||
min-height: 125px;
|
||
padding: 13px 14px;
|
||
resize: vertical;
|
||
}
|
||
|
||
input::placeholder,
|
||
textarea::placeholder {
|
||
color: #64748b;
|
||
}
|
||
|
||
input:focus,
|
||
textarea:focus,
|
||
select:focus {
|
||
border-color: rgba(16, 185, 129, 0.75);
|
||
box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.1);
|
||
}
|
||
|
||
.rating-input {
|
||
display: flex;
|
||
flex-direction: row-reverse;
|
||
justify-content: flex-end;
|
||
gap: 3px;
|
||
}
|
||
|
||
.rating-input input {
|
||
position: absolute;
|
||
opacity: 0;
|
||
pointer-events: none;
|
||
}
|
||
|
||
.rating-input label {
|
||
margin: 0;
|
||
cursor: pointer;
|
||
color: #475569;
|
||
font-size: 1.7rem;
|
||
line-height: 1;
|
||
transition: color 0.15s ease;
|
||
}
|
||
|
||
.rating-input label:hover,
|
||
.rating-input label:hover ~ label,
|
||
.rating-input input:checked ~ label {
|
||
color: var(--green);
|
||
}
|
||
|
||
.consent {
|
||
margin-top: 18px;
|
||
display: flex;
|
||
gap: 10px;
|
||
align-items: flex-start;
|
||
color: var(--muted);
|
||
font-size: 0.78rem;
|
||
}
|
||
|
||
.consent input {
|
||
margin-top: 4px;
|
||
accent-color: var(--green);
|
||
}
|
||
|
||
.review-form .button {
|
||
width: 100%;
|
||
margin-top: 22px;
|
||
border: 0;
|
||
cursor: pointer;
|
||
}
|
||
|
||
.form-status {
|
||
min-height: 20px;
|
||
margin-top: 12px;
|
||
color: var(--green);
|
||
font-size: 0.8rem;
|
||
}
|
||
|
||
.review-list {
|
||
display: grid;
|
||
gap: 14px;
|
||
}
|
||
|
||
.review-card {
|
||
padding: 26px;
|
||
}
|
||
|
||
.review-top {
|
||
display: flex;
|
||
align-items: center;
|
||
justify-content: space-between;
|
||
gap: 18px;
|
||
}
|
||
|
||
.person {
|
||
display: flex;
|
||
align-items: center;
|
||
gap: 12px;
|
||
}
|
||
|
||
.avatar {
|
||
width: 42px;
|
||
height: 42px;
|
||
display: grid;
|
||
place-items: center;
|
||
flex: 0 0 auto;
|
||
border-radius: 50%;
|
||
color: #06130f;
|
||
background: var(--green);
|
||
font-size: 0.72rem;
|
||
font-weight: 800;
|
||
}
|
||
|
||
.person strong {
|
||
display: block;
|
||
color: var(--white);
|
||
font-size: 0.9rem;
|
||
}
|
||
|
||
.person small {
|
||
display: block;
|
||
margin-top: 2px;
|
||
color: var(--muted);
|
||
font-size: 0.72rem;
|
||
}
|
||
|
||
.stars {
|
||
color: var(--green);
|
||
letter-spacing: 0.08em;
|
||
white-space: nowrap;
|
||
}
|
||
|
||
.review-card blockquote {
|
||
margin: 22px 0 0;
|
||
color: var(--light);
|
||
font-family: "Playfair Display", Georgia, sans-serif;
|
||
font-size: 1.2rem;
|
||
line-height: 1.55;
|
||
}
|
||
|
||
.review-note {
|
||
padding: 20px 0 0;
|
||
color: var(--muted);
|
||
font-size: 0.82rem;
|
||
}
|
||
|
||
footer {
|
||
padding: 30px 0 44px;
|
||
border-top: 1px solid var(--line);
|
||
color: var(--muted);
|
||
font-size: 0.8rem;
|
||
}
|
||
|
||
footer .container {
|
||
display: flex;
|
||
justify-content: space-between;
|
||
gap: 20px;
|
||
}
|
||
|
||
footer strong {
|
||
color: var(--white);
|
||
}
|
||
|
||
@media (max-width: 900px) {
|
||
.nav-links a:not(.nav-cta) {
|
||
display: none;
|
||
}
|
||
|
||
.hero-grid,
|
||
.section-heading,
|
||
.knowledge,
|
||
.review-layout {
|
||
grid-template-columns: 1fr;
|
||
}
|
||
|
||
.hero-grid {
|
||
gap: 42px;
|
||
}
|
||
|
||
.topic-grid {
|
||
grid-template-columns: 1fr;
|
||
}
|
||
|
||
.section-heading {
|
||
gap: 22px;
|
||
}
|
||
|
||
.hero-card {
|
||
min-height: 330px;
|
||
}
|
||
}
|
||
|
||
@media (max-width: 600px) {
|
||
.container,
|
||
.nav {
|
||
width: min(var(--max), calc(100% - 28px));
|
||
}
|
||
|
||
.nav {
|
||
min-height: 68px;
|
||
}
|
||
|
||
.nav-cta {
|
||
padding: 9px 12px;
|
||
font-size: 0.78rem;
|
||
}
|
||
|
||
.hero {
|
||
padding: 64px 0;
|
||
}
|
||
|
||
.section {
|
||
padding: 68px 0;
|
||
}
|
||
|
||
.hero h1 {
|
||
font-size: clamp(2.9rem, 15vw, 4.3rem);
|
||
}
|
||
|
||
.hero-card,
|
||
.review-form,
|
||
.review-card,
|
||
.topic {
|
||
padding: 24px;
|
||
}
|
||
|
||
footer .container {
|
||
flex-direction: column;
|
||
}
|
||
}
|
||
</style>
|
||
</head>
|
||
|
||
<body>
|
||
<a href="#main-content" class="skip-link">Zum Hauptinhalt springen</a>
|
||
|
||
<header class="navbar" id="site-navbar">
|
||
<div class="navbar__inner">
|
||
<div class="navbar__brand">
|
||
<img
|
||
src="\src\components\navigationsbar\images\logo.png"
|
||
alt=""
|
||
class="navbar__logo-img"
|
||
/>
|
||
<span class="navbar__brand-text">
|
||
<span class="navbar__brand-title">TRI-HUB</span>
|
||
<span class="navbar__brand-tagline"
|
||
>Ernährungsberatung für Triathleten ab 50</span
|
||
>
|
||
</span>
|
||
</div>
|
||
|
||
<button
|
||
class="navbar__toggle"
|
||
type="button"
|
||
aria-controls="navbar-menu"
|
||
aria-expanded="false"
|
||
aria-label="Menü öffnen"
|
||
>
|
||
<span class="navbar__toggle-icon" aria-hidden="true"></span>
|
||
</button>
|
||
|
||
<nav class="navbar__nav" aria-label="Hauptnavigation">
|
||
<ul id="navbar-menu" class="navbar__menu">
|
||
<li>
|
||
<a
|
||
href="/angebotsuebersicht.html"
|
||
class="navbar__link"
|
||
>Pakete</a
|
||
>
|
||
</li>
|
||
<li>
|
||
<a href="#ernaehrung" class="navbar__link"
|
||
>Ernährung</a
|
||
>
|
||
</li>
|
||
<li>
|
||
<a href="/beraterprofil.html" class="navbar__link"
|
||
>Beraterprofil</a
|
||
>
|
||
</li>
|
||
<li>
|
||
<a href="/faq.html" class="navbar__link">FAQ</a>
|
||
</li>
|
||
<li>
|
||
<a href="/rezensionen.html" class="navbar__link"
|
||
>Rezensionen</a
|
||
>
|
||
</li>
|
||
<li>
|
||
<a href="/kontakt.html" class="navbar__link"
|
||
>Kontakt</a
|
||
>
|
||
</li>
|
||
<li>
|
||
<a
|
||
href="https://tri-hub.de/"
|
||
class="navbar__link navbar__link--home"
|
||
>
|
||
<span
|
||
class="navbar__home-icon"
|
||
aria-hidden="true"
|
||
>
|
||
<svg
|
||
viewBox="0 0 24 24"
|
||
fill="none"
|
||
xmlns="http://www.w3.org/2000/svg"
|
||
>
|
||
<path
|
||
d="M4 10L12 3L20 10V20a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V10Z M9 21V14H15V21"
|
||
stroke="currentColor"
|
||
stroke-linejoin="round"
|
||
stroke-linecap="round"
|
||
/>
|
||
</svg>
|
||
</span>
|
||
Startseite
|
||
</a>
|
||
</li>
|
||
</ul>
|
||
</nav>
|
||
</div>
|
||
</header>
|
||
|
||
<main id="main-content">
|
||
<!-- Hero: bewusst als Tri-hub-Unterseite gehalten -->
|
||
<section class="hero" id="ernaehrung">
|
||
<div class="container hero-grid">
|
||
<div>
|
||
<div class="eyebrow">TRI-HUB · ERNÄHRUNG</div>
|
||
|
||
<h1 style="font-family: "Inter", sans-serif">
|
||
Essen, Trinken<br />
|
||
und <span class="accent">Energie.</span>
|
||
</h1>
|
||
|
||
<p class="hero-lead">
|
||
Ernährung gehört zu deinem Training genauso wie
|
||
Schwimmen, Radfahren und Laufen. Hier findest du
|
||
Wissen und Orientierung rund um Sporternährung,
|
||
Hydration, Energieaufnahme und Magenmanagement –
|
||
passend zu deinem Triathlon ab 50.
|
||
</p>
|
||
|
||
<div class="hero-actions">
|
||
<a class="button button-primary" href="#wissen"
|
||
>Ernährungswissen entdecken</a
|
||
>
|
||
<a
|
||
class="button button-secondary"
|
||
href="#erfahrungen"
|
||
>Erfahrungen lesen</a
|
||
>
|
||
</div>
|
||
</div>
|
||
|
||
<aside
|
||
class="hero-card"
|
||
sans-serif="Themen der Ernährungsberatung"
|
||
>
|
||
<div>
|
||
<div class="eyebrow">ERNÄHRUNGSBERATUNG</div>
|
||
<h2
|
||
style="
|
||
font-family: "Inter", sans-serif;
|
||
"
|
||
>
|
||
Was funktioniert für dich?
|
||
</h2>
|
||
<p>
|
||
Keine komplizierten Regeln. Sondern Wissen, das
|
||
dir hilft, deine Ernährung rund um Training und
|
||
Wettkampf bewusster zu gestalten.
|
||
</p>
|
||
</div>
|
||
</aside>
|
||
</div>
|
||
</section>
|
||
|
||
<!-- Themen -->
|
||
<section class="section">
|
||
<div class="container">
|
||
<div class="section-heading">
|
||
<div>
|
||
<div class="eyebrow">TRI-HUB SPEKTRUM</div>
|
||
<h2
|
||
style="
|
||
font-family: "Inter", sans-serif;
|
||
"
|
||
>
|
||
Ernährung,<br />die mitdenkt.
|
||
</h2>
|
||
</div>
|
||
|
||
<p class="section-intro">
|
||
Die Ernährungsberatung ergänzt das Tri-hub-Angebot
|
||
um die Themen, die für Training und Wettkampf
|
||
besonders wichtig sind. Von den Grundlagen der
|
||
Sporternährung bis zur Frage, was dein Magen während
|
||
einer langen Einheit verträgt.
|
||
</p>
|
||
</div>
|
||
|
||
<div class="topic-grid">
|
||
<article class="topic">
|
||
<div class="topic-number">01 · SPORTERNÄHRUNG</div>
|
||
<h3
|
||
style="
|
||
font-family: "Inter", sans-serif;
|
||
"
|
||
>
|
||
Die Grundlagen
|
||
</h3>
|
||
<p>
|
||
Verstehe, welche Rolle deine Ernährung vor,
|
||
während und nach dem Training spielen kann.
|
||
</p>
|
||
</article>
|
||
|
||
<article class="topic">
|
||
<div class="topic-number">02 · HYDRATION</div>
|
||
<h3
|
||
style="
|
||
font-family: "Inter", sans-serif;
|
||
"
|
||
>
|
||
Trinken & Energie
|
||
</h3>
|
||
<p>
|
||
Orientierung rund um Flüssigkeit und
|
||
Energieaufnahme – besonders dann, wenn die
|
||
Belastung länger wird.
|
||
</p>
|
||
</article>
|
||
|
||
<article class="topic">
|
||
<div class="topic-number">03 · MAGENMANAGEMENT</div>
|
||
<h3
|
||
style="
|
||
font-family: "Inter", sans-serif;
|
||
"
|
||
>
|
||
Was verträgst du?
|
||
</h3>
|
||
<p>
|
||
Ernährung soll nicht nur auf dem Papier
|
||
funktionieren. Sie muss auch unter Belastung zu
|
||
dir passen.
|
||
</p>
|
||
</article>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
|
||
<!-- Wissen -->
|
||
<section class="section" id="wissen">
|
||
<div class="container knowledge">
|
||
<div>
|
||
<div class="eyebrow">FACHBEITRÄGE</div>
|
||
<h2 style="font-family: "Inter", sans-serif">
|
||
Wissen,<br />das dich<br />weiterbringt.
|
||
</h2>
|
||
</div>
|
||
|
||
<div>
|
||
<p class="knowledge-copy">
|
||
Rund um Ernährung gibt es viele Empfehlungen. Bei
|
||
Tri-hub geht es darum, daraus verständliche
|
||
Orientierung für deinen Sport und deinen Alltag zu
|
||
machen. Die Inhalte dieser Seite bauen auf dem
|
||
Ernährungsspektrum von Tri-hub auf.
|
||
</p>
|
||
|
||
<ul class="knowledge-list">
|
||
<li>
|
||
<span class="dot" aria-hidden="true"></span>
|
||
<div>
|
||
<strong>Sporternährung</strong><br />
|
||
<span
|
||
>Grundlagen für Training und
|
||
Wettkampf.</span
|
||
>
|
||
</div>
|
||
</li>
|
||
<li>
|
||
<span class="dot" aria-hidden="true"></span>
|
||
<div>
|
||
<strong>Hydration</strong><br />
|
||
<span
|
||
>Trinken und Flüssigkeitsversorgung im
|
||
Ausdauertraining.</span
|
||
>
|
||
</div>
|
||
</li>
|
||
<li>
|
||
<span class="dot" aria-hidden="true"></span>
|
||
<div>
|
||
<strong>Energieaufnahme</strong><br />
|
||
<span
|
||
>Wie du Energie rund um Belastung
|
||
bewusst planen kannst.</span
|
||
>
|
||
</div>
|
||
</li>
|
||
<li>
|
||
<span class="dot" aria-hidden="true"></span>
|
||
<div>
|
||
<strong>Magenmanagement</strong><br />
|
||
<span
|
||
>Verträglichkeit als Teil deiner
|
||
persönlichen Strategie.</span
|
||
>
|
||
</div>
|
||
</li>
|
||
</ul>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
|
||
<!-- User Story: Rezensionen -->
|
||
<section class="section review-section" id="erfahrungen">
|
||
<div class="container review-layout">
|
||
<div class="review-copy">
|
||
<div class="eyebrow">DEINE ERFAHRUNG</div>
|
||
<h2 style="font-family: "Inter", sans-serif">
|
||
Was hat dir<br />geholfen?
|
||
</h2>
|
||
<p>
|
||
Deine Erfahrung kann anderen helfen, das Angebot
|
||
besser kennenzulernen. Teile, was du aus der
|
||
Ernährungsberatung mitgenommen hast und was sich für
|
||
dich im Training bewährt hat.
|
||
</p>
|
||
|
||
<a
|
||
class="button button-secondary"
|
||
href="#bewertung"
|
||
style="margin-top: 28px"
|
||
>
|
||
Bewertung schreiben
|
||
</a>
|
||
</div>
|
||
|
||
<div class="review-list">
|
||
<!-- Diese Beispielkarten sind bewusst als Platzhalter gekennzeichnet. -->
|
||
<article class="review-card">
|
||
<div class="review-top">
|
||
<div class="person">
|
||
<div class="avatar">T</div>
|
||
<div>
|
||
<strong>Deine Erfahrung</strong>
|
||
<small
|
||
>Hier kann eine Kundenstimme
|
||
erscheinen</small
|
||
>
|
||
</div>
|
||
</div>
|
||
<div
|
||
class="stars"
|
||
aria-label="Beispiel für eine Sternebewertung"
|
||
>
|
||
★★★★★
|
||
</div>
|
||
</div>
|
||
|
||
<blockquote
|
||
style="
|
||
font-family: "Inter", sans-serif;
|
||
"
|
||
>
|
||
„Teile hier deine Erfahrung mit der
|
||
Ernährungsberatung – ehrlich, persönlich und so,
|
||
wie du sie erlebt hast.“
|
||
</blockquote>
|
||
</article>
|
||
|
||
<p class="review-note">
|
||
Hinweis: Die Bewertungen in dieser HTML-Demo werden
|
||
nicht dauerhaft gespeichert. Für den Live-Betrieb
|
||
sollte das Formular an das bestehende Backend oder
|
||
CMS von Tri-hub angebunden werden.
|
||
</p>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
|
||
<!-- Bewertungsformular -->
|
||
<section class="section" id="bewertung">
|
||
<div class="container">
|
||
<div class="section-heading">
|
||
<div>
|
||
<div class="eyebrow">REZENSION VERFASSEN</div>
|
||
<h2
|
||
style="
|
||
font-family: "Inter", sans-serif;
|
||
"
|
||
>
|
||
Deine Stimme<br />zählt.
|
||
</h2>
|
||
</div>
|
||
|
||
<p class="section-intro">
|
||
Erzähle anderen von deiner persönlichen Erfahrung
|
||
mit dem Ernährungsangebot. Kurz und ehrlich reicht
|
||
völlig.
|
||
</p>
|
||
</div>
|
||
|
||
<form class="review-form" id="reviewForm">
|
||
<div class="field" style="margin-top: 0">
|
||
<label for="name">Dein Name</label>
|
||
<input
|
||
id="name"
|
||
name="name"
|
||
type="text"
|
||
autocomplete="name"
|
||
placeholder="z. B. Thomas M."
|
||
required
|
||
/>
|
||
</div>
|
||
|
||
<div class="field">
|
||
<label>Deine Bewertung</label>
|
||
<div
|
||
class="rating-input"
|
||
aria-label="Sternebewertung"
|
||
>
|
||
<input
|
||
id="star5"
|
||
name="rating"
|
||
type="radio"
|
||
value="5"
|
||
required
|
||
/>
|
||
<label for="star5" title="5 Sterne">★</label>
|
||
|
||
<input
|
||
id="star4"
|
||
name="rating"
|
||
type="radio"
|
||
value="4"
|
||
/>
|
||
<label for="star4" title="4 Sterne">★</label>
|
||
|
||
<input
|
||
id="star3"
|
||
name="rating"
|
||
type="radio"
|
||
value="3"
|
||
/>
|
||
<label for="star3" title="3 Sterne">★</label>
|
||
|
||
<input
|
||
id="star2"
|
||
name="rating"
|
||
type="radio"
|
||
value="2"
|
||
/>
|
||
<label for="star2" title="2 Sterne">★</label>
|
||
|
||
<input
|
||
id="star1"
|
||
name="rating"
|
||
type="radio"
|
||
value="1"
|
||
/>
|
||
<label for="star1" title="1 Stern">★</label>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="field">
|
||
<label for="review">Deine Erfahrung</label>
|
||
<textarea
|
||
id="review"
|
||
name="review"
|
||
placeholder="Was hat dir an der Ernährungsberatung geholfen?"
|
||
required
|
||
></textarea>
|
||
</div>
|
||
|
||
<label class="consent">
|
||
<input type="checkbox" name="consent" required />
|
||
<span>
|
||
Ich stimme zu, dass meine Bewertung mit meinem
|
||
angegebenen Namen auf dieser Seite
|
||
veröffentlicht werden darf.
|
||
</span>
|
||
</label>
|
||
|
||
<button class="button button-primary" type="submit">
|
||
Bewertung veröffentlichen
|
||
</button>
|
||
|
||
<div
|
||
class="form-status"
|
||
id="formStatus"
|
||
role="status"
|
||
aria-live="polite"
|
||
></div>
|
||
</form>
|
||
</div>
|
||
</section>
|
||
</main>
|
||
|
||
<footer>
|
||
<div class="container">
|
||
<div>
|
||
<strong>tri-hub</strong> · Triathlon als sportliches Zuhause
|
||
ab 50.
|
||
</div>
|
||
<div>Ernährung · Wissen · Erfahrungen</div>
|
||
</div>
|
||
</footer>
|
||
|
||
<script>
|
||
const form = document.getElementById("reviewForm");
|
||
const status = document.getElementById("formStatus");
|
||
|
||
form.addEventListener("submit", function (event) {
|
||
event.preventDefault();
|
||
|
||
const name = form.elements.name.value.trim();
|
||
const rating = form.elements.rating.value;
|
||
const review = form.elements.review.value.trim();
|
||
|
||
if (!name || !rating || !review) return;
|
||
|
||
status.textContent =
|
||
"Danke für deine Bewertung. In dieser Demo wurde sie noch nicht dauerhaft gespeichert.";
|
||
|
||
form.reset();
|
||
});
|
||
</script>
|
||
<script>
|
||
(function () {
|
||
const toggle = document.querySelector(".navbar__toggle");
|
||
const nav = document.querySelector(".navbar__nav");
|
||
if (!toggle || !nav) return;
|
||
|
||
function setOpen(open) {
|
||
nav.classList.toggle("is-open", open);
|
||
toggle.setAttribute("aria-expanded", String(open));
|
||
toggle.setAttribute(
|
||
"aria-label",
|
||
open ? "Menü schließen" : "Menü öffnen",
|
||
);
|
||
}
|
||
|
||
toggle.addEventListener("click", function () {
|
||
setOpen(toggle.getAttribute("aria-expanded") !== "true");
|
||
});
|
||
|
||
nav.addEventListener("click", function (event) {
|
||
if (event.target.closest("a")) setOpen(false);
|
||
});
|
||
|
||
document.addEventListener("keydown", function (event) {
|
||
if (event.key === "Escape") setOpen(false);
|
||
});
|
||
})();
|
||
</script>
|
||
</body>
|
||
</html>
|