:root{--c-red: #C62828;--c-red-dark: #A52020;--c-red-light: #E04848;--c-gold: #B4975A;--c-gold-light: #C9B080;--c-gold-dark: #967A42;--c-gray: #707070;--c-gray-light: #A0A0A0;--c-gray-dark: #505050;--c-black: #141414;--c-black-light: #2A2A2A;--c-white: #FFFFFF;--c-bg: #FFFFFF;--c-bg-alt: #F8F8F8;--c-bg-alt-2: #F2F2F2;--c-border: #E0E0E0;--c-text: #141414;--c-text-light: #707070;--c-text-on-dark: #FFFFFF;--c-text-on-dark-light: #B0B0B0;--font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--fw-light: 300;--fw-regular: 400;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700;--fw-extrabold: 800;--sp-1: 8px;--sp-2: 16px;--sp-3: 24px;--sp-4: 32px;--sp-5: 40px;--sp-6: 48px;--sp-7: 64px;--sp-8: 80px;--sp-9: 96px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 16px;--radius-full: 999px;--shadow-sm: 0 1px 3px rgba(20, 20, 20, .08);--shadow-md: 0 4px 12px rgba(20, 20, 20, .1);--shadow-lg: 0 12px 32px rgba(20, 20, 20, .12);--transition: .3s cubic-bezier(.4, 0, .2, 1);--transition-fast: .2s cubic-bezier(.4, 0, .2, 1);--max-w: 1140px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px;-webkit-text-size-adjust:100%}body{font-family:var(--font-body);background:var(--c-bg);color:var(--c-text);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}img{max-width:100%;height:auto;display:block}a{color:var(--c-red);text-decoration:none;transition:var(--transition-fast)}a:hover{color:var(--c-red-dark)}a:focus-visible,button:focus-visible{outline:2px solid var(--c-red);outline-offset:2px}.nav{position:fixed;top:0;left:0;right:0;z-index:1000;background:#fffffffa;border-bottom:1px solid var(--c-border);transition:var(--transition)}.nav.scrolled{box-shadow:var(--shadow-sm)}.nav-inner{max-width:var(--max-w);margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:var(--sp-2) var(--sp-3);gap:var(--sp-3)}.nav-logo{text-decoration:none;font-weight:var(--fw-extrabold);font-size:1.25rem;color:var(--c-black);letter-spacing:-.02em}.nav-logo:hover{color:var(--c-black)}.nav-logo-text:after{content:".";color:var(--c-red)}.nav-links{display:flex;gap:var(--sp-3);align-items:center}.nav-link{color:var(--c-text);font-size:.9rem;font-weight:var(--fw-medium);text-decoration:none;transition:var(--transition-fast);position:relative}.nav-link:after{content:"";position:absolute;bottom:-4px;left:0;right:0;height:2px;background:var(--c-red);transform:scaleX(0);transition:var(--transition)}.nav-link:hover{color:var(--c-red)}.nav-link:hover:after{transform:scaleX(1)}.nav-cta{background:var(--c-red);color:var(--c-white);font-size:.85rem;font-weight:var(--fw-semibold);padding:10px 20px;border-radius:var(--radius-full);text-decoration:none;transition:var(--transition);white-space:nowrap}.nav-cta:hover{background:var(--c-red-dark);color:var(--c-white);transform:translateY(-1px)}.nav-toggle{display:none;background:none;border:none;cursor:pointer;color:var(--c-black);padding:var(--sp-1)}.nav-mobile{display:none;flex-direction:column;background:var(--c-white);border-bottom:1px solid var(--c-border);padding:var(--sp-2) var(--sp-3)}.nav-mobile.open{display:flex}.nav-mobile-link{color:var(--c-text);font-size:1rem;font-weight:var(--fw-medium);text-decoration:none;padding:var(--sp-1) 0;border-bottom:1px solid var(--c-border)}.nav-mobile-link:last-of-type{border-bottom:none}.nav-mobile-cta{margin-top:var(--sp-2);background:var(--c-red);color:var(--c-white);font-weight:var(--fw-semibold);padding:12px 20px;border-radius:var(--radius-full);text-align:center;text-decoration:none}.hero{min-height:100vh;background:var(--c-black);color:var(--c-text-on-dark);display:flex;align-items:center;padding:calc(var(--sp-7) + var(--sp-3)) var(--sp-3) var(--sp-5);position:relative;overflow:hidden}.hero-grid{max-width:var(--max-w);margin:0 auto;display:grid;grid-template-columns:1.3fr 1fr;gap:var(--sp-6);align-items:center;width:100%}.hero-overline{font-size:.8rem;font-weight:var(--fw-semibold);letter-spacing:.15em;color:var(--c-gold);margin-bottom:var(--sp-3);text-transform:uppercase}.hero-heading{font-size:clamp(2rem,5vw,3.5rem);font-weight:var(--fw-extrabold);line-height:1.1;letter-spacing:-.02em;margin-bottom:var(--sp-4);color:var(--c-white)}.hero-heading-accent{color:var(--c-gold-light)}.hero-desc{font-size:1.1rem;line-height:1.7;color:var(--c-text-on-dark-light);max-width:560px;margin-bottom:var(--sp-4)}.hero-badges{display:flex;gap:var(--sp-2);margin-bottom:var(--sp-5);flex-wrap:wrap}.hero-badge{font-size:.85rem;font-weight:var(--fw-medium);color:var(--c-white);border:1px solid rgba(255,255,255,.25);padding:6px 16px;border-radius:var(--radius-full);background:#ffffff0d}.hero-actions{display:flex;gap:var(--sp-2);flex-wrap:wrap}.hero-image{display:flex;justify-content:center;align-items:center}.hero-portrait{width:100%;max-width:380px;aspect-ratio:4 / 5;object-fit:cover;border-radius:var(--radius-md);box-shadow:var(--shadow-lg)}.hero-scroll{position:absolute;bottom:var(--sp-4);left:50%;transform:translate(-50%);color:var(--c-text-on-dark-light);font-size:.8rem;display:flex;flex-direction:column;align-items:center;gap:var(--sp-1);animation:bounce 2s ease-in-out infinite}@keyframes bounce{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(8px)}}@keyframes fade-up{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.hero-text{animation:fade-up .8s ease-out}.hero-image{animation:fade-up 1s ease-out .2s both}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-1);padding:12px 28px;font-size:1rem;font-weight:var(--fw-semibold);font-family:var(--font-body);border:none;border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition);text-decoration:none;text-align:center}.btn-primary{background:var(--c-red);color:var(--c-white)}.btn-primary:hover{background:var(--c-red-dark);color:var(--c-white);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-secondary{background:transparent;color:var(--c-white);border:2px solid rgba(255,255,255,.3)}.btn-secondary:hover{border-color:var(--c-white);color:var(--c-white);transform:translateY(-2px)}.btn-outline{background:transparent;color:var(--c-black);border:2px solid var(--c-black)}.btn-outline:hover{background:var(--c-black);color:var(--c-white);transform:translateY(-2px)}.btn-outline-light{background:transparent;color:var(--c-white);border:2px solid rgba(255,255,255,.4)}.btn-outline-light:hover{border-color:var(--c-white);color:var(--c-white);transform:translateY(-2px)}.btn-sm{padding:8px 20px;font-size:.9rem}.section{padding:var(--sp-9) var(--sp-3)}.section-light{background:var(--c-white)}.section-alt{background:var(--c-bg-alt)}.section-dark{background:var(--c-black);color:var(--c-text-on-dark)}.section-inner{max-width:var(--max-w);margin:0 auto}.section-inner-narrow{max-width:720px}.section-label{display:inline-block;font-size:.75rem;font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.12em;color:var(--c-red);margin-bottom:var(--sp-1)}.section-label-gold{color:var(--c-gold)}.section-heading{font-size:clamp(1.6rem,3.5vw,2.4rem);font-weight:var(--fw-extrabold);color:var(--c-black);line-height:1.2;letter-spacing:-.02em;margin-bottom:var(--sp-5)}.section-heading-light{color:var(--c-white)}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-3)}.service-card{background:var(--c-bg-alt);border-radius:var(--radius-md);padding:var(--sp-4);border-top:3px solid var(--c-red);transition:var(--transition)}.service-card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.service-title{font-size:1.15rem;font-weight:var(--fw-bold);color:var(--c-black);margin-bottom:var(--sp-2)}.service-text{font-size:.95rem;color:var(--c-text-light);line-height:1.6;margin-bottom:var(--sp-3)}.service-tasks{list-style:none;display:flex;flex-direction:column;gap:var(--sp-1)}.service-tasks li{display:flex;align-items:flex-start;gap:var(--sp-1);font-size:.9rem;color:var(--c-text);line-height:1.5}.service-tasks li svg{color:var(--c-red);flex-shrink:0;margin-top:3px}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--sp-3)}.process-step{padding:var(--sp-3);border-left:2px solid var(--c-gold);transition:var(--transition)}.process-step:hover{border-left-color:var(--c-red);padding-left:calc(var(--sp-3) + 4px)}.process-number{font-size:2rem;font-weight:var(--fw-extrabold);color:var(--c-gold);display:block;margin-bottom:var(--sp-1);letter-spacing:-.02em}.process-title{font-size:1.05rem;font-weight:var(--fw-bold);color:var(--c-white);margin-bottom:var(--sp-1)}.process-text{font-size:.9rem;color:var(--c-text-on-dark-light);line-height:1.6}.projects-list{display:flex;flex-direction:column;gap:var(--sp-5)}.project-block{display:grid;grid-template-columns:1fr 1.5fr;gap:var(--sp-4);background:var(--c-bg-alt);border-radius:var(--radius-md);overflow:hidden;transition:var(--transition)}.project-block:hover{box-shadow:var(--shadow-md)}.project-image-wrap{overflow:hidden}.project-image{width:100%;height:100%;object-fit:cover;transition:var(--transition)}.project-block:hover .project-image{transform:scale(1.03)}.project-content{padding:var(--sp-4)}.project-name{font-size:1.3rem;font-weight:var(--fw-bold);color:var(--c-black);margin-bottom:var(--sp-3)}.project-detail{margin-bottom:var(--sp-3)}.project-detail:last-child{margin-bottom:0}.project-detail-label{display:inline-block;font-size:.75rem;font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.08em;color:var(--c-red);margin-bottom:4px}.project-detail p{font-size:.95rem;color:var(--c-text);line-height:1.6}.projects-note{margin-top:var(--sp-4);font-size:.9rem;color:var(--c-text-light);line-height:1.6}.about-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:var(--sp-5);align-items:start}.about-text p{font-size:1.05rem;line-height:1.7;color:var(--c-text);margin-bottom:var(--sp-3)}.about-text p:last-child{margin-bottom:0}.about-competencies{background:var(--c-bg-alt);border-radius:var(--radius-md);padding:var(--sp-4);border-left:3px solid var(--c-gold)}.about-comp-title{font-size:.85rem;font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.08em;color:var(--c-black);margin-bottom:var(--sp-2)}.about-comp-list{list-style:none;display:flex;flex-direction:column;gap:var(--sp-1)}.about-comp-list li{font-size:.95rem;color:var(--c-text);padding-left:var(--sp-1);position:relative}.about-comp-list li:before{content:"";position:absolute;left:0;top:9px;width:6px;height:6px;background:var(--c-red);border-radius:var(--radius-full)}.collab-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-3)}.collab-card{background:var(--c-white);border-radius:var(--radius-md);padding:var(--sp-4);border:1px solid var(--c-border);transition:var(--transition)}.collab-card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.collab-title{font-size:1.2rem;font-weight:var(--fw-bold);color:var(--c-black);margin-bottom:var(--sp-2)}.collab-text{font-size:.95rem;color:var(--c-text-light);line-height:1.6;margin-bottom:var(--sp-3)}.collab-tasks-label{font-size:.8rem;font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.08em;color:var(--c-red);margin-bottom:var(--sp-1)}.collab-tasks{list-style:none;display:flex;flex-direction:column;gap:6px;margin-bottom:var(--sp-4)}.collab-tasks li{font-size:.9rem;color:var(--c-text);padding-left:var(--sp-1);position:relative;line-height:1.5}.collab-tasks li:before{content:"—";position:absolute;left:0;color:var(--c-gold)}.contact-text{font-size:1.05rem;color:var(--c-text-on-dark-light);line-height:1.7;margin-bottom:var(--sp-4);max-width:560px}.contact-info{margin-bottom:var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-1)}.contact-name{font-size:1.2rem;font-weight:var(--fw-bold);color:var(--c-white);margin-bottom:4px}.contact-link{display:inline-flex;align-items:center;gap:var(--sp-1);color:var(--c-text-on-dark-light);font-size:1rem;text-decoration:none;transition:var(--transition-fast)}.contact-link:hover{color:var(--c-white)}.contact-link svg{color:var(--c-gold);flex-shrink:0}.contact-location{display:inline-flex;align-items:center;gap:var(--sp-1);color:var(--c-text-on-dark-light);font-size:.95rem}.contact-location svg{color:var(--c-gold)}.contact-actions{display:flex;gap:var(--sp-2);flex-wrap:wrap}.footer{background:var(--c-black);color:var(--c-text-on-dark-light);padding:var(--sp-6) var(--sp-3) var(--sp-3)}.footer-inner{max-width:var(--max-w);margin:0 auto;display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--sp-4);padding-bottom:var(--sp-4);border-bottom:1px solid rgba(255,255,255,.1)}.footer-brand{display:flex;flex-direction:column;gap:4px}.footer-logo{font-weight:var(--fw-extrabold);font-size:1.1rem;color:var(--c-white)}.footer-logo:after{content:".";color:var(--c-red)}.footer-desc{font-size:.85rem;color:var(--c-text-on-dark-light)}.footer-links{display:flex;flex-direction:column;gap:6px}.footer-links a{color:var(--c-text-on-dark-light);font-size:.9rem;text-decoration:none;transition:var(--transition-fast)}.footer-links a:hover{color:var(--c-white)}.footer-contact{display:flex;flex-direction:column;gap:6px}.footer-contact a{color:var(--c-text-on-dark-light);font-size:.9rem;text-decoration:none;transition:var(--transition-fast)}.footer-contact a:hover{color:var(--c-white)}.footer-copyright{text-align:center;font-size:.8rem;color:var(--c-text-on-dark-light);padding-top:var(--sp-3)}.bewerbung-section{padding-top:calc(var(--sp-7) + var(--sp-3));background:var(--c-bg-alt);min-height:100vh}.bewerbung-inner{max-width:var(--max-w);margin:0 auto;padding:var(--sp-5) var(--sp-3) var(--sp-7)}.bewerbung-back{display:inline-flex;align-items:center;gap:4px;font-size:.9rem;color:var(--c-text-light);text-decoration:none;margin-bottom:var(--sp-4);transition:var(--transition-fast)}.bewerbung-back:hover{color:var(--c-red)}.bewerbung-heading{font-size:clamp(1.6rem,3.5vw,2.4rem);font-weight:var(--fw-extrabold);color:var(--c-black);line-height:1.2;letter-spacing:-.02em;margin-bottom:var(--sp-2)}.bewerbung-intro{font-size:1rem;color:var(--c-text-light);line-height:1.7;max-width:700px;margin-bottom:var(--sp-5)}.bewerbung-profile{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-3);margin-bottom:var(--sp-5)}.bewerbung-profile-card,.bewerbung-projects-card{background:var(--c-white);border-radius:var(--radius-md);padding:var(--sp-4);border:1px solid var(--c-border)}.bewerbung-profile-card h3,.bewerbung-projects-card h3{font-size:.85rem;font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.08em;color:var(--c-red);margin-bottom:var(--sp-2)}.bewerbung-profile-card p{font-size:.95rem;color:var(--c-text);line-height:1.6;margin-bottom:var(--sp-1)}.bewerbung-project-list{list-style:none;display:flex;flex-direction:column;gap:var(--sp-2)}.bewerbung-project-list li{font-size:.9rem;color:var(--c-text);line-height:1.6;padding-bottom:var(--sp-1);border-bottom:1px solid var(--c-border)}.bewerbung-project-list li:last-child{border-bottom:none}.bewerbung-contact{margin-top:var(--sp-6);padding:var(--sp-4);background:var(--c-black);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:var(--sp-1)}.bewerbung-contact h3{font-size:.85rem;font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.08em;color:var(--c-gold);margin-bottom:var(--sp-1)}.cv-print-area{display:flex;gap:var(--sp-4);justify-content:center;flex-wrap:wrap;margin:var(--sp-4) 0}.cv-page{width:210mm;max-width:100%;min-height:297mm;padding:20mm 18mm;background:var(--c-white);box-shadow:var(--shadow-lg);border-radius:var(--radius-sm);font-size:11pt;line-height:1.5;color:var(--c-text)}.cv-page-header{border-bottom:2px solid var(--c-red);padding-bottom:var(--sp-2);margin-bottom:var(--sp-3)}.cv-page-header h2{font-size:1.4rem;font-weight:var(--fw-bold);color:var(--c-black);margin-bottom:2px}.cv-page-header .cv-contact{font-size:.8rem;color:var(--c-text-light)}.cv-section-block{margin-bottom:var(--sp-3)}.cv-section-block h3{font-size:.9rem;font-weight:var(--fw-bold);color:var(--c-red);text-transform:uppercase;letter-spacing:.06em;margin-bottom:var(--sp-1);padding-bottom:4px;border-bottom:1px solid var(--c-border)}.cv-entry{display:grid;grid-template-columns:130px 1fr;gap:var(--sp-2);padding:6px 0;border-bottom:1px dotted var(--c-border);font-size:.85rem}.cv-entry:last-child{border-bottom:none}.cv-entry-simple{grid-template-columns:200px 1fr}.cv-entry-period{font-weight:var(--fw-semibold);color:var(--c-gold-dark);font-size:.8rem}.cv-entry-role{font-weight:var(--fw-semibold);color:var(--c-black)}.cv-entry-desc{color:var(--c-text-light);font-size:.8rem;line-height:1.5;margin-top:2px}.cv-entry-label{font-weight:var(--fw-semibold);color:var(--c-black)}.cv-entry-value{color:var(--c-text-light)}.cv-actions{display:flex;justify-content:center;gap:var(--sp-2);margin-top:var(--sp-4);flex-wrap:wrap}@media (max-width: 900px){.nav-links,.nav-cta{display:none}.nav-toggle{display:flex}.hero-grid{grid-template-columns:1fr;text-align:center}.hero-overline,.hero-desc{margin-left:auto;margin-right:auto}.hero-badges,.hero-actions{justify-content:center}.hero-image{order:-1}.hero-portrait{max-width:280px}.services-grid{grid-template-columns:1fr}.process-grid{grid-template-columns:1fr 1fr}.project-block{grid-template-columns:1fr}.project-image-wrap{max-height:240px}.about-grid,.collab-grid{grid-template-columns:1fr}.footer-inner{grid-template-columns:1fr;gap:var(--sp-3)}.bewerbung-profile{grid-template-columns:1fr}}@media (max-width: 600px){.process-grid{grid-template-columns:1fr}.cv-page{width:100%;min-height:auto;padding:var(--sp-3);font-size:10pt}.cv-entry,.cv-entry-simple{grid-template-columns:1fr}.btn{width:100%}.hero-actions,.contact-actions{flex-direction:column}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.hero-scroll{animation:none}}@media print{.nav,.footer,.cv-actions,.bewerbung-back,.bewerbung-profile,.bewerbung-contact{display:none!important}.bewerbung-section{padding:0;background:var(--c-white)}.cv-print-area{display:block}.cv-page{box-shadow:none;page-break-after:always;width:100%;min-height:auto;border-radius:0}}
