@view-transition{navigation:auto}
::view-transition-old(root){animation:page-out .18s ease both}
::view-transition-new(root){animation:page-in .35s ease both}
@keyframes page-out{to{opacity:0;transform:translateY(-8px)}}
@keyframes page-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
html{scroll-padding-top:125px}header{position:sticky;top:0;transition:box-shadow .25s;background:rgba(246,244,237,.97);backdrop-filter:blur(14px)}header.scrolled{box-shadow:0 6px 28px #142a3510}.reading-progress{position:fixed;inset:0 0 auto;height:3px;background:var(--red);transform:scaleX(0);transform-origin:left;z-index:40;pointer-events:none}.back-top{position:fixed;bottom:25px;right:25px;width:44px;height:44px;border:1px solid #d7dcd4;background:var(--paper);color:var(--ink);z-index:15;opacity:0;visibility:hidden;transform:translateY(10px);transition:.25s}.back-top.shown{opacity:1;visibility:visible;transform:none}.field textarea,.status textarea{width:100%;background:transparent;border:1px solid #b0bbae;padding:12px;font:inherit;color:var(--ink);resize:vertical}.copy-enquiry{margin-top:15px}.copy-enquiry[hidden]{display:none}.filter-status{margin-bottom:30px}nav a:hover{color:var(--red)}.card{transition:transform .25s}.card:hover{transform:translateY(-4px)}.hero .visual svg{animation:architecture-in 1.6s ease both}@keyframes architecture-in{from{transform:scale(1.04)}to{transform:scale(1)}}@media(max-width:760px){html{scroll-padding-top:95px}header{gap:12px}.brand{min-width:0;flex:1;max-width:215px}.lang{white-space:nowrap;flex-shrink:0;font-size:10px;padding:7px}.menu{width:30px;flex-shrink:0}.hero-actions{flex-wrap:wrap}.hero-actions .btn{max-width:100%;gap:15px}.back-top{bottom:18px;right:18px}nav.open{box-shadow:0 15px 25px #142a3510}nav.open a{width:100%;padding:9px 0}.modal-content{padding:28px}.visual{min-height:360px}}
