/* Pages services, chantiers et zone : complète la feuille principale */
.pg-hero{padding-top:clamp(124px,14vw,176px);padding-bottom:clamp(36px,4.5vw,60px)}
.pg-h1{font-size:clamp(42px,6.6vw,100px);margin-top:20px;max-width:15ch;overflow-wrap:break-word;hyphens:auto}
.pg-hero .lead{margin-top:24px;max-width:62ch}
.pg-hero .ctas,.pg-cta .ctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
.crumbs{font-size:11.5px;color:var(--fg-3);letter-spacing:.08em;text-transform:uppercase;margin-bottom:28px;display:flex;gap:8px;flex-wrap:wrap}
.crumbs a{color:var(--fg-2);text-decoration:none}
.crumbs a:hover{color:var(--or)}
.pg-sec{padding-block:clamp(44px,6vw,84px)}
.pg-sec.pt0{padding-top:0}
.pg-h{font-family:var(--display);font-weight:800;text-transform:uppercase;font-size:clamp(32px,3.8vw,56px);line-height:.95;margin-bottom:30px}
.narrow{max-width:880px}
.prose h2{font-family:var(--display);font-weight:800;text-transform:uppercase;font-size:clamp(28px,3.1vw,44px);line-height:.96;margin:52px 0 14px;color:var(--fg)}
.prose h2:first-child{margin-top:0}
.prose p{color:var(--fg-2);font-size:17px;line-height:1.68;margin-top:12px;max-width:68ch}
.prose b{color:var(--fg);font-weight:600}
.pg-sec .works{margin-top:0}
.works.one{grid-template-columns:1fr;max-width:1100px}
.works.one .ph img{aspect-ratio:3/2}
.vid{border-radius:18px;overflow:hidden;background:var(--s1)}
.vid video{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;background:#000}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 18px}
.card{display:flex;flex-direction:column;gap:6px;text-decoration:none;color:var(--fg)}
.card img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:18px;background:var(--s1);transition:transform .6s cubic-bezier(.2,.8,.2,1),filter .3s}
.card:hover img{transform:scale(1.02);filter:brightness(1.08)}
.card .mono{color:var(--or);font-size:11px;letter-spacing:.07em;text-transform:uppercase;margin-top:10px}
.card b{font-size:19px;font-weight:600;line-height:1.25}
.card:hover b{color:var(--or-2)}
.svcs{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:12px}
.svc{display:grid;grid-template-columns:1fr auto;gap:4px 16px;align-items:center;padding:20px 22px;border:1px solid var(--line);border-radius:18px;background:var(--s1);text-decoration:none;color:var(--fg);transition:border-color .2s,background .2s}
.svc b{font-size:18px;font-weight:600}
.svc span{grid-column:1;color:var(--fg-3);font-size:13px}
.svc svg{grid-row:1/3;grid-column:2;width:22px;height:22px;color:var(--or);transition:transform .2s}
.svc:hover{border-color:var(--or);background:var(--s2)}
.svc:hover svg{transform:translateX(4px)}
.pg-2col{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:clamp(32px,5vw,80px);align-items:start}
.facts{background:var(--s1);border:1px solid var(--line);border-radius:var(--r);padding:26px;position:sticky;top:100px}
.facts .mono{color:var(--or);font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.facts ul{list-style:none;padding:0;margin:10px 0 26px}
.facts li{padding:10px 0;border-bottom:1px solid var(--line);color:var(--fg);font-size:15.5px}
.facts p:last-child{color:var(--fg-2);margin-top:8px}
.pg-faq details{border-bottom:1px solid var(--line);padding:20px 0}
.pg-faq details:first-child{border-top:1px solid var(--line)}
.pg-faq summary{cursor:pointer;font-weight:600;font-size:18px;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px}
.pg-faq summary::-webkit-details-marker{display:none}
.pg-faq summary::after{content:"+";color:var(--or);font-size:26px;line-height:1;flex:none}
.pg-faq details[open] summary::after{content:"–"}
.pg-faq p{color:var(--fg-2);margin-top:12px;line-height:1.65;max-width:68ch}
.pg-cta{background:var(--s1);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.pg-cta .lead{margin-top:20px;max-width:56ch}
.zone-g+.zone-g{margin-top:64px}
.zone-g .lead{max-width:64ch}
/* accueil */
.home-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:40px}
.svcs.home{margin-top:40px}
.t-g.tg-ph{padding:0;justify-content:flex-end;min-height:340px;background:var(--s1)}
.t-g.tg-ph .txt .mono{color:var(--or-2);opacity:1;margin-bottom:6px}
@media(max-width:980px){.cards{grid-template-columns:1fr 1fr}.pg-2col{grid-template-columns:1fr}.facts{position:static}}
@media(max-width:600px){.cards{grid-template-columns:1fr}.pg-h1{font-size:clamp(38px,11vw,56px)}.prose p{font-size:16px}}
.pg-sec .works .ph img{aspect-ratio:4/3}
@media(min-width:981px){.works.c3{grid-template-columns:repeat(3,minmax(0,1fr))}.works.c2{grid-template-columns:repeat(2,minmax(0,1fr))}}

@media(min-width:981px){.fcols{grid-template-columns:1.2fr 1fr 1fr 1fr}}
.t-g.tg-ph>button img{object-position:50% 35%}
