html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}
.lenis.lenis-stopped{overflow:hidden}

.pmx-grain{position:fixed;inset:0;z-index:90;pointer-events:none;opacity:.22;mix-blend-mode:soft-light;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='150' height='150'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}

.pmx-heroimg{animation:pmxHero 1.7s cubic-bezier(.16,1,.3,1) both}
@keyframes pmxHero{from{transform:scale(1.09)}to{transform:scale(1)}}

[data-pmx-mag]{transition:transform .35s cubic-bezier(.16,1,.3,1);will-change:transform}
#top a[data-i18n="cta_models"],#top a[data-i18n="cta_projecte"],header a[data-i18n="cta_parlemne"]{transition:transform .4s cubic-bezier(.16,1,.3,1),box-shadow .4s cubic-bezier(.16,1,.3,1),border-color .4s ease}

@media(hover:hover){
  [data-r="navlinks"]>a{position:relative}
  [data-r="navlinks"]>a::after{content:"";position:absolute;left:0;right:0;bottom:-5px;height:1.5px;background:currentColor;opacity:.65;transform:scaleX(0);transform-origin:left center;transition:transform .45s cubic-bezier(.16,1,.3,1)}
  [data-r="navlinks"]>a:hover::after{transform:scaleX(1)}
  #obra figure,[data-lb] figure{cursor:zoom-in;overflow:hidden}
  #obra figure img,[data-lb] figure img{transition:transform 1.1s cubic-bezier(.16,1,.3,1)}
  #obra figure:hover img,[data-lb] figure:hover img{transform:scale(1.06)}
  #top a[data-i18n="cta_models"]:hover{transform:translateY(-3px);box-shadow:0 14px 30px -12px rgba(0,0,0,.45)}
  #top a[data-i18n="cta_projecte"]:hover{transform:translateY(-3px);border-color:rgba(238,241,236,.55);box-shadow:0 14px 30px -14px rgba(0,0,0,.45)}
  header a[data-i18n="cta_parlemne"]:hover{transform:translateY(-2px);box-shadow:0 12px 26px -12px rgba(8,20,15,.38)}
}

.pmx-lb{position:fixed;inset:0;z-index:300;display:flex;align-items:center;justify-content:center;background:rgba(8,20,15,.95);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;visibility:hidden;transition:opacity .35s ease,visibility .35s ease}
.pmx-lb.pmx-open{opacity:1;visibility:visible}
.pmx-lb figure{margin:0;display:flex;flex-direction:column;gap:12px;align-items:center;transform:scale(.95);transition:transform .42s cubic-bezier(.16,1,.3,1)}
.pmx-lb.pmx-open figure{transform:scale(1)}
.pmx-lb img{max-width:92vw;max-height:74vh;border-radius:12px;box-shadow:0 40px 100px rgba(0,0,0,.6);display:block}
.pmx-lb figcaption{font-family:'Hanken Grotesk',system-ui,sans-serif;font-size:15px;letter-spacing:.04em;color:#9bc255;text-align:center;max-width:84vw;line-height:1.35}
.pmx-lb button{background:transparent;border:0;color:#eef1ec;width:46px;height:46px;border-radius:999px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex:none;transition:background .25s ease,color .25s ease,transform .25s ease}
.pmx-lb button:hover{background:#9bc255;color:#10201a}
.pmx-lb button:active{transform:scale(.92)}
.pmx-lb button svg{width:22px;height:22px}
.pmx-lb .pmx-close{position:absolute;top:20px;right:20px;background:rgba(238,241,236,.14);border:1px solid rgba(238,241,236,.42);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.pmx-nav{position:absolute;left:50%;bottom:clamp(16px,3vh,28px);transform:translateX(-50%);display:flex;align-items:center;gap:4px;background:rgba(8,20,15,.55);border:1px solid rgba(238,241,236,.18);border-radius:999px;padding:6px 10px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 10px 30px rgba(0,0,0,.45)}
.pmx-count{font-family:'Hanken Grotesk',system-ui,sans-serif;font-size:14px;letter-spacing:.05em;color:#9bc255;min-width:58px;text-align:center;user-select:none}
@media(max-width:640px){.pmx-lb .pmx-close{top:14px;right:14px}}

@media (prefers-reduced-motion: reduce){
  .pmx-grain{display:none}
  .pmx-heroimg{animation:none!important}
  [data-pmx-mag]{transition:none!important;transform:none!important}
  #top a[data-i18n="cta_models"],#top a[data-i18n="cta_projecte"],header a[data-i18n="cta_parlemne"]{transition:none!important;transform:none!important}
  #obra figure img{transition:none!important}
}
#top a[data-i18n="cta_models"]:active,#top a[data-i18n="cta_projecte"]:active,header a[data-i18n="cta_parlemne"]:active{transform:translateY(-1px) scale(.97);transition-duration:.16s}button[data-i18n="form_submit"]{transition:transform .16s cubic-bezier(.23,1,.32,1)}button[data-i18n="form_submit"]:active,a[data-i18n-aria="wa_aria"]:active{transform:scale(.97)}
