.tab{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 6px 24px rgba(36,61,47,.08);font-size:15px}
.tab th{background:var(--az);color:#fff;font:600 13px 'Nunito Sans',Arial;letter-spacing:.06em;text-transform:uppercase;text-align:left;padding:16px 18px}
.tab td{padding:16px 18px;border-top:1px solid var(--ligne);vertical-align:middle}
.tab tbody tr{transition:background .2s;cursor:pointer}
.tab tbody tr:hover{background:var(--fond)}
.tab td:first-child a{font:600 15.5px 'Nunito Sans',Arial;color:var(--nuit);display:inline-flex;align-items:center;gap:8px}
.tab td:first-child .ic{width:16px;height:16px;color:var(--az);transition:transform .25s}
.tab tr:hover td:first-child .ic{transform:translateX(4px)}
.niv{display:inline-flex;align-items:center;gap:10px;white-space:nowrap}
.niv i{display:inline-flex;gap:3px}
.niv i b{width:8px;height:8px;border-radius:50%;background:var(--ligne)}
.niv i b.on{background:var(--az)}
@media(max-width:760px){.tab thead{display:none}.tab,.tab tbody,.tab tr,.tab td{display:block;width:100%}.tab tr{border-top:6px solid var(--fond)}.tab td{border:none;padding:6px 18px}.tab td:first-child{padding-top:16px}.tab td:last-child{padding-bottom:16px}.tab td[data-l]:before{content:attr(data-l);display:block;font:600 11px 'Nunito Sans',Arial;letter-spacing:.1em;text-transform:uppercase;color:var(--gris)}}
.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}}
.hz{display:grid;grid-template-columns:1fr 1.15fr;gap:56px;align-items:center;padding:8px 0}
.hz h2{font-size:clamp(28px,3.2vw,40px);margin-bottom:16px}
.hz .g p{font-size:17px;color:var(--encre);margin-bottom:28px;max-width:460px}
.hz .d{border:1px solid var(--ligne);border-radius:20px;padding:26px 28px}
.hz .d h3{font-size:20px;margin-bottom:12px}
.gl{display:grid;grid-template-columns:1fr 28px 1fr;gap:12px;align-items:center;padding:14px 0;border-top:1px solid var(--ligne);transition:padding .25s}
.gl:hover{padding-left:6px}
.gl .pub{color:var(--gris);font-size:15px}
.gl .sep .ms{color:var(--cy);font-size:20px}
.gl .dest{font:700 15.5px 'Nunito Sans',Arial;color:var(--az)}
@media(max-width:860px){.hz{grid-template-columns:1fr;gap:28px}.gl{grid-template-columns:1fr;gap:2px}.gl .sep{display:none}}
.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}}
.mini{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.mini .carte{display:flex;flex-direction:column}
.mini .carte p{flex:1}
.mini .carte .lien{margin-top:16px}
@media(max-width:860px){.mini{grid-template-columns:1fr}}
.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}}
