
.ttl{width:fit-content;margin-inline:auto;text-align:center}
.ttl::after{content:"";display:block;width:var(--st-w,100%);height:max(10px,.2em);margin:.3em auto 0;background:var(--shu);opacity:1;
  -webkit-mask:url(/assets/img/stroke-title.svg) center/100% 100% no-repeat;mask:url(/assets/img/stroke-title.svg) center/100% 100% no-repeat}
.svc .ttl::after{background:var(--tinta)}
.ttl-svc-papel .svc .ttl::after{background:var(--papel)}
.titles-right .ttl{margin-inline:auto 0;text-align:right}
.titles-right .ttl::after{margin-inline:auto 0}
@media (forced-colors:active){.ttl::after,.svc .ttl::after,.ttl-svc-papel .svc .ttl::after{-webkit-mask:none;mask:none;background:CanvasText;height:2px}}
:root{--hdr-h:calc(var(--hdr-pt) + 56px)}
.site{position:relative;flex-wrap:nowrap;min-height:var(--hdr-h);padding-block:var(--hdr-pt) 0}
.site.over{position:absolute;inset:0 0 auto;background:none}
.site .nv{position:absolute;top:var(--hdr-pt);right:var(--margem);z-index:20;display:block}
.site .nv ul{list-style:none;margin:0;padding:0}
.nv-col,.site .nv .nv-lang{display:none}
.nv-col{flex-direction:column;--nb-w:192;--nb-h:188;--nb-cw:48;--nb-ch:60;--nb-s:.3;--nb-cr:14;--nb-t:180ms;--nb-e:cubic-bezier(.2,.7,.3,1)}
html[lang="pt-PT"] .nv-col{--nb-w:220}
.site .nv .nv-col{position:fixed;top:calc(var(--hdr-pt) + 44px + var(--sp-2));right:var(--margem);z-index:20;width:calc(var(--nb-w) * 1px);padding:6px 12px;
  color:var(--tinta);pointer-events:none}
.nv-col li:nth-child(2){--i:1}.nv-col li:nth-child(3){--i:2}.nv-col li:nth-child(4){--i:3}
.nv-col::before,.nv-col::after{content:"";position:absolute;top:0;right:0;z-index:-2}
.nv-col::before{width:100%;height:100%;transform-origin:100% 0;transform:scale(calc(var(--nb-cw) / var(--nb-w)),calc(var(--nb-ch) / var(--nb-h)));transition:transform var(--nb-t) var(--nb-e)}
.nv-col::after{z-index:-1;width:calc(var(--nb-cw) * 1px);height:calc(var(--nb-ch) * 1px);pointer-events:auto;transition:opacity 60ms linear var(--nb-t)}
.site .nv .ns-a{position:relative;display:flex;align-items:center;justify-content:flex-end;gap:30px;min-width:64px;min-height:44px;padding:0;color:inherit;text-decoration:none;
  pointer-events:none}
.ns-s{display:block;flex:none;width:44px;height:16px;background:currentColor;opacity:.78;scale:1;translate:none;transform-origin:100% 50%;
  transition:scale var(--nb-t,var(--dur-hover)) var(--nb-e,ease-out),translate var(--nb-t,0s) var(--nb-e,ease-out),opacity var(--dur-hover) ease-out;
  -webkit-mask:var(--ns-m) center/100% 100% no-repeat;mask:var(--ns-m) center/100% 100% no-repeat}
.ns-work{--ns-m:url(/assets/img/stroke-nav-work.svg)}
.ns-about{--ns-m:url(/assets/img/stroke-nav-about.svg)}
.ns-founder{--ns-m:url(/assets/img/stroke-nav-founder.svg)}
.ns-contact{--ns-m:url(/assets/img/stroke-nav-contact.svg)}
.ns-w{display:block;color:inherit;white-space:nowrap;font:var(--w-mono) var(--t-small)/1.2 var(--mono);letter-spacing:var(--ls-mono);opacity:0;
  text-underline-offset:3px;transition:opacity 90ms ease-out}
.nv-col:is(.op,:not(.tn):hover,:not(.tn):focus-within){pointer-events:auto}
.nv-col:is(.op,:not(.tn):hover,:not(.tn):focus-within)::before{transform:none}
.nv-col:is(.op,:not(.tn):hover,:not(.tn):focus-within)::after{opacity:0;transition:opacity 60ms linear}
.nv-col:is(.op,:not(.tn):hover,:not(.tn):focus-within) .ns-a{pointer-events:auto}
.nv-col:is(.op,:not(.tn):hover,:not(.tn):focus-within) .ns-w{opacity:1;transition:opacity 120ms ease-out 60ms}
.site .nv .ns-a:hover,.site .nv .ns-a:focus-visible,.site .nv .ns-a[aria-current]{text-decoration:none}
.ns-a:hover .ns-s,.ns-a:focus-visible .ns-s{scale:1.2 1.15;opacity:1}
.ns-a:hover .ns-w,.ns-a:focus-visible .ns-w{text-decoration:underline}
.ns-a[aria-current] .ns-s{scale:1.55 1.6;opacity:1}
.ns-a[aria-current] .ns-w{font-weight:600}
.nv-col:not(.op):is(.tn,:not(:hover,:focus-within)) .ns-s{opacity:1;scale:calc(var(--nb-s) * 1.3) calc(var(--nb-s) * 2.2);
  translate:calc((12 - var(--nb-cr)) * 1px) calc((var(--nb-ch) / 2 + (var(--i,0) - 1.5) * 44 * var(--nb-s) - 28 - 44 * var(--i,0)) * 1px)}
.nv-col:not(.op):is(.tn,:not(:hover,:focus-within)) [aria-current] .ns-s{scale:calc(var(--nb-s) * 1.8) calc(var(--nb-s) * 2.8)}
.site .nv .nv-col.dk{color:var(--papel);--halo:var(--pad,var(--tinta))}
.nv-col{--halo:var(--pad,var(--papel))}
.nv-col:is(.op,:not(.tn):hover,:not(.tn):focus-within) .ns-a{filter:drop-shadow(1px 0 0 var(--halo)) drop-shadow(-1px 0 0 var(--halo)) drop-shadow(0 1px 0 var(--halo)) drop-shadow(0 -1px 0 var(--halo));
  
  background:var(--pad,transparent)}
.site .nv .nv-col .ns-a:focus-visible{outline:3px solid currentColor;outline-offset:2px}
.site .nv .nv-col.x .ns-a:focus-visible{outline-color:transparent}
.nv-col.x:focus-within::after{outline:3px solid currentColor;outline-offset:2px}
.site .nv .nv-lang{justify-content:flex-end;align-items:center;min-width:64px;min-height:44px;margin-top:0;padding:0;font-size:var(--t-small);text-decoration:none}
.site .nv .nv-lang:hover{text-decoration:underline}
@media (hover:hover) and (pointer:fine) and (min-width:1024px){.nv-col,.site .nv .nv-lang{display:flex}.nv-m{display:none}}
.nv-m summary{display:flex;align-items:center;gap:var(--sp-2);min-height:44px;min-width:44px;padding:0 var(--sp-2);cursor:pointer;list-style:none;font-size:var(--t-small);color:var(--tinta)}
.nv-m summary::-webkit-details-marker{display:none}
.nv-mi{display:block;width:22px;height:14px;background:currentColor;-webkit-mask:url(/assets/img/stroke-nav-work.svg) 0 0/22px 4px repeat-y;mask:url(/assets/img/stroke-nav-work.svg) 0 0/22px 4px repeat-y}
.nv-m[open] summary{text-decoration:underline;text-underline-offset:3px}
.nv-mp{position:absolute;top:calc(100% + var(--sp-1));right:0;min-width:13rem;padding:var(--sp-2) var(--sp-3);background:var(--papel);border:1px solid var(--linha);box-shadow:0 6px 24px color-mix(in srgb,var(--tinta) 8%,transparent)}
.site .nv-m .nm-a{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);min-height:48px;padding:0;color:var(--tinta);font-size:var(--t-body);text-decoration:none}
.site .nv-m .nm-a:hover{text-decoration:underline}
.nm-a .ns-s{width:40px;height:14px}
.nm-a[aria-current]{font-weight:600}
.nm-a[aria-current] .ns-s{scale:1.4 1.5;opacity:1}
.site .nv-m .lang{display:flex;align-items:center;justify-content:flex-start;min-height:48px;margin-top:var(--sp-1);padding:0;border-top:1px solid var(--linha);font-size:var(--t-small)}
@media (pointer:coarse){.site .nv .ns-a,.site .nv .nv-lang{min-width:48px;min-height:48px}}
@media (prefers-reduced-motion:reduce){.ns-s,.ns-w,.ns-a,.nv-col::before,.nv-col::after{transition:none!important}}
@media (forced-colors:active){.ns-s,.nv-mi{forced-color-adjust:none;background:CanvasText}.nv-col .ns-a{filter:none!important}}
