/* Couche commune aux plaquettes Acti Bati : navigation, finitions, mobile */
img[width][height]{height:auto;max-width:100%}

/* Barre de progression de lecture */
.pq-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:1100;background:var(--red);transform-origin:0 50%;transform:scaleX(0);pointer-events:none}

/* Lien retour vers l'accueil */
.pq-home{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--navy);text-decoration:none;padding:10px 14px;border:1px solid var(--border);border-radius:40px;margin-right:14px;transition:border-color .2s,color .2s}
.pq-home:hover{border-color:var(--red);color:var(--red)}
.pq-home svg{transition:transform .2s}
.pq-home:hover svg{transform:translateX(-3px)}
.pq-nav-right{display:flex;align-items:center}
@media (max-width:1180px){.pq-home span{display:none}.pq-home{padding:10px}}

/* Lien actif dans le menu */
.nlinks a{position:relative}
.nlinks a.active{color:var(--red)}
.nlinks a::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;background:var(--red);transform:scaleX(0);transition:transform .3s}
.nlinks a.active::after,.nlinks a:hover::after{transform:scaleX(1)}

/* Burger animé */
.burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.burger.open span:nth-child(2){opacity:0}
.burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* Hero : léger mouvement de caméra */
@media (prefers-reduced-motion:no-preference){
  .hero-bg{animation:pqKen 16s cubic-bezier(.2,.6,.2,1) both}
  @keyframes pqKen{from{transform:scale(1.12)}to{transform:scale(1)}}
  .rv.visible{animation-duration:.8s;animation-timing-function:cubic-bezier(.2,.7,.2,1)}
}
@media (prefers-reduced-motion:reduce){
  .rv{opacity:1!important;transform:none!important}
}

/* Images : apparition douce et survol */
img.fi,.zoom-wrap{transition:box-shadow .35s,transform .35s}
img.fi:hover,.zoom-wrap:hover{box-shadow:0 18px 44px rgba(0,0,0,.16)}
.zoom-label{border-radius:40px;padding:6px 12px!important;backdrop-filter:blur(6px)}

/* Visionneuse */
#lightbox{animation:pqFade .25s ease}
@keyframes pqFade{from{opacity:0}to{opacity:1}}
#lb-img{box-shadow:0 30px 80px rgba(0,0,0,.5)}

/* Accessibilité clavier */
a:focus-visible,button:focus-visible{outline:2px solid var(--red);outline-offset:3px}

/* Barre d'appel mobile */
.pq-cta-bar{display:none}
@media (max-width:768px){
  .pq-cta-bar{display:flex;gap:10px;position:fixed;left:12px;right:12px;bottom:12px;z-index:990;transform:translateY(140%);transition:transform .4s cubic-bezier(.2,.7,.2,1)}
  .pq-cta-bar.show{transform:none}
  .pq-cta-bar a{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;height:50px;border-radius:40px;font-size:14px;font-weight:700;text-decoration:none;box-shadow:0 10px 30px rgba(0,0,0,.25)}
  .pq-cta-bar .call{background:var(--red);color:#fff}
  .pq-cta-bar .mail{background:#fff;color:var(--navy)}
  footer{padding-bottom:90px!important}
  .mob-menu a.pq-home-m{color:var(--red)!important}
}

/* Menu : passe en burger sur tablette */
.mob-menu{top:70px}
@media (max-width:1100px){.nlinks{display:none!important}.burger{display:flex!important}.ncta{display:none!important}}
@media (max-width:768px){.mob-menu{top:60px}}
@media (max-width:768px){.pq-nav-right .pq-home{display:none}}

/* Bouton PDF */
.pq-pdf{margin-right:10px}
@media (max-width:1180px){.pq-pdf span{display:inline}}
