/* lockium.ch — thème clair (nov. 2026). Chargé après le style de chaque page : finitions communes à tout le site. */
:root{--ombre:0 1px 2px rgba(22,32,42,.05),0 8px 24px rgba(22,32,42,.06)}
html{-webkit-text-size-adjust:100%}
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
*{text-shadow:none!important}
::selection{background:#bfe6e9;color:#16202a}
:focus-visible{outline:2px solid #0e7c86;outline-offset:2px}
img{max-width:100%}

/* Boutons : sobres, angles légèrement arrondis (plus de coins coupés) */
.btn-primary,.btn-secondary,.btn-cart,.btn-devis,.nav-cta,.btn-demo,.cta-btn,.b,.btn,button[class*="btn"],a[class*="btn"]{clip-path:none!important;border-radius:8px}
.nav-cta{border-radius:8px!important}

/* Barre du haut */
.site-nav,nav.site-nav{background:rgba(255,255,255,.96)!important;border-bottom:1px solid rgba(22,32,42,.1)!important;box-shadow:none}
.nav-immo{border-color:rgba(14,124,134,.45)!important;background:#fff!important}

/* Cartes : filet fin, ombre légère au survol, pas de halo */
.prod-card,.product-card,.fiche,.tuile,.inst,.prod{box-shadow:none}
.prod-card:hover,.product-card:hover,.prod:hover{box-shadow:var(--ombre);border-color:rgba(22,32,42,.16)!important}

/* Boutique : toutes les photos sur le même fond neutre, entières, même marge */
.prod-visual,.prod .im,.product-visual{background:#f3f4f2!important}
.prod-visual .prod-photo,.prod .im img,.product-visual img{object-fit:contain!important;object-position:center!important;padding:9%;box-sizing:border-box;mix-blend-mode:multiply;transform:none}
.prod-card:hover .prod-photo{transform:scale(1.03)}
.cart-item-img{background:#f3f4f2;mix-blend-mode:multiply;object-fit:contain}

/* Deux entrées de la page d'accueil */
.deux{position:relative;z-index:10;max-width:1280px;margin:0 auto;padding:24px 60px 72px;display:flex;flex-wrap:wrap;gap:24px}
.deux article{flex:1 1 420px;border-radius:20px;overflow:hidden;display:flex;flex-direction:column;border:1px solid rgba(22,32,42,.1);background:#fff;color:#16202a}
.deux article.immo{background:#e4f4f5;color:#16202a;border-color:#c4dfe1}
.deux .vis{height:300px;background:#eef1ee;display:flex;align-items:center;justify-content:center}
.deux .vis img{height:270px;width:auto;mix-blend-mode:multiply}
.deux .immo .vis{background:#d3ecee;align-items:flex-end;padding:28px 28px 0}
.deux .immo .vis img{height:auto;width:100%;max-width:520px;border-radius:10px 10px 0 0;mix-blend-mode:normal;display:block;border:1px solid #c4dfe1;border-bottom:0}
.deux .tx{padding:28px 32px 32px;display:flex;flex-direction:column;gap:12px;flex:1}
.deux .k{margin:0;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#5b6570}
.deux .immo .k{color:#0a5f67}
.deux h2{margin:0;font-size:30px;line-height:1.14;letter-spacing:-.01em;font-weight:700}
.deux p.d{margin:0;color:#4a5560;font-size:16px;line-height:1.55}
.deux .immo p.d{color:#26333d}
.deux .bs{display:flex;flex-wrap:wrap;gap:12px;margin-top:auto;padding-top:14px}
.deux .bs a{text-decoration:none;font-weight:600;font-size:15px;padding:13px 20px;border-radius:10px;border:1px solid transparent}
.deux .bs a.p{background:#0e7c86;color:#fff}
.deux .bs a.s{border-color:#c9cfca;color:#16202a;background:#fff}
.deux .immo .bs a.p{background:#16202a;color:#fff}
.deux .immo .bs a.s{border-color:#9cc9cd;color:#16202a;background:#fff}
@media(max-width:900px){.deux{padding:16px 20px 48px}.deux h2{font-size:25px}.deux .vis{height:230px}.deux .vis img{height:200px}}
@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
.btn-primary,.btn-secondary,.btn-cart,.btn-devis,.nav-cta,a[class*="btn"],.b{text-decoration:none!important}
.deux .immo .vis{overflow:hidden}

/* Anciens styles sombres ajoutés au site hors du code (injection côté hébergeur) : remis en clair, avec priorité */
html body .site-footer{background:#ffffff!important;border-top:1px solid rgba(18,147,157,0.12)!important}
html body .site-footer::before{background:linear-gradient(90deg, transparent, rgba(18,147,157,0.5), transparent)!important}
html body .footer-tagline{color:rgba(22,32,42,0.66)!important}
html body .footer-col-title{color:#0e7c86!important;border-bottom:1px solid rgba(22,32,42,0.06)!important}
html body .footer-links a{color:rgba(22,32,42,0.66)!important}
html body .footer-links a:hover{color:rgba(14,124,134,0.9)!important}
html body .footer-bottom{border-top:1px solid rgba(22,32,42,0.05)!important;color:rgba(22,32,42,0.66)!important}
html body .page-hero{background:linear-gradient(to bottom,#f6f7f5,#f0f2ef)!important;border-bottom:1px solid rgba(22,32,42,.1)!important}
html body .page-hero::before{background:radial-gradient(circle, rgba(18,147,157,0.05) 0%, transparent 65%)!important}
html body .page-pretitle{color:#0e7c86!important}
html body .page-h1{color:rgba(22,32,42,1)!important}
html body .page-desc{color:rgba(22,32,42,0.66)!important}
html body .page-content .section-title{color:rgba(22,32,42,0.66)!important;border-bottom:1px solid rgba(22,32,42,0.06)!important}
html body .blog-card{background:rgba(255,255,255,0.97)!important;border:1px solid rgba(22,32,42,0.07)!important}
html body .blog-card:hover{border-color:rgba(18,147,157,0.2)!important}
html body .card-initials{color:rgba(22,32,42,0.66)!important}
html body .blog-cat{color:rgba(14,124,134,1)!important}
html body .blog-card-body h2,html body .blog-card-body h3{color:rgba(22,32,42,1)!important}
html body .blog-foot{border-top:1px solid rgba(22,32,42,0.07)!important}
html body .section-label{border-bottom:1px solid rgba(22,32,42,0.07)!important}
html body [class*="bg-"].blog-card-visual,html body .blog-card-visual{background:#eef1ee!important}
html body .blog-card-visual:has(img){background:transparent!important}
:root{color-scheme:light}
/* le titre des pages ne passe plus sous la barre du haut */
html body .site-nav + .page-hero,html body .mobile-nav + .page-hero,html body .lk-mnav + .page-hero,html body .page-hero:first-child,html body .page-content:has(> h1){padding-top:124px!important}
@media(max-width:900px){html body .site-nav + .page-hero,html body .mobile-nav + .page-hero,html body .lk-mnav + .page-hero,html body .page-hero:first-child,html body .page-content:has(> h1){padding-top:104px!important}}
/* Accueil : barre du haut pleine (plus de dégradé flou), logo à taille fixe sur téléphone */
nav:has(> .nav-logo):not(.site-nav){background:rgba(255,255,255,.97)!important;border-bottom:1px solid rgba(22,32,42,.1);-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
@media(max-width:768px){nav:has(> .nav-logo):not(.site-nav){padding-top:12px!important;padding-bottom:12px!important}nav:has(> .nav-logo):not(.site-nav) .nav-logo img{height:44px!important;width:auto!important;max-width:60vw}}
/* Accueil sur téléphone : la poignée et ses animations d'abord, le titre juste dessous */
@media(max-width:768px){
  #hero.hero{padding-top:96px!important}
  #hero .hero-inner{display:flex!important;flex-direction:column;gap:6px!important}
  #hero .hero-visual{order:-1;height:400px!important;margin-top:0!important}
  #hero .hv-stage{height:390px!important}
  #hero .hero-text .tag{display:none}
  #hero h1{font-size:clamp(30px,8.6vw,40px)!important;line-height:1.08!important;margin-top:0!important}
  #hero h1 br{display:none}
  #hero h1 .line-cyan::after{content:" "}
}

/* ── Pied de page : tout centré, mêmes écarts sur toutes les pages (11.11.2026) ── */
html body footer:has(.footer-top){padding:56px 24px 30px!important;text-align:center!important}
html body footer .footer-top{max-width:1080px!important;margin:0 auto 34px!important;padding:0!important;display:grid!important;grid-template-columns:1.25fr 1fr 1fr 1fr!important;gap:44px 40px!important;align-items:start!important;justify-items:center!important;text-align:center!important}
html body footer .footer-brand{display:flex!important;flex-direction:column!important;align-items:center!important;gap:16px!important;text-align:center!important;max-width:320px!important;margin:0!important;padding:0!important}
html body footer .footer-brand > a{display:block!important;line-height:0!important;margin:0!important}
html body footer .footer-logo-img{height:54px!important;width:auto!important;display:block!important;margin:0 auto!important}
html body footer .footer-tagline{margin:0!important;max-width:300px!important;text-align:center!important;font-size:14.5px!important;line-height:1.6!important}
html body footer .footer-social{display:flex!important;justify-content:center!important;align-items:center!important;gap:10px!important;margin:0!important;padding:0!important}
html body footer .footer-col{text-align:center!important;width:100%!important;max-width:240px!important;margin:0!important;padding:0!important}
html body footer .footer-col-title{margin:0 0 18px!important;padding:0 0 12px!important;text-align:center!important}
html body footer .footer-links{list-style:none!important;margin:0!important;padding:0!important;display:grid!important;gap:13px!important;justify-items:center!important}
html body footer .footer-links li{margin:0!important;padding:0!important}
html body footer .footer-links a{display:inline-block!important;padding:0!important}
html body footer .footer-bottom{max-width:1080px!important;margin:0 auto!important;padding:24px 0 0!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:12px!important;text-align:center!important}
html body footer .footer-bottom > *{margin:0!important;position:static!important;float:none!important;flex-basis:auto!important;width:auto!important;text-align:center!important}
html body footer .footer-contact{order:1!important;font-size:14px!important}
html body footer .footer-legal{order:2!important;display:flex!important;flex-wrap:wrap!important;justify-content:center!important;align-items:center!important;gap:6px 22px!important}
html body footer .footer-badge{order:3!important}
html body footer .footer-copy{order:4!important;font-size:12.5px!important;line-height:1.5!important}
html body footer .footer-lock{order:5!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;width:34px!important;height:34px!important;border-radius:50%!important;opacity:.55}
html body footer .footer-lock:hover{opacity:1}
@media (max-width:900px){
  html body footer .footer-top{grid-template-columns:1fr 1fr!important;gap:34px 20px!important}
  html body footer .footer-brand{grid-column:1 / -1!important;max-width:none!important}
}
@media (max-width:520px){
  html body footer:has(.footer-top){padding:44px 18px 96px!important}
  html body footer .footer-top{grid-template-columns:1fr!important;gap:30px!important}
}
html body footer .footer-top{border:0!important}
html body footer .footer-bottom{border-top:1px solid rgba(22,32,42,0.08)!important}
/* Cadenas de l'espace partenaire : bien visible, au même endroit (demande du 11.11.2026) */
html body footer .footer-lock{opacity:1!important;color:#16202a!important;border:1.5px solid #16202a!important;width:40px!important;height:40px!important;margin-top:4px!important;background:#fff!important}
html body footer .footer-lock svg{width:19px!important;height:19px!important;stroke-width:2.2}
html body footer .footer-lock:hover{background:#16202a!important;color:#fff!important}
