/* mcarva shared project shell */
.project-shell-skip{position:fixed;z-index:10050;left:16px;top:16px;transform:translateY(-180%);background:#fff;color:#171713;padding:10px 14px;border-radius:2px;font:600 11px/1.2 "Manrope","Segoe UI",sans-serif;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;transition:transform .2s ease}
.project-shell-skip:focus{transform:none;outline:2px solid currentColor;outline-offset:3px}

.topbar-inner{position:relative!important}
.project-shell-center{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  max-width:34vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  font:500 9px/1.2 "Manrope","Avenir Next","Segoe UI",sans-serif;
  letter-spacing:.18em;text-transform:uppercase;opacity:.62;pointer-events:none
}
.project-shell-tools{
  position:relative;z-index:8;
  display:flex;align-items:center;justify-content:flex-end;
  gap:clamp(12px,1.5vw,23px);margin-left:auto;
  pointer-events:auto!important;
}
.project-shell-back,.project-shell-lang,.project-shell-lang button,.project-shell-tools .menu-button{
  pointer-events:auto!important;
}
.project-shell-back,.project-shell-lang button{
  position:relative;border:0;background:none;color:inherit;text-decoration:none;cursor:pointer;
  touch-action:manipulation;-webkit-tap-highlight-color:transparent;
  min-width:40px;min-height:40px;padding:12px 6px;font:500 9px/1 "Manrope","Avenir Next","Segoe UI",sans-serif;display:inline-flex;align-items:center;justify-content:center;
  letter-spacing:.17em;text-transform:uppercase;opacity:.62;transition:opacity .22s ease
}
.project-shell-back:hover,.project-shell-back:focus-visible,.project-shell-lang button:hover,.project-shell-lang button:focus-visible{opacity:1;outline:none}
.project-shell-back::after,.project-shell-lang button.is-active::after{content:"";position:absolute;left:0;right:0;bottom:3px;height:1px;background:currentColor;opacity:.55}
.project-shell-lang{display:flex;align-items:center;gap:9px}
.project-shell-lang button+button::before{content:"/";position:absolute;left:-7px;opacity:.28}
.project-shell-lang button{opacity:.34}
.project-shell-lang button.is-active{opacity:.92}
.project-shell-tools .menu-button{margin-left:1px}

/* The original project headers intentionally disable pointer events on the
   full bar. Re-enable them only on the shared navigation cluster. */
.topbar .project-shell-tools,
.topbar .project-shell-tools *{pointer-events:auto}
.project-shell-tools .menu-button{position:relative;z-index:2;touch-action:manipulation}
.project-shell-back:focus-visible,
.project-shell-lang button:focus-visible,
.project-shell-tools .menu-button:focus-visible{
  outline:1px solid currentColor;outline-offset:5px
}

.loader-enter[hidden]{display:none!important}
/* Header navigation return control. */
.portfolio-return{display:none!important}
@media(max-width:760px){
  .project-shell-center,.top-center{display:none!important}
  .project-shell-tools{gap:11px}
  .project-shell-back{font-size:8px;letter-spacing:.13em;min-width:40px;min-height:40px}
  .project-shell-lang button{font-size:8px;letter-spacing:.11em;min-width:40px;min-height:40px}
  .project-shell-tools .menu-button{gap:8px}
}
@media(max-width:460px){
  .project-shell-back{font-size:0}
  .project-shell-back::before{content:"←";font-size:13px;line-height:1}
  .project-shell-back::after{display:none}
  .project-shell-tools{gap:10px}
}


.project-shell-tools{min-width:0}
.project-shell-back,.project-shell-lang button{white-space:nowrap}
@media(max-width:420px){
  .project-shell-tools{gap:10px}
  .project-shell-back,.project-shell-lang button{font-size:8px;letter-spacing:.14em;padding-left:4px;padding-right:4px;min-width:34px}
}

/* =========================================================
   V71 — Unified project header
   Stable logo/nav language across all project pages.
   ========================================================= */
:root{--project-header-h:84px;--project-header-pad:clamp(24px,4vw,72px)}
.topbar{
  position:fixed!important;
  z-index:1200!important;
  top:0!important;left:0!important;right:0!important;bottom:auto!important;
  width:100%!important;height:var(--project-header-h)!important;
  padding:0!important;margin:0!important;transform:none!important;
  color:#fffdf8!important;pointer-events:none!important;
  background:linear-gradient(180deg,rgba(20,18,16,.42),rgba(20,18,16,.22) 70%,rgba(20,18,16,0))!important;
  -webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important;
  transition:color .32s ease,background .32s ease,backdrop-filter .32s ease!important;
}
.topbar::after{
  content:""!important;position:absolute!important;
  left:var(--project-header-pad)!important;right:var(--project-header-pad)!important;bottom:0!important;
  height:1px!important;background:currentColor!important;opacity:.16!important;
}
.topbar-inner{
  position:relative!important;z-index:2!important;
  width:100%!important;max-width:none!important;height:100%!important;margin:0!important;
  padding:0 var(--project-header-pad)!important;
  display:flex!important;align-items:center!important;justify-content:space-between!important;gap:24px!important;
  color:inherit!important;mix-blend-mode:normal!important;
}
.brand{
  position:relative!important;z-index:8!important;
  flex:0 0 auto!important;display:inline-flex!important;align-items:center!important;justify-content:flex-start!important;
  width:clamp(92px,7vw,116px)!important;height:auto!important;min-height:40px!important;
  pointer-events:auto!important;text-decoration:none!important;
}
.brand-logo,.brand img.brand-logo,.brand img.brand-white,.brand img.brand-red{
  position:static!important;display:block!important;width:100%!important;max-width:100%!important;height:auto!important;
  transform:none!important;opacity:1!important;filter:none!important;transition:filter .28s ease,opacity .28s ease!important;
}
.brand img.brand-red{display:none!important}
.project-shell-center,.top-center{
  position:absolute!important;left:50%!important;top:50%!important;transform:translate(-50%,-50%)!important;
  max-width:38vw!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;
  font:600 9px/1.2 "Manrope","Avenir Next","Segoe UI",sans-serif!important;
  letter-spacing:.2em!important;text-transform:uppercase!important;opacity:.66!important;pointer-events:none!important;
}
.top-center{display:none!important}
.project-shell-tools{
  position:relative!important;z-index:8!important;flex:0 0 auto!important;margin-left:auto!important;
  display:flex!important;align-items:center!important;justify-content:flex-end!important;
  gap:clamp(12px,1.5vw,23px)!important;min-width:0!important;pointer-events:auto!important;
}
.project-shell-back,.project-shell-lang button,.project-shell-tools .menu-button{
  position:relative!important;border:0!important;background:transparent!important;color:inherit!important;text-decoration:none!important;
  min-width:40px!important;min-height:40px!important;padding:12px 6px!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  font:600 9px/1 "Manrope","Avenir Next","Segoe UI",sans-serif!important;
  letter-spacing:.17em!important;text-transform:uppercase!important;opacity:.68!important;cursor:pointer!important;
  touch-action:manipulation!important;-webkit-tap-highlight-color:transparent!important;
}
.project-shell-back:hover,.project-shell-back:focus-visible,.project-shell-lang button:hover,.project-shell-lang button:focus-visible,.project-shell-tools .menu-button:hover,.project-shell-tools .menu-button:focus-visible{opacity:1!important;outline:none!important}
.project-shell-back::after,.project-shell-lang button.is-active::after{
  content:""!important;position:absolute!important;left:0!important;right:0!important;bottom:3px!important;height:1px!important;background:currentColor!important;opacity:.55!important;
}
.project-shell-lang{display:flex!important;align-items:center!important;gap:9px!important}
.project-shell-lang button{opacity:.34!important}
.project-shell-lang button.is-active{opacity:.92!important}
.project-shell-lang button+button::before{content:"/"!important;position:absolute!important;left:-7px!important;opacity:.28!important}
.project-shell-tools .menu-button{gap:12px!important;margin-left:1px!important}
.menu-icon{position:relative!important;display:inline-block!important;width:28px!important;height:12px!important;flex:0 0 auto!important}
.menu-icon::before,.menu-icon::after{content:""!important;position:absolute!important;left:0!important;width:100%!important;height:1px!important;background:currentColor!important;transition:transform .35s cubic-bezier(.2,.72,.2,1),top .35s cubic-bezier(.2,.72,.2,1)!important}
.menu-icon::before{top:1px!important}.menu-icon::after{top:10px!important}
body.menu-open .menu-icon::before{top:5px!important;transform:rotate(45deg)!important}
body.menu-open .menu-icon::after{top:5px!important;transform:rotate(-45deg)!important}
body.theme-light:not(.menu-open):not(.lightbox-open) .topbar,
body.header-light:not(.menu-open):not(.lightbox-open) .topbar{
  color:#181410!important;
  background:linear-gradient(180deg,rgba(245,242,236,.78),rgba(245,242,236,.54) 72%,rgba(245,242,236,0))!important;
}
body.theme-light:not(.menu-open):not(.lightbox-open) .brand-logo,
body.header-light:not(.menu-open):not(.lightbox-open) .brand-logo{filter:brightness(0) saturate(100%)!important;opacity:.88!important}
body.menu-open .topbar,body.lightbox-open .topbar{
  color:#fffdf8!important;background:linear-gradient(180deg,rgba(20,18,16,.70),rgba(20,18,16,.36) 72%,rgba(20,18,16,0))!important;
}
body.menu-open .brand-logo,body.lightbox-open .brand-logo{filter:none!important;opacity:1!important}

@media(max-width:760px){
  :root{--project-header-h:70px;--project-header-pad:clamp(20px,6vw,32px)}
  .project-shell-center,.top-center{display:none!important}
  .brand{width:96px!important;min-height:36px!important}
  .project-shell-tools{gap:10px!important}
  .project-shell-back{font-size:0!important;letter-spacing:0!important;min-width:34px!important;padding-left:4px!important;padding-right:4px!important}
  .project-shell-back::before{content:"←"!important;font-size:13px!important;line-height:1!important;letter-spacing:0!important}
  .project-shell-back::after{display:none!important}
  .project-shell-lang button{font-size:8px!important;letter-spacing:.12em!important;min-width:32px!important;padding-left:3px!important;padding-right:3px!important}
  .project-shell-tools .menu-button{font-size:8px!important;letter-spacing:.12em!important;gap:8px!important;padding-left:3px!important;padding-right:0!important}
  .menu-icon{width:24px!important;height:11px!important}
}
@media(max-width:420px){
  :root{--project-header-pad:18px}
  .brand{width:88px!important}
  .project-shell-tools{gap:7px!important}
  .project-shell-lang button{min-width:29px!important}
  .project-shell-tools .menu-button span:first-child{font-size:0!important}
  .project-shell-tools .menu-button span:first-child::before{content:"☰"!important;font-size:12px!important;line-height:1!important;letter-spacing:0!important}
}

