.pq{display:grid;grid-template-columns:5fr 7fr;gap:56px;align-items:stretch}
.pq .ph{border-radius:12px;min-height:420px}
.pq .ph:hover img{transform:scale(1.05)}
.pq .g{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.carte{background:#fff;border:1px solid var(--ligne);border-radius:12px;padding:26px 24px;transition:transform .3s,box-shadow .3s,border-color .3s}
.carte:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(36,61,47,.12);border-color:transparent}
.carte .ico{width:52px;height:52px;border-radius:12px;background:var(--cl);color:var(--az);display:flex;align-items:center;justify-content:center;margin-bottom:18px;transition:background .3s,color .3s}
.carte .ico .ic{width:26px;height:26px}
.carte:hover .ico{background:var(--az);color:#fff}
.carte h3{font-size:18px;margin-bottom:10px}
.carte p{font-size:15px;color:var(--gris);margin:0}
@media(max-width:860px){.pq{grid-template-columns:1fr;gap:28px}.pq .ph{min-height:240px}}
@media(max-width:860px){.pq>.ph{display:none}}
@media(max-width:560px){.pq .g{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;padding-bottom:16px;scrollbar-width:none}.pq .g::-webkit-scrollbar{display:none}.pq .g .carte{flex:0 0 84%;scroll-snap-align:start}}
.ob{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.ob .o{background:#fff;border-radius:20px;overflow:hidden;border:1px solid var(--ligne);display:flex;flex-direction:column;transition:transform .3s,box-shadow .3s}
.ob .o:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(36,61,47,.12)}
.ob .o.cache{display:none}
.ob .ph{height:200px}
.ob .cb{padding:22px 24px 24px}
.ob h3{font-size:21px;margin-bottom:10px}
.ob .tags{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}
.ob .tags span{display:inline-flex;align-items:center;gap:5px;font:700 12px 'Nunito Sans',Arial;background:var(--fond);color:var(--az);border-radius:30px;padding:5px 10px}
.ob .tags span .ms{font-size:15px}
.ob .tags span.end{background:var(--az);color:#fff}
.ob p{margin:0;color:var(--encre);font-size:15.5px}
.ob .comp{margin-top:12px;padding-top:12px;border-top:1px dashed var(--ligne);font-size:14.5px;color:var(--gris)}
.ob .comp b{color:var(--nuit)}
.pratique{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.pratique .carte ol{margin:12px 0 0;padding-left:20px;color:var(--gris);font-size:15px}
.indices{display:flex;gap:6px;flex-wrap:wrap;margin-top:12px}
.indices span{background:var(--cl);color:var(--nuit);border-radius:30px;padding:5px 12px;font:700 13px 'Nunito Sans',Arial}
@media(max-width:900px){.ob,.pratique{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.ob,.pratique{grid-template-columns:1fr}}
.ob .comp{display:flex;gap:10px;align-items:flex-start;margin-top:14px;padding:12px 14px;border:none;border-radius:12px;background:var(--fond);font-size:14.5px;color:var(--encre)}
.ob .comp .ms{color:var(--az);font-size:22px}
.ob .comp b{display:block;font:700 12px 'Nunito Sans',Arial;letter-spacing:.08em;text-transform:uppercase;color:var(--az);margin-bottom:2px}
.ob .o .cb{display:flex;flex-direction:column;flex:1}.ob .o .comp{margin-top:auto}.ob .o p{margin-bottom:14px}
.ent{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:34px}
.ent .head{margin-bottom:0}
.fl{display:flex;gap:10px}
.fl button{width:48px;height:48px;border-radius:50%;border:none;background:var(--az);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .25s,transform .25s}
.fl button:hover{background:var(--nuit);transform:scale(1.06)}
.fl button:disabled{opacity:.35;cursor:default;transform:none}
.piste{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:6px 4px 26px;margin:0 -4px;scrollbar-width:none}
.piste::-webkit-scrollbar{display:none}
.piste .xp{flex:0 0 calc((100% - 48px)/3);scroll-snap-align:start}
.grille{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.xp{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 4px 18px rgba(36,61,47,.08);display:flex;flex-direction:column;transition:transform .35s,box-shadow .35s}
.xp:hover{transform:translateY(-8px);box-shadow:0 24px 46px rgba(36,61,47,.16)}
.xp .ph{height:220px}
.xp:hover .ph img{transform:scale(1.08)}
.xp .badge{position:absolute;left:14px;top:14px;z-index:2;display:inline-flex;align-items:center;gap:6px;background:#fff;color:var(--nuit);font:600 12.5px 'Nunito Sans',Arial;padding:7px 12px;border-radius:40px;box-shadow:0 4px 12px rgba(0,0,0,.12)}
.xp .badge .ic{width:15px;height:15px;color:var(--az)}
.xp .cb{padding:22px 22px 24px;display:flex;flex-direction:column;flex:1}
.xp .cat{display:inline-flex;align-items:center;gap:6px;font:600 11.5px 'Nunito Sans',Arial;letter-spacing:.12em;text-transform:uppercase;color:var(--az);margin-bottom:10px}
.xp .cat .ic{width:15px;height:15px}
.xp h3{font-size:19px;margin-bottom:10px}
.xp p{font-size:15px;color:var(--gris);flex:1}
.xp .pied{border-top:1px solid var(--ligne);padding-top:16px;margin-top:6px}
.bas{text-align:center;margin-top:20px}
.filtres{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin:-10px 0 34px}
.filtres button{font:500 14px 'Nunito Sans',Arial;border:1.5px solid var(--ligne);background:#fff;color:var(--nuit);padding:10px 18px;border-radius:40px;cursor:pointer;transition:all .25s}
.filtres button:hover{border-color:var(--az)}
.filtres button.on{background:var(--az);border-color:var(--az);color:#fff}
.grille .xp.cache{display:none}
.vide-msg{display:none;text-align:center;color:var(--gris)}
@media(max-width:620px){.grille{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:16px;padding:4px 2px 20px;scrollbar-width:none}.grille::-webkit-scrollbar{display:none}.grille .xp{flex:0 0 84%;scroll-snap-align:start}}
@media(max-width:900px){.piste .xp{flex-basis:calc((100% - 24px)/2)}.grille{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.piste .xp{flex-basis:84%}.grille{grid-template-columns:1fr}.ent .fl{display:none}.xp .ph{height:190px}.filtres{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;padding-bottom:6px;scrollbar-width:none}.filtres button{flex:none}}
.ti{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.ti.inv .cad{order:2}
.cad{position:relative;padding:0 22px 22px 0}
.cad:before{content:"";position:absolute;right:0;bottom:0;width:70%;height:70%;border:2px solid var(--cy);border-radius:10px}
.cad .ph{border-radius:10px;aspect-ratio:4/5;box-shadow:0 22px 50px rgba(36,61,47,.18)}
.cad.paysage .ph{aspect-ratio:4/3}
.cad:hover .ph img{transform:scale(1.05)}
.ti .txt p{color:var(--encre)}
.cite{margin:24px 0 0;padding:18px 22px;border-left:3px solid var(--cy);background:var(--fond);border-radius:0 8px 8px 0;font:italic 400 17px/1.6 'Nunito Sans',Arial;color:var(--nuit)}
.frise{display:flex;gap:10px;margin-top:26px;flex-wrap:wrap}
.frise div{flex:1 1 150px;background:#fff;border:1px solid var(--ligne);border-radius:8px;padding:14px 16px;transition:border-color .3s,transform .3s}
.frise div:hover{border-color:var(--cy);transform:translateY(-3px)}
.frise b{display:block;font:700 20px 'Nunito Sans',Arial;color:var(--az)}
.frise span{font-size:13.5px;color:var(--gris);line-height:1.4}
.coches{list-style:none;padding:0;margin:18px 0 26px;display:grid;gap:12px}
.coches li{display:flex;gap:12px;align-items:flex-start}
.coches .ic{width:24px;height:24px;color:var(--az);background:var(--cl);border-radius:50%;padding:4px;margin-top:1px}
@media(max-width:860px){.ti{grid-template-columns:1fr;gap:34px}.ti.inv .cad{order:0}.cad .ph{aspect-ratio:16/10}}
.bande{background:var(--cl)}
.bande .bx{display:flex;align-items:center;justify-content:space-between;gap:36px;flex-wrap:wrap}
.bande .bx>div{max-width:660px}
.bande h2{font-size:clamp(22px,2.6vw,30px);margin-bottom:12px}
.bande p{margin:0;color:var(--encre)}
.bande .ico{width:64px;height:64px;border-radius:50%;background:#fff;color:var(--az);display:flex;align-items:center;justify-content:center;flex:none}
.bande .ico .ic{width:30px;height:30px}
.pied-site{background:var(--nuit2);color:#cfe0d2;font-size:14.5px}
.pied-site .g{display:grid;grid-template-columns:1.4fr 1fr 1.2fr 1.2fr;gap:40px;padding:64px 0 44px}
.pied-site h4{color:#fff;font:600 13px 'Nunito Sans',Arial;letter-spacing:.14em;text-transform:uppercase;margin-bottom:18px}
.pied-site .nom{font:700 22px 'Nunito Sans',Arial;color:#fff;margin-bottom:6px}
.pied-site .role{color:var(--cy);font-size:13.5px;margin-bottom:16px}
.pied-site ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.pied-site li a{transition:color .2s,padding .2s}
.pied-site li a:hover{color:#fff;padding-left:4px}
.pied-site .ct{display:flex;gap:10px;align-items:flex-start}
.pied-site .ct .ic{width:18px;height:18px;color:var(--cy);margin-top:2px}
.pied-site .btn{margin-top:18px;padding:12px 18px;font-size:14px}
.pied-site .bas2{border-top:1px solid rgba(255,255,255,.1);padding:20px 0;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:13px;color:#9db5a3}
@media(max-width:900px){.pied-site .g{grid-template-columns:1fr 1fr;gap:32px}}
@media(max-width:560px){.pied-site .g{grid-template-columns:1fr;padding:48px 0 30px;gap:26px}}
.btn{border-radius:40px}
.sur{font-family:'Nunito Sans',Arial,sans-serif;font-weight:700}
.head .sur:before,.cq .sur:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--cy);margin-right:10px;vertical-align:1px}
.head.centre .sur:before{display:none}
.head h2{font-size:clamp(28px,3.3vw,42px)}
.carte,.xp,.q,.pr .bloc,.re .it,.sa .l,.resa,.am .it,.ag .c{border-radius:20px}
.xp .ph{margin:10px 10px 0;border-radius:14px}
.xp h3,.carte h3{font-size:20px}
.hero{justify-content:flex-start;text-align:left}
.hero:after{background:linear-gradient(90deg,rgba(26,44,34,.9) 0%,rgba(26,44,34,.62) 50%,rgba(26,44,34,.2) 100%)}
.hero .in{margin-left:max(28px,calc((100% - 1160px)/2 + 28px));max-width:720px;padding:0}
.hero p.acc{margin-left:0}
.hero .btns,.hero .puces,.fil{justify-content:flex-start}
.fil{margin-bottom:10px}
.tl .num{border-radius:14px}
.dura{border-radius:20px}
.cta:after{background:linear-gradient(90deg,rgba(26,44,34,.95) 0%,rgba(36,61,47,.85) 50%,rgba(36,61,47,.3) 100%)}
@media(max-width:720px){.hero .in{margin:0 18px}.hero:after{background:rgba(26,44,34,.78)}}
.ms{font-family:'Material Symbols Rounded';font-weight:400;font-style:normal;font-size:22px;line-height:1;letter-spacing:normal;text-transform:none;white-space:nowrap;direction:ltr;-webkit-font-feature-settings:'liga';font-feature-settings:'liga';font-variation-settings:'FILL' 0,'wght' 400,'GRAD' 0,'opsz' 24;display:inline-flex;align-items:center;justify-content:center;width:auto!important;height:auto!important;padding:0!important;background:none!important;flex:none;overflow:hidden}
.btn .ms{font-size:20px}.lien .ms,.fil .ms,.xp .badge .ms,.xp .cat .ms,.puce .ms,.tab .ms,.hero .sur .ms{font-size:18px}
.rep .rond .ms,.carte .ico .ms,.dura .ico .ms,.bande .ico .ms,.duo .ico .ms{font-size:28px}
.ess .it .ico .ms,.pr .bloc h3 .ico .ms,.sa h3 .ico .ms,.co .l .ico .ms{font-size:22px}
.coches .ms{font-size:22px;color:var(--az)}
.cad{padding:0}.cad:before{display:none}
.cad .ph{box-shadow:none;border-radius:14px}
.ph .tag{display:none}
.ph.vide:before{background:var(--fond);color:var(--gris);font-weight:400}
.bande{background:var(--fond);margin:32px 0}
.bande .ico{background:var(--cl)}
.cta,.ab{margin:32px 0}
.pied-site{margin-top:32px}
.pied-site .g{grid-template-columns:1fr 1.2fr 1.3fr}
.hero.grand{justify-content:center;text-align:center}
.hero.grand:after{background:linear-gradient(180deg,rgba(26,44,34,.6) 0%,rgba(26,44,34,.35) 45%,rgba(26,44,34,.8) 100%)}
.hero.grand .in{margin:0 auto;max-width:880px;padding:0 24px}
.hero.grand .btns{justify-content:center}.hero.grand p.acc{margin:0 auto 32px}
@media(max-width:900px){.pied-site .g{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.pied-site .g{grid-template-columns:1fr}}
