@font-face{font-family:'Encode Sans Condensed';font-style:normal;font-weight:600;font-display:swap;src:url(/fuentes/encode-sans-condensed-600.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Encode Sans Condensed';font-style:normal;font-weight:700;font-display:swap;src:url(/fuentes/encode-sans-condensed-700.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Literata';font-style:normal;font-weight:400 600;font-display:swap;src:url(/fuentes/literata.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Literata';font-style:italic;font-weight:400;font-display:swap;src:url(/fuentes/literata-italic-400.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
/* valeriedamota.fr (Pignon sur Web) : zinc froid, bleu émail des plaques de rue, bordure verte, rouge réservé à l'appel Aigen.
   Encode Sans Condensed (plaques et titres) + Literata (lecture). Voir DISENO.md. */
:root{
  --zinc:#EEF1F2;--bitume:#1D2329;--email:#183B63;--email-f:#10294A;--bordure:#2C5E46;--bordure-f:#21483A;--feu:#B8322A;--feu-f:#962720;
  --papier:#FFFFFF;--ligne:#CBD3D8;--suave:#4A5560;--route:#D5DCE0;
  --f-tit:'Encode Sans Condensed','Arial Narrow',system-ui,sans-serif;
  --f-txt:'Literata',Georgia,'Times New Roman',serif;
  --r-plaque:8px;--r-papier:12px;
  --w:1180px;--etroit:46rem;
  color-scheme:light;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:5rem}
body{margin:0;background:var(--zinc);color:var(--bitume);font:400 1.0625rem/1.65 var(--f-txt);font-optical-sizing:auto}
@media (min-width:720px){body{font-size:1.125rem}}
img{max-width:100%;height:auto;display:block}
a{color:var(--email);text-decoration-thickness:1px;text-underline-offset:.2em}
a:hover{text-decoration-thickness:2px}
::selection{background:var(--email);color:#fff}
:focus-visible{outline:3px solid var(--feu);outline-offset:3px;border-radius:3px}
h1,h2,h3{font-family:var(--f-tit);font-weight:700;line-height:1.12;letter-spacing:-.01em;text-wrap:balance;color:var(--bitume)}
h1{font-size:clamp(2.2rem,1.4rem + 3.4vw,3.4rem);margin:.2em 0 .3em}
h2{font-size:clamp(1.6rem,1.3rem + 1.2vw,2.15rem);margin:2.2em 0 .5em}
h3{font-size:1.35rem;margin:1.8em 0 .4em;font-weight:600}
p{margin:0 0 1em}
.w{max-width:var(--w);margin:0 auto;padding:0 16px}
@media (min-width:720px){.w{padding:0 28px}}
.etroit{max-width:var(--etroit)}
.saut{position:absolute;left:-9999px;top:0;background:var(--email);color:#fff;padding:.6em 1em;z-index:20}
.saut:focus{left:12px;top:12px}

/* Plaque de rue émaillée : bordure verte, filet blanc, émail bleu, reflet discret */
.plaque{display:inline-flex;align-items:stretch;max-width:100%;color:#fff;text-decoration:none;
  background:radial-gradient(140% 160% at 0% 0%,rgba(255,255,255,.17),rgba(255,255,255,0) 42%) no-repeat 0 0/100% 100%,var(--email);
  border:3px solid var(--bordure);border-radius:var(--r-plaque);box-shadow:inset 0 0 0 2px #fff,0 1px 2px rgba(16,41,74,.25),0 6px 14px -8px rgba(16,41,74,.45);
  font:700 .95rem/1 var(--f-tit);letter-spacing:.05em;text-transform:uppercase;transition:background-position .5s cubic-bezier(.16,1,.3,1)}
.plaque-n{padding:.62em .9em .55em;overflow-wrap:anywhere}
.plaque-num{display:flex;align-items:center;padding:0 .8em;border-left:2px solid #fff;letter-spacing:.02em;text-transform:none}
a.plaque:hover{background-position:60% 30%,0 0;color:#fff}
.plaque-g{font-size:clamp(1.05rem,.9rem + .6vw,1.35rem);margin:0}
@media (prefers-reduced-motion:reduce){.plaque{transition:none}}

/* En-tête */
.cab{background:var(--email);color:#fff;position:sticky;top:0;z-index:10;box-shadow:0 1px 0 rgba(0,0,0,.2)}
.cab-in{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:3.75rem}
.marque{color:#fff;text-decoration:none;display:inline-flex}
.marque-p{font:700 1.2rem/1 var(--f-tit);letter-spacing:.03em;padding:.42em .7em .38em;border:2px solid #fff;border-radius:6px;box-shadow:0 0 0 2px var(--bordure)}
.menu-b{font:600 1rem/1 var(--f-tit);letter-spacing:.04em;background:transparent;color:#fff;border:2px solid rgba(255,255,255,.7);border-radius:6px;padding:.55em .9em;cursor:pointer}
.nav ul{list-style:none;margin:0;padding:0}
.nav a{color:#fff;text-decoration:none;font:600 1.05rem/1 var(--f-tit);letter-spacing:.02em;display:block;padding:.75em .2em}
.nav a:hover,.nav a.actuelle,.nav a[aria-current]{text-decoration:underline;text-underline-offset:.35em;text-decoration-thickness:2px}
.nav-aigen a{color:#fff}
@media (max-width:899px){
  .nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--email-f);padding:.5rem 16px 1rem}
  .nav.ouvert{display:block}
  .nav li+li{border-top:1px solid rgba(255,255,255,.15)}
}
@media (min-width:900px){
  .menu-b{display:none}
  .nav ul{display:flex;gap:1.6rem;align-items:center}
  .nav-aigen a{border:2px solid #fff;border-radius:6px;padding:.5em .8em}
}

/* Accueil */
.hero{padding:2.6rem 0 2rem}
.hero-in{display:grid;gap:1.6rem;align-items:center}
@media (min-width:960px){.hero-in{grid-template-columns:1.15fr .85fr;gap:3rem}}
.hero h1{font-size:clamp(2.4rem,1.5rem + 3.6vw,3.6rem);max-width:15ch}
.hero-lead{font-size:1.18em;max-width:36rem}
.hero-f img{border-radius:var(--r-papier);aspect-ratio:4/3;object-fit:cover;width:100%}
.meta{color:var(--suave);font-size:.9rem}
.quartier{padding:1rem 0 2.5rem}
.q-t{margin-top:0}
.plan{position:relative}
.rue{position:relative;display:grid;gap:1rem;padding:1.6rem 0;border-top:1px solid var(--ligne)}
.rue-cab p{color:var(--suave);font-size:.95rem;margin:.9rem 0 0;max-width:34rem}
@media (min-width:900px){
  .plan{padding-left:44px}
  .plan::before{content:"";position:absolute;left:8px;top:1.6rem;bottom:1.6rem;width:14px;background:var(--route);border-radius:7px}
  .rue{grid-template-columns:300px 1fr;gap:2.4rem;border-top:0}
  .rue-cab .plaque{position:relative}
  .rue-cab .plaque::before{content:"";position:absolute;left:-39px;top:50%;width:36px;height:14px;margin-top:-7px;background:var(--route);z-index:-1}
}
.rue:hover .plaque,.rue:focus-within .plaque{background-position:60% 30%,0 0}

/* Numéros (plaques de numéro bleues) */
.numeros{list-style:none;margin:0;padding:0;display:grid;gap:.15rem}
.numeros a{display:grid;grid-template-columns:4rem 1fr;gap:.9rem;align-items:start;text-decoration:none;color:var(--bitume);padding:.65rem .5rem;border-radius:8px}
.numeros a:hover{background:var(--papier)}
.numeros a:hover strong{text-decoration:underline;text-underline-offset:.2em}
.num{font:700 1rem/1 var(--f-tit);color:#fff;background:var(--email);border-radius:5px;box-shadow:inset 0 0 0 2px var(--email),inset 0 0 0 3px rgba(255,255,255,.9);padding:.5em .4em .45em;text-align:center;font-variant-numeric:tabular-nums;white-space:nowrap}
.num-t strong{display:block;font:600 1.12rem/1.25 var(--f-tit);color:var(--email)}
.num-t span{display:block;color:var(--suave);font-size:.93rem;line-height:1.5;margin-top:.2rem}

/* Budget */
.budget{background:var(--papier);padding:2.6rem 0;border-top:1px solid var(--ligne);border-bottom:1px solid var(--ligne)}
.bud-cab h2{margin-top:0}
.bud-cab p{max-width:44rem}
#bud td:first-child label{display:flex;gap:.6rem;align-items:flex-start;cursor:pointer}
#bud input{width:1.15rem;height:1.15rem;margin-top:.25rem;accent-color:var(--bordure);flex:none}
.bud-p,.bud-a{font-variant-numeric:tabular-nums;white-space:nowrap}
.bud-s{font-size:.85rem}
#bud tfoot th,#bud tfoot td{border-top:2px solid var(--bitume);font-family:var(--f-tit);font-size:1.15rem}
#bud-t{font-weight:700;color:var(--email);font-variant-numeric:tabular-nums}
.bud-n{color:var(--suave);font-size:.9rem;margin-top:1rem;max-width:48rem}
.sec-texte{padding:1rem 0 1rem}
.sec-faq{padding:0 0 1rem}

/* Pages intérieures */
.pg-cab{padding:1.6rem 0 1.2rem}
.migas ol{list-style:none;margin:0 0 1.2rem;padding:0;display:flex;flex-wrap:wrap;gap:.3rem;font-size:.88rem;color:var(--suave)}
.migas li+li::before{content:"/";margin-right:.3rem;color:var(--ligne)}
.adresse{margin:0 0 .4rem}
.pg-cab h1{max-width:22ch}
.lead{font-size:1.15em;max-width:44rem}
.pg-foto-w{margin-top:1.2rem}
.pg-foto{width:100%;aspect-ratio:21/9;object-fit:cover;border-radius:var(--r-papier)}
.pg,.pg-une{padding-top:1.5rem;padding-bottom:3rem}
.pg{display:grid;gap:2rem}
@media (min-width:1000px){.pg{grid-template-columns:minmax(0,1fr) 300px;gap:3rem;align-items:start}.lat{position:sticky;top:5rem}}
.prose{background:var(--papier);border-radius:var(--r-papier);padding:1.4rem 18px 2rem;max-width:50rem;min-width:0}
@media (min-width:720px){.prose{padding:2.2rem 2.6rem 2.6rem}}
.prose>:first-child{margin-top:0}
.prose p,.prose li{max-width:68ch}
.prose ul,.prose ol{padding-left:1.3rem;margin:0 0 1.2em}
.prose li{margin:.3em 0}
.prose ul li::marker{color:var(--bordure)}
.prose ol li::marker{font-family:var(--f-tit);font-weight:700;color:var(--email)}
.prose blockquote{margin:1.4em 0;padding:.2em 0 .2em 1.1rem;border-left:1px solid var(--ligne);color:var(--suave);font-style:italic}
.tabla{overflow-x:auto;margin:1.4em 0;-webkit-overflow-scrolling:touch}
table{border-collapse:collapse;width:100%;font-size:.95rem;min-width:32rem}
th,td{text-align:left;vertical-align:top;padding:.6rem .7rem;border-bottom:1px solid var(--ligne)}
thead th{font:600 1rem/1.2 var(--f-tit);color:var(--email);border-bottom:2px solid var(--email);letter-spacing:.01em}
td{font-variant-numeric:tabular-nums}
.aviso-af{font-size:.9rem;color:var(--suave);background:var(--zinc);border-radius:8px;padding:.8rem 1rem}
.toc,.resume{background:var(--papier);border-radius:var(--r-papier);padding:1.1rem 1.2rem;margin-bottom:1.2rem}
.toc-t,.resume-t{font:700 1.05rem/1.2 var(--f-tit);margin:0 0 .6rem;color:var(--email)}
.toc ol{margin:0;padding-left:1.2rem;font-size:.92rem}
.toc li{margin:.35em 0}
.resume dl{margin:0 0 1rem}
.resume dl div{display:grid;grid-template-columns:7rem 1fr;gap:.5rem;padding:.4rem 0;border-bottom:1px solid var(--ligne);font-size:.9rem}
.resume dt{font-family:var(--f-tit);font-weight:600}
.resume dd{margin:0}
.resume-n{font-size:.8rem;color:var(--suave);margin:.7rem 0 0}

/* Boutons */
.btn-go,.btn-aigen{display:inline-block;font:700 1.05rem/1.2 var(--f-tit);letter-spacing:.02em;text-decoration:none;border-radius:8px;padding:.8em 1.15em;transition:background-color .15s}
.btn-go{background:var(--bordure);color:#fff}
.btn-go:hover{background:var(--bordure-f);color:#fff}
.btn-aigen{background:var(--feu);color:#fff}
.btn-aigen:hover{background:var(--feu-f);color:#fff}
.btn-large{display:block;text-align:center}
.go-l{margin:1.2em 0}

/* FAQ, sources */
.faq details{border-bottom:1px solid var(--ligne);padding:.2rem 0}
.faq summary{cursor:pointer;font:600 1.12rem/1.3 var(--f-tit);padding:.8rem 0;color:var(--bitume);list-style-position:outside}
.faq summary::marker{color:var(--bordure)}
.faq details p{margin:.2rem 0 1rem}
.sources{margin-top:2.4rem;font-size:.86rem;color:var(--suave)}
.sources h2{font-size:1.2rem}
.sources ul{padding-left:1.1rem}
.sources a{color:var(--suave);overflow-wrap:anywhere}

/* Bloc Aigen */
.aigen{background:var(--email);color:#fff;padding:2.4rem 0;margin-top:1rem}
.aigen-in{display:grid;gap:1.2rem;align-items:center}
@media (min-width:900px){.aigen-in{grid-template-columns:1fr auto;gap:3rem}}
.aigen h2{color:#fff;margin:0 0 .4rem}
.aigen p{max-width:44rem;margin:0}
.aigen .btn-aigen{box-shadow:0 0 0 2px #fff}
.rel{padding:2.4rem 0 1rem}
.rel h2{margin-top:0}

/* Fiche contact */
.fiche{background:var(--zinc);border-radius:var(--r-papier);padding:1.2rem 1.2rem 1.4rem;margin:1.5rem 0}
.fiche-t{font:700 1.1rem/1.2 var(--f-tit);color:var(--email)}
.fiche fieldset{border:0;padding:0;margin:0 0 1rem}
.fiche legend{font-family:var(--f-tit);font-weight:600;margin-bottom:.4rem}
.fiche fieldset label{display:flex;gap:.55rem;align-items:center;padding:.25rem 0}
.fiche input[type=checkbox]{width:1.1rem;height:1.1rem;accent-color:var(--bordure)}
.fiche-l{display:block;font-family:var(--f-tit);font-weight:600;margin:.8rem 0 .3rem}
.fiche input[type=text],.fiche textarea{width:100%;font:inherit;font-size:1rem;padding:.6rem .7rem;border:1px solid #9AA6AE;border-radius:6px;background:#fff;color:var(--bitume)}
.fiche input::placeholder{color:#5F6B75}
.fiche-n{font-size:.85rem;color:var(--suave);margin:.6rem 0 0}
.contact-b{margin:1.2rem 0 0}

/* 404 */
.rue-404{margin:1.6rem 0}
.rue-404 .numeros{margin-top:.8rem}

/* Pied */
.pie{background:var(--bitume);color:#D8DEE2;margin-top:0;padding:2.6rem 0 1.4rem;font-size:.92rem}
.pie a{color:#fff}
.pie-in{display:grid;gap:2rem}
@media (min-width:960px){.pie-in{grid-template-columns:1fr 2fr;gap:3rem}}
.pie .marque{margin-bottom:1rem}
.pie-m p{max-width:30rem}
.pie-l{list-style:none;padding:0;margin:1rem 0 0}
.pie-l li{margin:.35rem 0}
.pie-c{display:grid;gap:1.6rem}
@media (min-width:640px){.pie-c{grid-template-columns:1fr 1fr}}
.pie-c .plaque{font-size:.8rem}
.pie-c ul{list-style:none;padding:0;margin:.8rem 0 0}
.pie-c li{margin:.3rem 0}
.pie-c li a{color:#D8DEE2;text-decoration:none}
.pie-c li a:hover{color:#fff;text-decoration:underline}
.pie-b{display:flex;flex-wrap:wrap;gap:.6rem 1.6rem;justify-content:space-between;border-top:1px solid #39424B;margin-top:2rem;padding-top:1.2rem;color:#AEB8BF}
@media print{.cab,.pie,.aigen,.lat,.rel{display:none}.prose{padding:0}}
