*{box-sizing:border-box;margin:0;padding:0}
body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;color:#243449;line-height:1.7;background:#fff}
a{color:#0066cc;text-decoration:none}a:hover{text-decoration:underline}a:focus-visible,summary:focus-visible{outline:3px solid #0066cc;outline-offset:4px}
nav{background:#fff;border-bottom:1px solid #e2e8f0}.nav-container{max-width:1200px;margin:auto;display:flex;justify-content:space-between;align-items:center;padding:.5rem 1rem;gap:1rem}.nav-logo{font-weight:700;font-size:1.25rem}.nav-menu{display:flex;gap:1rem;list-style:none}.nav-menu a{display:block;padding:.5rem}.nav-menu a[aria-current=page]{color:#084681;text-decoration:underline;text-underline-offset:7px}
.content{max-width:1000px;margin:auto;padding:0 1.5rem}.page-intro{padding:3.5rem 0 2.5rem}.eyebrow{color:#075ca9;font-size:.8rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;margin-bottom:.7rem}h1{font-size:clamp(2rem,5vw,3.2rem);line-height:1.15;letter-spacing:-.035em;color:#153654;overflow-wrap:anywhere}.intro{font-size:1.1rem;max-width:700px;margin-top:1.2rem;color:#506177}.list-hint{font-size:.95rem;color:#506177;margin-top:.7rem}h2{font-size:1.25rem;line-height:1.4;color:#153654}.project-group{margin-bottom:2.5rem}.project-group>h2{margin-bottom:.9rem}.project-list{border-top:1px solid #dbe4ed}.project-item{border-bottom:1px solid #dbe4ed;scroll-margin-top:1rem}.project-item summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.1rem 1rem;list-style:none;color:#153654;font-size:1.05rem;font-weight:600;line-height:1.5;border-radius:4px;min-height:60px}.project-item summary::-webkit-details-marker{display:none}.project-item summary::marker{content:""}.project-item summary:hover{background:#f3f8fd}.project-item[open] summary{background:#f0f7ff;color:#075ca9}.expand-icon{position:relative;flex:0 0 18px;width:18px;height:18px}.expand-icon:before,.expand-icon:after{content:"";position:absolute;background:#0066cc;top:8px;left:2px;width:14px;height:2px}.expand-icon:after{transform:rotate(90deg)}.project-item[open] .expand-icon:after{display:none}.project-content{padding:1rem 1rem 1.4rem;max-width:850px}.project-content p{color:#465a70}.project-media{display:grid;gap:1rem;margin-top:1.3rem}.project-media img,.project-media video{display:block;width:100%;height:auto;border-radius:6px}.project-media figcaption{font-size:.9rem;color:#506177;margin-top:.4rem}.contact-panel{display:flex;align-items:center;justify-content:space-between;gap:2rem;border-top:1px solid #dbe4ed;padding:2rem 0 3rem;margin-top:3rem}.contact-panel p{margin-top:.5rem;color:#506177}.button{display:inline-block;flex-shrink:0;border-radius:6px;background:#0066cc;color:#fff;padding:.8rem 1.2rem;font-weight:600;text-align:center}.button:hover{background:#0052a3;text-decoration:none}footer{background:#f9f9f9;text-align:center;padding:2rem 1rem;color:#666;font-size:.9rem}footer a{margin-left:.5rem}.skip-link{position:absolute;top:-100px;left:1rem;padding:.8rem;background:#fff;z-index:2000}.skip-link:focus{top:1rem}
@media(max-width:900px){.nav-container{flex-wrap:wrap}.nav-actions{flex-wrap:wrap}}
@media(max-width:768px){.nav-container{flex-direction:column;align-items:flex-start}.nav-menu{flex-wrap:wrap;justify-content:center;width:100%;gap:.25rem}.nav-menu a{padding:.5rem .35rem}.page-intro{padding:2.5rem 0 2rem}.content{padding:0 1rem}.project-item summary{padding:1rem .6rem;gap:1rem;font-size:1rem}.project-content{padding:1rem .6rem 1.3rem}.contact-panel{flex-direction:column;align-items:flex-start;gap:1.2rem}}

@media(max-width:380px){.nav-menu{font-size:.9rem;gap:0}.nav-menu a{padding:.5rem .3rem}}
