@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/ibm-plex-mono-400.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:'IBM Plex Mono';font-style:normal;font-weight:500;font-display:swap;src:url('/fonts/ibm-plex-mono-500.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:'IBM Plex Sans';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/ibm-plex-sans-400.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:'IBM Plex Sans';font-style:normal;font-weight:600;font-display:swap;src:url('/fonts/ibm-plex-sans-600.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:'Saira Condensed';font-style:normal;font-weight:700;font-display:swap;src:url('/fonts/saira-condensed-700.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:'Saira Condensed';font-style:normal;font-weight:800;font-display:swap;src:url('/fonts/saira-condensed-800.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}

:root {
  --x7f-bg: #0D0F0E;
  --x7f-surface: #141C18;
  --x7f-verdict: #B6FF3A;
  --x7f-accent: #CE8451;
  --x7f-bad: #F2C230;
  --x7f-text-dim: #7C8A87;
  --x7f-text: #E8EDE9;
  --x7f-surface-2: #232b27;
  --x7f-border: #303331;
  --x7f-text-faint: #606361;
  --x7f-accent-contrast: #0D0F0E;
  --x7f-good: #57956a;
  --x7f-ad-a: #181a19;
  --x7f-ad-b: #232524;

  --x7f-font-display: 'Saira Condensed', system-ui, sans-serif;
  --x7f-font-body: 'IBM Plex Sans', system-ui, sans-serif;
  --x7f-font-mono: 'IBM Plex Mono', ui-monospace, monospace;

  --x7f-radius: 0;

  --x7f-notch: 16px;
  --x7f-notch-sm: calc(var(--x7f-notch) * .55);

  --x7f-cut: polygon(var(--x7f-notch) 0, 100% 0, 100% 100%, 0 100%, 0 var(--x7f-notch));

  --x7f-cut-sm: polygon(var(--x7f-notch-sm) 0, 100% 0, 100% 100%, 0 100%, 0 var(--x7f-notch-sm));

  --x7f-cut-go: polygon(0 0, 100% 0, 100% calc(100% - var(--x7f-notch-sm)), calc(100% - var(--x7f-notch-sm)) 100%, 0 100%);

  --x7f-cut-both: polygon(var(--x7f-notch) 0, 100% 0, 100% calc(100% - var(--x7f-notch)), calc(100% - var(--x7f-notch)) 100%, 0 100%, 0 var(--x7f-notch));
  --x7f-container: 1200px;
  --x7f-gap: 1.5rem;

  --x7f-maxw-prose: 720px;
}

.x7f-notch { clip-path: var(--x7f-cut); }

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }

:focus-visible {
  outline: 2px solid var(--x7f-accent);
  outline-offset: 3px;
}

.x7f-btn:focus-visible,
.x7f-site-cta:focus-visible,
.x7f-site-search-btn:focus-visible,
.x7f-buy-box__cta:focus-visible,
.x7f-sortie__go:focus-visible,
.x7f-newsletter button:focus-visible,
.x7f-porte:focus-visible,
.x7f-rebond:focus-visible,
.x7f-search-hit:focus-visible {
  outline-offset: -5px;
}
.x7f-skip-link {
  position: absolute; left: -9999px; top: 0; z-index: 100;
  background: var(--x7f-accent); color: var(--x7f-accent-contrast);
  padding: .6rem 1rem; text-decoration: none; font-weight: 600;
}
.x7f-skip-link:focus { left: 0; }

button, input, select, textarea, a { transition: background-color .14s, border-color .14s, color .14s, opacity .14s; }
button:active { transform: translateY(1px); }

button:disabled, input:disabled, select:disabled, textarea:disabled,
[aria-disabled="true"] {
  opacity: .45;
  cursor: not-allowed;
  filter: grayscale(1);
}

input[aria-invalid="true"], textarea[aria-invalid="true"], .x7f-is-error {
  border-color: var(--x7f-bad);
}
.x7f-field-error {
  display: block; margin-top: .35rem;
  font-family: var(--x7f-font-mono); font-size: .72rem; color: var(--x7f-bad);
}

@media (prefers-reduced-motion: reduce) {
  button, input, select, textarea, a { transition: none; }
  button:active { transform: none; }
}
body {
  margin: 0;
  background: var(--x7f-bg);
  color: var(--x7f-text);
  font-family: var(--x7f-font-body);
  font-size: 16px;
  line-height: 1.65;
}
img { max-width: 100%; display: block; }
a { color: var(--x7f-accent); }
.x7f-container { max-width: var(--x7f-container); margin: 0 auto; padding: 0 1.25rem; }

.x7f-ad-slot {
  background: repeating-linear-gradient(45deg, var(--x7f-ad-a), var(--x7f-ad-a) 10px, var(--x7f-ad-b) 10px, var(--x7f-ad-b) 20px);
  border: 1px dashed var(--x7f-border);
  color: var(--x7f-text-faint);
  font-family: var(--x7f-font-mono); font-size: .7rem;
  letter-spacing: .05em; text-transform: uppercase;
  display: flex; align-items: center; justify-content: center;
  margin: 0 auto; text-align: center; padding: .5rem;
}
.x7f-ad-slot--leaderboard { width: 728px; max-width: 100%; height: 90px; }
.x7f-ad-slot--rectangle { width: 300px; max-width: 100%; height: 250px; }
.x7f-ad-slot--native { width: 100%; height: 120px; }

.x7f-ad-slot--top { margin: 1rem auto; }
.x7f-ad-slot--infeed { margin: 2.5rem 0; }
.x7f-section-head--first { margin-top: 0; }

.x7f-author-box__role { font-size: .8rem; color: var(--x7f-text-dim); }
.x7f-author-box__bio { font-size: .86rem; margin-top: .4rem; }
.x7f-article-card__excerpt { font-size: .82rem; color: var(--x7f-text-dim); margin: .3rem 0 0; }
.x7f-spotlight-main__title, .x7f-spotlight-main__dek { display: block; }
.x7f-site-nav a[aria-current="page"] { color: var(--x7f-accent); border-bottom: 2px solid var(--x7f-accent); }

.x7f-reading-progress {
  position: sticky; top: 4.25rem; z-index: 39; height: 3px;
  background: var(--x7f-border); margin: 0;
}
.x7f-reading-progress > i { display: block; height: 100%; width: 0; background: var(--x7f-accent); }

body.x7f-has-anchor { padding-bottom: 140px; }
@media (max-width: 768px) { body.x7f-has-anchor { padding-bottom: 90px; } }
.x7f-verdict-unit { font-size: 1rem; color: var(--x7f-text-faint); }

.x7f-ad-size--mobile { display: none; }
@media (max-width: 768px) {
  .x7f-ad-slot--leaderboard { width: 320px; height: 100px; }
  .x7f-ad-anchor .x7f-ad-slot--leaderboard { width: 320px; height: 50px; }
  .x7f-ad-anchor { padding: .5rem 1rem; }
  .x7f-ad-size--desktop { display: none; }
  .x7f-ad-size--mobile { display: inline; }
}

.x7f-ad-anchor {
  position: fixed; left: 0; right: 0; bottom: 0; z-index: 50;
  background: var(--x7f-surface); border-top: 1px solid var(--x7f-border);
  padding: .9rem 1rem; display: none; justify-content: center; align-items: center;
}
.x7f-ad-anchor.x7f-is-visible { display: flex; }
.x7f-ad-anchor .x7f-ad-slot { border-color: var(--x7f-border); }
.x7f-ad-anchor__close {
  position: absolute; top: .5rem; right: .75rem;
  border: 1px solid var(--x7f-border); background: var(--x7f-bg); color: var(--x7f-text);
  width: 1.6rem; height: 1.6rem; cursor: pointer; line-height: 1;
  display: flex; align-items: center; justify-content: center; padding: 0;
}
.x7f-ad-anchor__close:hover { border-color: var(--x7f-accent); color: var(--x7f-accent); }

.x7f-site-header { border-bottom: 1px solid var(--x7f-border); background: var(--x7f-bg); position: sticky; top: 0; z-index: 40; }
.x7f-site-header .x7f-container { display: flex; align-items: center; gap: 2rem; height: 4.25rem; }
.x7f-site-logo {
  font-family: var(--x7f-font-display); font-weight: 800; font-size: 1.35rem;
  letter-spacing: .06em; text-transform: uppercase; text-decoration: none; color: var(--x7f-text);
  background: var(--x7f-accent); color: var(--x7f-accent-contrast); padding: .25rem .7rem;
  clip-path: var(--x7f-cut);
}

.x7f-site-logo--img {
  background: none; padding: 0;
  display: flex; align-items: center; gap: .6rem;
  clip-path: none;
}
.x7f-site-logo--img img { max-height: 2.4rem; max-width: 13rem; width: auto; }
.x7f-site-logo__name {
  font-family: var(--x7f-font-display); font-weight: 800; font-size: 1.2rem;
  letter-spacing: .06em; text-transform: uppercase; color: var(--x7f-text);
}
.x7f-site-footer .x7f-site-logo--img img { max-height: 2.8rem; }

.x7f-site-nav { display: flex; gap: 1.5rem; margin-left: auto; }
.x7f-site-nav a {
  text-decoration: none; font-size: .82rem; color: var(--x7f-text-dim);
  font-family: var(--x7f-font-display); font-weight: 700; letter-spacing: .06em; text-transform: uppercase;
}
.x7f-site-nav a:hover { color: var(--x7f-accent); }
.x7f-site-search-btn, .x7f-site-cta {
  border: 1px solid var(--x7f-border); background: transparent; color: var(--x7f-text);
  border-radius: var(--x7f-radius); padding: .5rem .9rem; font-size: .85rem; cursor: pointer;
  font-family: var(--x7f-font-body);
  clip-path: var(--x7f-cut-go);
}
.x7f-site-cta { background: var(--x7f-accent); color: var(--x7f-accent-contrast); border-color: var(--x7f-accent); font-weight: 600; }
.x7f-nav-toggle {
  display: none; border: 1px solid var(--x7f-border); background: transparent;
  width: 2.5rem; height: 2.5rem; align-items: center; justify-content: center;
  cursor: pointer; margin-left: auto; flex-direction: column; gap: 3px;
}
.x7f-nav-toggle span { display: block; width: 1.1rem; height: 2px; background: var(--x7f-text); }
.x7f-nav-drawer { display: none; position: fixed; inset: 0; background: rgba(0,0,0,.6); z-index: 100; }
.x7f-nav-drawer.x7f-is-open { display: block; }
.x7f-nav-drawer__panel {
  background: var(--x7f-surface); width: 82%; max-width: 320px; height: 100%;
  padding: 1.5rem; display: flex; flex-direction: column; gap: 1.1rem;
  clip-path: var(--x7f-cut);
}
.x7f-nav-drawer__panel input[type="search"] {
  border: 1px solid var(--x7f-border); background: var(--x7f-bg); color: var(--x7f-text);
  border-radius: var(--x7f-radius); padding: .6rem .8rem; font-family: var(--x7f-font-body);
}
.x7f-nav-drawer__panel a {
  text-decoration: none; color: var(--x7f-text); padding: .45rem 0;
  font-family: var(--x7f-font-display); font-weight: 700; letter-spacing: .06em; text-transform: uppercase;
}

.x7f-site-footer { border-top: 1px solid var(--x7f-border); background: var(--x7f-surface); margin-top: 3.5rem; }
.x7f-site-footer .x7f-container { padding: 2.5rem 1.25rem 1.5rem; }
.x7f-footer-top { display: grid; grid-template-columns: 1.3fr 1fr 1fr 1fr; gap: 2rem; }
.x7f-footer-tagline { font-size: .85rem; color: var(--x7f-text-dim); margin-top: .6rem; max-width: 32ch; }
.x7f-footer-col h4 {
  font-family: var(--x7f-font-mono); font-size: .7rem; text-transform: uppercase;
  letter-spacing: .1em; color: var(--x7f-text-faint); margin: 0 0 .7rem; font-weight: 500;
}
.x7f-footer-col a { display: block; text-decoration: none; color: var(--x7f-text-dim); font-size: .85rem; margin-bottom: .45rem; }
.x7f-footer-col a:hover { color: var(--x7f-accent); }
.x7f-footer-bottom {
  border-top: 1px solid var(--x7f-border); margin-top: 2rem; padding-top: 1rem;
  font-family: var(--x7f-font-mono); font-size: .72rem; color: var(--x7f-text-faint);
  display: flex; justify-content: space-between; flex-wrap: wrap; gap: .5rem;
}

@media (max-width: 900px) {
  .x7f-site-nav, .x7f-site-search-btn, .x7f-site-cta { display: none; }
  .x7f-nav-toggle { display: flex; }
  .x7f-footer-top { grid-template-columns: 1fr 1fr; }
}

.x7f-article-summary {
  border: 1px solid var(--x7f-border);
  background: linear-gradient(160deg, var(--x7f-surface), transparent 58%);
  margin: 0 0 1.6rem;
  clip-path: var(--x7f-cut-both);
}
.x7f-article-summary .x7f-as-top { display: grid; grid-template-columns: 1.25fr 1fr; }
.x7f-article-summary .x7f-as-verdict { padding: 1.35rem; border-right: 1px solid var(--x7f-border); }
.x7f-article-summary .x7f-as-head { display: flex; align-items: center; gap: .75rem; margin-bottom: .75rem; }
.x7f-article-summary .x7f-as-head h2 {
  font-family: var(--x7f-font-display); font-weight: 700; text-transform: uppercase;
  letter-spacing: .04em; font-size: 1.1rem; margin: 0;
}
.x7f-article-summary .x7f-as-verdict p { color: var(--x7f-text-dim); font-size: .93rem; line-height: 1.55; margin: 0 0 .85rem; }
.x7f-article-summary .x7f-as-rating { display: flex; align-items: center; gap: 1.1rem; flex-wrap: wrap; }
.x7f-article-summary .x7f-as-stats { padding: 1.35rem; display: flex; flex-direction: column; justify-content: center; gap: .75rem; }
.x7f-article-summary .x7f-as-facts { display: flex; flex-wrap: wrap; border-top: 1px solid var(--x7f-border); }
.x7f-article-summary .x7f-as-fact { flex: 1; min-width: 8rem; padding: .75rem 1.1rem; border-right: 1px solid var(--x7f-border); }
.x7f-article-summary .x7f-as-fact:last-child { border-right: none; }
.x7f-article-summary .x7f-as-fact .x7f-k {
  font-family: var(--x7f-font-mono); font-size: .66rem; letter-spacing: .06em;
  text-transform: uppercase; color: var(--x7f-text-dim);
}
.x7f-article-summary .x7f-as-fact .x7f-v { font-family: var(--x7f-font-display); font-weight: 700; font-size: .95rem; margin-top: .2rem; }

.x7f-tier {
  font-family: var(--x7f-font-display); font-weight: 700; width: 2.1rem; height: 2.1rem;
  display: grid; place-items: center; color: var(--x7f-accent-contrast); font-size: 1.05rem;
  background: var(--x7f-accent);
  clip-path: var(--x7f-cut-sm);
}
.x7f-tier.x7f-s { background: var(--x7f-accent); }
.x7f-tier.x7f-a { background: var(--x7f-good); }
.x7f-tier.x7f-b, .x7f-tier.x7f-c, .x7f-tier.x7f-d { background: var(--x7f-surface-2); color: var(--x7f-text); }

.x7f-rating { display: inline-flex; align-items: baseline; gap: .5rem; font-family: var(--x7f-font-display); font-weight: 700; }
.x7f-rating .x7f-score { font-size: 1.5rem; color: var(--x7f-accent); }
.x7f-rating .x7f-over { font-family: var(--x7f-font-mono); font-size: .72rem; color: var(--x7f-text-dim); font-weight: 400; }

.x7f-reco {
  font-family: var(--x7f-font-mono); font-size: .68rem; text-transform: uppercase; letter-spacing: .08em;
  padding: .3rem .7rem; border: 1px solid var(--x7f-good); color: var(--x7f-good);
}
.x7f-reco--reserve { border-color: var(--x7f-bad); color: var(--x7f-bad); }

.x7f-stat { display: flex; flex-direction: column; gap: .35rem; }
.x7f-stat .x7f-stat-top { display: flex; justify-content: space-between; align-items: baseline; }
.x7f-stat .x7f-stat-name { font-family: var(--x7f-font-mono); font-size: .7rem; letter-spacing: .04em; text-transform: uppercase; color: var(--x7f-text-dim); }
.x7f-stat .x7f-stat-val { font-family: var(--x7f-font-display); font-weight: 700; font-size: .9rem; color: var(--x7f-accent); }
.x7f-meter { height: 8px; background: var(--x7f-surface-2); overflow: hidden; }
.x7f-meter > span { display: block; height: 100%; background: var(--x7f-accent); width: 0; }
.x7f-meter.x7f-warning > span { background: var(--x7f-bad); }
.x7f-meter.x7f-danger > span { background: #c0392b; }
.x7f-meter--0 > span { width: 0%; }
.x7f-meter--5 > span { width: 5%; }
.x7f-meter--10 > span { width: 10%; }
.x7f-meter--15 > span { width: 15%; }
.x7f-meter--20 > span { width: 20%; }
.x7f-meter--25 > span { width: 25%; }
.x7f-meter--30 > span { width: 30%; }
.x7f-meter--35 > span { width: 35%; }
.x7f-meter--40 > span { width: 40%; }
.x7f-meter--45 > span { width: 45%; }
.x7f-meter--50 > span { width: 50%; }
.x7f-meter--55 > span { width: 55%; }
.x7f-meter--60 > span { width: 60%; }
.x7f-meter--65 > span { width: 65%; }
.x7f-meter--70 > span { width: 70%; }
.x7f-meter--75 > span { width: 75%; }
.x7f-meter--80 > span { width: 80%; }
.x7f-meter--85 > span { width: 85%; }
.x7f-meter--90 > span { width: 90%; }
.x7f-meter--95 > span { width: 95%; }
.x7f-meter--100 > span { width: 100%; }

.x7f-proscons { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; background: var(--x7f-border); border: 1px solid var(--x7f-border); margin: 0 0 1.6rem; clip-path: var(--x7f-cut); }
.x7f-proscons .x7f-pc-col { background: var(--x7f-bg); padding: 1.1rem 1.25rem; }
.x7f-proscons h3 {
  font-family: var(--x7f-font-display); font-weight: 700; text-transform: uppercase;
  letter-spacing: .04em; font-size: .95rem; margin: 0 0 .6rem;
}
.x7f-proscons .x7f-pros h3 { color: var(--x7f-good); }
.x7f-proscons .x7f-cons h3 { color: var(--x7f-bad); }
.x7f-proscons ul { margin: 0; padding-left: 1.1rem; display: flex; flex-direction: column; gap: .4rem; font-size: .9rem; color: var(--x7f-text-dim); }

.x7f-article-summary .x7f-as-top--seul { grid-template-columns: 1fr; }
.x7f-article-summary .x7f-as-top--seul .x7f-as-verdict { border-right: none; }
.x7f-proscons--seul { grid-template-columns: 1fr; }

@media (max-width: 640px) {
  .x7f-article-summary .x7f-as-top { grid-template-columns: 1fr; }
  .x7f-article-summary .x7f-as-verdict { border-right: none; border-bottom: 1px solid var(--x7f-border); }
  .x7f-proscons { grid-template-columns: 1fr; }
}

.x7f-category-hero__stats { display: flex; gap: 1.6rem; margin-top: .9rem; flex-wrap: wrap; }
.x7f-category-hero__stats .x7f-hs { display: flex; flex-direction: column; }
.x7f-category-hero__stats .x7f-hs b {
  font-family: var(--x7f-font-display); font-weight: 700; font-size: 1.35rem;
  line-height: 1; color: var(--x7f-accent);
}
.x7f-category-hero__stats .x7f-hs span {
  font-family: var(--x7f-font-mono); font-size: .64rem; letter-spacing: .08em;
  text-transform: uppercase; color: var(--x7f-text-dim); margin-top: .25rem;
}

.x7f-announce-bar {
  display: flex; align-items: center; gap: .75rem; flex-wrap: wrap;
  background: var(--x7f-surface); border-bottom: 1px solid var(--x7f-border);
  padding: .6rem 1.25rem; font-size: .86rem; color: var(--x7f-text-dim);
}
.x7f-announce-bar .x7f-pill {
  font-family: var(--x7f-font-mono); font-size: .64rem; letter-spacing: .1em; text-transform: uppercase;
  background: var(--x7f-accent); color: var(--x7f-accent-contrast); padding: .2rem .55rem;
}
.x7f-announce-bar a { color: var(--x7f-accent); }
.x7f-announce-bar .x7f-close {
  margin-left: auto; background: none; border: 0; color: var(--x7f-text-faint);
  font-size: 1.1rem; line-height: 1; cursor: pointer; padding: .1rem .3rem;
}
.x7f-announce-bar .x7f-close:hover { color: var(--x7f-text); }

.x7f-category-hero--tag h1::before { content: "#"; color: var(--x7f-accent); margin-right: .1em; }
.x7f-category-hero--auteur { display: flex; align-items: center; gap: 1.1rem; flex-wrap: wrap; }
.x7f-category-hero--auteur .x7f-avatar { width: 3.4rem; height: 3.4rem; font-size: 1.2rem; flex: none; }
.x7f-category-hero__profil { min-width: 0; }
.x7f-category-hero__role {
  font-family: var(--x7f-font-mono); font-size: .72rem; letter-spacing: .06em;
  text-transform: uppercase; color: var(--x7f-accent); margin-top: .2rem;
}
.x7f-category-hero__bio { font-size: .9rem; color: var(--x7f-text-dim); margin: .4rem 0 0; max-width: 60ch; }

.x7f-article-tags a.x7f-tag-badge { text-decoration: none; }
.x7f-article-tags a.x7f-tag-badge:hover { border-color: var(--x7f-accent); color: var(--x7f-accent); }
.x7f-article-byline a { color: inherit; text-decoration: none; border-bottom: 1px solid var(--x7f-border); }
.x7f-article-byline a:hover { border-bottom-color: var(--x7f-accent); color: var(--x7f-accent); }

.x7f-article-hero-split {
  display: grid; grid-template-columns: minmax(0, 1fr) 300px;
  gap: var(--x7f-gap); align-items: start; margin: 1.5rem 0 0;
}

.x7f-article-hero-split .x7f-article-title { font-size: clamp(1.7rem, 3.6vw, 2.6rem); }
.x7f-article-hero-split .x7f-article-head { min-width: 0; }
.x7f-article-hero-split .x7f-article-head .x7f-article-byline { margin-bottom: 0; }

.x7f-hero-ad { position: sticky; top: 5.75rem; }
@media (min-width: 941px) { .x7f-hero-ad { display: none; } }
.x7f-ad-slot--square { width: 300px; max-width: 100%; height: 300px; }

.x7f-prose .x7f-article-hero { margin: 1.8rem 0; }
.x7f-prose .x7f-article-hero img { max-height: 22rem; }

@media (max-width: 940px) {

  .x7f-article-hero-split { grid-template-columns: 1fr; }
  .x7f-hero-ad { position: static; }
}

.x7f-search-page { max-width: var(--x7f-maxw-prose); margin: 1.5rem auto 4rem; }
.x7f-search-page__form { display: flex; gap: .6rem; margin: 0 0 1.6rem; }
.x7f-search-page__form input {
  flex: 1; border: 1px solid var(--x7f-border); background: var(--x7f-bg); color: var(--x7f-text);
  padding: .75rem .95rem; font-family: var(--x7f-font-body); font-size: 1rem;
}
.x7f-search-count { font-family: var(--x7f-font-mono); font-size: .74rem; color: var(--x7f-text-dim); margin: 0 0 1.2rem; }
.x7f-search-results { display: grid; gap: 1px; background: var(--x7f-border); border: 1px solid var(--x7f-border); }
.x7f-search-hit { background: var(--x7f-bg); padding: 1rem 1.15rem; display: block; text-decoration: none; color: inherit; clip-path: var(--x7f-cut); }
.x7f-search-hit:hover { background: var(--x7f-surface); }
.x7f-search-hit__meta { font-family: var(--x7f-font-mono); font-size: .66rem; letter-spacing: .08em; text-transform: uppercase; color: var(--x7f-accent); }
.x7f-search-hit__titre { font-family: var(--x7f-font-display); font-weight: 700; font-size: 1.05rem; margin: .25rem 0; }
.x7f-search-hit__dek { font-size: .88rem; color: var(--x7f-text-dim); margin: 0; }
.x7f-search-vide { color: var(--x7f-text-dim); font-size: .95rem; }

.x7f-legal-page { max-width: var(--x7f-maxw-prose); margin: 1.5rem auto 4rem; }
.x7f-legal-maj { font-family: var(--x7f-font-mono); font-size: .72rem; color: var(--x7f-text-dim); margin: 0 0 1.6rem; }
.x7f-legal-page .x7f-prose h2 { font-size: 1.2rem; margin: 2rem 0 .7rem; }
.x7f-legal-page .x7f-prose code {
  font-family: var(--x7f-font-mono); font-size: .84em; padding: .1rem .35rem;
  background: var(--x7f-surface-2); color: var(--x7f-accent);
}

.x7f-callout { border-left: 3px solid var(--x7f-accent); background: var(--x7f-surface); padding: 1rem 1.2rem; margin: 0 0 1.6rem; clip-path: var(--x7f-cut); }
.x7f-callout__label {
  display: block; font-family: var(--x7f-font-mono); font-size: .68rem; letter-spacing: .1em;
  text-transform: uppercase; color: var(--x7f-accent); margin-bottom: .4rem;
}
.x7f-callout p { margin: 0; font-size: .92rem; color: var(--x7f-text-dim); }
.x7f-callout--warn { border-left-color: var(--x7f-bad); }
.x7f-callout--warn .x7f-callout__label { color: var(--x7f-bad); }

.x7f-prose strong { color: var(--x7f-accent); font-weight: 600; }
.x7f-hl {
  background: color-mix(in srgb, var(--x7f-accent) 40%, transparent);
  color: var(--x7f-text); font-weight: 600;
  padding: .05em .28em; border-radius: 2px;
}
.x7f-reserve strong, .x7f-reserve .x7f-hl { color: var(--x7f-bad); }
.x7f-reserve .x7f-hl { background: color-mix(in srgb, var(--x7f-bad) 30%, transparent); }

.x7f-prose figure { margin: 0 0 1.6rem; }
.x7f-prose figure img, .x7f-prose figure video { width: 100%; height: auto; display: block; background: var(--x7f-surface-2); }
.x7f-prose figcaption {
  font-family: var(--x7f-font-mono); font-size: .68rem; color: var(--x7f-text-dim);
  text-align: center; margin-top: .6rem; letter-spacing: .03em;
}

.x7f-pont {
  display: flex; align-items: center; gap: 1.1rem; flex-wrap: wrap;
  background: var(--x7f-surface-2); border: 1px solid var(--x7f-border);
  border-left: 3px solid var(--x7f-bad); padding: 1.05rem 1.25rem; margin: 1rem 0 1.6rem;
  clip-path: var(--x7f-cut);
}

.x7f-pont__k {
  display: block; font-family: var(--x7f-font-mono); font-size: .74rem; font-weight: 700;
  letter-spacing: .12em; text-transform: uppercase; color: var(--x7f-bad); margin-bottom: .45rem;
}
.x7f-pont__t { font-family: var(--x7f-font-display); font-weight: 700; font-size: 1.02rem; line-height: 1.2; }

.x7f-pont__go {
  margin-left: auto; white-space: nowrap; font-family: var(--x7f-font-mono); font-size: .78rem;
  color: var(--x7f-accent); border-bottom: 1px solid var(--x7f-accent);
  display: inline-flex; align-items: center; min-height: 44px; padding: 0 .2rem;
}

.x7f-sortie {
  background: var(--x7f-surface); border: 1px solid var(--x7f-border);
  border-left: 3px solid var(--x7f-accent); padding: 1.5rem 1.6rem; margin: 1.6rem 0;
  clip-path: var(--x7f-cut);
}
.x7f-sortie__k {
  display: block; font-family: var(--x7f-font-mono); font-size: .66rem;
  letter-spacing: .14em; text-transform: uppercase; color: var(--x7f-accent); margin-bottom: .5rem;
}
.x7f-sortie h3 { font-family: var(--x7f-font-display); font-size: 1.2rem; margin: 0 0 .5rem; }
.x7f-sortie p { font-size: .92rem; color: var(--x7f-text-dim); margin: 0 0 1.1rem; }
.x7f-sortie__go {
  display: inline-block; background: var(--x7f-accent); color: var(--x7f-accent-contrast);
  font-family: var(--x7f-font-display); font-weight: 700; font-size: .85rem;
  letter-spacing: .06em; text-transform: uppercase; padding: .7rem 1.2rem;
  text-decoration: none;
  clip-path: var(--x7f-cut-go);
}

.x7f-suite { margin: 2.6rem 0 0; }
.x7f-suite__k {
  display: block; font-family: var(--x7f-font-display); font-size: 1.05rem; font-weight: 700;
  letter-spacing: .04em; border-left: 3px solid var(--x7f-accent); padding-left: .7rem; margin-bottom: 1rem;
}
.x7f-suite__cards { display: grid; gap: 1rem; grid-template-columns: 1fr; }
@media (min-width: 640px) { .x7f-suite__cards { grid-template-columns: repeat(3, 1fr); } }
.x7f-porte {
  background: var(--x7f-surface); border: 1px solid var(--x7f-border); border-top: 2px solid var(--x7f-border);
  padding: 1.05rem 1.15rem; display: flex; flex-direction: column; gap: .45rem;
  text-decoration: none; color: inherit;
  clip-path: var(--x7f-cut);
}
.x7f-porte:hover { border-top-color: var(--x7f-accent); }
.x7f-porte__etat, .x7f-porte__cat {
  font-family: var(--x7f-font-mono); font-size: .6rem; letter-spacing: .12em; text-transform: uppercase;
}
.x7f-porte__etat { color: var(--x7f-text-dim); }
.x7f-porte__cat { color: var(--x7f-accent); }
.x7f-porte__t { font-family: var(--x7f-font-display); font-weight: 700; font-size: 1rem; line-height: 1.22; }
.x7f-porte__go { font-family: var(--x7f-font-mono); font-size: .72rem; color: var(--x7f-accent); margin-top: auto; padding-top: .5rem; }

.x7f-quick-answer__go {
  display: inline-block; margin-left: .35rem; white-space: nowrap;
  font-family: var(--x7f-font-mono); font-size: .78rem; font-weight: 700;
  color: var(--x7f-accent); text-decoration: none;
  border-bottom: 1px solid var(--x7f-accent); padding-bottom: 1px;
}

.x7f-prose h2.x7f-verdict-h {
  color: var(--x7f-verdict);
  border-left: 4px solid var(--x7f-verdict);
  padding-left: .7rem;
}
.x7f-as-head h2 { color: var(--x7f-verdict); }

.x7f-rebond {
  display: flex; align-items: center; gap: 1rem; flex-wrap: wrap;
  background: var(--x7f-surface); border: 1px solid var(--x7f-border);
  border-left: 3px solid var(--x7f-accent); padding: .95rem 1.15rem;
  margin: 0 0 1.6rem; text-decoration: none; color: inherit;
  clip-path: var(--x7f-cut);
}
.x7f-rebond:hover { background: var(--x7f-surface-2); }
.x7f-rebond__t { font-family: var(--x7f-font-display); font-weight: 700; font-size: 1rem; line-height: 1.25; }
.x7f-rebond__w { font-size: .88rem; color: var(--x7f-text-dim); flex: 1 1 14rem; }
.x7f-rebond__go {
  margin-left: auto; white-space: nowrap; font-family: var(--x7f-font-mono);
  font-size: .74rem; color: var(--x7f-accent); border-bottom: 1px solid var(--x7f-accent); padding-bottom: 2px;
}

.x7f-clip { margin: 0 0 1.6rem; }
.x7f-clip video, .x7f-clip__v { width: 100%; height: auto; display: block; background: var(--x7f-surface-2); }

.x7f-clip__facade { position: relative; display: block; width: 100%; aspect-ratio: 16 / 9; padding: 0; border: 0; cursor: pointer; background: var(--x7f-surface-2); overflow: hidden; }
.x7f-clip__vignette { width: 100%; height: 100%; object-fit: cover; display: block; }
.x7f-clip__play { position: absolute; inset: 0; margin: auto; width: 4.6rem; height: 3.2rem; border-radius: .7rem; background: rgba(0,0,0,.62); }
.x7f-clip__play::after { content: ""; position: absolute; inset: 0; margin: auto; width: 0; height: 0; border-style: solid; border-width: .62rem 0 .62rem 1.05rem; border-color: transparent transparent transparent #fff; }
.x7f-clip__facade:hover .x7f-clip__play, .x7f-clip__facade:focus-visible .x7f-clip__play { background: var(--x7f-accent); }
.x7f-clip--yt iframe { width: 100%; aspect-ratio: 16 / 9; height: auto; display: block; border: 0; }

.x7f-disclosure {
  border-left: 3px solid var(--x7f-bad); background: var(--x7f-surface);
  padding: .8rem 1rem; margin: 0 0 1.4rem; font-size: .88rem; color: var(--x7f-text-dim);
  clip-path: var(--x7f-cut);
}
.x7f-disclosure__tag {
  font-family: var(--x7f-font-mono); font-size: .64rem; letter-spacing: .1em; text-transform: uppercase;
  color: var(--x7f-bad); margin-right: .5rem;
}

.x7f-btn {
  font-family: var(--x7f-font-display); font-weight: 700; text-transform: uppercase; letter-spacing: .05em;
  font-size: .8rem; padding: .55rem 1.1rem; border: 1px solid var(--x7f-border); background: transparent;
  color: var(--x7f-text); cursor: pointer; text-decoration: none; display: inline-block;
  clip-path: var(--x7f-cut-go);
}
.x7f-btn--primary { background: var(--x7f-accent); border-color: var(--x7f-accent); color: var(--x7f-accent-contrast); }
.x7f-btn--secondary { background: var(--x7f-surface-2); }
.x7f-btn--ghost { border-color: transparent; color: var(--x7f-text-dim); }
.x7f-btn--ghost:hover { color: var(--x7f-text); }

.x7f-cookie-banner {
  display: none; position: fixed; left: 0; right: 0; bottom: 0; z-index: 70;
  background: var(--x7f-surface); border-top: 1px solid var(--x7f-border);
  padding: 1rem 1.25rem; box-shadow: 0 -8px 24px rgba(0, 0, 0, .35);
}
.x7f-cookie-banner.x7f-is-visible { display: block; }
.x7f-cookie-banner__inner {
  max-width: var(--x7f-container); margin: 0 auto;
  display: flex; align-items: center; gap: 1.25rem; flex-wrap: wrap;
}
.x7f-cookie-banner p { margin: 0; font-size: .88rem; color: var(--x7f-text-dim); flex: 1; min-width: 16rem; }
.x7f-cookie-banner__actions { display: flex; gap: .5rem; flex-wrap: wrap; }

@media (max-width: 560px) {
  .x7f-cookie-banner { padding: .9rem 1rem; }
  .x7f-cookie-banner p { min-width: 0; flex: 1 1 100%; }

  .x7f-cookie-banner__inner { min-width: 0; }
  .x7f-cookie-banner__actions { width: 100%; min-width: 0; }

  .x7f-cookie-banner__actions .x7f-btn { flex: 1 1 auto; min-width: 0; min-height: 44px; }
  .x7f-cookie-banner { max-width: 100vw; }
}

.x7f-article-layout { display: grid; grid-template-columns: 1fr 340px; gap: var(--x7f-gap); margin-top: 1.5rem; }
.x7f-article-main { min-width: 0; max-width: var(--x7f-maxw-prose); }

.x7f-breadcrumb { display: flex; flex-wrap: wrap; align-items: center; gap: .35rem; font-family: var(--x7f-font-mono); font-size: .75rem; color: var(--x7f-text-dim); margin-bottom: .9rem; }
.x7f-breadcrumb a { text-decoration: none; color: var(--x7f-text-dim); }

.x7f-breadcrumb .x7f-chev { color: var(--x7f-text-faint); margin: 0 .15rem; }

.x7f-article-tags { display: flex; flex-wrap: wrap; gap: .5rem; margin-bottom: .9rem; }
.x7f-tag-badge {
  font-family: var(--x7f-font-mono); font-size: .68rem; text-transform: uppercase; letter-spacing: .08em;
  padding: .25rem .65rem; border: 1px solid var(--x7f-border); color: var(--x7f-text-dim);
  clip-path: var(--x7f-cut-sm);
}
.x7f-tag-badge--score { background: var(--x7f-accent); color: var(--x7f-accent-contrast); border-color: var(--x7f-accent); font-weight: 600; }

.x7f-article-title {

  font-family: var(--x7f-font-display); font-weight: 800; letter-spacing: .01em;
  font-size: clamp(1.9rem, 4.5vw, 3rem); line-height: 1.06; margin: 0 0 .6rem; text-wrap: balance;
  color: var(--x7f-text);
}
.x7f-article-dek { font-size: 1.08rem; color: var(--x7f-text-dim); margin: 0 0 1.1rem; }
.x7f-article-byline {

  display: flex; flex-wrap: wrap; align-items: center; gap: .65rem; margin-bottom: 1.4rem;
  padding: .9rem 0; border-top: 1px solid var(--x7f-border); border-bottom: 1px solid var(--x7f-border);
  font-family: var(--x7f-font-mono); font-size: .78rem; color: var(--x7f-text-dim);
}
.x7f-avatar {
  width: 2.1rem; height: 2.1rem; background: var(--x7f-surface-2); color: var(--x7f-text);
  display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: .8rem;
  clip-path: var(--x7f-cut);
}

.x7f-quick-answer {
  background: var(--x7f-surface); border-left: 3px solid var(--x7f-accent);
  padding: 1.1rem 1.3rem; margin-bottom: 1.4rem; font-size: .97rem;
  clip-path: var(--x7f-cut);
}
.x7f-quick-answer strong {
  display: block; font-family: var(--x7f-font-mono); font-size: .7rem; text-transform: uppercase;
  letter-spacing: .1em; color: var(--x7f-accent); margin-bottom: .4rem;
}

.x7f-article-hero { margin-bottom: 1.6rem; }
.x7f-article-hero-credit { font-family: var(--x7f-font-mono); font-size: .7rem; color: var(--x7f-text-faint); margin-top: .4rem; }

.x7f-prose h2 {
  font-family: var(--x7f-font-display); font-weight: 700; text-transform: uppercase; letter-spacing: .03em;
  font-size: 1.45rem; margin: 2.2rem 0 .8rem; scroll-margin-top: 6rem;
}
.x7f-prose p { margin: 0 0 1rem; }
.x7f-article-hero { margin: 0 0 1.6rem; }

.x7f-article-hero img {
  max-width: 100%; height: auto; max-height: 26rem;
  object-fit: cover; background: var(--x7f-surface-2);
}

.x7f-home-title {
  font-family: var(--x7f-font-display); font-weight: 800; text-transform: uppercase;
  letter-spacing: .04em; font-size: 1.6rem; margin: 1.6rem 0 1rem;
}
.x7f-home-title span { color: var(--x7f-text-dim); font-weight: 600; }

.x7f-prose h3 {
  font-family: var(--x7f-font-display); font-weight: 700; text-transform: uppercase; letter-spacing: .03em;
  font-size: 1.08rem; margin: 1.8rem 0 .6rem;
}
.x7f-prose ul { margin: 0 0 1.2rem; padding-left: 1.2rem; display: flex; flex-direction: column; gap: .4rem; }

.x7f-prose a:not([class]) { color: var(--x7f-accent); text-decoration: none; border-bottom: 1px solid transparent; }
.x7f-prose a:not([class]):hover { border-bottom-color: var(--x7f-accent); }

.x7f-table-wrap { overflow-x: auto; margin: 0 0 1.6rem; border: 1px solid var(--x7f-border); }
.x7f-table-wrap table { border-collapse: collapse; width: 100%; font-size: .86rem; }
.x7f-table-wrap th {
  font-family: var(--x7f-font-mono); font-size: .68rem; letter-spacing: .08em; text-transform: uppercase;
  color: var(--x7f-text-dim); text-align: left; padding: .6rem .8rem; white-space: nowrap;
  background: var(--x7f-surface); border-bottom: 1px solid var(--x7f-border);
}
.x7f-table-wrap td { padding: .6rem .8rem; border-bottom: 1px solid var(--x7f-border); vertical-align: top; }
.x7f-table-wrap tbody tr:nth-child(even) { background: var(--x7f-surface); }
.x7f-table-wrap tbody tr:last-child td { border-bottom: 0; }
.x7f-table-wrap td:first-child { font-weight: 600; }

@media (max-width: 768px) {
  .x7f-table-wrap { border: 0; overflow-x: visible; }
  .x7f-table-wrap table, .x7f-table-wrap tbody, .x7f-table-wrap tr, .x7f-table-wrap td { display: block; width: 100%; }
  .x7f-table-wrap thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  .x7f-table-wrap tr {
    border: 1px solid var(--x7f-border); margin-bottom: .8rem; background: var(--x7f-bg);
    clip-path: var(--x7f-cut);
  }
  .x7f-table-wrap tbody tr:nth-child(even) { background: var(--x7f-bg); }
  .x7f-table-wrap td { border-bottom: 1px solid var(--x7f-border); padding: .55rem .8rem; }
  .x7f-table-wrap tr td:last-child { border-bottom: 0; }
  .x7f-table-wrap td:first-child {
    background: var(--x7f-surface); font-family: var(--x7f-font-display); font-weight: 700;
    text-transform: uppercase; letter-spacing: .03em; font-size: 1rem;
  }

  .x7f-table-wrap td[data-col]:not(:first-child) {
    display: flex; justify-content: space-between; gap: 1rem; align-items: baseline;
  }
  .x7f-table-wrap td[data-col]:not(:first-child)::before {
    content: attr(data-col);
    font-family: var(--x7f-font-mono); font-size: .66rem; letter-spacing: .06em;
    text-transform: uppercase; color: var(--x7f-text-dim); flex: none;
  }
}

.x7f-section-ad { margin: 2rem 0; display: flex; justify-content: center; }
.x7f-midread-nudge {
  background: var(--x7f-surface); border: 1px solid var(--x7f-border); padding: .85rem 1.1rem;
  margin: 1.6rem 0; font-size: .87rem; display: flex; gap: .7rem; align-items: center;
  clip-path: var(--x7f-cut);
}
.x7f-midread-nudge strong {
  font-family: var(--x7f-font-mono); font-size: .68rem; text-transform: uppercase;
  letter-spacing: .08em; color: var(--x7f-accent); white-space: nowrap;
}

.x7f-verdict-full {
  background: var(--x7f-surface); padding: 1.6rem; margin: 2.2rem 0 1rem;
  clip-path: var(--x7f-cut);
}
.x7f-verdict-full > strong {
  font-family: var(--x7f-font-mono); font-size: .7rem; text-transform: uppercase;
  letter-spacing: .1em; color: var(--x7f-text-faint);
}
.x7f-verdict-score {
  font-family: var(--x7f-font-mono); font-size: 2.4rem; font-weight: 500;
  color: var(--x7f-accent); font-variant-numeric: tabular-nums; line-height: 1.1;
}

.x7f-buy-box {
  border: 1px solid var(--x7f-accent); padding: 1.15rem 1.3rem; margin: 1rem 0 2rem;
  display: flex; align-items: center; justify-content: space-between; gap: 1rem; flex-wrap: wrap;
  clip-path: var(--x7f-cut);
}
.x7f-buy-box__label {
  font-family: var(--x7f-font-mono); font-size: .68rem; text-transform: uppercase;
  letter-spacing: .08em; color: var(--x7f-text-faint);
}
.x7f-buy-box__cta {
  background: var(--x7f-accent); color: var(--x7f-accent-contrast); border: none; cursor: pointer;
  padding: .75rem 1.5rem; font-weight: 700; font-size: .95rem; font-family: var(--x7f-font-display);
  text-transform: uppercase; letter-spacing: .05em;
  clip-path: var(--x7f-cut-go);
}

.x7f-pros-cons { display: grid; grid-template-columns: 1fr 1fr; gap: var(--x7f-gap); margin: 1.6rem 0; }
.x7f-pros-cons h3 {
  font-family: var(--x7f-font-mono); font-size: .72rem; text-transform: uppercase;
  letter-spacing: .1em; margin: 0 0 .6rem;
}
.x7f-pros-cons ul { margin: 0; padding-left: 1.2rem; font-size: .9rem; color: var(--x7f-text-dim); }
.x7f-pros-cons .x7f-pros h3 { color: var(--x7f-good); }
.x7f-pros-cons .x7f-cons h3 { color: var(--x7f-bad); }

.x7f-author-box {
  display: flex; gap: 1rem; align-items: flex-start; background: var(--x7f-surface);
  padding: 1.3rem; margin: 2.2rem 0;
  clip-path: var(--x7f-cut);
}
.x7f-author-box .x7f-avatar { width: 3rem; height: 3rem; font-size: 1rem; }
.x7f-verified-badge { font-family: var(--x7f-font-mono); font-size: .68rem; color: var(--x7f-good); }

.x7f-read-next { margin: 2.2rem 0; }
.x7f-read-next h3 {
  font-family: var(--x7f-font-display); font-weight: 700; text-transform: uppercase;
  letter-spacing: .04em; font-size: 1.25rem; margin-bottom: 1rem;
}

.x7f-card-grid {
  display: grid; gap: 1.1rem;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
}

.x7f-card-grid[data-n="1"] { grid-template-columns: repeat(auto-fit, minmax(min(260px, 100%), 420px)); }
.x7f-card-grid[data-n="2"] { grid-template-columns: repeat(auto-fit, minmax(min(260px, 100%), 420px)); }
.x7f-article-card { text-decoration: none; color: var(--x7f-text); display: block; cursor: pointer; }

.x7f-article-card img {
  aspect-ratio: 16/9; object-fit: cover; background: var(--x7f-surface-2); width: 100%;
  clip-path: var(--x7f-cut);
}
.x7f-article-card__meta {
  font-family: var(--x7f-font-mono); font-size: .68rem; color: var(--x7f-text-faint);
  margin: .6rem 0 .25rem; text-transform: uppercase; letter-spacing: .06em;
}
.x7f-article-card__title { font-size: .97rem; font-weight: 600; margin: 0 0 .3rem; line-height: 1.3; }
.x7f-article-card:hover .x7f-article-card__title { color: var(--x7f-accent); }

.x7f-article-side {
  align-self: stretch;
  display: flex; flex-direction: column; gap: 1rem;
}

.x7f-side-ad-static { margin-bottom: 5rem; }
.x7f-side-block--sticky {
  position: sticky; top: 5.75rem;
  display: flex; flex-direction: column; gap: 1rem;
}
.x7f-toc {
  border: 1px solid var(--x7f-border); padding: 1.1rem;
  clip-path: var(--x7f-cut);
}
.x7f-toc h4 {
  font-family: var(--x7f-font-mono); font-size: .7rem; text-transform: uppercase;
  letter-spacing: .1em; color: var(--x7f-text-faint); margin: 0 0 .7rem; font-weight: 500;
}
.x7f-toc ol { margin: 0; padding-left: 1.15rem; font-size: .85rem; display: flex; flex-direction: column; gap: .5rem; }
.x7f-toc a { text-decoration: none; color: var(--x7f-text-dim); }
.x7f-toc a.x7f-is-active { color: var(--x7f-accent); font-weight: 600; }

@media (max-width: 940px) {
  .x7f-article-layout { grid-template-columns: 1fr; }

  .x7f-article-side { order: -1; align-self: auto; }
  .x7f-side-ad-static { margin-bottom: 0; }
  .x7f-side-block--sticky { position: static; }
  .x7f-article-side .x7f-ad-slot { display: none; }
}
@media (max-width: 820px) { .x7f-card-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 680px) { .x7f-pros-cons { grid-template-columns: 1fr; } }
@media (max-width: 520px) { .x7f-card-grid { grid-template-columns: 1fr; } }

.x7f-spotlight {
  display: grid; grid-template-columns: 1.5fr 1fr; gap: var(--x7f-gap);
  margin: 1.75rem 0;
}

.x7f-spotlight-main {
  position: relative; text-decoration: none; color: var(--x7f-text);
  display: flex; flex-direction: column; justify-content: flex-end;
  min-height: 340px; overflow: hidden;
  clip-path: var(--x7f-cut);
}
.x7f-spotlight-main img {
  position: absolute; inset: 0; z-index: 0;
  width: 100%; height: 100%; object-fit: cover;
  background: var(--x7f-surface-2); display: block;
}

.x7f-spotlight-main::after {
  content: ''; position: absolute; inset: 0; z-index: 1;
  background: linear-gradient(180deg, transparent 0%, rgba(0,0,0,.20) 40%, rgba(0,0,0,.95) 94%);
}
.x7f-spotlight-main__body {
  position: relative; z-index: 2; padding: 1.5rem 1.25rem 1.1rem;
}
.x7f-spotlight-main__body .x7f-tag-badge { background: var(--x7f-accent); color: var(--x7f-accent-contrast); border: 0; }
.x7f-spotlight-main__title {
  font-family: var(--x7f-font-display); font-weight: 800; text-transform: uppercase;
  letter-spacing: .02em; font-size: 1.7rem; line-height: 1.05; margin: .55rem 0 .3rem;
  color: #fff;
}
.x7f-spotlight-main__dek { font-size: .88rem; color: rgba(255,255,255,.75); margin: 0; max-width: 52ch; }
.x7f-spotlight-list { display: flex; flex-direction: column; gap: .75rem; }
.x7f-spotlight-item {
  display: flex; gap: .85rem; align-items: center;
  text-decoration: none; color: var(--x7f-text);
  background: var(--x7f-surface); border: 1px solid var(--x7f-border);
  padding: .6rem; flex: 1;
  clip-path: var(--x7f-cut);
}
.x7f-spotlight-item:hover { border-color: var(--x7f-accent); }

.x7f-spotlight-item img { width: 6.5rem; aspect-ratio: 16/9; height: auto; object-fit: cover; background: var(--x7f-surface-2); flex-shrink: 0; }
.x7f-spotlight-item > span { flex: 1; min-width: 0; }

.x7f-section-head {
  color: var(--x7f-accent);
  font-family: var(--x7f-font-display); font-weight: 800; text-transform: uppercase;
  letter-spacing: .05em; font-size: 1.5rem; margin: 2.5rem 0 1rem;
  display: flex; justify-content: space-between; align-items: baseline; gap: 1rem;
}
.x7f-section-head a { font-family: var(--x7f-font-mono); font-size: .75rem; text-transform: none; letter-spacing: 0; }

.x7f-covered-grid {
  display: grid; gap: 1rem;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.x7f-covered-grid[data-n="1"] { grid-template-columns: repeat(auto-fit, minmax(min(220px, 100%), 340px)); }
.x7f-covered-grid[data-n="2"] { grid-template-columns: repeat(auto-fit, minmax(min(220px, 100%), 340px)); }
.x7f-covered-card { text-decoration: none; color: var(--x7f-text); text-align: center; }

.x7f-covered-card img {
  aspect-ratio: 16/9; object-fit: cover; background: var(--x7f-surface-2); width: 100%;
  clip-path: var(--x7f-cut);
}

.x7f-home-layout { display: grid; grid-template-columns: 1fr 320px; gap: var(--x7f-gap); margin-top: 2.5rem; }
.x7f-home-main { min-width: 0; }
.x7f-home-side { align-self: stretch; }
.x7f-home-side__sticky { position: sticky; top: 5.75rem; display: flex; flex-direction: column; gap: 1rem; }

.x7f-listing-layout { display: grid; grid-template-columns: 1fr 320px; gap: var(--x7f-gap); }
.x7f-listing-main { min-width: 0; }
.x7f-listing-side { align-self: stretch; }
.x7f-listing-side__sticky { position: sticky; top: 5.75rem; display: flex; flex-direction: column; gap: 1rem; }
.x7f-trending {
  border: 1px solid var(--x7f-border); padding: 1.1rem;
  clip-path: var(--x7f-cut);
}
.x7f-trending h4 {
  font-family: var(--x7f-font-mono); font-size: .7rem; text-transform: uppercase;
  letter-spacing: .1em; color: var(--x7f-text-faint); margin: 0 0 .7rem; font-weight: 500;
}
.x7f-trending ol { margin: 0; padding-left: 1.2rem; font-size: .85rem; display: flex; flex-direction: column; gap: .65rem; color: var(--x7f-text-dim); }

.x7f-newsletter {
  border: 1px solid var(--x7f-accent);
  background: linear-gradient(100deg, color-mix(in srgb, var(--x7f-accent) 12%, var(--x7f-bg)) 0%, var(--x7f-bg) 55%);
  padding: 2.5rem 2rem; text-align: center; margin: 3rem 0;
  clip-path: var(--x7f-cut);
}
.x7f-newsletter h2 {
  font-family: var(--x7f-font-display); font-weight: 800; text-transform: uppercase;
  letter-spacing: .04em; font-size: 1.75rem; margin: 0 0 .5rem;
}
.x7f-newsletter p { color: var(--x7f-text-dim); margin: 0 auto; max-width: 38ch; font-size: .92rem; }
.x7f-newsletter form { display: flex; gap: .6rem; max-width: 26rem; margin: 1.4rem auto 0; }
.x7f-newsletter input {
  flex: 1; border: 1px solid var(--x7f-border); background: var(--x7f-bg); color: var(--x7f-text);
  padding: .7rem .9rem; font-family: var(--x7f-font-body); font-size: .9rem;
}
.x7f-newsletter input::placeholder { color: var(--x7f-text-faint); }
.x7f-newsletter button {
  background: var(--x7f-accent); color: var(--x7f-accent-contrast); border: none; cursor: pointer;
  padding: .7rem 1.4rem; font-family: var(--x7f-font-display); font-weight: 700;
  text-transform: uppercase; letter-spacing: .06em; font-size: .9rem;
  clip-path: var(--x7f-cut-go);
}

@media (max-width: 940px) {
  .x7f-spotlight { grid-template-columns: 1fr; }
  .x7f-home-layout, .x7f-listing-layout { grid-template-columns: 1fr; }
  .x7f-home-side, .x7f-listing-side { align-self: auto; }
  .x7f-home-side__sticky, .x7f-listing-side__sticky { position: static; }

}
@media (max-width: 820px) { .x7f-covered-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 520px) { .x7f-covered-grid { grid-template-columns: 1fr; } }

.x7f-category-hero {
  background: var(--x7f-surface); padding: 2.75rem 1.75rem; margin: 1.5rem 0;
  clip-path: var(--x7f-cut);
  position: relative; overflow: hidden; min-height: 11rem;
  display: flex; flex-direction: column; justify-content: center;
}

.x7f-category-hero__bg {
  position: absolute; inset: 0; width: 100%; height: 100%;
  object-fit: cover; object-position: center 30%;
}
.x7f-category-hero__veil {
  position: absolute; inset: 0;
  background: linear-gradient(90deg, rgba(0,0,0,.86) 0%, rgba(0,0,0,.55) 55%, rgba(0,0,0,.30) 100%);
}
.x7f-category-hero > .x7f-tag-badge, .x7f-category-hero > h1, .x7f-category-hero > .x7f-category-hero-credit { position: relative; }
.x7f-category-hero .x7f-tag-badge { align-self: flex-start; }
.x7f-category-hero-credit { font-family: var(--x7f-font-mono); font-size: .68rem; color: var(--x7f-text-faint); margin: .6rem 0 0; }
.x7f-category-hero h1 {
  font-family: var(--x7f-font-display); font-weight: 800; text-transform: uppercase;
  letter-spacing: .03em; font-size: 2.2rem; margin: .7rem 0 .5rem;
}
.x7f-category-hero p { color: var(--x7f-text-dim); max-width: 52ch; margin: 0; }
.x7f-listing-count { font-family: var(--x7f-font-mono); font-size: .78rem; color: var(--x7f-text-faint); margin: 1.5rem 0 1rem; text-transform: uppercase; letter-spacing: .06em; }
.x7f-listing-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; }
.x7f-listing-grid .x7f-article-card { border: 1px solid var(--x7f-border); }
.x7f-listing-grid .x7f-article-card img { clip-path: none; }
.x7f-listing-grid .x7f-article-card__body { padding: .85rem; }
.x7f-pagination { display: flex; justify-content: center; gap: .4rem; margin: 2.5rem 0; }
.x7f-pagination a, .x7f-pagination span {
  width: 2.4rem; height: 2.4rem; border: 1px solid var(--x7f-border);
  display: flex; align-items: center; justify-content: center;
  text-decoration: none; color: var(--x7f-text); font-family: var(--x7f-font-mono); font-size: .85rem;
}
.x7f-pagination .x7f-is-current { background: var(--x7f-accent); color: var(--x7f-accent-contrast); border-color: var(--x7f-accent); }

@media (max-width: 820px) { .x7f-listing-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 520px) { .x7f-listing-grid { grid-template-columns: 1fr; } }

.x7f-search-form { display: flex; gap: .5rem; }
.x7f-search-form input {
  flex: 1; border: 1px solid var(--x7f-border); background: var(--x7f-bg); color: var(--x7f-text);
  padding: .6rem .8rem; font-family: var(--x7f-font-body);
}

.x7f-bandeau { margin: 2rem 0; }
.x7f-bandeau__lien {
  position: relative; display: block; overflow: hidden;
  text-decoration: none; color: #fff;
  aspect-ratio: 920 / 240;
  background: var(--x7f-surface-2);
  clip-path: var(--x7f-cut);
}

.x7f-bandeau__lien::after {
  content: ""; position: absolute; inset: 0; z-index: 1;
  background:
    linear-gradient(90deg, rgba(0,0,0,.10) 0%, rgba(0,0,0,.52) 45%, rgba(0,0,0,.88) 100%),
    linear-gradient(0deg, rgba(255,255,255,.10) 0%, transparent 42%);
}

.x7f-bandeau__lien::before {
  content: ""; position: absolute; z-index: 3; left: 0; right: 0; bottom: 0; height: 3px;
  background: linear-gradient(90deg, var(--x7f-accent) 0%, transparent 70%);
}
.x7f-bandeau__fond {
  position: absolute; inset: 0; width: 100%; height: 100%;
  object-fit: cover; object-position: center 35%;
  transform: scale(1.02);
  transition: transform .5s ease;
}
.x7f-bandeau__texte {
  position: absolute; z-index: 2; right: 1.4rem; bottom: 1.2rem; left: auto;
  display: flex; flex-direction: column; align-items: flex-end; gap: .55rem;
  text-align: right; max-width: 62%;
}
.x7f-bandeau__accroche {
  font-family: var(--x7f-font-display); font-weight: 700;
  font-size: clamp(1.05rem, 2.6vw, 1.7rem); line-height: 1.12;
  text-shadow: 0 2px 12px rgba(0,0,0,.8);
}
.x7f-bandeau__appel {
  position: relative; display: inline-block; padding: .42rem 1rem;
  background: var(--x7f-accent); color: var(--x7f-accent-contrast);
  font-family: var(--x7f-font-mono); font-size: .74rem; font-weight: 600;
  text-transform: uppercase; letter-spacing: .08em; white-space: nowrap;
  clip-path: var(--x7f-cut-sm);
  transition: transform .25s ease, box-shadow .25s ease;
}

.x7f-bandeau__lien:hover .x7f-bandeau__fond { transform: scale(1.07); }
.x7f-bandeau__lien:hover .x7f-bandeau__appel {
  transform: translateX(4px);
  box-shadow: 0 0 0 3px rgba(255,255,255,.22);
}

.x7f-bandeau__lien .x7f-bandeau__reflet {
  position: absolute; z-index: 2; top: 0; bottom: 0; width: 45%;
  left: -60%; pointer-events: none;
  background: linear-gradient(105deg, transparent, rgba(255,255,255,.16), transparent);
}
.x7f-bandeau__lien:hover .x7f-bandeau__reflet { animation: bandeau-reflet .85s ease-out; }
@keyframes bandeau-reflet { to { left: 115%; } }

.x7f-bandeau--duel .x7f-bandeau__lien { display: flex; }
.x7f-bandeau__cote { position: relative; flex: 1; overflow: hidden; }
.x7f-bandeau__cote img {
  width: 100%; height: 100%; object-fit: cover; display: block;
  transition: transform .5s ease, filter .5s ease;
}

.x7f-bandeau__cote--g { clip-path: polygon(0 0, 100% 0, calc(100% - 3.2rem) 100%, 0 100%); margin-right: -1.6rem; }
.x7f-bandeau__cote--d { clip-path: polygon(3.2rem 0, 100% 0, 100% 100%, 0 100%); margin-left: -1.6rem; }

.x7f-bandeau__cote--g::after,
.x7f-bandeau__cote--d::after { content: ""; position: absolute; inset: 0; mix-blend-mode: color; opacity: .38; }
.x7f-bandeau__cote--g::after { background: #1e6fff; }
.x7f-bandeau__cote--d::after { background: var(--x7f-accent); }
.x7f-bandeau__lien:hover .x7f-bandeau__cote--g img { transform: scale(1.05) translateX(-4px); }
.x7f-bandeau__lien:hover .x7f-bandeau__cote--d img { transform: scale(1.05) translateX(4px); }
.x7f-bandeau__vs {
  position: absolute; z-index: 4; top: 50%; left: 50%; transform: translate(-50%, -50%);
  display: grid; place-items: center; width: 3.4rem; height: 3.4rem;
  border-radius: 50%; background: rgba(10,10,10,.82);
  border: 2px solid var(--x7f-accent);
  font-family: var(--x7f-font-display); font-weight: 800; font-size: clamp(1rem, 2.4vw, 1.35rem);
  color: #fff; letter-spacing: .04em;
  animation: bandeau-vs 2.6s ease-in-out infinite;
}

@keyframes bandeau-vs {
  0%, 100% { box-shadow: 0 0 0 0 rgba(255,255,255,.35); }
  50%      { box-shadow: 0 0 0 .7rem transparent; }
}
.x7f-bandeau--duel .x7f-bandeau__lien::after {
  background: linear-gradient(180deg, rgba(0,0,0,.06) 0%, rgba(0,0,0,.28) 55%, rgba(0,0,0,.86) 100%);
}
.x7f-bandeau__texte--duel {
  right: 0; left: 0; bottom: 1rem; max-width: none;
  align-items: center; text-align: center;
}

.x7f-bandeau--bande { margin: 1.6rem 0; }
.x7f-bandeau__fenetre { overflow: hidden; position: relative; }

.x7f-bandeau__fenetre::before,
.x7f-bandeau__fenetre::after {
  content: ""; position: absolute; z-index: 2; top: 0; bottom: 0; width: 3rem; pointer-events: none;
}
.x7f-bandeau__fenetre::before { left: 0; background: linear-gradient(90deg, var(--x7f-bg) 0%, transparent 100%); }
.x7f-bandeau__fenetre::after { right: 0; background: linear-gradient(270deg, var(--x7f-bg) 0%, transparent 100%); }

.x7f-bandeau__piste { display: flex; gap: .8rem; width: max-content; }

.x7f-bandeau__piste--anime { animation: bandeau-defile 46s linear infinite; }
@keyframes bandeau-defile {
  from { transform: translateX(0); }
  to   { transform: translateX(calc(-50% - .4rem)); }
}

.x7f-bandeau--bande:hover .x7f-bandeau__piste--anime,
.x7f-bandeau--bande:focus-within .x7f-bandeau__piste--anime { animation-play-state: paused; }

.x7f-bandeau__tuile {
  position: relative; display: block; flex: 0 0 auto; width: 17rem;
  text-decoration: none; color: #fff; overflow: hidden;
  aspect-ratio: 460 / 215; clip-path: var(--x7f-cut-sm);
  background: var(--x7f-surface-2);
}
.x7f-bandeau__tuile img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .45s ease; }
.x7f-bandeau__tuile::after {
  content: ""; position: absolute; inset: 0;
  background: linear-gradient(180deg, transparent 30%, rgba(0,0,0,.88) 100%);
}
.x7f-bandeau__tuile:hover img { transform: scale(1.06); }
.x7f-bandeau__tuile:hover { outline: 2px solid var(--x7f-accent); outline-offset: -2px; }
.x7f-bandeau__jeu {
  position: absolute; z-index: 2; left: .75rem; top: .6rem;
  padding: .12rem .45rem; background: var(--x7f-accent); color: var(--x7f-accent-contrast);
  font-family: var(--x7f-font-mono); font-size: .62rem; text-transform: uppercase; letter-spacing: .06em;
  clip-path: var(--x7f-cut-sm);
}
.x7f-bandeau__tuile .x7f-bandeau__accroche {
  position: absolute; z-index: 2; left: .75rem; right: .75rem; bottom: .6rem;
  font-size: .95rem; line-height: 1.18; text-align: left;
}

.x7f-bandeau__marque { position: absolute; z-index: 2; left: 1.4rem; top: 1.1rem; }
.x7f-bandeau__logo {
  display: block; max-width: 11rem; max-height: 3.6rem; width: auto; height: auto;
  filter: drop-shadow(0 2px 10px rgba(0,0,0,.85));
}
.x7f-bandeau__nom {
  font-family: var(--x7f-font-display); font-weight: 700; font-size: 1.1rem;
  letter-spacing: .02em; text-shadow: 0 2px 10px rgba(0,0,0,.85);
}

.x7f-bandeau__urgence {
  align-self: flex-end; padding: .12rem .5rem;
  background: var(--x7f-accent); color: var(--x7f-accent-contrast);
  font-family: var(--x7f-font-mono); font-size: .64rem; font-weight: 600;
  text-transform: uppercase; letter-spacing: .08em;
  clip-path: var(--x7f-cut-sm);
}
.x7f-bandeau__logo--tuile { position: absolute; z-index: 2; left: .7rem; top: .6rem; max-width: 7rem; max-height: 2.2rem; }

.x7f-bandeau--promo { --x7f-promo-teinte: var(--x7f-accent); margin: 2rem 0; }
.x7f-promo__lien {
  position: relative; display: flex; align-items: stretch; overflow: hidden;
  text-decoration: none; color: #fff; min-height: 8.5rem;
  background:
    radial-gradient(circle at 1px 1px, rgba(0,0,0,.30) 1px, transparent 1px) 0 0 / 9px 9px,
    linear-gradient(115deg, var(--x7f-promo-teinte) 0%, color-mix(in srgb, var(--x7f-promo-teinte) 62%, #111) 100%);
  clip-path: var(--x7f-cut);
  border: 2px solid rgba(0,0,0,.35);
}

.x7f-promo__lien::after {
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background: radial-gradient(circle at 1px 1px, rgba(0,0,0,.22) 1.4px, transparent 1.4px) 0 0 / 6px 6px;
  -webkit-mask-image: linear-gradient(90deg, transparent 52%, #000 72%);
  mask-image: linear-gradient(90deg, transparent 52%, #000 72%);
}

.x7f-promo__panneaux { position: relative; z-index: 3; display: flex; gap: 4px; flex: 0 0 52%; padding: 6px; }
.x7f-promo__panneau {
  flex: 1; background-size: cover; background-repeat: no-repeat;
  border: 2px solid rgba(255,255,255,.85);
  box-shadow: 0 3px 10px rgba(0,0,0,.4);
  transition: transform .3s ease;
}
.x7f-promo__lien:hover .x7f-promo__panneau { transform: translateY(-3px); }
.x7f-promo__lien:hover .x7f-promo__panneau:nth-child(2) { transition-delay: .04s; }
.x7f-promo__lien:hover .x7f-promo__panneau:nth-child(3) { transition-delay: .08s; }
.x7f-promo__lien:hover .x7f-promo__panneau:nth-child(4) { transition-delay: .12s; }

.x7f-promo__droite {
  position: relative; z-index: 2; flex: 1;
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  gap: .5rem; padding: .8rem 1rem; text-align: center;
}
.x7f-promo__logo { max-width: 8rem; max-height: 2rem; width: auto; filter: drop-shadow(0 2px 6px rgba(0,0,0,.6)); }
.x7f-promo__jeu {
  font-family: var(--x7f-font-display); font-size: .82rem; font-weight: 600;
  letter-spacing: .1em; text-transform: uppercase; opacity: .92;
}

.x7f-promo__bulle {
  position: relative; display: inline-block;
  background: #fff; color: #111; padding: .5rem .95rem;
  border: 2px solid #111; border-radius: 1.1rem;
  box-shadow: 3px 3px 0 rgba(0,0,0,.55);
}
.x7f-promo__bulle::after {
  content: ""; position: absolute; left: 1.4rem; bottom: -.62rem;
  border-left: .55rem solid transparent; border-right: .55rem solid transparent;
  border-top: .65rem solid #111;
}
.x7f-promo__affirmation {
  font-family: var(--x7f-font-display); font-weight: 800;
  font-size: clamp(.95rem, 2.1vw, 1.45rem); line-height: 1.08;
  text-transform: uppercase; letter-spacing: .01em;
}

.x7f-promo__bouton {
  display: inline-block; padding: .5rem 1.5rem;
  background: #111; color: #fff; border: 2px solid #fff;
  font-family: var(--x7f-font-mono); font-size: .82rem; font-weight: 700;
  text-transform: uppercase; letter-spacing: .12em; white-space: nowrap;
  box-shadow: 3px 3px 0 rgba(0,0,0,.5);
  transition: transform .18s ease, box-shadow .18s ease;
}
.x7f-promo__lien:hover .x7f-promo__bouton {
  transform: translate(-2px, -2px);
  box-shadow: 5px 5px 0 rgba(0,0,0,.55);
}

.x7f-promo__bouton { animation: promo-battement 3.4s ease-in-out infinite; }
@keyframes promo-battement {
  0%, 92%, 100% { filter: brightness(1); }
  96%           { filter: brightness(1.45); }
}

.x7f-bandeau--affiche { --x7f-promo-teinte: var(--x7f-accent); margin: 2rem 0; }
.x7f-affiche__lien {
  position: relative; display: flex; align-items: center; overflow: hidden;
  text-decoration: none; color: #fff; min-height: 9rem;
  background:
    radial-gradient(circle at 1px 1px, rgba(255,255,255,.12) 1px, transparent 1px) 0 0 / 7px 7px,
    linear-gradient(100deg, color-mix(in srgb, var(--x7f-promo-teinte) 78%, #000) 0%, var(--x7f-promo-teinte) 55%, color-mix(in srgb, var(--x7f-promo-teinte) 55%, #fff) 100%);
  clip-path: var(--x7f-cut);
}

.x7f-affiche__image {
  position: absolute; z-index: 2; left: 0; top: 0; bottom: 0; width: 46%;
  object-fit: cover; height: 100%;
  -webkit-mask-image: linear-gradient(90deg, #000 55%, transparent 100%);
  mask-image: linear-gradient(90deg, #000 55%, transparent 100%);
  transition: transform .5s ease;
}
.x7f-affiche__lien:hover .x7f-affiche__image { transform: scale(1.05); }
.x7f-affiche__droite {
  position: relative; z-index: 3; margin-left: auto; width: 58%;
  display: flex; flex-direction: column; align-items: center; gap: .55rem;
  padding: 1rem 1.2rem; text-align: center;
}
.x7f-affiche__sur { font-family: var(--x7f-font-body); font-size: .8rem; font-style: italic; opacity: .9; }
.x7f-affiche__titre {
  font-family: var(--x7f-font-display); font-weight: 800; line-height: .95;
  font-size: clamp(1.5rem, 4.4vw, 3rem); text-transform: uppercase;
  letter-spacing: -.01em; text-shadow: 0 3px 14px rgba(0,0,0,.45);
}
.x7f-affiche__trait { width: 3.4rem; height: 3px; background: #fff; opacity: .85; }
.x7f-affiche__bouton {
  display: inline-block; padding: .5rem 1.6rem; margin-top: .15rem;
  background: #111; color: #fff; border-radius: 2rem;
  font-family: var(--x7f-font-mono); font-size: .8rem; font-weight: 700;
  text-transform: uppercase; letter-spacing: .14em; white-space: nowrap;
  transition: transform .2s ease, box-shadow .2s ease;
  animation: promo-battement 3.4s ease-in-out infinite;
}
.x7f-affiche__lien:hover .x7f-affiche__bouton {
  transform: scale(1.05); box-shadow: 0 0 0 4px rgba(255,255,255,.28);
}

.x7f-bandeau--mosaique { --x7f-promo-teinte: var(--x7f-accent); }
.x7f-mosa__lien {
  position: relative; display: flex; gap: 0; overflow: hidden;
  text-decoration: none; color: #fff; min-height: 9.5rem;
  background: linear-gradient(120deg, color-mix(in srgb, var(--x7f-promo-teinte) 82%, #000), var(--x7f-promo-teinte));
  clip-path: var(--x7f-cut);
}

.x7f-mosa__grille {
  display: grid; grid-template-columns: 1.6fr 1fr; grid-template-rows: 1fr 1fr;
  gap: 3px; padding: 3px; flex: 0 0 58%;
}
.x7f-mosa__grande { grid-row: span 2; }
.x7f-mosa__grande, .x7f-mosa__petite {
  background-size: cover; background-position: center;
  transition: transform .4s ease, filter .4s ease;
}
.x7f-mosa__lien:hover .x7f-mosa__grande { transform: scale(1.04); }
.x7f-mosa__lien:hover .x7f-mosa__petite { filter: brightness(1.15); }
.x7f-mosa__texte {
  flex: 1; display: flex; flex-direction: column; justify-content: center;
  gap: .5rem; padding: 1rem 1.2rem; text-align: left;
}
.x7f-mosa__jeu {
  font-family: var(--x7f-font-mono); font-size: .64rem; text-transform: uppercase;
  letter-spacing: .12em; opacity: .85;
}
.x7f-mosa__affirmation {
  font-family: var(--x7f-font-display); font-weight: 800; line-height: 1.05;
  font-size: clamp(1.1rem, 2.6vw, 1.8rem); text-transform: uppercase;
}
.x7f-mosa__bouton {
  align-self: flex-start; padding: .45rem 1.2rem; margin-top: .2rem;
  background: #111; color: #fff; border: 2px solid #fff;
  font-family: var(--x7f-font-mono); font-size: .76rem; font-weight: 700;
  text-transform: uppercase; letter-spacing: .12em;
  transition: transform .2s ease;
}
.x7f-mosa__lien:hover .x7f-mosa__bouton { transform: translateX(4px); }

.x7f-bandeau--diago { --x7f-promo-teinte: var(--x7f-accent); }
.x7f-diago__lien {
  position: relative; display: block; overflow: hidden;
  text-decoration: none; color: #fff; aspect-ratio: 920 / 250;
  background: #0b0b0b; clip-path: var(--x7f-cut);
}
.x7f-diago__image {
  position: absolute; inset: 0; width: 100%; height: 100%;
  object-fit: cover; object-position: center 38%;
  transition: transform .5s ease;
}
.x7f-diago__lien:hover .x7f-diago__image { transform: scale(1.05); }

.x7f-diago__bande {
  position: absolute; z-index: 2; inset: 0; left: 38%;
  display: flex; flex-direction: column; justify-content: center; align-items: flex-start;
  gap: .5rem; padding: 1rem 1.4rem 1rem 3.4rem;
  background: linear-gradient(100deg, transparent 0 2.6rem, color-mix(in srgb, var(--x7f-promo-teinte) 92%, #000) 2.6rem);
  clip-path: polygon(2.2rem 0, 100% 0, 100% 100%, 0 100%);
}
.x7f-diago__jeu {
  font-family: var(--x7f-font-mono); font-size: .62rem; text-transform: uppercase;
  letter-spacing: .14em; opacity: .9;
}
.x7f-diago__affirmation {
  font-family: var(--x7f-font-display); font-weight: 800; line-height: 1.03;
  font-size: clamp(1.05rem, 2.8vw, 1.95rem); text-transform: uppercase;
}
.x7f-diago__bouton {
  padding: .45rem 1.3rem; background: #fff; color: #111;
  font-family: var(--x7f-font-mono); font-size: .76rem; font-weight: 700;
  text-transform: uppercase; letter-spacing: .12em;
  clip-path: var(--x7f-cut-sm); transition: transform .2s ease;
}
.x7f-diago__lien:hover .x7f-diago__bouton { transform: translateY(-2px); }

.x7f-bandeau--carte .x7f-carte__lien {
  display: flex; align-items: center; gap: 1rem; padding: .8rem;
  text-decoration: none; color: var(--x7f-text);
  background: var(--x7f-surface); border: 1px solid var(--x7f-border);
  clip-path: var(--x7f-cut); transition: border-color .2s ease, background .2s ease;
}
.x7f-bandeau--carte .x7f-carte__lien:hover { border-color: var(--x7f-accent); background: var(--x7f-surface-2); }
.x7f-carte__vignette {
  flex: 0 0 4.6rem; height: 4.6rem; background-size: cover; background-position: center;
  clip-path: var(--x7f-cut-sm);
}
.x7f-carte__corps { flex: 1; display: flex; flex-direction: column; gap: .22rem; min-width: 0; }
.x7f-carte__titre { font-family: var(--x7f-font-display); font-weight: 700; font-size: 1.02rem; }
.x7f-carte__meta { display: flex; align-items: center; gap: .55rem; flex-wrap: wrap; font-size: .74rem; }
.x7f-carte__note { color: var(--x7f-accent); font-weight: 700; }
.x7f-carte__prix {
  padding: .05rem .4rem; background: var(--x7f-accent); color: var(--x7f-accent-contrast);
  font-family: var(--x7f-font-mono); font-size: .64rem; text-transform: uppercase; letter-spacing: .07em;
}
.x7f-carte__plateformes { display: flex; gap: .3rem; color: var(--x7f-text-faint); font-family: var(--x7f-font-mono); font-size: .64rem; }
.x7f-carte__plateformes span::after { content: " ·"; }
.x7f-carte__plateformes span:last-child::after { content: ""; }
.x7f-carte__argument { font-size: .82rem; color: var(--x7f-text-dim); }
.x7f-carte__bouton {
  flex: 0 0 auto; padding: .5rem 1.1rem;
  background: var(--x7f-accent); color: var(--x7f-accent-contrast);
  font-family: var(--x7f-font-mono); font-size: .74rem; font-weight: 700;
  text-transform: uppercase; letter-spacing: .1em; white-space: nowrap;
  clip-path: var(--x7f-cut-sm);
}

.x7f-bandeau--compact { --x7f-promo-teinte: var(--x7f-accent); margin: 1.6rem 0; }
.x7f-compact__lien {
  display: flex; align-items: center; gap: .9rem; padding: .5rem .55rem;
  text-decoration: none; color: #fff; min-height: 4.6rem;
  background:
    radial-gradient(circle at 1px 1px, rgba(0,0,0,.22) 1px, transparent 1px) 0 0 / 7px 7px,
    linear-gradient(100deg, color-mix(in srgb, var(--x7f-promo-teinte) 85%, #000), var(--x7f-promo-teinte));
  clip-path: var(--x7f-cut); overflow: hidden;
}
.x7f-compact__vignette {
  flex: 0 0 7.5rem; align-self: stretch; background-size: cover; background-position: center 40%;
  border: 2px solid rgba(255,255,255,.85);
}
.x7f-compact__texte { flex: 1; display: flex; flex-direction: column; gap: .12rem; min-width: 0; }
.x7f-compact__jeu {
  font-family: var(--x7f-font-mono); font-size: .6rem; text-transform: uppercase;
  letter-spacing: .13em; opacity: .88;
}
.x7f-compact__affirmation {
  font-family: var(--x7f-font-display); font-weight: 700; line-height: 1.12;
  font-size: clamp(.92rem, 1.9vw, 1.22rem);
}
.x7f-compact__bouton {
  flex: 0 0 auto; padding: .45rem 1.1rem; margin-right: .3rem;
  background: #111; color: #fff; border: 2px solid #fff;
  font-family: var(--x7f-font-mono); font-size: .72rem; font-weight: 700;
  text-transform: uppercase; letter-spacing: .1em; white-space: nowrap;
  animation: promo-battement 3.4s ease-in-out infinite;
}

.x7f-bandeau--persos { --x7f-promo-teinte: #e5322d; }
.x7f-perso__lien {
  position: relative; display: flex; align-items: stretch; gap: 4px; overflow: hidden;
  text-decoration: none; color: #fff; padding: 4px;
  background:
    radial-gradient(circle at 1px 1px, rgba(0,0,0,.26) 1.2px, transparent 1.2px) 0 0 / 7px 7px,
    linear-gradient(120deg, color-mix(in srgb, var(--x7f-promo-teinte) 88%, #000), var(--x7f-promo-teinte));
  border: 3px solid #111; clip-path: var(--x7f-cut);
}
.x7f-perso__cartes { display: flex; gap: 4px; flex: 1 1 auto; min-width: 0; }

.x7f-perso__carte {
  position: relative; flex: 1 1 0; min-width: 0; aspect-ratio: 3 / 4;
  display: flex; align-items: flex-end; justify-content: center; overflow: hidden;
  background: linear-gradient(180deg, rgba(255,255,255,.30), rgba(255,255,255,.06));
  border: 2px solid rgba(255,255,255,.9);
}
.x7f-perso__img {
  max-width: 100%; max-height: 100%; width: auto; height: 100%;
  object-fit: contain; object-position: bottom center;
  filter: drop-shadow(0 6px 14px rgba(0,0,0,.5));
  transition: transform .35s ease;
}
.x7f-perso__lien:hover .x7f-perso__img { transform: translateY(-4px) scale(1.03); }
.x7f-perso__nom {
  position: absolute; left: 0; right: 0; bottom: 0; padding: .18rem .3rem;
  background: rgba(0,0,0,.62); text-align: center;
  font-family: var(--x7f-font-mono); font-size: .58rem; text-transform: uppercase;
  letter-spacing: .08em; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}

.x7f-perso__eclat {
  position: relative; flex: 0 0 30%; min-width: 9rem;
  display: grid; place-items: center;
}
.x7f-perso__rayons {
  position: absolute; inset: -12%;
  background:
    repeating-conic-gradient(from 0deg at 50% 50%, #ffd400 0deg 9deg, transparent 9deg 18deg),
    radial-gradient(circle at 50% 50%, #2f7cf6 0 46%, transparent 46%);
  clip-path: polygon(50.0% 0.0%, 58.0% 14.9%, 71.7% 5.0%, 72.4% 21.9%, 89.1% 18.8%, 82.4% 34.4%, 98.7% 38.9%, 86.0% 50.0%, 98.7% 61.1%, 82.4% 65.6%, 89.1% 81.2%, 72.4% 78.1%, 71.7% 95.0%, 58.0% 85.1%, 50.0% 100.0%, 42.0% 85.1%, 28.3% 95.0%, 27.6% 78.1%, 10.9% 81.2%, 17.6% 65.6%, 1.3% 61.1%, 14.0% 50.0%, 1.3% 38.9%, 17.6% 34.4%, 10.9% 18.8%, 27.6% 21.9%, 28.3% 5.0%, 42.0% 14.9%);
  animation: perso-tourne 22s linear infinite;
}
@keyframes perso-tourne { to { transform: rotate(360deg); } }

.x7f-perso__bulle {
  position: relative; z-index: 2; padding: .5rem .9rem;
  background: #fff; color: #111; border: 3px solid #111;
  font-family: var(--x7f-font-display); font-weight: 800;
  font-size: clamp(.85rem, 1.9vw, 1.25rem); text-transform: uppercase;
  letter-spacing: .02em; white-space: nowrap;
  box-shadow: 3px 3px 0 rgba(0,0,0,.6);
  clip-path: polygon(3% 12%, 12% 0, 88% 4%, 97% 14%, 100% 52%, 95% 88%, 84% 100%, 16% 96%, 5% 86%, 0 48%);
  transition: transform .2s ease;
}
.x7f-perso__lien:hover .x7f-perso__bulle { transform: scale(1.06) rotate(-1.5deg); }

.x7f-bandeau--editeur {
  --x7f-promo-teinte: #56d6c8;
  width: 100%; max-width: 980px; margin: 1.3rem auto;
}
.x7f-edit__lien {
  position: relative; display: block; overflow: hidden;
  text-decoration: none; color: #111; aspect-ratio: 980 / 168;
  background: linear-gradient(120deg, #fff 0%, color-mix(in srgb, var(--x7f-promo-teinte) 30%, #fff) 48%, var(--x7f-promo-teinte) 100%);
  border: 2px solid #111;
}

.x7f-edit__trame {
  position: absolute; inset: -30%; z-index: 1;
  transform: rotate(-14deg);
  font-family: var(--x7f-font-display); font-weight: 800; font-size: 1.5rem;
  line-height: 1.55; letter-spacing: .18em; word-spacing: .5em;
  color: #fff; opacity: .42; overflow: hidden; pointer-events: none;
}

.x7f-edit__embleme {
  position: absolute; z-index: 1; left: 2.5%; top: 50%; transform: translateY(-50%);
  width: 5.4rem; height: 5.4rem; border-radius: 50%;
  border: .5rem solid rgba(255,255,255,.55);
  box-shadow: inset 0 0 0 .8rem rgba(255,255,255,.28);
  opacity: .8;
}
.x7f-edit__marque { position: absolute; z-index: 3; left: 4.5%; top: 50%; transform: translateY(-50%); }
.x7f-edit__logo { max-width: 9rem; max-height: 3.6rem; display: block; }
.x7f-edit__bloc { display: flex; flex-direction: column; align-items: center; gap: .18rem; }
.x7f-edit__sigle {
  font-family: var(--x7f-font-display); font-weight: 800; line-height: .9;
  font-size: clamp(1.2rem, 3vw, 1.9rem); letter-spacing: .02em; color: #111;
}
.x7f-edit__barre { width: 100%; height: 2px; background: #111; }
.x7f-edit__complet {
  font-family: var(--x7f-font-mono); font-size: clamp(.42rem, 1.1vw, .56rem);
  letter-spacing: .22em; text-transform: uppercase; color: #111; white-space: nowrap;
}

.x7f-edit__perso {
  position: absolute; z-index: 2; right: 2%; top: -4%; height: 210%;
  width: auto; object-fit: contain; object-position: top center;
  filter: drop-shadow(-6px 4px 14px rgba(0,0,0,.32));
  animation: perso-flotte 6s ease-in-out infinite, perso-alterne 10s ease-in-out infinite;
}

@keyframes perso-flotte {
  0%, 100% { transform: translateY(0) rotate(0deg); }
  50%      { transform: translateY(-7px) rotate(.6deg); }
}

.x7f-edit__perso--suivant { opacity: 0; }
@keyframes perso-alterne {
  0%, 44%   { opacity: 1; }
  50%, 94%  { opacity: 0; }
  100%      { opacity: 1; }
}
.x7f-edit__perso--suivant { animation: perso-flotte 6s ease-in-out infinite, perso-alterne-2 10s ease-in-out infinite; }
@keyframes perso-alterne-2 {
  0%, 44%   { opacity: 0; }
  50%, 94%  { opacity: 1; }
  100%      { opacity: 0; }
}
.x7f-edit__lien:hover .x7f-edit__perso { animation-play-state: paused; }

.x7f-edit__bande {
  position: absolute; z-index: 4; left: -2%; right: 8%; bottom: 6%;
  padding: .32rem 1rem; background: #111;
  clip-path: polygon(0 0, 100% 6%, 97% 100%, 0 96%);
}
.x7f-edit__libelle {
  font-family: var(--x7f-font-display); font-weight: 800; color: #fff;
  font-size: clamp(.7rem, 1.6vw, 1rem); text-transform: uppercase; letter-spacing: .03em;
}
.x7f-edit__libelle b { color: var(--x7f-promo-teinte); font-weight: 800; }
.x7f-edit__coin {
  position: absolute; z-index: 5; right: 0; bottom: 0;
  padding: .18rem .55rem; background: #111; color: #fff;
  font-family: var(--x7f-font-mono); font-size: .58rem; font-weight: 700;
  text-transform: uppercase; letter-spacing: .1em;
}

.x7f-bandeau--typo { --x7f-promo-teinte: #6f8fe0; }
.x7f-typo__lien {
  position: relative; display: block; overflow: hidden;
  text-decoration: none; color: #fff; aspect-ratio: 840 / 150;
  background: linear-gradient(105deg, color-mix(in srgb, var(--x7f-promo-teinte) 80%, #000) 0%, var(--x7f-promo-teinte) 55%, color-mix(in srgb, var(--x7f-promo-teinte) 55%, #fff) 100%);
}
.x7f-typo__calques { position: absolute; inset: 0; z-index: 1; overflow: hidden; }
.x7f-typo__mot {
  position: absolute; white-space: nowrap;
  font-family: var(--x7f-font-display); font-weight: 800; text-transform: uppercase;
  letter-spacing: -.01em; line-height: 1;
}

.x7f-typo__mot--1 {
  left: -1%; top: 6%; font-size: clamp(2rem, 7.5vw, 4.2rem);
  color: rgba(255,255,255,.30);
}
.x7f-typo__mot--2 {
  left: 14%; top: 44%; font-size: clamp(1.2rem, 4.6vw, 2.6rem);
  color: transparent; -webkit-text-stroke: 1.5px rgba(255,255,255,.55);
}
.x7f-typo__mot--3 {
  left: 52%; top: 20%; font-size: clamp(1.6rem, 6vw, 3.4rem);
  color: rgba(255,255,255,.18);
}
.x7f-typo__perso {
  position: absolute; z-index: 2; right: 6%; bottom: 0; height: 132%;
  width: auto; object-fit: contain; object-position: bottom center;
  filter: drop-shadow(-8px 6px 16px rgba(0,0,0,.32));
  transition: transform .45s ease;
}
.x7f-typo__lien:hover .x7f-typo__perso { transform: translateY(-4px) scale(1.02); }
.x7f-typo__texte {
  position: absolute; z-index: 3; left: 3.5%; top: 50%; transform: translateY(-50%);
  display: flex; flex-direction: column; gap: .3rem; align-items: flex-start;
}
.x7f-typo__sur {
  font-family: var(--x7f-font-mono); font-size: clamp(.44rem, 1.1vw, .6rem);
  text-transform: uppercase; letter-spacing: .22em; opacity: .92;
}
.x7f-typo__sigle {
  font-family: var(--x7f-font-display); font-weight: 800; line-height: .92;
  font-size: clamp(1.5rem, 5.4vw, 3rem); letter-spacing: .04em;
  text-shadow: 0 3px 12px rgba(0,0,0,.28);
}
.x7f-typo__appel {
  padding: .3rem .9rem; background: #111; color: #fff;
  font-family: var(--x7f-font-mono); font-size: clamp(.52rem, 1.3vw, .7rem);
  font-weight: 700; text-transform: uppercase; letter-spacing: .12em;
  transition: transform .2s ease;
}
.x7f-typo__lien:hover .x7f-typo__appel { transform: translateX(4px); }

.x7f-edit__fond {
  position: absolute; inset: 0; z-index: 0; width: 100%; height: 100%;
  object-fit: cover; object-position: center 45%;
  opacity: .34; filter: saturate(1.1);
}

.x7f-edit__lien:has(.x7f-edit__fond)::before {
  content: ""; position: absolute; inset: 0; z-index: 0;
  background: linear-gradient(100deg, #fff 0%, color-mix(in srgb, var(--x7f-promo-teinte) 42%, #fff) 38%, transparent 78%);
}

.x7f-edit__bande { left: 4%; right: 10%; }

.x7f-edit__lien:has(.x7f-edit__bande) .x7f-edit__infos { bottom: auto; top: 58%; }
.x7f-edit__bande { bottom: 12%; right: 32%; }
.x7f-edit__infos {
  position: absolute; z-index: 4; left: 4%; bottom: 8%;
  display: flex; flex-wrap: wrap; align-items: center; gap: .4rem;
  font-family: var(--x7f-font-mono); font-size: clamp(.5rem, 1.4vw, .68rem);
  text-transform: uppercase; letter-spacing: .07em;
}
.x7f-edit__infos span {
  padding: .18rem .5rem; background: #111; color: #fff; white-space: nowrap;
}
.x7f-edit__infos span:first-child { background: var(--x7f-promo-teinte); color: #111; font-weight: 700; }

.x7f-edit__trame { animation: trame-glisse 28s linear infinite; }
@keyframes trame-glisse {
  from { transform: rotate(-14deg) translateX(0); }
  to   { transform: rotate(-14deg) translateX(-14%); }
}

.x7f-edit__pastille, .x7f-typo__pastille {
  position: absolute; z-index: 6; right: 22%; top: 12%;
  width: 4.4rem; height: 4.4rem; display: grid; place-items: center;
  background:
    repeating-conic-gradient(from 0deg at 50% 50%, rgba(255,255,255,.35) 0deg 9deg, transparent 9deg 18deg),
    radial-gradient(circle at 50% 50%, #ffd400 0 52%, #ff8a00 52%);
  clip-path: polygon(50.0% 0.0%, 58.0% 14.9%, 71.7% 5.0%, 72.4% 21.9%, 89.1% 18.8%, 82.4% 34.4%, 98.7% 38.9%, 86.0% 50.0%, 98.7% 61.1%, 82.4% 65.6%, 89.1% 81.2%, 72.4% 78.1%, 71.7% 95.0%, 58.0% 85.1%, 50.0% 100.0%, 42.0% 85.1%, 28.3% 95.0%, 27.6% 78.1%, 10.9% 81.2%, 17.6% 65.6%, 1.3% 61.1%, 14.0% 50.0%, 1.3% 38.9%, 17.6% 34.4%, 10.9% 18.8%, 27.6% 21.9%, 28.3% 5.0%, 42.0% 14.9%);
  filter: drop-shadow(0 3px 8px rgba(0,0,0,.4));
  animation: pastille-surgit .7s cubic-bezier(.2, 1.5, .4, 1) .35s both,
             pastille-respire 2.6s ease-in-out 1.1s infinite;
}
.x7f-edit__pastille__t, .x7f-typo__pastille__t {
  transform: rotate(-11deg);
  font-family: var(--x7f-font-display); font-weight: 800; color: #111;
  font-size: clamp(.5rem, 1.5vw, .78rem); line-height: 1;
  text-transform: uppercase; letter-spacing: .02em; text-align: center;
  max-width: 78%;
}
@keyframes pastille-surgit {
  from { transform: scale(0) rotate(-40deg); opacity: 0; }
  to   { transform: scale(1) rotate(0deg); opacity: 1; }
}
@keyframes pastille-respire {
  0%, 100% { transform: scale(1) rotate(0deg); }
  50%      { transform: scale(1.09) rotate(3deg); }
}
.x7f-edit__lien:hover .x7f-edit__pastille,
.x7f-typo__lien:hover .x7f-typo__pastille { animation-play-state: paused; transform: scale(1.14) rotate(-4deg); }

.x7f-edit__bande { position: absolute; overflow: hidden; }
.x7f-edit__bande::after {
  content: ""; position: absolute; top: 0; bottom: 0; width: 38%; left: -45%;
  background: linear-gradient(105deg, transparent, rgba(255,255,255,.30), transparent);
  animation: bande-reflet 4.2s ease-in-out 1.4s infinite;
}
@keyframes bande-reflet {
  0%, 62%, 100% { left: -45%; }
  84%           { left: 110%; }
}

.x7f-typo__appel { animation: promo-battement 3.4s ease-in-out infinite; }

@media (max-width: 700px) {
  .x7f-edit__pastille, .x7f-typo__pastille { width: 4rem; height: 4rem; right: 2%; top: 5%; }
}
@media (prefers-reduced-motion: reduce) {
  .x7f-edit__trame, .x7f-edit__pastille, .x7f-typo__pastille, .x7f-typo__appel { animation: none; }
  .x7f-edit__bande::after { animation: none; display: none; }
}

@media (max-width: 700px) {
  .x7f-edit__infos { left: 3%; bottom: 6%; gap: .3rem; }
  .x7f-edit__infos span:nth-child(n+3) { display: none; }
}

@media (max-width: 700px) {


  .x7f-bandeau--editeur { max-width: 100%; margin: 1rem 0; }
  .x7f-edit__lien { aspect-ratio: 390 / 150; }
  .x7f-edit__bande { right: 6%; bottom: 8%; }
  .x7f-edit__pastille { right: 3%; top: 6%; width: 3.2rem; height: 3.2rem; }
  .x7f-edit__perso { height: 175%; right: 0; top: -2%; }
  .x7f-edit__embleme { width: 6rem; height: 6rem; border-width: .35rem; }
  .x7f-edit__bande { right: 2%; bottom: 5%; }

  .x7f-typo__lien { aspect-ratio: 390 / 130; }
  .x7f-typo__mot--2, .x7f-typo__mot--3 { display: none; }
  .x7f-typo__perso { height: 120%; right: 2%; }
}
@media (prefers-reduced-motion: reduce) {
  .x7f-edit__perso { animation: none; }
  .x7f-edit__perso--suivant { display: none; }
  .x7f-typo__perso, .x7f-typo__appel { transition: none; }
}

@media (max-width: 700px) {

  .x7f-perso__lien { flex-wrap: wrap; }
  .x7f-perso__cartes { flex: 1 0 100%; }
  .x7f-perso__carte:nth-child(n+3) { display: none; }
  .x7f-perso__eclat { flex: 1 0 100%; min-width: 0; height: 6.5rem; margin-top: 4px; }
}
@media (prefers-reduced-motion: reduce) {
  .x7f-perso__rayons { animation: none; }
  .x7f-perso__img { transition: none; }
}

@media (max-width: 700px) {

  .x7f-mosa__lien { flex-direction: column; }
  .x7f-mosa__grille { flex: none; width: 100%; height: 8rem; }
  .x7f-mosa__texte { padding: .9rem; }

  .x7f-diago__lien { aspect-ratio: 920 / 330; }
  .x7f-diago__bande {
    left: 0; top: auto; height: 62%; padding: .8rem .9rem;
    clip-path: polygon(0 1.6rem, 100% 0, 100% 100%, 0 100%);
    background: linear-gradient(180deg, transparent 0 1.4rem, color-mix(in srgb, var(--x7f-promo-teinte) 92%, #000) 1.4rem);
  }

  .x7f-bandeau--carte .x7f-carte__lien { flex-wrap: wrap; }
  .x7f-carte__bouton { flex: 1 0 100%; text-align: center; margin-top: .5rem; }

  .x7f-compact__lien { flex-wrap: wrap; }
  .x7f-compact__vignette { flex: 0 0 5rem; height: 3.4rem; align-self: center; }
  .x7f-compact__bouton { flex: 1 0 100%; text-align: center; margin: .5rem 0 0; }
}

@media (prefers-reduced-motion: reduce) {
  .x7f-compact__bouton { animation: none; }
  .x7f-mosa__grande, .x7f-mosa__petite, .x7f-diago__image { transition: none; }
}

@media (max-width: 700px) {
  .x7f-affiche__lien { min-height: 0; }

  .x7f-affiche__image { width: 100%; opacity: .38; -webkit-mask-image: none; mask-image: none; }
  .x7f-affiche__droite { width: 100%; margin: 0; padding: 1.1rem .9rem; }
}
@media (prefers-reduced-motion: reduce) {
  .x7f-affiche__bouton { animation: none; }
  .x7f-affiche__image { transition: none; }
}

@media (max-width: 700px) {

  .x7f-promo__lien { flex-direction: column; min-height: 0; }
  .x7f-promo__panneaux { flex: none; width: 100%; height: 7.5rem; }
  .x7f-promo__panneau:nth-child(n+3) { display: none; }
  .x7f-promo__droite { padding: .9rem; }
  .x7f-promo__lien::after { -webkit-mask-image: none; mask-image: none; }
}

@media (prefers-reduced-motion: reduce) {
  .x7f-promo__bouton { animation: none; }
  .x7f-promo__panneau { transition: none; }
}

@media (max-width: 700px) {

  .x7f-bandeau__texte { right: .9rem; left: .9rem; bottom: .9rem; max-width: none; align-items: flex-start; text-align: left; }
  .x7f-bandeau__lien { aspect-ratio: 920 / 300; }
  .x7f-bandeau__vs { width: 2.6rem; height: 2.6rem; }
  .x7f-bandeau__marque { left: .9rem; top: .8rem; }
  .x7f-bandeau__logo { max-width: 7.5rem; max-height: 2.6rem; }
  .x7f-bandeau__urgence { align-self: flex-start; }

  .x7f-bandeau__piste--anime { animation: none; }
  .x7f-bandeau__piste { width: 100%; }
  .x7f-bandeau__tuile { width: 100%; }
  .x7f-bandeau__piste > .x7f-bandeau__tuile:not(:first-child) { display: none; }
  .x7f-bandeau__fenetre::before, .x7f-bandeau__fenetre::after { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  .x7f-bandeau__piste--anime { animation: none; }
  .x7f-bandeau__vs { animation: none; }
  .x7f-bandeau__lien:hover .x7f-bandeau__reflet { animation: none; }
  .x7f-bandeau__fond, .x7f-bandeau__cote img, .x7f-bandeau__tuile img { transition: none; }
}

.x7f-edit__mention {
  position: absolute; z-index: 5; right: .5rem; top: .4rem;
  font-family: var(--x7f-font-mono); font-size: .52rem;
  text-transform: uppercase; letter-spacing: .12em;
  color: rgba(0,0,0,.55);
}
