
@font-face{font-family:Montserrat;font-weight:700;src:url(polices/Montserrat-Bold.ttf) format("truetype")}
@font-face{font-family:Montserrat;font-weight:600;src:url(polices/Montserrat-SemiBold.ttf) format("truetype")}
@font-face{font-family:Poppins;font-weight:400;src:url(polices/Poppins-Regular.ttf) format("truetype")}
@font-face{font-family:Poppins;font-weight:500;src:url(polices/Poppins-Medium.ttf) format("truetype")}
@font-face{font-family:Roboto;font-weight:400;src:url(polices/Roboto-Regular.ttf) format("truetype")}
@font-face{font-family:Roboto;font-weight:500;src:url(polices/Roboto-Medium.ttf) format("truetype")}
/* Mise en page : une colonne de lecture, cartes blanches a bordure fine, bleu Tecnova pour l'action. */
:root{
  --tecnova-white:#FFFFFF;--tecnova-blue:#0440B6;--tecnova-dark-blue:#05328B;--tecnova-black:#000000;
  --font-heading:'Montserrat',Calibri,Arial,sans-serif;--font-body:'Poppins',Calibri,Arial,sans-serif;
  --font-data:'Roboto',Calibri,Arial,sans-serif;
  --muted:#4A5468;--line:#D5DBE7;--tint:#EEF3FC;
  --oui:#1E6B3A;--oui-tint:#E6F3EA;--non:#A3400E;--non-tint:#FCEDE4;--na:#5B6475;--na-tint:#EEF0F4;
  color-scheme:light}
*{box-sizing:border-box}
html,body{background:var(--tecnova-white)}
body{margin:0;color:var(--tecnova-black);font:15px/1.6 var(--font-body)}
a{color:var(--tecnova-blue)} a:hover{color:var(--tecnova-dark-blue)}
main{max-width:1180px;margin:0 auto;padding-inline:24px;padding-block:28px 80px;display:grid;gap:36px}
.barre{position:sticky;top:env(safe-area-inset-top,0px);z-index:5;background:var(--tecnova-white);border-bottom:1px solid var(--line)}
.barre nav{max-width:1180px;margin:0 auto;padding:14px 24px;display:flex;flex-wrap:wrap;gap:8px 24px;align-items:center}
.barre .logo{margin-right:auto;display:flex;align-items:center;gap:14px;text-decoration:none}
.barre .logo img{height:22px;width:auto;display:block}
.barre .logo span{font:600 13px var(--font-heading);color:var(--muted);letter-spacing:.02em}
.barre nav a.lien{font:500 14px var(--font-body);text-decoration:none;color:var(--tecnova-blue);padding:4px 0}
.barre nav a.lien[aria-current]{color:var(--tecnova-dark-blue);box-shadow:inset 0 -2px 0 var(--tecnova-blue)}
h1,h2,h3{font-family:var(--font-heading);margin:0;line-height:1.25;text-wrap:balance}
h1{font-weight:700;font-size:30px;color:var(--tecnova-blue)}
h2{font-weight:700;font-size:20px;color:var(--tecnova-dark-blue)}
h3{font-weight:600;font-size:16px;color:var(--tecnova-dark-blue)}
.sous{color:var(--muted);margin:8px 0 0;max-width:78ch}
section{display:grid;gap:16px}
.note{border:1px solid var(--tecnova-blue);border-radius:6px;padding:14px 18px;max-width:92ch;margin:0}
.note strong{color:var(--tecnova-blue);font-weight:500}
.tablewrap{overflow-x:auto;border:1px solid var(--line);border-radius:6px}
table{border-collapse:collapse;width:100%;font:14px/1.5 var(--font-data)}
th,td{text-align:left;padding:9px 12px;border-bottom:1px solid var(--line);vertical-align:top}
th{background:var(--tecnova-dark-blue);color:var(--tecnova-white);font:500 13px var(--font-data);letter-spacing:.02em}
tr:last-child td{border-bottom:0}
td.n{font-variant-numeric:tabular-nums;white-space:nowrap}
.pastille{display:inline-block;font:500 12px var(--font-data);padding:1px 9px;border-radius:10px;white-space:nowrap}
.oui{color:var(--oui);background:var(--oui-tint)} .non{color:var(--non);background:var(--non-tint)} .na{color:var(--na);background:var(--na-tint)}
.prio{display:inline-block;font:500 12px var(--font-data);color:var(--tecnova-white);padding:2px 9px;border-radius:4px;white-space:nowrap}
.prio.p1{background:var(--tecnova-blue)} .prio.p2{background:var(--tecnova-dark-blue)} .prio.p3{background:#7A8296}
.grille-maisons{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}
.carte{border:1px solid var(--line);border-radius:8px;padding:14px;display:grid;gap:8px;text-decoration:none;color:var(--tecnova-black);min-width:0;background:var(--tecnova-white)}
a.carte:hover{border-color:var(--tecnova-blue);box-shadow:0 2px 10px rgba(4,64,182,.10)}
.carte img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:6px;max-width:100%;display:block}
.mat{font:500 15px var(--font-data);color:var(--tecnova-dark-blue);letter-spacing:.02em}
h1 .mat{font:700 30px var(--font-heading);color:var(--tecnova-blue)}
.stats{display:flex;flex-wrap:wrap;gap:4px 12px;font:13px var(--font-data);color:var(--muted)}
.chiffre{font:700 15px var(--font-heading);color:var(--tecnova-blue)}
.bloc{border:1px solid var(--line);border-radius:8px;padding:18px;display:grid;gap:14px;scroll-margin-top:80px;min-width:0;background:var(--tecnova-white)}
.bloc.cand{border-left:4px solid var(--tecnova-blue)}
.bloc header{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:baseline}
.compare{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin:0}
.compare>div{border:1px solid var(--line);border-radius:6px;padding:10px 12px;min-width:0}
.compare dd+div{margin-top:6px}
.compare dt{font:500 11px var(--font-data);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:3px}
.compare dd{margin:0;font-weight:500;overflow-wrap:anywhere}
.preuve{margin:0;max-width:96ch}
.preuve b{font-weight:500;color:var(--tecnova-dark-blue)}
.verdict{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:14px;align-items:center}
.verdict b{font-weight:500}
.verdict label{display:inline-flex;gap:6px;align-items:center;cursor:pointer}
.verdict input{accent-color:var(--tecnova-blue)}
.photos{display:flex;flex-wrap:wrap;gap:12px}
.photos figure{margin:0;width:170px;min-width:0}
.photos img{width:170px;height:128px;object-fit:cover;border-radius:6px;border:1px solid var(--line);cursor:zoom-in;display:block}
.photos img:hover,.photos img:focus-visible{outline:2px solid var(--tecnova-blue);outline-offset:2px}
figcaption{font:11px var(--font-data);color:var(--muted);overflow-wrap:anywhere;margin-top:4px}
.tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}
.tags a{font:500 10.5px var(--font-data);text-decoration:none;color:var(--tecnova-blue);border:1px solid var(--tecnova-blue);padding:0 7px;border-radius:8px}
.tags a:hover{color:var(--tecnova-white);background:var(--tecnova-blue)}
.discret{color:var(--muted);font-size:14px;margin:0}
.pager{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font:500 14px var(--font-body)}
.pager a{text-decoration:none}
#visionneuse{position:fixed;inset:0;background:rgba(5,20,45,.94);display:grid;place-items:center;padding:24px;z-index:20;cursor:zoom-out}
#visionneuse[hidden]{display:none!important}
#visionneuse img{max-width:94vw;max-height:84vh;object-fit:contain;border-radius:6px;cursor:default}
#visionneuse p{position:fixed;bottom:calc(16px + env(safe-area-inset-bottom,0px));left:0;right:0;text-align:center;color:#FFFFFF;margin:0;font:14px var(--font-data);padding:0 76px}
.nav{position:fixed;top:50%;transform:translateY(-50%);background:var(--tecnova-blue);color:#FFFFFF;border:0;font-size:32px;width:50px;height:68px;border-radius:6px;cursor:pointer}
.nav:hover{background:var(--tecnova-dark-blue)} #prec{left:14px} #suiv{right:14px}
#fermer{position:fixed;top:calc(12px + env(safe-area-inset-top,0px));right:18px;background:none;border:0;color:#FFFFFF;font-size:34px;cursor:pointer}
button:focus-visible,a:focus-visible,input:focus-visible,img:focus-visible{outline:2px solid var(--tecnova-blue);outline-offset:2px}
@media (max-width:600px){main{padding-inline:16px} h1,h1 .mat{font-size:24px} .barre .logo span{display:none}}

.pastille.ajout{color:#05328B;background:#E3EAF8}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px}
.kpi{border:1px solid var(--line);border-radius:8px;padding:14px 16px;display:grid;gap:4px;min-width:0}
.kpi .v{font:700 30px var(--font-heading);color:var(--tecnova-blue);line-height:1.1}
.kpi .l{font:13px/1.45 var(--font-body);color:var(--muted)}
.probleme{border:1px solid var(--line);border-left:4px solid var(--tecnova-blue);border-radius:8px;padding:16px 18px;display:grid;gap:8px;min-width:0}
.probleme p{margin:0;max-width:96ch}
.probleme .action{font-weight:500;color:var(--tecnova-dark-blue)}
.demo{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px;margin:8px 0 20px}
.demo figure{margin:0;min-width:0;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#fff}
.demo img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;cursor:zoom-in}
.demo figcaption{padding:10px 12px;font-size:13px;line-height:1.45;display:grid;gap:4px}
.demo .code{font-weight:600;color:var(--tecnova-dark-blue)}
.drapeaux{display:flex;flex-wrap:wrap;gap:6px}
.drapeau{font:500 11.5px var(--font-data);color:var(--tecnova-dark-blue);border:1px solid var(--tecnova-dark-blue);border-radius:10px;padding:0 9px}
ul.choix{margin:0;padding-left:20px;font-size:14px}
.compare.trois{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
