.site-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px;padding-block:24px}.brand{display:flex;flex-direction:column;align-items:flex-start;gap:5px;min-height:44px}.brand img{width:116px;height:25px}.brand span{font-size:14px;line-height:20px;color:var(--muted)}.main-nav{display:flex;gap:32px;align-items:center}.main-nav a,.site-footer nav a{min-height:44px;display:inline-flex;align-items:center}.main-nav [aria-current]{font-weight:600}.menu-toggle{display:flex;align-items:center;gap:12px;border:0;padding-inline:0;min-width:100px}.menu-lines{display:block;position:relative;width:28px;height:18px}.menu-lines::before,.menu-lines::after{content:"";position:absolute;left:0;right:0;height:2px;background:currentColor;top:3px;transition:transform 200ms var(--ease),top 200ms var(--ease)}.menu-lines::after{top:13px}.menu-toggle[aria-expanded=true] .menu-lines::before{top:8px;transform:rotate(45deg)}.menu-toggle[aria-expanded=true] .menu-lines::after{top:8px;transform:rotate(-45deg)}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:24px;border-top:1px solid var(--line);margin-top:24px}.site-footer nav{display:flex;gap:32px}.site-footer small{font-size:14px}.intro{padding-block:24px 32px}.intro h1{margin-bottom:16px}.intro-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px}.intro-bottom p{font-size:clamp(20px,2.2vw,28px);line-height:1.25;letter-spacing:-.02em}.contact-band{padding-block:32px;margin-top:48px}.contact-band>.wrap{display:flex;align-items:center;justify-content:space-between;gap:32px}.contact-band h2{max-width:20ch}.tag{display:inline-block;background:var(--green);color:var(--calce);font-size:14px;font-weight:500;line-height:20px;letter-spacing:.06em;text-transform:uppercase;padding:12px 24px}.study-media{position:relative;overflow:hidden}.study-media .tag{position:absolute;inset:0 auto auto 0}.study-card .photo{height:100%}.study-link{display:block}.study-link:focus-visible{outline-offset:6px}.card-caption{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:12px 0}.card-caption h2{font-size:clamp(24px,2.1vw,30px);line-height:1.15}.card-caption span{display:inline-flex;gap:16px;align-items:center;font-size:16px;min-height:44px;flex:none}.study-link:hover h2,.study-link:hover h3{text-decoration:none;}.categories{display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:32px}.categories a{min-height:44px;display:flex;align-items:center;font-size:22px}.categories a:not(:last-child)::after{content:"/";margin-left:24px}.other-works{padding-block:24px}
@media(max-width:1023px){.site-header{padding-block:20px}.main-nav{gap:24px}.nav-enhanced .main-nav{display:grid;grid-template-rows:0fr;width:100%;overflow:hidden;visibility:hidden;transition:grid-template-rows 160ms var(--ease),visibility 160ms}.nav-enhanced .nav-inner{min-height:0;overflow:hidden;display:flex;flex-direction:column}.nav-enhanced .main-nav.is-open{grid-template-rows:1fr;visibility:visible;transition-duration:200ms}.nav-enhanced .main-nav a{font-size:24px;border-bottom:1px solid var(--line);padding-block:8px}.nav-enhanced .site-header{row-gap:0}.nav-enhanced .menu-toggle{margin-bottom:0}.intro-bottom{align-items:flex-start;flex-direction:column}.card-caption{flex-direction:column;gap:0}.site-footer{flex-wrap:wrap}.contact-band>.wrap{align-items:flex-start}.site-footer small{width:100%}}
@media(max-width:639px){.site-header{gap:16px}.intro{padding-top:24px}.intro-bottom .button{min-width:200px}.contact-band>.wrap{display:block}.contact-band h2{margin-bottom:24px}.contact-band .button{width:100%}.site-footer{align-items:flex-start;gap:24px}.site-footer nav{display:flex;flex-direction:column;gap:0}.site-footer small{width:100%}.main-nav:not(.nav-enhanced .main-nav){width:100%;gap:20px}.categories{gap:4px 12px}.categories a{font-size:16px}.categories a:not(:last-child)::after{margin-left:12px}.tag{padding:10px 16px}.nojs-views{grid-template-columns:1fr}.intro h1{max-width:100%}}
@view-transition{navigation:auto}
.nav-inner{display:flex;gap:32px;align-items:center}
.detail-intro .tag{display:table}
@media(max-width:1023px){.nav-enhanced .nav-inner{gap:0;align-items:stretch}}
::view-transition-old(root),::view-transition-new(root){animation:none}
::view-transition-group(*){animation-duration:var(--vt-duration);animation-timing-function:var(--ease)}
