@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500&family=Source+Sans+3:ital,wght@0,300;0,400;0,500;0,600;0,700;1,400;1,500&display=swap";:root{--color-bg: #faf9f7;--color-bg-alt: #f2f0ec;--color-bg-alt-2: #edeae4;--color-surface: #ffffff;--color-text: #2d2d2d;--color-text-secondary: #5a5a5a;--color-text-muted: #8a8a8a;--color-accent: #1a3a5c;--color-accent-light: #2c5f8a;--color-accent-hover: #0f2740;--color-border: #e0ddd8;--color-border-light: #eceae5;--color-gold: #8b7355;--color-tag-bg: #f0ede8;--color-tag-text: #5a5a5a;--color-success: #3a6b4a;--font-heading: "Cormorant Garamond", Georgia, "Times New Roman", serif;--font-body: "Source Sans 3", "Helvetica Neue", Arial, sans-serif;--sidebar-width: 300px;--max-content: 780px;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-3xl: 4rem;--shadow-sm: 0 1px 3px rgba(0,0,0,.06);--shadow-md: 0 2px 8px rgba(0,0,0,.08)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{font-family:var(--font-body);color:var(--color-text);background:var(--color-bg);line-height:1.7;font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.skip-link{position:absolute;top:-100%;left:var(--spacing-md);background:var(--color-accent);color:#fff;padding:var(--spacing-sm) var(--spacing-md);z-index:1000;border-radius:0 0 4px 4px;text-decoration:none;font-weight:600}.skip-link:focus{top:0}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--color-accent);line-height:1.3;font-weight:600}h1{font-size:2.25rem;margin-bottom:var(--spacing-lg)}h2{font-size:1.75rem;margin-top:var(--spacing-2xl);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-border-light)}h3{font-size:1.35rem;margin-top:var(--spacing-xl);margin-bottom:var(--spacing-md)}h4{font-size:1.15rem;margin-top:var(--spacing-lg);margin-bottom:var(--spacing-sm)}p{margin-bottom:var(--spacing-md)}a{color:var(--color-accent-light);text-decoration:none;transition:color .2s ease}a:hover{color:var(--color-accent-hover);text-decoration:underline}strong{font-weight:600}em{font-style:italic}ul,ol{margin-bottom:var(--spacing-md);padding-left:var(--spacing-xl)}li{margin-bottom:var(--spacing-xs)}.site-wrapper{display:flex;min-height:100vh}.sidebar{position:sticky;top:0;width:var(--sidebar-width);height:100vh;background:var(--color-surface);border-right:1px solid var(--color-border);padding:var(--spacing-2xl) var(--spacing-xl);display:flex;flex-direction:column;align-items:center;text-align:center;flex-shrink:0;overflow-y:auto}.sidebar-photo-link{display:block;text-decoration:none;transition:transform .2s ease}.sidebar-photo-link:hover{transform:scale(1.02)}.sidebar-photo{width:180px;height:225px;border-radius:6px;object-fit:cover;margin-bottom:var(--spacing-lg);box-shadow:var(--shadow-md)}.sidebar-name-link,.sidebar-name-link:hover{text-decoration:none}.sidebar-name-link:hover .sidebar-name{color:var(--color-accent-light)}.sidebar-name{font-family:var(--font-heading);font-size:1.5rem;font-weight:700;color:var(--color-accent);margin-bottom:var(--spacing-xs);line-height:1.2;transition:color .2s ease}.sidebar-title{font-size:.85rem;color:var(--color-text-secondary);line-height:1.4;margin-bottom:var(--spacing-lg)}.sidebar-institution{font-size:.8rem;color:var(--color-text-muted);margin-bottom:var(--spacing-lg)}.sidebar-nav{width:100%;margin-bottom:var(--spacing-xl)}.sidebar-nav a{display:block;padding:var(--spacing-sm) var(--spacing-md);color:var(--color-text-secondary);font-size:.9rem;font-weight:500;border-radius:4px;transition:all .2s ease;text-decoration:none}.sidebar-nav a:hover{background:var(--color-bg-alt);color:var(--color-accent);text-decoration:none}.sidebar-nav a.active{background:var(--color-bg-alt);color:var(--color-accent);font-weight:600;border-left:3px solid var(--color-accent)}.sidebar-icons{display:flex;gap:var(--spacing-md);justify-content:center;flex-wrap:wrap;margin-top:auto;padding-top:var(--spacing-lg)}.sidebar-icons a{color:var(--color-text-muted);font-size:.75rem;text-decoration:none;display:flex;flex-direction:column;align-items:center;gap:4px;transition:color .2s}.sidebar-icons a:hover{color:var(--color-accent);text-decoration:none}.sidebar-icons svg{width:20px;height:20px}.main-content{flex:1;padding:var(--spacing-3xl) var(--spacing-2xl);max-width:calc(var(--max-content) + var(--spacing-2xl) * 2)}.page-header{margin-bottom:var(--spacing-2xl)}.page-header h1{font-size:2.5rem;font-weight:700;margin-bottom:var(--spacing-sm)}.page-subtitle{font-size:1.1rem;color:var(--color-text-secondary);font-style:italic;font-family:var(--font-heading)}.mobile-hero-photo{display:none;width:100%;max-width:100%;height:auto;border-radius:8px;margin-bottom:var(--spacing-xl);box-shadow:var(--shadow-md)}.section-alt{background:var(--color-bg-alt);margin-left:calc(-1 * var(--spacing-2xl));margin-right:calc(-1 * var(--spacing-2xl));padding:var(--spacing-xl) var(--spacing-2xl);margin-top:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.section-alt-2{background:var(--color-bg-alt-2);margin-left:calc(-1 * var(--spacing-2xl));margin-right:calc(-1 * var(--spacing-2xl));padding:var(--spacing-xl) var(--spacing-2xl);margin-top:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.section-alt h2,.section-alt-2 h2{margin-top:0}.book-spotlight{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;padding:var(--spacing-xl);margin:var(--spacing-xl) 0;box-shadow:var(--shadow-sm)}.book-info h3{margin-top:0;margin-bottom:var(--spacing-md);font-size:1.4rem;width:100%}.book-series{font-size:.85rem;color:var(--color-gold);font-weight:500;margin-bottom:var(--spacing-md);text-transform:uppercase;letter-spacing:.5px;width:100%}.book-content{display:flex;gap:var(--spacing-xl);align-items:flex-start}.book-cover{flex-shrink:0;width:35%;max-width:220px;min-width:150px}.book-cover img{width:100%;height:auto;object-fit:contain;border-radius:4px;box-shadow:var(--shadow-md)}.book-text{flex:1;min-width:0}.book-description{font-size:.95rem;color:var(--color-text-secondary);line-height:1.65}.book-links{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-md);flex-wrap:wrap}.book-links a{display:inline-block;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-accent);color:#fff;border-radius:4px;font-size:.85rem;font-weight:500;text-decoration:none;transition:background .2s}.book-links a:hover{background:var(--color-accent-hover);color:#fff;text-decoration:none}.book-links a.secondary{background:transparent;color:var(--color-accent);border:1px solid var(--color-border)}.book-links a.secondary:hover{background:var(--color-bg-alt);color:var(--color-accent-hover)}.research-cluster{background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:8px;padding:var(--spacing-xl);margin-bottom:var(--spacing-lg)}.research-cluster-content h3{margin-top:0;margin-bottom:var(--spacing-md);color:var(--color-accent);width:100%}.research-cluster-body{display:flex;gap:var(--spacing-xl);align-items:flex-start}.research-cluster.reverse .research-cluster-body{flex-direction:row-reverse}.research-cluster-image{flex-shrink:0;width:35%;max-width:280px;min-width:180px}.research-cluster-image img{width:100%;height:auto;object-fit:contain;border-radius:6px;box-shadow:var(--shadow-sm);max-height:100%}.research-cluster-text{flex:1;min-width:0}.cluster-pubs{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-border-light)}.cluster-pubs h4{font-size:.85rem;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted);margin-top:0;margin-bottom:var(--spacing-sm)}.pub-section{margin-bottom:var(--spacing-2xl)}.pub-entry{margin-bottom:var(--spacing-lg);padding-left:var(--spacing-md);border-left:2px solid var(--color-border-light)}.pub-entry:hover{border-left-color:var(--color-accent)}.pub-entry .pub-title{font-weight:600;color:var(--color-text)}.pub-entry .pub-citation{font-size:.95rem;color:var(--color-text-secondary);line-height:1.6}.pub-entry .pub-links{margin-top:var(--spacing-xs);font-size:.85rem}.pub-entry .pub-links a{margin-right:var(--spacing-md)}.status-label{display:inline-block;font-size:.75rem;font-weight:600;padding:2px 8px;border-radius:3px;text-transform:uppercase;letter-spacing:.3px}.status-published{background:#e8f0e8;color:var(--color-success)}.status-forthcoming{background:#f0ede8;color:var(--color-gold)}.status-in-progress{background:#e8eef5;color:var(--color-accent-light)}.teaching-institution{margin-bottom:var(--spacing-2xl)}.teaching-institution h3{color:var(--color-accent);padding-bottom:var(--spacing-xs);border-bottom:1px solid var(--color-border-light);display:flex;align-items:center;gap:var(--spacing-md)}.teaching-institution h3 img{height:40px;width:auto;object-fit:contain}.course-list{list-style:none;padding-left:0}.course-list li{padding:var(--spacing-sm) 0;border-bottom:1px solid var(--color-border-light);font-size:.95rem}.course-list li:last-child{border-bottom:none}.course-year{font-weight:600;color:var(--color-accent);font-size:.85rem}.logo-row{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-md);flex-wrap:wrap}.logo-row img{height:36px;width:auto;object-fit:contain;opacity:.85;transition:opacity .2s}.logo-row img:hover{opacity:1}.timeline{position:relative;padding-left:var(--spacing-xl)}.timeline:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--color-border)}.timeline-item{position:relative;margin-bottom:var(--spacing-xl);padding-left:var(--spacing-lg)}.timeline-item:before{content:"";position:absolute;left:calc(-1 * var(--spacing-xl) - 4px);top:6px;width:10px;height:10px;border-radius:50%;background:var(--color-accent);border:2px solid var(--color-bg)}.timeline-year{font-weight:700;color:var(--color-accent);font-size:.9rem;margin-bottom:var(--spacing-xs)}.timeline-title{font-weight:600;margin-bottom:var(--spacing-xs)}.timeline-desc{font-size:.9rem;color:var(--color-text-secondary)}.personal-section{background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:8px;padding:var(--spacing-xl);margin-top:var(--spacing-lg)}.personal-section h2{margin-top:0;border-bottom:none;padding-bottom:0}.cv-embed{width:100%;height:80vh;border:1px solid var(--color-border);border-radius:4px}.cv-download{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);background:var(--color-accent);color:#fff;border-radius:4px;font-weight:500;text-decoration:none;margin-bottom:var(--spacing-lg);transition:background .2s}.cv-download:hover{background:var(--color-accent-hover);color:#fff;text-decoration:none}.cv-update{font-size:.85rem;color:var(--color-text-muted);margin-bottom:var(--spacing-lg)}.contact-form{max-width:500px}.form-group{margin-bottom:var(--spacing-lg)}.form-group label{display:block;font-weight:500;margin-bottom:var(--spacing-xs);font-size:.9rem}.form-group input,.form-group textarea{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:4px;font-family:var(--font-body);font-size:.95rem;background:var(--color-surface);transition:border-color .2s}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px #1a3a5c1a}.form-group textarea{min-height:150px;resize:vertical}.form-submit{padding:var(--spacing-sm) var(--spacing-xl);background:var(--color-accent);color:#fff;border:none;border-radius:4px;font-family:var(--font-body);font-size:.95rem;font-weight:500;cursor:pointer;transition:background .2s}.form-submit:hover{background:var(--color-accent-hover)}.profile-links{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--spacing-md);margin:var(--spacing-lg) 0}.profile-link{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:6px;transition:all .2s}.profile-link:hover{border-color:var(--color-accent);box-shadow:var(--shadow-sm);text-decoration:none}.tag{display:inline-block;padding:2px 10px;background:var(--color-tag-bg);color:var(--color-tag-text);font-size:.8rem;border-radius:3px;margin-right:var(--spacing-xs);margin-bottom:var(--spacing-xs)}.footer{margin-top:var(--spacing-3xl);padding-top:var(--spacing-lg);border-top:1px solid var(--color-border-light);font-size:.8rem;color:var(--color-text-muted);text-align:center}.mobile-header{display:none;position:fixed;top:0;left:0;right:0;background:var(--color-surface);border-bottom:1px solid var(--color-border);padding:var(--spacing-sm) var(--spacing-md);z-index:100;align-items:center;justify-content:space-between}.mobile-header-link,.mobile-header-link:hover{text-decoration:none}.mobile-header-name{font-family:var(--font-heading);font-weight:700;color:var(--color-accent);font-size:1.1rem}.hamburger{background:none;border:none;cursor:pointer;padding:var(--spacing-sm);color:var(--color-text)}.hamburger svg{width:24px;height:24px}.sidebar-overlay{display:none;position:fixed;inset:0;background:#0006;z-index:99}@media(max-width:900px){.mobile-header{display:flex}.sidebar{position:fixed;left:-100%;top:0;z-index:100;transition:left .3s ease;box-shadow:var(--shadow-md)}.sidebar.open{left:0}.sidebar-overlay.open{display:block}.main-content{padding:calc(var(--spacing-3xl) + 48px) var(--spacing-lg) var(--spacing-2xl);max-width:100%}.mobile-hero-photo{display:block}.book-content{flex-direction:column;align-items:center}.book-cover{width:140px;max-width:140px}.book-links{justify-content:center}.book-description{text-align:center}.research-cluster-body,.research-cluster.reverse .research-cluster-body{flex-direction:column!important}.research-cluster-image{width:100%;max-width:300px;margin:0 auto}.section-alt,.section-alt-2{margin-left:calc(-1 * var(--spacing-lg));margin-right:calc(-1 * var(--spacing-lg));padding:var(--spacing-lg)}h1{font-size:1.8rem}h2{font-size:1.4rem}.profile-links{grid-template-columns:1fr}}@media(max-width:600px){.main-content{padding:calc(var(--spacing-2xl) + 48px) var(--spacing-md) var(--spacing-lg)}.book-spotlight,.research-cluster{padding:var(--spacing-md)}.section-alt,.section-alt-2{margin-left:calc(-1 * var(--spacing-md));margin-right:calc(-1 * var(--spacing-md));padding:var(--spacing-md)}}
