/* landing-base.css — auto-extracted used subset of style.css (v30) for the landing pages
   (index, funktionen, faq, preise, extension, 404, 500). Source of truth for the app remains
   css/style.css; this file exists so landing pages stop shipping the full app stylesheet. */
@font-face { font-family: Inter; font-style: normal; font-weight: 400 700; font-display: swap; src: url("../fonts/inter-latin.woff2") format("woff2"); unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: Inter; font-style: normal; font-weight: 400 700; font-display: swap; src: url("../fonts/inter-latin-ext.woff2") format("woff2"); unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Playfair Display"; font-style: normal; font-weight: 400 700; font-display: swap; src: url("../fonts/playfair-display-latin.woff2") format("woff2"); unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Playfair Display"; font-style: normal; font-weight: 400 700; font-display: swap; src: url("../fonts/playfair-display-latin-ext.woff2") format("woff2"); unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Hanken Grotesk"; font-style: normal; font-weight: 300 700; font-display: swap; src: url("../fonts/hanken-grotesk-latin.woff2") format("woff2"); unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Hanken Grotesk"; font-style: normal; font-weight: 300 700; font-display: swap; src: url("../fonts/hanken-grotesk-latin-ext.woff2") format("woff2"); unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
*, ::before, ::after { margin: 0px; padding: 0px; box-sizing: border-box; }
:root { --blue: #2563eb; --blue-light: #3b82f6; --blue-bg: rgba(37, 99, 235, 0.06); --green: #059669; --green-light: #10b981; --green-bg: #ecfdf5; --orange: #6366f1; --red: #60a5fa; --purple: #8b5cf6; --dark: #0f172a; --text: #0f172a; --gray: #94a3b8; --gray-light: #f8fafc; --white: #ffffff; --primary: #0f172a; --primary-light: #1e293b; --accent: #2563eb; --accent-light: #3b82f6; --accent-subtle: rgba(37, 99, 235, 0.08); --success: #10b981; --danger: #60a5fa; --border-light: #f1f5f9; --bg: #ffffff; --bg-subtle: #f8fafc; --bg-muted: #f1f5f9; --zima: #00B4D8; --zima-light: #38BDF8; --zima-dark: #0891B2; --zima-glow: rgba(0, 180, 216, 0.12); --zima-subtle: rgba(0, 180, 216, 0.06); --sidebar-bg: #0c0c0c; --sidebar-text: #a1a1aa; --sidebar-active: #ffffff; --sidebar-hover: rgba(255,255,255,0.06); --sidebar-accent: #ffffff; --shadow-xs: 0 1px 2px rgba(0,0,0,0.04); --shadow-sm: 0 1px 3px rgba(0,0,0,0.06), 0 1px 2px rgba(0,0,0,0.04); --shadow: 0 1px 3px rgba(0,0,0,0.04), 0 4px 12px rgba(0,0,0,0.06); --shadow-md: 0 4px 6px rgba(0,0,0,0.04), 0 10px 24px rgba(0,0,0,0.06); --shadow-lg: 0 8px 16px rgba(0,0,0,0.06), 0 24px 48px rgba(0,0,0,0.08); --shadow-xl: 0 8px 16px rgba(0,0,0,0.04), 0 20px 60px rgba(0,0,0,0.1); --radius-xs: 4px; --radius-sm: 6px; --radius-md: 10px; --radius: 14px; --radius-lg: 14px; --radius-xl: 20px; --radius-full: 9999px; --ease: cubic-bezier(0.25, 0.46, 0.45, 0.94); --duration: 0.2s; --transition: 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94); --z-base: 1; --z-sticky: 10; --z-dropdown: 20; --z-topbar: 100; --z-toolbar: 200; --z-popover: 300; --z-sidebar-overlay: 998; --z-sidebar: 999; --z-nav: 1000; --z-toast: 2000; --z-modal-backdrop: 9999; --z-modal: 10000; --bg-app: #0f172a; --bg-card: #1e293b; --bg-surface: #1e293b; --bg-sidebar: #0c1220; --bg-input: #1e293b; --text-primary: #f1f5f9; --text-secondary: #94a3b8; --text-muted: #64748b; --text-light: #94a3b8; --border-color: #334155; --border: #334155; --hover-bg: #334155; }
[data-theme="light"] { --bg-app: #f8fafc; --bg-card: #ffffff; --bg-surface: #ffffff; --bg-sidebar: #f1f5f9; --bg-input: #ffffff; --text-primary: #0f172a; --text-secondary: #64748b; --text-muted: #94a3b8; --text-light: #64748b; --border-color: #e2e8f0; --border: #e2e8f0; --hover-bg: #f1f5f9; }
html { scroll-behavior: smooth; overflow-x: hidden; }
body { overflow-x: hidden; }
body { font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color: rgb(15, 23, 42); line-height: 1.6; font-size: 15px; background: rgb(255, 255, 255); -webkit-font-smoothing: antialiased; letter-spacing: -0.011em; font-feature-settings: "cv11", "ss01"; }
.container { max-width: 1140px; margin: 0px auto; padding: 0px 24px; }
h1, h2, h3, h4 { line-height: 1.15; font-weight: 700; letter-spacing: -0.025em; color: var(--primary); }
h1 { font-size: clamp(2rem, 4.5vw, 2.8rem); letter-spacing: -0.03em; }
h2 { font-size: clamp(1.5rem, 3vw, 2rem); letter-spacing: -0.025em; }
h3 { font-size: 1.125rem; font-weight: 600; letter-spacing: -0.02em; }
p { color: var(--text-secondary); }
a { color: var(--accent); text-decoration: none; transition: color var(--transition); }
:focus-visible { outline: 2px solid var(--zima); outline-offset: 2px; }
.btn { display: inline-flex; align-items: center; gap: 8px; padding: 10px 20px; border-radius: var(--radius-sm); font-weight: 600; font-size: 14px; border: 1px solid transparent; cursor: pointer; transition: all 0.15s var(--ease); text-decoration: none; white-space: nowrap; letter-spacing: -0.01em; }
.btn-lg { padding: 12px 28px; font-size: 15px; border-radius: var(--radius-md); }
.btn-primary { background: var(--primary); color: rgb(255, 255, 255); border-color: var(--primary); box-shadow: var(--shadow-xs); }
.btn-primary:hover { background: var(--primary-light); box-shadow: var(--shadow-sm); transform: translateY(-0.5px); }
.btn-white { background: white; color: var(--primary); border-color: white; box-shadow: var(--shadow-sm); }
.btn-white:hover { background: var(--bg-subtle); transform: translateY(-0.5px); }
.btn-block { display: flex; justify-content: center; width: 100%; }
.nav { position: fixed; top: 0px; left: 0px; right: 0px; z-index: 1000; background: rgba(255, 255, 255, 0.92); backdrop-filter: blur(16px) saturate(180%); border-bottom: 1px solid rgba(0, 0, 0, 0.04); transition: all var(--transition); }
.nav.scrolled { box-shadow: rgba(0, 0, 0, 0.04) 0px 1px 3px, rgba(0, 0, 0, 0.06) 0px 4px 24px; }
.nav-container { max-width: 1140px; margin: 0px auto; padding: 0px 24px; display: flex; align-items: center; justify-content: space-between; height: 64px; }
.nav-logo { display: flex; align-items: center; gap: 6px; text-decoration: none; letter-spacing: -0.03em; }
.logo-bolt { flex-shrink: 0; filter: drop-shadow(rgba(59, 130, 246, 0.3) 0px 2px 4px); }
.logo-text { font-size: 1.35rem; font-weight: 900; line-height: 1; }
.logo-blitz { color: var(--dark); }
.logo-doc { color: rgb(59, 130, 246); }
[data-theme="light"] .logo-blitz { color: var(--dark, #0f172a); }
.logo-icon { font-size: 1.1rem; display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; background: linear-gradient(135deg, rgb(59, 130, 246), rgb(139, 92, 246)); color: rgb(255, 255, 255); border-radius: 8px; box-shadow: rgba(59, 130, 246, 0.3) 0px 2px 6px; }
.nav-links { display: flex; align-items: center; gap: 28px; }
.nav-links a { color: var(--text-light); font-size: 14px; font-weight: 500; transition: color var(--transition); }
.nav-links a:hover { color: var(--zima); }
.nav-login { color: var(--text) !important; padding: 8px 16px !important; border: 1.5px solid rgb(226, 232, 240) !important; border-radius: var(--radius-sm) !important; font-size: 14px !important; font-weight: 600 !important; transition: 0.2s !important; background: transparent !important; }
.nav-login:hover { border-color: var(--zima) !important; color: var(--zima) !important; background: var(--zima-subtle) !important; }
.nav-cta { background: linear-gradient(135deg, var(--zima-dark), var(--zima)) !important; color: white !important; padding: 8px 20px !important; border-radius: var(--radius-sm) !important; box-shadow: rgba(0, 180, 216, 0.25) 0px 2px 8px !important; }
.nav-cta:hover { transform: translateY(-0.5px); background: linear-gradient(135deg, var(--zima), var(--zima-light)) !important; box-shadow: rgba(0, 180, 216, 0.35) 0px 4px 12px !important; }
.nav-hamburger { display: none; background: none; border: none; cursor: pointer; flex-direction: column; gap: 5px; padding: 4px; }
.nav-hamburger span { display: block; width: 22px; height: 2px; background: var(--text); border-radius: 2px; transition: all var(--transition); }
.gradient-text { background-image: ; background-position-x: ; background-position-y: ; background-size: ; background-repeat: ; background-attachment: ; background-origin: ; background-color: ; -webkit-text-fill-color: transparent; background-clip: text; }
.features { padding: 80px 0px; }
.section-header { text-align: center; max-width: 600px; margin: 0px auto 50px; }
.section-header h2 { margin-bottom: 12px; }
.section-header p { font-size: 1.05rem; line-height: 1.7; }
.features-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.feature-card { padding: 28px; border-radius: var(--radius); border: 1px solid var(--border); transition: all 0.2s var(--ease); background: white; }
.feature-card:hover { transform: translateY(-2px); box-shadow: rgba(0, 180, 216, 0.1) 0px 4px 16px; border-color: rgba(0, 180, 216, 0.25); }
.feature-icon { width: 48px; height: 48px; border-radius: 12px; display: flex; align-items: center; justify-content: center; margin-bottom: 16px; }
.feature-card h3 { margin-bottom: 8px; }
.feature-card p { font-size: 14px; line-height: 1.6; }
.input-text { color: var(--text); }
.shield-icon { font-size: 48px; margin-bottom: 4px; display: flex; align-items: center; justify-content: center; }
.flow-arrow { color: var(--green-light); font-weight: 800; font-size: 16px; }
.pricing { padding: 80px 0px; background: var(--gray-light); }
.price-card { background: white; border-radius: var(--radius); padding: 36px; border: 1.5px solid rgb(226, 232, 240); text-align: center; position: relative; transition: all var(--transition); }
.price-card:hover { box-shadow: var(--shadow-lg); transform: translateY(-2px); }
.price-card:first-child { border-color: var(--blue); box-shadow: rgba(26, 86, 219, 0.1) 0px 4px 16px; }
.price-badge { display: inline-block; background: var(--blue); color: white; padding: 4px 16px; border-radius: 100px; font-size: 12px; font-weight: 700; margin-bottom: 16px; }
.price-amount { font-size: 2.5rem; font-weight: 800; color: var(--dark); }
.price-desc { font-size: 14px; color: var(--gray); margin: 4px 0px 20px; }
.price-features { list-style: none; text-align: left; margin-bottom: 24px; }
.price-features li { padding: 6px 0px; font-size: 14px; color: var(--text); border-bottom: 1px solid rgb(240, 240, 240); }
.faq { padding: 80px 0px; background: white; }
.faq-list { max-width: 700px; margin: 0px auto; }
.faq-item { border-bottom: 1px solid rgb(241, 245, 249); padding: 18px 0px; }
.faq-item summary { font-weight: 600; font-size: 15px; cursor: pointer; list-style: none; display: flex; justify-content: space-between; align-items: center; color: var(--dark); transition: color var(--transition); }
.faq-item summary:hover { color: var(--blue); }
.faq-item summary::after { content: "+"; font-size: 20px; color: var(--gray); transition: transform var(--transition); }
.faq-item[open] summary::after { content: "−"; color: var(--blue); }
.faq-item p { margin-top: 10px; font-size: 14px; line-height: 1.7; }
.cta { padding: 100px 0px; background: linear-gradient(135deg, #0c1829 0%, #0e3552 50%, var(--zima-dark) 100%); text-align: center; position: relative; overflow: hidden; }
.cta::before { content: ""; position: absolute; inset: 0px; background: radial-gradient(at 30% 50%, rgba(0, 180, 216, 0.15) 0%, transparent 60%); pointer-events: none; }
.cta h2 { color: white; margin-bottom: 12px; position: relative; }
.cta p { color: rgba(255, 255, 255, 0.7); font-size: 1.1rem; margin-bottom: 28px; position: relative; }
.cta-buttons { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }
.email-form { display: flex; justify-content: center; align-items: center; flex-wrap: wrap; gap: 8px; }
.email-form input { outline: none; }
.email-form input:focus { box-shadow: rgba(255, 255, 255, 0.3) 0px 0px 0px 3px; }
@media (max-width: 600px) {
  .email-form { flex-direction: column; }
  .email-form input { width: 100% !important; }
  .email-form button { width: 100%; }
}
.footer { padding: 60px 0px 30px; background: var(--sidebar-bg); color: var(--sidebar-text); border-top: 2px solid var(--zima); }
.footer-grid { display: grid; grid-template-columns: 1.5fr 1fr 1fr 1fr; gap: 40px; margin-bottom: 40px; }
.footer-brand p { margin-top: 10px; font-size: 13px; line-height: 1.6; }
.footer-brand .nav-logo { color: white; }
.footer-brand .logo-blitz { color: rgb(255, 255, 255); }
body.landing-page .footer-links :is(h3, h4) { font-family: var(--ln-sans, Inter, sans-serif); color: rgba(255, 255, 255, 0.9); font-size: 13px; margin-bottom: 14px; text-transform: uppercase; letter-spacing: 0.05em; font-weight: 600; }
.footer-links a { display: block; color: rgba(255, 255, 255, 0.45); font-size: 13px; margin-bottom: 8px; transition: color var(--transition); }
.footer-links a:hover { color: var(--zima-light); }
.footer-bottom { padding-top: 20px; border-top: 1px solid rgba(255, 255, 255, 0.06); text-align: center; font-size: 12px; }
.time-saving { padding: 80px 0px; background: white; }
.time-comparison { display: grid; grid-template-columns: 1fr auto 1fr; gap: 24px; align-items: center; margin-bottom: 40px; }
.time-card { background: var(--gray-light); border-radius: var(--radius); padding: 28px; border: 1.5px solid rgb(226, 232, 240); }
.time-before { border-color: rgba(239, 68, 68, 0.15); background: rgb(254, 242, 242); }
.time-after { border-color: rgba(5, 150, 105, 0.2); background: rgb(236, 253, 245); }
.time-card-label { font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 16px; text-align: center; }
.time-before .time-card-label { color: var(--red); }
.time-after .time-card-label { color: var(--green); }
.time-stats { display: grid; gap: 14px; }
.time-stat { display: flex; align-items: baseline; gap: 10px; }
.time-num { font-size: 1.4rem; font-weight: 800; color: var(--dark); min-width: 90px; text-align: right; }
.time-before .time-num { color: var(--red); }
.highlight-green { color: var(--green) !important; }
.time-desc { font-size: 13px; color: var(--text-light); }
.time-arrow-container { text-align: center; }
.time-arrow { font-size: 2.5rem; color: var(--blue); font-weight: 800; animation: 2s ease-in-out 0s infinite normal none running arrowPulse; }
@keyframes arrowPulse { 
  0%, 100% { opacity: 0.5; transform: translateX(0px); }
  50% { opacity: 1; transform: translateX(4px); }
}
.time-arrow-label { display: block; font-size: 12px; font-weight: 600; color: var(--blue); margin-top: 4px; }
.time-highlight-box { display: flex; align-items: flex-start; gap: 16px; background: var(--blue-bg); border-left: 4px solid var(--blue); border-radius: 8px; padding: 20px 24px; margin-bottom: 48px; }
.time-highlight-icon { font-size: 32px; flex-shrink: 0; }
.page-header { padding: 100px 0px 40px; background: var(--gray-light); }
.page-header h1 { font-size: 2rem; margin-bottom: 8px; }
.page-subtitle { color: var(--text-light); font-size: 1.05rem; max-width: 600px; }
.back-link { display: inline-flex; align-items: center; gap: 6px; margin-bottom: 16px; font-size: 14px; color: var(--blue-light); }
@media (max-width: 900px) {
  .time-comparison { grid-template-columns: 1fr; }
  .time-arrow-container { transform: rotate(90deg); }
  .features-grid { grid-template-columns: repeat(2, 1fr); }
  .footer-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
  body { overflow-x: hidden; }
  .container { padding: 0px 16px; }
  .nav-container { padding: 0px 16px; }
  .nav-links { display: none; position: absolute; top: 64px; left: 0px; right: 0px; background: white; flex-direction: column; padding: 20px; gap: 16px; box-shadow: var(--shadow-lg); }
  .nav-links.open { display: flex; }
  .nav-hamburger { display: flex; }
  .features { padding: 40px 0px; }
  .features-grid { grid-template-columns: 1fr; gap: 12px; }
  .feature-card { padding: 20px; }
  .feature-icon { width: 44px; height: 44px; margin-bottom: 12px; }
  .section-header { margin-bottom: 24px; }
  .section-header p { font-size: 0.95rem; }
  .pricing { padding: 40px 0px; }
  #ambient { overflow-x: hidden; padding: 36px 0px !important; }
  #ambient h2 { font-size: 1.2rem !important; }
  .footer-grid { grid-template-columns: 1fr; gap: 24px; }
  .time-stat { flex-direction: column; gap: 2px; }
  .time-num { text-align: left; min-width: auto; }
  .footer { padding: 36px 0px 24px; }
  .footer-newsletter { padding: 12px 0px; }
  h1 { font-size: 1.5rem; }
  h2 { font-size: 1.25rem; }
  h3 { font-size: 1rem; }
  .mobile-cta-bar { position: fixed; bottom: 0px; left: 0px; right: 0px; background: rgba(255, 255, 255, 0.95); backdrop-filter: blur(16px) saturate(180%); padding: 10px 16px; box-shadow: rgba(0, 0, 0, 0.04) 0px -1px 3px, rgba(0, 0, 0, 0.06) 0px -4px 20px; z-index: 999; display: flex; gap: 10px; align-items: center; }
  .mobile-cta-bar .btn { flex: 1 1 0%; justify-content: center; padding: 12px 16px; font-size: 14px; }
  body { padding-bottom: 68px; }
  html { scroll-snap-type: y; }
  section, .footer { scroll-snap-align: none; }
  .hero, .pricing { scroll-snap-align: start; }
  #ambient { box-sizing: border-box; min-height: 100dvh !important; display: flex !important; flex-direction: column !important; align-items: center !important; padding: 24px 0px !important; overflow-x: hidden !important; }
  #ambient > * { width: 100%; max-width: 100%; box-sizing: border-box; }
  #datenschutz { box-sizing: border-box; min-height: 100dvh !important; display: flex !important; align-items: center !important; padding: 24px 0px !important; }
  #datenschutz > .container { width: 100%; }
  .pricing { min-height: 100dvh; display: flex; align-items: center; box-sizing: border-box; padding: 24px 0px !important; }
  .pricing > .container { width: 100%; }
  .footer { min-height: auto; }
}
@media (min-width: 601px) {
  .mobile-cta-bar { display: none !important; }
}
.footer-newsletter { text-align: center; padding: 16px 0px; border-top: 1px solid rgba(255, 255, 255, 0.1); margin-bottom: 16px; }
body.landing-page { --ln-navy: #0B1426; --ln-charcoal: #1C2333; --ln-red: #3b82f6; --ln-red-dark: #2563eb; --ln-red-glow: rgba(255, 0, 0, 0.12); --ln-white: #FAFBFC; --ln-cream: #F5F3EF; --ln-warm-gray: #6B7280; --ln-light-gray: #9CA3AF; --ln-border: #E5E7EB; --ln-serif: 'Playfair Display', Georgia, 'Times New Roman', serif; --ln-sans: 'Hanken Grotesk', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; font-family: var(--ln-sans); color: var(--ln-navy); background: var(--ln-white); -webkit-font-smoothing: antialiased; }
body.landing-page .nav { background: transparent; border-bottom: none; transition: background 0.3s, box-shadow 0.3s, border-bottom 0.3s; }
body.landing-page .nav.nav-scrolled { background: rgba(255, 255, 255, 0.97); border-bottom: 1px solid var(--ln-border); box-shadow: rgba(0, 0, 0, 0.04) 0px 1px 8px; backdrop-filter: blur(12px); }
body.landing-page .nav .nav-logo { font-family: var(--ln-sans); font-weight: 700; letter-spacing: -0.02em; }
body.landing-page .nav-links a { font-family: var(--ln-sans); font-weight: 500; font-size: 14px; letter-spacing: 0.01em; }
.ln-hero { min-height: 100vh; display: flex; align-items: center; padding: 120px 0px 80px; background: var(--ln-navy); position: relative; overflow: hidden; }
.ln-hero::before { content: ""; position: absolute; inset: 0px; background: linear-gradient(135deg, rgba(255, 0, 0, 0.04) 0%, transparent 40%), linear-gradient(315deg, rgba(255, 0, 0, 0.02) 0%, transparent 50%); pointer-events: none; }
.ln-hero::after { content: ""; position: absolute; inset: 0px; background-image: linear-gradient(rgba(255, 255, 255, 0.02) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.02) 1px, transparent 1px); background-size: 60px 60px; pointer-events: none; }
.ln-hero-inner { position: relative; z-index: 1; display: grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items: center; max-width: 1200px; margin: 0px auto; padding: 0px 24px; }
.ln-hero-text h1 { font-family: var(--ln-serif); font-size: clamp(2.4rem, 5vw, 3.8rem); font-weight: 700; line-height: 1.1; color: rgb(255, 255, 255); letter-spacing: -0.03em; margin-bottom: 24px; }
.ln-hero-text h1 .ln-accent { color: var(--ln-red); display: block; }
.ln-hero-subtitle { font-size: 18px; line-height: 1.7; color: rgba(255, 255, 255, 0.6); max-width: 480px; margin-bottom: 36px; font-weight: 400; }
.ln-hero-cta { display: inline-flex; align-items: center; gap: 12px; padding: 16px 36px; background: var(--ln-red); color: rgb(255, 255, 255); font-family: var(--ln-sans); font-size: 16px; font-weight: 600; border-radius: 6px; text-decoration: none; letter-spacing: 0.01em; transition: 0.2s; border: none; cursor: pointer; }
.ln-hero-cta:hover { background: var(--ln-red-dark); transform: translateY(-1px); box-shadow: rgba(255, 0, 0, 0.3) 0px 8px 24px; }
.ln-hero-note { font-size: 13px; color: rgba(255, 255, 255, 0.4); margin-top: 16px; }
.ln-hero-demo { position: relative; background: rgba(255, 255, 255, 0.04); border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 12px; padding: 0px; overflow: hidden; box-shadow: rgba(0, 0, 0, 0.3) 0px 20px 60px; }
.ln-trust-bar { display: flex; justify-content: center; gap: 40px; flex-wrap: wrap; padding: 20px 24px; background: var(--ln-white); border-bottom: 1px solid var(--ln-border); }
.ln-trust-item { display: flex; align-items: center; gap: 10px; font-size: 13px; color: var(--ln-warm-gray); font-weight: 500; font-family: var(--ln-sans); }
.ln-trust-item svg { flex-shrink: 0; }
.ln-problem { padding: 120px 0px; background: var(--ln-white); }
.ln-problem-inner { max-width: 1200px; margin: 0px auto; padding: 0px 24px; display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: center; }
.ln-problem-text { max-width: 500px; }
.ln-section-tag { font-size: 11px; font-weight: 700; color: var(--ln-red); text-transform: uppercase; letter-spacing: 2px; margin-bottom: 16px; font-family: var(--ln-sans); }
.ln-section-heading { font-family: var(--ln-serif); font-size: clamp(1.8rem, 3.5vw, 2.6rem); font-weight: 700; line-height: 1.15; color: var(--ln-navy); letter-spacing: -0.02em; margin-bottom: 20px; }
.ln-section-body { font-size: 16px; line-height: 1.8; color: var(--ln-warm-gray); font-weight: 400; }
.ln-problem-visual { display: flex; flex-direction: column; gap: 24px; }
.ln-before-after { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.ln-ba-card { padding: 28px 24px; border-radius: 10px; border: 1px solid var(--ln-border); }
.ln-ba-card.ln-before { background: rgb(255, 255, 255); border-color: var(--ln-border, #e7e5e4); }
.ln-ba-card.ln-after { background: rgb(255, 255, 255); border-color: var(--ln-border, #e7e5e4); }
body.landing-page .ln-ba-card :is(h3, h4) { font-family: var(--ln-sans); font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 1.5px; margin-bottom: 12px; }
.ln-ba-card.ln-before :is(h3, h4) { color: #6b7280; }
.ln-ba-card.ln-after :is(h3, h4) { color: #0f766e; }
.ln-ba-card p { font-size: 14px; line-height: 1.6; color: var(--ln-navy); }
.ln-stat-big { font-family: var(--ln-serif); font-size: clamp(3rem, 6vw, 5rem); font-weight: 700; color: var(--ln-navy); line-height: 1; letter-spacing: -0.04em; }
.ln-stat-big .ln-stat-red { color: var(--ln-navy); }
.ln-stat-unit { font-family: var(--ln-sans); font-size: 16px; color: var(--ln-warm-gray); margin-top: 8px; font-weight: 400; }
.ln-timeline { padding: 120px 0px; background: var(--ln-cream); }
.ln-timeline-header { text-align: center; max-width: 600px; margin: 0px auto 72px; padding: 0px 24px; }
.ln-timeline-track { max-width: 1100px; margin: 0px auto; padding: 0px 24px; position: relative; display: grid; grid-template-columns: repeat(4, 1fr); gap: 0px; }
.ln-timeline-track::before { content: ""; position: absolute; top: 28px; left: calc(12.5% + 12px); right: calc(12.5% + 12px); height: 2px; background: var(--ln-border); z-index: 0; }
.ln-timeline-line-fill { position: absolute; top: 28px; left: calc(12.5% + 12px); height: 2px; background: var(--ln-red); z-index: 1; width: 0px; transition: width 1.2s cubic-bezier(0.4, 0, 0.2, 1); }
.ln-timeline-track.ln-animated .ln-timeline-line-fill { width: calc(75% - 24px); }
.ln-timeline-step { text-align: center; position: relative; z-index: 2; padding: 0px 12px; opacity: 0; transform: translateY(16px); transition: 0.5s; }
.ln-timeline-step.ln-visible { opacity: 1; transform: translateY(0px); }
.ln-step-dot { width: 56px; height: 56px; border-radius: 50%; background: var(--ln-white); border: 2px solid var(--ln-border); display: flex; align-items: center; justify-content: center; margin: 0px auto 20px; font-size: 22px; transition: 0.4s; }
.ln-timeline-step.ln-active .ln-step-dot { border-color: var(--ln-red); background: var(--ln-red); box-shadow: rgba(255, 0, 0, 0.25) 0px 4px 16px; }
.ln-timeline-step.ln-active .ln-step-dot svg path, .ln-timeline-step.ln-active .ln-step-dot svg polyline, .ln-timeline-step.ln-active .ln-step-dot svg circle, .ln-timeline-step.ln-active .ln-step-dot svg polygon { stroke: rgb(255, 255, 255); fill: none; }
.ln-step-num { font-size: 11px; font-weight: 700; color: var(--ln-light-gray); text-transform: uppercase; letter-spacing: 1.5px; margin-bottom: 8px; font-family: var(--ln-sans); }
.ln-timeline-step.ln-active .ln-step-num { color: var(--ln-red); }
.ln-step-title { font-family: var(--ln-sans); font-size: 16px; font-weight: 600; color: var(--ln-navy); margin-bottom: 8px; }
.ln-step-desc { font-size: 13px; color: var(--ln-warm-gray); line-height: 1.6; }
.ln-privacy { padding: 120px 0px; background: var(--ln-navy); position: relative; overflow: hidden; }
.ln-privacy::before { content: ""; position: absolute; inset: 0px; background-image: linear-gradient(rgba(255, 255, 255, 0.016) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.016) 1px, transparent 1px); background-size: 60px 60px; pointer-events: none; }
.ln-privacy-inner { position: relative; z-index: 1; max-width: 1100px; margin: 0px auto; padding: 0px 24px; }
.ln-privacy-header { text-align: center; margin-bottom: 64px; }
.ln-privacy-header .ln-section-tag { color: rgba(255, 255, 255, 0.5); }
.ln-privacy-header .ln-section-heading { color: rgb(255, 255, 255); }
.ln-privacy-header p { color: #57606a; }
.ln-dataflow { display: flex; align-items: center; justify-content: center; gap: 0px; margin-bottom: 56px; flex-wrap: wrap; }
.ln-flow-node { display: flex; flex-direction: column; align-items: center; gap: 10px; padding: 20px; min-width: 140px; }
.ln-flow-icon { width: 64px; height: 64px; border-radius: 14px; display: flex; align-items: center; justify-content: center; font-size: 28px; border: 1px solid var(--ln-border, #e7e5e4); background: #ffffff; }
.ln-flow-label { font-size: 13px; font-weight: 600; color: var(--ln-ink, #0f172a); text-align: center; }
.ln-flow-sublabel { font-size: 11px; color: #57606a; text-align: center; }
.ln-flow-arrow { font-size: 20px; color: var(--ln-red); flex-shrink: 0; opacity: 0.7; }
.ln-privacy-badges { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 16px; }
.ln-privacy-badge { background: #ffffff; border: 1px solid var(--ln-border, #e7e5e4); border-radius: 10px; padding: 24px; transition: border-color 0.2s; }
.ln-privacy-badge:hover { border-color: rgba(15, 118, 110, 0.35); }
body.landing-page .ln-privacy-badge :is(h3, h4) { font-family: var(--ln-sans); font-size: 14px; font-weight: 600; color: var(--ln-ink, #0f172a); margin-bottom: 8px; display: flex; align-items: center; gap: 8px; }
.ln-privacy-badge p { font-size: 13px; color: #57606a; line-height: 1.6; }
.ln-privacy-legal { text-align: center; margin-top: 40px; font-size: 12px; color: #6b7280; }
.ln-privacy-legal a { color: var(--ln-red); text-decoration: none; font-weight: 600; }
.ln-arzt { padding: 120px 0px; background: var(--ln-cream); }
.ln-arzt-inner { max-width: 900px; margin: 0px auto; padding: 0px 24px; display: grid; grid-template-columns: 200px 1fr; gap: 56px; align-items: start; }
.ln-arzt-avatar { width: 160px; height: 160px; border-radius: 10px; background: linear-gradient(135deg, var(--ln-navy), #2A3654); display: flex; align-items: center; justify-content: center; font-size: 48px; color: rgb(255, 255, 255); font-family: var(--ln-serif); font-weight: 700; letter-spacing: -0.02em; border: 3px solid var(--ln-border); }
.ln-arzt-text h3 { font-family: var(--ln-serif); font-size: 1.1rem; font-weight: 600; color: var(--ln-navy); margin-bottom: 4px; }
.ln-arzt-text .ln-arzt-role { font-size: 13px; color: var(--ln-warm-gray); margin-bottom: 16px; }
.ln-arzt-text p { font-size: 15px; line-height: 1.8; color: var(--ln-warm-gray); }
.ln-arzt-contact { margin-top: 16px; font-size: 13px; color: var(--ln-warm-gray); }
.ln-arzt-contact a { color: var(--ln-red); text-decoration: none; font-weight: 600; }
.ln-final-cta { padding: 100px 0px; background: var(--ln-navy); text-align: center; position: relative; overflow: hidden; }
.ln-final-cta::before { content: ""; position: absolute; inset: 0px; background-image: linear-gradient(rgba(255, 255, 255, 0.016) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.016) 1px, transparent 1px); background-size: 60px 60px; pointer-events: none; }
.ln-final-cta-inner { position: relative; z-index: 1; max-width: 700px; margin: 0px auto; padding: 0px 24px; }
.ln-final-cta h2 { font-family: var(--ln-serif); font-size: clamp(1.8rem, 4vw, 2.8rem); font-weight: 700; color: rgb(255, 255, 255); letter-spacing: -0.02em; margin-bottom: 16px; line-height: 1.15; }
.ln-final-cta p { font-size: 16px; color: rgba(255, 255, 255, 0.5); margin-bottom: 32px; line-height: 1.7; }
.ln-final-cta .ln-hero-cta { font-size: 17px; padding: 18px 44px; }
body.landing-page .footer { font-family: var(--ln-sans); }
body.landing-page .footer h4 { font-family: var(--ln-sans); font-weight: 600; letter-spacing: 0.02em; }
.ln-reveal { opacity: 0; transform: translateY(24px); transition: 0.6s cubic-bezier(0.4, 0, 0.2, 1); }
.ln-reveal.ln-visible { opacity: 1; transform: translateY(0px); }
.ln-reveal-left { opacity: 0; transform: translateX(-24px); transition: 0.6s cubic-bezier(0.4, 0, 0.2, 1); }
.ln-reveal-left.ln-visible { opacity: 1; transform: translateX(0px); }
.ln-reveal-right { opacity: 0; transform: translateX(24px); transition: 0.6s cubic-bezier(0.4, 0, 0.2, 1); }
.ln-reveal-right.ln-visible { opacity: 1; transform: translateX(0px); }
@media (max-width: 900px) {
  .ln-hero-inner { grid-template-columns: 1fr; gap: 40px; padding-top: 40px; }
  .ln-hero { min-height: auto; padding: 120px 0px 60px; }
  .ln-hero-text h1 { font-size: clamp(2rem, 7vw, 2.8rem); }
  .ln-problem-inner { grid-template-columns: 1fr; gap: 48px; }
  .ln-timeline-track { grid-template-columns: 1fr; gap: 32px; }
  .ln-timeline-track::before { display: none; }
  .ln-timeline-line-fill { display: none; }
  .ln-timeline-step { text-align: left; display: grid; grid-template-columns: 56px 1fr; gap: 16px; align-items: start; }
  .ln-step-dot { margin: 0px; }
  .ln-arzt-inner { grid-template-columns: 1fr; gap: 32px; }
  .ln-arzt-avatar { width: 100px; height: 100px; font-size: 32px; }
  .ln-dataflow { gap: 8px; }
  .ln-flow-node { min-width: 100px; padding: 12px; }
  .ln-before-after { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
  .ln-hero { padding: 100px 0px 40px; }
  .ln-hero-text h1 { font-size: 1.8rem; }
  .ln-hero-subtitle { font-size: 15px; }
  .ln-hero-cta { padding: 14px 28px; font-size: 15px; width: 100%; justify-content: center; }
  .ln-trust-bar { gap: 20px; padding: 16px; }
  .ln-trust-item { font-size: 12px; }
  .ln-problem, .ln-timeline, .ln-testimonials, .ln-arzt { padding: 80px 0px; }
  .ln-privacy { padding: 80px 0px; }
  .ln-privacy-badges { grid-template-columns: 1fr; }
  .ln-final-cta { padding: 72px 0px; }
  .ln-flow-arrow { display: none; }
  .ln-dataflow { flex-direction: column; gap: 16px; }
}
body.landing-page .nav.nav-solid { background: rgba(255, 255, 255, 0.97); border-bottom: 1px solid var(--ln-border); box-shadow: rgba(0, 0, 0, 0.04) 0px 1px 8px; backdrop-filter: blur(12px); }
body.landing-page .page-header { padding: 120px 0px 48px; background: var(--ln-navy); text-align: center; }
body.landing-page .page-header h1 { font-family: var(--ln-serif); font-size: clamp(1.8rem, 4vw, 2.6rem); font-weight: 700; color: rgb(255, 255, 255); letter-spacing: -0.02em; margin-bottom: 12px; }
body.landing-page .page-header .page-subtitle { font-size: 16px; color: rgba(255, 255, 255, 0.5); max-width: 560px; margin: 0px auto; font-family: var(--ln-sans); line-height: 1.7; }
body.landing-page .page-header .back-link { color: rgba(255, 255, 255, 0.4); font-size: 13px; font-family: var(--ln-sans); text-decoration: none; display: inline-flex; align-items: center; gap: 6px; margin-bottom: 20px; transition: color 0.2s; }
body.landing-page .page-header .back-link:hover { color: rgba(255, 255, 255, 0.7); }
body.landing-page .faq-list { max-width: 780px; margin: 0px auto; padding: 60px 24px 80px; }
body.landing-page .faq-item { border: 1px solid var(--ln-border); border-radius: 8px; margin-bottom: 12px; overflow: hidden; transition: border-color 0.2s; }
body.landing-page .faq-item:hover { border-color: rgba(255, 0, 0, 0.2); }
body.landing-page .faq-item summary { padding: 18px 24px; font-family: var(--ln-sans); font-size: 15px; font-weight: 600; color: var(--ln-navy); cursor: pointer; list-style: none; display: flex; align-items: center; justify-content: space-between; gap: 16px; }
body.landing-page .faq-item summary::after { content: "+"; font-size: 20px; color: var(--ln-light-gray); flex-shrink: 0; transition: transform 0.2s; }
body.landing-page .faq-item[open] summary::after { content: "−"; color: var(--ln-red); }
body.landing-page .faq-item summary::-webkit-details-marker { display: none; }
body.landing-page .faq-item .faq-answer, body.landing-page .faq-item > div, body.landing-page .faq-item > p { padding: 0px 24px 18px; font-size: 14px; line-height: 1.7; color: var(--ln-warm-gray); font-family: var(--ln-sans); }
body.landing-page .features-grid { max-width: 1100px; margin: 0px auto; padding: 60px 24px; display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 20px; }
body.landing-page .feature-card { border: 1px solid var(--ln-border); border-radius: 10px; padding: 28px 24px; background: rgb(255, 255, 255); transition: border-color 0.2s, box-shadow 0.2s; }
body.landing-page .feature-card:hover { border-color: rgba(255, 0, 0, 0.15); box-shadow: rgba(0, 0, 0, 0.04) 0px 4px 16px; }
body.landing-page .feature-card h3 { font-family: var(--ln-sans); font-size: 16px; font-weight: 600; color: var(--ln-navy); margin-bottom: 8px; }
body.landing-page .feature-card p { font-size: 14px; line-height: 1.6; color: var(--ln-warm-gray); }
body.landing-page .cta { text-align: center; padding: 56px 24px; background: var(--ln-cream); }
body.landing-page .cta h2 { font-family: var(--ln-serif); font-size: clamp(1.4rem, 3vw, 2rem); color: var(--ln-navy); margin-bottom: 16px; }
body.landing-page .cta p { font-size: 15px; color: var(--ln-warm-gray); margin-bottom: 24px; }
body.landing-page .legal-page { max-width: 740px; margin: 0px auto; padding: 48px 24px 80px; font-family: var(--ln-sans); }
body.landing-page .legal-page h1 { font-family: var(--ln-serif); font-size: clamp(1.6rem, 3.5vw, 2.2rem); color: var(--ln-navy); letter-spacing: -0.02em; margin-bottom: 8px; }
body.landing-page .legal-page h2 { font-family: var(--ln-serif); font-size: 1.3rem; color: var(--ln-navy); margin-top: 32px; margin-bottom: 12px; padding-bottom: 8px; border-bottom: 1px solid var(--ln-border); }
body.landing-page .legal-page h3 { font-family: var(--ln-sans); font-size: 1rem; font-weight: 600; color: var(--ln-navy); margin-top: 24px; margin-bottom: 8px; }
body.landing-page .legal-page p, body.landing-page .legal-page li { font-size: 14px; line-height: 1.8; color: var(--ln-warm-gray); }
body.landing-page .legal-page a { color: var(--ln-red); text-decoration: none; font-weight: 500; }
body.landing-page .legal-page a:hover { text-decoration: underline; }
body.landing-page .legal-page table { width: 100%; border-collapse: collapse; font-size: 13px; margin: 16px 0px; }
body.landing-page .legal-page th, body.landing-page .legal-page td { padding: 10px 14px; border: 1px solid var(--ln-border); text-align: left; }
body.landing-page .legal-page th { background: var(--ln-cream); font-weight: 600; color: var(--ln-navy); }
body.landing-page .legal-page .info-box, body.landing-page .legal-page .summary-box, body.landing-page .legal-page .eu-box { border-radius: 8px; padding: 16px 20px; margin: 16px 0px; font-size: 13px; line-height: 1.7; }
body.landing-page .btn-primary { background: var(--ln-red); border-color: var(--ln-red); }
body.landing-page .btn-primary:hover { background: var(--ln-red-dark); border-color: var(--ln-red-dark); box-shadow: rgba(255, 0, 0, 0.2) 0px 4px 16px; }
body.landing-page .gradient-text { background-image: ; background-position-x: ; background-position-y: ; background-size: ; background-repeat: ; background-attachment: ; background-origin: ; background-color: ; -webkit-text-fill-color: transparent; background-clip: text; }
body.landing-page { --brand-navy: #0b1426; --brand-navy-2: #101f38; --brand-navy-3: #16233d; --brand-teal: #0f766e; --brand-teal-2: #14b8a6; --brand-mint: #2dd4bf; --brand-mint-soft: rgba(45, 212, 191, 0.13); --brand-cream: #fafaf9; --brand-paper: #ffffff; --brand-ink: #0f172a; --brand-muted: #57606a; --brand-border: #e7e5e4; --brand-shadow: 0 8px 24px rgba(15, 23, 42, 0.08); --blue: var(--brand-teal); --blue-light: var(--brand-mint); --blue-bg: var(--brand-mint-soft); --green: var(--brand-teal); --green-light: var(--brand-mint); --green-bg: #e3f8f3; --red: var(--brand-teal); --dark: var(--brand-navy); --text: var(--brand-ink); --text-light: var(--brand-muted); --gray: #8b94a1; --gray-light: var(--brand-cream); --primary: var(--brand-navy); --primary-light: var(--brand-navy-3); --accent: var(--brand-teal); --accent-light: var(--brand-mint); --accent-subtle: var(--brand-mint-soft); --border: var(--brand-border); --bg-subtle: var(--brand-cream); --zima: var(--brand-mint); --zima-light: #7ce8dc; --zima-dark: var(--brand-teal); --zima-glow: rgba(45, 212, 191, 0.2); --zima-subtle: rgba(45, 212, 191, 0.1); --ln-navy: var(--brand-navy); --ln-charcoal: var(--brand-navy-3); --ln-red: var(--brand-teal); --ln-red-dark: #0b5f59; --ln-red-glow: rgba(45, 212, 191, 0.16); --ln-white: var(--brand-cream); --ln-cream: var(--brand-paper); --ln-ink: var(--brand-ink); --ln-gray: var(--brand-muted); --ln-light-gray: #78909a; --ln-border: var(--brand-border); --ln-serif: 'Playfair Display', Georgia, 'Times New Roman', serif; --ln-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; color: var(--brand-ink); background: var(--brand-cream); font-family: var(--ln-sans); }
body.landing-page h1, body.landing-page h2, body.landing-page .section-title, body.landing-page .page-header h1, body.landing-page .cta h2, body.landing-page .hero h1, body.landing-page .ln-serif { font-family: var(--ln-serif); font-weight: 500; letter-spacing: -0.025em; }
body.landing-page .nav { background: rgba(255, 255, 255, 0.88); border-bottom: 1px solid rgba(15, 23, 42, 0.08); box-shadow: rgba(15, 23, 42, 0.05) 0px 1px 3px; backdrop-filter: blur(18px); }
body.landing-page .logo-blitz, body.landing-page .logo-doc { color: var(--brand-navy); }
body.landing-page .logo-doc { color: var(--brand-teal); }
body.landing-page .nav-links a { color: rgba(16, 35, 49, 0.78); font-weight: 600; }
body.landing-page .nav-links a:hover, body.landing-page .nav-links a.active { color: var(--brand-teal); }
body.landing-page .nav-login { border-color: rgba(15, 118, 110, 0.24); color: var(--brand-navy); }
body.landing-page .nav-login:hover { background: rgba(45, 212, 191, 0.1); border-color: rgba(15, 118, 110, 0.36); color: var(--brand-teal); }
body.landing-page .nav-cta, body.landing-page .btn-primary, body.landing-page .btn-white, body.landing-page .dash-btn-primary, body.landing-page .login-btn { box-shadow: rgba(15, 23, 42, 0.16) 0px 1px 2px; background: var(--brand-teal) !important; border-color: transparent !important; color: rgb(255, 255, 255) !important; }
body.landing-page .nav-cta:hover, body.landing-page .btn-primary:hover, body.landing-page .btn-white:hover, body.landing-page .dash-btn-primary:hover, body.landing-page .login-btn:hover { box-shadow: rgba(15, 23, 42, 0.2) 0px 2px 4px; transform: translateY(-1px); background: #0b5f59 !important; }
body.landing-page .page-header, body.landing-page .hero { color: rgb(244, 247, 252); border-bottom: 1px solid rgba(255, 255, 255, 0.06); background: linear-gradient(135deg, var(--brand-navy) 0%, #101f38 58%, #16233d 100%) !important; }
body.landing-page .page-header p, body.landing-page .hero p { color: rgba(234, 248, 244, 0.78); }
body.landing-page .gradient-text { background-image: ; background-position-x: ; background-position-y: ; background-size: ; background-repeat: ; background-attachment: ; background-origin: ; background-color: ; background-clip: text; -webkit-text-fill-color: transparent; }
body.landing-page .section, body.landing-page .features, body.landing-page .pricing, body.landing-page .faq-section { background: var(--brand-cream); }
body.landing-page .feature-card, body.landing-page .price-card, body.landing-page .faq-item, body.landing-page .demo-card, body.landing-page .what-is, body.landing-page .install-box, body.landing-page .connector-demo, body.landing-page .mode-card, body.landing-page .stat-card { box-shadow: rgba(7, 27, 42, 0.08) 0px 18px 48px; background: rgba(255, 255, 255, 0.94) !important; border: 1px solid rgba(217, 228, 221, 0.9) !important; border-radius: 14px !important; }
body.landing-page .feature-card:hover, body.landing-page .price-card:hover, body.landing-page .faq-item:hover, body.landing-page .mode-card:hover { box-shadow: rgba(7, 27, 42, 0.12) 0px 24px 60px; transform: translateY(-2px); border-color: rgba(45, 212, 191, 0.45) !important; }
body.landing-page .feature-icon, body.landing-page .step-number, body.landing-page .icon-box, body.landing-page .connector-icon { background: linear-gradient(135deg, rgba(45, 212, 191, 0.16), rgba(15, 118, 110, 0.08)) !important; color: var(--brand-teal) !important; }
body.landing-page .feature-icon svg, body.landing-page .icon-box svg, body.landing-page .connector-icon svg, body.landing-page svg[stroke="#3b82f6"], body.landing-page svg[stroke="#2563eb"] { stroke: var(--brand-teal) !important; }
body.landing-page [style*="background:#3b82f6"], body.landing-page [style*="background: #3b82f6"], body.landing-page [style*="background:#2563eb"], body.landing-page [style*="background: #2563eb"], body.landing-page [style*="background:#1E6FD9"], body.landing-page [style*="background: #1E6FD9"] { background: var(--brand-teal) !important; }
body.landing-page [style*="color:#3b82f6"], body.landing-page [style*="color: #3b82f6"], body.landing-page [style*="color:#2563eb"], body.landing-page [style*="color: #2563eb"], body.landing-page [style*="color:#1a56db"], body.landing-page [style*="color: #1a56db"] { color: var(--brand-teal) !important; }
body.landing-page [style*="#fef2f2"], body.landing-page [style*="#fff5f5"] { background: #ffffff !important; }
body.landing-page [style*="background:linear-gradient(135deg,#0f172a"], body.landing-page [style*="background:linear-gradient(135deg, #0f172a"] { background: linear-gradient(135deg, var(--brand-navy) 0%, #101f38 62%, #16233d 100%) !important; }
body.landing-page .cta, body.landing-page .footer { color: rgb(244, 247, 252); background: linear-gradient(135deg, var(--brand-navy) 0%, #0e1c33 62%, #16233d 100%) !important; }
body.landing-page .footer { border-top: 1px solid rgba(255, 255, 255, 0.08); }
body.landing-page .footer a, body.landing-page .cta a { color: rgba(234, 248, 244, 0.82); }
body.landing-page .footer a:hover, body.landing-page .cta a:hover { color: var(--brand-mint); }
@media (max-width: 768px) {
  body.landing-page .nav-cta, body.landing-page .nav-login { min-height: 44px; }
  body.landing-page .feature-card, body.landing-page .price-card, body.landing-page .faq-item { border-radius: 12px !important; }
}
@media (max-width: 600px) {
  body.landing-page { padding-bottom: max(24px, env(safe-area-inset-bottom)); }
  body.landing-page:has(.mobile-cta-bar) { padding-bottom: calc(76px + env(safe-area-inset-bottom)); }
  body.landing-page .nav-links.open { top: calc(64px + env(safe-area-inset-top)); max-height: calc(100dvh - 64px - env(safe-area-inset-top)); overflow-y: auto; overscroll-behavior: contain; padding-bottom: max(20px, env(safe-area-inset-bottom)); }
  body.landing-page .nav-links a { min-height: 44px; display: flex; align-items: center; }
  body.landing-page .mobile-cta-bar { padding-bottom: max(10px, env(safe-area-inset-bottom)); }
  body.landing-page input, body.landing-page textarea, body.landing-page select { font-size: 16px !important; }
}
