/* Navegação das cinco páginas ativas. A identidade permanece entre documentos. */
html[data-site-navigation]{--nav-h:72px;--route-duration:560ms;--route-ease:cubic-bezier(.22,1,.32,1)}
html[data-site-navigation] .skip-link{z-index:240}
html[data-site-navigation] #topnav{
  position:fixed;inset:0 0 auto;z-index:220;isolation:isolate;
  display:flex;align-items:center;justify-content:flex-start;flex-wrap:nowrap;
  height:var(--nav-h);min-height:var(--nav-h);gap:clamp(8px,1.2vw,16px);padding:0 32px;
  --nav-background:var(--navy);
  background:var(--nav-background);border:0;border-bottom:1px solid var(--color-border);
  backdrop-filter:none;pointer-events:auto;font-family:var(--synapsis);
  view-transition-name:da-navigation;
}
@supports ((backdrop-filter:blur(12px)) or (-webkit-backdrop-filter:blur(12px))){
  html[data-site-navigation].nav-scrolled #topnav{
    --nav-background:color-mix(in srgb,var(--navy) 82%,transparent);
    -webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);
  }
}
html[data-site-navigation] #topnav::after{display:none}
#topnav .tn-brand{display:inline-flex;align-items:center;gap:16px;min-width:0;white-space:nowrap;font-weight:600;font-size:12px;letter-spacing:.047em;color:var(--color-text);text-decoration:none}
#topnav .tn-mark{display:block;flex:none;width:48px;height:48px}
#topnav .tn-mark svg{display:block;width:100%;height:100%}
#topnav .tn-wordmark{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis}
#topnav .da-palette-reserve{display:block;flex:none;width:48px;height:32px}
#topnav .da-palette-switch + .da-palette-reserve{display:none}
#topnav .da-palette-switch{position:relative;flex:none;height:32px;display:inline-flex;align-items:center;border:1px solid var(--color-control-border);background:var(--color-canvas)}
#topnav .da-palette-toggle{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:4px;height:100%;padding:0 8px;border:0;background:transparent;cursor:pointer;transition:transform .22s ease}
#topnav .da-palette-toggle:hover{transform:rotate(180deg)}
#topnav .da-dot{display:block;border-radius:50%}
#topnav .da-dot--lg{width:16px;height:16px;background:var(--orange)}
#topnav .da-dot--sm{width:8px;height:8px;background:var(--navy)}
html[data-da-palette="graphite-amber"] #topnav .da-dot--lg{background:var(--navy)}
html[data-da-palette="graphite-amber"] #topnav .da-dot--sm{background:var(--orange)}
html[data-site-navigation] #topnav .tn-links{position:static;display:flex;gap:clamp(16px,2.2vw,32px);list-style:none;padding:0;margin:0 0 0 auto;max-width:none;opacity:1;visibility:visible;pointer-events:auto;transform:none;overflow:visible;box-shadow:none;border:0;background:none}
#topnav .tn-links a{position:relative;display:flex;align-items:center;min-height:44px;padding:0;border:0;border-bottom:2px solid transparent;font-family:var(--synapsis);font-weight:600;font-size:15px;letter-spacing:.03em;white-space:nowrap;color:var(--color-text);opacity:1;transition:color .18s ease,border-color .18s ease}
#topnav .tn-links a::before,#topnav .tn-links a::after{display:none}
#topnav .tn-links a:hover{color:var(--color-display);background:none}
#topnav .tn-links a[aria-current="page"]{color:var(--color-display);border-bottom-color:currentColor}
#topnav .tn-menu{display:none;align-items:center;justify-content:center;gap:10px;flex:none;min-height:44px;padding:0 16px;font-family:var(--synapsis);font-size:13px;font-weight:600;letter-spacing:.03em;color:var(--color-text);border:1px solid var(--color-control-border);background:none;cursor:pointer}
#topnav .tn-menu-bars{position:relative;display:block;width:16px;height:10px}
#topnav .tn-menu-bars i{position:absolute;left:0;width:16px;height:1.5px;background:currentColor;transition:transform .18s ease,top .18s ease}
#topnav .tn-menu-bars i:first-child{top:1px}
#topnav .tn-menu-bars i:last-child{top:8px}
#topnav.is-open .tn-menu-bars i:first-child{top:4px;transform:rotate(34deg)}
#topnav.is-open .tn-menu-bars i:last-child{top:4px;transform:rotate(-34deg)}
#topnav a:focus-visible,#topnav button:focus-visible{outline:2px solid var(--color-focus);outline-offset:4px}
.pl-route-rule{position:absolute;left:0;right:0;top:-1px;height:1px;pointer-events:none;background:color-mix(in srgb,var(--fg) 20%,transparent)}
.da-route-formed,.da-route-formed > *{opacity:1!important;transform:none!important;clip-path:none!important;transition:none!important;animation:none!important}

@media(max-width:1100px){
  #topnav .tn-wordmark{max-width:190px}
  html[data-site-navigation] #topnav .tn-links{gap:16px}
}
@media(max-width:1000px){
  html[data-site-navigation] #topnav{padding:0 16px;gap:16px}
  #topnav .tn-brand{flex:1 1 auto;max-width:calc(100% - 192px);gap:12px}
  #topnav .tn-mark{width:40px;height:40px}
  #topnav .tn-wordmark{max-width:none}
  #topnav .tn-brand{min-height:44px}
  #topnav .da-palette-switch{height:46px}
  #topnav .da-palette-reserve{height:46px}
  #topnav .da-palette-toggle{min-width:44px}
  #topnav .da-palette-toggle:hover{transform:none}
  html.site-nav-js #topnav .tn-menu{display:inline-flex}
  html.site-nav-js[data-site-navigation] #topnav .tn-links{
    position:absolute;inset:calc(var(--nav-h) - 1px) 0 auto;display:grid;gap:0;margin:0;padding:8px 16px;
    max-height:calc(100dvh - var(--nav-h));overflow-y:auto;background:var(--navy);
    border-bottom:1px solid var(--color-border);opacity:0;visibility:hidden;pointer-events:none;
    transform:translateY(-6px);transition:opacity .18s ease,transform .18s ease,visibility .18s ease;
  }
  html.site-nav-js[data-site-navigation] #topnav.is-open .tn-links{opacity:1;visibility:visible;pointer-events:auto;transform:none}
  html[data-site-navigation] #topnav .tn-links a{display:flex;justify-content:space-between;min-height:52px;padding:0 4px;font-size:17px;border:0;border-bottom:1px solid var(--color-border);letter-spacing:.025em}
  #topnav .tn-links li:last-child a{border-bottom:0}
  #topnav .tn-links a[aria-current="page"]::after{display:block;content:'•';font-size:16px}
  html:not(.site-nav-js)[data-site-navigation]{--nav-h:164px}
  html:not(.site-nav-js)[data-site-navigation] #topnav{flex-wrap:wrap;height:auto;min-height:var(--nav-h);padding-block:8px}
  html:not(.site-nav-js)[data-site-navigation] #topnav .tn-links{width:100%;display:grid;grid-template-columns:repeat(3,1fr);gap:0}
  html:not(.site-nav-js)[data-site-navigation] #topnav .tn-links a{font-size:13px;min-height:38px}
}

@media(max-width:760px){
  #topnav .tn-description{display:none}
}
@media(max-width:360px){
  #topnav .tn-wordmark{display:none}
}

/* Troca de campo original para os links entre páginas e fallback das formas. */
.da-route-field{position:fixed;inset:0;z-index:9999;pointer-events:none;overflow:hidden;contain:layout paint;--ox:50vw;--oy:50vh}
.da-route-origin{position:absolute;left:var(--ox);top:var(--oy);z-index:4;width:10px;height:10px;border-radius:50%;background:var(--orange);transform:translate(-50%,-50%) scale(0)}
.da-route-grid{position:absolute;inset:0;display:grid;grid-template-rows:repeat(5,1fr)}
.da-route-cell{position:relative;background:var(--navy-deep);border-bottom:1px solid color-mix(in srgb,var(--amber-light) 22%,transparent);transform-origin:center;will-change:transform}
.da-route-cell:last-child{border-bottom:0}
.da-route-cell::before{content:attr(data-n);position:absolute;left:clamp(18px,4.8vw,72px);top:50%;transform:translateY(-50%);font-family:var(--synapsis);font-size:12px;font-weight:600;letter-spacing:.08em;color:var(--orange)}
.da-route-cell::after{content:'';position:absolute;left:clamp(76px,27vw,430px);right:clamp(18px,4.8vw,72px);top:50%;height:1px;background:color-mix(in srgb,var(--amber-light) 24%,transparent)}
.da-route-field.is-leaving .da-route-origin{animation:da-route-origin .42s cubic-bezier(.16,1,.3,1) both}
.da-route-field.is-leaving .da-route-cell{animation:da-route-close .44s var(--route-ease) both;animation-delay:var(--field-delay)}
.da-route-field.is-entering .da-route-cell{animation:da-route-open .52s var(--route-ease) both;animation-delay:calc(var(--field-delay) + .02s)}
.da-route-cell:nth-child(1){--field-delay:0s}
.da-route-cell:nth-child(2){--field-delay:.05s}
.da-route-cell:nth-child(3){--field-delay:.1s}
.da-route-cell:nth-child(4){--field-delay:.15s}
.da-route-cell:nth-child(5){--field-delay:.2s}
@keyframes da-route-origin{0%{opacity:0;transform:translate(-50%,-50%) scale(.55)}35%{opacity:1;transform:translate(-50%,-50%) scale(1);box-shadow:0 0 0 8px color-mix(in srgb,var(--orange) 18%,transparent)}100%{opacity:0;transform:translate(-50%,-50%) scale(1.8);box-shadow:0 0 0 18px transparent}}
@keyframes da-route-close{from{transform:scaleY(0)}to{transform:scaleY(1)}}
@keyframes da-route-open{from{transform:scaleY(1)}to{transform:scaleY(0)}}
@media(max-width:760px){.da-route-cell::before{left:18px}.da-route-cell::after{left:64px;right:18px}}

/* Cross-document View Transitions para as formas do portal e as obras.
   https://developer.chrome.com/docs/web-platform/view-transitions/cross-document */
@view-transition{navigation:auto}
::view-transition-group(*){animation-duration:var(--route-duration);animation-timing-function:var(--route-ease)}
::view-transition-old(root){animation:da-route-out 160ms ease both}
::view-transition-new(root){animation:da-route-in 300ms ease both}
::view-transition-group(da-navigation){z-index:5;animation-duration:0s}
::view-transition-old(da-navigation){animation:none;opacity:0}
::view-transition-new(da-navigation){animation:none}
::view-transition-group(da-destination){z-index:3}
::view-transition-image-pair(da-destination){isolation:isolate;overflow:hidden;animation:da-route-shape var(--route-duration) var(--route-ease) both}
::view-transition-old(da-destination),::view-transition-new(da-destination){height:100%;width:100%;object-fit:fill;mix-blend-mode:normal}
::view-transition-old(da-destination){animation:da-route-out 260ms ease both}
::view-transition-new(da-destination){animation:da-route-in 400ms ease both}
::view-transition-group(da-route-rule){z-index:4}
::view-transition-old(da-route-rule),::view-transition-new(da-route-rule){height:1px;min-height:1px}
@keyframes da-route-out{to{opacity:0}}
@keyframes da-route-in{from{opacity:0}to{opacity:1}}
@keyframes da-route-shape{from{border-radius:var(--route-radius-from,0)}to{border-radius:var(--route-radius-to,0)}}
@media(prefers-reduced-motion:reduce){
  @view-transition{navigation:none}
  .da-route-field{display:none!important}
  html[data-site-navigation] #topnav *{transition:none!important}
}
