@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Spectral:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:50px;font-size:17px}body{font-family:Spectral,Georgia,serif;background:#fafaf8;color:#1c1c1c;line-height:1.5}a{color:#2d5a27;text-decoration:none}a:hover{text-decoration:underline}a:focus-visible{outline:2px solid #88C082;outline-offset:3px;border-radius:1px}main a:visited{color:#4f7d49}.md-link{color:#2d5a27;text-decoration:underline;text-decoration-color:#2d5a2766;text-underline-offset:2px}.md-link:hover{text-decoration-color:#2d5a27}.container{max-width:920px;margin:0 auto;padding:0 2rem}.accent-line{height:3px;background:#2d5a27}header{background:#111;padding:2.25rem 0 2rem}.header-inner{display:flex;justify-content:space-between;align-items:flex-start;gap:2.25rem}.header-text{flex:1;padding-top:.1rem}header h1{font-family:Cormorant Garamond,Georgia,serif;font-size:3rem;font-weight:500;letter-spacing:.03em;color:#f2f2ee;margin-bottom:.4rem;line-height:1.05}header .title{font-size:.95rem;color:#88c082;font-style:italic;line-height:1.4;margin-bottom:.3rem}header .institution{font-size:.85rem;color:#7a7a75;line-height:1.4}.header-photo{position:relative;flex-shrink:0}.header-photo img{width:135px;height:193px;object-fit:cover;object-position:center top;border-radius:3px;display:block;background:#2a2a2a;border:1.5px solid rgba(255,255,255,.1)}.nav-bar{position:sticky;top:0;background:#fff;border-bottom:1px solid #E0E0DC;box-shadow:0 1px 6px #00000012;z-index:100}nav ul{list-style:none;display:flex;gap:1.75rem;flex-wrap:wrap;padding:.7rem 0}nav a{font-size:.78rem;font-variant:small-caps;letter-spacing:.1em;color:#3a3a3a;text-transform:lowercase;padding-bottom:2px;border-bottom:2px solid transparent;transition:border-color .12s,color .12s}nav a:hover{color:#2d5a27;border-bottom-color:#2d5a27;text-decoration:none}nav a.active{color:#2d5a27;border-bottom-color:#2d5a27}main{padding-bottom:3.5rem}section{display:grid;grid-template-columns:150px 1fr;gap:0 3rem;padding:2.75rem 0;border-bottom:1px solid #E4E4E0}section:last-child{border-bottom:none}.section-body{min-width:0}h2{font-size:.75rem;font-variant:small-caps;letter-spacing:.22em;text-transform:lowercase;color:#2d5a27;align-self:start;position:sticky;top:52px;padding-top:.15rem}h3{font-size:.7rem;font-variant:small-caps;letter-spacing:.15em;text-transform:lowercase;color:#6b6b6b;margin-top:2rem;margin-bottom:.85rem;padding-bottom:.3rem;border-bottom:1px solid #E4E4E0}h3:first-of-type{margin-top:0}p{margin-bottom:.65rem}p:last-child{margin-bottom:0}.themes{margin-top:1.25rem}.theme{margin-bottom:1.5rem;padding-left:1rem;border-left:2px solid #88C082}.theme-title{font-weight:600;color:#111;margin-bottom:.15rem}.theme p{font-size:.93rem;margin-bottom:0;line-height:1.48}.pub-list{list-style:none}.pub-list li{margin-bottom:.65rem;padding-left:1.5rem;text-indent:-1.5rem;font-size:.93rem;line-height:1.5}.pub-journal{font-style:italic;color:#2d5a27}.pub-status{font-size:.83rem;color:#6b6b6b}.pub-list li.book-entry{display:flex;gap:1.25rem;align-items:flex-start;padding-left:0;text-indent:0;margin-bottom:1.35rem}.book-cover{flex-shrink:0;position:relative}.book-cover img{width:82px;display:block;box-shadow:0 3px 12px #00000038;border-radius:2px}.book-cover .book-cover-placeholder{width:82px;height:118px;background:#1111110f;border-radius:2px;display:flex;align-items:center;justify-content:center;text-align:center;font-size:.7rem;color:#11111159;padding:0 .4rem}.book-citation{flex:1;min-width:0}.pub-trans{font-style:italic}.pub-pdf{font-size:.8rem;white-space:nowrap}.book-awards{list-style:none;margin-top:.4rem}.pub-list .book-awards li{padding-left:0;text-indent:0;margin-bottom:.15rem;font-size:.8rem;color:#2d5a27;line-height:1.4}.book-awards .star{margin-right:.15rem}.editrow{display:block;margin-top:.2rem}.editlink{color:#2d5a27;word-break:break-all}.course-list li.course-editing{flex-direction:column;align-items:flex-start;gap:.3rem}.contact-office{font-style:normal}.contact-addr-line{display:block;color:#1c1c1c;line-height:1.45}.award-list{list-style:none}.award-list li{display:flex;gap:1.5rem;padding:.4rem 0;border-bottom:1px solid #EAEAE6;font-size:.93rem;align-items:baseline;line-height:1.45}.award-list li:last-child{border-bottom:none}.award-year{color:#2d5a27;flex-shrink:0;min-width:2.8rem;font-variant:small-caps;letter-spacing:.04em}.course-list{list-style:none}.course-list li{display:flex;justify-content:space-between;align-items:baseline;padding:.5rem 0;border-bottom:1px solid #EAEAE6;gap:1rem;font-size:.93rem}.course-list li:last-child{border-bottom:none}.course-name{font-weight:500}.course-meta{font-size:.83rem;color:#6b6b6b;flex-shrink:0;text-align:right}.contact-grid{display:grid;grid-template-columns:max-content 1fr;gap:.4rem 2rem;font-size:.93rem;margin-bottom:1.5rem;align-items:baseline}.contact-label{color:#6b6b6b;font-variant:small-caps;font-size:.8rem;letter-spacing:.06em}#contact-email{cursor:pointer}.cv-button{display:inline-block;margin-top:.4rem;padding:.45rem 1.35rem;background:#111;color:#f2f2ee;font-family:Spectral,Georgia,serif;font-size:.85rem;font-variant:small-caps;letter-spacing:.1em;border-radius:2px;transition:background .13s}.cv-button:hover{background:#2d5a27;color:#f2f2ee;text-decoration:none}.cv-button:active{background:#1e3d1b}.cv-button:visited{color:#f2f2ee}footer{border-top:1px solid #E4E4E0}.footer-inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.5rem;padding-top:1rem;padding-bottom:1rem;font-size:.75rem;color:#9a9a95}@media(max-width:640px){html{font-size:16px}section{display:block}h2{position:static;margin-bottom:1.2rem;padding-bottom:.3rem;border-bottom:1px solid #E4E4E0}.header-inner{flex-direction:column-reverse;align-items:center;text-align:center}.header-photo img{width:110px;height:157px}header h1{font-size:2.5rem}nav ul{gap:1.1rem}.contact-grid{grid-template-columns:1fr;gap:.2rem}.contact-label{margin-top:.65rem}.course-list li{flex-direction:column;gap:0}.award-list li{flex-direction:column;gap:.1rem}.footer-inner{flex-direction:column;text-align:center}}.hidden{display:none!important}.translate-y-full{transform:translateY(100%)!important}.editor-field-active{border-radius:2px;transition:background .2s,box-shadow .2s;cursor:text}.editor-field-active:hover{background:#2d5a2714;color:#1c1c1c}.editor-field-active:focus{outline:none;box-shadow:0 0 0 2px #2d5a278c;background:#fff;color:#1c1c1c!important;border-radius:2px}.editor-field-dirty{outline:1px solid rgba(45,90,39,.4);border-radius:2px}[contenteditable=true]:empty:before{content:"Hier Text eingeben…";color:#1c1c1c59;font-style:italic;pointer-events:none}[contenteditable=true][data-placeholder]:empty:before{content:attr(data-placeholder)}.editor-item-wrapper{position:relative}.editor-item-controls{position:absolute;right:-2.5rem;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:.25rem;opacity:0;transition:opacity .15s ease;z-index:10}.editor-item-wrapper:hover .editor-item-controls,.editor-item-controls:focus-within{opacity:1}.editor-move-btn,.editor-delete-btn{width:1.4rem;height:1.4rem;display:flex;align-items:center;justify-content:center;font-size:.75rem;line-height:1;border:1px solid rgba(45,90,39,.4);border-radius:9999px;background:#fafaf8;color:#2d5a27;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease,opacity .15s ease}.editor-delete-btn{font-size:1rem}.editor-move-btn:hover:not(:disabled),.editor-delete-btn:hover{background:#2d5a27;border-color:#2d5a27;color:#fff}.editor-move-btn:disabled{opacity:.3;cursor:default}.editor-add-btn{display:inline-flex;align-items:center;gap:.375rem;margin-top:.875rem;padding:.375rem .875rem;font-size:.75rem;font-weight:500;font-family:Spectral,Georgia,serif;color:#2d5a27b3;border:1px dashed rgba(45,90,39,.45);border-radius:.25rem;background:transparent;cursor:pointer;transition:color .15s,border-color .15s,background .15s}.editor-add-btn:hover{color:#2d5a27;border-color:#2d5a27;background:#2d5a270f}.editor-upload-btn{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .6rem;font-size:.7rem;font-weight:500;font-family:Spectral,Georgia,serif;color:#fff;background:#2d5a27;border:none;border-radius:.25rem;cursor:pointer;transition:background .15s ease,opacity .15s ease}.editor-upload-btn:hover{background:#3c7434;text-decoration:none}.editor-upload-btn:disabled{opacity:.6;cursor:default}.editor-img-replace{position:absolute;left:50%;bottom:.5rem;transform:translate(-50%);white-space:nowrap;box-shadow:0 2px 8px #0000004d;z-index:10}.editor-cv-upload{margin-top:.5rem;justify-content:center}.modal-overlay{position:fixed;inset:0;z-index:500;display:flex;align-items:center;justify-content:center;background:#0009;padding:1rem}.modal-card{background:#fff;border-radius:10px;box-shadow:0 20px 60px #00000059;width:100%;max-width:24rem;padding:2rem}.modal-card h3{font-family:Cormorant Garamond,Georgia,serif;font-size:1.6rem;font-variant:normal;text-transform:none;letter-spacing:normal;color:#111;border:none;margin:0 0 .4rem;padding:0}.modal-hint{font-size:.85rem;color:#6b6b6b;margin-bottom:1.4rem}.modal-label{display:block;font-size:.85rem;font-weight:500;color:#1c1c1c;margin-bottom:.3rem}.modal-input{width:100%;padding:.55rem .8rem;border:1px solid #D9D9D4;border-radius:6px;font-family:Spectral,Georgia,serif;font-size:.95rem;color:#1c1c1c;margin-bottom:1rem}.modal-input:focus{outline:none;box-shadow:0 0 0 2px #2d5a2780;border-color:#2d5a27}.modal-error{font-size:.85rem;color:#c0392b;margin-bottom:.75rem}.modal-actions{display:flex;gap:.75rem}.btn-primary{flex:1;padding:.55rem;background:#2d5a27;color:#fff;border:none;border-radius:6px;font-family:Spectral,Georgia,serif;font-weight:500;cursor:pointer;transition:background .15s}.btn-primary:hover{background:#24491f}.btn-secondary{padding:.55rem 1rem;background:transparent;color:#6b6b6b;border:1px solid #D9D9D4;border-radius:6px;font-family:Spectral,Georgia,serif;cursor:pointer;transition:color .15s,border-color .15s}.btn-secondary:hover{color:#1c1c1c;border-color:#b8b8b2}.save-bar{position:fixed;bottom:0;left:0;right:0;z-index:400;transition:transform .3s ease;background:#111;border-top:1px solid rgba(136,192,130,.5);box-shadow:0 -4px 24px #00000040}.save-bar-inner{max-width:920px;margin:0 auto;padding:0 2rem;height:4rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.save-bar-status{display:flex;align-items:center;gap:.5rem}.save-bar-dot{display:inline-block;width:.5rem;height:.5rem;border-radius:9999px;background:#88c082}.save-bar-label{color:#ffffffbf;font-size:.85rem;font-weight:500}.save-bar-actions{display:flex;align-items:center;gap:.75rem}#save-status{color:#ffffff80;font-size:.75rem}.save-bar-logout{padding:.5rem .9rem;background:transparent;border:none;color:#fff9;font-family:Spectral,Georgia,serif;font-size:.85rem;cursor:pointer;transition:color .15s}.save-bar-logout:hover{color:#fff}.save-bar-save{padding:.5rem 1.35rem;background:#2d5a27;color:#fff;border:none;border-radius:3px;font-family:Spectral,Georgia,serif;font-size:.85rem;font-weight:500;cursor:pointer;transition:background .15s}.save-bar-save:hover{background:#3c7434}.save-bar-save:disabled{opacity:.5;cursor:not-allowed}
