/* Polices servies par le site lui-meme. Deux consequences : aucune requete
   vers un tiers a declarer dans la politique de confidentialite, et aucun
   affichage retarde par un domaine exterieur. Ce sont des polices variables,
   un seul fichier couvre toute la plage de graisses. */
@font-face{font-family:'Petrona';font-style:normal;font-weight:100 900;font-display:swap;src:url('/assets/polices/petrona.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:'Instrument Sans';font-style:normal;font-weight:400 700;font-display:swap;src:url('/assets/polices/instrument-sans.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}
:root{--accent:#b84724;--primary:#C6532D;--sand:#EBCDAA;--ink:#302b27;--muted:#71685e;--bg:#faf7f2;--line:#e6ded2;--white:#fff;--radius:16px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;font:16px/1.7 'Instrument Sans',sans-serif;color:var(--ink);background:var(--bg)}h1,h2,h3,.brand{font-family:'Petrona',sans-serif}h1,h2,h3{line-height:1.18;letter-spacing:-.015em;margin:0 0 24px}h1{font-size:clamp(38px,4.7vw,66px);font-weight:800}h2{font-size:clamp(28px,3vw,40px);font-weight:800}h3{font-size:22px;letter-spacing:-.01em}p{margin:0 0 24px}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button,input,select{font:inherit}button,a,input,select,summary{outline-offset:5px}img{display:block;max-width:100%;object-fit:cover}button{cursor:pointer}.container{width:min(1180px,calc(100% - 48px));margin:auto}.topbar{background:#f0e8dc;text-align:center;font-size:12px;padding:8px 24px;color:#5e5347}.topbar span{margin-left:20px;font-weight:700}.entete-toit{background:rgba(250,247,242,.97);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.entete-contenu{display:flex;align-items:center;justify-content:space-between;gap:32px;min-height:96px}.brand{display:flex;align-items:center;gap:8px;color:var(--ink);font-size:23px;font-weight:800;letter-spacing:-1px;line-height:1.1;white-space:nowrap}.brand:hover{text-decoration:none}.brand svg,.brand-accent{color:var(--primary)}.brand small{display:block;font:8px/2 'Instrument Sans',sans-serif;letter-spacing:1.4px;color:var(--muted);margin-top:4px}nav{display:flex;align-items:center;gap:25px}nav>a{font-size:13px;font-weight:600;color:var(--ink)}.button{display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:16px 24px;background:var(--accent);color:#fff;border-radius:8px;font-size:14px;font-weight:700;border:1px solid transparent;transition:background .2s,transform .2s;line-height:1.5}.button:hover{background:#963b1f;transform:translateY(-2px);text-decoration:none}.button.small{padding:12px 18px;font-size:12px}.button.light{background:#fff9ef;color:#753317}.button.outline{color:var(--ink);border-color:var(--line);background:transparent}.button.outline:hover{background:#eee5d9}.bouton-menu{display:none}.surtitre{display:block;text-transform:uppercase;letter-spacing:2px;font-size:11px;font-weight:700;color:var(--accent);margin-bottom:18px}.hero{display:grid;grid-template-columns:1.04fr 1fr;align-items:center;gap:60px;padding-top:64px;padding-bottom:64px}.hero h1 em{font-style:normal;color:var(--primary)}.hero p{max-width:480px;font-size:17px;color:var(--muted)}.actions-une{display:flex;align-items:center;gap:22px;flex-wrap:wrap}.lien-file{font-weight:700;font-size:14px;border-bottom:1px solid #d9b8a4;padding-bottom:4px}.une-points{display:flex;gap:20px;margin-top:24px;font-size:11px;color:var(--muted)}.une-points span::before{content:'✓';color:var(--accent);font-weight:700;margin-right:6px}.hero-photo{position:relative;padding-bottom:22px}.hero-photo>img{width:100%;height:500px;border-radius:150px 16px 16px 16px}.note-photo{position:absolute;bottom:0;left:-24px;display:flex;align-items:center;gap:15px;padding:21px 28px;border-radius:12px;background:#fff;box-shadow:0 10px 40px #302b2710;max-width:90%}.note-photo svg{color:var(--primary);flex-shrink:0}.note-photo strong{display:block;font-size:15px}.note-photo span{font-size:12px;color:var(--muted)}.hero-photo .photo-caption{position:absolute;right:16px;top:20px;background:#fff9efec;border-radius:30px;font-size:11px;padding:7px 14px}.benefits{border-block:1px solid var(--line);padding:25px 0;background:#f3eee6}.grille-atouts{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.benefit{display:flex;gap:14px;align-items:center}.benefit svg{width:30px;height:30px;color:var(--primary);flex-shrink:0}.benefit strong{display:block;font-size:13px}.benefit span{display:block;font-size:11px;color:var(--muted)}.section{padding:80px 0}.tete-section{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:36px}.tete-section h2{margin-bottom:0}.tete-section p{max-width:390px;color:var(--muted);font-size:14px;margin-bottom:0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.card{background:white;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:transform .25s}.card:hover{transform:translateY(-4px)}.card img{width:100%;height:205px}.card-body{padding:28px}.etiquette-fiche{font-size:10px;letter-spacing:1.3px;text-transform:uppercase;color:var(--accent);font-weight:700;margin-bottom:13px;display:block}.card h3{margin-bottom:14px}.card p{font-size:14px;color:var(--muted);margin-bottom:20px}.card .lien-file{font-size:12px}.card-visual{height:205px;background:#e8ded1;position:relative;display:grid;place-items:center}.card-visual svg{width:150px;height:120px;color:#895b3c}.split{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}.split-image{height:450px;width:100%;border-radius:16px}.split p{color:var(--muted)}.liste-points{padding:0;list-style:none}.liste-points li{padding:12px 0;border-bottom:1px solid var(--line);font-size:14px}.liste-points li::before{content:'✓';color:var(--accent);margin-right:12px;font-weight:700}.warm-section{background:#f0e9de}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.etape-numero{font-size:12px;color:var(--accent);display:grid;place-items:center;border:1px solid #d9bdaa;width:42px;height:42px;border-radius:50%;margin-bottom:22px}.steps p{color:var(--muted);font-size:14px}.steps h3{font-size:20px}.estimateur{display:grid;grid-template-columns:1fr 1fr;gap:64px;background:#eee3d4;padding:48px;border-radius:20px;margin:72px 0}.estimateur p{color:#62594f;font-size:14px}.budget-form{background:white;padding:32px;border-radius:12px;display:grid;gap:12px}.budget-form label{font-size:13px;font-weight:700}.input-unit{position:relative}.input-unit span{position:absolute;right:16px;top:12px;color:var(--muted)}input,select{border:1px solid #d8cebf;border-radius:7px;width:100%;padding:12px 16px;background:#fff;color:var(--ink);min-height:49px}input:focus,select:focus{border-color:var(--accent)}.estimate{border-top:1px solid var(--line);padding-top:20px;margin-top:8px;display:grid;gap:4px}.estimate span,.estimate small{font-size:11px;color:var(--muted)}.estimate output{font:800 28px/1.5 'Petrona',sans-serif;color:var(--accent)}.city-section{display:grid;grid-template-columns:.85fr 1.15fr;gap:72px;align-items:center}.city-links{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.city-links a{background:#fff;border:1px solid var(--line);border-radius:8px;padding:13px 16px;color:var(--ink);font-size:13px;display:flex;justify-content:space-between}.city-links a:hover{border-color:var(--primary);text-decoration:none;color:var(--accent)}.faq{max-width:800px;margin:72px auto}.faq h2{margin-bottom:32px}details{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;font-weight:600;padding:22px 0;font-size:15px}summary::-webkit-details-marker{display:none}summary span{color:var(--accent);font-size:22px}details[open] summary span{transform:rotate(45deg)}details p{color:var(--muted);font-size:14px;padding-right:24px}.bande-appel{display:flex;justify-content:space-between;align-items:center;gap:48px;padding:48px 56px;background:var(--primary);color:white;border-radius:16px;margin:64px 0 80px}.bande-appel .surtitre{color:#fff1dc}.bande-appel h2{font-size:32px;max-width:650px}.bande-appel p{margin:0;font-size:14px;color:#fff4e8;max-width:550px}.bande-appel .button{flex-shrink:0}.pied-charpente{background:#eee8de;padding:60px 0 24px}.pied-colonnes{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:80px}.pied-marque{display:inline-flex;gap:0;margin-bottom:20px}.pied-colonnes p{font-size:13px;color:var(--muted)}.pied-colonnes h3{font-size:14px;letter-spacing:0;margin-bottom:20px}.pied-colonnes>div>a:not(.brand){display:block;font-size:12px;color:#655a4e;margin-bottom:10px}.fineprint{font-size:11px!important;line-height:1.7}.pied-bas{border-top:1px solid #d9cec0;margin-top:40px;padding-top:24px;font-size:11px;color:#716456;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px}.pied-bas>p{flex-basis:100%;margin:0}.pied-bas>div{display:flex;flex-wrap:wrap;gap:20px}.privacy-settings{border:0;background:none;padding:0;color:var(--accent);font-size:11px}.mobile-cta{display:none}.saut-contenu{position:absolute;left:16px;top:-80px;background:#fff;padding:12px;z-index:100}.saut-contenu:focus{top:12px}.apparition{opacity:0;transform:translateY(20px);transition:opacity .65s,transform .65s}.apparition.revealed{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,.apparition{transition:none!important;transform:none!important}.apparition{opacity:1}}
.breadcrumb{font-size:11px;color:var(--muted);padding:26px 0}.breadcrumb a{color:var(--muted)}.une-page{padding:32px 0 48px;max-width:900px}.une-page h1{font-size:clamp(34px,4vw,54px)}.une-page .intro{font-size:18px;color:var(--muted);max-width:750px}.guide-colonnes{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:64px;align-items:start}.guide-texte>section{margin-bottom:48px}.guide-texte h2{font-size:30px}.guide-texte h3{font-size:21px;margin-top:30px}.guide-texte p,.guide-texte li{color:#62594f}.guide-texte ul{padding-left:22px}.guide-texte li{margin-bottom:12px}.article-banner{height:340px;width:100%;border-radius:14px;margin-bottom:40px}.note{border-left:3px solid var(--primary);background:#eee5d9;padding:24px;border-radius:0 10px 10px 0;margin:28px 0;font-size:14px}.note p:last-child{margin-bottom:0}.sidebar{position:sticky;top:122px;background:#fff;border:1px solid var(--line);padding:28px;border-radius:12px}.sidebar h2{font-size:22px}.sidebar p{font-size:13px;color:var(--muted)}.sidebar a:not(.button){display:block;font-size:13px;padding:10px 0;border-bottom:1px solid var(--line)}.sidebar .button{width:100%;margin-top:24px}.tableau-defile{overflow-x:auto;border:1px solid var(--line);border-radius:10px;margin:24px 0}table{border-collapse:collapse;width:100%;background:#fff;min-width:500px;font-size:13px}th,td{text-align:left;padding:16px;border-bottom:1px solid var(--line)}th{background:#eee5d9;color:var(--ink)}.quote-layout{display:grid;grid-template-columns:330px minmax(0,1fr);gap:48px;padding-bottom:64px}.panneau-devis{border:1px solid var(--line);border-radius:16px;background:#fff;padding:30px}.panneau-devis h2{font-size:24px}.panneau-devis p{font-size:14px;color:var(--muted)}.quote-iframe{width:100%;height:1050px;border:0;background:white;border-radius:12px}.consent{padding:44px;background:#eee5d9;border-radius:12px}.consent h2{font-size:28px}.consent p{font-size:14px}.consent .button{cursor:pointer}.quote-info{font-size:12px;color:var(--muted);margin-top:16px}.filters{display:grid;grid-template-columns:1.5fr 1fr 1fr auto;gap:16px;padding:24px;background:#eee5d9;border-radius:12px;margin-bottom:32px;align-items:end}.filters label{display:block;font-size:12px;font-weight:700;margin-bottom:6px}.filters .button{min-height:49px}.directory-group{margin-bottom:40px}.directory-group>h2{font-size:28px}.directory-group h3{font-size:18px;margin:24px 0 14px}.directory-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.directory-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:22px;display:block;color:var(--ink)}.directory-card:hover{border-color:var(--primary);text-decoration:none}.directory-card strong{display:block;font-size:17px}.directory-card span{display:block;font-size:12px;color:var(--muted);margin-top:8px}.directory-card .arrow{color:var(--accent)}.pagination{display:flex;gap:12px;margin:32px 0}.pagination a,.pagination span{border:1px solid var(--line);padding:8px 15px;border-radius:8px}.pagination [aria-current]{background:var(--accent);color:#fff}.legal{max-width:850px;padding-bottom:64px}.legal h2{font-size:25px;margin-top:40px}.legal p{font-size:15px}.related{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:30px}.related a{border:1px solid var(--line);border-radius:8px;padding:18px;font-size:14px;background:white}[hidden]{display:none!important}
@media(min-width:1400px){.hero{gap:80px}}@media(max-width:1080px){nav{gap:14px}nav>a{font-size:11px}.brand{font-size:21px}.hero{gap:36px}.hero-photo>img{height:470px}.guide-colonnes{gap:32px}.pied-colonnes{gap:40px}}@media(max-width:900px){.bouton-menu{display:flex;gap:12px;padding:10px 15px;border:1px solid var(--line);border-radius:6px;background:transparent;font-size:13px}.entete-contenu{min-height:80px}nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--bg);padding:24px;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:18px}nav.open{display:flex}nav>a{font-size:15px}.hero{gap:28px}.hero h1{font-size:44px}.hero-photo>img{height:460px;border-top-left-radius:90px}.actions-une{gap:18px}.grille-atouts{grid-template-columns:repeat(2,1fr)}.cards{gap:16px}.card-body{padding:22px}.split{gap:32px}.estimateur{gap:32px;padding:32px}.city-section{gap:32px}.city-links{grid-template-columns:repeat(2,1fr)}.bande-appel{padding:36px;gap:24px}.guide-colonnes{grid-template-columns:1fr}.sidebar{position:static;display:block}.quote-layout{grid-template-columns:1fr}.panneau-devis{max-width:none}.filters{grid-template-columns:1fr 1fr}.directory-card-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.container{width:calc(100% - 36px)}.topbar{font-size:10px}.topbar span{display:none}.brand{font-size:22px}.brand small{font-size:7px}.brand svg{width:32px}.hero{grid-template-columns:1fr;padding-top:36px;padding-bottom:36px;gap:32px}.hero h1{font-size:43px;max-width:500px}.hero p{font-size:15px}.une-points{gap:14px;font-size:10px}.hero-photo{padding-bottom:18px;margin-left:10px}.hero-photo>img{height:330px;border-top-left-radius:90px}.note-photo{left:-10px;padding:16px 20px}.note-photo strong{font-size:13px}.note-photo span{font-size:11px}.benefits{padding:24px 0}.grille-atouts{gap:20px 12px}.benefit{gap:9px;align-items:start}.benefit svg{width:24px;height:24px}.benefit strong{font-size:11px}.benefit span{font-size:10px}.section{padding:48px 0}.tete-section{display:block}.tete-section p{margin-top:20px}.cards,.split,.steps,.estimateur,.city-section{grid-template-columns:1fr}.cards{gap:20px}.card img,.card-visual{height:220px}.split{gap:32px}.split-image{height:320px}.steps{gap:24px}.etape-numero{margin-bottom:15px}.estimateur{margin:48px 0;padding:24px;gap:24px}.budget-form{padding:22px}.estimate output{font-size:25px}.city-section{gap:24px}.city-links{gap:8px}.city-links a{padding:11px 12px}.faq{margin:48px auto}.faq h2{font-size:29px}summary{font-size:14px;padding:20px 0}.bande-appel{display:block;padding:30px 24px;margin:48px 0}.bande-appel h2{font-size:29px}.bande-appel .button{margin-top:24px}.pied-colonnes{grid-template-columns:1fr 1fr;gap:28px}.pied-colonnes>div:first-child{grid-column:1/-1}.pied-charpente{padding-top:40px;padding-bottom:100px}.pied-bas{font-size:10px}.mobile-cta{display:block;position:fixed;bottom:14px;left:18px;right:18px;z-index:25;background:var(--accent);color:white;text-align:center;padding:14px;border-radius:8px;font-size:14px;font-weight:700;box-shadow:0 4px 24px #302b2733}.une-page{padding-top:18px}.une-page .intro{font-size:16px}.une-page h1{font-size:36px}.guide-texte h2{font-size:27px}.article-banner{height:240px}.guide-colonnes{gap:24px}.quote-layout{gap:24px}.consent{padding:26px}.quote-iframe{height:1250px}.filters{grid-template-columns:1fr;padding:20px}.directory-card-grid{grid-template-columns:1fr}.related{grid-template-columns:1fr}.pied-bas>div{gap:12px}.breadcrumb{padding:20px 0}.legal{padding-bottom:30px}}
/* --- Consentement au service partenaire --------------------------------
   Le bandeau est pose en bas plutot qu en plein ecran : il n empeche pas
   de lire la page, ce qui serait a la fois penible et mal vu de Google sur
   mobile. Le cadre d attente, lui, occupe la place exacte du formulaire
   pour que la mise en page ne bouge pas une fois celui-ci accepte. */
.combles-cadre{min-height:420px}
.combles-attente{background:#eee5d9;border:1px solid var(--line);border-radius:12px;
  padding:36px 32px;display:grid;gap:14px;align-content:start}
.combles-attente h3{font-size:21px;margin:0}
.combles-attente p{font-size:14px;color:#62594f;margin:0}
.combles-attente .button{justify-self:start;margin-top:6px}
.combles-attente .lien-file{justify-self:start;font-size:13px}

.combles-bandeau{position:fixed;left:0;right:0;bottom:0;z-index:60;
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;
  gap:20px 32px;padding:20px 28px max(20px,calc(env(safe-area-inset-bottom,0px) + 14px));
  background:#302b27;color:#f6efe4;
  box-shadow:0 -12px 40px rgba(48,43,39,.28);
  transform:translateY(102%);transition:transform .26s ease-out}
.combles-bandeau.visible{transform:none}
.combles-bandeau-texte{flex:1 1 440px;min-width:0}
.combles-bandeau-texte strong{display:block;font-size:15px;margin-bottom:6px}
.combles-bandeau-texte p{margin:0;font-size:13px;line-height:1.6;color:#d8cdbd}
.combles-bandeau-texte a{color:#f0c6a8;text-decoration:underline}
.combles-bandeau-choix{display:flex;flex-wrap:wrap;gap:12px;flex-shrink:0}
.combles-bandeau-choix .button{padding:13px 20px;font-size:13px}
.combles-bandeau-choix .button.outline{color:#f6efe4;border-color:#6b6057;background:transparent}
.combles-bandeau-choix .button.outline:hover{background:#413a34}
.rouvrir-choix{border:0;background:none;padding:0;color:inherit;font:inherit;
  text-decoration:underline;cursor:pointer}
@media(max-width:650px){
  .combles-bandeau{padding:18px 18px max(18px,calc(env(safe-area-inset-bottom,0px) + 12px));
    bottom:62px}
  .combles-bandeau-choix{width:100%}
  .combles-bandeau-choix .button{flex:1 1 auto;justify-content:center}
  .combles-attente{padding:26px 22px}
}
@media(prefers-reduced-motion:reduce){.combles-bandeau{transition:none}}
