@font-face{font-family:'Fraunces';font-style:italic;font-weight:500;font-display:swap;src:url(/fonts/fraunces-italic-latin-ext-a4258474.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Fraunces';font-style:italic;font-weight:500;font-display:swap;src:url(/fonts/fraunces-italic-latin-e77ca465.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Fraunces';font-style:normal;font-weight:600 700;font-display:swap;src:url(/fonts/fraunces-normal-latin-ext-cab03ef6.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Fraunces';font-style:normal;font-weight:600 700;font-display:swap;src:url(/fonts/fraunces-normal-latin-8ca9c2a4.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Inter';font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/inter-normal-latin-ext-749a3084.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Inter';font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/inter-normal-latin-1ab1ad55.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
/* Premier Bet en Afrique francophone — v3 magazine layout (robcohenthemummy.com) */
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;-webkit-font-smoothing:antialiased;background:#f4f1ea;color:#141414;font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.65;font-size:17px;overflow-x:hidden}
*{box-sizing:border-box}
a{color:#e5001f;text-decoration:none}
a:hover{text-decoration:underline}
::selection{background:#e5001f;color:#fff}
img{max-width:100%;height:auto;display:block}
h1,h2,h3{font-family:Fraunces,Georgia,"Times New Roman",serif;margin:0}
.serif{font-family:Fraunces,Georgia,"Times New Roman",serif}
.wrap{max-width:1120px;margin:0 auto;padding-left:clamp(20px,4vw,40px);padding-right:clamp(20px,4vw,40px)}
.kicker{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#5a5a5a;font-weight:700}
.kicker.red{color:#e5001f}
.muted{color:#5a5a5a}
.hair{border-top:1px solid #dcd7cc}
.h2{font-family:Fraunces,serif;font-weight:700;font-size:clamp(26px,3vw,34px);line-height:1.15}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}

/* masthead */
.mast{border-bottom:1px solid #dcd7cc;background:#f4f1ea}
.mast-top{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding-top:14px;padding-bottom:14px}
.mast-top .kicker{font-weight:600}
.mast-top .kicker a{color:inherit}
.mast-nav-wrap{overflow-x:auto;white-space:nowrap;scrollbar-width:none}
.mast-nav-wrap::-webkit-scrollbar{display:none}
.mast-nav{display:flex;gap:28px}
.mast-nav a{font-size:13px;letter-spacing:.04em;color:#141414;padding:12px 0;border-bottom:2px solid transparent;flex:none}
.mast-nav a:hover,.mast-nav a.is-active{border-bottom-color:#e5001f;text-decoration:none}
.mast-nav a.is-active{font-weight:600}

/* signature et note de la rédaction */
.byline{display:flex;align-items:center;gap:14px;font-size:14px;color:#5a5a5a}
.byline img{width:44px;height:44px;border-radius:50%;object-fit:cover;flex:none}
.byline strong{color:#141414}
.byline a{color:#141414}
.ring{position:relative;width:172px;height:172px}
.ring-track{position:absolute;inset:0;border-radius:50%;background:conic-gradient(#e5001f 0% 87%,#dcd7cc 87% 100%)}
.ring-core{position:absolute;inset:10px;border-radius:50%;background:#f4f1ea;display:flex;flex-direction:column;align-items:center;justify-content:center}
.ring-core .big{font-family:Fraunces,serif;font-weight:700;font-size:46px;line-height:1}
.ring-core small{font-size:12px;color:#5a5a5a;letter-spacing:.08em}
.subscores{width:100%;max-width:280px;display:flex;flex-direction:column;gap:10px}
.subscores .row{display:flex;justify-content:space-between;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#5a5a5a}
.subscores .bar{height:3px;background:#dcd7cc}
.subscores .bar i{display:block;height:100%;background:#e5001f}
.btn-outline{display:inline-block;border:1px solid #141414;padding:14px 24px;font-size:14px;font-weight:600;color:#141414}
.btn-outline:hover{background:#141414;color:#fff;text-decoration:none}

/* key facts */

/* verdict band */
.verdict{background:#0f3d2e;color:#f4f1ea}
.verdict .wrap{padding-top:clamp(48px,7vw,80px);padding-bottom:clamp(48px,7vw,80px);display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:36px}
.verdict .col{grid-column:span 4;min-width:0}
.verdict ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:12px;font-size:16px}
.verdict .kicker{margin-bottom:16px}
.verdict blockquote{margin:0}
.verdict blockquote p{font-family:Fraunces,serif;font-style:italic;font-weight:500;font-size:24px;line-height:1.35;margin:0 0 16px}
.verdict cite{font-style:normal;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:#e5001f}

/* section rhythm */
.sec{padding-top:clamp(56px,7vw,88px);padding-bottom:clamp(56px,7vw,88px)}
.sec-white{background:#fff;border-top:1px solid #dcd7cc;border-bottom:1px solid #dcd7cc}
.grid12{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:40px}
.span5{grid-column:span 5;min-width:0}
.span7{grid-column:span 7;min-width:0}
.prose p{margin:0 0 18px}
.prose p:last-child{margin-bottom:0}

/* fiche */
.aside-note{position:sticky;top:24px;border-left:2px solid #e5001f;padding-left:20px}
.aside-note .kicker{margin-bottom:14px}
.aside-note p{font-size:15px;color:#5a5a5a;margin:0 0 14px}
.aside-note p:last-child{margin:0}
.fiche h2{margin:0 0 24px}
.spec{display:flex;flex-direction:column}
.spec div{display:flex;justify-content:space-between;gap:8px;padding:12px 0;border-bottom:1px solid #dcd7cc;align-items:baseline}
.spec div:last-child{border-bottom:0}
.spec dt{color:#5a5a5a;flex:none}
.spec dd{margin:0;font-weight:600;text-align:right;position:relative;flex:1;min-width:0;overflow-wrap:anywhere}
.spec dd::before{content:"";position:absolute;left:0;right:0;bottom:.35em;border-bottom:1px dotted #c8c2b4;z-index:0}
.spec dd span{position:relative;display:inline-block;max-width:100%;background:#f4f1ea;padding-left:10px;z-index:1}
.sec-white .spec dd span{background:#fff}

/* installation */
.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px}
.steps-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.step{border-top:1px solid #141414;padding-top:16px}
.step .n{font-family:Fraunces,serif;font-weight:700;font-size:44px;color:#dcd7cc;line-height:1}
.step h3{font-family:Inter,sans-serif;font-size:17px;font-weight:700;margin:14px 0 8px}
.step p{font-size:14px;color:#5a5a5a;margin:0 0 8px}
.step .warn{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#e5001f;font-weight:700}
.step a.dl{font-size:13px;font-weight:600}

/* gallery */
.gallery .wrap{padding-left:0;padding-right:0}
.gallery h2{padding:0 clamp(20px,4vw,40px);margin:0 0 28px}
.gallery .lead{padding:0 clamp(20px,4vw,40px);margin:0 0 28px;max-width:760px}
.shots{display:flex;gap:20px;overflow-x:auto;padding:0 clamp(20px,4vw,40px) 12px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}
.shots figure{flex:none;width:220px;margin:0;scroll-snap-align:start}
.shots img{width:220px;height:476px;object-fit:cover;object-position:top;border:1px solid #141414;border-radius:4px;background:#e9e5da}
.shots img.short{object-fit:contain;background:#141414}
.shots figcaption{font-size:12px;letter-spacing:.03em;color:#5a5a5a;margin-top:10px;font-variant:small-caps}

/* fonctions */
.cols2{columns:2 320px;column-gap:48px;font-size:16px}
.cols2 p{margin:0 0 20px;break-inside:avoid}
.runin{font-variant:small-caps;font-weight:700;letter-spacing:.02em}

/* poker & turf */
.duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.card{background:#fff;padding:36px;border:1px solid #dcd7cc}
.card h3{font-size:24px;margin:0 0 14px}
.card p{font-size:15px;color:#5a5a5a;margin:0 0 14px}
.card .offer{font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:#e5001f;font-weight:700;margin-top:6px}

/* retraits */
.retraits .grid12{align-items:center;gap:32px}
.retraits .bignum{font-family:Fraunces,serif;font-weight:700;font-size:clamp(44px,6vw,64px);line-height:1}
.retraits p{font-size:16px;margin:0 0 16px}
.retraits p:last-child{margin:0;color:#5a5a5a}

/* sécurité */
.legal-box{border-left:2px solid #e5001f;padding:8px 0 8px 24px;display:flex;flex-direction:column;gap:14px;font-size:15px;max-width:760px}
.legal-box p{margin:0}
.legal-box .warn{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#5a5a5a}

/* ios */
.ios-spec{display:flex;flex-direction:column;gap:8px;font-size:14px}
.ios-spec div{display:flex;justify-content:space-between;border-bottom:1px solid #dcd7cc;padding:8px 0}
.ios-spec div:last-child{border-bottom:0}
.ios-spec dt{color:#5a5a5a}.ios-spec dd{margin:0;font-weight:600}

/* pays */
.countries{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.country{border-top:1px solid #141414;padding-top:16px;display:flex;flex-direction:column;min-width:0}
.country .flag{font-size:26px;line-height:1}
.country h3{font-family:Fraunces,serif;font-size:22px;font-weight:700;margin:8px 0 2px;line-height:1.2}
.country .cur{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#5a5a5a;font-weight:700;margin-bottom:10px}
.country dl{margin:0 0 14px;display:flex;flex-direction:column;gap:8px;font-size:13px}
.country dl div{display:flex;flex-direction:column;gap:2px}
.country dt{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#5a5a5a;font-weight:700}
.country dd{margin:0;color:#141414;overflow-wrap:anywhere}
.country p{font-size:14px;color:#5a5a5a;margin:0 0 16px}
.country .acts{margin-top:auto;display:flex;flex-direction:column;gap:8px;align-items:flex-start}
.country .acts .dl{font-size:13px;font-weight:700;border:1px solid #e5001f;color:#e5001f;padding:8px 14px;width:100%;text-align:center}
.country .acts .dl:hover{background:#e5001f;color:#fff;text-decoration:none}
.country .acts .off{font-size:12px;color:#5a5a5a;overflow-wrap:anywhere}

/* points de vente */
.contacts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.contacts .pv{border-top:1px solid #dcd7cc;padding-top:14px}
.contacts .pv h3{font-family:Inter,sans-serif;font-size:16px;font-weight:700;margin:0 0 6px}
.contacts .pv .tel{font-size:15px;font-weight:700;color:#e5001f;margin-bottom:4px;overflow-wrap:anywhere}
.contacts .pv .cities{font-size:14px;color:#5a5a5a}

/* bonus table */
table.bonus{width:100%;border-collapse:collapse;font-size:15px;min-width:640px}
.bonus th{text-align:left;padding:10px 12px;border-bottom:1px solid #141414;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#5a5a5a;font-weight:600}
.bonus td{padding:12px;border-bottom:1px solid #dcd7cc;vertical-align:top}
.bonus th:first-child,.bonus td:first-child{padding-left:0;font-weight:700}
.bonus th:last-child,.bonus td:last-child{padding-right:0}
.bonus tr:last-child td{border-bottom:0}
.pullquote{font-family:Fraunces,serif;font-weight:700;font-size:clamp(34px,5vw,56px);line-height:1.05}

/* comparatif */
.table-wrap{overflow-x:auto}
table.cmp{width:100%;border-collapse:collapse;font-size:15px;min-width:520px}
.cmp th{text-align:left;padding:10px 12px;border-bottom:1px solid #141414;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#5a5a5a;font-weight:600}
.cmp td{padding:12px;border-bottom:1px solid #dcd7cc}
.cmp th:first-child,.cmp td:first-child{padding-left:0}
.cmp th:last-child,.cmp td:last-child{padding-right:0}
.cmp td:first-child{font-weight:700}
.cmp tr:last-child td{border-bottom:0}
.cmp .note{font-size:13px;color:#5a5a5a;margin:14px 0 0}

/* historique */
.narrow{max-width:640px}
.timeline{display:flex;flex-direction:column}
.tl{display:flex;gap:20px;padding-bottom:24px;border-left:1px solid #dcd7cc;margin-left:5px;padding-left:24px;position:relative}
.tl:last-child{border-left-color:transparent;padding-bottom:0}
.tl::before{content:"";position:absolute;left:-6px;top:2px;width:10px;height:10px;border-radius:50%;background:#dcd7cc}
.tl.current::before{background:#e5001f}
.tl .v{font-weight:700;margin-bottom:4px}
.tl .d{font-size:14px;color:#5a5a5a;margin-bottom:8px}
.tl a{font-size:13px;font-weight:600}

/* author box */
.author{display:flex;gap:28px;flex-wrap:wrap}
.author img{width:88px;height:88px;border-radius:50%;object-fit:cover;flex:none}
.author .body{flex:1 1 320px;min-width:0}
.author .name{font-weight:700;font-size:18px}
.author .name a{color:#141414}
.author .role{font-size:13px;color:#5a5a5a;margin-bottom:12px}
.author p{font-size:15px;margin:0 0 16px;max-width:600px}
.author ul{margin:0 0 12px;padding-left:18px;font-size:14px;color:#5a5a5a}
.author .pub{font-size:13px;color:#5a5a5a}
.helpful{margin-top:18px;padding-top:14px;border-top:1px solid #dcd7cc;font-size:14px;color:#5a5a5a;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.helpful button{background:none;border:1px solid #e5001f;color:#e5001f;border-radius:999px;padding:6px 14px;font:inherit;font-size:13px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:6px}
.helpful button:hover,.helpful button.liked{background:#e5001f;color:#fff}
.helpful button[disabled]{cursor:default}

/* faq */
.faq-wrap{max-width:760px;margin:0 auto}
.faq h2{margin:0 0 32px}
.qa{padding:22px 0;border-bottom:1px solid #dcd7cc}
.qa:last-child{border-bottom:0}
.qa h3{font-size:22px;margin:0 0 10px;line-height:1.25}
.qa p{margin:0;color:#5a5a5a}

/* avis lecteurs */
.reviews h2{margin:0 0 28px}
.review{padding:18px 0;border-bottom:1px solid #dcd7cc}
.review:last-child{border-bottom:0}
.review p{margin:0 0 10px;font-size:15px}
.review .meta{font-size:13px;color:#5a5a5a}
.review .meta .stars{color:#e5001f;letter-spacing:1px;margin-left:8px}
.review-form-box{border:1px solid #dcd7cc;padding:28px}
.review-form-box .kicker{margin-bottom:18px}
.review-form{display:flex;flex-direction:column;gap:14px}
.review-form input,.review-form textarea{border:none;border-bottom:1px solid #dcd7cc;padding:8px 0;font-size:15px;background:transparent;font-family:Inter,sans-serif;color:#141414;width:100%}
.review-form textarea{border:1px solid #dcd7cc;padding:10px;resize:vertical}
.review-form input:focus,.review-form textarea:focus{outline:none;border-color:#141414}
.stars-pick{display:flex;gap:8px}
.star{width:20px;height:20px;border-radius:50%;border:1.5px solid #e5001f;background:transparent;cursor:pointer;padding:0}
.star.on{background:#e5001f}
.review-form button[type=submit]{background:#141414;color:#fff;border:none;padding:12px 20px;font-size:14px;font-weight:600;cursor:pointer;font-family:inherit}
.review-form button[type=submit]:hover{background:#e5001f}
.review-form .hp{position:absolute;left:-9999px;opacity:0;height:0;width:0}
.form-msg{font-size:13px;color:#5a5a5a;min-height:1.2em}
.form-msg.err{color:#e5001f}

/* footer */
.foot{border-top:1px solid #dcd7cc}
.foot-cols{padding-top:clamp(48px,6vw,64px);padding-bottom:32px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.foot-cols .kicker{color:#141414;margin-bottom:14px}
.foot-cols nav{display:flex;flex-direction:column;gap:8px;font-size:14px}
.foot-cols a{color:#5a5a5a}
.foot-warn{font-size:12px;color:#5a5a5a;border-top:1px solid #dcd7cc;padding-top:20px;padding-bottom:24px}
.foot-copy{font-size:12px;color:#5a5a5a;padding-bottom:32px}

/* mobile bar */
.mbar{position:fixed;left:0;right:0;bottom:0;background:#f4f1ea;border-top:1px solid #dcd7cc;padding:12px 16px;z-index:50;transform:translateY(110%);transition:transform .25s ease}
.mbar.show{transform:none}
.mbar a{display:block;background:#e5001f;color:#fff;text-align:center;padding:14px;font-size:15px;font-weight:600}
.mbar a:hover{text-decoration:none;background:#c40019}
body.has-mbar{padding-bottom:72px}

/* inner pages */
.page{max-width:720px;margin:0 auto;padding:clamp(40px,6vw,64px) clamp(20px,4vw,40px)}
.page h1{font-weight:700;font-size:clamp(32px,4.5vw,52px);line-height:1.05;letter-spacing:-.01em;margin:12px 0 22px}
.page h2{font-size:clamp(22px,2.6vw,28px);margin:36px 0 12px}
.page p,.page li{font-size:16px}
.page ul{padding-left:20px}
.page .lead{font-size:20px;color:#5a5a5a}
.page .back{display:inline-block;margin-top:32px;font-size:14px}
.author-page .portrait{width:160px;height:160px;border-radius:50%;object-fit:cover;margin:0 0 20px}
.author-page .links a{margin-right:18px}

@media (max-width:900px){
  .countries{grid-template-columns:repeat(2,minmax(0,1fr))}
  .contacts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .grid12,.verdict .wrap{grid-template-columns:1fr;gap:28px}
  .span5,.span7,.verdict .col{grid-column:1 / -1}
  .aside-note{position:static}
  .steps,.steps-3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .duo{grid-template-columns:1fr}
}
@media (max-width:760px){
  .countries{grid-template-columns:1fr}
  .contacts{grid-template-columns:1fr}
  body{font-size:16px}
  .steps,.steps-3{grid-template-columns:1fr}
  .foot-cols{grid-template-columns:1fr 1fr}
  .card{padding:24px}
  .review-form-box{padding:20px}
  .spec dd::before{display:none}
  .spec dd span{padding-left:0}
}
@media (max-width:480px){
  .foot-cols{grid-template-columns:1fr}
}

@media (max-width:760px){.spec div{flex-direction:column;align-items:flex-start;gap:2px}.spec dt{font-size:11px;letter-spacing:.14em;text-transform:uppercase}.spec dd{text-align:left;width:100%}.spec dd::before{display:none}.spec dd span{padding-left:0}html,body{overflow-x:hidden}}

/* ---- v4 visuals ---- */
figure{margin:0}
.figcap,.map-fig figcaption,.gal figcaption,.amb figcaption,
.feat-cards figcaption,.fiche-fig figcaption{font-size:12px;letter-spacing:.03em;color:#5a5a5a;
  margin-top:10px;font-variant:small-caps;line-height:1.45}

/* carte de présence */
.map-wrap{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:36px;align-items:start;
  margin-bottom:40px}
.map-fig{grid-column:span 5;min-width:0}
.map-fig img{width:100%;height:auto;border:1px solid #dcd7cc;border-radius:4px;background:#fff}
.map-txt{grid-column:span 7;min-width:0}
.map-txt p{margin:0}

/* galerie de bannières */
.gal{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.gal figure{min-width:0}
.gal img{width:100%;height:auto;border:1px solid #dcd7cc;border-radius:4px;background:#fff}

/* ambassadeurs */
.amb{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
.amb figure{min-width:0}
.amb img{width:100%;height:auto;border:1px solid #dcd7cc;border-radius:4px;background:#fff}

/* fiche technique */
.fiche-fig{margin-bottom:28px}
.fiche-fig img{width:100%;height:auto;max-height:420px;object-fit:cover;object-position:center;
  border:1px solid #141414;border-radius:4px;background:#e9e5da}

/* cartes illustrées (fonctions, Vegas) */
.feat-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-bottom:36px}
.feat-cards .fc{min-width:0;border-top:1px solid #141414;padding-top:16px}
.feat-cards .fc img{width:100%;height:auto;border:1px solid #dcd7cc;border-radius:4px;
  background:#fff;margin-bottom:14px}
.feat-cards .fc p{margin:0;font-size:15px;color:#5a5a5a}
.feat-cards .fc figcaption{margin-top:0}

/* étapes illustrées */
.steps .step img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;
  border:1px solid #dcd7cc;border-radius:4px;background:#fff;margin-bottom:14px}

/* bandeau de marque */
.brandstrip{padding-top:8px;padding-bottom:8px}
.brandstrip img{width:100%;max-width:1000px;margin:0 auto;height:auto;max-height:160px;
  object-fit:cover;object-position:center;border:1px solid #dcd7cc;border-radius:4px}

/* aide au défilement de la galerie */
.shots-hint{padding:0 clamp(20px,4vw,40px);margin:12px 0 0;font-size:12px;letter-spacing:.1em;
  text-transform:uppercase;color:#5a5a5a;font-weight:700}

@media (max-width:900px){
  .gal{grid-template-columns:repeat(2,minmax(0,1fr))}
  .map-wrap{grid-template-columns:1fr;gap:24px}
  .map-fig,.map-txt{grid-column:1 / -1}
  .map-fig img{max-height:420px;object-fit:contain}
  .fiche-fig{margin-bottom:8px}
}
@media (max-width:760px){
  .gal{grid-template-columns:1fr}
  .amb{grid-template-columns:1fr}
  .feat-cards{grid-template-columns:1fr}
  .brandstrip img{max-height:120px}
}

/* ---- v5 hero ---- */
.topbar-sticky{position:fixed;top:0;left:0;right:0;z-index:60;background:#f4f1ea;
  border-bottom:1px solid #dcd7cc;transform:translateY(-100%);opacity:0;pointer-events:none;
  transition:opacity .2s ease,transform .2s ease}
.topbar-sticky.show{transform:translateY(0);opacity:1;pointer-events:auto}
.topbar-in{display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding-top:12px;padding-bottom:12px}
.topbar-name{font-weight:700;font-size:18px;color:#141414;letter-spacing:-.01em}
.topbar-cta{display:inline-flex;align-items:center;gap:8px;background:#e5001f;color:#fff;
  border-radius:4px;padding:10px 20px;font-weight:700;font-size:14px}
.topbar-cta:hover{background:#c40019;color:#fff;text-decoration:none}
@media (max-width:759px){.topbar-sticky{display:none}}
@media (min-width:760px){html{scroll-padding-top:70px}}

.hero2{padding-top:clamp(32px,5vw,48px);padding-bottom:clamp(40px,6vw,64px)}
.hero2-meta{display:flex;align-items:center;gap:14px;margin-bottom:22px;flex-wrap:wrap}
.hero2-sep{width:1px;height:12px;background:#dcd7cc;display:inline-block;flex:none}
.hero2-cols{display:grid;grid-template-columns:7fr 5fr;gap:56px;align-items:start}
.hero2-main{min-width:0}
.hero2-side{min-width:0;display:flex;flex-direction:column;gap:20px}
.hero2 h1{font-weight:700;font-size:clamp(34px,4.6vw,60px);line-height:1.03;letter-spacing:-.015em;
  margin:0 0 22px;overflow-wrap:break-word}
.hero2-dek{font-size:19px;line-height:1.5;color:#141414;max-width:52ch;margin:0 0 28px}
.hero2-byline{margin-bottom:36px;flex-wrap:wrap;row-gap:6px}
.hero2-byline img{width:40px;height:40px}
.hero2-byline span{min-width:0;overflow-wrap:anywhere}
.hero2-dot{width:4px;height:4px;border-radius:50%;background:#dcd7cc;flex:none}

.chips-lab{margin-bottom:14px}
.chips{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:36px}
.chip{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border:1px solid #dcd7cc;
  border-radius:100px;background:#fff;color:#141414;font-size:14px;font-weight:600;
  transition:border-color .15s,color .15s;max-width:100%;overflow-wrap:anywhere}
.chip:hover{border-color:#e5001f;color:#e5001f;text-decoration:none}
.chip-flag{flex:none}

.kfacts{border-top:1px solid #dcd7cc;padding-top:22px;display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.kfacts b{display:block;font-family:Fraunces,Georgia,serif;font-weight:700;font-size:28px;
  line-height:1.2;letter-spacing:-.01em;color:#141414}
.kfacts span{display:block;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  color:#5a5a5a;margin-top:4px}

.dlcard{background:#fff;border:1px solid #dcd7cc;border-radius:4px;padding:28px;min-width:0}
.dlcard-top{display:flex;gap:14px;align-items:center;margin-bottom:20px}
.dlcard-top>div{min-width:0;overflow-wrap:anywhere}
.dlicon{width:64px;height:64px;border-radius:12px;border:1px solid #dcd7cc;flex:none;background:#fff}
.dlname{font-size:22px;font-weight:700;line-height:1.2;letter-spacing:-.01em;color:#141414}
.dlsub{font-size:13px;color:#5a5a5a;margin-top:2px}
.dlrate{display:flex;align-items:center;gap:10px;margin-bottom:20px;flex-wrap:wrap}
.dlstars{display:inline-flex;gap:2px}
.dlrate b{font-size:16px;font-weight:700;color:#141414}
.dlrate .dlsub{margin-top:0}
.dlbul{list-style:none;margin:0 0 24px;padding:0;display:flex;flex-direction:column;gap:10px}
.dlbul li{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.4;color:#141414}
.dlbul .tick{flex:none;margin-top:2px}
.dlbtn{display:flex;width:100%;height:52px;align-items:center;justify-content:center;gap:10px;
  background:#e5001f;color:#fff;border-radius:4px;font-size:16px;font-weight:700;
  transition:background .15s}
.dlbtn:hover{background:#c40019;color:#fff;text-decoration:none}
.dlstat{display:flex;align-items:center;gap:8px;margin:12px 0 22px;font-size:13px;color:#5a5a5a}
.dlstat::before{content:"";width:6px;height:6px;border-radius:50%;background:#e5001f;flex:none}
.dlstat strong{color:#141414;font-weight:700}
.dlbtns{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:22px}
.dlbtn2{display:flex;align-items:center;justify-content:center;text-align:center;min-height:40px;
  padding:8px 10px;background:#fff;border:1px solid #dcd7cc;border-radius:4px;font-size:13px;
  font-weight:600;color:#141414;transition:border-color .15s,color .15s}
.dlbtn2:hover{border-color:#e5001f;color:#e5001f;text-decoration:none}
.dllegal{border-top:1px solid #dcd7cc;padding-top:14px;margin:0;font-size:11px;color:#5a5a5a;
  line-height:1.5}
.dllegal a{color:#5a5a5a;text-decoration:underline}
.dllegal a:hover{color:#e5001f}
.dlshot{border:1px solid #dcd7cc;border-radius:4px;background:#fff;padding:0;overflow:hidden}
.dlshot img{width:100%;height:auto;max-height:520px;object-fit:contain}

/* illustration déplacée dans « Choisissez votre pays » */
.pays-fig{margin:0 0 28px}
.pays-fig img{width:100%;max-width:760px;height:auto;border:1px solid #141414;border-radius:4px;
  background:#e9e5da}
.pays-fig figcaption{font-size:12px;letter-spacing:.03em;color:#5a5a5a;margin-top:10px;
  font-variant:small-caps;line-height:1.45}

/* note de la rédaction : anneau + sous-notes */
.scorebox{display:flex;align-items:center;gap:32px;flex-wrap:wrap;margin-bottom:32px}
.scorebox .subscores{max-width:320px;flex:1 1 240px}

@media (max-width:900px){
  .hero2-cols{grid-template-columns:1fr;gap:32px}
  .hero2 h1{font-size:clamp(32px,6vw,44px)}
  .dlshot img{max-height:420px}
}
@media (max-width:760px){
  .hero2-dek{font-size:17px}
  .chips{gap:8px}
  .chip{padding:8px 13px;font-size:13px}
  .kfacts{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
  .kfacts b{font-size:24px}
  .dlcard{padding:20px}
  .dlname{font-size:20px}
  .dlbtn{font-size:15px}
  .dlshot img{max-height:420px}
  .scorebox{gap:20px}
}
@media (max-width:480px){
  .dlbtns{grid-template-columns:1fr}
  .kfacts b{font-size:22px}
}
