/* Shared navigation approved from the video home, PT and EN. */
.site-navigation-page .ht-header { position:fixed; inset:0 0 auto; z-index:80; display:grid; grid-template-columns:auto minmax(0,1fr); gap:24px; align-items:center; min-height:80px; padding:16px calc(var(--editorial-edge) + (100% - 100vw) / 2); color:var(--carbon); background:transparent; transition:background-color .45s,color .45s; }
.site-navigation-page .ht-header.is-scrolled { background:var(--carbon); color:var(--cream); }
.site-navigation-page .ht-header a,.site-navigation-page .ht-header button { color:inherit; font:500 13px/1.4 var(--ff-body); text-transform:uppercase; text-decoration:none; letter-spacing:0; padding:12px 0; background:none; border:0; cursor:pointer; }
.site-navigation-page .ht-header-actions { display:flex; align-items:center; justify-self:end; gap:24px; }
.site-navigation-page .ht-header-languages { display:flex; align-items:center; gap:8px; }
.site-navigation-page .ht-header-languages a { font-weight:400; opacity:.6; }
.site-navigation-page .ht-header-languages [aria-current] { opacity:1; text-decoration:underline; text-underline-offset:3px; }
.site-navigation-page .ht-header-languages a:is(:hover,:focus-visible) { opacity:1; }
.site-navigation-page .ht-header .ht-brand { padding:0; }
.site-navigation-page .ht-brand img { display:block; width:100px; height:auto; filter:brightness(0); transition:filter .45s; }
.site-navigation-page .ht-menu-toggle { justify-self:end; }
.site-navigation-page .ht-menu { position:fixed; inset:0; margin:0; padding:8px; width:100%; max-width:none; height:100%; max-height:none; border:0; background:transparent; color:var(--carbon); overflow:hidden; }
.site-navigation-page .ht-menu::backdrop { background:rgb(27 29 31 / .5); transition:background-color .45s cubic-bezier(.22,1,.36,1); }
.site-navigation-page .ht-menu.is-closing::backdrop { background:rgb(27 29 31 / 0); }
.site-navigation-page .ht-menu.is-closing .ht-menu-panel { pointer-events:none; }
.site-navigation-page .ht-menu { cursor:auto; }
.site-navigation-page .ht-menu a { cursor:pointer; }
.site-navigation-page .ht-menu-panel { position:absolute; inset:88px 40px auto; max-height:calc(100svh - 112px); padding:56px 32px 32px; border-radius:12px; background:var(--cream); overflow-y:auto; }
.site-navigation-page .ht-menu .nav-service-panel { position:static; padding:0; max-height:none; overflow:visible; background:transparent; border-radius:0; box-shadow:none; }
.site-navigation-page .ht-menu-links { display:flex; align-items:center; flex-wrap:wrap; gap:24px; margin-top:32px; }
.site-navigation-page .ht-menu-links a:not(.btn) { color:inherit; font:400 13px/1.4 var(--ff-body); text-decoration:none; }
.site-navigation-page .ht-menu-links .btn { --ink:var(--carbon); margin-left:auto; }
.site-navigation-page .ht-menu[open] .ht-menu-panel { animation:ht-menu-open .65s cubic-bezier(.22,1,.36,1); }
.site-navigation-page .ht-menu-close { position:absolute; top:20px; right:24px; display:flex; align-items:center; gap:12px; padding:12px 0; border:0; background:none; color:inherit; font:500 13px/1.4 var(--ff-body); text-transform:uppercase; cursor:pointer; }
.site-navigation-page .ht-menu-close span { font-size:22px; line-height:1; }
.site-navigation-page :is(.ht-header,.ht-menu) :is(a,button):focus-visible { outline:2px solid currentColor; outline-offset:5px; }
.site-navigation-page .ht-menu-links a:not(.btn):hover { text-decoration:underline; text-underline-offset:4px; }
@keyframes ht-menu-open { from { clip-path:inset(0 0 100% 0); } to { clip-path:inset(0); } }
@media (max-width:900px) { .site-navigation-page .ht-header { min-height:72px; padding:14px var(--editorial-edge); gap:12px; } }
@media (max-width:900px) { .site-navigation-page .ht-header-actions { gap:12px; } }
@media (max-width:900px) { .site-navigation-page .ht-brand img { width:88px; } }
@media (max-width:900px) { .site-navigation-page .ht-menu-panel { inset:80px 12px auto; max-height:calc(100svh - 92px); padding:64px 24px 24px; } }
@media (max-width:900px) { .site-navigation-page .ht-menu .nav-service-panel { grid-template-columns:minmax(0,1fr); gap:28px; } }
@media (max-width:900px) { .site-navigation-page .ht-menu-links { gap:20px; } }
@media (max-width:900px) { .site-navigation-page .ht-menu-links .btn { margin-left:0; } }

.site-navigation-page .ht-header.is-on-dark { color:var(--cream); }
.site-navigation-page .ht-header.is-on-dark .ht-brand img { filter:brightness(0) invert(1); }
.home-video-page .ht-header { color:var(--cream); }
.home-video-page .ht-brand img { filter:brightness(0) invert(1); }
@media (min-width:761px) { .site-navigation-page:has(.port-case--bossa) .ht-header { color:var(--cream); } .site-navigation-page:has(.port-case--bossa) .ht-brand img { filter:brightness(0) invert(1); } }
@media (max-width:480px) { .site-navigation-page .ht-menu .nav-project-grid { grid-template-columns:minmax(0,1fr); } }
@media (prefers-reduced-motion:reduce) { .site-navigation-page .ht-header,.site-navigation-page .ht-brand img,.site-navigation-page .ht-menu::backdrop { transition:none; } .site-navigation-page .ht-menu[open] .ht-menu-panel { animation:none; } }
