/* hazyrecollection.com — STO Sicherheit: #020617 Hintergrund, #0F172A Karten, #DC2626 Akzent, #22C55E Zusatz, #E2E8F0 Text */
:root {
  --primary-50: #fef2f2;
  --primary-100: #fee2e2;
  --primary-200: #fecaca;
  --primary-300: #fca5a5;
  --primary-400: #f87171;
  --primary-500: #dc2626;
  --primary-600: #b91c1c;
  --primary-700: #991b1b;
  --primary-rgb: 220, 38, 38;
  --neutral-50: #f8fafc;
  --neutral-100: #e2e8f0;
  --neutral-200: #94a3b8;
  --neutral-300: #64748b;
  --neutral-400: #475569;
  --neutral-500: #334155;
  --neutral-600: #1e293b;
  --neutral-700: #0f172a;
  --neutral-800: #0a0f1a;
  --neutral-900: #020617;
  --neutral-950: #010409;
  --surface-primary: #0f172a;
  --surface-secondary: #020617;
  --surface-accent: #1e293b;
  --text-primary: #e2e8f0;
  --text-secondary: #94a3b8;
  --text-accent: #dc2626;
  --button-primary-bg: #dc2626;
  --button-primary-text: #ffffff;
  --button-secondary-bg: #0f172a;
  --button-secondary-text: #e2e8f0;
  --border-light: rgba(226, 232, 240, 0.1);
  --border-medium: rgba(226, 232, 240, 0.18);
  --accent-green: #22c55e;
  --accent-green-rgb: 34, 197, 94;
}

html {
  scroll-behavior: smooth;
}

body,
#main-content {
  background-color: #020617 !important;
  color: #e2e8f0 !important;
}

.text-muted,
.top_body_base.text-muted,
.page_section_subtitle,
.blog-desc,
.lead.text-muted,
.premium_caption {
  color: #94a3b8 !important;
}

.text-secondary,
.bold_body_large.text-secondary {
  color: #cbd5e1 !important;
}

.header-clean {
  background: rgba(15, 23, 42, 0.94) !important;
  border-bottom: 1px solid var(--border-light);
  backdrop-filter: blur(12px);
}

.header-clean .navbar-light .nav-link {
  color: #e2e8f0 !important;
}

.header-clean .navbar-light .nav-link:hover,
.header-clean .navbar-light .nav-link:focus,
.header-clean .navbar-light .nav-link.active {
  color: #dc2626 !important;
}

.header-clean .brand-text {
  color: #e2e8f0 !important;
}

.header-clean .brand-icon rect {
  fill: #dc2626 !important;
}

.header-clean .custom-toggler .line {
  background: #e2e8f0 !important;
}

.header-clean .navbar-backdrop {
  background: rgba(2, 6, 23, 0.72) !important;
}

.header-clean .dropdown-menu {
  background: #0f172a !important;
  border: 1px solid var(--border-light);
}

.header-clean .dropdown-item {
  color: #e2e8f0 !important;
}

.header-clean .dropdown-item:hover {
  background: #1e293b !important;
  color: #22c55e !important;
}

.hero-section,
.usp-section,
.leadgen-section-secondary,
#about,
.services-section,
.blog-section,
.contact-section,
section.py-5 {
  background: transparent !important;
}

.hero-section {
  background:
    radial-gradient(circle at 12% 18%, rgba(220, 38, 38, 0.12), transparent 42%),
    radial-gradient(circle at 88% 8%, rgba(34, 197, 94, 0.1), transparent 38%),
    #020617 !important;
}

.usp-item,
.service-card,
.leadgen-form-card,
.about-feature-card,
.blog-card,
.form-card,
.info-card,
.accordion-item {
  background: #0f172a !important;
  border: 1px solid var(--border-light) !important;
  color: #e2e8f0 !important;
}

.service-card-featured {
  border-color: rgba(220, 38, 38, 0.45) !important;
  box-shadow: 0 0 0 1px rgba(220, 38, 38, 0.12);
}

.btn-primary,
.btn-leadgen-submit {
  background: #dc2626 !important;
  border-color: #dc2626 !important;
  color: #ffffff !important;
}

.btn-primary:hover,
.btn-leadgen-submit:hover {
  background: #b91c1c !important;
  border-color: #b91c1c !important;
}

.btn-outline-primary {
  color: #22c55e !important;
  border-color: #22c55e !important;
}

.btn-outline-primary:hover {
  background: rgba(34, 197, 94, 0.14) !important;
  color: #86efac !important;
}

.form-control,
.form-select,
.form-input,
.form-textarea {
  background: #020617 !important;
  border-color: var(--border-medium) !important;
  color: #e2e8f0 !important;
}

.form-control:focus,
.form-select:focus,
.form-input:focus {
  border-color: #dc2626 !important;
  box-shadow: 0 0 0 0.2rem rgba(220, 38, 38, 0.18) !important;
}

.form-floating > label {
  color: #94a3b8 !important;
}

.core_section_title,
.fresh_hero_title,
.display-4,
.blog-title {
  color: #e2e8f0 !important;
}

.usp-item-stat.clean_overline {
  color: #22c55e !important;
}

.service-price {
  color: #dc2626 !important;
}

.service-cta,
.blog-card-link {
  color: #22c55e;
}

.service-cta:hover,
.blog-card-link:hover {
  color: #dc2626 !important;
}

.leadgen-section-secondary {
  background: linear-gradient(180deg, #0f172a 0%, #020617 100%) !important;
}

.site-disclaimer-bar {
  background: #0f172a !important;
  border-top: 1px solid var(--border-light);
  border-bottom: 1px solid var(--border-light);
}

.footer-disclaimer-text,
.footer-disclaimer-text p {
  color: #94a3b8 !important;
  font-size: 0.875rem;
  line-height: 1.65;
}

.footer-professional-blue-01 {
  background: #020617 !important;
  border-top: 1px solid var(--border-light);
}

.footer-professional-blue-01 .footer-brand p,
.footer-professional-blue-01 .footer-link,
.footer-professional-blue-01 h3,
.footer-professional-blue-01 h4,
.footer-professional-blue-01 span,
.footer-professional-blue-01 p {
  color: #e2e8f0 !important;
}

.footer-professional-blue-01 .footer-link:hover {
  color: #dc2626 !important;
}

.footer-divider {
  border-color: var(--border-light) !important;
}

.article-container article,
.blog-article h1,
.blog-article h2,
.blog-article h3 {
  color: #e2e8f0 !important;
}

.article-meta {
  color: #94a3b8 !important;
}

.accordion-button {
  background: #0f172a !important;
  color: #e2e8f0 !important;
}

.accordion-button:not(.collapsed) {
  background: #1e293b !important;
  color: #dc2626 !important;
}

.accordion-body {
  background: #0f172a !important;
  color: #94a3b8 !important;
}

.ratio {
  background: #0f172a;
  border: 1px solid var(--border-light);
  border-radius: 0.5rem;
  overflow: hidden;
}

.contact-section {
  background: #020617 !important;
}

#team {
  border-color: var(--border-light) !important;
}

a:not(.btn):not(.footer-link):not(.service-cta):not(.blog-card-link):not(.nav-link):not(.dropdown-item) {
  color: #22c55e;
}

.text-primary,
.bi.text-primary {
  color: #dc2626 !important;
}

.legal-container,
.legal-content {
  color: #e2e8f0 !important;
}

.legal-content a {
  color: #22c55e !important;
}
