:root{--accent:#F28C1F;--accent-hover:#D9770B;--accent-soft:#FDF0E1;--accent-ring:rgba(242,140,31,.28);--accent-strong:#BC5A00;--accent-strong-hover:#A34E00;--bg:#FBF8F3;--bg-alt:#F4EFE7;--surface:#FFFFFF;--surface-2:#FCFAF6;--ink:#1A1815;--ink-2:#4A453E;--ink-3:#7A7165;--line:#E7E1D6;--line-strong:#D8D0C2;--success:#2E9E5B;--danger:#D14545;--shadow-xs:0 1px 2px rgba(26,24,21,.04);--shadow-sm:0 2px 8px rgba(26,24,21,.06);--shadow-md:0 8px 24px rgba(26,24,21,.08);--shadow-lg:0 20px 48px rgba(26,24,21,.12);--shadow-accent:0 8px 24px rgba(242,140,31,.28);--r-sm:8px;--r-md:14px;--r-lg:20px;--r-pill:999px;--font-display:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--font-body:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--font-mono:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--container:1200px;--pad-x:32px;--section-y:96px;--hauteur-entete:72px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);background:var(--bg);color:var(--ink);line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.conteneur{width:100%;max-width:var(--container);margin:0 auto;padding:0 var(--pad-x)}.section{padding:var(--section-y) 0}.section-alternee{background:var(--bg-alt)}.surtitre{font-family:var(--font-mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-weight:600;margin-bottom:14px;display:block}h1{font-family:var(--font-display);font-weight:700;font-size:60px;line-height:1.05;letter-spacing:-.02em}h2{font-family:var(--font-display);font-weight:700;font-size:34px;line-height:1.12;letter-spacing:-.015em;color:var(--ink)}h3{font-family:var(--font-body);font-weight:600;font-size:20px;line-height:1.3;color:var(--ink)}p{color:var(--ink-2);font-size:16px}.accroche{color:var(--ink-2);font-size:18px;line-height:1.6}.section-entete{max-width:700px;margin:0 auto 52px;text-align:center}.section-entete h2{margin-bottom:14px}.section-entete .surtitre{margin-left:auto;margin-right:auto}.surligne{color:inherit}.bouton{font-family:var(--font-body);font-weight:600;font-size:14.5px;border-radius:var(--r-pill);padding:13px 26px;cursor:pointer;border:1px solid transparent;transition:all .18s ease;display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap}.bouton-principal{background:var(--accent-strong);color:#fff;box-shadow:var(--shadow-accent)}.bouton-principal:hover{background:var(--accent-strong-hover);transform:translateY(-1px)}.bouton-secondaire{background:var(--surface);color:var(--ink);border-color:var(--line-strong)}.bouton-secondaire:hover{border-color:var(--ink);background:var(--surface-2)}.bouton-discret{background:transparent;color:var(--accent-hover);padding-left:6px;padding-right:6px}.bouton-discret:hover{color:var(--accent)}.bouton-discret-clair{color:#fff}.bouton-discret-clair:hover{color:var(--accent-soft)}.bouton-grand{font-size:16px;padding:16px 32px}.bouton-petit{font-size:13px;padding:9px 18px}.bouton-pleine-largeur{width:100%}.entete{position:fixed;top:0;left:0;right:0;z-index:100;height:var(--hauteur-entete);display:flex;align-items:center;background:rgba(251,248,243,0);transition:background .3s ease,box-shadow .3s ease,backdrop-filter .3s ease}.entete.defile{background:rgba(251,248,243,.82);backdrop-filter:saturate(160%) blur(12px);-webkit-backdrop-filter:saturate(160%) blur(12px);box-shadow:var(--shadow-sm);border-bottom:1px solid var(--line)}.entete-contenu{display:flex;align-items:center;justify-content:space-between;gap:24px}.logo{display:inline-flex;align-items:center}.logo img{height:60px;width:auto;display:block}.logo-pied img{height:76px}.logo-icone{width:38px;height:38px;border-radius:10px;background:var(--accent);color:#fff;display:grid;place-items:center;flex-shrink:0;box-shadow:var(--shadow-accent)}.logo-texte strong{color:var(--accent-hover);font-weight:700}.navigation{display:flex;gap:6px}.navigation a{font-size:14.5px;font-weight:600;color:var(--ink-2);padding:8px 14px;border-radius:var(--r-pill);transition:color .18s,background .18s}.navigation a:hover{color:var(--ink);background:rgba(242,140,31,.08)}.entete-actions{display:flex;align-items:center;gap:16px}.entete-telephone{display:inline-flex;align-items:center;gap:7px;font-family:var(--font-mono);font-size:13px;font-weight:700;color:var(--ink-2);transition:color .18s}.entete-telephone:hover{color:var(--accent-hover)}.bascule-menu{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:8px}.bascule-menu span{width:24px;height:2px;background:var(--ink);border-radius:2px;transition:transform .25s,opacity .25s,background .3s ease}.bascule-menu[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.bascule-menu[aria-expanded="true"] span:nth-child(2){opacity:0}.bascule-menu[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.entete:not(.defile) .logo{color:#fff}.entete:not(.defile) .logo-texte strong{color:#fff}.entete:not(.defile) .navigation a{color:rgba(255,255,255,.88)}.entete:not(.defile) .navigation a:hover{color:#fff;background:rgba(255,255,255,.14)}.entete:not(.defile) .entete-telephone{color:rgba(255,255,255,.88)}.entete:not(.defile) .entete-telephone:hover{color:#fff}.entete:not(.defile) .bascule-menu span{background:#fff}.entete:not(.defile) .entete-actions .bouton-principal{background:#fff;color:var(--ink);box-shadow:var(--shadow-sm)}.entete:not(.defile) .entete-actions .bouton-principal:hover{background:var(--surface-2);color:var(--ink)}.banniere{position:relative;min-height:min(88vh,760px);display:flex;align-items:center;padding:calc(var(--hauteur-entete)+170px) 0 180px;overflow:hidden}.banniere-image{position:absolute;inset:0;background-image:linear-gradient(120deg,rgba(20,18,15,.72),rgba(20,18,15,.35)),url("public/images/fond-couvreur.webp");background-size:cover;background-position:center;transform:scale(1.04)}.banniere-voile{position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,18,15,.68) 0%,rgba(20,18,15,.30) 60%,rgba(20,18,15,.15) 100%)}.banniere-contenu{position:relative;z-index:2;color:#fff;text-align:left;display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center;padding-top:110px;padding-bottom:90px}.banniere-texte{max-width:600px}.banniere h1{color:#fff;margin-bottom:22px}.banniere-accroche{color:rgba(255,255,255,.86);font-size:19px;margin-bottom:32px}.banniere-actions{display:flex;gap:16px;flex-wrap:wrap;align-items:center;margin-bottom:38px}.banniere-labels{list-style:none;display:flex;gap:26px;flex-wrap:wrap}.banniere-labels li{display:inline-flex;align-items:center;gap:9px;font-size:14px;font-weight:600;color:rgba(255,255,255,.9)}.point{width:8px;height:8px;border-radius:3px;background:var(--accent);flex-shrink:0;box-shadow:0 0 0 4px rgba(242,140,31,.22)}.banniere-formulaire-cadre{justify-self:end;width:100%;max-width:440px}.banniere-formulaire{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:26px;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:14px}.banniere-formulaire-entete{text-align:left;margin-bottom:2px}.banniere-formulaire-entete h2{font-size:23px;color:var(--ink);margin-bottom:4px}.banniere-formulaire-entete p{font-size:14px;color:var(--ink-3)}.banniere-formulaire .champ{gap:6px}.banniere-formulaire .champ label{font-size:12.5px}.banniere-formulaire .champ input,.banniere-formulaire .champ textarea{padding:10px 12px;font-size:14.5px}.banniere-formulaire .champ-rangee{gap:14px}.apropos-grille{display:grid;grid-template-columns:1.05fr .95fr;grid-template-areas:"entete visuel" "corps visuel";column-gap:79px;align-items:start}.apropos-entete{grid-area:entete;margin-bottom:18px}.apropos-visuel{grid-area:visuel;align-self:center}.apropos-corps{grid-area:corps}.apropos-corps .accroche{margin:0 0 18px}.apropos-corps p{margin-bottom:16px}.apropos-chiffres{display:flex;gap:16px;flex-wrap:wrap;margin-top:32px}.carte-chiffre{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:18px 22px;box-shadow:var(--shadow-md);flex:1;min-width:120px}.carte-chiffre-grand{font-family:var(--font-display);font-size:38px;font-weight:700;color:var(--accent);line-height:1}.carte-chiffre-libelle{font-size:12.5px;color:var(--ink-3);margin-top:6px}.apropos-visuel{position:relative}.apropos-image{width:100%;height:auto;border-radius:var(--r-lg);box-shadow:var(--shadow-lg);border:1px solid var(--line);background:var(--bg-alt)}.apropos-flottant{position:absolute;left:-22px;bottom:34px;display:flex;align-items:center;gap:13px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:14px 18px;box-shadow:var(--shadow-lg)}.apropos-flottant-icone{width:40px;height:40px;border-radius:10px;flex-shrink:0;background:var(--accent-soft);color:var(--accent-hover);display:grid;place-items:center}.apropos-flottant b{display:block;font-size:14px;color:var(--ink)}.apropos-flottant span{font-size:12.5px;color:var(--ink-3)}.services-liste{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.service-carte{position:relative;overflow:hidden;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:22px;padding:20px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-xs);color:var(--ink);transition:box-shadow .25s ease,border-color .25s ease,transform .25s ease}.service-carte::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--accent);transform:scaleY(0);transform-origin:top;transition:transform .25s ease;z-index:2}.service-carte:hover{border-color:var(--line-strong);box-shadow:var(--shadow-md);transform:translateY(-3px)}.service-carte:hover::before{transform:scaleY(1)}.service-media{width:112px;height:112px;flex-shrink:0;border-radius:var(--r-md);overflow:hidden;background:linear-gradient(150deg,var(--accent-soft),var(--surface-2));border:1px solid var(--line)}.service-media img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.service-carte:hover .service-media img{transform:scale(1.06)}.service-contenu h3{margin-bottom:5px;font-size:18.5px;transition:color .2s}.service-carte:hover .service-contenu h3{color:var(--accent-hover)}.service-contenu p{font-size:14px;color:var(--ink-2)}.service-fleche{width:42px;height:42px;border-radius:var(--r-pill);flex-shrink:0;border:1px solid var(--line-strong);color:var(--ink-3);display:grid;place-items:center;transition:transform .25s ease,background .25s,border-color .25s,color .25s}.service-fleche svg{width:18px;height:18px}.service-fleche-txt{display:none}.service-carte:hover .service-fleche{background:var(--accent);border-color:var(--accent);color:#fff;transform:translateX(4px)}.types-grille{display:grid;grid-template-columns:repeat(3,1fr)}.type-carte{padding:0 36px}.type-carte:not(:first-child){border-left:1px solid var(--line)}.type-media{aspect-ratio:4/3;margin-bottom:24px;border-radius:var(--r-lg);overflow:hidden;background:linear-gradient(150deg,var(--accent-soft),var(--surface-2));border:1px solid var(--line);box-shadow:var(--shadow-sm)}.type-media img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.type-carte:hover .type-media img{transform:scale(1.05)}.type-carte h3{font-size:22px;font-weight:700;margin-bottom:12px}.type-carte p{font-size:15px;color:var(--ink-2)}.raisons-grille{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.raison-carte{position:relative;overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:34px 30px;box-shadow:var(--shadow-sm);transition:transform .2s ease,box-shadow .2s ease}.raison-carte:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.raison-numero{position:absolute;top:18px;right:22px;font-family:var(--font-display);font-size:52px;font-weight:700;color:var(--line);line-height:1}.raison-icone{width:56px;height:56px;border-radius:var(--r-md);background:var(--accent);color:#fff;box-shadow:var(--shadow-accent);display:grid;place-items:center;margin-bottom:22px;position:relative;z-index:1}.raison-icone svg{width:28px;height:28px}.raison-carte h3{margin-bottom:10px}.raison-carte p{font-size:14.5px}.avis-grille{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:1200px;margin:0 auto}.avis-carte{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:26px;margin:0;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:16px;transition:transform .2s ease,box-shadow .2s ease}.avis-carte:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}.etoiles{color:var(--accent);letter-spacing:3px;font-size:16px}.avis-texte{color:var(--ink);font-size:15.5px;line-height:1.6;font-style:italic;margin:0;flex:1}.avis-auteur{display:flex;align-items:center;gap:12px;margin-top:auto}.avis-initiales{width:42px;height:42px;border-radius:50%;flex-shrink:0;background:linear-gradient(135deg,#F9A94A 0%,var(--accent) 45%,var(--accent-hover) 100%);color:#fff;box-shadow:var(--shadow-accent);display:grid;place-items:center;font-weight:700;font-size:14px}.avis-auteur b{display:block;font-size:14.5px;color:var(--ink);text-align:left}.avis-auteur div span{font-size:12.5px;color:var(--ink-3)}.faq-cadre{max-width:820px}.faq-liste{display:flex;flex-direction:column;gap:14px}.faq-question{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-xs);overflow:hidden;transition:border-color .2s,box-shadow .2s}.faq-question[open]{border-color:var(--line-strong);box-shadow:var(--shadow-sm)}.faq-question summary{list-style:none;cursor:pointer;padding:20px 24px;font-weight:600;font-size:16px;color:var(--ink);display:flex;align-items:center;justify-content:space-between;gap:16px}.faq-question summary::-webkit-details-marker{display:none}.faq-question summary::after{content:"";width:11px;height:11px;flex-shrink:0;border-right:2px solid var(--accent);border-bottom:2px solid var(--accent);transform:rotate(45deg);transition:transform .25s ease;margin-top:-3px}.faq-question[open] summary::after{transform:rotate(-135deg);margin-top:3px}.faq-reponse{padding:0 24px 22px}.faq-reponse p{font-size:15px;color:var(--ink-2)}.devis-intro{text-align:center;max-width:660px;margin:0 auto 40px}.devis-intro .surtitre{margin-left:auto;margin-right:auto}.devis-intro .accroche{margin-bottom:24px}.devis-points{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:14px 26px}.devis-points li{display:flex;align-items:center;gap:11px;font-size:15px;color:var(--ink-2);font-weight:600}.devis-formulaire{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:38px 48px;box-shadow:var(--shadow-lg);display:grid;grid-template-columns:repeat(6,1fr);gap:18px;align-items:start}.champ-nom{grid-column:span 2}.champ-tel{grid-column:span 2}.champ-email{grid-column:span 2}.champ-ville{grid-column:span 2}.champ-cp{grid-column:span 1}.champ-projet{grid-column:span 3}.champ-message{grid-column:span 4}.devis-envoyer{grid-column:span 2;align-self:end;height:46px}.formulaire-succes{grid-column:1 / -1}.champ{display:flex;flex-direction:column;gap:7px}.champ-rangee{display:grid;grid-template-columns:1fr 1fr;gap:18px}.champ label{font-weight:600;font-size:13.5px;color:var(--ink-2)}.champ input,.champ select,.champ textarea{font-family:var(--font-body);font-size:15px;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-sm);padding:12px 14px;transition:border-color .18s,box-shadow .18s;width:100%}.champ textarea{resize:vertical;min-height:90px}.champ input::placeholder,.champ textarea::placeholder{color:var(--ink-3)}.champ input:focus,.champ select:focus,.champ textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.champ input.invalide,.champ select.invalide{border-color:var(--danger)}.erreur{font-size:13px;color:var(--danger);min-height:0}.formulaire-succes{font-size:14.5px;color:var(--success);font-weight:600;background:rgba(46,158,91,.08);border-radius:var(--r-sm);padding:12px 14px;text-align:center}.pied{background:var(--ink);color:rgba(255,255,255,.9)}.pied-appel{display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap;padding:56px var(--pad-x);border-bottom:1px solid rgba(255,255,255,.09)}.pied-appel h2{color:#fff;max-width:520px}.pied-appel .surtitre{margin-bottom:12px}.pied-principal{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:48px;padding:64px var(--pad-x) 48px}.logo-pied{color:#fff;font-size:20px;margin-bottom:18px}.logo-pied .logo-texte strong{color:var(--accent)}.pied-marque p{color:rgba(255,255,255,.9);font-size:14.5px;max-width:320px;margin-bottom:20px}.pied-labels{display:flex;gap:9px;flex-wrap:wrap}.pied-labels span{font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;color:rgba(255,255,255,.7);border:1px solid rgba(255,255,255,.16);border-radius:var(--r-pill);padding:5px 12px}.pied-colonne h3{font-family:var(--font-body);font-size:13px;font-weight:700;color:#fff;text-transform:uppercase;letter-spacing:.08em;margin-bottom:16px}.pied-colonne a{display:block;font-size:14.5px;color:rgba(255,255,255,.88);padding:5px 0;transition:color .18s,padding-left .18s}.pied-colonne a:hover{color:var(--accent);padding-left:4px}.pied-contact p{color:rgba(255,255,255,.88);font-size:14px;margin-top:12px}.pied-horaires{color:var(--accent);font-weight:600}.pied-contact a{color:rgba(255,255,255,.85);font-family:var(--font-mono);font-size:14px}.pied-bas{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:24px var(--pad-x);border-top:1px solid rgba(255,255,255,.09);font-size:12.5px;color:rgba(255,255,255,.8)}.pied-legal{display:flex;gap:22px}.pied-legal a{color:rgba(255,255,255,.8);transition:color .18s}.pied-legal a:hover{color:var(--accent)}.apparition{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}.apparition.visible{opacity:1;transform:none}.services-liste .apparition:nth-child(2){transition-delay:.06s}.services-liste .apparition:nth-child(3){transition-delay:.06s}.services-liste .apparition:nth-child(4){transition-delay:.12s}.services-liste .apparition:nth-child(5){transition-delay:.12s}.services-liste .apparition:nth-child(6){transition-delay:.18s}.raisons-grille .apparition:nth-child(2),.avis-grille .apparition:nth-child(2),.types-grille .apparition:nth-child(2){transition-delay:.08s}.raisons-grille .apparition:nth-child(3),.avis-grille .apparition:nth-child(3),.types-grille .apparition:nth-child(3){transition-delay:.16s}@media (prefers-reduced-motion:reduce){.apparition{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}.banniere-image{transform:none}}@media (max-width:960px){.banniere-contenu{grid-template-columns:1fr;gap:44px}.banniere-texte{max-width:640px}.banniere-formulaire-cadre{justify-self:start;max-width:520px}.apropos-grille{grid-template-columns:1fr;grid-template-areas:"entete" "visuel" "corps";column-gap:0;row-gap:28px}.apropos-entete{margin-bottom:0}.apropos-visuel{max-width:460px;align-self:start}.devis-formulaire{grid-template-columns:repeat(2,1fr)}.champ-nom,.champ-tel,.champ-email,.champ-ville,.champ-cp,.champ-projet{grid-column:auto}.champ-message{grid-column:1 / -1}.devis-envoyer{grid-column:1 / -1;height:auto}.raisons-grille{grid-template-columns:repeat(2,1fr)}.avis-grille{grid-template-columns:repeat(2,1fr);gap:20px}.types-grille{grid-template-columns:repeat(2,1fr);column-gap:32px;row-gap:40px}.type-carte{padding:0}.type-carte:not(:first-child){border-left:none}h1{font-size:46px}}@media (max-width:720px){:root{--pad-x:20px;--section-y:64px}.navigation,.entete-telephone{display:none}.entete-actions .bouton{display:none}.bascule-menu{display:flex}.navigation.ouvert{display:flex;flex-direction:column;gap:4px;position:absolute;top:var(--hauteur-entete);left:0;right:0;background:var(--surface);border-bottom:1px solid var(--line);box-shadow:var(--shadow-md);padding:16px var(--pad-x)}.navigation.ouvert a{padding:12px 14px}.entete:not(.defile) .navigation.ouvert a{color:var(--ink-2)}.entete:not(.defile) .navigation.ouvert a:hover{color:var(--ink);background:rgba(242,140,31,.08)}h1{font-size:38px}h2{font-size:26px}.accroche,.banniere-accroche{font-size:16.5px}.logo img{height:42px}.banniere{min-height:auto;padding:calc(var(--hauteur-entete)+56px) 0 64px;align-items:flex-start}.banniere-contenu{padding-top:100px;padding-bottom:70px}.banniere-actions{flex-direction:row;flex-wrap:nowrap;gap:10px}.banniere-actions .bouton{flex:1;white-space:normal;text-align:center;padding:13px 12px;font-size:14px}.banniere-labels{gap:14px}.services-liste{grid-template-columns:1fr;gap:16px}.service-carte{grid-template-columns:1fr auto;grid-template-areas:"media fleche" "contenu contenu";gap:16px 14px;align-items:center;padding:16px}.service-media{grid-area:media;width:100%;height:132px;aspect-ratio:auto}.service-fleche{grid-area:fleche;justify-self:end;width:auto;height:auto;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 14px;border-radius:var(--r-pill);background:transparent;border:1.5px solid var(--accent-strong);color:var(--accent-strong);box-shadow:none}.service-fleche svg{width:14px;height:14px}.service-fleche-txt{display:inline;font-weight:600;font-size:13px}.service-contenu{grid-area:contenu}.service-contenu h3{font-size:17px}.raisons-grille{grid-template-columns:1fr}.types-grille{grid-template-columns:1fr;gap:32px}.avis-grille{grid-template-columns:1fr;gap:16px}.avis-carte{padding:22px}.avis-texte{font-size:15px}.apropos-chiffres{gap:12px}.apropos-flottant{left:0;right:auto}.champ-rangee{grid-template-columns:1fr}.champ-rangee-duo{grid-template-columns:1fr 1fr;gap:12px}.devis-formulaire{grid-template-columns:1fr;padding:24px}.devis-formulaire .champ,.devis-envoyer{grid-column:auto}.devis-envoyer{align-self:auto;height:auto}.pied-principal{grid-template-columns:1fr;gap:32px;padding-top:48px}.pied-appel{padding:44px var(--pad-x)}.pied-bas{flex-direction:column;align-items:flex-start}}


/* ================= Pages légales ================= */
/* L'entête est transparent et en texte blanc tant qu'on n'a pas défilé :
   sur une page de texte à fond clair il serait illisible. On lui donne donc
   d'emblée son apparence « défilée ». */
.page-legale .entete{background:rgba(251,248,243,.92);backdrop-filter:saturate(160%) blur(12px);-webkit-backdrop-filter:saturate(160%) blur(12px);box-shadow:var(--shadow-sm);border-bottom:1px solid var(--line)}
.page-legale .entete:not(.defile) .logo,
.page-legale .entete:not(.defile) .logo-texte strong{color:var(--accent-hover)}
.page-legale .entete:not(.defile) .navigation a{color:var(--ink-2)}
.page-legale .entete:not(.defile) .navigation a:hover{color:var(--ink);background:rgba(242,140,31,.08)}
.page-legale .entete:not(.defile) .bascule-menu span{background:var(--ink)}
.page-legale .entete:not(.defile) .entete-actions .bouton-principal{background:var(--accent-strong);color:#fff;box-shadow:var(--shadow-accent)}

.conteneur-etroit{max-width:760px}
.legal{padding-top:calc(var(--hauteur-entete) + 56px)}
.legal h1{font-family:var(--font-display);font-size:40px;line-height:1.12;letter-spacing:-.02em;margin-bottom:10px}
.legal h2{font-size:22px;margin:38px 0 12px}
.legal h3{font-size:17px;margin:24px 0 8px}
.legal p,.legal li{font-size:15.5px;color:var(--ink-2);line-height:1.7}
.legal p{margin-bottom:14px}
.legal ul,.legal ol{margin:0 0 16px 20px}
.legal li{margin-bottom:7px}
.legal a{color:var(--accent-hover);text-decoration:underline;text-underline-offset:2px}
.legal a:hover{color:var(--accent-strong)}
.legal strong{color:var(--ink)}
.legal__fil ol{list-style:none;display:flex;gap:8px;margin:0 0 22px;padding:0;font-size:13px;color:var(--ink-3)}
.legal__fil li+li::before{content:"›";margin-right:8px;color:var(--line-strong)}
.legal__maj{font-size:13px;color:var(--ink-3);margin-bottom:28px}
.legal__note{background:var(--bg-alt);border:1px solid var(--line);border-radius:var(--r-md);padding:16px 20px;font-size:14.5px}
@media (max-width:720px){.legal h1{font-size:30px}.legal h2{font-size:19px}}

/* ---- case de consentement du formulaire ---- */
.champ-consentement{display:flex;align-items:flex-start;gap:10px;font-size:12.5px;color:var(--ink-3);line-height:1.5}
.champ-consentement input[type="checkbox"]{width:16px;height:16px;flex:0 0 16px;margin-top:1px;accent-color:var(--accent-strong);cursor:pointer}
.champ-consentement label{font-size:12.5px;color:var(--ink-3);font-weight:400;cursor:pointer}
.champ-consentement a{color:var(--accent-hover);text-decoration:underline}
.champ-consentement.invalide label{color:var(--danger)}



/* ---- formulaire devis : le bouton reprend sa place à droite du message ----
   Le message est resserré (3 colonnes sur 6) pour laisser à la colonne
   d'action de quoi afficher la case de consentement au-dessus du bouton. */
.champ-message{grid-column:span 3}
.devis-action{grid-column:span 3;display:flex;flex-direction:column;justify-content:center;gap:12px;align-self:stretch}
.devis-action .champ-consentement{margin:0}
.devis-formulaire .devis-envoyer{grid-column:auto;justify-self:stretch;align-self:auto;width:100%;height:46px;min-width:0}
@media (max-width:960px){
  .champ-message{grid-column:1 / -1}
  .devis-action{grid-column:1 / -1}
}
