/*
 * theme.css - automatisch generiert von ThemeGenerator.php
 * Erstellt: 2026-03-09 02:57:28
 * Version : 20260309025728
 * NICHT MANUELL BEARBEITEN - wird bei Design-Aenderung im Admin ueberschrieben.
 * Manuelle Anpassungen -> assets/css/style.css
 */

@import url('https://fonts.googleapis.com/css2?family=Abril+Fatface:wght@700&family=Great+Vibes:wght@400;400&family=Dancing+Script:wght@400&display=swap');

:root {
  --fk-primary:        #ff8000;
  --fk-primary-rgb:    255, 128, 0;
  --fk-secondary:      #e94560;
  --fk-secondary-rgb:  233, 69, 96;
  --fk-bg:             #ffffff;
  --fk-text:           #1a1a2e;
  --fk-heading:        #0f0f23;
  --fk-hero-bg:        #ffff00;
  --fk-hero-text:      #ffffff;
  --fk-footer-bg:      #ff0080;
  --fk-cta:            #e94560;
  --fk-cta-rgb:        233, 69, 96;
  --fk-font-heading:   "Abril Fatface", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --fk-font-heading-w: 700;
  --fk-font-body:      "Great Vibes", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --fk-font-body-w:    400;
  --fk-font-accent:    "Dancing Script", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --fk-font-size:      16px;
  --fk-line-height:    1.6;
  --fk-container-max:  1320px;
  --fk-radius:         8px;
  --fk-btn-padding:    0.75rem 2rem;
  --bs-primary:        #ff8000;
  --bs-primary-rgb:    255, 128, 0;
  --bs-body-color:     #1a1a2e;
  --bs-body-bg:        #ffffff;
  --bs-border-radius:  8px;
}

html { font-size: 16px; scroll-behavior: smooth; }
body {
  font-family: var(--fk-font-body);
  font-weight: var(--fk-font-body-w);
  line-height: var(--fk-line-height);
  color: var(--fk-text);
  background: var(--fk-bg);
}

h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6 {
  font-family: var(--fk-font-heading);
  font-weight: var(--fk-font-heading-w);
  color: var(--fk-heading);
  line-height: 1.2;
}

.container,.container-lg,.container-xl,.container-xxl {
  max-width: var(--fk-container-max) !important;
}

.btn-primary {
  background-color: var(--fk-cta);
  border-color: var(--fk-cta);
  color: #ffffff;
  padding: var(--fk-btn-padding);
  border-radius: var(--fk-radius);
  font-weight: 600;
  transition: background .2s, transform .15s, box-shadow .2s;
}
.btn-primary:hover,.btn-primary:focus-visible {
  background-color: color-mix(in srgb, var(--fk-cta) 85%, #000);
  border-color: color-mix(in srgb, var(--fk-cta) 85%, #000);
  color: #ffffff;
  transform: translateY(-1px);
  box-shadow: 0 6px 20px rgba(var(--fk-cta-rgb),.35);
}
.btn-outline-primary {
  color: var(--fk-primary);
  border-color: var(--fk-primary);
  padding: var(--fk-btn-padding);
  border-radius: var(--fk-radius);
  font-weight: 600;
}
.btn-outline-primary:hover {
  background-color: var(--fk-primary);
  border-color: var(--fk-primary);
  color: #ffffff;
}

.hero-section,#hero,.section-hero {
  background-color: var(--fk-hero-bg);
  color: var(--fk-hero-text);
}
.hero-section h1,.hero-section h2,#hero h1,#hero h2 {
  font-family: var(--fk-font-heading);
  font-weight: var(--fk-font-heading-w);
  color: var(--fk-hero-text);
}

.navbar-brand { font-family: var(--fk-font-heading); font-weight: var(--fk-font-heading-w); }
.navbar-nav .nav-link.active,.navbar-nav .nav-link:hover { color: var(--fk-primary) !important; }

.site-logo { max-height: 52px; width: auto; object-fit: contain; }
.site-logo-text {
  font-family: var(--fk-font-heading);
  font-weight: var(--fk-font-heading-w);
  font-size: 1.5rem;
  color: var(--fk-primary);
  text-decoration: none;
  letter-spacing: .03em;
}
.site-logo-text:hover { color: var(--fk-secondary); }

footer,.site-footer { background-color: var(--fk-footer-bg); color: rgba(255,255,255,.8); }
footer h3,footer h4,footer h5 { font-family: var(--fk-font-heading); color: #ffffff; }
footer a { color: rgba(255,255,255,.7); }
footer a:hover { color: var(--fk-secondary); }

a { color: var(--fk-primary); transition: color .15s; }
a:hover { color: var(--fk-secondary); }

.card { border-radius: var(--fk-radius); }
.card-title { font-family: var(--fk-font-heading); font-weight: var(--fk-font-heading-w); color: var(--fk-heading); }

.font-accent,.price-value,blockquote cite,.section-tagline { font-family: var(--fk-font-accent); }

:focus-visible { outline: 3px solid var(--fk-primary); outline-offset: 3px; border-radius: 2px; }
a:focus-visible,button:focus-visible { outline-color: var(--fk-secondary); }

::selection { background: rgba(var(--fk-primary-rgb),.18); color: var(--fk-heading); }

::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: #f1f1f1; }
::-webkit-scrollbar-thumb { background: var(--fk-primary); border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: var(--fk-secondary); }
