Files
sonith-website/css/style.css
T
techadmin f879f1cda6 feat: Standorte Würzburg/Rüdenau & dynamischer Header (v1.3.0)
- Header wächst beim ersten Eindruck auf 7rem (Logo h-18) und schrumpft
  beim Scrollen auf 5rem (Logo h-10) — Logo gewinnt oben mehr Praesenz,
  bleibt beim Lesen aber kompakt
- Kontakt-Sektion umstrukturiert:
  - Direktkontakt (Telefon, E-Mail, Helpdesk) als 3er-Grid
  - Neue Untersektion „Unsere Standorte" mit zwei Karten
- Standorte: Würzburg (Niederlassung, Adresse als TODO-Platzhalter) und
  Rüdenau (Hauptsitz lt. Handelsregister)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-04 23:30:35 +02:00

149 lines
3.3 KiB
CSS

/* ============================================================
sonith.de — Custom Styles
CI-konform: Logo-Gelb #DEDC1E, Petrol #067391, CI-Grau #848687/#C8C9CA
Hintergrund: petrol-getoentes Dunkel #0a1f28 / #102b38
============================================================ */
/* Smooth scrolling offset for fixed nav */
html {
scroll-padding-top: 5rem;
}
/* ---- Navbar ---- */
#navbar {
background: rgba(10, 31, 40, 0.8);
backdrop-filter: blur(12px);
-webkit-backdrop-filter: blur(12px);
}
#navbar.scrolled {
background: rgba(10, 31, 40, 0.95);
box-shadow: 0 1px 0 rgba(6, 115, 145, 0.2);
}
/* Header schrumpft beim Scrollen: gross & einladend oben, kompakt waehrend des Lesens */
.nav-row {
height: 6rem;
transition: height 0.3s ease;
}
.nav-logo {
height: 3.5rem;
transition: height 0.3s ease;
}
@media (min-width: 1024px) {
.nav-row { height: 7rem; }
.nav-logo { height: 4.5rem; }
}
#navbar.scrolled .nav-row { height: 4rem; }
#navbar.scrolled .nav-logo { height: 2.25rem; }
@media (min-width: 1024px) {
#navbar.scrolled .nav-row { height: 5rem; }
#navbar.scrolled .nav-logo { height: 2.5rem; }
}
/* Active nav link */
.nav-link.active {
color: #DEDC1E;
}
/* ---- Fade-in Animation ---- */
.fade-in {
opacity: 0;
transform: translateY(24px);
transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}
.fade-in.visible {
opacity: 1;
transform: translateY(0);
}
/* Staggered children */
.fade-in:nth-child(2) { transition-delay: 0.1s; }
.fade-in:nth-child(3) { transition-delay: 0.2s; }
.fade-in:nth-child(4) { transition-delay: 0.3s; }
/* ---- Service Cards ---- */
.service-card {
opacity: 0;
transform: translateY(24px);
transition: opacity 0.5s ease-out, transform 0.5s ease-out,
border-color 0.3s, box-shadow 0.3s;
}
.service-card.visible {
opacity: 1;
transform: translateY(0);
}
.service-card:nth-child(1) { transition-delay: 0.0s; }
.service-card:nth-child(2) { transition-delay: 0.08s; }
.service-card:nth-child(3) { transition-delay: 0.16s; }
.service-card:nth-child(4) { transition-delay: 0.24s; }
.service-card:nth-child(5) { transition-delay: 0.32s; }
.service-card:nth-child(6) { transition-delay: 0.40s; }
.service-card:hover {
box-shadow: 0 0 24px rgba(222, 220, 30, 0.08),
0 0 48px rgba(6, 115, 145, 0.06);
}
/* ---- USP Cards ---- */
.usp-card {
transition: transform 0.3s ease;
}
.usp-card:hover {
transform: translateY(-4px);
}
/* ---- Team Cards ---- */
.team-card {
transition: transform 0.3s ease;
}
.team-card:hover {
transform: translateY(-4px);
}
/* ---- Contact Cards ---- */
.contact-card {
transition: all 0.3s ease;
}
.contact-card:hover {
transform: translateY(-2px);
}
/* ---- Selection Color ---- */
::selection {
background: rgba(222, 220, 30, 0.3);
color: #fff;
}
/* ---- Scrollbar (CI-Petrol-Toene) ---- */
::-webkit-scrollbar {
width: 8px;
}
::-webkit-scrollbar-track {
background: #0a1f28;
}
::-webkit-scrollbar-thumb {
background: #1a3d4d;
border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
background: #045066;
}
/* ---- Focus Styles ---- */
a:focus-visible,
button:focus-visible {
outline: 2px solid #DEDC1E;
outline-offset: 2px;
border-radius: 4px;
}