/*
* Eva Grünbauer — Custom CSS
* Stand: 2026-04-27 — Vollständige Überarbeitung nach Kunden-Feedback
*/
/* Lokale Fonts — kein Google-Server-Aufruf */
@font-face {
font-family: ‚Cormorant Garamond‘;
font-style: italic;
font-weight: 400;
font-display: swap;
src: url(‚/wp-content/uploads/fonts/cormorant-garamond-italic-400.woff2‘) format(‚woff2‘);
}
@font-face {
font-family: ‚Cormorant Garamond‘;
font-style: italic;
font-weight: 500;
font-display: swap;
src: url(‚/wp-content/uploads/fonts/cormorant-garamond-italic-400.woff2‘) format(‚woff2‘);
}
@font-face {
font-family: ‚Cormorant Garamond‘;
font-style: normal;
font-weight: 400;
font-display: swap;
src: url(‚/wp-content/uploads/fonts/cormorant-garamond-normal-400.woff2‘) format(‚woff2‘);
}
@font-face {
font-family: ‚Cormorant Garamond‘;
font-style: normal;
font-weight: 500;
font-display: swap;
src: url(‚/wp-content/uploads/fonts/cormorant-garamond-normal-400.woff2‘) format(‚woff2‘);
}
@font-face {
font-family: ‚Cormorant Garamond‘;
font-style: normal;
font-weight: 600;
font-display: swap;
src: url(‚/wp-content/uploads/fonts/cormorant-garamond-normal-400.woff2‘) format(‚woff2‘);
}
@font-face {
font-family: ‚DM Sans‘;
font-style: italic;
font-weight: 400;
font-display: swap;
src: url(‚/wp-content/uploads/fonts/dm-sans-italic-400.woff2‘) format(‚woff2‘);
}
@font-face {
font-family: ‚DM Sans‘;
font-style: normal;
font-weight: 400;
font-display: swap;
src: url(‚/wp-content/uploads/fonts/dm-sans-normal-400.woff2‘) format(‚woff2‘);
}
@font-face {
font-family: ‚DM Sans‘;
font-style: normal;
font-weight: 500;
font-display: swap;
src: url(‚/wp-content/uploads/fonts/dm-sans-normal-400.woff2‘) format(‚woff2‘);
}
@font-face {
font-family: ‚DM Sans‘;
font-style: normal;
font-weight: 600;
font-display: swap;
src: url(‚/wp-content/uploads/fonts/dm-sans-normal-400.woff2‘) format(‚woff2‘);
}
/* ── TOKENS ── */
:root {
–ink: #2e2823;
–ink-soft: #3d3530;
–cream: #f4ede2;
–cream-deep: #ede3d6;
–warm: #FF6D24;
–warm-deep: #e05510;
–gold: #c9a96e;
–gold-pale: #e8d5b0;
–mist: #5a524a;
–white: #ffffff;
–f-display: ‚Cormorant Garamond‘, Georgia, serif;
–f-sans: ‚DM Sans‘, system-ui, sans-serif;
–ease-out: cubic-bezier(0.16, 1, 0.3, 1);
}
/* ── RESET / BASE ── */
*, *::before, *::after { box-sizing: border-box; }
html { font-size: 18px; scroll-padding-top: 90px; }
/* Sections erhalten scroll-margin damit Anker nicht unter den Header rutschen */
.eg-leistungen,
.eg-video,
.eg-ueber,
.eg-coaching,
.eg-galerie,
.eg-testimonials,
.eg-kontakt { scroll-margin-top: 90px; }
body { background: var(–cream) !important; color: var(–ink); font-family: var(–f-sans); font-weight: 400; }
img { max-width: 100%; }
a { color: inherit; text-decoration: none; }
/* ── GENERATEPRESS OVERRIDES ── */
.site-header { display: none !important; }
.entry-title { display: none !important; }
.sidebar-primary { display: none !important; }
.site { max-width: 100% !important; width: 100% !important; }
.site-content { max-width: 100% !important; width: 100% !important; padding: 0 !important; }
.content-area { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; }
.inside-article { padding: 0 !important; }
.entry-content { margin: 0 !important; padding: 0 !important; }
.site-main { padding: 0 !important; max-width: 100% !important; }
.site-footer { display: none !important; }
/* ── SCROLL REVEAL ── */
.reveal {
opacity: 0; transform: translateY(30px);
transition: opacity 0.9s var(–ease-out), transform 0.9s var(–ease-out);
}
.reveal.visible { opacity: 1; transform: translateY(0); }
.reveal-delay-1 { transition-delay: 0.08s; }
.reveal-delay-2 { transition-delay: 0.16s; }
.reveal-delay-3 { transition-delay: 0.24s; }
@media (prefers-reduced-motion: no-preference) { html { scroll-behavior: smooth; } }
@media (prefers-reduced-motion: reduce) {
*, *::before, *::after { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; }
.reveal { opacity: 1 !important; transform: none !important; }
}
/* ── SECTION LABEL / EYEBROW ── */
.eg-section-label {
font-family: var(–f-sans);
font-size: 1rem;
font-weight: 600;
letter-spacing: 0.22em;
text-transform: uppercase;
color: var(–warm);
display: block;
}
/* ═══════════════ NAV ═══════════════ */
.eg-nav {
position: fixed; top: 0; left: 0; right: 0; z-index: 1000;
display: flex; align-items: center; justify-content: space-between;
padding: 20px 6vw;
background: rgba(244,237,226,0.97);
backdrop-filter: blur(16px);
border-bottom: 1px solid rgba(46,40,35,0.08);
transition: padding 0.4s var(–ease-out);
}
.eg-nav.scrolled {
padding: 16px 6vw;
background: rgba(244,237,226,0.97);
backdrop-filter: blur(16px);
border-bottom: 1px solid rgba(46,40,35,0.08);
}
/* Logo: Name oben, Tagline darunter */
.eg-nav__logo {
display: flex;
flex-direction: column;
align-items: flex-start;
gap: 0.1rem;
}
.eg-nav__logo-name {
font-family: var(–f-sans);
font-size: 1rem;
font-weight: 600;
letter-spacing: 0.04em;
color: #3d3530;
line-height: 1.1;
}
.eg-nav__logo-sub {
font-family: var(–f-sans);
font-size: 0.65rem;
font-weight: 400;
letter-spacing: 0.14em;
text-transform: uppercase;
color: var(–mist);
line-height: 1;
}
.eg-nav__links {
display: flex; gap: 2.5rem; list-style: none; margin: 0; padding: 0;
}
.eg-nav__links a {
font-family: var(–f-sans); font-size: 0.78rem; font-weight: 400;
letter-spacing: 0.1em; text-transform: uppercase; color: var(–ink-soft);
position: relative; padding-bottom: 2px;
}
.eg-nav__links a::after {
content: “; position: absolute; bottom: 0; left: 0;
width: 0; height: 1px; background: var(–warm);
transition: width 0.4s var(–ease-out);
}
.eg-nav__links a:hover::after { width: 100%; }
.eg-nav__cta {
font-size: 0.75rem; font-weight: 500; letter-spacing: 0.1em;
text-transform: uppercase; color: var(–ink);
padding: 0.6rem 1.6rem; border: 1.5px solid var(–ink); border-radius: 100px;
transition: background 0.3s, color 0.3s;
}
.eg-nav__cta:hover { background: var(–ink); color: var(–cream); }
/* ═══════════════ HERO ═══════════════ */
.eg-hero {
position: relative; min-height: 100vh;
display: grid; grid-template-columns: 1fr 1fr; overflow: hidden;
}
/* Left */
.eg-hero__left {
position: relative; z-index: 2;
display: flex; flex-direction: column; justify-content: center;
padding: calc(90px + 8vh) 6vw 6vh 6vw; background: var(–cream);
}
.eg-hero__eyebrow {
font-family: var(–f-sans); font-size: 1rem; font-weight: 500;
letter-spacing: 0.2em; text-transform: uppercase;
color: var(–warm); margin-bottom: 2rem; white-space: nowrap; display: block;
}
.eg-hero__headline {
font-family: var(–f-display); font-size: clamp(4rem, 7vw, 7.5rem);
font-weight: 400; line-height: 1.05; letter-spacing: -0.02em;
color: rgba(46,40,35,0.85); margin-bottom: 2.5rem;
}
.eg-hero__headline .line { display: block; }
.eg-hero__headline .italic { font-style: italic; font-weight: 500; color: var(–warm); letter-spacing: 0em; }
.eg-hero__sub {
font-size: 1rem; font-weight: 400; line-height: 1.7;
color: rgba(46,40,35,0.72); max-width: 480px; margin-bottom: 3rem;
}
.eg-hero__sub p { margin: 0 0 0.75rem; }
.eg-hero__sub p:last-child { margin: 0; }
.eg-hero__actions {
display: flex; align-items: center; gap: 2rem; margin-bottom: 0; flex-wrap: wrap;
}
/* Buttons */
.eg-btn-primary {
display: inline-flex; align-items: center; gap: 0.75rem;
font-size: 0.78rem; font-weight: 500; letter-spacing: 0.12em; text-transform: uppercase;
color: var(–white); background: var(–ink);
padding: 1rem 2.4rem; border-radius: 100px;
position: relative; overflow: hidden; transition: color 0.4s;
min-height: 48px;
}
.eg-btn-primary::before {
content: “; position: absolute; inset: 0;
background: var(–warm); transform: translateX(-100%);
transition: transform 0.4s var(–ease-out);
}
.eg-btn-primary:hover::before { transform: translateX(0); }
.eg-btn-primary span { position: relative; z-index: 1; }
.eg-btn-primary:active { transform: scale(0.97); }
/* Heller Button (Coaching entdecken) */
.eg-btn-light {
display: inline-flex; align-items: center; gap: 0.75rem;
font-size: 0.78rem; font-weight: 500; letter-spacing: 0.12em; text-transform: uppercase;
color: var(–ink); background: var(–cream);
border: 1.5px solid rgba(46,40,35,0.25);
padding: 1rem 2.4rem; border-radius: 100px;
position: relative; overflow: hidden; transition: background 0.3s, border-color 0.3s;
min-height: 48px;
}
.eg-btn-light:hover { background: var(–cream-deep); border-color: var(–ink); }
.eg-btn-text {
font-size: 0.78rem; font-weight: 400; letter-spacing: 0.1em; text-transform: uppercase;
color: var(–mist); display: flex; align-items: center; gap: 0.5rem;
border-bottom: 1px solid transparent; transition: color 0.3s, border-color 0.3s;
}
.eg-btn-text:hover { color: var(–ink); border-color: var(–ink); }
/* Stat Chips */
.eg-stat-chips {
display: flex; gap: 0.75rem; margin-top: 2.5rem; padding-top: 2rem;
border-top: 1px solid rgba(46,40,35,0.1); flex-wrap: wrap;
}
.eg-stat-chip {
background: var(–white); border-radius: 12px;
padding: 1rem 1.4rem; box-shadow: 0 4px 24px rgba(46,40,35,0.09); text-align: center;
}
.eg-stat-chip__number {
font-family: var(–f-display); font-size: 1.7rem; font-weight: 400;
color: var(–ink); line-height: 1; display: block;
}
.eg-stat-chip__label {
font-size: 1rem; font-weight: 400; letter-spacing: 0.12em; text-transform: uppercase;
color: var(–mist); display: block; margin-top: 0.3rem;
}
/* Bekannt aus Box (rechts oben im Hero) */
.eg-hero__bekannt {
position: absolute; top: 10vh; right: 3vw; z-index: 10;
background: rgba(244,237,226,0.92); backdrop-filter: blur(10px);
border: 1px solid rgba(46,40,35,0.1);
padding: 1rem 1.4rem; min-width: 180px;
}
.eg-hero__bekannt-label {
font-size: 0.65rem; font-weight: 500; letter-spacing: 0.18em;
text-transform: uppercase; color: var(–mist);
display: block; margin-bottom: 0.6rem;
}
.eg-hero__bekannt-logos {
display: flex; flex-direction: column; gap: 0.4rem;
}
.eg-hero__bekannt-logos img {
max-height: 22px; max-width: 110px; width: auto;
object-fit: contain; opacity: 0.6; filter: grayscale(1);
}
/* Right image */
.eg-hero__right { position: relative; overflow: hidden; }
.eg-hero__right img {
width: 100%; height: 100%; object-fit: cover; object-position: center top; display: block;
}
.eg-hero__right::before {
content: “; position: absolute; inset: 0;
background: linear-gradient(105deg, var(–cream) 0%, transparent 30%);
z-index: 1; pointer-events: none;
}
/* Trust logos — ausgeblendet im Hero (sind unten nochmal) */
.eg-hero__trust-logos { display: none !important; }
/* Badge — neben 500+ Chip, gleiche Darstellung wie Stat-Chips */
.eg-stat-chips {
display: flex; flex-wrap: wrap; align-items: stretch; gap: 0.75rem;
}
.eg-hero__badge {
position: static;
display: flex; align-items: stretch;
order: 99;
}
.eg-hero__badge-inner {
display: inline-flex; flex-direction: column; align-items: flex-start; gap: 0.15rem;
background: var(–white); border-radius: 12px;
box-shadow: 0 4px 24px rgba(46,40,35,0.09);
padding: 0.8rem 1.2rem;
}
.eg-hero__badge-inner span {
font-family: var(–f-sans); font-size: 0.7rem; font-weight: 400;
letter-spacing: 0.12em; text-transform: uppercase; color: var(–mist);
display: block;
}
.eg-hero__badge-inner strong {
font-family: var(–f-display); font-size: 1.4rem; font-weight: 400;
color: var(–ink); line-height: 1.2; display: block;
}
/* ═══════════════ VIDEO ═══════════════ */
.eg-video {
background: var(–ink);
display: grid; grid-template-columns: 40fr 60fr;
align-items: stretch; overflow: hidden;
}
.eg-video__text {
display: flex; flex-direction: column; justify-content: center;
padding: 8vh 4vw 8vh 6vw;
border-right: 1px solid rgba(244,237,226,0.06);
}
.eg-video__label { color: rgba(244,237,226,0.5); margin-bottom: 1.5rem; }
.eg-video__title {
font-family: var(–f-display); font-size: clamp(2rem, 2.8vw, 3.8rem);
font-weight: 400; line-height: 1.05;
color: var(–white); margin-bottom: 1.2rem; margin-top: 0;
}
.eg-video__title em { font-style: italic; color: var(–warm); }
.eg-video__sub {
font-size: 1rem; font-weight: 400; line-height: 1.8;
color: rgba(255,255,255,0.75); max-width: 280px; margin-bottom: 2.5rem; margin-top: 0;
}
.eg-video__tabs { display: flex; flex-direction: column; gap: 0.45rem; }
.eg-video__tab {
font-family: var(–f-sans); font-size: 0.78rem; font-weight: 500;
letter-spacing: 0.06em; text-transform: uppercase;
color: rgba(244,237,226,0.45);
padding: 0.6rem 1.2rem; border-radius: 100px;
border: 1px solid rgba(244,237,226,0.12); background: transparent;
min-height: 42px; text-align: left; white-space: nowrap;
transition: color 0.25s, background 0.25s, border-color 0.25s;
cursor: pointer;
}
.eg-video__tab:hover { color: rgba(244,237,226,0.8); border-color: rgba(244,237,226,0.25); }
.eg-video__tab.active {
color: var(–white); background: var(–warm); border-color: var(–warm);
}
/* Video Media mit Play-Button */
.eg-video__media {
position: relative; aspect-ratio: 16 / 9;
align-self: center; width: 100%; background: #0a0806;
margin-right: 15px;
}
.eg-video__media video {
position: absolute; inset: 0; width: 100%; height: 100%;
object-fit: contain; display: none;
}
.eg-video__media video.active { display: block; }
/* Play-Button Overlay */
.eg-video__play {
position: absolute; top: 50%; left: 50%;
transform: translate(-50%, -50%);
width: 72px; height: 72px; border-radius: 50%;
background: rgba(255,255,255,0.15); backdrop-filter: blur(4px);
border: 2px solid rgba(255,255,255,0.5);
display: flex; align-items: center; justify-content: center;
cursor: pointer; z-index: 10;
transition: background 0.3s, transform 0.3s;
}
.eg-video__play:hover { background: var(–warm); border-color: var(–warm); transform: translate(-50%, -50%) scale(1.08); }
.eg-video__play svg { width: 28px; height: 28px; fill: white; margin-left: 4px; }
.eg-video__media.is-playing .eg-video__play { display: none; }
/* ═══════════════ LEISTUNGEN ═══════════════ */
.eg-leistungen {
padding: 14vh 6vw 12vh; background: var(–cream); position: relative;
}
.eg-leistungen__header {
display: grid; grid-template-columns: 1fr 1fr; gap: 4vw;
align-items: end; margin-bottom: 5rem;
}
.eg-leistungen__title {
font-family: var(–f-display); font-size: clamp(2.8rem, 5vw, 5.5rem);
font-weight: 400; line-height: 1; letter-spacing: -0.02em;
color: rgba(46,40,35,0.85); margin: 0;
}
.eg-leistungen__title em { font-style: italic; color: var(–warm); }
.eg-leistungen__intro {
font-size: 1rem; font-weight: 400; line-height: 1.75;
color: rgba(46,40,35,0.7); max-width: 460px; margin: 0;
}
/* ── FLIP CARDS ── */
.eg-flip-grid {
display: grid; grid-template-columns: 1.2fr 1fr 1fr;
gap: 1.5px; background: rgba(46,40,35,0.1);
}
.eg-flip-card {
perspective: 1200px; min-height: 520px; cursor: pointer;
outline: none; position: relative;
}
.eg-flip-card__inner {
position: relative; width: 100%; height: 100%;
transform-style: preserve-3d; -webkit-transform-style: preserve-3d;
transition: transform 0.65s cubic-bezier(0.4, 0, 0.2, 1);
}
@media (hover: hover) {
.eg-flip-card:hover .eg-flip-card__inner,
.eg-flip-card:focus .eg-flip-card__inner { transform: rotateY(180deg); }
}
.eg-flip-card.is-flipped .eg-flip-card__inner { transform: rotateY(180deg); }
.eg-flip-card__front, .eg-flip-card__back {
position: absolute; inset: 0;
backface-visibility: hidden; -webkit-backface-visibility: hidden;
/* overflow:hidden entfernt — bricht preserve-3d in Safari/iOS (Spiegelschrift) */
}
.eg-flip-card__front { overflow: hidden; }
/* Back-Face: nur anklickbar wenn sichtbar */
.eg-flip-card__back { pointer-events: none; }
.eg-flip-card.is-flipped .eg-flip-card__back,
.eg-flip-card.is-flipped .eg-flip-card__back a { pointer-events: auto; }
.eg-flip-card.is-flipped .eg-flip-card__front { pointer-events: none; }
@media (hover: hover) {
.eg-flip-card:hover .eg-flip-card__back,
.eg-flip-card:hover .eg-flip-card__back a { pointer-events: auto; }
.eg-flip-card:hover .eg-flip-card__front { pointer-events: none; }
}
/* FRONT */
.eg-flip-card__front { background: var(–ink); }
.eg-flip-card__front img {
width: 100%; height: 100%; object-fit: cover; object-position: center top;
transition: transform 0.8s var(–ease-out), filter 0.5s;
filter: grayscale(20%) brightness(0.9); transform: scale(1.04);
}
.eg-flip-card:hover .eg-flip-card__front img {
transform: scale(1); filter: grayscale(0%) brightness(0.75);
}
/* Overlay nur UNTEN (kein Overlay nach oben) */
.eg-flip-card__front::after {
content: “; position: absolute; inset: 0;
background: linear-gradient(to top, rgba(46,40,35,0.92) 0%, rgba(46,40,35,0.6) 35%, transparent 60%);
z-index: 1;
}
.eg-flip-card__front-body {
position: absolute; bottom: 0; left: 0; right: 0;
padding: 2.5rem; z-index: 2;
display: flex; flex-direction: column; justify-content: flex-end;
}
.eg-flip-card__num {
font-family: var(–f-display); font-size: 0.72rem; font-weight: 400;
letter-spacing: 0.25em; color: var(–gold); margin-bottom: auto; padding-top: 2.5rem;
}
/* H3 auf FRONT — nicht spiegeln, bleibt auf der Vorderseite */
.eg-flip-card__front-body h3 {
font-family: var(–f-display); font-size: clamp(1.8rem, 2.5vw, 2.8rem);
font-weight: 400; line-height: 1.0; letter-spacing: -0.01em;
color: var(–white); margin: 0 0 0.6rem;
}
.eg-flip-card__front-body h3 em { font-style: italic; color: var(–warm); }
/* MEHR ERFAHREN Link */
.eg-flip-card__hint {
display: inline-flex; align-items: center; justify-content: space-between;
width: 100%;
font-size: 0.85rem; font-weight: 500; letter-spacing: 0.1em;
text-transform: uppercase; color: var(–white);
}
.eg-flip-card__hint-arrow {
width: 32px; height: 32px; border-radius: 50%;
border: 1.5px solid rgba(255,255,255,0.5);
display: flex; align-items: center; justify-content: center;
flex-shrink: 0;
}
.eg-flip-card__hint-arrow svg { width: 14px; height: 14px; stroke: white; fill: none; }
/* BACK — dunkler Hintergrund #2e2823 */
.eg-flip-card__back {
background: #2e2823; transform: rotateY(180deg);
display: flex; align-items: center;
}
.eg-flip-card__back-body {
padding: 2.5rem; display: flex; flex-direction: column; gap: 1rem; width: 100%;
}
.eg-flip-card__back-body h3 {
font-family: var(–f-display); font-size: clamp(1.6rem, 2.2vw, 2.4rem);
font-weight: 400; line-height: 1.05; color: var(–white); margin: 0;
}
.eg-flip-card__back-body h3 em { font-style: italic; color: var(–warm); }
.eg-flip-card__back-body p {
font-family: var(–f-sans); font-size: 1rem; line-height: 1.75;
color: rgba(255,255,255,0.9); margin: 0;
}
.eg-flip-card__link {
display: inline-flex; align-items: center; gap: 0.6rem;
margin-top: 0.5rem; padding: 0.75rem 1.8rem;
font-size: 0.78rem; font-weight: 500; letter-spacing: 0.12em; text-transform: uppercase;
color: var(–ink); background: var(–cream);
border-radius: 100px; align-self: flex-start; transition: opacity 0.3s;
}
.eg-flip-card__link:hover { opacity: 0.85; }
/* ═══════════════ ÜBER EVA ═══════════════ */
.eg-ueber {
background: var(–cream-deep);
display: grid; grid-template-columns: 1fr 1fr; overflow: hidden;
}
.eg-ueber__image { position: relative; min-height: 80vh; overflow: hidden; }
.eg-ueber__image img {
width: 100%; height: 100%; object-fit: cover; object-position: center top;
}
.eg-ueber__image::after {
content: “; position: absolute;
top: 3rem; left: 3rem; right: -1.5rem; bottom: -1.5rem;
border: 1px solid var(–gold); pointer-events: none; opacity: 0.4; z-index: 1;
}
.eg-ueber__text {
display: flex; flex-direction: column; justify-content: center;
padding: 8vh 6vw;
}
.eg-ueber__label { margin-bottom: 2rem; }
.eg-ueber__title {
font-family: var(–f-display); font-size: clamp(2.5rem, 4vw, 5rem);
font-weight: 400; line-height: 1.05; margin-bottom: 2.5rem;
letter-spacing: -0.01em; color: rgba(46,40,35,0.85); margin-top: 0;
}
.eg-ueber__title em { font-style: italic; color: var(–warm); }
.eg-ueber__body {
font-size: 1rem; font-weight: 400; line-height: 1.85;
color: rgba(46,40,35,0.75); margin-bottom: 1.5rem; margin-top: 0;
}
.eg-ueber__credentials {
display: flex; flex-direction: column; gap: 0;
margin-top: 2.5rem; border-top: 1px solid rgba(46,40,35,0.1);
list-style: none; padding: 0;
}
.eg-ueber__credential {
display: flex; align-items: center; gap: 1.2rem;
padding: 1rem 0; border-bottom: 1px solid rgba(46,40,35,0.07);
font-size: 1rem; font-weight: 400; color: var(–ink-soft);
}
.eg-ueber__credential::before {
content: “; width: 20px; height: 1px;
background: var(–warm); flex-shrink: 0;
}
/* ═══════════════ COACHING ═══════════════ */
.eg-coaching {
background: var(–cream); padding: 14vh 6vw;
display: grid; grid-template-columns: 1fr 1fr; gap: 6vw; align-items: center;
}
.eg-coaching__label { margin-bottom: 2rem; }
.eg-coaching__title {
font-family: var(–f-display); font-size: clamp(2.5rem, 4vw, 5rem);
font-weight: 400; line-height: 1.05; letter-spacing: -0.01em;
color: rgba(46,40,35,0.85); margin: 0 0 2.5rem;
}
.eg-coaching__title em { font-style: italic; color: var(–warm); }
.eg-coaching__body {
font-size: 1rem; font-weight: 400; line-height: 1.85;
color: rgba(46,40,35,0.75); margin: 0 0 1.5rem;
}
.eg-coaching__list {
list-style: none; padding: 0; margin: 0 0 2rem;
display: flex; flex-direction: column; gap: 0;
border-top: 1px solid rgba(46,40,35,0.1);
}
.eg-coaching__list li {
display: flex; align-items: center; gap: 1rem;
padding: 0.85rem 0; border-bottom: 1px solid rgba(46,40,35,0.07);
font-size: 1rem; font-weight: 400; color: var(–ink-soft);
line-height: 1.4;
}
.eg-coaching__list li::before {
content: “;
display: inline-block;
width: 20px; height: 2px;
background: var(–warm);
flex-shrink: 0;
}
.eg-coaching__suitable {
font-size: 1rem; font-weight: 400; color: rgba(46,40,35,0.65);
margin: 0 0 2rem; line-height: 1.65;
}
.eg-coaching__suitable strong { color: rgba(46,40,35,0.9); font-weight: 500; }
.eg-coaching__image { position: relative; overflow: hidden; }
.eg-coaching__image img { width: 100%; display: block; object-fit: cover; object-position: center top; }
/* ═══════════════ GALERIE ═══════════════ */
.eg-galerie {
background: var(–ink); padding: 12vh 4vw;
}
.eg-galerie__header {
display: flex; align-items: flex-end; justify-content: space-between;
padding: 0 2vw; margin-bottom: 4rem;
}
.eg-galerie__title {
font-family: var(–f-display); font-size: clamp(2.5rem, 5vw, 6rem);
font-weight: 400; color: var(–white); line-height: 0.95; margin: 0;
}
.eg-galerie__title em { font-style: italic; color: var(–warm); }
.eg-galerie__count {
font-size: 1rem; font-weight: 400; letter-spacing: 0.15em; text-transform: uppercase;
color: rgba(244,237,226,0.35);
}
/* Grid: modernes 3-Spalten Layout */
.eg-galerie__grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 6px;
}
.eg-galerie__item {
overflow: hidden; position: relative; opacity: 1 !important;
aspect-ratio: 2/3;
}
.eg-galerie__item–tall {
grid-row: span 2;
aspect-ratio: unset;
}
/* IMG_0745 (Nahaufnahme) soll normal dargestellt werden, nicht 2 Zeilen hoch */
.eg-galerie__item–tall:first-child {
grid-row: span 1;
aspect-ratio: 2/3;
}
.eg-galerie__item–wide {
grid-column: span 1;
aspect-ratio: 2/3;
}
.eg-galerie__item img {
width: 100%; height: 100%; display: block; object-fit: cover;
object-position: center center;
transition: transform 0.5s var(–ease-out), filter 0.4s;
filter: grayscale(15%);
transform-origin: center center;
}
.eg-galerie__item:hover img {
transform: scale(1);
filter: grayscale(0%);
}
/* ═══════════════ REFERENZEN ═══════════════ */
.eg-referenzen { padding: 12vh 6vw; background: var(–white); }
.eg-referenzen__header { text-align: center; margin-bottom: 4rem; }
.eg-referenzen__title {
font-family: var(–f-display); font-size: clamp(2rem, 4vw, 4.5rem);
font-weight: 400; margin-top: 1rem; color: rgba(46,40,35,0.85); margin-bottom: 0;
}
.eg-referenzen__title em { font-style: italic; color: var(–warm); }
/* Auto-scroll Logoleiste (Marquee) */
@keyframes eg-marquee {
0% { transform: translateX(0); }
100% { transform: translateX(-50%); }
}
.eg-referenzen__logo-track-wrap,
.eg-logo-ticker-wrap {
position: relative; overflow: hidden; margin-bottom: 2rem;
background: var(–white);
border-top: 1px solid rgba(46,40,35,0.08);
border-bottom: 1px solid rgba(46,40,35,0.08);
}
/* Fade-Masken links/rechts */
.eg-referenzen__logo-track-wrap::before,
.eg-referenzen__logo-track-wrap::after,
.eg-logo-ticker-wrap::before,
.eg-logo-ticker-wrap::after {
content: “; position: absolute; top: 0; bottom: 0; width: 100px; z-index: 2; pointer-events: none;
}
.eg-referenzen__logo-track-wrap::before,
.eg-logo-ticker-wrap::before {
left: 0; background: linear-gradient(to right, var(–white) 0%, transparent 100%);
}
.eg-referenzen__logo-track-wrap::after,
.eg-logo-ticker-wrap::after {
right: 0; background: linear-gradient(to left, var(–white) 0%, transparent 100%);
}
/* Ticker-Container: beide Tracks als eine Reihe */
.eg-logo-ticker {
display: flex !important; flex-direction: row !important; flex-wrap: nowrap !important;
animation: eg-marquee 35s linear infinite;
width: max-content !important;
}
.eg-referenzen__logo-track,
.eg-logo-ticker__track {
display: flex !important; flex-wrap: nowrap !important;
width: max-content !important;
}
.eg-referenzen__logo-track::-webkit-scrollbar,
.eg-logo-ticker__track::-webkit-scrollbar { display: none; }
/* Pause on hover */
.eg-logo-ticker-wrap:hover .eg-logo-ticker,
.eg-logo-ticker-wrap:hover .eg-logo-ticker__track,
.eg-referenzen__logo-track-wrap:hover .eg-referenzen__logo-track {
animation-play-state: paused;
}
.eg-logo-cell {
display: flex !important; align-items: center; justify-content: center;
padding: 2rem 3.5rem; flex: 0 0 auto !important; min-width: 220px;
border-right: 1px solid rgba(46,40,35,0.06);
}
.eg-logo-cell img {
width: 160px; height: 70px; object-fit: contain;
filter: grayscale(100%) opacity(0.55); transition: filter 0.4s;
background: transparent !important;
}
.eg-logo-ticker-wrap:hover .eg-logo-cell img,
.eg-logo-cell:hover img { filter: grayscale(0%) opacity(0.9); }
/* Testimonials */
.eg-testimonials {
display: grid; grid-template-columns: repeat(3, 1fr);
gap: 2px; background: rgba(46,40,35,0.08);
}
.eg-testimonial { background: var(–white); padding: 3rem 2rem; position: relative; }
.eg-testimonial::before {
content: “; display: none;
}
.eg-testimonial__text {
font-family: var(–f-display); font-size: 1.05rem; font-weight: 600;
font-style: italic; line-height: 1.65;
color: rgba(46,40,35,0.8);
margin-bottom: 1.2rem; margin-top: 2rem;
text-align: center;
}
.eg-testimonial__author {
font-size: 0.85rem; font-weight: 400; letter-spacing: 0.08em;
color: var(–mist); text-align: center;
}
.eg-testimonial__author strong { font-weight: 500; color: var(–ink); display: block; margin-bottom: 0.2rem; }
/* ═══════════════ TESTIMONIAL SLIDER ═══════════════ */
#egTestimonialSlider {
position: relative;
background: var(–cream-deep);
padding: 10vh 6vw 8vh;
overflow: hidden;
}
.eg-ts__track { position: relative; min-height: 280px; }
.eg-ts__slide {
position: absolute; inset: 0;
display: flex; flex-direction: column; align-items: center; justify-content: center;
opacity: 0; transition: opacity 0.6s var(–ease-out);
pointer-events: none;
}
.eg-ts__slide.is-active { opacity: 1; pointer-events: auto; position: relative; }
.eg-ts__slide blockquote {
margin: 0; padding: 0;
max-width: 780px; text-align: center;
}
.eg-ts__text { text-align: center; max-width: 780px; }
.eg-ts__quote {
font-family: var(–f-display); font-size: clamp(1.3rem, 2.2vw, 2rem);
font-weight: 400; font-style: italic; line-height: 1.55;
color: rgba(46,40,35,0.85); margin-bottom: 2rem;
}
.eg-ts__author {
font-size: 0.82rem; font-weight: 500; letter-spacing: 0.14em;
text-transform: uppercase; color: var(–mist); text-align: center;
}
.eg-ts__author strong { display: block; color: var(–ink); font-weight: 600; margin-bottom: 0.2em; }
/* Dots */
#egTsDots {
display: flex; justify-content: center; gap: 8px; margin-top: 2.5rem;
}
.eg-ts__dot {
width: 8px; height: 8px; border-radius: 50%;
background: rgba(46,40,35,0.2); border: none; padding: 0; cursor: pointer;
transition: background 0.3s, transform 0.3s;
}
.eg-ts__dot.is-active { background: var(–warm); transform: scale(1.3); }
/* Prev / Next Arrows */
.eg-ts__arrows {
display: flex; justify-content: center; gap: 1rem; margin-top: 1.5rem;
}
.eg-ts__prev,
.eg-ts__next {
width: 44px; height: 44px;
border-radius: 50%;
border: 1.5px solid rgba(46,40,35,0.2);
background: transparent;
color: var(–ink);
display: inline-flex; align-items: center; justify-content: center;
cursor: pointer;
transition: background 0.25s, border-color 0.25s, color 0.25s;
font-size: 1.1rem;
line-height: 1;
}
.eg-ts__prev:hover,
.eg-ts__next:hover {
background: var(–ink); border-color: var(–ink); color: var(–cream);
}
/* ═══════════════ SOCIAL LINKS ═══════════════ */
.eg-kontakt__social {
display: flex; gap: 0.75rem; margin-top: 2rem;
}
.eg-social-link {
display: inline-flex; align-items: center; justify-content: center;
width: 112px; height: 112px; border-radius: 50%;
border: 1px solid rgba(244,237,226,0.25);
background-repeat: no-repeat; background-position: center; background-size: 52px 52px;
transition: border-color 0.25s, background-color 0.25s;
}
.eg-social-link:hover { border-color: var(–warm); background-color: rgba(255,109,36,0.12); }
.eg-social-link[aria-label=“LinkedIn“] {
background-image: url(„data:image/svg+xml,%3Csvg xmlns=’http://www.w3.org/2000/svg‘ viewBox=’0 0 24 24′ fill=’%23f4ede2’%3E%3Cpath d=’M20.447 20.452h-3.554v-5.569c0-1.328-.027-3.037-1.852-3.037-1.853 0-2.136 1.445-2.136 2.939v5.667H9.351V9h3.414v1.561h.046c.477-.9 1.637-1.85 3.37-1.85 3.601 0 4.267 2.37 4.267 5.455v6.286zM5.337 7.433a2.062 2.062 0 01-2.063-2.065 2.064 2.064 0 112.063 2.065zm1.782 13.019H3.555V9h3.564v11.452zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.222 0h.003z’/%3E%3C/svg%3E“);
}
.eg-social-link[aria-label=“Instagram“] {
background-image: url(„data:image/svg+xml,%3Csvg xmlns=’http://www.w3.org/2000/svg‘ viewBox=’0 0 24 24′ fill=’%23f4ede2’%3E%3Cpath d=’M12 2.163c3.204 0 3.584.012 4.85.07 3.252.148 4.771 1.691 4.919 4.919.058 1.265.069 1.645.069 4.849 0 3.205-.012 3.584-.069 4.849-.149 3.225-1.664 4.771-4.919 4.919-1.266.058-1.644.07-4.85.07-3.204 0-3.584-.012-4.849-.07-3.26-.149-4.771-1.699-4.919-4.92-.058-1.265-.07-1.644-.07-4.849 0-3.204.013-3.583.07-4.849.149-3.227 1.664-4.771 4.919-4.919 1.266-.057 1.645-.069 4.849-.069zM12 0C8.741 0 8.333.014 7.053.072 2.695.272.273 2.69.073 7.052.014 8.333 0 8.741 0 12c0 3.259.014 3.668.072 4.948.2 4.358 2.618 6.78 6.98 6.98C8.333 23.986 8.741 24 12 24c3.259 0 3.668-.014 4.948-.072 4.354-.2 6.782-2.618 6.979-6.98.059-1.28.073-1.689.073-4.948 0-3.259-.014-3.667-.072-4.947-.196-4.354-2.617-6.78-6.979-6.98C15.668.014 15.259 0 12 0zm0 5.838a6.162 6.162 0 100 12.324 6.162 6.162 0 000-12.324zM12 16a4 4 0 110-8 4 4 0 010 8zm6.406-11.845a1.44 1.44 0 100 2.881 1.44 1.44 0 000-2.881z’/%3E%3C/svg%3E“);
}
.eg-social-link[aria-label=“Facebook“] {
background-image: url(„data:image/svg+xml,%3Csvg xmlns=’http://www.w3.org/2000/svg‘ viewBox=’0 0 24 24′ fill=’%23f4ede2’%3E%3Cpath d=’M24 12.073c0-6.627-5.373-12-12-12s-12 5.373-12 12c0 5.99 4.388 10.954 10.125 11.854v-8.385H7.078v-3.47h3.047V9.43c0-3.007 1.792-4.669 4.533-4.669 1.312 0 2.686.235 2.686.235v2.953H15.83c-1.491 0-1.956.925-1.956 1.874v2.25h3.328l-.532 3.47h-2.796v8.385C19.612 23.027 24 18.062 24 12.073z’/%3E%3C/svg%3E“);
}
/* ═══════════════ KONTAKT ═══════════════ */
.eg-kontakt {
background: var(–ink);
padding: 14vh 6vw;
display: grid; grid-template-columns: 1fr 1fr; gap: 8vw;
}
.eg-kontakt__label { color: rgba(255,255,255,0.6); margin-bottom: 2rem; }
.eg-kontakt__title {
font-family: var(–f-display); font-size: clamp(3rem, 5vw, 7rem);
font-weight: 400; line-height: 1.1;
color: var(–white); margin-bottom: 2.5rem; margin-top: 0;
overflow: visible;
}
.eg-kontakt__title em { font-style: italic; color: var(–warm); }
.eg-kontakt__body {
font-size: 1rem; font-weight: 400; line-height: 1.85;
color: rgba(255,255,255,0.8); margin: 0 0 2rem;
}
.eg-kontakt__info {
list-style: none; padding: 0; display: flex; flex-direction: column; gap: 1rem;
}
.eg-kontakt__info li {
display: flex; align-items: center; gap: 1rem;
font-size: 1rem; font-weight: 400; color: rgba(255,255,255,0.85);
}
.eg-kontakt__info li::before {
content: “; width: 16px; height: 1px; background: var(–warm); flex-shrink: 0;
}
/* CF7 Formular — 2-Spalten Layout */
.eg-kontakt__form { margin-top: 2rem; }
.eg-kontakt .wpcf7-form {
display: flex; flex-direction: column; gap: 0;
}
/* Alle p-Tags die CF7 generiert als Zeilen behandeln */
.eg-kontakt .wpcf7-form > p {
margin: 0 0 1rem !important; padding: 0 !important;
}
/* Dropdown „Worum geht es“ — volle Breite */
.eg-cf7-dropdown-row {
margin-bottom: 1rem;
}
.eg-cf7-dropdown-row .wpcf7-form-control-wrap,
.eg-cf7-dropdown-row select {
width: 100% !important; display: block !important;
}
/* 2-Spalten Rows */
.eg-cf7-row {
display: grid !important;
grid-template-columns: 1fr 1fr !important;
gap: 1rem !important;
margin-bottom: 1rem !important;
}
/* Volle Breite (Nachricht) */
.eg-cf7-full {
margin-bottom: 1rem;
}
.eg-cf7-full .wpcf7-form-control-wrap,
.eg-cf7-full textarea {
width: 100% !important; display: block !important;
}
/* Label-Styling */
.eg-kontakt .wpcf7-form label {
display: block !important;
color: rgba(244,237,226,0.5) !important;
font-family: var(–f-sans) !important;
font-size: 0.65rem !important; font-weight: 600 !important;
letter-spacing: 0.16em !important; text-transform: uppercase !important;
margin-bottom: 0.4rem !important; line-height: 1 !important;
}
.eg-kontakt .wpcf7-form label br { display: none !important; }
.eg-kontakt .wpcf7-form .wpcf7-form-control-wrap { display: block !important; width: 100% !important; }
/* Input / Select / Textarea — hell */
.eg-kontakt .wpcf7-form input[type=“text“],
.eg-kontakt .wpcf7-form input[type=“email“],
.eg-kontakt .wpcf7-form input[type=“tel“],
.eg-kontakt .wpcf7-form input[type=“url“],
.eg-kontakt .wpcf7-form select,
.eg-kontakt .wpcf7-form textarea {
display: block !important; width: 100% !important;
background: #ffffff !important;
border: 1px solid rgba(46,40,35,0.18) !important;
border-radius: 8px !important; outline: none !important;
color: var(–ink) !important;
font-family: var(–f-sans) !important;
font-size: 0.95rem !important; font-weight: 400 !important;
padding: 0.75rem 1rem !important;
margin: 0 !important; box-shadow: none !important;
-webkit-appearance: none !important; appearance: none !important;
transition: border-color 0.2s, background 0.2s !important;
box-sizing: border-box !important;
}
.eg-kontakt .wpcf7-form select {
cursor: pointer !important;
}
.eg-kontakt .wpcf7-form select option { background: #ffffff; color: var(–ink); }
.eg-kontakt .wpcf7-form input[type=“text“]:focus,
.eg-kontakt .wpcf7-form input[type=“email“]:focus,
.eg-kontakt .wpcf7-form input[type=“tel“]:focus,
.eg-kontakt .wpcf7-form input[type=“url“]:focus,
.eg-kontakt .wpcf7-form select:focus,
.eg-kontakt .wpcf7-form textarea:focus {
border-color: var(–warm) !important;
background: #ffffff !important;
}
.eg-kontakt .wpcf7-form input::placeholder,
.eg-kontakt .wpcf7-form textarea::placeholder { color: rgba(46,40,35,0.35) !important; }
.eg-kontakt .wpcf7-form textarea { min-height: 130px !important; resize: none !important; }
/* Datenschutz-Checkbox */
.eg-cf7-datenschutz {
margin-bottom: 1.5rem !important;
}
.eg-cf7-datenschutz .wpcf7-list-item {
display: flex !important; align-items: flex-start !important;
gap: 0.6rem !important; margin: 0 !important;
}
.eg-cf7-datenschutz .wpcf7-list-item-label {
color: rgba(244,237,226,0.55) !important;
font-size: 0.78rem !important; line-height: 1.5 !important;
}
.eg-cf7-datenschutz .wpcf7-list-item-label a {
color: var(–warm) !important; text-decoration: underline !important;
}
.eg-cf7-datenschutz input[type=“checkbox“] {
width: 16px !important; height: 16px !important;
min-width: 16px !important; margin-top: 2px !important;
accent-color: var(–warm) !important;
flex-shrink: 0 !important;
}
/* Submit-Button */
.eg-kontakt .wpcf7-form .wpcf7-submit,
.eg-kontakt .wpcf7-form input[type=“submit“] {
display: block !important; width: 100% !important;
background: var(–warm) !important; color: var(–white) !important;
border: none !important; border-radius: 100px !important;
padding: 1rem 2rem !important;
font-family: var(–f-sans) !important;
font-size: 0.85rem !important; font-weight: 600 !important;
letter-spacing: 0.12em !important; text-transform: uppercase !important;
cursor: pointer !important; transition: background 0.2s !important;
min-height: 52px !important;
}
.eg-kontakt .wpcf7-form .wpcf7-submit:hover,
.eg-kontakt .wpcf7-form input[type=“submit“]:hover { background: var(–warm-deep) !important; }
/* CF7 Response Output */
.eg-kontakt .wpcf7-response-output {
border: 1px solid var(–warm) !important;
background: rgba(255,109,36,0.08) !important;
color: var(–cream) !important;
border-radius: 8px !important;
padding: 1rem 1.5rem !important;
margin-top: 1.5rem !important;
font-size: 0.88rem;
letter-spacing: 0.03em;
}
.eg-kontakt .wpcf7-response-output.wpcf7-mail-sent-ok {
border-color: #6dbf8a !important;
background: rgba(109,191,138,0.1) !important;
color: #c8f0d8 !important;
}
.eg-kontakt .wpcf7-response-output.wpcf7-validation-errors,
.eg-kontakt .wpcf7-response-output.wpcf7-mail-sent-ng {
border-color: #e05510 !important;
background: rgba(224,85,16,0.1) !important;
color: #ffcdb4 !important;
}
/* Responsive: 1 Spalte auf Mobile */
@media (max-width: 600px) {
.eg-cf7-row { grid-template-columns: 1fr !important; }
}
/* ═══════════════ FOOTER ═══════════════ */
.eg-footer {
background: rgba(46,40,35,0.97); padding: 3rem 6vw;
display: flex; align-items: center; justify-content: space-between;
border-top: 1px solid rgba(255,255,255,0.04);
}
.eg-footer__copy {
font-size: 0.85rem; font-weight: 400;
color: rgba(244,237,226,0.4); letter-spacing: 0.04em;
}
.eg-footer__links { display: flex; gap: 2rem; list-style: none; padding: 0; margin: 0; }
.eg-footer__links a {
font-size: 0.85rem; font-weight: 400; letter-spacing: 0.1em;
text-transform: uppercase; color: rgba(244,237,226,0.55); transition: color 0.3s;
}
.eg-footer__links a:hover { color: var(–warm); }
/* ═══════════════ HAMBURGER NAV ═══════════════ */
.eg-nav__hamburger {
display: none;
flex-direction: column; gap: 5px;
background: none; border: none; cursor: pointer;
padding: 8px; z-index: 1100;
}
.eg-nav__hamburger span {
display: block; width: 24px; height: 2px;
background: var(–ink); border-radius: 2px;
transition: transform 0.3s var(–ease-out), opacity 0.3s;
}
.eg-nav__hamburger.is-open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.eg-nav__hamburger.is-open span:nth-child(2) { opacity: 0; }
.eg-nav__hamburger.is-open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
/* ═══════════════ RESPONSIVE ═══════════════ */
@media (max-width: 900px) {
body { cursor: auto; }
#eg-cursor { display: none; }
/* NAV mobile */
.eg-nav__hamburger { display: flex; }
.eg-nav__cta { display: none; }
.eg-nav__links {
position: fixed; top: 0; left: 0; right: 0; bottom: 0;
background: var(–cream); z-index: 1050;
flex-direction: column; align-items: center; justify-content: center;
gap: 2.5rem; display: none;
}
.eg-nav__links.is-open { display: flex; }
.eg-nav__links li { list-style: none; }
.eg-nav__links a {
font-family: var(–f-display); font-size: 2.5rem; font-weight: 400;
letter-spacing: 0.02em; text-transform: none; color: var(–ink);
}
.eg-nav__links a::after { display: none; }
/* HERO mobile */
.eg-hero {
display: grid !important;
grid-template-columns: 1fr !important;
grid-template-rows: 50vh auto;
min-height: 100svh;
}
.eg-hero__right {
grid-row: 1; grid-column: 1;
height: 50vh; position: relative;
overflow: hidden;
}
.eg-hero__right img { width: 100%; height: 100%; object-fit: cover; object-position: center 20%; display: block; }
.eg-hero__right::before {
background: linear-gradient(to bottom, transparent 50%, var(–cream) 100%);
}
.eg-hero__left {
grid-row: 2; grid-column: 1;
padding: 2rem 6vw 4vh !important;
justify-content: flex-start;
}
.eg-hero__eyebrow { white-space: normal !important; font-size: 0.68rem; margin-bottom: 0.8rem; }
.eg-hero__headline { font-size: clamp(2.8rem, 12vw, 4rem) !important; margin-bottom: 1.2rem; }
.eg-hero__sub { font-size: 0.9rem; line-height: 1.6; margin-bottom: 1.5rem; }
.eg-hero__actions { flex-direction: column !important; align-items: stretch !important; gap: 0.75rem !important; }
.eg-btn-primary, .eg-btn-light { justify-content: center; }
.eg-stat-chips { display: none !important; }
.eg-hero__badge { display: none !important; }
.eg-hero__bekannt { display: none !important; }
.eg-nav__cta { display: none !important; }
/* LEISTUNGEN / FLIP CARDS mobile */
.eg-leistungen__header { grid-template-columns: 1fr; }
.eg-flip-grid { grid-template-columns: 1fr; gap: 2px; background: rgba(46,40,35,0.08); }
.eg-flip-card { min-height: 380px; }
/* Touch: flip via .is-flipped class (JS toggles on click) */
.eg-flip-card:hover .eg-flip-card__inner { transform: none; }
.eg-flip-card.is-flipped .eg-flip-card__inner { transform: rotateY(180deg); }
/* VIDEO mobile */
.eg-video { grid-template-columns: 1fr; }
.eg-video__text { padding: 6vh 6vw; border-right: none; border-bottom: 1px solid rgba(244,237,226,0.06); }
.eg-video__media { aspect-ratio: 16/9; min-height: unset; margin-right: 0; width: 100%; }
#egVideoFrame { right: 0 !important; width: 100% !important; left: 0 !important; }
/* ÜBER EVA mobile */
.eg-ueber { grid-template-columns: 1fr; }
.eg-ueber__image { min-height: 80vw; }
.eg-ueber__image::after { display: none; }
/* COACHING mobile */
.eg-coaching { grid-template-columns: 1fr; }
/* GALERIE mobile */
.eg-galerie__grid { grid-template-columns: repeat(2, 1fr); }
.eg-galerie__item–tall { grid-row: span 2; }
.eg-galerie__item { aspect-ratio: 1; }
/* REFERENZEN mobile */
.eg-testimonials { grid-template-columns: 1fr; }
/* KONTAKT mobile */
.eg-kontakt { grid-template-columns: 1fr; gap: 4rem; }
/* FOOTER mobile */
.eg-footer { flex-direction: column; gap: 1.5rem; text-align: center; }
/* GALERIE mobile */
.eg-masonry { columns: 2; }
}
/* ═══════════════ GALERIE MASONRY ═══════════════ */
.eg-masonry {
columns: 3;
column-gap: 6px;
padding: 0;
}
.eg-m-item {
break-inside: avoid;
margin-bottom: 6px;
overflow: hidden; position: relative;
cursor: pointer; display: block;
opacity: 1 !important;
}
.eg-m-item img {
width: 100%; height: auto; display: block;
transition: transform 0.6s var(–ease-out), filter 0.4s;
filter: saturate(0.88) brightness(0.9);
}
.eg-m-item:hover img { transform: scale(1.03); filter: saturate(1.05) brightness(1.0); }
/* ═══════════════ GALERIE LIGHTBOX ═══════════════ */
.eg-lb {
display: none;
position: fixed; inset: 0; z-index: 9999;
background: rgba(26,23,20,0.96);
align-items: center; justify-content: center;
flex-direction: column;
}
.eg-lb.eg-lb-active { display: flex; }
.eg-lb-wrap {
max-width: 90vw; max-height: 80vh;
display: flex; align-items: center; justify-content: center;
}
.eg-lb-wrap img {
max-width: 90vw; max-height: 80vh;
object-fit: contain; display: block;
}
.eg-lb-x {
position: absolute; top: 1.5rem; right: 1.5rem;
background: none; border: none; color: #fff;
font-size: 1.5rem; cursor: pointer; opacity: 0.7;
transition: opacity 0.2s; padding: 0.5rem; z-index: 2;
}
.eg-lb-x:hover { opacity: 1; }
.eg-lb-nav {
position: absolute; top: 50%; transform: translateY(-50%);
background: rgba(255,255,255,0.1); border: 1px solid rgba(255,255,255,0.2);
color: #fff; font-size: 1.5rem; cursor: pointer;
width: 48px; height: 48px; border-radius: 50%;
display: flex; align-items: center; justify-content: center;
transition: background 0.2s; z-index: 2;
}
.eg-lb-nav:hover { background: rgba(255,255,255,0.25); }
.eg-lb-p { left: 1rem; }
.eg-lb-n { right: 1rem; }
.eg-lb-info {
position: absolute; bottom: 1.5rem; left: 0; right: 0;
text-align: center; color: rgba(255,255,255,0.6);
font-size: 0.85rem; letter-spacing: 0.1em;
}
/* ── STATISCHE SEITEN (Impressum, Datenschutz) ── */
.eg-static-page {
background: var(–cream);
min-height: 100vh;
padding: 8rem 2rem 6rem;
}
.eg-static-page__inner {
max-width: 800px;
margin: 0 auto;
color: var(–ink);
font-family: var(–f-body);
}
.eg-static-page h1 {
font-family: var(–f-display);
font-size: clamp(2rem, 4vw, 3rem);
font-weight: 500;
color: var(–ink);
margin-bottom: 2rem;
padding-bottom: 1rem;
border-bottom: 2px solid var(–warm);
}
.eg-static-page h2 {
font-family: var(–f-display);
font-size: clamp(1.2rem, 2.5vw, 1.6rem);
font-weight: 500;
color: var(–ink);
margin-top: 2.5rem;
margin-bottom: 0.75rem;
}
.eg-static-page h3 {
font-family: var(–f-body);
font-size: 1rem;
font-weight: 600;
color: var(–mist);
text-transform: uppercase;
letter-spacing: 0.08em;
margin-top: 1.5rem;
margin-bottom: 0.5rem;
}
.eg-static-page p,
.eg-static-page li {
font-size: 1rem;
line-height: 1.75;
color: var(–mist);
margin-bottom: 0.75rem;
}
.eg-static-page a {
color: var(–warm);
text-decoration: none;
}
.eg-static-page a:hover {
text-decoration: underline;
}