@font-face{font-family:DM Sans;font-style:normal;font-weight:300;font-display:swap;src:url(../fonts/dm-sans-latin-300-normal.woff2) format("woff2")}@font-face{font-family:DM Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/dm-sans-latin-400-normal.woff2) format("woff2")}@font-face{font-family:DM Sans;font-style:italic;font-weight:400;font-display:swap;src:url(../fonts/dm-sans-latin-400-italic.woff2) format("woff2")}@font-face{font-family:DM Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/dm-sans-latin-500-normal.woff2) format("woff2")}@font-face{font-family:DM Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/dm-sans-latin-600-normal.woff2) format("woff2")}@font-face{font-family:DM Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/dm-sans-latin-700-normal.woff2) format("woff2")}@font-face{font-family:Libre Baskerville;font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/libre-baskerville-latin-400-normal.woff2) format("woff2")}@font-face{font-family:Libre Baskerville;font-style:italic;font-weight:400;font-display:swap;src:url(../fonts/libre-baskerville-latin-400-italic.woff2) format("woff2")}@font-face{font-family:Libre Baskerville;font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/libre-baskerville-latin-700-normal.woff2) format("woff2")}:root{--font-heading: "Libre Baskerville", Georgia, serif;--font-body: "DM Sans", system-ui, sans-serif;--color-primary-dark: rgb(42, 58, 42);--color-primary: rgb(50, 70, 53);--color-primary-light: rgb(100, 140, 88);--color-primary-lighter: rgb(141, 192, 133);--color-surface: rgb(221, 227, 214);--color-surface-light: rgb(240, 245, 235);--color-text: rgb(26, 58, 26);--color-text-muted: rgb(42, 58, 42);--color-text-light: oklch(.99 .02 97.77);--color-border: rgb(176, 192, 176);--color-border-dark: rgb(42, 58, 42);--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-full: 9999px;--transition-fast: .1s ease;--transition-normal: .2s ease;--transition-slow: .3s ease}body{font-family:var(--font-body)}h1,h2,h3,h4,h5,h6,.font-heading{font-family:var(--font-heading);letter-spacing:-.01em}.btn-custom{background-color:var(--color-primary-light);font-family:var(--font-body);font-weight:500;transition:background-color var(--transition-normal)}.btn-custom:hover{background-color:var(--color-primary-lighter)}.bg-custom{background-color:var(--color-surface)}.nav-custom{background-color:var(--color-primary)}.nav-custom a{font-family:var(--font-body);font-weight:500}.text-custom{color:var(--color-text-light)}.active-nav{border-bottom:2px solid var(--color-text-light);padding-bottom:2px}.nav-item-hover{padding-bottom:2px;transition:box-shadow var(--transition-fast)}.nav-item-hover:hover{box-shadow:0 2px #ffffffb3}.title-underline{border-bottom:1px solid var(--color-border-dark);padding-bottom:var(--spacing-sm);margin:0 auto var(--spacing-lg);display:block;width:-moz-fit-content;width:fit-content}.header-brand{font-family:var(--font-heading)}.content-link{color:var(--color-primary-dark)!important;font-weight:600!important;text-decoration:underline!important;text-decoration-color:var(--color-primary-light)!important;text-underline-offset:2px!important;transition:color var(--transition-normal),text-decoration-color var(--transition-normal)}.content-link:hover{color:var(--color-primary-light)!important;text-decoration-color:var(--color-primary-dark)!important}.site-footer{background-color:var(--color-primary-dark);color:var(--color-text-light);padding:2.5rem 2rem}.site-footer .footer-content{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr;gap:2rem;text-align:center}@media (min-width: 768px){.site-footer .footer-content{grid-template-columns:repeat(3,1fr);text-align:left}}.site-footer h4{font-weight:600;margin-bottom:.75rem;font-size:1rem}.site-footer p,.site-footer li{font-size:.875rem;opacity:.9;line-height:1.6}.site-footer ul{list-style:none;padding:0;margin:0}.site-footer ul li{margin-bottom:.25rem}.site-footer a{color:var(--color-text-light);text-decoration:none;transition:opacity var(--transition-normal)}.site-footer a:hover{opacity:.7;text-decoration:underline}.footer-divider{border:none;border-top:1px solid rgba(255,255,255,.2);margin:1.5rem 0 1rem}.footer-bottom{display:flex;flex-direction:column;align-items:center;gap:.5rem;font-size:.8rem;opacity:.7;text-align:center}@media (min-width: 768px){.footer-bottom{flex-direction:row;justify-content:space-between}}.legal-content{font-size:.95rem;line-height:1.7;color:#333}.legal-content h1{font-size:1.75rem;margin-bottom:1.5rem;color:var(--color-primary-dark)}.legal-content h2{font-size:1.35rem;margin-top:2rem;margin-bottom:.75rem;color:var(--color-primary-dark);border-bottom:1px solid var(--color-border);padding-bottom:.25rem}.legal-content h3{font-size:1.1rem;margin-top:1.25rem;margin-bottom:.5rem;color:var(--color-text-muted)}.legal-content p{margin-bottom:.75rem}.legal-content address{font-style:normal;margin:.5rem 0;line-height:1.6}.legal-content ul{margin:.5rem 0 1rem 1.5rem}.legal-content ul li{margin-bottom:.35rem}.legal-content a{color:var(--color-primary-dark);text-decoration:underline;text-decoration-color:var(--color-primary-light);text-underline-offset:2px}.legal-content a:hover{color:var(--color-primary-light)}.legal-contact-list{list-style:none;padding:0;margin:.5rem 0 1rem}.legal-contact-list li{margin-bottom:.2rem}.legal-note{background:#f8f9fa;border-left:3px solid var(--color-primary-light);padding:.75rem 1rem;margin:1rem 0;font-size:.9rem}.legal-divider{border:none;border-top:1px solid var(--color-border);margin:2rem 0}.legal-collapsible{border:1px solid var(--color-border);border-radius:var(--radius-md);margin:.75rem 0;overflow:hidden}.legal-collapsible summary{padding:.85rem 1.25rem;font-weight:600;cursor:pointer;background:#f8f9fa;color:var(--color-primary-dark);transition:background var(--transition-normal);list-style:none;display:flex;align-items:center;gap:.5rem}.legal-collapsible summary:before{content:"▶";font-size:.7rem;transition:transform var(--transition-normal)}.legal-collapsible[open] summary:before{transform:rotate(90deg)}.legal-collapsible summary:hover{background:#eef0ec}.legal-collapsible-content{padding:1rem 1.25rem}.legal-alert{border-radius:var(--radius-md);padding:1rem 1.25rem;margin:1rem 0}.legal-alert-warning{background:#fff3cd;border:1px solid #ffc107;color:#664d03}.legal-info-table{border-collapse:collapse;margin:1rem 0}.legal-info-table th,.legal-info-table td{padding:.4rem 1rem .4rem 0;text-align:left;vertical-align:top}.legal-info-table th{font-weight:600;color:var(--color-primary-dark);white-space:nowrap}.lang-toggle{display:flex;justify-content:center;margin-bottom:1.5rem}.lang-toggle-btn{padding:.5rem 1.25rem;font-size:.9rem;font-weight:600;font-family:var(--font-body);cursor:pointer;border:2px solid var(--color-primary-dark);background:transparent;color:var(--color-primary-dark);transition:background var(--transition-normal),color var(--transition-normal)}.lang-toggle-btn:first-child{border-radius:var(--radius-md) 0 0 var(--radius-md);border-right:1px solid var(--color-primary-dark)}.lang-toggle-btn:last-child{border-radius:0 var(--radius-md) var(--radius-md) 0;border-left:1px solid var(--color-primary-dark)}.lang-toggle-btn.active{background:var(--color-primary-dark);color:#fff}.lang-toggle-btn:hover:not(.active){background:#2a3a2a1a}.legal-content[data-lang=en] .lang-de,.legal-content[data-lang=de] .lang-en{display:none}.legal-content[data-lang=en] .lang-en,.legal-content[data-lang=de] .lang-de{display:block}
