/* ========== Typografie & Basis ========== */ .hero-section { width: 100%; text-align: center; padding: 0 1rem; } .hero-title { font-size: clamp(1.8rem, 4vw, 4rem); font-weight: 400; line-height: 1.2; color: #046e6e; word-break: normal; hyphens: none; } /* ========== Vereinheitlichte Section-Abstände ========== */ section { margin-bottom: 0; } .section { padding-top: 90px; padding-bottom: 90px; margin-top: 80px; margin-bottom: 80px; } /* ========== Beschreibung ========== */ .description { font-size: 22px; line-height: 1.5; padding-top: 90px; padding-bottom: 1px; @media (max-width: 768px) { font-size: 18px; padding-top: 70px; } @media (max-width: 480px) { font-size: 16px; padding-top: 50px; } } /* ========== Fakten ========== */ .facts .fact-item { padding: 15px; } .fact-image { height: 250px; width: auto; object-fit: contain; border-radius: 8px; box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); } /* ========== Hintergründe ========== */ .custom-background { background-size: cover; background-position: center; background-repeat: no-repeat; } .gif-background { background-image: url('/images/BackgroundAnimation.svg'); background-repeat: no-repeat; position: relative; background-size: cover; background-position: center 50%; @media (max-width: 991px) { background-size: 120% auto; background-position: center 40%; } @media (max-width: 575px) { background-size: 180% auto; background-position: center 50%; } &::after { content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background-color: rgba(255, 255, 255, 0.8); @media (max-width: 575px) { background-color: rgba(255, 255, 255, 0.5); } } } /* ========== Service-Layout ========== */ .service-arrow .block { display: flex; align-items: center; justify-content: space-between; padding: 20px; border-radius: 100px; color: #8a0909; } .service-content { flex: 1; } .service-image { margin: 0; } .service-image img { max-width: 600px; height: auto; display: block; } /* Farbvarianten für Services */ .bg-service1, .bg-service3, .bg-service5, .bg-service7 { background-color: #8bcfd6; } .bg-service2, .bg-service4, .bg-service6, .bg-service8 { background-color: #6baeb5; } /* Service-Gitter */ .service-grid { display: grid; gap: 1.5rem; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); justify-content: center; align-items: stretch; margin: 0 auto; max-width: 1200px; padding: 0 1rem; } .service-item-fixed { width: 100%; border-radius: 10px; overflow: hidden; position: relative; } .zoom-wrap { transition: transform 0.3s ease; width: 100%; height: 100%; position: relative; &:hover { transform: scale(1.06); } img { width: 100%; height: 100%; object-fit: cover; display: block; } a { display: block; text-decoration: none; color: inherit; } .overlay { position: absolute; top: 0; right: 0; bottom: 0; left: 0; background: rgba(0, 0, 0, 0.4); z-index: 1; } } .overlay-text { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); color: #fff; font-size: 2.3em; font-weight: bold; text-shadow: 0 2px 4px rgba(0, 0, 0, 0.8); z-index: 2; } /* ========== Zusatz-Layouts ========== */ .spacer-lg { height: 0px; } .service-item { position: relative; overflow: hidden; border-radius: 8px; img { width: 100%; display: block; } .overlay { position: absolute; inset: 0; background: rgba(0, 0, 0, 0.3); } .overlay-text { font-size: clamp(2rem, 2vw, 3rem); } } .info-card { text-align: center; padding: 1rem; i { font-size: 2rem; margin-bottom: 0.5rem; } h3 { font-weight: 600; margin-top: 0.5rem; margin-bottom: 0.25rem; font-size: 1.2rem; color: #046e6e; } p { font-size: 1rem; color: #333; } } /* ========== WHY AMPERION ========== */ .why-grid { display: grid; gap: 2rem; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: stretch; } @media (max-width: 991.98px) { .why-grid { grid-template-columns: repeat(2, 1fr); } } @media (max-width: 575.98px) { .why-grid { grid-template-columns: 1fr; } } .service-card { position: relative; display: flex; flex-direction: column; height: 100%; background: #fff; padding: 1.65rem 1.5rem; border-radius: 14px; box-shadow: 0 4px 12px rgba(0,0,0,.05); transition: box-shadow .25s ease; text-align: center; cursor: default; /* kein Hand-Cursor -> kein Link-Feeling */ } /* dezentes Hover-Feedback */ .service-card::after { content: ''; position: absolute; inset: 0; border-radius: inherit; background: radial-gradient(120% 100% at 50% 0%, rgba(245,166,35,.10), rgba(245,166,35,0) 60%); opacity: 0; transition: opacity .25s ease; pointer-events: none; } .service-card:hover { box-shadow: 0 10px 28px rgba(0,0,0,.08); } .service-card:hover::after { opacity: .04; /* sehr dezent */ } /* Icon */ .service-icon { width: 56px; height: 56px; object-fit: contain; margin: 0 auto .85rem auto; display: block; transform-origin: center; } /* Titel & Text */ .service-card-title { font-weight: 700; margin: .25rem 0 .5rem; } .service-card-description { line-height: 1.65; margin: 0; color: #333; } /* 1) Beim Einblenden (AOS setzt .aos-animate) kurzer, sauberer Pop-in */ @keyframes amp-pop { 0% { transform: scale(.92); opacity: 0; } 60% { transform: scale(1.02); opacity: 1; } 100% { transform: scale(1); } } .service-card.aos-animate .service-icon { animation: amp-pop .45s cubic-bezier(.2,.9,.2,1) both; } /* 2) Dezentes „Atmen“ (idle), startet erst nach dem Pop-in */ @keyframes amp-breathe { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-2.5px); } } .service-card.aos-animate .service-icon { /* zweite Animation hängt sich hinten dran */ animation: amp-pop .45s cubic-bezier(.2,.9,.2,1) both, amp-breathe 7s ease-in-out .45s infinite; } /* Reduced motion respektieren */ @media (prefers-reduced-motion: reduce) { .service-card, .service-card::after { transition: none !important; } .service-card .service-icon { animation: none !important; } } /* ========== Container & Layout ========== */ .my-container { width: 80%; margin: 0 auto; } .custom-container { max-width: 1800px; margin: 0 auto; padding-left: 30px; padding-right: 30px; } .fixed-width { max-width: 1200px; margin: 0 auto; } .fixed-text { max-width: 600px; margin-right: 15px; } /* ========== Titel mit Hintergrund ========== */ .page-title::before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: #ffffff; z-index: -1; } /* ========== Bildkomponenten & Icons ========== */ .custom-image { width: 100px; max-width: 70%; height: auto; } .custom-title { color: #046e6e; } /* ========== Hover Links ========== */ .hover-link { transition: color 0.3s ease; &:hover { color: #F5A623; } } .about-cta { color: #046e6e; /* Türkis */ font-weight: 700; text-decoration: none; border-bottom: 2px solid transparent; transition: color 0.2s ease, border-color 0.2s ease; } .about-cta:hover, .about-cta:focus { color: #F5A623; /* Orange */ border-bottom-color: #F5A623; } /* ========== Mehrwerte ========== */ .mehrwerte-grid { display: grid; gap: 0; grid-template-columns: repeat(1, 1fr); @media (min-width: 768px) { grid-template-columns: repeat(2, 1fr); } @media (min-width: 1200px) { grid-template-columns: repeat(4, 1fr); } } .mehrwerte-box { display: flex; flex-direction: column; justify-content: space-between; height: 100%; padding: 30px; border-radius: 8px; transition: background-color 0.3s ease, transform 0.3s ease, box-shadow 0.3s ease; &:hover { background-color: lighten(#004d4d, 10%); transform: translateY(-4px); box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1); h4, p { color: #000 !important; } } h4, p { color: #000 !important; transition: color 0.3s ease; } } .mehrwert-icon { filter: invert(74%) sepia(39%) saturate(2198%) hue-rotate(344deg) brightness(101%) contrast(92%); } /* ========== Gründerteam & Intro-Text ========== */ .container-fluid { max-width: 100%; padding-left: 5vw; padding-right: 5vw; } #about-intro .intro-text { max-width: 200ch; hyphens: auto; -webkit-hyphens: auto; overflow-wrap: anywhere; margin-bottom: 1rem; } #about-intro .intro-text p, #about-intro .intro-text li { margin-bottom: 1rem; } /* ========== Logo Animation ========== */ .logo-container { width: 80%; margin: 0 auto; display: flex; flex-direction: row; justify-content: center; align-items: center; gap: 20px; } .frame1 { flex: 0 0 40%; display: flex; justify-content: center; align-items: center; } .frame2 { flex: 0 0 60%; display: flex; justify-content: center; align-items: center; } .banner-logo { max-width: 100%; height: auto; opacity: 0; } /* Animationen */ .frame1 .banner-logo { animation: moveIn 1s forwards; } .frame2 .banner-logo { animation: moveIn 1s 0.5s forwards; } @keyframes moveIn { from { transform: translateX(50px); opacity: 0; } to { transform: translateX(0); opacity: 1; } } @keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } } .fade-in-title { opacity: 0; animation: fadeTitle 1.5s forwards 1s; } @keyframes fadeTitle { to { opacity: 1; } } @media (max-width: 768px) { .logo-container { flex-direction: column; width: 90%; } .frame1, .frame2 { flex: 0 0 auto; width: 100%; margin-bottom: 20px; } } /* ========== Body Base (aus style.scss) ========== */ body { font-family: Arial, sans-serif; text-align: center; background-color: #ffffff; margin: 0; padding: 20px; } /* Orange-Hover für Section-Grid (zoom-Variante) */ #leistungen-fokusthemen .service-item { position: relative; } #leistungen-fokusthemen .service-item .overlay-text { transition: color 0.25s ease; } #leistungen-fokusthemen .service-item:hover .overlay-text { color: #F5A623; /* Akzentfarbe */ } /* Abstand zwischen den beiden Grids */ #leistungen-fokusthemen .grid-spacer { height: 4rem; } @media (max-width: 992px) { #leistungen-fokusthemen .grid-spacer { height: 2.5rem; } } /* Bild unterhalb von "Darum AMPERION" */ .darum-image-wrapper { margin-top: 4rem; } /* ===== Über AMPERION Section ===== */ /* Hintergrundfarbe */ .bg-light-grey { background-color: #f3f3f3; } /* Grundlayout der Zeile */ #about .about-row { min-height: 400px; } /* Bildbereich */ #about .about-image-wrap { width: 100%; display: flex; align-items: flex-end; /* Bild unten ausrichten */ padding-top: 30px; } #about .about-image { width: 100%; max-width: clamp(200px, 38vw, 300px); height: auto; object-fit: contain; margin-left: auto; /* rechtsbündig in Spalte */ } /* Textbereich Abstände */ #about .text-left p { margin-bottom: 1rem; } /* Link-Styling: Standard Türkis, Hover Orange */ /* -> auch wenn in oder gewrappt */ #about .text-left a, #about .text-left b a, #about .text-left strong a { color: var(--amp-primary) !important; /* Türkis */ font-weight: 700; text-decoration: none; border-bottom: 2px solid transparent; transition: color 0.2s ease, border-color 0.2s ease; } #about .text-left a:hover, #about .text-left b a:hover, #about .text-left strong a:hover, #about .text-left a:focus { color: var(--amp-accent) !important; /* Orange */ border-bottom-color: var(--amp-accent); } #about .text-left a:focus-visible, #about .text-left b a:focus-visible, #about .text-left strong a:focus-visible { outline: 2px dashed var(--amp-accent); outline-offset: 2px; } /* ===== Affiliations unter "Darum AMPERION" ===== */ .darum-aff-row{ display:flex; align-items:center; justify-content:center; gap:clamp(1.25rem, 3vw, 3.5rem); flex-wrap:wrap; /* bricht sauber um */ margin-top:clamp(4rem, 4vw, 6rem); } .aff-group{ display:flex; align-items:center; gap:clamp(.75rem, 2vw, 1.25rem); } /* Linker Block (Ingenieurbüros etc.) */ .aff-caption{ margin:0 0 .5rem 0; font-size:clamp(.9rem, 1.2vw, 1rem); color:#6b7280; text-align:left; } .aff-logos{ display:flex; align-items:center; gap:clamp(.5rem, 1.2vw, 1rem); flex-wrap:wrap; } .aff-logos img{ max-height:clamp(100px, 3.2vw, 180px); width:auto; height:auto; display:block; } /* Rechter Block: Nur Logo (klickbar) */ .aff-right{ display:flex; /* zentriert das Logo im Link */ align-items:center; justify-content:center; text-decoration:none; color:inherit; } .aff-right .aff-pva-logo{ max-height:clamp(60px, 6vw, 120px); /* Logo-Größe hier steuern */ width:auto; height:auto; display:block; } /* Dezente Trennlinie zwischen links/rechts (nur Desktop) */ @media (min-width: 900px){ .aff-right{ padding-left:clamp(1rem, 2.5vw, 3rem); border-left:1px solid #e5e7eb; } } /* Mobil: keine Trennlinie / kein Einzug */ @media (max-width: 899.98px){ .aff-right{ border-left:0; padding-left:0; } } /* Fokus-Style für Tastaturbedienung */ .aff-right:focus-visible{ outline:2px dashed var(--amp-accent); outline-offset:4px; } /* ======================================== CTA SECTION - HYBRID DESIGN ======================================== */ .cta { --cta-primary: #046e6e; /* Türkis */ --cta-accent: #F5A623; /* Orange */ /* Button-Preset (hier zentral Größe steuern) */ --btn-py: clamp(1.8rem, 2.8vw, 2.5rem); /* oben/unten -> Höhe */ --btn-px: clamp(1.8rem, 2.8vw, 2.5rem); /* links/rechts -> Breite */ --btn-fs: clamp(1.8rem, 2.8vw, 2.5rem); /* Schriftgröße */ position: relative; overflow: hidden; padding: clamp(6rem, 10vw, 12rem) 0; background: #ffffff00; } /* ===== HINTERGRUND ANIMATIONEN ===== */ .cta__bg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; pointer-events: none; } /* Subtiles Grid */ .cta__grid { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: transparent; /* Explizit transparent */ background-image: linear-gradient(rgba(4, 110, 110, 0.03) 1px, transparent 1px), linear-gradient(90deg, rgba(4, 110, 110, 0.03) 1px, transparent 1px); background-size: 50px 50px; animation: gridMove 20s linear infinite; } @keyframes gridMove { 0% { transform: translate(0, 0); } 100% { transform: translate(50px, 50px); } } /* Energie-Linien Container */ .cta__energy-lines { position: absolute; top: 0; left: 0; width: 100%; height: 100%; opacity: 0.6; } /* Horizontale Energie-Linie */ .energy-line-h { position: absolute; height: 1px; background: linear-gradient(90deg, transparent 0%, var(--cta-primary) 10%, var(--cta-primary) 90%, transparent 100%); width: 200px; animation: energyFlowH 8s linear infinite; &::after { content: ''; position: absolute; right: 0; top: 50%; transform: translateY(-50%); width: 20px; height: 3px; background: var(--cta-primary); box-shadow: 0 0 10px var(--cta-primary), 0 0 20px var(--cta-primary); border-radius: 50%; } &.energy-line-h1 { top: 20%; animation-duration: 6s; } &.energy-line-h2 { top: 40%; animation-duration: 7s; animation-delay: 2s; } &.energy-line-h3 { top: 60%; animation-duration: 8s; animation-delay: 4s; } &.energy-line-h4 { top: 80%; animation-duration: 6.5s; animation-delay: 1s; } } @keyframes energyFlowH { 0% { left: -200px; opacity: 0; } 10% { opacity: 1; } 90% { opacity: 1; } 100% { left: 100%; opacity: 0; } } /* Vertikale Energie-Linie */ .energy-line-v { position: absolute; width: 1px; background: linear-gradient(180deg, transparent 0%, var(--cta-primary) 10%, var(--cta-primary) 90%, transparent 100%); height: 150px; animation: energyFlowV 10s linear infinite; &::after { content: ''; position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); width: 3px; height: 20px; background: var(--cta-primary); box-shadow: 0 0 10px var(--cta-primary), 0 0 20px var(--cta-primary); border-radius: 50%; } &.energy-line-v1 { left: 15%; animation-duration: 7s; animation-delay: 1s; } &.energy-line-v2 { left: 35%; animation-duration: 9s; animation-delay: 3s; } &.energy-line-v3 { left: 65%; animation-duration: 8s; animation-delay: 2s; } &.energy-line-v4 { left: 85%; animation-duration: 7.5s; animation-delay: 4s; } } @keyframes energyFlowV { 0% { top: -150px; opacity: 0; } 10% { opacity: 1; } 90% { opacity: 1; } 100% { top: 100%; opacity: 0; } } /* Energie-Knoten (Kreuzungspunkte) */ .energy-node { position: absolute; width: 6px; height: 6px; background: var(--cta-primary); border-radius: 50%; box-shadow: 0 0 10px var(--cta-primary); animation: nodePulse 2s ease-in-out infinite; &.energy-node1 { top: 20%; left: 15%; animation-delay: 0s; } &.energy-node2 { top: 40%; left: 35%; animation-delay: 0.5s; } &.energy-node3 { top: 60%; left: 65%; animation-delay: 1s; } &.energy-node4 { top: 80%; left: 85%; animation-delay: 1.5s; } &.energy-node5 { top: 30%; left: 50%; animation-delay: 0.25s; } &.energy-node6 { top: 70%; left: 25%; animation-delay: 0.75s; } } @keyframes nodePulse { 0%, 100% { transform: scale(1); opacity: 0.6; } 50% { transform: scale(1.5); opacity: 1; } } /* ===== CONTENT STYLES ===== */ .cta .my-container { position: relative; z-index: 1; } .cta__wrap { text-align: center; max-width: 72rem; margin: 0 auto; padding: 0 clamp(1rem, 3vw, 2rem); } /* Große Typografie */ .cta__title { margin: 0; color: var(--cta-primary); font-weight: 700; letter-spacing: .2px; font-size: clamp(2.2rem, 4.8vw, 3.6rem); position: relative; z-index: 2; } .cta__lead { margin: .9rem auto 0; color: #0f172a; line-height: 1.55; max-width: 58rem; position: relative; z-index: 2; } .cta__accent { color: var(--cta-accent); font-weight: 700; display: block; margin-top: 0.5rem; } /* Buttons – deutlich größer */ .cta__actions { display: flex; flex-wrap: wrap; justify-content: center; gap: clamp(1rem, 2.4vw, 1.6rem); margin-top: clamp(1.4rem, 3vw, 2.2rem); position: relative; z-index: 2; } .cta__btn { display: inline-flex; align-items: center; gap: .7rem; padding: var(--btn-py) var(--btn-px); border-radius: 9999px; background: #fff; color: var(--cta-primary); border: 1px solid rgba(0,0,0,.06); box-shadow: 0 1px 3px rgba(0,0,0,.06); text-decoration: none; font-weight: 700; font-size: var(--btn-fs); transition: background .15s ease, color .15s ease, box-shadow .2s ease, transform .04s ease; position: relative; overflow: hidden; &::before { content: ''; position: absolute; top: 50%; left: 50%; width: 0; height: 0; border-radius: 50%; background: var(--cta-accent); transform: translate(-50%, -50%); transition: width 0.6s ease, height 0.6s ease; z-index: -1; } &:hover { background: var(--cta-accent); color: #fff; box-shadow: 0 8px 22px rgba(245,166,35,.35); &::before { width: 300%; height: 300%; } } &:active { transform: translateY(1px); } &:focus-visible { outline: 2px dashed var(--cta-accent); outline-offset: 3px; } } /* Social-Icons (etwas größer, Teal-Hover) */ .cta__social { display: flex; justify-content: center; gap: clamp(.9rem, 2vw, 1.2rem); margin-top: clamp(1.2rem, 2.4vw, 1.6rem); position: relative; z-index: 2; } .cta__social-link { width: clamp(65px, 10vw, 70px); height: clamp(65px, 10vw, 70px); display: inline-flex; align-items: center; justify-content: center; background: #fff; border-radius: 9999px; box-shadow: 0 1px 3px rgba(0,0,0,.06); transition: background .2s ease, box-shadow .2s ease, transform .04s ease; text-decoration: none; position: relative; overflow: hidden; &::before { content: ''; position: absolute; top: 50%; left: 50%; width: 0; height: 0; border-radius: 50%; background: var(--cta-accent); transform: translate(-50%, -50%); transition: width 0.4s ease, height 0.4s ease; z-index: -1; } &:hover { background: var(--cta-accent); box-shadow: 0 6px 16px rgba(4,110,110,.25); transform: translateY(-2px); &::before { width: 100%; height: 100%; } img { filter: invert(1); } } &:active { transform: translateY(1px); } img { width: clamp(24px, 3vw, 28px); height: auto; display: block; transition: filter .2s ease; position: relative; z-index: 1; } } /* ===== RESPONSIVE ===== */ @media (max-width: 768px) { .energy-line-h2, .energy-line-h4, .energy-line-v2, .energy-line-v4, .energy-node4, .energy-node5, .energy-node6 { display: none; } } /* Weniger Abstand zur vorherigen Überschrift */ #about-intro.section.section-tight { padding-top: 28px; /* statt 90px */ padding-bottom: 60px; } /* Keine eigene Schriftgröße – erbt globales p-Design */ #about-intro .intro-text { font-size: inherit; line-height: inherit; } #about-intro .intro-text p { margin-bottom: .8rem; } /* Badges vereinheitlichen */ #about-intro .intro-badge { font-size: 1rem; padding: .45em .9em; background: #006464; border-radius: 999px; } /* About-Intro: Video */ .intro-video { width: 100%; height: 100%; object-fit: cover; display: block; border-radius: 12px; // Weiche Kanten } .intro-media { overflow: hidden; // sorgt dafür, dass der Radius auch das Video schneidet border-radius: 12px; } /* ======================================== ABOUT PAGE STYLES ======================================== */ /* 1) Intro: Bild rechts, Text links, konsistente Abstände */ #about-intro { .intro-content { /* nutzt globale Typo; nur Abstände angleichen */ .article-copy { p { margin-bottom: 1rem; } p:last-child { margin-bottom: 0; } strong { font-weight: 700; } } } .intro-image-wrapper { position: relative; } .intro-image { display: block; width: 100%; height: auto; border-radius: .75rem; /* wie Cards */ box-shadow: 0 6px 30px rgba(0,0,0,.05); object-fit: cover; } } /* =========================== Mission / Vision / Ziel =========================== */ .mission-section { /* Wrapper sauber mittig + schmaler */ .mission-tabs-wrapper{ max-width: 920px; margin-inline: auto; } /* Tabs */ .mission-tabs { border-bottom: 1px solid #eaeaea; margin-bottom: 1rem; text-align: center; // Tabs mittig .nav-link{ border: 0; padding: .45rem .9rem; color: #046e6e; opacity: .7; background: transparent; cursor: pointer; transition: all .2s ease; &:hover{ opacity: 1; color: #F5A623; /* Hover Orange */ border-bottom: 2px solid #F5A623; } &.active{ opacity: 1; color: #046e6e; /* aktiv Türkis */ border-bottom: 2px solid #046e6e; } } } /* Inhalt – sofortiger Wechsel, p-Standard */ .mission-tab-content{ .tab-pane{ display:none; } .tab-pane.active{ display:block; } .tab-inner{ background:#fff; border:1px solid #eee; border-radius:.75rem; padding:1.25rem; box-shadow:0 8px 24px rgba(0,0,0,.04); p:last-child{ margin-bottom:0; } } } } /* Kleinere Bildschirme: etwas kompakter */ @media (max-width: 576px){ .mission-section{ .mission-tabs .nav-link{ padding:.4rem .7rem; } .mission-tabs-wrapper{ max-width: 100%; } } } /* 4) Team-Block: Karten & Bild */ .team-image { display: block; width: 100%; height: auto; border-radius: .75rem; box-shadow: 0 6px 30px rgba(0,0,0,.05); object-fit: cover; } .founder-card { background: #fff; border: 1px solid #eee; border-radius: .75rem; padding: 1.25rem; height: 100%; box-shadow: 0 8px 24px rgba(0,0,0,.04); .founder-name { margin-bottom: .5rem; font-weight: 700; } .founder-description { p { margin-bottom: .8rem; } p:last-child { margin-bottom: 0; } } } /* 5) Utilities: Badge-Row unter Intro-Text */ #about-intro .badge { border: 1px solid #eaeaea; background: #fafafa; font-weight: 600; } /* 6) Harmonisierung der Section-Spacings für About */ #about-intro.section { padding-top: 90px; padding-bottom: 90px; } .mission-section.section { padding-top: 0; padding-bottom: 90px; } /* ABOUT Intro – schmal & Blocksatz */ #about-intro .intro-text.article-copy { max-width: 100ch; /* schmaler Textblock */ margin: 0 auto; text-align: justify; /* „blocksartig“ */ text-justify: inter-word; hyphens: auto; -webkit-hyphens: auto; overflow-wrap: anywhere; } #about-intro .intro-text.article-copy p { margin-bottom: .9rem; /* etwas kompakter als Standard */ } /* H2 optisch sauber zentrieren/ausbalancieren */ #about-intro h2 { text-wrap: balance; margin-bottom: 4rem; }