﻿:root{--bg:          #F5F0E8;--sand:        #F5F0E8;--sand-dark:   #EDE6D6;--white:       #FFFFFF;--ink:         #1A1814;--ink-soft:    #4A4640;--ink-muted:   #8A847C;--warm:        #B85A28;--warm-hover:  #9A4A20;--warm-light:  #E8D5C4;--warm-pale:   #fbf5f2;--slate:       #278bcf;--slate-medium: #327FC3;--slate-dark: #2572af;--slate-light:#d8e2f1;--slate-super-light: #d8e2f1;--forest:      #3F6C51;--forest-dark: #2E5040;--forest-light: #C2D9CB;--forest-pale: #F0F7F3;--border:      #DDD5C5;--border-soft: #EAE4D8;--footer-bg:   #1B4965;--font-sans:  'DM Sans', sans-serif;--font-serif: 'Lora', serif;--radius-sm: 6px;--radius:    10px;--radius-lg: 16px;--radius-xl: 24px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.04);--shadow-md: 0 4px 12px rgba(0, 0, 0, 0.06);--shadow-lg: 0 8px 30px rgba(0, 0, 0, 0.08)}@font-face{font-family:'DM Sans';font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/DMSans-VariableFont_opsz,wght-330aaca30d8b496dfd475ce0aa14c3749c13fb28fad5a66a26daeaa72054ea0b.ttf) format("truetype")}@font-face{font-family:'Lora';font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/Lora-VariableFont_wght-2ee8c7996b35c077d2414a720d36ce950f649e306cd06384279c3d2695e95b4a.ttf) format("truetype")}h1,h2,h3,h4{font-family:var(--font-serif),serif;font-weight:600;line-height:1.2;color:var(--ink)}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-sans),sans-serif;background:var(--white);color:var(--ink);font-size:1rem;line-height:1.7;-webkit-font-smoothing:antialiased}a{color:inherit}img{display:block;max-width:100%}.section-label{font-size:0.6875rem;font-weight:500;letter-spacing:0.1125rem;text-transform:uppercase;color:var(--warm);margin-bottom:0.75rem}.section-title{font-family:var(--font-serif),serif;font-size:clamp(1.625rem, 3vw, 2.375rem);font-weight:600;letter-spacing:-0.02rem;margin-bottom:1rem}.section-lead{font-size:1.0825rem;color:var(--ink-soft);line-height:1.7;max-width:45rem}nav{position:sticky;top:0;z-index:100;background:rgba(255,255,255,0.93);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border-soft);padding:0 6%;display:flex;align-items:center;justify-content:space-between;height:4.375rem}.nav-logo{display:flex;align-items:center;gap:0.625rem;text-decoration:none}.nav-logo-mark{width:2rem;height:2rem;background:var(--warm);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0}.nav-logo-mark svg{width:0.9375rem;height:0.9375rem}.nav-logo-text{display:flex;flex-direction:column;line-height:1.2}.nav-logo-text strong{font-family:var(--font-serif),serif;font-size:1rem;font-weight:600;color:var(--ink);letter-spacing:-0.0125rem}.nav-logo-text strong em{font-style:normal;color:var(--warm)}.nav-logo-text small{font-size:0.625rem;font-weight:400;letter-spacing:0.05rem;color:var(--ink-muted);text-transform:uppercase}.nav-links{display:flex;gap:2rem;list-style:none;align-items:center;margin:0;padding:0}.nav-links a{font-size:0.875rem;color:var(--ink-soft);text-decoration:none;transition:color 0.2s}.nav-links a:hover{color:var(--ink)}.nav-cta{background:var(--warm);color:var(--white) !important;padding:0.625rem 1.375rem;border-radius:100px;font-size:0.875rem;font-weight:500;text-decoration:none;transition:background 0.2s}.nav-cta:hover{background:var(--warm-hover) !important}.hero{background:var(--sand);padding:2rem 6%;display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}.hero-img-wrap{width:100%;aspect-ratio:4 / 3;border-radius:var(--radius);overflow:hidden;background:var(--sand-dark);box-shadow:var(--shadow-md)}.hero-img-wrap img{width:100%;height:100%;object-fit:cover;object-position:center}.hero-badge{display:inline-flex;align-items:center;gap:0.5rem;background:var(--warm-pale);border:1px solid var(--warm-light);border-radius:100px;padding:0.375rem 0.875rem 0.375rem 0.5rem;font-size:0.75rem;font-weight:500;color:var(--warm);letter-spacing:0.05rem;text-transform:uppercase;margin-bottom:1.5rem}.hero-badge-dot{width:1.375rem;height:1.375rem;border-radius:50%;background:var(--warm);display:flex;align-items:center;justify-content:center;flex-shrink:0}.hero h1{font-size:clamp(2.25rem, 4.5vw, 3.5rem);letter-spacing:-0.03rem;margin-bottom:1.25rem}.hero h1 em{font-style:italic;color:var(--warm)}.hero-sub{font-size:1.0625rem;color:var(--ink-soft);line-height:1.7;margin-bottom:2rem;max-width:28.75rem}.hero-author{display:inline-flex;align-items:center;gap:0.625rem;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:0.625rem 1rem;font-size:0.875rem;color:var(--ink-soft);margin-bottom:2rem}.hero-author strong{color:var(--ink)}.hero-author-avatar{width:1.75rem;height:1.75rem;border-radius:50%;background:var(--warm-light);display:flex;align-items:center;justify-content:center;flex-shrink:0}.hero-actions{display:flex;gap:0.75rem;align-items:center;flex-wrap:wrap}.trust-bar{border-top:1px solid var(--border-soft);border-bottom:1px solid var(--border-soft);padding:1.25rem 6%;display:flex;gap:2.5rem;align-items:center;background:var(--white);flex-wrap:wrap}.trust-item{display:flex;align-items:center;gap:0.75rem}.trust-icon{width:2.375rem;height:2.375rem;border-radius:50%;background:var(--warm-pale);border:1px solid var(--warm-light);display:flex;align-items:center;justify-content:center;flex-shrink:0}.trust-num{font-family:var(--font-serif),serif;font-size:1.125rem;font-weight:600;color:var(--ink);line-height:1.1}.trust-sub{font-size:0.95rem;color:var(--ink-muted)}.fcards{display:grid;grid-template-columns:repeat(3, 1fr);gap:1px;background:var(--border);border-radius:var(--radius);overflow:hidden;margin:2rem 6%;outline:1px solid var(--border)}.fcard{padding:2.25rem 1.75rem}.fcard--light{background:var(--white)}.fcard--mid{background:var(--sand)}.fcard--dark{background:var(--slate)}.fcard__label{font-size:0.6875rem;font-weight:500;letter-spacing:0.08125rem;text-transform:uppercase;color:var(--ink-muted);margin-bottom:0.625rem}.fcard--dark .fcard__label{color:rgba(200,216,228,0.65)}.fcard__title{font-family:var(--font-serif),serif;font-size:1.375rem;font-weight:600;line-height:1.25;color:var(--ink);margin-bottom:1.125rem}.fcard--dark .fcard__title{color:var(--white)}.fcard__pills{display:flex;flex-wrap:wrap;gap:0.5rem}.ftag{font-size:0.9125rem;padding:0.3125rem 0.875rem;border-radius:100px;background:var(--sand);color:var(--ink-soft);border:1px solid var(--border)}.ftag--warm{background:var(--warm-light);color:#7A3518;border-color:#D4A890}.ftag--ghost{background:rgba(255,255,255,0.12);color:rgba(255,255,255,0.88);border-color:rgba(255,255,255,0.2)}a.ftag{text-decoration:none;transition:background 0.15s, color 0.15s}a.ftag:hover{background:var(--warm-light);color:var(--warm);border-color:var(--warm-light)}a.ftag--ghost{background:rgba(255,255,255,0.12);color:rgba(255,255,255,0.88);border-color:rgba(255,255,255,0.2)}a.ftag--ghost:hover{background:rgba(255,255,255,0.22);color:var(--white)}.section-header{margin-bottom:3.25rem}#intro{padding:5rem 6%}#intro .section-header{max-width:52rem}#intro .intro-text{max-width:52rem;font-size:1.08rem;color:var(--ink-soft);line-height:1.8;margin-top:-1.5rem;margin-bottom:3rem}.intro-body{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.intro-features{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.intro-feature{display:flex;gap:1rem;align-items:flex-start}.intro-feature .icon{flex-shrink:0;margin-top:0.2rem;color:var(--warm)}.intro-feature h4{font-family:var(--font-serif),serif;font-size:1rem;font-weight:600;color:var(--ink);margin-bottom:0.375rem}.intro-feature p{font-size:0.9375rem;color:var(--ink-soft);line-height:1.7}.intro-visual{border-radius:var(--radius);overflow:hidden}.intro-visual img{width:100%;height:auto;display:block}#leistungen{padding:6.25rem 6%;background:var(--warm-pale)}.services-grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:2px;background:var(--border);border-radius:var(--radius);overflow:hidden}.service-card{background:var(--white);padding:2.25rem 2rem;transition:background 0.2s}.service-card:hover{background:var(--warm-pale)}.service-card.wide{grid-column:span 2;background:var(--slate)}.service-card.wide:hover{background:var(--slate-dark)}.service-card.wide .service-icon{background:rgba(255,255,255,0.1);border-color:white}.service-card.wide .service-icon .icon{color:white}.service-card.wide h3{color:var(--white)}.service-card.wide p{color:var(--slate-super-light)}.service-card.wide .service-tag{color:#A8C5D8}.service-card h3{font-family:var(--font-serif),serif;font-size:1.0625rem;font-weight:600;color:var(--ink);margin-bottom:0.625rem;line-height:1.3}.service-card p{font-size:1.05rem;color:var(--ink-soft);line-height:1.65}.service-icon{width:2.875rem;height:2.875rem;background:var(--sand);border-radius:var(--radius);display:flex;align-items:center;justify-content:center;margin-bottom:1.25rem;border:1px solid var(--border)}.service-tag{display:inline-block;margin-top:1rem;font-size:0.75rem;color:var(--warm);font-weight:500}#qualitaet{padding:6.25rem 6%}#ueber{padding:6.25rem 6%;display:grid;grid-template-columns:1fr 1fr;gap:0;align-items:center}.about-visual{position:relative;max-width:580px}.about-photo-frame{background:var(--sand);border-radius:var(--radius);aspect-ratio:4 / 4;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);overflow:hidden}.about-photo-frame img{width:100%;height:100%;object-fit:cover;object-position:top center}.about-initials{font-family:var(--font-serif),serif;font-size:5rem;font-weight:600;color:var(--warm-light)}.about-float{position:absolute;bottom:-1.25rem;right:-1.25rem;background:var(--warm);color:var(--white);border-radius:var(--radius-lg);padding:1.25rem 1.75rem 1.25rem 2rem;max-width:13.75rem}.about-float-num{font-family:var(--font-serif),serif;font-size:2.25rem;font-weight:600;line-height:1;margin-bottom:0.25rem}.about-float-label{font-size:0.8125rem;opacity:0.85;line-height:1.4}.about-content blockquote{font-family:var(--font-serif),serif;font-style:italic;font-size:1.25rem;color:var(--ink);line-height:1.55;border-left:3px solid var(--warm);padding-left:1.375rem;margin:1.75rem 0 1.5rem}.about-content p{font-size:1rem;color:var(--ink-soft);margin-bottom:1rem;line-height:1.8}.skill-chips{display:flex;flex-wrap:wrap;gap:0.5rem;margin-top:1.75rem}.skill-chip{font-size:0.8125rem;padding:0.375rem 0.875rem;border-radius:100px;font-weight:500;background:var(--sand-dark);color:var(--ink-soft);border:1px solid var(--border)}.skill-chip--warm{background:var(--warm-pale);color:var(--warm);border-color:var(--warm-light)}.skill-chip--slate{background:var(--slate-light);color:var(--slate-dark);border-color:#a8c8e0}.skill-chip--forest{background:var(--forest-pale);color:var(--forest);border-color:var(--forest-light)}.testimonials-section{padding:6.25rem 6%;background:var(--sand)}.testimonials-header{text-align:center;max-width:35rem;margin:0 auto 3.5rem}.testimonials-grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:1.25rem}.testimonial-card{background:var(--white);border-radius:var(--radius-lg);padding:2rem 1.75rem;border:1px solid var(--border);display:flex;flex-direction:column;gap:1.25rem}.testimonial-stars{display:flex;gap:0.1875rem}.testimonial-star{width:0.875rem;height:0.875rem;background:var(--warm);clip-path:polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%)}.testimonial-text{font-family:var(--font-serif),serif;font-style:italic;font-size:0.9375rem;color:var(--ink);line-height:1.7;flex:1}.testimonial-author{display:flex;align-items:center;gap:0.75rem;border-top:1px solid var(--border);padding-top:1rem}.testimonial-avatar{width:2.5rem;height:2.5rem;border-radius:50%;background:var(--warm-light);display:flex;align-items:center;justify-content:center;font-family:var(--font-serif),serif;font-size:0.9375rem;font-weight:600;color:var(--warm);flex-shrink:0}.testimonial-name{font-size:0.875rem;font-weight:500;color:var(--ink)}.testimonial-role{font-size:0.75rem;color:var(--ink-muted)}.cta-section{padding:6.25rem 6%;text-align:center}.cta-section .section-title,.cta-section .section-label{text-align:center}.cta-section .section-lead{margin:0 auto 2rem}#warum-rails{padding:6.25rem 6%;background:var(--warm-pale)}.warum-rails-body{display:grid;grid-template-columns:300px 1fr;gap:3rem;align-items:center;margin-bottom:0}.warum-rails-visual{overflow:hidden}.warum-rails-visual img{width:100%;height:auto;display:block}.rails-features{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem 4rem}.rails-features--col{grid-template-columns:1fr;gap:2rem}.rails-feature{display:flex;gap:1.25rem;align-items:flex-start}.rails-feature__num{flex-shrink:0;width:2rem;height:2rem;background:var(--white);border:1px solid var(--warm-light);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--font-serif),serif;font-size:0.875rem;font-weight:600;color:var(--warm);margin-top:0.15rem}.rails-feature h3{font-family:var(--font-serif),serif;font-size:1rem;font-weight:600;color:var(--ink);margin-bottom:0.375rem}.rails-feature p{font-size:0.9375rem;color:var(--ink-soft);line-height:1.7}.digital-problems{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.digital-col{border-radius:var(--radius);padding:1.75rem}.digital-col__label{font-size:0.75rem;font-weight:600;text-transform:uppercase;letter-spacing:0.08rem;margin-bottom:1rem}.digital-col ul{list-style:none;display:flex;flex-direction:column;gap:0.625rem}.digital-col li{font-size:0.9375rem;line-height:1.5;padding-left:1.25rem;position:relative}.digital-col li::before{content:"";position:absolute;left:0;top:0.5rem;width:0.4rem;height:0.4rem;border-radius:50%}.digital-col--problem{background:#fdf0ee;border:1px solid #f5c5bb}.digital-col--problem .digital-col__label{color:#c0392b}.digital-col--problem li{color:var(--ink-soft)}.digital-col--problem li::before{background:#c0392b}.digital-col--solution{background:var(--forest-pale);border:1px solid var(--forest-light)}.digital-col--solution .digital-col__label{color:var(--forest)}.digital-col--solution li{color:var(--ink-soft)}.digital-col--solution li::before{background:var(--forest)}.digital-visual img{max-width:22rem;margin:0 auto}.impressum{padding:5rem 6%}.impressum-body{max-width:48rem}.impressum-body::after{content:"";display:table;clear:both}.impressum-intro{font-size:1rem;color:var(--ink-soft);margin-top:0.5rem}.impressum-hero__visual{float:right;margin:0 0 2rem 3rem}.impressum-hero__visual img{width:18rem;height:auto;display:block;opacity:0.9}.impressum-block{margin-bottom:2.5rem}.impressum-block h1{margin-bottom:0.5rem}.impressum-block h2{font-family:var(--font-serif),serif;font-size:1.0625rem;font-weight:600;color:var(--ink);margin-bottom:0.5rem}.impressum-block h3{font-size:0.9375rem;font-weight:600;color:var(--ink);margin:1.25rem 0 0.375rem}.impressum-block ul{margin:0.5rem 0 0.75rem 1.25rem;color:var(--ink-soft);font-size:0.9375rem;line-height:1.8}.impressum-block p{font-size:0.9375rem;color:var(--ink-soft);line-height:1.8;margin-bottom:0.75rem}.impressum-block p:last-child{margin-bottom:0}.impressum-block a{color:var(--warm);text-decoration:underline;text-underline-offset:3px}.faq-category{margin-bottom:4rem}.faq-category__header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid var(--border)}.faq-category__title{font-family:var(--font-serif),serif;font-size:1.375rem;font-weight:600;color:var(--ink)}.faq-list{display:flex;flex-direction:column;gap:0;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.faq-item{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1.25rem 1.5rem;background:var(--white);border-bottom:1px solid var(--border);transition:background 0.2s}.faq-item:last-child{border-bottom:none}.faq-item:hover{background:var(--warm-pale)}.faq-item__content{flex:1}.faq-item__title{font-family:var(--font-serif),serif;font-size:1rem;font-weight:600;color:var(--ink);margin-bottom:0.25rem}.faq-item__desc{font-size:0.875rem;color:var(--ink-soft);line-height:1.6}.faq-item__action{flex-shrink:0}.faq-item__link{display:flex;align-items:center;gap:0.375rem;font-size:0.875rem;font-weight:500;color:var(--warm);text-decoration:none;white-space:nowrap}.faq-item__link:hover{text-decoration:underline}.faq-item__link--external{color:var(--slate)}.faq-item__link .icon{width:0.875rem;height:0.875rem}.faq-detail{max-width:52rem;margin:0 auto}.faq-detail .intro-text{margin-bottom:2.5rem}.faq-detail .rails-features,.faq-detail .digital-problems{margin-bottom:2.5rem}.faq-quote{font-family:var(--font-serif),serif;font-style:italic;font-size:1.125rem;color:var(--ink);line-height:1.65;border-left:3px solid var(--warm);padding-left:1.375rem;margin:0 0 2rem}#technologie{padding:6.25rem 6%;background:var(--white)}.contact-section{padding:6.25rem 6%;background:var(--white);display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start}.contact-detail{display:flex;align-items:flex-start;gap:0.875rem;margin-bottom:1.375rem}.contact-icon{width:2.625rem;height:2.625rem;border-radius:var(--radius);background:var(--warm-pale);border:1px solid var(--warm-light);display:flex;align-items:center;justify-content:center;flex-shrink:0}.detail-label{font-size:0.75rem;color:var(--ink-muted);margin-bottom:0.125rem}.detail-val{font-size:0.9375rem;color:var(--ink);font-weight:500}.detail-val a{color:inherit;text-decoration:none}.detail-val a:hover{color:var(--warm)}.site-footer{background:var(--footer-bg);border-top:2px solid rgba(255,255,255,0.1);padding:5rem 6% 2.5rem}.footer-top{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:4rem;padding-bottom:4rem;border-bottom:1px solid rgba(255,255,255,0.08)}.footer-brand .nav-logo{margin-bottom:1.25rem;display:inline-flex}.footer-brand .nav-logo-text strong{color:var(--white)}.footer-brand .nav-logo-text small{color:rgba(255,255,255,0.4)}.footer-brand p{font-size:0.875rem;color:#C8C4BE;line-height:1.8;max-width:15rem;margin-bottom:1.5rem}.footer-brand-divider{width:2rem;height:2px;background:var(--warm);border-radius:2px;opacity:0.6}.footer-col{padding-top:0.25rem}.footer-col h4{font-size:0.6875rem;font-weight:500;letter-spacing:0.0875rem;text-transform:uppercase;color:var(--warm);margin-bottom:1.25rem;padding-bottom:0.75rem;border-bottom:1px solid rgba(255,255,255,0.8)}.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:0.75rem}.footer-col ul li{border-bottom:1px solid rgba(255,255,255,0.06);padding-bottom:0.75rem}.footer-col ul li:last-child{border-bottom:none;padding-bottom:0}.footer-col ul a{font-size:0.875rem;color:#D4CFC8;text-decoration:none;transition:color 0.2s;display:flex;align-items:center;gap:0.375rem}.footer-col ul a::before{content:'';display:inline-block;width:0.25rem;height:0.25rem;border-radius:50%;background:#9A9490;flex-shrink:0;transition:background 0.2s}.footer-col ul a:hover{color:var(--white)}.footer-col ul a:hover::before{background:var(--warm)}.footer-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:2.25rem;flex-wrap:wrap;gap:1rem}.footer-copy{font-size:0.8125rem;color:#8A8480}.footer-legal{display:flex;gap:0;list-style:none}.footer-legal li{display:flex;align-items:center}.footer-legal li+li::before{content:'·';color:#5A5450;padding:0 0.75rem}.footer-legal a{font-size:0.8125rem;color:#8A8480;text-decoration:none;transition:color 0.2s}.footer-legal a:hover{color:#B0AAA4}.contact-form-card{background:var(--warm-pale);border-radius:var(--radius);padding:2.25rem;border:1px solid var(--warm-light)}.contact-form-card h3{font-family:var(--font-serif),serif;font-size:1.375rem;color:var(--warm);margin-bottom:1.5rem}.form-row{margin-bottom:1rem}.form-row label{display:block;font-size:0.8125rem;color:var(--ink-soft);margin-bottom:0.375rem;font-weight:500}.form-row input,.form-row textarea,.form-row select{width:100%;padding:0.75rem 1rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--white);font-family:var(--font-sans),sans-serif;font-size:0.9375rem;color:var(--ink);outline:none;transition:border-color 0.2s, box-shadow 0.2s;resize:vertical;appearance:none}.form-row input:focus,.form-row textarea:focus,.form-row select:focus{border-color:var(--warm);box-shadow:0 0 0 3px rgba(184,90,40,0.1)}.form-row input::placeholder,.form-row textarea::placeholder,.form-row select::placeholder{color:var(--ink-muted)}.form-group{margin-bottom:1rem}.form-group label{display:block;font-size:0.8125rem;color:var(--ink-soft);margin-bottom:0.375rem;font-weight:500}.form-group input{width:100%;padding:0.75rem 1rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--white);font-family:var(--font-sans),sans-serif;font-size:0.9375rem;color:var(--ink);outline:none;transition:border-color 0.2s, box-shadow 0.2s}.form-group input:focus{border-color:var(--warm);box-shadow:0 0 0 3px rgba(184,90,40,0.1)}.form-group input::placeholder{color:var(--ink-muted)}.form-group--captcha{background:var(--sand-dark);border-radius:var(--radius-sm);padding:1rem 1.25rem;margin-top:0.5rem;margin-bottom:1rem;border:1px solid var(--border)}.form-group--captcha label{font-size:0.875rem;color:var(--ink);line-height:1.5;margin-bottom:0.625rem}.form-group--captcha small{display:block;font-size:0.75rem;color:var(--ink-muted);margin-bottom:0.5rem}.form-row--error label{color:#c0392b}.form-row--error input,.form-row--error textarea,.form-row--error select{border-color:#c0392b;background:#fdf9f9}.form-row--error input:focus,.form-row--error textarea:focus,.form-row--error select:focus{border-color:#c0392b;box-shadow:0 0 0 3px rgba(192,57,43,0.1)}.form-errors{background:#fdf0ee;border-left:3px solid #c0392b;border-radius:var(--radius-sm);padding:0.875rem 1rem;margin-bottom:1.25rem;display:flex;flex-direction:column;gap:0.375rem}.form-errors p{font-size:0.875rem;color:#c0392b;margin:0}.form-submit{width:100%;background:var(--warm);color:var(--white);border:none;padding:0.875rem;border-radius:100px;font-size:0.9375rem;font-weight:500;cursor:pointer;margin-top:0.5rem;transition:background 0.2s}.form-submit:hover{background:var(--warm-hover)}.contact-form-card--success{display:flex;align-items:center;justify-content:center;min-height:24rem}.form-success{text-align:center;padding:2rem}.form-success__icon{color:var(--forest);margin-bottom:1rem}.form-success__icon .icon{width:3rem !important;height:3rem !important}.form-success h3{font-family:var(--font-serif),serif;font-size:1.5rem;color:var(--ink);margin-bottom:0.75rem}.form-success p{font-size:0.9375rem;color:var(--ink-soft);line-height:1.7;max-width:24rem;margin:0 auto}@media (max-width: 60rem){.hero{grid-template-columns:1fr;gap:2.5rem;padding-bottom:3.75rem}.hero-img-wrap{aspect-ratio:16 / 9}#ueber{grid-template-columns:1fr;gap:3rem}.about-float{display:none}.contact-section{grid-template-columns:1fr;gap:3rem}.services-grid{grid-template-columns:1fr 1fr}.services-grid .service-card.wide{grid-column:span 2}.testimonials-grid{grid-template-columns:1fr}.fcards{grid-template-columns:1fr}.footer-top{grid-template-columns:1fr 1fr;gap:2rem}.nav-links{display:none}.trust-bar{gap:1.5rem}.rails-features{grid-template-columns:1fr;gap:2rem}.intro-body{grid-template-columns:1fr}.intro-body .intro-visual{order:-1}.intro-features{grid-template-columns:1fr}.digital-problems{grid-template-columns:1fr}.faq-item{flex-direction:column;align-items:flex-start;gap:0.75rem}}@media (max-width: 37.5rem){.services-grid{grid-template-columns:1fr}.services-grid .service-card.wide{grid-column:span 1}.footer-top{grid-template-columns:1fr}section,#ueber,#intro,#warum-rails,#qualitaet,.contact-section,#leistungen,.testimonials-section,.cta-section{padding:3.75rem 5%}.impressum{padding:3rem 5%}.impressum-hero__visual{float:none;margin:0 0 2rem 0}.impressum-hero__visual img{width:100%;max-width:16rem}.fcards{margin:1.5rem 5%}}.icon{display:inline-block;vertical-align:middle;stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.icon--xs{width:1.125rem !important;height:1.125rem !important}.icon--sm{width:1.25rem  !important;height:1.25rem  !important}.icon--md{width:1.5rem   !important;height:1.5rem   !important}.icon--lg{width:2rem     !important;height:2rem     !important}.trust-icon .icon,.contact-icon .icon,.service-icon .icon{color:var(--warm)}.slideout-trigger{position:fixed;left:0;top:50%;transform:translateY(-50%);z-index:1500;background:var(--warm);border:none;cursor:pointer;padding:0.875rem 0.5rem;border-radius:0 var(--radius) var(--radius) 0;display:flex;flex-direction:column;align-items:center;gap:0.3125rem;transition:background 0.2s}.slideout-trigger:hover{background:var(--warm-hover)}.slideout-trigger span{display:block;width:1rem;height:2px;background:#fff;border-radius:2px}.slideout-overlay{position:fixed;inset:0;background:rgba(26,24,20,0.5);z-index:1800;opacity:0;pointer-events:none;transition:opacity 0.3s}.slideout-overlay.is-visible{opacity:1;pointer-events:all}.slideout-panel{position:fixed;top:0;left:-100%;width:23.75rem;height:100vh;background:#fff;z-index:2000;overflow-y:auto;overflow-x:hidden;box-shadow:0.25rem 0 2.5rem rgba(0,0,0,0.15);transition:left 0.4s ease-in-out;display:flex;flex-direction:column}.slideout-panel.is-open{left:0}.slideout-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border);flex-shrink:0}.slideout-close{width:2rem;height:2rem;min-width:2rem;border:none;background:var(--bg);border-radius:var(--radius-sm);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--ink-muted);transition:background 0.2s, color 0.2s}.slideout-close:hover{background:var(--warm-pale);color:var(--warm)}.slideout-section{padding:0.5rem 0 0;border-bottom:1px solid var(--border)}.slideout-section-title{font-size:0.875rem;font-weight:500;letter-spacing:0.0875rem;text-transform:uppercase;color:var(--ink-muted);padding:1rem 1.5rem 0.625rem}.slideout-item{border-left:3px solid transparent;transition:background 0.15s, border-color 0.15s;border-bottom:1px solid var(--border-soft)}.slideout-item:last-child{border-bottom:none}.slideout-item a{display:flex;align-items:center;gap:0.875rem;padding:0.875rem 1.5rem;text-decoration:none;transition:transform 0.2s}.slideout-item a:hover{transform:translateX(0.25rem)}.slideout-item:hover{background:var(--warm-pale);border-left-color:var(--warm)}.slideout-item.active{border-left-color:var(--warm)}.slideout-item.active .slideout-item-title{color:var(--warm)}.slideout-item-icon{width:2.125rem;height:2.125rem;min-width:2.125rem;background:var(--warm-pale);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;color:var(--warm);flex-shrink:0}.slideout-item-icon svg{width:1rem !important;height:1rem !important}.slideout-item:hover .slideout-item-icon{background:var(--warm-light)}.slideout-item-text{flex:1}.slideout-item-title{font-size:0.9375rem;font-weight:500;color:var(--ink);margin-bottom:0.1875rem;transition:color 0.15s}.slideout-item:hover .slideout-item-title{color:var(--warm)}.slideout-item-sub{font-size:0.75rem;color:var(--ink-muted);line-height:1.4}.slideout-footer{padding:1.25rem 1.5rem;margin-top:auto;flex-shrink:0;border-top:1px solid var(--border)}.slideout-footer .btn-primary{width:100%;justify-content:center}.slideout-footer-legal{display:flex;gap:1rem;margin-top:0.75rem;justify-content:center}.slideout-footer-legal a{font-size:0.75rem;color:var(--ink-muted);text-decoration:none}.slideout-footer-legal a:hover{color:var(--warm)}body.slideout-open{overflow-y:hidden}.btn-primary{display:inline-flex;align-items:center;gap:0.5rem;background:var(--warm);color:var(--white);padding:0.8125rem 1.625rem;border-radius:100px;font-size:0.9375rem;font-weight:500;text-decoration:none;transition:background 0.2s, transform 0.15s}.btn-primary:hover{background:var(--warm-hover);transform:translateY(-0.0625rem)}.btn-outline{display:inline-flex;align-items:center;gap:0.5rem;background:var(--white);color:var(--ink);padding:0.8125rem 1.625rem;border-radius:100px;font-size:0.9375rem;font-weight:400;text-decoration:none;border:1px solid var(--border);transition:border-color 0.2s, background 0.2s}.btn-outline:hover{border-color:var(--ink-muted);background:var(--bg)}.btn-ghost{display:inline-block;color:var(--ink-soft);font-size:0.9375rem;text-decoration:none;border-bottom:1px solid var(--ink-muted);padding-bottom:0.125rem;transition:color 0.2s, border-color 0.2s}.btn-ghost:hover{color:var(--warm);border-color:var(--warm)}.skill-chips{display:flex;flex-wrap:wrap;gap:0.5rem;margin-top:1.75rem}.skill-chip{font-size:0.8125rem;padding:0.375rem 0.875rem;border-radius:100px;font-weight:500;background:var(--sand-dark);color:var(--ink-soft);border:1px solid var(--border)}.skill-chip--warm{background:var(--warm-pale);color:var(--warm);border-color:var(--warm-light)}.skill-chip--slate{background:var(--slate-light);color:var(--slate-dark);border-color:#a8c8e0}.skill-chip--forest{background:var(--forest-pale);color:var(--forest);border-color:var(--forest-light)}a.service-tag--link{display:inline-block;margin-top:1rem;font-size:0.9125rem;color:var(--ink-muted);text-decoration:none;transition:color 0.2s}a.service-tag--link:hover{color:var(--warm)}.service-card.wide a.service-tag--link{color:rgba(200,216,228,0.7)}.service-card.wide a.service-tag--link:hover{color:var(--white)}@media (max-width: 60rem){.hero{grid-template-columns:1fr;gap:2.5rem;padding-bottom:3.75rem}.hero-img-wrap{aspect-ratio:16 / 9}#ueber{grid-template-columns:1fr;gap:3rem}.about-float{display:none}.contact-section{grid-template-columns:1fr;gap:3rem}.services-grid{grid-template-columns:1fr 1fr}.services-grid .service-card.wide{grid-column:span 2}.testimonials-grid{grid-template-columns:1fr}.fcards{grid-template-columns:1fr}.footer-top{grid-template-columns:1fr 1fr;gap:2rem}.nav-links{display:none}.trust-bar{gap:1.5rem}.rails-features{grid-template-columns:1fr;gap:2rem}.intro-body{grid-template-columns:1fr}.intro-body .intro-visual{order:-1}.intro-features{grid-template-columns:1fr}.digital-problems{grid-template-columns:1fr}.faq-item{flex-direction:column;align-items:flex-start;gap:0.75rem}}@media (max-width: 37.5rem){.services-grid{grid-template-columns:1fr}.services-grid .service-card.wide{grid-column:span 1}.footer-top{grid-template-columns:1fr}section,#ueber,#intro,#warum-rails,#qualitaet,.contact-section,#leistungen,.testimonials-section,.cta-section{padding:3.75rem 5%}.impressum{padding:3rem 5%}.impressum-hero__visual{float:none;margin:0 0 2rem 0}.impressum-hero__visual img{width:100%;max-width:16rem}.fcards{margin:1.5rem 5%}}
