:root{--anth:#16281E;--anth-2:#22392B;--fond:#F4F2EC;--trait:#D9D6CB;--cuivre:#E8892B;--cuivre-d:#F09A45;--or-txt:#9A4F0E;--gris:#59605A;--blanc:#fff;
--f-t:"Archivo",system-ui,sans-serif;--f-b:"Source Sans 3",system-ui,-apple-system,"Segoe UI",sans-serif}
*{box-sizing:border-box;margin:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:var(--f-b);font-size:1.075rem;line-height:1.62;color:var(--anth);background:var(--fond)}
img{display:block;max-width:100%;height:auto}a{color:inherit}:focus-visible{outline:3px solid var(--cuivre);outline-offset:3px}
.wrap{width:min(1140px,100% - 2.5rem);margin-inline:auto}
h1,h2,h3{font-family:var(--f-t);line-height:1.08;letter-spacing:-.01em}h2{font-size:clamp(1.65rem,4.2vw,2.4rem);max-width:24ch}
.evit{position:absolute;left:-999px;top:0;z-index:30;background:#fff;padding:.6rem 1rem;font-weight:600}.evit:focus{left:1rem;top:1rem}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:.75rem 1.3rem;border-radius:4px;font:600 1rem var(--f-b);text-decoration:none;border:0;cursor:pointer}
.btn-c{background:var(--cuivre);color:#16281E}.btn-c:hover{background:var(--cuivre-d)}.btn-l{border:1.5px solid var(--cuivre);color:#fff}
.top{background:var(--anth);color:#fff;position:sticky;top:0;z-index:20;border-bottom:1px solid #2C4636}
.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-block:.75rem}
.logo{display:flex;align-items:center;gap:.65rem;text-decoration:none}.logo img{width:48px;height:48px;border-radius:4px}.logo b{color:#fff}.logo small{color:var(--cuivre)!important}.logo b{font-family:var(--f-t);font-size:1.12rem;letter-spacing:.01em}.logo small{display:block;font-size:.78rem;color:#B6C0C4}
.nav{display:none;gap:1.4rem;align-items:center;font-weight:600}.nav a{text-decoration:none;color:#D9E0E2}.nav a:hover{color:#fff}.nav a.btn{color:#16281E}.nav a.btn:hover{color:#16281E}
.hero{background:var(--anth);color:#fff;position:relative;overflow:hidden}
.hero .wrap{display:grid;gap:2rem;padding:2.4rem 0 3rem;position:relative;z-index:1}
.hero h1{font-size:clamp(2.1rem,6.6vw,3.6rem);max-width:15ch}.devise{font-family:"Dancing Script",cursive;font-size:clamp(1.35rem,3.6vw,1.7rem);color:var(--cuivre);margin-top:1rem;line-height:1.3}
.hero-logo{display:none}.footlogo{width:64px;height:64px;border-radius:8px}
.hero .lede{color:#D3DCD5;margin-top:1rem;max-width:50ch}
.hero .ctas{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.6rem}
.hero-img{border-radius:6px;overflow:hidden;box-shadow:0 20px 40px rgba(0,0,0,.5);border:1px solid #2C4636}
.hero-img img{width:100%;aspect-ratio:4/3;object-fit:cover}
.engag{list-style:none;padding:0;margin-top:1.5rem;display:grid;gap:.4rem;color:#E1E7E9}
.engag li{padding-left:1.5rem;position:relative}.engag li::before{content:"";position:absolute;left:0;top:.5em;width:.8rem;height:.55rem;border-left:2px solid var(--cuivre);border-top:2px solid var(--cuivre);transform:rotate(45deg) translate(2px,2px)}
.int .wrap{padding:2rem 0 2.6rem}.int h1{font-size:clamp(1.9rem,5.6vw,2.9rem);max-width:20ch}
.fil{font-size:.86rem;color:#AFC0B4;margin-bottom:.8rem}.fil a{color:var(--cuivre)}
section.s{padding:4rem 0}.blanc{background:#fff}
.intro{color:var(--gris);max-width:64ch;margin-top:.7rem}
.prest{display:grid;gap:1rem;margin-top:2rem}
.prest a{display:block;background:#fff;border:1px solid var(--trait);border-top:3px solid var(--cuivre);border-radius:4px;padding:1.1rem 1.2rem;text-decoration:none}
.prest a:hover{border-color:var(--anth-2)}.prest b{font-family:var(--f-t);font-size:1.12rem;display:block}.prest span{color:var(--gris);font-size:.95rem}
.etapes{list-style:none;padding:0;margin-top:2rem;display:grid;gap:1.4rem;counter-reset:e}
.etapes li{counter-increment:e;display:grid;grid-template-columns:3rem 1fr;gap:.15rem 1rem}
.etapes li::before{content:counter(e);grid-row:span 2;width:2.5rem;height:2.5rem;border-radius:50%;background:var(--anth);color:var(--cuivre);border:2px solid var(--cuivre);display:grid;place-items:center;font:700 1.05rem var(--f-t)}
.etapes b{font-family:var(--f-t);font-size:1.1rem}.etapes span{color:var(--gris)}
.photos{display:grid;gap:1rem;margin-top:1.8rem}
.photo{margin:0;background:#fff;border:1px solid var(--trait);border-radius:4px;overflow:hidden}
.photo img{width:100%;aspect-ratio:4/3;object-fit:cover}.photo figcaption{padding:.55rem .85rem;font-size:.88rem;color:var(--gris)}
.photo a{text-decoration:none}
.prose{max-width:70ch}.prose p+p{margin-top:.9rem}.prose h2{margin:2.3rem 0 .8rem;font-size:clamp(1.4rem,3.4vw,1.9rem)}
.prose ul{padding-left:1.2rem;margin-top:.5rem}.prose li{margin:.35rem 0}.prose a{color:var(--or-txt);font-weight:600}
.liens{display:flex;flex-wrap:wrap;gap:.45rem;list-style:none;padding:0;margin-top:1rem}
.liens a,.liens span{display:inline-block;background:#fff;border:1px solid var(--trait);border-radius:4px;padding:.4rem .8rem;text-decoration:none;font-size:.95rem}
.liens span{color:var(--gris)}
.faq{margin-top:1.4rem;border-top:1px solid var(--trait)}.faq details{border-bottom:1px solid var(--trait);padding:1rem 0}
.faq summary{font:600 1.06rem var(--f-t);cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:1rem}
.faq summary::-webkit-details-marker{display:none}.faq summary::after{content:"+";color:var(--or-txt);font-size:1.4rem;line-height:1}.faq details[open] summary::after{content:"–"}
.faq p{color:var(--gris);margin-top:.6rem}
.articles{display:grid;gap:1.2rem;margin-top:2rem}
.carte{background:#fff;border:1px solid var(--trait);border-radius:4px;overflow:hidden;text-decoration:none;display:flex;flex-direction:column}
.carte img{width:100%;aspect-ratio:16/10;object-fit:cover}.carte div{padding:1rem 1.1rem}.carte b{font-family:var(--f-t);font-size:1.1rem;display:block;line-height:1.2}
.carte span{color:var(--gris);font-size:.93rem;display:block;margin-top:.4rem}
.art-img{margin:1.6rem 0;border-radius:4px;overflow:hidden}.art-img img{width:100%;aspect-ratio:16/9;object-fit:cover}
.meta{color:#AFC0B4;font-size:.9rem;margin-top:.8rem}
.contact{background:var(--anth);color:#fff}.contact .wrap{display:grid;gap:2rem}
.contact p{color:#D3DCD5}.contact h2{color:#fff}.contact .coord a{color:var(--cuivre)}.coord{list-style:none;padding:0;margin-top:1.2rem;display:grid;gap:.5rem}.coord a{color:#fff;font-weight:600}
form.devis{background:#fff;color:var(--anth);border-radius:6px;padding:1.4rem;display:grid;gap:1rem}
.devis h2{font-size:1.4rem}.devis label{display:grid;gap:.35rem;font-weight:600;font-size:.93rem}
.devis input,.devis select,.devis textarea{font:inherit;font-weight:400;padding:.75rem .85rem;border:1.5px solid var(--trait);border-radius:4px;background:var(--fond);color:var(--anth);width:100%}
.devis input:focus,.devis select:focus,.devis textarea:focus{outline:none;border-color:var(--anth);background:#fff}
.devis .row{display:grid;gap:1rem}.devis small{color:var(--gris);font-size:.84rem}
.plan{background:#fff;border-top:1px solid var(--trait);padding:2.4rem 0}.plan .cols{display:grid;gap:1.6rem}
.plan h2{font-size:1.15rem}.plan ul{list-style:none;padding:0;margin-top:.7rem;font-size:.93rem;columns:2;column-gap:1.4rem}.plan li{margin:.25rem 0;break-inside:avoid}
.plan a{text-decoration:none;color:var(--gris)}.plan a:hover{color:var(--anth)}
footer{background:#0F1C15;color:#AFC0B4;border-top:1px solid #2C4636;font-size:.9rem;padding:2rem 0 6rem}footer .wrap{display:grid;gap:.8rem}footer b{color:#fff}
.barre{position:fixed;inset:auto 0 0 0;z-index:15;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:.5rem;padding:.6rem .8rem calc(.6rem + env(safe-area-inset-bottom,0px));background:rgba(22,40,30,.97);border-top:1px solid #2C4636}
@media(min-width:720px){.prest{grid-template-columns:1fr 1fr}.photos{grid-template-columns:1fr 1fr}.articles{grid-template-columns:1fr 1fr}.devis .row{grid-template-columns:1fr 1fr}}
@media(min-width:960px){.nav{display:flex}.hero .wrap{grid-template-columns:1.05fr .95fr;align-items:center;padding:3.6rem 0 4rem}
.prest{grid-template-columns:repeat(4,1fr)}.photos.trois{grid-template-columns:repeat(3,1fr)}.articles{grid-template-columns:repeat(3,1fr)}
.etapes{grid-template-columns:repeat(3,1fr)}.contact .wrap{grid-template-columns:.9fr 1.1fr;align-items:start}.plan .cols{grid-template-columns:1fr 1fr 1fr}.plan ul{columns:1}
.barre{display:none}footer{padding-bottom:2rem}}
.prose:has(.articles),.prose:has(.prest),.prose:has(.photos.trois){max-width:none}.prose .carte,.prose .prest a{color:var(--anth)}.prose .carte b{color:var(--anth)}
@media(min-width:960px){.photos.quatre{grid-template-columns:repeat(4,1fr)}}
.drop{position:relative;padding-block:.5rem}.drop .sub{display:none;position:absolute;top:100%;left:-1rem;background:#fff;border-radius:6px;box-shadow:0 14px 34px rgba(0,0,0,.28);padding:.5rem;min-width:270px;z-index:30}
.drop:hover .sub,.drop:focus-within .sub{display:grid}.drop .sub a{color:var(--anth);padding:.55rem .8rem;border-radius:4px;font-size:.96rem}.drop .sub a:hover{background:var(--fond);color:var(--anth)}
.burger{position:relative}.burger summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:.6rem;font-weight:600;color:#fff;border:1.5px solid var(--cuivre);border-radius:4px;padding:.45rem .85rem;min-height:44px}
.burger summary::-webkit-details-marker{display:none}.burger summary span{width:18px;height:2px;background:currentColor;box-shadow:0 -6px 0 currentColor,0 6px 0 currentColor}
.burger nav{position:absolute;right:0;top:calc(100% + .6rem);background:#fff;border-radius:6px;box-shadow:0 14px 34px rgba(0,0,0,.3);padding:.5rem;display:grid;width:min(88vw,320px);z-index:30}
.burger nav a{color:var(--anth);text-decoration:none;padding:.65rem .8rem;font-weight:600;border-radius:4px}.burger nav a:hover{background:var(--fond)}.burger nav a.subl{font-weight:400;padding:.45rem .8rem .45rem 1.7rem;font-size:.95rem;color:var(--gris)}
.hero-aa{min-height:min(86vh,720px);display:flex;align-items:center}.hero-aa .wrap{grid-template-columns:1fr!important;width:min(1140px,100% - 2.5rem)}
.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.hero-aa::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,28,21,.35) 0%,rgba(15,28,21,.78) 22%,rgba(15,28,21,.8) 100%);z-index:0}.hero-aa .wrap{padding-top:4.2rem!important}
.hero-aa .split{position:absolute;top:0;bottom:0;left:50%;width:3px;margin-left:-1px;background:var(--cuivre);z-index:1}
.tag{position:absolute;top:1rem;z-index:2;background:var(--cuivre);color:#16281E;font:700 .82rem var(--f-t);padding:.32rem .75rem;border-radius:3px;text-transform:uppercase;letter-spacing:.08em}.t1{right:calc(50% + .7rem)}.t2{left:calc(50% + .7rem)}
.hero-aa .ctas,.hero-aa h1,.hero-aa .lede,.hero-aa .engag{text-shadow:0 1px 12px rgba(0,0,0,.35)}
@media(min-width:960px){.tag{top:auto;bottom:1.1rem}.hero-aa .wrap{padding-top:3.6rem!important}.burger{display:none}.hero-aa::after{background:linear-gradient(90deg,rgba(15,28,21,.94) 0%,rgba(15,28,21,.82) 38%,rgba(15,28,21,.25) 72%,rgba(15,28,21,.1) 100%)}.hero-aa .wrap>div{max-width:600px}}
.lang{display:flex;gap:.3rem;margin-left:auto}.lang a{display:inline-grid;place-items:center;min-width:40px;min-height:40px;border:1.5px solid #3D5A48;border-radius:4px;color:#D9E0E2;text-decoration:none;font:700 .85rem var(--f-t);letter-spacing:.04em}.lang a.on{background:var(--cuivre);border-color:var(--cuivre);color:#16281E}.lang a:not(.on):hover{border-color:var(--cuivre);color:#fff}
@media(max-width:420px){.top .logo small{display:none}.lang a{min-width:36px}}
@media(min-width:960px){.lang{margin-left:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
